@angular/router 17.1.0-next.1 → 17.1.0-next.3
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.
- package/esm2022/src/components/empty_outlet.mjs +3 -3
- package/esm2022/src/directives/router_link.mjs +3 -3
- package/esm2022/src/directives/router_link_active.mjs +3 -3
- package/esm2022/src/directives/router_outlet.mjs +6 -6
- package/esm2022/src/models.mjs +1 -1
- package/esm2022/src/navigation_transition.mjs +19 -5
- package/esm2022/src/operators/check_guards.mjs +7 -6
- package/esm2022/src/operators/resolve_data.mjs +19 -14
- package/esm2022/src/page_title_strategy.mjs +6 -6
- package/esm2022/src/provide_router.mjs +3 -3
- package/esm2022/src/recognize.mjs +5 -20
- package/esm2022/src/route_reuse_strategy.mjs +6 -6
- package/esm2022/src/router.mjs +9 -7
- package/esm2022/src/router_config.mjs +1 -1
- package/esm2022/src/router_config_loader.mjs +3 -3
- package/esm2022/src/router_module.mjs +4 -4
- package/esm2022/src/router_outlet_context.mjs +3 -3
- package/esm2022/src/router_preloader.mjs +9 -9
- package/esm2022/src/router_scroller.mjs +3 -3
- package/esm2022/src/statemanager/state_manager.mjs +6 -6
- package/esm2022/src/url_handling_strategy.mjs +6 -6
- package/esm2022/src/url_tree.mjs +3 -3
- package/esm2022/src/utils/config_matching.mjs +14 -4
- package/esm2022/src/version.mjs +1 -1
- package/esm2022/testing/src/router_testing_harness.mjs +6 -6
- package/esm2022/testing/src/router_testing_module.mjs +4 -4
- package/fesm2022/router.mjs +130 -115
- package/fesm2022/router.mjs.map +1 -1
- package/fesm2022/testing.mjs +11 -11
- package/fesm2022/upgrade.mjs +1 -1
- package/index.d.ts +41 -4
- package/package.json +4 -4
- package/testing/index.d.ts +1 -1
- package/upgrade/index.d.ts +1 -1
package/fesm2022/router.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v17.1.0-next.
|
|
2
|
+
* @license Angular v17.1.0-next.3
|
|
3
3
|
* (c) 2010-2022 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import * as i0 from '@angular/core';
|
|
8
|
-
import { ɵisPromise, ɵRuntimeError, Injectable, EventEmitter, inject, ViewContainerRef, ChangeDetectorRef, EnvironmentInjector, Directive, Input, Output, InjectionToken, reflectComponentType, Component, createEnvironmentInjector, ɵisNgModule, isStandalone, ɵisInjectable, Compiler, NgModuleFactory, NgZone,
|
|
8
|
+
import { ɵisPromise, ɵRuntimeError, Injectable, EventEmitter, inject, ViewContainerRef, ChangeDetectorRef, EnvironmentInjector, Directive, Input, Output, InjectionToken, reflectComponentType, Component, createEnvironmentInjector, ɵisNgModule, isStandalone, ɵisInjectable, runInInjectionContext, Compiler, NgModuleFactory, NgZone, afterNextRender, ɵConsole, ɵInitialRenderPendingTasks, ɵɵsanitizeUrlOrResourceUrl, booleanAttribute, Attribute, HostBinding, HostListener, Optional, ContentChildren, makeEnvironmentProviders, APP_BOOTSTRAP_LISTENER, ENVIRONMENT_INITIALIZER, Injector, ApplicationRef, InjectFlags, APP_INITIALIZER, SkipSelf, NgModule, Inject, Version } from '@angular/core';
|
|
9
9
|
import { isObservable, from, of, BehaviorSubject, combineLatest, EmptyError, concat, defer, pipe, throwError, EMPTY, ConnectableObservable, Subject, Subscription } from 'rxjs';
|
|
10
10
|
import * as i3 from '@angular/common';
|
|
11
11
|
import { DOCUMENT, Location, ViewportScroller, LOCATION_INITIALIZED, LocationStrategy, HashLocationStrategy, PathLocationStrategy } from '@angular/common';
|
|
@@ -425,10 +425,10 @@ function mapChildrenIntoArray(segment, fn) {
|
|
|
425
425
|
* @publicApi
|
|
426
426
|
*/
|
|
427
427
|
class UrlSerializer {
|
|
428
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
429
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
428
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlSerializer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
429
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlSerializer, providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }); }
|
|
430
430
|
}
|
|
431
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
431
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlSerializer, decorators: [{
|
|
432
432
|
type: Injectable,
|
|
433
433
|
args: [{ providedIn: 'root', useFactory: () => new DefaultUrlSerializer() }]
|
|
434
434
|
}] });
|
|
@@ -1855,10 +1855,10 @@ class ChildrenOutletContexts {
|
|
|
1855
1855
|
getContext(childName) {
|
|
1856
1856
|
return this.contexts.get(childName) || null;
|
|
1857
1857
|
}
|
|
1858
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
1859
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
1858
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: ChildrenOutletContexts, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1859
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: ChildrenOutletContexts, providedIn: 'root' }); }
|
|
1860
1860
|
}
|
|
1861
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
1861
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: ChildrenOutletContexts, decorators: [{
|
|
1862
1862
|
type: Injectable,
|
|
1863
1863
|
args: [{ providedIn: 'root' }]
|
|
1864
1864
|
}] });
|
|
@@ -2578,10 +2578,10 @@ class RouterOutlet {
|
|
|
2578
2578
|
this.inputBinder?.bindActivatedRouteToOutletComponent(this);
|
|
2579
2579
|
this.activateEvents.emit(this.activated.instance);
|
|
2580
2580
|
}
|
|
2581
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2582
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0-next.
|
|
2581
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterOutlet, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2582
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0-next.3", type: RouterOutlet, isStandalone: true, selector: "router-outlet", inputs: { name: "name" }, outputs: { activateEvents: "activate", deactivateEvents: "deactivate", attachEvents: "attach", detachEvents: "detach" }, exportAs: ["outlet"], usesOnChanges: true, ngImport: i0 }); }
|
|
2583
2583
|
}
|
|
2584
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterOutlet, decorators: [{
|
|
2585
2585
|
type: Directive,
|
|
2586
2586
|
args: [{
|
|
2587
2587
|
selector: 'router-outlet',
|
|
@@ -2684,10 +2684,10 @@ class RoutedComponentInputBinder {
|
|
|
2684
2684
|
});
|
|
2685
2685
|
this.outletDataSubscriptions.set(outlet, dataSubscription);
|
|
2686
2686
|
}
|
|
2687
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2688
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2687
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RoutedComponentInputBinder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2688
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RoutedComponentInputBinder }); }
|
|
2689
2689
|
}
|
|
2690
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2690
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RoutedComponentInputBinder, decorators: [{
|
|
2691
2691
|
type: Injectable
|
|
2692
2692
|
}] });
|
|
2693
2693
|
|
|
@@ -2767,10 +2767,10 @@ function isNavigationCancelingError$1(error) {
|
|
|
2767
2767
|
* to this `EmptyOutletComponent`.
|
|
2768
2768
|
*/
|
|
2769
2769
|
class ɵEmptyOutletComponent {
|
|
2770
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2771
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.0-next.
|
|
2770
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: ɵEmptyOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2771
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.0-next.3", type: ɵEmptyOutletComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `<router-outlet></router-outlet>`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
|
|
2772
2772
|
}
|
|
2773
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
2773
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: ɵEmptyOutletComponent, decorators: [{
|
|
2774
2774
|
type: Component,
|
|
2775
2775
|
args: [{
|
|
2776
2776
|
template: `<router-outlet></router-outlet>`,
|
|
@@ -3425,7 +3425,7 @@ function runCanActivate(futureRSS, futureARS, injector) {
|
|
|
3425
3425
|
const guard = getTokenOrFunctionIdentity(canActivate, closestInjector);
|
|
3426
3426
|
const guardVal = isCanActivate(guard) ?
|
|
3427
3427
|
guard.canActivate(futureARS, futureRSS) :
|
|
3428
|
-
closestInjector
|
|
3428
|
+
runInInjectionContext(closestInjector, () => guard(futureARS, futureRSS));
|
|
3429
3429
|
return wrapIntoObservable(guardVal).pipe(first());
|
|
3430
3430
|
});
|
|
3431
3431
|
});
|
|
@@ -3444,7 +3444,7 @@ function runCanActivateChild(futureRSS, path, injector) {
|
|
|
3444
3444
|
const guard = getTokenOrFunctionIdentity(canActivateChild, closestInjector);
|
|
3445
3445
|
const guardVal = isCanActivateChild(guard) ?
|
|
3446
3446
|
guard.canActivateChild(futureARS, futureRSS) :
|
|
3447
|
-
closestInjector
|
|
3447
|
+
runInInjectionContext(closestInjector, () => guard(futureARS, futureRSS));
|
|
3448
3448
|
return wrapIntoObservable(guardVal).pipe(first());
|
|
3449
3449
|
});
|
|
3450
3450
|
return of(guardsMapped).pipe(prioritizedGuardValue());
|
|
@@ -3461,7 +3461,7 @@ function runCanDeactivate(component, currARS, currRSS, futureRSS, injector) {
|
|
|
3461
3461
|
const guard = getTokenOrFunctionIdentity(c, closestInjector);
|
|
3462
3462
|
const guardVal = isCanDeactivate(guard) ?
|
|
3463
3463
|
guard.canDeactivate(component, currARS, currRSS, futureRSS) :
|
|
3464
|
-
closestInjector
|
|
3464
|
+
runInInjectionContext(closestInjector, () => guard(component, currARS, currRSS, futureRSS));
|
|
3465
3465
|
return wrapIntoObservable(guardVal).pipe(first());
|
|
3466
3466
|
});
|
|
3467
3467
|
return of(canDeactivateObservables).pipe(prioritizedGuardValue());
|
|
@@ -3475,7 +3475,7 @@ function runCanLoadGuards(injector, route, segments, urlSerializer) {
|
|
|
3475
3475
|
const guard = getTokenOrFunctionIdentity(injectionToken, injector);
|
|
3476
3476
|
const guardVal = isCanLoad(guard) ?
|
|
3477
3477
|
guard.canLoad(route, segments) :
|
|
3478
|
-
injector
|
|
3478
|
+
runInInjectionContext(injector, () => guard(route, segments));
|
|
3479
3479
|
return wrapIntoObservable(guardVal);
|
|
3480
3480
|
});
|
|
3481
3481
|
return of(canLoadObservables)
|
|
@@ -3496,7 +3496,7 @@ function runCanMatchGuards(injector, route, segments, urlSerializer) {
|
|
|
3496
3496
|
const guard = getTokenOrFunctionIdentity(injectionToken, injector);
|
|
3497
3497
|
const guardVal = isCanMatch(guard) ?
|
|
3498
3498
|
guard.canMatch(route, segments) :
|
|
3499
|
-
injector
|
|
3499
|
+
runInInjectionContext(injector, () => guard(route, segments));
|
|
3500
3500
|
return wrapIntoObservable(guardVal);
|
|
3501
3501
|
});
|
|
3502
3502
|
return of(canMatchObservables)
|
|
@@ -3627,6 +3627,9 @@ function matchWithChecks(segmentGroup, route, segments, injector, urlSerializer)
|
|
|
3627
3627
|
.pipe(map((v) => v === true ? result : { ...noMatch }));
|
|
3628
3628
|
}
|
|
3629
3629
|
function match(segmentGroup, route, segments) {
|
|
3630
|
+
if (route.path === '**') {
|
|
3631
|
+
return createWildcardMatchResult(segments);
|
|
3632
|
+
}
|
|
3630
3633
|
if (route.path === '') {
|
|
3631
3634
|
if (route.pathMatch === 'full' && (segmentGroup.hasChildren() || segments.length > 0)) {
|
|
3632
3635
|
return { ...noMatch };
|
|
@@ -3659,6 +3662,15 @@ function match(segmentGroup, route, segments) {
|
|
|
3659
3662
|
positionalParamSegments: res.posParams ?? {}
|
|
3660
3663
|
};
|
|
3661
3664
|
}
|
|
3665
|
+
function createWildcardMatchResult(segments) {
|
|
3666
|
+
return {
|
|
3667
|
+
matched: true,
|
|
3668
|
+
parameters: segments.length > 0 ? last(segments).parameters : {},
|
|
3669
|
+
consumedSegments: segments,
|
|
3670
|
+
remainingSegments: [],
|
|
3671
|
+
positionalParamSegments: {},
|
|
3672
|
+
};
|
|
3673
|
+
}
|
|
3662
3674
|
function split(segmentGroup, consumedSegments, slicedSegments, config) {
|
|
3663
3675
|
if (slicedSegments.length > 0 &&
|
|
3664
3676
|
containsEmptyPathMatchesWithNamedOutlets(segmentGroup, slicedSegments, config)) {
|
|
@@ -3727,9 +3739,6 @@ function isImmediateMatch(route, rawSegment, segments, outlet) {
|
|
|
3727
3739
|
(outlet === PRIMARY_OUTLET || !emptyPathMatch(rawSegment, segments, route))) {
|
|
3728
3740
|
return false;
|
|
3729
3741
|
}
|
|
3730
|
-
if (route.path === '**') {
|
|
3731
|
-
return true;
|
|
3732
|
-
}
|
|
3733
3742
|
return match(rawSegment, route, segments).matched;
|
|
3734
3743
|
}
|
|
3735
3744
|
function noLeftoversInUrl(segmentGroup, segments, outlet) {
|
|
@@ -3889,8 +3898,7 @@ class Recognizer {
|
|
|
3889
3898
|
return noMatch$1(rawSegment);
|
|
3890
3899
|
}
|
|
3891
3900
|
expandSegmentAgainstRouteUsingRedirect(injector, segmentGroup, routes, route, segments, outlet) {
|
|
3892
|
-
const { matched, consumedSegments, positionalParamSegments, remainingSegments, } = route
|
|
3893
|
-
match(segmentGroup, route, segments);
|
|
3901
|
+
const { matched, consumedSegments, positionalParamSegments, remainingSegments, } = match(segmentGroup, route, segments);
|
|
3894
3902
|
if (!matched)
|
|
3895
3903
|
return noMatch$1(segmentGroup);
|
|
3896
3904
|
// TODO(atscott): Move all of this under an if(ngDevMode) as a breaking change and allow stack
|
|
@@ -3913,18 +3921,14 @@ class Recognizer {
|
|
|
3913
3921
|
}));
|
|
3914
3922
|
}
|
|
3915
3923
|
matchSegmentAgainstRoute(injector, rawSegment, route, segments, outlet) {
|
|
3916
|
-
|
|
3924
|
+
const matchResult = matchWithChecks(rawSegment, route, segments, injector, this.urlSerializer);
|
|
3917
3925
|
if (route.path === '**') {
|
|
3918
|
-
matchResult = of(createWildcardMatchResult(segments));
|
|
3919
3926
|
// Prior versions of the route matching algorithm would stop matching at the wildcard route.
|
|
3920
3927
|
// We should investigate a better strategy for any existing children. Otherwise, these
|
|
3921
3928
|
// child segments are silently dropped from the navigation.
|
|
3922
3929
|
// https://github.com/angular/angular/issues/40089
|
|
3923
3930
|
rawSegment.children = {};
|
|
3924
3931
|
}
|
|
3925
|
-
else {
|
|
3926
|
-
matchResult = matchWithChecks(rawSegment, route, segments, injector, this.urlSerializer);
|
|
3927
|
-
}
|
|
3928
3932
|
return matchResult.pipe(switchMap((result) => {
|
|
3929
3933
|
if (!result.matched) {
|
|
3930
3934
|
return noMatch$1(rawSegment);
|
|
@@ -4056,15 +4060,6 @@ function getData(route) {
|
|
|
4056
4060
|
function getResolve(route) {
|
|
4057
4061
|
return route.resolve || {};
|
|
4058
4062
|
}
|
|
4059
|
-
function createWildcardMatchResult(segments) {
|
|
4060
|
-
return {
|
|
4061
|
-
matched: true,
|
|
4062
|
-
parameters: segments.length > 0 ? last(segments).parameters : {},
|
|
4063
|
-
consumedSegments: segments,
|
|
4064
|
-
remainingSegments: [],
|
|
4065
|
-
positionalParamSegments: {},
|
|
4066
|
-
};
|
|
4067
|
-
}
|
|
4068
4063
|
|
|
4069
4064
|
function recognize(injector, configLoader, rootComponentType, config, serializer, paramsInheritanceStrategy) {
|
|
4070
4065
|
return mergeMap(t => recognize$1(injector, configLoader, rootComponentType, config, t.extractedUrl, serializer, paramsInheritanceStrategy)
|
|
@@ -4079,27 +4074,31 @@ function resolveData(paramsInheritanceStrategy, injector) {
|
|
|
4079
4074
|
if (!canActivateChecks.length) {
|
|
4080
4075
|
return of(t);
|
|
4081
4076
|
}
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
|
|
4086
|
-
|
|
4087
|
-
|
|
4088
|
-
|
|
4089
|
-
|
|
4090
|
-
|
|
4091
|
-
.
|
|
4077
|
+
// Iterating a Set in javascript happens in insertion order so it is safe to use a `Set` to
|
|
4078
|
+
// preserve the correct order that the resolvers should run in.
|
|
4079
|
+
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set#description
|
|
4080
|
+
const routesWithResolversToRun = new Set(canActivateChecks.map(check => check.route));
|
|
4081
|
+
const routesNeedingDataUpdates = new Set();
|
|
4082
|
+
for (const route of routesWithResolversToRun) {
|
|
4083
|
+
if (routesNeedingDataUpdates.has(route)) {
|
|
4084
|
+
continue;
|
|
4085
|
+
}
|
|
4086
|
+
// All children under the route with a resolver to run need to recompute inherited data.
|
|
4087
|
+
for (const newRoute of flattenRouteTree(route)) {
|
|
4088
|
+
routesNeedingDataUpdates.add(newRoute);
|
|
4089
|
+
}
|
|
4090
|
+
}
|
|
4092
4091
|
let routesProcessed = 0;
|
|
4093
4092
|
return from(routesNeedingDataUpdates)
|
|
4094
4093
|
.pipe(concatMap(route => {
|
|
4095
|
-
if (
|
|
4094
|
+
if (routesWithResolversToRun.has(route)) {
|
|
4096
4095
|
return runResolve(route, targetSnapshot, paramsInheritanceStrategy, injector);
|
|
4097
4096
|
}
|
|
4098
4097
|
else {
|
|
4099
4098
|
route.data = getInherited(route, route.parent, paramsInheritanceStrategy).resolve;
|
|
4100
4099
|
return of(void 0);
|
|
4101
4100
|
}
|
|
4102
|
-
}), tap(() => routesProcessed++), takeLast(1), mergeMap(_ => routesProcessed === routesNeedingDataUpdates.
|
|
4101
|
+
}), tap(() => routesProcessed++), takeLast(1), mergeMap(_ => routesProcessed === routesNeedingDataUpdates.size ? of(t) : EMPTY));
|
|
4103
4102
|
});
|
|
4104
4103
|
}
|
|
4105
4104
|
/**
|
|
@@ -4137,7 +4136,7 @@ function getResolver(injectionToken, futureARS, futureRSS, injector) {
|
|
|
4137
4136
|
const resolver = getTokenOrFunctionIdentity(injectionToken, closestInjector);
|
|
4138
4137
|
const resolverValue = resolver.resolve ?
|
|
4139
4138
|
resolver.resolve(futureARS, futureRSS) :
|
|
4140
|
-
closestInjector
|
|
4139
|
+
runInInjectionContext(closestInjector, () => resolver(futureARS, futureRSS));
|
|
4141
4140
|
return wrapIntoObservable(resolverValue);
|
|
4142
4141
|
}
|
|
4143
4142
|
|
|
@@ -4200,10 +4199,10 @@ class TitleStrategy {
|
|
|
4200
4199
|
getResolvedTitleForRoute(snapshot) {
|
|
4201
4200
|
return snapshot.data[RouteTitleKey];
|
|
4202
4201
|
}
|
|
4203
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4204
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4202
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: TitleStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4203
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: TitleStrategy, providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }); }
|
|
4205
4204
|
}
|
|
4206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: TitleStrategy, decorators: [{
|
|
4207
4206
|
type: Injectable,
|
|
4208
4207
|
args: [{ providedIn: 'root', useFactory: () => inject(DefaultTitleStrategy) }]
|
|
4209
4208
|
}] });
|
|
@@ -4226,10 +4225,10 @@ class DefaultTitleStrategy extends TitleStrategy {
|
|
|
4226
4225
|
this.title.setTitle(title);
|
|
4227
4226
|
}
|
|
4228
4227
|
}
|
|
4229
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4230
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4228
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultTitleStrategy, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4229
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultTitleStrategy, providedIn: 'root' }); }
|
|
4231
4230
|
}
|
|
4232
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultTitleStrategy, decorators: [{
|
|
4233
4232
|
type: Injectable,
|
|
4234
4233
|
args: [{ providedIn: 'root' }]
|
|
4235
4234
|
}], ctorParameters: () => [{ type: i1.Title }] });
|
|
@@ -4307,10 +4306,10 @@ class RouterConfigLoader {
|
|
|
4307
4306
|
this.childrenLoaders.set(route, loader);
|
|
4308
4307
|
return loader;
|
|
4309
4308
|
}
|
|
4310
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4311
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4309
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterConfigLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4310
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterConfigLoader, providedIn: 'root' }); }
|
|
4312
4311
|
}
|
|
4313
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4312
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterConfigLoader, decorators: [{
|
|
4314
4313
|
type: Injectable,
|
|
4315
4314
|
args: [{ providedIn: 'root' }]
|
|
4316
4315
|
}] });
|
|
@@ -4378,10 +4377,10 @@ function maybeUnwrapDefaultExport(input) {
|
|
|
4378
4377
|
* @publicApi
|
|
4379
4378
|
*/
|
|
4380
4379
|
class UrlHandlingStrategy {
|
|
4381
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4382
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4380
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4381
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlHandlingStrategy, providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }); }
|
|
4383
4382
|
}
|
|
4384
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4383
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: UrlHandlingStrategy, decorators: [{
|
|
4385
4384
|
type: Injectable,
|
|
4386
4385
|
args: [{ providedIn: 'root', useFactory: () => inject(DefaultUrlHandlingStrategy) }]
|
|
4387
4386
|
}] });
|
|
@@ -4398,10 +4397,10 @@ class DefaultUrlHandlingStrategy {
|
|
|
4398
4397
|
merge(newUrlPart, wholeUrl) {
|
|
4399
4398
|
return newUrlPart;
|
|
4400
4399
|
}
|
|
4401
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4402
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4400
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultUrlHandlingStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4401
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultUrlHandlingStrategy, providedIn: 'root' }); }
|
|
4403
4402
|
}
|
|
4404
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4403
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultUrlHandlingStrategy, decorators: [{
|
|
4405
4404
|
type: Injectable,
|
|
4406
4405
|
args: [{ providedIn: 'root' }]
|
|
4407
4406
|
}] });
|
|
@@ -4770,7 +4769,21 @@ class NavigationTransitions {
|
|
|
4770
4769
|
overallTransitionState.resolve(router.errorHandler(e));
|
|
4771
4770
|
}
|
|
4772
4771
|
catch (ee) {
|
|
4773
|
-
|
|
4772
|
+
// TODO(atscott): consider flipping the default behavior of
|
|
4773
|
+
// resolveNavigationPromiseOnError to be `resolve(false)` when
|
|
4774
|
+
// undefined. This is the most sane thing to do given that
|
|
4775
|
+
// applications very rarely handle the promise rejection and, as a
|
|
4776
|
+
// result, would get "unhandled promise rejection" console logs.
|
|
4777
|
+
// The vast majority of applications would not be affected by this
|
|
4778
|
+
// change so omitting a migration seems reasonable. Instead,
|
|
4779
|
+
// applications that rely on rejection can specifically opt-in to the
|
|
4780
|
+
// old behavior.
|
|
4781
|
+
if (this.options.resolveNavigationPromiseOnError) {
|
|
4782
|
+
overallTransitionState.resolve(false);
|
|
4783
|
+
}
|
|
4784
|
+
else {
|
|
4785
|
+
overallTransitionState.reject(ee);
|
|
4786
|
+
}
|
|
4774
4787
|
}
|
|
4775
4788
|
}
|
|
4776
4789
|
return EMPTY;
|
|
@@ -4810,10 +4823,10 @@ class NavigationTransitions {
|
|
|
4810
4823
|
return extractedBrowserUrl.toString() !== this.currentTransition?.extractedUrl.toString() &&
|
|
4811
4824
|
!this.currentTransition?.extras.skipLocationChange;
|
|
4812
4825
|
}
|
|
4813
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4814
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4826
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NavigationTransitions, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4827
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NavigationTransitions, providedIn: 'root' }); }
|
|
4815
4828
|
}
|
|
4816
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4829
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NavigationTransitions, decorators: [{
|
|
4817
4830
|
type: Injectable,
|
|
4818
4831
|
args: [{ providedIn: 'root' }]
|
|
4819
4832
|
}], ctorParameters: () => [] });
|
|
@@ -4829,10 +4842,10 @@ function isBrowserTriggeredNavigation(source) {
|
|
|
4829
4842
|
* @publicApi
|
|
4830
4843
|
*/
|
|
4831
4844
|
class RouteReuseStrategy {
|
|
4832
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4833
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4845
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouteReuseStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4846
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouteReuseStrategy, providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }); }
|
|
4834
4847
|
}
|
|
4835
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4848
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouteReuseStrategy, decorators: [{
|
|
4836
4849
|
type: Injectable,
|
|
4837
4850
|
args: [{ providedIn: 'root', useFactory: () => inject(DefaultRouteReuseStrategy) }]
|
|
4838
4851
|
}] });
|
|
@@ -4883,19 +4896,19 @@ class BaseRouteReuseStrategy {
|
|
|
4883
4896
|
}
|
|
4884
4897
|
}
|
|
4885
4898
|
class DefaultRouteReuseStrategy extends BaseRouteReuseStrategy {
|
|
4886
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4887
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4899
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultRouteReuseStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4900
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultRouteReuseStrategy, providedIn: 'root' }); }
|
|
4888
4901
|
}
|
|
4889
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4902
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: DefaultRouteReuseStrategy, decorators: [{
|
|
4890
4903
|
type: Injectable,
|
|
4891
4904
|
args: [{ providedIn: 'root' }]
|
|
4892
4905
|
}] });
|
|
4893
4906
|
|
|
4894
4907
|
class StateManager {
|
|
4895
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4896
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4908
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: StateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4909
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: StateManager, providedIn: 'root', useFactory: () => inject(HistoryStateManager) }); }
|
|
4897
4910
|
}
|
|
4898
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
4911
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: StateManager, decorators: [{
|
|
4899
4912
|
type: Injectable,
|
|
4900
4913
|
args: [{ providedIn: 'root', useFactory: () => inject(HistoryStateManager) }]
|
|
4901
4914
|
}] });
|
|
@@ -5072,10 +5085,10 @@ class HistoryStateManager extends StateManager {
|
|
|
5072
5085
|
}
|
|
5073
5086
|
return { navigationId };
|
|
5074
5087
|
}
|
|
5075
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5076
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5088
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: HistoryStateManager, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5089
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: HistoryStateManager, providedIn: 'root' }); }
|
|
5077
5090
|
}
|
|
5078
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5091
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: HistoryStateManager, decorators: [{
|
|
5079
5092
|
type: Injectable,
|
|
5080
5093
|
args: [{ providedIn: 'root' }]
|
|
5081
5094
|
}] });
|
|
@@ -5258,6 +5271,8 @@ class Router {
|
|
|
5258
5271
|
else if (e instanceof RedirectRequest) {
|
|
5259
5272
|
const mergedTree = this.urlHandlingStrategy.merge(e.url, currentTransition.currentRawUrl);
|
|
5260
5273
|
const extras = {
|
|
5274
|
+
// Persist transient navigation info from the original navigation request.
|
|
5275
|
+
info: currentTransition.extras.info,
|
|
5261
5276
|
skipLocationChange: currentTransition.extras.skipLocationChange,
|
|
5262
5277
|
// The URL is already updated at this point if we have 'eager' URL
|
|
5263
5278
|
// updates or if the navigation was triggered by the browser (back
|
|
@@ -5543,9 +5558,9 @@ class Router {
|
|
|
5543
5558
|
* @param extras An options object that determines how the URL should be constructed or
|
|
5544
5559
|
* interpreted.
|
|
5545
5560
|
*
|
|
5546
|
-
* @returns A Promise that resolves to `true` when navigation succeeds,
|
|
5547
|
-
* fails
|
|
5548
|
-
*
|
|
5561
|
+
* @returns A Promise that resolves to `true` when navigation succeeds, or `false` when navigation
|
|
5562
|
+
* fails. The Promise is rejected when an error occurs if `resolveNavigationPromiseOnError` is
|
|
5563
|
+
* not `true`.
|
|
5549
5564
|
*
|
|
5550
5565
|
* @usageNotes
|
|
5551
5566
|
*
|
|
@@ -5648,10 +5663,10 @@ class Router {
|
|
|
5648
5663
|
return Promise.reject(e);
|
|
5649
5664
|
});
|
|
5650
5665
|
}
|
|
5651
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5652
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5666
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: Router, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5667
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: Router, providedIn: 'root' }); }
|
|
5653
5668
|
}
|
|
5654
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5669
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: Router, decorators: [{
|
|
5655
5670
|
type: Injectable,
|
|
5656
5671
|
args: [{ providedIn: 'root' }]
|
|
5657
5672
|
}], ctorParameters: () => [] });
|
|
@@ -5922,10 +5937,10 @@ class RouterLink {
|
|
|
5922
5937
|
preserveFragment: this.preserveFragment,
|
|
5923
5938
|
});
|
|
5924
5939
|
}
|
|
5925
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5926
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.1.0-next.
|
|
5940
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterLink, deps: [{ token: Router }, { token: ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5941
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.1.0-next.3", type: RouterLink, isStandalone: true, selector: "[routerLink]", inputs: { target: "target", queryParams: "queryParams", fragment: "fragment", queryParamsHandling: "queryParamsHandling", state: "state", relativeTo: "relativeTo", preserveFragment: ["preserveFragment", "preserveFragment", booleanAttribute], skipLocationChange: ["skipLocationChange", "skipLocationChange", booleanAttribute], replaceUrl: ["replaceUrl", "replaceUrl", booleanAttribute], routerLink: "routerLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" }, properties: { "attr.target": "this.target" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
5927
5942
|
}
|
|
5928
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
5943
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterLink, decorators: [{
|
|
5929
5944
|
type: Directive,
|
|
5930
5945
|
args: [{
|
|
5931
5946
|
selector: '[routerLink]',
|
|
@@ -6148,10 +6163,10 @@ class RouterLinkActive {
|
|
|
6148
6163
|
const isActiveCheckFn = this.isLinkActive(this.router);
|
|
6149
6164
|
return this.link && isActiveCheckFn(this.link) || this.links.some(isActiveCheckFn);
|
|
6150
6165
|
}
|
|
6151
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6152
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0-next.
|
|
6166
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterLinkActive, deps: [{ token: Router }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: RouterLink, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6167
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0-next.3", type: RouterLinkActive, isStandalone: true, selector: "[routerLinkActive]", inputs: { routerLinkActiveOptions: "routerLinkActiveOptions", ariaCurrentWhenActive: "ariaCurrentWhenActive", routerLinkActive: "routerLinkActive" }, outputs: { isActiveChange: "isActiveChange" }, queries: [{ propertyName: "links", predicate: RouterLink, descendants: true }], exportAs: ["routerLinkActive"], usesOnChanges: true, ngImport: i0 }); }
|
|
6153
6168
|
}
|
|
6154
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterLinkActive, decorators: [{
|
|
6155
6170
|
type: Directive,
|
|
6156
6171
|
args: [{
|
|
6157
6172
|
selector: '[routerLinkActive]',
|
|
@@ -6203,10 +6218,10 @@ class PreloadAllModules {
|
|
|
6203
6218
|
preload(route, fn) {
|
|
6204
6219
|
return fn().pipe(catchError(() => of(null)));
|
|
6205
6220
|
}
|
|
6206
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6207
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6221
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: PreloadAllModules, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6222
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: PreloadAllModules, providedIn: 'root' }); }
|
|
6208
6223
|
}
|
|
6209
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6224
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: PreloadAllModules, decorators: [{
|
|
6210
6225
|
type: Injectable,
|
|
6211
6226
|
args: [{ providedIn: 'root' }]
|
|
6212
6227
|
}] });
|
|
@@ -6223,10 +6238,10 @@ class NoPreloading {
|
|
|
6223
6238
|
preload(route, fn) {
|
|
6224
6239
|
return of(null);
|
|
6225
6240
|
}
|
|
6226
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6227
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6241
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NoPreloading, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6242
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NoPreloading, providedIn: 'root' }); }
|
|
6228
6243
|
}
|
|
6229
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6244
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: NoPreloading, decorators: [{
|
|
6230
6245
|
type: Injectable,
|
|
6231
6246
|
args: [{ providedIn: 'root' }]
|
|
6232
6247
|
}] });
|
|
@@ -6319,10 +6334,10 @@ class RouterPreloader {
|
|
|
6319
6334
|
}
|
|
6320
6335
|
});
|
|
6321
6336
|
}
|
|
6322
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6323
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6337
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterPreloader, deps: [{ token: Router }, { token: i0.Compiler }, { token: i0.EnvironmentInjector }, { token: PreloadingStrategy }, { token: RouterConfigLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6338
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterPreloader, providedIn: 'root' }); }
|
|
6324
6339
|
}
|
|
6325
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6340
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterPreloader, decorators: [{
|
|
6326
6341
|
type: Injectable,
|
|
6327
6342
|
args: [{ providedIn: 'root' }]
|
|
6328
6343
|
}], ctorParameters: () => [{ type: Router }, { type: i0.Compiler }, { type: i0.EnvironmentInjector }, { type: PreloadingStrategy }, { type: RouterConfigLoader }] });
|
|
@@ -6415,10 +6430,10 @@ class RouterScroller {
|
|
|
6415
6430
|
this.routerEventsSubscription?.unsubscribe();
|
|
6416
6431
|
this.scrollEventsSubscription?.unsubscribe();
|
|
6417
6432
|
}
|
|
6418
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6419
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6433
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterScroller, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6434
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterScroller }); }
|
|
6420
6435
|
}
|
|
6421
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
6436
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterScroller, decorators: [{
|
|
6422
6437
|
type: Injectable
|
|
6423
6438
|
}], ctorParameters: () => [{ type: UrlSerializer }, { type: NavigationTransitions }, { type: i3.ViewportScroller }, { type: i0.NgZone }, { type: undefined }] });
|
|
6424
6439
|
|
|
@@ -6874,7 +6889,7 @@ function withNavigationErrorHandler(fn) {
|
|
|
6874
6889
|
const injector = inject(EnvironmentInjector);
|
|
6875
6890
|
inject(Router).events.subscribe((e) => {
|
|
6876
6891
|
if (e instanceof NavigationError) {
|
|
6877
|
-
injector
|
|
6892
|
+
runInInjectionContext(injector, () => fn(e));
|
|
6878
6893
|
}
|
|
6879
6894
|
});
|
|
6880
6895
|
}
|
|
@@ -7059,11 +7074,11 @@ class RouterModule {
|
|
|
7059
7074
|
providers: [{ provide: ROUTES, multi: true, useValue: routes }],
|
|
7060
7075
|
};
|
|
7061
7076
|
}
|
|
7062
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
7063
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0-next.
|
|
7064
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
7077
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterModule, deps: [{ token: ROUTER_FORROOT_GUARD, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7078
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterModule, imports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent], exports: [RouterOutlet, RouterLink, RouterLinkActive, ɵEmptyOutletComponent] }); }
|
|
7079
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterModule }); }
|
|
7065
7080
|
}
|
|
7066
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.
|
|
7081
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0-next.3", ngImport: i0, type: RouterModule, decorators: [{
|
|
7067
7082
|
type: NgModule,
|
|
7068
7083
|
args: [{
|
|
7069
7084
|
imports: ROUTER_DIRECTIVES,
|
|
@@ -7208,7 +7223,7 @@ function mapToResolve(provider) {
|
|
|
7208
7223
|
/**
|
|
7209
7224
|
* @publicApi
|
|
7210
7225
|
*/
|
|
7211
|
-
const VERSION = new Version('17.1.0-next.
|
|
7226
|
+
const VERSION = new Version('17.1.0-next.3');
|
|
7212
7227
|
|
|
7213
7228
|
/**
|
|
7214
7229
|
* @module
|