@angular/router 20.0.0-next.6 → 20.0.0-next.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.0.0-next.6
2
+ * @license Angular v20.0.0-next.8
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -432,10 +432,10 @@ function mapChildrenIntoArray(segment, fn) {
432
432
  * @publicApi
433
433
  */
434
434
  class UrlSerializer {
435
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlSerializer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
436
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlSerializer, providedIn: 'root', useFactory: () => new DefaultUrlSerializer() });
435
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlSerializer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
436
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlSerializer, providedIn: 'root', useFactory: () => new DefaultUrlSerializer() });
437
437
  }
438
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlSerializer, decorators: [{
438
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlSerializer, decorators: [{
439
439
  type: Injectable,
440
440
  args: [{ providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }]
441
441
  }] });
@@ -1829,6 +1829,9 @@ class RedirectRequest {
1829
1829
  this.navigationBehaviorOptions = navigationBehaviorOptions;
1830
1830
  }
1831
1831
  }
1832
+ function isPublicRouterEvent(e) {
1833
+ return !(e instanceof BeforeActivateRoutes) && !(e instanceof RedirectRequest);
1834
+ }
1832
1835
  function stringifyEvent(routerEvent) {
1833
1836
  switch (routerEvent.type) {
1834
1837
  case EventType.ActivationEnd:
@@ -1938,15 +1941,17 @@ function validateNode(route, fullPath, requireStandaloneComponents) {
1938
1941
  if (route.children && route.loadChildren) {
1939
1942
  throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': children and loadChildren cannot be used together`);
1940
1943
  }
1941
- if (route.redirectTo && (route.component || route.loadComponent)) {
1942
- throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': redirectTo and component/loadComponent cannot be used together`);
1943
- }
1944
1944
  if (route.component && route.loadComponent) {
1945
1945
  throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': component and loadComponent cannot be used together`);
1946
1946
  }
1947
- if (route.redirectTo && route.canActivate) {
1948
- throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': redirectTo and canActivate cannot be used together. Redirects happen before activation ` +
1949
- `so canActivate will never be executed.`);
1947
+ if (route.redirectTo) {
1948
+ if (route.component || route.loadComponent) {
1949
+ throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': redirectTo and component/loadComponent cannot be used together`);
1950
+ }
1951
+ if (route.canMatch || route.canActivate) {
1952
+ throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': redirectTo and ${route.canMatch ? 'canMatch' : 'canActivate'} cannot be used together.` +
1953
+ `Redirects happen before guards are executed.`);
1954
+ }
1950
1955
  }
1951
1956
  if (route.path && route.matcher) {
1952
1957
  throw new _RuntimeError(4014 /* RuntimeErrorCode.INVALID_ROUTE_CONFIG */, `Invalid configuration of route '${fullPath}': path and matcher cannot be used together`);
@@ -2114,10 +2119,10 @@ class ChildrenOutletContexts {
2114
2119
  getContext(childName) {
2115
2120
  return this.contexts.get(childName) || null;
2116
2121
  }
2117
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: ChildrenOutletContexts, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
2118
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: ChildrenOutletContexts, providedIn: 'root' });
2122
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: ChildrenOutletContexts, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
2123
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: ChildrenOutletContexts, providedIn: 'root' });
2119
2124
  }
