@angular/router 13.2.0-rc.1 → 14.0.0-next.1

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 v13.2.0-rc.1
2
+ * @license Angular v14.0.0-next.1
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -10,6 +10,7 @@ import { from, of, BehaviorSubject, combineLatest, Observable, EmptyError, conca
10
10
  import { map, switchMap, take, startWith, scan, filter, catchError, concatMap, last as last$1, first, mergeMap, tap, takeLast, refCount, finalize, mergeAll } from 'rxjs/operators';
11
11
  import * as i3 from '@angular/common';
12
12
  import { Location, LocationStrategy, PlatformLocation, APP_BASE_HREF, ViewportScroller, HashLocationStrategy, PathLocationStrategy, LOCATION_INITIALIZED } from '@angular/common';
13
+ import * as i1 from '@angular/platform-browser';
13
14
 
14
15
  /**
15
16
  * @license
@@ -2524,9 +2525,9 @@ class RouterOutlet {
2524
2525
  this.activateEvents.emit(this.activated.instance);
2525
2526
  }
2526
2527
  }
2527
- RouterOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterOutlet, deps: [{ token: ChildrenOutletContexts }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: 'name', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
2528
- RouterOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-rc.1", type: RouterOutlet, selector: "router-outlet", outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], ngImport: i0 });
2529
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterOutlet, decorators: [{
2528
+ RouterOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterOutlet, deps: [{ token: ChildrenOutletContexts }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: 'name', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
2529
+ RouterOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.1", type: RouterOutlet, selector: "router-outlet", outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], ngImport: i0 });
2530
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterOutlet, decorators: [{
2530
2531
  type: Directive,
2531
2532
  args: [{ selector: 'router-outlet', exportAs: 'outlet' }]
2532
2533
  }], ctorParameters: function () {
@@ -2582,9 +2583,9 @@ class OutletInjector {
2582
2583
  */
2583
2584
  class ɵEmptyOutletComponent {
2584
2585
  }
2585
- ɵEmptyOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2586
- ɵEmptyOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0-rc.1", type: ɵEmptyOutletComponent, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, directives: [{ type: RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
2587
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
2586
+ ɵEmptyOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2587
+ ɵEmptyOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.1", type: ɵEmptyOutletComponent, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, directives: [{ type: RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
2588
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
2588
2589
  type: Component,
2589
2590
  args: [{ template: `<router-outlet></router-outlet>` }]
2590
2591
  }] });
