@ngxs/router-plugin 3.8.1-dev.master-5828e37 → 3.8.1-dev.master-98beeea
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/{esm2015/internals/symbols.js → esm2020/internals/symbols.mjs} +2 -2
- package/esm2020/src/public_api.mjs +5 -0
- package/esm2020/src/router.module.mjs +45 -0
- package/esm2020/src/router.state.mjs +225 -0
- package/esm2020/src/serializer.mjs +33 -0
- package/fesm2015/{ngxs-router-plugin-internals.js → ngxs-router-plugin-internals.mjs} +2 -2
- package/fesm2015/ngxs-router-plugin-internals.mjs.map +1 -0
- package/fesm2015/{ngxs-router-plugin.js → ngxs-router-plugin.mjs} +25 -12
- package/fesm2015/ngxs-router-plugin.mjs.map +1 -0
- package/fesm2020/ngxs-router-plugin-internals.mjs +17 -0
- package/fesm2020/ngxs-router-plugin-internals.mjs.map +1 -0
- package/fesm2020/ngxs-router-plugin.mjs +388 -0
- package/fesm2020/ngxs-router-plugin.mjs.map +1 -0
- package/package.json +30 -10
- package/src/public_api.d.ts +1 -1
- package/src/router.module.d.ts +2 -1
- package/bundles/ngxs-router-plugin-internals.umd.js +0 -27
- package/bundles/ngxs-router-plugin-internals.umd.js.map +0 -1
- package/bundles/ngxs-router-plugin.umd.js +0 -758
- package/bundles/ngxs-router-plugin.umd.js.map +0 -1
- package/esm2015/src/public_api.js +0 -5
- package/esm2015/src/router.module.js +0 -33
- package/esm2015/src/router.state.js +0 -222
- package/esm2015/src/serializer.js +0 -32
- package/fesm2015/ngxs-router-plugin-internals.js.map +0 -1
- package/fesm2015/ngxs-router-plugin.js.map +0 -1
- package/internals/ngxs-router-plugin-internals.d.ts +0 -5
- package/internals/package.json +0 -10
- package/ngxs-router-plugin.d.ts +0 -5
- /package/{esm2015/index.js → esm2020/index.mjs} +0 -0
- /package/{esm2015/internals/index.js → esm2020/internals/index.mjs} +0 -0
- /package/{esm2015/internals/ngxs-router-plugin-internals.js → esm2020/internals/ngxs-router-plugin-internals.mjs} +0 -0
- /package/{esm2015/ngxs-router-plugin.js → esm2020/ngxs-router-plugin.mjs} +0 -0
- /package/{esm2015/src/router.actions.js → esm2020/src/router.actions.mjs} +0 -0
|
@@ -4,7 +4,7 @@ export const ɵUSER_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'USER_OPTIONS' :
|
|
|
4
4
|
export const ɵNGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'NGXS_ROUTER_PLUGIN_OPTIONS' : '', { providedIn: 'root', factory: () => ({}) });
|
|
5
5
|
export function ɵcreateRouterPluginOptions(options) {
|
|
6
6
|
return {
|
|
7
|
-
navigationActionTiming: (options && options.navigationActionTiming) || 1 /* PreActivation */
|
|
7
|
+
navigationActionTiming: (options && options.navigationActionTiming) || 1 /* NavigationActionTiming.PreActivation */
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vaW50ZXJuYWxzL3NyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJL0MsTUFBTSxXQUFXLEdBQUcsT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsQ0FBQztBQVdsRSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQzdDLFdBQVcsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ2pDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQ2pELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsV0FBVyxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUMvQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FDNUMsQ0FBQztBQUVGLE1BQU0sVUFBVSwwQkFBMEIsQ0FDeEMsT0FBNEM7SUFFNUMsT0FBTztRQUNMLHNCQUFzQixFQUNwQixDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsc0JBQXNCLENBQUMsZ0RBQXdDO0tBQ3RGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZGVjbGFyZSBjb25zdCBuZ0Rldk1vZGU6IGJvb2xlYW47XG5cbmNvbnN0IE5HX0RFVl9NT0RFID0gdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlO1xuXG5leHBvcnQgY29uc3QgZW51bSBOYXZpZ2F0aW9uQWN0aW9uVGltaW5nIHtcbiAgUHJlQWN0aXZhdGlvbiA9IDEsXG4gIFBvc3RBY3RpdmF0aW9uID0gMlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5neHNSb3V0ZXJQbHVnaW5PcHRpb25zIHtcbiAgbmF2aWdhdGlvbkFjdGlvblRpbWluZz86IE5hdmlnYXRpb25BY3Rpb25UaW1pbmc7XG59XG5cbmV4cG9ydCBjb25zdCDJtVVTRVJfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyB8IHVuZGVmaW5lZD4oXG4gIE5HX0RFVl9NT0RFID8gJ1VTRVJfT1BUSU9OUycgOiAnJyxcbiAgeyBwcm92aWRlZEluOiAncm9vdCcsIGZhY3Rvcnk6ICgpID0+IHVuZGVmaW5lZCB9XG4pO1xuXG5leHBvcnQgY29uc3QgybVOR1hTX1JPVVRFUl9QTFVHSU5fT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucz4oXG4gIE5HX0RFVl9NT0RFID8gJ05HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TJyA6ICcnLFxuICB7IHByb3ZpZGVkSW46ICdyb290JywgZmFjdG9yeTogKCkgPT4gKHt9KSB9XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zKFxuICBvcHRpb25zOiBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyB8IHVuZGVmaW5lZFxuKTogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMge1xuICByZXR1cm4ge1xuICAgIG5hdmlnYXRpb25BY3Rpb25UaW1pbmc6XG4gICAgICAob3B0aW9ucyAmJiBvcHRpb25zLm5hdmlnYXRpb25BY3Rpb25UaW1pbmcpIHx8IE5hdmlnYXRpb25BY3Rpb25UaW1pbmcuUHJlQWN0aXZhdGlvblxuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { NgxsRouterPluginModule, withNgxsRouterPlugin } from './router.module';
|
|
2
|
+
export { RouterState } from './router.state';
|
|
3
|
+
export { RouterStateSerializer, DefaultRouterStateSerializer } from './serializer';
|
|
4
|
+
export * from './router.actions';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUU3QixNQUFNLGNBQWMsQ0FBQztBQUN0QixjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSwgd2l0aE5neHNSb3V0ZXJQbHVnaW4gfSBmcm9tICcuL3JvdXRlci5tb2R1bGUnO1xuZXhwb3J0IHsgUm91dGVyU3RhdGUsIFJvdXRlclN0YXRlTW9kZWwgfSBmcm9tICcuL3JvdXRlci5zdGF0ZSc7XG5leHBvcnQge1xuICBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsXG4gIERlZmF1bHRSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsXG4gIFNlcmlhbGl6ZWRSb3V0ZXJTdGF0ZVNuYXBzaG90XG59IGZyb20gJy4vc2VyaWFsaXplcic7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRlci5hY3Rpb25zJztcbmV4cG9ydCB7XG4gIE5hdmlnYXRpb25BY3Rpb25UaW1pbmcsXG4gIE5neHNSb3V0ZXJQbHVnaW5PcHRpb25zXG59IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4vaW50ZXJuYWxzJztcbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { NgModule, makeEnvironmentProviders } from '@angular/core';
|
|
2
|
+
import { NgxsModule, provideStates } from '@ngxs/store';
|
|
3
|
+
import { ɵcreateRouterPluginOptions, ɵNGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS } from '@ngxs/router-plugin/internals';
|
|
4
|
+
import { RouterState } from './router.state';
|
|
5
|
+
import { DefaultRouterStateSerializer, RouterStateSerializer } from './serializer';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@ngxs/store";
|
|
8
|
+
export class NgxsRouterPluginModule {
|
|
9
|
+
static forRoot(options) {
|
|
10
|
+
return {
|
|
11
|
+
ngModule: NgxsRouterPluginModule,
|
|
12
|
+
providers: [
|
|
13
|
+
{ provide: ɵUSER_OPTIONS, useValue: options },
|
|
14
|
+
{
|
|
15
|
+
provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,
|
|
16
|
+
useFactory: ɵcreateRouterPluginOptions,
|
|
17
|
+
deps: [ɵUSER_OPTIONS]
|
|
18
|
+
},
|
|
19
|
+
{ provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
|
|
20
|
+
]
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
25
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [i1.ɵNgxsFeatureModule] });
|
|
26
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [NgxsModule.forFeature([RouterState])] });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, decorators: [{
|
|
28
|
+
type: NgModule,
|
|
29
|
+
args: [{
|
|
30
|
+
imports: [NgxsModule.forFeature([RouterState])]
|
|
31
|
+
}]
|
|
32
|
+
}] });
|
|
33
|
+
export function withNgxsRouterPlugin(options) {
|
|
34
|
+
return makeEnvironmentProviders([
|
|
35
|
+
provideStates([RouterState]),
|
|
36
|
+
{ provide: ɵUSER_OPTIONS, useValue: options },
|
|
37
|
+
{
|
|
38
|
+
provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,
|
|
39
|
+
useFactory: ɵcreateRouterPluginOptions,
|
|
40
|
+
deps: [ɵUSER_OPTIONS]
|
|
41
|
+
},
|
|
42
|
+
{ provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
|
|
43
|
+
]);
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vc3JjL3JvdXRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFFBQVEsRUFDUix3QkFBd0IsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUVMLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsYUFBYSxFQUNkLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBS25GLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FDWixPQUFpQztRQUVqQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQzdDO29CQUNFLE9BQU8sRUFBRSwyQkFBMkI7b0JBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7b0JBQ3RDLElBQUksRUFBRSxDQUFDLGFBQWEsQ0FBQztpQkFDdEI7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO2FBQzNFO1NBQ0YsQ0FBQztJQUNKLENBQUM7O3NJQWhCVSxzQkFBc0I7dUlBQXRCLHNCQUFzQjt1SUFBdEIsc0JBQXNCLFlBRnZCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzsyRkFFbkMsc0JBQXNCO2tCQUhsQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2lCQUNoRDs7QUFvQkQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE9BQWlDO0lBQ3BFLE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsYUFBYSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7UUFDN0M7WUFDRSxPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7WUFDdEMsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1NBQ3RCO1FBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO0tBQzNFLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbnZpcm9ubWVudFByb3ZpZGVycyxcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG4gIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVyc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUsIHByb3ZpZGVTdGF0ZXMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQge1xuICBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyxcbiAgybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLFxuICDJtVVTRVJfT1BUSU9OU1xufSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luL2ludGVybmFscyc7XG5cbmltcG9ydCB7IFJvdXRlclN0YXRlIH0gZnJvbSAnLi9yb3V0ZXIuc3RhdGUnO1xuaW1wb3J0IHsgRGVmYXVsdFJvdXRlclN0YXRlU2VyaWFsaXplciwgUm91dGVyU3RhdGVTZXJpYWxpemVyIH0gZnJvbSAnLi9zZXJpYWxpemVyJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW05neHNNb2R1bGUuZm9yRmVhdHVyZShbUm91dGVyU3RhdGVdKV1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KFxuICAgIG9wdGlvbnM/OiBOZ3hzUm91dGVyUGx1Z2luT3B0aW9uc1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiDJtVVTRVJfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IMm1TkdYU19ST1VURVJfUExVR0lOX09QVElPTlMsXG4gICAgICAgICAgdXNlRmFjdG9yeTogybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICAgICAgICAgIGRlcHM6IFvJtVVTRVJfT1BUSU9OU11cbiAgICAgICAgfSxcbiAgICAgICAgeyBwcm92aWRlOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsIHVzZUNsYXNzOiBEZWZhdWx0Um91dGVyU3RhdGVTZXJpYWxpemVyIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoTmd4c1JvdXRlclBsdWdpbihvcHRpb25zPzogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW1xuICAgIHByb3ZpZGVTdGF0ZXMoW1JvdXRlclN0YXRlXSksXG4gICAgeyBwcm92aWRlOiDJtVVTRVJfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLFxuICAgICAgdXNlRmFjdG9yeTogybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICAgICAgZGVwczogW8m1VVNFUl9PUFRJT05TXVxuICAgIH0sXG4gICAgeyBwcm92aWRlOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsIHVzZUNsYXNzOiBEZWZhdWx0Um91dGVyU3RhdGVTZXJpYWxpemVyIH1cbiAgXSk7XG59XG4iXX0=
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
var RouterState_1;
|
|
2
|
+
import { __decorate, __metadata } from "tslib";
|
|
3
|
+
import { NgZone, Injectable, Injector } from '@angular/core';
|
|
4
|
+
import { NavigationCancel, NavigationError, Router, RoutesRecognized, ResolveEnd, NavigationStart, NavigationEnd } from '@angular/router';
|
|
5
|
+
import { Action, Selector, State, Store } from '@ngxs/store';
|
|
6
|
+
import { ɵNGXS_ROUTER_PLUGIN_OPTIONS } from '@ngxs/router-plugin/internals';
|
|
7
|
+
import { Subscription } from 'rxjs';
|
|
8
|
+
import { Navigate, RouterCancel, RouterError, RouterNavigation, RouterDataResolved, RouterRequest, RouterNavigated } from './router.actions';
|
|
9
|
+
import { RouterStateSerializer } from './serializer';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@ngxs/store";
|
|
12
|
+
import * as i2 from "@angular/router";
|
|
13
|
+
import * as i3 from "./serializer";
|
|
14
|
+
let RouterState = RouterState_1 = class RouterState {
|
|
15
|
+
constructor(_store, _router, _serializer, _ngZone, injector) {
|
|
16
|
+
this._store = _store;
|
|
17
|
+
this._router = _router;
|
|
18
|
+
this._serializer = _serializer;
|
|
19
|
+
this._ngZone = _ngZone;
|
|
20
|
+
/**
|
|
21
|
+
* Determines how navigation was performed by the `RouterState` itself
|
|
22
|
+
* or outside via `new Navigate(...)`
|
|
23
|
+
*/
|
|
24
|
+
this._trigger = 'none';
|
|
25
|
+
/**
|
|
26
|
+
* That's the serialized state from the `Router` class
|
|
27
|
+
*/
|
|
28
|
+
this._routerState = null;
|
|
29
|
+
/**
|
|
30
|
+
* That's the value of the `RouterState` state
|
|
31
|
+
*/
|
|
32
|
+
this._storeState = null;
|
|
33
|
+
this._lastEvent = null;
|
|
34
|
+
this._subscription = new Subscription();
|
|
35
|
+
this._options = null;
|
|
36
|
+
// Note: do not use `@Inject` since it fails on lower versions of Angular with Jest
|
|
37
|
+
// integration, it cannot resolve the token provider.
|
|
38
|
+
this._options = injector.get(ɵNGXS_ROUTER_PLUGIN_OPTIONS, null);
|
|
39
|
+
this._setUpStoreListener();
|
|
40
|
+
this._setUpRouterEventsListener();
|
|
41
|
+
}
|
|
42
|
+
static state(state) {
|
|
43
|
+
return state && state.state;
|
|
44
|
+
}
|
|
45
|
+
static url(state) {
|
|
46
|
+
return state && state.state && state.state.url;
|
|
47
|
+
}
|
|
48
|
+
ngOnDestroy() {
|
|
49
|
+
this._subscription.unsubscribe();
|
|
50
|
+
}
|
|
51
|
+
navigate(_, action) {
|
|
52
|
+
return this._ngZone.run(() => this._router.navigate(action.path, {
|
|
53
|
+
queryParams: action.queryParams,
|
|
54
|
+
...action.extras
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
angularRouterAction(ctx, action) {
|
|
58
|
+
ctx.setState({
|
|
59
|
+
trigger: action.trigger,
|
|
60
|
+
state: action.routerState,
|
|
61
|
+
navigationId: action.event.id
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
_setUpStoreListener() {
|
|
65
|
+
const subscription = this._store
|
|
66
|
+
.select(RouterState_1)
|
|
67
|
+
.subscribe((state) => {
|
|
68
|
+
this._navigateIfNeeded(state);
|
|
69
|
+
});
|
|
70
|
+
this._subscription.add(subscription);
|
|
71
|
+
}
|
|
72
|
+
_navigateIfNeeded(routerState) {
|
|
73
|
+
if (routerState && routerState.trigger === 'devtools') {
|
|
74
|
+
this._storeState = this._store.selectSnapshot(RouterState_1);
|
|
75
|
+
}
|
|
76
|
+
const canSkipNavigation = !this._storeState ||
|
|
77
|
+
!this._storeState.state ||
|
|
78
|
+
!routerState ||
|
|
79
|
+
routerState.trigger === 'router' ||
|
|
80
|
+
this._router.url === this._storeState.state.url ||
|
|
81
|
+
this._lastEvent instanceof NavigationStart;
|
|
82
|
+
if (canSkipNavigation) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
this._storeState = this._store.selectSnapshot(RouterState_1);
|
|
86
|
+
this._trigger = 'store';
|
|
87
|
+
this._ngZone.run(() => this._router.navigateByUrl(this._storeState.state.url));
|
|
88
|
+
}
|
|
89
|
+
_setUpRouterEventsListener() {
|
|
90
|
+
const dispatchRouterNavigationLate = this._options != null &&
|
|
91
|
+
this._options.navigationActionTiming === 2 /* NavigationActionTiming.PostActivation */;
|
|
92
|
+
let lastRoutesRecognized;
|
|
93
|
+
const subscription = this._router.events.subscribe(event => {
|
|
94
|
+
this._lastEvent = event;
|
|
95
|
+
if (event instanceof NavigationStart) {
|
|
96
|
+
this._navigationStart(event);
|
|
97
|
+
}
|
|
98
|
+
else if (event instanceof RoutesRecognized) {
|
|
99
|
+
lastRoutesRecognized = event;
|
|
100
|
+
if (!dispatchRouterNavigationLate && this._trigger !== 'store') {
|
|
101
|
+
this._dispatchRouterNavigation(lastRoutesRecognized);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else if (event instanceof ResolveEnd) {
|
|
105
|
+
this._dispatchRouterDataResolved(event);
|
|
106
|
+
}
|
|
107
|
+
else if (event instanceof NavigationCancel) {
|
|
108
|
+
this._dispatchRouterCancel(event);
|
|
109
|
+
this._reset();
|
|
110
|
+
}
|
|
111
|
+
else if (event instanceof NavigationError) {
|
|
112
|
+
this._dispatchRouterError(event);
|
|
113
|
+
this._reset();
|
|
114
|
+
}
|
|
115
|
+
else if (event instanceof NavigationEnd) {
|
|
116
|
+
if (this._trigger !== 'store') {
|
|
117
|
+
if (dispatchRouterNavigationLate) {
|
|
118
|
+
this._dispatchRouterNavigation(lastRoutesRecognized);
|
|
119
|
+
}
|
|
120
|
+
this._dispatchRouterNavigated(event);
|
|
121
|
+
}
|
|
122
|
+
this._reset();
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
this._subscription.add(subscription);
|
|
126
|
+
}
|
|
127
|
+
/** Reacts to `NavigationStart`. */
|
|
128
|
+
_navigationStart(event) {
|
|
129
|
+
this._routerState = this._serializer.serialize(this._router.routerState.snapshot);
|
|
130
|
+
if (this._trigger !== 'none') {
|
|
131
|
+
this._storeState = this._store.selectSnapshot(RouterState_1);
|
|
132
|
+
this._dispatchRouterAction(new RouterRequest(this._routerState, event, this._trigger));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/** Reacts to `ResolveEnd`. */
|
|
136
|
+
_dispatchRouterDataResolved(event) {
|
|
137
|
+
const routerState = this._serializer.serialize(event.state);
|
|
138
|
+
this._dispatchRouterAction(new RouterDataResolved(routerState, event, this._trigger));
|
|
139
|
+
}
|
|
140
|
+
/** Reacts to `RoutesRecognized` or `NavigationEnd`, depends on the `navigationActionTiming`. */
|
|
141
|
+
_dispatchRouterNavigation(lastRoutesRecognized) {
|
|
142
|
+
const nextRouterState = this._serializer.serialize(lastRoutesRecognized.state);
|
|
143
|
+
this._dispatchRouterAction(new RouterNavigation(nextRouterState, new RoutesRecognized(lastRoutesRecognized.id, lastRoutesRecognized.url, lastRoutesRecognized.urlAfterRedirects, nextRouterState), this._trigger));
|
|
144
|
+
}
|
|
145
|
+
/** Reacts to `NavigationCancel`. */
|
|
146
|
+
_dispatchRouterCancel(event) {
|
|
147
|
+
this._dispatchRouterAction(new RouterCancel(this._routerState, this._storeState, event, this._trigger));
|
|
148
|
+
}
|
|
149
|
+
/** Reacts to `NavigationEnd`. */
|
|
150
|
+
_dispatchRouterError(event) {
|
|
151
|
+
this._dispatchRouterAction(new RouterError(this._routerState, this._storeState, new NavigationError(event.id, event.url, `${event}`), this._trigger));
|
|
152
|
+
}
|
|
153
|
+
/** Reacts to `NavigationEnd`. */
|
|
154
|
+
_dispatchRouterNavigated(event) {
|
|
155
|
+
const routerState = this._serializer.serialize(this._router.routerState.snapshot);
|
|
156
|
+
this._dispatchRouterAction(new RouterNavigated(routerState, event, this._trigger));
|
|
157
|
+
}
|
|
158
|
+
_dispatchRouterAction(action) {
|
|
159
|
+
this._trigger = 'router';
|
|
160
|
+
try {
|
|
161
|
+
this._store.dispatch(action);
|
|
162
|
+
}
|
|
163
|
+
finally {
|
|
164
|
+
this._trigger = 'none';
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
_reset() {
|
|
168
|
+
this._trigger = 'none';
|
|
169
|
+
this._storeState = null;
|
|
170
|
+
this._routerState = null;
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
/** @nocollapse */ RouterState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i3.RouterStateSerializer }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
174
|
+
/** @nocollapse */ RouterState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState });
|
|
175
|
+
__decorate([
|
|
176
|
+
Action(Navigate),
|
|
177
|
+
__metadata("design:type", Function),
|
|
178
|
+
__metadata("design:paramtypes", [Object, Navigate]),
|
|
179
|
+
__metadata("design:returntype", void 0)
|
|
180
|
+
], RouterState.prototype, "navigate", null);
|
|
181
|
+
__decorate([
|
|
182
|
+
Action([
|
|
183
|
+
RouterRequest,
|
|
184
|
+
RouterNavigation,
|
|
185
|
+
RouterError,
|
|
186
|
+
RouterCancel,
|
|
187
|
+
RouterDataResolved,
|
|
188
|
+
RouterNavigated
|
|
189
|
+
]),
|
|
190
|
+
__metadata("design:type", Function),
|
|
191
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
192
|
+
__metadata("design:returntype", void 0)
|
|
193
|
+
], RouterState.prototype, "angularRouterAction", null);
|
|
194
|
+
__decorate([
|
|
195
|
+
Selector(),
|
|
196
|
+
__metadata("design:type", Function),
|
|
197
|
+
__metadata("design:paramtypes", [Object]),
|
|
198
|
+
__metadata("design:returntype", void 0)
|
|
199
|
+
], RouterState, "state", null);
|
|
200
|
+
__decorate([
|
|
201
|
+
Selector(),
|
|
202
|
+
__metadata("design:type", Function),
|
|
203
|
+
__metadata("design:paramtypes", [Object]),
|
|
204
|
+
__metadata("design:returntype", Object)
|
|
205
|
+
], RouterState, "url", null);
|
|
206
|
+
RouterState = RouterState_1 = __decorate([
|
|
207
|
+
State({
|
|
208
|
+
name: 'router',
|
|
209
|
+
defaults: {
|
|
210
|
+
state: undefined,
|
|
211
|
+
navigationId: undefined,
|
|
212
|
+
trigger: 'none'
|
|
213
|
+
}
|
|
214
|
+
}),
|
|
215
|
+
__metadata("design:paramtypes", [Store,
|
|
216
|
+
Router,
|
|
217
|
+
RouterStateSerializer,
|
|
218
|
+
NgZone,
|
|
219
|
+
Injector])
|
|
220
|
+
], RouterState);
|
|
221
|
+
export { RouterState };
|
|
222
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState, decorators: [{
|
|
223
|
+
type: Injectable
|
|
224
|
+
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Router }, { type: i3.RouterStateSerializer }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { navigate: [], angularRouterAction: [] } });
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvcm91dGVyLXBsdWdpbi9zcmMvcm91dGVyLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLE1BQU0sRUFFTixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLGVBQWUsRUFDZixhQUFhLEVBRWQsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWdCLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRSxPQUFPLEVBR0wsMkJBQTJCLEVBQzVCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQ0wsUUFBUSxFQUVSLFlBQVksRUFDWixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsZUFBZSxFQUNoQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUF3QjlDLElBQU0sV0FBVyxtQkFBakIsTUFBTSxXQUFXO0lBaUN0QixZQUNVLE1BQWEsRUFDYixPQUFlLEVBQ2YsV0FBdUQsRUFDdkQsT0FBZSxFQUN2QixRQUFrQjtRQUpWLFdBQU0sR0FBTixNQUFNLENBQU87UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQTRDO1FBQ3ZELFlBQU8sR0FBUCxPQUFPLENBQVE7UUFwQ3pCOzs7V0FHRztRQUNLLGFBQVEsR0FBa0IsTUFBTSxDQUFDO1FBRXpDOztXQUVHO1FBQ0ssaUJBQVksR0FBK0Is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QVEsTUFpQlIsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdab25lLCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBOYXZpZ2F0aW9uQ2FuY2VsLFxuICBOYXZpZ2F0aW9uRXJyb3IsXG4gIFJvdXRlcixcbiAgUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgUm91dGVzUmVjb2duaXplZCxcbiAgUmVzb2x2ZUVuZCxcbiAgTmF2aWdhdGlvblN0YXJ0LFxuICBOYXZpZ2F0aW9uRW5kLFxuICBFdmVudFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQWN0aW9uLCBTZWxlY3RvciwgU3RhdGUsIFN0YXRlQ29udGV4dCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQge1xuICBOYXZpZ2F0aW9uQWN0aW9uVGltaW5nLFxuICBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyxcbiAgybVOR1hTX1JPVVRFUl9QTFVHSU5fT1BUSU9OU1xufSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luL2ludGVybmFscyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgTmF2aWdhdGUsXG4gIFJvdXRlckFjdGlvbixcbiAgUm91dGVyQ2FuY2VsLFxuICBSb3V0ZXJFcnJvcixcbiAgUm91dGVyTmF2aWdhdGlvbixcbiAgUm91dGVyRGF0YVJlc29sdmVkLFxuICBSb3V0ZXJSZXF1ZXN0LFxuICBSb3V0ZXJOYXZpZ2F0ZWRcbn0gZnJvbSAnLi9yb3V0ZXIuYWN0aW9ucyc7XG5pbXBvcnQgeyBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIgfSBmcm9tICcuL3NlcmlhbGl6ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlclN0YXRlTW9kZWw8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGU/OiBUO1xuICBuYXZpZ2F0aW9uSWQ/OiBudW1iZXI7XG4gIHRyaWdnZXI6IFJvdXRlclRyaWdnZXI7XG59XG5cbmV4cG9ydCB0eXBlIFJvdXRlclRyaWdnZXIgPVxuICB8ICdub25lJ1xuICB8ICdyb3V0ZXInXG4gIHwgJ3N0b3JlJ1xuICAvLyBUaGUgYGRldnRvb2xzYCB0cmlnZ2VyIG1lYW5zIHRoYXQgdGhlIHN0YXRlIGNoYW5nZSBoYXMgYmVlbiB0cmlnZ2VyZWQgYnkgUmVkdXggRGV2VG9vbHMgKGUuZy4gd2hlbiB0aGUgdGltZS10cmF2ZWxpbmcgaXMgdXNlZCkuXG4gIHwgJ2RldnRvb2xzJztcblxuQFN0YXRlPFJvdXRlclN0YXRlTW9kZWw+KHtcbiAgbmFtZTogJ3JvdXRlcicsXG4gIGRlZmF1bHRzOiB7XG4gICAgc3RhdGU6IHVuZGVmaW5lZCxcbiAgICBuYXZpZ2F0aW9uSWQ6IHVuZGVmaW5lZCxcbiAgICB0cmlnZ2VyOiAnbm9uZSdcbiAgfVxufSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSb3V0ZXJTdGF0ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyBuYXZpZ2F0aW9uIHdhcyBwZXJmb3JtZWQgYnkgdGhlIGBSb3V0ZXJTdGF0ZWAgaXRzZWxmXG4gICAqIG9yIG91dHNpZGUgdmlhIGBuZXcgTmF2aWdhdGUoLi4uKWBcbiAgICovXG4gIHByaXZhdGUgX3RyaWdnZXI6IFJvdXRlclRyaWdnZXIgPSAnbm9uZSc7XG5cbiAgLyoqXG4gICAqIFRoYXQncyB0aGUgc2VyaWFsaXplZCBzdGF0ZSBmcm9tIHRoZSBgUm91dGVyYCBjbGFzc1xuICAgKi9cbiAgcHJpdmF0ZSBfcm91dGVyU3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhhdCdzIHRoZSB2YWx1ZSBvZiB0aGUgYFJvdXRlclN0YXRlYCBzdGF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfc3RvcmVTdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2xhc3RFdmVudDogRXZlbnQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9zdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHJpdmF0ZSBfb3B0aW9uczogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMgfCBudWxsID0gbnVsbDtcblxuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgc3RhdGU8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+KHN0YXRlOiBSb3V0ZXJTdGF0ZU1vZGVsPFQ+KSB7XG4gICAgcmV0dXJuIHN0YXRlICYmIHN0YXRlLnN0YXRlO1xuICB9XG5cbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIHVybChzdGF0ZTogUm91dGVyU3RhdGVNb2RlbCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHN0YXRlICYmIHN0YXRlLnN0YXRlICYmIHN0YXRlLnN0YXRlLnVybDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3N0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIF9zZXJpYWxpemVyOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXI8Um91dGVyU3RhdGVTbmFwc2hvdD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgaW5qZWN0b3I6IEluamVjdG9yXG4gICkge1xuICAgIC8vIE5vdGU6IGRvIG5vdCB1c2UgYEBJbmplY3RgIHNpbmNlIGl0IGZhaWxzIG9uIGxvd2VyIHZlcnNpb25zIG9mIEFuZ3VsYXIgd2l0aCBKZXN0XG4gICAgLy8gaW50ZWdyYXRpb24sIGl0IGNhbm5vdCByZXNvbHZlIHRoZSB0b2tlbiBwcm92aWRlci5cbiAgICB0aGlzLl9vcHRpb25zID0gaW5qZWN0b3IuZ2V0KMm1TkdYU19ST1VURVJfUExVR0lOX09QVElPTlMsIG51bGwpO1xuICAgIHRoaXMuX3NldFVwU3RvcmVMaXN0ZW5lcigpO1xuICAgIHRoaXMuX3NldFVwUm91dGVyRXZlbnRzTGlzdGVuZXIoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgQEFjdGlvbihOYXZpZ2F0ZSlcbiAgbmF2aWdhdGUoXzogU3RhdGVDb250ZXh0PFJvdXRlclN0YXRlTW9kZWw+LCBhY3Rpb246IE5hdmlnYXRlKSB7XG4gICAgcmV0dXJuIHRoaXMuX25nWm9uZS5ydW4oKCkgPT5cbiAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShhY3Rpb24ucGF0aCwge1xuICAgICAgICBxdWVyeVBhcmFtczogYWN0aW9uLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAuLi5hY3Rpb24uZXh0cmFzXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBAQWN0aW9uKFtcbiAgICBSb3V0ZXJSZXF1ZXN0LFxuICAgIFJvdXRlck5hdmlnYXRpb24sXG4gICAgUm91dGVyRXJyb3IsXG4gICAgUm91dGVyQ2FuY2VsLFxuICAgIFJvdXRlckRhdGFSZXNvbHZlZCxcbiAgICBSb3V0ZXJOYXZpZ2F0ZWRcbiAgXSlcbiAgYW5ndWxhclJvdXRlckFjdGlvbihcbiAgICBjdHg6IFN0YXRlQ29udGV4dDxSb3V0ZXJTdGF0ZU1vZGVsPixcbiAgICBhY3Rpb246IFJvdXRlckFjdGlvbjxSb3V0ZXJTdGF0ZU1vZGVsLCBSb3V0ZXJTdGF0ZVNuYXBzaG90PlxuICApOiB2b2lkIHtcbiAgICBjdHguc2V0U3RhdGUoe1xuICAgICAgdHJpZ2dlcjogYWN0aW9uLnRyaWdnZXIsXG4gICAgICBzdGF0ZTogYWN0aW9uLnJvdXRlclN0YXRlLFxuICAgICAgbmF2aWdhdGlvbklkOiBhY3Rpb24uZXZlbnQuaWRcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldFVwU3RvcmVMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICBjb25zdCBzdWJzY3JpcHRpb24gPSB0aGlzLl9zdG9yZVxuICAgICAgLnNlbGVjdChSb3V0ZXJTdGF0ZSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlOiBSb3V0ZXJTdGF0ZU1vZGVsIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIHRoaXMuX25hdmlnYXRlSWZOZWVkZWQoc3RhdGUpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9zdWJzY3JpcHRpb24uYWRkKHN1YnNjcmlwdGlvbik7XG4gIH1cblxuICBwcml2YXRlIF9uYXZpZ2F0ZUlmTmVlZGVkKHJvdXRlclN0YXRlOiBSb3V0ZXJTdGF0ZU1vZGVsIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKHJvdXRlclN0YXRlICYmIHJvdXRlclN0YXRlLnRyaWdnZXIgPT09ICdkZXZ0b29scycpIHtcbiAgICAgIHRoaXMuX3N0b3JlU3RhdGUgPSB0aGlzLl9zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2FuU2tpcE5hdmlnYXRpb24gPVxuICAgICAgIXRoaXMuX3N0b3JlU3RhdGUgfHxcbiAgICAgICF0aGlzLl9zdG9yZVN0YXRlLnN0YXRlIHx8XG4gICAgICAhcm91dGVyU3RhdGUgfHxcbiAgICAgIHJvdXRlclN0YXRlLnRyaWdnZXIgPT09ICdyb3V0ZXInIHx8XG4gICAgICB0aGlzLl9yb3V0ZXIudXJsID09PSB0aGlzLl9zdG9yZVN0YXRlLnN0YXRlLnVybCB8fFxuICAgICAgdGhpcy5fbGFzdEV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0O1xuXG4gICAgaWYgKGNhblNraXBOYXZpZ2F0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RvcmVTdGF0ZSA9IHRoaXMuX3N0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKTtcbiAgICB0aGlzLl90cmlnZ2VyID0gJ3N0b3JlJztcbiAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMuX3N0b3JlU3RhdGUhLnN0YXRlIS51cmwpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldFVwUm91dGVyRXZlbnRzTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgY29uc3QgZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uTGF0ZSA9XG4gICAgICB0aGlzLl9vcHRpb25zICE9IG51bGwgJiZcbiAgICAgIHRoaXMuX29wdGlvbnMubmF2aWdhdGlvbkFjdGlvblRpbWluZyA9PT0gTmF2aWdhdGlvbkFjdGlvblRpbWluZy5Qb3N0QWN0aXZhdGlvbjtcblxuICAgIGxldCBsYXN0Um91dGVzUmVjb2duaXplZDogUm91dGVzUmVjb2duaXplZDtcblxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuX3JvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIHRoaXMuX2xhc3RFdmVudCA9IGV2ZW50O1xuXG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvblN0YXJ0KGV2ZW50KTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZXNSZWNvZ25pemVkKSB7XG4gICAgICAgIGxhc3RSb3V0ZXNSZWNvZ25pemVkID0gZXZlbnQ7XG4gICAgICAgIGlmICghZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uTGF0ZSAmJiB0aGlzLl90cmlnZ2VyICE9PSAnc3RvcmUnKSB7XG4gICAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uKGxhc3RSb3V0ZXNSZWNvZ25pemVkKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIFJlc29sdmVFbmQpIHtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJEYXRhUmVzb2x2ZWQoZXZlbnQpO1xuICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25DYW5jZWwpIHtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJDYW5jZWwoZXZlbnQpO1xuICAgICAgICB0aGlzLl9yZXNldCgpO1xuICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FcnJvcikge1xuICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckVycm9yKGV2ZW50KTtcbiAgICAgICAgdGhpcy5fcmVzZXQoKTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgIGlmICh0aGlzLl90cmlnZ2VyICE9PSAnc3RvcmUnKSB7XG4gICAgICAgICAgaWYgKGRpc3BhdGNoUm91dGVyTmF2aWdhdGlvbkxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyTmF2aWdhdGlvbihsYXN0Um91dGVzUmVjb2duaXplZCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyTmF2aWdhdGVkKGV2ZW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9yZXNldCgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChzdWJzY3JpcHRpb24pO1xuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgTmF2aWdhdGlvblN0YXJ0YC4gKi9cbiAgcHJpdmF0ZSBfbmF2aWdhdGlvblN0YXJ0KGV2ZW50OiBOYXZpZ2F0aW9uU3RhcnQpOiB2b2lkIHtcbiAgICB0aGlzLl9yb3V0ZXJTdGF0ZSA9IHRoaXMuX3NlcmlhbGl6ZXIuc2VyaWFsaXplKHRoaXMuX3JvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdCk7XG5cbiAgICBpZiAodGhpcy5fdHJpZ2dlciAhPT0gJ25vbmUnKSB7XG4gICAgICB0aGlzLl9zdG9yZVN0YXRlID0gdGhpcy5fc3RvcmUuc2VsZWN0U25hcHNob3QoUm91dGVyU3RhdGUpO1xuICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24obmV3IFJvdXRlclJlcXVlc3QodGhpcy5fcm91dGVyU3RhdGUsIGV2ZW50LCB0aGlzLl90cmlnZ2VyKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgUmVzb2x2ZUVuZGAuICovXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyRGF0YVJlc29sdmVkKGV2ZW50OiBSZXNvbHZlRW5kKTogdm9pZCB7XG4gICAgY29uc3Qgcm91dGVyU3RhdGUgPSB0aGlzLl9zZXJpYWxpemVyLnNlcmlhbGl6ZShldmVudC5zdGF0ZSk7XG4gICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24obmV3IFJvdXRlckRhdGFSZXNvbHZlZChyb3V0ZXJTdGF0ZSwgZXZlbnQsIHRoaXMuX3RyaWdnZXIpKTtcbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYFJvdXRlc1JlY29nbml6ZWRgIG9yIGBOYXZpZ2F0aW9uRW5kYCwgZGVwZW5kcyBvbiB0aGUgYG5hdmlnYXRpb25BY3Rpb25UaW1pbmdgLiAqL1xuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlck5hdmlnYXRpb24obGFzdFJvdXRlc1JlY29nbml6ZWQ6IFJvdXRlc1JlY29nbml6ZWQpOiB2b2lkIHtcbiAgICBjb25zdCBuZXh0Um91dGVyU3RhdGUgPSB0aGlzLl9zZXJpYWxpemVyLnNlcmlhbGl6ZShsYXN0Um91dGVzUmVjb2duaXplZC5zdGF0ZSk7XG5cbiAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihcbiAgICAgIG5ldyBSb3V0ZXJOYXZpZ2F0aW9uKFxuICAgICAgICBuZXh0Um91dGVyU3RhdGUsXG4gICAgICAgIG5ldyBSb3V0ZXNSZWNvZ25pemVkKFxuICAgICAgICAgIGxhc3RSb3V0ZXNSZWNvZ25pemVkLmlkLFxuICAgICAgICAgIGxhc3RSb3V0ZXNSZWNvZ25pemVkLnVybCxcbiAgICAgICAgICBsYXN0Um91dGVzUmVjb2duaXplZC51cmxBZnRlclJlZGlyZWN0cyxcbiAgICAgICAgICBuZXh0Um91dGVyU3RhdGVcbiAgICAgICAgKSxcbiAgICAgICAgdGhpcy5fdHJpZ2dlclxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBOYXZpZ2F0aW9uQ2FuY2VsYC4gKi9cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJDYW5jZWwoZXZlbnQ6IE5hdmlnYXRpb25DYW5jZWwpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihcbiAgICAgIG5ldyBSb3V0ZXJDYW5jZWwodGhpcy5fcm91dGVyU3RhdGUhLCB0aGlzLl9zdG9yZVN0YXRlLCBldmVudCwgdGhpcy5fdHJpZ2dlcilcbiAgICApO1xuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgTmF2aWdhdGlvbkVuZGAuICovXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyRXJyb3IoZXZlbnQ6IE5hdmlnYXRpb25FcnJvcik6IHZvaWQge1xuICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKFxuICAgICAgbmV3IFJvdXRlckVycm9yKFxuICAgICAgICB0aGlzLl9yb3V0ZXJTdGF0ZSEsXG4gICAgICAgIHRoaXMuX3N0b3JlU3RhdGUsXG4gICAgICAgIG5ldyBOYXZpZ2F0aW9uRXJyb3IoZXZlbnQuaWQsIGV2ZW50LnVybCwgYCR7ZXZlbnR9YCksXG4gICAgICAgIHRoaXMuX3RyaWdnZXJcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgTmF2aWdhdGlvbkVuZGAuICovXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyTmF2aWdhdGVkKGV2ZW50OiBOYXZpZ2F0aW9uRW5kKTogdm9pZCB7XG4gICAgY29uc3Qgcm91dGVyU3RhdGUgPSB0aGlzLl9zZXJpYWxpemVyLnNlcmlhbGl6ZSh0aGlzLl9yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QpO1xuICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKG5ldyBSb3V0ZXJOYXZpZ2F0ZWQocm91dGVyU3RhdGUsIGV2ZW50LCB0aGlzLl90cmlnZ2VyKSk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlckFjdGlvbjxUPihhY3Rpb246IFJvdXRlckFjdGlvbjxUPik6IHZvaWQge1xuICAgIHRoaXMuX3RyaWdnZXIgPSAncm91dGVyJztcblxuICAgIHRyeSB7XG4gICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChhY3Rpb24pO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLl90cmlnZ2VyID0gJ25vbmUnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuX3RyaWdnZXIgPSAnbm9uZSc7XG4gICAgdGhpcy5fc3RvcmVTdGF0ZSA9IG51bGw7XG4gICAgdGhpcy5fcm91dGVyU3RhdGUgPSBudWxsO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export class RouterStateSerializer {
|
|
2
|
+
}
|
|
3
|
+
export class DefaultRouterStateSerializer {
|
|
4
|
+
serialize(routerState) {
|
|
5
|
+
return {
|
|
6
|
+
root: this.serializeRoute(routerState.root),
|
|
7
|
+
url: routerState.url
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
serializeRoute(route) {
|
|
11
|
+
const children = route.children.map(c => this.serializeRoute(c));
|
|
12
|
+
return {
|
|
13
|
+
url: route.url,
|
|
14
|
+
title: route.title,
|
|
15
|
+
params: route.params,
|
|
16
|
+
queryParams: route.queryParams,
|
|
17
|
+
fragment: route.fragment,
|
|
18
|
+
data: route.data,
|
|
19
|
+
outlet: route.outlet,
|
|
20
|
+
component: null,
|
|
21
|
+
routeConfig: null,
|
|
22
|
+
root: null,
|
|
23
|
+
parent: null,
|
|
24
|
+
firstChild: children[0],
|
|
25
|
+
children: children,
|
|
26
|
+
pathFromRoot: null,
|
|
27
|
+
paramMap: route.paramMap,
|
|
28
|
+
queryParamMap: route.queryParamMap,
|
|
29
|
+
toString: route.toString
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vc3JjL3NlcmlhbGl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixxQkFBcUI7Q0FFMUM7QUFPRCxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLFNBQVMsQ0FBQyxXQUFnQztRQUN4QyxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztZQUMzQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEdBQUc7U0FDckIsQ0FBQztJQUNKLENBQUM7SUFFTyxjQUFjLENBQUMsS0FBNkI7UUFDbEQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakUsT0FBTztZQUNMLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztZQUNsQixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUztZQUN6QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLElBQUk7WUFDakIsSUFBSSxFQUFFLElBQVc7WUFDakIsTUFBTSxFQUFFLElBQUk7WUFDWixVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN2QixRQUFRLEVBQUUsUUFBUTtZQUNsQixZQUFZLEVBQUUsSUFBVztZQUN6QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhO1lBQ2xDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtTQUN6QixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXI8VD4ge1xuICBhYnN0cmFjdCBzZXJpYWxpemUocm91dGVyU3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcmlhbGl6ZWRSb3V0ZXJTdGF0ZVNuYXBzaG90IHtcbiAgcm9vdDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdDtcbiAgdXJsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0Um91dGVyU3RhdGVTZXJpYWxpemVyXG4gIGltcGxlbWVudHMgUm91dGVyU3RhdGVTZXJpYWxpemVyPFNlcmlhbGl6ZWRSb3V0ZXJTdGF0ZVNuYXBzaG90Plxue1xuICBzZXJpYWxpemUocm91dGVyU3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBTZXJpYWxpemVkUm91dGVyU3RhdGVTbmFwc2hvdCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJvb3Q6IHRoaXMuc2VyaWFsaXplUm91dGUocm91dGVyU3RhdGUucm9vdCksXG4gICAgICB1cmw6IHJvdXRlclN0YXRlLnVybFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHNlcmlhbGl6ZVJvdXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSByb3V0ZS5jaGlsZHJlbi5tYXAoYyA9PiB0aGlzLnNlcmlhbGl6ZVJvdXRlKGMpKTtcbiAgICByZXR1cm4ge1xuICAgICAgdXJsOiByb3V0ZS51cmwsXG4gICAgICB0aXRsZTogcm91dGUudGl0bGUsXG4gICAgICBwYXJhbXM6IHJvdXRlLnBhcmFtcyxcbiAgICAgIHF1ZXJ5UGFyYW1zOiByb3V0ZS5xdWVyeVBhcmFtcyxcbiAgICAgIGZyYWdtZW50OiByb3V0ZS5mcmFnbWVudCEsXG4gICAgICBkYXRhOiByb3V0ZS5kYXRhLFxuICAgICAgb3V0bGV0OiByb3V0ZS5vdXRsZXQsXG4gICAgICBjb21wb25lbnQ6IG51bGwsXG4gICAgICByb3V0ZUNvbmZpZzogbnVsbCxcbiAgICAgIHJvb3Q6IG51bGwgYXMgYW55LFxuICAgICAgcGFyZW50OiBudWxsLFxuICAgICAgZmlyc3RDaGlsZDogY2hpbGRyZW5bMF0sXG4gICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXG4gICAgICBwYXRoRnJvbVJvb3Q6IG51bGwgYXMgYW55LFxuICAgICAgcGFyYW1NYXA6IHJvdXRlLnBhcmFtTWFwLFxuICAgICAgcXVlcnlQYXJhbU1hcDogcm91dGUucXVlcnlQYXJhbU1hcCxcbiAgICAgIHRvU3RyaW5nOiByb3V0ZS50b1N0cmluZ1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,7 +5,7 @@ const ɵUSER_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'USER_OPTIONS' : '', { p
|
|
|
5
5
|
const ɵNGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'NGXS_ROUTER_PLUGIN_OPTIONS' : '', { providedIn: 'root', factory: () => ({}) });
|
|
6
6
|
function ɵcreateRouterPluginOptions(options) {
|
|
7
7
|
return {
|
|
8
|
-
navigationActionTiming: (options && options.navigationActionTiming) || 1 /* PreActivation */
|
|
8
|
+
navigationActionTiming: (options && options.navigationActionTiming) || 1 /* NavigationActionTiming.PreActivation */
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
11
|
|
|
@@ -14,4 +14,4 @@ function ɵcreateRouterPluginOptions(options) {
|
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
export { ɵNGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS, ɵcreateRouterPluginOptions };
|
|
17
|
-
//# sourceMappingURL=ngxs-router-plugin-internals.
|
|
17
|
+
//# sourceMappingURL=ngxs-router-plugin-internals.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngxs-router-plugin-internals.mjs","sources":["../../../packages/router-plugin/internals/src/symbols.ts","../../../packages/router-plugin/internals/src/ngxs-router-plugin-internals.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\ndeclare const ngDevMode: boolean;\n\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;\n\nexport const enum NavigationActionTiming {\n PreActivation = 1,\n PostActivation = 2\n}\n\nexport interface NgxsRouterPluginOptions {\n navigationActionTiming?: NavigationActionTiming;\n}\n\nexport const ɵUSER_OPTIONS = new InjectionToken<NgxsRouterPluginOptions | undefined>(\n NG_DEV_MODE ? 'USER_OPTIONS' : '',\n { providedIn: 'root', factory: () => undefined }\n);\n\nexport const ɵNGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken<NgxsRouterPluginOptions>(\n NG_DEV_MODE ? 'NGXS_ROUTER_PLUGIN_OPTIONS' : '',\n { providedIn: 'root', factory: () => ({}) }\n);\n\nexport function ɵcreateRouterPluginOptions(\n options: NgxsRouterPluginOptions | undefined\n): NgxsRouterPluginOptions {\n return {\n navigationActionTiming:\n (options && options.navigationActionTiming) || NavigationActionTiming.PreActivation\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAIA,MAAM,WAAW,GAAG,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC;AAW3D,MAAM,aAAa,GAAG,IAAI,cAAc,CAC7C,WAAW,GAAG,cAAc,GAAG,EAAE,EACjC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,EAAE,EAChD;AAEK,MAAM,2BAA2B,GAAG,IAAI,cAAc,CAC3D,WAAW,GAAG,4BAA4B,GAAG,EAAE,EAC/C,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,EAC3C;AAEI,SAAU,0BAA0B,CACxC,OAA4C,EAAA;IAE5C,OAAO;QACL,sBAAsB,EACpB,CAAC,OAAO,IAAI,OAAO,CAAC,sBAAsB,KAAyC,CAAA;KACtF,CAAC;AACJ;;AChCA;;AAEG;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { NgZone, Injector, Injectable, NgModule } from '@angular/core';
|
|
2
|
+
import { NgZone, Injector, Injectable, NgModule, makeEnvironmentProviders } from '@angular/core';
|
|
3
3
|
import * as i1 from '@ngxs/store';
|
|
4
|
-
import { Action, Selector, State, Store, NgxsModule } from '@ngxs/store';
|
|
4
|
+
import { Action, Selector, State, Store, NgxsModule, provideStates } from '@ngxs/store';
|
|
5
5
|
import { ɵNGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS, ɵcreateRouterPluginOptions } from '@ngxs/router-plugin/internals';
|
|
6
6
|
import { __decorate, __metadata } from 'tslib';
|
|
7
7
|
import * as i2 from '@angular/router';
|
|
@@ -106,6 +106,7 @@ class DefaultRouterStateSerializer {
|
|
|
106
106
|
const children = route.children.map(c => this.serializeRoute(c));
|
|
107
107
|
return {
|
|
108
108
|
url: route.url,
|
|
109
|
+
title: route.title,
|
|
109
110
|
params: route.params,
|
|
110
111
|
queryParams: route.queryParams,
|
|
111
112
|
fragment: route.fragment,
|
|
@@ -200,7 +201,7 @@ let RouterState = RouterState_1 = class RouterState {
|
|
|
200
201
|
}
|
|
201
202
|
_setUpRouterEventsListener() {
|
|
202
203
|
const dispatchRouterNavigationLate = this._options != null &&
|
|
203
|
-
this._options.navigationActionTiming === 2 /* PostActivation */;
|
|
204
|
+
this._options.navigationActionTiming === 2 /* NavigationActionTiming.PostActivation */;
|
|
204
205
|
let lastRoutesRecognized;
|
|
205
206
|
const subscription = this._router.events.subscribe(event => {
|
|
206
207
|
this._lastEvent = event;
|
|
@@ -282,8 +283,8 @@ let RouterState = RouterState_1 = class RouterState {
|
|
|
282
283
|
this._routerState = null;
|
|
283
284
|
}
|
|
284
285
|
};
|
|
285
|
-
/** @nocollapse */ RouterState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
286
|
-
/** @nocollapse */ RouterState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
286
|
+
/** @nocollapse */ RouterState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState, deps: [{ token: i1.Store }, { token: i2.Router }, { token: RouterStateSerializer }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
287
|
+
/** @nocollapse */ RouterState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState });
|
|
287
288
|
__decorate([
|
|
288
289
|
Action(Navigate),
|
|
289
290
|
__metadata("design:type", Function),
|
|
@@ -330,7 +331,7 @@ RouterState = RouterState_1 = __decorate([
|
|
|
330
331
|
NgZone,
|
|
331
332
|
Injector])
|
|
332
333
|
], RouterState);
|
|
333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState, decorators: [{
|
|
334
335
|
type: Injectable
|
|
335
336
|
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Router }, { type: RouterStateSerializer }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { navigate: [], angularRouterAction: [] } });
|
|
336
337
|
|
|
@@ -350,15 +351,27 @@ class NgxsRouterPluginModule {
|
|
|
350
351
|
};
|
|
351
352
|
}
|
|
352
353
|
}
|
|
353
|
-
/** @nocollapse */ NgxsRouterPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
354
|
-
/** @nocollapse */ NgxsRouterPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
|
|
355
|
-
/** @nocollapse */ NgxsRouterPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
356
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
354
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
355
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [i1.ɵNgxsFeatureModule] });
|
|
356
|
+
/** @nocollapse */ NgxsRouterPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [NgxsModule.forFeature([RouterState])] });
|
|
357
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, decorators: [{
|
|
357
358
|
type: NgModule,
|
|
358
359
|
args: [{
|
|
359
360
|
imports: [NgxsModule.forFeature([RouterState])]
|
|
360
361
|
}]
|
|
361
362
|
}] });
|
|
363
|
+
function withNgxsRouterPlugin(options) {
|
|
364
|
+
return makeEnvironmentProviders([
|
|
365
|
+
provideStates([RouterState]),
|
|
366
|
+
{ provide: ɵUSER_OPTIONS, useValue: options },
|
|
367
|
+
{
|
|
368
|
+
provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,
|
|
369
|
+
useFactory: ɵcreateRouterPluginOptions,
|
|
370
|
+
deps: [ɵUSER_OPTIONS]
|
|
371
|
+
},
|
|
372
|
+
{ provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
|
|
373
|
+
]);
|
|
374
|
+
}
|
|
362
375
|
|
|
363
376
|
/**
|
|
364
377
|
* The public api for consumers of @ngxs/router-plugin
|
|
@@ -368,5 +381,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
368
381
|
* Generated bundle index. Do not edit.
|
|
369
382
|
*/
|
|
370
383
|
|
|
371
|
-
export { DefaultRouterStateSerializer, Navigate, NgxsRouterPluginModule, RouterCancel, RouterDataResolved, RouterError, RouterNavigated, RouterNavigation, RouterRequest, RouterState, RouterStateSerializer };
|
|
372
|
-
//# sourceMappingURL=ngxs-router-plugin.
|
|
384
|
+
export { DefaultRouterStateSerializer, Navigate, NgxsRouterPluginModule, RouterCancel, RouterDataResolved, RouterError, RouterNavigated, RouterNavigation, RouterRequest, RouterState, RouterStateSerializer, withNgxsRouterPlugin };
|
|
385
|
+
//# sourceMappingURL=ngxs-router-plugin.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngxs-router-plugin.mjs","sources":["../../../packages/router-plugin/src/router.actions.ts","../../../packages/router-plugin/src/serializer.ts","../../../packages/router-plugin/src/router.state.ts","../../../packages/router-plugin/src/router.module.ts","../../../packages/router-plugin/index.ts","../../../packages/router-plugin/ngxs-router-plugin.ts"],"sourcesContent":["import {\n NavigationCancel,\n NavigationError,\n NavigationExtras,\n Params,\n RouterStateSnapshot,\n RoutesRecognized,\n ResolveEnd,\n NavigationStart,\n NavigationEnd\n} from '@angular/router';\n\nimport { RouterTrigger } from './router.state';\n\n/**\n * Public event api of the router\n */\nexport class Navigate {\n static readonly type = '[Router] Navigate';\n\n constructor(\n public path: any[],\n public queryParams?: Params,\n public extras?: NavigationExtras\n ) {}\n}\n\n/**\n *\n * Angular Routers internal state events\n *\n */\n\n/**\n * An action dispatched when the router starts the navigation.\n */\nexport class RouterRequest<T = RouterStateSnapshot> {\n static readonly type = '[Router] RouterRequest';\n\n constructor(\n public routerState: T,\n public event: NavigationStart,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An action dispatched when the router navigates.\n */\nexport class RouterNavigation<T = RouterStateSnapshot> {\n static readonly type = '[Router] RouterNavigation';\n\n constructor(\n public routerState: T,\n public event: RoutesRecognized,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An action dispatched when the router cancel navigation.\n */\nexport class RouterCancel<T, V = RouterStateSnapshot> {\n static readonly type = '[Router] RouterCancel';\n\n constructor(\n public routerState: V,\n public storeState: T,\n public event: NavigationCancel,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An action dispatched when the router errors.\n */\nexport class RouterError<T, V = RouterStateSnapshot> {\n static readonly type = '[Router] RouterError';\n\n constructor(\n public routerState: V,\n public storeState: T,\n public event: NavigationError,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An action dispatched when the `ResolveEnd` event is triggered.\n */\nexport class RouterDataResolved<T = RouterStateSnapshot> {\n static readonly type = '[Router] RouterDataResolved';\n\n constructor(\n public routerState: T,\n public event: ResolveEnd,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An action dispatched when the router navigation has been finished successfully.\n */\nexport class RouterNavigated<T = RouterStateSnapshot> {\n static readonly type = '[Router] RouterNavigated';\n\n constructor(\n public routerState: T,\n public event: NavigationEnd,\n public trigger: RouterTrigger = 'none'\n ) {}\n}\n\n/**\n * An union type of router actions.\n */\nexport type RouterAction<T, V = RouterStateSnapshot> =\n | RouterRequest<V>\n | RouterNavigation<V>\n | RouterCancel<T, V>\n | RouterError<T, V>\n | RouterDataResolved<V>\n | RouterNavigated<V>;\n","import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\n\nexport abstract class RouterStateSerializer<T> {\n abstract serialize(routerState: RouterStateSnapshot): T;\n}\n\nexport interface SerializedRouterStateSnapshot {\n root: ActivatedRouteSnapshot;\n url: string;\n}\n\nexport class DefaultRouterStateSerializer\n implements RouterStateSerializer<SerializedRouterStateSnapshot>\n{\n serialize(routerState: RouterStateSnapshot): SerializedRouterStateSnapshot {\n return {\n root: this.serializeRoute(routerState.root),\n url: routerState.url\n };\n }\n\n private serializeRoute(route: ActivatedRouteSnapshot): ActivatedRouteSnapshot {\n const children = route.children.map(c => this.serializeRoute(c));\n return {\n url: route.url,\n title: route.title,\n params: route.params,\n queryParams: route.queryParams,\n fragment: route.fragment!,\n data: route.data,\n outlet: route.outlet,\n component: null,\n routeConfig: null,\n root: null as any,\n parent: null,\n firstChild: children[0],\n children: children,\n pathFromRoot: null as any,\n paramMap: route.paramMap,\n queryParamMap: route.queryParamMap,\n toString: route.toString\n };\n }\n}\n","import { NgZone, Injectable, OnDestroy, Injector } from '@angular/core';\nimport {\n NavigationCancel,\n NavigationError,\n Router,\n RouterStateSnapshot,\n RoutesRecognized,\n ResolveEnd,\n NavigationStart,\n NavigationEnd,\n Event\n} from '@angular/router';\nimport { Action, Selector, State, StateContext, Store } from '@ngxs/store';\nimport {\n NavigationActionTiming,\n NgxsRouterPluginOptions,\n ɵNGXS_ROUTER_PLUGIN_OPTIONS\n} from '@ngxs/router-plugin/internals';\nimport { Subscription } from 'rxjs';\n\nimport {\n Navigate,\n RouterAction,\n RouterCancel,\n RouterError,\n RouterNavigation,\n RouterDataResolved,\n RouterRequest,\n RouterNavigated\n} from './router.actions';\nimport { RouterStateSerializer } from './serializer';\n\nexport interface RouterStateModel<T = RouterStateSnapshot> {\n state?: T;\n navigationId?: number;\n trigger: RouterTrigger;\n}\n\nexport type RouterTrigger =\n | 'none'\n | 'router'\n | 'store'\n // The `devtools` trigger means that the state change has been triggered by Redux DevTools (e.g. when the time-traveling is used).\n | 'devtools';\n\n@State<RouterStateModel>({\n name: 'router',\n defaults: {\n state: undefined,\n navigationId: undefined,\n trigger: 'none'\n }\n})\n@Injectable()\nexport class RouterState implements OnDestroy {\n /**\n * Determines how navigation was performed by the `RouterState` itself\n * or outside via `new Navigate(...)`\n */\n private _trigger: RouterTrigger = 'none';\n\n /**\n * That's the serialized state from the `Router` class\n */\n private _routerState: RouterStateSnapshot | null = null;\n\n /**\n * That's the value of the `RouterState` state\n */\n private _storeState: RouterStateModel | null = null;\n\n private _lastEvent: Event | null = null;\n\n private _subscription = new Subscription();\n\n private _options: NgxsRouterPluginOptions | null = null;\n\n @Selector()\n static state<T = RouterStateSnapshot>(state: RouterStateModel<T>) {\n return state && state.state;\n }\n\n @Selector()\n static url(state: RouterStateModel): string | undefined {\n return state && state.state && state.state.url;\n }\n\n constructor(\n private _store: Store,\n private _router: Router,\n private _serializer: RouterStateSerializer<RouterStateSnapshot>,\n private _ngZone: NgZone,\n injector: Injector\n ) {\n // Note: do not use `@Inject` since it fails on lower versions of Angular with Jest\n // integration, it cannot resolve the token provider.\n this._options = injector.get(ɵNGXS_ROUTER_PLUGIN_OPTIONS, null);\n this._setUpStoreListener();\n this._setUpRouterEventsListener();\n }\n\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n }\n\n @Action(Navigate)\n navigate(_: StateContext<RouterStateModel>, action: Navigate) {\n return this._ngZone.run(() =>\n this._router.navigate(action.path, {\n queryParams: action.queryParams,\n ...action.extras\n })\n );\n }\n\n @Action([\n RouterRequest,\n RouterNavigation,\n RouterError,\n RouterCancel,\n RouterDataResolved,\n RouterNavigated\n ])\n angularRouterAction(\n ctx: StateContext<RouterStateModel>,\n action: RouterAction<RouterStateModel, RouterStateSnapshot>\n ): void {\n ctx.setState({\n trigger: action.trigger,\n state: action.routerState,\n navigationId: action.event.id\n });\n }\n\n private _setUpStoreListener(): void {\n const subscription = this._store\n .select(RouterState)\n .subscribe((state: RouterStateModel | undefined) => {\n this._navigateIfNeeded(state);\n });\n\n this._subscription.add(subscription);\n }\n\n private _navigateIfNeeded(routerState: RouterStateModel | undefined): void {\n if (routerState && routerState.trigger === 'devtools') {\n this._storeState = this._store.selectSnapshot(RouterState);\n }\n\n const canSkipNavigation =\n !this._storeState ||\n !this._storeState.state ||\n !routerState ||\n routerState.trigger === 'router' ||\n this._router.url === this._storeState.state.url ||\n this._lastEvent instanceof NavigationStart;\n\n if (canSkipNavigation) {\n return;\n }\n\n this._storeState = this._store.selectSnapshot(RouterState);\n this._trigger = 'store';\n this._ngZone.run(() => this._router.navigateByUrl(this._storeState!.state!.url));\n }\n\n private _setUpRouterEventsListener(): void {\n const dispatchRouterNavigationLate =\n this._options != null &&\n this._options.navigationActionTiming === NavigationActionTiming.PostActivation;\n\n let lastRoutesRecognized: RoutesRecognized;\n\n const subscription = this._router.events.subscribe(event => {\n this._lastEvent = event;\n\n if (event instanceof NavigationStart) {\n this._navigationStart(event);\n } else if (event instanceof RoutesRecognized) {\n lastRoutesRecognized = event;\n if (!dispatchRouterNavigationLate && this._trigger !== 'store') {\n this._dispatchRouterNavigation(lastRoutesRecognized);\n }\n } else if (event instanceof ResolveEnd) {\n this._dispatchRouterDataResolved(event);\n } else if (event instanceof NavigationCancel) {\n this._dispatchRouterCancel(event);\n this._reset();\n } else if (event instanceof NavigationError) {\n this._dispatchRouterError(event);\n this._reset();\n } else if (event instanceof NavigationEnd) {\n if (this._trigger !== 'store') {\n if (dispatchRouterNavigationLate) {\n this._dispatchRouterNavigation(lastRoutesRecognized);\n }\n this._dispatchRouterNavigated(event);\n }\n this._reset();\n }\n });\n\n this._subscription.add(subscription);\n }\n\n /** Reacts to `NavigationStart`. */\n private _navigationStart(event: NavigationStart): void {\n this._routerState = this._serializer.serialize(this._router.routerState.snapshot);\n\n if (this._trigger !== 'none') {\n this._storeState = this._store.selectSnapshot(RouterState);\n this._dispatchRouterAction(new RouterRequest(this._routerState, event, this._trigger));\n }\n }\n\n /** Reacts to `ResolveEnd`. */\n private _dispatchRouterDataResolved(event: ResolveEnd): void {\n const routerState = this._serializer.serialize(event.state);\n this._dispatchRouterAction(new RouterDataResolved(routerState, event, this._trigger));\n }\n\n /** Reacts to `RoutesRecognized` or `NavigationEnd`, depends on the `navigationActionTiming`. */\n private _dispatchRouterNavigation(lastRoutesRecognized: RoutesRecognized): void {\n const nextRouterState = this._serializer.serialize(lastRoutesRecognized.state);\n\n this._dispatchRouterAction(\n new RouterNavigation(\n nextRouterState,\n new RoutesRecognized(\n lastRoutesRecognized.id,\n lastRoutesRecognized.url,\n lastRoutesRecognized.urlAfterRedirects,\n nextRouterState\n ),\n this._trigger\n )\n );\n }\n\n /** Reacts to `NavigationCancel`. */\n private _dispatchRouterCancel(event: NavigationCancel): void {\n this._dispatchRouterAction(\n new RouterCancel(this._routerState!, this._storeState, event, this._trigger)\n );\n }\n\n /** Reacts to `NavigationEnd`. */\n private _dispatchRouterError(event: NavigationError): void {\n this._dispatchRouterAction(\n new RouterError(\n this._routerState!,\n this._storeState,\n new NavigationError(event.id, event.url, `${event}`),\n this._trigger\n )\n );\n }\n\n /** Reacts to `NavigationEnd`. */\n private _dispatchRouterNavigated(event: NavigationEnd): void {\n const routerState = this._serializer.serialize(this._router.routerState.snapshot);\n this._dispatchRouterAction(new RouterNavigated(routerState, event, this._trigger));\n }\n\n private _dispatchRouterAction<T>(action: RouterAction<T>): void {\n this._trigger = 'router';\n\n try {\n this._store.dispatch(action);\n } finally {\n this._trigger = 'none';\n }\n }\n\n private _reset(): void {\n this._trigger = 'none';\n this._storeState = null;\n this._routerState = null;\n }\n}\n","import {\n EnvironmentProviders,\n ModuleWithProviders,\n NgModule,\n makeEnvironmentProviders\n} from '@angular/core';\nimport { NgxsModule, provideStates } from '@ngxs/store';\nimport {\n NgxsRouterPluginOptions,\n ɵcreateRouterPluginOptions,\n ɵNGXS_ROUTER_PLUGIN_OPTIONS,\n ɵUSER_OPTIONS\n} from '@ngxs/router-plugin/internals';\n\nimport { RouterState } from './router.state';\nimport { DefaultRouterStateSerializer, RouterStateSerializer } from './serializer';\n\n@NgModule({\n imports: [NgxsModule.forFeature([RouterState])]\n})\nexport class NgxsRouterPluginModule {\n static forRoot(\n options?: NgxsRouterPluginOptions\n ): ModuleWithProviders<NgxsRouterPluginModule> {\n return {\n ngModule: NgxsRouterPluginModule,\n providers: [\n { provide: ɵUSER_OPTIONS, useValue: options },\n {\n provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,\n useFactory: ɵcreateRouterPluginOptions,\n deps: [ɵUSER_OPTIONS]\n },\n { provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }\n ]\n };\n }\n}\n\nexport function withNgxsRouterPlugin(options?: NgxsRouterPluginOptions): EnvironmentProviders {\n return makeEnvironmentProviders([\n provideStates([RouterState]),\n { provide: ɵUSER_OPTIONS, useValue: options },\n {\n provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,\n useFactory: ɵcreateRouterPluginOptions,\n deps: [ɵUSER_OPTIONS]\n },\n { provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }\n ]);\n}\n","/**\n * The public api for consumers of @ngxs/router-plugin\n */\nexport * from './src/public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3.RouterStateSerializer"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
|
|
3
|
+
const NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;
|
|
4
|
+
const ɵUSER_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'USER_OPTIONS' : '', { providedIn: 'root', factory: () => undefined });
|
|
5
|
+
const ɵNGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'NGXS_ROUTER_PLUGIN_OPTIONS' : '', { providedIn: 'root', factory: () => ({}) });
|
|
6
|
+
function ɵcreateRouterPluginOptions(options) {
|
|
7
|
+
return {
|
|
8
|
+
navigationActionTiming: (options && options.navigationActionTiming) || 1 /* NavigationActionTiming.PreActivation */
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Generated bundle index. Do not edit.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
export { ɵNGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS, ɵcreateRouterPluginOptions };
|
|
17
|
+
//# sourceMappingURL=ngxs-router-plugin-internals.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngxs-router-plugin-internals.mjs","sources":["../../../packages/router-plugin/internals/src/symbols.ts","../../../packages/router-plugin/internals/src/ngxs-router-plugin-internals.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\ndeclare const ngDevMode: boolean;\n\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;\n\nexport const enum NavigationActionTiming {\n PreActivation = 1,\n PostActivation = 2\n}\n\nexport interface NgxsRouterPluginOptions {\n navigationActionTiming?: NavigationActionTiming;\n}\n\nexport const ɵUSER_OPTIONS = new InjectionToken<NgxsRouterPluginOptions | undefined>(\n NG_DEV_MODE ? 'USER_OPTIONS' : '',\n { providedIn: 'root', factory: () => undefined }\n);\n\nexport const ɵNGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken<NgxsRouterPluginOptions>(\n NG_DEV_MODE ? 'NGXS_ROUTER_PLUGIN_OPTIONS' : '',\n { providedIn: 'root', factory: () => ({}) }\n);\n\nexport function ɵcreateRouterPluginOptions(\n options: NgxsRouterPluginOptions | undefined\n): NgxsRouterPluginOptions {\n return {\n navigationActionTiming:\n (options && options.navigationActionTiming) || NavigationActionTiming.PreActivation\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAIA,MAAM,WAAW,GAAG,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC;AAW3D,MAAM,aAAa,GAAG,IAAI,cAAc,CAC7C,WAAW,GAAG,cAAc,GAAG,EAAE,EACjC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,EAAE,EAChD;AAEK,MAAM,2BAA2B,GAAG,IAAI,cAAc,CAC3D,WAAW,GAAG,4BAA4B,GAAG,EAAE,EAC/C,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,EAC3C;AAEI,SAAU,0BAA0B,CACxC,OAA4C,EAAA;IAE5C,OAAO;QACL,sBAAsB,EACpB,CAAC,OAAO,IAAI,OAAO,CAAC,sBAAsB,KAAyC,CAAA;KACtF,CAAC;AACJ;;AChCA;;AAEG;;;;"}
|