@angular/router 14.1.0-next.1 → 14.1.0-next.4

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 (39) hide show
  1. package/esm2020/src/apply_redirects.mjs +12 -8
  2. package/esm2020/src/components/empty_outlet.mjs +3 -3
  3. package/esm2020/src/create_url_tree.mjs +6 -4
  4. package/esm2020/src/directives/router_link.mjs +6 -6
  5. package/esm2020/src/directives/router_link_active.mjs +3 -3
  6. package/esm2020/src/directives/router_outlet.mjs +14 -10
  7. package/esm2020/src/errors.mjs +2 -0
  8. package/esm2020/src/events.mjs +13 -3
  9. package/esm2020/src/index.mjs +1 -1
  10. package/esm2020/src/models.mjs +1 -1
  11. package/esm2020/src/operators/check_guards.mjs +15 -47
  12. package/esm2020/src/page_title_strategy.mjs +3 -3
  13. package/esm2020/src/private_export.mjs +2 -2
  14. package/esm2020/src/recognize.mjs +7 -7
  15. package/esm2020/src/router.mjs +22 -17
  16. package/esm2020/src/router_config_loader.mjs +3 -3
  17. package/esm2020/src/router_module.mjs +187 -138
  18. package/esm2020/src/router_preloader.mjs +16 -4
  19. package/esm2020/src/router_scroller.mjs +6 -5
  20. package/esm2020/src/shared.mjs +3 -2
  21. package/esm2020/src/url_tree.mjs +6 -4
  22. package/esm2020/src/utils/config.mjs +17 -17
  23. package/esm2020/src/utils/config_matching.mjs +5 -2
  24. package/esm2020/src/version.mjs +1 -1
  25. package/esm2020/testing/src/router_testing_module.mjs +8 -8
  26. package/fesm2015/router.mjs +332 -273
  27. package/fesm2015/router.mjs.map +1 -1
  28. package/fesm2015/testing.mjs +8 -8
  29. package/fesm2015/testing.mjs.map +1 -1
  30. package/fesm2015/upgrade.mjs +1 -1
  31. package/fesm2020/router.mjs +326 -270
  32. package/fesm2020/router.mjs.map +1 -1
  33. package/fesm2020/testing.mjs +8 -8
  34. package/fesm2020/testing.mjs.map +1 -1
  35. package/fesm2020/upgrade.mjs +1 -1
  36. package/index.d.ts +80 -9
  37. package/package.json +4 -4
  38. package/testing/index.d.ts +2 -2
  39. package/upgrade/index.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.1.0-next.1
2
+ * @license Angular v14.1.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -8,7 +8,7 @@ import { Location, LocationStrategy } from '@angular/common';
8
8
  import { SpyLocation, MockLocationStrategy } from '@angular/common/testing';
9
9
  import * as i0 from '@angular/core';
10
10
  import { Compiler, Injector, Optional, NgModule } from '@angular/core';
11
- import { Router, ɵflatten, ɵassignExtraOptionsToRouter, provideRoutes, ROUTER_CONFIGURATION, RouterModule, ɵROUTER_PROVIDERS, UrlSerializer, ChildrenOutletContexts, ROUTES, UrlHandlingStrategy, RouteReuseStrategy, DefaultTitleStrategy, TitleStrategy, PreloadingStrategy, NoPreloading } from '@angular/router';
11
+ import { Router, ɵflatten, ɵassignExtraOptionsToRouter, provideRoutes, ROUTER_CONFIGURATION, RouterModule, ɵROUTER_PROVIDERS, UrlSerializer, ChildrenOutletContexts, ROUTES, UrlHandlingStrategy, RouteReuseStrategy, DefaultTitleStrategy, TitleStrategy, ɵprovidePreloading, NoPreloading } from '@angular/router';
12
12
 