2120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: ChildrenOutletContexts, decorators: [{
2125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: ChildrenOutletContexts, decorators: [{
2121
2126
  type: Injectable,
2122
2127
  args: [{ providedIn: 'root' }]
2123
2128
  }], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
@@ -2904,10 +2909,10 @@ class RouterOutlet {
2904
2909
  this.inputBinder?.bindActivatedRouteToOutletComponent(this);
2905
2910
  this.activateEvents.emit(this.activated.instance);
2906
2911
  }
2907
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouterOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2908
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.0-next.6", type: RouterOutlet, isStandalone: true, selector: "router-outlet", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, routerOutletData: { classPropertyName: "routerOutletData", publicName: "routerOutletData", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], usesOnChanges: true, ngImport: i0 });
2912
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouterOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2913
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.0-next.8", type: RouterOutlet, isStandalone: true, selector: "router-outlet", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, routerOutletData: { classPropertyName: "routerOutletData", publicName: "routerOutletData", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], usesOnChanges: true, ngImport: i0 });
2909
2914
  }
2910
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouterOutlet, decorators: [{
2915
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouterOutlet, decorators: [{
2911
2916
  type: Directive,
2912
2917
  args: [{
2913
2918
  selector: 'router-outlet',
@@ -3017,10 +3022,10 @@ class RoutedComponentInputBinder {
3017
3022
  });
3018
3023
  this.outletDataSubscriptions.set(outlet, dataSubscription);
3019
3024
  }
3020
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RoutedComponentInputBinder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3021
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RoutedComponentInputBinder });
3025
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RoutedComponentInputBinder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3026
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RoutedComponentInputBinder });
3022
3027
  }
3023
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RoutedComponentInputBinder, decorators: [{
3028
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RoutedComponentInputBinder, decorators: [{
3024
3029
  type: Injectable
3025
3030
  }] });
3026
3031
 
@@ -3713,20 +3718,16 @@ class ApplyRedirects {
3713
3718
  }
3714
3719
  }
3715
3720
  applyRedirectCommands(segments, redirectTo, posParams, currentSnapshot, injector) {
3716
- if (typeof redirectTo !== 'string') {
3717
- const redirectToFn = redirectTo;
3718
- const { queryParams, fragment, routeConfig, url, outlet, params, data, title } = currentSnapshot;
3719
- const newRedirect = runInInjectionContext(injector, () => redirectToFn({ params, data, queryParams, fragment, routeConfig, url, outlet, title }));
3720
- if (newRedirect instanceof UrlTree) {
3721
- throw new AbsoluteRedirect(newRedirect);
3721
+ return getRedirectResult(redirectTo, currentSnapshot, injector).pipe(map((redirect) => {
3722
+ if (redirect instanceof UrlTree) {
3723
+ throw new AbsoluteRedirect(redirect);
3722
3724
  }
3723
- redirectTo = newRedirect;
3724
- }
3725
- const newTree = this.applyRedirectCreateUrlTree(redirectTo, this.urlSerializer.parse(redirectTo), segments, posParams);
3726
- if (redirectTo[0] === '/') {
3727
- throw new AbsoluteRedirect(newTree);
3728
- }
3729
- return newTree;
3725
+ const newTree = this.applyRedirectCreateUrlTree(redirect, this.urlSerializer.parse(redirect), segments, posParams);
3726
+ if (redirect[0] === '/') {
3727
+ throw new AbsoluteRedirect(newTree);
3728
+ }
3729
+ return newTree;
3730
+ }));
3730
3731
  }
3731
3732
  applyRedirectCreateUrlTree(redirectTo, urlTree, segments, posParams) {
3732
3733
  const newRoot = this.createSegmentGroup(redirectTo, urlTree.root, segments, posParams);
@@ -3778,6 +3779,14 @@ class ApplyRedirects {
3778
3779
  return redirectToUrlSegment;
3779
3780
  }
3780
3781
  }
3782
+ function getRedirectResult(redirectTo, currentSnapshot, injector) {
3783
+ if (typeof redirectTo === 'string') {
3784
+ return of(redirectTo);
3785
+ }
3786
+ const redirectToFn = redirectTo;
3787
+ const { queryParams, fragment, routeConfig, url, outlet, params, data, title } = currentSnapshot;
3788
+ return wrapIntoObservable(runInInjectionContext(injector, () => redirectToFn({ params, data, queryParams, fragment, routeConfig, url, outlet, title })));
3789
+ }
3781
3790
 
3782
3791
  const noMatch = {
3783
3792
  matched: false,
@@ -4075,8 +4084,8 @@ class Recognizer {
4075
4084
  const inherited = getInherited(currentSnapshot, parentRoute, this.paramsInheritanceStrategy);
4076
4085
  currentSnapshot.params = Object.freeze(inherited.params);
4077
4086
  currentSnapshot.data = Object.freeze(inherited.data);
4078
- const newTree = this.applyRedirects.applyRedirectCommands(consumedSegments, route.redirectTo, positionalParamSegments, currentSnapshot, injector);
4079
- return this.applyRedirects.lineralizeSegments(route, newTree).pipe(mergeMap((newSegments) => {
4087
+ const newTree$ = this.applyRedirects.applyRedirectCommands(consumedSegments, route.redirectTo, positionalParamSegments, currentSnapshot, injector);
4088
+ return newTree$.pipe(switchMap((newTree) => this.applyRedirects.lineralizeSegments(route, newTree)), mergeMap((newSegments) => {
4080
4089
  return this.processSegment(injector, routes, segmentGroup, newSegments.concat(remainingSegments), outlet, false, parentRoute);
4081
4090
  }));
4082
4091
  }
@@ -4356,10 +4365,10 @@ class TitleStrategy {
4356
4365
  getResolvedTitleForRoute(snapshot) {
4357
4366
  return snapshot.data[RouteTitleKey];
4358
4367
  }
4359
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: TitleStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4360
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: TitleStrategy, providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) });
4368
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: TitleStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4369
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: TitleStrategy, providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) });
4361
4370
  }
