` parent tag\n * when the URL is either '/user/jim' or '/user/bob'.\n *\n * ```\n *
\n * ```\n *\n * The `RouterLinkActive` directive can also be used to set the aria-current attribute\n * to provide an alternative distinction for active elements to visually impaired users.\n *\n * For example, the following code adds the 'active' class to the Home Page link when it is\n * indeed active and in such case also sets its aria-current attribute to 'page':\n *\n * ```\n *
Home Page\n * ```\n *\n * @ngModule RouterModule\n *\n * @publicApi\n */\nlet RouterLinkActive = /*#__PURE__*/(() => {\n class RouterLinkActive {\n get isActive() {\n return this._isActive;\n }\n constructor(router, element, renderer, cdr, link) {\n this.router = router;\n this.element = element;\n this.renderer = renderer;\n this.cdr = cdr;\n this.link = link;\n this.classes = [];\n this._isActive = false;\n /**\n * Options to configure how to determine if the router link is active.\n *\n * These options are passed to the `Router.isActive()` function.\n *\n * @see {@link Router#isActive}\n */\n this.routerLinkActiveOptions = {\n exact: false\n };\n /**\n *\n * You can use the output `isActiveChange` to get notified each time the link becomes\n * active or inactive.\n *\n * Emits:\n * true -> Route is active\n * false -> Route is inactive\n *\n * ```\n *
Bob\n * ```\n */\n this.isActiveChange = new EventEmitter();\n this.routerEventsSubscription = router.events.subscribe(s => {\n if (s instanceof NavigationEnd) {\n this.update();\n }\n });\n }\n /** @nodoc */\n ngAfterContentInit() {\n // `of(null)` is used to force subscribe body to execute once immediately (like `startWith`).\n of(this.links.changes, of(null)).pipe(mergeAll()).subscribe(_ => {\n this.update();\n this.subscribeToEachLinkOnChanges();\n });\n }\n subscribeToEachLinkOnChanges() {\n this.linkInputChangesSubscription?.unsubscribe();\n const allLinkChanges = [...this.links.toArray(), this.link].filter(link => !!link).map(link => link.onChanges);\n this.linkInputChangesSubscription = from(allLinkChanges).pipe(mergeAll()).subscribe(link => {\n if (this._isActive !== this.isLinkActive(this.router)(link)) {\n this.update();\n }\n });\n }\n set routerLinkActive(data) {\n const classes = Array.isArray(data) ? data : data.split(' ');\n this.classes = classes.filter(c => !!c);\n }\n /** @nodoc */\n ngOnChanges(changes) {\n this.update();\n }\n /** @nodoc */\n ngOnDestroy() {\n this.routerEventsSubscription.unsubscribe();\n this.linkInputChangesSubscription?.unsubscribe();\n }\n update() {\n if (!this.links || !this.router.navigated) return;\n queueMicrotask(() => {\n const hasActiveLinks = this.hasActiveLinks();\n this.classes.forEach(c => {\n if (hasActiveLinks) {\n this.renderer.addClass(this.element.nativeElement, c);\n } else {\n this.renderer.removeClass(this.element.nativeElement, c);\n }\n });\n if (hasActiveLinks && this.ariaCurrentWhenActive !== undefined) {\n this.renderer.setAttribute(this.element.nativeElement, 'aria-current', this.ariaCurrentWhenActive.toString());\n } else {\n this.renderer.removeAttribute(this.element.nativeElement, 'aria-current');\n }\n // Only emit change if the active state changed.\n if (this._isActive !== hasActiveLinks) {\n this._isActive = hasActiveLinks;\n this.cdr.markForCheck();\n // Emit on isActiveChange after classes are updated\n this.isActiveChange.emit(hasActiveLinks);\n }\n });\n }\n isLinkActive(router) {\n const options = isActiveMatchOptions(this.routerLinkActiveOptions) ? this.routerLinkActiveOptions :\n // While the types should disallow `undefined` here, it's possible without strict inputs\n this.routerLinkActiveOptions.exact || false;\n return link => {\n const urlTree = link.urlTree;\n return urlTree ? router.isActive(urlTree, options) : false;\n };\n }\n hasActiveLinks() {\n const isActiveCheckFn = this.isLinkActive(this.router);\n return this.link && isActiveCheckFn(this.link) || this.links.some(isActiveCheckFn);\n }\n static {\n this.ɵfac = function RouterLinkActive_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || RouterLinkActive)(i0.ɵɵdirectiveInject(Router), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(RouterLink, 8));\n };\n }\n static {\n this.ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: RouterLinkActive,\n selectors: [[\"\", \"routerLinkActive\", \"\"]],\n contentQueries: function RouterLinkActive_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, RouterLink, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.links = _t);\n }\n },\n inputs: {\n routerLinkActiveOptions: \"routerLinkActiveOptions\",\n ariaCurrentWhenActive: \"ariaCurrentWhenActive\",\n routerLinkActive: \"routerLinkActive\"\n },\n outputs: {\n isActiveChange: \"isActiveChange\"\n },\n exportAs: [\"routerLinkActive\"],\n standalone: true,\n features: [i0.ɵɵNgOnChangesFeature]\n });\n }\n }\n return RouterLinkActive;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * Use instead of `'paths' in options` to be compatible with property renaming\n */\nfunction isActiveMatchOptions(options) {\n return !!options.paths;\n}\n\n/**\n * @description\n *\n * Provides a preloading strategy.\n *\n * @publicApi\n */\nclass PreloadingStrategy {}\n/**\n * @description\n *\n * Provides a preloading strategy that preloads all modules as quickly as possible.\n *\n * ```\n * RouterModule.forRoot(ROUTES, {preloadingStrategy: PreloadAllModules})\n * ```\n *\n * @publicApi\n */\nlet PreloadAllModules = /*#__PURE__*/(() => {\n class PreloadAllModules {\n preload(route, fn) {\n return fn().pipe(catchError(() => of(null)));\n }\n static {\n this.ɵfac = function PreloadAllModules_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || PreloadAllModules)();\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: PreloadAllModules,\n factory: PreloadAllModules.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return PreloadAllModules;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * @description\n *\n * Provides a preloading strategy that does not preload any modules.\n *\n * This strategy is enabled by default.\n *\n * @publicApi\n */\nlet NoPreloading = /*#__PURE__*/(() => {\n class NoPreloading {\n preload(route, fn) {\n return of(null);\n }\n static {\n this.ɵfac = function NoPreloading_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NoPreloading)();\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NoPreloading,\n factory: NoPreloading.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return NoPreloading;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * The preloader optimistically loads all router configurations to\n * make navigations into lazily-loaded sections of the application faster.\n *\n * The preloader runs in the background. When the router bootstraps, the preloader\n * starts listening to all navigation events. After every such event, the preloader\n * will check if any configurations can be loaded lazily.\n *\n * If a route is protected by `canLoad` guards, the preloaded will not load it.\n *\n * @publicApi\n */\nlet RouterPreloader = /*#__PURE__*/(() => {\n class RouterPreloader {\n constructor(router, compiler, injector, preloadingStrategy, loader) {\n this.router = router;\n this.injector = injector;\n this.preloadingStrategy = preloadingStrategy;\n this.loader = loader;\n }\n setUpPreloading() {\n this.subscription = this.router.events.pipe(filter(e => e instanceof NavigationEnd), concatMap(() => this.preload())).subscribe(() => {});\n }\n preload() {\n return this.processRoutes(this.injector, this.router.config);\n }\n /** @nodoc */\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n processRoutes(injector, routes) {\n const res = [];\n for (const route of routes) {\n if (route.providers && !route._injector) {\n route._injector = createEnvironmentInjector(route.providers, injector, `Route: ${route.path}`);\n }\n const injectorForCurrentRoute = route._injector ?? injector;\n const injectorForChildren = route._loadedInjector ?? injectorForCurrentRoute;\n // Note that `canLoad` is only checked as a condition that prevents `loadChildren` and not\n // `loadComponent`. `canLoad` guards only block loading of child routes by design. This\n // happens as a consequence of needing to descend into children for route matching immediately\n // while component loading is deferred until route activation. Because `canLoad` guards can\n // have side effects, we cannot execute them here so we instead skip preloading altogether\n // when present. Lastly, it remains to be decided whether `canLoad` should behave this way\n // at all. Code splitting and lazy loading is separate from client-side authorization checks\n // and should not be used as a security measure to prevent loading of code.\n if (route.loadChildren && !route._loadedRoutes && route.canLoad === undefined || route.loadComponent && !route._loadedComponent) {\n res.push(this.preloadConfig(injectorForCurrentRoute, route));\n }\n if (route.children || route._loadedRoutes) {\n res.push(this.processRoutes(injectorForChildren, route.children ?? route._loadedRoutes));\n }\n }\n return from(res).pipe(mergeAll());\n }\n preloadConfig(injector, route) {\n return this.preloadingStrategy.preload(route, () => {\n let loadedChildren$;\n if (route.loadChildren && route.canLoad === undefined) {\n loadedChildren$ = this.loader.loadChildren(injector, route);\n } else {\n loadedChildren$ = of(null);\n }\n const recursiveLoadChildren$ = loadedChildren$.pipe(mergeMap(config => {\n if (config === null) {\n return of(void 0);\n }\n route._loadedRoutes = config.routes;\n route._loadedInjector = config.injector;\n // If the loaded config was a module, use that as the module/module injector going\n // forward. Otherwise, continue using the current module/module injector.\n return this.processRoutes(config.injector ?? injector, config.routes);\n }));\n if (route.loadComponent && !route._loadedComponent) {\n const loadComponent$ = this.loader.loadComponent(route);\n return from([recursiveLoadChildren$, loadComponent$]).pipe(mergeAll());\n } else {\n return recursiveLoadChildren$;\n }\n });\n }\n static {\n this.ɵfac = function RouterPreloader_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || RouterPreloader)(i0.ɵɵinject(Router), i0.ɵɵinject(i0.Compiler), i0.ɵɵinject(i0.EnvironmentInjector), i0.ɵɵinject(PreloadingStrategy), i0.ɵɵinject(RouterConfigLoader));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: RouterPreloader,\n factory: RouterPreloader.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return RouterPreloader;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nconst ROUTER_SCROLLER = /*#__PURE__*/new InjectionToken('');\nlet RouterScroller = /*#__PURE__*/(() => {\n class RouterScroller {\n /** @nodoc */\n constructor(urlSerializer, transitions, viewportScroller, zone, options = {}) {\n this.urlSerializer = urlSerializer;\n this.transitions = transitions;\n this.viewportScroller = viewportScroller;\n this.zone = zone;\n this.options = options;\n this.lastId = 0;\n this.lastSource = 'imperative';\n this.restoredId = 0;\n this.store = {};\n // Default both options to 'disabled'\n options.scrollPositionRestoration ||= 'disabled';\n options.anchorScrolling ||= 'disabled';\n }\n init() {\n // we want to disable the automatic scrolling because having two places\n // responsible for scrolling results race conditions, especially given\n // that browser don't implement this behavior consistently\n if (this.options.scrollPositionRestoration !== 'disabled') {\n this.viewportScroller.setHistoryScrollRestoration('manual');\n }\n this.routerEventsSubscription = this.createScrollEvents();\n this.scrollEventsSubscription = this.consumeScrollEvents();\n }\n createScrollEvents() {\n return this.transitions.events.subscribe(e => {\n if (e instanceof NavigationStart) {\n // store the scroll position of the current stable navigations.\n this.store[this.lastId] = this.viewportScroller.getScrollPosition();\n this.lastSource = e.navigationTrigger;\n this.restoredId = e.restoredState ? e.restoredState.navigationId : 0;\n } else if (e instanceof NavigationEnd) {\n this.lastId = e.id;\n this.scheduleScrollEvent(e, this.urlSerializer.parse(e.urlAfterRedirects).fragment);\n } else if (e instanceof NavigationSkipped && e.code === NavigationSkippedCode.IgnoredSameUrlNavigation) {\n this.lastSource = undefined;\n this.restoredId = 0;\n this.scheduleScrollEvent(e, this.urlSerializer.parse(e.url).fragment);\n }\n });\n }\n consumeScrollEvents() {\n return this.transitions.events.subscribe(e => {\n if (!(e instanceof Scroll)) return;\n // a popstate event. The pop state event will always ignore anchor scrolling.\n if (e.position) {\n if (this.options.scrollPositionRestoration === 'top') {\n this.viewportScroller.scrollToPosition([0, 0]);\n } else if (this.options.scrollPositionRestoration === 'enabled') {\n this.viewportScroller.scrollToPosition(e.position);\n }\n // imperative navigation \"forward\"\n } else {\n if (e.anchor && this.options.anchorScrolling === 'enabled') {\n this.viewportScroller.scrollToAnchor(e.anchor);\n } else if (this.options.scrollPositionRestoration !== 'disabled') {\n this.viewportScroller.scrollToPosition([0, 0]);\n }\n }\n });\n }\n scheduleScrollEvent(routerEvent, anchor) {\n this.zone.runOutsideAngular(() => {\n // The scroll event needs to be delayed until after change detection. Otherwise, we may\n // attempt to restore the scroll position before the router outlet has fully rendered the\n // component by executing its update block of the template function.\n setTimeout(() => {\n this.zone.run(() => {\n this.transitions.events.next(new Scroll(routerEvent, this.lastSource === 'popstate' ? this.store[this.restoredId] : null, anchor));\n });\n }, 0);\n });\n }\n /** @nodoc */\n ngOnDestroy() {\n this.routerEventsSubscription?.unsubscribe();\n this.scrollEventsSubscription?.unsubscribe();\n }\n static {\n this.ɵfac = function RouterScroller_Factory(__ngFactoryType__) {\n i0.ɵɵinvalidFactory();\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: RouterScroller,\n factory: RouterScroller.ɵfac\n });\n }\n }\n return RouterScroller;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Sets up providers necessary to enable `Router` functionality for the application.\n * Allows to configure a set of routes as well as extra features that should be enabled.\n *\n * @usageNotes\n *\n * Basic example of how you can add a Router to your application:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent, {\n * providers: [provideRouter(appRoutes)]\n * });\n * ```\n *\n * You can also enable optional features in the Router by adding functions from the `RouterFeatures`\n * type:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes,\n * withDebugTracing(),\n * withRouterConfig({paramsInheritanceStrategy: 'always'}))\n * ]\n * }\n * );\n * ```\n *\n * @see {@link RouterFeatures}\n *\n * @publicApi\n * @param routes A set of `Route`s to use for the application routing table.\n * @param features Optional features to configure additional router behaviors.\n * @returns A set of providers to setup a Router.\n */\nfunction provideRouter(routes, ...features) {\n return makeEnvironmentProviders([{\n provide: ROUTES,\n multi: true,\n useValue: routes\n }, typeof ngDevMode === 'undefined' || ngDevMode ? {\n provide: ROUTER_IS_PROVIDED,\n useValue: true\n } : [], {\n provide: ActivatedRoute,\n useFactory: rootRoute,\n deps: [Router]\n }, {\n provide: APP_BOOTSTRAP_LISTENER,\n multi: true,\n useFactory: getBootstrapListener\n }, features.map(feature => feature.ɵproviders)]);\n}\nfunction rootRoute(router) {\n return router.routerState.root;\n}\n/**\n * Helper function to create an object that represents a Router feature.\n */\nfunction routerFeature(kind, providers) {\n return {\n ɵkind: kind,\n ɵproviders: providers\n };\n}\n/**\n * An Injection token used to indicate whether `provideRouter` or `RouterModule.forRoot` was ever\n * called.\n */\nconst ROUTER_IS_PROVIDED = /*#__PURE__*/new InjectionToken('', {\n providedIn: 'root',\n factory: () => false\n});\nconst routerIsProvidedDevModeCheck = {\n provide: ENVIRONMENT_INITIALIZER,\n multi: true,\n useFactory() {\n return () => {\n if (!inject(ROUTER_IS_PROVIDED)) {\n console.warn('`provideRoutes` was called without `provideRouter` or `RouterModule.forRoot`. ' + 'This is likely a mistake.');\n }\n };\n }\n};\n/**\n * Registers a DI provider for a set of routes.\n * @param routes The route configuration to provide.\n *\n * @usageNotes\n *\n * ```\n * @NgModule({\n * providers: [provideRoutes(ROUTES)]\n * })\n * class LazyLoadedChildModule {}\n * ```\n *\n * @deprecated If necessary, provide routes using the `ROUTES` `InjectionToken`.\n * @see {@link ROUTES}\n * @publicApi\n */\nfunction provideRoutes(routes) {\n return [{\n provide: ROUTES,\n multi: true,\n useValue: routes\n }, typeof ngDevMode === 'undefined' || ngDevMode ? routerIsProvidedDevModeCheck : []];\n}\n/**\n * Enables customizable scrolling behavior for router navigations.\n *\n * @usageNotes\n *\n * Basic example of how you can enable scrolling feature:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withInMemoryScrolling())\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n * @see {@link ViewportScroller}\n *\n * @publicApi\n * @param options Set of configuration parameters to customize scrolling behavior, see\n * `InMemoryScrollingOptions` for additional information.\n * @returns A set of providers for use with `provideRouter`.\n */\nfunction withInMemoryScrolling(options = {}) {\n const providers = [{\n provide: ROUTER_SCROLLER,\n useFactory: () => {\n const viewportScroller = inject(ViewportScroller);\n const zone = inject(NgZone);\n const transitions = inject(NavigationTransitions);\n const urlSerializer = inject(UrlSerializer);\n return new RouterScroller(urlSerializer, transitions, viewportScroller, zone, options);\n }\n }];\n return routerFeature(4 /* RouterFeatureKind.InMemoryScrollingFeature */, providers);\n}\nfunction getBootstrapListener() {\n const injector = inject(Injector);\n return bootstrappedComponentRef => {\n const ref = injector.get(ApplicationRef);\n if (bootstrappedComponentRef !== ref.components[0]) {\n return;\n }\n const router = injector.get(Router);\n const bootstrapDone = injector.get(BOOTSTRAP_DONE);\n if (injector.get(INITIAL_NAVIGATION) === 1 /* InitialNavigation.EnabledNonBlocking */) {\n router.initialNavigation();\n }\n injector.get(ROUTER_PRELOADER, null, InjectFlags.Optional)?.setUpPreloading();\n injector.get(ROUTER_SCROLLER, null, InjectFlags.Optional)?.init();\n router.resetRootComponentType(ref.componentTypes[0]);\n if (!bootstrapDone.closed) {\n bootstrapDone.next();\n bootstrapDone.complete();\n bootstrapDone.unsubscribe();\n }\n };\n}\n/**\n * A subject used to indicate that the bootstrapping phase is done. When initial navigation is\n * `enabledBlocking`, the first navigation waits until bootstrapping is finished before continuing\n * to the activation phase.\n */\nconst BOOTSTRAP_DONE = /*#__PURE__*/new InjectionToken(typeof ngDevMode === 'undefined' || ngDevMode ? 'bootstrap done indicator' : '', {\n factory: () => {\n return new Subject();\n }\n});\nconst INITIAL_NAVIGATION = /*#__PURE__*/new InjectionToken(typeof ngDevMode === 'undefined' || ngDevMode ? 'initial navigation' : '', {\n providedIn: 'root',\n factory: () => 1 /* InitialNavigation.EnabledNonBlocking */\n});\n/**\n * Configures initial navigation to start before the root component is created.\n *\n * The bootstrap is blocked until the initial navigation is complete. This should be set in case\n * you use [server-side rendering](guide/ssr), but do not enable [hydration](guide/hydration) for\n * your application.\n *\n * @usageNotes\n *\n * Basic example of how you can enable this navigation behavior:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withEnabledBlockingInitialNavigation())\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n *\n * @publicApi\n * @returns A set of providers for use with `provideRouter`.\n */\nfunction withEnabledBlockingInitialNavigation() {\n const providers = [{\n provide: INITIAL_NAVIGATION,\n useValue: 0 /* InitialNavigation.EnabledBlocking */\n }, {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: injector => {\n const locationInitialized = injector.get(LOCATION_INITIALIZED, Promise.resolve());\n return () => {\n return locationInitialized.then(() => {\n return new Promise(resolve => {\n const router = injector.get(Router);\n const bootstrapDone = injector.get(BOOTSTRAP_DONE);\n afterNextNavigation(router, () => {\n // Unblock APP_INITIALIZER in case the initial navigation was canceled or errored\n // without a redirect.\n resolve(true);\n });\n injector.get(NavigationTransitions).afterPreactivation = () => {\n // Unblock APP_INITIALIZER once we get to `afterPreactivation`. At this point, we\n // assume activation will complete successfully (even though this is not\n // guaranteed).\n resolve(true);\n return bootstrapDone.closed ? of(void 0) : bootstrapDone;\n };\n router.initialNavigation();\n });\n });\n };\n }\n }];\n return routerFeature(2 /* RouterFeatureKind.EnabledBlockingInitialNavigationFeature */, providers);\n}\n/**\n * Disables initial navigation.\n *\n * Use if there is a reason to have more control over when the router starts its initial navigation\n * due to some complex initialization logic.\n *\n * @usageNotes\n *\n * Basic example of how you can disable initial navigation:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withDisabledInitialNavigation())\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n *\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withDisabledInitialNavigation() {\n const providers = [{\n provide: APP_INITIALIZER,\n multi: true,\n useFactory: () => {\n const router = inject(Router);\n return () => {\n router.setUpLocationChangeListener();\n };\n }\n }, {\n provide: INITIAL_NAVIGATION,\n useValue: 2 /* InitialNavigation.Disabled */\n }];\n return routerFeature(3 /* RouterFeatureKind.DisabledInitialNavigationFeature */, providers);\n}\n/**\n * Enables logging of all internal navigation events to the console.\n * Extra logging might be useful for debugging purposes to inspect Router event sequence.\n *\n * @usageNotes\n *\n * Basic example of how you can enable debug tracing:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withDebugTracing())\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n *\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withDebugTracing() {\n let providers = [];\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n providers = [{\n provide: ENVIRONMENT_INITIALIZER,\n multi: true,\n useFactory: () => {\n const router = inject(Router);\n return () => router.events.subscribe(e => {\n // tslint:disable:no-console\n console.group?.(`Router Event: ${e.constructor.name}`);\n console.log(stringifyEvent(e));\n console.log(e);\n console.groupEnd?.();\n // tslint:enable:no-console\n });\n }\n }];\n } else {\n providers = [];\n }\n return routerFeature(1 /* RouterFeatureKind.DebugTracingFeature */, providers);\n}\nconst ROUTER_PRELOADER = /*#__PURE__*/new InjectionToken(typeof ngDevMode === 'undefined' || ngDevMode ? 'router preloader' : '');\n/**\n * Allows to configure a preloading strategy to use. The strategy is configured by providing a\n * reference to a class that implements a `PreloadingStrategy`.\n *\n * @usageNotes\n *\n * Basic example of how you can configure preloading:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withPreloading(PreloadAllModules))\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n *\n * @param preloadingStrategy A reference to a class that implements a `PreloadingStrategy` that\n * should be used.\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withPreloading(preloadingStrategy) {\n const providers = [{\n provide: ROUTER_PRELOADER,\n useExisting: RouterPreloader\n }, {\n provide: PreloadingStrategy,\n useExisting: preloadingStrategy\n }];\n return routerFeature(0 /* RouterFeatureKind.PreloadingFeature */, providers);\n}\n/**\n * Allows to provide extra parameters to configure Router.\n *\n * @usageNotes\n *\n * Basic example of how you can provide extra configuration options:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withRouterConfig({\n * onSameUrlNavigation: 'reload'\n * }))\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n *\n * @param options A set of parameters to configure Router, see `RouterConfigOptions` for\n * additional information.\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withRouterConfig(options) {\n const providers = [{\n provide: ROUTER_CONFIGURATION,\n useValue: options\n }];\n return routerFeature(5 /* RouterFeatureKind.RouterConfigurationFeature */, providers);\n}\n/**\n * Provides the location strategy that uses the URL fragment instead of the history API.\n *\n * @usageNotes\n *\n * Basic example of how you can use the hash location option:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withHashLocation())\n * ]\n * }\n * );\n * ```\n *\n * @see {@link provideRouter}\n * @see {@link HashLocationStrategy}\n *\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withHashLocation() {\n const providers = [{\n provide: LocationStrategy,\n useClass: HashLocationStrategy\n }];\n return routerFeature(6 /* RouterFeatureKind.RouterHashLocationFeature */, providers);\n}\n/**\n * Provides a function which is called when a navigation error occurs.\n *\n * This function is run inside application's [injection context](guide/di/dependency-injection-context)\n * so you can use the [`inject`](api/core/inject) function.\n *\n * This function can return a `RedirectCommand` to convert the error to a redirect, similar to returning\n * a `UrlTree` or `RedirectCommand` from a guard. This will also prevent the `Router` from emitting\n * `NavigationError`; it will instead emit `NavigationCancel` with code NavigationCancellationCode.Redirect.\n * Return values other than `RedirectCommand` are ignored and do not change any behavior with respect to\n * how the `Router` handles the error.\n *\n * @usageNotes\n *\n * Basic example of how you can use the error handler option:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withNavigationErrorHandler((e: NavigationError) =>\n * inject(MyErrorTracker).trackError(e)))\n * ]\n * }\n * );\n * ```\n *\n * @see {@link NavigationError}\n * @see {@link core/inject}\n * @see {@link runInInjectionContext}\n *\n * @returns A set of providers for use with `provideRouter`.\n *\n * @publicApi\n */\nfunction withNavigationErrorHandler(handler) {\n const providers = [{\n provide: NAVIGATION_ERROR_HANDLER,\n useValue: handler\n }];\n return routerFeature(7 /* RouterFeatureKind.NavigationErrorHandlerFeature */, providers);\n}\n/**\n * Enables binding information from the `Router` state directly to the inputs of the component in\n * `Route` configurations.\n *\n * @usageNotes\n *\n * Basic example of how you can enable the feature:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withComponentInputBinding())\n * ]\n * }\n * );\n * ```\n *\n * @returns A set of providers for use with `provideRouter`.\n */\nfunction withComponentInputBinding() {\n const providers = [RoutedComponentInputBinder, {\n provide: INPUT_BINDER,\n useExisting: RoutedComponentInputBinder\n }];\n return routerFeature(8 /* RouterFeatureKind.ComponentInputBindingFeature */, providers);\n}\n/**\n * Enables view transitions in the Router by running the route activation and deactivation inside of\n * `document.startViewTransition`.\n *\n * Note: The View Transitions API is not available in all browsers. If the browser does not support\n * view transitions, the Router will not attempt to start a view transition and continue processing\n * the navigation as usual.\n *\n * @usageNotes\n *\n * Basic example of how you can enable the feature:\n * ```\n * const appRoutes: Routes = [];\n * bootstrapApplication(AppComponent,\n * {\n * providers: [\n * provideRouter(appRoutes, withViewTransitions())\n * ]\n * }\n * );\n * ```\n *\n * @returns A set of providers for use with `provideRouter`.\n * @see https://developer.chrome.com/docs/web-platform/view-transitions/\n * @see https://developer.mozilla.org/en-US/docs/Web/API/View_Transitions_API\n * @experimental\n */\nfunction withViewTransitions(options) {\n const providers = [{\n provide: CREATE_VIEW_TRANSITION,\n useValue: createViewTransition\n }, {\n provide: VIEW_TRANSITION_OPTIONS,\n useValue: {\n skipNextTransition: !!options?.skipInitialTransition,\n ...options\n }\n }];\n return routerFeature(9 /* RouterFeatureKind.ViewTransitionsFeature */, providers);\n}\n\n/**\n * The directives defined in the `RouterModule`.\n */\nconst ROUTER_DIRECTIVES = [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent];\n/**\n * @docsNotRequired\n */\nconst ROUTER_FORROOT_GUARD = /*#__PURE__*/new InjectionToken(typeof ngDevMode === 'undefined' || ngDevMode ? 'router duplicate forRoot guard' : 'ROUTER_FORROOT_GUARD');\n// TODO(atscott): All of these except `ActivatedRoute` are `providedIn: 'root'`. They are only kept\n// here to avoid a breaking change whereby the provider order matters based on where the\n// `RouterModule`/`RouterTestingModule` is imported. These can/should be removed as a \"breaking\"\n// change in a major version.\nconst ROUTER_PROVIDERS = [Location, {\n provide: UrlSerializer,\n useClass: DefaultUrlSerializer\n}, Router, ChildrenOutletContexts, {\n provide: ActivatedRoute,\n useFactory: rootRoute,\n deps: [Router]\n}, RouterConfigLoader,\n// Only used to warn when `provideRoutes` is used without `RouterModule` or `provideRouter`. Can\n// be removed when `provideRoutes` is removed.\ntypeof ngDevMode === 'undefined' || ngDevMode ? {\n provide: ROUTER_IS_PROVIDED,\n useValue: true\n} : []];\n/**\n * @description\n *\n * Adds directives and providers for in-app navigation among views defined in an application.\n * Use the Angular `Router` service to declaratively specify application states and manage state\n * transitions.\n *\n * You can import this NgModule multiple times, once for each lazy-loaded bundle.\n * However, only one `Router` service can be active.\n * To ensure this, there are two ways to register routes when importing this module:\n *\n * * The `forRoot()` method creates an `NgModule` that contains all the directives, the given\n * routes, and the `Router` service itself.\n * * The `forChild()` method creates an `NgModule` that contains all the directives and the given\n * routes, but does not include the `Router` service.\n *\n * @see [Routing and Navigation guide](guide/routing/common-router-tasks) for an\n * overview of how the `Router` service should be used.\n *\n * @publicApi\n */\nlet RouterModule = /*#__PURE__*/(() => {\n class RouterModule {\n constructor(guard) {}\n /**\n * Creates and configures a module with all the router providers and directives.\n * Optionally sets up an application listener to perform an initial navigation.\n *\n * When registering the NgModule at the root, import as follows:\n *\n * ```\n * @NgModule({\n * imports: [RouterModule.forRoot(ROUTES)]\n * })\n * class MyNgModule {}\n * ```\n *\n * @param routes An array of `Route` objects that define the navigation paths for the application.\n * @param config An `ExtraOptions` configuration object that controls how navigation is performed.\n * @return The new `NgModule`.\n *\n */\n static forRoot(routes, config) {\n return {\n ngModule: RouterModule,\n providers: [ROUTER_PROVIDERS, typeof ngDevMode === 'undefined' || ngDevMode ? config?.enableTracing ? withDebugTracing().ɵproviders : [] : [], {\n provide: ROUTES,\n multi: true,\n useValue: routes\n }, {\n provide: ROUTER_FORROOT_GUARD,\n useFactory: provideForRootGuard,\n deps: [[Router, new Optional(), new SkipSelf()]]\n }, {\n provide: ROUTER_CONFIGURATION,\n useValue: config ? config : {}\n }, config?.useHash ? provideHashLocationStrategy() : providePathLocationStrategy(), provideRouterScroller(), config?.preloadingStrategy ? withPreloading(config.preloadingStrategy).ɵproviders : [], config?.initialNavigation ? provideInitialNavigation(config) : [], config?.bindToComponentInputs ? withComponentInputBinding().ɵproviders : [], config?.enableViewTransitions ? withViewTransitions().ɵproviders : [], provideRouterInitializer()]\n };\n }\n /**\n * Creates a module with all the router directives and a provider registering routes,\n * without creating a new Router service.\n * When registering for submodules and lazy-loaded submodules, create the NgModule as follows:\n *\n * ```\n * @NgModule({\n * imports: [RouterModule.forChild(ROUTES)]\n * })\n * class MyNgModule {}\n * ```\n *\n * @param routes An array of `Route` objects that define the navigation paths for the submodule.\n * @return The new NgModule.\n *\n */\n static forChild(routes) {\n return {\n ngModule: RouterModule,\n providers: [{\n provide: ROUTES,\n multi: true,\n useValue: routes\n }]\n };\n }\n static {\n this.ɵfac = function RouterModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || RouterModule)(i0.ɵɵinject(ROUTER_FORROOT_GUARD, 8));\n };\n }\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: RouterModule\n });\n }\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({});\n }\n }\n return RouterModule;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * For internal use by `RouterModule` only. Note that this differs from `withInMemoryRouterScroller`\n * because it reads from the `ExtraOptions` which should not be used in the standalone world.\n */\nfunction provideRouterScroller() {\n return {\n provide: ROUTER_SCROLLER,\n useFactory: () => {\n const viewportScroller = inject(ViewportScroller);\n const zone = inject(NgZone);\n const config = inject(ROUTER_CONFIGURATION);\n const transitions = inject(NavigationTransitions);\n const urlSerializer = inject(UrlSerializer);\n if (config.scrollOffset) {\n viewportScroller.setOffset(config.scrollOffset);\n }\n return new RouterScroller(urlSerializer, transitions, viewportScroller, zone, config);\n }\n };\n}\n// Note: For internal use only with `RouterModule`. Standalone setup via `provideRouter` should\n// provide hash location directly via `{provide: LocationStrategy, useClass: HashLocationStrategy}`.\nfunction provideHashLocationStrategy() {\n return {\n provide: LocationStrategy,\n useClass: HashLocationStrategy\n };\n}\n// Note: For internal use only with `RouterModule`. Standalone setup via `provideRouter` does not\n// need this at all because `PathLocationStrategy` is the default factory for `LocationStrategy`.\nfunction providePathLocationStrategy() {\n return {\n provide: LocationStrategy,\n useClass: PathLocationStrategy\n };\n}\nfunction provideForRootGuard(router) {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && router) {\n throw new ɵRuntimeError(4007 /* RuntimeErrorCode.FOR_ROOT_CALLED_TWICE */, `The Router was provided more than once. This can happen if 'forRoot' is used outside of the root injector.` + ` Lazy loaded modules should use RouterModule.forChild() instead.`);\n }\n return 'guarded';\n}\n// Note: For internal use only with `RouterModule`. Standalone router setup with `provideRouter`\n// users call `withXInitialNavigation` directly.\nfunction provideInitialNavigation(config) {\n return [config.initialNavigation === 'disabled' ? withDisabledInitialNavigation().ɵproviders : [], config.initialNavigation === 'enabledBlocking' ? withEnabledBlockingInitialNavigation().ɵproviders : []];\n}\n// TODO(atscott): This should not be in the public API\n/**\n * A DI token for the router initializer that\n * is called after the app is bootstrapped.\n *\n * @publicApi\n */\nconst ROUTER_INITIALIZER = /*#__PURE__*/new InjectionToken(typeof ngDevMode === 'undefined' || ngDevMode ? 'Router Initializer' : '');\nfunction provideRouterInitializer() {\n return [\n // ROUTER_INITIALIZER token should be removed. It's public API but shouldn't be. We can just\n // have `getBootstrapListener` directly attached to APP_BOOTSTRAP_LISTENER.\n {\n provide: ROUTER_INITIALIZER,\n useFactory: getBootstrapListener\n }, {\n provide: APP_BOOTSTRAP_LISTENER,\n multi: true,\n useExisting: ROUTER_INITIALIZER\n }];\n}\n\n/**\n * Maps an array of injectable classes with canMatch functions to an array of equivalent\n * `CanMatchFn` for use in a `Route` definition.\n *\n * Usage {@example router/utils/functional_guards.ts region='CanActivate'}\n *\n * @publicApi\n * @see {@link Route}\n */\nfunction mapToCanMatch(providers) {\n return providers.map(provider => (...params) => inject(provider).canMatch(...params));\n}\n/**\n * Maps an array of injectable classes with canActivate functions to an array of equivalent\n * `CanActivateFn` for use in a `Route` definition.\n *\n * Usage {@example router/utils/functional_guards.ts region='CanActivate'}\n *\n * @publicApi\n * @see {@link Route}\n */\nfunction mapToCanActivate(providers) {\n return providers.map(provider => (...params) => inject(provider).canActivate(...params));\n}\n/**\n * Maps an array of injectable classes with canActivateChild functions to an array of equivalent\n * `CanActivateChildFn` for use in a `Route` definition.\n *\n * Usage {@example router/utils/functional_guards.ts region='CanActivate'}\n *\n * @publicApi\n * @see {@link Route}\n */\nfunction mapToCanActivateChild(providers) {\n return providers.map(provider => (...params) => inject(provider).canActivateChild(...params));\n}\n/**\n * Maps an array of injectable classes with canDeactivate functions to an array of equivalent\n * `CanDeactivateFn` for use in a `Route` definition.\n *\n * Usage {@example router/utils/functional_guards.ts region='CanActivate'}\n *\n * @publicApi\n * @see {@link Route}\n */\nfunction mapToCanDeactivate(providers) {\n return providers.map(provider => (...params) => inject(provider).canDeactivate(...params));\n}\n/**\n * Maps an injectable class with a resolve function to an equivalent `ResolveFn`\n * for use in a `Route` definition.\n *\n * Usage {@example router/utils/functional_guards.ts region='Resolve'}\n *\n * @publicApi\n * @see {@link Route}\n */\nfunction mapToResolve(provider) {\n return (...params) => inject(provider).resolve(...params);\n}\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the router package.\n */\n/**\n * @publicApi\n */\nconst VERSION = /*#__PURE__*/new Version('18.2.2');\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\n// This file only reexports content of the `src` folder. Keep it that way.\n\n// This file is not used to build this module. It is only used during editing\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ActivatedRoute, ActivatedRouteSnapshot, ActivationEnd, ActivationStart, BaseRouteReuseStrategy, ChildActivationEnd, ChildActivationStart, ChildrenOutletContexts, DefaultTitleStrategy, DefaultUrlSerializer, EventType, GuardsCheckEnd, GuardsCheckStart, NavigationCancel, NavigationCancellationCode, NavigationEnd, NavigationError, NavigationSkipped, NavigationSkippedCode, NavigationStart, NoPreloading, OutletContext, PRIMARY_OUTLET, PreloadAllModules, PreloadingStrategy, ROUTER_CONFIGURATION, ROUTER_INITIALIZER, ROUTES, RedirectCommand, ResolveEnd, ResolveStart, RouteConfigLoadEnd, RouteConfigLoadStart, RouteReuseStrategy, Router, RouterEvent, RouterLink, RouterLinkActive, RouterLink as RouterLinkWithHref, RouterModule, RouterOutlet, RouterPreloader, RouterState, RouterStateSnapshot, RoutesRecognized, Scroll, TitleStrategy, UrlHandlingStrategy, UrlSegment, UrlSegmentGroup, UrlSerializer, UrlTree, VERSION, convertToParamMap, createUrlTreeFromSnapshot, defaultUrlMatcher, mapToCanActivate, mapToCanActivateChild, mapToCanDeactivate, mapToCanMatch, mapToResolve, provideRouter, provideRoutes, withComponentInputBinding, withDebugTracing, withDisabledInitialNavigation, withEnabledBlockingInitialNavigation, withHashLocation, withInMemoryScrolling, withNavigationErrorHandler, withPreloading, withRouterConfig, withViewTransitions, ɵEmptyOutletComponent, ROUTER_PROVIDERS as ɵROUTER_PROVIDERS, afterNextNavigation as ɵafterNextNavigation, loadChildren as ɵloadChildren };\n"],"mappings":"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","names":["GenericBrowserDomAdapter","DomAdapter","BrowserDomAdapter","_BrowserDomAdapter","setRootDomAdapter","el","evt","listener","node","tagName","doc","target","href","getBaseElementHref","relativePath","baseElement","name","parseCookieValue","url","BrowserGetTestability","registry","_global","elem","findInAncestors","testability","RuntimeError","whenAllStable","callback","testabilities","count","decrement","t","getDOM","BrowserXhr","_BrowserXhr","__ngFactoryType__","ɵɵdefineInjectable","EVENT_MANAGER_PLUGINS","InjectionToken","EventManager","_EventManager","plugins","_zone","plugin","element","eventName","handler","ɵɵinject","NgZone","EventManagerPlugin","_doc","APP_ID_ATTRIBUTE_NAME","SharedStylesHost","_SharedStylesHost","appId","nonce","platformId","isPlatformServer","styles","style","styleNodesInDOM","hostNode","host","styleRef","styleMap","delta","map","styleRefValue","styleEl","styleElRef","hostNodes","DOCUMENT","APP_ID","CSP_NONCE","PLATFORM_ID","NAMESPACE_URIS","COMPONENT_REGEX","COMPONENT_VARIABLE","HOST_ATTR","CONTENT_ATTR","REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT","REMOVE_STYLES_ON_COMPONENT_DESTROY","shimContentAttribute","componentShortId","shimHostAttribute","shimStylesContent","compId","s","DomRendererFactory2","_DomRendererFactory2","eventManager","sharedStylesHost","removeStylesOnCompDestroy","ngZone","DefaultDomRenderer2","type","ViewEncapsulation$1","__spreadProps","__spreadValues","renderer","EmulatedEncapsulationDomRenderer2","NoneEncapsulationDomRenderer","rendererByCompId","platformIsServer","ShadowDomRenderer","namespace","value","parent","newChild","isTemplateNode","refChild","_parent","oldChild","selectorOrNode","preserveContent","namespaceUri","flags","RendererStyleFlags2","event","eventHandler","isTemplateNode","node","ShadowDomRenderer","DefaultDomRenderer2","eventManager","sharedStylesHost","hostEl","component","doc","ngZone","nonce","platformIsServer","styles","shimStylesContent","style","styleEl","parent","newChild","refChild","_parent","oldChild","NoneEncapsulationDomRenderer","removeStylesOnCompDestroy","compId","EmulatedEncapsulationDomRenderer2","appId","shimContentAttribute","shimHostAttribute","element","name","el","DomEventsPlugin","_DomEventsPlugin","EventManagerPlugin","eventName","handler","target","callback","__ngFactoryType__","ɵɵinject","DOCUMENT","ɵɵdefineInjectable","EventDelegationPlugin","_EventDelegationPlugin","inject","GLOBAL_EVENT_DELEGATION","MODIFIER_KEYS","_keyMap","MODIFIER_KEY_GETTERS","event","KeyEventsPlugin","_KeyEventsPlugin","parsedEvent","outsideHandler","getDOM","parts","domEventName","key","fullKey","codeIX","modifierName","index","result","fullKeyCode","keycode","modifierGetter","zone","keyName","bootstrapApplication","rootComponent","options","internalCreateApplication","__spreadValues","createProvidersConfig","createProvidersConfig","options","BROWSER_MODULE_PROVIDERS","INTERNAL_BROWSER_PLATFORM_PROVIDERS","initDomAdapter","BrowserDomAdapter","errorHandler","ErrorHandler","_document","setDocument","INTERNAL_BROWSER_PLATFORM_PROVIDERS","PLATFORM_ID","PLATFORM_BROWSER_ID","PLATFORM_INITIALIZER","DOCUMENT","BROWSER_MODULE_PROVIDERS_MARKER","InjectionToken","TESTABILITY_PROVIDERS","TESTABILITY_GETTER","BrowserGetTestability","TESTABILITY","Testability","NgZone","TestabilityRegistry","BROWSER_MODULE_PROVIDERS","INJECTOR_SCOPE","ErrorHandler","errorHandler","EVENT_MANAGER_PLUGINS","DomEventsPlugin","DOCUMENT","PLATFORM_ID","KeyEventsPlugin","EventDelegationPlugin","DomRendererFactory2","SharedStylesHost","EventManager","RendererFactory2","XhrFactory","BrowserXhr","BrowserModule","_BrowserModule","providersAlreadyPresent","params","APP_ID","__ngFactoryType__","ɵɵinject","ɵɵdefineNgModule","ɵɵdefineInjector","CommonModule","ApplicationModule","Title","_Title","_doc","newTitle","__ngFactoryType__","ɵɵinject","DOCUMENT","ɵɵdefineInjectable","DomSanitizer","_DomSanitizer","__ngFactoryType__","ɵɵdefineInjectable","__ngConditionalFactory__","ɵɵinject","DomSanitizerImpl","_DomSanitizerImpl","_doc","ctx","value","SecurityContext","allowSanitizationBypassAndThrow","unwrapSafeValue","_sanitizeHtml","RuntimeError","_sanitizeUrl","bypassSanitizationTrustHtml","bypassSanitizationTrustStyle","bypassSanitizationTrustScript","bypassSanitizationTrustUrl","bypassSanitizationTrustResourceUrl","DOCUMENT","PRIMARY_OUTLET","RouteTitleKey","ParamsAsMap","params","name","v","convertToParamMap","defaultUrlMatcher","segments","segmentGroup","route","parts","posParams","index","part","segment","shallowEqualArrays","a","b","shallowEqual","k1","getDataKeys","k2","key","i","equalArraysOrString","obj","aSorted","bSorted","val","last","wrapIntoObservable","value","isObservable","isPromise","from","of","pathCompareMap","equalSegmentGroups","containsSegmentGroup","paramCompareMap","equalParams","containsParams","containsTree","container","containee","options","matrixParams","equalPath","matrixParamsMatch","c","containsSegmentGroupHelper","containeePaths","current","next","containerPaths","containeeSegment","UrlTree","root","UrlSegmentGroup","queryParams","fragment","DEFAULT_SERIALIZER","children","serializePaths","UrlSegment","path","parameters","serializePath","equalSegments","as","bs","mapChildrenIntoArray","fn","res","childOutlet","child","UrlSerializer","_UrlSerializer","__ngFactoryType__","ɵɵdefineInjectable","DefaultUrlSerializer","url","p","UrlParser","tree","serializeSegment","query","serializeQueryParams","encodeUriFragment","primary","k","encodeUriString","s","encodeUriQuery","encodeUriSegment","decode","decodeQuery","serializeMatrixParams","strParams","SEGMENT_RE","matchSegments","str","match","MATRIX_PARAM_SEGMENT_RE","matchMatrixKeySegments","QUERY_PARAM_RE","matchQueryParams","QUERY_PARAM_VALUE_RE","matchUrlQueryParamValue","RuntimeError","valueMatch","decodedKey","decodedVal","currentVal","allowPrimary","outletName","createRoot","rootCandidate","squashSegmentGroup","newChildren","childCandidate","grandChildOutlet","grandChild","mergeTrivialChildren","isUrlTree","createUrlTreeFromSnapshot","relativeTo","commands","relativeToUrlSegmentGroup","createSegmentGroupFromRoute","createUrlTreeFromSegmentGroup","targetGroup","createSegmentGroupFromRouteRecursive","currentRoute","childOutlets","childSnapshot","rootSegmentGroup","nav","computeNavigation","position","findStartingPositionForTargetGroup","newSegmentGroup","updateSegmentGroupChildren","updateSegmentGroup","isMatrixParams","command","isCommandWithOutlets","oldRoot","oldSegmentGroup","qp","replaceSegment","newRoot","oldSegment","newSegment","Navigation","isAbsolute","numberOfDoubleDots","cmdWithOutlet","cmd","cmdIdx","outlets","urlPart","partIndex","Position","processChildren","target","modifier","createPositionApplyingDoubleDots","group","g","ci","dd","getOutlets","startIndex","m","prefixedWith","slicedCommands","createNewSegmentGroup","o","childrenOfEmptyChild","outlet","currentCommandIndex","currentPathIndex","noMatch","curr","compare","paths","createNewSegmentChildren","stringify","IMPERATIVE_NAVIGATION","EventType","RouterEvent","id","NavigationStart","navigationTrigger","restoredState","NavigationEnd","urlAfterRedirects","NavigationCancellationCode","NavigationSkippedCode","NavigationCancel","reason","code","NavigationSkipped","NavigationError","error","RoutesRecognized","state","GuardsCheckStart","GuardsCheckEnd","shouldActivate","ResolveStart","ResolveEnd","RouteConfigLoadStart","RouteConfigLoadEnd","ChildActivationStart","snapshot","ChildActivationEnd","ActivationStart","ActivationEnd","Scroll","routerEvent","anchor","pos","BeforeActivateRoutes","RedirectRequest","navigationBehaviorOptions","getOrCreateRouteInjectorIfNeeded","route","currentInjector","createEnvironmentInjector","getOutlet","route","PRIMARY_OUTLET","sortByMatchingOutlets","routes","outletName","sortedConfig","r","getClosestRouteInjector","snapshot","s","OutletContext","_","rootInjector","ChildrenOutletContexts","_ChildrenOutletContexts","childName","outlet","context","contexts","__ngFactoryType__","ɵɵinject","EnvironmentInjector","ɵɵdefineInjectable","Tree","root","t","p","n","findNode","findPath","c","cc","value","node","child","path","TreeNode","children","nodeChildrenAsMap","map","RouterState","setRouterState","createEmptyState","rootComponent","createEmptyStateSnapshot","emptyUrl","BehaviorSubject","UrlSegment","emptyParams","emptyData","emptyQueryParams","fragment","activated","ActivatedRoute","ActivatedRouteSnapshot","RouterStateSnapshot","urlSubject","paramsSubject","queryParamsSubject","fragmentSubject","dataSubject","component","futureSnapshot","d","RouteTitleKey","of","convertToParamMap","getInherited","parent","paramsInheritanceStrategy","inherited","routeConfig","__spreadValues","hasStaticTitle","url","params","queryParams","data","resolve","segment","matched","serializeNode","state","advanceActivatedRoute","currentSnapshot","nextSnapshot","shallowEqual","shallowEqualArrays","equalParamsAndUrlSegments","a","b","equalUrlParams","equalSegments","parentsMismatch","config","RouterOutlet","_RouterOutlet","EventEmitter","inject","ViewContainerRef","ChangeDetectorRef","INPUT_BINDER","changes","firstChange","previousValue","RuntimeError","cmp","ref","activatedRoute","environmentInjector","location","childContexts","injector","OutletInjector","ɵɵdefineDirective","ɵɵNgOnChangesFeature","_OutletInjector","parentInjector","token","notFoundValue","InjectionToken","RoutedComponentInputBinder","_RoutedComponentInputBinder","dataSubscription","combineLatest","switchMap","index","mirror","reflectComponentType","templateName","createRouterState","routeReuseStrategy","curr","prevState","createNode","createOrReuseChildren","detachedRouteHandle","tree","createActivatedRoute","RedirectCommand","redirectTo","navigationBehaviorOptions","NAVIGATION_CANCELING_ERROR","redirectingNavigationError","urlSerializer","redirect","isUrlTree","error","navigationCancelingError","NavigationCancellationCode","message","code","isRedirectingNavigationCancelingError","isNavigationCancelingError","activateRoutes","rootContexts","routeReuseStrategy","forwardEvent","inputBindingEnabled","map","t","ActivateRoutes","futureState","currState","parentContexts","futureRoot","currRoot","advanceActivatedRoute","futureNode","currNode","contexts","children","nodeChildrenAsMap","futureChild","childOutletName","v","parentContext","future","curr","context","route","treeNode","componentRef","c","ActivationEnd","ChildActivationEnd","stored","CanActivate","path","CanDeactivate","component","getAllRouteGuards","getChildRouteGuards","getCanActivateChild","p","canActivateChild","getTokenOrFunctionIdentity","tokenOrFunction","injector","NOT_FOUND","result","isInjectable","futurePath","checks","prevChildren","getRouteGuards","k","deactivateRouteAndItsChildren","shouldRun","shouldRunGuardsAndResolvers","mode","equalPath","shallowEqual","equalParamsAndUrlSegments","childName","node","isFunction","isBoolean","isCanLoad","guard","isCanActivate","isCanActivateChild","isCanDeactivate","isCanMatch","isEmptyError","e","EmptyError","INITIAL_VALUE","prioritizedGuardValue","switchMap","obs","combineLatest","o","take","startWith","results","isRedirect","filter","item","val","isUrlTree","RedirectCommand","checkGuards","mergeMap","targetSnapshot","currentSnapshot","canActivateChecks","canDeactivateChecks","of","__spreadProps","__spreadValues","runCanDeactivateChecks","canDeactivate","runCanActivateChecks","guardsResult","futureRSS","currRSS","from","check","runCanDeactivate","first","futureSnapshot","concatMap","concat","fireChildActivationStart","fireActivationStart","runCanActivateChild","runCanActivate","snapshot","ActivationStart","ChildActivationStart","futureARS","canActivate","canActivateObservables","defer","closestInjector","getClosestRouteInjector","guardVal","runInInjectionContext","wrapIntoObservable","canActivateChildGuardsMapped","_","d","guardsMapped","currARS","canDeactivateObservables","runCanLoadGuards","segments","urlSerializer","canLoad","canLoadObservables","injectionToken","redirectIfUrlTree","pipe","tap","redirectingNavigationError","runCanMatchGuards","canMatch","canMatchObservables","NoMatch","segmentGroup","AbsoluteRedirect","urlTree","noMatch$1","throwError","namedOutletsRedirect","redirectTo","throwError","RuntimeError","canLoadFails","route","navigationCancelingError","NavigationCancellationCode","ApplyRedirects","urlSerializer","urlTree","res","c","of","PRIMARY_OUTLET","segments","posParams","currentSnapshot","injector","redirectToFn","queryParams","fragment","routeConfig","url","outlet","params","data","title","newRedirect","runInInjectionContext","UrlTree","AbsoluteRedirect","newTree","newRoot","redirectToParams","actualParams","k","v","sourceName","group","updatedSegments","children","name","child","UrlSegmentGroup","redirectToSegments","actualSegments","redirectToUrlSegment","pos","idx","s","noMatch","matchWithChecks","segmentGroup","result","match","getOrCreateRouteInjectorIfNeeded","runCanMatchGuards","map","__spreadValues","createWildcardMatchResult","defaultUrlMatcher","parameters","last","split","consumedSegments","slicedSegments","config","containsEmptyPathMatchesWithNamedOutlets","createChildrenForEmptyPaths","containsEmptyPathMatches","addEmptyPathsToChildrenIfNeeded","routes","r","emptyPathMatch","getOutlet","primarySegment","noLeftoversInUrl","NoLeftoversInUrl","recognize$1","configLoader","rootComponentType","paramsInheritanceStrategy","Recognizer","MAX_ALLOWED_REDIRECTS","rootSegmentGroup","rootSnapshot","rootNode","TreeNode","routeState","RouterStateSnapshot","tree","createUrlTreeFromSnapshot","ActivatedRouteSnapshot","catchError","e","NoMatch","parentRoute","childOutlets","from","concatMap","childOutlet","sortedConfig","sortByMatchingOutlets","scan","outletChildren","defaultIfEmpty","mergeMap","noMatch$1","mergedChildren","mergeEmptyPathMatches","sortActivatedRouteSnapshots","allowRedirects","first","x","isEmptyError","rawSegment","matched","positionalParamSegments","remainingSegments","getData","getResolve","inherited","getInherited","newSegments","matchResult","switchMap","childConfig","childInjector","snapshot","matchedOnOutlet","runCanLoadGuards","shouldLoadResult","tap","cfg","nodes","a","b","hasEmptyPathConfig","node","mergedNodes","duplicateEmptyPathNode","resultNode","mergedNode","n","getData","route","getResolve","recognize","injector","configLoader","rootComponentType","config","serializer","paramsInheritanceStrategy","mergeMap","t","recognize$1","map","targetSnapshot","urlAfterRedirects","__spreadProps","__spreadValues","resolveData","canActivateChecks","of","routesWithResolversToRun","check","routesNeedingDataUpdates","newRoute","flattenRouteTree","routesProcessed","from","concatMap","runResolve","getInherited","tap","takeLast","_","EMPTY","descendants","child","futureARS","futureRSS","resolve","hasStaticTitle","RouteTitleKey","resolveNode","resolvedData","keys","getDataKeys","data","key","getResolver","first","value","RedirectCommand","redirectingNavigationError","DefaultUrlSerializer","mapTo","catchError","e","isEmptyError","throwError","injectionToken","closestInjector","getClosestRouteInjector","resolver","getTokenOrFunctionIdentity","resolverValue","runInInjectionContext","wrapIntoObservable","switchTap","next","switchMap","v","nextResult","TitleStrategy","_TitleStrategy","snapshot","pageTitle","PRIMARY_OUTLET","__ngFactoryType__","ɵɵdefineInjectable","inject","DefaultTitleStrategy","_DefaultTitleStrategy","title","ɵɵinject","Title","ROUTER_CONFIGURATION","InjectionToken","ɵEmptyOutletComponent","_ɵEmptyOutletComponent","ɵɵdefineComponent","ɵɵStandaloneFeature","rf","ctx","ɵɵelement","RouterOutlet","standardizeConfig","r","children","c","ROUTES","RouterConfigLoader","_RouterConfigLoader","Compiler","loadRunner","maybeUnwrapDefaultExport","component","finalize","loader","ConnectableObservable","Subject","refCount","parentInjector","loadChildren","compiler","onLoadEndListener","NgModuleFactory$1","factoryOrRoutes","rawRoutes","requireStandaloneComponents","isWrappedDefaultExport","input","UrlHandlingStrategy","_UrlHandlingStrategy","DefaultUrlHandlingStrategy","_DefaultUrlHandlingStrategy","url","newUrlPart","wholeUrl","CREATE_VIEW_TRANSITION","VIEW_TRANSITION_OPTIONS","createViewTransition","to","transitionOptions","document","DOCUMENT","NgZone","resolveViewTransitionStarted","viewTransitionStarted","transition","createRenderPromise","onViewTransitionCreated","afterNextRender","NAVIGATION_ERROR_HANDLER","NavigationTransitions","_NavigationTransitions","EnvironmentInjector","UrlSerializer","ChildrenOutletContexts","Location","INPUT_BINDER","onLoadStart","RouteConfigLoadStart","onLoadEnd","RouteConfigLoadEnd","request","id","router","initialUrlTree","initialRouterState","BehaviorSubject","IMPERATIVE_NAVIGATION","filter","overallTransitionState","completed","errored","NavigationCancellationCode","urlTransition","onSameUrlNavigation","reason","NavigationSkipped","NavigationSkippedCode","NavigationStart","routesRecognized","RoutesRecognized","extractedUrl","source","restoredState","extras","navStart","createEmptyState","guardsStart","GuardsCheckStart","getAllRouteGuards","checkGuards","evt","guardsEnd","GuardsCheckEnd","resolveStart","ResolveStart","dataResolved","resolveEnd","ResolveEnd","loadComponents","loaders","loadedComponent","combineLatest","defaultIfEmpty","take","currentSnapshot","targetRouterState","createRouterState","BeforeActivateRoutes","activateRoutes","NavigationEnd","takeUntil","err","isNavigationCancelingError","NavigationCancel","isRedirectingNavigationCancelingError","RedirectRequest","navigationError","NavigationError","navigationErrorHandlerResult","message","cancellationCode","errorHandlerResult","ee","code","navCancel","currentBrowserUrl","targetBrowserUrl","isBrowserTriggeredNavigation","RouteReuseStrategy","_RouteReuseStrategy","DefaultRouteReuseStrategy","BaseRouteReuseStrategy","detachedTree","future","curr","_DefaultRouteReuseStrategy","ɵDefaultRouteReuseStrategy_BaseFactory","ɵɵgetInheritedFactory","StateManager","_StateManager","HistoryStateManager","_HistoryStateManager","UrlTree","listener","event","currentTransition","rawUrl","path","currentBrowserPageId","state","navigation","restoringFromCaughtError","targetPagePosition","navigationId","routerPageId","ɵHistoryStateManager_BaseFactory","NavigationResult","afterNextNavigation","action","result","defaultErrorHandler","error","exactMatchOptions","subsetMatchOptions","Router","_Router","Console","PendingTasks","Subscription","subscription","currentNavigation","opts","mergedTree","isPublicRouterEvent","stateCopy","urlTree","commands","navigationExtras","relativeTo","queryParams","fragment","queryParamsHandling","preserveFragment","f","q","relativeToUrlSegmentGroup","relativeToSnapshot","createSegmentGroupFromRoute","createUrlTreeFromSegmentGroup","isUrlTree","validateCommands","matchOptions","options","containsTree","params","priorPromise","reject","promise","res","rej","taskId","i","RuntimeError","RouterLink","_RouterLink","tabIndexAttribute","renderer","el","locationStrategy","tagName","s","newTabIndex","changes","commandsOrUrlTree","button","ctrlKey","shiftKey","altKey","metaKey","sanitizedValue","ɵɵsanitizeUrlOrResourceUrl","attrName","attrValue","nativeElement","ɵɵdirectiveInject","ActivatedRoute","ɵɵinjectAttribute","Renderer2","ElementRef","LocationStrategy","ɵɵdefineDirective","ɵɵlistener","$event","ɵɵattribute","booleanAttribute","ɵɵInputTransformsFeature","ɵɵNgOnChangesFeature","RouterLinkActive","_RouterLinkActive","element","cdr","link","EventEmitter","mergeAll","allLinkChanges","classes","hasActiveLinks","isActiveMatchOptions","isActiveCheckFn","ChangeDetectorRef","dirIndex","ɵɵcontentQuery","_t","ɵɵqueryRefresh","ɵɵloadQuery","PreloadingStrategy","RouterPreloader","_RouterPreloader","router","compiler","injector","preloadingStrategy","loader","filter","e","NavigationEnd","concatMap","routes","res","route","createEnvironmentInjector","injectorForCurrentRoute","injectorForChildren","from","mergeAll","loadedChildren$","of","recursiveLoadChildren$","mergeMap","config","loadComponent$","__ngFactoryType__","ɵɵinject","Router","Compiler","EnvironmentInjector","PreloadingStrategy","RouterConfigLoader","ɵɵdefineInjectable","ROUTER_SCROLLER","InjectionToken","RouterScroller","_RouterScroller","urlSerializer","transitions","viewportScroller","zone","options","NavigationStart","NavigationSkipped","NavigationSkippedCode","Scroll","routerEvent","anchor","ɵɵinvalidFactory","provideRouter","features","makeEnvironmentProviders","ROUTES","ActivatedRoute","rootRoute","APP_BOOTSTRAP_LISTENER","getBootstrapListener","feature","routerFeature","kind","providers","getBootstrapListener","injector","inject","Injector","bootstrappedComponentRef","ref","ApplicationRef","router","Router","bootstrapDone","BOOTSTRAP_DONE","INITIAL_NAVIGATION","ROUTER_PRELOADER","InjectFlags","ROUTER_SCROLLER","InjectionToken","Subject","withEnabledBlockingInitialNavigation","routerFeature","APP_INITIALIZER","locationInitialized","LOCATION_INITIALIZED","resolve","afterNextNavigation","NavigationTransitions","of","withDisabledInitialNavigation","ROUTER_PRELOADER","InjectionToken","withPreloading","preloadingStrategy","routerFeature","RouterPreloader","PreloadingStrategy","withComponentInputBinding","routerFeature","RoutedComponentInputBinder","INPUT_BINDER","withViewTransitions","options","providers","CREATE_VIEW_TRANSITION","createViewTransition","VIEW_TRANSITION_OPTIONS","__spreadValues","ROUTER_FORROOT_GUARD","InjectionToken","ROUTER_PROVIDERS","Location","UrlSerializer","DefaultUrlSerializer","Router","ChildrenOutletContexts","ActivatedRoute","rootRoute","RouterConfigLoader","RouterModule","_RouterModule","guard","routes","config","ROUTES","provideForRootGuard","Optional","SkipSelf","ROUTER_CONFIGURATION","provideHashLocationStrategy","providePathLocationStrategy","provideRouterScroller","withPreloading","provideInitialNavigation","withComponentInputBinding","withViewTransitions","provideRouterInitializer","__ngFactoryType__","ɵɵinject","ɵɵdefineNgModule","ɵɵdefineInjector","ROUTER_SCROLLER","viewportScroller","inject","ViewportScroller","zone","NgZone","transitions","NavigationTransitions","urlSerializer","RouterScroller","LocationStrategy","HashLocationStrategy","PathLocationStrategy","router","withDisabledInitialNavigation","withEnabledBlockingInitialNavigation","ROUTER_INITIALIZER","getBootstrapListener","APP_BOOTSTRAP_LISTENER"],"x_google_ignoreList":[0,1]}