13
13
  /**
14
14
  * @license
@@ -101,9 +101,9 @@ class RouterTestingModule {
101
101
  };
102
102
  }
103
103
  }
104
- RouterTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0-next.1", ngImport: i0, type: RouterTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
105
- RouterTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.0-next.1", ngImport: i0, type: RouterTestingModule, exports: [RouterModule] });
106
- RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0-next.1", ngImport: i0, type: RouterTestingModule, providers: [
104
+ RouterTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0-next.4", ngImport: i0, type: RouterTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
105
+ RouterTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.0-next.4", ngImport: i0, type: RouterTestingModule, exports: [RouterModule] });
106
+ RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0-next.4", ngImport: i0, type: RouterTestingModule, providers: [
107
107
  ɵROUTER_PROVIDERS,
108
108
  EXTRA_ROUTER_TESTING_PROVIDERS,
109
109
  { provide: Location, useClass: SpyLocation },
@@ -125,10 +125,10 @@ RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ver
125
125
  [TitleStrategy, new Optional()],
126
126
  ]
127
127
  },
128
- { provide: PreloadingStrategy, useExisting: NoPreloading },
128
+ ɵprovidePreloading(NoPreloading),
129
129
  provideRoutes([]),
130
130
  ], imports: [RouterModule] });
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0-next.1", ngImport: i0, type: RouterTestingModule, decorators: [{
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0-next.4", ngImport: i0, type: RouterTestingModule, decorators: [{
132
132
  type: NgModule,
133
133
  args: [{
134
134
  exports: [RouterModule],
@@ -154,7 +154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0-next.1",
154
154
  [TitleStrategy, new Optional()],
155
155
  ]
156
156
  },
157
- { provide: PreloadingStrategy, useExisting: NoPreloading },
157
+ ɵprovidePreloading(NoPreloading),
158
158
  provideRoutes([]),
159
159
  ]
160
160
  }]
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/router/testing/src/extra_router_testing_providers.ts","../../../../../../packages/router/testing/src/router_testing_module.ts","../../../../../../packages/router/testing/src/spy_ng_module_factory_loader.ts","../../../../../../packages/router/testing/src/testing.ts","../../../../../../packages/router/testing/public_api.ts","../../../../../../packages/router/testing/index.ts","../../../../../../packages/router/testing/testing.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file exists to easily patch the SpyNgModuleFactoryLoader into g3\nexport const EXTRA_ROUTER_TESTING_PROVIDERS = [];\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Location, LocationStrategy} from '@angular/common';\nimport {MockLocationStrategy, SpyLocation} from '@angular/common/testing';\nimport {Compiler, Injector, ModuleWithProviders, NgModule, Optional} from '@angular/core';\nimport {ChildrenOutletContexts, DefaultTitleStrategy, ExtraOptions, NoPreloading, PreloadingStrategy, provideRoutes, Route, Router, ROUTER_CONFIGURATION, RouteReuseStrategy, RouterModule, ROUTES, Routes, TitleStrategy, UrlHandlingStrategy, UrlSerializer, ɵassignExtraOptionsToRouter as assignExtraOptionsToRouter, ɵflatten as flatten, ɵROUTER_PROVIDERS as ROUTER_PROVIDERS} from '@angular/router';\n\nimport {EXTRA_ROUTER_TESTING_PROVIDERS} from './extra_router_testing_providers';\n\nfunction isUrlHandlingStrategy(opts: ExtraOptions|\n UrlHandlingStrategy): opts is UrlHandlingStrategy {\n // This property check is needed because UrlHandlingStrategy is an interface and doesn't exist at\n // runtime.\n return 'shouldProcessUrl' in opts;\n}\n\n/**\n * Router setup factory function used for testing. Only used internally to keep the factory that's\n * marked as publicApi cleaner (i.e. not having _both_ `TitleStrategy` and `DefaultTitleStrategy`).\n */\nexport function setupTestingRouterInternal(\n urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location,\n compiler: Compiler, injector: Injector, routes: Route[][],\n opts?: ExtraOptions|UrlHandlingStrategy, urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy, defaultTitleStrategy?: DefaultTitleStrategy,\n titleStrategy?: TitleStrategy) {\n return setupTestingRouter(\n urlSerializer, contexts, location, compiler, injector, routes, opts, urlHandlingStrategy,\n routeReuseStrategy, titleStrategy ?? defaultTitleStrategy);\n}\n\n/**\n * Router setup factory function used for testing.\n *\n * @publicApi\n */\nexport function setupTestingRouter(\n urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location,\n compiler: Compiler, injector: Injector, routes: Route[][],\n opts?: ExtraOptions|UrlHandlingStrategy, urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy, titleStrategy?: TitleStrategy) {\n const router =\n new Router(null!, urlSerializer, contexts, location, injector, compiler, flatten(routes));\n if (opts) {\n // Handle deprecated argument ordering.\n if (isUrlHandlingStrategy(opts)) {\n router.urlHandlingStrategy = opts;\n } else {\n // Handle ExtraOptions\n assignExtraOptionsToRouter(opts, router);\n }\n }\n\n if (urlHandlingStrategy) {\n router.urlHandlingStrategy = urlHandlingStrategy;\n }\n\n if (routeReuseStrategy) {\n router.routeReuseStrategy = routeReuseStrategy;\n }\n\n router.titleStrategy = titleStrategy;\n\n return router;\n}\n\n/**\n * @description\n *\n * Sets up the router to be used for testing.\n *\n * The modules sets up the router to be used for testing.\n * It provides spy implementations of `Location` and `LocationStrategy`.\n *\n * @usageNotes\n * ### Example\n *\n * ```\n * beforeEach(() => {\n * TestBed.configureTestingModule({\n * imports: [\n * RouterTestingModule.withRoutes(\n * [{path: '', component: BlankCmp}, {path: 'simple', component: SimpleCmp}]\n * )\n * ]\n * });\n * });\n * ```\n *\n * @publicApi\n */\n@NgModule({\n exports: [RouterModule],\n providers: [\n ROUTER_PROVIDERS,\n EXTRA_ROUTER_TESTING_PROVIDERS,\n {provide: Location, useClass: SpyLocation},\n {provide: LocationStrategy, useClass: MockLocationStrategy},\n {\n provide: Router,\n useFactory: setupTestingRouterInternal,\n deps: [\n UrlSerializer,\n ChildrenOutletContexts,\n Location,\n Compiler,\n Injector,\n ROUTES,\n ROUTER_CONFIGURATION,\n [UrlHandlingStrategy, new Optional()],\n [RouteReuseStrategy, new Optional()],\n [DefaultTitleStrategy, new Optional()],\n [TitleStrategy, new Optional()],\n ]\n },\n {provide: PreloadingStrategy, useExisting: NoPreloading},\n provideRoutes([]),\n ]\n})\nexport class RouterTestingModule {\n static withRoutes(routes: Routes, config?: ExtraOptions):\n ModuleWithProviders<RouterTestingModule> {\n return {\n ngModule: RouterTestingModule,\n providers: [\n provideRoutes(routes),\n {provide: ROUTER_CONFIGURATION, useValue: config ? config : {}},\n ]\n };\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file exists for easily patching SpyNgModuleFactoryLoader in g3\nexport default {};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the router/testing package.\n */\nexport * from './router_testing_module';\nexport * from './spy_ng_module_factory_loader';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/testing';\n\n// This file only reexports content of the `src` folder. Keep it that way.\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["flatten","assignExtraOptionsToRouter","ROUTER_PROVIDERS"],"mappings":"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"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/router/testing/src/extra_router_testing_providers.ts","../../../../../../packages/router/testing/src/router_testing_module.ts","../../../../../../packages/router/testing/src/spy_ng_module_factory_loader.ts","../../../../../../packages/router/testing/src/testing.ts","../../../../../../packages/router/testing/public_api.ts","../../../../../../packages/router/testing/index.ts","../../../../../../packages/router/testing/testing.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file exists to easily patch the SpyNgModuleFactoryLoader into g3\nexport const EXTRA_ROUTER_TESTING_PROVIDERS = [];\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Location, LocationStrategy} from '@angular/common';\nimport {MockLocationStrategy, SpyLocation} from '@angular/common/testing';\nimport {Compiler, Injector, ModuleWithProviders, NgModule, Optional} from '@angular/core';\nimport {ChildrenOutletContexts, DefaultTitleStrategy, ExtraOptions, NoPreloading, PreloadingStrategy, provideRoutes, Route, Router, ROUTER_CONFIGURATION, RouteReuseStrategy, RouterModule, ROUTES, Routes, TitleStrategy, UrlHandlingStrategy, UrlSerializer, ɵassignExtraOptionsToRouter as assignExtraOptionsToRouter, ɵflatten as flatten, ɵprovidePreloading as providePreloading, ɵROUTER_PROVIDERS as ROUTER_PROVIDERS} from '@angular/router';\n\nimport {EXTRA_ROUTER_TESTING_PROVIDERS} from './extra_router_testing_providers';\n\nfunction isUrlHandlingStrategy(opts: ExtraOptions|\n UrlHandlingStrategy): opts is UrlHandlingStrategy {\n // This property check is needed because UrlHandlingStrategy is an interface and doesn't exist at\n // runtime.\n return 'shouldProcessUrl' in opts;\n}\n\n/**\n * Router setup factory function used for testing. Only used internally to keep the factory that's\n * marked as publicApi cleaner (i.e. not having _both_ `TitleStrategy` and `DefaultTitleStrategy`).\n */\nexport function setupTestingRouterInternal(\n urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location,\n compiler: Compiler, injector: Injector, routes: Route[][],\n opts?: ExtraOptions|UrlHandlingStrategy, urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy, defaultTitleStrategy?: DefaultTitleStrategy,\n titleStrategy?: TitleStrategy) {\n return setupTestingRouter(\n urlSerializer, contexts, location, compiler, injector, routes, opts, urlHandlingStrategy,\n routeReuseStrategy, titleStrategy ?? defaultTitleStrategy);\n}\n\n/**\n * Router setup factory function used for testing.\n *\n * @publicApi\n */\nexport function setupTestingRouter(\n urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location,\n compiler: Compiler, injector: Injector, routes: Route[][],\n opts?: ExtraOptions|UrlHandlingStrategy|null, urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy, titleStrategy?: TitleStrategy) {\n const router =\n new Router(null!, urlSerializer, contexts, location, injector, compiler, flatten(routes));\n if (opts) {\n // Handle deprecated argument ordering.\n if (isUrlHandlingStrategy(opts)) {\n router.urlHandlingStrategy = opts;\n } else {\n // Handle ExtraOptions\n assignExtraOptionsToRouter(opts, router);\n }\n }\n\n if (urlHandlingStrategy) {\n router.urlHandlingStrategy = urlHandlingStrategy;\n }\n\n if (routeReuseStrategy) {\n router.routeReuseStrategy = routeReuseStrategy;\n }\n\n router.titleStrategy = titleStrategy;\n\n return router;\n}\n\n/**\n * @description\n *\n * Sets up the router to be used for testing.\n *\n * The modules sets up the router to be used for testing.\n * It provides spy implementations of `Location` and `LocationStrategy`.\n *\n * @usageNotes\n * ### Example\n *\n * ```\n * beforeEach(() => {\n * TestBed.configureTestingModule({\n * imports: [\n * RouterTestingModule.withRoutes(\n * [{path: '', component: BlankCmp}, {path: 'simple', component: SimpleCmp}]\n * )\n * ]\n * });\n * });\n * ```\n *\n * @publicApi\n */\n@NgModule({\n exports: [RouterModule],\n providers: [\n ROUTER_PROVIDERS,\n EXTRA_ROUTER_TESTING_PROVIDERS,\n {provide: Location, useClass: SpyLocation},\n {provide: LocationStrategy, useClass: MockLocationStrategy},\n {\n provide: Router,\n useFactory: setupTestingRouterInternal,\n deps: [\n UrlSerializer,\n ChildrenOutletContexts,\n Location,\n Compiler,\n Injector,\n ROUTES,\n ROUTER_CONFIGURATION,\n [UrlHandlingStrategy, new Optional()],\n [RouteReuseStrategy, new Optional()],\n [DefaultTitleStrategy, new Optional()],\n [TitleStrategy, new Optional()],\n ]\n },\n providePreloading(NoPreloading),\n provideRoutes([]),\n ]\n})\nexport class RouterTestingModule {\n static withRoutes(routes: Routes, config?: ExtraOptions):\n ModuleWithProviders<RouterTestingModule> {\n return {\n ngModule: RouterTestingModule,\n providers: [\n provideRoutes(routes),\n {provide: ROUTER_CONFIGURATION, useValue: config ? config : {}},\n ]\n };\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file exists for easily patching SpyNgModuleFactoryLoader in g3\nexport default {};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the router/testing package.\n */\nexport * from './router_testing_module';\nexport * from './spy_ng_module_factory_loader';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/testing';\n\n// This file only reexports content of the `src` folder. Keep it that way.\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["flatten","assignExtraOptionsToRouter","ROUTER_PROVIDERS","providePreloading"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.1.0-next.1
2
+ * @license Angular v14.1.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.1.0-next.1
2
+ * @license Angular v14.1.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -603,7 +603,7 @@ export declare interface CanLoad {
603
603
  * class CanMatchTeamSection implements CanMatch {
604
604
  * constructor(private permissions: Permissions, private currentUser: UserToken) {}
605
605
  *
606
- * canLoad(route: Route, segments: UrlSegment[]): Observable<boolean>|Promise<boolean>|boolean {
606
+ * canMatch(route: Route, segments: UrlSegment[]): Observable<boolean>|Promise<boolean>|boolean {
607
607
  * return this.permissions.canAccess(this.currentUser, route, segments);
608
608
  * }
609
609
  * }
@@ -641,6 +641,8 @@ export declare interface CanLoad {
641
641
  * You can alternatively provide an in-line function with the `canMatch` signature:
642
642
  *
643
643
  * ```
644
+ * const CAN_MATCH_TEAM_SECTION = new InjectionToken('CanMatchTeamSection');
645
+ *
644
646
  * @NgModule({
645
647
  * imports: [
646
648
  * RouterModule.forRoot([
@@ -648,7 +650,7 @@ export declare interface CanLoad {
648
650
  * path: 'team/:id',
649
651
  * component: TeamComponent,
650
652
  * loadChildren: () => import('./team').then(mod => mod.TeamModule),
651
- * canMatch: ['canMatchTeamSection']
653
+ * canMatch: [CAN_MATCH_TEAM_SECTION]
652
654
  * },
653
655
  * {
654
656
  * path: '**',
@@ -658,7 +660,7 @@ export declare interface CanLoad {
658
660
  * ],
659
661
  * providers: [
660
662
  * {
661
- * provide: 'canMatchTeamSection',
663
+ * provide: CAN_MATCH_TEAM_SECTION,
662
664
  * useValue: (route: Route, segments: UrlSegment[]) => true
663
665
  * }
664
666
  * ]
@@ -672,7 +674,14 @@ export declare interface CanMatch {
672
674
  canMatch(route: Route, segments: UrlSegment[]): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;
673
675
  }
674
676
 
675
- declare type CanMatchFn = (route: Route, segments: UrlSegment[]) => Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean;
677
+ /**
678
+ * The signature of a function used as a `CanMatch` guard on a `Route`.
679
+ *
680
+ * @publicApi
681
+ * @see `CanMatch`
682
+ * @see `Route`
683
+ */
684
+ export declare type CanMatchFn = (route: Route, segments: UrlSegment[]) => Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;
676
685
 
677
686
  /**
678
687
  * An event triggered at the end of the child-activation part
@@ -1454,20 +1463,63 @@ export declare interface NavigationBehaviorOptions {
1454
1463
  * @publicApi
1455
1464
  */
1456
1465
  export declare class NavigationCancel extends RouterEvent {
1457
- /** @docsNotRequired */
1466
+ /**
1467
+ * A description of why the navigation was cancelled. For debug purposes only. Use `code`
1468
+ * instead for a stable cancellation reason that can be used in production.
1469
+ */
1458
1470
  reason: string;
1471
+ /**
1472
+ * A code to indicate why the navigation was canceled. This cancellation code is stable for
1473
+ * the reason and can be relied on whereas the `reason` string could change and should not be
1474
+ * used in production.
1475
+ */
1476
+ readonly code?: NavigationCancellationCode | undefined;
1459
1477
  readonly type = EventType.NavigationCancel;
1460
1478
  constructor(
1461
1479
  /** @docsNotRequired */
1462
1480
  id: number,
1463
1481
  /** @docsNotRequired */
1464
1482
  url: string,
1465
- /** @docsNotRequired */
1466
- reason: string);
1483
+ /**
1484
+ * A description of why the navigation was cancelled. For debug purposes only. Use `code`
1485
+ * instead for a stable cancellation reason that can be used in production.
1486
+ */
1487
+ reason: string,
1488
+ /**
1489
+ * A code to indicate why the navigation was canceled. This cancellation code is stable for
1490
+ * the reason and can be relied on whereas the `reason` string could change and should not be
1491
+ * used in production.
1492
+ */
1493
+ code?: NavigationCancellationCode | undefined);
1467
1494
  /** @docsNotRequired */
1468
1495
  toString(): string;
1469
1496
  }
1470
1497
 
1498
+ /**
1499
+ * A code for the `NavigationCancel` event of the `Router` to indicate the
1500
+ * reason a navigation failed.
1501
+ *
1502
+ * @publicApi
1503
+ */
1504
+ export declare const enum NavigationCancellationCode {
1505
+ /**
1506
+ * A navigation failed because a guard returned a `UrlTree` to redirect.
1507
+ */
1508
+ Redirect = 0,
1509
+ /**
1510
+ * A navigation failed because a more recent navigation started.
1511
+ */
1512
+ SupersededByNewNavigation = 1,
1513
+ /**
1514
+ * A navigation failed because one of the resolvers completed without emiting a value.
1515
+ */
1516
+ NoDataFromResolver = 2,
1517
+ /**
1518
+ * A navigation failed because a guard returned `false`.
1519
+ */
1520
+ GuardRejected = 3
1521
+ }
1522
+
1471
1523
  /**
1472
1524
  * An event triggered when a navigation ends successfully.
1473
1525
  *
@@ -1610,6 +1662,8 @@ declare type NavigationTrigger = 'imperative' | 'popstate' | 'hashchange';
1610
1662
  */
1611
1663
  export declare class NoPreloading implements PreloadingStrategy {
1612
1664
  preload(route: Route, fn: () => Observable<any>): Observable<any>;
1665
+ static ɵfac: i0.ɵɵFactoryDeclaration<NoPreloading, never>;
1666
+ static ɵprov: i0.ɵɵInjectableDeclaration<NoPreloading>;
1613
1667
  }
1614
1668
 
1615
1669
  /**
@@ -1691,6 +1745,8 @@ export declare type Params = {
1691
1745
  */
1692
1746
  export declare class PreloadAllModules implements PreloadingStrategy {
1693
1747
  preload(route: Route, fn: () => Observable<any>): Observable<any>;
1748
+ static ɵfac: i0.ɵɵFactoryDeclaration<PreloadAllModules, never>;
1749
+ static ɵprov: i0.ɵɵInjectableDeclaration<PreloadAllModules>;
1694
1750
  }
1695
1751
 
1696
1752
  /**
@@ -2275,6 +2331,8 @@ export declare interface Route {
2275
2331
  * - `always` : Run on every execution.
2276
2332
  * By default, guards and resolvers run only when the matrix
2277
2333
  * parameters of the route change.
2334
+ *
2335
+ * @see RunGuardsAndResolvers
2278
2336
  */
2279
2337
  runGuardsAndResolvers?: RunGuardsAndResolvers;
2280
2338
  /**
@@ -3590,9 +3648,20 @@ export declare class RoutesRecognized extends RouterEvent {
3590
3648
  }
3591
3649
 
3592
3650
  /**
3593
- *
3594
3651
  * A policy for when to run guards and resolvers on a route.
3595
3652
  *
3653
+ * Guards and/or resolvers will always run when a route is activated or deactivated. When a route is
3654
+ * unchanged, the default behavior is the same as `paramsChange`.
3655
+ *
3656
+ * `paramsChange` : Rerun the guards and resolvers when path or
3657
+ * path param changes. This does not include query parameters. This option is the default.
3658
+ * - `always` : Run on every execution.
3659
+ * - `pathParamsChange` : Rerun guards and resolvers when the path params
3660
+ * change. This does not compare matrix or query parameters.
3661
+ * - `paramsOrQueryParamsChange` : Run when path, matrix, or query parameters change.
3662
+ * - `pathParamsOrQueryParamsChange` : Rerun guards and resolvers when the path params
3663
+ * change or query params have changed. This does not include matrix parameters.
3664
+ *
3596
3665
  * @see [Route.runGuardsAndResolvers](api/router/Route#runGuardsAndResolvers)
3597
3666
  * @publicApi
3598
3667
  */
@@ -4008,6 +4077,8 @@ export declare class ɵEmptyOutletComponent {
4008
4077
  */
4009
4078
  export declare function ɵflatten<T>(arr: T[][]): T[];
4010
4079
 
4080
+ export declare function ɵprovidePreloading(preloadingStrategy: Type<PreloadingStrategy>): Provider[];
4081
+
4011
4082
  export declare type ɵRestoredState = {
4012
4083
  [k: string]: any;
4013
4084
  navigationId: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/router",
3
- "version": "14.1.0-next.1",
3
+ "version": "14.1.0-next.4",
4
4
  "description": "Angular - the routing library",
5
5
  "keywords": [
6
6
  "angular",
@@ -24,9 +24,9 @@
24
24
  "tslib": "^2.3.0"
25
25
  },
26
26
  "peerDependencies": {
27
- "@angular/core": "14.1.0-next.1",
28
- "@angular/common": "14.1.0-next.1",
29
- "@angular/platform-browser": "14.1.0-next.1",
27
+ "@angular/core": "14.1.0-next.4",
28
+ "@angular/common": "14.1.0-next.4",
29
+ "@angular/platform-browser": "14.1.0-next.4",
30
30
  "rxjs": "^6.5.3 || ^7.4.0"
31
31
  },
32
32
  "ng-update": {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.1.0-next.1
2
+ * @license Angular v14.1.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -59,7 +59,7 @@ export declare class RouterTestingModule {
59
59
  *
60
60
  * @publicApi
61
61
  */
62
- export declare function setupTestingRouter(urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location_2, compiler: Compiler, injector: Injector, routes: Route[][], opts?: ExtraOptions | UrlHandlingStrategy, urlHandlingStrategy?: UrlHandlingStrategy, routeReuseStrategy?: RouteReuseStrategy, titleStrategy?: TitleStrategy): Router;
62
+ export declare function setupTestingRouter(urlSerializer: UrlSerializer, contexts: ChildrenOutletContexts, location: Location_2, compiler: Compiler, injector: Injector, routes: Route[][], opts?: ExtraOptions | UrlHandlingStrategy | null, urlHandlingStrategy?: UrlHandlingStrategy, routeReuseStrategy?: RouteReuseStrategy, titleStrategy?: TitleStrategy): Router;
63
63
 
64
64
  /**
65
65
  * Router setup factory function used for testing. Only used internally to keep the factory that's
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v14.1.0-next.1
2
+ * @license Angular v14.1.0-next.4
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */