@ngxs/router-plugin 3.8.2-dev.master-414599c → 3.8.2-dev.master-9f0fcb0

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.
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Public event api of the router
3
+ */
4
+ export class Navigate {
5
+ static { this.type = '[Router] Navigate'; }
6
+ constructor(path, queryParams, extras) {
7
+ this.path = path;
8
+ this.queryParams = queryParams;
9
+ this.extras = extras;
10
+ }
11
+ }
12
+ /**
13
+ *
14
+ * Angular Routers internal state events
15
+ *
16
+ */
17
+ /**
18
+ * An action dispatched when the router starts the navigation.
19
+ */
20
+ export class RouterRequest {
21
+ static { this.type = '[Router] RouterRequest'; }
22
+ constructor(routerState, event, trigger = 'none') {
23
+ this.routerState = routerState;
24
+ this.event = event;
25
+ this.trigger = trigger;
26
+ }
27
+ }
28
+ /**
29
+ * An action dispatched when the router navigates.
30
+ */
31
+ export class RouterNavigation {
32
+ static { this.type = '[Router] RouterNavigation'; }
33
+ constructor(routerState, event, trigger = 'none') {
34
+ this.routerState = routerState;
35
+ this.event = event;
36
+ this.trigger = trigger;
37
+ }
38
+ }
39
+ /**
40
+ * An action dispatched when the router cancel navigation.
41
+ */
42
+ export class RouterCancel {
43
+ static { this.type = '[Router] RouterCancel'; }
44
+ constructor(routerState, storeState, event, trigger = 'none') {
45
+ this.routerState = routerState;
46
+ this.storeState = storeState;
47
+ this.event = event;
48
+ this.trigger = trigger;
49
+ }
50
+ }
51
+ /**
52
+ * An action dispatched when the router errors.
53
+ */
54
+ export class RouterError {
55
+ static { this.type = '[Router] RouterError'; }
56
+ constructor(routerState, storeState, event, trigger = 'none') {
57
+ this.routerState = routerState;
58
+ this.storeState = storeState;
59
+ this.event = event;
60
+ this.trigger = trigger;
61
+ }
62
+ }
63
+ /**
64
+ * An action dispatched when the `ResolveEnd` event is triggered.
65
+ */
66
+ export class RouterDataResolved {
67
+ static { this.type = '[Router] RouterDataResolved'; }
68
+ constructor(routerState, event, trigger = 'none') {
69
+ this.routerState = routerState;
70
+ this.event = event;
71
+ this.trigger = trigger;
72
+ }
73
+ }
74
+ /**
75
+ * An action dispatched when the router navigation has been finished successfully.
76
+ */
77
+ export class RouterNavigated {
78
+ static { this.type = '[Router] RouterNavigated'; }
79
+ constructor(routerState, event, trigger = 'none') {
80
+ this.routerState = routerState;
81
+ this.event = event;
82
+ this.trigger = trigger;
83
+ }
84
+ }
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9yb3V0ZXItcGx1Z2luL3NyYy9yb3V0ZXIuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjQTs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFRO2FBQ0gsU0FBSSxHQUFHLG1CQUFtQixDQUFDO0lBRTNDLFlBQ1MsSUFBVyxFQUNYLFdBQW9CLEVBQ3BCLE1BQXlCO1FBRnpCLFNBQUksR0FBSixJQUFJLENBQU87UUFDWCxnQkFBVyxHQUFYLFdBQVcsQ0FBUztRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFtQjtJQUMvQixDQUFDOztBQUdOOzs7O0dBSUc7QUFFSDs7R0FFRztBQUNILE1BQU0sT0FBTyxhQUFhO2FBQ1IsU0FBSSxHQUFHLHdCQUF3QixDQUFDO0lBRWhELFlBQ1MsV0FBYyxFQUNkLEtBQXNCLEVBQ3RCLFVBQXlCLE1BQU07UUFGL0IsZ0JBQVcsR0FBWCxXQUFXLENBQUc7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUF3QjtJQUNyQyxDQUFDOztBQUdOOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjthQUNYLFNBQUksR0FBRywyQkFBMkIsQ0FBQztJQUVuRCxZQUNTLFdBQWMsRUFDZCxLQUF1QixFQUN2QixVQUF5QixNQUFNO1FBRi9CLGdCQUFXLEdBQVgsV0FBVyxDQUFHO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsWUFBTyxHQUFQLE9BQU8sQ0FBd0I7SUFDckMsQ0FBQzs7QUFHTjs7R0FFRztBQUNILE1BQU0sT0FBTyxZQUFZO2FBQ1AsU0FBSSxHQUFHLHVCQUF1QixDQUFDO0lBRS9DLFlBQ1MsV0FBYyxFQUNkLFVBQWEsRUFDYixLQUF1QixFQUN2QixVQUF5QixNQUFNO1FBSC9CLGdCQUFXLEdBQVgsV0FBVyxDQUFHO1FBQ2QsZUFBVSxHQUFWLFVBQVUsQ0FBRztRQUNiLFVBQUssR0FBTCxLQUFLLENBQWtCO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQXdCO0lBQ3JDLENBQUM7O0FBR047O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVzthQUNOLFNBQUksR0FBRyxzQkFBc0IsQ0FBQztJQUU5QyxZQUNTLFdBQWMsRUFDZCxVQUFhLEVBQ2IsS0FBc0IsRUFDdEIsVUFBeUIsTUFBTTtRQUgvQixnQkFBVyxHQUFYLFdBQVcsQ0FBRztRQUNkLGVBQVUsR0FBVixVQUFVLENBQUc7UUFDYixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUF3QjtJQUNyQyxDQUFDOztBQUdOOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjthQUNiLFNBQUksR0FBRyw2QkFBNkIsQ0FBQztJQUVyRCxZQUNTLFdBQWMsRUFDZCxLQUFpQixFQUNqQixVQUF5QixNQUFNO1FBRi9CLGdCQUFXLEdBQVgsV0FBVyxDQUFHO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixZQUFPLEdBQVAsT0FBTyxDQUF3QjtJQUNyQyxDQUFDOztBQUdOOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7YUFDVixTQUFJLEdBQUcsMEJBQTBCLENBQUM7SUFFbEQsWUFDUyxXQUFjLEVBQ2QsS0FBb0IsRUFDcEIsVUFBeUIsTUFBTTtRQUYvQixnQkFBVyxHQUFYLFdBQVcsQ0FBRztRQUNkLFVBQUssR0FBTCxLQUFLLENBQWU7UUFDcEIsWUFBTyxHQUFQLE9BQU8sQ0FBd0I7SUFDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE5hdmlnYXRpb25DYW5jZWwsXG4gIE5hdmlnYXRpb25FcnJvcixcbiAgTmF2aWdhdGlvbkV4dHJhcyxcbiAgUGFyYW1zLFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBSb3V0ZXNSZWNvZ25pemVkLFxuICBSZXNvbHZlRW5kLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIE5hdmlnYXRpb25FbmRcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgUm91dGVyVHJpZ2dlciB9IGZyb20gJy4vcm91dGVyLnN0YXRlJztcblxuLyoqXG4gKiBQdWJsaWMgZXZlbnQgYXBpIG9mIHRoZSByb3V0ZXJcbiAqL1xuZXhwb3J0IGNsYXNzIE5hdmlnYXRlIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW1JvdXRlcl0gTmF2aWdhdGUnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBwYXRoOiBhbnlbXSxcbiAgICBwdWJsaWMgcXVlcnlQYXJhbXM/OiBQYXJhbXMsXG4gICAgcHVibGljIGV4dHJhcz86IE5hdmlnYXRpb25FeHRyYXNcbiAgKSB7fVxufVxuXG4vKipcbiAqXG4gKiBBbmd1bGFyIFJvdXRlcnMgaW50ZXJuYWwgc3RhdGUgZXZlbnRzXG4gKlxuICovXG5cbi8qKlxuICogQW4gYWN0aW9uIGRpc3BhdGNoZWQgd2hlbiB0aGUgcm91dGVyIHN0YXJ0cyB0aGUgbmF2aWdhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFJvdXRlclJlcXVlc3Q8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW1JvdXRlcl0gUm91dGVyUmVxdWVzdCc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJvdXRlclN0YXRlOiBULFxuICAgIHB1YmxpYyBldmVudDogTmF2aWdhdGlvblN0YXJ0LFxuICAgIHB1YmxpYyB0cmlnZ2VyOiBSb3V0ZXJUcmlnZ2VyID0gJ25vbmUnXG4gICkge31cbn1cblxuLyoqXG4gKiBBbiBhY3Rpb24gZGlzcGF0Y2hlZCB3aGVuIHRoZSByb3V0ZXIgbmF2aWdhdGVzLlxuICovXG5leHBvcnQgY2xhc3MgUm91dGVyTmF2aWdhdGlvbjxUID0gUm91dGVyU3RhdGVTbmFwc2hvdD4ge1xuICBzdGF0aWMgcmVhZG9ubHkgdHlwZSA9ICdbUm91dGVyXSBSb3V0ZXJOYXZpZ2F0aW9uJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcm91dGVyU3RhdGU6IFQsXG4gICAgcHVibGljIGV2ZW50OiBSb3V0ZXNSZWNvZ25pemVkLFxuICAgIHB1YmxpYyB0cmlnZ2VyOiBSb3V0ZXJUcmlnZ2VyID0gJ25vbmUnXG4gICkge31cbn1cblxuLyoqXG4gKiBBbiBhY3Rpb24gZGlzcGF0Y2hlZCB3aGVuIHRoZSByb3V0ZXIgY2FuY2VsIG5hdmlnYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBSb3V0ZXJDYW5jZWw8VCwgViA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW1JvdXRlcl0gUm91dGVyQ2FuY2VsJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcm91dGVyU3RhdGU6IFYsXG4gICAgcHVibGljIHN0b3JlU3RhdGU6IFQsXG4gICAgcHVibGljIGV2ZW50OiBOYXZpZ2F0aW9uQ2FuY2VsLFxuICAgIHB1YmxpYyB0cmlnZ2VyOiBSb3V0ZXJUcmlnZ2VyID0gJ25vbmUnXG4gICkge31cbn1cblxuLyoqXG4gKiBBbiBhY3Rpb24gZGlzcGF0Y2hlZCB3aGVuIHRoZSByb3V0ZXIgZXJyb3JzLlxuICovXG5leHBvcnQgY2xhc3MgUm91dGVyRXJyb3I8VCwgViA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW1JvdXRlcl0gUm91dGVyRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByb3V0ZXJTdGF0ZTogVixcbiAgICBwdWJsaWMgc3RvcmVTdGF0ZTogVCxcbiAgICBwdWJsaWMgZXZlbnQ6IE5hdmlnYXRpb25FcnJvcixcbiAgICBwdWJsaWMgdHJpZ2dlcjogUm91dGVyVHJpZ2dlciA9ICdub25lJ1xuICApIHt9XG59XG5cbi8qKlxuICogQW4gYWN0aW9uIGRpc3BhdGNoZWQgd2hlbiB0aGUgYFJlc29sdmVFbmRgIGV2ZW50IGlzIHRyaWdnZXJlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFJvdXRlckRhdGFSZXNvbHZlZDxUID0gUm91dGVyU3RhdGVTbmFwc2hvdD4ge1xuICBzdGF0aWMgcmVhZG9ubHkgdHlwZSA9ICdbUm91dGVyXSBSb3V0ZXJEYXRhUmVzb2x2ZWQnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByb3V0ZXJTdGF0ZTogVCxcbiAgICBwdWJsaWMgZXZlbnQ6IFJlc29sdmVFbmQsXG4gICAgcHVibGljIHRyaWdnZXI6IFJvdXRlclRyaWdnZXIgPSAnbm9uZSdcbiAgKSB7fVxufVxuXG4vKipcbiAqIEFuIGFjdGlvbiBkaXNwYXRjaGVkIHdoZW4gdGhlIHJvdXRlciBuYXZpZ2F0aW9uIGhhcyBiZWVuIGZpbmlzaGVkIHN1Y2Nlc3NmdWxseS5cbiAqL1xuZXhwb3J0IGNsYXNzIFJvdXRlck5hdmlnYXRlZDxUID0gUm91dGVyU3RhdGVTbmFwc2hvdD4ge1xuICBzdGF0aWMgcmVhZG9ubHkgdHlwZSA9ICdbUm91dGVyXSBSb3V0ZXJOYXZpZ2F0ZWQnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByb3V0ZXJTdGF0ZTogVCxcbiAgICBwdWJsaWMgZXZlbnQ6IE5hdmlnYXRpb25FbmQsXG4gICAgcHVibGljIHRyaWdnZXI6IFJvdXRlclRyaWdnZXIgPSAnbm9uZSdcbiAgKSB7fVxufVxuXG4vKipcbiAqIEFuIHVuaW9uIHR5cGUgb2Ygcm91dGVyIGFjdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIFJvdXRlckFjdGlvbjxULCBWID0gUm91dGVyU3RhdGVTbmFwc2hvdD4gPVxuICB8IFJvdXRlclJlcXVlc3Q8Vj5cbiAgfCBSb3V0ZXJOYXZpZ2F0aW9uPFY+XG4gIHwgUm91dGVyQ2FuY2VsPFQsIFY+XG4gIHwgUm91dGVyRXJyb3I8VCwgVj5cbiAgfCBSb3V0ZXJEYXRhUmVzb2x2ZWQ8Vj5cbiAgfCBSb3V0ZXJOYXZpZ2F0ZWQ8Vj47XG4iXX0=
@@ -20,11 +20,11 @@ export class NgxsRouterPluginModule {
20
20
  ]
