@ngxs/router-plugin 3.7.6-dev.master-fb318b1 → 3.7.6-dev.master-dcdd391

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,496 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import * as tslib_1 from "tslib";
6
- import { NgZone, Injectable, OnDestroy, Injector } from '@angular/core';
7
- import { NavigationCancel, NavigationError, Router, RouterStateSnapshot, RoutesRecognized, ResolveEnd, NavigationStart, NavigationEnd, Event } from '@angular/router';
8
- import { Action, Selector, State, StateContext, Store } from '@ngxs/store';
9
- import { Subscription } from 'rxjs';
10
- import { Navigate, RouterCancel, RouterError, RouterNavigation, RouterDataResolved, RouterRequest, RouterNavigated } from './router.actions';
11
- import { RouterStateSerializer } from './serializer';
12
- import { NGXS_ROUTER_PLUGIN_OPTIONS } from './symbols';
13
- /**
14
- * @record
15
- * @template T
16
- */
17
- export function RouterStateModel() { }
18
- if (false) {
19
- /** @type {?|undefined} */
20
- RouterStateModel.prototype.state;
21
- /** @type {?|undefined} */
22
- RouterStateModel.prototype.navigationId;
23
- /** @type {?} */
24
- RouterStateModel.prototype.trigger;
25
- }
26
- var RouterState = /** @class */ (function () {
27
- function RouterState(_store, _router, _serializer, _ngZone, injector) {
28
- this._store = _store;
29
- this._router = _router;
30
- this._serializer = _serializer;
31
- this._ngZone = _ngZone;
32
- /**
33
- * Determines how navigation was performed by the `RouterState` itself
34
- * or outside via `new Navigate(...)`
35
- */
36
- this._trigger = 'none';
37
- /**
38
- * That's the serialized state from the `Router` class
39
- */
40
- this._routerState = null;
41
- /**
42
- * That's the value of the `RouterState` state
43
- */
44
- this._storeState = null;
45
- this._lastEvent = null;
46
- this._subscription = new Subscription();
47
- this._options = null;
48
- // Note: do not use `@Inject` since it fails on lower versions of Angular with Jest
49
- // integration, it cannot resolve the token provider.
50
- this._options = injector.get(NGXS_ROUTER_PLUGIN_OPTIONS, null);
51
- this._setUpStoreListener();
52
- this._setUpRouterEventsListener();
53
- }
54
- RouterState_1 = RouterState;
55
- /**
56
- * @template T
57
- * @param {?} state
58
- * @return {?}
59
- */
60
- RouterState.state = /**
61
- * @template T
62
- * @param {?} state
63
- * @return {?}
64
- */
65
- function (state) {
66
- return state && state.state;
67
- };
68
- /**
69
- * @param {?} state
70
- * @return {?}
71
- */
72
- RouterState.url = /**
73
- * @param {?} state
74
- * @return {?}
75
- */
76
- function (state) {
77
- return state && state.state && state.state.url;
78
- };
79
- /**
80
- * @return {?}
81
- */
82
- RouterState.prototype.ngOnDestroy = /**
83
- * @return {?}
84
- */
85
- function () {
86
- this._subscription.unsubscribe();
87
- };
88
- /**
89
- * @param {?} _
90
- * @param {?} action
91
- * @return {?}
92
- */
93
- RouterState.prototype.navigate = /**
94
- * @param {?} _
95
- * @param {?} action
96
- * @return {?}
97
- */
98
- function (_, action) {
99
- var _this = this;
100
- return this._ngZone.run((/**
101
- * @return {?}
102
- */
103
- function () {
104
- return _this._router.navigate(action.path, tslib_1.__assign({ queryParams: action.queryParams }, action.extras));
105
- }));
106
- };
107
- /**
108
- * @param {?} ctx
109
- * @param {?} action
110
- * @return {?}
111
- */
112
- RouterState.prototype.angularRouterAction = /**
113
- * @param {?} ctx
114
- * @param {?} action
115
- * @return {?}
116
- */
117
- function (ctx, action) {
118
- ctx.setState({
119
- trigger: action.trigger,
120
- state: action.routerState,
121
- navigationId: action.event.id
122
- });
123
- };
124
- /**
125
- * @private
126
- * @return {?}
127
- */
128
- RouterState.prototype._setUpStoreListener = /**
129
- * @private
130
- * @return {?}
131
- */
132
- function () {
133
- var _this = this;
134
- /** @type {?} */
135
- var subscription = this._store
136
- .select(RouterState_1)
137
- .subscribe((/**
138
- * @param {?} state
139
- * @return {?}
140
- */
141
- function (state) {
142
- _this._navigateIfNeeded(state);
143
- }));
144
- this._subscription.add(subscription);
145
- };
146
- /**
147
- * @private
148
- * @param {?} routerState
149
- * @return {?}
150
- */
151
- RouterState.prototype._navigateIfNeeded = /**
152
- * @private
153
- * @param {?} routerState
154
- * @return {?}
155
- */
156
- function (routerState) {
157
- var _this = this;
158
- if (routerState && routerState.trigger === 'devtools') {
159
- this._storeState = this._store.selectSnapshot(RouterState_1);
160
- }
161
- /** @type {?} */
162
- var canSkipNavigation = !this._storeState ||
163
- !this._storeState.state ||
164
- !routerState ||
165
- routerState.trigger === 'router' ||
166
- this._router.url === this._storeState.state.url ||
167
- this._lastEvent instanceof NavigationStart;
168
- if (canSkipNavigation) {
169
- return;
170
- }
171
- this._storeState = this._store.selectSnapshot(RouterState_1);
172
- this._trigger = 'store';
173
- this._ngZone.run((/**
174
- * @return {?}
175
- */
176
- function () { return _this._router.navigateByUrl((/** @type {?} */ ((/** @type {?} */ (_this._storeState)).state)).url); }));
177
- };
178
- /**
179
- * @private
180
- * @return {?}
181
- */
182
- RouterState.prototype._setUpRouterEventsListener = /**
183
- * @private
184
- * @return {?}
185
- */
186
- function () {
187
- var _this = this;
188
- /** @type {?} */
189
- var dispatchRouterNavigationLate = this._options != null &&
190
- this._options.navigationActionTiming === 2 /* PostActivation */;
191
- /** @type {?} */
192
- var lastRoutesRecognized;
193
- /** @type {?} */
194
- var subscription = this._router.events.subscribe((/**
195
- * @param {?} event
196
- * @return {?}
197
- */
198
- function (event) {
199
- _this._lastEvent = event;
200
- if (event instanceof NavigationStart) {
201
- _this._navigationStart(event);
202
- }
203
- else if (event instanceof RoutesRecognized) {
204
- lastRoutesRecognized = event;
205
- if (!dispatchRouterNavigationLate && _this._trigger !== 'store') {
206
- _this._dispatchRouterNavigation(lastRoutesRecognized);
207
- }
208
- }
209
- else if (event instanceof ResolveEnd) {
210
- _this._dispatchRouterDataResolved(event);
211
- }
212
- else if (event instanceof NavigationCancel) {
213
- _this._dispatchRouterCancel(event);
214
- _this._reset();
215
- }
216
- else if (event instanceof NavigationError) {
217
- _this._dispatchRouterError(event);
218
- _this._reset();
219
- }
220
- else if (event instanceof NavigationEnd) {
221
- if (_this._trigger !== 'store') {
222
- if (dispatchRouterNavigationLate) {
223
- _this._dispatchRouterNavigation(lastRoutesRecognized);
224
- }
225
- _this._dispatchRouterNavigated(event);
226
- }
227
- _this._reset();
228
- }
229
- }));
230
- this._subscription.add(subscription);
231
- };
232
- /** Reacts to `NavigationStart`. */
233
- /**
234
- * Reacts to `NavigationStart`.
235
- * @private
236
- * @param {?} event
237
- * @return {?}
238
- */
239
- RouterState.prototype._navigationStart = /**
240
- * Reacts to `NavigationStart`.
241
- * @private
242
- * @param {?} event
243
- * @return {?}
244
- */
245
- function (event) {
246
- this._routerState = this._serializer.serialize(this._router.routerState.snapshot);
247
- if (this._trigger !== 'none') {
248
- this._storeState = this._store.selectSnapshot(RouterState_1);
249
- this._dispatchRouterAction(new RouterRequest(this._routerState, event, this._trigger));
250
- }
251
- };
252
- /** Reacts to `ResolveEnd`. */
253
- /**
254
- * Reacts to `ResolveEnd`.
255
- * @private
256
- * @param {?} event
257
- * @return {?}
258
- */
259
- RouterState.prototype._dispatchRouterDataResolved = /**
260
- * Reacts to `ResolveEnd`.
261
- * @private
262
- * @param {?} event
263
- * @return {?}
264
- */
265
- function (event) {
266
- /** @type {?} */
267
- var routerState = this._serializer.serialize(event.state);
268
- this._dispatchRouterAction(new RouterDataResolved(routerState, event, this._trigger));
269
- };
270
- /** Reacts to `RoutesRecognized` or `NavigationEnd`, depends on the `navigationActionTiming`. */
271
- /**
272
- * Reacts to `RoutesRecognized` or `NavigationEnd`, depends on the `navigationActionTiming`.
273
- * @private
274
- * @param {?} lastRoutesRecognized
275
- * @return {?}
276
- */
277
- RouterState.prototype._dispatchRouterNavigation = /**
278
- * Reacts to `RoutesRecognized` or `NavigationEnd`, depends on the `navigationActionTiming`.
279
- * @private
280
- * @param {?} lastRoutesRecognized
281
- * @return {?}
282
- */
283
- function (lastRoutesRecognized) {
284
- /** @type {?} */
285
- var nextRouterState = this._serializer.serialize(lastRoutesRecognized.state);
286
- this._dispatchRouterAction(new RouterNavigation(nextRouterState, new RoutesRecognized(lastRoutesRecognized.id, lastRoutesRecognized.url, lastRoutesRecognized.urlAfterRedirects, nextRouterState), this._trigger));
287
- };
288
- /** Reacts to `NavigationCancel`. */
289
- /**
290
- * Reacts to `NavigationCancel`.
291
- * @private
292
- * @param {?} event
293
- * @return {?}
294
- */
295
- RouterState.prototype._dispatchRouterCancel = /**
296
- * Reacts to `NavigationCancel`.
297
- * @private
298
- * @param {?} event
299
- * @return {?}
300
- */
301
- function (event) {
302
- this._dispatchRouterAction(new RouterCancel((/** @type {?} */ (this._routerState)), this._storeState, event, this._trigger));
303
- };
304
- /** Reacts to `NavigationEnd`. */
305
- /**
306
- * Reacts to `NavigationEnd`.
307
- * @private
308
- * @param {?} event
309
- * @return {?}
310
- */
311
- RouterState.prototype._dispatchRouterError = /**
312
- * Reacts to `NavigationEnd`.
313
- * @private
314
- * @param {?} event
315
- * @return {?}
316
- */
317
- function (event) {
318
- this._dispatchRouterAction(new RouterError((/** @type {?} */ (this._routerState)), this._storeState, new NavigationError(event.id, event.url, "" + event), this._trigger));
319
- };
320
- /** Reacts to `NavigationEnd`. */
321
- /**
322
- * Reacts to `NavigationEnd`.
323
- * @private
324
- * @param {?} event
325
- * @return {?}
326
- */
327
- RouterState.prototype._dispatchRouterNavigated = /**
328
- * Reacts to `NavigationEnd`.
329
- * @private
330
- * @param {?} event
331
- * @return {?}
332
- */
333
- function (event) {
334
- /** @type {?} */
335
- var routerState = this._serializer.serialize(this._router.routerState.snapshot);
336
- this._dispatchRouterAction(new RouterNavigated(routerState, event, this._trigger));
337
- };
338
- /**
339
- * @private
340
- * @template T
341
- * @param {?} action
342
- * @return {?}
343
- */
344
- RouterState.prototype._dispatchRouterAction = /**
345
- * @private
346
- * @template T
347
- * @param {?} action
348
- * @return {?}
349
- */
350
- function (action) {
351
- this._trigger = 'router';
352
- try {
353
- this._store.dispatch(action);
354
- }
355
- finally {
356
- this._trigger = 'none';
357
- }
358
- };
359
- /**
360
- * @private
361
- * @return {?}
362
- */
363
- RouterState.prototype._reset = /**
364
- * @private
365
- * @return {?}
366
- */
367
- function () {
368
- this._trigger = 'none';
369
- this._storeState = null;
370
- this._routerState = null;
371
- };
372
- var RouterState_1;
373
- RouterState.ctorParameters = function () { return [
374
- { type: Store },
375
- { type: Router },
376
- { type: RouterStateSerializer },
377
- { type: NgZone },
378
- { type: Injector }
379
- ]; };
380
- RouterState.decorators = [
381
- { type: Injectable }
382
- ];
383
- /** @nocollapse */
384
- RouterState.ctorParameters = function () { return [
385
- { type: Store },
386
- { type: Router },
387
- { type: RouterStateSerializer },
388
- { type: NgZone },
389
- { type: Injector }
390
- ]; };
391
- tslib_1.__decorate([
392
- Action(Navigate),
393
- tslib_1.__metadata("design:type", Function),
394
- tslib_1.__metadata("design:paramtypes", [Object, Navigate]),
395
- tslib_1.__metadata("design:returntype", void 0)
396
- ], RouterState.prototype, "navigate", null);
397
- tslib_1.__decorate([
398
- Action([
399
- RouterRequest,
400
- RouterNavigation,
401
- RouterError,
402
- RouterCancel,
403
- RouterDataResolved,
404
- RouterNavigated
405
- ]),
406
- tslib_1.__metadata("design:type", Function),
407
- tslib_1.__metadata("design:paramtypes", [Object, Object]),
408
- tslib_1.__metadata("design:returntype", void 0)
409
- ], RouterState.prototype, "angularRouterAction", null);
410
- tslib_1.__decorate([
411
- Selector(),
412
- tslib_1.__metadata("design:type", Function),
413
- tslib_1.__metadata("design:paramtypes", [Object]),
414
- tslib_1.__metadata("design:returntype", void 0)
415
- ], RouterState, "state", null);
416
- tslib_1.__decorate([
417
- Selector(),
418
- tslib_1.__metadata("design:type", Function),
419
- tslib_1.__metadata("design:paramtypes", [Object]),
420
- tslib_1.__metadata("design:returntype", Object)
421
- ], RouterState, "url", null);
422
- RouterState = RouterState_1 = tslib_1.__decorate([
423
- State({
424
- name: 'router',
425
- defaults: {
426
- state: undefined,
427
- navigationId: undefined,
428
- trigger: 'none'
429
- }
430
- }),
431
- tslib_1.__metadata("design:paramtypes", [Store,
432
- Router,
433
- RouterStateSerializer,
434
- NgZone,
435
- Injector])
436
- ], RouterState);
437
- return RouterState;
438
- }());
439
- export { RouterState };
440
- if (false) {
441
- /**
442
- * Determines how navigation was performed by the `RouterState` itself
443
- * or outside via `new Navigate(...)`
444
- * @type {?}
445
- * @private
446
- */
447
- RouterState.prototype._trigger;
448
- /**
449
- * That's the serialized state from the `Router` class
450
- * @type {?}
451
- * @private
452
- */
453
- RouterState.prototype._routerState;
454
- /**
455
- * That's the value of the `RouterState` state
456
- * @type {?}
457
- * @private
458
- */
459
- RouterState.prototype._storeState;
460
- /**
461
- * @type {?}
462
- * @private
463
- */
464
- RouterState.prototype._lastEvent;
465
- /**
466
- * @type {?}
467
- * @private
468
- */
469
- RouterState.prototype._subscription;
470
- /**
471
- * @type {?}
472
- * @private
473
- */
474
- RouterState.prototype._options;
475
- /**
476
- * @type {?}
477
- * @private
478
- */
479
- RouterState.prototype._store;
480
- /**
481
- * @type {?}
482
- * @private
483
- */
484
- RouterState.prototype._router;
485
- /**
486
- * @type {?}
487
- * @private
488
- */
489
- RouterState.prototype._serializer;
490
- /**
491
- * @type {?}
492
- * @private
493
- */
494
- RouterState.prototype._ngZone;
495
- }
496
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvcm91dGVyLXBsdWdpbi8iLCJzb3VyY2VzIjpbInNyYy9yb3V0ZXIuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLE1BQU0sRUFDTixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixlQUFlLEVBQ2YsYUFBYSxFQUNiLEtBQUssRUFDTixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUNMLFFBQVEsRUFFUixZQUFZLEVBQ1osV0FBVyxFQUNYLGdCQUFnQixFQUNoQixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUdMLDBCQUEwQixFQUMzQixNQUFNLFdBQVcsQ0FBQzs7Ozs7QUFFbkIsc0NBSUM7OztJQUhDLGlDQUFVOztJQUNWLHdDQUFzQjs7SUFDdEIsbUNBQXVCOzs7SUFvRHZCLHFCQUNVLE1BQWEsRUFDYixPQUFlLEVBQ2YsV0FBdUQsRUFDdkQsT0FBZSxFQUN2QixRQUFrQjtRQUpWLFdBQU0sR0FBTixNQUFNLENBQU87UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQTRDO1FBQ3ZELFlBQU8sR0FBUCxPQUFPLENBQVE7Ozs7O1FBaENqQixhQUFR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QUFnQjtZQUNoQixXQUFXO1lBQ1gsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixlQUFlO1NBQ2hCLENBQUM7Ozs7MERBVUQ7SUF0REQ7UUFEQyxRQUFRLEVBQUU7Ozs7a0NBR1Y7SUFHRDtRQURDLFFBQVEsRUFBRTs7OztnQ0FHVjtJQS9CVSxXQUFXO1FBVHZCLEtBQUssQ0FBbUI7WUFDdkIsSUFBSSxFQUFFLFFBQVE7WUFDZCxRQUFRLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLFlBQVksRUFBRSxTQUFTO2dCQUN2QixPQUFPLEVBQUUsTUFBTTthQUNoQjtTQUNGLENBQUM7aURBb0NrQixLQUFLO1lBQ0osTUFBTTtZQUNGLHFCQUFxQjtZQUN6QixNQUFNO1lBQ2IsUUFBUTtPQXRDVCxXQUFXLENBaU92QjtJQUFELGtCQUFDO0NBQUEsSUFBQTtTQWpPWSxXQUFXOzs7Ozs7OztJQUt0QiwrQkFBeUM7Ozs7OztJQUt6QyxtQ0FBd0Q7Ozs7OztJQUt4RCxrQ0FBb0Q7Ozs7O0lBRXBELGlDQUF3Qzs7Ozs7SUFFeEMsb0NBQTJDOzs7OztJQUUzQywrQkFBd0Q7Ozs7O0lBYXRELDZCQUFxQjs7Ozs7SUFDckIsOEJBQXVCOzs7OztJQUN2QixrQ0FBK0Q7Ozs7O0lBQy9ELDhCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nWm9uZSwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkNhbmNlbCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBSb3V0ZXIsXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXG4gIFJvdXRlc1JlY29nbml6ZWQsXG4gIFJlc29sdmVFbmQsXG4gIE5hdmlnYXRpb25TdGFydCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgRXZlbnRcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFjdGlvbiwgU2VsZWN0b3IsIFN0YXRlLCBTdGF0ZUNvbnRleHQsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIE5hdmlnYXRlLFxuICBSb3V0ZXJBY3Rpb24sXG4gIFJvdXRlckNhbmNlbCxcbiAgUm91dGVyRXJyb3IsXG4gIFJvdXRlck5hdmlnYXRpb24sXG4gIFJvdXRlckRhdGFSZXNvbHZlZCxcbiAgUm91dGVyUmVxdWVzdCxcbiAgUm91dGVyTmF2aWdhdGVkXG59IGZyb20gJy4vcm91dGVyLmFjdGlvbnMnO1xuaW1wb3J0IHsgUm91dGVyU3RhdGVTZXJpYWxpemVyIH0gZnJvbSAnLi9zZXJpYWxpemVyJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25BY3Rpb25UaW1pbmcsXG4gIE5neHNSb3V0ZXJQbHVnaW5PcHRpb25zLFxuICBOR1hTX1JPVVRFUl9QTFVHSU5fT1BUSU9OU1xufSBmcm9tICcuL3N5bWJvbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlclN0YXRlTW9kZWw8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc3RhdGU/OiBUO1xuICBuYXZpZ2F0aW9uSWQ/OiBudW1iZXI7XG4gIHRyaWdnZXI6IFJvdXRlclRyaWdnZXI7XG59XG5cbmV4cG9ydCB0eXBlIFJvdXRlclRyaWdnZXIgPVxuICB8ICdub25lJ1xuICB8ICdyb3V0ZXInXG4gIHwgJ3N0b3JlJ1xuICAvLyBUaGUgYGRldnRvb2xzYCB0cmlnZ2VyIG1lYW5zIHRoYXQgdGhlIHN0YXRlIGNoYW5nZSBoYXMgYmVlbiB0cmlnZ2VyZWQgYnkgUmVkdXggRGV2VG9vbHMgKGUuZy4gd2hlbiB0aGUgdGltZS10cmF2ZWxpbmcgaXMgdXNlZCkuXG4gIHwgJ2RldnRvb2xzJztcblxuQFN0YXRlPFJvdXRlclN0YXRlTW9kZWw+KHtcbiAgbmFtZTogJ3JvdXRlcicsXG4gIGRlZmF1bHRzOiB7XG4gICAgc3RhdGU6IHVuZGVmaW5lZCxcbiAgICBuYXZpZ2F0aW9uSWQ6IHVuZGVmaW5lZCxcbiAgICB0cmlnZ2VyOiAnbm9uZSdcbiAgfVxufSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSb3V0ZXJTdGF0ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyBuYXZpZ2F0aW9uIHdhcyBwZXJmb3JtZWQgYnkgdGhlIGBSb3V0ZXJTdGF0ZWAgaXRzZWxmXG4gICAqIG9yIG91dHNpZGUgdmlhIGBuZXcgTmF2aWdhdGUoLi4uKWBcbiAgICovXG4gIHByaXZhdGUgX3RyaWdnZXI6IFJvdXRlclRyaWdnZXIgPSAnbm9uZSc7XG5cbiAgLyoqXG4gICAqIFRoYXQncyB0aGUgc2VyaWFsaXplZCBzdGF0ZSBmcm9tIHRoZSBgUm91dGVyYCBjbGFzc1xuICAgKi9cbiAgcHJpdmF0ZSBfcm91dGVyU3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhhdCdzIHRoZSB2YWx1ZSBvZiB0aGUgYFJvdXRlclN0YXRlYCBzdGF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfc3RvcmVTdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2xhc3RFdmVudDogRXZlbnQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9zdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHJpdmF0ZSBfb3B0aW9uczogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMgfCBudWxsID0gbnVsbDtcblxuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgc3RhdGU8VCA9IFJvdXRlclN0YXRlU25hcHNob3Q+KHN0YXRlOiBSb3V0ZXJTdGF0ZU1vZGVsPFQ+KSB7XG4gICAgcmV0dXJuIHN0YXRlICYmIHN0YXRlLnN0YXRlO1xuICB9XG5cbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIHVybChzdGF0ZTogUm91dGVyU3RhdGVNb2RlbCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHN0YXRlICYmIHN0YXRlLnN0YXRlICYmIHN0YXRlLnN0YXRlLnVybDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3N0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIF9zZXJpYWxpemVyOiBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXI8Um91dGVyU3RhdGVTbmFwc2hvdD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgaW5qZWN0b3I6IEluamVjdG9yXG4gICkge1xuICAgIC8vIE5vdGU6IGRvIG5vdCB1c2UgYEBJbmplY3RgIHNpbmNlIGl0IGZhaWxzIG9uIGxvd2VyIHZlcnNpb25zIG9mIEFuZ3VsYXIgd2l0aCBKZXN0XG4gICAgLy8gaW50ZWdyYXRpb24sIGl0IGNhbm5vdCByZXNvbHZlIHRoZSB0b2tlbiBwcm92aWRlci5cbiAgICB0aGlzLl9vcHRpb25zID0gaW5qZWN0b3IuZ2V0KE5HWFNfUk9VVEVSX1BMVUdJTl9PUFRJT05TLCBudWxsKTtcbiAgICB0aGlzLl9zZXRVcFN0b3JlTGlzdGVuZXIoKTtcbiAgICB0aGlzLl9zZXRVcFJvdXRlckV2ZW50c0xpc3RlbmVyKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIEBBY3Rpb24oTmF2aWdhdGUpXG4gIG5hdmlnYXRlKF86IFN0YXRlQ29udGV4dDxSb3V0ZXJTdGF0ZU1vZGVsPiwgYWN0aW9uOiBOYXZpZ2F0ZSkge1xuICAgIHJldHVybiB0aGlzLl9uZ1pvbmUucnVuKCgpID0+XG4gICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoYWN0aW9uLnBhdGgsIHtcbiAgICAgICAgcXVlcnlQYXJhbXM6IGFjdGlvbi5xdWVyeVBhcmFtcyxcbiAgICAgICAgLi4uYWN0aW9uLmV4dHJhc1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgQEFjdGlvbihbXG4gICAgUm91dGVyUmVxdWVzdCxcbiAgICBSb3V0ZXJOYXZpZ2F0aW9uLFxuICAgIFJvdXRlckVycm9yLFxuICAgIFJvdXRlckNhbmNlbCxcbiAgICBSb3V0ZXJEYXRhUmVzb2x2ZWQsXG4gICAgUm91dGVyTmF2aWdhdGVkXG4gIF0pXG4gIGFuZ3VsYXJSb3V0ZXJBY3Rpb24oXG4gICAgY3R4OiBTdGF0ZUNvbnRleHQ8Um91dGVyU3RhdGVNb2RlbD4sXG4gICAgYWN0aW9uOiBSb3V0ZXJBY3Rpb248Um91dGVyU3RhdGVNb2RlbCwgUm91dGVyU3RhdGVTbmFwc2hvdD5cbiAgKTogdm9pZCB7XG4gICAgY3R4LnNldFN0YXRlKHtcbiAgICAgIHRyaWdnZXI6IGFjdGlvbi50cmlnZ2VyLFxuICAgICAgc3RhdGU6IGFjdGlvbi5yb3V0ZXJTdGF0ZSxcbiAgICAgIG5hdmlnYXRpb25JZDogYWN0aW9uLmV2ZW50LmlkXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRVcFN0b3JlTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gdGhpcy5fc3RvcmVcbiAgICAgIC5zZWxlY3QoUm91dGVyU3RhdGUpXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICB0aGlzLl9uYXZpZ2F0ZUlmTmVlZGVkKHN0YXRlKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChzdWJzY3JpcHRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmF2aWdhdGVJZk5lZWRlZChyb3V0ZXJTdGF0ZTogUm91dGVyU3RhdGVNb2RlbCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmIChyb3V0ZXJTdGF0ZSAmJiByb3V0ZXJTdGF0ZS50cmlnZ2VyID09PSAnZGV2dG9vbHMnKSB7XG4gICAgICB0aGlzLl9zdG9yZVN0YXRlID0gdGhpcy5fc3RvcmUuc2VsZWN0U25hcHNob3QoUm91dGVyU3RhdGUpO1xuICAgIH1cblxuICAgIGNvbnN0IGNhblNraXBOYXZpZ2F0aW9uID1cbiAgICAgICF0aGlzLl9zdG9yZVN0YXRlIHx8XG4gICAgICAhdGhpcy5fc3RvcmVTdGF0ZS5zdGF0ZSB8fFxuICAgICAgIXJvdXRlclN0YXRlIHx8XG4gICAgICByb3V0ZXJTdGF0ZS50cmlnZ2VyID09PSAncm91dGVyJyB8fFxuICAgICAgdGhpcy5fcm91dGVyLnVybCA9PT0gdGhpcy5fc3RvcmVTdGF0ZS5zdGF0ZS51cmwgfHxcbiAgICAgIHRoaXMuX2xhc3RFdmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydDtcblxuICAgIGlmIChjYW5Ta2lwTmF2aWdhdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3N0b3JlU3RhdGUgPSB0aGlzLl9zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlciA9ICdzdG9yZSc7XG4gICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLl9yb3V0ZXIubmF2aWdhdGVCeVVybCh0aGlzLl9zdG9yZVN0YXRlIS5zdGF0ZSEudXJsKSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRVcFJvdXRlckV2ZW50c0xpc3RlbmVyKCk6IHZvaWQge1xuICAgIGNvbnN0IGRpc3BhdGNoUm91dGVyTmF2aWdhdGlvbkxhdGUgPVxuICAgICAgdGhpcy5fb3B0aW9ucyAhPSBudWxsICYmXG4gICAgICB0aGlzLl9vcHRpb25zLm5hdmlnYXRpb25BY3Rpb25UaW1pbmcgPT09IE5hdmlnYXRpb25BY3Rpb25UaW1pbmcuUG9zdEFjdGl2YXRpb247XG5cbiAgICBsZXQgbGFzdFJvdXRlc1JlY29nbml6ZWQ6IFJvdXRlc1JlY29nbml6ZWQ7XG5cbiAgICBjb25zdCBzdWJzY3JpcHRpb24gPSB0aGlzLl9yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICB0aGlzLl9sYXN0RXZlbnQgPSBldmVudDtcblxuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XG4gICAgICAgIHRoaXMuX25hdmlnYXRpb25TdGFydChldmVudCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgUm91dGVzUmVjb2duaXplZCkge1xuICAgICAgICBsYXN0Um91dGVzUmVjb2duaXplZCA9IGV2ZW50O1xuICAgICAgICBpZiAoIWRpc3BhdGNoUm91dGVyTmF2aWdhdGlvbkxhdGUgJiYgdGhpcy5fdHJpZ2dlciAhPT0gJ3N0b3JlJykge1xuICAgICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyTmF2aWdhdGlvbihsYXN0Um91dGVzUmVjb2duaXplZCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBSZXNvbHZlRW5kKSB7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyRGF0YVJlc29sdmVkKGV2ZW50KTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsKSB7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQ2FuY2VsKGV2ZW50KTtcbiAgICAgICAgdGhpcy5fcmVzZXQoKTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IpIHtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJFcnJvcihldmVudCk7XG4gICAgICAgIHRoaXMuX3Jlc2V0KCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICBpZiAodGhpcy5fdHJpZ2dlciAhPT0gJ3N0b3JlJykge1xuICAgICAgICAgIGlmIChkaXNwYXRjaFJvdXRlck5hdmlnYXRpb25MYXRlKSB7XG4gICAgICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlck5hdmlnYXRpb24obGFzdFJvdXRlc1JlY29nbml6ZWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLl9kaXNwYXRjaFJvdXRlck5hdmlnYXRlZChldmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fcmVzZXQoKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi5hZGQoc3Vic2NyaXB0aW9uKTtcbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYE5hdmlnYXRpb25TdGFydGAuICovXG4gIHByaXZhdGUgX25hdmlnYXRpb25TdGFydChldmVudDogTmF2aWdhdGlvblN0YXJ0KTogdm9pZCB7XG4gICAgdGhpcy5fcm91dGVyU3RhdGUgPSB0aGlzLl9zZXJpYWxpemVyLnNlcmlhbGl6ZSh0aGlzLl9yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QpO1xuXG4gICAgaWYgKHRoaXMuX3RyaWdnZXIgIT09ICdub25lJykge1xuICAgICAgdGhpcy5fc3RvcmVTdGF0ZSA9IHRoaXMuX3N0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKTtcbiAgICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKG5ldyBSb3V0ZXJSZXF1ZXN0KHRoaXMuX3JvdXRlclN0YXRlLCBldmVudCwgdGhpcy5fdHJpZ2dlcikpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYFJlc29sdmVFbmRgLiAqL1xuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlckRhdGFSZXNvbHZlZChldmVudDogUmVzb2x2ZUVuZCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlclN0YXRlID0gdGhpcy5fc2VyaWFsaXplci5zZXJpYWxpemUoZXZlbnQuc3RhdGUpO1xuICAgIHRoaXMuX2Rpc3BhdGNoUm91dGVyQWN0aW9uKG5ldyBSb3V0ZXJEYXRhUmVzb2x2ZWQocm91dGVyU3RhdGUsIGV2ZW50LCB0aGlzLl90cmlnZ2VyKSk7XG4gIH1cblxuICAvKiogUmVhY3RzIHRvIGBSb3V0ZXNSZWNvZ25pemVkYCBvciBgTmF2aWdhdGlvbkVuZGAsIGRlcGVuZHMgb24gdGhlIGBuYXZpZ2F0aW9uQWN0aW9uVGltaW5nYC4gKi9cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJOYXZpZ2F0aW9uKGxhc3RSb3V0ZXNSZWNvZ25pemVkOiBSb3V0ZXNSZWNvZ25pemVkKTogdm9pZCB7XG4gICAgY29uc3QgbmV4dFJvdXRlclN0YXRlID0gdGhpcy5fc2VyaWFsaXplci5zZXJpYWxpemUobGFzdFJvdXRlc1JlY29nbml6ZWQuc3RhdGUpO1xuXG4gICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24oXG4gICAgICBuZXcgUm91dGVyTmF2aWdhdGlvbihcbiAgICAgICAgbmV4dFJvdXRlclN0YXRlLFxuICAgICAgICBuZXcgUm91dGVzUmVjb2duaXplZChcbiAgICAgICAgICBsYXN0Um91dGVzUmVjb2duaXplZC5pZCxcbiAgICAgICAgICBsYXN0Um91dGVzUmVjb2duaXplZC51cmwsXG4gICAgICAgICAgbGFzdFJvdXRlc1JlY29nbml6ZWQudXJsQWZ0ZXJSZWRpcmVjdHMsXG4gICAgICAgICAgbmV4dFJvdXRlclN0YXRlXG4gICAgICAgICksXG4gICAgICAgIHRoaXMuX3RyaWdnZXJcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqIFJlYWN0cyB0byBgTmF2aWdhdGlvbkNhbmNlbGAuICovXG4gIHByaXZhdGUgX2Rpc3BhdGNoUm91dGVyQ2FuY2VsKGV2ZW50OiBOYXZpZ2F0aW9uQ2FuY2VsKTogdm9pZCB7XG4gICAgdGhpcy5fZGlzcGF0Y2hSb3V0ZXJBY3Rpb24oXG4gICAgICBuZXcgUm91dGVyQ2FuY2VsKHRoaXMuX3JvdXRlclN0YXRlISwgdGhpcy5fc3RvcmVTdGF0ZSwgZXZlbnQsIHRoaXMuX3RyaWdnZXIpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYE5hdmlnYXRpb25FbmRgLiAqL1xuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlckVycm9yKGV2ZW50OiBOYXZpZ2F0aW9uRXJyb3IpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihcbiAgICAgIG5ldyBSb3V0ZXJFcnJvcihcbiAgICAgICAgdGhpcy5fcm91dGVyU3RhdGUhLFxuICAgICAgICB0aGlzLl9zdG9yZVN0YXRlLFxuICAgICAgICBuZXcgTmF2aWdhdGlvbkVycm9yKGV2ZW50LmlkLCBldmVudC51cmwsIGAke2V2ZW50fWApLFxuICAgICAgICB0aGlzLl90cmlnZ2VyXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBSZWFjdHMgdG8gYE5hdmlnYXRpb25FbmRgLiAqL1xuICBwcml2YXRlIF9kaXNwYXRjaFJvdXRlck5hdmlnYXRlZChldmVudDogTmF2aWdhdGlvbkVuZCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlclN0YXRlID0gdGhpcy5fc2VyaWFsaXplci5zZXJpYWxpemUodGhpcy5fcm91dGVyLnJvdXRlclN0YXRlLnNuYXBzaG90KTtcbiAgICB0aGlzLl9kaXNwYXRjaFJvdXRlckFjdGlvbihuZXcgUm91dGVyTmF2aWdhdGVkKHJvdXRlclN0YXRlLCBldmVudCwgdGhpcy5fdHJpZ2dlcikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hSb3V0ZXJBY3Rpb248VD4oYWN0aW9uOiBSb3V0ZXJBY3Rpb248VD4pOiB2b2lkIHtcbiAgICB0aGlzLl90cmlnZ2VyID0gJ3JvdXRlcic7XG5cbiAgICB0cnkge1xuICAgICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2goYWN0aW9uKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5fdHJpZ2dlciA9ICdub25lJztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLl90cmlnZ2VyID0gJ25vbmUnO1xuICAgIHRoaXMuX3N0b3JlU3RhdGUgPSBudWxsO1xuICAgIHRoaXMuX3JvdXRlclN0YXRlID0gbnVsbDtcbiAgfVxufVxuIl19
@@ -1,98 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * @abstract
7
- * @template T
8
- */
9
- var /**
10
- * @abstract
11
- * @template T
12
- */
13
- RouterStateSerializer = /** @class */ (function () {
14
- function RouterStateSerializer() {
15
- }
16
- return RouterStateSerializer;
17
- }());
18
- /**
19
- * @abstract
20
- * @template T
21
- */
22
- export { RouterStateSerializer };
23
- if (false) {
24
- /**
25
- * @abstract
26
- * @param {?} routerState
27
- * @return {?}
28
- */
29
- RouterStateSerializer.prototype.serialize = function (routerState) { };
30
- }
31
- /**
32
- * @record
33
- */
34
- export function SerializedRouterStateSnapshot() { }
35
- if (false) {
36
- /** @type {?} */
37
- SerializedRouterStateSnapshot.prototype.root;
38
- /** @type {?} */
39
- SerializedRouterStateSnapshot.prototype.url;
40
- }
41
- var DefaultRouterStateSerializer = /** @class */ (function () {
42
- function DefaultRouterStateSerializer() {
43
- }
44
- /**
45
- * @param {?} routerState
46
- * @return {?}
47
- */
48
- DefaultRouterStateSerializer.prototype.serialize = /**
49
- * @param {?} routerState
50
- * @return {?}
51
- */
52
- function (routerState) {
53
- return {
54
- root: this.serializeRoute(routerState.root),
55
- url: routerState.url
56
- };
57
- };
58
- /**
59
- * @private
60
- * @param {?} route
61
- * @return {?}
62
- */
63
- DefaultRouterStateSerializer.prototype.serializeRoute = /**
64
- * @private
65
- * @param {?} route
66
- * @return {?}
67
- */
68
- function (route) {
69
- var _this = this;
70
- /** @type {?} */
71
- var children = route.children.map((/**
72
- * @param {?} c
73
- * @return {?}
74
- */
75
- function (c) { return _this.serializeRoute(c); }));
76
- return {
77
- url: route.url,
78
- params: route.params,
79
- queryParams: route.queryParams,
80
- fragment: route.fragment,
81
- data: route.data,
82
- outlet: route.outlet,
83
- component: null,
84
- routeConfig: null,
85
- root: (/** @type {?} */ (null)),
86
- parent: null,
87
- firstChild: children[0],
88
- children: children,
89
- pathFromRoot: (/** @type {?} */ (null)),
90
- paramMap: route.paramMap,
91
- queryParamMap: route.queryParamMap,
92
- toString: route.toString
93
- };
94
- };
95
- return DefaultRouterStateSerializer;
96
- }());
97
- export { DefaultRouterStateSerializer };
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3JvdXRlci1wbHVnaW4vIiwic291cmNlcyI6WyJzcmMvc2VyaWFsaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUVBOzs7OztJQUFBO0lBRUEsQ0FBQztJQUFELDRCQUFDO0FBQUQsQ0FBQyxBQUZELElBRUM7Ozs7Ozs7Ozs7OztJQURDLHVFQUF3RDs7Ozs7QUFHMUQsbURBR0M7OztJQUZDLDZDQUE2Qjs7SUFDN0IsNENBQVk7O0FBR2Q7SUFBQTtJQThCQSxDQUFDOzs7OztJQTVCQyxnREFBUzs7OztJQUFULFVBQVUsV0FBZ0M7UUFDeEMsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDM0MsR0FBRyxFQUFFLFdBQVcsQ0FBQyxHQUFHO1NBQ3JCLENBQUM7SUFDSixDQUFDOzs7Ozs7SUFFTyxxREFBYzs7Ozs7SUFBdEIsVUFBdUIsS0FBNkI7UUFBcEQsaUJBb0JDOztZQW5CTyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxLQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUF0QixDQUFzQixFQUFDO1FBQ2hFLE9BQU87WUFDTCxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUc7WUFDZCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLElBQUk7WUFDakIsSUFBSSxFQUFFLG1CQUFBLElBQUksRUFBTztZQUNqQixNQUFNLEVBQUUsSUFBSTtZQUNaLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFlBQVksRUFBRSxtQkFBQSxJQUFJLEVBQU87WUFDekIsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtZQUNsQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7U0FDekIsQ0FBQztJQUNKLENBQUM7SUFDSCxtQ0FBQztBQUFELENBQUMsQUE5QkQsSUE4QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJvdXRlclN0YXRlU2VyaWFsaXplcjxUPiB7XG4gIGFic3RyYWN0IHNlcmlhbGl6ZShyb3V0ZXJTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VyaWFsaXplZFJvdXRlclN0YXRlU25hcHNob3Qge1xuICByb290OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90O1xuICB1cmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIERlZmF1bHRSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXJcbiAgaW1wbGVtZW50cyBSb3V0ZXJTdGF0ZVNlcmlhbGl6ZXI8U2VyaWFsaXplZFJvdXRlclN0YXRlU25hcHNob3Q+IHtcbiAgc2VyaWFsaXplKHJvdXRlclN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogU2VyaWFsaXplZFJvdXRlclN0YXRlU25hcHNob3Qge1xuICAgIHJldHVybiB7XG4gICAgICByb290OiB0aGlzLnNlcmlhbGl6ZVJvdXRlKHJvdXRlclN0YXRlLnJvb3QpLFxuICAgICAgdXJsOiByb3V0ZXJTdGF0ZS51cmxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzZXJpYWxpemVSb3V0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IEFjdGl2YXRlZFJvdXRlU25hcHNob3Qge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gcm91dGUuY2hpbGRyZW4ubWFwKGMgPT4gdGhpcy5zZXJpYWxpemVSb3V0ZShjKSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHVybDogcm91dGUudXJsLFxuICAgICAgcGFyYW1zOiByb3V0ZS5wYXJhbXMsXG4gICAgICBxdWVyeVBhcmFtczogcm91dGUucXVlcnlQYXJhbXMsXG4gICAgICBmcmFnbWVudDogcm91dGUuZnJhZ21lbnQsXG4gICAgICBkYXRhOiByb3V0ZS5kYXRhLFxuICAgICAgb3V0bGV0OiByb3V0ZS5vdXRsZXQsXG4gICAgICBjb21wb25lbnQ6IG51bGwsXG4gICAgICByb3V0ZUNvbmZpZzogbnVsbCxcbiAgICAgIHJvb3Q6IG51bGwgYXMgYW55LFxuICAgICAgcGFyZW50OiBudWxsLFxuICAgICAgZmlyc3RDaGlsZDogY2hpbGRyZW5bMF0sXG4gICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXG4gICAgICBwYXRoRnJvbVJvb3Q6IG51bGwgYXMgYW55LFxuICAgICAgcGFyYW1NYXA6IHJvdXRlLnBhcmFtTWFwLFxuICAgICAgcXVlcnlQYXJhbU1hcDogcm91dGUucXVlcnlQYXJhbU1hcCxcbiAgICAgIHRvU3RyaW5nOiByb3V0ZS50b1N0cmluZ1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,39 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { InjectionToken } from '@angular/core';
6
- /** @enum {number} */
7
- var NavigationActionTiming = {
8
- PreActivation: 1,
9
- PostActivation: 2,
10
- };
11
- export { NavigationActionTiming };
12
- /**
13
- * @record
14
- */
15
- export function NgxsRouterPluginOptions() { }
16
- if (false) {
17
- /** @type {?|undefined} */
18
- NgxsRouterPluginOptions.prototype.navigationActionTiming;
19
- }
20
- /** @type {?} */
21
- export var USER_OPTIONS = new InjectionToken('USER_OPTIONS', { providedIn: 'root', factory: (/**
22
- * @return {?}
23
- */
24
- function () { return undefined; }) });
25
- /** @type {?} */
26
- export var NGXS_ROUTER_PLUGIN_OPTIONS = new InjectionToken('NGXS_ROUTER_PLUGIN_OPTIONS', { providedIn: 'root', factory: (/**
27
- * @return {?}
28
- */
29
- function () { return ({}); }) });
30
- /**
31
- * @param {?} options
32
- * @return {?}
33
- */
34
- export function createRouterPluginOptions(options) {
35
- return {
36
- navigationActionTiming: (options && options.navigationActionTiming) || 1 /* PreActivation */
37
- };
38
- }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3JvdXRlci1wbHVnaW4vIiwic291cmNlcyI6WyJzcmMvc3ltYm9scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0lBRzdDLGdCQUFpQjtJQUNqQixpQkFBa0I7Ozs7OztBQUdwQiw2Q0FFQzs7O0lBREMseURBQWdEOzs7QUFHbEQsTUFBTSxLQUFPLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FDNUMsY0FBYyxFQUNkLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPOzs7SUFBRSxjQUFNLE9BQUEsU0FBUyxFQUFULENBQVMsQ0FBQSxFQUFFLENBQ2pEOztBQUVELE1BQU0sS0FBTywwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FDMUQsNEJBQTRCLEVBQzVCLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPOzs7SUFBRSxjQUFNLE9BQUEsQ0FBQyxFQUFFLENBQUMsRUFBSixDQUFJLENBQUEsRUFBRSxDQUM1Qzs7Ozs7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQ3ZDLE9BQTRDO0lBRTVDLE9BQU87UUFDTCxzQkFBc0IsRUFDcEIsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLHNCQUFzQixDQUFDLHlCQUF3QztLQUN0RixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBlbnVtIE5hdmlnYXRpb25BY3Rpb25UaW1pbmcge1xuICBQcmVBY3RpdmF0aW9uID0gMSxcbiAgUG9zdEFjdGl2YXRpb24gPSAyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMge1xuICBuYXZpZ2F0aW9uQWN0aW9uVGltaW5nPzogTmF2aWdhdGlvbkFjdGlvblRpbWluZztcbn1cblxuZXhwb3J0IGNvbnN0IFVTRVJfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyB8IHVuZGVmaW5lZD4oXG4gICdVU0VSX09QVElPTlMnLFxuICB7IHByb3ZpZGVkSW46ICdyb290JywgZmFjdG9yeTogKCkgPT4gdW5kZWZpbmVkIH1cbik7XG5cbmV4cG9ydCBjb25zdCBOR1hTX1JPVVRFUl9QTFVHSU5fT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucz4oXG4gICdOR1hTX1JPVVRFUl9QTFVHSU5fT1BUSU9OUycsXG4gIHsgcHJvdmlkZWRJbjogJ3Jvb3QnLCBmYWN0b3J5OiAoKSA9PiAoe30pIH1cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSb3V0ZXJQbHVnaW5PcHRpb25zKFxuICBvcHRpb25zOiBOZ3hzUm91dGVyUGx1Z2luT3B0aW9ucyB8IHVuZGVmaW5lZFxuKTogTmd4c1JvdXRlclBsdWdpbk9wdGlvbnMge1xuICByZXR1cm4ge1xuICAgIG5hdmlnYXRpb25BY3Rpb25UaW1pbmc6XG4gICAgICAob3B0aW9ucyAmJiBvcHRpb25zLm5hdmlnYXRpb25BY3Rpb25UaW1pbmcpIHx8IE5hdmlnYXRpb25BY3Rpb25UaW1pbmcuUHJlQWN0aXZhdGlvblxuICB9O1xufVxuIl19