@coolon/angular-ui-powerups 0.0.67 → 0.0.69
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 +2723 -2285
- 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 +24 -22
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/esm2015/coolon-angular-ui-powerups.js +24 -22
- package/esm2015/index.js +2 -2
- package/esm2015/lib/angular-ui-powerups.module.js +6 -3
- package/esm2015/lib/components/index.js +2 -1
- package/esm2015/lib/components/noop/noop.component.js +19 -0
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -2
- package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +2 -2
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +2 -2
- package/esm2015/lib/interaction/components/interaction-outlet/interaction-outlet.component.js +19 -0
- package/esm2015/lib/interaction/guards/interaction-guard.service.js +85 -0
- package/esm2015/lib/interaction/index.js +3 -2
- package/esm2015/lib/interaction/interaction.module.js +8 -3
- package/esm2015/lib/interaction/services/dialog-interaction.service.js +30 -5
- package/esm2015/lib/place/components/abstract-place-navigation.component.js +5 -5
- package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +2 -2
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +60 -66
- package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +2 -2
- package/esm2015/lib/place/index.js +9 -8
- package/esm2015/lib/place/navigation-session.js +147 -0
- package/esm2015/lib/place/place-component.js +18 -14
- package/esm2015/lib/place/place-definition.js +207 -5
- package/esm2015/lib/place/place-history.js +3 -2
- package/esm2015/lib/place/place-router.js +184 -89
- package/esm2015/lib/place/route/formatter.js +63 -0
- package/esm2015/lib/place/route/guards/leave-place.guard.js +193 -0
- package/esm2015/lib/place/route/guards/place-route.guard.js +243 -0
- package/esm2015/lib/place/route/parameter-decorators.js +35 -18
- package/esm2015/lib/place/route/parameter-definition.class.js +123 -67
- package/esm2015/lib/place/route/parameter-sanitiser.js +4 -3
- package/esm2015/lib/place/route/parameter-snapshot.js +11 -388
- package/esm2015/lib/place/route/visit-sanitiser.js +88 -0
- package/esm2015/lib/place/visit.js +107 -8
- package/esm2015/public_api.js +4 -4
- package/esm5/coolon-angular-ui-powerups.js +24 -22
- package/esm5/index.js +2 -2
- package/esm5/lib/angular-ui-powerups.module.js +6 -3
- package/esm5/lib/components/index.js +2 -1
- package/esm5/lib/components/noop/noop.component.js +21 -0
- package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js +2 -2
- package/esm5/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +2 -2
- package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +2 -2
- package/esm5/lib/interaction/components/interaction-outlet/interaction-outlet.component.js +21 -0
- package/esm5/lib/interaction/guards/interaction-guard.service.js +94 -0
- package/esm5/lib/interaction/index.js +3 -2
- package/esm5/lib/interaction/interaction.module.js +8 -3
- package/esm5/lib/interaction/services/dialog-interaction.service.js +28 -5
- package/esm5/lib/place/components/abstract-place-navigation.component.js +5 -5
- package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +2 -2
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js +70 -82
- package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +2 -2
- package/esm5/lib/place/index.js +9 -8
- package/esm5/lib/place/navigation-session.js +193 -0
- package/esm5/lib/place/place-component.js +19 -15
- package/esm5/lib/place/place-definition.js +263 -5
- package/esm5/lib/place/place-history.js +7 -3
- package/esm5/lib/place/place-router.js +241 -108
- package/esm5/lib/place/route/formatter.js +96 -0
- package/esm5/lib/place/route/guards/leave-place.guard.js +152 -0
- package/esm5/lib/place/route/guards/place-route.guard.js +273 -0
- package/esm5/lib/place/route/parameter-decorators.js +35 -18
- package/esm5/lib/place/route/parameter-definition.class.js +179 -76
- package/esm5/lib/place/route/parameter-sanitiser.js +4 -3
- package/esm5/lib/place/route/parameter-snapshot.js +11 -480
- package/esm5/lib/place/route/visit-sanitiser.js +99 -0
- package/esm5/lib/place/visit.js +160 -8
- package/esm5/public_api.js +4 -4
- package/fesm2015/coolon-angular-ui-powerups.js +1452 -1108
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +2715 -2281
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/noop/noop.component.d.ts +3 -0
- package/lib/interaction/components/interaction-outlet/interaction-outlet.component.d.ts +3 -0
- package/lib/interaction/guards/interaction-guard.service.d.ts +13 -0
- package/lib/interaction/index.d.ts +2 -1
- package/lib/interaction/services/dialog-interaction.service.d.ts +5 -1
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +12 -12
- package/lib/place/index.d.ts +5 -4
- package/lib/place/navigation-session.d.ts +26 -0
- package/lib/place/place-component.d.ts +3 -3
- package/lib/place/place-definition.d.ts +30 -3
- package/lib/place/place-history.d.ts +3 -3
- package/lib/place/place-router.d.ts +25 -19
- package/lib/place/route/{parameter-type.d.ts → formatter.d.ts} +5 -5
- package/lib/place/{guards → route/guards}/leave-place.guard.d.ts +3 -3
- package/lib/place/route/guards/place-route.guard.d.ts +27 -0
- package/lib/place/route/parameter-decorators.d.ts +14 -6
- package/lib/place/route/parameter-definition.class.d.ts +21 -17
- package/lib/place/route/parameter-sanitiser.d.ts +3 -2
- package/lib/place/route/parameter-snapshot.d.ts +4 -26
- package/lib/place/route/visit-sanitiser.d.ts +12 -0
- package/lib/place/visit.d.ts +24 -3
- package/package.json +1 -1
- package/schematics/place-routes/place-class-scanner.d.ts +2 -2
- package/schematics/place-routes/place-class-scanner.js +7 -7
- package/schematics/place-routes/place-class-scanner.js.map +1 -1
- package/schematics/place-routes/place-def.d.ts +3 -2
- package/schematics/place-routes/place-def.js +21 -12
- package/schematics/place-routes/place-def.js.map +1 -1
- package/schematics/place-routes/templates/place-destinations.ts.template +5 -3
- package/schematics/place-routes/templates/place-routes.ts.template +10 -1
- package/schematics/place-routes/templates/place-visits.ts.template +21 -0
- package/esm2015/lib/interaction/guards/close-interaction.guard.js +0 -62
- package/esm2015/lib/place/guards/leave-place.guard.js +0 -194
- package/esm2015/lib/place/guards/place-route.guard.js +0 -74
- package/esm2015/lib/place/route/parameter-type.js +0 -61
- package/esm2015/lib/place/route/route-parameter-value.js +0 -230
- package/esm5/lib/interaction/guards/close-interaction.guard.js +0 -66
- package/esm5/lib/place/guards/leave-place.guard.js +0 -159
- package/esm5/lib/place/guards/place-route.guard.js +0 -78
- package/esm5/lib/place/route/parameter-type.js +0 -94
- package/esm5/lib/place/route/route-parameter-value.js +0 -316
- package/lib/interaction/guards/close-interaction.guard.d.ts +0 -12
- package/lib/place/guards/place-route.guard.d.ts +0 -10
- package/lib/place/route/route-parameter-value.d.ts +0 -42
|
@@ -0,0 +1,152 @@
|
|
|
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 { InteractionContext } from '../../../interaction/interaction-context';
|
|
10
|
+
import { PlaceRouter } from '../../place-router';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/router";
|
|
13
|
+
import * as i2 from "../../place-router";
|
|
14
|
+
import * as i3 from "../../../interaction/interaction-context";
|
|
15
|
+
import * as i4 from "@angular/common";
|
|
16
|
+
var LeavePlaceGuard = /** @class */ (function () {
|
|
17
|
+
function LeavePlaceGuard(router, injector, placeRouter, interactionContext, angularLocation) {
|
|
18
|
+
this.router = router;
|
|
19
|
+
this.injector = injector;
|
|
20
|
+
this.placeRouter = placeRouter;
|
|
21
|
+
this.interactionContext = interactionContext;
|
|
22
|
+
this.angularLocation = angularLocation;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @private
|
|
26
|
+
* @param {?} nextState
|
|
27
|
+
* @param {?} placeDefinitionPath
|
|
28
|
+
* @return {?}
|
|
29
|
+
*/
|
|
30
|
+
LeavePlaceGuard.prototype.isLeavingTheCurrentPlace = /**
|
|
31
|
+
* @private
|
|
32
|
+
* @param {?} nextState
|
|
33
|
+
* @param {?} placeDefinitionPath
|
|
34
|
+
* @return {?}
|
|
35
|
+
*/
|
|
36
|
+
function (nextState, placeDefinitionPath) {
|
|
37
|
+
// TODO: this will break with child routes... need to examine the router states properly.
|
|
38
|
+
return !nextState.url.startsWith(placeDefinitionPath);
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* @param {?} component
|
|
42
|
+
* @param {?} currentRoute
|
|
43
|
+
* @param {?} currentState
|
|
44
|
+
* @param {?=} nextState
|
|
45
|
+
* @return {?}
|
|
46
|
+
*/
|
|
47
|
+
LeavePlaceGuard.prototype.canDeactivate = /**
|
|
48
|
+
* @param {?} component
|
|
49
|
+
* @param {?} currentRoute
|
|
50
|
+
* @param {?} currentState
|
|
51
|
+
* @param {?=} nextState
|
|
52
|
+
* @return {?}
|
|
53
|
+
*/
|
|
54
|
+
function (component, currentRoute, currentState, nextState) {
|
|
55
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
56
|
+
var placeDefinitionPath, self_1, canLeave;
|
|
57
|
+
return tslib_1.__generator(this, function (_a) {
|
|
58
|
+
switch (_a.label) {
|
|
59
|
+
case 0:
|
|
60
|
+
placeDefinitionPath = "/" + component.placeDefinition.path;
|
|
61
|
+
if (!this.placeRouter.navigationSession.alreadyAccepted(component)) return [3 /*break*/, 1];
|
|
62
|
+
// We'll get called multiple times if there's any parameter sanitisation so
|
|
63
|
+
// we always return true if we accepted on a previous cycle of the current
|
|
64
|
+
// navigation session.
|
|
65
|
+
return [2 /*return*/, true];
|
|
66
|
+
case 1:
|
|
67
|
+
self_1 = this;
|
|
68
|
+
canLeave = true;
|
|
69
|
+
if (!this.isLeavingTheCurrentPlace(nextState, placeDefinitionPath)) return [3 /*break*/, 4];
|
|
70
|
+
// we check the interaction first, so that components that don't need to check if they're in an
|
|
71
|
+
// interaction during the canDeactivate cycle.
|
|
72
|
+
// TODO: Add tests: show dialog -> hit back -> same route
|
|
73
|
+
if (this.interactionContext.isActive()) {
|
|
74
|
+
canLeave = false;
|
|
75
|
+
console.log('cancelling', { activity: this.interactionContext.currentActivity });
|
|
76
|
+
this.interactionContext.currentActivity.cancel(null);
|
|
77
|
+
}
|
|
78
|
+
if (!canLeave) return [3 /*break*/, 3];
|
|
79
|
+
return [4 /*yield*/, component.canDeactivate()];
|
|
80
|
+
case 2:
|
|
81
|
+
// TODO: Add tests: hit back -> confirm leave dialog -> hit back -> close dialog -> hit back -> confirm leave dialog.
|
|
82
|
+
canLeave = _a.sent();
|
|
83
|
+
_a.label = 3;
|
|
84
|
+
case 3: return [3 /*break*/, 5];
|
|
85
|
+
case 4:
|
|
86
|
+
if (this.interactionContext.isActive()) {
|
|
87
|
+
console.log('cancelling', { activity: this.interactionContext.currentActivity });
|
|
88
|
+
this.interactionContext.currentActivity.cancel(null);
|
|
89
|
+
canLeave = false;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
canLeave = true;
|
|
93
|
+
}
|
|
94
|
+
_a.label = 5;
|
|
95
|
+
case 5:
|
|
96
|
+
if (canLeave) {
|
|
97
|
+
// We'll get called multiple times if there's any parameter sanitisation so
|
|
98
|
+
// we remember the acceptance for the duration of the current navigation session.
|
|
99
|
+
self_1.placeRouter.navigationSession.rememberAcceptanceOf(component);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
// Angular doesn't preserve the url when a guard cancels the back button.
|
|
103
|
+
// See https://github.com/angular/angular/issues/13586#issuecomment-432795720
|
|
104
|
+
if (this.placeRouter.navigationSession.isPopState) {
|
|
105
|
+
console.log('cancelled during popstate');
|
|
106
|
+
this.angularLocation.go(this.placeRouter.navigationSession.popStateReturnUrl);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return [2 /*return*/, canLeave];
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
LeavePlaceGuard.decorators = [
|
|
115
|
+
{ type: Injectable, args: [{
|
|
116
|
+
providedIn: 'root'
|
|
117
|
+
},] }
|
|
118
|
+
];
|
|
119
|
+
/** @nocollapse */
|
|
120
|
+
LeavePlaceGuard.ctorParameters = function () { return [
|
|
121
|
+
{ type: Router },
|
|
122
|
+
{ type: Injector },
|
|
123
|
+
{ type: PlaceRouter },
|
|
124
|
+
{ type: InteractionContext },
|
|
125
|
+
{ type: Location }
|
|
126
|
+
]; };
|
|
127
|
+
/** @nocollapse */ LeavePlaceGuard.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LeavePlaceGuard_Factory() { return new LeavePlaceGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i2.PlaceRouter), i0.ɵɵinject(i3.InteractionContext), i0.ɵɵinject(i4.Location)); }, token: LeavePlaceGuard, providedIn: "root" });
|
|
128
|
+
return LeavePlaceGuard;
|
|
129
|
+
}());
|
|
130
|
+
export { LeavePlaceGuard };
|
|
131
|
+
if (false) {
|
|
132
|
+
/**
|
|
133
|
+
* @type {?}
|
|
134
|
+
* @private
|
|
135
|
+
*/
|
|
136
|
+
LeavePlaceGuard.prototype.router;
|
|
137
|
+
/**
|
|
138
|
+
* @type {?}
|
|
139
|
+
* @private
|
|
140
|
+
*/
|
|
141
|
+
LeavePlaceGuard.prototype.injector;
|
|
142
|
+
/**
|
|
143
|
+
* @type {?}
|
|
144
|
+
* @private
|
|
145
|
+
*/
|
|
146
|
+
LeavePlaceGuard.prototype.placeRouter;
|
|
147
|
+
/** @type {?} */
|
|
148
|
+
LeavePlaceGuard.prototype.interactionContext;
|
|
149
|
+
/** @type {?} */
|
|
150
|
+
LeavePlaceGuard.prototype.angularLocation;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhdmUtcGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvZ3VhcmRzL2xlYXZlLXBsYWNlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBeUMsTUFBTSxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBRWpEO0lBS0UseUJBQW9CLE1BQWMsRUFDZCxRQUFrQixFQUNsQixXQUF3QixFQUN2QixrQkFBc0MsRUFBVyxlQUF5QjtRQUgzRSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN2Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVcsb0JBQWUsR0FBZixlQUFlLENBQVU7SUFDL0YsQ0FBQzs7Ozs7OztJQUVPLGtEQUF3Qjs7Ozs7O0lBQWhDLFVBQWlDLFNBQThCLEVBQUUsbUJBQTJCO1FBQzFGLHlGQUF5RjtRQUN6RixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN4RCxDQUFDOzs7Ozs7OztJQUVLLHVDQUFhOzs7Ozs7O0lBQW5CLFVBQW9CLFNBQXlCLEVBQUUsWUFBb0MsRUFBRSxZQUFpQyxFQUFFLFNBQStCOzs7Ozs7d0JBQy9JLG1CQUFtQixHQUFHLE1BQUksU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFNOzZCQWdENUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLEVBQTdELHdCQUE2RDt3QkFDL0QsMkVBQTJFO3dCQUMzRSwwRUFBMEU7d0JBQzFFLHNCQUFzQjt3QkFDdEIsc0JBQU8sSUFBSSxFQUFDOzt3QkFFTixTQUFPLElBQUk7d0JBQ2IsUUFBUSxHQUFHLElBQUk7NkJBRWYsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxFQUE3RCx3QkFBNkQ7d0JBQy9ELCtGQUErRjt3QkFDL0YsOENBQThDO3dCQUM5Qyx5REFBeUQ7d0JBQ3pELElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxFQUFFOzRCQUN0QyxRQUFRLEdBQUcsS0FBSyxDQUFDOzRCQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQzs0QkFDakYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7eUJBQ3REOzZCQUtHLFFBQVEsRUFBUix3QkFBUTt3QkFFQyxxQkFBTSxTQUFTLENBQUMsYUFBYSxFQUFFLEVBQUE7O3dCQUQxQyxzSEFBc0g7d0JBQ3RILFFBQVEsR0FBRyxTQUErQixDQUFDOzs7O3dCQVU3QyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsRUFBRTs0QkFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7NEJBQ2pGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDOzRCQUNyRCxRQUFRLEdBQUcsS0FBSyxDQUFDO3lCQUNsQjs2QkFBTTs0QkFDTCxRQUFRLEdBQUcsSUFBSSxDQUFDO3lCQUNqQjs7O3dCQUdILElBQUksUUFBUSxFQUFFOzRCQUNaLDJFQUEyRTs0QkFDM0UsaUZBQWlGOzRCQUNqRixNQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDO3lCQUNwRTs2QkFBTTs0QkFDTCx5RUFBeUU7NEJBQ3pFLDZFQUE2RTs0QkFDN0UsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRTtnQ0FDakQsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2dDQUN6QyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLENBQUM7NkJBQy9FO3lCQUNGO3dCQUVELHNCQUFPLFFBQVEsRUFBQzs7OztLQUVuQjs7Z0JBM0hGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBUCtDLE1BQU07Z0JBRGpDLFFBQVE7Z0JBSXBCLFdBQVc7Z0JBRlgsa0JBQWtCO2dCQUhsQixRQUFROzs7MEJBQWpCO0NBbUlDLEFBNUhELElBNEhDO1NBekhZLGVBQWU7Ozs7OztJQUVkLGlDQUFzQjs7Ozs7SUFDdEIsbUNBQTBCOzs7OztJQUMxQixzQ0FBZ0M7O0lBQ2hDLDZDQUErQzs7SUFBRSwwQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuRGVhY3RpdmF0ZSwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEludGVyYWN0aW9uQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2ludGVyYWN0aW9uL2ludGVyYWN0aW9uLWNvbnRleHQnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wbGFjZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMZWF2ZVBsYWNlR3VhcmQgaW1wbGVtZW50cyBDYW5EZWFjdGl2YXRlPFBsYWNlQ29tcG9uZW50PiB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgIHByaXZhdGUgcGxhY2VSb3V0ZXI6IFBsYWNlUm91dGVyLFxuICAgICAgICAgICAgICByZWFkb25seSBpbnRlcmFjdGlvbkNvbnRleHQ6IEludGVyYWN0aW9uQ29udGV4dCwgcmVhZG9ubHkgYW5ndWxhckxvY2F0aW9uOiBMb2NhdGlvbikge1xuICB9XG5cbiAgcHJpdmF0ZSBpc0xlYXZpbmdUaGVDdXJyZW50UGxhY2UobmV4dFN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBwbGFjZURlZmluaXRpb25QYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBUT0RPOiB0aGlzIHdpbGwgYnJlYWsgd2l0aCBjaGlsZCByb3V0ZXMuLi4gbmVlZCB0byBleGFtaW5lIHRoZSByb3V0ZXIgc3RhdGVzIHByb3Blcmx5LlxuICAgIHJldHVybiAhbmV4dFN0YXRlLnVybC5zdGFydHNXaXRoKHBsYWNlRGVmaW5pdGlvblBhdGgpO1xuICB9XG5cbiAgYXN5bmMgY2FuRGVhY3RpdmF0ZShjb21wb25lbnQ6IFBsYWNlQ29tcG9uZW50LCBjdXJyZW50Um91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIGN1cnJlbnRTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCwgbmV4dFN0YXRlPzogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHBsYWNlRGVmaW5pdGlvblBhdGggPSBgLyR7Y29tcG9uZW50LnBsYWNlRGVmaW5pdGlvbi5wYXRofWA7XG4gICAgLy8gY29uc29sZS5sb2coJ2NhbkRlYWN0aXZhdGUnLCB7XG4gICAgLy8gICBzdGF0aWNQYXRoOiBwbGFjZURlZmluaXRpb25QYXRoLFxuICAgIC8vICAgY3VycmVudFN0YXRlVXJsOiBjdXJyZW50U3RhdGUudXJsLFxuICAgIC8vICAgbmV4dFN0YXRlVXJsOiBuZXh0U3RhdGUudXJsXG4gICAgLy8gICAvLyBhbHJlYWR5RGVjbGluZWQ6IHRoaXMuX2FscmVhZHlBY2NlcHRlZFxuICAgIC8vIH0pO1xuICAgIC8vIEV4YW1wbGUgb2YgdGhlIGFib3ZlIHdoZW4gbmF2aWdhdGluZyB0byBhIGRpZmZlcmVudCBjaGlsZCByb3V0ZS5cbiAgICAvLyBjYW5EZWFjdGl2YXRlIHtzdGF0aWNQYXRoOiBcIi9oZXJvLWRldGFpbHNcIixcbiAgICAvLyAgICBjdXJyZW50U3RhdGVVcmw6IFwiL3JvdXRlLXBhcmFtZXRlcnMvLTE7ZHY9QTtkbD1hLGIsYztyZHY9QTtyZGw9YSxiLGMvaGVyby1kZXRhaWxzXCIsXG4gICAgLy8gICAgbmV4dFN0YXRlVXJsOiBcIi9yb3V0ZS1wYXJhbWV0ZXJzLy0xO2R2PUE7ZGw9YSxiLGM7cmR2PUE7cmRsPWEsYixjL2hlcm8tc3RhdHNcIlxuICAgIC8vIH1cblxuICAgIC8vIEV4YW1wbGUgY2xpY2tpbmcgb24gcm91dGVyIHRhYiBvZiB0aGUgcGFyZW50IGNvbXBvbmVudCAoZGUtYWN0aXZhdGVzIHRoZSBwYXJlbnQgZHVlIHRvIHJvdXRlIHBhcmFtIGNoYW5nZXMpXG4gICAgLy8gY2FuRGVhY3RpdmF0ZSB7XG4gICAgLy8gICAgc3RhdGljUGF0aDogXCIvaGVyby1zdGF0c1wiLFxuICAgIC8vICAgIGN1cnJlbnRTdGF0ZVVybDogXCIvcm91dGUtcGFyYW1ldGVycy8tMTtkdj1BO2RsPWEsYixjO3Jkdj1BO3JkbD1hLGIsYy9oZXJvLXN0YXRzXCIsXG4gICAgLy8gICAgbmV4dFN0YXRlVXJsOiBcIi9yb3V0ZS1wYXJhbWV0ZXJzL1wiXG4gICAgLy8gfVxuICAgIC8vIGNhbkRlYWN0aXZhdGUge1xuICAgIC8vICAgIHN0YXRpY1BhdGg6IFwiL3JvdXRlLXBhcmFtZXRlcnNcIixcbiAgICAvLyAgICBjdXJyZW50U3RhdGVVcmw6IFwiL3JvdXRlLXBhcmFtZXRlcnMvLTE7ZHY9QTtkbD1hLGIsYztyZHY9QTtyZGw9YSxiLGMvaGVyby1zdGF0c1wiLFxuICAgIC8vICAgIG5leHRTdGF0ZVVybDogXCIvcm91dGUtcGFyYW1ldGVycy9cIlxuICAgIC8vIH1cbiAgICAvLyBsb2dnZXIuY2xhc3MuanM6NTQgUGFyYW1ldGVyU25hcHNob3Quc2FuaXRpc2UgLT4ge2lkTW9kZWw6IC0xLCBwdjogdW5kZWZpbmVkLCBwbDogQXJyYXkoMCksIGR2OiB1bmRlZmluZWQsIGRsOiBBcnJheSgwKSzCoOKApn1cbiAgICAvLyBwYXJhbWV0ZXItc25hcHNob3QudHM6MjAge25hbWU6IFwiaWRNb2RlbFwiLCBtaW5lOiAtMSwgdGhlaXJzOiBudWxsfVxuICAgIC8vIHBsYWNlLXJvdXRlci50czoyOCByZWRpcmVjdCBwYXRoICgzKcKgW1wicm91dGUtcGFyYW1ldGVyc1wiLCBcIi0xXCIsIHvigKZ9XVxuICAgIC8vIGNhbkRlYWN0aXZhdGUge1xuICAgIC8vICAgIHN0YXRpY1BhdGg6IFwiL2hlcm8tc3RhdHNcIixcbiAgICAvLyAgICBjdXJyZW50U3RhdGVVcmw6IFwiL3JvdXRlLXBhcmFtZXRlcnMvLTE7ZHY9QTtkbD1hLGIsYztyZHY9QTtyZGw9YSxiLGMvaGVyby1zdGF0c1wiLFxuICAgIC8vICAgIG5leHRTdGF0ZVVybDogXCIvcm91dGUtcGFyYW1ldGVycy8tMVwiXG4gICAgLy8gfVxuICAgIC8vIGNhbkRlYWN0aXZhdGUge1xuICAgIC8vICAgIHN0YXRpY1BhdGg6IFwiL3JvdXRlLXBhcmFtZXRlcnNcIixcbiAgICAvLyAgICBjdXJyZW50U3RhdGVVcmw6IFwiL3JvdXRlLXBhcmFtZXRlcnMvLTE7ZHY9QTtkbD1hLGIsYztyZHY9QTtyZGw9YSxiLGMvaGVyby1zdGF0c1wiLFxuICAgIC8vICAgIG5leHRTdGF0ZVVybDogXCIvcm91dGUtcGFyYW1ldGVycy8tMVwiXG4gICAgLy8gfVxuICAgIC8vIGxvZ2dlci5jbGFzcy5qczo1NCBQYXJhbWV0ZXJTbmFwc2hvdC5zYW5pdGlzZSAtPiB7aWRNb2RlbDogLTEsIHB2OiB1bmRlZmluZWQsIHBsOiBBcnJheSgwKSwgZHY6IFwiQVwiLCBkbDogQXJyYXkoMykswqDigKZ9XG4gICAgLy8gcGFyYW1ldGVyLXNuYXBzaG90LnRzOjIwIHtuYW1lOiBcImR2XCIsIG1pbmU6IFwiQVwiLCB0aGVpcnM6IHVuZGVmaW5lZH1cbiAgICAvLyBwbGFjZS1yb3V0ZXIudHM6MjggcmVkaXJlY3QgcGF0aCAoMynCoFtcInJvdXRlLXBhcmFtZXRlcnNcIiwgXCItMVwiLCB74oCmfV1cbiAgICAvLyBjYW5EZWFjdGl2YXRlIHtcbiAgICAvLyAgICBzdGF0aWNQYXRoOiBcIi9oZXJvLXN0YXRzXCIsXG4gICAgLy8gICAgY3VycmVudFN0YXRlVXJsOiBcIi9yb3V0ZS1wYXJhbWV0ZXJzLy0xO2R2PUE7ZGw9YSxiLGM7cmR2PUE7cmRsPWEsYixjL2hlcm8tc3RhdHNcIixcbiAgICAvLyAgICBuZXh0U3RhdGVVcmw6IFwiL3JvdXRlLXBhcmFtZXRlcnMvLTE7ZHY9QTtkbD1hLGIsYztyZHY9QTtyZGw9YSxiLGNcIlxuICAgIC8vIH1cblxuXG4gICAgLy8gVE9ETzogQWRkIHRlc3RzXG4gICAgaWYgKHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb24uYWxyZWFkeUFjY2VwdGVkKGNvbXBvbmVudCkpIHtcbiAgICAgIC8vIFdlJ2xsIGdldCBjYWxsZWQgbXVsdGlwbGUgdGltZXMgaWYgdGhlcmUncyBhbnkgcGFyYW1ldGVyIHNhbml0aXNhdGlvbiBzb1xuICAgICAgLy8gd2UgYWx3YXlzIHJldHVybiB0cnVlIGlmIHdlIGFjY2VwdGVkIG9uIGEgcHJldmlvdXMgY3ljbGUgb2YgdGhlIGN1cnJlbnRcbiAgICAgIC8vIG5hdmlnYXRpb24gc2Vzc2lvbi5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICAgIGxldCBjYW5MZWF2ZSA9IHRydWU7XG5cbiAgICAgIGlmICh0aGlzLmlzTGVhdmluZ1RoZUN1cnJlbnRQbGFjZShuZXh0U3RhdGUsIHBsYWNlRGVmaW5pdGlvblBhdGgpKSB7XG4gICAgICAgIC8vIHdlIGNoZWNrIHRoZSBpbnRlcmFjdGlvbiBmaXJzdCwgc28gdGhhdCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgbmVlZCB0byBjaGVjayBpZiB0aGV5J3JlIGluIGFuXG4gICAgICAgIC8vIGludGVyYWN0aW9uIGR1cmluZyB0aGUgY2FuRGVhY3RpdmF0ZSBjeWNsZS5cbiAgICAgICAgLy8gVE9ETzogQWRkIHRlc3RzOiBzaG93IGRpYWxvZyAtPiBoaXQgYmFjayAtPiBzYW1lIHJvdXRlXG4gICAgICAgIGlmICh0aGlzLmludGVyYWN0aW9uQ29udGV4dC5pc0FjdGl2ZSgpKSB7XG4gICAgICAgICAgY2FuTGVhdmUgPSBmYWxzZTtcbiAgICAgICAgICBjb25zb2xlLmxvZygnY2FuY2VsbGluZycsIHsgYWN0aXZpdHk6IHRoaXMuaW50ZXJhY3Rpb25Db250ZXh0LmN1cnJlbnRBY3Rpdml0eSB9KTtcbiAgICAgICAgICB0aGlzLmludGVyYWN0aW9uQ29udGV4dC5jdXJyZW50QWN0aXZpdHkuY2FuY2VsKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIC8vIE5vIGludGVyYWN0aW9uIGluIHByb2dyZXNzLCBzbyBhc2sgdGhlIGNvbXBvbmVudCAuXG4gICAgICAgIC8vIFRoaXMgbWF5IHN0YXJ0IGFuIGludGVyYWN0aW9uLCBoZW5jZSBjaGVja2luZyB0aGUgaW50ZXJhY3Rpb24gY29udGV4dCBhYm92ZS4gSS5lLiBpZiB0aGUgcGxhY2UgcG9wcyB1cCB0aGUgZGlhbG9nLCBhbmRcbiAgICAgICAgLy8gdGhlIHVzZXIgY2xpY2tzIGJhY2sgYWdhaW4sIHdlJ2xsIHJlLWVudGVyIGhlcmUgYW5kIGdvIGJhbmcgd2hlbiB0aGUgY29tcG9uZW50IHRyaWVzIHRvIG9wZW4gYW5vdGhlclxuICAgICAgICAvLyBkaWFsb2cuXG4gICAgICAgIGlmIChjYW5MZWF2ZSkge1xuICAgICAgICAgIC8vIFRPRE86IEFkZCB0ZXN0czogaGl0IGJhY2sgLT4gY29uZmlybSBsZWF2ZSBkaWFsb2cgLT4gaGl0IGJhY2sgLT4gY2xvc2UgZGlhbG9nIC0+ICBoaXQgYmFjayAtPiBjb25maXJtIGxlYXZlIGRpYWxvZy5cbiAgICAgICAgICBjYW5MZWF2ZSA9IGF3YWl0IGNvbXBvbmVudC5jYW5EZWFjdGl2YXRlKCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vIFdlIGFsc28gYmxvY2sgYmFjayBidXR0b24gcGFyYW1ldGVyIGNoYW5nZXMgd2hpbGUgdGhlIGRpYWxvZyBpcyBvcGVuLlxuICAgICAgICAvLyBOT1RFOiBOb3cgdGhhdCBJJ20gY2F0Y2hpbmcgcGFyYW1ldGVyIGNoYW5nZXMgSSBjb3VsZCBwb3NzaWJseSByZXRyeSB1c2luZyBhIGZyYWdtZW50IG9yXG4gICAgICAgIC8vIHF1ZXJ5IHBhcmFtZXRlciB0byB0cmFjayB0aGUgZGlhbG9nIGJlaW5nIG9wZW4uICBQcmV2aW91c2x5IEkgd2FzIGp1c3QgY2hlY2tpbmcgdGhpcyBvblxuICAgICAgICAvLyBwYXRoIGNoYW5nZXMuLi4gaWYgdGhhdCB3b3JrZWQgaXQnZCBmaXggdGhlIGNhc2Ugd2hlcmUgdGhlIGJhY2sgYnV0dG9uIGJyZWFrcyB3aXRoIGFuIGFjdGl2aXR5XG4gICAgICAgIC8vIG9wZW4gb24gdGhlIGZpcnN0IHBhZ2U6IGh0dHBzOi8vY29vbG9uLmF0bGFzc2lhbi5uZXQvYnJvd3NlL0FVUC0zM1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMuaW50ZXJhY3Rpb25Db250ZXh0LmlzQWN0aXZlKCkpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnY2FuY2VsbGluZycsIHsgYWN0aXZpdHk6IHRoaXMuaW50ZXJhY3Rpb25Db250ZXh0LmN1cnJlbnRBY3Rpdml0eSB9KTtcbiAgICAgICAgICB0aGlzLmludGVyYWN0aW9uQ29udGV4dC5jdXJyZW50QWN0aXZpdHkuY2FuY2VsKG51bGwpO1xuICAgICAgICAgIGNhbkxlYXZlID0gZmFsc2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2FuTGVhdmUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChjYW5MZWF2ZSkge1xuICAgICAgICAvLyBXZSdsbCBnZXQgY2FsbGVkIG11bHRpcGxlIHRpbWVzIGlmIHRoZXJlJ3MgYW55IHBhcmFtZXRlciBzYW5pdGlzYXRpb24gc29cbiAgICAgICAgLy8gd2UgcmVtZW1iZXIgdGhlIGFjY2VwdGFuY2UgZm9yIHRoZSBkdXJhdGlvbiBvZiB0aGUgY3VycmVudCBuYXZpZ2F0aW9uIHNlc3Npb24uXG4gICAgICAgIHNlbGYucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb24ucmVtZW1iZXJBY2NlcHRhbmNlT2YoY29tcG9uZW50KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFuZ3VsYXIgZG9lc24ndCBwcmVzZXJ2ZSB0aGUgdXJsIHdoZW4gYSBndWFyZCBjYW5jZWxzIHRoZSBiYWNrIGJ1dHRvbi5cbiAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzEzNTg2I2lzc3VlY29tbWVudC00MzI3OTU3MjBcbiAgICAgICAgaWYgKHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb24uaXNQb3BTdGF0ZSkge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdjYW5jZWxsZWQgZHVyaW5nIHBvcHN0YXRlJyk7XG4gICAgICAgICAgdGhpcy5hbmd1bGFyTG9jYXRpb24uZ28odGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uU2Vzc2lvbi5wb3BTdGF0ZVJldHVyblVybCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNhbkxlYXZlO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,273 @@
|
|
|
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 { Injectable, Injector } from '@angular/core';
|
|
7
|
+
import { Router } from '@angular/router';
|
|
8
|
+
import { lang } from '@coolon/pectin';
|
|
9
|
+
import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
|
|
10
|
+
import { PlaceComponent } from '../../place-component';
|
|
11
|
+
import { PlaceHistory } from '../../place-history';
|
|
12
|
+
import { PlaceRouter } from '../../place-router';
|
|
13
|
+
import { Visit } from '../../visit';
|
|
14
|
+
import { VisitSanitiser } from '../visit-sanitiser';
|
|
15
|
+
import * as i0 from "@angular/core";
|
|
16
|
+
import * as i1 from "@angular/router";
|
|
17
|
+
import * as i2 from "../../place-router";
|
|
18
|
+
import * as i3 from "../../place-history";
|
|
19
|
+
var PlaceRouteGuard = /** @class */ (function () {
|
|
20
|
+
function PlaceRouteGuard(router, placeRouter, placeHistory, injector) {
|
|
21
|
+
this.router = router;
|
|
22
|
+
this.placeRouter = placeRouter;
|
|
23
|
+
this.placeHistory = placeHistory;
|
|
24
|
+
this.injector = injector;
|
|
25
|
+
}
|
|
26
|
+
// @Trace()
|
|
27
|
+
// @Trace()
|
|
28
|
+
/**
|
|
29
|
+
* @param {?} activatedRoute
|
|
30
|
+
* @param {?} state
|
|
31
|
+
* @return {?}
|
|
32
|
+
*/
|
|
33
|
+
PlaceRouteGuard.prototype.canActivate =
|
|
34
|
+
// @Trace()
|
|
35
|
+
/**
|
|
36
|
+
* @param {?} activatedRoute
|
|
37
|
+
* @param {?} state
|
|
38
|
+
* @return {?}
|
|
39
|
+
*/
|
|
40
|
+
function (activatedRoute, state) {
|
|
41
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
42
|
+
var placeDefinition, params, parsedParams, initialVisit, sanitiser, updatedVisit, parameterCommands, commands;
|
|
43
|
+
return tslib_1.__generator(this, function (_a) {
|
|
44
|
+
switch (_a.label) {
|
|
45
|
+
case 0:
|
|
46
|
+
if (!PlaceComponent.isPlaceComponentConstructor(activatedRoute.component)) return [3 /*break*/, 2];
|
|
47
|
+
placeDefinition = PlaceComponent.getDefinition(activatedRoute.component);
|
|
48
|
+
// Parse our route params.
|
|
49
|
+
params = new PlaceRouteGuard.ConsolidatedParameterMap(activatedRoute.paramMap, activatedRoute.url);
|
|
50
|
+
parsedParams = placeDefinition.parseRouteParams(params);
|
|
51
|
+
initialVisit = this.placeRouter.navigationSession.getVisitFor(placeDefinition) || new Visit(placeDefinition, parsedParams);
|
|
52
|
+
sanitiser = new VisitSanitiser(activatedRoute, this.router, this.placeHistory, this.injector);
|
|
53
|
+
return [4 /*yield*/, sanitiser.sanitise(initialVisit.mergeRouteParameters(parsedParams))];
|
|
54
|
+
case 1:
|
|
55
|
+
updatedVisit = _a.sent();
|
|
56
|
+
// Save the visit with any updated parameters. We need to save it so we remember any non route parameters
|
|
57
|
+
this.placeRouter.navigationSession.storeVisit(updatedVisit);
|
|
58
|
+
if (initialVisit.hasRoutingChangedFrom(updatedVisit)) {
|
|
59
|
+
parameterCommands = updatedVisit.hasRouteId() ?
|
|
60
|
+
[placeDefinition.getFormattedRouteId(updatedVisit), placeDefinition.getFormattedRouteParameters(updatedVisit)] :
|
|
61
|
+
[placeDefinition.getFormattedRouteParameters(updatedVisit)];
|
|
62
|
+
commands = [(activatedRoute.url[0].path)].concat(parameterCommands, this.placeRouter.getChildPath(activatedRoute));
|
|
63
|
+
console.log('##### Redirect', commands);
|
|
64
|
+
return [2 /*return*/, this.router.createUrlTree(commands, {
|
|
65
|
+
replaceUrl: true,
|
|
66
|
+
skipLocationChange: false
|
|
67
|
+
})];
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
return [2 /*return*/, true];
|
|
71
|
+
}
|
|
72
|
+
return [3 /*break*/, 3];
|
|
73
|
+
case 2: return [2 /*return*/, lang.illegalState("expected component to be an instance of PlaceComponent, got " + activatedRoute.component)];
|
|
74
|
+
case 3: return [2 /*return*/];
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
PlaceRouteGuard.decorators = [
|
|
80
|
+
{ type: Injectable, args: [{
|
|
81
|
+
providedIn: 'root'
|
|
82
|
+
},] }
|
|
83
|
+
];
|
|
84
|
+
/** @nocollapse */
|
|
85
|
+
PlaceRouteGuard.ctorParameters = function () { return [
|
|
86
|
+
{ type: Router },
|
|
87
|
+
{ type: PlaceRouter },
|
|
88
|
+
{ type: PlaceHistory },
|
|
89
|
+
{ type: Injector }
|
|
90
|
+
]; };
|
|
91
|
+
/** @nocollapse */ PlaceRouteGuard.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function PlaceRouteGuard_Factory() { return new PlaceRouteGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.PlaceRouter), i0.ɵɵinject(i3.PlaceHistory), i0.ɵɵinject(i0.INJECTOR)); }, token: PlaceRouteGuard, providedIn: "root" });
|
|
92
|
+
return PlaceRouteGuard;
|
|
93
|
+
}());
|
|
94
|
+
export { PlaceRouteGuard };
|
|
95
|
+
if (false) {
|
|
96
|
+
/**
|
|
97
|
+
* @type {?}
|
|
98
|
+
* @private
|
|
99
|
+
*/
|
|
100
|
+
PlaceRouteGuard.prototype.router;
|
|
101
|
+
/**
|
|
102
|
+
* @type {?}
|
|
103
|
+
* @private
|
|
104
|
+
*/
|
|
105
|
+
PlaceRouteGuard.prototype.placeRouter;
|
|
106
|
+
/**
|
|
107
|
+
* @type {?}
|
|
108
|
+
* @private
|
|
109
|
+
*/
|
|
110
|
+
PlaceRouteGuard.prototype.placeHistory;
|
|
111
|
+
/**
|
|
112
|
+
* @type {?}
|
|
113
|
+
* @private
|
|
114
|
+
*/
|
|
115
|
+
PlaceRouteGuard.prototype.injector;
|
|
116
|
+
}
|
|
117
|
+
(function (PlaceRouteGuard) {
|
|
118
|
+
/**
|
|
119
|
+
* This a work around for the fact that an activated route with multiple segments doesn't
|
|
120
|
+
* include the segment params in the paramMap as well as each segment returns an empty
|
|
121
|
+
* param map even when `parameter`s has content.
|
|
122
|
+
*/
|
|
123
|
+
var ConsolidatedParameterMap = /** @class */ (function () {
|
|
124
|
+
function ConsolidatedParameterMap(paramMap, urlSegments) {
|
|
125
|
+
this.paramMaps = [paramMap].concat((urlSegments || []).map((/**
|
|
126
|
+
* @param {?} s
|
|
127
|
+
* @return {?}
|
|
128
|
+
*/
|
|
129
|
+
function (s) { return new ParamMapAdapter(s.parameters); }))).filter((/**
|
|
130
|
+
* @param {?} m
|
|
131
|
+
* @return {?}
|
|
132
|
+
*/
|
|
133
|
+
function (m) { return !!m; })); // the activated route param map can be null
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @param {?} name
|
|
137
|
+
* @return {?}
|
|
138
|
+
*/
|
|
139
|
+
ConsolidatedParameterMap.prototype.get = /**
|
|
140
|
+
* @param {?} name
|
|
141
|
+
* @return {?}
|
|
142
|
+
*/
|
|
143
|
+
function (name) {
|
|
144
|
+
/** @type {?} */
|
|
145
|
+
var paramMap = this.paramMaps.find((/**
|
|
146
|
+
* @param {?} m
|
|
147
|
+
* @return {?}
|
|
148
|
+
*/
|
|
149
|
+
function (m) { return m.has(name); }));
|
|
150
|
+
return paramMap.get(name);
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* @param {?} name
|
|
154
|
+
* @return {?}
|
|
155
|
+
*/
|
|
156
|
+
ConsolidatedParameterMap.prototype.getAll = /**
|
|
157
|
+
* @param {?} name
|
|
158
|
+
* @return {?}
|
|
159
|
+
*/
|
|
160
|
+
function (name) {
|
|
161
|
+
/** @type {?} */
|
|
162
|
+
var paramMap = this.paramMaps.find((/**
|
|
163
|
+
* @param {?} m
|
|
164
|
+
* @return {?}
|
|
165
|
+
*/
|
|
166
|
+
function (m) { return m.has(name); }));
|
|
167
|
+
return paramMap.getAll(name);
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* @param {?} name
|
|
171
|
+
* @return {?}
|
|
172
|
+
*/
|
|
173
|
+
ConsolidatedParameterMap.prototype.has = /**
|
|
174
|
+
* @param {?} name
|
|
175
|
+
* @return {?}
|
|
176
|
+
*/
|
|
177
|
+
function (name) {
|
|
178
|
+
return !!this.paramMaps.find((/**
|
|
179
|
+
* @param {?} m
|
|
180
|
+
* @return {?}
|
|
181
|
+
*/
|
|
182
|
+
function (m) { return m.has(name); }));
|
|
183
|
+
};
|
|
184
|
+
Object.defineProperty(ConsolidatedParameterMap.prototype, "keys", {
|
|
185
|
+
get: /**
|
|
186
|
+
* @return {?}
|
|
187
|
+
*/
|
|
188
|
+
function () {
|
|
189
|
+
return this.paramMaps.reduce((/**
|
|
190
|
+
* @param {?} result
|
|
191
|
+
* @param {?} params
|
|
192
|
+
* @return {?}
|
|
193
|
+
*/
|
|
194
|
+
function (result, params) { return result.concat(params.keys); }), []);
|
|
195
|
+
},
|
|
196
|
+
enumerable: true,
|
|
197
|
+
configurable: true
|
|
198
|
+
});
|
|
199
|
+
tslib_1.__decorate([
|
|
200
|
+
Memoize(),
|
|
201
|
+
tslib_1.__metadata("design:type", Array),
|
|
202
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
203
|
+
], ConsolidatedParameterMap.prototype, "keys", null);
|
|
204
|
+
return ConsolidatedParameterMap;
|
|
205
|
+
}());
|
|
206
|
+
PlaceRouteGuard.ConsolidatedParameterMap = ConsolidatedParameterMap;
|
|
207
|
+
if (false) {
|
|
208
|
+
/**
|
|
209
|
+
* @type {?}
|
|
210
|
+
* @private
|
|
211
|
+
*/
|
|
212
|
+
ConsolidatedParameterMap.prototype.paramMaps;
|
|
213
|
+
}
|
|
214
|
+
var ParamMapAdapter = /** @class */ (function () {
|
|
215
|
+
function ParamMapAdapter(params) {
|
|
216
|
+
this.params = params;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* @param {?} name
|
|
220
|
+
* @return {?}
|
|
221
|
+
*/
|
|
222
|
+
ParamMapAdapter.prototype.get = /**
|
|
223
|
+
* @param {?} name
|
|
224
|
+
* @return {?}
|
|
225
|
+
*/
|
|
226
|
+
function (name) {
|
|
227
|
+
return this.params[name];
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* @param {?} name
|
|
231
|
+
* @return {?}
|
|
232
|
+
*/
|
|
233
|
+
ParamMapAdapter.prototype.getAll = /**
|
|
234
|
+
* @param {?} name
|
|
235
|
+
* @return {?}
|
|
236
|
+
*/
|
|
237
|
+
function (name) {
|
|
238
|
+
/** @type {?} */
|
|
239
|
+
var value = this.get(name);
|
|
240
|
+
return Array.isArray(value) ? value : [value];
|
|
241
|
+
};
|
|
242
|
+
/**
|
|
243
|
+
* @param {?} name
|
|
244
|
+
* @return {?}
|
|
245
|
+
*/
|
|
246
|
+
ParamMapAdapter.prototype.has = /**
|
|
247
|
+
* @param {?} name
|
|
248
|
+
* @return {?}
|
|
249
|
+
*/
|
|
250
|
+
function (name) {
|
|
251
|
+
return this.keys.includes(name);
|
|
252
|
+
};
|
|
253
|
+
Object.defineProperty(ParamMapAdapter.prototype, "keys", {
|
|
254
|
+
get: /**
|
|
255
|
+
* @return {?}
|
|
256
|
+
*/
|
|
257
|
+
function () {
|
|
258
|
+
return Object.keys(this.params);
|
|
259
|
+
},
|
|
260
|
+
enumerable: true,
|
|
261
|
+
configurable: true
|
|
262
|
+
});
|
|
263
|
+
return ParamMapAdapter;
|
|
264
|
+
}());
|
|
265
|
+
if (false) {
|
|
266
|
+
/**
|
|
267
|
+
* @type {?}
|
|
268
|
+
* @private
|
|
269
|
+
*/
|
|
270
|
+
ParamMapAdapter.prototype.params;
|
|
271
|
+
}
|
|
272
|
+
})(PlaceRouteGuard || (PlaceRouteGuard = {}));
|
|
273
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utcm91dGUuZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvZ3VhcmRzL3BsYWNlLXJvdXRlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUlMLE1BQU0sRUFJUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxJQUFJLEVBQVMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBRXBEO0lBS0UseUJBQTZCLE1BQWMsRUFDZCxXQUF3QixFQUN4QixZQUEwQixFQUMxQixRQUFrQjtRQUhsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUMvQyxDQUFDO0lBRUQsV0FBVzs7Ozs7OztJQUNMLHFDQUFXOzs7Ozs7O0lBQWpCLFVBQWtCLGNBQXNDLEVBQUUsS0FBMEI7Ozs7Ozs2QkFDOUUsY0FBYyxDQUFDLDJCQUEyQixDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBcEUsd0JBQW9FO3dCQUNoRSxlQUFlLEdBQUcsY0FBYyxD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UUFFRCw2QkFBRzs7OztRQUFILFVBQUksSUFBWTtZQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixDQUFDOzs7OztRQUVELGdDQUFNOzs7O1FBQU4sVUFBTyxJQUFZOztnQkFDWCxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDNUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQzs7Ozs7UUFFRCw2QkFBRzs7OztRQUFILFVBQUksSUFBWTtZQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUVELHNCQUFJLGlDQUFJOzs7O1lBQVI7Z0JBQ0UsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNsQyxDQUFDOzs7V0FBQTtRQUVILHNCQUFDO0lBQUQsQ0FBQyxBQXJCRCxJQXFCQzs7Ozs7O1FBcEJhLGlDQUFnRDs7QUFxQmhFLENBQUMsRUExRGdCLGVBQWUsS0FBZixlQUFlLFFBMEQvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBDYW5BY3RpdmF0ZSxcbiAgUGFyYW1NYXAsXG4gIFJvdXRlcixcbiAgUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgVXJsU2VnbWVudCxcbiAgVXJsVHJlZVxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgbGFuZywgVHJhY2UgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBNZW1vaXplIH0gZnJvbSAnQHR5cGVzY3JpcHQtcGx1cy9mYXN0LW1lbW9pemUtZGVjb3JhdG9yL2Rpc3Qvc3JjJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlSGlzdG9yeSB9IGZyb20gJy4uLy4uL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHsgVmlzaXQgfSBmcm9tICcuLi8uLi92aXNpdCc7XG5pbXBvcnQgeyBWaXNpdFNhbml0aXNlciB9IGZyb20gJy4uL3Zpc2l0LXNhbml0aXNlcic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlUm91dGVHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBsYWNlUm91dGVyOiBQbGFjZVJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZUhpc3Rvcnk6IFBsYWNlSGlzdG9yeSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNhbkFjdGl2YXRlKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHtcbiAgICBpZiAoUGxhY2VDb21wb25lbnQuaXNQbGFjZUNvbXBvbmVudENvbnN0cnVjdG9yKGFjdGl2YXRlZFJvdXRlLmNvbXBvbmVudCkpIHtcbiAgICAgIGNvbnN0IHBsYWNlRGVmaW5pdGlvbiA9IFBsYWNlQ29tcG9uZW50LmdldERlZmluaXRpb24oYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KTtcbiAgICAgIC8vIFBhcnNlIG91ciByb3V0ZSBwYXJhbXMuXG4gICAgICBjb25zdCBwYXJhbXMgPSBuZXcgUGxhY2VSb3V0ZUd1YXJkLkNvbnNvbGlkYXRlZFBhcmFtZXRlck1hcChhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcCwgYWN0aXZhdGVkUm91dGUudXJsKTtcbiAgICAgIGNvbnN0IHBhcnNlZFBhcmFtcyA9IHBsYWNlRGVmaW5pdGlvbi5wYXJzZVJvdXRlUGFyYW1zKHBhcmFtcyk7XG5cbiAgICAgIGNvbnN0IGluaXRpYWxWaXNpdCA9IHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb24uZ2V0VmlzaXRGb3IocGxhY2VEZWZpbml0aW9uKSB8fCBuZXcgVmlzaXQocGxhY2VEZWZpbml0aW9uLCBwYXJzZWRQYXJhbXMpO1xuICAgICAgY29uc3Qgc2FuaXRpc2VyID0gbmV3IFZpc2l0U2FuaXRpc2VyKGFjdGl2YXRlZFJvdXRlLCB0aGlzLnJvdXRlciwgdGhpcy5wbGFjZUhpc3RvcnksIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgY29uc3QgdXBkYXRlZFZpc2l0ID0gYXdhaXQgc2FuaXRpc2VyLnNhbml0aXNlKGluaXRpYWxWaXNpdC5tZXJnZVJvdXRlUGFyYW1ldGVycyhwYXJzZWRQYXJhbXMpKTtcblxuICAgICAgLy8gU2F2ZSB0aGUgdmlzaXQgd2l0aCBhbnkgdXBkYXRlZCBwYXJhbWV0ZXJzLiAgV2UgbmVlZCB0byBzYXZlIGl0IHNvIHdlIHJlbWVtYmVyIGFueSBub24gcm91dGUgcGFyYW1ldGVyc1xuICAgICAgdGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uU2Vzc2lvbi5zdG9yZVZpc2l0KHVwZGF0ZWRWaXNpdCk7XG4gICAgICBpZiAoaW5pdGlhbFZpc2l0Lmhhc1JvdXRpbmdDaGFuZ2VkRnJvbSh1cGRhdGVkVmlzaXQpKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtZXRlckNvbW1hbmRzID0gdXBkYXRlZFZpc2l0Lmhhc1JvdXRlSWQoKSA/XG4gICAgICAgICAgW3BsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZUlkKHVwZGF0ZWRWaXNpdCksIHBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModXBkYXRlZFZpc2l0KV0gOlxuICAgICAgICAgIFtwbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHVwZGF0ZWRWaXNpdCldO1xuXG4gICAgICAgIGNvbnN0IGNvbW1hbmRzID0gWyhhY3RpdmF0ZWRSb3V0ZS51cmxbMF0ucGF0aCldLmNvbmNhdChwYXJhbWV0ZXJDb21tYW5kcywgdGhpcy5wbGFjZVJvdXRlci5nZXRDaGlsZFBhdGgoYWN0aXZhdGVkUm91dGUpKTtcbiAgICAgICAgY29uc29sZS5sb2coJyMjIyMjIFJlZGlyZWN0JywgY29tbWFuZHMpO1xuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShjb21tYW5kcywge1xuICAgICAgICAgIHJlcGxhY2VVcmw6IHRydWUsXG4gICAgICAgICAgc2tpcExvY2F0aW9uQ2hhbmdlOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbGFuZy5pbGxlZ2FsU3RhdGUoYGV4cGVjdGVkIGNvbXBvbmVudCB0byBiZSBhbiBpbnN0YW5jZSBvZiBQbGFjZUNvbXBvbmVudCwgZ290ICR7YWN0aXZhdGVkUm91dGUuY29tcG9uZW50fWApO1xuICAgIH1cbiAgfVxuXG4gIC8vIGNyZWF0ZVZpc2l0RnJvbShwbGFjZURlZjogUGxhY2VEZWZpbml0aW9uLCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IFZpc2l0IHtcbiAgLy8gICBjb25zdCBwYXJhbU1hcCA9IG5ldyBDb25zb2xpZGF0ZWRQYXJhbWV0ZXJNYXAoYWN0aXZhdGVkUm91dGUucGFyYW1NYXAsIGFjdGl2YXRlZFJvdXRlLnVybCk7XG4gIC8vICAgY29uc3QgcmVzb2x2ZWRQYXJhbWV0ZXJzID0gcGxhY2VEZWYuZ2V0QWxsUGFyYW1ldGVyRGVmcygpLm1hcChkZWYgPT4gUm91dGVQYXJhbWV0ZXJSZWNvcmQuY3JlYXRlKGRlZiwgcGFyYW1NYXApKTtcbiAgLy8gICByZXR1cm4gbmV3IFBsYWNlUGFyYW1ldGVyU25hcHNob3QocGxhY2VEZWYsIHJlc29sdmVkUGFyYW1ldGVycyk7XG4gIC8vIH1cblxuICAvLyBjcmVhdGVSZWRpcmVjdChhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc25hcHNob3Q6IFZpc2l0KTogVXJsVHJlZSB8IHRydWUge1xuICAvLyAgIC8vIFdlIGhhdmUgdG8gc2F2ZSB0aGUgb3VyIHByaXZhdGUgc3RhdGUgaW4gb3VyIHNlc3Npb24gdGhlIHJvdXRlciBpZ25vcmVzIGEgYnVuY2ggb2Ygcm91dGluZyBleHRyYXNcbiAgLy8gICAvLyB3aGVuIHVzZWQgaW4gcm91dGUgZ3VhcmRzLlxuICAvLyAgIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMjcxNDhcbiAgLy8gICBpZiAoc25hcHNob3QuaGFzQ2hhbmdlZFByaXZhdGVQYXJhbWV0ZXJzKCkpIHtcbiAgLy8gICAgIHRoaXMuX25hdmlnYXRpb25TZXNzaW9uLnZhbHVlID0gdGhpcy5fbmF2aWdhdGlvblNlc3Npb24udmFsdWUubWVyZ2VQcml2YXRlUGxhY2VQYXJhbWV0ZXJzKHNuYXBzaG90LmdldFByaXZhdGVQbGFjZVBhcmFtZXRlcnMoKSk7XG4gIC8vICAgfVxuICAvLyAgIHJldHVybiBzbmFwc2hvdC5oYXNDaGFuZ2VkUm91dGVQYXJhbWV0ZXJzKHRydWUpID9cbiAgLy8gICAgIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUodGhpcy5jcmVhdGVSb3V0ZUNvbW1hbmRzKGFjdGl2YXRlZFJvdXRlLCBzbmFwc2hvdCksIHtcbiAgLy8gICAgICAgcmVwbGFjZVVybDogc25hcHNob3QuaGFzQ2hhbmdlZFJvdXRlUGFyYW1ldGVycyh0cnVlKSxcbiAgLy8gICAgICAgc2tpcExvY2F0aW9uQ2hhbmdlOiBzbmFwc2hvdC5oYXNDaGFuZ2VkUm91dGVQYXJhbWV0ZXJzKHRydWUpXG4gIC8vICAgICB9KSA6XG4gIC8vICAgICB0cnVlO1xuLy8gfVxuXG4vLyBwcml2YXRlIGNyZWF0ZVJvdXRlQ29tbWFuZHMoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHNuYXBzaG90OiBWaXNpdCkge1xuLy8gICBjb25zdCB1cmxTZWdtZW50cyA9IGFjdGl2YXRlZFJvdXRlLnVybDtcbi8vICAgY29uc3Qgd2VIYXZlQVJvdXRlSWQgPSBzbmFwc2hvdC5oYXNSb3V0ZUlkKCkgJiYgc25hcHNob3QuZ2V0Rm9ybWF0dGVkUm91dGVJZCgpO1xuLy8gICByZXR1cm4gKHdlSGF2ZUFSb3V0ZUlkKSA/XG4vLyAgICAgW3VybFNlZ21lbnRzWzBdLnBhdGgsIHNuYXBzaG90LmdldEZvcm1hdHRlZFJvdXRlSWQoKSwgc25hcHNob3QuZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKCldIDpcbi8vICAgICBbdXJsU2VnbWVudHNbMF0ucGF0aCwgc25hcHNob3QuZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKCldO1xuLy8gfVxuXG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUGxhY2VSb3V0ZUd1YXJkIHtcbiAgLyoqXG4gICAqIFRoaXMgYSB3b3JrIGFyb3VuZCBmb3IgdGhlIGZhY3QgdGhhdCBhbiBhY3RpdmF0ZWQgcm91dGUgd2l0aCBtdWx0aXBsZSBzZWdtZW50cyBkb2Vzbid0XG4gICAqIGluY2x1ZGUgdGhlIHNlZ21lbnQgcGFyYW1zIGluIHRoZSBwYXJhbU1hcCBhcyB3ZWxsIGFzIGVhY2ggc2VnbWVudCByZXR1cm5zIGFuIGVtcHR5XG4gICAqIHBhcmFtIG1hcCBldmVuIHdoZW4gYHBhcmFtZXRlcmBzIGhhcyBjb250ZW50LlxuICAgKi9cbiAgZXhwb3J0IGNsYXNzIENvbnNvbGlkYXRlZFBhcmFtZXRlck1hcCBpbXBsZW1lbnRzIFBhcmFtTWFwIHtcblxuICAgIHByaXZhdGUgcGFyYW1NYXBzOiBQYXJhbU1hcFtdO1xuXG4gICAgY29uc3RydWN0b3IocGFyYW1NYXA6IFBhcmFtTWFwLCB1cmxTZWdtZW50czogVXJsU2VnbWVudFtdKSB7XG4gICAgICB0aGlzLnBhcmFtTWFwcyA9IFtwYXJhbU1hcF0uY29uY2F0KFxuICAgICAgICAodXJsU2VnbWVudHMgfHwgW10pLm1hcChzID0+IG5ldyBQYXJhbU1hcEFkYXB0ZXIocy5wYXJhbWV0ZXJzKSlcbiAgICAgICkuZmlsdGVyKG0gPT4gISFtKTsgLy8gdGhlIGFjdGl2YXRlZCByb3V0ZSBwYXJhbSBtYXAgY2FuIGJlIG51bGxcbiAgICB9XG5cbiAgICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICBjb25zdCBwYXJhbU1hcCA9IHRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgICByZXR1cm4gcGFyYW1NYXAuZ2V0KG5hbWUpO1xuICAgIH1cblxuICAgIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgICBjb25zdCBwYXJhbU1hcCA9IHRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgICByZXR1cm4gcGFyYW1NYXAuZ2V0QWxsKG5hbWUpO1xuICAgIH1cblxuICAgIGhhcyhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAhIXRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgfVxuXG4gICAgQE1lbW9pemUoKVxuICAgIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICAgIHJldHVybiB0aGlzLnBhcmFtTWFwcy5yZWR1Y2UoKHJlc3VsdCwgcGFyYW1zKSA9PiByZXN1bHQuY29uY2F0KHBhcmFtcy5rZXlzKSwgW10pO1xuICAgIH1cbiAgfVxuXG4gIGNsYXNzIFBhcmFtTWFwQWRhcHRlciBpbXBsZW1lbnRzIFBhcmFtTWFwIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBhcmFtczogeyBbcDogc3RyaW5nXTogc3RyaW5nIH0pIHtcbiAgICB9XG5cbiAgICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJhbXNbbmFtZV07XG4gICAgfVxuXG4gICAgZ2V0QWxsKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXQobmFtZSk7XG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgfVxuXG4gICAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMua2V5cy5pbmNsdWRlcyhuYW1lKTtcbiAgICB9XG5cbiAgICBnZXQga2V5cygpOiBzdHJpbmdbXSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5wYXJhbXMpO1xuICAgIH1cblxuICB9XG59XG4iXX0=
|
|
@@ -10,31 +10,50 @@ import { ParameterDefinition } from './parameter-definition.class';
|
|
|
10
10
|
* @record
|
|
11
11
|
* @template T
|
|
12
12
|
*/
|
|
13
|
-
export function
|
|
13
|
+
export function RouteIdOptions() { }
|
|
14
14
|
if (false) {
|
|
15
15
|
/** @type {?|undefined} */
|
|
16
|
-
|
|
16
|
+
RouteIdOptions.prototype.as;
|
|
17
17
|
/** @type {?|undefined} */
|
|
18
|
-
|
|
18
|
+
RouteIdOptions.prototype.optional;
|
|
19
19
|
/** @type {?|undefined} */
|
|
20
|
-
|
|
20
|
+
RouteIdOptions.prototype.remember;
|
|
21
21
|
/** @type {?|undefined} */
|
|
22
|
-
|
|
22
|
+
RouteIdOptions.prototype.defaultValue;
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* @record
|
|
26
26
|
* @template T
|
|
27
27
|
*/
|
|
28
|
-
export function
|
|
28
|
+
export function RouteParameterOptions() { }
|
|
29
29
|
if (false) {
|
|
30
30
|
/** @type {?|undefined} */
|
|
31
|
-
|
|
31
|
+
RouteParameterOptions.prototype.as;
|
|
32
32
|
/** @type {?|undefined} */
|
|
33
|
-
|
|
33
|
+
RouteParameterOptions.prototype.optional;
|
|
34
34
|
/** @type {?|undefined} */
|
|
35
|
-
|
|
35
|
+
RouteParameterOptions.prototype.remember;
|
|
36
36
|
/** @type {?|undefined} */
|
|
37
|
-
|
|
37
|
+
RouteParameterOptions.prototype.defaultValue;
|
|
38
|
+
/** @type {?|undefined} */
|
|
39
|
+
RouteParameterOptions.prototype.storeInUrl;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* @record
|
|
43
|
+
* @template T
|
|
44
|
+
*/
|
|
45
|
+
export function RouteListParameterOptions() { }
|
|
46
|
+
if (false) {
|
|
47
|
+
/** @type {?|undefined} */
|
|
48
|
+
RouteListParameterOptions.prototype.as;
|
|
49
|
+
/** @type {?|undefined} */
|
|
50
|
+
RouteListParameterOptions.prototype.optional;
|
|
51
|
+
/** @type {?|undefined} */
|
|
52
|
+
RouteListParameterOptions.prototype.remember;
|
|
53
|
+
/** @type {?|undefined} */
|
|
54
|
+
RouteListParameterOptions.prototype.defaultValue;
|
|
55
|
+
/** @type {?|undefined} */
|
|
56
|
+
RouteListParameterOptions.prototype.storeInUrl;
|
|
38
57
|
}
|
|
39
58
|
/**
|
|
40
59
|
* @template T
|
|
@@ -50,18 +69,17 @@ export function RouteId(type, options) {
|
|
|
50
69
|
*/
|
|
51
70
|
function (prototype, propertyKey) {
|
|
52
71
|
/** @type {?} */
|
|
53
|
-
var param = new ParameterDefinition.RouteId(propertyKey.toString(),
|
|
72
|
+
var param = new ParameterDefinition.RouteId(propertyKey.toString(), options, type);
|
|
54
73
|
Klass.get(prototype).addToOwnMetadataList(ROUTE_PARAMETER_LIST_KEY, param);
|
|
55
74
|
UseDelegate()(prototype, propertyKey);
|
|
56
75
|
});
|
|
57
76
|
}
|
|
58
77
|
/**
|
|
59
78
|
* @template T
|
|
60
|
-
* @param {?} type
|
|
61
79
|
* @param {?=} options
|
|
62
80
|
* @return {?}
|
|
63
81
|
*/
|
|
64
|
-
export function
|
|
82
|
+
export function VisitParameter(options) {
|
|
65
83
|
return (/**
|
|
66
84
|
* @param {?} prototype
|
|
67
85
|
* @param {?} propertyKey
|
|
@@ -69,18 +87,17 @@ export function RouteParameter(type, options) {
|
|
|
69
87
|
*/
|
|
70
88
|
function (prototype, propertyKey) {
|
|
71
89
|
/** @type {?} */
|
|
72
|
-
var param = new ParameterDefinition.ValueParameter(propertyKey.toString(),
|
|
90
|
+
var param = new ParameterDefinition.ValueParameter(propertyKey.toString(), options, options.storeInUrl);
|
|
73
91
|
Klass.get(prototype).addToOwnMetadataList(ROUTE_PARAMETER_LIST_KEY, param);
|
|
74
92
|
UseDelegate()(prototype, propertyKey);
|
|
75
93
|
});
|
|
76
94
|
}
|
|
77
95
|
/**
|
|
78
96
|
* @template E
|
|
79
|
-
* @param {?} elementType
|
|
80
97
|
* @param {?=} options
|
|
81
98
|
* @return {?}
|
|
82
99
|
*/
|
|
83
|
-
export function
|
|
100
|
+
export function VisitParameterList(options) {
|
|
84
101
|
return (/**
|
|
85
102
|
* @param {?} prototype
|
|
86
103
|
* @param {?} propertyKey
|
|
@@ -88,9 +105,9 @@ export function RouteParameterList(elementType, options) {
|
|
|
88
105
|
*/
|
|
89
106
|
function (prototype, propertyKey) {
|
|
90
107
|
/** @type {?} */
|
|
91
|
-
var param = new ParameterDefinition.ArrayParameter(propertyKey.toString(),
|
|
108
|
+
var param = new ParameterDefinition.ArrayParameter(propertyKey.toString(), options, options.storeInUrl);
|
|
92
109
|
Klass.get(prototype).addToOwnMetadataList(ROUTE_PARAMETER_LIST_KEY, param);
|
|
93
110
|
UseDelegate()(prototype, propertyKey);
|
|
94
111
|
});
|
|
95
112
|
}
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlY29yYXRvcnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLWRlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7O0FBSW5FLG9DQU1DOzs7SUFMQyw0QkFBWTs7SUFDWixrQ0FBbUI7O0lBQ25CLGtDQUFtQjs7SUFDbkIsc0NBQWlCOzs7Ozs7QUFJbkIsMkNBT0M7OztJQU5DLG1DQUFZOztJQUNaLHlDQUFtQjs7SUFDbkIseUNBQW1COztJQUNuQiw2Q0FBaUI7O0lBQ2pCLDJDQUF5Qjs7Ozs7O0FBSTNCLCtDQU9DOzs7SUFOQyx1Q0FBWTs7SUFDWiw2Q0FBbUI7O0lBQ25CLDZDQUFtQjs7SUFDbkIsaURBQW1COztJQUNuQiwrQ0FBeUI7Ozs7Ozs7O0FBSTNCLE1BQU0sVUFBVSxPQUFPLENBQTRCLElBQWtCLEVBQUUsT0FBMkI7SUFDaEc7Ozs7O0lBQU8sVUFBQyxTQUFpQixFQUFFLFdBQTRCOztZQUMvQyxLQUFLLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUM7UUFDcEYsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRSxXQUFXLEVBQUUsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQyxFQUFDO0FBQ0osQ0FBQzs7Ozs7O0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBSSxPQUFrQztJQUNsRTs7Ozs7SUFBTyxVQUFDLFNBQWlCLEVBQUUsV0FBNEI7O1lBQy9DLEtBQUssR0FBRyxJQUFJLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDekcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRSxXQUFXLEVBQUUsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQyxFQUFDO0FBQ0osQ0FBQzs7Ozs7O0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFJLE9BQXNDO0lBQzFFOzs7OztJQUFPLFVBQUMsU0FBaUIsRUFBRSxXQUE0Qjs7WUFDL0MsS0FBSyxHQUFHLElBQUksbUJBQW1CLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUN6RyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNFLFdBQVcsRUFBRSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDLEVBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlRGVsZWdhdGUgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBLbGFzcyB9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZIH0gZnJvbSAnLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBhcmFtZXRlckRlZmluaXRpb24gfSBmcm9tICcuL3BhcmFtZXRlci1kZWZpbml0aW9uLmNsYXNzJztcbmltcG9ydCB7IEZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0dGVyJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlSWRPcHRpb25zPFQ+IHtcbiAgYXM/OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgcmVtZW1iZXI/OiBib29sZWFuO1xuICBkZWZhdWx0VmFsdWU/OiBUO1xuICAvLyBzYW5pdGlzZXI/OiBDb25zdHJ1Y3RhYmxlPFBhcmFtZXRlclNhbml0aXNlcjxUPj4gfCBQYXJhbWV0ZXJTYW5pdGlzZXI8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm91dGVQYXJhbWV0ZXJPcHRpb25zPFQ+IHtcbiAgYXM/OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgcmVtZW1iZXI/OiBib29sZWFuO1xuICBkZWZhdWx0VmFsdWU/OiBUO1xuICBzdG9yZUluVXJsPzogRm9ybWF0dGVyPFQ+XG4gIC8vIHNhbml0aXNlcj86IENvbnN0cnVjdGFibGU8UGFyYW1ldGVyU2FuaXRpc2VyPFQ+PiB8IFBhcmFtZXRlclNhbml0aXNlcjxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZUxpc3RQYXJhbWV0ZXJPcHRpb25zPFQ+IHtcbiAgYXM/OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgcmVtZW1iZXI/OiBib29sZWFuO1xuICBkZWZhdWx0VmFsdWU/OiBUW107XG4gIHN0b3JlSW5Vcmw/OiBGb3JtYXR0ZXI8VD5cbiAgLy8gc2FuaXRpc2VyPzogQ29uc3RydWN0YWJsZTxQYXJhbWV0ZXJTYW5pdGlzZXI8VFtdPj4gfCBQYXJhbWV0ZXJTYW5pdGlzZXI8VFtdPjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFJvdXRlSWQ8VCBleHRlbmRzIHN0cmluZyB8IG51bWJlcj4odHlwZTogRm9ybWF0dGVyPFQ+LCBvcHRpb25zPzogUm91dGVJZE9wdGlvbnM8VD4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IG5ldyBQYXJhbWV0ZXJEZWZpbml0aW9uLlJvdXRlSWQocHJvcGVydHlLZXkudG9TdHJpbmcoKSwgb3B0aW9ucywgdHlwZSk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZLCBwYXJhbSk7XG4gICAgVXNlRGVsZWdhdGUoKShwcm90b3R5cGUsIHByb3BlcnR5S2V5KTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFZpc2l0UGFyYW1ldGVyPFQ+KG9wdGlvbnM/OiBSb3V0ZVBhcmFtZXRlck9wdGlvbnM8VD4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IG5ldyBQYXJhbWV0ZXJEZWZpbml0aW9uLlZhbHVlUGFyYW1ldGVyKHByb3BlcnR5S2V5LnRvU3RyaW5nKCksIG9wdGlvbnMsIG9wdGlvbnMuc3RvcmVJblVybCk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZLCBwYXJhbSk7XG4gICAgVXNlRGVsZWdhdGUoKShwcm90b3R5cGUsIHByb3BlcnR5S2V5KTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFZpc2l0UGFyYW1ldGVyTGlzdDxFPihvcHRpb25zPzogUm91dGVMaXN0UGFyYW1ldGVyT3B0aW9uczxFPik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgcmV0dXJuIChwcm90b3R5cGU6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgIGNvbnN0IHBhcmFtID0gbmV3IFBhcmFtZXRlckRlZmluaXRpb24uQXJyYXlQYXJhbWV0ZXIocHJvcGVydHlLZXkudG9TdHJpbmcoKSwgb3B0aW9ucywgb3B0aW9ucy5zdG9yZUluVXJsKTtcbiAgICBLbGFzcy5nZXQocHJvdG90eXBlKS5hZGRUb093bk1ldGFkYXRhTGlzdChST1VURV9QQVJBTUVURVJfTElTVF9LRVksIHBhcmFtKTtcbiAgICBVc2VEZWxlZ2F0ZSgpKHByb3RvdHlwZSwgcHJvcGVydHlLZXkpO1xuICB9O1xufVxuXG4vLyBleHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXI8VD4odHlwZTogUGFyYW1ldGVyVHlwZTxUPiwgb3B0aW9ucz86IFJvdXRlUGFyYW1ldGVyT3B0aW9uczxUPik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbi8vICAgcmV0dXJuIChwcm90b3R5cGU6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuLy8gICAgIGNvbnN0IHBhcmFtID0gbmV3IFBhcmFtZXRlckRlZmluaXRpb24uVmFsdWVQYXJhbWV0ZXIocHJvcGVydHlLZXkudG9TdHJpbmcoKSwgb3B0aW9ucywgdHlwZSk7XG4vLyAgICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZLCBwYXJhbSk7XG4vLyAgICAgVXNlRGVsZWdhdGUoKShwcm90b3R5cGUsIHByb3BlcnR5S2V5KTtcbi8vICAgfTtcbi8vIH1cbi8vXG4vLyBleHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXJMaXN0PEU+KGVsZW1lbnRUeXBlOiBQYXJhbWV0ZXJUeXBlPEU+LCBvcHRpb25zPzogUm91dGVMaXN0UGFyYW1ldGVyT3B0aW9uczxFPik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbi8vICAgcmV0dXJuIChwcm90b3R5cGU6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuLy8gICAgIGNvbnN0IHBhcmFtID0gbmV3IFBhcmFtZXRlckRlZmluaXRpb24uQXJyYXlQYXJhbWV0ZXIocHJvcGVydHlLZXkudG9TdHJpbmcoKSwgb3B0aW9ucywgZWxlbWVudFR5cGUpO1xuLy8gICAgIEtsYXNzLmdldChwcm90b3R5cGUpLmFkZFRvT3duTWV0YWRhdGFMaXN0KFJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSwgcGFyYW0pO1xuLy8gICAgIFVzZURlbGVnYXRlKCkocHJvdG90eXBlLCBwcm9wZXJ0eUtleSk7XG4vLyAgIH07XG4vLyB9XG4iXX0=
|