21
21
  };
22
22
  }
23
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, imports: [i1.ɵNgxsFeatureModule] }); }
25
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, imports: [NgxsModule.forFeature([RouterState])] }); }
23
26
  }
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: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  imports: [NgxsModule.forFeature([RouterState])]
@@ -42,4 +42,4 @@ export function withNgxsRouterPlugin(options) {
42
42
  { provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
43
43
  ]);
44
44
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vc3JjL3JvdXRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFFBQVEsRUFDUix3QkFBd0IsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUVMLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsYUFBYSxFQUNkLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBS25GLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FDWixPQUFpQztRQUVqQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQzdDO29CQUNFLE9BQU8sRUFBRSwyQkFBMkI7b0JBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7b0JBQ3RDLElBQUksRUFBRSxDQUFDLGFBQWEsQ0FBQztpQkFDdEI7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO2FBQzNFO1NBQ0YsQ0FBQztJQUNKLENBQUM7O3NJQWhCVSxzQkFBc0I7dUlBQXRCLHNCQUFzQjt1SUFBdEIsc0JBQXNCLFlBRnZCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzsyRkFFbkMsc0JBQXNCO2tCQUhsQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2lCQUNoRDs7QUFvQkQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE9BQWlDO0lBQ3BFLE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsYUFBYSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7UUFDN0M7WUFDRSxPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7WUFDdEMsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1NBQ3RCO1FBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO0tBQzNFLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbnZpcm9ubWVudFByb3ZpZGVycyxcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG4gIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVyc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUsIHByb3ZpZGVTdGF0ZXMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQge1xuICBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyxcbiAgybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLFxuICDJtVVTRVJfT1BUSU9OU1xufSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luL2ludGVybmFscyc7XG5cbmltcG9ydCB7IFJvdXRlclN0YXRlIH0gZnJvbSAnLi9yb3V0ZXIuc3RhdGUnO1xuaW1wb3J0IHsgRGVmYXVsdFJvdXRlclN0YXRlU2VyaWFsaXplciwgUm91dGVyU3RhdGVTZXJpYWxpemVyIH0gZnJvbSAnLi9zZXJpYWxpemVyJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW05neHNNb2R1bGUuZm9yRmVhdHVyZShbUm91dGVyU3RhdGVdKV1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KFxuICAgIG9wdGlvbnM/OiBOZ3hzUm91dGVyUGx1Z2luT3B0aW9uc1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiDJtVVTRVJfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IMm1TkdYU19ST1VURVJfUExVR0lOX09QVElPTlMsXG4gICAgICAgICAgdXNlRmFjdG9yeTogybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICAgICAgICAgIGRlcHM6IFvJtVVTRVJfT1BUSU9OU11cbiAgICAgICAgfSxcbiAgICAgICAgeyBwcm92aWRlOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsIHVzZUNsYXNzOiBEZWZhdWx0Um91dGVyU3RhdGVTZXJpYWxpemVyIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoTmd4c1JvdXRlclBsdWdpbihvcHRpb25zPzogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW1xuICAgIHByb3ZpZGVTdGF0ZXMoW1JvdXRlclN0YXRlXSksXG4gICAgeyBwcm92aWRlOiDJtVVTRVJfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLFxuICAgICAgdXNlRmFjdG9yeTogybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICAgICAgZGVwczogW8m1VVNFUl9PUFRJT05TXVxuICAgIH0sXG4gICAgeyBwcm92aWRlOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIsIHVzZUNsYXNzOiBEZWZhdWx0Um91dGVyU3RhdGVTZXJpYWxpemVyIH1cbiAgXSk7XG59XG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3JvdXRlci1wbHVnaW4vc3JjL3JvdXRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFFBQVEsRUFDUix3QkFBd0IsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUVMLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsYUFBYSxFQUNkLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBS25GLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FDWixPQUFpQztRQUVqQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQzdDO29CQUNFLE9BQU8sRUFBRSwyQkFBMkI7b0JBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7b0JBQ3RDLElBQUksRUFBRSxDQUFDLGFBQWEsQ0FBQztpQkFDdEI7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO2FBQzNFO1NBQ0YsQ0FBQztJQUNKLENBQUM7aUlBaEJVLHNCQUFzQjtrSUFBdEIsc0JBQXNCO2tJQUF0QixzQkFBc0IsWUFGdkIsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDOzsyRkFFbkMsc0JBQXNCO2tCQUhsQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2lCQUNoRDs7QUFvQkQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE9BQWlDO0lBQ3BFLE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsYUFBYSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7UUFDN0M7WUFDRSxPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFVBQVUsRUFBRSwwQkFBMEI7WUFDdEMsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO1NBQ3RCO1FBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFO0tBQzNFLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbnZpcm9ubWVudFByb3ZpZGVycyxcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG4gIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVyc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUsIHByb3ZpZGVTdGF0ZXMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQge1xuICBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyxcbiAgybVjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLFxuICDJtVVTRVJfT1BUSU9OU1xufSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luL2ludGVybmFscyc7XG5cbmltcG9ydCB7IFJvdXRlclN0YXRlIH0gZnJvbSAnLi9yb3V0ZXIuc3RhdGUnO1xuaW1wb3J0IHsgRGVmYXVsdFJvdXRlclN0YXRlU2VyaWFsaXplciwgUm91dGVyU3RhdGVTZXJpYWxpemVyIH0gZnJvbSAnLi9zZXJpYWxpemVyJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW05neHNNb2R1bGUuZm9yRmVhdHVyZShbUm91dGVyU3RhdGVdKV1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KFxuICAgIG9wdGlvbnM/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 { ReplaySubject } from 'rxjs';
8
+ import { takeUntil } from 'rxjs/operators';
9
+ import { Navigate, RouterCancel, RouterError, RouterNavigation, RouterDataResolved, RouterRequest, RouterNavigated } from './router.actions';
10
+ import { RouterStateSerializer } from './serializer';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@ngxs/store";
13
+ import * as i2 from "@angular/router";
14
+ import * as i3 from "./serializer";
15
+ let RouterState = class RouterState {
16
+ static { RouterState_1 = this; }
17
+ static state(state) {
18
+ return state && state.state;
19
+ }
20
+ static url(state) {
21
+ return state && state.state && state.state.url;
22
+ }
23
+ constructor(_store, _router, _serializer, _ngZone, injector) {
24
+ this._store = _store;
25
+ this._router = _router;
26
+ this._serializer = _serializer;
27
+ this._ngZone = _ngZone;
28
+ /**
29
+ * Determines how navigation was performed by the `RouterState` itself
30
+ * or outside via `new Navigate(...)`
31
+ */
32
+ this._trigger = 'none';
33
+ /**
34
+ * That's the serialized state from the `Router` class
35
+ */
36
+ this._routerState = null;
37
+ /**
38
+ * That's the value of the `RouterState` state
39
+ */
40
+ this._storeState = null;
41
+ this._lastEvent = null;
42
+ this._options = null;
43
+ this._destroy$ = new ReplaySubject(1);
44
+ // Note: do not use `@Inject` since it fails on lower versions of Angular with Jest
45
+ // integration, it cannot resolve the token provider.
46
+ this._options = injector.get(ɵNGXS_ROUTER_PLUGIN_OPTIONS, null);
47
+ this._setUpStoreListener();
48
+ this._setUpRouterEventsListener();
49
+ }
50
+ ngOnDestroy() {
51
+ this._destroy$.next();
52
+ }
53
+ navigate(_, action) {
54
+ return this._ngZone.run(() => this._router.navigate(action.path, {
55
+ queryParams: action.queryParams,
56
+ ...action.extras
57
+ }));
58
+ }
59
+ angularRouterAction(ctx, action) {
60
+ ctx.setState({
61
+ trigger: action.trigger,
62
+ state: action.routerState,
63
+ navigationId: action.event.id
64
+ });
65
+ }
66
+ _setUpStoreListener() {
67
+ const routerState$ = this._store.select(RouterState_1).pipe(takeUntil(this._destroy$));
68
+ routerState$.subscribe((state) => {
69
+ this._navigateIfNeeded(state);
70
+ });
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 events$ = this._router.events.pipe(takeUntil(this._destroy$));
94
+ events$.subscribe(event => {
95
+ this._lastEvent = event;
96
+ if (event instanceof NavigationStart) {
97
+ this._navigationStart(event);
98
+ }
99
+ else if (event instanceof RoutesRecognized) {
100
+ lastRoutesRecognized = event;
101
+ if (!dispatchRouterNavigationLate && this._trigger !== 'store') {
102
+ this._dispatchRouterNavigation(lastRoutesRecognized);
103
+ }
104
+ }
105
+ else if (event instanceof ResolveEnd) {
106
+ this._dispatchRouterDataResolved(event);
107
+ }
108
+ else if (event instanceof NavigationCancel) {
109
+ this._dispatchRouterCancel(event);
110
+ this._reset();
111
+ }
112
+ else if (event instanceof NavigationError) {
113
+ this._dispatchRouterError(event);
114
+ this._reset();
115
+ }
116
+ else if (event instanceof NavigationEnd) {
117
+ if (this._trigger !== 'store') {
118
+ if (dispatchRouterNavigationLate) {
119
+ this._dispatchRouterNavigation(lastRoutesRecognized);
120
+ }
121
+ this._dispatchRouterNavigated(event);
122
+ }
123
+ this._reset();
124
+ }
125
+ });
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
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RouterState, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i3.RouterStateSerializer }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
173
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RouterState }); }
174
+ };
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: "17.0.5", ngImport: i0, type: RouterState, decorators: [{
223
+ type: Injectable
224
+ }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i3.RouterStateSerializer }, { type: i0.NgZone }, { type: i0.Injector }], propDecorators: { navigate: [], angularRouterAction: [] } });
225
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvcm91dGVyLXBsdWdpbi9zcmMvcm91dGVyLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLE1BQU0sRUFFTixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLGVBQWUsRUFDZixhQUFhLEVBRWQsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWdCLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRSxPQUFPLEVBR0wsMkJBQTJCLEVBQzVCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUNMLFFBQVEsRUFFUixZQUFZLEVBQ1osV0FBVyxFQUNYLGdCQUFnQixFQUNoQixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7O0FBd0I5QyxJQUFNLFdBQVcsR0FBakIsTUFBTSxXQUFXOztJQXdCZixBQUFQLE1BQU0sQ0FBQyxLQUFLLENBQTBCLEtBQTBCO1FBQzlELE9BQU8sS0FBSyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUdNLEFBQVAsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUF1QjtRQUNoQyxPQUFPLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FB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LE1BQU07UUFDYixRQUFRO0dBdENULFdBQVcsQ0E2TnZCOzsyRkE3TlksV0FBVztrQkFEdkIsVUFBVTsrS0FxRFQsUUFBUSxNQWlCUixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1pvbmUsIEluamVjdGFibGUsIE9uRGVzdHJveSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25DYW5jZWwsXG4gIE5hdmlnYXRpb25FcnJvcixcbiAgUm91dGVyLFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBSb3V0ZXNSZWNvZ25pemVkLFxuICBSZXNvbHZlRW5kLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIE5hdmlnYXRpb25FbmQsXG4gIEV2ZW50XG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBY3Rpb24sIFNlbGVjdG9yLCBTdGF0ZSwgU3RhdGVDb250ZXh0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25BY3Rpb25UaW1pbmcsXG4gIE5neHNSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICDJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TXG59IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4vaW50ZXJuYWxzJztcbmltcG9ydCB7IFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgTmF2aWdhdGUsXG4gIFJvdXRlckFjdGlvbixcbiAgUm91dGVyQ2FuY2VsLFxuICBSb3V0ZXJFcnJvcixcbiAgUm91dGVyTmF2aWdhdGlvbixcbiAgUm91dGVyRGF0YVJlc29sdmVkLFxuICBSb3V0ZXJSZXF1ZXN0LFxuICBSb3V0ZXJOYXZpZ2F0ZWRcbn0gZnJvbSAnLi9yb3V0ZXIuYWN0aW9ucyc7XG5pbXBvcnQgeyBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXIgfSBmcm9tICcuL3NlcmlhbGl6ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlclN0YXRlTW9kZWw8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGU/OiBUO1xuICBuYXZpZ2F0aW9uSWQ/OiBudW1iZXI7XG4gIHRyaWdnZXI6IFJvdXRlclRyaWdnZXI7XG59XG5cbmV4cG9ydCB0eXBlIFJvdXRlclRyaWdnZXIgPVxuICB8ICdub25lJ1xuICB8ICdyb3V0ZXInXG4gIHwgJ3N0b3JlJ1xuICAvLyBUaGUgYGRldnRvb2xzYCB0cmlnZ2VyIG1lYW5zIHRoYXQgdGhlIHN0YXRlIGNoYW5nZSBoYXMgYmVlbiB0cmlnZ2VyZWQgYnkgUmVkdXggRGV2VG9vbHMgKGUuZy4gd2hlbiB0aGUgdGltZS10cmF2ZWxpbmcgaXMgdXNlZCkuXG4gIHwgJ2RldnRvb2xzJztcblxuQFN0YXRlPFJvdXRlclN0YXRlTW9kZWw+KHtcbiAgbmFtZTogJ3JvdXRlcicsXG4gIGRlZmF1bHRzOiB7XG4gICAgc3RhdGU6IHVuZGVmaW5lZCxcbiAgICBuYXZpZ2F0aW9uSWQ6IHVuZGVmaW5lZCxcbiAgICB0cmlnZ2VyOiAnbm9uZSdcbiAgfVxufSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSb3V0ZXJTdGF0ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyBuYXZpZ2F0aW9uIHdhcyBwZXJmb3JtZWQgYnkgdGhlIGBSb3V0ZXJTdGF0ZWAgaXRzZWxmXG4gICAqIG9yIG91dHNpZGUgdmlhIGBuZXcgTmF2aWdhdGUoLi4uKWBcbiAgICovXG4gIHByaXZhdGUgX3RyaWdnZXI6IFJvdXRlclRyaWdnZXIgPSAnbm9uZSc7XG5cbiAgLyoqXG4gICAqIFRoYXQncyB0aGUgc2VyaWFsaXplZCBzdGF0ZSBmcm9tIHRoZSBgUm91dGVyYCBjbGFzc1xuICAgKi9cbiAgcHJpdmF0ZSBfcm91dGVyU3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhhdCdzIHRoZSB2YWx1ZSBvZiB0aGUgYFJvdXRlclN0YXRlYCBzdGF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfc3RvcmVTdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2xhc3RFdmVudDogRXZlbnQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9vcHRpb25zOiBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFJlcGxheVN1YmplY3Q8dm9pZD4oMSk7XG5cbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIHN0YXRlPFQgPSBSb3V0ZXJTdGF0ZVNuYXBzaG90PihzdGF0ZTogUm91dGVyU3RhdGVNb2RlbDxUPikge1xuICAgIHJldHVybiBzdGF0ZSAmJiBzdGF0ZS5zdGF0ZTtcbiAgfVxuXG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyB1cmwoc3RhdGU6IFJvdXRlclN0YXRlTW9kZWwpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBzdGF0ZSAmJiBzdGF0ZS5zdGF0ZSAmJiBzdGF0ZS5zdGF0ZS51cmw7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9zdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBfc2VyaWFsaXplcjogUm91dGVyU3RhdGVTZXJpYWxpemVyPFJvdXRlclN0YXRlU25hcHNob3Q+LFxuICAgIHByaXZhdGUgX25nWm9uZTogTmdab25lLFxuICAgIGluamVjdG9yOiBJbmplY3RvclxuICApIHtcbiAgICAvLyBOb3RlOiBkbyBub3QgdXNlIGBASW5qZWN0YCBzaW5jZSBpdCBmYWlscyBvbiBsb3dlciB2ZXJzaW9ucyBvZiBBbmd1bGFyIHdpdGggSmVzdFxuICAgIC8vIGludGVncmF0aW9uLCBpdCBjYW5ub3QgcmVzb2x2ZSB0aGUgdG9rZW4gcHJvdmlkZXIuXG4gICAgdGhpcy5fb3B0aW9ucyA9IGluamVjdG9yLmdldCjJtU5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLCBudWxsKTtcbiAgICB0aGlzLl9zZXRVcFN0b3JlTGlzdGVuZXIoKTtcbiAgICB0aGlzLl9zZXRVcFJvdXRlckV2ZW50c0xpc3RlbmVyKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBAQWN0aW9uKE5hdmlnYXRlKVxuICBuYXZpZ2F0ZShfOiBTdGF0ZUNvbnRleHQ8Um91dGVyU3RhdGVNb2RlbD4sIGFjdGlvbjogTmF2aWdhdGUpIHtcbiAgICByZXR1cm4gdGhpcy5fbmdab25lLnJ1bigoKSA9PlxuICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKGFjdGlvbi5wYXRoLCB7XG4gICAgICAgIHF1ZXJ5UGFyYW1zOiBhY3Rpb24ucXVlcnlQYXJhbXMsXG4gICAgICAgIC4uLmFjdGlvbi5leHRyYXNcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIEBBY3Rpb24oW1xuICAgIFJvdXRlclJlcXVlc3QsXG4gICAgUm91dGVyTmF2aWdhdGlvbixcbiAgICBSb3V0ZXJFcnJvcixcbiAgICBSb3V0ZXJDYW5jZWwsXG4gICAgUm91dGVyRGF0YVJlc29sdmVkLFxuICAgIFJvdXRlck5hdmlnYXRlZFxuICBdKVxuICBhbmd1bGFyUm91dGVyQWN0aW9uKFxuICAgIGN0eDogU3RhdGVDb250ZXh0PFJvdXRlclN0YXRlTW9kZWw+LFxuICAgIGFjdGlvbjogUm91dGVyQWN0aW9uPFJvdXRlclN0YXRlTW9kZWwsIFJvdXRlclN0YXRlU25hcHNob3Q+XG4gICk6IHZvaWQge1xuICAgIGN0eC5zZXRTdGF0ZSh7XG4gICAgICB0cmlnZ2VyOiBhY3Rpb24udHJpZ2dlcixcbiAgICAgIHN0YXRlOiBhY3Rpb24ucm91dGVyU3RhdGUsXG4gICAgICBuYXZpZ2F0aW9uSWQ6IGFjdGlvbi5ldmVudC5pZFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0VXBTdG9yZUxpc3RlbmVyKCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlclN0YXRlJCA9IHRoaXMuX3N0b3JlLnNlbGVjdChSb3V0ZXJTdGF0ZSkucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKTtcbiAgICByb3V0ZXJTdGF0ZSQuc3Vic2NyaWJlKChzdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgdGhpcy5fbmF2aWdhdGVJZk5lZWRlZChzdGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9uYXZpZ2F0ZUlmTmVlZGVkKHJvdXRlclN0YXRlOiBSb3V0ZXJTdGF0ZU1vZGVsIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKHJvdXRlclN0YXRlICYmIHJvdXRlclN0YXRlLnRyaWdnZXIgPT09ICdkZXZ0b29scycpIHtcbiAgICAgIHRoaXMuX3N0b3JlU3RhdGUgPSB0aGlzLl9zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2FuU2tpcE5hdmlnYXRpb24gPVxuICAgICAgIXRoaXMuX3N0b3JlU3RhdGUgfHxcbiAgICAgICF0aGlzLl9zdG9yZVN0YXRlLnN0YXRlIHx8XG4gICAgICAhcm91dGVyU3RhdGUgfHxcbiAgICAgIHJvdXRlclN0YXRlLnRyaWdnZXIgPT09ICdyb3V0ZXInIHx8XG4gICAgICB0aGlzLl9yb3V0ZXIudXJsID09PSB0aGlzLl9zdG9yZVN0YXRlLnN0YXRlLnVybCB8fFxuICAgICAgdGhpcy5fbGFzdEV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0O1xuXG4gICAgaWYgKGNhblNraXBOYXZpZ2F0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RvcmVTdGF0ZSA9IHRoaXMuX3N0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKTtcbiAgICB0aGlzLl90cmlnZ2VyID0gJ3N0b3JlJztcbiAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMuX3N0b3JlU3RhdGUhLnN0YXRlIS51cmwpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldFVwUm91dGVyRXZlbnRzTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgY29uc3QgZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uTGF0ZSA9XG4gICAgICB0aGlzLl9vcHRpb25zICE9IG51bGwgJiZcbiAgICAgIHRoaXMuX29wdGlvbnMubmF2aWdhdGlvbkFjdGlvblRpbWluZyA9PT0gTmF2aWdhdGlvbkFjdGlvblRpbWluZy5Qb3N0QWN0aXZhdGlvbjtcblxuICAgIGxldCBsYXN0Um91dGVzUmVjb2duaXplZDogUm91dGVzUmVjb2duaXplZDtcblxuICAgIGNvbnN0IGV2ZW50cyQgPSB0aGlzLl9yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSk7XG4gICAgZXZlbnRzJC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgdGhpcy5fbGFzdEV2ZW50ID0gZXZlbnQ7XG5cbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uU3RhcnQoZXZlbnQpO1xuICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIFJvdXRlc1JlY29nbml6ZWQpIHtcbiAgICAgICAgbGFzdFJvdXRlc1JlY29nbml6ZWQgPSBldmVudDtcbiAgICAgICAgaWYgKCFkaXNwYXRjaFJvdXRlck5hdmlnYXRpb25MYXRlICYmIHRoaXMuX3RyaWdnZXIgIT09ICdzdG9yZScpIHtcbiAgICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlck5hdmlnYXRpb24obGFzdFJvdXRlc1JlY29nbml6ZWQpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgUmVzb2x2ZUVuZCkge1xuICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckRhdGFSZXNvbHZlZChldmVudCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkNhbmNlbCkge1xuICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckNhbmNlbChldmVudCk7XG4gICAgICAgIHRoaXMuX3Jlc2V0KCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yKSB7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyRXJyb3IoZXZlbnQpO1xuICAgICAgICB0aGlzLl9yZXNldCgpO1xuICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgaWYgKHRoaXMuX3RyaWdnZXIgIT09ICdzdG9yZScpIHtcbiAgICAgICAgICBpZiAoZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uTGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uKGxhc3RSb3V0ZXNSZWNvZ25pemVkKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0ZWQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3Jlc2V0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBOYXZpZ2F0aW9uU3RhcnRgLiAqL1xuICBwcml2YXRlIF9uYXZpZ2F0aW9uU3RhcnQoZXZlbnQ6IE5hdmlnYXRpb25TdGFydCk6IHZvaWQge1xuICAgIHRoaXMuX3JvdXRlclN0YXRlID0gdGhpcy5fc2VyaWFsaXplci5zZXJpYWxpemUodGhpcy5fcm91dGVyLnJvdXRlclN0YXRlLnNuYXBzaG90KTtcblxuICAgIGlmICh0aGlzLl90cmlnZ2VyICE9PSAnbm9uZScpIHtcbiAgICAgIHRoaXMuX3N0b3JlU3RhdGUgPSB0aGlzLl9zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSk7XG4gICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihuZXcgUm91dGVyUmVxdWVzdCh0aGlzLl9yb3V0ZXJTdGF0ZSwgZXZlbnQsIHRoaXMuX3RyaWdnZXIpKTtcbiAgICB9XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBSZXNvbHZlRW5kYC4gKi9cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJEYXRhUmVzb2x2ZWQoZXZlbnQ6IFJlc29sdmVFbmQpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZXJTdGF0ZSA9IHRoaXMuX3NlcmlhbGl6ZXIuc2VyaWFsaXplKGV2ZW50LnN0YXRlKTtcbiAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihuZXcgUm91dGVyRGF0YVJlc29sdmVkKHJvdXRlclN0YXRlLCBldmVudCwgdGhpcy5fdHJpZ2dlcikpO1xuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgUm91dGVzUmVjb2duaXplZGAgb3IgYE5hdmlnYXRpb25FbmRgLCBkZXBlbmRzIG9uIHRoZSBgbmF2aWdhdGlvbkFjdGlvblRpbWluZ2AuICovXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyTmF2aWdhdGlvbihsYXN0Um91dGVzUmVjb2duaXplZDogUm91dGVzUmVjb2duaXplZCk6IHZvaWQge1xuICAgIGNvbnN0IG5leHRSb3V0ZXJTdGF0ZSA9IHRoaXMuX3NlcmlhbGl6ZXIuc2VyaWFsaXplKGxhc3RSb3V0ZXNSZWNvZ25pemVkLnN0YXRlKTtcblxuICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKFxuICAgICAgbmV3IFJvdXRlck5hdmlnYXRpb24oXG4gICAgICAgIG5leHRSb3V0ZXJTdGF0ZSxcbiAgICAgICAgbmV3IFJvdXRlc1JlY29nbml6ZWQoXG4gICAgICAgICAgbGFzdFJvdXRlc1JlY29nbml6ZWQuaWQsXG4gICAgICAgICAgbGFzdFJvdXRlc1JlY29nbml6ZWQudXJsLFxuICAgICAgICAgIGxhc3RSb3V0ZXNSZWNvZ25pemVkLnVybEFmdGVyUmVkaXJlY3RzLFxuICAgICAgICAgIG5leHRSb3V0ZXJTdGF0ZVxuICAgICAgICApLFxuICAgICAgICB0aGlzLl90cmlnZ2VyXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYE5hdmlnYXRpb25DYW5jZWxgLiAqL1xuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlckNhbmNlbChldmVudDogTmF2aWdhdGlvbkNhbmNlbCk6IHZvaWQge1xuICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKFxuICAgICAgbmV3IFJvdXRlckNhbmNlbCh0aGlzLl9yb3V0ZXJTdGF0ZSEsIHRoaXMuX3N0b3JlU3RhdGUsIGV2ZW50LCB0aGlzLl90cmlnZ2VyKVxuICAgICk7XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBOYXZpZ2F0aW9uRW5kYC4gKi9cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJFcnJvcihldmVudDogTmF2aWdhdGlvbkVycm9yKTogdm9pZCB7XG4gICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24oXG4gICAgICBuZXcgUm91dGVyRXJyb3IoXG4gICAgICAgIHRoaXMuX3JvdXRlclN0YXRlISxcbiAgICAgICAgdGhpcy5fc3RvcmVTdGF0ZSxcbiAgICAgICAgbmV3IE5hdmlnYXRpb25FcnJvcihldmVudC5pZCwgZXZlbnQudXJsLCBgJHtldmVudH1gKSxcbiAgICAgICAgdGhpcy5fdHJpZ2dlclxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBOYXZpZ2F0aW9uRW5kYC4gKi9cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0ZWQoZXZlbnQ6IE5hdmlnYXRpb25FbmQpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZXJTdGF0ZSA9IHRoaXMuX3NlcmlhbGl6ZXIuc2VyaWFsaXplKHRoaXMuX3JvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdCk7XG4gICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24obmV3IFJvdXRlck5hdmlnYXRlZChyb3V0ZXJTdGF0ZSwgZXZlbnQsIHRoaXMuX3RyaWdnZXIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyQWN0aW9uPFQ+KGFjdGlvbjogUm91dGVyQWN0aW9uPFQ+KTogdm9pZCB7XG4gICAgdGhpcy5fdHJpZ2dlciA9ICdyb3V0ZXInO1xuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuX3N0b3JlLmRpc3BhdGNoKGFjdGlvbik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuX3RyaWdnZXIgPSAnbm9uZSc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdHJpZ2dlciA9ICdub25lJztcbiAgICB0aGlzLl9zdG9yZVN0YXRlID0gbnVsbDtcbiAgICB0aGlzLl9yb3V0ZXJTdGF0ZSA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { NgZone, Injector, Injectable, NgModule, makeEnvironmentProviders } from '@angular/core';
3
3
  import * as i1 from '@ngxs/store';
4
4
  import { Action, Selector, State, Store, NgxsModule, provideStates } from '@ngxs/store';
5
- import { ɵNGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS, ɵcreateRouterPluginOptions } from '@ngxs/router-plugin/internals';
5
+ import { ɵNGXS_ROUTER_PLUGIN_OPTIONS as _NGXS_ROUTER_PLUGIN_OPTIONS, ɵUSER_OPTIONS as _USER_OPTIONS, ɵcreateRouterPluginOptions as _createRouterPluginOptions } from '@ngxs/router-plugin/internals';
6
6
  import { __decorate, __metadata } from 'tslib';
7
7
  import * as i2 from '@angular/router';
8
8
  import { NavigationStart, RoutesRecognized, ResolveEnd, NavigationCancel, NavigationError, NavigationEnd, Router } from '@angular/router';
@@ -13,13 +13,13 @@ import { takeUntil } from 'rxjs/operators';
13
13
  * Public event api of the router
14
14
  */
15
15
  class Navigate {
16
+ static { this.type = '[Router] Navigate'; }
16
17
  constructor(path, queryParams, extras) {
17
18
  this.path = path;
18
19
  this.queryParams = queryParams;
19
20
  this.extras = extras;
20
21
  }
21
22
  }
22
- Navigate.type = '[Router] Navigate';
23
23
  /**
24
24
  *
25
25
  * Angular Routers internal state events
@@ -29,28 +29,29 @@ Navigate.type = '[Router] Navigate';
29
29
  * An action dispatched when the router starts the navigation.
30
30
  */
31
31
  class RouterRequest {
32
+ static { this.type = '[Router] RouterRequest'; }
32
33
  constructor(routerState, event, trigger = 'none') {
33
34
  this.routerState = routerState;
34
35
  this.event = event;
35
36
  this.trigger = trigger;
36
37
  }
37
38
  }
38
- RouterRequest.type = '[Router] RouterRequest';
39
39
  /**
40
40
  * An action dispatched when the router navigates.
41
41
  */
42
42
  class RouterNavigation {
43
+ static { this.type = '[Router] RouterNavigation'; }
43
44
  constructor(routerState, event, trigger = 'none') {
44
45
  this.routerState = routerState;
45
46
  this.event = event;
46
47
  this.trigger = trigger;
47
48
  }
48
49
  }
49
- RouterNavigation.type = '[Router] RouterNavigation';
50
50
  /**
51
51
  * An action dispatched when the router cancel navigation.
52
52
  */
53
53
  class RouterCancel {
54
+ static { this.type = '[Router] RouterCancel'; }
54
55
  constructor(routerState, storeState, event, trigger = 'none') {
55
56
  this.routerState = routerState;
56
57
  this.storeState = storeState;
@@ -58,11 +59,11 @@ class RouterCancel {
58
59
  this.trigger = trigger;
59
60
  }
60
61
  }
61
- RouterCancel.type = '[Router] RouterCancel';
62
62
  /**
63
63
  * An action dispatched when the router errors.
64
64
  */
65
65
  class RouterError {
66
+ static { this.type = '[Router] RouterError'; }
66
67
  constructor(routerState, storeState, event, trigger = 'none') {
67
68
  this.routerState = routerState;
68
69
  this.storeState = storeState;
@@ -70,29 +71,28 @@ class RouterError {
70
71
  this.trigger = trigger;
71
72
  }
72
73
  }
73
- RouterError.type = '[Router] RouterError';
74
74
  /**
75
75
  * An action dispatched when the `ResolveEnd` event is triggered.
76
76
  */
77
77
  class RouterDataResolved {
78
+ static { this.type = '[Router] RouterDataResolved'; }
78
79
  constructor(routerState, event, trigger = 'none') {
79
80
  this.routerState = routerState;
80
81
  this.event = event;
81
82
  this.trigger = trigger;
82
83
  }
83
84
  }
84
- RouterDataResolved.type = '[Router] RouterDataResolved';
85
85
  /**
86
86
  * An action dispatched when the router navigation has been finished successfully.
87
87
  */
88
88
  class RouterNavigated {
89
+ static { this.type = '[Router] RouterNavigated'; }
89
90
  constructor(routerState, event, trigger = 'none') {
90
91
  this.routerState = routerState;
91
92
  this.event = event;
92
93
  this.trigger = trigger;
93
94
  }
94
95
  }
95
- RouterNavigated.type = '[Router] RouterNavigated';
96
96
 
97
97
  class RouterStateSerializer {
98
98
  }
@@ -128,7 +128,14 @@ class DefaultRouterStateSerializer {
128
128
  }
129
129
 
130
130
  var RouterState_1;
131
- let RouterState = RouterState_1 = class RouterState {
131
+ let RouterState = class RouterState {
132
+ static { RouterState_1 = this; }
133
+ static state(state) {
134
+ return state && state.state;
135
+ }
136
+ static url(state) {
137
+ return state && state.state && state.state.url;
138
+ }
132
139
  constructor(_store, _router, _serializer, _ngZone, injector) {
133
140
  this._store = _store;
134
141
  this._router = _router;
@@ -152,16 +159,10 @@ let RouterState = RouterState_1 = class RouterState {
152
159
  this._destroy$ = new ReplaySubject(1);
153
160
  // Note: do not use `@Inject` since it fails on lower versions of Angular with Jest
154
161
  // integration, it cannot resolve the token provider.
155
- this._options = injector.get(ɵNGXS_ROUTER_PLUGIN_OPTIONS, null);
162
+ this._options = injector.get(_NGXS_ROUTER_PLUGIN_OPTIONS, null);
156
163
  this._setUpStoreListener();
157
164
  this._setUpRouterEventsListener();
158
165
  }
159
- static state(state) {
160
- return state && state.state;
161
- }
162
- static url(state) {
163
- return state && state.state && state.state.url;
164
- }
165
166
  ngOnDestroy() {
166
167
  this._destroy$.next();
167
168
  }
@@ -284,9 +285,9 @@ let RouterState = RouterState_1 = class RouterState {
284
285
  this._storeState = null;
285
286
  this._routerState = null;
286
287
  }
288
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RouterState, deps: [{ token: i1.Store }, { token: i2.Router }, { token: RouterStateSerializer }, { token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
289
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RouterState }); }
287
290
  };
288
- /** @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 });
289
- /** @nocollapse */ RouterState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState });
290
291
  __decorate([
291
292
  Action(Navigate),
292
293
  __metadata("design:type", Function),
@@ -333,30 +334,30 @@ RouterState = RouterState_1 = __decorate([
333
334
  NgZone,
334
335
  Injector])
335
336
  ], RouterState);
336
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RouterState, decorators: [{
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: RouterState, decorators: [{
337
338
  type: Injectable
338
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.Router }, { type: RouterStateSerializer }, { type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { navigate: [], angularRouterAction: [] } });
339
+ }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: RouterStateSerializer }, { type: i0.NgZone }, { type: i0.Injector }], propDecorators: { navigate: [], angularRouterAction: [] } });
339
340
 
340
341
  class NgxsRouterPluginModule {
341
342
  static forRoot(options) {
342
343
  return {
343
344
  ngModule: NgxsRouterPluginModule,
344
345
  providers: [
345
- { provide: ɵUSER_OPTIONS, useValue: options },
346
+ { provide: _USER_OPTIONS, useValue: options },
346
347
  {
347
- provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,
348
- useFactory: ɵcreateRouterPluginOptions,
349
- deps: [ɵUSER_OPTIONS]
348
+ provide: _NGXS_ROUTER_PLUGIN_OPTIONS,
349
+ useFactory: _createRouterPluginOptions,
350
+ deps: [_USER_OPTIONS]
350
351
  },
351
352
  { provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
352
353
  ]
353
354
  };
354
355
  }
356
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
357
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, imports: [i1.ɵNgxsFeatureModule] }); }
358
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, imports: [NgxsModule.forFeature([RouterState])] }); }
355
359
  }
356
- /** @nocollapse */ NgxsRouterPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
357
- /** @nocollapse */ NgxsRouterPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [i1.ɵNgxsFeatureModule] });
358
- /** @nocollapse */ NgxsRouterPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, imports: [NgxsModule.forFeature([RouterState])] });
359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsRouterPluginModule, decorators: [{
360
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: NgxsRouterPluginModule, decorators: [{
360
361
  type: NgModule,
361
362
  args: [{
362
363
  imports: [NgxsModule.forFeature([RouterState])]
@@ -365,11 +366,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
365
366
  function withNgxsRouterPlugin(options) {
366
367
  return makeEnvironmentProviders([
367
368
  provideStates([RouterState]),
368
- { provide: ɵUSER_OPTIONS, useValue: options },
369
+ { provide: _USER_OPTIONS, useValue: options },
369
370
  {
370
- provide: ɵNGXS_ROUTER_PLUGIN_OPTIONS,
371
- useFactory: ɵcreateRouterPluginOptions,
372
- deps: [ɵUSER_OPTIONS]
371
+ provide: _NGXS_ROUTER_PLUGIN_OPTIONS,
372
+ useFactory: _createRouterPluginOptions,
373
+ deps: [_USER_OPTIONS]
373
374
  },
374
375
  { provide: RouterStateSerializer, useClass: DefaultRouterStateSerializer }
375
376
  ]);