4362
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: TitleStrategy, decorators: [{
4371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: TitleStrategy, decorators: [{
4363
4372
  type: Injectable,
4364
4373
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }]
4365
4374
  }] });
@@ -4383,10 +4392,10 @@ class DefaultTitleStrategy extends TitleStrategy {
4383
4392
  this.title.setTitle(title);
4384
4393
  }
4385
4394
  }
4386
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable });
4387
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' });
4395
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable });
4396
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' });
4388
4397
  }
4389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
4398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
4390
4399
  type: Injectable,
4391
4400
  args: [{ providedIn: 'root' }]
4392
4401
  }], ctorParameters: () => [{ type: i1.Title }] });
@@ -4411,10 +4420,10 @@ const ROUTER_CONFIGURATION = new InjectionToken(typeof ngDevMode === 'undefined'
4411
4420
  * to this `EmptyOutletComponent`.
4412
4421
  */
4413
4422
  class ɵEmptyOutletComponent {
4414
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4415
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.6", type: ɵEmptyOutletComponent, isStandalone: true, selector: "ng-component", exportAs: ["emptyRouterOutlet"], ngImport: i0, template: `<router-outlet/>`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
4423
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4424
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-next.8", type: ɵEmptyOutletComponent, isStandalone: true, selector: "ng-component", exportAs: ["emptyRouterOutlet"], ngImport: i0, template: `<router-outlet/>`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
4416
4425
  }
4417
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
4426
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
4418
4427
  type: Component,
4419
4428
  args: [{
4420
4429
  template: `<router-outlet/>`,
@@ -4500,10 +4509,10 @@ class RouterConfigLoader {
4500
4509
  this.childrenLoaders.set(route, loader);
4501
4510
  return loader;
4502
4511
  }
4503
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouterConfigLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4504
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouterConfigLoader, providedIn: 'root' });
4512
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouterConfigLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4513
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouterConfigLoader, providedIn: 'root' });
4505
4514
  }
4506
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouterConfigLoader, decorators: [{
4515
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouterConfigLoader, decorators: [{
4507
4516
  type: Injectable,
4508
4517
  args: [{ providedIn: 'root' }]
4509
4518
  }] });
@@ -4570,10 +4579,10 @@ function maybeUnwrapDefaultExport(input) {
4570
4579
  * @publicApi
4571
4580
  */
4572
4581
  class UrlHandlingStrategy {
4573
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4574
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlHandlingStrategy, providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) });
4582
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4583
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlHandlingStrategy, providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) });
4575
4584
  }
4576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: UrlHandlingStrategy, decorators: [{
4585
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: UrlHandlingStrategy, decorators: [{
4577
4586
  type: Injectable,
4578
4587
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }]
4579
4588
  }] });
@@ -4590,10 +4599,10 @@ class DefaultUrlHandlingStrategy {
4590
4599
  merge(newUrlPart, wholeUrl) {
4591
4600
  return newUrlPart;
4592
4601
  }
4593
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultUrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4594
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultUrlHandlingStrategy, providedIn: 'root' });
4602
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultUrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4603
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultUrlHandlingStrategy, providedIn: 'root' });
4595
4604
  }
4596
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultUrlHandlingStrategy, decorators: [{
4605
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultUrlHandlingStrategy, decorators: [{
4597
4606
  type: Injectable,
4598
4607
  args: [{ providedIn: 'root' }]
4599
4608
  }] });
@@ -5050,10 +5059,10 @@ class NavigationTransitions {
5050
5059
  return (currentBrowserUrl.toString() !== targetBrowserUrl?.toString() &&
5051
5060
  !this.currentNavigation?.extras.skipLocationChange);
5052
5061
  }
5053
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: NavigationTransitions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5054
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: NavigationTransitions, providedIn: 'root' });
5062
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: NavigationTransitions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5063
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: NavigationTransitions, providedIn: 'root' });
5055
5064
  }
5056
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: NavigationTransitions, decorators: [{
5065
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: NavigationTransitions, decorators: [{
5057
5066
  type: Injectable,
5058
5067
  args: [{ providedIn: 'root' }]
5059
5068
  }], ctorParameters: () => [] });
@@ -5069,10 +5078,10 @@ function isBrowserTriggeredNavigation(source) {
5069
5078
  * @publicApi
5070
5079
  */
5071
5080
  class RouteReuseStrategy {
5072
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouteReuseStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5073
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouteReuseStrategy, providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) });
5081
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouteReuseStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5082
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouteReuseStrategy, providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) });
5074
5083
  }
5075
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: RouteReuseStrategy, decorators: [{
5084
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: RouteReuseStrategy, decorators: [{
5076
5085
  type: Injectable,
5077
5086
  args: [{ providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }]
5078
5087
  }] });
@@ -5123,10 +5132,10 @@ class BaseRouteReuseStrategy {
5123
5132
  }
5124
5133
  }
5125
5134
  class DefaultRouteReuseStrategy extends BaseRouteReuseStrategy {
5126
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultRouteReuseStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
5127
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultRouteReuseStrategy, providedIn: 'root' });
5135
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultRouteReuseStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
5136
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultRouteReuseStrategy, providedIn: 'root' });
5128
5137
  }
5129
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: DefaultRouteReuseStrategy, decorators: [{
5138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: DefaultRouteReuseStrategy, decorators: [{
5130
5139
  type: Injectable,
5131
5140
  args: [{ providedIn: 'root' }]
5132
5141
  }] });
@@ -5225,10 +5234,10 @@ class StateManager {
5225
5234
  // when merging, such as the query params so they are not lost on a refresh.
5226
5235
  this.rawUrlTree = this.urlHandlingStrategy.merge(this.currentUrlTree, finalUrl ?? this.rawUrlTree);
5227
5236
  }
5228
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: StateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5229
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: StateManager, providedIn: 'root', useFactory: () => inject(HistoryStateManager) });
5237
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: StateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5238
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: StateManager, providedIn: 'root', useFactory: () => inject(HistoryStateManager) });
5230
5239
  }
5231
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: StateManager, decorators: [{
5240
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: StateManager, decorators: [{
5232
5241
  type: Injectable,
5233
5242
  args: [{ providedIn: 'root', useFactory: () => inject(HistoryStateManager) }]
5234
5243
  }] });
@@ -5360,10 +5369,10 @@ class HistoryStateManager extends StateManager {
5360
5369
  }
5361
5370
  return { navigationId };
5362
5371
  }
5363
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: HistoryStateManager, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
5364
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: HistoryStateManager, providedIn: 'root' });
5372
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: HistoryStateManager, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
5373
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: HistoryStateManager, providedIn: 'root' });
5365
5374
  }
5366
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: HistoryStateManager, decorators: [{
5375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: HistoryStateManager, decorators: [{
5367
5376
  type: Injectable,
5368
5377
  args: [{ providedIn: 'root' }]
5369
5378
  }] });
