@angular/router 5.2.7 → 5.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v5.2.7
2
+ * @license Angular v5.2.11
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -10,7 +10,7 @@
10
10
  }(this, (function (exports,_angular_common,_angular_common_testing,_angular_core,_angular_router) { 'use strict';
11
11
 
12
12
  /**
13
- * @license Angular v5.2.7
13
+ * @license Angular v5.2.11
14
14
  * (c) 2010-2018 Google, Inc. https://angular.io/
15
15
  * License: MIT
16
16
  */
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @license Angular v5.2.7
2
+ * @license Angular v5.2.11
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
  !function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/common"),require("@angular/common/testing"),require("@angular/core"),require("@angular/router")):"function"==typeof define&&define.amd?define("@angular/router/testing",["exports","@angular/common","@angular/common/testing","@angular/core","@angular/router"],factory):factory((global.ng=global.ng||{},global.ng.router=global.ng.router||{},global.ng.router.testing={}),global.ng.common,global.ng.common.testing,global.ng.core,global.ng.router)}(this,function(exports,_angular_common,_angular_common_testing,_angular_core,_angular_router){"use strict";function isUrlHandlingStrategy(opts){return"shouldProcessUrl"in opts}function setupTestingRouter(urlSerializer,contexts,location,loader,compiler,injector,routes,opts,urlHandlingStrategy){var router=new _angular_router.Router(null,urlSerializer,contexts,location,injector,loader,compiler,_angular_router.ɵflatten(routes));return opts&&(isUrlHandlingStrategy(opts)?router.urlHandlingStrategy=opts:opts.paramsInheritanceStrategy&&(router.paramsInheritanceStrategy=opts.paramsInheritanceStrategy)),urlHandlingStrategy&&(router.urlHandlingStrategy=urlHandlingStrategy),router}/**
7
- * @license Angular v5.2.7
7
+ * @license Angular v5.2.11
8
8
  * (c) 2010-2018 Google, Inc. https://angular.io/
9
9
  * License: MIT
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["router-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","ng","router","testing","common","core","this","_angular_common","_angular_common_testing","_angular_core","_angular_router","isUrlHandlingStrategy","opts","setupTestingRouter","urlSerializer","contexts","location","loader","compiler","injector","routes","urlHandlingStrategy","Router","ɵflatten","paramsInheritanceStrategy","SpyNgModuleFactoryLoader","_stubbedModules","Object","defineProperty","prototype","get","set","modules","res","_i","_a","keys","length","t","compileModuleAsync","enumerable","configurable","load","path","Promise","reject","Error","decorators","type","Injectable","ctorParameters","Compiler","RouterTestingModule","withRoutes","config","ngModule","providers","provideRoutes","provide","ROUTER_CONFIGURATION","useValue","NgModule","args","RouterModule","ɵROUTER_PROVIDERS","Location","useClass","SpyLocation","LocationStrategy","MockLocationStrategy","NgModuleFactoryLoader","useFactory","deps","UrlSerializer","ChildrenOutletContexts","Injector","ROUTES","UrlHandlingStrategy","Optional","PreloadingStrategy","useExisting","NoPreloading","value"],"mappings":"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","file":"router-testing.umd.min.js","sourcesContent":["/**\n * @license Angular v5.2.7\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/common/testing'), require('@angular/core'), require('@angular/router')) :\n\ttypeof define === 'function' && define.amd ? define('@angular/router/testing', ['exports', '@angular/common', '@angular/common/testing', '@angular/core', '@angular/router'], factory) :\n\t(factory((global.ng = global.ng || {}, global.ng.router = global.ng.router || {}, global.ng.router.testing = {}),global.ng.common,global.ng.common.testing,global.ng.core,global.ng.router));\n}(this, (function (exports,_angular_common,_angular_common_testing,_angular_core,_angular_router) { 'use strict';\n\n/**\n * @license Angular v5.2.7\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * \\@whatItDoes Allows to simulate the loading of ng modules in tests.\n *\n * \\@howToUse\n *\n * ```\n * const loader = TestBed.get(NgModuleFactoryLoader);\n *\n * \\@Component({template: 'lazy-loaded'})\n * class LazyLoadedComponent {}\n * \\@NgModule({\n * declarations: [LazyLoadedComponent],\n * imports: [RouterModule.forChild([{path: 'loaded', component: LazyLoadedComponent}])]\n * })\n *\n * class LoadedModule {}\n *\n * // sets up stubbedModules\n * loader.stubbedModules = {lazyModule: LoadedModule};\n *\n * router.resetConfig([\n * {path: 'lazy', loadChildren: 'lazyModule'},\n * ]);\n *\n * router.navigateByUrl('/lazy/loaded');\n * ```\n *\n * \\@stable\n */\nvar SpyNgModuleFactoryLoader = /** @class */ (function () {\n function SpyNgModuleFactoryLoader(compiler) {\n this.compiler = compiler;\n /**\n * \\@docsNotRequired\n */\n this._stubbedModules = {};\n }\n Object.defineProperty(SpyNgModuleFactoryLoader.prototype, \"stubbedModules\", {\n /**\n * @docsNotRequired\n */\n get: /**\n * \\@docsNotRequired\n * @return {?}\n */\n function () { return this._stubbedModules; },\n /**\n * @docsNotRequired\n */\n set: /**\n * \\@docsNotRequired\n * @param {?} modules\n * @return {?}\n */\n function (modules) {\n var /** @type {?} */ res = {};\n for (var _i = 0, _a = Object.keys(modules); _i < _a.length; _i++) {\n var t = _a[_i];\n res[t] = this.compiler.compileModuleAsync(modules[t]);\n }\n this._stubbedModules = res;\n },\n enumerable: true,\n configurable: true\n });\n /**\n * @param {?} path\n * @return {?}\n */\n SpyNgModuleFactoryLoader.prototype.load = /**\n * @param {?} path\n * @return {?}\n */\n function (path) {\n if (this._stubbedModules[path]) {\n return this._stubbedModules[path];\n }\n else {\n return /** @type {?} */ (Promise.reject(new Error(\"Cannot find module \" + path)));\n }\n };\n SpyNgModuleFactoryLoader.decorators = [\n { type: _angular_core.Injectable },\n ];\n /** @nocollapse */\n SpyNgModuleFactoryLoader.ctorParameters = function () { return [\n { type: _angular_core.Compiler, },\n ]; };\n return SpyNgModuleFactoryLoader;\n}());\n/**\n * @param {?} opts\n * @return {?}\n */\nfunction isUrlHandlingStrategy(opts) {\n // This property check is needed because UrlHandlingStrategy is an interface and doesn't exist at\n // runtime.\n return 'shouldProcessUrl' in opts;\n}\n/**\n * Router setup factory function used for testing.\n *\n * \\@stable\n * @param {?} urlSerializer\n * @param {?} contexts\n * @param {?} location\n * @param {?} loader\n * @param {?} compiler\n * @param {?} injector\n * @param {?} routes\n * @param {?=} opts\n * @param {?=} urlHandlingStrategy\n * @return {?}\n */\nfunction setupTestingRouter(urlSerializer, contexts, location, loader, compiler, injector, routes, opts, urlHandlingStrategy) {\n var /** @type {?} */ router = new _angular_router.Router(/** @type {?} */ ((null)), urlSerializer, contexts, location, injector, loader, compiler, _angular_router.ɵflatten(routes));\n // Handle deprecated argument ordering.\n if (opts) {\n if (isUrlHandlingStrategy(opts)) {\n router.urlHandlingStrategy = opts;\n }\n else if (opts.paramsInheritanceStrategy) {\n router.paramsInheritanceStrategy = opts.paramsInheritanceStrategy;\n }\n }\n if (urlHandlingStrategy) {\n router.urlHandlingStrategy = urlHandlingStrategy;\n }\n return router;\n}\n/**\n * \\@whatItDoes Sets up the router to be used for testing.\n *\n * \\@howToUse\n *\n * ```\n * beforeEach(() => {\n * TestBed.configureTestModule({\n * imports: [\n * RouterTestingModule.withRoutes(\n * [{path: '', component: BlankCmp}, {path: 'simple', component: SimpleCmp}]\n * )\n * ]\n * });\n * });\n * ```\n *\n * \\@description\n *\n * The modules sets up the router to be used for testing.\n * It provides spy implementations of {\\@link Location}, {\\@link LocationStrategy}, and {\\@link\n * NgModuleFactoryLoader}.\n *\n * \\@stable\n */\nvar RouterTestingModule = /** @class */ (function () {\n function RouterTestingModule() {\n }\n /**\n * @param {?} routes\n * @param {?=} config\n * @return {?}\n */\n RouterTestingModule.withRoutes = /**\n * @param {?} routes\n * @param {?=} config\n * @return {?}\n */\n function (routes, config) {\n return {\n ngModule: RouterTestingModule,\n providers: [\n _angular_router.provideRoutes(routes),\n { provide: _angular_router.ROUTER_CONFIGURATION, useValue: config ? config : {} },\n ]\n };\n };\n RouterTestingModule.decorators = [\n { type: _angular_core.NgModule, args: [{\n exports: [_angular_router.RouterModule],\n providers: [\n _angular_router.ɵROUTER_PROVIDERS, { provide: _angular_common.Location, useClass: _angular_common_testing.SpyLocation },\n { provide: _angular_common.LocationStrategy, useClass: _angular_common_testing.MockLocationStrategy },\n { provide: _angular_core.NgModuleFactoryLoader, useClass: SpyNgModuleFactoryLoader }, {\n provide: _angular_router.Router,\n useFactory: setupTestingRouter,\n deps: [\n _angular_router.UrlSerializer, _angular_router.ChildrenOutletContexts, _angular_common.Location, _angular_core.NgModuleFactoryLoader, _angular_core.Compiler, _angular_core.Injector,\n _angular_router.ROUTES, _angular_router.ROUTER_CONFIGURATION, [_angular_router.UrlHandlingStrategy, new _angular_core.Optional()]\n ]\n },\n { provide: _angular_router.PreloadingStrategy, useExisting: _angular_router.NoPreloading }, _angular_router.provideRoutes([])\n ]\n },] },\n ];\n /** @nocollapse */\n RouterTestingModule.ctorParameters = function () { return []; };\n return RouterTestingModule;\n}());\n\nexports.SpyNgModuleFactoryLoader = SpyNgModuleFactoryLoader;\nexports.setupTestingRouter = setupTestingRouter;\nexports.RouterTestingModule = RouterTestingModule;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=router-testing.umd.js.map\n"]}
1
+ {"version":3,"sources":["router-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","ng","router","testing","common","core","this","_angular_common","_angular_common_testing","_angular_core","_angular_router","isUrlHandlingStrategy","opts","setupTestingRouter","urlSerializer","contexts","location","loader","compiler","injector","routes","urlHandlingStrategy","Router","ɵflatten","paramsInheritanceStrategy","SpyNgModuleFactoryLoader","_stubbedModules","Object","defineProperty","prototype","get","set","modules","res","_i","_a","keys","length","t","compileModuleAsync","enumerable","configurable","load","path","Promise","reject","Error","decorators","type","Injectable","ctorParameters","Compiler","RouterTestingModule","withRoutes","config","ngModule","providers","provideRoutes","provide","ROUTER_CONFIGURATION","useValue","NgModule","args","RouterModule","ɵROUTER_PROVIDERS","Location","useClass","SpyLocation","LocationStrategy","MockLocationStrategy","NgModuleFactoryLoader","useFactory","deps","UrlSerializer","ChildrenOutletContexts","Injector","ROUTES","UrlHandlingStrategy","Optional","PreloadingStrategy","useExisting","NoPreloading","value"],"mappings":"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","file":"router-testing.umd.min.js","sourcesContent":["/**\n * @license Angular v5.2.11\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/common/testing'), require('@angular/core'), require('@angular/router')) :\n\ttypeof define === 'function' && define.amd ? define('@angular/router/testing', ['exports', '@angular/common', '@angular/common/testing', '@angular/core', '@angular/router'], factory) :\n\t(factory((global.ng = global.ng || {}, global.ng.router = global.ng.router || {}, global.ng.router.testing = {}),global.ng.common,global.ng.common.testing,global.ng.core,global.ng.router));\n}(this, (function (exports,_angular_common,_angular_common_testing,_angular_core,_angular_router) { 'use strict';\n\n/**\n * @license Angular v5.2.11\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * \\@whatItDoes Allows to simulate the loading of ng modules in tests.\n *\n * \\@howToUse\n *\n * ```\n * const loader = TestBed.get(NgModuleFactoryLoader);\n *\n * \\@Component({template: 'lazy-loaded'})\n * class LazyLoadedComponent {}\n * \\@NgModule({\n * declarations: [LazyLoadedComponent],\n * imports: [RouterModule.forChild([{path: 'loaded', component: LazyLoadedComponent}])]\n * })\n *\n * class LoadedModule {}\n *\n * // sets up stubbedModules\n * loader.stubbedModules = {lazyModule: LoadedModule};\n *\n * router.resetConfig([\n * {path: 'lazy', loadChildren: 'lazyModule'},\n * ]);\n *\n * router.navigateByUrl('/lazy/loaded');\n * ```\n *\n * \\@stable\n */\nvar SpyNgModuleFactoryLoader = /** @class */ (function () {\n function SpyNgModuleFactoryLoader(compiler) {\n this.compiler = compiler;\n /**\n * \\@docsNotRequired\n */\n this._stubbedModules = {};\n }\n Object.defineProperty(SpyNgModuleFactoryLoader.prototype, \"stubbedModules\", {\n /**\n * @docsNotRequired\n */\n get: /**\n * \\@docsNotRequired\n * @return {?}\n */\n function () { return this._stubbedModules; },\n /**\n * @docsNotRequired\n */\n set: /**\n * \\@docsNotRequired\n * @param {?} modules\n * @return {?}\n */\n function (modules) {\n var /** @type {?} */ res = {};\n for (var _i = 0, _a = Object.keys(modules); _i < _a.length; _i++) {\n var t = _a[_i];\n res[t] = this.compiler.compileModuleAsync(modules[t]);\n }\n this._stubbedModules = res;\n },\n enumerable: true,\n configurable: true\n });\n /**\n * @param {?} path\n * @return {?}\n */\n SpyNgModuleFactoryLoader.prototype.load = /**\n * @param {?} path\n * @return {?}\n */\n function (path) {\n if (this._stubbedModules[path]) {\n return this._stubbedModules[path];\n }\n else {\n return /** @type {?} */ (Promise.reject(new Error(\"Cannot find module \" + path)));\n }\n };\n SpyNgModuleFactoryLoader.decorators = [\n { type: _angular_core.Injectable },\n ];\n /** @nocollapse */\n SpyNgModuleFactoryLoader.ctorParameters = function () { return [\n { type: _angular_core.Compiler, },\n ]; };\n return SpyNgModuleFactoryLoader;\n}());\n/**\n * @param {?} opts\n * @return {?}\n */\nfunction isUrlHandlingStrategy(opts) {\n // This property check is needed because UrlHandlingStrategy is an interface and doesn't exist at\n // runtime.\n return 'shouldProcessUrl' in opts;\n}\n/**\n * Router setup factory function used for testing.\n *\n * \\@stable\n * @param {?} urlSerializer\n * @param {?} contexts\n * @param {?} location\n * @param {?} loader\n * @param {?} compiler\n * @param {?} injector\n * @param {?} routes\n * @param {?=} opts\n * @param {?=} urlHandlingStrategy\n * @return {?}\n */\nfunction setupTestingRouter(urlSerializer, contexts, location, loader, compiler, injector, routes, opts, urlHandlingStrategy) {\n var /** @type {?} */ router = new _angular_router.Router(/** @type {?} */ ((null)), urlSerializer, contexts, location, injector, loader, compiler, _angular_router.ɵflatten(routes));\n // Handle deprecated argument ordering.\n if (opts) {\n if (isUrlHandlingStrategy(opts)) {\n router.urlHandlingStrategy = opts;\n }\n else if (opts.paramsInheritanceStrategy) {\n router.paramsInheritanceStrategy = opts.paramsInheritanceStrategy;\n }\n }\n if (urlHandlingStrategy) {\n router.urlHandlingStrategy = urlHandlingStrategy;\n }\n return router;\n}\n/**\n * \\@whatItDoes Sets up the router to be used for testing.\n *\n * \\@howToUse\n *\n * ```\n * beforeEach(() => {\n * TestBed.configureTestModule({\n * imports: [\n * RouterTestingModule.withRoutes(\n * [{path: '', component: BlankCmp}, {path: 'simple', component: SimpleCmp}]\n * )\n * ]\n * });\n * });\n * ```\n *\n * \\@description\n *\n * The modules sets up the router to be used for testing.\n * It provides spy implementations of {\\@link Location}, {\\@link LocationStrategy}, and {\\@link\n * NgModuleFactoryLoader}.\n *\n * \\@stable\n */\nvar RouterTestingModule = /** @class */ (function () {\n function RouterTestingModule() {\n }\n /**\n * @param {?} routes\n * @param {?=} config\n * @return {?}\n */\n RouterTestingModule.withRoutes = /**\n * @param {?} routes\n * @param {?=} config\n * @return {?}\n */\n function (routes, config) {\n return {\n ngModule: RouterTestingModule,\n providers: [\n _angular_router.provideRoutes(routes),\n { provide: _angular_router.ROUTER_CONFIGURATION, useValue: config ? config : {} },\n ]\n };\n };\n RouterTestingModule.decorators = [\n { type: _angular_core.NgModule, args: [{\n exports: [_angular_router.RouterModule],\n providers: [\n _angular_router.ɵROUTER_PROVIDERS, { provide: _angular_common.Location, useClass: _angular_common_testing.SpyLocation },\n { provide: _angular_common.LocationStrategy, useClass: _angular_common_testing.MockLocationStrategy },\n { provide: _angular_core.NgModuleFactoryLoader, useClass: SpyNgModuleFactoryLoader }, {\n provide: _angular_router.Router,\n useFactory: setupTestingRouter,\n deps: [\n _angular_router.UrlSerializer, _angular_router.ChildrenOutletContexts, _angular_common.Location, _angular_core.NgModuleFactoryLoader, _angular_core.Compiler, _angular_core.Injector,\n _angular_router.ROUTES, _angular_router.ROUTER_CONFIGURATION, [_angular_router.UrlHandlingStrategy, new _angular_core.Optional()]\n ]\n },\n { provide: _angular_router.PreloadingStrategy, useExisting: _angular_router.NoPreloading }, _angular_router.provideRoutes([])\n ]\n },] },\n ];\n /** @nocollapse */\n RouterTestingModule.ctorParameters = function () { return []; };\n return RouterTestingModule;\n}());\n\nexports.SpyNgModuleFactoryLoader = SpyNgModuleFactoryLoader;\nexports.setupTestingRouter = setupTestingRouter;\nexports.RouterTestingModule = RouterTestingModule;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=router-testing.umd.js.map\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v5.2.7
2
+ * @license Angular v5.2.11
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -10,7 +10,7 @@
10
10
  }(this, (function (exports,_angular_core,_angular_router,_angular_upgrade_static) { 'use strict';
11
11
 
12
12
  /**
13
- * @license Angular v5.2.7
13
+ * @license Angular v5.2.11
14
14
  * (c) 2010-2018 Google, Inc. https://angular.io/
15
15
  * License: MIT
16
16
  */
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @license Angular v5.2.7
2
+ * @license Angular v5.2.11
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
  !function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core"),require("@angular/router"),require("@angular/upgrade/static")):"function"==typeof define&&define.amd?define("@angular/router/upgrade",["exports","@angular/core","@angular/router","@angular/upgrade/static"],factory):factory((global.ng=global.ng||{},global.ng.router=global.ng.router||{},global.ng.router.upgrade={}),global.ng.core,global.ng.router,global.ng.upgrade.static)}(this,function(exports,_angular_core,_angular_router,_angular_upgrade_static){"use strict";function locationSyncBootstrapListener(ngUpgrade){return function(){setUpLocationSync(ngUpgrade)}}function setUpLocationSync(ngUpgrade){if(!ngUpgrade.$injector)throw new Error("\n RouterUpgradeInitializer can be used only after UpgradeModule.bootstrap has been called.\n Remove RouterUpgradeInitializer and call setUpLocationSync after UpgradeModule.bootstrap.\n ");var router=ngUpgrade.injector.get(_angular_router.Router),url=document.createElement("a");ngUpgrade.$injector.get("$rootScope").$on("$locationChangeStart",function(_,next,__){url.href=next,router.navigateByUrl(url.pathname+url.search+url.hash)})}/**
7
- * @license Angular v5.2.7
7
+ * @license Angular v5.2.11
8
8
  * (c) 2010-2018 Google, Inc. https://angular.io/
9
9
  * License: MIT
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["router-upgrade.umd.js"],"names":["global","factory","exports","module","require","define","amd","ng","router","upgrade","core","static","this","_angular_core","_angular_router","_angular_upgrade_static","locationSyncBootstrapListener","ngUpgrade","setUpLocationSync","$injector","Error","injector","get","Router","url","document","createElement","$on","_","next","__","href","navigateByUrl","pathname","search","hash","RouterUpgradeInitializer","provide","APP_BOOTSTRAP_LISTENER","multi","useFactory","deps","UpgradeModule","Object","defineProperty","value"],"mappings":";;;;;CAKC,SAAUA,OAAQC,SACC,gBAAZC,UAA0C,mBAAXC,QAAyBF,QAAQC,QAASE,QAAQ,iBAAkBA,QAAQ,mBAAoBA,QAAQ,4BAC5H,kBAAXC,SAAyBA,OAAOC,IAAMD,OAAO,2BAA4B,UAAW,gBAAiB,kBAAmB,2BAA4BJ,SAC1JA,SAASD,OAAOO,GAAKP,OAAOO,OAAUP,OAAOO,GAAGC,OAASR,OAAOO,GAAGC,WAAcR,OAAOO,GAAGC,OAAOC,YAAcT,OAAOO,GAAGG,KAAKV,OAAOO,GAAGC,OAAOR,OAAOO,GAAGE,QAAQE,SAClKC,KAAM,SAAWV,QAAQW,cAAcC,gBAAgBC,yBAA2B,YAoDpF,SAASC,+BAA8BC,WACnC,MAAO,YAAcC,kBAAkBD,YAY3C,QAASC,mBAAkBD,WACvB,IAAKA,UAAUE,UACX,KAAM,IAAIC,OAAM,gNAEpB,IAAqBZ,QAASS,UAAUI,SAASC,IAAIR,gBAAgBS,QAChDC,IAAMC,SAASC,cAAc,IAClDT,WAAUE,UAAUG,IAAI,cACnBK,IAAI,uBAAwB,SAAUC,EAAGC,KAAMC,IAChDN,IAAIO,KAAOF,KACXrB,OAAOwB,cAAcR,IAAIS,SAAWT,IAAIU,OAASV,IAAIW;;;;;;;;;;;;AAjC7D,GAAIC,2BACAC,QAASxB,cAAcyB,uBACvBC,OAAO,EACPC,WAAYxB,8BACZyB,MAAO1B,wBAAwB2B,eAiCnCxC,SAAQkC,yBAA2BA,yBACnClC,QAAQc,8BAAgCA,8BACxCd,QAAQgB,kBAAoBA,kBAE5ByB,OAAOC,eAAe1C,QAAS,cAAgB2C,OAAO","file":"router-upgrade.umd.min.js","sourcesContent":["/**\n * @license Angular v5.2.7\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/router'), require('@angular/upgrade/static')) :\n\ttypeof define === 'function' && define.amd ? define('@angular/router/upgrade', ['exports', '@angular/core', '@angular/router', '@angular/upgrade/static'], factory) :\n\t(factory((global.ng = global.ng || {}, global.ng.router = global.ng.router || {}, global.ng.router.upgrade = {}),global.ng.core,global.ng.router,global.ng.upgrade.static));\n}(this, (function (exports,_angular_core,_angular_router,_angular_upgrade_static) { 'use strict';\n\n/**\n * @license Angular v5.2.7\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * \\@whatItDoes Creates an initializer that in addition to setting up the Angular\n * router sets up the ngRoute integration.\n *\n * \\@howToUse\n *\n * ```\n * \\@NgModule({\n * imports: [\n * RouterModule.forRoot(SOME_ROUTES),\n * UpgradeModule\n * ],\n * providers: [\n * RouterUpgradeInitializer\n * ]\n * })\n * export class AppModule {\n * ngDoBootstrap() {}\n * }\n * ```\n *\n * \\@experimental\n */\nvar RouterUpgradeInitializer = {\n provide: _angular_core.APP_BOOTSTRAP_LISTENER,\n multi: true,\n useFactory: locationSyncBootstrapListener,\n deps: [_angular_upgrade_static.UpgradeModule]\n};\n/**\n * \\@internal\n * @param {?} ngUpgrade\n * @return {?}\n */\nfunction locationSyncBootstrapListener(ngUpgrade) {\n return function () { setUpLocationSync(ngUpgrade); };\n}\n/**\n * \\@whatItDoes Sets up a location synchronization.\n *\n * History.pushState does not fire onPopState, so the Angular location\n * doesn't detect it. The workaround is to attach a location change listener\n *\n * \\@experimental\n * @param {?} ngUpgrade\n * @return {?}\n */\nfunction setUpLocationSync(ngUpgrade) {\n if (!ngUpgrade.$injector) {\n throw new Error(\"\\n RouterUpgradeInitializer can be used only after UpgradeModule.bootstrap has been called.\\n Remove RouterUpgradeInitializer and call setUpLocationSync after UpgradeModule.bootstrap.\\n \");\n }\n var /** @type {?} */ router = ngUpgrade.injector.get(_angular_router.Router);\n var /** @type {?} */ url = document.createElement('a');\n ngUpgrade.$injector.get('$rootScope')\n .$on('$locationChangeStart', function (_, next, __) {\n url.href = next;\n router.navigateByUrl(url.pathname + url.search + url.hash);\n });\n}\n\nexports.RouterUpgradeInitializer = RouterUpgradeInitializer;\nexports.locationSyncBootstrapListener = locationSyncBootstrapListener;\nexports.setUpLocationSync = setUpLocationSync;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=router-upgrade.umd.js.map\n"]}
1
+ {"version":3,"sources":["router-upgrade.umd.js"],"names":["global","factory","exports","module","require","define","amd","ng","router","upgrade","core","static","this","_angular_core","_angular_router","_angular_upgrade_static","locationSyncBootstrapListener","ngUpgrade","setUpLocationSync","$injector","Error","injector","get","Router","url","document","createElement","$on","_","next","__","href","navigateByUrl","pathname","search","hash","RouterUpgradeInitializer","provide","APP_BOOTSTRAP_LISTENER","multi","useFactory","deps","UpgradeModule","Object","defineProperty","value"],"mappings":";;;;;CAKC,SAAUA,OAAQC,SACC,gBAAZC,UAA0C,mBAAXC,QAAyBF,QAAQC,QAASE,QAAQ,iBAAkBA,QAAQ,mBAAoBA,QAAQ,4BAC5H,kBAAXC,SAAyBA,OAAOC,IAAMD,OAAO,2BAA4B,UAAW,gBAAiB,kBAAmB,2BAA4BJ,SAC1JA,SAASD,OAAOO,GAAKP,OAAOO,OAAUP,OAAOO,GAAGC,OAASR,OAAOO,GAAGC,WAAcR,OAAOO,GAAGC,OAAOC,YAAcT,OAAOO,GAAGG,KAAKV,OAAOO,GAAGC,OAAOR,OAAOO,GAAGE,QAAQE,SAClKC,KAAM,SAAWV,QAAQW,cAAcC,gBAAgBC,yBAA2B,YAoDpF,SAASC,+BAA8BC,WACnC,MAAO,YAAcC,kBAAkBD,YAY3C,QAASC,mBAAkBD,WACvB,IAAKA,UAAUE,UACX,KAAM,IAAIC,OAAM,gNAEpB,IAAqBZ,QAASS,UAAUI,SAASC,IAAIR,gBAAgBS,QAChDC,IAAMC,SAASC,cAAc,IAClDT,WAAUE,UAAUG,IAAI,cACnBK,IAAI,uBAAwB,SAAUC,EAAGC,KAAMC,IAChDN,IAAIO,KAAOF,KACXrB,OAAOwB,cAAcR,IAAIS,SAAWT,IAAIU,OAASV,IAAIW;;;;;;;;;;;;AAjC7D,GAAIC,2BACAC,QAASxB,cAAcyB,uBACvBC,OAAO,EACPC,WAAYxB,8BACZyB,MAAO1B,wBAAwB2B,eAiCnCxC,SAAQkC,yBAA2BA,yBACnClC,QAAQc,8BAAgCA,8BACxCd,QAAQgB,kBAAoBA,kBAE5ByB,OAAOC,eAAe1C,QAAS,cAAgB2C,OAAO","file":"router-upgrade.umd.min.js","sourcesContent":["/**\n * @license Angular v5.2.11\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/router'), require('@angular/upgrade/static')) :\n\ttypeof define === 'function' && define.amd ? define('@angular/router/upgrade', ['exports', '@angular/core', '@angular/router', '@angular/upgrade/static'], factory) :\n\t(factory((global.ng = global.ng || {}, global.ng.router = global.ng.router || {}, global.ng.router.upgrade = {}),global.ng.core,global.ng.router,global.ng.upgrade.static));\n}(this, (function (exports,_angular_core,_angular_router,_angular_upgrade_static) { 'use strict';\n\n/**\n * @license Angular v5.2.11\n * (c) 2010-2018 Google, Inc. https://angular.io/\n * License: MIT\n */\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * \\@whatItDoes Creates an initializer that in addition to setting up the Angular\n * router sets up the ngRoute integration.\n *\n * \\@howToUse\n *\n * ```\n * \\@NgModule({\n * imports: [\n * RouterModule.forRoot(SOME_ROUTES),\n * UpgradeModule\n * ],\n * providers: [\n * RouterUpgradeInitializer\n * ]\n * })\n * export class AppModule {\n * ngDoBootstrap() {}\n * }\n * ```\n *\n * \\@experimental\n */\nvar RouterUpgradeInitializer = {\n provide: _angular_core.APP_BOOTSTRAP_LISTENER,\n multi: true,\n useFactory: locationSyncBootstrapListener,\n deps: [_angular_upgrade_static.UpgradeModule]\n};\n/**\n * \\@internal\n * @param {?} ngUpgrade\n * @return {?}\n */\nfunction locationSyncBootstrapListener(ngUpgrade) {\n return function () { setUpLocationSync(ngUpgrade); };\n}\n/**\n * \\@whatItDoes Sets up a location synchronization.\n *\n * History.pushState does not fire onPopState, so the Angular location\n * doesn't detect it. The workaround is to attach a location change listener\n *\n * \\@experimental\n * @param {?} ngUpgrade\n * @return {?}\n */\nfunction setUpLocationSync(ngUpgrade) {\n if (!ngUpgrade.$injector) {\n throw new Error(\"\\n RouterUpgradeInitializer can be used only after UpgradeModule.bootstrap has been called.\\n Remove RouterUpgradeInitializer and call setUpLocationSync after UpgradeModule.bootstrap.\\n \");\n }\n var /** @type {?} */ router = ngUpgrade.injector.get(_angular_router.Router);\n var /** @type {?} */ url = document.createElement('a');\n ngUpgrade.$injector.get('$rootScope')\n .$on('$locationChangeStart', function (_, next, __) {\n url.href = next;\n router.navigateByUrl(url.pathname + url.search + url.hash);\n });\n}\n\nexports.RouterUpgradeInitializer = RouterUpgradeInitializer;\nexports.locationSyncBootstrapListener = locationSyncBootstrapListener;\nexports.setUpLocationSync = setUpLocationSync;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=router-upgrade.umd.js.map\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v5.2.7
2
+ * @license Angular v5.2.11
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -44,7 +44,7 @@ var __assign = Object.assign || function __assign(t) {
44
44
  };
45
45
 
46
46
  /**
47
- * @license Angular v5.2.7
47
+ * @license Angular v5.2.11
48
48
  * (c) 2010-2018 Google, Inc. https://angular.io/
49
49
  * License: MIT
50
50
  */
@@ -1247,7 +1247,7 @@ var DefaultUrlSerializer = /** @class */ (function () {
1247
1247
  function (tree) {
1248
1248
  var /** @type {?} */ segment = "/" + serializeSegment(tree.root, true);
1249
1249
  var /** @type {?} */ query = serializeQueryParams(tree.queryParams);
1250
- var /** @type {?} */ fragment = typeof tree.fragment === "string" ? "#" + encodeURI((/** @type {?} */ ((tree.fragment)))) : '';
1250
+ var /** @type {?} */ fragment = typeof tree.fragment === "string" ? "#" + encodeUriFragment((/** @type {?} */ ((tree.fragment)))) : '';
1251
1251
  return "" + segment + query + fragment;
1252
1252
  };
1253
1253
  return DefaultUrlSerializer;
@@ -1292,25 +1292,53 @@ function serializeSegment(segment, root) {
1292
1292
  }
1293
1293
  }
1294
1294
  /**
1295
- * This method is intended for encoding *key* or *value* parts of query component. We need a custom
1296
- * method because encodeURIComponent is too aggressive and encodes stuff that doesn't have to be
1297
- * encoded per http://tools.ietf.org/html/rfc3986:
1298
- * query = *( pchar / "/" / "?" )
1299
- * pchar = unreserved / pct-encoded / sub-delims / ":" / "\@"
1300
- * unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
1301
- * pct-encoded = "%" HEXDIG HEXDIG
1302
- * sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
1303
- * / "*" / "+" / "," / ";" / "="
1295
+ * Encodes a URI string with the default encoding. This function will only ever be called from
1296
+ * `encodeUriQuery` or `encodeUriSegment` as it's the base set of encodings to be used. We need
1297
+ * a custom encoding because encodeURIComponent is too aggressive and encodes stuff that doesn't
1298
+ * have to be encoded per https://url.spec.whatwg.org.
1304
1299
  * @param {?} s
1305
1300
  * @return {?}
1306
1301
  */
1307
- function encode(s) {
1302
+ function encodeUriString(s) {
1308
1303
  return encodeURIComponent(s)
1309
1304
  .replace(/%40/g, '@')
1310
1305
  .replace(/%3A/gi, ':')
1311
1306
  .replace(/%24/g, '$')
1312
- .replace(/%2C/gi, ',')
1313
- .replace(/%3B/gi, ';');
1307
+ .replace(/%2C/gi, ',');
1308
+ }
1309
+ /**
1310
+ * This function should be used to encode both keys and values in a query string key/value. In
1311
+ * the following URL, you need to call encodeUriQuery on "k" and "v":
1312
+ *
1313
+ * http://www.site.org/html;mk=mv?k=v#f
1314
+ * @param {?} s
1315
+ * @return {?}
1316
+ */
1317
+ function encodeUriQuery(s) {
1318
+ return encodeUriString(s).replace(/%3B/gi, ';');
1319
+ }
1320
+ /**
1321
+ * This function should be used to encode a URL fragment. In the following URL, you need to call
1322
+ * encodeUriFragment on "f":
1323
+ *
1324
+ * http://www.site.org/html;mk=mv?k=v#f
1325
+ * @param {?} s
1326
+ * @return {?}
1327
+ */
1328
+ function encodeUriFragment(s) {
1329
+ return encodeURI(s);
1330
+ }
1331
+ /**
1332
+ * This function should be run on any URI segment as well as the key and value in a key/value
1333
+ * pair for matrix params. In the following URL, you need to call encodeUriSegment on "html",
1334
+ * "mk", and "mv":
1335
+ *
1336
+ * http://www.site.org/html;mk=mv?k=v#f
1337
+ * @param {?} s
1338
+ * @return {?}
1339
+ */
1340
+ function encodeUriSegment(s) {
1341
+ return encodeUriString(s).replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/%26/gi, '&');
1314
1342
  }
1315
1343
  /**
1316
1344
  * @param {?} s
@@ -1319,19 +1347,28 @@ function encode(s) {
1319
1347
  function decode(s) {
1320
1348
  return decodeURIComponent(s);
1321
1349
  }
1350
+ /**
1351
+ * @param {?} s
1352
+ * @return {?}
1353
+ */
1354
+ function decodeQuery(s) {
1355
+ return decode(s.replace(/\+/g, '%20'));
1356
+ }
1322
1357
  /**
1323
1358
  * @param {?} path
1324
1359
  * @return {?}
1325
1360
  */
1326
1361
  function serializePath(path) {
1327
- return "" + encode(path.path) + serializeParams(path.parameters);
1362
+ return "" + encodeUriSegment(path.path) + serializeMatrixParams(path.parameters);
1328
1363
  }
1329
1364
  /**
1330
1365
  * @param {?} params
1331
1366
  * @return {?}
1332
1367
  */
1333
- function serializeParams(params) {
1334
- return Object.keys(params).map(function (key) { return ";" + encode(key) + "=" + encode(params[key]); }).join('');
1368
+ function serializeMatrixParams(params) {
1369
+ return Object.keys(params)
1370
+ .map(function (key) { return ";" + encodeUriSegment(key) + "=" + encodeUriSegment(params[key]); })
1371
+ .join('');
1335
1372
  }
1336
1373
  /**
1337
1374
  * @param {?} params
@@ -1340,8 +1377,9 @@ function serializeParams(params) {
1340
1377
  function serializeQueryParams(params) {
1341
1378
  var /** @type {?} */ strParams = Object.keys(params).map(function (name) {
1342
1379
  var /** @type {?} */ value = params[name];
1343
- return Array.isArray(value) ? value.map(function (v) { return encode(name) + "=" + encode(v); }).join('&') :
1344
- encode(name) + "=" + encode(value);
1380
+ return Array.isArray(value) ?
1381
+ value.map(function (v) { return encodeUriQuery(name) + "=" + encodeUriQuery(v); }).join('&') :
1382
+ encodeUriQuery(name) + "=" + encodeUriQuery(value);
1345
1383
  });
1346
1384
  return strParams.length ? "?" + strParams.join("&") : '';
1347
1385
  }
@@ -1413,7 +1451,7 @@ var UrlParser = /** @class */ (function () {
1413
1451
  * @return {?}
1414
1452
  */
1415
1453
  function () {
1416
- return this.consumeOptional('#') ? decodeURI(this.remaining) : null;
1454
+ return this.consumeOptional('#') ? decodeURIComponent(this.remaining) : null;
1417
1455
  };
1418
1456
  /**
1419
1457
  * @return {?}
@@ -1521,8 +1559,8 @@ var UrlParser = /** @class */ (function () {
1521
1559
  this.capture(value);
1522
1560
  }
1523
1561
  }
1524
- var /** @type {?} */ decodedKey = decode(key);
1525
- var /** @type {?} */ decodedVal = decode(value);
1562
+ var /** @type {?} */ decodedKey = decodeQuery(key);
1563
+ var /** @type {?} */ decodedVal = decodeQuery(value);
1526
1564
  if (params.hasOwnProperty(decodedKey)) {
1527
1565
  // Append to existing values
1528
1566
  var /** @type {?} */ currentVal = params[decodedKey];
@@ -2377,6 +2415,9 @@ function getOutlet(route) {
2377
2415
  * Use of this source code is governed by an MIT-style license that can be
2378
2416
  * found in the LICENSE file at https://angular.io/license
2379
2417
  */
2418
+ /**
2419
+ * @template T
2420
+ */
2380
2421
  var Tree = /** @class */ (function () {
2381
2422
  function Tree(root) {
2382
2423
  this._root = root;
@@ -2512,6 +2553,9 @@ function findPath(value, node) {
2512
2553
  }
2513
2554
  return [];
2514
2555
  }
2556
+ /**
2557
+ * @template T
2558
+ */
2515
2559
  var TreeNode = /** @class */ (function () {
2516
2560
  function TreeNode(value, children) {
2517
2561
  this.value = value;
@@ -7467,7 +7511,7 @@ function provideRouterInitializer() {
7467
7511
  /**
7468
7512
  * \@stable
7469
7513
  */
7470
- var VERSION = new _angular_core.Version('5.2.7');
7514
+ var VERSION = new _angular_core.Version('5.2.11');
7471
7515
 
7472
7516
  exports.RouterLink = RouterLink;
7473
7517
  exports.RouterLinkWithHref = RouterLinkWithHref;