@angular/router 7.2.10 → 7.2.14

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.
package/fesm5/testing.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.10
2
+ * @license Angular v7.2.14
3
3
  * (c) 2010-2019 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/fesm5/upgrade.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.10
2
+ * @license Angular v7.2.14
3
3
  * (c) 2010-2019 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/router",
3
- "version": "7.2.10",
3
+ "version": "7.2.14",
4
4
  "description": "Angular - the routing library",
5
5
  "main": "./bundles/router.umd.js",
6
6
  "module": "./fesm5/router.js",
@@ -28,9 +28,9 @@
28
28
  "tslib": "^1.9.0"
29
29
  },
30
30
  "peerDependencies": {
31
- "@angular/core": "7.2.10",
32
- "@angular/common": "7.2.10",
33
- "@angular/platform-browser": "7.2.10",
31
+ "@angular/core": "7.2.14",
32
+ "@angular/common": "7.2.14",
33
+ "@angular/platform-browser": "7.2.14",
34
34
  "rxjs": "^6.0.0"
35
35
  },
36
36
  "ng-update": {
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_router_router_a":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":54,"character":40},"arguments":["ROUTER_FORROOT_GUARD"]},"ɵangular_packages_router_router_b":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgProbeToken","line":78,"character":13},"arguments":["Router",{"__symbolic":"reference","name":"Router"}]}},"ɵangular_packages_router_router_c":{"__symbolic":"function"},"ɵangular_packages_router_router_d":{"__symbolic":"function","parameters":["platformLocationStrategy","baseHref","options"],"defaults":[null,null,{}],"value":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"options"},"member":"useHash"},"thenExpression":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common","name":"HashLocationStrategy","line":210,"character":31},"arguments":[{"__symbolic":"reference","name":"platformLocationStrategy"},{"__symbolic":"reference","name":"baseHref"}]},"elseExpression":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common","name":"PathLocationStrategy","line":211,"character":31},"arguments":[{"__symbolic":"reference","name":"platformLocationStrategy"},{"__symbolic":"reference","name":"baseHref"}]}}},"ɵangular_packages_router_router_e":{"__symbolic":"function"},"ɵangular_packages_router_router_f":{"__symbolic":"function"},"ɵangular_packages_router_router_g":{"__symbolic":"function","parameters":["router"],"value":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"router"},"member":"routerState"},"member":"root"}},"ɵangular_packages_router_router_h":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":520,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":525,"character":32}]}],"appInitializer":[{"__symbolic":"method"}],"bootstrapListener":[{"__symbolic":"method"}],"isLegacyEnabled":[{"__symbolic":"method"}],"isLegacyDisabled":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_i":{"__symbolic":"function","parameters":["r"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"r"},"member":"appInitializer"},"member":"bind"},"arguments":[{"__symbolic":"reference","name":"r"}]}},"ɵangular_packages_router_router_j":{"__symbolic":"function","parameters":["r"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"r"},"member":"bootstrapListener"},"member":"bind"},"arguments":[{"__symbolic":"reference","name":"r"}]}},"ɵangular_packages_router_router_k":{"__symbolic":"function","parameters":[],"value":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":619,"character":15},"multi":true,"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_i"},"deps":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"}]},{"provide":{"__symbolic":"reference","name":"ROUTER_INITIALIZER"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_j"},"deps":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"}]},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_BOOTSTRAP_LISTENER","line":625,"character":14},"multi":true,"useExisting":{"__symbolic":"reference","name":"ROUTER_INITIALIZER"}}]},"Data":{"__symbolic":"interface"},"LoadChildren":{"__symbolic":"interface"},"LoadChildrenCallback":{"__symbolic":"interface"},"ResolveData":{"__symbolic":"interface"},"Route":{"__symbolic":"interface"},"Routes":{"__symbolic":"interface"},"RunGuardsAndResolvers":{"__symbolic":"interface"},"UrlMatchResult":{"__symbolic":"interface"},"UrlMatcher":{"__symbolic":"interface"},"RouterLink":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":113,"character":1},"arguments":[{"selector":":not(a):not(area)[routerLink]"}]}],"members":{"queryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":3}}]}],"fragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":118,"character":3}}]}],"queryParamsHandling":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":120,"character":3}}]}],"preserveFragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":3}}]}],"skipLocationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":3}}]}],"replaceUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":127,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":134,"character":7},"arguments":["tabindex"]}],null,null],"parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","name":"ActivatedRoute"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":134,"character":57},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":134,"character":72}]}],"routerLink":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":140,"character":3}}]}],"preserveQueryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":152,"character":3}}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":160,"character":3},"arguments":["click"]}]}]}},"RouterLinkWithHref":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":193,"character":1},"arguments":[{"selector":"a[routerLink],area[routerLink]"}]}],"members":{"target":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":196,"character":3},"arguments":["attr.target"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":196,"character":31}}]}],"queryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":198,"character":3}}]}],"fragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":200,"character":3}}]}],"queryParamsHandling":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":202,"character":3}}]}],"preserveFragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":204,"character":3}}]}],"skipLocationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":206,"character":3}}]}],"replaceUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":208,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":209,"character":3}}]}],"href":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":217,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","name":"ActivatedRoute"},{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":221,"character":32}]}],"routerLink":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":229,"character":3}}]}],"preserveQueryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":238,"character":3}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":249,"character":3},"arguments":["click",["$event.button","$event.ctrlKey","$event.metaKey","$event.shiftKey"]]}]}],"updateTargetUrlAndHref":[{"__symbolic":"method"}]}},"RouterLinkActive":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":74,"character":1},"arguments":[{"selector":"[routerLinkActive]","exportAs":"routerLinkActive"}]}],"members":{"links":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":81,"character":3},"arguments":[{"__symbolic":"reference","name":"RouterLink"},{"descendants":true}]}]}],"linksWithHrefs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":84,"character":3},"arguments":[{"__symbolic":"reference","name":"RouterLinkWithHref"},{"descendants":true}]}]}],"routerLinkActiveOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":91,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":94,"character":47},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":94,"character":77},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":95,"character":19}]}],"ngAfterContentInit":[{"__symbolic":"method"}],"routerLinkActive":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":110,"character":3}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"isLinkActive":[{"__symbolic":"method"}],"hasActiveLinks":[{"__symbolic":"method"}]}},"RouterOutlet":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":38,"character":1},"arguments":[{"selector":"router-outlet","exportAs":"outlet"}]}],"members":{"activateEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3},"arguments":["activate"]}]}],"deactivateEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3},"arguments":["deactivate"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":49,"character":51},"arguments":["name"]}],null],"parameters":[{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":48,"character":72},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":49,"character":24},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":50,"character":30}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"detach":[{"__symbolic":"method"}],"attach":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"activateWith":[{"__symbolic":"method"}]}},"ActivationEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ActivationStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ChildActivationEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ChildActivationStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"Event":{"__symbolic":"interface"},"GuardsCheckEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"},{"__symbolic":"reference","name":"boolean"}]}],"toString":[{"__symbolic":"method"}]}},"GuardsCheckStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationCancel":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationError":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":93,"character":25,"module":"./src/events"},{"__symbolic":"error","message":"Expression form not supported","line":95,"character":21,"module":"./src/events"}]}],"toString":[{"__symbolic":"method"}]}},"ResolveEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ResolveStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"RouteConfigLoadEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Route"}]}],"toString":[{"__symbolic":"method"}]}},"RouteConfigLoadStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Route"}]}],"toString":[{"__symbolic":"method"}]}},"RouterEvent":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"}]}]}},"RoutesRecognized":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"Scroll":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"NavigationEnd"},{"__symbolic":"error","message":"Expression form not supported","line":420,"character":25,"module":"./src/events"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"CanActivate":{"__symbolic":"interface"},"CanActivateChild":{"__symbolic":"interface"},"CanDeactivate":{"__symbolic":"interface"},"CanLoad":{"__symbolic":"interface"},"Resolve":{"__symbolic":"interface"},"DetachedRouteHandle":{"__symbolic":"interface"},"RouteReuseStrategy":{"__symbolic":"class","members":{"shouldDetach":[{"__symbolic":"method"}],"store":[{"__symbolic":"method"}],"shouldAttach":[{"__symbolic":"method"}],"retrieve":[{"__symbolic":"method"}],"shouldReuseRoute":[{"__symbolic":"method"}]}},"Navigation":{"__symbolic":"interface"},"NavigationExtras":{"__symbolic":"interface"},"Router":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"UrlSerializer"},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":400,"character":70},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":400,"character":90},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":401,"character":14},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":401,"character":47},{"__symbolic":"reference","name":"Routes"}]}],"setupNavigations":[{"__symbolic":"method"}],"resetRootComponentType":[{"__symbolic":"method"}],"getTransition":[{"__symbolic":"method"}],"setTransition":[{"__symbolic":"method"}],"initialNavigation":[{"__symbolic":"method"}],"setUpLocationChangeListener":[{"__symbolic":"method"}],"getCurrentNavigation":[{"__symbolic":"method"}],"triggerEvent":[{"__symbolic":"method"}],"resetConfig":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"createUrlTree":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}],"navigate":[{"__symbolic":"method"}],"serializeUrl":[{"__symbolic":"method"}],"parseUrl":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"removeEmptyProps":[{"__symbolic":"method"}],"processNavigations":[{"__symbolic":"method"}],"scheduleNavigation":[{"__symbolic":"method"}],"setBrowserUrl":[{"__symbolic":"method"}],"resetStateAndUrl":[{"__symbolic":"method"}],"resetUrlToCurrentUrlTree":[{"__symbolic":"method"}]}},"ROUTES":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":18,"character":26},"arguments":["ROUTES"]},"ExtraOptions":{"__symbolic":"interface"},"ROUTER_CONFIGURATION":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":49,"character":40},"arguments":["ROUTER_CONFIGURATION"]},"ROUTER_INITIALIZER":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":613,"character":8},"arguments":["Router Initializer"]},"RouterModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":132,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"RouterOutlet"},{"__symbolic":"reference","name":"RouterLink"},{"__symbolic":"reference","name":"RouterLinkWithHref"},{"__symbolic":"reference","name":"RouterLinkActive"},{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}],"exports":[{"__symbolic":"reference","name":"RouterOutlet"},{"__symbolic":"reference","name":"RouterLink"},{"__symbolic":"reference","name":"RouterLinkWithHref"},{"__symbolic":"reference","name":"RouterLinkActive"},{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}],"entryComponents":[{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":139,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":139,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_a"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":139,"character":69}}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"Router"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["routes","config"],"value":{"ngModule":{"__symbolic":"reference","name":"RouterModule"},"providers":[{"__symbolic":"reference","name":"ɵROUTER_PROVIDERS"},{"__symbolic":"call","expression":{"__symbolic":"reference","name":"provideRoutes"},"arguments":[{"__symbolic":"reference","name":"routes"}]},{"provide":{"__symbolic":"reference","name":"ɵangular_packages_router_router_a"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_e"},"deps":[[{"__symbolic":"reference","name":"Router"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":166,"character":30}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":166,"character":46}}]]},{"provide":{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},"useValue":{"__symbolic":"if","condition":{"__symbolic":"reference","name":"config"},"thenExpression":{"__symbolic":"reference","name":"config"},"elseExpression":{}}},{"provide":{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":170,"character":19},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_d"},"deps":[{"__symbolic":"reference","module":"@angular/common","name":"PlatformLocation","line":173,"character":12},[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":173,"character":35},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"APP_BASE_HREF","line":173,"character":42}]},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":173,"character":62}}],{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"}]},{"provide":{"__symbolic":"reference","name":"ɵangular_packages_router_router_n"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_c"},"deps":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/common","name":"ViewportScroller","line":179,"character":25},{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"}]},{"provide":{"__symbolic":"reference","name":"PreloadingStrategy"},"useExisting":{"__symbolic":"if","condition":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"config"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"preloadingStrategy"}},"thenExpression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"preloadingStrategy"},"elseExpression":{"__symbolic":"reference","name":"NoPreloading"}}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"NgProbeToken","line":186,"character":18},"multi":true,"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_b"}},{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_router_router_k"}}]}},"forChild":{"__symbolic":"function","parameters":["routes"],"value":{"ngModule":{"__symbolic":"reference","name":"RouterModule"},"providers":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"provideRoutes"},"arguments":[{"__symbolic":"reference","name":"routes"}]}]}}}},"provideRoutes":{"__symbolic":"function","parameters":["routes"],"value":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":242,"character":14},"multi":true,"useValue":{"__symbolic":"reference","name":"routes"}},{"provide":{"__symbolic":"reference","name":"ROUTES"},"multi":true,"useValue":{"__symbolic":"reference","name":"routes"}}]},"ChildrenOutletContexts":{"__symbolic":"class","members":{"onChildOutletCreated":[{"__symbolic":"method"}],"onChildOutletDestroyed":[{"__symbolic":"method"}],"onOutletDeactivated":[{"__symbolic":"method"}],"onOutletReAttached":[{"__symbolic":"method"}],"getOrCreateContext":[{"__symbolic":"method"}],"getContext":[{"__symbolic":"method"}]}},"OutletContext":{"__symbolic":"class","members":{}},"NoPreloading":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"PreloadAllModules":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"PreloadingStrategy":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"RouterPreloader":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":71,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":78,"character":44},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":78,"character":77},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":79,"character":24},{"__symbolic":"reference","name":"PreloadingStrategy"}]}],"setUpPreloading":[{"__symbolic":"method"}],"preload":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"processRoutes":[{"__symbolic":"method"}],"preloadConfig":[{"__symbolic":"method"}]}},"ActivatedRoute":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ActivatedRouteSnapshot":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"UrlSegment"}]},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Data"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"Route"},{"__symbolic":"reference","name":"UrlSegmentGroup"},{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"ResolveData"}]}],"toString":[{"__symbolic":"method"}]}},"RouterState":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵangular_packages_router_router_l"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"RouterStateSnapshot":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵangular_packages_router_router_l"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}],"toString":[{"__symbolic":"method"}]}},"PRIMARY_OUTLET":"primary","ParamMap":{"__symbolic":"interface"},"Params":{"__symbolic":"interface"},"convertToParamMap":{"__symbolic":"function","parameters":["params"],"value":{"__symbolic":"error","message":"Reference to non-exported class","line":62,"character":0,"context":{"className":"ParamsAsMap"},"module":"./src/shared"}},"UrlHandlingStrategy":{"__symbolic":"class","members":{"shouldProcessUrl":[{"__symbolic":"method"}],"extract":[{"__symbolic":"method"}],"merge":[{"__symbolic":"method"}]}},"DefaultUrlSerializer":{"__symbolic":"class","members":{"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}},"UrlSegment":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":204,"character":25,"module":"./src/url_tree"}]}],"toString":[{"__symbolic":"method"}]}},"UrlSegmentGroup":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"UrlSegment"}]},{"__symbolic":"error","message":"Expression form not supported","line":153,"character":23,"module":"./src/url_tree"}]}],"hasChildren":[{"__symbolic":"method"}],"toString":[{"__symbolic":"method"}]}},"UrlSerializer":{"__symbolic":"class","members":{"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}},"UrlTree":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UrlSegmentGroup"},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"VERSION":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Version","line":19,"character":27},"arguments":["7.2.10"]},"ɵEmptyOutletComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":19,"character":1},"arguments":[{"template":"<router-outlet></router-outlet>"}]}],"members":{}},"ɵROUTER_PROVIDERS":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":57,"character":2},{"provide":{"__symbolic":"reference","name":"UrlSerializer"},"useClass":{"__symbolic":"reference","name":"DefaultUrlSerializer"}},{"provide":{"__symbolic":"reference","name":"Router"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_f"},"deps":[{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":63,"character":6},{"__symbolic":"reference","name":"UrlSerializer"},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":63,"character":61},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":63,"character":71},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":64,"character":6},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":64,"character":29},{"__symbolic":"reference","name":"ROUTES"},{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},[{"__symbolic":"reference","name":"UrlHandlingStrategy"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":65,"character":32}}],[{"__symbolic":"reference","name":"RouteReuseStrategy"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":65,"character":70}}]]},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"provide":{"__symbolic":"reference","name":"ActivatedRoute"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_g"},"deps":[{"__symbolic":"reference","name":"Router"}]},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":70,"character":12},"useClass":{"__symbolic":"reference","module":"@angular/core","name":"SystemJsNgModuleLoader","line":70,"character":45}},{"__symbolic":"reference","name":"RouterPreloader"},{"__symbolic":"reference","name":"NoPreloading"},{"__symbolic":"reference","name":"PreloadAllModules"},{"provide":{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},"useValue":{"enableTracing":false}}],"ɵflatten":{"__symbolic":"function","parameters":["arr"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Array"},"member":"prototype"},"member":"concat"},"member":"apply"},"arguments":[[],{"__symbolic":"reference","name":"arr"}]}},"ɵangular_packages_router_router_l":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}],"parent":[{"__symbolic":"method"}],"children":[{"__symbolic":"method"}],"firstChild":[{"__symbolic":"method"}],"siblings":[{"__symbolic":"method"}],"pathFromRoot":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_m":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":86,"character":28,"context":{"typeName":"T"},"module":"./src/utils/tree"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}]}],"toString":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_n":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/common","name":"ViewportScroller","line":28,"character":64},{"__symbolic":"error","message":"Expression form not supported","line":28,"character":99,"module":"./src/router_scroller"}]}],"init":[{"__symbolic":"method"}],"createScrollEvents":[{"__symbolic":"method"}],"consumeScrollEvents":[{"__symbolic":"method"}],"scheduleScrollEvent":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"ɵangular_packages_router_router_a":"./src/router_module","ɵangular_packages_router_router_b":"./src/router_module","ɵangular_packages_router_router_c":"./src/router_module","ɵangular_packages_router_router_d":"./src/router_module","ɵangular_packages_router_router_e":"./src/router_module","ɵangular_packages_router_router_f":"./src/router_module","ɵangular_packages_router_router_g":"./src/router_module","ɵangular_packages_router_router_h":"./src/router_module","ɵangular_packages_router_router_i":"./src/router_module","ɵangular_packages_router_router_j":"./src/router_module","ɵangular_packages_router_router_k":"./src/router_module","Data":"./src/config","LoadChildren":"./src/config","LoadChildrenCallback":"./src/config","ResolveData":"./src/config","Route":"./src/config","Routes":"./src/config","RunGuardsAndResolvers":"./src/config","UrlMatchResult":"./src/config","UrlMatcher":"./src/config","RouterLink":"./src/directives/router_link","RouterLinkWithHref":"./src/directives/router_link","RouterLinkActive":"./src/directives/router_link_active","RouterOutlet":"./src/directives/router_outlet","ActivationEnd":"./src/events","ActivationStart":"./src/events","ChildActivationEnd":"./src/events","ChildActivationStart":"./src/events","Event":"./src/events","GuardsCheckEnd":"./src/events","GuardsCheckStart":"./src/events","NavigationCancel":"./src/events","NavigationEnd":"./src/events","NavigationError":"./src/events","NavigationStart":"./src/events","ResolveEnd":"./src/events","ResolveStart":"./src/events","RouteConfigLoadEnd":"./src/events","RouteConfigLoadStart":"./src/events","RouterEvent":"./src/events","RoutesRecognized":"./src/events","Scroll":"./src/events","CanActivate":"./src/interfaces","CanActivateChild":"./src/interfaces","CanDeactivate":"./src/interfaces","CanLoad":"./src/interfaces","Resolve":"./src/interfaces","DetachedRouteHandle":"./src/route_reuse_strategy","RouteReuseStrategy":"./src/route_reuse_strategy","Navigation":"./src/router","NavigationExtras":"./src/router","Router":"./src/router","ROUTES":"./src/router_config_loader","ExtraOptions":"./src/router_module","ROUTER_CONFIGURATION":"./src/router_module","ROUTER_INITIALIZER":"./src/router_module","RouterModule":"./src/router_module","provideRoutes":"./src/router_module","ChildrenOutletContexts":"./src/router_outlet_context","OutletContext":"./src/router_outlet_context","NoPreloading":"./src/router_preloader","PreloadAllModules":"./src/router_preloader","PreloadingStrategy":"./src/router_preloader","RouterPreloader":"./src/router_preloader","ActivatedRoute":"./src/router_state","ActivatedRouteSnapshot":"./src/router_state","RouterState":"./src/router_state","RouterStateSnapshot":"./src/router_state","PRIMARY_OUTLET":"./src/shared","ParamMap":"./src/shared","Params":"./src/shared","convertToParamMap":"./src/shared","UrlHandlingStrategy":"./src/url_handling_strategy","DefaultUrlSerializer":"./src/url_tree","UrlSegment":"./src/url_tree","UrlSegmentGroup":"./src/url_tree","UrlSerializer":"./src/url_tree","UrlTree":"./src/url_tree","VERSION":"./src/version","ɵEmptyOutletComponent":"./src/components/empty_outlet","ɵROUTER_PROVIDERS":"./src/router_module","ɵflatten":"./src/utils/collection","ɵangular_packages_router_router_l":"./src/utils/tree","ɵangular_packages_router_router_m":"./src/utils/tree","ɵangular_packages_router_router_n":"./src/router_scroller"},"importAs":"@angular/router"}
1
+ {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_router_router_a":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":54,"character":40},"arguments":["ROUTER_FORROOT_GUARD"]},"ɵangular_packages_router_router_b":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgProbeToken","line":78,"character":13},"arguments":["Router",{"__symbolic":"reference","name":"Router"}]}},"ɵangular_packages_router_router_c":{"__symbolic":"function"},"ɵangular_packages_router_router_d":{"__symbolic":"function","parameters":["platformLocationStrategy","baseHref","options"],"defaults":[null,null,{}],"value":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"options"},"member":"useHash"},"thenExpression":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common","name":"HashLocationStrategy","line":224,"character":31},"arguments":[{"__symbolic":"reference","name":"platformLocationStrategy"},{"__symbolic":"reference","name":"baseHref"}]},"elseExpression":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/common","name":"PathLocationStrategy","line":225,"character":31},"arguments":[{"__symbolic":"reference","name":"platformLocationStrategy"},{"__symbolic":"reference","name":"baseHref"}]}}},"ɵangular_packages_router_router_e":{"__symbolic":"function"},"ɵangular_packages_router_router_f":{"__symbolic":"function"},"ɵangular_packages_router_router_g":{"__symbolic":"function","parameters":["router"],"value":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"router"},"member":"routerState"},"member":"root"}},"ɵangular_packages_router_router_h":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":517,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":522,"character":32}]}],"appInitializer":[{"__symbolic":"method"}],"bootstrapListener":[{"__symbolic":"method"}],"isLegacyEnabled":[{"__symbolic":"method"}],"isLegacyDisabled":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_i":{"__symbolic":"function","parameters":["r"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"r"},"member":"appInitializer"},"member":"bind"},"arguments":[{"__symbolic":"reference","name":"r"}]}},"ɵangular_packages_router_router_j":{"__symbolic":"function","parameters":["r"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"r"},"member":"bootstrapListener"},"member":"bind"},"arguments":[{"__symbolic":"reference","name":"r"}]}},"ɵangular_packages_router_router_k":{"__symbolic":"function","parameters":[],"value":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":616,"character":15},"multi":true,"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_i"},"deps":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"}]},{"provide":{"__symbolic":"reference","name":"ROUTER_INITIALIZER"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_j"},"deps":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_h"}]},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_BOOTSTRAP_LISTENER","line":622,"character":14},"multi":true,"useExisting":{"__symbolic":"reference","name":"ROUTER_INITIALIZER"}}]},"Data":{"__symbolic":"interface"},"LoadChildren":{"__symbolic":"interface"},"LoadChildrenCallback":{"__symbolic":"interface"},"ResolveData":{"__symbolic":"interface"},"Route":{"__symbolic":"interface"},"Routes":{"__symbolic":"interface"},"RunGuardsAndResolvers":{"__symbolic":"interface"},"UrlMatchResult":{"__symbolic":"interface"},"UrlMatcher":{"__symbolic":"interface"},"RouterLink":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":113,"character":1},"arguments":[{"selector":":not(a):not(area)[routerLink]"}]}],"members":{"queryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":3}}]}],"fragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":118,"character":3}}]}],"queryParamsHandling":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":120,"character":3}}]}],"preserveFragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":3}}]}],"skipLocationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":3}}]}],"replaceUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":127,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":134,"character":7},"arguments":["tabindex"]}],null,null],"parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","name":"ActivatedRoute"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":134,"character":57},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":134,"character":72}]}],"routerLink":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":140,"character":3}}]}],"preserveQueryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":152,"character":3}}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":160,"character":3},"arguments":["click"]}]}]}},"RouterLinkWithHref":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":193,"character":1},"arguments":[{"selector":"a[routerLink],area[routerLink]"}]}],"members":{"target":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":196,"character":3},"arguments":["attr.target"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":196,"character":31}}]}],"queryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":198,"character":3}}]}],"fragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":200,"character":3}}]}],"queryParamsHandling":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":202,"character":3}}]}],"preserveFragment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":204,"character":3}}]}],"skipLocationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":206,"character":3}}]}],"replaceUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":208,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":209,"character":3}}]}],"href":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":217,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","name":"ActivatedRoute"},{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":221,"character":32}]}],"routerLink":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":229,"character":3}}]}],"preserveQueryParams":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":238,"character":3}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":249,"character":3},"arguments":["click",["$event.button","$event.ctrlKey","$event.metaKey","$event.shiftKey"]]}]}],"updateTargetUrlAndHref":[{"__symbolic":"method"}]}},"RouterLinkActive":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":74,"character":1},"arguments":[{"selector":"[routerLinkActive]","exportAs":"routerLinkActive"}]}],"members":{"links":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":81,"character":3},"arguments":[{"__symbolic":"reference","name":"RouterLink"},{"descendants":true}]}]}],"linksWithHrefs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":84,"character":3},"arguments":[{"__symbolic":"reference","name":"RouterLinkWithHref"},{"descendants":true}]}]}],"routerLinkActiveOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":91,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":94,"character":47},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":94,"character":77},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":95,"character":19}]}],"ngAfterContentInit":[{"__symbolic":"method"}],"routerLinkActive":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":110,"character":3}}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"isLinkActive":[{"__symbolic":"method"}],"hasActiveLinks":[{"__symbolic":"method"}]}},"RouterOutlet":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":38,"character":1},"arguments":[{"selector":"router-outlet","exportAs":"outlet"}]}],"members":{"activateEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3},"arguments":["activate"]}]}],"deactivateEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3},"arguments":["deactivate"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":49,"character":51},"arguments":["name"]}],null],"parameters":[{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":48,"character":72},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":49,"character":24},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":50,"character":30}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"detach":[{"__symbolic":"method"}],"attach":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"activateWith":[{"__symbolic":"method"}]}},"ActivationEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ActivationStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ChildActivationEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ChildActivationStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"Event":{"__symbolic":"interface"},"GuardsCheckEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"},{"__symbolic":"reference","name":"boolean"}]}],"toString":[{"__symbolic":"method"}]}},"GuardsCheckStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationCancel":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationError":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"}]}],"toString":[{"__symbolic":"method"}]}},"NavigationStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":93,"character":25,"module":"./src/events"},{"__symbolic":"error","message":"Expression form not supported","line":95,"character":21,"module":"./src/events"}]}],"toString":[{"__symbolic":"method"}]}},"ResolveEnd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ResolveStart":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"RouteConfigLoadEnd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Route"}]}],"toString":[{"__symbolic":"method"}]}},"RouteConfigLoadStart":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Route"}]}],"toString":[{"__symbolic":"method"}]}},"RouterEvent":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"}]}]}},"RoutesRecognized":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"RouterEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"Scroll":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"NavigationEnd"},{"__symbolic":"error","message":"Expression form not supported","line":420,"character":25,"module":"./src/events"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"CanActivate":{"__symbolic":"interface"},"CanActivateChild":{"__symbolic":"interface"},"CanDeactivate":{"__symbolic":"interface"},"CanLoad":{"__symbolic":"interface"},"Resolve":{"__symbolic":"interface"},"DetachedRouteHandle":{"__symbolic":"interface"},"RouteReuseStrategy":{"__symbolic":"class","members":{"shouldDetach":[{"__symbolic":"method"}],"store":[{"__symbolic":"method"}],"shouldAttach":[{"__symbolic":"method"}],"retrieve":[{"__symbolic":"method"}],"shouldReuseRoute":[{"__symbolic":"method"}]}},"Navigation":{"__symbolic":"interface"},"NavigationExtras":{"__symbolic":"interface"},"Router":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"UrlSerializer"},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":400,"character":70},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":400,"character":90},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":401,"character":14},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":401,"character":47},{"__symbolic":"reference","name":"Routes"}]}],"setupNavigations":[{"__symbolic":"method"}],"resetRootComponentType":[{"__symbolic":"method"}],"getTransition":[{"__symbolic":"method"}],"setTransition":[{"__symbolic":"method"}],"initialNavigation":[{"__symbolic":"method"}],"setUpLocationChangeListener":[{"__symbolic":"method"}],"getCurrentNavigation":[{"__symbolic":"method"}],"triggerEvent":[{"__symbolic":"method"}],"resetConfig":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"createUrlTree":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}],"navigate":[{"__symbolic":"method"}],"serializeUrl":[{"__symbolic":"method"}],"parseUrl":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"removeEmptyProps":[{"__symbolic":"method"}],"processNavigations":[{"__symbolic":"method"}],"scheduleNavigation":[{"__symbolic":"method"}],"setBrowserUrl":[{"__symbolic":"method"}],"resetStateAndUrl":[{"__symbolic":"method"}],"resetUrlToCurrentUrlTree":[{"__symbolic":"method"}]}},"ROUTES":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":18,"character":26},"arguments":["ROUTES"]},"ExtraOptions":{"__symbolic":"interface"},"ROUTER_CONFIGURATION":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":49,"character":40},"arguments":["ROUTER_CONFIGURATION"]},"ROUTER_INITIALIZER":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":610,"character":8},"arguments":["Router Initializer"]},"RouterModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":132,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"RouterOutlet"},{"__symbolic":"reference","name":"RouterLink"},{"__symbolic":"reference","name":"RouterLinkWithHref"},{"__symbolic":"reference","name":"RouterLinkActive"},{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}],"exports":[{"__symbolic":"reference","name":"RouterOutlet"},{"__symbolic":"reference","name":"RouterLink"},{"__symbolic":"reference","name":"RouterLinkWithHref"},{"__symbolic":"reference","name":"RouterLinkActive"},{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}],"entryComponents":[{"__symbolic":"reference","name":"ɵEmptyOutletComponent"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":139,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":139,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_a"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":139,"character":69}}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"Router"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["routes","config"],"value":{"ngModule":{"__symbolic":"reference","name":"RouterModule"},"providers":[{"__symbolic":"reference","name":"ɵROUTER_PROVIDERS"},{"__symbolic":"call","expression":{"__symbolic":"reference","name":"provideRoutes"},"arguments":[{"__symbolic":"reference","name":"routes"}]},{"provide":{"__symbolic":"reference","name":"ɵangular_packages_router_router_a"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_e"},"deps":[[{"__symbolic":"reference","name":"Router"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":180,"character":30}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":180,"character":46}}]]},{"provide":{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},"useValue":{"__symbolic":"if","condition":{"__symbolic":"reference","name":"config"},"thenExpression":{"__symbolic":"reference","name":"config"},"elseExpression":{}}},{"provide":{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":184,"character":19},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_d"},"deps":[{"__symbolic":"reference","module":"@angular/common","name":"PlatformLocation","line":187,"character":12},[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":187,"character":35},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"APP_BASE_HREF","line":187,"character":42}]},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":187,"character":62}}],{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"}]},{"provide":{"__symbolic":"reference","name":"ɵangular_packages_router_router_n"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_c"},"deps":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/common","name":"ViewportScroller","line":193,"character":25},{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"}]},{"provide":{"__symbolic":"reference","name":"PreloadingStrategy"},"useExisting":{"__symbolic":"if","condition":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"config"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"preloadingStrategy"}},"thenExpression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"preloadingStrategy"},"elseExpression":{"__symbolic":"reference","name":"NoPreloading"}}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"NgProbeToken","line":200,"character":18},"multi":true,"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_b"}},{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_router_router_k"}}]}},"forChild":{"__symbolic":"function","parameters":["routes"],"value":{"ngModule":{"__symbolic":"reference","name":"RouterModule"},"providers":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"provideRoutes"},"arguments":[{"__symbolic":"reference","name":"routes"}]}]}}}},"provideRoutes":{"__symbolic":"function","parameters":["routes"],"value":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":256,"character":14},"multi":true,"useValue":{"__symbolic":"reference","name":"routes"}},{"provide":{"__symbolic":"reference","name":"ROUTES"},"multi":true,"useValue":{"__symbolic":"reference","name":"routes"}}]},"ChildrenOutletContexts":{"__symbolic":"class","members":{"onChildOutletCreated":[{"__symbolic":"method"}],"onChildOutletDestroyed":[{"__symbolic":"method"}],"onOutletDeactivated":[{"__symbolic":"method"}],"onOutletReAttached":[{"__symbolic":"method"}],"getOrCreateContext":[{"__symbolic":"method"}],"getContext":[{"__symbolic":"method"}]}},"OutletContext":{"__symbolic":"class","members":{}},"NoPreloading":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"PreloadAllModules":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"PreloadingStrategy":{"__symbolic":"class","members":{"preload":[{"__symbolic":"method"}]}},"RouterPreloader":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":71,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":78,"character":44},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":78,"character":77},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":79,"character":24},{"__symbolic":"reference","name":"PreloadingStrategy"}]}],"setUpPreloading":[{"__symbolic":"method"}],"preload":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"processRoutes":[{"__symbolic":"method"}],"preloadConfig":[{"__symbolic":"method"}]}},"ActivatedRoute":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"Data"}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"ActivatedRouteSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"ActivatedRouteSnapshot":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"UrlSegment"}]},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Data"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"Type","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"Route"},{"__symbolic":"reference","name":"UrlSegmentGroup"},{"__symbolic":"reference","name":"number"},{"__symbolic":"reference","name":"ResolveData"}]}],"toString":[{"__symbolic":"method"}]}},"RouterState":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵangular_packages_router_router_l"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"},{"__symbolic":"reference","name":"RouterStateSnapshot"}]}],"toString":[{"__symbolic":"method"}]}},"RouterStateSnapshot":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵangular_packages_router_router_l"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}],"toString":[{"__symbolic":"method"}]}},"PRIMARY_OUTLET":"primary","ParamMap":{"__symbolic":"interface"},"Params":{"__symbolic":"interface"},"convertToParamMap":{"__symbolic":"function","parameters":["params"],"value":{"__symbolic":"error","message":"Reference to non-exported class","line":62,"character":0,"context":{"className":"ParamsAsMap"},"module":"./src/shared"}},"UrlHandlingStrategy":{"__symbolic":"class","members":{"shouldProcessUrl":[{"__symbolic":"method"}],"extract":[{"__symbolic":"method"}],"merge":[{"__symbolic":"method"}]}},"DefaultUrlSerializer":{"__symbolic":"class","members":{"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}},"UrlSegment":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":204,"character":25,"module":"./src/url_tree"}]}],"toString":[{"__symbolic":"method"}]}},"UrlSegmentGroup":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"UrlSegment"}]},{"__symbolic":"error","message":"Expression form not supported","line":153,"character":23,"module":"./src/url_tree"}]}],"hasChildren":[{"__symbolic":"method"}],"toString":[{"__symbolic":"method"}]}},"UrlSerializer":{"__symbolic":"class","members":{"parse":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}]}},"UrlTree":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UrlSegmentGroup"},{"__symbolic":"reference","name":"Params"},{"__symbolic":"reference","name":"string"}]}],"toString":[{"__symbolic":"method"}]}},"VERSION":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Version","line":19,"character":27},"arguments":["7.2.14"]},"ɵEmptyOutletComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":19,"character":1},"arguments":[{"template":"<router-outlet></router-outlet>"}]}],"members":{}},"ɵROUTER_PROVIDERS":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":57,"character":2},{"provide":{"__symbolic":"reference","name":"UrlSerializer"},"useClass":{"__symbolic":"reference","name":"DefaultUrlSerializer"}},{"provide":{"__symbolic":"reference","name":"Router"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_f"},"deps":[{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":63,"character":6},{"__symbolic":"reference","name":"UrlSerializer"},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":63,"character":61},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":63,"character":71},{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":64,"character":6},{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":64,"character":29},{"__symbolic":"reference","name":"ROUTES"},{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},[{"__symbolic":"reference","name":"UrlHandlingStrategy"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":65,"character":32}}],[{"__symbolic":"reference","name":"RouteReuseStrategy"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":65,"character":70}}]]},{"__symbolic":"reference","name":"ChildrenOutletContexts"},{"provide":{"__symbolic":"reference","name":"ActivatedRoute"},"useFactory":{"__symbolic":"reference","name":"ɵangular_packages_router_router_g"},"deps":[{"__symbolic":"reference","name":"Router"}]},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":70,"character":12},"useClass":{"__symbolic":"reference","module":"@angular/core","name":"SystemJsNgModuleLoader","line":70,"character":45}},{"__symbolic":"reference","name":"RouterPreloader"},{"__symbolic":"reference","name":"NoPreloading"},{"__symbolic":"reference","name":"PreloadAllModules"},{"provide":{"__symbolic":"reference","name":"ROUTER_CONFIGURATION"},"useValue":{"enableTracing":false}}],"ɵflatten":{"__symbolic":"function","parameters":["arr"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Array"},"member":"prototype"},"member":"concat"},"member":"apply"},"arguments":[[],{"__symbolic":"reference","name":"arr"}]}},"ɵangular_packages_router_router_l":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}],"parent":[{"__symbolic":"method"}],"children":[{"__symbolic":"method"}],"firstChild":[{"__symbolic":"method"}],"siblings":[{"__symbolic":"method"}],"pathFromRoot":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_m":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":86,"character":28,"context":{"typeName":"T"},"module":"./src/utils/tree"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"ɵangular_packages_router_router_m"}]}]}],"toString":[{"__symbolic":"method"}]}},"ɵangular_packages_router_router_n":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Router"},{"__symbolic":"reference","module":"@angular/common","name":"ViewportScroller","line":28,"character":64},{"__symbolic":"error","message":"Expression form not supported","line":28,"character":99,"module":"./src/router_scroller"}]}],"init":[{"__symbolic":"method"}],"createScrollEvents":[{"__symbolic":"method"}],"consumeScrollEvents":[{"__symbolic":"method"}],"scheduleScrollEvent":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"ɵangular_packages_router_router_a":"./src/router_module","ɵangular_packages_router_router_b":"./src/router_module","ɵangular_packages_router_router_c":"./src/router_module","ɵangular_packages_router_router_d":"./src/router_module","ɵangular_packages_router_router_e":"./src/router_module","ɵangular_packages_router_router_f":"./src/router_module","ɵangular_packages_router_router_g":"./src/router_module","ɵangular_packages_router_router_h":"./src/router_module","ɵangular_packages_router_router_i":"./src/router_module","ɵangular_packages_router_router_j":"./src/router_module","ɵangular_packages_router_router_k":"./src/router_module","Data":"./src/config","LoadChildren":"./src/config","LoadChildrenCallback":"./src/config","ResolveData":"./src/config","Route":"./src/config","Routes":"./src/config","RunGuardsAndResolvers":"./src/config","UrlMatchResult":"./src/config","UrlMatcher":"./src/config","RouterLink":"./src/directives/router_link","RouterLinkWithHref":"./src/directives/router_link","RouterLinkActive":"./src/directives/router_link_active","RouterOutlet":"./src/directives/router_outlet","ActivationEnd":"./src/events","ActivationStart":"./src/events","ChildActivationEnd":"./src/events","ChildActivationStart":"./src/events","Event":"./src/events","GuardsCheckEnd":"./src/events","GuardsCheckStart":"./src/events","NavigationCancel":"./src/events","NavigationEnd":"./src/events","NavigationError":"./src/events","NavigationStart":"./src/events","ResolveEnd":"./src/events","ResolveStart":"./src/events","RouteConfigLoadEnd":"./src/events","RouteConfigLoadStart":"./src/events","RouterEvent":"./src/events","RoutesRecognized":"./src/events","Scroll":"./src/events","CanActivate":"./src/interfaces","CanActivateChild":"./src/interfaces","CanDeactivate":"./src/interfaces","CanLoad":"./src/interfaces","Resolve":"./src/interfaces","DetachedRouteHandle":"./src/route_reuse_strategy","RouteReuseStrategy":"./src/route_reuse_strategy","Navigation":"./src/router","NavigationExtras":"./src/router","Router":"./src/router","ROUTES":"./src/router_config_loader","ExtraOptions":"./src/router_module","ROUTER_CONFIGURATION":"./src/router_module","ROUTER_INITIALIZER":"./src/router_module","RouterModule":"./src/router_module","provideRoutes":"./src/router_module","ChildrenOutletContexts":"./src/router_outlet_context","OutletContext":"./src/router_outlet_context","NoPreloading":"./src/router_preloader","PreloadAllModules":"./src/router_preloader","PreloadingStrategy":"./src/router_preloader","RouterPreloader":"./src/router_preloader","ActivatedRoute":"./src/router_state","ActivatedRouteSnapshot":"./src/router_state","RouterState":"./src/router_state","RouterStateSnapshot":"./src/router_state","PRIMARY_OUTLET":"./src/shared","ParamMap":"./src/shared","Params":"./src/shared","convertToParamMap":"./src/shared","UrlHandlingStrategy":"./src/url_handling_strategy","DefaultUrlSerializer":"./src/url_tree","UrlSegment":"./src/url_tree","UrlSegmentGroup":"./src/url_tree","UrlSerializer":"./src/url_tree","UrlTree":"./src/url_tree","VERSION":"./src/version","ɵEmptyOutletComponent":"./src/components/empty_outlet","ɵROUTER_PROVIDERS":"./src/router_module","ɵflatten":"./src/utils/collection","ɵangular_packages_router_router_l":"./src/utils/tree","ɵangular_packages_router_router_m":"./src/utils/tree","ɵangular_packages_router_router_n":"./src/router_scroller"},"importAs":"@angular/router"}
package/src/config.d.ts CHANGED
@@ -347,7 +347,7 @@ export declare type RunGuardsAndResolvers = 'pathParamsChange' | 'pathParamsOrQu
347
347
  export interface Route {
348
348
  /**
349
349
  * The path to match against, a URL string that uses router matching notation.
350
- * Can include wild-card characters (*). [where is that defined?]
350
+ * Can be a wild card (`**`) that matches any URL (see Usage Notes below).
351
351
  * Default is "/" (the root path).
352
352
  */
353
353
  path?: string;
@@ -358,6 +358,7 @@ export interface Route {
358
358
  * By default, the router checks URL elements from the left to see if the URL
359
359
  * matches a given path, and stops when there is a match. For example,
360
360
  * '/team/11/user' matches 'team/:id'.
361
+ *
361
362
  * The path-match strategy 'full' matches against the entire URL.
362
363
  * It is important to do this when redirecting empty-path routes.
363
364
  * Otherwise, because an empty path is a prefix of any URL,
@@ -244,7 +244,7 @@ export declare type CanDeactivateFn<T> = (component: T, currentRoute: ActivatedR
244
244
  /**
245
245
  * @description
246
246
  *
247
- * Interface that class can implement to be a data provider.
247
+ * Interface that classes can implement to be a data provider.
248
248
  *
249
249
  * ```
250
250
  * class Backend {
@@ -86,18 +86,32 @@ export declare class RouterModule {
86
86
  * Creates a module with all the router providers and directives. It also optionally sets up an
87
87
  * application listener to perform an initial navigation.
88
88
  *
89
- * Options (see `ExtraOptions`):
90
- * * `enableTracing` makes the router log all its internal events to the console.
91
- * * `useHash` enables the location strategy that uses the URL fragment instead of the history
89
+ * Configuration Options:
90
+ *
91
+ * * `enableTracing` Toggles whether the router should log all navigation events to the console.
92
+ * * `useHash` Enables the location strategy that uses the URL fragment instead of the history
92
93
  * API.
93
- * * `initialNavigation` disables the initial navigation.
94
- * * `errorHandler` provides a custom error handler.
95
- * * `preloadingStrategy` configures a preloading strategy (see `PreloadAllModules`).
96
- * * `onSameUrlNavigation` configures how the router handles navigation to the current URL. See
97
- * `ExtraOptions` for more details.
98
- * * `paramsInheritanceStrategy` defines how the router merges params, data and resolved data
99
- * from parent to child routes.
100
- */
94
+ * * `initialNavigation` Disables the initial navigation.
95
+ * * `errorHandler` Defines a custom error handler for failed navigations.
96
+ * * `preloadingStrategy` Configures a preloading strategy. See `PreloadAllModules`.
97
+ * * `onSameUrlNavigation` Define what the router should do if it receives a navigation request to
98
+ * the current URL.
99
+ * * `scrollPositionRestoration` Configures if the scroll position needs to be restored when
100
+ * navigating back.
101
+ * * `anchorScrolling` Configures if the router should scroll to the element when the url has a
102
+ * fragment.
103
+ * * `scrollOffset` Configures the scroll offset the router will use when scrolling to an element.
104
+ * * `paramsInheritanceStrategy` Defines how the router merges params, data and resolved data from
105
+ * parent to child routes.
106
+ * * `malformedUriErrorHandler` Defines a custom malformed uri error handler function. This
107
+ * handler is invoked when encodedURI contains invalid character sequences.
108
+ * * `urlUpdateStrategy` Defines when the router updates the browser URL. The default behavior is
109
+ * to update after successful navigation.
110
+ * * `relativeLinkResolution` Enables the correct relative link resolution in components with
111
+ * empty paths.
112
+ *
113
+ * See `ExtraOptions` for more details about the above options.
114
+ */
101
115
  static forRoot(routes: Routes, config?: ExtraOptions): ModuleWithProviders<RouterModule>;
102
116
  /**
103
117
  * Creates a module with all the router directives and a provider registering routes.
@@ -190,51 +204,34 @@ export interface ExtraOptions {
190
204
  /**
191
205
  * Configures if the scroll position needs to be restored when navigating back.
192
206
  *
193
- * * 'disabled'--does nothing (default).
194
- * * 'top'--set the scroll position to 0,0..
195
- * * 'enabled'--set the scroll position to the stored position. This option will be the default in
196
- * the future.
197
- *
198
- * When enabled, the router stores and restores scroll positions during navigation.
199
- * When navigating forward, the scroll position will be set to [0, 0], or to the anchor
200
- * if one is provided.
207
+ * * 'disabled'--does nothing (default). Scroll position will be maintained on navigation.
208
+ * * 'top'--set the scroll position to x = 0, y = 0 on all navigation.
209
+ * * 'enabled'--restores the previous scroll position on backward navigation, else sets the
210
+ * position to the anchor if one is provided, or sets the scroll position to [0, 0] (forward
211
+ * navigation). This option will be the default in the future.
201
212
  *
202
- * You can implement custom scroll restoration behavior as follows.
213
+ * You can implement custom scroll restoration behavior by adapting the enabled behavior as
214
+ * follows:
203
215
  * ```typescript
204
216
  * class AppModule {
205
- * constructor(router: Router, viewportScroller: ViewportScroller, store: Store<AppState>) {
206
- * router.events.pipe(filter(e => e instanceof Scroll), switchMap(e => {
207
- * return store.pipe(first(), timeout(200), map(() => e));
208
- * }).subscribe(e => {
209
- * if (e.position) {
210
- * viewportScroller.scrollToPosition(e.position);
211
- * } else if (e.anchor) {
212
- * viewportScroller.scrollToAnchor(e.anchor);
213
- * } else {
214
- * viewportScroller.scrollToPosition([0, 0]);
215
- * }
216
- * });
217
- * }
218
- * }
219
- * ```
220
- *
221
- * You can also implement component-specific scrolling like this:
222
- *
223
- * ```typescript
224
- * class ListComponent {
225
- * list: any[];
226
- * constructor(router: Router, viewportScroller: ViewportScroller, fetcher: ListFetcher) {
227
- * const scrollEvents = router.events.filter(e => e instanceof Scroll);
228
- * listFetcher.fetch().pipe(withLatestFrom(scrollEvents)).subscribe(([list, e]) => {
229
- * this.list = list;
230
- * if (e.position) {
231
- * viewportScroller.scrollToPosition(e.position);
232
- * } else {
233
- * viewportScroller.scrollToPosition([0, 0]);
234
- * }
235
- * });
236
- * }
237
- * }
217
+ * constructor(router: Router, viewportScroller: ViewportScroller) {
218
+ * router.events.pipe(
219
+ * filter((e: Event): e is Scroll => e instanceof Scroll)
220
+ * ).subscribe(e => {
221
+ * if (e.position) {
222
+ * // backward navigation
223
+ * viewportScroller.scrollToPosition(e.position);
224
+ * } else if (e.anchor) {
225
+ * // anchor navigation
226
+ * viewportScroller.scrollToAnchor(e.anchor);
227
+ * } else {
228
+ * // forward navigation
229
+ * viewportScroller.scrollToPosition([0, 0]);
230
+ * }
231
+ * });
232
+ * }
233
+ * }
234
+ * ```
238
235
  */
239
236
  scrollPositionRestoration?: 'disabled' | 'enabled' | 'top';
240
237
  /**
@@ -56,10 +56,10 @@ export declare function createEmptyStateSnapshot(urlTree: UrlTree, rootComponent
56
56
  * @Component({...})
57
57
  * class MyComponent {
58
58
  * constructor(route: ActivatedRoute) {
59
- * const id: Observable<string> = route.params.map(p => p.id);
60
- * const url: Observable<string> = route.url.map(segments => segments.join(''));
59
+ * const id: Observable<string> = route.params.pipe(map(p => p.id));
60
+ * const url: Observable<string> = route.url.pipe(map(segments => segments.join('')));
61
61
  * // route.data includes both `data` and `resolve`
62
- * const user = route.data.map(d => d.user);
62
+ * const user = route.data.pipe(map(d => d.user));
63
63
  * }
64
64
  * }
65
65
  * ```
package/testing.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.10
2
+ * @license Angular v7.2.14
3
3
  * (c) 2010-2019 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/upgrade.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.10
2
+ * @license Angular v7.2.14
3
3
  * (c) 2010-2019 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */