@angular/common
Advanced tools
Comparing version 2.2.0-rc.0 to 2.2.0
/** | ||
* @license Angular v2.2.0-rc.0 | ||
* @license Angular v2.2.0 | ||
* (c) 2010-2016 Google, Inc. https://angular.io/ | ||
@@ -4,0 +4,0 @@ * License: MIT |
/** | ||
* @license Angular v0.0.0-PLACEHOLDER | ||
* @license Angular v2.2.0 | ||
* (c) 2010-2016 Google, Inc. https://angular.io/ | ||
* License: MIT | ||
*/ | ||
!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core"],factory):factory((global.ng=global.ng||{},global.ng.common=global.ng.common||{}),global.ng.core)}(this,function(exports,_angular_core){"use strict";function getTypeNameForDebugging(type){return type.name||typeof type}function isPresent(obj){return null!=obj}function isBlank(obj){return null==obj}function isDate(obj){return obj instanceof Date&&!isNaN(obj.valueOf())}function stringify(token){if("string"==typeof token)return token;if(void 0===token||null===token)return""+token;if(token.overriddenName)return token.overriddenName;if(token.name)return token.name;var res=token.toString(),newLineIndex=res.indexOf("\n");return newLineIndex===-1?res:res.substring(0,newLineIndex)}function isJsObject(o){return null!==o&&("function"==typeof o||"object"==typeof o)}function getSymbolIterator(){if(!_symbolIterator)if(globalScope.Symbol&&Symbol.iterator)_symbolIterator=Symbol.iterator;else for(var keys=Object.getOwnPropertyNames(Map.prototype),i=0;i<keys.length;++i){var key=keys[i];"entries"!==key&&"size"!==key&&Map.prototype[key]===Map.prototype.entries&&(_symbolIterator=key)}return _symbolIterator}function _stripBaseHref(baseHref,url){return baseHref.length>0&&url.startsWith(baseHref)?url.substring(baseHref.length):url}function _stripIndexHtml(url){return/\/index.html$/g.test(url)?url.substring(0,url.length-11):url}function getPluralCategory(value,cases,ngLocalization){var nbCase="="+value;return cases.indexOf(nbCase)>-1?nbCase:ngLocalization.getPluralCategory(value)}function getPluralCase(locale,nLike){"string"==typeof nLike&&(nLike=parseInt(nLike,10));var n=nLike,nDecimal=n.toString().replace(/^[^.]*\.?/,""),i=Math.floor(Math.abs(n)),v=nDecimal.length,f=parseInt(nDecimal,10),t=parseInt(n.toString().replace(/^[^.]*\.?|0+$/g,""),10)||0,lang=locale.split("-")[0].toLowerCase();switch(lang){case"af":case"asa":case"az":case"bem":case"bez":case"bg":case"brx":case"ce":case"cgg":case"chr":case"ckb":case"ee":case"el":case"eo":case"es":case"eu":case"fo":case"fur":case"gsw":case"ha":case"haw":case"hu":case"jgo":case"jmc":case"ka":case"kk":case"kkj":case"kl":case"ks":case"ksb":case"ky":case"lb":case"lg":case"mas":case"mgo":case"ml":case"mn":case"nb":case"nd":case"ne":case"nn":case"nnh":case"nyn":case"om":case"or":case"os":case"ps":case"rm":case"rof":case"rwk":case"saq":case"seh":case"sn":case"so":case"sq":case"ta":case"te":case"teo":case"tk":case"tr":case"ug":case"uz":case"vo":case"vun":case"wae":case"xog":return 1===n?Plural.One:Plural.Other;case"agq":case"bas":case"cu":case"dav":case"dje":case"dua":case"dyo":case"ebu":case"ewo":case"guz":case"kam":case"khq":case"ki":case"kln":case"kok":case"ksf":case"lrc":case"lu":case"luo":case"luy":case"mer":case"mfe":case"mgh":case"mua":case"mzn":case"nmg":case"nus":case"qu":case"rn":case"rw":case"sbp":case"twq":case"vai":case"yav":case"yue":case"zgh":case"ak":case"ln":case"mg":case"pa":case"ti":return n===Math.floor(n)&&n>=0&&n<=1?Plural.One:Plural.Other;case"am":case"as":case"bn":case"fa":case"gu":case"hi":case"kn":case"mr":case"zu":return 0===i||1===n?Plural.One:Plural.Other;case"ar":return 0===n?Plural.Zero:1===n?Plural.One:2===n?Plural.Two:n%100===Math.floor(n%100)&&n%100>=3&&n%100<=10?Plural.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=99?Plural.Many:Plural.Other;case"ast":case"ca":case"de":case"en":case"et":case"fi":case"fy":case"gl":case"it":case"nl":case"sv":case"sw":case"ur":case"yi":return 1===i&&0===v?Plural.One:Plural.Other;case"be":return n%10===1&&n%100!==11?Plural.One:n%10===Math.floor(n%10)&&n%10>=2&&n%10<=4&&!(n%100>=12&&n%100<=14)?Plural.Few:n%10===0||n%10===Math.floor(n%10)&&n%10>=5&&n%10<=9||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=14?Plural.Many:Plural.Other;case"br":return n%10===1&&n%100!==11&&n%100!==71&&n%100!==91?Plural.One:n%10===2&&n%100!==12&&n%100!==72&&n%100!==92?Plural.Two:n%10===Math.floor(n%10)&&(n%10>=3&&n%10<=4||n%10===9)&&!(n%100>=10&&n%100<=19||n%100>=70&&n%100<=79||n%100>=90&&n%100<=99)?Plural.Few:0!==n&&n%1e6===0?Plural.Many:Plural.Other;case"bs":case"hr":case"sr":return 0===v&&i%10===1&&i%100!==11||f%10===1&&f%100!==11?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)||f%10===Math.floor(f%10)&&f%10>=2&&f%10<=4&&!(f%100>=12&&f%100<=14)?Plural.Few:Plural.Other;case"cs":case"sk":return 1===i&&0===v?Plural.One:i===Math.floor(i)&&i>=2&&i<=4&&0===v?Plural.Few:0!==v?Plural.Many:Plural.Other;case"cy":return 0===n?Plural.Zero:1===n?Plural.One:2===n?Plural.Two:3===n?Plural.Few:6===n?Plural.Many:Plural.Other;case"da":return 1===n||0!==t&&(0===i||1===i)?Plural.One:Plural.Other;case"dsb":case"hsb":return 0===v&&i%100===1||f%100===1?Plural.One:0===v&&i%100===2||f%100===2?Plural.Two:0===v&&i%100===Math.floor(i%100)&&i%100>=3&&i%100<=4||f%100===Math.floor(f%100)&&f%100>=3&&f%100<=4?Plural.Few:Plural.Other;case"ff":case"fr":case"hy":case"kab":return 0===i||1===i?Plural.One:Plural.Other;case"fil":return 0===v&&(1===i||2===i||3===i)||0===v&&i%10!==4&&i%10!==6&&i%10!==9||0!==v&&f%10!==4&&f%10!==6&&f%10!==9?Plural.One:Plural.Other;case"ga":return 1===n?Plural.One:2===n?Plural.Two:n===Math.floor(n)&&n>=3&&n<=6?Plural.Few:n===Math.floor(n)&&n>=7&&n<=10?Plural.Many:Plural.Other;case"gd":return 1===n||11===n?Plural.One:2===n||12===n?Plural.Two:n===Math.floor(n)&&(n>=3&&n<=10||n>=13&&n<=19)?Plural.Few:Plural.Other;case"gv":return 0===v&&i%10===1?Plural.One:0===v&&i%10===2?Plural.Two:0!==v||i%100!==0&&i%100!==20&&i%100!==40&&i%100!==60&&i%100!==80?0!==v?Plural.Many:Plural.Other:Plural.Few;case"he":return 1===i&&0===v?Plural.One:2===i&&0===v?Plural.Two:0!==v||n>=0&&n<=10||n%10!==0?Plural.Other:Plural.Many;case"is":return 0===t&&i%10===1&&i%100!==11||0!==t?Plural.One:Plural.Other;case"ksh":return 0===n?Plural.Zero:1===n?Plural.One:Plural.Other;case"kw":case"naq":case"se":case"smn":return 1===n?Plural.One:2===n?Plural.Two:Plural.Other;case"lag":return 0===n?Plural.Zero:0!==i&&1!==i||0===n?Plural.Other:Plural.One;case"lt":return n%10!==1||n%100>=11&&n%100<=19?n%10===Math.floor(n%10)&&n%10>=2&&n%10<=9&&!(n%100>=11&&n%100<=19)?Plural.Few:0!==f?Plural.Many:Plural.Other:Plural.One;case"lv":case"prg":return n%10===0||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19||2===v&&f%100===Math.floor(f%100)&&f%100>=11&&f%100<=19?Plural.Zero:n%10===1&&n%100!==11||2===v&&f%10===1&&f%100!==11||2!==v&&f%10===1?Plural.One:Plural.Other;case"mk":return 0===v&&i%10===1||f%10===1?Plural.One:Plural.Other;case"mt":return 1===n?Plural.One:0===n||n%100===Math.floor(n%100)&&n%100>=2&&n%100<=10?Plural.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19?Plural.Many:Plural.Other;case"pl":return 1===i&&0===v?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)?Plural.Few:0===v&&1!==i&&i%10===Math.floor(i%10)&&i%10>=0&&i%10<=1||0===v&&i%10===Math.floor(i%10)&&i%10>=5&&i%10<=9||0===v&&i%100===Math.floor(i%100)&&i%100>=12&&i%100<=14?Plural.Many:Plural.Other;case"pt":return n===Math.floor(n)&&n>=0&&n<=2&&2!==n?Plural.One:Plural.Other;case"ro":return 1===i&&0===v?Plural.One:0!==v||0===n||1!==n&&n%100===Math.floor(n%100)&&n%100>=1&&n%100<=19?Plural.Few:Plural.Other;case"ru":case"uk":return 0===v&&i%10===1&&i%100!==11?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)?Plural.Few:0===v&&i%10===0||0===v&&i%10===Math.floor(i%10)&&i%10>=5&&i%10<=9||0===v&&i%100===Math.floor(i%100)&&i%100>=11&&i%100<=14?Plural.Many:Plural.Other;case"shi":return 0===i||1===n?Plural.One:n===Math.floor(n)&&n>=2&&n<=10?Plural.Few:Plural.Other;case"si":return 0===n||1===n||0===i&&1===f?Plural.One:Plural.Other;case"sl":return 0===v&&i%100===1?Plural.One:0===v&&i%100===2?Plural.Two:0===v&&i%100===Math.floor(i%100)&&i%100>=3&&i%100<=4||0!==v?Plural.Few:Plural.Other;case"tzm":return n===Math.floor(n)&&n>=0&&n<=1||n===Math.floor(n)&&n>=11&&n<=99?Plural.One:Plural.Other;default:return Plural.Other}}function _flattenArray(source,target){if(isPresent(source))for(var i=0;i<source.length;i++){var item=source[i];Array.isArray(item)?_flattenArray(item,target):target.push(item)}return target}function isListLikeIterable(obj){return!!isJsObject(obj)&&(Array.isArray(obj)||!(obj instanceof Map)&&getSymbolIterator()in obj)}function digitModifier(inner){return function(date,locale){var result=inner(date,locale);return 1==result.length?"0"+result:result}}function hourClockExtractor(inner){return function(date,locale){return inner(date,locale).split(" ")[1]}}function hourExtractor(inner){return function(date,locale){return inner(date,locale).split(" ")[0]}}function intlDateFormat(date,locale,options){return new Intl.DateTimeFormat(locale,options).format(date).replace(/[\u200e\u200f]/g,"")}function timeZoneGetter(timezone){var options={hour:"2-digit",hour12:!1,timeZoneName:timezone};return function(date,locale){var result=intlDateFormat(date,locale,options);return result?result.substring(3):""}}function hour12Modify(options,value){return options.hour12=value,options}function digitCondition(prop,len){var result={};return result[prop]=2===len?"2-digit":"numeric",result}function nameCondition(prop,len){var result={};return len<4?result[prop]=len>1?"short":"narrow":result[prop]="long",result}function combine(options){return(_a=Object).assign.apply(_a,[{}].concat(options));var _a}function datePartGetterFactory(ret){return function(date,locale){return intlDateFormat(date,locale,ret)}}function dateFormatter(format,date,locale){var fn=PATTERN_ALIASES[format];if(fn)return fn(date,locale);var parts=DATE_FORMATTER_CACHE.get(format);if(!parts){parts=[];var match=void 0;for(DATE_FORMATS_SPLIT.exec(format);format;)match=DATE_FORMATS_SPLIT.exec(format),match?(parts=parts.concat(match.slice(1)),format=parts.pop()):(parts.push(format),format=null);DATE_FORMATTER_CACHE.set(format,parts)}return parts.reduce(function(text,part){var fn=DATE_FORMATS[part];return text+(fn?fn(date,locale):partToTime(part))},"")}function partToTime(part){return"''"===part?"'":part.replace(/(^'|'$)/g,"").replace(/''/g,"'")}function formatNumber(pipe,locale,value,style,digits,currency,currencyAsSymbol){if(void 0===currency&&(currency=null),void 0===currencyAsSymbol&&(currencyAsSymbol=!1),isBlank(value))return null;if(value="string"==typeof value&&NumberWrapper.isNumeric(value)?+value:value,"number"!=typeof value)throw new InvalidPipeArgumentError(pipe,value);var minInt,minFraction,maxFraction;if(style!==NumberFormatStyle.Currency&&(minInt=1,minFraction=0,maxFraction=3),digits){var parts=digits.match(_NUMBER_FORMAT_REGEXP);if(null===parts)throw new Error(digits+" is not a valid digit info for number pipes");isPresent(parts[1])&&(minInt=NumberWrapper.parseIntAutoRadix(parts[1])),isPresent(parts[3])&&(minFraction=NumberWrapper.parseIntAutoRadix(parts[3])),isPresent(parts[5])&&(maxFraction=NumberWrapper.parseIntAutoRadix(parts[5]))}return NumberFormatter.format(value,locale,style,{minimumIntegerDigits:minInt,minimumFractionDigits:minFraction,maximumFractionDigits:maxFraction,currency:currency,currencyAsSymbol:currencyAsSymbol})}/** | ||
!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core"],factory):factory((global.ng=global.ng||{},global.ng.common=global.ng.common||{}),global.ng.core)}(this,function(exports,_angular_core){"use strict";function getTypeNameForDebugging(type){return type.name||typeof type}function isPresent(obj){return null!=obj}function isBlank(obj){return null==obj}function isDate(obj){return obj instanceof Date&&!isNaN(obj.valueOf())}function stringify(token){if("string"==typeof token)return token;if(null==token)return""+token;if(token.overriddenName)return token.overriddenName;if(token.name)return token.name;var res=token.toString(),newLineIndex=res.indexOf("\n");return newLineIndex===-1?res:res.substring(0,newLineIndex)}function isJsObject(o){return null!==o&&("function"==typeof o||"object"==typeof o)}function getSymbolIterator(){if(!_symbolIterator)if(globalScope.Symbol&&Symbol.iterator)_symbolIterator=Symbol.iterator;else for(var keys=Object.getOwnPropertyNames(Map.prototype),i=0;i<keys.length;++i){var key=keys[i];"entries"!==key&&"size"!==key&&Map.prototype[key]===Map.prototype.entries&&(_symbolIterator=key)}return _symbolIterator}function _stripBaseHref(baseHref,url){return baseHref.length>0&&url.startsWith(baseHref)?url.substring(baseHref.length):url}function _stripIndexHtml(url){return/\/index.html$/g.test(url)?url.substring(0,url.length-11):url}function getPluralCategory(value,cases,ngLocalization){var nbCase="="+value;return cases.indexOf(nbCase)>-1?nbCase:ngLocalization.getPluralCategory(value)}function getPluralCase(locale,nLike){"string"==typeof nLike&&(nLike=parseInt(nLike,10));var n=nLike,nDecimal=n.toString().replace(/^[^.]*\.?/,""),i=Math.floor(Math.abs(n)),v=nDecimal.length,f=parseInt(nDecimal,10),t=parseInt(n.toString().replace(/^[^.]*\.?|0+$/g,""),10)||0,lang=locale.split("-")[0].toLowerCase();switch(lang){case"af":case"asa":case"az":case"bem":case"bez":case"bg":case"brx":case"ce":case"cgg":case"chr":case"ckb":case"ee":case"el":case"eo":case"es":case"eu":case"fo":case"fur":case"gsw":case"ha":case"haw":case"hu":case"jgo":case"jmc":case"ka":case"kk":case"kkj":case"kl":case"ks":case"ksb":case"ky":case"lb":case"lg":case"mas":case"mgo":case"ml":case"mn":case"nb":case"nd":case"ne":case"nn":case"nnh":case"nyn":case"om":case"or":case"os":case"ps":case"rm":case"rof":case"rwk":case"saq":case"seh":case"sn":case"so":case"sq":case"ta":case"te":case"teo":case"tk":case"tr":case"ug":case"uz":case"vo":case"vun":case"wae":case"xog":return 1===n?Plural.One:Plural.Other;case"agq":case"bas":case"cu":case"dav":case"dje":case"dua":case"dyo":case"ebu":case"ewo":case"guz":case"kam":case"khq":case"ki":case"kln":case"kok":case"ksf":case"lrc":case"lu":case"luo":case"luy":case"mer":case"mfe":case"mgh":case"mua":case"mzn":case"nmg":case"nus":case"qu":case"rn":case"rw":case"sbp":case"twq":case"vai":case"yav":case"yue":case"zgh":case"ak":case"ln":case"mg":case"pa":case"ti":return n===Math.floor(n)&&n>=0&&n<=1?Plural.One:Plural.Other;case"am":case"as":case"bn":case"fa":case"gu":case"hi":case"kn":case"mr":case"zu":return 0===i||1===n?Plural.One:Plural.Other;case"ar":return 0===n?Plural.Zero:1===n?Plural.One:2===n?Plural.Two:n%100===Math.floor(n%100)&&n%100>=3&&n%100<=10?Plural.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=99?Plural.Many:Plural.Other;case"ast":case"ca":case"de":case"en":case"et":case"fi":case"fy":case"gl":case"it":case"nl":case"sv":case"sw":case"ur":case"yi":return 1===i&&0===v?Plural.One:Plural.Other;case"be":return n%10===1&&n%100!==11?Plural.One:n%10===Math.floor(n%10)&&n%10>=2&&n%10<=4&&!(n%100>=12&&n%100<=14)?Plural.Few:n%10===0||n%10===Math.floor(n%10)&&n%10>=5&&n%10<=9||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=14?Plural.Many:Plural.Other;case"br":return n%10===1&&n%100!==11&&n%100!==71&&n%100!==91?Plural.One:n%10===2&&n%100!==12&&n%100!==72&&n%100!==92?Plural.Two:n%10===Math.floor(n%10)&&(n%10>=3&&n%10<=4||n%10===9)&&!(n%100>=10&&n%100<=19||n%100>=70&&n%100<=79||n%100>=90&&n%100<=99)?Plural.Few:0!==n&&n%1e6===0?Plural.Many:Plural.Other;case"bs":case"hr":case"sr":return 0===v&&i%10===1&&i%100!==11||f%10===1&&f%100!==11?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)||f%10===Math.floor(f%10)&&f%10>=2&&f%10<=4&&!(f%100>=12&&f%100<=14)?Plural.Few:Plural.Other;case"cs":case"sk":return 1===i&&0===v?Plural.One:i===Math.floor(i)&&i>=2&&i<=4&&0===v?Plural.Few:0!==v?Plural.Many:Plural.Other;case"cy":return 0===n?Plural.Zero:1===n?Plural.One:2===n?Plural.Two:3===n?Plural.Few:6===n?Plural.Many:Plural.Other;case"da":return 1===n||0!==t&&(0===i||1===i)?Plural.One:Plural.Other;case"dsb":case"hsb":return 0===v&&i%100===1||f%100===1?Plural.One:0===v&&i%100===2||f%100===2?Plural.Two:0===v&&i%100===Math.floor(i%100)&&i%100>=3&&i%100<=4||f%100===Math.floor(f%100)&&f%100>=3&&f%100<=4?Plural.Few:Plural.Other;case"ff":case"fr":case"hy":case"kab":return 0===i||1===i?Plural.One:Plural.Other;case"fil":return 0===v&&(1===i||2===i||3===i)||0===v&&i%10!==4&&i%10!==6&&i%10!==9||0!==v&&f%10!==4&&f%10!==6&&f%10!==9?Plural.One:Plural.Other;case"ga":return 1===n?Plural.One:2===n?Plural.Two:n===Math.floor(n)&&n>=3&&n<=6?Plural.Few:n===Math.floor(n)&&n>=7&&n<=10?Plural.Many:Plural.Other;case"gd":return 1===n||11===n?Plural.One:2===n||12===n?Plural.Two:n===Math.floor(n)&&(n>=3&&n<=10||n>=13&&n<=19)?Plural.Few:Plural.Other;case"gv":return 0===v&&i%10===1?Plural.One:0===v&&i%10===2?Plural.Two:0!==v||i%100!==0&&i%100!==20&&i%100!==40&&i%100!==60&&i%100!==80?0!==v?Plural.Many:Plural.Other:Plural.Few;case"he":return 1===i&&0===v?Plural.One:2===i&&0===v?Plural.Two:0!==v||n>=0&&n<=10||n%10!==0?Plural.Other:Plural.Many;case"is":return 0===t&&i%10===1&&i%100!==11||0!==t?Plural.One:Plural.Other;case"ksh":return 0===n?Plural.Zero:1===n?Plural.One:Plural.Other;case"kw":case"naq":case"se":case"smn":return 1===n?Plural.One:2===n?Plural.Two:Plural.Other;case"lag":return 0===n?Plural.Zero:0!==i&&1!==i||0===n?Plural.Other:Plural.One;case"lt":return n%10!==1||n%100>=11&&n%100<=19?n%10===Math.floor(n%10)&&n%10>=2&&n%10<=9&&!(n%100>=11&&n%100<=19)?Plural.Few:0!==f?Plural.Many:Plural.Other:Plural.One;case"lv":case"prg":return n%10===0||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19||2===v&&f%100===Math.floor(f%100)&&f%100>=11&&f%100<=19?Plural.Zero:n%10===1&&n%100!==11||2===v&&f%10===1&&f%100!==11||2!==v&&f%10===1?Plural.One:Plural.Other;case"mk":return 0===v&&i%10===1||f%10===1?Plural.One:Plural.Other;case"mt":return 1===n?Plural.One:0===n||n%100===Math.floor(n%100)&&n%100>=2&&n%100<=10?Plural.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19?Plural.Many:Plural.Other;case"pl":return 1===i&&0===v?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)?Plural.Few:0===v&&1!==i&&i%10===Math.floor(i%10)&&i%10>=0&&i%10<=1||0===v&&i%10===Math.floor(i%10)&&i%10>=5&&i%10<=9||0===v&&i%100===Math.floor(i%100)&&i%100>=12&&i%100<=14?Plural.Many:Plural.Other;case"pt":return n===Math.floor(n)&&n>=0&&n<=2&&2!==n?Plural.One:Plural.Other;case"ro":return 1===i&&0===v?Plural.One:0!==v||0===n||1!==n&&n%100===Math.floor(n%100)&&n%100>=1&&n%100<=19?Plural.Few:Plural.Other;case"ru":case"uk":return 0===v&&i%10===1&&i%100!==11?Plural.One:0===v&&i%10===Math.floor(i%10)&&i%10>=2&&i%10<=4&&!(i%100>=12&&i%100<=14)?Plural.Few:0===v&&i%10===0||0===v&&i%10===Math.floor(i%10)&&i%10>=5&&i%10<=9||0===v&&i%100===Math.floor(i%100)&&i%100>=11&&i%100<=14?Plural.Many:Plural.Other;case"shi":return 0===i||1===n?Plural.One:n===Math.floor(n)&&n>=2&&n<=10?Plural.Few:Plural.Other;case"si":return 0===n||1===n||0===i&&1===f?Plural.One:Plural.Other;case"sl":return 0===v&&i%100===1?Plural.One:0===v&&i%100===2?Plural.Two:0===v&&i%100===Math.floor(i%100)&&i%100>=3&&i%100<=4||0!==v?Plural.Few:Plural.Other;case"tzm":return n===Math.floor(n)&&n>=0&&n<=1||n===Math.floor(n)&&n>=11&&n<=99?Plural.One:Plural.Other;default:return Plural.Other}}function isListLikeIterable(obj){return!!isJsObject(obj)&&(Array.isArray(obj)||!(obj instanceof Map)&&getSymbolIterator()in obj)}function digitModifier(inner){return function(date,locale){var result=inner(date,locale);return 1==result.length?"0"+result:result}}function hourClockExtractor(inner){return function(date,locale){return inner(date,locale).split(" ")[1]}}function hourExtractor(inner){return function(date,locale){return inner(date,locale).split(" ")[0]}}function intlDateFormat(date,locale,options){return new Intl.DateTimeFormat(locale,options).format(date).replace(/[\u200e\u200f]/g,"")}function timeZoneGetter(timezone){var options={hour:"2-digit",hour12:!1,timeZoneName:timezone};return function(date,locale){var result=intlDateFormat(date,locale,options);return result?result.substring(3):""}}function hour12Modify(options,value){return options.hour12=value,options}function digitCondition(prop,len){var result={};return result[prop]=2===len?"2-digit":"numeric",result}function nameCondition(prop,len){var result={};return len<4?result[prop]=len>1?"short":"narrow":result[prop]="long",result}function combine(options){return(_a=Object).assign.apply(_a,[{}].concat(options));var _a}function datePartGetterFactory(ret){return function(date,locale){return intlDateFormat(date,locale,ret)}}function dateFormatter(format,date,locale){var fn=PATTERN_ALIASES[format];if(fn)return fn(date,locale);var parts=DATE_FORMATTER_CACHE.get(format);if(!parts){parts=[];var match=void 0;for(DATE_FORMATS_SPLIT.exec(format);format;)match=DATE_FORMATS_SPLIT.exec(format),match?(parts=parts.concat(match.slice(1)),format=parts.pop()):(parts.push(format),format=null);DATE_FORMATTER_CACHE.set(format,parts)}return parts.reduce(function(text,part){var fn=DATE_FORMATS[part];return text+(fn?fn(date,locale):partToTime(part))},"")}function partToTime(part){return"''"===part?"'":part.replace(/(^'|'$)/g,"").replace(/''/g,"'")}function isBlank$1(obj){return null==obj||""===obj}function formatNumber(pipe,locale,value,style,digits,currency,currencyAsSymbol){if(void 0===currency&&(currency=null),void 0===currencyAsSymbol&&(currencyAsSymbol=!1),isBlank(value))return null;if(value="string"==typeof value&&NumberWrapper.isNumeric(value)?+value:value,"number"!=typeof value)throw new InvalidPipeArgumentError(pipe,value);var minInt,minFraction,maxFraction;if(style!==NumberFormatStyle.Currency&&(minInt=1,minFraction=0,maxFraction=3),digits){var parts=digits.match(_NUMBER_FORMAT_REGEXP);if(null===parts)throw new Error(digits+" is not a valid digit info for number pipes");isPresent(parts[1])&&(minInt=NumberWrapper.parseIntAutoRadix(parts[1])),isPresent(parts[3])&&(minFraction=NumberWrapper.parseIntAutoRadix(parts[3])),isPresent(parts[5])&&(maxFraction=NumberWrapper.parseIntAutoRadix(parts[5]))}return NumberFormatter.format(value,locale,style,{minimumIntegerDigits:minInt,minimumFractionDigits:minFraction,maximumFractionDigits:maxFraction,currency:currency,currencyAsSymbol:currencyAsSymbol})}/** | ||
* @license | ||
@@ -13,3 +13,3 @@ * Copyright Google Inc. All Rights Reserved. | ||
*/ | ||
var globalScope,PlatformLocation=function(){function PlatformLocation(){}return Object.defineProperty(PlatformLocation.prototype,"pathname",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(PlatformLocation.prototype,"search",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(PlatformLocation.prototype,"hash",{get:function(){return null},enumerable:!0,configurable:!0}),PlatformLocation}(),LocationStrategy=function(){function LocationStrategy(){}return LocationStrategy}(),APP_BASE_HREF=new _angular_core.OpaqueToken("appBaseHref");globalScope="undefined"==typeof window?"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:global:window;var _global=globalScope;_global.assert=function(condition){};var Plural,NumberWrapper=function(){function NumberWrapper(){}return NumberWrapper.parseIntAutoRadix=function(text){var result=parseInt(text);if(isNaN(result))throw new Error("Invalid integer literal when parsing "+text);return result},NumberWrapper.parseInt=function(text,radix){if(10==radix){if(/^(\-|\+)?[0-9]+$/.test(text))return parseInt(text,radix)}else if(16==radix){if(/^(\-|\+)?[0-9ABCDEFabcdef]+$/.test(text))return parseInt(text,radix)}else{var result=parseInt(text,radix);if(!isNaN(result))return result}throw new Error("Invalid integer literal when parsing "+text+" in base "+radix)},NumberWrapper.isNumeric=function(value){return!isNaN(value-parseFloat(value))},NumberWrapper}(),_symbolIterator=null,Location=function(){function Location(platformStrategy){var _this=this;this._subject=new _angular_core.EventEmitter,this._platformStrategy=platformStrategy;var browserBaseHref=this._platformStrategy.getBaseHref();this._baseHref=Location.stripTrailingSlash(_stripIndexHtml(browserBaseHref)),this._platformStrategy.onPopState(function(ev){_this._subject.emit({url:_this.path(!0),pop:!0,type:ev.type})})}return Location.prototype.path=function(includeHash){return void 0===includeHash&&(includeHash=!1),this.normalize(this._platformStrategy.path(includeHash))},Location.prototype.isCurrentPathEqualTo=function(path,query){return void 0===query&&(query=""),this.path()==this.normalize(path+Location.normalizeQueryParams(query))},Location.prototype.normalize=function(url){return Location.stripTrailingSlash(_stripBaseHref(this._baseHref,_stripIndexHtml(url)))},Location.prototype.prepareExternalUrl=function(url){return url.length>0&&!url.startsWith("/")&&(url="/"+url),this._platformStrategy.prepareExternalUrl(url)},Location.prototype.go=function(path,query){void 0===query&&(query=""),this._platformStrategy.pushState(null,"",path,query)},Location.prototype.replaceState=function(path,query){void 0===query&&(query=""),this._platformStrategy.replaceState(null,"",path,query)},Location.prototype.forward=function(){this._platformStrategy.forward()},Location.prototype.back=function(){this._platformStrategy.back()},Location.prototype.subscribe=function(onNext,onThrow,onReturn){return void 0===onThrow&&(onThrow=null),void 0===onReturn&&(onReturn=null),this._subject.subscribe({next:onNext,error:onThrow,complete:onReturn})},Location.normalizeQueryParams=function(params){return params.length>0&&"?"!=params.substring(0,1)?"?"+params:params},Location.joinWithSlash=function(start,end){if(0==start.length)return end;if(0==end.length)return start;var slashes=0;return start.endsWith("/")&&slashes++,end.startsWith("/")&&slashes++,2==slashes?start+end.substring(1):1==slashes?start+end:start+"/"+end},Location.stripTrailingSlash=function(url){return/\/$/g.test(url)&&(url=url.substring(0,url.length-1)),url},Location.decorators=[{type:_angular_core.Injectable}],Location.ctorParameters=[{type:LocationStrategy}],Location}(),__extends=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},HashLocationStrategy=function(_super){function HashLocationStrategy(_platformLocation,_baseHref){_super.call(this),this._platformLocation=_platformLocation,this._baseHref="",isPresent(_baseHref)&&(this._baseHref=_baseHref)}return __extends(HashLocationStrategy,_super),HashLocationStrategy.prototype.onPopState=function(fn){this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn)},HashLocationStrategy.prototype.getBaseHref=function(){return this._baseHref},HashLocationStrategy.prototype.path=function(includeHash){void 0===includeHash&&(includeHash=!1);var path=this._platformLocation.hash;return isPresent(path)||(path="#"),path.length>0?path.substring(1):path},HashLocationStrategy.prototype.prepareExternalUrl=function(internal){var url=Location.joinWithSlash(this._baseHref,internal);return url.length>0?"#"+url:url},HashLocationStrategy.prototype.pushState=function(state,title,path,queryParams){var url=this.prepareExternalUrl(path+Location.normalizeQueryParams(queryParams));0==url.length&&(url=this._platformLocation.pathname),this._platformLocation.pushState(state,title,url)},HashLocationStrategy.prototype.replaceState=function(state,title,path,queryParams){var url=this.prepareExternalUrl(path+Location.normalizeQueryParams(queryParams));0==url.length&&(url=this._platformLocation.pathname),this._platformLocation.replaceState(state,title,url)},HashLocationStrategy.prototype.forward=function(){this._platformLocation.forward()},HashLocationStrategy.prototype.back=function(){this._platformLocation.back()},HashLocationStrategy.decorators=[{type:_angular_core.Injectable}],HashLocationStrategy.ctorParameters=[{type:PlatformLocation},{type:void 0,decorators:[{type:_angular_core.Optional},{type:_angular_core.Inject,args:[APP_BASE_HREF]}]}],HashLocationStrategy}(LocationStrategy),__extends$1=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},PathLocationStrategy=function(_super){function PathLocationStrategy(_platformLocation,href){if(_super.call(this),this._platformLocation=_platformLocation,isBlank(href)&&(href=this._platformLocation.getBaseHrefFromDOM()),isBlank(href))throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=href}return __extends$1(PathLocationStrategy,_super),PathLocationStrategy.prototype.onPopState=function(fn){this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn)},PathLocationStrategy.prototype.getBaseHref=function(){return this._baseHref},PathLocationStrategy.prototype.prepareExternalUrl=function(internal){return Location.joinWithSlash(this._baseHref,internal)},PathLocationStrategy.prototype.path=function(includeHash){void 0===includeHash&&(includeHash=!1);var pathname=this._platformLocation.pathname+Location.normalizeQueryParams(this._platformLocation.search),hash=this._platformLocation.hash;return hash&&includeHash?""+pathname+hash:pathname},PathLocationStrategy.prototype.pushState=function(state,title,url,queryParams){var externalUrl=this.prepareExternalUrl(url+Location.normalizeQueryParams(queryParams));this._platformLocation.pushState(state,title,externalUrl)},PathLocationStrategy.prototype.replaceState=function(state,title,url,queryParams){var externalUrl=this.prepareExternalUrl(url+Location.normalizeQueryParams(queryParams));this._platformLocation.replaceState(state,title,externalUrl)},PathLocationStrategy.prototype.forward=function(){this._platformLocation.forward()},PathLocationStrategy.prototype.back=function(){this._platformLocation.back()},PathLocationStrategy.decorators=[{type:_angular_core.Injectable}],PathLocationStrategy.ctorParameters=[{type:PlatformLocation},{type:void 0,decorators:[{type:_angular_core.Optional},{type:_angular_core.Inject,args:[APP_BASE_HREF]}]}],PathLocationStrategy}(LocationStrategy),__extends$2=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},NgLocalization=function(){function NgLocalization(){}return NgLocalization}(),NgLocaleLocalization=function(_super){function NgLocaleLocalization(_locale){_super.call(this),this._locale=_locale}return __extends$2(NgLocaleLocalization,_super),NgLocaleLocalization.prototype.getPluralCategory=function(value){var plural=getPluralCase(this._locale,value);switch(plural){case Plural.Zero:return"zero";case Plural.One:return"one";case Plural.Two:return"two";case Plural.Few:return"few";case Plural.Many:return"many";default:return"other"}},NgLocaleLocalization.decorators=[{type:_angular_core.Injectable}],NgLocaleLocalization.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],NgLocaleLocalization}(NgLocalization);!function(Plural){Plural[Plural.Zero=0]="Zero",Plural[Plural.One=1]="One",Plural[Plural.Two=2]="Two",Plural[Plural.Few=3]="Few",Plural[Plural.Many=4]="Many",Plural[Plural.Other=5]="Other"}(Plural||(Plural={}));var NumberFormatStyle,ListWrapper=(function(){try{if((new Map).values().next)return function(m,getValues){return getValues?Array.from(m.values()):Array.from(m.keys())}}catch(e){}return function(m,getValues){var res=new Array(m.size),i=0;return m.forEach(function(v,k){res[i]=getValues?v:k,i++}),res}}(),function(){function ListWrapper(){}return ListWrapper.removeAll=function(list,items){for(var i=0;i<items.length;++i){var index=list.indexOf(items[i]);list.splice(index,1)}},ListWrapper.remove=function(list,el){var index=list.indexOf(el);return index>-1&&(list.splice(index,1),!0)},ListWrapper.equals=function(a,b){if(a.length!=b.length)return!1;for(var i=0;i<a.length;++i)if(a[i]!==b[i])return!1;return!0},ListWrapper.maximum=function(list,predicate){if(0==list.length)return null;for(var solution=null,maxValue=-(1/0),index=0;index<list.length;index++){var candidate=list[index];if(null!=candidate){var candidateValue=predicate(candidate);candidateValue>maxValue&&(solution=candidate,maxValue=candidateValue)}}return solution},ListWrapper.flatten=function(list){var target=[];return _flattenArray(list,target),target},ListWrapper}()),NgClass=function(){function NgClass(_iterableDiffers,_keyValueDiffers,_ngEl,_renderer){this._iterableDiffers=_iterableDiffers,this._keyValueDiffers=_keyValueDiffers,this._ngEl=_ngEl,this._renderer=_renderer,this._initialClasses=[]}return Object.defineProperty(NgClass.prototype,"klass",{set:function(v){this._applyInitialClasses(!0),this._initialClasses="string"==typeof v?v.split(/\s+/):[],this._applyInitialClasses(!1),this._applyClasses(this._rawClass,!1)},enumerable:!0,configurable:!0}),Object.defineProperty(NgClass.prototype,"ngClass",{set:function(v){this._cleanupClasses(this._rawClass),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof v?v.split(/\s+/):v,this._rawClass&&(isListLikeIterable(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create(null):this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create(null))},enumerable:!0,configurable:!0}),NgClass.prototype.ngDoCheck=function(){if(this._iterableDiffer){var changes=this._iterableDiffer.diff(this._rawClass);changes&&this._applyIterableChanges(changes)}else if(this._keyValueDiffer){var changes=this._keyValueDiffer.diff(this._rawClass);changes&&this._applyKeyValueChanges(changes)}},NgClass.prototype._cleanupClasses=function(rawClassVal){this._applyClasses(rawClassVal,!0),this._applyInitialClasses(!1)},NgClass.prototype._applyKeyValueChanges=function(changes){var _this=this;changes.forEachAddedItem(function(record){return _this._toggleClass(record.key,record.currentValue)}),changes.forEachChangedItem(function(record){return _this._toggleClass(record.key,record.currentValue)}),changes.forEachRemovedItem(function(record){record.previousValue&&_this._toggleClass(record.key,!1)})},NgClass.prototype._applyIterableChanges=function(changes){var _this=this;changes.forEachAddedItem(function(record){return _this._toggleClass(record.item,!0)}),changes.forEachRemovedItem(function(record){return _this._toggleClass(record.item,!1)})},NgClass.prototype._applyInitialClasses=function(isCleanup){var _this=this;this._initialClasses.forEach(function(klass){return _this._toggleClass(klass,!isCleanup)})},NgClass.prototype._applyClasses=function(rawClassVal,isCleanup){var _this=this;rawClassVal&&(Array.isArray(rawClassVal)||rawClassVal instanceof Set?rawClassVal.forEach(function(klass){return _this._toggleClass(klass,!isCleanup)}):Object.keys(rawClassVal).forEach(function(klass){isPresent(rawClassVal[klass])&&_this._toggleClass(klass,!isCleanup)}))},NgClass.prototype._toggleClass=function(klass,enabled){var _this=this;klass=klass.trim(),klass&&klass.split(/\s+/g).forEach(function(klass){_this._renderer.setElementClass(_this._ngEl.nativeElement,klass,enabled)})},NgClass.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngClass]"}]}],NgClass.ctorParameters=[{type:_angular_core.IterableDiffers},{type:_angular_core.KeyValueDiffers},{type:_angular_core.ElementRef},{type:_angular_core.Renderer}],NgClass.propDecorators={klass:[{type:_angular_core.Input,args:["class"]}],ngClass:[{type:_angular_core.Input}]},NgClass}(),NgForRow=function(){function NgForRow($implicit,index,count){this.$implicit=$implicit,this.index=index,this.count=count}return Object.defineProperty(NgForRow.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"even",{get:function(){return this.index%2===0},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),NgForRow}(),NgFor=function(){function NgFor(_viewContainer,_template,_differs,_cdr){this._viewContainer=_viewContainer,this._template=_template,this._differs=_differs,this._cdr=_cdr,this._differ=null}return Object.defineProperty(NgFor.prototype,"ngForTemplate",{set:function(value){value&&(this._template=value)},enumerable:!0,configurable:!0}),NgFor.prototype.ngOnChanges=function(changes){if("ngForOf"in changes){var value=changes.ngForOf.currentValue;if(!this._differ&&value)try{this._differ=this._differs.find(value).create(this._cdr,this.ngForTrackBy)}catch(e){throw new Error("Cannot find a differ supporting object '"+value+"' of type '"+getTypeNameForDebugging(value)+"'. NgFor only supports binding to Iterables such as Arrays.")}}},NgFor.prototype.ngDoCheck=function(){if(this._differ){var changes=this._differ.diff(this.ngForOf);changes&&this._applyChanges(changes)}},NgFor.prototype._applyChanges=function(changes){var _this=this,insertTuples=[];changes.forEachOperation(function(item,adjustedPreviousIndex,currentIndex){if(null==item.previousIndex){var view=_this._viewContainer.createEmbeddedView(_this._template,new NgForRow(null,null,null),currentIndex),tuple=new RecordViewTuple(item,view);insertTuples.push(tuple)}else if(null==currentIndex)_this._viewContainer.remove(adjustedPreviousIndex);else{var view=_this._viewContainer.get(adjustedPreviousIndex);_this._viewContainer.move(view,currentIndex);var tuple=new RecordViewTuple(item,view);insertTuples.push(tuple)}});for(var i=0;i<insertTuples.length;i++)this._perViewChange(insertTuples[i].view,insertTuples[i].record);for(var i=0,ilen=this._viewContainer.length;i<ilen;i++){var viewRef=this._viewContainer.get(i);viewRef.context.index=i,viewRef.context.count=ilen}changes.forEachIdentityChange(function(record){var viewRef=_this._viewContainer.get(record.currentIndex);viewRef.context.$implicit=record.item})},NgFor.prototype._perViewChange=function(view,record){view.context.$implicit=record.item},NgFor.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],NgFor.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:_angular_core.IterableDiffers},{type:_angular_core.ChangeDetectorRef}],NgFor.propDecorators={ngForOf:[{type:_angular_core.Input}],ngForTrackBy:[{type:_angular_core.Input}],ngForTemplate:[{type:_angular_core.Input}]},NgFor}(),RecordViewTuple=function(){function RecordViewTuple(record,view){this.record=record,this.view=view}return RecordViewTuple}(),NgIf=function(){function NgIf(_viewContainer,_template){this._viewContainer=_viewContainer,this._template=_template,this._hasView=!1}return Object.defineProperty(NgIf.prototype,"ngIf",{set:function(condition){condition&&!this._hasView?(this._hasView=!0,this._viewContainer.createEmbeddedView(this._template)):!condition&&this._hasView&&(this._hasView=!1,this._viewContainer.clear())},enumerable:!0,configurable:!0}),NgIf.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngIf]"}]}],NgIf.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef}],NgIf.propDecorators={ngIf:[{type:_angular_core.Input}]},NgIf}(),_CASE_DEFAULT={},SwitchView=function(){function SwitchView(_viewContainerRef,_templateRef){this._viewContainerRef=_viewContainerRef,this._templateRef=_templateRef}return SwitchView.prototype.create=function(){this._viewContainerRef.createEmbeddedView(this._templateRef)},SwitchView.prototype.destroy=function(){this._viewContainerRef.clear()},SwitchView}(),NgSwitch=function(){function NgSwitch(){this._useDefault=!1,this._valueViews=new Map,this._activeViews=[]}return Object.defineProperty(NgSwitch.prototype,"ngSwitch",{set:function(value){var views=this._valueViews.get(value);if(views)this._useDefault=!1;else{if(this._useDefault)return;this._useDefault=!0,views=this._valueViews.get(_CASE_DEFAULT)}this._emptyAllActiveViews(),this._activateViews(views),this._switchValue=value},enumerable:!0,configurable:!0}),NgSwitch.prototype._onCaseValueChanged=function(oldCase,newCase,view){this._deregisterView(oldCase,view),this._registerView(newCase,view),oldCase===this._switchValue?(view.destroy(),ListWrapper.remove(this._activeViews,view)):newCase===this._switchValue&&(this._useDefault&&(this._useDefault=!1,this._emptyAllActiveViews()),view.create(),this._activeViews.push(view)),0!==this._activeViews.length||this._useDefault||(this._useDefault=!0,this._activateViews(this._valueViews.get(_CASE_DEFAULT)))},NgSwitch.prototype._emptyAllActiveViews=function(){for(var activeContainers=this._activeViews,i=0;i<activeContainers.length;i++)activeContainers[i].destroy();this._activeViews=[]},NgSwitch.prototype._activateViews=function(views){if(views){for(var i=0;i<views.length;i++)views[i].create();this._activeViews=views}},NgSwitch.prototype._registerView=function(value,view){var views=this._valueViews.get(value);views||(views=[],this._valueViews.set(value,views)),views.push(view)},NgSwitch.prototype._deregisterView=function(value,view){if(value!==_CASE_DEFAULT){var views=this._valueViews.get(value);1==views.length?this._valueViews.delete(value):ListWrapper.remove(views,view)}},NgSwitch.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitch]"}]}],NgSwitch.ctorParameters=[],NgSwitch.propDecorators={ngSwitch:[{type:_angular_core.Input}]},NgSwitch}(),NgSwitchCase=function(){function NgSwitchCase(viewContainer,templateRef,ngSwitch){this._value=_CASE_DEFAULT,this._switch=ngSwitch,this._view=new SwitchView(viewContainer,templateRef)}return Object.defineProperty(NgSwitchCase.prototype,"ngSwitchCase",{set:function(value){this._switch._onCaseValueChanged(this._value,value,this._view),this._value=value},enumerable:!0,configurable:!0}),NgSwitchCase.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitchCase]"}]}],NgSwitchCase.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:NgSwitch,decorators:[{type:_angular_core.Host}]}],NgSwitchCase.propDecorators={ngSwitchCase:[{type:_angular_core.Input}]},NgSwitchCase}(),NgSwitchDefault=function(){function NgSwitchDefault(viewContainer,templateRef,sswitch){sswitch._registerView(_CASE_DEFAULT,new SwitchView(viewContainer,templateRef))}return NgSwitchDefault.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitchDefault]"}]}],NgSwitchDefault.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:NgSwitch,decorators:[{type:_angular_core.Host}]}],NgSwitchDefault}(),NgPlural=function(){function NgPlural(_localization){this._localization=_localization,this._caseViews={}}return Object.defineProperty(NgPlural.prototype,"ngPlural",{set:function(value){this._switchValue=value,this._updateView()},enumerable:!0,configurable:!0}),NgPlural.prototype.addCase=function(value,switchView){this._caseViews[value]=switchView},NgPlural.prototype._updateView=function(){this._clearViews();var cases=Object.keys(this._caseViews),key=getPluralCategory(this._switchValue,cases,this._localization);this._activateView(this._caseViews[key])},NgPlural.prototype._clearViews=function(){this._activeView&&this._activeView.destroy()},NgPlural.prototype._activateView=function(view){view&&(this._activeView=view,this._activeView.create())},NgPlural.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngPlural]"}]}],NgPlural.ctorParameters=[{type:NgLocalization}],NgPlural.propDecorators={ngPlural:[{type:_angular_core.Input}]},NgPlural}(),NgPluralCase=function(){function NgPluralCase(value,template,viewContainer,ngPlural){this.value=value,ngPlural.addCase(value,new SwitchView(viewContainer,template))}return NgPluralCase.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngPluralCase]"}]}],NgPluralCase.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Attribute,args:["ngPluralCase"]}]},{type:_angular_core.TemplateRef},{type:_angular_core.ViewContainerRef},{type:NgPlural,decorators:[{type:_angular_core.Host}]}],NgPluralCase}(),NgStyle=function(){function NgStyle(_differs,_ngEl,_renderer){this._differs=_differs,this._ngEl=_ngEl,this._renderer=_renderer}return Object.defineProperty(NgStyle.prototype,"ngStyle",{set:function(v){this._ngStyle=v,!this._differ&&v&&(this._differ=this._differs.find(v).create(null))},enumerable:!0,configurable:!0}),NgStyle.prototype.ngDoCheck=function(){if(this._differ){var changes=this._differ.diff(this._ngStyle);changes&&this._applyChanges(changes)}},NgStyle.prototype._applyChanges=function(changes){var _this=this;changes.forEachRemovedItem(function(record){return _this._setStyle(record.key,null)}),changes.forEachAddedItem(function(record){return _this._setStyle(record.key,record.currentValue)}),changes.forEachChangedItem(function(record){return _this._setStyle(record.key,record.currentValue)})},NgStyle.prototype._setStyle=function(nameAndUnit,value){var _a=nameAndUnit.split("."),name=_a[0],unit=_a[1];value=value&&unit?""+value+unit:value,this._renderer.setElementStyle(this._ngEl.nativeElement,name,value)},NgStyle.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngStyle]"}]}],NgStyle.ctorParameters=[{type:_angular_core.KeyValueDiffers},{type:_angular_core.ElementRef},{type:_angular_core.Renderer}],NgStyle.propDecorators={ngStyle:[{type:_angular_core.Input}]},NgStyle}(),NgTemplateOutlet=function(){function NgTemplateOutlet(_viewContainerRef){this._viewContainerRef=_viewContainerRef}return Object.defineProperty(NgTemplateOutlet.prototype,"ngOutletContext",{set:function(context){this._context=context},enumerable:!0,configurable:!0}),Object.defineProperty(NgTemplateOutlet.prototype,"ngTemplateOutlet",{set:function(templateRef){this._templateRef=templateRef},enumerable:!0,configurable:!0}),NgTemplateOutlet.prototype.ngOnChanges=function(changes){this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this._templateRef&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this._templateRef,this._context))},NgTemplateOutlet.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],NgTemplateOutlet.ctorParameters=[{type:_angular_core.ViewContainerRef}],NgTemplateOutlet.propDecorators={ngOutletContext:[{type:_angular_core.Input}],ngTemplateOutlet:[{type:_angular_core.Input}]},NgTemplateOutlet}(),COMMON_DIRECTIVES=[NgClass,NgFor,NgIf,NgTemplateOutlet,NgStyle,NgSwitch,NgSwitchCase,NgSwitchDefault,NgPlural,NgPluralCase],isPromise=_angular_core.__core_private__.isPromise,__extends$4=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},BaseError=function(_super){function BaseError(message){var nativeError=_super.call(this,message);this._nativeError=nativeError}return __extends$4(BaseError,_super),Object.defineProperty(BaseError.prototype,"message",{get:function(){return this._nativeError.message},set:function(message){this._nativeError.message=message},enumerable:!0,configurable:!0}),Object.defineProperty(BaseError.prototype,"name",{get:function(){return this._nativeError.name},enumerable:!0,configurable:!0}),Object.defineProperty(BaseError.prototype,"stack",{get:function(){return this._nativeError.stack},set:function(value){this._nativeError.stack=value},enumerable:!0,configurable:!0}),BaseError.prototype.toString=function(){return this._nativeError.toString()},BaseError}(Error),__extends$3=(function(_super){function WrappedError(message,error){_super.call(this,message+" caused by: "+(error instanceof Error?error.message:error)),this.originalError=error}return __extends$4(WrappedError,_super),Object.defineProperty(WrappedError.prototype,"stack",{get:function(){return(this.originalError instanceof Error?this.originalError:this._nativeError).stack},enumerable:!0,configurable:!0}),WrappedError}(BaseError),this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)}),InvalidPipeArgumentError=function(_super){function InvalidPipeArgumentError(type,value){_super.call(this,"Invalid argument '"+value+"' for pipe '"+stringify(type)+"'")}return __extends$3(InvalidPipeArgumentError,_super),InvalidPipeArgumentError}(BaseError),ObservableStrategy=function(){function ObservableStrategy(){}return ObservableStrategy.prototype.createSubscription=function(async,updateLatestValue){return async.subscribe({next:updateLatestValue,error:function(e){throw e}})},ObservableStrategy.prototype.dispose=function(subscription){subscription.unsubscribe()},ObservableStrategy.prototype.onDestroy=function(subscription){subscription.unsubscribe()},ObservableStrategy}(),PromiseStrategy=function(){function PromiseStrategy(){}return PromiseStrategy.prototype.createSubscription=function(async,updateLatestValue){return async.then(updateLatestValue,function(e){throw e})},PromiseStrategy.prototype.dispose=function(subscription){},PromiseStrategy.prototype.onDestroy=function(subscription){},PromiseStrategy}(),_promiseStrategy=new PromiseStrategy,_observableStrategy=new ObservableStrategy,AsyncPipe=function(){function AsyncPipe(_ref){this._ref=_ref,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}return AsyncPipe.prototype.ngOnDestroy=function(){this._subscription&&this._dispose()},AsyncPipe.prototype.transform=function(obj){return this._obj?obj!==this._obj?(this._dispose(),this.transform(obj)):this._latestValue===this._latestReturnedValue?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,_angular_core.WrappedValue.wrap(this._latestValue)):(obj&&this._subscribe(obj),this._latestReturnedValue=this._latestValue,this._latestValue)},AsyncPipe.prototype._subscribe=function(obj){var _this=this;this._obj=obj,this._strategy=this._selectStrategy(obj),this._subscription=this._strategy.createSubscription(obj,function(value){return _this._updateLatestValue(obj,value)})},AsyncPipe.prototype._selectStrategy=function(obj){if(isPromise(obj))return _promiseStrategy;if(obj.subscribe)return _observableStrategy;throw new InvalidPipeArgumentError(AsyncPipe,obj)},AsyncPipe.prototype._dispose=function(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null},AsyncPipe.prototype._updateLatestValue=function(async,value){async===this._obj&&(this._latestValue=value,this._ref.markForCheck())},AsyncPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"async",pure:!1}]}],AsyncPipe.ctorParameters=[{type:_angular_core.ChangeDetectorRef}],AsyncPipe}();!function(NumberFormatStyle){NumberFormatStyle[NumberFormatStyle.Decimal=0]="Decimal",NumberFormatStyle[NumberFormatStyle.Percent=1]="Percent",NumberFormatStyle[NumberFormatStyle.Currency=2]="Currency"}(NumberFormatStyle||(NumberFormatStyle={}));var NumberFormatter=function(){function NumberFormatter(){}return NumberFormatter.format=function(num,locale,style,_a){var _b=void 0===_a?{}:_a,minimumIntegerDigits=_b.minimumIntegerDigits,minimumFractionDigits=_b.minimumFractionDigits,maximumFractionDigits=_b.maximumFractionDigits,currency=_b.currency,_c=_b.currencyAsSymbol,currencyAsSymbol=void 0!==_c&&_c,options={minimumIntegerDigits:minimumIntegerDigits,minimumFractionDigits:minimumFractionDigits,maximumFractionDigits:maximumFractionDigits,style:NumberFormatStyle[style].toLowerCase()};return style==NumberFormatStyle.Currency&&(options.currency=currency,options.currencyDisplay=currencyAsSymbol?"symbol":"code"),new Intl.NumberFormat(locale,options).format(num)},NumberFormatter}(),DATE_FORMATS_SPLIT=/((?:[^yMLdHhmsazZEwGjJ']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|J+|j+|m+|s+|a|z|Z|G+|w+))(.*)/,PATTERN_ALIASES={yMMMdjms:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",3),digitCondition("day",1),digitCondition("hour",1),digitCondition("minute",1),digitCondition("second",1)])),yMdjm:datePartGetterFactory(combine([digitCondition("year",1),digitCondition("month",1),digitCondition("day",1),digitCondition("hour",1),digitCondition("minute",1)])),yMMMMEEEEd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",4),nameCondition("weekday",4),digitCondition("day",1)])),yMMMMd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",4),digitCondition("day",1)])),yMMMd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",3),digitCondition("day",1)])),yMd:datePartGetterFactory(combine([digitCondition("year",1),digitCondition("month",1),digitCondition("day",1)])),jms:datePartGetterFactory(combine([digitCondition("hour",1),digitCondition("second",1),digitCondition("minute",1)])),jm:datePartGetterFactory(combine([digitCondition("hour",1),digitCondition("minute",1)]))},DATE_FORMATS={yyyy:datePartGetterFactory(digitCondition("year",4)),yy:datePartGetterFactory(digitCondition("year",2)),y:datePartGetterFactory(digitCondition("year",1)),MMMM:datePartGetterFactory(nameCondition("month",4)),MMM:datePartGetterFactory(nameCondition("month",3)),MM:datePartGetterFactory(digitCondition("month",2)),M:datePartGetterFactory(digitCondition("month",1)),LLLL:datePartGetterFactory(nameCondition("month",4)),L:datePartGetterFactory(nameCondition("month",1)),dd:datePartGetterFactory(digitCondition("day",2)),d:datePartGetterFactory(digitCondition("day",1)),HH:digitModifier(hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",2),!1)))),H:hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!1))),hh:digitModifier(hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",2),!0)))),h:hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!0))),jj:datePartGetterFactory(digitCondition("hour",2)),j:datePartGetterFactory(digitCondition("hour",1)),mm:digitModifier(datePartGetterFactory(digitCondition("minute",2))),m:datePartGetterFactory(digitCondition("minute",1)),ss:digitModifier(datePartGetterFactory(digitCondition("second",2))),s:datePartGetterFactory(digitCondition("second",1)), | ||
sss:datePartGetterFactory(digitCondition("second",3)),EEEE:datePartGetterFactory(nameCondition("weekday",4)),EEE:datePartGetterFactory(nameCondition("weekday",3)),EE:datePartGetterFactory(nameCondition("weekday",2)),E:datePartGetterFactory(nameCondition("weekday",1)),a:hourClockExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!0))),Z:timeZoneGetter("short"),z:timeZoneGetter("long"),ww:datePartGetterFactory({}),w:datePartGetterFactory({}),G:datePartGetterFactory(nameCondition("era",1)),GG:datePartGetterFactory(nameCondition("era",2)),GGG:datePartGetterFactory(nameCondition("era",3)),GGGG:datePartGetterFactory(nameCondition("era",4))},DATE_FORMATTER_CACHE=new Map,DateFormatter=function(){function DateFormatter(){}return DateFormatter.format=function(date,locale,pattern){return dateFormatter(pattern,date,locale)},DateFormatter}(),DatePipe=function(){function DatePipe(_locale){this._locale=_locale}return DatePipe.prototype.transform=function(value,pattern){if(void 0===pattern&&(pattern="mediumDate"),isBlank(value))return null;if(!this.supports(value))throw new InvalidPipeArgumentError(DatePipe,value);return NumberWrapper.isNumeric(value)&&(value=parseFloat(value)),DateFormatter.format(new Date(value),this._locale,DatePipe._ALIASES[pattern]||pattern)},DatePipe.prototype.supports=function(obj){return isDate(obj)||NumberWrapper.isNumeric(obj)||"string"==typeof obj&&isDate(new Date(obj))},DatePipe._ALIASES={medium:"yMMMdjms",short:"yMdjm",fullDate:"yMMMMEEEEd",longDate:"yMMMMd",mediumDate:"yMMMd",shortDate:"yMd",mediumTime:"jms",shortTime:"jm"},DatePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"date",pure:!0}]}],DatePipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],DatePipe}(),_INTERPOLATION_REGEXP=/#/g,I18nPluralPipe=function(){function I18nPluralPipe(_localization){this._localization=_localization}return I18nPluralPipe.prototype.transform=function(value,pluralMap){if(isBlank(value))return"";if("object"!=typeof pluralMap||null===pluralMap)throw new InvalidPipeArgumentError(I18nPluralPipe,pluralMap);var key=getPluralCategory(value,Object.keys(pluralMap),this._localization);return pluralMap[key].replace(_INTERPOLATION_REGEXP,value.toString())},I18nPluralPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"i18nPlural",pure:!0}]}],I18nPluralPipe.ctorParameters=[{type:NgLocalization}],I18nPluralPipe}(),I18nSelectPipe=function(){function I18nSelectPipe(){}return I18nSelectPipe.prototype.transform=function(value,mapping){if(isBlank(value))return"";if("object"!=typeof mapping||null===mapping)throw new InvalidPipeArgumentError(I18nSelectPipe,mapping);return mapping[value]||""},I18nSelectPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"i18nSelect",pure:!0}]}],I18nSelectPipe.ctorParameters=[],I18nSelectPipe}(),JsonPipe=function(){function JsonPipe(){}return JsonPipe.prototype.transform=function(value){return JSON.stringify(value,null,2)},JsonPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"json",pure:!1}]}],JsonPipe.ctorParameters=[],JsonPipe}(),LowerCasePipe=function(){function LowerCasePipe(){}return LowerCasePipe.prototype.transform=function(value){if(isBlank(value))return value;if("string"!=typeof value)throw new InvalidPipeArgumentError(LowerCasePipe,value);return value.toLowerCase()},LowerCasePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"lowercase"}]}],LowerCasePipe.ctorParameters=[],LowerCasePipe}(),_NUMBER_FORMAT_REGEXP=/^(\d+)?\.((\d+)(-(\d+))?)?$/,DecimalPipe=function(){function DecimalPipe(_locale){this._locale=_locale}return DecimalPipe.prototype.transform=function(value,digits){return void 0===digits&&(digits=null),formatNumber(DecimalPipe,this._locale,value,NumberFormatStyle.Decimal,digits)},DecimalPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"number"}]}],DecimalPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],DecimalPipe}(),PercentPipe=function(){function PercentPipe(_locale){this._locale=_locale}return PercentPipe.prototype.transform=function(value,digits){return void 0===digits&&(digits=null),formatNumber(PercentPipe,this._locale,value,NumberFormatStyle.Percent,digits)},PercentPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"percent"}]}],PercentPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],PercentPipe}(),CurrencyPipe=function(){function CurrencyPipe(_locale){this._locale=_locale}return CurrencyPipe.prototype.transform=function(value,currencyCode,symbolDisplay,digits){return void 0===currencyCode&&(currencyCode="USD"),void 0===symbolDisplay&&(symbolDisplay=!1),void 0===digits&&(digits=null),formatNumber(CurrencyPipe,this._locale,value,NumberFormatStyle.Currency,digits,currencyCode,symbolDisplay)},CurrencyPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"currency"}]}],CurrencyPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],CurrencyPipe}(),SlicePipe=function(){function SlicePipe(){}return SlicePipe.prototype.transform=function(value,start,end){if(isBlank(value))return value;if(!this.supports(value))throw new InvalidPipeArgumentError(SlicePipe,value);return value.slice(start,end)},SlicePipe.prototype.supports=function(obj){return"string"==typeof obj||Array.isArray(obj)},SlicePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"slice",pure:!1}]}],SlicePipe.ctorParameters=[],SlicePipe}(),UpperCasePipe=function(){function UpperCasePipe(){}return UpperCasePipe.prototype.transform=function(value){if(isBlank(value))return value;if("string"!=typeof value)throw new InvalidPipeArgumentError(UpperCasePipe,value);return value.toUpperCase()},UpperCasePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"uppercase"}]}],UpperCasePipe.ctorParameters=[],UpperCasePipe}(),COMMON_PIPES=[AsyncPipe,UpperCasePipe,LowerCasePipe,JsonPipe,SlicePipe,DecimalPipe,PercentPipe,CurrencyPipe,DatePipe,I18nPluralPipe,I18nSelectPipe],CommonModule=function(){function CommonModule(){}return CommonModule.decorators=[{type:_angular_core.NgModule,args:[{declarations:[COMMON_DIRECTIVES,COMMON_PIPES],exports:[COMMON_DIRECTIVES,COMMON_PIPES],providers:[{provide:NgLocalization,useClass:NgLocaleLocalization}]}]}],CommonModule.ctorParameters=[],CommonModule}();exports.NgLocalization=NgLocalization,exports.CommonModule=CommonModule,exports.NgClass=NgClass,exports.NgFor=NgFor,exports.NgIf=NgIf,exports.NgPlural=NgPlural,exports.NgPluralCase=NgPluralCase,exports.NgStyle=NgStyle,exports.NgSwitch=NgSwitch,exports.NgSwitchCase=NgSwitchCase,exports.NgSwitchDefault=NgSwitchDefault,exports.NgTemplateOutlet=NgTemplateOutlet,exports.AsyncPipe=AsyncPipe,exports.DatePipe=DatePipe,exports.I18nPluralPipe=I18nPluralPipe,exports.I18nSelectPipe=I18nSelectPipe,exports.JsonPipe=JsonPipe,exports.LowerCasePipe=LowerCasePipe,exports.CurrencyPipe=CurrencyPipe,exports.DecimalPipe=DecimalPipe,exports.PercentPipe=PercentPipe,exports.SlicePipe=SlicePipe,exports.UpperCasePipe=UpperCasePipe,exports.PlatformLocation=PlatformLocation,exports.LocationStrategy=LocationStrategy,exports.APP_BASE_HREF=APP_BASE_HREF,exports.HashLocationStrategy=HashLocationStrategy,exports.PathLocationStrategy=PathLocationStrategy,exports.Location=Location}); | ||
var globalScope,PlatformLocation=function(){function PlatformLocation(){}return Object.defineProperty(PlatformLocation.prototype,"pathname",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(PlatformLocation.prototype,"search",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(PlatformLocation.prototype,"hash",{get:function(){return null},enumerable:!0,configurable:!0}),PlatformLocation}(),LocationStrategy=function(){function LocationStrategy(){}return LocationStrategy}(),APP_BASE_HREF=new _angular_core.OpaqueToken("appBaseHref");globalScope="undefined"==typeof window?"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:global:window;var _global=globalScope;_global.assert=function(condition){};var Plural,NumberWrapper=function(){function NumberWrapper(){}return NumberWrapper.parseIntAutoRadix=function(text){var result=parseInt(text);if(isNaN(result))throw new Error("Invalid integer literal when parsing "+text);return result},NumberWrapper.isNumeric=function(value){return!isNaN(value-parseFloat(value))},NumberWrapper}(),_symbolIterator=null,Location=function(){function Location(platformStrategy){var _this=this;this._subject=new _angular_core.EventEmitter,this._platformStrategy=platformStrategy;var browserBaseHref=this._platformStrategy.getBaseHref();this._baseHref=Location.stripTrailingSlash(_stripIndexHtml(browserBaseHref)),this._platformStrategy.onPopState(function(ev){_this._subject.emit({url:_this.path(!0),pop:!0,type:ev.type})})}return Location.prototype.path=function(includeHash){return void 0===includeHash&&(includeHash=!1),this.normalize(this._platformStrategy.path(includeHash))},Location.prototype.isCurrentPathEqualTo=function(path,query){return void 0===query&&(query=""),this.path()==this.normalize(path+Location.normalizeQueryParams(query))},Location.prototype.normalize=function(url){return Location.stripTrailingSlash(_stripBaseHref(this._baseHref,_stripIndexHtml(url)))},Location.prototype.prepareExternalUrl=function(url){return url.length>0&&!url.startsWith("/")&&(url="/"+url),this._platformStrategy.prepareExternalUrl(url)},Location.prototype.go=function(path,query){void 0===query&&(query=""),this._platformStrategy.pushState(null,"",path,query)},Location.prototype.replaceState=function(path,query){void 0===query&&(query=""),this._platformStrategy.replaceState(null,"",path,query)},Location.prototype.forward=function(){this._platformStrategy.forward()},Location.prototype.back=function(){this._platformStrategy.back()},Location.prototype.subscribe=function(onNext,onThrow,onReturn){return void 0===onThrow&&(onThrow=null),void 0===onReturn&&(onReturn=null),this._subject.subscribe({next:onNext,error:onThrow,complete:onReturn})},Location.normalizeQueryParams=function(params){return params.length>0&&"?"!=params.substring(0,1)?"?"+params:params},Location.joinWithSlash=function(start,end){if(0==start.length)return end;if(0==end.length)return start;var slashes=0;return start.endsWith("/")&&slashes++,end.startsWith("/")&&slashes++,2==slashes?start+end.substring(1):1==slashes?start+end:start+"/"+end},Location.stripTrailingSlash=function(url){return/\/$/g.test(url)&&(url=url.substring(0,url.length-1)),url},Location.decorators=[{type:_angular_core.Injectable}],Location.ctorParameters=[{type:LocationStrategy}],Location}(),__extends=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},HashLocationStrategy=function(_super){function HashLocationStrategy(_platformLocation,_baseHref){_super.call(this),this._platformLocation=_platformLocation,this._baseHref="",isPresent(_baseHref)&&(this._baseHref=_baseHref)}return __extends(HashLocationStrategy,_super),HashLocationStrategy.prototype.onPopState=function(fn){this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn)},HashLocationStrategy.prototype.getBaseHref=function(){return this._baseHref},HashLocationStrategy.prototype.path=function(includeHash){void 0===includeHash&&(includeHash=!1);var path=this._platformLocation.hash;return isPresent(path)||(path="#"),path.length>0?path.substring(1):path},HashLocationStrategy.prototype.prepareExternalUrl=function(internal){var url=Location.joinWithSlash(this._baseHref,internal);return url.length>0?"#"+url:url},HashLocationStrategy.prototype.pushState=function(state,title,path,queryParams){var url=this.prepareExternalUrl(path+Location.normalizeQueryParams(queryParams));0==url.length&&(url=this._platformLocation.pathname),this._platformLocation.pushState(state,title,url)},HashLocationStrategy.prototype.replaceState=function(state,title,path,queryParams){var url=this.prepareExternalUrl(path+Location.normalizeQueryParams(queryParams));0==url.length&&(url=this._platformLocation.pathname),this._platformLocation.replaceState(state,title,url)},HashLocationStrategy.prototype.forward=function(){this._platformLocation.forward()},HashLocationStrategy.prototype.back=function(){this._platformLocation.back()},HashLocationStrategy.decorators=[{type:_angular_core.Injectable}],HashLocationStrategy.ctorParameters=[{type:PlatformLocation},{type:void 0,decorators:[{type:_angular_core.Optional},{type:_angular_core.Inject,args:[APP_BASE_HREF]}]}],HashLocationStrategy}(LocationStrategy),__extends$1=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},PathLocationStrategy=function(_super){function PathLocationStrategy(_platformLocation,href){if(_super.call(this),this._platformLocation=_platformLocation,isBlank(href)&&(href=this._platformLocation.getBaseHrefFromDOM()),isBlank(href))throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=href}return __extends$1(PathLocationStrategy,_super),PathLocationStrategy.prototype.onPopState=function(fn){this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn)},PathLocationStrategy.prototype.getBaseHref=function(){return this._baseHref},PathLocationStrategy.prototype.prepareExternalUrl=function(internal){return Location.joinWithSlash(this._baseHref,internal)},PathLocationStrategy.prototype.path=function(includeHash){void 0===includeHash&&(includeHash=!1);var pathname=this._platformLocation.pathname+Location.normalizeQueryParams(this._platformLocation.search),hash=this._platformLocation.hash;return hash&&includeHash?""+pathname+hash:pathname},PathLocationStrategy.prototype.pushState=function(state,title,url,queryParams){var externalUrl=this.prepareExternalUrl(url+Location.normalizeQueryParams(queryParams));this._platformLocation.pushState(state,title,externalUrl)},PathLocationStrategy.prototype.replaceState=function(state,title,url,queryParams){var externalUrl=this.prepareExternalUrl(url+Location.normalizeQueryParams(queryParams));this._platformLocation.replaceState(state,title,externalUrl)},PathLocationStrategy.prototype.forward=function(){this._platformLocation.forward()},PathLocationStrategy.prototype.back=function(){this._platformLocation.back()},PathLocationStrategy.decorators=[{type:_angular_core.Injectable}],PathLocationStrategy.ctorParameters=[{type:PlatformLocation},{type:void 0,decorators:[{type:_angular_core.Optional},{type:_angular_core.Inject,args:[APP_BASE_HREF]}]}],PathLocationStrategy}(LocationStrategy),__extends$2=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},NgLocalization=function(){function NgLocalization(){}return NgLocalization}(),NgLocaleLocalization=function(_super){function NgLocaleLocalization(_locale){_super.call(this),this._locale=_locale}return __extends$2(NgLocaleLocalization,_super),NgLocaleLocalization.prototype.getPluralCategory=function(value){var plural=getPluralCase(this._locale,value);switch(plural){case Plural.Zero:return"zero";case Plural.One:return"one";case Plural.Two:return"two";case Plural.Few:return"few";case Plural.Many:return"many";default:return"other"}},NgLocaleLocalization.decorators=[{type:_angular_core.Injectable}],NgLocaleLocalization.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],NgLocaleLocalization}(NgLocalization);!function(Plural){Plural[Plural.Zero=0]="Zero",Plural[Plural.One=1]="One",Plural[Plural.Two=2]="Two",Plural[Plural.Few=3]="Few",Plural[Plural.Many=4]="Many",Plural[Plural.Other=5]="Other"}(Plural||(Plural={}));var NumberFormatStyle,NgClass=function(){function NgClass(_iterableDiffers,_keyValueDiffers,_ngEl,_renderer){this._iterableDiffers=_iterableDiffers,this._keyValueDiffers=_keyValueDiffers,this._ngEl=_ngEl,this._renderer=_renderer,this._initialClasses=[]}return Object.defineProperty(NgClass.prototype,"klass",{set:function(v){this._applyInitialClasses(!0),this._initialClasses="string"==typeof v?v.split(/\s+/):[],this._applyInitialClasses(!1),this._applyClasses(this._rawClass,!1)},enumerable:!0,configurable:!0}),Object.defineProperty(NgClass.prototype,"ngClass",{set:function(v){this._cleanupClasses(this._rawClass),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof v?v.split(/\s+/):v,this._rawClass&&(isListLikeIterable(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create(null):this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create(null))},enumerable:!0,configurable:!0}),NgClass.prototype.ngDoCheck=function(){if(this._iterableDiffer){var changes=this._iterableDiffer.diff(this._rawClass);changes&&this._applyIterableChanges(changes)}else if(this._keyValueDiffer){var changes=this._keyValueDiffer.diff(this._rawClass);changes&&this._applyKeyValueChanges(changes)}},NgClass.prototype._cleanupClasses=function(rawClassVal){this._applyClasses(rawClassVal,!0),this._applyInitialClasses(!1)},NgClass.prototype._applyKeyValueChanges=function(changes){var _this=this;changes.forEachAddedItem(function(record){return _this._toggleClass(record.key,record.currentValue)}),changes.forEachChangedItem(function(record){return _this._toggleClass(record.key,record.currentValue)}),changes.forEachRemovedItem(function(record){record.previousValue&&_this._toggleClass(record.key,!1)})},NgClass.prototype._applyIterableChanges=function(changes){var _this=this;changes.forEachAddedItem(function(record){if("string"!=typeof record.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+stringify(record.item));_this._toggleClass(record.item,!0)}),changes.forEachRemovedItem(function(record){return _this._toggleClass(record.item,!1)})},NgClass.prototype._applyInitialClasses=function(isCleanup){var _this=this;this._initialClasses.forEach(function(klass){return _this._toggleClass(klass,!isCleanup)})},NgClass.prototype._applyClasses=function(rawClassVal,isCleanup){var _this=this;rawClassVal&&(Array.isArray(rawClassVal)||rawClassVal instanceof Set?rawClassVal.forEach(function(klass){return _this._toggleClass(klass,!isCleanup)}):Object.keys(rawClassVal).forEach(function(klass){isPresent(rawClassVal[klass])&&_this._toggleClass(klass,!isCleanup)}))},NgClass.prototype._toggleClass=function(klass,enabled){var _this=this;klass=klass.trim(),klass&&klass.split(/\s+/g).forEach(function(klass){_this._renderer.setElementClass(_this._ngEl.nativeElement,klass,enabled)})},NgClass.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngClass]"}]}],NgClass.ctorParameters=[{type:_angular_core.IterableDiffers},{type:_angular_core.KeyValueDiffers},{type:_angular_core.ElementRef},{type:_angular_core.Renderer}],NgClass.propDecorators={klass:[{type:_angular_core.Input,args:["class"]}],ngClass:[{type:_angular_core.Input}]},NgClass}(),NgForRow=function(){function NgForRow($implicit,index,count){this.$implicit=$implicit,this.index=index,this.count=count}return Object.defineProperty(NgForRow.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"even",{get:function(){return this.index%2===0},enumerable:!0,configurable:!0}),Object.defineProperty(NgForRow.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),NgForRow}(),NgFor=function(){function NgFor(_viewContainer,_template,_differs,_cdr){this._viewContainer=_viewContainer,this._template=_template,this._differs=_differs,this._cdr=_cdr,this._differ=null}return Object.defineProperty(NgFor.prototype,"ngForTemplate",{set:function(value){value&&(this._template=value)},enumerable:!0,configurable:!0}),NgFor.prototype.ngOnChanges=function(changes){if("ngForOf"in changes){var value=changes.ngForOf.currentValue;if(!this._differ&&value)try{this._differ=this._differs.find(value).create(this._cdr,this.ngForTrackBy)}catch(e){throw new Error("Cannot find a differ supporting object '"+value+"' of type '"+getTypeNameForDebugging(value)+"'. NgFor only supports binding to Iterables such as Arrays.")}}},NgFor.prototype.ngDoCheck=function(){if(this._differ){var changes=this._differ.diff(this.ngForOf);changes&&this._applyChanges(changes)}},NgFor.prototype._applyChanges=function(changes){var _this=this,insertTuples=[];changes.forEachOperation(function(item,adjustedPreviousIndex,currentIndex){if(null==item.previousIndex){var view=_this._viewContainer.createEmbeddedView(_this._template,new NgForRow(null,null,null),currentIndex),tuple=new RecordViewTuple(item,view);insertTuples.push(tuple)}else if(null==currentIndex)_this._viewContainer.remove(adjustedPreviousIndex);else{var view=_this._viewContainer.get(adjustedPreviousIndex);_this._viewContainer.move(view,currentIndex);var tuple=new RecordViewTuple(item,view);insertTuples.push(tuple)}});for(var i=0;i<insertTuples.length;i++)this._perViewChange(insertTuples[i].view,insertTuples[i].record);for(var i=0,ilen=this._viewContainer.length;i<ilen;i++){var viewRef=this._viewContainer.get(i);viewRef.context.index=i,viewRef.context.count=ilen}changes.forEachIdentityChange(function(record){var viewRef=_this._viewContainer.get(record.currentIndex);viewRef.context.$implicit=record.item})},NgFor.prototype._perViewChange=function(view,record){view.context.$implicit=record.item},NgFor.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],NgFor.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:_angular_core.IterableDiffers},{type:_angular_core.ChangeDetectorRef}],NgFor.propDecorators={ngForOf:[{type:_angular_core.Input}],ngForTrackBy:[{type:_angular_core.Input}],ngForTemplate:[{type:_angular_core.Input}]},NgFor}(),RecordViewTuple=function(){function RecordViewTuple(record,view){this.record=record,this.view=view}return RecordViewTuple}(),NgIf=function(){function NgIf(_viewContainer,_template){this._viewContainer=_viewContainer,this._template=_template,this._hasView=!1}return Object.defineProperty(NgIf.prototype,"ngIf",{set:function(condition){condition&&!this._hasView?(this._hasView=!0,this._viewContainer.createEmbeddedView(this._template)):!condition&&this._hasView&&(this._hasView=!1,this._viewContainer.clear())},enumerable:!0,configurable:!0}),NgIf.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngIf]"}]}],NgIf.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef}],NgIf.propDecorators={ngIf:[{type:_angular_core.Input}]},NgIf}(),SwitchView=function(){function SwitchView(_viewContainerRef,_templateRef){this._viewContainerRef=_viewContainerRef,this._templateRef=_templateRef,this._created=!1}return SwitchView.prototype.create=function(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)},SwitchView.prototype.destroy=function(){this._created=!1,this._viewContainerRef.clear()},SwitchView.prototype.enforceState=function(created){created&&!this._created?this.create():!created&&this._created&&this.destroy()},SwitchView}(),NgSwitch=function(){function NgSwitch(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}return Object.defineProperty(NgSwitch.prototype,"ngSwitch",{set:function(newValue){this._ngSwitch=newValue,0===this._caseCount&&this._updateDefaultCases(!0)},enumerable:!0,configurable:!0}),NgSwitch.prototype._addCase=function(){return this._caseCount++},NgSwitch.prototype._addDefault=function(view){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(view)},NgSwitch.prototype._matchCase=function(value){var matched=value==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||matched,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),matched},NgSwitch.prototype._updateDefaultCases=function(useDefault){if(this._defaultViews&&useDefault!==this._defaultUsed){this._defaultUsed=useDefault;for(var i=0;i<this._defaultViews.length;i++){var defaultView=this._defaultViews[i];defaultView.enforceState(useDefault)}}},NgSwitch.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitch]"}]}],NgSwitch.ctorParameters=[],NgSwitch.propDecorators={ngSwitch:[{type:_angular_core.Input}]},NgSwitch}(),NgSwitchCase=function(){function NgSwitchCase(viewContainer,templateRef,ngSwitch){this.ngSwitch=ngSwitch,ngSwitch._addCase(),this._view=new SwitchView(viewContainer,templateRef)}return NgSwitchCase.prototype.ngDoCheck=function(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))},NgSwitchCase.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitchCase]"}]}],NgSwitchCase.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:NgSwitch,decorators:[{type:_angular_core.Host}]}],NgSwitchCase.propDecorators={ngSwitchCase:[{type:_angular_core.Input}]},NgSwitchCase}(),NgSwitchDefault=function(){function NgSwitchDefault(viewContainer,templateRef,ngSwitch){ngSwitch._addDefault(new SwitchView(viewContainer,templateRef))}return NgSwitchDefault.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngSwitchDefault]"}]}],NgSwitchDefault.ctorParameters=[{type:_angular_core.ViewContainerRef},{type:_angular_core.TemplateRef},{type:NgSwitch,decorators:[{type:_angular_core.Host}]}],NgSwitchDefault}(),NgPlural=function(){function NgPlural(_localization){this._localization=_localization,this._caseViews={}}return Object.defineProperty(NgPlural.prototype,"ngPlural",{set:function(value){this._switchValue=value,this._updateView()},enumerable:!0,configurable:!0}),NgPlural.prototype.addCase=function(value,switchView){this._caseViews[value]=switchView},NgPlural.prototype._updateView=function(){this._clearViews();var cases=Object.keys(this._caseViews),key=getPluralCategory(this._switchValue,cases,this._localization);this._activateView(this._caseViews[key])},NgPlural.prototype._clearViews=function(){this._activeView&&this._activeView.destroy()},NgPlural.prototype._activateView=function(view){view&&(this._activeView=view,this._activeView.create())},NgPlural.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngPlural]"}]}],NgPlural.ctorParameters=[{type:NgLocalization}],NgPlural.propDecorators={ngPlural:[{type:_angular_core.Input}]},NgPlural}(),NgPluralCase=function(){function NgPluralCase(value,template,viewContainer,ngPlural){this.value=value,ngPlural.addCase(value,new SwitchView(viewContainer,template))}return NgPluralCase.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngPluralCase]"}]}],NgPluralCase.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Attribute,args:["ngPluralCase"]}]},{type:_angular_core.TemplateRef},{type:_angular_core.ViewContainerRef},{type:NgPlural,decorators:[{type:_angular_core.Host}]}],NgPluralCase}(),NgStyle=function(){function NgStyle(_differs,_ngEl,_renderer){this._differs=_differs,this._ngEl=_ngEl,this._renderer=_renderer}return Object.defineProperty(NgStyle.prototype,"ngStyle",{set:function(v){this._ngStyle=v,!this._differ&&v&&(this._differ=this._differs.find(v).create(null))},enumerable:!0,configurable:!0}),NgStyle.prototype.ngDoCheck=function(){if(this._differ){var changes=this._differ.diff(this._ngStyle);changes&&this._applyChanges(changes)}},NgStyle.prototype._applyChanges=function(changes){var _this=this;changes.forEachRemovedItem(function(record){return _this._setStyle(record.key,null)}),changes.forEachAddedItem(function(record){return _this._setStyle(record.key,record.currentValue)}),changes.forEachChangedItem(function(record){return _this._setStyle(record.key,record.currentValue)})},NgStyle.prototype._setStyle=function(nameAndUnit,value){var _a=nameAndUnit.split("."),name=_a[0],unit=_a[1];value=value&&unit?""+value+unit:value,this._renderer.setElementStyle(this._ngEl.nativeElement,name,value)},NgStyle.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngStyle]"}]}],NgStyle.ctorParameters=[{type:_angular_core.KeyValueDiffers},{type:_angular_core.ElementRef},{type:_angular_core.Renderer}],NgStyle.propDecorators={ngStyle:[{type:_angular_core.Input}]},NgStyle}(),NgTemplateOutlet=function(){function NgTemplateOutlet(_viewContainerRef){this._viewContainerRef=_viewContainerRef}return Object.defineProperty(NgTemplateOutlet.prototype,"ngOutletContext",{set:function(context){this._context=context},enumerable:!0,configurable:!0}),Object.defineProperty(NgTemplateOutlet.prototype,"ngTemplateOutlet",{set:function(templateRef){this._templateRef=templateRef},enumerable:!0,configurable:!0}),NgTemplateOutlet.prototype.ngOnChanges=function(changes){this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this._templateRef&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this._templateRef,this._context))},NgTemplateOutlet.decorators=[{type:_angular_core.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],NgTemplateOutlet.ctorParameters=[{type:_angular_core.ViewContainerRef}],NgTemplateOutlet.propDecorators={ngOutletContext:[{type:_angular_core.Input}],ngTemplateOutlet:[{type:_angular_core.Input}]},NgTemplateOutlet}(),COMMON_DIRECTIVES=[NgClass,NgFor,NgIf,NgTemplateOutlet,NgStyle,NgSwitch,NgSwitchCase,NgSwitchDefault,NgPlural,NgPluralCase],isPromise=_angular_core.__core_private__.isPromise,__extends$4=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},BaseError=function(_super){function BaseError(message){var nativeError=_super.call(this,message);this._nativeError=nativeError}return __extends$4(BaseError,_super),Object.defineProperty(BaseError.prototype,"message",{get:function(){return this._nativeError.message},set:function(message){this._nativeError.message=message},enumerable:!0,configurable:!0}),Object.defineProperty(BaseError.prototype,"name",{get:function(){return this._nativeError.name},enumerable:!0,configurable:!0}),Object.defineProperty(BaseError.prototype,"stack",{get:function(){return this._nativeError.stack},set:function(value){this._nativeError.stack=value},enumerable:!0,configurable:!0}),BaseError.prototype.toString=function(){return this._nativeError.toString()},BaseError}(Error),__extends$3=(function(_super){function WrappedError(message,error){_super.call(this,message+" caused by: "+(error instanceof Error?error.message:error)),this.originalError=error}return __extends$4(WrappedError,_super),Object.defineProperty(WrappedError.prototype,"stack",{get:function(){return(this.originalError instanceof Error?this.originalError:this._nativeError).stack},enumerable:!0,configurable:!0}),WrappedError}(BaseError),this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)}),InvalidPipeArgumentError=function(_super){function InvalidPipeArgumentError(type,value){_super.call(this,"Invalid argument '"+value+"' for pipe '"+stringify(type)+"'")}return __extends$3(InvalidPipeArgumentError,_super),InvalidPipeArgumentError}(BaseError),ObservableStrategy=function(){function ObservableStrategy(){}return ObservableStrategy.prototype.createSubscription=function(async,updateLatestValue){return async.subscribe({next:updateLatestValue,error:function(e){throw e}})},ObservableStrategy.prototype.dispose=function(subscription){subscription.unsubscribe()},ObservableStrategy.prototype.onDestroy=function(subscription){subscription.unsubscribe()},ObservableStrategy}(),PromiseStrategy=function(){function PromiseStrategy(){}return PromiseStrategy.prototype.createSubscription=function(async,updateLatestValue){return async.then(updateLatestValue,function(e){throw e})},PromiseStrategy.prototype.dispose=function(subscription){},PromiseStrategy.prototype.onDestroy=function(subscription){},PromiseStrategy}(),_promiseStrategy=new PromiseStrategy,_observableStrategy=new ObservableStrategy,AsyncPipe=function(){function AsyncPipe(_ref){this._ref=_ref,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}return AsyncPipe.prototype.ngOnDestroy=function(){this._subscription&&this._dispose()},AsyncPipe.prototype.transform=function(obj){return this._obj?obj!==this._obj?(this._dispose(),this.transform(obj)):this._latestValue===this._latestReturnedValue?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,_angular_core.WrappedValue.wrap(this._latestValue)):(obj&&this._subscribe(obj),this._latestReturnedValue=this._latestValue,this._latestValue)},AsyncPipe.prototype._subscribe=function(obj){var _this=this;this._obj=obj,this._strategy=this._selectStrategy(obj),this._subscription=this._strategy.createSubscription(obj,function(value){return _this._updateLatestValue(obj,value)})},AsyncPipe.prototype._selectStrategy=function(obj){if(isPromise(obj))return _promiseStrategy;if(obj.subscribe)return _observableStrategy;throw new InvalidPipeArgumentError(AsyncPipe,obj)},AsyncPipe.prototype._dispose=function(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null},AsyncPipe.prototype._updateLatestValue=function(async,value){async===this._obj&&(this._latestValue=value,this._ref.markForCheck())},AsyncPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"async",pure:!1}]}],AsyncPipe.ctorParameters=[{type:_angular_core.ChangeDetectorRef}],AsyncPipe}();!function(NumberFormatStyle){NumberFormatStyle[NumberFormatStyle.Decimal=0]="Decimal",NumberFormatStyle[NumberFormatStyle.Percent=1]="Percent",NumberFormatStyle[NumberFormatStyle.Currency=2]="Currency"}(NumberFormatStyle||(NumberFormatStyle={}));var NumberFormatter=function(){function NumberFormatter(){}return NumberFormatter.format=function(num,locale,style,_a){var _b=void 0===_a?{}:_a,minimumIntegerDigits=_b.minimumIntegerDigits,minimumFractionDigits=_b.minimumFractionDigits,maximumFractionDigits=_b.maximumFractionDigits,currency=_b.currency,_c=_b.currencyAsSymbol,currencyAsSymbol=void 0!==_c&&_c,options={minimumIntegerDigits:minimumIntegerDigits,minimumFractionDigits:minimumFractionDigits,maximumFractionDigits:maximumFractionDigits,style:NumberFormatStyle[style].toLowerCase()};return style==NumberFormatStyle.Currency&&(options.currency=currency,options.currencyDisplay=currencyAsSymbol?"symbol":"code"),new Intl.NumberFormat(locale,options).format(num)},NumberFormatter}(),DATE_FORMATS_SPLIT=/((?:[^yMLdHhmsazZEwGjJ']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|J+|j+|m+|s+|a|z|Z|G+|w+))(.*)/,PATTERN_ALIASES={yMMMdjms:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",3),digitCondition("day",1),digitCondition("hour",1),digitCondition("minute",1),digitCondition("second",1)])),yMdjm:datePartGetterFactory(combine([digitCondition("year",1),digitCondition("month",1),digitCondition("day",1),digitCondition("hour",1),digitCondition("minute",1)])),yMMMMEEEEd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",4),nameCondition("weekday",4),digitCondition("day",1)])),yMMMMd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",4),digitCondition("day",1)])),yMMMd:datePartGetterFactory(combine([digitCondition("year",1),nameCondition("month",3),digitCondition("day",1)])),yMd:datePartGetterFactory(combine([digitCondition("year",1),digitCondition("month",1),digitCondition("day",1)])),jms:datePartGetterFactory(combine([digitCondition("hour",1),digitCondition("second",1),digitCondition("minute",1)])),jm:datePartGetterFactory(combine([digitCondition("hour",1),digitCondition("minute",1)]))},DATE_FORMATS={yyyy:datePartGetterFactory(digitCondition("year",4)),yy:datePartGetterFactory(digitCondition("year",2)),y:datePartGetterFactory(digitCondition("year",1)),MMMM:datePartGetterFactory(nameCondition("month",4)),MMM:datePartGetterFactory(nameCondition("month",3)),MM:datePartGetterFactory(digitCondition("month",2)),M:datePartGetterFactory(digitCondition("month",1)),LLLL:datePartGetterFactory(nameCondition("month",4)),L:datePartGetterFactory(nameCondition("month",1)),dd:datePartGetterFactory(digitCondition("day",2)),d:datePartGetterFactory(digitCondition("day",1)),HH:digitModifier(hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",2),!1)))),H:hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!1))),hh:digitModifier(hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",2),!0)))),h:hourExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!0))),jj:datePartGetterFactory(digitCondition("hour",2)),j:datePartGetterFactory(digitCondition("hour",1)),mm:digitModifier(datePartGetterFactory(digitCondition("minute",2))),m:datePartGetterFactory(digitCondition("minute",1)),ss:digitModifier(datePartGetterFactory(digitCondition("second",2))),s:datePartGetterFactory(digitCondition("second",1)),sss:datePartGetterFactory(digitCondition("second",3)),EEEE:datePartGetterFactory(nameCondition("weekday",4)),EEE:datePartGetterFactory(nameCondition("weekday",3)),EE:datePartGetterFactory(nameCondition("weekday",2)),E:datePartGetterFactory(nameCondition("weekday",1)),a:hourClockExtractor(datePartGetterFactory(hour12Modify(digitCondition("hour",1),!0))),Z:timeZoneGetter("short"),z:timeZoneGetter("long"),ww:datePartGetterFactory({}),w:datePartGetterFactory({}),G:datePartGetterFactory(nameCondition("era",1)),GG:datePartGetterFactory(nameCondition("era",2)),GGG:datePartGetterFactory(nameCondition("era",3)),GGGG:datePartGetterFactory(nameCondition("era",4))},DATE_FORMATTER_CACHE=new Map,DateFormatter=function(){function DateFormatter(){}return DateFormatter.format=function(date,locale,pattern){return dateFormatter(pattern,date,locale)},DateFormatter}(),DatePipe=function(){function DatePipe(_locale){this._locale=_locale}return DatePipe.prototype.transform=function(value,pattern){void 0===pattern&&(pattern="mediumDate");var date;if(isBlank$1(value))return null;if("string"==typeof value&&(value=value.trim()),isDate(value))date=value;else if(NumberWrapper.isNumeric(value))date=new Date(parseFloat(value));else if("string"==typeof value&&/^(\d{4}-\d{1,2}-\d{1,2})$/.test(value)){var _a=value.split("-").map(function(val){return parseInt(val,10)}),y=_a[0],m=_a[1],d=_a[2];date=new Date(y,m-1,d)}else date=new Date(value);if(!isDate(date))throw new InvalidPipeArgumentError(DatePipe,value);return DateFormatter.format(date,this._locale,DatePipe._ALIASES[pattern]||pattern)},DatePipe._ALIASES={medium:"yMMMdjms",short:"yMdjm",fullDate:"yMMMMEEEEd",longDate:"yMMMMd",mediumDate:"yMMMd",shortDate:"yMd",mediumTime:"jms",shortTime:"jm"},DatePipe.decorators=[{type:_angular_core.Pipe, | ||
args:[{name:"date",pure:!0}]}],DatePipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],DatePipe}(),_INTERPOLATION_REGEXP=/#/g,I18nPluralPipe=function(){function I18nPluralPipe(_localization){this._localization=_localization}return I18nPluralPipe.prototype.transform=function(value,pluralMap){if(isBlank(value))return"";if("object"!=typeof pluralMap||null===pluralMap)throw new InvalidPipeArgumentError(I18nPluralPipe,pluralMap);var key=getPluralCategory(value,Object.keys(pluralMap),this._localization);return pluralMap[key].replace(_INTERPOLATION_REGEXP,value.toString())},I18nPluralPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"i18nPlural",pure:!0}]}],I18nPluralPipe.ctorParameters=[{type:NgLocalization}],I18nPluralPipe}(),I18nSelectPipe=function(){function I18nSelectPipe(){}return I18nSelectPipe.prototype.transform=function(value,mapping){if(null==value)return"";if("object"!=typeof mapping||"string"!=typeof value)throw new InvalidPipeArgumentError(I18nSelectPipe,mapping);return mapping.hasOwnProperty(value)?mapping[value]:mapping.hasOwnProperty("other")?mapping.other:""},I18nSelectPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"i18nSelect",pure:!0}]}],I18nSelectPipe.ctorParameters=[],I18nSelectPipe}(),JsonPipe=function(){function JsonPipe(){}return JsonPipe.prototype.transform=function(value){return JSON.stringify(value,null,2)},JsonPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"json",pure:!1}]}],JsonPipe.ctorParameters=[],JsonPipe}(),LowerCasePipe=function(){function LowerCasePipe(){}return LowerCasePipe.prototype.transform=function(value){if(isBlank(value))return value;if("string"!=typeof value)throw new InvalidPipeArgumentError(LowerCasePipe,value);return value.toLowerCase()},LowerCasePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"lowercase"}]}],LowerCasePipe.ctorParameters=[],LowerCasePipe}(),_NUMBER_FORMAT_REGEXP=/^(\d+)?\.((\d+)(-(\d+))?)?$/,DecimalPipe=function(){function DecimalPipe(_locale){this._locale=_locale}return DecimalPipe.prototype.transform=function(value,digits){return void 0===digits&&(digits=null),formatNumber(DecimalPipe,this._locale,value,NumberFormatStyle.Decimal,digits)},DecimalPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"number"}]}],DecimalPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],DecimalPipe}(),PercentPipe=function(){function PercentPipe(_locale){this._locale=_locale}return PercentPipe.prototype.transform=function(value,digits){return void 0===digits&&(digits=null),formatNumber(PercentPipe,this._locale,value,NumberFormatStyle.Percent,digits)},PercentPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"percent"}]}],PercentPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],PercentPipe}(),CurrencyPipe=function(){function CurrencyPipe(_locale){this._locale=_locale}return CurrencyPipe.prototype.transform=function(value,currencyCode,symbolDisplay,digits){return void 0===currencyCode&&(currencyCode="USD"),void 0===symbolDisplay&&(symbolDisplay=!1),void 0===digits&&(digits=null),formatNumber(CurrencyPipe,this._locale,value,NumberFormatStyle.Currency,digits,currencyCode,symbolDisplay)},CurrencyPipe.decorators=[{type:_angular_core.Pipe,args:[{name:"currency"}]}],CurrencyPipe.ctorParameters=[{type:void 0,decorators:[{type:_angular_core.Inject,args:[_angular_core.LOCALE_ID]}]}],CurrencyPipe}(),SlicePipe=function(){function SlicePipe(){}return SlicePipe.prototype.transform=function(value,start,end){if(isBlank(value))return value;if(!this.supports(value))throw new InvalidPipeArgumentError(SlicePipe,value);return value.slice(start,end)},SlicePipe.prototype.supports=function(obj){return"string"==typeof obj||Array.isArray(obj)},SlicePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"slice",pure:!1}]}],SlicePipe.ctorParameters=[],SlicePipe}(),UpperCasePipe=function(){function UpperCasePipe(){}return UpperCasePipe.prototype.transform=function(value){if(isBlank(value))return value;if("string"!=typeof value)throw new InvalidPipeArgumentError(UpperCasePipe,value);return value.toUpperCase()},UpperCasePipe.decorators=[{type:_angular_core.Pipe,args:[{name:"uppercase"}]}],UpperCasePipe.ctorParameters=[],UpperCasePipe}(),COMMON_PIPES=[AsyncPipe,UpperCasePipe,LowerCasePipe,JsonPipe,SlicePipe,DecimalPipe,PercentPipe,CurrencyPipe,DatePipe,I18nPluralPipe,I18nSelectPipe],CommonModule=function(){function CommonModule(){}return CommonModule.decorators=[{type:_angular_core.NgModule,args:[{declarations:[COMMON_DIRECTIVES,COMMON_PIPES],exports:[COMMON_DIRECTIVES,COMMON_PIPES],providers:[{provide:NgLocalization,useClass:NgLocaleLocalization}]}]}],CommonModule.ctorParameters=[],CommonModule}();exports.NgLocalization=NgLocalization,exports.CommonModule=CommonModule,exports.NgClass=NgClass,exports.NgFor=NgFor,exports.NgIf=NgIf,exports.NgPlural=NgPlural,exports.NgPluralCase=NgPluralCase,exports.NgStyle=NgStyle,exports.NgSwitch=NgSwitch,exports.NgSwitchCase=NgSwitchCase,exports.NgSwitchDefault=NgSwitchDefault,exports.NgTemplateOutlet=NgTemplateOutlet,exports.AsyncPipe=AsyncPipe,exports.DatePipe=DatePipe,exports.I18nPluralPipe=I18nPluralPipe,exports.I18nSelectPipe=I18nSelectPipe,exports.JsonPipe=JsonPipe,exports.LowerCasePipe=LowerCasePipe,exports.CurrencyPipe=CurrencyPipe,exports.DecimalPipe=DecimalPipe,exports.PercentPipe=PercentPipe,exports.SlicePipe=SlicePipe,exports.UpperCasePipe=UpperCasePipe,exports.PlatformLocation=PlatformLocation,exports.LocationStrategy=LocationStrategy,exports.APP_BASE_HREF=APP_BASE_HREF,exports.HashLocationStrategy=HashLocationStrategy,exports.PathLocationStrategy=PathLocationStrategy,exports.Location=Location}); |
{ | ||
"name": "@angular/common", | ||
"version": "2.2.0-rc.0", | ||
"version": "2.2.0", | ||
"description": "Angular - commonly needed directives and services", | ||
@@ -11,3 +11,3 @@ "main": "bundles/common.umd.js", | ||
"peerDependencies": { | ||
"@angular/core": "2.2.0-rc.0" | ||
"@angular/core": "2.2.0" | ||
}, | ||
@@ -14,0 +14,0 @@ "repository": { |
@@ -10,3 +10,3 @@ /** | ||
import { isListLikeIterable } from '../facade/collection'; | ||
import { isPresent } from '../facade/lang'; | ||
import { isPresent, stringify } from '../facade/lang'; | ||
/** | ||
@@ -104,3 +104,10 @@ * @ngModule CommonModule | ||
var _this = this; | ||
changes.forEachAddedItem(function (record) { return _this._toggleClass(record.item, true); }); | ||
changes.forEachAddedItem(function (record) { | ||
if (typeof record.item === 'string') { | ||
_this._toggleClass(record.item, true); | ||
} | ||
else { | ||
throw new Error("NgClass can only toggle CSS classes expressed as strings, got " + stringify(record.item)); | ||
} | ||
}); | ||
changes.forEachRemovedItem(function (record) { return _this._toggleClass(record.item, false); }); | ||
@@ -107,0 +114,0 @@ }; |
@@ -26,3 +26,3 @@ /** | ||
* The styles are updated according to the value of the expression evaluation: | ||
* - keys are style names with an option `.<unit>` suffix (ie 'top.px', 'font-style.em'), | ||
* - keys are style names with an optional `.<unit>` suffix (ie 'top.px', 'font-style.em'), | ||
* - values are the values assigned to those properties (expressed in the given unit). | ||
@@ -29,0 +29,0 @@ * |
@@ -26,3 +26,3 @@ /** | ||
* The styles are updated according to the value of the expression evaluation: | ||
* - keys are style names with an option `.<unit>` suffix (ie 'top.px', 'font-style.em'), | ||
* - keys are style names with an optional `.<unit>` suffix (ie 'top.px', 'font-style.em'), | ||
* - values are the values assigned to those properties (expressed in the given unit). | ||
@@ -29,0 +29,0 @@ * |
@@ -8,9 +8,11 @@ /** | ||
*/ | ||
import { TemplateRef, ViewContainerRef } from '@angular/core'; | ||
import { DoCheck, TemplateRef, ViewContainerRef } from '@angular/core'; | ||
export declare class SwitchView { | ||
private _viewContainerRef; | ||
private _templateRef; | ||
private _created; | ||
constructor(_viewContainerRef: ViewContainerRef, _templateRef: TemplateRef<Object>); | ||
create(): void; | ||
destroy(): void; | ||
enforceState(created: boolean): void; | ||
} | ||
@@ -59,10 +61,10 @@ /** | ||
export declare class NgSwitch { | ||
private _switchValue; | ||
private _useDefault; | ||
private _valueViews; | ||
private _activeViews; | ||
private _defaultViews; | ||
private _defaultUsed; | ||
private _caseCount; | ||
private _lastCaseCheckIndex; | ||
private _lastCasesMatched; | ||
private _ngSwitch; | ||
ngSwitch: any; | ||
private _emptyAllActiveViews(); | ||
private _activateViews(views?); | ||
private _deregisterView(value, view); | ||
private _updateDefaultCases(useDefault); | ||
} | ||
@@ -93,8 +95,8 @@ /** | ||
*/ | ||
export declare class NgSwitchCase { | ||
private _value; | ||
export declare class NgSwitchCase implements DoCheck { | ||
private ngSwitch; | ||
private _view; | ||
private _switch; | ||
ngSwitchCase: any; | ||
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<Object>, ngSwitch: NgSwitch); | ||
ngSwitchCase: any; | ||
ngDoCheck(): void; | ||
} | ||
@@ -125,3 +127,3 @@ /** | ||
export declare class NgSwitchDefault { | ||
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<Object>, sswitch: NgSwitch); | ||
constructor(viewContainer: ViewContainerRef, templateRef: TemplateRef<Object>, ngSwitch: NgSwitch); | ||
} |
@@ -9,4 +9,2 @@ /** | ||
import { Directive, Host, Input, TemplateRef, ViewContainerRef } from '@angular/core'; | ||
import { ListWrapper } from '../facade/collection'; | ||
var _CASE_DEFAULT = {}; | ||
export var SwitchView = (function () { | ||
@@ -16,5 +14,20 @@ function SwitchView(_viewContainerRef, _templateRef) { | ||
this._templateRef = _templateRef; | ||
this._created = false; | ||
} | ||
SwitchView.prototype.create = function () { this._viewContainerRef.createEmbeddedView(this._templateRef); }; | ||
SwitchView.prototype.destroy = function () { this._viewContainerRef.clear(); }; | ||
SwitchView.prototype.create = function () { | ||
this._created = true; | ||
this._viewContainerRef.createEmbeddedView(this._templateRef); | ||
}; | ||
SwitchView.prototype.destroy = function () { | ||
this._created = false; | ||
this._viewContainerRef.clear(); | ||
}; | ||
SwitchView.prototype.enforceState = function (created) { | ||
if (created && !this._created) { | ||
this.create(); | ||
} | ||
else if (!created && this._created) { | ||
this.destroy(); | ||
} | ||
}; | ||
return SwitchView; | ||
@@ -65,25 +78,13 @@ }()); | ||
function NgSwitch() { | ||
this._useDefault = false; | ||
this._valueViews = new Map(); | ||
this._activeViews = []; | ||
this._defaultUsed = false; | ||
this._caseCount = 0; | ||
this._lastCaseCheckIndex = 0; | ||
this._lastCasesMatched = false; | ||
} | ||
Object.defineProperty(NgSwitch.prototype, "ngSwitch", { | ||
set: function (value) { | ||
// Set of views to display for this value | ||
var views = this._valueViews.get(value); | ||
if (views) { | ||
this._useDefault = false; | ||
set: function (newValue) { | ||
this._ngSwitch = newValue; | ||
if (this._caseCount === 0) { | ||
this._updateDefaultCases(true); | ||
} | ||
else { | ||
// No view to display for the current value -> default case | ||
// Nothing to do if the default case was already active | ||
if (this._useDefault) { | ||
return; | ||
} | ||
this._useDefault = true; | ||
views = this._valueViews.get(_CASE_DEFAULT); | ||
} | ||
this._emptyAllActiveViews(); | ||
this._activateViews(views); | ||
this._switchValue = value; | ||
}, | ||
@@ -94,59 +95,31 @@ enumerable: true, | ||
/** @internal */ | ||
NgSwitch.prototype._onCaseValueChanged = function (oldCase, newCase, view) { | ||
this._deregisterView(oldCase, view); | ||
this._registerView(newCase, view); | ||
if (oldCase === this._switchValue) { | ||
view.destroy(); | ||
ListWrapper.remove(this._activeViews, view); | ||
NgSwitch.prototype._addCase = function () { return this._caseCount++; }; | ||
/** @internal */ | ||
NgSwitch.prototype._addDefault = function (view) { | ||
if (!this._defaultViews) { | ||
this._defaultViews = []; | ||
} | ||
else if (newCase === this._switchValue) { | ||
if (this._useDefault) { | ||
this._useDefault = false; | ||
this._emptyAllActiveViews(); | ||
} | ||
view.create(); | ||
this._activeViews.push(view); | ||
} | ||
// Switch to default when there is no more active ViewContainers | ||
if (this._activeViews.length === 0 && !this._useDefault) { | ||
this._useDefault = true; | ||
this._activateViews(this._valueViews.get(_CASE_DEFAULT)); | ||
} | ||
this._defaultViews.push(view); | ||
}; | ||
NgSwitch.prototype._emptyAllActiveViews = function () { | ||
var activeContainers = this._activeViews; | ||
for (var i = 0; i < activeContainers.length; i++) { | ||
activeContainers[i].destroy(); | ||
/** @internal */ | ||
NgSwitch.prototype._matchCase = function (value) { | ||
var matched = value == this._ngSwitch; | ||
this._lastCasesMatched = this._lastCasesMatched || matched; | ||
this._lastCaseCheckIndex++; | ||
if (this._lastCaseCheckIndex === this._caseCount) { | ||
this._updateDefaultCases(!this._lastCasesMatched); | ||
this._lastCaseCheckIndex = 0; | ||
this._lastCasesMatched = false; | ||
} | ||
this._activeViews = []; | ||
return matched; | ||
}; | ||
NgSwitch.prototype._activateViews = function (views) { | ||
if (views) { | ||
for (var i = 0; i < views.length; i++) { | ||
views[i].create(); | ||
NgSwitch.prototype._updateDefaultCases = function (useDefault) { | ||
if (this._defaultViews && useDefault !== this._defaultUsed) { | ||
this._defaultUsed = useDefault; | ||
for (var i = 0; i < this._defaultViews.length; i++) { | ||
var defaultView = this._defaultViews[i]; | ||
defaultView.enforceState(useDefault); | ||
} | ||
this._activeViews = views; | ||
} | ||
}; | ||
/** @internal */ | ||
NgSwitch.prototype._registerView = function (value, view) { | ||
var views = this._valueViews.get(value); | ||
if (!views) { | ||
views = []; | ||
this._valueViews.set(value, views); | ||
} | ||
views.push(view); | ||
}; | ||
NgSwitch.prototype._deregisterView = function (value, view) { | ||
// `_CASE_DEFAULT` is used a marker for non-registered cases | ||
if (value === _CASE_DEFAULT) | ||
return; | ||
var views = this._valueViews.get(value); | ||
if (views.length == 1) { | ||
this._valueViews.delete(value); | ||
} | ||
else { | ||
ListWrapper.remove(views, view); | ||
} | ||
}; | ||
NgSwitch.decorators = [ | ||
@@ -188,15 +161,7 @@ { type: Directive, args: [{ selector: '[ngSwitch]' },] }, | ||
function NgSwitchCase(viewContainer, templateRef, ngSwitch) { | ||
// `_CASE_DEFAULT` is used as a marker for a not yet initialized value | ||
this._value = _CASE_DEFAULT; | ||
this._switch = ngSwitch; | ||
this.ngSwitch = ngSwitch; | ||
ngSwitch._addCase(); | ||
this._view = new SwitchView(viewContainer, templateRef); | ||
} | ||
Object.defineProperty(NgSwitchCase.prototype, "ngSwitchCase", { | ||
set: function (value) { | ||
this._switch._onCaseValueChanged(this._value, value, this._view); | ||
this._value = value; | ||
}, | ||
enumerable: true, | ||
configurable: true | ||
}); | ||
NgSwitchCase.prototype.ngDoCheck = function () { this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase)); }; | ||
NgSwitchCase.decorators = [ | ||
@@ -240,4 +205,4 @@ { type: Directive, args: [{ selector: '[ngSwitchCase]' },] }, | ||
export var NgSwitchDefault = (function () { | ||
function NgSwitchDefault(viewContainer, templateRef, sswitch) { | ||
sswitch._registerView(_CASE_DEFAULT, new SwitchView(viewContainer, templateRef)); | ||
function NgSwitchDefault(viewContainer, templateRef, ngSwitch) { | ||
ngSwitch._addDefault(new SwitchView(viewContainer, templateRef)); | ||
} | ||
@@ -244,0 +209,0 @@ NgSwitchDefault.decorators = [ |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":1,"metadata":{"NgSwitch":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitch]"}]}],"members":{"ngSwitch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"_onCaseValueChanged":[{"__symbolic":"method"}],"_emptyAllActiveViews":[{"__symbolic":"method"}],"_activateViews":[{"__symbolic":"method"}],"_registerView":[{"__symbolic":"method"}],"_deregisterView":[{"__symbolic":"method"}]}},"NgSwitchCase":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitchCase]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Host"}}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","arguments":[{"__symbolic":"reference","name":"Object"}]},{"__symbolic":"reference","name":"NgSwitch"}]}],"ngSwitchCase":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}]}},"NgSwitchDefault":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitchDefault]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Host"}}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","arguments":[{"__symbolic":"reference","name":"Object"}]},{"__symbolic":"reference","name":"NgSwitch"}]}]}}}} | ||
{"__symbolic":"module","version":1,"metadata":{"NgSwitch":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitch]"}]}],"members":{"ngSwitch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"_addCase":[{"__symbolic":"method"}],"_addDefault":[{"__symbolic":"method"}],"_matchCase":[{"__symbolic":"method"}],"_updateDefaultCases":[{"__symbolic":"method"}]}},"NgSwitchCase":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitchCase]"}]}],"members":{"ngSwitchCase":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Host"}}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","arguments":[{"__symbolic":"reference","name":"Object"}]},{"__symbolic":"reference","name":"NgSwitch"}]}],"ngDoCheck":[{"__symbolic":"method"}]}},"NgSwitchDefault":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[ngSwitchDefault]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Host"}}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","arguments":[{"__symbolic":"reference","name":"Object"}]},{"__symbolic":"reference","name":"NgSwitch"}]}]}}}} |
@@ -1,8 +0,1 @@ | ||
export declare class MapWrapper { | ||
static createFromStringMap<T>(stringMap: { | ||
[key: string]: T; | ||
}): Map<string, T>; | ||
static keys<K>(m: Map<K, any>): K[]; | ||
static values<V>(m: Map<any, V>): V[]; | ||
} | ||
/** | ||
@@ -36,7 +29,6 @@ * Wraps Javascript Objects | ||
static equals(a: any[], b: any[]): boolean; | ||
static maximum<T>(list: T[], predicate: (t: T) => number): T; | ||
static flatten<T>(list: Array<T | T[]>): T[]; | ||
} | ||
export declare function isListLikeIterable(obj: any): boolean; | ||
export declare function areIterablesEqual(a: any, b: any, comparator: Function): boolean; | ||
export declare function iterateListLike(obj: any, fn: Function): void; | ||
export declare function areIterablesEqual(a: any, b: any, comparator: (a: any, b: any) => boolean): boolean; | ||
export declare function iterateListLike(obj: any, fn: (p: any) => any): void; |
@@ -8,38 +8,3 @@ /** | ||
*/ | ||
import { getSymbolIterator, isJsObject, isPresent } from './lang'; | ||
// Safari doesn't implement MapIterator.next(), which is used is Traceur's polyfill of Array.from | ||
// TODO(mlaval): remove the work around once we have a working polyfill of Array.from | ||
var _arrayFromMap = (function () { | ||
try { | ||
if ((new Map()).values().next) { | ||
return function createArrayFromMap(m, getValues) { | ||
return getValues ? Array.from(m.values()) : Array.from(m.keys()); | ||
}; | ||
} | ||
} | ||
catch (e) { | ||
} | ||
return function createArrayFromMapWithForeach(m, getValues) { | ||
var res = new Array(m.size), i = 0; | ||
m.forEach(function (v, k) { | ||
res[i] = getValues ? v : k; | ||
i++; | ||
}); | ||
return res; | ||
}; | ||
})(); | ||
export var MapWrapper = (function () { | ||
function MapWrapper() { | ||
} | ||
MapWrapper.createFromStringMap = function (stringMap) { | ||
var result = new Map(); | ||
for (var prop in stringMap) { | ||
result.set(prop, stringMap[prop]); | ||
} | ||
return result; | ||
}; | ||
MapWrapper.keys = function (m) { return _arrayFromMap(m, false); }; | ||
MapWrapper.values = function (m) { return _arrayFromMap(m, true); }; | ||
return MapWrapper; | ||
}()); | ||
import { getSymbolIterator, isJsObject } from './lang'; | ||
/** | ||
@@ -85,3 +50,5 @@ * Wraps Javascript Objects | ||
var index = list.indexOf(items[i]); | ||
list.splice(index, 1); | ||
if (index > -1) { | ||
list.splice(index, 1); | ||
} | ||
} | ||
@@ -106,42 +73,10 @@ }; | ||
}; | ||
ListWrapper.maximum = function (list, predicate) { | ||
if (list.length == 0) { | ||
return null; | ||
} | ||
var solution = null; | ||
var maxValue = -Infinity; | ||
for (var index = 0; index < list.length; index++) { | ||
var candidate = list[index]; | ||
if (candidate == null) { | ||
continue; | ||
} | ||
var candidateValue = predicate(candidate); | ||
if (candidateValue > maxValue) { | ||
solution = candidate; | ||
maxValue = candidateValue; | ||
} | ||
} | ||
return solution; | ||
}; | ||
ListWrapper.flatten = function (list) { | ||
var target = []; | ||
_flattenArray(list, target); | ||
return target; | ||
return list.reduce(function (flat, item) { | ||
var flatItem = Array.isArray(item) ? ListWrapper.flatten(item) : item; | ||
return flat.concat(flatItem); | ||
}, []); | ||
}; | ||
return ListWrapper; | ||
}()); | ||
function _flattenArray(source, target) { | ||
if (isPresent(source)) { | ||
for (var i = 0; i < source.length; i++) { | ||
var item = source[i]; | ||
if (Array.isArray(item)) { | ||
_flattenArray(item, target); | ||
} | ||
else { | ||
target.push(item); | ||
} | ||
} | ||
} | ||
return target; | ||
} | ||
export function isListLikeIterable(obj) { | ||
@@ -148,0 +83,0 @@ if (!isJsObject(obj)) |
@@ -41,3 +41,2 @@ | ||
static parseIntAutoRadix(text: string): number; | ||
static parseInt(text: string, radix: number): number; | ||
static isNumeric(value: any): boolean; | ||
@@ -44,0 +43,0 @@ } |
@@ -54,3 +54,3 @@ /** | ||
} | ||
if (token === undefined || token === null) { | ||
if (token == null) { | ||
return '' + token; | ||
@@ -78,21 +78,2 @@ } | ||
}; | ||
NumberWrapper.parseInt = function (text, radix) { | ||
if (radix == 10) { | ||
if (/^(\-|\+)?[0-9]+$/.test(text)) { | ||
return parseInt(text, radix); | ||
} | ||
} | ||
else if (radix == 16) { | ||
if (/^(\-|\+)?[0-9ABCDEFabcdef]+$/.test(text)) { | ||
return parseInt(text, radix); | ||
} | ||
} | ||
else { | ||
var result = parseInt(text, radix); | ||
if (!isNaN(result)) { | ||
return result; | ||
} | ||
} | ||
throw new Error('Invalid integer literal when parsing ' + text + ' in base ' + radix); | ||
}; | ||
NumberWrapper.isNumeric = function (value) { return !isNaN(value - parseFloat(value)); }; | ||
@@ -118,8 +99,8 @@ return NumberWrapper; | ||
while (parts.length > 1) { | ||
var name = parts.shift(); | ||
if (obj.hasOwnProperty(name) && isPresent(obj[name])) { | ||
obj = obj[name]; | ||
var name_1 = parts.shift(); | ||
if (obj.hasOwnProperty(name_1) && obj[name_1] != null) { | ||
obj = obj[name_1]; | ||
} | ||
else { | ||
obj = obj[name] = {}; | ||
obj = obj[name_1] = {}; | ||
} | ||
@@ -126,0 +107,0 @@ } |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":1,"metadata":{"getTypeNameForDebugging":{"__symbolic":"function","parameters":["type"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"index","expression":{"__symbolic":"reference","name":"type"},"index":"name"},"right":{"__symbolic":"error","message":"Expression form not supported","line":60,"character":25}}},"isPresent":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"!=","left":{"__symbolic":"reference","name":"obj"},"right":null}},"isBlank":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"==","left":{"__symbolic":"reference","name":"obj"},"right":null}},"isStrictStringMap":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":80,"character":9},"right":"object"},"right":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"reference","name":"obj"},"right":null}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"getPrototypeOf"},"arguments":[{"__symbolic":"reference","name":"obj"}]},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"getPrototypeOf"},"arguments":[{}]}}}},"isDate":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"instanceof","left":{"__symbolic":"reference","name":"obj"},"right":{"__symbolic":"reference","name":"Date"}},"right":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"valueOf"}}]}}}},"looseIdentical":{"__symbolic":"function","parameters":["a","b"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"reference","name":"a"},"right":{"__symbolic":"reference","name":"b"}},"right":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":140,"character":20},"right":"number"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":140,"character":45},"right":"number"}},"right":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"reference","name":"a"}]}},"right":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"reference","name":"b"}]}}}},"isJsObject":{"__symbolic":"function","parameters":["o"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"reference","name":"o"},"right":null},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":144,"character":24},"right":"function"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":144,"character":51},"right":"object"}}}},"isPrimitive":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isJsObject"},"arguments":[{"__symbolic":"reference","name":"obj"}]}}},"escapeRegExp":{"__symbolic":"function","parameters":["s"],"value":{"__symbolic":"error","message":"Expression form not supported","line":199,"character":19}}}} | ||
{"__symbolic":"module","version":1,"metadata":{"getTypeNameForDebugging":{"__symbolic":"function","parameters":["type"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"index","expression":{"__symbolic":"reference","name":"type"},"index":"name"},"right":{"__symbolic":"error","message":"Expression form not supported","line":60,"character":25}}},"isPresent":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"!=","left":{"__symbolic":"reference","name":"obj"},"right":null}},"isBlank":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"==","left":{"__symbolic":"reference","name":"obj"},"right":null}},"isStrictStringMap":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":80,"character":9},"right":"object"},"right":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"reference","name":"obj"},"right":null}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"getPrototypeOf"},"arguments":[{"__symbolic":"reference","name":"obj"}]},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"getPrototypeOf"},"arguments":[{}]}}}},"isDate":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"instanceof","left":{"__symbolic":"reference","name":"obj"},"right":{"__symbolic":"reference","name":"Date"}},"right":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"valueOf"}}]}}}},"looseIdentical":{"__symbolic":"function","parameters":["a","b"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"reference","name":"a"},"right":{"__symbolic":"reference","name":"b"}},"right":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":123,"character":20},"right":"number"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":123,"character":45},"right":"number"}},"right":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"reference","name":"a"}]}},"right":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isNaN"},"arguments":[{"__symbolic":"reference","name":"b"}]}}}},"isJsObject":{"__symbolic":"function","parameters":["o"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"reference","name":"o"},"right":null},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":127,"character":24},"right":"function"},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":127,"character":51},"right":"object"}}}},"isPrimitive":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"isJsObject"},"arguments":[{"__symbolic":"reference","name":"obj"}]}}},"escapeRegExp":{"__symbolic":"function","parameters":["s"],"value":{"__symbolic":"error","message":"Expression form not supported","line":182,"character":19}}}} |
@@ -51,2 +51,5 @@ /** | ||
* | ||
* When the expression is a ISO string without time (e.g. 2016-09-19) the time zone offset is not | ||
* applied and the formatted text will have the same day, month and year of the expression. | ||
* | ||
* WARNINGS: | ||
@@ -80,3 +83,2 @@ * - this pipe is marked as pure hence it will not be re-evaluated when the input is mutated. | ||
transform(value: any, pattern?: string): string; | ||
private supports(obj); | ||
} |
@@ -10,3 +10,3 @@ /** | ||
import { DateFormatter } from '../facade/intl'; | ||
import { NumberWrapper, isBlank, isDate } from '../facade/lang'; | ||
import { NumberWrapper, isDate } from '../facade/lang'; | ||
import { InvalidPipeArgumentError } from './invalid_pipe_argument_error'; | ||
@@ -55,2 +55,5 @@ /** | ||
* | ||
* When the expression is a ISO string without time (e.g. 2016-09-19) the time zone offset is not | ||
* applied and the formatted text will have the same day, month and year of the expression. | ||
* | ||
* WARNINGS: | ||
@@ -86,16 +89,35 @@ * - this pipe is marked as pure hence it will not be re-evaluated when the input is mutated. | ||
if (pattern === void 0) { pattern = 'mediumDate'; } | ||
var date; | ||
if (isBlank(value)) | ||
return null; | ||
if (!this.supports(value)) { | ||
if (typeof value === 'string') { | ||
value = value.trim(); | ||
} | ||
if (isDate(value)) { | ||
date = value; | ||
} | ||
else if (NumberWrapper.isNumeric(value)) { | ||
date = new Date(parseFloat(value)); | ||
} | ||
else if (typeof value === 'string' && /^(\d{4}-\d{1,2}-\d{1,2})$/.test(value)) { | ||
/** | ||
* For ISO Strings without time the day, month and year must be extracted from the ISO String | ||
* before Date creation to avoid time offset and errors in the new Date. | ||
* If we only replace '-' with ',' in the ISO String ("2015,01,01"), and try to create a new | ||
* date, some browsers (e.g. IE 9) will throw an invalid Date error | ||
* If we leave the '-' ("2015-01-01") and try to create a new Date("2015-01-01") the timeoffset | ||
* is applied | ||
* Note: ISO months are 0 for January, 1 for February, ... | ||
*/ | ||
var _a = value.split('-').map(function (val) { return parseInt(val, 10); }), y = _a[0], m = _a[1], d = _a[2]; | ||
date = new Date(y, m - 1, d); | ||
} | ||
else { | ||
date = new Date(value); | ||
} | ||
if (!isDate(date)) { | ||
throw new InvalidPipeArgumentError(DatePipe, value); | ||
} | ||
if (NumberWrapper.isNumeric(value)) { | ||
value = parseFloat(value); | ||
} | ||
return DateFormatter.format(new Date(value), this._locale, DatePipe._ALIASES[pattern] || pattern); | ||
return DateFormatter.format(date, this._locale, DatePipe._ALIASES[pattern] || pattern); | ||
}; | ||
DatePipe.prototype.supports = function (obj) { | ||
return isDate(obj) || NumberWrapper.isNumeric(obj) || | ||
(typeof obj === 'string' && isDate(new Date(obj))); | ||
}; | ||
/** @internal */ | ||
@@ -121,2 +143,5 @@ DatePipe._ALIASES = { | ||
}()); | ||
function isBlank(obj) { | ||
return obj == null || obj === ''; | ||
} | ||
//# sourceMappingURL=date_pipe.js.map |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":1,"metadata":{"DatePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe"},"arguments":[{"name":"date","pure":true}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"LOCALE_ID"}]}]],"parameters":[{"__symbolic":"reference","name":"string"}]}],"transform":[{"__symbolic":"method"}],"supports":[{"__symbolic":"method"}]},"statics":{"_ALIASES":{"medium":"yMMMdjms","short":"yMdjm","fullDate":"yMMMMEEEEd","longDate":"yMMMMd","mediumDate":"yMMMd","shortDate":"yMd","mediumTime":"jms","shortTime":"jm"}}}}} | ||
{"__symbolic":"module","version":1,"metadata":{"DatePipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe"},"arguments":[{"name":"date","pure":true}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"LOCALE_ID"}]}]],"parameters":[{"__symbolic":"reference","name":"string"}]}],"transform":[{"__symbolic":"method"}]},"statics":{"_ALIASES":{"medium":"yMMMdjms","short":"yMdjm","fullDate":"yMMMMEEEEd","longDate":"yMMMMd","mediumDate":"yMMMd","shortDate":"yMd","mediumTime":"jms","shortTime":"jm"}}}}} |
@@ -15,5 +15,6 @@ /** | ||
* | ||
* Where: | ||
* - `mapping`: is an object that indicates the text that should be displayed | ||
* Where `mapping` is an object that indicates the text that should be displayed | ||
* for different values of the provided `expression`. | ||
* If none of the keys of the mapping match the value of the `expression`, then the content | ||
* of the `other` key is returned when present, otherwise an empty string is returned. | ||
* | ||
@@ -20,0 +21,0 @@ * ## Example |
@@ -9,3 +9,2 @@ /** | ||
import { Pipe } from '@angular/core'; | ||
import { isBlank } from '../facade/lang'; | ||
import { InvalidPipeArgumentError } from './invalid_pipe_argument_error'; | ||
@@ -18,5 +17,6 @@ /** | ||
* | ||
* Where: | ||
* - `mapping`: is an object that indicates the text that should be displayed | ||
* Where `mapping` is an object that indicates the text that should be displayed | ||
* for different values of the provided `expression`. | ||
* If none of the keys of the mapping match the value of the `expression`, then the content | ||
* of the `other` key is returned when present, otherwise an empty string is returned. | ||
* | ||
@@ -33,8 +33,14 @@ * ## Example | ||
I18nSelectPipe.prototype.transform = function (value, mapping) { | ||
if (isBlank(value)) | ||
if (value == null) | ||
return ''; | ||
if (typeof mapping !== 'object' || mapping === null) { | ||
if (typeof mapping !== 'object' || typeof value !== 'string') { | ||
throw new InvalidPipeArgumentError(I18nSelectPipe, mapping); | ||
} | ||
return mapping[value] || ''; | ||
if (mapping.hasOwnProperty(value)) { | ||
return mapping[value]; | ||
} | ||
if (mapping.hasOwnProperty('other')) { | ||
return mapping['other']; | ||
} | ||
return ''; | ||
}; | ||
@@ -41,0 +47,0 @@ I18nSelectPipe.decorators = [ |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
2
612888
8406