@angular/router 15.0.0-next.4 → 15.0.0-next.6

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 (36) hide show
  1. package/esm2020/src/components/empty_outlet.mjs +3 -3
  2. package/esm2020/src/deprecated_load_children.mjs +11 -0
  3. package/esm2020/src/directives/router_link.mjs +86 -178
  4. package/esm2020/src/directives/router_link_active.mjs +10 -18
  5. package/esm2020/src/directives/router_outlet.mjs +59 -31
  6. package/esm2020/src/index.mjs +1 -1
  7. package/esm2020/src/models.mjs +1 -1
  8. package/esm2020/src/page_title_strategy.mjs +6 -6
  9. package/esm2020/src/patchable_relative_link_resolution.mjs +1 -1
  10. package/esm2020/src/private_export.mjs +1 -1
  11. package/esm2020/src/provide_router.mjs +4 -4
  12. package/esm2020/src/router.mjs +7 -11
  13. package/esm2020/src/router_config.mjs +1 -1
  14. package/esm2020/src/router_config_loader.mjs +23 -6
  15. package/esm2020/src/router_module.mjs +7 -7
  16. package/esm2020/src/router_outlet_context.mjs +3 -3
  17. package/esm2020/src/router_preloader.mjs +9 -9
  18. package/esm2020/src/router_scroller.mjs +3 -3
  19. package/esm2020/src/url_tree.mjs +3 -3
  20. package/esm2020/src/version.mjs +1 -1
  21. package/esm2020/testing/src/router_testing_module.mjs +9 -11
  22. package/fesm2015/router.mjs +220 -277
  23. package/fesm2015/router.mjs.map +1 -1
  24. package/fesm2015/testing.mjs +9 -11
  25. package/fesm2015/testing.mjs.map +1 -1
  26. package/fesm2015/upgrade.mjs +1 -1
  27. package/fesm2020/router.mjs +216 -273
  28. package/fesm2020/router.mjs.map +1 -1
  29. package/fesm2020/testing.mjs +9 -11
  30. package/fesm2020/testing.mjs.map +1 -1
  31. package/fesm2020/upgrade.mjs +1 -1
  32. package/index.d.ts +88 -178
  33. package/package.json +5 -5
  34. package/testing/index.d.ts +1 -1
  35. package/upgrade/index.d.ts +1 -1
  36. package/esm2020/testing/src/provide_router_for_testing.mjs +0 -51