@@ -5925,10 +5934,10 @@ class Router {
5925
5934
  return Promise.reject(e);
5926
5935
  });
5927
5936
  }
5928
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: Router, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5929
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: Router, providedIn: 'root' });
5937
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: Router, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
5938
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: Router, providedIn: 'root' });
5930
5939
  }
5931
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.6", ngImport: i0, type: Router, decorators: [{
5940
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.8", ngImport: i0, type: Router, decorators: [{
5932
5941
  type: Injectable,
5933
5942
  args: [{ providedIn: 'root' }]
5934
5943
  }], ctorParameters: () => [] });
@@ -5941,9 +5950,6 @@ function validateCommands(commands) {
5941
5950
  }
5942
5951
  }
5943
5952
  }
5944
- function isPublicRouterEvent(e) {
5945
- return !(e instanceof BeforeActivateRoutes) && !(e instanceof RedirectRequest);
5946
- }
5947
5953
 
5948
- export { ActivatedRoute, ActivatedRouteSnapshot, ActivationEnd, ActivationStart, BaseRouteReuseStrategy, CREATE_VIEW_TRANSITION, ChildActivationEnd, ChildActivationStart, ChildrenOutletContexts, DefaultTitleStrategy, DefaultUrlSerializer, EventType, GuardsCheckEnd, GuardsCheckStart, INPUT_BINDER, NAVIGATION_ERROR_HANDLER, NavigationCancel, NavigationCancellationCode, NavigationEnd, NavigationError, NavigationSkipped, NavigationSkippedCode, NavigationStart, NavigationTransitions, OutletContext, PRIMARY_OUTLET, ROUTER_CONFIGURATION, ROUTER_OUTLET_DATA, ROUTES, RedirectCommand, ResolveEnd, ResolveStart, RouteConfigLoadEnd, RouteConfigLoadStart, RouteReuseStrategy, RoutedComponentInputBinder, Router, RouterConfigLoader, RouterEvent, RouterOutlet, RouterState, RouterStateSnapshot, RoutesRecognized, Scroll, TitleStrategy, UrlHandlingStrategy, UrlSegment, UrlSegmentGroup, UrlSerializer, UrlTree, VIEW_TRANSITION_OPTIONS, afterNextNavigation, convertToParamMap, createUrlTreeFromSnapshot, createViewTransition, defaultUrlMatcher, isUrlTree, loadChildren, stringifyEvent, ɵEmptyOutletComponent };
5949
- //# sourceMappingURL=router-Dq3SgjMt.mjs.map
5954
+ export { ActivatedRoute, ActivatedRouteSnapshot, ActivationEnd, ActivationStart, BaseRouteReuseStrategy, CREATE_VIEW_TRANSITION, ChildActivationEnd, ChildActivationStart, ChildrenOutletContexts, DefaultTitleStrategy, DefaultUrlSerializer, EventType, GuardsCheckEnd, GuardsCheckStart, IMPERATIVE_NAVIGATION, INPUT_BINDER, NAVIGATION_ERROR_HANDLER, NavigationCancel, NavigationCancellationCode, NavigationEnd, NavigationError, NavigationSkipped, NavigationSkippedCode, NavigationStart, NavigationTransitions, OutletContext, PRIMARY_OUTLET, ROUTER_CONFIGURATION, ROUTER_OUTLET_DATA, ROUTES, RedirectCommand, ResolveEnd, ResolveStart, RouteConfigLoadEnd, RouteConfigLoadStart, RouteReuseStrategy, RoutedComponentInputBinder, Router, RouterConfigLoader, RouterEvent, RouterOutlet, RouterState, RouterStateSnapshot, RoutesRecognized, Scroll, TitleStrategy, UrlHandlingStrategy, UrlSegment, UrlSegmentGroup, UrlSerializer, UrlTree, VIEW_TRANSITION_OPTIONS, afterNextNavigation, convertToParamMap, createUrlTreeFromSnapshot, createViewTransition, defaultUrlMatcher, isUrlTree, loadChildren, stringifyEvent, ɵEmptyOutletComponent };
5955
+ //# sourceMappingURL=router-BxrGTdzL.mjs.map