@@ -3788,6 +3789,12 @@ function recognize(rootComponentType, config, serializer, paramsInheritanceStrat
3788
3789
  * Use of this source code is governed by an MIT-style license that can be
3789
3790
  * found in the LICENSE file at https://angular.io/license
3790
3791
  */
3792
+ /**
3793
+ * A private symbol used to store the value of `Route.title` inside the `Route.data` if it is a
3794
+ * static string or `Route.resolve` if anything else. This allows us to reuse the existing route
3795
+ * data/resolvers to support the title feature without new instrumentation in the `Router` pipeline.
3796
+ */
3797
+ const RouteTitle = Symbol('RouteTitle');
3791
3798
  function resolveData(paramsInheritanceStrategy, moduleInjector) {
3792
3799
  return mergeMap(t => {
3793
3800
  const { targetSnapshot, guards: { canActivateChecks } } = t;
@@ -3800,11 +3807,21 @@ function resolveData(paramsInheritanceStrategy, moduleInjector) {
3800
3807
  });
3801
3808
  }
3802
3809
  function runResolve(futureARS, futureRSS, paramsInheritanceStrategy, moduleInjector) {
3810
+ const config = futureARS.routeConfig;
3803
3811
  const resolve = futureARS._resolve;
3812
+ const data = Object.assign({}, futureARS.data);
3813
+ if ((config === null || config === void 0 ? void 0 : config.title) !== undefined) {
3814
+ if (typeof config.title === 'string' || config.title === null) {
3815
+ data[RouteTitle] = config.title;
3816
+ }
3817
+ else {
3818
+ resolve[RouteTitle] = config.title;
3819
+ }
3820
+ }
3804
3821
  return resolveNode(resolve, futureARS, futureRSS, moduleInjector)
3805
3822
  .pipe(map((resolvedData) => {
3806
3823
  futureARS._resolvedData = resolvedData;
3807
- futureARS.data = Object.assign(Object.assign({}, futureARS.data), inheritedParamsDataResolve(futureARS, paramsInheritanceStrategy).resolve);
3824
+ futureARS.data = Object.assign(Object.assign({}, data), inheritedParamsDataResolve(futureARS, paramsInheritanceStrategy).resolve);
3808
3825
  return null;
3809
3826
  }));
3810
3827
  }
@@ -4141,7 +4158,7 @@ class Router {
4141
4158
  */
4142
4159
  this.onSameUrlNavigation = 'ignore';
4143
4160
  /**
4144
- * How to merge parameters, data, and resolved data from parent to child
4161
+ * How to merge parameters, data, resolved data, and title from parent to child
4145
4162
  * routes. One of:
4146
4163
  *
4147
4164
  * - `'emptyOnly'` : Inherit parent parameters, data, and resolved data
@@ -4798,12 +4815,14 @@ class Router {
4798
4815
  }
4799
4816
  processNavigations() {
4800
4817
  this.navigations.subscribe(t => {
4818
+ var _a;
4801
4819
  this.navigated = true;
4802
4820
  this.lastSuccessfulId = t.id;
4803
4821
  this.currentPageId = t.targetPageId;
4804
4822
  this.events
4805
4823
  .next(new NavigationEnd(t.id, this.serializeUrl(t.extractedUrl), this.serializeUrl(this.currentUrlTree)));
4806
4824
  this.lastSuccessfulNavigation = this.currentNavigation;
4825
+ (_a = this.titleStrategy) === null || _a === void 0 ? void 0 : _a.updateTitle(this.routerState.snapshot);
4807
4826
  t.resolve(true);
4808
4827
  }, e => {
4809
4828
  this.console.warn(`Unhandled Navigation Error: ${e}`);
@@ -4970,9 +4989,9 @@ class Router {
4970
4989
  return { navigationId };
4971
4990
  }
4972
4991
  }
4973
- Router.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: Router, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
4974
- Router.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: Router });
4975
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: Router, decorators: [{
4992
+ Router.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: Router, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
4993
+ Router.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: Router });
4994
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: Router, decorators: [{
4976
4995
  type: Injectable
4977
4996
  }], ctorParameters: function () { return [{ type: i0.Type }, { type: UrlSerializer }, { type: ChildrenOutletContexts }, { type: i3.Location }, { type: i0.Injector }, { type: i0.Compiler }, { type: undefined }]; } });
4978
4997
  function validateCommands(commands) {
@@ -5164,9 +5183,9 @@ class RouterLink {
5164
5183
  });
5165
5184
  }
5166
5185
  }
5167
- RouterLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLink, deps: [{ token: Router }, { token: ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
5168
- RouterLink.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-rc.1", type: RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: { queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", relativeTo: "relativeTo", routerLink: "routerLink" }, host: { listeners: { "click": "onClick()" } }, usesOnChanges: true, ngImport: i0 });
5169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLink, decorators: [{
5186
+ RouterLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLink, deps: [{ token: Router }, { token: ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
5187
+ RouterLink.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.1", type: RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: { queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", relativeTo: "relativeTo", routerLink: "routerLink" }, host: { listeners: { "click": "onClick()" } }, usesOnChanges: true, ngImport: i0 });
5188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLink, decorators: [{
5170
5189
  type: Directive,
5171
5190
  args: [{ selector: ':not(a):not(area)[routerLink]' }]
5172
5191
  }], ctorParameters: function () {
@@ -5285,9 +5304,9 @@ class RouterLinkWithHref {
5285
5304
  });
5286
5305
  }
5287
5306
  }
5288
- RouterLinkWithHref.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLinkWithHref, deps: [{ token: Router }, { token: ActivatedRoute }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive });
5289
- RouterLinkWithHref.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-rc.1", type: RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: { target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", relativeTo: "relativeTo", routerLink: "routerLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" }, properties: { "attr.target": "this.target", "attr.href": "this.href" } }, usesOnChanges: true, ngImport: i0 });
5290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLinkWithHref, decorators: [{
5307
+ RouterLinkWithHref.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLinkWithHref, deps: [{ token: Router }, { token: ActivatedRoute }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive });
5308
+ RouterLinkWithHref.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.1", type: RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: { target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", preserveFragment: "preserveFragment", skipLocationChange: "skipLocationChange", replaceUrl: "replaceUrl", state: "state", relativeTo: "relativeTo", routerLink: "routerLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" }, properties: { "attr.target": "this.target", "attr.href": "this.href" } }, usesOnChanges: true, ngImport: i0 });
5309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLinkWithHref, decorators: [{
5291
5310
  type: Directive,
5292
5311
  args: [{ selector: 'a[routerLink],area[routerLink]' }]
5293
5312
  }], ctorParameters: function () { return [{ type: Router }, { type: ActivatedRoute }, { type: i3.LocationStrategy }]; }, propDecorators: { target: [{
@@ -5501,9 +5520,9 @@ class RouterLinkActive {
5501
5520
  this.links.some(isActiveCheckFn) || this.linksWithHrefs.some(isActiveCheckFn);
5502
5521
  }
5503
5522
  }
5504
- RouterLinkActive.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLinkActive, deps: [{ token: Router }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: RouterLink, optional: true }, { token: RouterLinkWithHref, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
5505
- RouterLinkActive.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-rc.1", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: { routerLinkActiveOptions: "routerLinkActiveOptions", routerLinkActive: "routerLinkActive" }, outputs: { isActiveChange: "isActiveChange" }, queries: [{ propertyName: "links", predicate: RouterLink, descendants: true }, { propertyName: "linksWithHrefs", predicate: RouterLinkWithHref, descendants: true }], exportAs: ["routerLinkActive"], usesOnChanges: true, ngImport: i0 });
5506
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterLinkActive, decorators: [{
5523
+ RouterLinkActive.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLinkActive, deps: [{ token: Router }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: RouterLink, optional: true }, { token: RouterLinkWithHref, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
5524
+ RouterLinkActive.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.1", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: { routerLinkActiveOptions: "routerLinkActiveOptions", routerLinkActive: "routerLinkActive" }, outputs: { isActiveChange: "isActiveChange" }, queries: [{ propertyName: "links", predicate: RouterLink, descendants: true }, { propertyName: "linksWithHrefs", predicate: RouterLinkWithHref, descendants: true }], exportAs: ["routerLinkActive"], usesOnChanges: true, ngImport: i0 });
5525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterLinkActive, decorators: [{
5507
5526
  type: Directive,
5508
5527
  args: [{
5509
5528
  selector: '[routerLinkActive]',
@@ -5535,6 +5554,85 @@ function isActiveMatchOptions(options) {
5535
5554
  return !!options.paths;
5536
5555
  }
5537
5556
 
5557
+ /**
5558
+ * @license
5559
+ * Copyright Google LLC All Rights Reserved.
5560
+ *
5561
+ * Use of this source code is governed by an MIT-style license that can be
5562
+ * found in the LICENSE file at https://angular.io/license
5563
+ */
5564
+ /**
5565
+ * Provides a strategy for setting the page title after a router navigation.
5566
+ *
5567
+ * The built-in implementation traverses the router state snapshot and finds the deepest primary
5568
+ * outlet with `title` property. Given the `Routes` below, navigating to
5569
+ * `/base/child(popup:aux)` would result in the document title being set to "child".
5570
+ * ```
5571
+ * [
5572
+ * {path: 'base', title: 'base', children: [
5573
+ * {path: 'child', title: 'child'},
5574
+ * ],
5575
+ * {path: 'aux', outlet: 'popup', title: 'popupTitle'}
5576
+ * ]
5577
+ * ```
5578
+ *
5579
+ * This class can be used as a base class for custom title strategies. That is, you can create your
5580
+ * own class that extends the `TitleStrategy`. Note that in the above example, the `title`
5581
+ * from the named outlet is never used. However, a custom strategy might be implemented to
5582
+ * incorporate titles in named outlets.
5583
+ *
5584
+ * @publicApi
5585
+ * @see [Page title guide](guide/router#setting-the-page-title)
5586
+ */
5587
+ class TitleStrategy {
5588
+ /**
5589
+ * @returns The `title` of the deepest primary route.
5590
+ */
5591
+ buildTitle(snapshot) {
5592
+ var _a;
5593
+ let pageTitle;
5594
+ let route = snapshot.root;
5595
+ while (route !== undefined) {
5596
+ pageTitle = (_a = this.getResolvedTitleForRoute(route)) !== null && _a !== void 0 ? _a : pageTitle;
5597
+ route = route.children.find(child => child.outlet === PRIMARY_OUTLET);
5598
+ }
5599
+ return pageTitle;
5600
+ }
5601
+ /**
5602
+ * Given an `ActivatedRouteSnapshot`, returns the final value of the
5603
+ * `Route.title` property, which can either be a static string or a resolved value.
5604
+ */
5605
+ getResolvedTitleForRoute(snapshot) {
5606
+ return snapshot.data[RouteTitle];
5607
+ }
5608
+ }
5609
+ /**
5610
+ * The default `TitleStrategy` used by the router that updates the title using the `Title` service.
5611
+ */
5612
+ class DefaultTitleStrategy extends TitleStrategy {
5613
+ constructor(title) {
5614
+ super();
5615
+ this.title = title;
5616
+ }
5617
+ /**
5618
+ * Sets the title of the browser to the given value.
5619
+ *
5620
+ * @param title The `pageTitle` from the deepest primary route.
5621
+ */
5622
+ updateTitle(snapshot) {
5623
+ const title = this.buildTitle(snapshot);
5624
+ if (title !== undefined) {
5625
+ this.title.setTitle(title);
5626
+ }
5627
+ }
5628
+ }
5629
+ DefaultTitleStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable });
5630
+ DefaultTitleStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' });
5631
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
5632
+ type: Injectable,
5633
+ args: [{ providedIn: 'root' }]
5634
+ }], ctorParameters: function () { return [{ type: i1.Title }]; } });
5635
+
5538
5636
  /**
5539
5637
  * @license
5540
5638
  * Copyright Google LLC All Rights Reserved.
@@ -5648,9 +5746,9 @@ class RouterPreloader {
5648
5746
  });
5649
5747
  }
5650
5748
  }
5651
- RouterPreloader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterPreloader, deps: [{ token: Router }, { token: i0.Compiler }, { token: i0.Injector }, { token: PreloadingStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
5652
- RouterPreloader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterPreloader });
5653
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterPreloader, decorators: [{
5749
+ RouterPreloader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterPreloader, deps: [{ token: Router }, { token: i0.Compiler }, { token: i0.Injector }, { token: PreloadingStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
5750
+ RouterPreloader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterPreloader });
5751
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterPreloader, decorators: [{
5654
5752
  type: Injectable
5655
5753
  }], ctorParameters: function () { return [{ type: Router }, { type: i0.Compiler }, { type: i0.Injector }, { type: PreloadingStrategy }]; } });
5656
5754
 
@@ -5729,9 +5827,9 @@ class RouterScroller {
5729
5827
  }
5730
5828
  }
5731
5829
  }
5732
- RouterScroller.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterScroller, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
5733
- RouterScroller.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterScroller });
5734
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterScroller, decorators: [{
5830
+ RouterScroller.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterScroller, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
5831
+ RouterScroller.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterScroller });
5832
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterScroller, decorators: [{
5735
5833
  type: Injectable
5736
5834
  }], ctorParameters: function () { return [{ type: Router }, { type: i3.ViewportScroller }, { type: undefined }]; } });
5737
5835
 
@@ -5764,8 +5862,8 @@ const ROUTER_PROVIDERS = [
5764
5862
  useFactory: setupRouter,
5765
5863
  deps: [
5766
5864
  UrlSerializer, ChildrenOutletContexts, Location, Injector, Compiler, ROUTES,
5767
- ROUTER_CONFIGURATION, [UrlHandlingStrategy, new Optional()],
5768
- [RouteReuseStrategy, new Optional()]
5865
+ ROUTER_CONFIGURATION, DefaultTitleStrategy, [TitleStrategy, new Optional()],
5866
+ [UrlHandlingStrategy, new Optional()], [RouteReuseStrategy, new Optional()]
5769
5867
  ]
5770
5868
  },
5771
5869
  ChildrenOutletContexts,
@@ -5872,10 +5970,10 @@ class RouterModule {
5872
5970
  return { ngModule: RouterModule, providers: [provideRoutes(routes)] };
5873
5971
  }
5874
5972
  }
5875
- RouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterModule, deps: [{ token: ROUTER_FORROOT_GUARD, optional: true }, { token: Router, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
5876
- RouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterModule, declarations: [RouterOutlet, RouterLink, RouterLinkWithHref, RouterLinkActive, ɵEmptyOutletComponent], exports: [RouterOutlet, RouterLink, RouterLinkWithHref, RouterLinkActive, ɵEmptyOutletComponent] });
5877
- RouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterModule });
5878
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterModule, decorators: [{
5973
+ RouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterModule, deps: [{ token: ROUTER_FORROOT_GUARD, optional: true }, { token: Router, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
5974
+ RouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterModule, declarations: [RouterOutlet, RouterLink, RouterLinkWithHref, RouterLinkActive, ɵEmptyOutletComponent], exports: [RouterOutlet, RouterLink, RouterLinkWithHref, RouterLinkActive, ɵEmptyOutletComponent] });
5975
+ RouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterModule });
5976
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterModule, decorators: [{
5879
5977
  type: NgModule,
5880
5978
  args: [{
5881
5979
  declarations: ROUTER_DIRECTIVES,
@@ -5929,7 +6027,7 @@ function provideRoutes(routes) {
5929
6027
  { provide: ROUTES, multi: true, useValue: routes },
5930
6028
  ];
5931
6029
  }
5932
- function setupRouter(urlSerializer, contexts, location, injector, compiler, config, opts = {}, urlHandlingStrategy, routeReuseStrategy) {
6030
+ function setupRouter(urlSerializer, contexts, location, injector, compiler, config, opts = {}, defaultTitleStrategy, titleStrategy, urlHandlingStrategy, routeReuseStrategy) {
5933
6031
  const router = new Router(null, urlSerializer, contexts, location, injector, compiler, flatten(config));
5934
6032
  if (urlHandlingStrategy) {
5935
6033
  router.urlHandlingStrategy = urlHandlingStrategy;
@@ -5937,6 +6035,7 @@ function setupRouter(urlSerializer, contexts, location, injector, compiler, conf
5937
6035
  if (routeReuseStrategy) {
5938
6036
  router.routeReuseStrategy = routeReuseStrategy;
5939
6037
  }
6038
+ router.titleStrategy = titleStrategy !== null && titleStrategy !== void 0 ? titleStrategy : defaultTitleStrategy;
5940
6039
  assignExtraOptionsToRouter(opts, router);
5941
6040
  if (opts.enableTracing) {
5942
6041
  router.events.subscribe((e) => {
@@ -6056,9 +6155,9 @@ class RouterInitializer {
6056
6155
  this.destroyed = true;
6057
6156
  }
6058
6157
  }
6059
- RouterInitializer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterInitializer, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
6060
- RouterInitializer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterInitializer });
6061
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-rc.1", ngImport: i0, type: RouterInitializer, decorators: [{
6158
+ RouterInitializer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterInitializer, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
6159
+ RouterInitializer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterInitializer });
6160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.1", ngImport: i0, type: RouterInitializer, decorators: [{
6062
6161
  type: Injectable
6063
6162
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
6064
6163
  function getAppInitializer(r) {
@@ -6098,7 +6197,7 @@ function provideRouterInitializer() {
6098
6197
  /**
6099
6198
  * @publicApi
6100
6199
  */
6101
- const VERSION = new Version('13.2.0-rc.1');
6200
+ const VERSION = new Version('14.0.0-next.1');
6102
6201
 
6103
6202
  /**
6104
6203
  * @license
@@ -6137,5 +6236,5 @@ const VERSION = new Version('13.2.0-rc.1');
6137
6236
  * Generated bundle index. Do not edit.
6138
6237
  */
6139
6238
 
6140
- export { ActivatedRoute, ActivatedRouteSnapshot, ActivationEnd, ActivationStart, BaseRouteReuseStrategy, ChildActivationEnd, ChildActivationStart, ChildrenOutletContexts, DefaultUrlSerializer, GuardsCheckEnd, GuardsCheckStart, NavigationCancel, NavigationEnd, NavigationError, NavigationStart, NoPreloading, OutletContext, PRIMARY_OUTLET, PreloadAllModules, PreloadingStrategy, ROUTER_CONFIGURATION, ROUTER_INITIALIZER, ROUTES, ResolveEnd, ResolveStart, RouteConfigLoadEnd, RouteConfigLoadStart, RouteReuseStrategy, Router, RouterEvent, RouterLink, RouterLinkActive, RouterLinkWithHref, RouterModule, RouterOutlet, RouterPreloader, RouterState, RouterStateSnapshot, RoutesRecognized, Scroll, UrlHandlingStrategy, UrlSegment, UrlSegmentGroup, UrlSerializer, UrlTree, VERSION, convertToParamMap, provideRoutes, ɵEmptyOutletComponent, ROUTER_PROVIDERS as ɵROUTER_PROVIDERS, assignExtraOptionsToRouter as ɵassignExtraOptionsToRouter, flatten as ɵflatten };
6239
+ export { ActivatedRoute, ActivatedRouteSnapshot, ActivationEnd, ActivationStart, BaseRouteReuseStrategy, ChildActivationEnd, ChildActivationStart, ChildrenOutletContexts, DefaultTitleStrategy, DefaultUrlSerializer, GuardsCheckEnd, GuardsCheckStart, NavigationCancel, NavigationEnd, NavigationError, NavigationStart, NoPreloading, OutletContext, PRIMARY_OUTLET, PreloadAllModules, PreloadingStrategy, ROUTER_CONFIGURATION, ROUTER_INITIALIZER, ROUTES, ResolveEnd, ResolveStart, RouteConfigLoadEnd, RouteConfigLoadStart, RouteReuseStrategy, Router, RouterEvent, RouterLink, RouterLinkActive, RouterLinkWithHref, RouterModule, RouterOutlet, RouterPreloader, RouterState, RouterStateSnapshot, RoutesRecognized, Scroll, TitleStrategy, UrlHandlingStrategy, UrlSegment, UrlSegmentGroup, UrlSerializer, UrlTree, VERSION, convertToParamMap, provideRoutes, ɵEmptyOutletComponent, ROUTER_PROVIDERS as ɵROUTER_PROVIDERS, assignExtraOptionsToRouter as ɵassignExtraOptionsToRouter, flatten as ɵflatten };
6141
6240
  //# sourceMappingURL=router.mjs.map