@@ -1,11 +1,11 @@
1
1
  /**
2
- * @license Angular v15.0.0-next.4
2
+ * @license Angular v15.0.0-next.6
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
- import { Location, LocationStrategy } from '@angular/common';
8
- import { SpyLocation, MockLocationStrategy } from '@angular/common/testing';
7
+ import { Location } from '@angular/common';
8
+ import { provideLocationMocks } from '@angular/common/testing';
9
9
  import * as i0 from '@angular/core';
10
10
  import { Compiler, Injector, Optional, NgModule } from '@angular/core';
11
11
  import { Router, ɵflatten, ɵassignExtraOptionsToRouter, provideRoutes, ROUTER_CONFIGURATION, RouterModule, ɵROUTER_PROVIDERS, UrlSerializer, ChildrenOutletContexts, ROUTES, TitleStrategy, UrlHandlingStrategy, RouteReuseStrategy, ɵwithPreloading, NoPreloading } from '@angular/router';
@@ -101,13 +101,12 @@ class RouterTestingModule {
101
101
  };
102
102
  }
103
103
  }
104
- RouterTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: RouterTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
105
- RouterTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0-next.4", ngImport: i0, type: RouterTestingModule, exports: [RouterModule] });
106
- RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: RouterTestingModule, providers: [
104
+ RouterTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.6", ngImport: i0, type: RouterTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
105
+ RouterTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0-next.6", ngImport: i0, type: RouterTestingModule, exports: [RouterModule] });
106
+ RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0-next.6", ngImport: i0, type: RouterTestingModule, providers: [
107
107
  ɵROUTER_PROVIDERS,
108
108
  EXTRA_ROUTER_TESTING_PROVIDERS,
109
- { provide: Location, useClass: SpyLocation },
110
- { provide: LocationStrategy, useClass: MockLocationStrategy },
109
+ provideLocationMocks(),
111
110
  {
112
111
  provide: Router,
113
112
  useFactory: setupTestingRouterInternal,
@@ -127,15 +126,14 @@ RouterTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ver
127
126
  ɵwithPreloading(NoPreloading).ɵproviders,
128
127
  provideRoutes([]),
129
128
  ], imports: [RouterModule] });
130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: RouterTestingModule, decorators: [{
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.6", ngImport: i0, type: RouterTestingModule, decorators: [{
131
130
  type: NgModule,
132
131
  args: [{
133
132
  exports: [RouterModule],
134
133
  providers: [
135
134
  ɵROUTER_PROVIDERS,
136
135
  EXTRA_ROUTER_TESTING_PROVIDERS,
137
- { provide: Location, useClass: SpyLocation },
138
- { provide: LocationStrategy, useClass: MockLocationStrategy },
136
+ provideLocationMocks(),
139
137
  {
140
138
  provide: Router,
141
139
  useFactory: setupTestingRouterInternal,
@@ -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, ExtraOptions, NoPreloading, provideRoutes, Route, Router, ROUTER_CONFIGURATION, RouteReuseStrategy, RouterModule, ROUTES, Routes, TitleStrategy, UrlHandlingStrategy, UrlSerializer, ɵassignExtraOptionsToRouter as assignExtraOptionsToRouter, ɵflatten as flatten, ɵROUTER_PROVIDERS as ROUTER_PROVIDERS, ɵwithPreloading as withPreloading} 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,\n contexts: ChildrenOutletContexts,\n location: Location,\n compiler: Compiler,\n injector: Injector,\n routes: Route[][],\n titleStrategy: TitleStrategy,\n opts?: ExtraOptions|UrlHandlingStrategy,\n urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy,\n) {\n return setupTestingRouter(\n urlSerializer, contexts, location, compiler, injector, routes, opts, urlHandlingStrategy,\n routeReuseStrategy, titleStrategy);\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 TitleStrategy,\n ROUTER_CONFIGURATION,\n [UrlHandlingStrategy, new Optional()],\n [RouteReuseStrategy, new Optional()],\n ]\n },\n withPreloading(NoPreloading).ɵproviders,\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","withPreloading"],"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} from '@angular/common';\nimport {provideLocationMocks} from '@angular/common/testing';\nimport {Compiler, Injector, ModuleWithProviders, NgModule, Optional} from '@angular/core';\nimport {ChildrenOutletContexts, ExtraOptions, NoPreloading, provideRoutes, Route, Router, ROUTER_CONFIGURATION, RouteReuseStrategy, RouterModule, ROUTES, Routes, TitleStrategy, UrlHandlingStrategy, UrlSerializer, ɵassignExtraOptionsToRouter as assignExtraOptionsToRouter, ɵflatten as flatten, ɵROUTER_PROVIDERS as ROUTER_PROVIDERS, ɵwithPreloading as withPreloading} 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,\n contexts: ChildrenOutletContexts,\n location: Location,\n compiler: Compiler,\n injector: Injector,\n routes: Route[][],\n titleStrategy: TitleStrategy,\n opts?: ExtraOptions|UrlHandlingStrategy,\n urlHandlingStrategy?: UrlHandlingStrategy,\n routeReuseStrategy?: RouteReuseStrategy,\n) {\n return setupTestingRouter(\n urlSerializer, contexts, location, compiler, injector, routes, opts, urlHandlingStrategy,\n routeReuseStrategy, titleStrategy);\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 provideLocationMocks(),\n {\n provide: Router,\n useFactory: setupTestingRouterInternal,\n deps: [\n UrlSerializer,\n ChildrenOutletContexts,\n Location,\n Compiler,\n Injector,\n ROUTES,\n TitleStrategy,\n ROUTER_CONFIGURATION,\n [UrlHandlingStrategy, new Optional()],\n [RouteReuseStrategy, new Optional()],\n ]\n },\n withPreloading(NoPreloading).ɵproviders,\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","withPreloading"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v15.0.0-next.4
2
+ * @license Angular v15.0.0-next.6
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 v15.0.0-next.4
2
+ * @license Angular v15.0.0-next.6
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -12,9 +12,9 @@ import { ComponentFactoryResolver } from '@angular/core';
12
12
  import { ComponentRef } from '@angular/core';
13
13
  import { ElementRef } from '@angular/core';
14
14
  import { EnvironmentInjector } from '@angular/core';
15
+ import { EnvironmentProviders } from '@angular/core';
15
16
  import { EventEmitter } from '@angular/core';
16
17
  import * as i0 from '@angular/core';
17
- import { ImportedNgModuleProviders } from '@angular/core';
18
18
  import { InjectionToken } from '@angular/core';
19
19
  import { Injector } from '@angular/core';
20
20
  import { Location as Location_2 } from '@angular/common';
@@ -32,7 +32,6 @@ import { SimpleChanges } from '@angular/core';
32
32
  import { Title } from '@angular/platform-browser';
33
33
  import { Type } from '@angular/core';
34
34
  import { Version } from '@angular/core';
35
- import { ViewContainerRef } from '@angular/core';
36
35
 
37
36
  /**
38
37
  * Provides access to information about a route associated with a component
@@ -838,6 +837,22 @@ export declare type Data = {
838
837
  */
839
838
  export declare type DebugTracingFeature = RouterFeature<RouterFeatureKind.DebugTracingFeature>;
840
839
 
840
+ /**
841
+ * An ES Module object with a default export of the given type.
842
+ *
843
+ * @see `Route#loadComponent`
844
+ * @see `LoadChildrenCallback`
845
+ *
846
+ * @publicApi
847
+ */
848
+ export declare interface DefaultExport<T> {
849
+ /**
850
+ * Default exports are bound under the name `"default"`, per the ES Module spec:
851
+ * https://tc39.es/ecma262/#table-export-forms-mapping-to-exportentry-records
852
+ */
853
+ default: T;
854
+ }
855
+
841
856
  /**
842
857
  * The default `TitleStrategy` used by the router that updates the title using the `Title` service.
843
858
  */
@@ -1012,7 +1027,7 @@ export declare const enum EventType {
1012
1027
  *
1013
1028
  * @publicApi
1014
1029
  */
1015
- export declare interface ExtraOptions extends InMemoryScrollingOptions, RouterConfigOptions {
1030
+ export declare interface ExtraOptions extends InMemoryScrollingOptions, RouterConfigOptions, InternalExtraOptions {
1016
1031
  /**
1017
1032
  * When true, log all internal navigation events to the console.
1018
1033
  * Use for debugging.
@@ -1067,41 +1082,6 @@ export declare interface ExtraOptions extends InMemoryScrollingOptions, RouterCo
1067
1082
  * - `'url'` - The malformed URL that caused the URIError
1068
1083
  * */
1069
1084
  malformedUriErrorHandler?: (error: URIError, urlSerializer: UrlSerializer, url: string) => UrlTree;
1070
- /**
1071
- * Enables a bug fix that corrects relative link resolution in components with empty paths.
1072
- * Example:
1073
- *
1074
- * ```
1075
- * const routes = [
1076
- * {
1077
- * path: '',
1078
- * component: ContainerComponent,
1079
- * children: [
1080
- * { path: 'a', component: AComponent },
1081
- * { path: 'b', component: BComponent },
1082
- * ]
1083
- * }
1084
- * ];
1085
- * ```
1086
- *
1087
- * From the `ContainerComponent`, you should be able to navigate to `AComponent` using
1088
- * the following `routerLink`, but it will not work if `relativeLinkResolution` is set
1089
- * to `'legacy'`:
1090
- *
1091
- * `<a [routerLink]="['./a']">Link to A</a>`
1092
- *
1093
- * However, this will work:
1094
- *
1095
- * `<a [routerLink]="['../a']">Link to A</a>`
1096
- *
1097
- * In other words, you're required to use `../` rather than `./` when the relative link
1098
- * resolution is set to `'legacy'`.
1099
- *
1100
- * The default in v11 is `corrected`.
1101
- *
1102
- * @deprecated
1103
- */
1104
- relativeLinkResolution?: 'legacy' | 'corrected';
1105
1085
  }
1106
1086
 
1107
1087
  /**
@@ -1168,7 +1148,7 @@ declare namespace i1 {
1168
1148
  declare namespace i2 {
1169
1149
  export {
1170
1150
  RouterLink,
1171
- RouterLinkWithHref
1151
+ RouterLink as RouterLinkWithHref
1172
1152
  }
1173
1153
  }
1174
1154
 
@@ -1283,6 +1263,9 @@ export declare interface InMemoryScrollingOptions {
1283
1263
  scrollPositionRestoration?: 'disabled' | 'enabled' | 'top';
1284
1264
  }
1285
1265
 
1266
+ declare interface InternalExtraOptions {
1267
+ }
1268
+
1286
1269
  /**
1287
1270
  * A set of options which specify how to determine if a `UrlTree` is active, given the `UrlTree`
1288
1271
  * for the current router state.
@@ -1338,7 +1321,7 @@ export declare interface IsActiveMatchOptions {
1338
1321
  * @see `LoadChildrenCallback`
1339
1322
  * @publicApi
1340
1323
  */
1341
- export declare type LoadChildren = LoadChildrenCallback;
1324
+ export declare type LoadChildren = LoadChildrenCallback | ɵDeprecatedLoadChildren;
1342
1325
 
1343
1326
  /**
1344
1327
  *
@@ -1364,10 +1347,17 @@ export declare type LoadChildren = LoadChildrenCallback;
1364
1347
  * }];
1365
1348
  * ```
1366
1349
  *
1350
+ * If the lazy-loaded routes are exported via a `default` export, the `.then` can be omitted:
1351
+ * ```
1352
+ * [{
1353
+ * path: 'lazy',
1354
+ * loadChildren: () => import('./lazy-route/lazy.routes'),
1355
+ * }];
1356
+ *
1367
1357
  * @see [Route.loadChildren](api/router/Route#loadChildren)
1368
1358
  * @publicApi
1369
1359
  */
1370
- export declare type LoadChildrenCallback = () => Type<any> | NgModuleFactory<any> | Routes | Observable<Type<any> | Routes> | Promise<NgModuleFactory<any> | Type<any> | Routes>;
1360
+ export declare type LoadChildrenCallback = () => Type<any> | NgModuleFactory<any> | Routes | Observable<Type<any> | Routes | DefaultExport<Type<any>> | DefaultExport<Routes>> | Promise<NgModuleFactory<any> | Type<any> | Routes | DefaultExport<Type<any>> | DefaultExport<Routes>>;
1371
1361
 
1372
1362
  declare interface LoadedRouterConfig {
1373
1363
  routes: Route[];
@@ -1870,7 +1860,7 @@ export declare const PRIMARY_OUTLET = "primary";
1870
1860
  * @param features Optional features to configure additional router behaviors.
1871
1861
  * @returns A set of providers to setup a Router.
1872
1862
  */
1873
- export declare function provideRouter(routes: Routes, ...features: RouterFeatures[]): Provider[];
1863
+ export declare function provideRouter(routes: Routes, ...features: RouterFeatures[]): EnvironmentProviders;
1874
1864
 
1875
1865
  /**
1876
1866
  * Registers a [DI provider](guide/glossary#provider) for a set of routes.
@@ -2367,7 +2357,7 @@ export declare interface Route {
2367
2357
  /**
2368
2358
  * An object specifying a lazy-loaded component.
2369
2359
  */
2370
- loadComponent?: () => Type<unknown> | Observable<Type<unknown>> | Promise<Type<unknown>>;
2360
+ loadComponent?: () => Type<unknown> | Observable<Type<unknown> | DefaultExport<Type<unknown>>> | Promise<Type<unknown> | DefaultExport<Type<unknown>>>;
2371
2361
  /**
2372
2362
  * A URL to redirect to when the path matches.
2373
2363
  *
@@ -2463,7 +2453,7 @@ export declare interface Route {
2463
2453
  * route also has a `loadChildren` function which returns an `NgModuleRef`, this injector will be
2464
2454
  * used as the parent of the lazy loaded module.
2465
2455
  */
2466
- providers?: Array<Provider | ImportedNgModuleProviders>;
2456
+ providers?: Array<Provider | EnvironmentProviders>;
2467
2457
  }
2468
2458
 
2469
2459
  /**
@@ -2651,13 +2641,6 @@ export declare class Router {
2651
2641
  * you can show an error message with the URL that failed.
2652
2642
  */
2653
2643
  urlUpdateStrategy: 'deferred' | 'eager';
2654
- /**
2655
- * Enables a bug fix that corrects relative link resolution in components with empty paths.
2656
- * @see `RouterModule`
2657
- *
2658
- * @deprecated
2659
- */
2660
- relativeLinkResolution: 'legacy' | 'corrected';
2661
2644
  /**
2662
2645
  * Configures how the Router attempts to restore state when a navigation is cancelled.
2663
2646
  *
@@ -3163,15 +3146,26 @@ export declare type RouterFeatures = PreloadingFeature | DebugTracingFeature | I
3163
3146
  *
3164
3147
  * @publicApi
3165
3148
  */
3166
- export declare class RouterLink implements OnChanges {
3149
+ declare class RouterLink implements OnChanges, OnDestroy {
3167
3150
  private router;
3168
3151
  private route;
3169
3152
  private readonly tabIndexAttribute;
3170
3153
  private readonly renderer;
3171
3154
  private readonly el;
3155
+ private locationStrategy?;
3172
3156
  private _preserveFragment;
3173
3157
  private _skipLocationChange;
3174
3158
  private _replaceUrl;
3159
+ /**
3160
+ * Represents an `href` attribute value applied to a host element,
3161
+ * when a host element is `<a>`. For other tags, the value is `null`.
3162
+ */
3163
+ href: string | null;
3164
+ /**
3165
+ * Represents the `target` attribute on a host element.
3166
+ * This is only used when the host element is an `<a>` tag.
3167
+ */
3168
+ target?: string;
3175
3169
  /**
3176
3170
  * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3177
3171
  * `UrlCreationOptions`.
@@ -3213,7 +3207,10 @@ export declare class RouterLink implements OnChanges {
3213
3207
  */
3214
3208
  relativeTo?: ActivatedRoute | null;
3215
3209
  private commands;
3216
- constructor(router: Router, route: ActivatedRoute, tabIndexAttribute: string | null | undefined, renderer: Renderer2, el: ElementRef);
3210
+ /** Whether a host element is an `<a>` tag. */
3211
+ private isAnchorElement;
3212
+ private subscription?;
3213
+ constructor(router: Router, route: ActivatedRoute, tabIndexAttribute: string | null | undefined, renderer: Renderer2, el: ElementRef, locationStrategy?: LocationStrategy | undefined);
3217
3214
  /**
3218
3215
  * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3219
3216
  * `UrlCreationOptions`.
@@ -3254,11 +3251,17 @@ export declare class RouterLink implements OnChanges {
3254
3251
  */
3255
3252
  set routerLink(commands: any[] | string | null | undefined);
3256
3253
  /** @nodoc */
3257
- onClick(): boolean;
3254
+ onClick(button: number, ctrlKey: boolean, shiftKey: boolean, altKey: boolean, metaKey: boolean): boolean;
3255
+ /** @nodoc */
3256
+ ngOnDestroy(): any;
3257
+ private updateHref;
3258
+ private applyAttributeValue;
3258
3259
  get urlTree(): UrlTree | null;
3259
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterLink, [null, null, { attribute: "tabindex"; }, null, null]>;
3260
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLink, ":not(a):not(area)[routerLink]", never, { "queryParams": "queryParams"; "fragment": "fragment"; "queryParamsHandling": "queryParamsHandling"; "state": "state"; "relativeTo": "relativeTo"; "preserveFragment": "preserveFragment"; "skipLocationChange": "skipLocationChange"; "replaceUrl": "replaceUrl"; "routerLink": "routerLink"; }, {}, never, never, true, never>;
3260
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterLink, [null, null, { attribute: "tabindex"; }, null, null, null]>;
3261
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLink, ":not(a):not(area)[routerLink],a[routerLink],area[routerLink]", never, { "target": "target"; "queryParams": "queryParams"; "fragment": "fragment"; "queryParamsHandling": "queryParamsHandling"; "state": "state"; "relativeTo": "relativeTo"; "preserveFragment": "preserveFragment"; "skipLocationChange": "skipLocationChange"; "replaceUrl": "replaceUrl"; "routerLink": "routerLink"; }, {}, never, never, true, never>;
3261
3262
  }
3263
+ export { RouterLink }
3264
+ export { RouterLink as RouterLinkWithHref }
3262
3265
 
3263
3266
  /**
3264
3267
  *
@@ -3335,9 +3338,7 @@ export declare class RouterLinkActive implements OnChanges, OnDestroy, AfterCont
3335
3338
  private renderer;
3336
3339
  private readonly cdr;
3337
3340
  private link?;
3338
- private linkWithHref?;
3339
3341
  links: QueryList<RouterLink>;
3340
- linksWithHrefs: QueryList<RouterLinkWithHref>;
3341
3342
  private classes;
3342
3343
  private routerEventsSubscription;
3343
3344
  private linkInputChangesSubscription?;
@@ -3377,7 +3378,7 @@ export declare class RouterLinkActive implements OnChanges, OnDestroy, AfterCont
3377
3378
  * ```
3378
3379
  */
3379
3380
  readonly isActiveChange: EventEmitter<boolean>;
3380
- constructor(router: Router, element: ElementRef, renderer: Renderer2, cdr: ChangeDetectorRef, link?: RouterLink | undefined, linkWithHref?: RouterLinkWithHref | undefined);
3381
+ constructor(router: Router, element: ElementRef, renderer: Renderer2, cdr: ChangeDetectorRef, link?: RouterLink | undefined);
3381
3382
  /** @nodoc */
3382
3383
  ngAfterContentInit(): void;
3383
3384
  private subscribeToEachLinkOnChanges;
@@ -3389,115 +3390,8 @@ export declare class RouterLinkActive implements OnChanges, OnDestroy, AfterCont
3389
3390
  private update;
3390
3391
  private isLinkActive;
3391
3392
  private hasActiveLinks;
3392
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkActive, [null, null, null, null, { optional: true; }, { optional: true; }]>;
3393
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkActive, "[routerLinkActive]", ["routerLinkActive"], { "routerLinkActiveOptions": "routerLinkActiveOptions"; "ariaCurrentWhenActive": "ariaCurrentWhenActive"; "routerLinkActive": "routerLinkActive"; }, { "isActiveChange": "isActiveChange"; }, ["links", "linksWithHrefs"], never, true, never>;
3394
- }
3395
-
3396
- /**
3397
- * @description
3398
- *
3399
- * Lets you link to specific routes in your app.
3400
- *
3401
- * See `RouterLink` for more information.
3402
- *
3403
- * @ngModule RouterModule
3404
- *
3405
- * @publicApi
3406
- */
3407
- export declare class RouterLinkWithHref implements OnChanges, OnDestroy {
3408
- private router;
3409
- private route;
3410
- private locationStrategy;
3411
- private _preserveFragment;
3412
- private _skipLocationChange;
3413
- private _replaceUrl;
3414
- target: string;
3415
- /**
3416
- * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3417
- * `UrlCreationOptions`.
3418
- * @see {@link UrlCreationOptions#queryParams UrlCreationOptions#queryParams}
3419
- * @see {@link Router#createUrlTree Router#createUrlTree}
3420
- */
3421
- queryParams?: Params | null;
3422
- /**
3423
- * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3424
- * `UrlCreationOptions`.
3425
- * @see {@link UrlCreationOptions#fragment UrlCreationOptions#fragment}
3426
- * @see {@link Router#createUrlTree Router#createUrlTree}
3427
- */
3428
- fragment?: string;
3429
- /**
3430
- * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3431
- * `UrlCreationOptions`.
3432
- * @see {@link UrlCreationOptions#queryParamsHandling UrlCreationOptions#queryParamsHandling}
3433
- * @see {@link Router#createUrlTree Router#createUrlTree}
3434
- */
3435
- queryParamsHandling?: QueryParamsHandling | null;
3436
- /**
3437
- * Passed to {@link Router#navigateByUrl Router#navigateByUrl} as part of the
3438
- * `NavigationBehaviorOptions`.
3439
- * @see {@link NavigationBehaviorOptions#state NavigationBehaviorOptions#state}
3440
- * @see {@link Router#navigateByUrl Router#navigateByUrl}
3441
- */
3442
- state?: {
3443
- [k: string]: any;
3444
- };
3445
- /**
3446
- * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3447
- * `UrlCreationOptions`.
3448
- * Specify a value here when you do not want to use the default value
3449
- * for `routerLink`, which is the current activated route.
3450
- * Note that a value of `undefined` here will use the `routerLink` default.
3451
- * @see {@link UrlCreationOptions#relativeTo UrlCreationOptions#relativeTo}
3452
- * @see {@link Router#createUrlTree Router#createUrlTree}
3453
- */
3454
- relativeTo?: ActivatedRoute | null;
3455
- private commands;
3456
- private subscription;
3457
- href: string | null;
3458
- constructor(router: Router, route: ActivatedRoute, locationStrategy: LocationStrategy);
3459
- /**
3460
- * Passed to {@link Router#createUrlTree Router#createUrlTree} as part of the
3461
- * `UrlCreationOptions`.
3462
- * @see {@link UrlCreationOptions#preserveFragment UrlCreationOptions#preserveFragment}
3463
- * @see {@link Router#createUrlTree Router#createUrlTree}
3464
- */
3465
- set preserveFragment(preserveFragment: boolean | string | null | undefined);
3466
- get preserveFragment(): boolean;
3467
- /**
3468
- * Passed to {@link Router#navigateByUrl Router#navigateByUrl} as part of the
3469
- * `NavigationBehaviorOptions`.
3470
- * @see {@link NavigationBehaviorOptions#skipLocationChange NavigationBehaviorOptions#skipLocationChange}
3471
- * @see {@link Router#navigateByUrl Router#navigateByUrl}
3472
- */
3473
- set skipLocationChange(skipLocationChange: boolean | string | null | undefined);
3474
- get skipLocationChange(): boolean;
3475
- /**
3476
- * Passed to {@link Router#navigateByUrl Router#navigateByUrl} as part of the
3477
- * `NavigationBehaviorOptions`.
3478
- * @see {@link NavigationBehaviorOptions#replaceUrl NavigationBehaviorOptions#replaceUrl}
3479
- * @see {@link Router#navigateByUrl Router#navigateByUrl}
3480
- */
3481
- set replaceUrl(replaceUrl: boolean | string | null | undefined);
3482
- get replaceUrl(): boolean;
3483
- /**
3484
- * Commands to pass to {@link Router#createUrlTree Router#createUrlTree}.
3485
- * - **array**: commands to pass to {@link Router#createUrlTree Router#createUrlTree}.
3486
- * - **string**: shorthand for array of commands with just the string, i.e. `['/route']`
3487
- * - **null|undefined**: Disables the link by removing the `href`
3488
- * @see {@link Router#createUrlTree Router#createUrlTree}
3489
- */
3490
- set routerLink(commands: any[] | string | null | undefined);
3491
- /** @nodoc */
3492
- ngOnChanges(changes: SimpleChanges): any;
3493
- /** @nodoc */
3494
- ngOnDestroy(): any;
3495
- /** @nodoc */
3496
- onClick(button: number, ctrlKey: boolean, shiftKey: boolean, altKey: boolean, metaKey: boolean): boolean;
3497
- private updateTargetUrlAndHref;
3498
- get urlTree(): UrlTree | null;
3499
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkWithHref, never>;
3500
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkWithHref, "a[routerLink],area[routerLink]", never, { "target": "target"; "queryParams": "queryParams"; "fragment": "fragment"; "queryParamsHandling": "queryParamsHandling"; "state": "state"; "relativeTo": "relativeTo"; "preserveFragment": "preserveFragment"; "skipLocationChange": "skipLocationChange"; "replaceUrl": "replaceUrl"; "routerLink": "routerLink"; }, {}, never, never, true, never>;
3393
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkActive, [null, null, null, null, { optional: true; }]>;
3394
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkActive, "[routerLinkActive]", ["routerLinkActive"], { "routerLinkActiveOptions": "routerLinkActiveOptions"; "ariaCurrentWhenActive": "ariaCurrentWhenActive"; "routerLinkActive": "routerLinkActive"; }, { "isActiveChange": "isActiveChange"; }, ["links"], never, true, never>;
3501
3395
  }
3502
3396
 
3503
3397
  /**
@@ -3560,7 +3454,7 @@ export declare class RouterModule {
3560
3454
  */
3561
3455
  static forChild(routes: Routes): ModuleWithProviders<RouterModule>;
3562
3456
  static ɵfac: i0.ɵɵFactoryDeclaration<RouterModule, [{ optional: true; }]>;
3563
- static ɵmod: i0.ɵɵNgModuleDeclaration<RouterModule, never, [typeof i1.RouterOutlet, typeof i2.RouterLink, typeof i2.RouterLinkWithHref, typeof i3.RouterLinkActive, typeof i4.ɵEmptyOutletComponent], [typeof i1.RouterOutlet, typeof i2.RouterLink, typeof i2.RouterLinkWithHref, typeof i3.RouterLinkActive, typeof i4.ɵEmptyOutletComponent]>;
3457
+ static ɵmod: i0.ɵɵNgModuleDeclaration<RouterModule, never, [typeof i1.RouterOutlet, typeof i2.RouterLink, typeof i3.RouterLinkActive, typeof i4.ɵEmptyOutletComponent], [typeof i1.RouterOutlet, typeof i2.RouterLink, typeof i3.RouterLinkActive, typeof i4.ɵEmptyOutletComponent]>;
3564
3458
  static ɵinj: i0.ɵɵInjectorDeclaration<RouterModule>;
3565
3459
  }
3566
3460
 
@@ -3616,13 +3510,14 @@ export declare class RouterModule {
3616
3510
  * @publicApi
3617
3511
  */
3618
3512
  export declare class RouterOutlet implements OnDestroy, OnInit, RouterOutletContract {
3619
- private parentContexts;
3620
- private location;
3621
- private changeDetector;
3622
- private environmentInjector;
3623
3513
  private activated;
3624
3514
  private _activatedRoute;
3625
- private name;
3515
+ /**
3516
+ * The name of the outlet
3517
+ *
3518
+ * @see [named outlets](guide/router-tutorial-toh#displaying-multiple-routes-in-named-outlets)
3519
+ */
3520
+ name: string;
3626
3521
  activateEvents: EventEmitter<any>;
3627
3522
  deactivateEvents: EventEmitter<any>;
3628
3523
  /**
@@ -3635,11 +3530,18 @@ export declare class RouterOutlet implements OnDestroy, OnInit, RouterOutletCont
3635
3530
  * subtree.
3636
3531
  */
3637
3532
  detachEvents: EventEmitter<unknown>;
3638
- constructor(parentContexts: ChildrenOutletContexts, location: ViewContainerRef, name: string, changeDetector: ChangeDetectorRef, environmentInjector: EnvironmentInjector);
3533
+ private parentContexts;
3534
+ private location;
3535
+ private changeDetector;
3536
+ private environmentInjector;
3537
+ /** @nodoc */
3538
+ ngOnChanges(changes: SimpleChanges): void;
3639
3539
  /** @nodoc */
3640
3540
  ngOnDestroy(): void;
3541
+ private isTrackedInParentContexts;
3641
3542
  /** @nodoc */
3642
3543
  ngOnInit(): void;
3544
+ private initializeOutletWithName;
3643
3545
  get isActivated(): boolean;
3644
3546
  /**
3645
3547
  * @returns The currently activated component instance.
@@ -3658,8 +3560,8 @@ export declare class RouterOutlet implements OnDestroy, OnInit, RouterOutletCont
3658
3560
  attach(ref: ComponentRef<any>, activatedRoute: ActivatedRoute): void;
3659
3561
  deactivate(): void;
3660
3562
  activateWith(activatedRoute: ActivatedRoute, resolverOrInjector?: ComponentFactoryResolver | EnvironmentInjector | null): void;
3661
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterOutlet, [null, null, { attribute: "name"; }, null, null]>;
3662
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterOutlet, "router-outlet", ["outlet"], {}, { "activateEvents": "activate"; "deactivateEvents": "deactivate"; "attachEvents": "attach"; "detachEvents": "detach"; }, never, never, true, never>;
3563
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterOutlet, never>;
3564
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterOutlet, "router-outlet", ["outlet"], { "name": "name"; }, { "activateEvents": "activate"; "deactivateEvents": "deactivate"; "attachEvents": "attach"; "detachEvents": "detach"; }, never, never, true, never>;
3663
3565
  }
3664
3566
 
3665
3567
  /**
@@ -4483,6 +4385,14 @@ export declare function withRouterConfig(options: RouterConfigOptions): RouterCo
4483
4385
 
4484
4386
  export declare function ɵassignExtraOptionsToRouter(opts: ExtraOptions, router: Router): void;
4485
4387
 
4388
+ /**
4389
+ * Deprecated `loadChildren` value types.
4390
+ *
4391
+ * @publicApi
4392
+ * @deprecated represents the deprecated type side of `LoadChildren`.
4393
+ */
4394
+ export declare type ɵDeprecatedLoadChildren = never;
4395
+
4486
4396
  /**
4487
4397
  * This component is used internally within the router to be a placeholder when an empty
4488
4398
  * router-outlet is needed. For example, with a config such as:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/router",
3
- "version": "15.0.0-next.4",
3
+ "version": "15.0.0-next.6",
4
4
  "description": "Angular - the routing library",
5
5
  "keywords": [
6
6
  "angular",
@@ -14,7 +14,7 @@
14
14
  "author": "angular",
15
15
  "license": "MIT",
16
16
  "engines": {
17
- "node": "^14.15.0 || >=16.10.0"
17
+ "node": "^14.20.0 || ^16.13.0 || >=18.10.0"
18
18
  },
19
19
  "bugs": {
20
20
  "url": "https://github.com/angular/angular/issues"
@@ -24,9 +24,9 @@
24
24
  "tslib": "^2.3.0"
25
25
  },
26
26
  "peerDependencies": {
27
- "@angular/core": "15.0.0-next.4",
28
- "@angular/common": "15.0.0-next.4",
29
- "@angular/platform-browser": "15.0.0-next.4",
27
+ "@angular/core": "15.0.0-next.6",
28
+ "@angular/common": "15.0.0-next.6",
29
+ "@angular/platform-browser": "15.0.0-next.6",
30
30
  "rxjs": "^6.5.3 || ^7.4.0"
31
31
  },
32
32
  "ng-update": {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v15.0.0-next.4
2
+ * @license Angular v15.0.0-next.6
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v15.0.0-next.4
2
+ * @license Angular v15.0.0-next.6
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */