@angular/router 17.1.0 → 17.1.2

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.
Files changed (32) hide show
  1. package/esm2022/src/components/empty_outlet.mjs +3 -3
  2. package/esm2022/src/create_url_tree.mjs +3 -3
  3. package/esm2022/src/directives/router_link.mjs +10 -8
  4. package/esm2022/src/directives/router_link_active.mjs +8 -5
  5. package/esm2022/src/directives/router_outlet.mjs +6 -6
  6. package/esm2022/src/navigation_canceling_error.mjs +7 -9
  7. package/esm2022/src/navigation_transition.mjs +3 -3
  8. package/esm2022/src/page_title_strategy.mjs +6 -6
  9. package/esm2022/src/route_reuse_strategy.mjs +6 -6
  10. package/esm2022/src/router.mjs +3 -3
  11. package/esm2022/src/router_config_loader.mjs +5 -5
  12. package/esm2022/src/router_module.mjs +4 -4
  13. package/esm2022/src/router_outlet_context.mjs +3 -3
  14. package/esm2022/src/router_preloader.mjs +9 -9
  15. package/esm2022/src/router_scroller.mjs +3 -3
  16. package/esm2022/src/statemanager/state_manager.mjs +6 -6
  17. package/esm2022/src/url_handling_strategy.mjs +6 -6
  18. package/esm2022/src/url_tree.mjs +3 -3
  19. package/esm2022/src/utils/collection.mjs +7 -1
  20. package/esm2022/src/utils/config_matching.mjs +3 -2
  21. package/esm2022/src/utils/type_guards.mjs +1 -9
  22. package/esm2022/src/version.mjs +1 -1
  23. package/esm2022/testing/src/router_testing_harness.mjs +6 -6
  24. package/esm2022/testing/src/router_testing_module.mjs +4 -4
  25. package/fesm2022/router.mjs +103 -100
  26. package/fesm2022/router.mjs.map +1 -1
  27. package/fesm2022/testing.mjs +11 -11
  28. package/fesm2022/upgrade.mjs +1 -1
  29. package/index.d.ts +1 -1
  30. package/package.json +4 -4
  31. package/testing/index.d.ts +1 -1
  32. package/upgrade/index.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v17.1.0
2
+ * @license Angular v17.1.2
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -9,7 +9,7 @@ import { ɵisPromise, ɵRuntimeError, Injectable, EventEmitter, inject, ViewCont
9
9
  import { isObservable, from, of, BehaviorSubject, combineLatest, EmptyError, concat, defer, pipe, throwError, EMPTY, ConnectableObservable, Subject, Subscription } from 'rxjs';
10
10
  import * as i3 from '@angular/common';
11
11
  import { DOCUMENT, Location, ViewportScroller, LOCATION_INITIALIZED, LocationStrategy, HashLocationStrategy, PathLocationStrategy } from '@angular/common';
12
- import { map, switchMap, take, startWith, filter, mergeMap, first, concatMap, tap, catchError, scan, defaultIfEmpty, last, takeLast, mapTo, finalize, refCount, takeUntil, mergeAll } from 'rxjs/operators';
12
+ import { map, switchMap, take, startWith, filter, mergeMap, first, concatMap, tap, catchError, scan, defaultIfEmpty, last as last$1, takeLast, mapTo, finalize, refCount, takeUntil, mergeAll } from 'rxjs/operators';
13
13
  import * as i1 from '@angular/platform-browser';
14
14
 
15
15
  /**
@@ -149,6 +149,12 @@ function equalArraysOrString(a, b) {
149
149
  return a === b;
150
150
  }
151
151
  }
152
+ /**
153
+ * Return the last element of an array.
154
+ */
155
+ function last(a) {
156
+ return a.length > 0 ? a[a.length - 1] : null;
157
+ }
152
158
  function wrapIntoObservable(value) {
153
159
  if (isObservable(value)) {
154
160
  return value;
@@ -415,10 +421,10 @@ function mapChildrenIntoArray(segment, fn) {
415
421
  * @publicApi
416
422
  */
417
423
  class UrlSerializer {
418
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlSerializer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
419
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlSerializer, providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }); }
424
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlSerializer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
425
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlSerializer, providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }); }
420
426
  }
421
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlSerializer, decorators: [{
427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlSerializer, decorators: [{
422
428
  type: Injectable,
423
429
  args: [{ providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }]
424
430
  }] });
@@ -941,7 +947,7 @@ class Navigation {
941
947
  'Root segment cannot have matrix parameters');
942
948
  }
943
949
  const cmdWithOutlet = commands.find(isCommandWithOutlets);
944
- if (cmdWithOutlet && cmdWithOutlet !== commands.at(-1)) {
950
+ if (cmdWithOutlet && cmdWithOutlet !== last(commands)) {
945
951
  throw new ɵRuntimeError(4004 /* RuntimeErrorCode.MISPLACED_OUTLETS_COMMAND */, (typeof ngDevMode === 'undefined' || ngDevMode) &&
946
952
  '{outlets:{}} has to be the last command');
947
953
  }
@@ -1841,10 +1847,10 @@ class ChildrenOutletContexts {
1841
1847
  getContext(childName) {
1842
1848
  return this.contexts.get(childName) || null;
1843
1849
  }
1844
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ChildrenOutletContexts, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1845
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ChildrenOutletContexts, providedIn: 'root' }); }
1850
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ChildrenOutletContexts, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1851
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ChildrenOutletContexts, providedIn: 'root' }); }
1846
1852
  }
1847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ChildrenOutletContexts, decorators: [{
1853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ChildrenOutletContexts, decorators: [{
1848
1854
  type: Injectable,
1849
1855
  args: [{ providedIn: 'root' }]
1850
1856
  }] });
@@ -2556,10 +2562,10 @@ class RouterOutlet {
2556
2562
  this.inputBinder?.bindActivatedRouteToOutletComponent(this);
2557
2563
  this.activateEvents.emit(this.activated.instance);
2558
2564
  }
2559
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2560
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0", type: RouterOutlet, isStandalone: true, selector: "router-outlet", inputs: { name: "name" }, outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], usesOnChanges: true, ngImport: i0 }); }
2565
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2566
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: RouterOutlet, isStandalone: true, selector: "router-outlet", inputs: { name: "name" }, outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], usesOnChanges: true, ngImport: i0 }); }
2561
2567
  }
2562
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterOutlet, decorators: [{
2568
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterOutlet, decorators: [{
2563
2569
  type: Directive,
2564
2570
  args: [{
2565
2571
  selector: 'router-outlet',
@@ -2662,10 +2668,10 @@ class RoutedComponentInputBinder {
2662
2668
  });
2663
2669
  this.outletDataSubscriptions.set(outlet, dataSubscription);
2664
2670
  }
2665
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RoutedComponentInputBinder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2666
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RoutedComponentInputBinder }); }
2671
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RoutedComponentInputBinder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2672
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RoutedComponentInputBinder }); }
2667
2673
  }
2668
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RoutedComponentInputBinder, decorators: [{
2674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RoutedComponentInputBinder, decorators: [{
2669
2675
  type: Injectable
2670
2676
  }] });
2671
2677
 
@@ -2714,25 +2720,23 @@ function createActivatedRoute(c) {
2714
2720
  const NAVIGATION_CANCELING_ERROR = 'ngNavigationCancelingError';
2715
2721
  function redirectingNavigationError(urlSerializer, redirect) {
2716
2722
  const { redirectTo, navigationBehaviorOptions } = isUrlTree(redirect) ? { redirectTo: redirect, navigationBehaviorOptions: undefined } : redirect;
2717
- const error = navigationCancelingError(ngDevMode && `Redirecting to "${urlSerializer.serialize(redirectTo)}"`, NavigationCancellationCode.Redirect, redirect);
2723
+ const error = navigationCancelingError(ngDevMode && `Redirecting to "${urlSerializer.serialize(redirectTo)}"`, NavigationCancellationCode.Redirect);
2718
2724
  error.url = redirectTo;
2719
2725
  error.navigationBehaviorOptions = navigationBehaviorOptions;
2720
2726
  return error;
2721
2727
  }
2722
- function navigationCancelingError(message, code, redirectUrl) {
2723
- const error = new Error('NavigationCancelingError: ' + (message || ''));
2728
+ function navigationCancelingError(message, code) {
2729
+ const error = new Error(`NavigationCancelingError: ${message || ''}`);
2724
2730
  error[NAVIGATION_CANCELING_ERROR] = true;
2725
2731
  error.cancellationCode = code;
2726
- if (redirectUrl) {
2727
- error.url = redirectUrl;
2728
- }
2729
2732
  return error;
2730
2733
  }
2731
- function isRedirectingNavigationCancelingError$1(error) {
2732
- return isNavigationCancelingError$1(error) && isUrlTree(error.url);
2734
+ function isRedirectingNavigationCancelingError(error) {
2735
+ return isNavigationCancelingError(error) &&
2736
+ isUrlTree(error.url);
2733
2737
  }
2734
- function isNavigationCancelingError$1(error) {
2735
- return error && error[NAVIGATION_CANCELING_ERROR];
2738
+ function isNavigationCancelingError(error) {
2739
+ return !!error && error[NAVIGATION_CANCELING_ERROR];
2736
2740
  }
2737
2741
 
2738
2742
  /**
@@ -2745,10 +2749,10 @@ function isNavigationCancelingError$1(error) {
2745
2749
  * to this `EmptyOutletComponent`.
2746
2750
  */
2747
2751
  class ɵEmptyOutletComponent {
2748
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2749
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.0", type: ɵEmptyOutletComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
2752
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2753
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ɵEmptyOutletComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
2750
2754
  }
2751
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
2755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
2752
2756
  type: Component,
2753
2757
  args: [{
2754
2758
  template: `<router-outlet></router-outlet>`,
@@ -3302,12 +3306,6 @@ function isCanDeactivate(guard) {
3302
3306
  function isCanMatch(guard) {
3303
3307
  return guard && isFunction(guard.canMatch);
3304
3308
  }
3305
- function isRedirectingNavigationCancelingError(error) {
3306
- return isNavigationCancelingError(error) && isUrlTree(error.url);
3307
- }
3308
- function isNavigationCancelingError(error) {
3309
- return error && error[NAVIGATION_CANCELING_ERROR];
3310
- }
3311
3309
  function isEmptyError(e) {
3312
3310
  return e instanceof EmptyError || e?.name === 'EmptyError';
3313
3311
  }
@@ -3639,7 +3637,7 @@ function match(segmentGroup, route, segments) {
3639
3637
  function createWildcardMatchResult(segments) {
3640
3638
  return {
3641
3639
  matched: true,
3642
- parameters: segments.at(-1)?.parameters ?? {},
3640
+ parameters: segments.length > 0 ? last(segments).parameters : {},
3643
3641
  consumedSegments: segments,
3644
3642
  remainingSegments: [],
3645
3643
  positionalParamSegments: {},
@@ -3825,7 +3823,7 @@ class Recognizer {
3825
3823
  }), scan((children, outletChildren) => {
3826
3824
  children.push(...outletChildren);
3827
3825
  return children;
3828
- }), defaultIfEmpty(null), last(), mergeMap(children => {
3826
+ }), defaultIfEmpty(null), last$1(), mergeMap(children => {
3829
3827
  if (children === null)
3830
3828
  return noMatch$1(segmentGroup);
3831
3829
  // Because we may have matched two outlets to the same empty path segment, we can have
@@ -4174,10 +4172,10 @@ class TitleStrategy {
4174
4172
  getResolvedTitleForRoute(snapshot) {
4175
4173
  return snapshot.data[RouteTitleKey];
4176
4174
  }
4177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: TitleStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4178
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: TitleStrategy, providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }); }
4175
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TitleStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4176
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TitleStrategy, providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }); }
4179
4177
  }
4180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: TitleStrategy, decorators: [{
4178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TitleStrategy, decorators: [{
4181
4179
  type: Injectable,
4182
4180
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }]
4183
4181
  }] });
@@ -4200,10 +4198,10 @@ class DefaultTitleStrategy extends TitleStrategy {
4200
4198
  this.title.setTitle(title);
4201
4199
  }
4202
4200
  }
4203
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable }); }
4204
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' }); }
4201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable }); }
4202
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' }); }
4205
4203
  }
4206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
4204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
4207
4205
  type: Injectable,
4208
4206
  args: [{ providedIn: 'root' }]
4209
4207
  }], ctorParameters: () => [{ type: i1.Title }] });
@@ -4228,7 +4226,7 @@ const ROUTER_CONFIGURATION = new InjectionToken((typeof ngDevMode === 'undefined
4228
4226
  *
4229
4227
  * @publicApi
4230
4228
  */
4231
- const ROUTES = new InjectionToken('ROUTES');
4229
+ const ROUTES = new InjectionToken(ngDevMode ? 'ROUTES' : '');
4232
4230
  class RouterConfigLoader {
4233
4231
  constructor() {
4234
4232
  this.componentLoaders = new WeakMap();
@@ -4281,10 +4279,10 @@ class RouterConfigLoader {
4281
4279
  this.childrenLoaders.set(route, loader);
4282
4280
  return loader;
4283
4281
  }
4284
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterConfigLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4285
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterConfigLoader, providedIn: 'root' }); }
4282
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterConfigLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4283
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterConfigLoader, providedIn: 'root' }); }
4286
4284
  }
4287
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterConfigLoader, decorators: [{
4285
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterConfigLoader, decorators: [{
4288
4286
  type: Injectable,
4289
4287
  args: [{ providedIn: 'root' }]
4290
4288
  }] });
@@ -4352,10 +4350,10 @@ function maybeUnwrapDefaultExport(input) {
4352
4350
  * @publicApi
4353
4351
  */
4354
4352
  class UrlHandlingStrategy {
4355
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4356
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlHandlingStrategy, providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }); }
4353
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4354
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlHandlingStrategy, providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }); }
4357
4355
  }
4358
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: UrlHandlingStrategy, decorators: [{
4356
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: UrlHandlingStrategy, decorators: [{
4359
4357
  type: Injectable,
4360
4358
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }]
4361
4359
  }] });
@@ -4372,10 +4370,10 @@ class DefaultUrlHandlingStrategy {
4372
4370
  merge(newUrlPart, wholeUrl) {
4373
4371
  return newUrlPart;
4374
4372
  }
4375
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultUrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4376
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultUrlHandlingStrategy, providedIn: 'root' }); }
4373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultUrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4374
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultUrlHandlingStrategy, providedIn: 'root' }); }
4377
4375
  }
4378
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultUrlHandlingStrategy, decorators: [{
4376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultUrlHandlingStrategy, decorators: [{
4379
4377
  type: Injectable,
4380
4378
  args: [{ providedIn: 'root' }]
4381
4379
  }] });
@@ -4725,11 +4723,11 @@ class NavigationTransitions {
4725
4723
  errored = true;
4726
4724
  /* This error type is issued during Redirect, and is handled as a
4727
4725
  * cancellation rather than an error. */
4728
- if (isNavigationCancelingError$1(e)) {
4726
+ if (isNavigationCancelingError(e)) {
4729
4727
  this.events.next(new NavigationCancel(overallTransitionState.id, this.urlSerializer.serialize(overallTransitionState.extractedUrl), e.message, e.cancellationCode));
4730
4728
  // When redirecting, we need to delay resolving the navigation
4731
4729
  // promise and push it to the redirect navigation
4732
- if (!isRedirectingNavigationCancelingError$1(e)) {
4730
+ if (!isRedirectingNavigationCancelingError(e)) {
4733
4731
  overallTransitionState.resolve(false);
4734
4732
  }
4735
4733
  else {
@@ -4798,10 +4796,10 @@ class NavigationTransitions {
4798
4796
  return extractedBrowserUrl.toString() !== this.currentTransition?.extractedUrl.toString() &&
4799
4797
  !this.currentTransition?.extras.skipLocationChange;
4800
4798
  }
4801
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NavigationTransitions, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4802
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NavigationTransitions, providedIn: 'root' }); }
4799
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NavigationTransitions, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4800
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NavigationTransitions, providedIn: 'root' }); }
4803
4801
  }
4804
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NavigationTransitions, decorators: [{
4802
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NavigationTransitions, decorators: [{
4805
4803
  type: Injectable,
4806
4804
  args: [{ providedIn: 'root' }]
4807
4805
  }], ctorParameters: () => [] });
@@ -4817,10 +4815,10 @@ function isBrowserTriggeredNavigation(source) {
4817
4815
  * @publicApi
4818
4816
  */
4819
4817
  class RouteReuseStrategy {
4820
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouteReuseStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4821
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouteReuseStrategy, providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }); }
4818
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouteReuseStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4819
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouteReuseStrategy, providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }); }
4822
4820
  }
4823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouteReuseStrategy, decorators: [{
4821
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouteReuseStrategy, decorators: [{
4824
4822
  type: Injectable,
4825
4823
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }]
4826
4824
  }] });
@@ -4871,19 +4869,19 @@ class BaseRouteReuseStrategy {
4871
4869
  }
4872
4870
  }
4873
4871
  class DefaultRouteReuseStrategy extends BaseRouteReuseStrategy {
4874
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultRouteReuseStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4875
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultRouteReuseStrategy, providedIn: 'root' }); }
4872
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultRouteReuseStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4873
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultRouteReuseStrategy, providedIn: 'root' }); }
4876
4874
  }
4877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DefaultRouteReuseStrategy, decorators: [{
4875
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DefaultRouteReuseStrategy, decorators: [{
4878
4876
  type: Injectable,
4879
4877
  args: [{ providedIn: 'root' }]
4880
4878
  }] });
4881
4879
 
4882
4880
  class StateManager {
4883
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: StateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4884
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: StateManager, providedIn: 'root', useFactory: () => inject(HistoryStateManager) }); }
4881
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: StateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4882
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: StateManager, providedIn: 'root', useFactory: () => inject(HistoryStateManager) }); }
4885
4883
  }
4886
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: StateManager, decorators: [{
4884
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: StateManager, decorators: [{
4887
4885
  type: Injectable,
4888
4886
  args: [{ providedIn: 'root', useFactory: () => inject(HistoryStateManager) }]
4889
4887
  }] });
@@ -5060,10 +5058,10 @@ class HistoryStateManager extends StateManager {
5060
5058
  }
5061
5059
  return { navigationId };
5062
5060
  }
5063
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: HistoryStateManager, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
5064
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: HistoryStateManager, providedIn: 'root' }); }
5061
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HistoryStateManager, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
5062
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HistoryStateManager, providedIn: 'root' }); }
5065
5063
  }
5066
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: HistoryStateManager, decorators: [{
5064
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HistoryStateManager, decorators: [{
5067
5065
  type: Injectable,
5068
5066
  args: [{ providedIn: 'root' }]
5069
5067
  }] });
@@ -5635,10 +5633,10 @@ class Router {
5635
5633
  return Promise.reject(e);
5636
5634
  });
5637
5635
  }
5638
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: Router, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5639
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: Router, providedIn: 'root' }); }
5636
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: Router, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5637
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: Router, providedIn: 'root' }); }
5640
5638
  }
5641
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: Router, decorators: [{
5639
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: Router, decorators: [{
5642
5640
  type: Injectable,
5643
5641
  args: [{ providedIn: 'root' }]
5644
5642
  }], ctorParameters: () => [] });
@@ -5840,7 +5838,8 @@ class RouterLink {
5840
5838
  }
5841
5839
  /** @nodoc */
5842
5840
  onClick(button, ctrlKey, shiftKey, altKey, metaKey) {
5843
- if (this.urlTree === null) {
5841
+ const urlTree = this.urlTree;
5842
+ if (urlTree === null) {
5844
5843
  return true;
5845
5844
  }
5846
5845
  if (this.isAnchorElement) {
@@ -5857,7 +5856,7 @@ class RouterLink {
5857
5856
  state: this.state,
5858
5857
  info: this.info,
5859
5858
  };
5860
- this.router.navigateByUrl(this.urlTree, extras);
5859
+ this.router.navigateByUrl(urlTree, extras);
5861
5860
  // Return `false` for `<a>` elements to prevent default action
5862
5861
  // and cancel the native behavior, since the navigation is handled
5863
5862
  // by the Router.
@@ -5868,8 +5867,9 @@ class RouterLink {
5868
5867
  this.subscription?.unsubscribe();
5869
5868
  }
5870
5869
  updateHref() {
5871
- this.href = this.urlTree !== null && this.locationStrategy ?
5872
- this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)) :
5870
+ const urlTree = this.urlTree;
5871
+ this.href = urlTree !== null && this.locationStrategy ?
5872
+ this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(urlTree)) :
5873
5873
  null;
5874
5874
  const sanitizedValue = this.href === null ?
5875
5875
  null :
@@ -5910,10 +5910,10 @@ class RouterLink {
5910
5910
  preserveFragment: this.preserveFragment,
5911
5911
  });
5912
5912
  }
5913
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterLink, deps: [{ token: Router }, { token: ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive }); }
5914
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.1.0", type: RouterLink, isStandalone: true, selector: "[routerLink]", inputs: { target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", state: "state", info: "info", relativeTo: "relativeTo", preserveFragment: ["preserveFragment", "preserveFragment", booleanAttribute], skipLocationChange: ["skipLocationChange", "skipLocationChange", booleanAttribute], replaceUrl: ["replaceUrl", "replaceUrl", booleanAttribute], routerLink: "routerLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" }, properties: { "attr.target": "this.target" } }, usesOnChanges: true, ngImport: i0 }); }
5913
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterLink, deps: [{ token: Router }, { token: ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive }); }
5914
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.1.2", type: RouterLink, isStandalone: true, selector: "[routerLink]", inputs: { target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", state: "state", info: "info", relativeTo: "relativeTo", preserveFragment: ["preserveFragment", "preserveFragment", booleanAttribute], skipLocationChange: ["skipLocationChange", "skipLocationChange", booleanAttribute], replaceUrl: ["replaceUrl", "replaceUrl", booleanAttribute], routerLink: "routerLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" }, properties: { "attr.target": "this.target" } }, usesOnChanges: true, ngImport: i0 }); }
5915
5915
  }
5916
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterLink, decorators: [{
5916
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterLink, decorators: [{
5917
5917
  type: Directive,
5918
5918
  args: [{
5919
5919
  selector: '[routerLink]',
@@ -6132,16 +6132,19 @@ class RouterLinkActive {
6132
6132
  this.routerLinkActiveOptions :
6133
6133
  // While the types should disallow `undefined` here, it's possible without strict inputs
6134
6134
  (this.routerLinkActiveOptions.exact || false);
6135
- return (link) => link.urlTree ? router.isActive(link.urlTree, options) : false;
6135
+ return (link) => {
6136
+ const urlTree = link.urlTree;
6137
+ return urlTree ? router.isActive(urlTree, options) : false;
6138
+ };
6136
6139
  }
6137
6140
  hasActiveLinks() {
6138
6141
  const isActiveCheckFn = this.isLinkActive(this.router);
6139
6142
  return this.link && isActiveCheckFn(this.link) || this.links.some(isActiveCheckFn);
6140
6143
  }
6141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterLinkActive, deps: [{ token: Router }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: RouterLink, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
6142
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0", type: RouterLinkActive, isStandalone: true, selector: "[routerLinkActive]", inputs: { routerLinkActiveOptions: "routerLinkActiveOptions", ariaCurrentWhenActive: "ariaCurrentWhenActive", routerLinkActive: "routerLinkActive" }, outputs: { isActiveChange: "isActiveChange" }, queries: [{ propertyName: "links", predicate: RouterLink, descendants: true }], exportAs: ["routerLinkActive"], usesOnChanges: true, ngImport: i0 }); }
6144
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterLinkActive, deps: [{ token: Router }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: RouterLink, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
6145
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: RouterLinkActive, isStandalone: true, selector: "[routerLinkActive]", inputs: { routerLinkActiveOptions: "routerLinkActiveOptions", ariaCurrentWhenActive: "ariaCurrentWhenActive", routerLinkActive: "routerLinkActive" }, outputs: { isActiveChange: "isActiveChange" }, queries: [{ propertyName: "links", predicate: RouterLink, descendants: true }], exportAs: ["routerLinkActive"], usesOnChanges: true, ngImport: i0 }); }
6143
6146
  }
6144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterLinkActive, decorators: [{
6147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterLinkActive, decorators: [{
6145
6148
  type: Directive,
6146
6149
  args: [{
6147
6150
  selector: '[routerLinkActive]',
@@ -6193,10 +6196,10 @@ class PreloadAllModules {
6193
6196
  preload(route, fn) {
6194
6197
  return fn().pipe(catchError(() => of(null)));
6195
6198
  }
6196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: PreloadAllModules, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6197
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: PreloadAllModules, providedIn: 'root' }); }
6199
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PreloadAllModules, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6200
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PreloadAllModules, providedIn: 'root' }); }
6198
6201
  }
6199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: PreloadAllModules, decorators: [{
6202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PreloadAllModules, decorators: [{
6200
6203
  type: Injectable,
6201
6204
  args: [{ providedIn: 'root' }]
6202
6205
  }] });
@@ -6213,10 +6216,10 @@ class NoPreloading {
6213
6216
  preload(route, fn) {
6214
6217
  return of(null);
6215
6218
  }
6216
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NoPreloading, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6217
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NoPreloading, providedIn: 'root' }); }
6219
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NoPreloading, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6220
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NoPreloading, providedIn: 'root' }); }
6218
6221
  }
6219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: NoPreloading, decorators: [{
6222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NoPreloading, decorators: [{
6220
6223
  type: Injectable,
6221
6224
  args: [{ providedIn: 'root' }]
6222
6225
  }] });
@@ -6309,10 +6312,10 @@ class RouterPreloader {
6309
6312
  }
6310
6313
  });
6311
6314
  }
6312
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterPreloader, deps: [{ token: Router }, { token: i0.Compiler }, { token: i0.EnvironmentInjector }, { token: PreloadingStrategy }, { token: RouterConfigLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
6313
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterPreloader, providedIn: 'root' }); }
6315
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterPreloader, deps: [{ token: Router }, { token: i0.Compiler }, { token: i0.EnvironmentInjector }, { token: PreloadingStrategy }, { token: RouterConfigLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
6316
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterPreloader, providedIn: 'root' }); }
6314
6317
  }
6315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterPreloader, decorators: [{
6318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterPreloader, decorators: [{
6316
6319
  type: Injectable,
6317
6320
  args: [{ providedIn: 'root' }]
6318
6321
  }], ctorParameters: () => [{ type: Router }, { type: i0.Compiler }, { type: i0.EnvironmentInjector }, { type: PreloadingStrategy }, { type: RouterConfigLoader }] });
@@ -6405,10 +6408,10 @@ class RouterScroller {
6405
6408
  this.routerEventsSubscription?.unsubscribe();
6406
6409
  this.scrollEventsSubscription?.unsubscribe();
6407
6410
  }
6408
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterScroller, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
6409
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterScroller }); }
6411
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterScroller, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
6412
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterScroller }); }
6410
6413
  }
6411
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterScroller, decorators: [{
6414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterScroller, decorators: [{
6412
6415
  type: Injectable
6413
6416
  }], ctorParameters: () => [{ type: UrlSerializer }, { type: NavigationTransitions }, { type: i3.ViewportScroller }, { type: i0.NgZone }, { type: undefined }] });
6414
6417
 
@@ -7049,11 +7052,11 @@ class RouterModule {
7049
7052
  providers: [{ provide: ROUTES, multi: true, useValue: routes }],
7050
7053
  };
7051
7054
  }
7052
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterModule, deps: [{ token: ROUTER_FORROOT_GUARD, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
7053
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: RouterModule, imports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent], exports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent] }); }
7054
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterModule }); }
7055
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterModule, deps: [{ token: ROUTER_FORROOT_GUARD, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
7056
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: RouterModule, imports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent], exports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent] }); }
7057
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterModule }); }
7055
7058
  }
7056
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RouterModule, decorators: [{
7059
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RouterModule, decorators: [{
7057
7060
  type: NgModule,
7058
7061
  args: [{
7059
7062
  imports: ROUTER_DIRECTIVES,
@@ -7198,7 +7201,7 @@ function mapToResolve(provider) {
7198
7201
  /**
7199
7202
  * @publicApi
7200
7203
  */
7201
- const VERSION = new Version('17.1.0');
7204
+ const VERSION = new Version('17.1.2');
7202
7205
 
7203
7206
  /**
7204
7207
  * @module