@coolon/angular-ui-powerups 0.0.101 → 0.0.103
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/bundles/coolon-angular-ui-powerups.umd.js +885 -632
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
- package/coolon-angular-ui-powerups.d.ts +1 -2
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/coolon-angular-ui-powerups.js +3 -4
- package/esm2015/index.js +2 -2
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +2 -1
- package/esm2015/lib/interaction/index.js +1 -2
- package/esm2015/lib/interaction/interaction-context-base.js +21 -8
- package/esm2015/lib/interaction/interaction-context.js +56 -3
- package/esm2015/lib/interaction/interaction.module.js +1 -4
- package/esm2015/lib/interaction/services/interaction.service.js +11 -7
- package/esm2015/lib/place/guards/navigation-state.js +216 -135
- package/esm2015/lib/place/guards/place-component-deactivation-handler.js +63 -28
- package/esm2015/lib/place/guards/place.guard.js +215 -0
- package/esm2015/lib/place/index.js +2 -3
- package/esm2015/lib/place/place-router.js +34 -36
- package/esm2015/lib/place/place.decorator.js +2 -2
- package/esm2015/lib/place/url-snapshot.js +69 -53
- package/esm2015/public_api.js +3 -3
- package/esm5/coolon-angular-ui-powerups.js +3 -4
- package/esm5/index.js +2 -2
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js +2 -1
- package/esm5/lib/interaction/index.js +1 -2
- package/esm5/lib/interaction/interaction-context-base.js +25 -8
- package/esm5/lib/interaction/interaction-context.js +88 -10
- package/esm5/lib/interaction/interaction.module.js +1 -4
- package/esm5/lib/interaction/services/interaction.service.js +17 -8
- package/esm5/lib/place/guards/navigation-state.js +280 -162
- package/esm5/lib/place/guards/place-component-deactivation-handler.js +73 -27
- package/esm5/lib/place/guards/place.guard.js +300 -0
- package/esm5/lib/place/index.js +2 -3
- package/esm5/lib/place/place-router.js +52 -39
- package/esm5/lib/place/place.decorator.js +2 -2
- package/esm5/lib/place/url-snapshot.js +85 -58
- package/esm5/public_api.js +3 -3
- package/fesm2015/coolon-angular-ui-powerups.js +661 -539
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +884 -628
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/interaction/index.d.ts +0 -1
- package/lib/interaction/interaction-context-base.d.ts +3 -1
- package/lib/interaction/interaction-context.d.ts +9 -2
- package/lib/interaction/services/interaction.service.d.ts +2 -2
- package/lib/place/guards/navigation-state.d.ts +44 -38
- package/lib/place/guards/place-component-deactivation-handler.d.ts +7 -4
- package/lib/place/guards/{abstract-place.guard.d.ts → place.guard.d.ts} +8 -3
- package/lib/place/index.d.ts +1 -2
- package/lib/place/place-router.d.ts +2 -0
- package/lib/place/url-snapshot.d.ts +14 -9
- package/package.json +1 -1
- package/schematics/place-routes/place-def.js +1 -0
- package/schematics/place-routes/place-def.js.map +1 -1
- package/schematics/place-routes/templates/place-routes.ts.template +10 -11
- package/esm2015/lib/interaction/components/interaction-outlet/interaction-outlet.component.js +0 -19
- package/esm2015/lib/place/guards/abstract-place.guard.js +0 -166
- package/esm2015/lib/place/guards/interaction.guard.js +0 -121
- package/esm5/lib/interaction/components/interaction-outlet/interaction-outlet.component.js +0 -21
- package/esm5/lib/place/guards/abstract-place.guard.js +0 -213
- package/esm5/lib/place/guards/interaction.guard.js +0 -133
- package/lib/interaction/components/interaction-outlet/interaction-outlet.component.d.ts +0 -3
- package/lib/place/guards/interaction.guard.d.ts +0 -17
|
@@ -1,121 +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 { Location } from '@angular/common';
|
|
7
|
-
import { Injectable, Injector } from '@angular/core';
|
|
8
|
-
import { Router } from '@angular/router';
|
|
9
|
-
import { InteractionService } from '../../interaction/services/interaction.service';
|
|
10
|
-
import { PlaceRouter } from '../place-router';
|
|
11
|
-
import * as _ from 'lodash';
|
|
12
|
-
import { UrlSnapshot } from '../url-snapshot';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@angular/router";
|
|
15
|
-
import * as i2 from "../place-router";
|
|
16
|
-
import * as i3 from "@angular/common";
|
|
17
|
-
import * as i4 from "../../interaction/services/interaction.service";
|
|
18
|
-
export class InteractionGuard {
|
|
19
|
-
/**
|
|
20
|
-
* @param {?} router
|
|
21
|
-
* @param {?} injector
|
|
22
|
-
* @param {?} placeRouter
|
|
23
|
-
* @param {?} angularLocation
|
|
24
|
-
* @param {?} interactionService
|
|
25
|
-
*/
|
|
26
|
-
constructor(router, injector, placeRouter, angularLocation, interactionService) {
|
|
27
|
-
this.router = router;
|
|
28
|
-
this.injector = injector;
|
|
29
|
-
this.placeRouter = placeRouter;
|
|
30
|
-
this.angularLocation = angularLocation;
|
|
31
|
-
this.interactionService = interactionService;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* @param {?} route
|
|
35
|
-
* @param {?} state
|
|
36
|
-
* @return {?}
|
|
37
|
-
*/
|
|
38
|
-
canActivate(route, state) {
|
|
39
|
-
/** @type {?} */
|
|
40
|
-
const url = this.router.parseUrl(state.url);
|
|
41
|
-
if (!this.interactionService.isActive() && url.root.children[UrlSnapshot.INTERACTION_ROUTER_OUTLET]) {
|
|
42
|
-
// This happens if we reload the page or the url was pasted as the route should only be activated
|
|
43
|
-
// after the interaction context has become active.
|
|
44
|
-
delete url.root.children[UrlSnapshot.INTERACTION_ROUTER_OUTLET];
|
|
45
|
-
return url;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
return true;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* @param {?} component
|
|
53
|
-
* @param {?} currentRoute
|
|
54
|
-
* @param {?} currentState
|
|
55
|
-
* @param {?=} nextState
|
|
56
|
-
* @return {?}
|
|
57
|
-
*/
|
|
58
|
-
canDeactivate(component, currentRoute, currentState, nextState) {
|
|
59
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
if (this.interactionService.isActive()) {
|
|
61
|
-
/** @type {?} */
|
|
62
|
-
const currentIds = this.interactionService.activeInteractionContextIds.value;
|
|
63
|
-
/** @type {?} */
|
|
64
|
-
const routeIds = this.placeRouter.getActiveInteractionIdsFromUrl(nextState.url);
|
|
65
|
-
if (!_.isEqual(currentIds, routeIds)) {
|
|
66
|
-
// The activity is still active so the route change was triggered by the back button.
|
|
67
|
-
/** @type {?} */
|
|
68
|
-
const activity = yield this.interactionService.getCurrentActivity();
|
|
69
|
-
activity.cancel();
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
// IMPORTANT:
|
|
73
|
-
// We always return true, the router state engine will redirect as required. Return false
|
|
74
|
-
// during the guard causes all kinds of grief. It might be worth trying a redirect here
|
|
75
|
-
// again now that our state engine is more thorough.
|
|
76
|
-
return true;
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
InteractionGuard.decorators = [
|
|
81
|
-
{ type: Injectable, args: [{
|
|
82
|
-
providedIn: 'root'
|
|
83
|
-
},] }
|
|
84
|
-
];
|
|
85
|
-
/** @nocollapse */
|
|
86
|
-
InteractionGuard.ctorParameters = () => [
|
|
87
|
-
{ type: Router },
|
|
88
|
-
{ type: Injector },
|
|
89
|
-
{ type: PlaceRouter },
|
|
90
|
-
{ type: Location },
|
|
91
|
-
{ type: InteractionService }
|
|
92
|
-
];
|
|
93
|
-
/** @nocollapse */ InteractionGuard.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function InteractionGuard_Factory() { return new InteractionGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i2.PlaceRouter), i0.ɵɵinject(i3.Location), i0.ɵɵinject(i4.InteractionService)); }, token: InteractionGuard, providedIn: "root" });
|
|
94
|
-
if (false) {
|
|
95
|
-
/**
|
|
96
|
-
* @type {?}
|
|
97
|
-
* @private
|
|
98
|
-
*/
|
|
99
|
-
InteractionGuard.prototype.router;
|
|
100
|
-
/**
|
|
101
|
-
* @type {?}
|
|
102
|
-
* @private
|
|
103
|
-
*/
|
|
104
|
-
InteractionGuard.prototype.injector;
|
|
105
|
-
/**
|
|
106
|
-
* @type {?}
|
|
107
|
-
* @private
|
|
108
|
-
*/
|
|
109
|
-
InteractionGuard.prototype.placeRouter;
|
|
110
|
-
/**
|
|
111
|
-
* @type {?}
|
|
112
|
-
* @private
|
|
113
|
-
*/
|
|
114
|
-
InteractionGuard.prototype.angularLocation;
|
|
115
|
-
/**
|
|
116
|
-
* @type {?}
|
|
117
|
-
* @private
|
|
118
|
-
*/
|
|
119
|
-
InteractionGuard.prototype.interactionService;
|
|
120
|
-
}
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24uZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2UvZ3VhcmRzL2ludGVyYWN0aW9uLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFJTCxNQUFNLEVBR1AsTUFBTSxpQkFBaUIsQ0FBQztBQUl6QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFLOUMsTUFBTSxPQUFPLGdCQUFnQjs7Ozs7Ozs7SUFFM0IsWUFBb0IsTUFBYyxFQUNkLFFBQWtCLEVBQ2xCLFdBQXdCLEVBQ2YsZUFBeUIsRUFDekIsa0JBQXNDO1FBSi9DLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ2Ysb0JBQWUsR0FBZixlQUFlLENBQVU7UUFDekIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUNuRSxDQUFDOzs7Ozs7SUFFRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjs7Y0FDN0QsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMseUJBQXlCLENBQUMsRUFBRTtZQUNuRyxpR0FBaUc7WUFDakcsbURBQW1EO1lBQ25ELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDaEUsT0FBTyxHQUFHLENBQUM7U0FDWjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7Ozs7Ozs7O0lBRUssYUFBYSxDQUFDLFNBQXdCLEVBQUUsWUFBb0MsRUFBRSxZQUFpQyxFQUFFLFNBQStCOztZQUVwSixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsRUFBRTs7c0JBQ2hDLFVBQVUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsMkJBQTJCLENBQUMsS0FBSzs7c0JBQ3RFLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLDhCQUE4QixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7Z0JBQy9FLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsRUFBRTs7OzBCQUU5QixRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLEVBQUU7b0JBQ25FLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDbkI7YUFDRjtZQUNELGFBQWE7WUFDYiwwRkFBMEY7WUFDMUYsd0ZBQXdGO1lBQ3hGLG9EQUFvRDtZQUNwRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FBQTs7O1lBeENGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQWRDLE1BQU07WUFMYSxRQUFRO1lBYXBCLFdBQVc7WUFkWCxRQUFRO1lBYVIsa0JBQWtCOzs7Ozs7OztJQVViLGtDQUFzQjs7Ozs7SUFDdEIsb0NBQTBCOzs7OztJQUMxQix1Q0FBZ0M7Ozs7O0lBQ2hDLDJDQUEwQzs7Ozs7SUFDMUMsOENBQXVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIENhbkFjdGl2YXRlLFxuICBDYW5EZWFjdGl2YXRlLFxuICBSb3V0ZXIsXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXG4gIFVybFRyZWVcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFRyYWNlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTm9vcENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvbm9vcC9ub29wLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi9zZXJ2aWNlcy9pbnRlcmFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBsYWNlUm91dGVyIH0gZnJvbSAnLi4vcGxhY2Utcm91dGVyJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFVybFNuYXBzaG90IH0gZnJvbSAnLi4vdXJsLXNuYXBzaG90JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSW50ZXJhY3Rpb25HdWFyZCBpbXBsZW1lbnRzIENhbkRlYWN0aXZhdGU8Tm9vcENvbXBvbmVudD4sIENhbkFjdGl2YXRlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYW5ndWxhckxvY2F0aW9uOiBMb2NhdGlvbixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbnRlcmFjdGlvblNlcnZpY2U6IEludGVyYWN0aW9uU2VydmljZSkge1xuICB9XG5cbiAgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4gfCBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IGJvb2xlYW4gfCBVcmxUcmVlIHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLnJvdXRlci5wYXJzZVVybChzdGF0ZS51cmwpO1xuICAgIGlmICghdGhpcy5pbnRlcmFjdGlvblNlcnZpY2UuaXNBY3RpdmUoKSAmJiB1cmwucm9vdC5jaGlsZHJlbltVcmxTbmFwc2hvdC5JTlRFUkFDVElPTl9ST1VURVJfT1VUTEVUXSkge1xuICAgICAgLy8gVGhpcyBoYXBwZW5zIGlmIHdlIHJlbG9hZCB0aGUgcGFnZSBvciB0aGUgdXJsIHdhcyBwYXN0ZWQgYXMgdGhlIHJvdXRlIHNob3VsZCBvbmx5IGJlIGFjdGl2YXRlZFxuICAgICAgLy8gYWZ0ZXIgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgaGFzIGJlY29tZSBhY3RpdmUuXG4gICAgICBkZWxldGUgdXJsLnJvb3QuY2hpbGRyZW5bVXJsU25hcHNob3QuSU5URVJBQ1RJT05fUk9VVEVSX09VVExFVF07XG4gICAgICByZXR1cm4gdXJsO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBjYW5EZWFjdGl2YXRlKGNvbXBvbmVudDogTm9vcENvbXBvbmVudCwgY3VycmVudFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBjdXJyZW50U3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsIG5leHRTdGF0ZT86IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XG5cbiAgICBpZiAodGhpcy5pbnRlcmFjdGlvblNlcnZpY2UuaXNBY3RpdmUoKSkge1xuICAgICAgY29uc3QgY3VycmVudElkcyA9IHRoaXMuaW50ZXJhY3Rpb25TZXJ2aWNlLmFjdGl2ZUludGVyYWN0aW9uQ29udGV4dElkcy52YWx1ZTtcbiAgICAgIGNvbnN0IHJvdXRlSWRzID0gdGhpcy5wbGFjZVJvdXRlci5nZXRBY3RpdmVJbnRlcmFjdGlvbklkc0Zyb21VcmwobmV4dFN0YXRlLnVybCk7XG4gICAgICBpZiAoIV8uaXNFcXVhbChjdXJyZW50SWRzLCByb3V0ZUlkcykpIHtcbiAgICAgICAgLy8gVGhlIGFjdGl2aXR5IGlzIHN0aWxsIGFjdGl2ZSBzbyB0aGUgcm91dGUgY2hhbmdlIHdhcyB0cmlnZ2VyZWQgYnkgdGhlIGJhY2sgYnV0dG9uLlxuICAgICAgICBjb25zdCBhY3Rpdml0eSA9IGF3YWl0IHRoaXMuaW50ZXJhY3Rpb25TZXJ2aWNlLmdldEN1cnJlbnRBY3Rpdml0eSgpO1xuICAgICAgICBhY3Rpdml0eS5jYW5jZWwoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gSU1QT1JUQU5UOlxuICAgIC8vIFdlIGFsd2F5cyByZXR1cm4gdHJ1ZSwgdGhlIHJvdXRlciBzdGF0ZSBlbmdpbmUgd2lsbCByZWRpcmVjdCBhcyByZXF1aXJlZC4gIFJldHVybiBmYWxzZVxuICAgIC8vIGR1cmluZyB0aGUgZ3VhcmQgY2F1c2VzIGFsbCBraW5kcyBvZiBncmllZi4gIEl0IG1pZ2h0IGJlIHdvcnRoIHRyeWluZyBhIHJlZGlyZWN0IGhlcmVcbiAgICAvLyBhZ2FpbiBub3cgdGhhdCBvdXIgc3RhdGUgZW5naW5lIGlzIG1vcmUgdGhvcm91Z2guXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxufVxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component } from '@angular/core';
|
|
6
|
-
var InteractionOutletComponent = /** @class */ (function () {
|
|
7
|
-
function InteractionOutletComponent() {
|
|
8
|
-
}
|
|
9
|
-
InteractionOutletComponent.decorators = [
|
|
10
|
-
{ type: Component, args: [{
|
|
11
|
-
selector: 'aup-interaction-outlet',
|
|
12
|
-
template: "<router-outlet name=\"interaction-context\"></router-outlet>\n",
|
|
13
|
-
styles: [":host{display:block}"]
|
|
14
|
-
}] }
|
|
15
|
-
];
|
|
16
|
-
/** @nocollapse */
|
|
17
|
-
InteractionOutletComponent.ctorParameters = function () { return []; };
|
|
18
|
-
return InteractionOutletComponent;
|
|
19
|
-
}());
|
|
20
|
-
export { InteractionOutletComponent };
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24tb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2ludGVyYWN0aW9uLW91dGxldC9pbnRlcmFjdGlvbi1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDO0lBTUU7SUFDQSxDQUFDOztnQkFQRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsMEVBQWtEOztpQkFFbkQ7Ozs7SUFJRCxpQ0FBQztDQUFBLEFBUkQsSUFRQztTQUhZLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtaW50ZXJhY3Rpb24tb3V0bGV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ludGVyYWN0aW9uLW91dGxldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ludGVyYWN0aW9uLW91dGxldC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEludGVyYWN0aW9uT3V0bGV0Q29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,213 +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 { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
|
|
7
|
-
import { lang, Trace } from '@coolon/pectin';
|
|
8
|
-
import { Observable } from 'rxjs';
|
|
9
|
-
import { PlaceComponent } from '../place-component';
|
|
10
|
-
import { VisitSanitiser } from '../route/visit-sanitiser';
|
|
11
|
-
import { Visit } from '../visit';
|
|
12
|
-
import { ConsolidatedParameterMap } from './consolidated-param-map';
|
|
13
|
-
/**
|
|
14
|
-
* @abstract
|
|
15
|
-
*/
|
|
16
|
-
var AbstractPlaceGuard = /** @class */ (function () {
|
|
17
|
-
function AbstractPlaceGuard(router, urlSerializer, placeRouter, placeHistory, injector) {
|
|
18
|
-
this.router = router;
|
|
19
|
-
this.urlSerializer = urlSerializer;
|
|
20
|
-
this.placeRouter = placeRouter;
|
|
21
|
-
this.placeHistory = placeHistory;
|
|
22
|
-
this.injector = injector;
|
|
23
|
-
}
|
|
24
|
-
// @Trace()
|
|
25
|
-
// @Trace()
|
|
26
|
-
/**
|
|
27
|
-
* @param {?} activatedRoute
|
|
28
|
-
* @param {?} state
|
|
29
|
-
* @return {?}
|
|
30
|
-
*/
|
|
31
|
-
AbstractPlaceGuard.prototype.canActivate =
|
|
32
|
-
// @Trace()
|
|
33
|
-
/**
|
|
34
|
-
* @param {?} activatedRoute
|
|
35
|
-
* @param {?} state
|
|
36
|
-
* @return {?}
|
|
37
|
-
*/
|
|
38
|
-
function (activatedRoute, state) {
|
|
39
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
40
|
-
var _this = this;
|
|
41
|
-
return tslib_1.__generator(this, function (_a) {
|
|
42
|
-
return [2 /*return*/, this.authorisePlaceThen(activatedRoute, state, (/**
|
|
43
|
-
* @param {?} placeDefinition
|
|
44
|
-
* @return {?}
|
|
45
|
-
*/
|
|
46
|
-
function (placeDefinition) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
47
|
-
var params, parsedParams, initialVisit, sanitiser, sanitisedVisit, commands;
|
|
48
|
-
return tslib_1.__generator(this, function (_a) {
|
|
49
|
-
switch (_a.label) {
|
|
50
|
-
case 0:
|
|
51
|
-
// Parse our route params.
|
|
52
|
-
params = new ConsolidatedParameterMap(activatedRoute.paramMap, activatedRoute.url);
|
|
53
|
-
parsedParams = placeDefinition.parseRouteParams(params);
|
|
54
|
-
initialVisit = this.placeRouter.navigationState.getVisitFor(placeDefinition) || new Visit(placeDefinition, parsedParams);
|
|
55
|
-
sanitiser = new VisitSanitiser(activatedRoute, this.router, this.placeHistory, this.injector);
|
|
56
|
-
return [4 /*yield*/, sanitiser.sanitise(initialVisit.mergeRouteParameters(parsedParams))];
|
|
57
|
-
case 1:
|
|
58
|
-
sanitisedVisit = _a.sent();
|
|
59
|
-
// Save the visit with any updated parameters. We need to save it so we remember any non route parameters
|
|
60
|
-
this.placeRouter.navigationState.storeVisit(sanitisedVisit);
|
|
61
|
-
if (initialVisit.hasRoutingChangedFrom(sanitisedVisit)) {
|
|
62
|
-
// Regenerate the url
|
|
63
|
-
commands = this.placeRouter.parseUrl(state.url).createRedirectCommandsFor(sanitisedVisit);
|
|
64
|
-
console.log('##### Place Guard Redirect', commands);
|
|
65
|
-
return [2 /*return*/, this.router.createUrlTree(commands, {
|
|
66
|
-
replaceUrl: true,
|
|
67
|
-
skipLocationChange: false
|
|
68
|
-
})];
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
return [2 /*return*/, true];
|
|
72
|
-
}
|
|
73
|
-
return [2 /*return*/];
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}); }))];
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
};
|
|
80
|
-
/**
|
|
81
|
-
* @param {?} component
|
|
82
|
-
* @param {?} currentRoute
|
|
83
|
-
* @param {?} currentState
|
|
84
|
-
* @param {?=} nextState
|
|
85
|
-
* @return {?}
|
|
86
|
-
*/
|
|
87
|
-
AbstractPlaceGuard.prototype.canDeactivate = /**
|
|
88
|
-
* @param {?} component
|
|
89
|
-
* @param {?} currentRoute
|
|
90
|
-
* @param {?} currentState
|
|
91
|
-
* @param {?=} nextState
|
|
92
|
-
* @return {?}
|
|
93
|
-
*/
|
|
94
|
-
function (component, currentRoute, currentState, nextState) {
|
|
95
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
96
|
-
return tslib_1.__generator(this, function (_a) {
|
|
97
|
-
return [2 /*return*/, this.placeRouter.navigationState.canDeactivatePlace(component, this.placeRouter.parseUrl(nextState.url))];
|
|
98
|
-
});
|
|
99
|
-
});
|
|
100
|
-
};
|
|
101
|
-
// @Trace()
|
|
102
|
-
// @Trace()
|
|
103
|
-
/**
|
|
104
|
-
* @protected
|
|
105
|
-
* @param {?} activatedRoute
|
|
106
|
-
* @param {?} state
|
|
107
|
-
* @param {?} runPlaceGuards
|
|
108
|
-
* @return {?}
|
|
109
|
-
*/
|
|
110
|
-
AbstractPlaceGuard.prototype.authorisePlaceThen =
|
|
111
|
-
// @Trace()
|
|
112
|
-
/**
|
|
113
|
-
* @protected
|
|
114
|
-
* @param {?} activatedRoute
|
|
115
|
-
* @param {?} state
|
|
116
|
-
* @param {?} runPlaceGuards
|
|
117
|
-
* @return {?}
|
|
118
|
-
*/
|
|
119
|
-
function (activatedRoute, state, runPlaceGuards) {
|
|
120
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
121
|
-
var placeDefinition, authoriseResult, _a;
|
|
122
|
-
return tslib_1.__generator(this, function (_b) {
|
|
123
|
-
switch (_b.label) {
|
|
124
|
-
case 0:
|
|
125
|
-
if (!PlaceComponent.isPlaceComponentConstructor(activatedRoute.component)) return [3 /*break*/, 4];
|
|
126
|
-
placeDefinition = PlaceComponent.getDefinition(activatedRoute.component);
|
|
127
|
-
if (!placeDefinition.authenticate) return [3 /*break*/, 2];
|
|
128
|
-
return [4 /*yield*/, this.isAuthorised(activatedRoute, state)];
|
|
129
|
-
case 1:
|
|
130
|
-
_a = _b.sent();
|
|
131
|
-
return [3 /*break*/, 3];
|
|
132
|
-
case 2:
|
|
133
|
-
_a = true;
|
|
134
|
-
_b.label = 3;
|
|
135
|
-
case 3:
|
|
136
|
-
authoriseResult = _a;
|
|
137
|
-
if (authoriseResult === true) {
|
|
138
|
-
// we're authorised, now run the place guards.
|
|
139
|
-
return [2 /*return*/, runPlaceGuards(placeDefinition)];
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
console.log('not authorised result', authoriseResult);
|
|
143
|
-
return [2 /*return*/, authoriseResult];
|
|
144
|
-
}
|
|
145
|
-
return [3 /*break*/, 5];
|
|
146
|
-
case 4: return [2 /*return*/, lang.illegalState("expected component to be an instance of PlaceComponent, got " + activatedRoute.component)];
|
|
147
|
-
case 5: return [2 /*return*/];
|
|
148
|
-
}
|
|
149
|
-
});
|
|
150
|
-
});
|
|
151
|
-
};
|
|
152
|
-
/**
|
|
153
|
-
* @param {?} activatedRoute
|
|
154
|
-
* @param {?} state
|
|
155
|
-
* @return {?}
|
|
156
|
-
*/
|
|
157
|
-
AbstractPlaceGuard.prototype.isAuthorised = /**
|
|
158
|
-
* @param {?} activatedRoute
|
|
159
|
-
* @param {?} state
|
|
160
|
-
* @return {?}
|
|
161
|
-
*/
|
|
162
|
-
function (activatedRoute, state) {
|
|
163
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
164
|
-
var authorised;
|
|
165
|
-
return tslib_1.__generator(this, function (_a) {
|
|
166
|
-
authorised = this.getAuthGuard(this.injector).canActivate(activatedRoute, state);
|
|
167
|
-
return [2 /*return*/, (authorised instanceof Observable) ? authorised.toPromise() : authorised];
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
};
|
|
171
|
-
tslib_1.__decorate([
|
|
172
|
-
Trace(),
|
|
173
|
-
tslib_1.__metadata("design:type", Function),
|
|
174
|
-
tslib_1.__metadata("design:paramtypes", [ActivatedRouteSnapshot, RouterStateSnapshot]),
|
|
175
|
-
tslib_1.__metadata("design:returntype", Promise)
|
|
176
|
-
], AbstractPlaceGuard.prototype, "isAuthorised", null);
|
|
177
|
-
return AbstractPlaceGuard;
|
|
178
|
-
}());
|
|
179
|
-
export { AbstractPlaceGuard };
|
|
180
|
-
if (false) {
|
|
181
|
-
/**
|
|
182
|
-
* @type {?}
|
|
183
|
-
* @private
|
|
184
|
-
*/
|
|
185
|
-
AbstractPlaceGuard.prototype.router;
|
|
186
|
-
/**
|
|
187
|
-
* @type {?}
|
|
188
|
-
* @private
|
|
189
|
-
*/
|
|
190
|
-
AbstractPlaceGuard.prototype.urlSerializer;
|
|
191
|
-
/**
|
|
192
|
-
* @type {?}
|
|
193
|
-
* @private
|
|
194
|
-
*/
|
|
195
|
-
AbstractPlaceGuard.prototype.placeRouter;
|
|
196
|
-
/**
|
|
197
|
-
* @type {?}
|
|
198
|
-
* @private
|
|
199
|
-
*/
|
|
200
|
-
AbstractPlaceGuard.prototype.placeHistory;
|
|
201
|
-
/**
|
|
202
|
-
* @type {?}
|
|
203
|
-
* @private
|
|
204
|
-
*/
|
|
205
|
-
AbstractPlaceGuard.prototype.injector;
|
|
206
|
-
/**
|
|
207
|
-
* @abstract
|
|
208
|
-
* @param {?} injector
|
|
209
|
-
* @return {?}
|
|
210
|
-
*/
|
|
211
|
-
AbstractPlaceGuard.prototype.getAuthGuard = function (injector) { };
|
|
212
|
-
}
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2UvZ3VhcmRzL2Fic3RyYWN0LXBsYWNlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUNMLHNCQUFzQixFQUd0QixtQkFBbUIsRUFHcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSXBELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBR3BFO0lBR0UsNEJBQTZCLE1BQWMsRUFDdkIsYUFBNEIsRUFDbkIsV0FBd0IsRUFDeEIsWUFBMEIsRUFDMUIsUUFBa0I7UUFKbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNuQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQy9DLENBQUM7SUFFRCxXQUFXOzs7Ozs7O0lBQ0wsd0NBQVc7Ozs7Ozs7SUFBakIsVUFBa0IsY0FBc0MsRUFBRSxLQUEwQjs7OztnQkFDbEYsc0JBQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxLQUFLOzs7O29CQUFFLFVBQU0sZUFBZTs7Ozs7O29DQUduRSxNQUFNLEdBQUcsSUFBSSx3QkFBd0IsQ0FBQyxjQUFjLENB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LEVBQUUsS0FBSyxDQUFDO2dCQUN0RixzQkFBTyxDQUFDLFVBQVUsWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUM7OztLQUNqRjtJQUhEO1FBREMsS0FBSyxFQUFFOztpREFDMkIsc0JBQXNCLEVBQVMsbUJBQW1COzswREFHcEY7SUFHSCx5QkFBQztDQUFBLEFBbEVELElBa0VDO1NBbEVxQixrQkFBa0I7Ozs7OztJQUcxQixvQ0FBK0I7Ozs7O0lBQy9CLDJDQUFvQzs7Ozs7SUFDcEMseUNBQXlDOzs7OztJQUN6QywwQ0FBMkM7Ozs7O0lBQzNDLHNDQUFtQzs7Ozs7O0lBMEQvQyxvRUFBdUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgQ2FuQWN0aXZhdGUsIENhbkRlYWN0aXZhdGUsXG4gIFJvdXRlcixcbiAgUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgVXJsU2VyaWFsaXplcixcbiAgVXJsVHJlZVxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgbGFuZywgVHJhY2UgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi9zZXJ2aWNlcy9pbnRlcmFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlRGVmaW5pdGlvbiB9IGZyb20gJy4uL3BsYWNlLWRlZmluaXRpb24nO1xuaW1wb3J0IHsgUGxhY2VIaXN0b3J5IH0gZnJvbSAnLi4vcGxhY2UtaGlzdG9yeSc7XG5pbXBvcnQgeyBQbGFjZVJvdXRlciB9IGZyb20gJy4uL3BsYWNlLXJvdXRlcic7XG5pbXBvcnQgeyBWaXNpdFNhbml0aXNlciB9IGZyb20gJy4uL3JvdXRlL3Zpc2l0LXNhbml0aXNlcic7XG5pbXBvcnQgeyBWaXNpdCB9IGZyb20gJy4uL3Zpc2l0JztcbmltcG9ydCB7IENvbnNvbGlkYXRlZFBhcmFtZXRlck1hcCB9IGZyb20gJy4vY29uc29saWRhdGVkLXBhcmFtLW1hcCc7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0UGxhY2VHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlLCBDYW5EZWFjdGl2YXRlPFBsYWNlQ29tcG9uZW50PiB7XG5cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIHVybFNlcmlhbGl6ZXI6IFVybFNlcmlhbGl6ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VSb3V0ZXI6IFBsYWNlUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBsYWNlSGlzdG9yeTogUGxhY2VIaXN0b3J5LFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYXN5bmMgY2FuQWN0aXZhdGUoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhvcmlzZVBsYWNlVGhlbihhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUsIGFzeW5jIHBsYWNlRGVmaW5pdGlvbiA9PiB7XG5cbiAgICAgIC8vIFBhcnNlIG91ciByb3V0ZSBwYXJhbXMuXG4gICAgICBjb25zdCBwYXJhbXMgPSBuZXcgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwKGFjdGl2YXRlZFJvdXRlLnBhcmFtTWFwLCBhY3RpdmF0ZWRSb3V0ZS51cmwpO1xuICAgICAgY29uc3QgcGFyc2VkUGFyYW1zID0gcGxhY2VEZWZpbml0aW9uLnBhcnNlUm91dGVQYXJhbXMocGFyYW1zKTtcblxuICAgICAgY29uc3QgaW5pdGlhbFZpc2l0ID0gdGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uU3RhdGUuZ2V0VmlzaXRGb3IocGxhY2VEZWZpbml0aW9uKSB8fCBuZXcgVmlzaXQocGxhY2VEZWZpbml0aW9uLCBwYXJzZWRQYXJhbXMpO1xuICAgICAgY29uc3Qgc2FuaXRpc2VyID0gbmV3IFZpc2l0U2FuaXRpc2VyKGFjdGl2YXRlZFJvdXRlLCB0aGlzLnJvdXRlciwgdGhpcy5wbGFjZUhpc3RvcnksIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgY29uc3Qgc2FuaXRpc2VkVmlzaXQgPSBhd2FpdCBzYW5pdGlzZXIuc2FuaXRpc2UoaW5pdGlhbFZpc2l0Lm1lcmdlUm91dGVQYXJhbWV0ZXJzKHBhcnNlZFBhcmFtcykpO1xuXG4gICAgICAvLyBTYXZlIHRoZSB2aXNpdCB3aXRoIGFueSB1cGRhdGVkIHBhcmFtZXRlcnMuICBXZSBuZWVkIHRvIHNhdmUgaXQgc28gd2UgcmVtZW1iZXIgYW55IG5vbiByb3V0ZSBwYXJhbWV0ZXJzXG4gICAgICB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TdGF0ZS5zdG9yZVZpc2l0KHNhbml0aXNlZFZpc2l0KTtcbiAgICAgIGlmIChpbml0aWFsVmlzaXQuaGFzUm91dGluZ0NoYW5nZWRGcm9tKHNhbml0aXNlZFZpc2l0KSkge1xuICAgICAgICAvLyBSZWdlbmVyYXRlIHRoZSB1cmxcbiAgICAgICAgY29uc3QgY29tbWFuZHMgPSB0aGlzLnBsYWNlUm91dGVyLnBhcnNlVXJsKHN0YXRlLnVybCkuY3JlYXRlUmVkaXJlY3RDb21tYW5kc0ZvcihzYW5pdGlzZWRWaXNpdCk7XG4gICAgICAgIGNvbnNvbGUubG9nKCcjIyMjIyBQbGFjZSBHdWFyZCBSZWRpcmVjdCcsIGNvbW1hbmRzKTtcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoY29tbWFuZHMsIHtcbiAgICAgICAgICByZXBsYWNlVXJsOiB0cnVlLFxuICAgICAgICAgIHNraXBMb2NhdGlvbkNoYW5nZTogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGNhbkRlYWN0aXZhdGUoY29tcG9uZW50OiBQbGFjZUNvbXBvbmVudCwgY3VycmVudFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBjdXJyZW50U3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsIG5leHRTdGF0ZT86IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uU3RhdGUuY2FuRGVhY3RpdmF0ZVBsYWNlKGNvbXBvbmVudCwgdGhpcy5wbGFjZVJvdXRlci5wYXJzZVVybChuZXh0U3RhdGUudXJsKSk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBwcm90ZWN0ZWQgYXN5bmMgYXV0aG9yaXNlUGxhY2VUaGVuKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCwgcnVuUGxhY2VHdWFyZHM6IChwbGFjZURlZmluaXRpb246IFBsYWNlRGVmaW5pdGlvbikgPT4gUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pIHtcbiAgICBpZiAoUGxhY2VDb21wb25lbnQuaXNQbGFjZUNvbXBvbmVudENvbnN0cnVjdG9yKGFjdGl2YXRlZFJvdXRlLmNvbXBvbmVudCkpIHtcbiAgICAgIGNvbnN0IHBsYWNlRGVmaW5pdGlvbiA9IFBsYWNlQ29tcG9uZW50LmdldERlZmluaXRpb24oYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KTtcbiAgICAgIGNvbnN0IGF1dGhvcmlzZVJlc3VsdCA9IHBsYWNlRGVmaW5pdGlvbi5hdXRoZW50aWNhdGUgPyBhd2FpdCB0aGlzLmlzQXV0aG9yaXNlZChhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpIDogdHJ1ZTtcbiAgICAgIGlmIChhdXRob3Jpc2VSZXN1bHQgPT09IHRydWUpIHtcbiAgICAgICAgLy8gd2UncmUgYXV0aG9yaXNlZCwgbm93IHJ1biB0aGUgcGxhY2UgZ3VhcmRzLlxuICAgICAgICByZXR1cm4gcnVuUGxhY2VHdWFyZHMocGxhY2VEZWZpbml0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdub3QgYXV0aG9yaXNlZCByZXN1bHQnLCBhdXRob3Jpc2VSZXN1bHQpO1xuICAgICAgICByZXR1cm4gYXV0aG9yaXNlUmVzdWx0O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgcmV0dXJuIGxhbmcuaWxsZWdhbFN0YXRlKGBleHBlY3RlZCBjb21wb25lbnQgdG8gYmUgYW4gaW5zdGFuY2Ugb2YgUGxhY2VDb21wb25lbnQsIGdvdCAke2FjdGl2YXRlZFJvdXRlLmNvbXBvbmVudH1gKTtcbiAgICB9XG4gIH1cblxuICBAVHJhY2UoKVxuICBhc3luYyBpc0F1dGhvcmlzZWQoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgIGNvbnN0IGF1dGhvcmlzZWQgPSB0aGlzLmdldEF1dGhHdWFyZCh0aGlzLmluamVjdG9yKS5jYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpO1xuICAgIHJldHVybiAoYXV0aG9yaXNlZCBpbnN0YW5jZW9mIE9ic2VydmFibGUpID8gYXV0aG9yaXNlZC50b1Byb21pc2UoKSA6IGF1dGhvcmlzZWQ7XG4gIH1cblxuICBhYnN0cmFjdCBnZXRBdXRoR3VhcmQoaW5qZWN0b3I6IEluamVjdG9yKTogQ2FuQWN0aXZhdGU7XG59XG4iXX0=
|
|
@@ -1,133 +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 { Location } from '@angular/common';
|
|
7
|
-
import { Injectable, Injector } from '@angular/core';
|
|
8
|
-
import { Router } from '@angular/router';
|
|
9
|
-
import { InteractionService } from '../../interaction/services/interaction.service';
|
|
10
|
-
import { PlaceRouter } from '../place-router';
|
|
11
|
-
import * as _ from 'lodash';
|
|
12
|
-
import { UrlSnapshot } from '../url-snapshot';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@angular/router";
|
|
15
|
-
import * as i2 from "../place-router";
|
|
16
|
-
import * as i3 from "@angular/common";
|
|
17
|
-
import * as i4 from "../../interaction/services/interaction.service";
|
|
18
|
-
var InteractionGuard = /** @class */ (function () {
|
|
19
|
-
function InteractionGuard(router, injector, placeRouter, angularLocation, interactionService) {
|
|
20
|
-
this.router = router;
|
|
21
|
-
this.injector = injector;
|
|
22
|
-
this.placeRouter = placeRouter;
|
|
23
|
-
this.angularLocation = angularLocation;
|
|
24
|
-
this.interactionService = interactionService;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* @param {?} route
|
|
28
|
-
* @param {?} state
|
|
29
|
-
* @return {?}
|
|
30
|
-
*/
|
|
31
|
-
InteractionGuard.prototype.canActivate = /**
|
|
32
|
-
* @param {?} route
|
|
33
|
-
* @param {?} state
|
|
34
|
-
* @return {?}
|
|
35
|
-
*/
|
|
36
|
-
function (route, state) {
|
|
37
|
-
/** @type {?} */
|
|
38
|
-
var url = this.router.parseUrl(state.url);
|
|
39
|
-
if (!this.interactionService.isActive() && url.root.children[UrlSnapshot.INTERACTION_ROUTER_OUTLET]) {
|
|
40
|
-
// This happens if we reload the page or the url was pasted as the route should only be activated
|
|
41
|
-
// after the interaction context has become active.
|
|
42
|
-
delete url.root.children[UrlSnapshot.INTERACTION_ROUTER_OUTLET];
|
|
43
|
-
return url;
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
return true;
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* @param {?} component
|
|
51
|
-
* @param {?} currentRoute
|
|
52
|
-
* @param {?} currentState
|
|
53
|
-
* @param {?=} nextState
|
|
54
|
-
* @return {?}
|
|
55
|
-
*/
|
|
56
|
-
InteractionGuard.prototype.canDeactivate = /**
|
|
57
|
-
* @param {?} component
|
|
58
|
-
* @param {?} currentRoute
|
|
59
|
-
* @param {?} currentState
|
|
60
|
-
* @param {?=} nextState
|
|
61
|
-
* @return {?}
|
|
62
|
-
*/
|
|
63
|
-
function (component, currentRoute, currentState, nextState) {
|
|
64
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
65
|
-
var currentIds, routeIds, activity;
|
|
66
|
-
return tslib_1.__generator(this, function (_a) {
|
|
67
|
-
switch (_a.label) {
|
|
68
|
-
case 0:
|
|
69
|
-
if (!this.interactionService.isActive()) return [3 /*break*/, 2];
|
|
70
|
-
currentIds = this.interactionService.activeInteractionContextIds.value;
|
|
71
|
-
routeIds = this.placeRouter.getActiveInteractionIdsFromUrl(nextState.url);
|
|
72
|
-
if (!!_.isEqual(currentIds, routeIds)) return [3 /*break*/, 2];
|
|
73
|
-
// The activity is still active so the route change was triggered by the back button.
|
|
74
|
-
return [4 /*yield*/, this.interactionService.getCurrentActivity()];
|
|
75
|
-
case 1:
|
|
76
|
-
activity = _a.sent();
|
|
77
|
-
activity.cancel();
|
|
78
|
-
_a.label = 2;
|
|
79
|
-
case 2:
|
|
80
|
-
// IMPORTANT:
|
|
81
|
-
// We always return true, the router state engine will redirect as required. Return false
|
|
82
|
-
// during the guard causes all kinds of grief. It might be worth trying a redirect here
|
|
83
|
-
// again now that our state engine is more thorough.
|
|
84
|
-
return [2 /*return*/, true];
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
};
|
|
89
|
-
InteractionGuard.decorators = [
|
|
90
|
-
{ type: Injectable, args: [{
|
|
91
|
-
providedIn: 'root'
|
|
92
|
-
},] }
|
|
93
|
-
];
|
|
94
|
-
/** @nocollapse */
|
|
95
|
-
InteractionGuard.ctorParameters = function () { return [
|
|
96
|
-
{ type: Router },
|
|
97
|
-
{ type: Injector },
|
|
98
|
-
{ type: PlaceRouter },
|
|
99
|
-
{ type: Location },
|
|
100
|
-
{ type: InteractionService }
|
|
101
|
-
]; };
|
|
102
|
-
/** @nocollapse */ InteractionGuard.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function InteractionGuard_Factory() { return new InteractionGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i2.PlaceRouter), i0.ɵɵinject(i3.Location), i0.ɵɵinject(i4.InteractionService)); }, token: InteractionGuard, providedIn: "root" });
|
|
103
|
-
return InteractionGuard;
|
|
104
|
-
}());
|
|
105
|
-
export { InteractionGuard };
|
|
106
|
-
if (false) {
|
|
107
|
-
/**
|
|
108
|
-
* @type {?}
|
|
109
|
-
* @private
|
|
110
|
-
*/
|
|
111
|
-
InteractionGuard.prototype.router;
|
|
112
|
-
/**
|
|
113
|
-
* @type {?}
|
|
114
|
-
* @private
|
|
115
|
-
*/
|
|
116
|
-
InteractionGuard.prototype.injector;
|
|
117
|
-
/**
|
|
118
|
-
* @type {?}
|
|
119
|
-
* @private
|
|
120
|
-
*/
|
|
121
|
-
InteractionGuard.prototype.placeRouter;
|
|
122
|
-
/**
|
|
123
|
-
* @type {?}
|
|
124
|
-
* @private
|
|
125
|
-
*/
|
|
126
|
-
InteractionGuard.prototype.angularLocation;
|
|
127
|
-
/**
|
|
128
|
-
* @type {?}
|
|
129
|
-
* @private
|
|
130
|
-
*/
|
|
131
|
-
InteractionGuard.prototype.interactionService;
|
|
132
|
-
}
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24uZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2UvZ3VhcmRzL2ludGVyYWN0aW9uLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFJTCxNQUFNLEVBR1AsTUFBTSxpQkFBaUIsQ0FBQztBQUl6QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFFOUM7SUFLRSwwQkFBb0IsTUFBYyxFQUNkLFFBQWtCLEVBQ2xCLFdBQXdCLEVBQ2YsZUFBeUIsRUFDekIsa0JBQXNDO1FBSi9DLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ2Ysb0JBQWUsR0FBZixlQUFlLENBQVU7UUFDekIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUNuRSxDQUFDOzs7Ozs7SUFFRCxzQ0FBVzs7Ozs7SUFBWCxVQUFZLEtBQTZCLEVBQUUsS0FBMEI7O1lBQzdELEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDLEVBQUU7WUFDbkcsaUdBQWlHO1lBQ2pHLG1EQUFtRDtZQUNuRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBQ2hFLE9BQU8sR0FBRyxDQUFDO1NBQ1o7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDOzs7Ozs7OztJQUVLLHdDQUFhOzs7Ozs7O0lBQW5CLFVBQW9CLFNBQXdCLEVBQUUsWUFBb0MsRUFBRSxZQUFpQyxFQUFFLFNBQStCOzs7Ozs7NkJBRWhKLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsRUFBbEMsd0JBQWtDO3dCQUM5QixVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLDJCQUEyQixDQUFDLEtBQUs7d0JBQ3RFLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLDhCQUE4QixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7NkJBQzNFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQWhDLHdCQUFnQzs7d0JBRWpCLHFCQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxFQUFBOzt3QkFBN0QsUUFBUSxHQUFHLFNBQWtEO3dCQUNuRSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7OztvQkFHdEIsYUFBYTtvQkFDYiwwRkFBMEY7b0JBQzFGLHdGQUF3RjtvQkFDeEYsb0RBQW9EO29CQUNwRCxzQkFBTyxJQUFJLEVBQUM7Ozs7S0FDYjs7Z0JBeENGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBZEMsTUFBTTtnQkFMYSxRQUFRO2dCQWFwQixXQUFXO2dCQWRYLFFBQVE7Z0JBYVIsa0JBQWtCOzs7MkJBYjNCO0NBNERDLEFBMUNELElBMENDO1NBdkNZLGdCQUFnQjs7Ozs7O0lBRWYsa0NBQXNCOzs7OztJQUN0QixvQ0FBMEI7Ozs7O0lBQzFCLHVDQUFnQzs7Ozs7SUFDaEMsMkNBQTBDOzs7OztJQUMxQyw4Q0FBdUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgQ2FuQWN0aXZhdGUsXG4gIENhbkRlYWN0aXZhdGUsXG4gIFJvdXRlcixcbiAgUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgVXJsVHJlZVxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhY2UgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOb29wQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9ub29wL25vb3AuY29tcG9uZW50JztcbmltcG9ydCB7IEludGVyYWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyYWN0aW9uL3NlcnZpY2VzL2ludGVyYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgVXJsU25hcHNob3QgfSBmcm9tICcuLi91cmwtc25hcHNob3QnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGlvbkd1YXJkIGltcGxlbWVudHMgQ2FuRGVhY3RpdmF0ZTxOb29wQ29tcG9uZW50PiwgQ2FuQWN0aXZhdGUge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICAgICAgICBwcml2YXRlIHBsYWNlUm91dGVyOiBQbGFjZVJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhbmd1bGFyTG9jYXRpb246IExvY2F0aW9uLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGludGVyYWN0aW9uU2VydmljZTogSW50ZXJhY3Rpb25TZXJ2aWNlKSB7XG4gIH1cblxuICBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHwgYm9vbGVhbiB8IFVybFRyZWUge1xuICAgIGNvbnN0IHVybCA9IHRoaXMucm91dGVyLnBhcnNlVXJsKHN0YXRlLnVybCk7XG4gICAgaWYgKCF0aGlzLmludGVyYWN0aW9uU2VydmljZS5pc0FjdGl2ZSgpICYmIHVybC5yb290LmNoaWxkcmVuW1VybFNuYXBzaG90LklOVEVSQUNUSU9OX1JPVVRFUl9PVVRMRVRdKSB7XG4gICAgICAvLyBUaGlzIGhhcHBlbnMgaWYgd2UgcmVsb2FkIHRoZSBwYWdlIG9yIHRoZSB1cmwgd2FzIHBhc3RlZCBhcyB0aGUgcm91dGUgc2hvdWxkIG9ubHkgYmUgYWN0aXZhdGVkXG4gICAgICAvLyBhZnRlciB0aGUgaW50ZXJhY3Rpb24gY29udGV4dCBoYXMgYmVjb21lIGFjdGl2ZS5cbiAgICAgIGRlbGV0ZSB1cmwucm9vdC5jaGlsZHJlbltVcmxTbmFwc2hvdC5JTlRFUkFDVElPTl9ST1VURVJfT1VUTEVUXTtcbiAgICAgIHJldHVybiB1cmw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNhbkRlYWN0aXZhdGUoY29tcG9uZW50OiBOb29wQ29tcG9uZW50LCBjdXJyZW50Um91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIGN1cnJlbnRTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCwgbmV4dFN0YXRlPzogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHtcblxuICAgIGlmICh0aGlzLmludGVyYWN0aW9uU2VydmljZS5pc0FjdGl2ZSgpKSB7XG4gICAgICBjb25zdCBjdXJyZW50SWRzID0gdGhpcy5pbnRlcmFjdGlvblNlcnZpY2UuYWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWRzLnZhbHVlO1xuICAgICAgY29uc3Qgcm91dGVJZHMgPSB0aGlzLnBsYWNlUm91dGVyLmdldEFjdGl2ZUludGVyYWN0aW9uSWRzRnJvbVVybChuZXh0U3RhdGUudXJsKTtcbiAgICAgIGlmICghXy5pc0VxdWFsKGN1cnJlbnRJZHMsIHJvdXRlSWRzKSkge1xuICAgICAgICAvLyBUaGUgYWN0aXZpdHkgaXMgc3RpbGwgYWN0aXZlIHNvIHRoZSByb3V0ZSBjaGFuZ2Ugd2FzIHRyaWdnZXJlZCBieSB0aGUgYmFjayBidXR0b24uXG4gICAgICAgIGNvbnN0IGFjdGl2aXR5ID0gYXdhaXQgdGhpcy5pbnRlcmFjdGlvblNlcnZpY2UuZ2V0Q3VycmVudEFjdGl2aXR5KCk7XG4gICAgICAgIGFjdGl2aXR5LmNhbmNlbCgpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBJTVBPUlRBTlQ6XG4gICAgLy8gV2UgYWx3YXlzIHJldHVybiB0cnVlLCB0aGUgcm91dGVyIHN0YXRlIGVuZ2luZSB3aWxsIHJlZGlyZWN0IGFzIHJlcXVpcmVkLiAgUmV0dXJuIGZhbHNlXG4gICAgLy8gZHVyaW5nIHRoZSBndWFyZCBjYXVzZXMgYWxsIGtpbmRzIG9mIGdyaWVmLiAgSXQgbWlnaHQgYmUgd29ydGggdHJ5aW5nIGEgcmVkaXJlY3QgaGVyZVxuICAgIC8vIGFnYWluIG5vdyB0aGF0IG91ciBzdGF0ZSBlbmdpbmUgaXMgbW9yZSB0aG9yb3VnaC5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Location } from '@angular/common';
|
|
2
|
-
import { Injector } from '@angular/core';
|
|
3
|
-
import { ActivatedRouteSnapshot, CanActivate, CanDeactivate, Router, RouterStateSnapshot, UrlTree } from '@angular/router';
|
|
4
|
-
import { Observable } from 'rxjs';
|
|
5
|
-
import { NoopComponent } from '../../components/noop/noop.component';
|
|
6
|
-
import { InteractionService } from '../../interaction/services/interaction.service';
|
|
7
|
-
import { PlaceRouter } from '../place-router';
|
|
8
|
-
export declare class InteractionGuard implements CanDeactivate<NoopComponent>, CanActivate {
|
|
9
|
-
private router;
|
|
10
|
-
private injector;
|
|
11
|
-
private placeRouter;
|
|
12
|
-
private readonly angularLocation;
|
|
13
|
-
private readonly interactionService;
|
|
14
|
-
constructor(router: Router, injector: Injector, placeRouter: PlaceRouter, angularLocation: Location, interactionService: InteractionService);
|
|
15
|
-
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;
|
|
16
|
-
canDeactivate(component: NoopComponent, currentRoute: ActivatedRouteSnapshot, currentState: RouterStateSnapshot, nextState?: RouterStateSnapshot): Promise<boolean | UrlTree>;
|
|
17
|
-
}
|