@coolon/angular-ui-powerups 0.0.83 → 0.0.85
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 +134 -83
- 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.metadata.json +1 -1
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +89 -70
- package/esm2015/lib/place/place-router.js +13 -3
- package/esm2015/lib/place/place.module.js +2 -5
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js +122 -75
- package/esm5/lib/place/place-router.js +15 -11
- package/esm5/lib/place/place.module.js +2 -5
- package/fesm2015/coolon-angular-ui-powerups.js +100 -71
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/fesm5/coolon-angular-ui-powerups.js +135 -84
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +7 -1
- package/package.json +1 -1
|
@@ -5,12 +5,11 @@
|
|
|
5
5
|
import * as tslib_1 from "tslib";
|
|
6
6
|
import { Component, EventEmitter, Inject, Input, Optional, Output, SkipSelf, ViewChild } from '@angular/core';
|
|
7
7
|
import { Router, RouterOutlet } from '@angular/router';
|
|
8
|
-
import { DelegatingValueModel, Dsl, Guard, ListModel, MutableValueModel, StoreInListModel,
|
|
8
|
+
import { DelegatingValueModel, Dsl, Guard, ListModel, MutableValueModel, StoreInListModel, UseDelegate } from '@coolon/pectin';
|
|
9
|
+
import * as _ from 'lodash';
|
|
9
10
|
import { DisposableComponent } from '../../../components/disposable-component';
|
|
10
|
-
import { PlaceComponent } from '../../place-component';
|
|
11
11
|
import { AUP_PLACE_CONFIG } from '../../place-config';
|
|
12
12
|
import { PlaceRouter } from '../../place-router';
|
|
13
|
-
import { Visit } from '../../visit';
|
|
14
13
|
import { LEFT_RIGHT_PLACE_ANIMATION } from './route-animations';
|
|
15
14
|
/**
|
|
16
15
|
* @record
|
|
@@ -40,13 +39,16 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
40
39
|
_this.placeChanged = new EventEmitter();
|
|
41
40
|
_this._activePlace = new MutableValueModel();
|
|
42
41
|
_this._activePlaceVisitModel = new DelegatingValueModel();
|
|
43
|
-
_this.
|
|
42
|
+
_this._inOutletActivation = new Guard();
|
|
43
|
+
_this._inOutletDeactivation = new Guard();
|
|
44
|
+
_this._inRouteVisitUpdate = new Guard();
|
|
44
45
|
_this._activatedRouteModel = new MutableValueModel();
|
|
45
46
|
_this._placeDefinition = new MutableValueModel();
|
|
46
|
-
_this.
|
|
47
|
+
_this.initialPlaceIndex = null;
|
|
47
48
|
var _a = Dsl.disposeWith(_this), chain = _a.chain, valueOf = _a.valueOf, before = _a.before, when = _a.when, after = _a.after, observe = _a.observe, switchOn = _a.switchOn;
|
|
48
49
|
_this.parentOutletModel = new MutableValueModel(parentOutlet);
|
|
49
50
|
_this._activePlaceVisitModel.setDelegate(new MutableValueModel());
|
|
51
|
+
_this._inOutletUpdate = valueOf.any(_this._inOutletDeactivation, _this._inOutletActivation).areTruthy();
|
|
50
52
|
/** @type {?} */
|
|
51
53
|
var defaultPlaceAnimationOrder = chain(_this.parentOutletModel)
|
|
52
54
|
.pullValueModel((/**
|
|
@@ -65,37 +67,31 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
65
67
|
function (p) { return (/** @type {?} */ (p.constructor)); }));
|
|
66
68
|
_this.placeAnimationOrder = chain(_this.customPlaceAnimationOrderModel)
|
|
67
69
|
.otherwise(defaultPlaceAnimationOrder)
|
|
68
|
-
.
|
|
69
|
-
|
|
70
|
-
* @param {?} order
|
|
70
|
+
.reduce((/**
|
|
71
|
+
* @param {?} placesInOrder
|
|
71
72
|
* @return {?}
|
|
72
73
|
*/
|
|
73
|
-
function (
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
74
|
+
function (placesInOrder) {
|
|
75
|
+
/** @type {?} */
|
|
76
|
+
var placeIndex = 0;
|
|
77
|
+
if (activatePlaceType.value) {
|
|
78
|
+
placeIndex = placesInOrder.indexOf(activatePlaceType.value);
|
|
79
|
+
if (_.isNil(_this.initialPlaceIndex)) {
|
|
80
|
+
_this.initialPlaceIndex = placeIndex;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return _.isNil(_this.initialPlaceIndex) ? 0 : placeIndex - _this.initialPlaceIndex;
|
|
84
|
+
}), { dependsOn: activatePlaceType });
|
|
79
85
|
// Push incoming changes into the component
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
+
_this.routerVisit = chain(_this._activePlace).pluck('placeDefinition').findIn(placeRouter.activeVisitIndex);
|
|
87
|
+
// Our router visit will change when our active is nullified during deactivation, which will push a null visit
|
|
88
|
+
// the the deactivated component, which will nuke it's view before the animations have finished.
|
|
89
|
+
// The visit will alway updated after the router session is finsised (when the new visits are registered) so
|
|
90
|
+
// we can safely ignore it during outlet changes as these always happen before the router session ends.
|
|
91
|
+
when.valueOf(_this.routerVisit).changes((/**
|
|
86
92
|
* @return {?}
|
|
87
93
|
*/
|
|
88
|
-
function (
|
|
89
|
-
console.log("### Route visit changed");
|
|
90
|
-
if (visit) { // can be null while the place and index sync up
|
|
91
|
-
inRouteVisitUpdate.whileTrue((/**
|
|
92
|
-
* @return {?}
|
|
93
|
-
*/
|
|
94
|
-
function () {
|
|
95
|
-
_this._activePlaceVisitModel.value = visit;
|
|
96
|
-
}));
|
|
97
|
-
}
|
|
98
|
-
}));
|
|
94
|
+
function () { return _this.pushRouteChangesToVisit(); }), { unless: _this._inOutletUpdate });
|
|
99
95
|
// Handle component based changes
|
|
100
96
|
when.valueOf(_this._activePlaceVisitModel).changes((/**
|
|
101
97
|
* @param {?} next
|
|
@@ -105,7 +101,7 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
105
101
|
function (next, previous) {
|
|
106
102
|
_this.pushVisitChangesToRoute(next, previous);
|
|
107
103
|
}), {
|
|
108
|
-
unless:
|
|
104
|
+
unless: _this.placeRouter.navigationSessionActive
|
|
109
105
|
});
|
|
110
106
|
chain(_this._activePlace)
|
|
111
107
|
.postponeWhile(placeRouter.navigationSessionActive)
|
|
@@ -126,6 +122,19 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
126
122
|
*/
|
|
127
123
|
function () {
|
|
128
124
|
};
|
|
125
|
+
// @Trace()
|
|
126
|
+
// @Trace()
|
|
127
|
+
/**
|
|
128
|
+
* @return {?}
|
|
129
|
+
*/
|
|
130
|
+
PlaceOutletComponent.prototype.getAnimationOrder =
|
|
131
|
+
// @Trace()
|
|
132
|
+
/**
|
|
133
|
+
* @return {?}
|
|
134
|
+
*/
|
|
135
|
+
function () {
|
|
136
|
+
return this.placeAnimationOrder.value;
|
|
137
|
+
};
|
|
129
138
|
Object.defineProperty(PlaceOutletComponent.prototype, "animationDuration", {
|
|
130
139
|
get: /**
|
|
131
140
|
* @return {?}
|
|
@@ -136,16 +145,20 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
136
145
|
enumerable: true,
|
|
137
146
|
configurable: true
|
|
138
147
|
});
|
|
148
|
+
// @Trace()
|
|
149
|
+
// @Trace()
|
|
139
150
|
/**
|
|
140
151
|
* @param {?} visit
|
|
141
152
|
* @return {?}
|
|
142
153
|
*/
|
|
143
|
-
PlaceOutletComponent.prototype.navigate =
|
|
154
|
+
PlaceOutletComponent.prototype.navigate =
|
|
155
|
+
// @Trace()
|
|
156
|
+
/**
|
|
144
157
|
* @param {?} visit
|
|
145
158
|
* @return {?}
|
|
146
159
|
*/
|
|
147
160
|
function (visit) {
|
|
148
|
-
console.log({ activatedRoute: this._activatedRouteModel.value });
|
|
161
|
+
// console.log({ activatedRoute: this._activatedRouteModel.value });
|
|
149
162
|
this.placeRouter.navigate(visit, {
|
|
150
163
|
relativeTo: this.parentOutlet ? this.parentOutlet.activatedRouteModel.value : null
|
|
151
164
|
});
|
|
@@ -160,6 +173,35 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
160
173
|
enumerable: true,
|
|
161
174
|
configurable: true
|
|
162
175
|
});
|
|
176
|
+
// @Trace()
|
|
177
|
+
// @Trace()
|
|
178
|
+
/**
|
|
179
|
+
* @return {?}
|
|
180
|
+
*/
|
|
181
|
+
PlaceOutletComponent.prototype.pushRouteChangesToVisit =
|
|
182
|
+
// @Trace()
|
|
183
|
+
/**
|
|
184
|
+
* @return {?}
|
|
185
|
+
*/
|
|
186
|
+
function () {
|
|
187
|
+
var _this = this;
|
|
188
|
+
/** @type {?} */
|
|
189
|
+
var visit = this.routerVisit.value;
|
|
190
|
+
console.log({
|
|
191
|
+
visit: visit,
|
|
192
|
+
place: visit ? visit.placeDefinition.component : null,
|
|
193
|
+
inOutletActivation: this._inOutletActivation.value,
|
|
194
|
+
inRoutingSession: this.placeRouter.navigationSessionActive.value
|
|
195
|
+
});
|
|
196
|
+
if (visit) { // can be null while the place and index sync up
|
|
197
|
+
this._inRouteVisitUpdate.whileTrue((/**
|
|
198
|
+
* @return {?}
|
|
199
|
+
*/
|
|
200
|
+
function () {
|
|
201
|
+
_this._activePlaceVisitModel.value = visit;
|
|
202
|
+
}));
|
|
203
|
+
}
|
|
204
|
+
};
|
|
163
205
|
/**
|
|
164
206
|
* @param {?} next
|
|
165
207
|
* @param {?} previous
|
|
@@ -195,19 +237,23 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
195
237
|
enumerable: true,
|
|
196
238
|
configurable: true
|
|
197
239
|
});
|
|
240
|
+
// @Trace()
|
|
241
|
+
// @Trace()
|
|
198
242
|
/**
|
|
199
243
|
* @param {?} routerOutlet
|
|
200
244
|
* @param {?} place
|
|
201
245
|
* @return {?}
|
|
202
246
|
*/
|
|
203
|
-
PlaceOutletComponent.prototype.onOutletActivated =
|
|
247
|
+
PlaceOutletComponent.prototype.onOutletActivated =
|
|
248
|
+
// @Trace()
|
|
249
|
+
/**
|
|
204
250
|
* @param {?} routerOutlet
|
|
205
251
|
* @param {?} place
|
|
206
252
|
* @return {?}
|
|
207
253
|
*/
|
|
208
254
|
function (routerOutlet, place) {
|
|
209
255
|
var _this = this;
|
|
210
|
-
this.
|
|
256
|
+
this._inOutletActivation.whileTrue((/**
|
|
211
257
|
* @return {?}
|
|
212
258
|
*/
|
|
213
259
|
function () {
|
|
@@ -229,38 +275,49 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
229
275
|
this.animationDone();
|
|
230
276
|
}
|
|
231
277
|
};
|
|
278
|
+
// @Trace()
|
|
279
|
+
// @Trace()
|
|
232
280
|
/**
|
|
233
281
|
* @return {?}
|
|
234
282
|
*/
|
|
235
|
-
PlaceOutletComponent.prototype.onOutletDeactivated =
|
|
283
|
+
PlaceOutletComponent.prototype.onOutletDeactivated =
|
|
284
|
+
// @Trace()
|
|
285
|
+
/**
|
|
236
286
|
* @return {?}
|
|
237
287
|
*/
|
|
238
288
|
function () {
|
|
239
289
|
var _this = this;
|
|
240
|
-
this.
|
|
290
|
+
this._inOutletDeactivation.whileTrue((/**
|
|
241
291
|
* @return {?}
|
|
242
292
|
*/
|
|
243
293
|
function () {
|
|
244
|
-
_this._activePlaceVisitModel.setDelegate(null);
|
|
245
|
-
_this.isOnInitialPlace = false;
|
|
246
294
|
_this._activePlace.value = null;
|
|
247
295
|
_this._activatedRouteModel.value = null;
|
|
248
296
|
_this._placeDefinition.value = null;
|
|
297
|
+
_this._activePlaceVisitModel.setDelegate(null);
|
|
249
298
|
}));
|
|
250
299
|
};
|
|
300
|
+
// @Trace()
|
|
301
|
+
// @Trace()
|
|
251
302
|
/**
|
|
252
303
|
* @return {?}
|
|
253
304
|
*/
|
|
254
|
-
PlaceOutletComponent.prototype.animationStarted =
|
|
305
|
+
PlaceOutletComponent.prototype.animationStarted =
|
|
306
|
+
// @Trace()
|
|
307
|
+
/**
|
|
255
308
|
* @return {?}
|
|
256
309
|
*/
|
|
257
310
|
function () {
|
|
258
311
|
console.log({ activePlace: this._activePlace.value });
|
|
259
312
|
};
|
|
313
|
+
// @Trace()
|
|
314
|
+
// @Trace()
|
|
260
315
|
/**
|
|
261
316
|
* @return {?}
|
|
262
317
|
*/
|
|
263
|
-
PlaceOutletComponent.prototype.animationDone =
|
|
318
|
+
PlaceOutletComponent.prototype.animationDone =
|
|
319
|
+
// @Trace()
|
|
320
|
+
/**
|
|
264
321
|
* @return {?}
|
|
265
322
|
*/
|
|
266
323
|
function () {
|
|
@@ -271,7 +328,7 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
271
328
|
PlaceOutletComponent.decorators = [
|
|
272
329
|
{ type: Component, args: [{
|
|
273
330
|
selector: 'aup-place-outlet',
|
|
274
|
-
template: "<div class=\"router-outlet-container\"\n [@routeAnimations]=\"{value:
|
|
331
|
+
template: "<div class=\"router-outlet-container\"\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n</div>\n\n",
|
|
275
332
|
animations: [LEFT_RIGHT_PLACE_ANIMATION],
|
|
276
333
|
styles: [":host{display:flex;flex-direction:column;min-height:0;overflow-x:hidden}.router-outlet-container{flex:1;display:block;position:relative;min-height:0}router-outlet{display:none}"]
|
|
277
334
|
}] }
|
|
@@ -298,36 +355,6 @@ var PlaceOutletComponent = /** @class */ (function (_super) {
|
|
|
298
355
|
StoreInListModel('customPlaceAnimationOrderModel'),
|
|
299
356
|
tslib_1.__metadata("design:type", Array)
|
|
300
357
|
], PlaceOutletComponent.prototype, "customPlaceAnimationOrder", void 0);
|
|
301
|
-
tslib_1.__decorate([
|
|
302
|
-
Trace(),
|
|
303
|
-
tslib_1.__metadata("design:type", Function),
|
|
304
|
-
tslib_1.__metadata("design:paramtypes", [Visit]),
|
|
305
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
306
|
-
], PlaceOutletComponent.prototype, "navigate", null);
|
|
307
|
-
tslib_1.__decorate([
|
|
308
|
-
Trace(),
|
|
309
|
-
tslib_1.__metadata("design:type", Function),
|
|
310
|
-
tslib_1.__metadata("design:paramtypes", [RouterOutlet, PlaceComponent]),
|
|
311
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
312
|
-
], PlaceOutletComponent.prototype, "onOutletActivated", null);
|
|
313
|
-
tslib_1.__decorate([
|
|
314
|
-
Trace(),
|
|
315
|
-
tslib_1.__metadata("design:type", Function),
|
|
316
|
-
tslib_1.__metadata("design:paramtypes", []),
|
|
317
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
318
|
-
], PlaceOutletComponent.prototype, "onOutletDeactivated", null);
|
|
319
|
-
tslib_1.__decorate([
|
|
320
|
-
Trace(),
|
|
321
|
-
tslib_1.__metadata("design:type", Function),
|
|
322
|
-
tslib_1.__metadata("design:paramtypes", []),
|
|
323
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
324
|
-
], PlaceOutletComponent.prototype, "animationStarted", null);
|
|
325
|
-
tslib_1.__decorate([
|
|
326
|
-
Trace(),
|
|
327
|
-
tslib_1.__metadata("design:type", Function),
|
|
328
|
-
tslib_1.__metadata("design:paramtypes", []),
|
|
329
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
330
|
-
], PlaceOutletComponent.prototype, "animationDone", null);
|
|
331
358
|
return PlaceOutletComponent;
|
|
332
359
|
}(DisposableComponent));
|
|
333
360
|
export { PlaceOutletComponent };
|
|
@@ -352,11 +379,26 @@ if (false) {
|
|
|
352
379
|
* @private
|
|
353
380
|
*/
|
|
354
381
|
PlaceOutletComponent.prototype._activePlaceVisitModel;
|
|
382
|
+
/**
|
|
383
|
+
* @type {?}
|
|
384
|
+
* @private
|
|
385
|
+
*/
|
|
386
|
+
PlaceOutletComponent.prototype._inOutletActivation;
|
|
387
|
+
/**
|
|
388
|
+
* @type {?}
|
|
389
|
+
* @private
|
|
390
|
+
*/
|
|
391
|
+
PlaceOutletComponent.prototype._inOutletDeactivation;
|
|
355
392
|
/**
|
|
356
393
|
* @type {?}
|
|
357
394
|
* @private
|
|
358
395
|
*/
|
|
359
396
|
PlaceOutletComponent.prototype._inOutletUpdate;
|
|
397
|
+
/**
|
|
398
|
+
* @type {?}
|
|
399
|
+
* @private
|
|
400
|
+
*/
|
|
401
|
+
PlaceOutletComponent.prototype._inRouteVisitUpdate;
|
|
360
402
|
/**
|
|
361
403
|
* @type {?}
|
|
362
404
|
* @private
|
|
@@ -378,7 +420,12 @@ if (false) {
|
|
|
378
420
|
* @type {?}
|
|
379
421
|
* @private
|
|
380
422
|
*/
|
|
381
|
-
PlaceOutletComponent.prototype.
|
|
423
|
+
PlaceOutletComponent.prototype.initialPlaceIndex;
|
|
424
|
+
/**
|
|
425
|
+
* @type {?}
|
|
426
|
+
* @private
|
|
427
|
+
*/
|
|
428
|
+
PlaceOutletComponent.prototype.routerVisit;
|
|
382
429
|
/**
|
|
383
430
|
* @type {?}
|
|
384
431
|
* @private
|
|
@@ -392,4 +439,4 @@ if (false) {
|
|
|
392
439
|
/** @type {?} */
|
|
393
440
|
PlaceOutletComponent.prototype.placeConfig;
|
|
394
441
|
}
|
|
395
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9jb21wb25lbnRzL3BsYWNlLW91dGxldC9wbGFjZS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFrQixNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUNVLG9CQUFvQixFQUNuQyxHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLEtBQUssRUFDTCxXQUFXLEVBR1osTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFlLE1BQU0sb0JBQW9CLENBQUM7QUFFbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFHaEUsdUJBTUM7OztJQUxDLG1DQUF5Qzs7Ozs7SUFFekMsNkRBQW1EOzs7O0lBRW5ELGtEQUFxQjs7QUFHdkI7SUFNMEMsZ0RBQW1CO0lBK0IzRCw4QkFBNkIsTUFBYyxFQUNkLFdBQXdCLEVBRWhDLFdBQXdCLEVBRS9CLFlBQWtDO1FBTGhELFlBTUUsaUJBQU8s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SWhDLEtBQUssU0FBQyxxQkFBcUI7K0JBRzNCLE1BQU07NEJBR04sU0FBUyxTQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0lBVDFDO1FBRG9DLFdBQVcsRUFBRTswQ0FDakIsU0FBUztnRkFBZ0M7SUFJekU7UUFEK0IsZ0JBQWdCLENBQUMsZ0NBQWdDLENBQUM7OzJFQUN0QjtJQXVGM0Q7UUFEQyxLQUFLLEVBQUU7O2lEQUNRLEtBQUs7O3dEQUtwQjtJQW9CRDtRQURDLEtBQUssRUFBRTs7aURBQ3dCLFlBQVksRUFBUyxjQUFjOztpRUFpQmxFO0lBR0Q7UUFEQyxLQUFLLEVBQUU7Ozs7bUVBU1A7SUFHRDtRQURDLEtBQUssRUFBRTs7OztnRUFHUDtJQUdEO1FBREMsS0FBSyxFQUFFOzs7OzZEQUtQO0lBR0gsMkJBQUM7Q0FBQSxBQTVLRCxDQU0wQyxtQkFBbUIsR0FzSzVEO1NBdEtZLG9CQUFvQjs7O0lBRS9CLHVDQUNlOztJQUdmLDhEQUN5RTs7SUFHekUseURBQzJEOztJQUUzRCw0Q0FDMkQ7O0lBRTNELHlDQUN3Qjs7Ozs7SUFHeEIsNENBQXdFOzs7OztJQUN4RSxzREFBbUU7Ozs7O0lBRW5FLCtDQUErQzs7Ozs7SUFDL0Msb0RBQWdGOzs7OztJQUNoRixnREFBNkU7Ozs7O0lBRTdFLGlEQUFtRTs7SUFDbkUsbURBQTZEOzs7OztJQUM3RCxnREFBZ0M7Ozs7O0lBRXBCLHNDQUErQjs7Ozs7SUFDL0IsMkNBQXlDOztJQUN6QywyQ0FDaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBTa2lwU2VsZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQ29uc3RydWN0YWJsZSwgRGVsZWdhdGluZ1ZhbHVlTW9kZWwsXG4gIERzbCxcbiAgR3VhcmQsXG4gIExpc3RNb2RlbCxcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFN0b3JlSW5MaXN0TW9kZWwsXG4gIFRyYWNlLFxuICBVc2VEZWxlZ2F0ZSxcbiAgVmFsdWVNb2RlbCxcbiAgVmFsdWVNb2RlbENoYWluXG59IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IERpc3Bvc2FibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IEFVUF9QTEFDRV9DT05GSUcsIFBsYWNlQ29uZmlnIH0gZnJvbSAnLi4vLi4vcGxhY2UtY29uZmlnJztcbmltcG9ydCB7IFBsYWNlRGVmaW5pdGlvbiB9IGZyb20gJy4uLy4uL3BsYWNlLWRlZmluaXRpb24nO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuXG5pbXBvcnQgeyBWaXNpdCB9IGZyb20gJy4uLy4uL3Zpc2l0JztcbmltcG9ydCB7IExFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OIH0gZnJvbSAnLi9yb3V0ZS1hbmltYXRpb25zJztcblxuLy8gUXVpY2sgaGFjayB0byBhdm9pZCBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW4gdGhpcyBhbmQgUGxhY2VDb21wb25lbnRzLlxuaW50ZXJmYWNlIFBsYWNlUmVmIHtcbiAgcmVhZG9ubHkgcGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb25cblxuICBpbml0aWFsaXNlQmluZGluZ3MocGFyYW06IFZhbHVlTW9kZWw8VmlzaXQ+KTogdm9pZDtcblxuICBvblBsYWNlUmVhZHkoKTogdm9pZDtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLXBsYWNlLW91dGxldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW0xFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OXVxufSlcbmV4cG9ydCBjbGFzcyBQbGFjZU91dGxldENvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIGFuaW1hdGUgPSB0cnVlO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdwbGFjZUFuaW1hdGlvbk9yZGVyTW9kZWwnKSBAVXNlRGVsZWdhdGUoKVxuICBjdXN0b21QbGFjZUFuaW1hdGlvbk9yZGVyTW9kZWw6IExpc3RNb2RlbDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pj47XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3BsYWNlQW5pbWF0aW9uT3JkZXInKSBAU3RvcmVJbkxpc3RNb2RlbCgnY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlck1vZGVsJylcbiAgY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlcjogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD5bXTtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgcGxhY2VDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxQbGFjZUNvbXBvbmVudD4oKTtcblxuICBAVmlld0NoaWxkKCdyb3V0ZU91dGxldCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJvdXRlck91dDogUm91dGVyT3V0bGV0O1xuXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlUGxhY2UgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8UGxhY2VDb21wb25lbnQ+KCk7XG4gIHByaXZhdGUgX2FjdGl2ZVBsYWNlVmlzaXRNb2RlbCA9IG5ldyBEZWxlZ2F0aW5nVmFsdWVNb2RlbDxWaXNpdD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pbk91dGxldFVwZGF0ZSA9IG5ldyBHdWFyZCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmF0ZWRSb3V0ZU1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPEFjdGl2YXRlZFJvdXRlPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wbGFjZURlZmluaXRpb24gPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8UGxhY2VEZWZpbml0aW9uPigpO1xuXG4gIHByaXZhdGUgcGFyZW50T3V0bGV0TW9kZWw6IE11dGFibGVWYWx1ZU1vZGVsPFBsYWNlT3V0bGV0Q29tcG9uZW50PjtcbiAgcHVibGljIHJlYWRvbmx5IHBsYWNlQW5pbWF0aW9uT3JkZXI6IFZhbHVlTW9kZWxDaGFpbjxudW1iZXI+O1xuICBwcml2YXRlIGlzT25Jbml0aWFsUGxhY2UgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VSb3V0ZXI6IFBsYWNlUm91dGVyLFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFVUF9QTEFDRV9DT05GSUcpXG4gICAgICAgICAgICAgIHJlYWRvbmx5IHBsYWNlQ29uZmlnOiBQbGFjZUNvbmZpZyxcbiAgICAgICAgICAgICAgQFNraXBTZWxmKCkgQE9wdGlvbmFsKClcbiAgICAgICAgICAgICAgICBwYXJlbnRPdXRsZXQ6IFBsYWNlT3V0bGV0Q29tcG9uZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuXG4gICAgdGhpcy5wYXJlbnRPdXRsZXRNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbChwYXJlbnRPdXRsZXQpO1xuICAgIHRoaXMuX2FjdGl2ZVBsYWNlVmlzaXRNb2RlbC5zZXREZWxlZ2F0ZShuZXcgTXV0YWJsZVZhbHVlTW9kZWw8VmlzaXQ+KCkpO1xuXG4gICAgY29uc3QgZGVmYXVsdFBsYWNlQW5pbWF0aW9uT3JkZXIgPSBjaGFpbih0aGlzLnBhcmVudE91dGxldE1vZGVsKVxuICAgICAgLnB1bGxWYWx1ZU1vZGVsKG8gPT4gby5hY3RpdmVQbGFjZU1vZGVsKVxuICAgICAgLnBsdWNrKCdwbGFjZURlZmluaXRpb24nKVxuICAgICAgLnBsdWNrTGlzdCgnY2hpbGRyZW4nKVxuICAgICAgLnBsdWNrKCdjb21wb25lbnQnKTtcblxuICAgIGNvbnN0IGFjdGl2YXRlUGxhY2VUeXBlID0gY2hhaW4odGhpcy5hY3RpdmVQbGFjZU1vZGVsKS5tYXAocCA9PiBwLmNvbnN0cnVjdG9yIGFzIENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTtcbiAgICB0aGlzLnBsYWNlQW5pbWF0aW9uT3JkZXIgPSBjaGFpbih0aGlzLmN1c3RvbVBsYWNlQW5pbWF0aW9uT3JkZXJNb2RlbClcbiAgICAgIC5vdGhlcndpc2UoZGVmYXVsdFBsYWNlQW5pbWF0aW9uT3JkZXIpXG4gICAgICAuaW5kZXhPZihhY3RpdmF0ZVBsYWNlVHlwZSlcbiAgICAgIC5tYXAob3JkZXIgPT4ge1xuICAgICAgICAvLyB3ZSBnZXQgLTEgb24gdGhlIGZpcnN0IGxvYWQgd2hpY2ggdHJpZ2dlcnMgYW4gYW5pbWF0aW9uIHRvIHRoZSBmaXJzdCBwYWdlLCBzbyBhbHdheSBwaW4gaXQgdG8gMFxuICAgICAgICAvLyBpZiB3ZSdyZSBhbmltYXRpbmcuXG4gICAgICAgIHJldHVybiB0aGlzLmlzT25Jbml0aWFsUGxhY2UgPyAwIDpcbiAgICAgICAgICB0aGlzLmFuaW1hdGUgPyBNYXRoLm1heChvcmRlciwgMCkgOiAwO1xuICAgICAgfSk7XG5cblxuICAgIC8vIFB1c2ggaW5jb21pbmcgY2hhbmdlcyBpbnRvIHRoZSBjb21wb25lbnRcbiAgICBjb25zdCByb3V0ZVZpc2l0ID0gY2hhaW4odGhpcy5fYWN0aXZlUGxhY2UpLnBsdWNrKCdwbGFjZURlZmluaXRpb24nKS5maW5kSW4ocGxhY2VSb3V0ZXIuYWN0aXZlVmlzaXRJbmRleCk7XG4gICAgY29uc3QgaW5Sb3V0ZVZpc2l0VXBkYXRlID0gbmV3IEd1YXJkKCk7XG4gICAgd2hlbi52YWx1ZU9mKHJvdXRlVmlzaXQpLmNoYW5nZXMoKHZpc2l0KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhcIiMjIyBSb3V0ZSB2aXNpdCBjaGFuZ2VkXCIpO1xuICAgICAgaWYgKHZpc2l0KSB7IC8vIGNhbiBiZSBudWxsIHdoaWxlIHRoZSBwbGFjZSBhbmQgaW5kZXggc3luYyB1cFxuICAgICAgICBpblJvdXRlVmlzaXRVcGRhdGUud2hpbGVUcnVlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwudmFsdWUgPSB2aXNpdDtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG5cblxuICAgIC8vIEhhbmRsZSBjb21wb25lbnQgYmFzZWQgY2hhbmdlc1xuICAgIHdoZW4udmFsdWVPZih0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwpLmNoYW5nZXMoKG5leHQsIHByZXZpb3VzKSA9PiB7XG4gICAgICB0aGlzLnB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKG5leHQsIHByZXZpb3VzKTtcbiAgICB9LCB7XG4gICAgICB1bmxlc3M6IHZhbHVlT2YuYW55KHRoaXMuX2luT3V0bGV0VXBkYXRlLCBpblJvdXRlVmlzaXRVcGRhdGUpLmFyZVRydXRoeSgpXG4gICAgfSk7XG5cbiAgICBjaGFpbih0aGlzLl9hY3RpdmVQbGFjZSlcbiAgICAgIC5wb3N0cG9uZVdoaWxlKHBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uQWN0aXZlKVxuICAgICAgLnN1YnNjcmliZShwbGFjZSA9PiB0aGlzLnBsYWNlQ2hhbmdlZC5lbWl0KHBsYWNlKSk7XG5cbiAgICAvLyBjb25zdCB0eG8gPSBuZXcgVHJhbnNhY3Rpb25PYnNlcnZlcigpLm9uRXZlbnQoZSA9PiBjb25zb2xlLmxvZyhlLnRvU3RyaW5nKCkpKTtcbiAgICAvLyB0eG8ub2JzZXJ2ZSgnaW5Sb3V0ZVZpc2l0VXBkYXRlJywgaW5Sb3V0ZVZpc2l0VXBkYXRlKTtcblxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBnZXQgYW5pbWF0aW9uRHVyYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucGxhY2VDb25maWcgJiYgdGhpcy5wbGFjZUNvbmZpZy5hbmltYXRpb25EdXJhdGlvbiA/IHRoaXMucGxhY2VDb25maWcuYW5pbWF0aW9uRHVyYXRpb24gOiAnNTAwbXMnO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgbmF2aWdhdGUodmlzaXQ6IFZpc2l0KSB7XG4gICAgY29uc29sZS5sb2coeyBhY3RpdmF0ZWRSb3V0ZTogdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSB9KTtcbiAgICB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRlKHZpc2l0LCB7XG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLnBhcmVudE91dGxldCA/IHRoaXMucGFyZW50T3V0bGV0LmFjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWUgOiBudWxsXG4gICAgfSk7XG4gIH1cblxuICBnZXQgcGFyZW50T3V0bGV0KCk6IFBsYWNlT3V0bGV0Q29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRPdXRsZXRNb2RlbC52YWx1ZTtcbiAgfVxuXG4gIHB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKG5leHQ6IFZpc2l0LCBwcmV2aW91czogVmlzaXQpIHtcbiAgICBjb25zdCBhY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuX2FjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWU7XG4gICAgdGhpcy5wbGFjZVJvdXRlci5wdXNoVmlzaXRDaGFuZ2VzVG9Sb3V0ZShhY3RpdmF0ZWRSb3V0ZSwgcHJldmlvdXMsIG5leHQpO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZVBsYWNlTW9kZWwoKTogVmFsdWVNb2RlbDxQbGFjZUNvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVQbGFjZS5yZWFkb25seTtcbiAgfVxuXG4gIGdldCBhY3RpdmF0ZWRSb3V0ZU1vZGVsKCk6IFZhbHVlTW9kZWw8QWN0aXZhdGVkUm91dGU+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC5yZWFkb25seTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIG9uT3V0bGV0QWN0aXZhdGVkKHJvdXRlck91dGxldDogUm91dGVyT3V0bGV0LCBwbGFjZTogUGxhY2VDb21wb25lbnQpIHtcbiAgICB0aGlzLl9pbk91dGxldFVwZGF0ZS53aGlsZVRydWUoKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5fYWN0aXZlUGxhY2UudmFsdWUgPSBwbGFjZTtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSA9IHJvdXRlck91dGxldC5hY3RpdmF0ZWRSb3V0ZTtcbiAgICAgICAgdGhpcy5fcGxhY2VEZWZpbml0aW9uLnZhbHVlID0gcGxhY2UucGxhY2VEZWZpbml0aW9uO1xuICAgICAgICBjb25zdCB2aXNpdE1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFZpc2l0PigpO1xuICAgICAgICB0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwuc2V0RGVsZWdhdGUodmlzaXRNb2RlbCk7XG4gICAgICAgIHBsYWNlLmluaXRpYWxpc2VCaW5kaW5ncyh2aXNpdE1vZGVsKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICghdGhpcy5hbmltYXRlKSB7XG4gICAgICAvLyB3ZSdyZSBub3QgYW5pbWF0aW5nIHNvIHRyaWdnZXIgYW55IHBvc3QgYW5pbWF0aW9uIGNhbGxiYWNrcyBub3cuXG4gICAgICB0aGlzLmFuaW1hdGlvbkRvbmUoKTtcbiAgICB9XG4gIH1cblxuICBAVHJhY2UoKVxuICBvbk91dGxldERlYWN0aXZhdGVkKCkge1xuICAgIHRoaXMuX2luT3V0bGV0VXBkYXRlLndoaWxlVHJ1ZSgoKSA9PiB7XG4gICAgICB0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwuc2V0RGVsZWdhdGUobnVsbCk7XG4gICAgICB0aGlzLmlzT25Jbml0aWFsUGxhY2UgPSBmYWxzZTtcbiAgICAgIHRoaXMuX2FjdGl2ZVBsYWNlLnZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMuX2FjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy5fcGxhY2VEZWZpbml0aW9uLnZhbHVlID0gbnVsbDtcbiAgICB9KTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIGFuaW1hdGlvblN0YXJ0ZWQoKSB7XG4gICAgY29uc29sZS5sb2coeyBhY3RpdmVQbGFjZTogdGhpcy5fYWN0aXZlUGxhY2UudmFsdWUgfSk7XG4gIH1cblxuICBAVHJhY2UoKVxuICBhbmltYXRpb25Eb25lKCkge1xuICAgIGlmICh0aGlzLl9hY3RpdmVQbGFjZS52YWx1ZSkge1xuICAgICAgdGhpcy5fYWN0aXZlUGxhY2UudmFsdWUub25QbGFjZVJlYWR5KCk7XG4gICAgfVxuICB9XG5cblxufVxuIl19
|
|
442
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9jb21wb25lbnRzL3BsYWNlLW91dGxldC9wbGFjZS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFrQixNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUdMLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsZ0JBQWdCLEVBRWhCLFdBQVcsRUFHWixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBZSxNQUFNLG9CQUFvQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQUdoRSx1QkFNQzs7O0lBTEMsbUNBQXlDOzs7OztJQUV6Qyw2REFBbUQ7Ozs7SUFFbkQsa0RBQXFCOztBQUd2QjtJQU0wQyxnREFBbUI7SUFvQzNELDhCQUE2QixNQUFjLEVBQ2QsV0FBd0IsRUFDTSxXQUF3QixFQUMvQyxZQUFrQztRQUh0RSxZQUlFLGlCQUFPLFNBaURSO1FBckQ0QixZQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUJBQVcsR0FBWCxXQUFXLENBQWE7UUFDTSxpQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQW5DbkYsYUFBTyxHQUFHLElBQUksQ0FBQztRQVdOLGtCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFNMUMsa0JBQVksR0FBRyxJQUFJLGlCQUFpQixFQUFrQixDQUFDO1FBQ2hFLDRCQUFzQixHQUFHLElBQUksb0JBQW9CLEVBQVMsQ0FBQztRQUVsRCx5QkFBbUIsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ2xDLDJCQUFxQixHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFFcEMseUJBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUNsQywwQkFBb0IsR0FBRyxJQUFJLGlCQUFpQixFQUFrQixDQUFDO1FBRS9ELHNCQUFnQixHQUFHLElBQUksaUJBQWlCLEVBQW1CLENBQUM7UUFJckUsdUJBQWlCLEdBQVcsSUFBSSxDQUFDO1FBUWpDLElBQUEsMkJBQWtGLEVBQWhGLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxrQkFBTSxFQUFFLGNBQUksRUFBRSxnQkFBSyxFQUFFLG9CQUFPLEVBQUUsc0JBQWtDO1FBRXhGLEtBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdELEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxpQkFBaUIsRUFBUyxDQUFDLENBQUM7UUFDeEUsS0FBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUksQ0FBQyxxQkFBcUIsRUFBRSxLQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQzs7WUFFL0YsMEJBQTBCLEdBQUcsS0FBSyxDQUFDLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQzthQUM3RCxjQUFjOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsZ0JBQWdCLEVBQWxCLENBQWtCLEVBQUM7YUFDdkMsS0FBSyxDQUFDLGlCQUFpQixDQUFDO2FBQ3hCLFNBQVMsQ0FBQyxVQUFVLENBQUM7YUFDckIsS0FBSyxDQUFDLFdBQVcsQ0FBQzs7WUFFZixpQkFBaUIsR0FBRyxLQUFLLENBQUMsS0FBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsQ0FBQyxXQUFJLG1CQUFBLENBQUMsQ0FBQyxXQUFXLEVBQWlDLEdBQUEsRUFBQztRQUMvRyxLQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDLEtBQUksQ0FBQyw4QkFBOEIsQ0FBQzthQUNsRSxTQUFTLENBQUMsMEJBQTBCLENBQUM7YUFDckMsTUFBTTs7OztRQUFDLFVBQUMsYUFBYTs7Z0JBQ2hCLFVBQVUsR0FBRyxDQUFDO1lBQ2xCLElBQUksaUJBQWlCLENBQUMsS0FBSyxFQUFFO2dCQUMzQixVQUFVLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO29CQUNuQyxLQUFJLENBQUMsaUJBQWlCLEdBQUcsVUFBVSxDQUFDO2lCQUNyQzthQUNGO1lBQ0QsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxLQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDbkYsQ0FBQyxHQUFFLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQUV2QywyQ0FBMkM7UUFDM0MsS0FBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsS0FBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMxRyw4R0FBOEc7UUFDOUcsZ0dBQWdHO1FBQ2hHLDRHQUE0RztRQUM1Ryx1R0FBdUc7UUFDdkcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTzs7O1FBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyx1QkFBdUIsRUFBRSxFQUE5QixDQUE4QixHQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBRS9HLGlDQUFpQztRQUNqQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLE9BQU87Ozs7O1FBQUMsVUFBQyxJQUFJLEVBQUUsUUFBUTtZQUMvRCxLQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLENBQUMsR0FBRTtZQUNELE1BQU0sRUFBRSxLQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QjtTQUNqRCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsS0FBSSxDQUFDLFlBQVksQ0FBQzthQUNyQixhQUFhLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDO2FBQ2xELFNBQVM7Ozs7UUFBQyxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUE3QixDQUE2QixFQUFDLENBQUM7O1FBRXJELGlGQUFpRjtRQUNqRix5REFBeUQ7SUFFM0QsQ0FBQzs7OztJQUVELHVDQUFROzs7SUFBUjtJQUNBLENBQUM7SUFFRCxXQUFXOzs7OztJQUNYLGdEQUFpQjs7Ozs7SUFBakI7UUFDRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVELHNCQUFJLG1EQUFpQjs7OztRQUFyQjtZQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDL0csQ0FBQzs7O09BQUE7SUFFRCxXQUFXOzs7Ozs7SUFDWCx1Q0FBUTs7Ozs7O0lBQVIsVUFBUyxLQUFZO1FBQ25CLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUU7WUFDL0IsVUFBVSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO1NBQ25GLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxzQkFBSSw4Q0FBWTs7OztRQUFoQjtZQUNFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztRQUN0QyxDQUFDOzs7T0FBQTtJQUVELFdBQVc7Ozs7O0lBQ1gsc0RBQXVCOzs7OztJQUF2QjtRQUFBLGlCQWFDOztZQVpPLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7UUFDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUNWLEtBQUssT0FBQTtZQUNMLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQ3JELGtCQUFrQixFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLO1lBQ2xELGdCQUFnQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsdUJBQXVCLENBQUMsS0FBSztTQUNqRSxDQUFDLENBQUM7UUFDSCxJQUFJLEtBQUssRUFBRSxFQUFFLGdEQUFnRDtZQUMzRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUzs7O1lBQUM7Z0JBQ2pDLEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQzVDLENBQUMsRUFBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7Ozs7SUFFRCxzREFBdUI7Ozs7O0lBQXZCLFVBQXdCLElBQVcsRUFBRSxRQUFlOztZQUM1QyxjQUFjLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUs7UUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCxzQkFBSSxrREFBZ0I7Ozs7UUFBcEI7WUFDRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQ3BDLENBQUM7OztPQUFBO0lBRUQsc0JBQUkscURBQW1COzs7O1FBQXZCO1lBQ0UsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDO1FBQzVDLENBQUM7OztPQUFBO0lBRUQsV0FBVzs7Ozs7OztJQUNYLGdEQUFpQjs7Ozs7OztJQUFqQixVQUFrQixZQUEwQixFQUFFLEtBQXFCO1FBQW5FLGlCQWlCQztRQWhCQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUzs7O1FBQUM7WUFDakMsSUFBSTtnQkFDRixLQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7Z0JBQ2hDLEtBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FBQztnQkFDOUQsS0FBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDOztvQkFDOUMsVUFBVSxHQUFHLElBQUksaUJBQWlCLEVBQVM7Z0JBQ2pELEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3BELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN0QztZQUFDLE9BQU8sS0FBSyxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdEI7UUFDSCxDQUFDLEVBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLG1FQUFtRTtZQUNuRSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsV0FBVzs7Ozs7SUFDWCxrREFBbUI7Ozs7O0lBQW5CO1FBQUEsaUJBT0M7UUFOQyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUzs7O1FBQUM7WUFDbkMsS0FBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQy9CLEtBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ3ZDLEtBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ25DLEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEQsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVzs7Ozs7SUFDWCwrQ0FBZ0I7Ozs7O0lBQWhCO1FBQ0UsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVc7Ozs7O0lBQ1gsNENBQWE7Ozs7O0lBQWI7UUFDRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQzs7Z0JBOUxGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QiwyY0FBNEM7b0JBRTVDLFVBQVUsRUFBRSxDQUFDLDBCQUEwQixDQUFDOztpQkFDekM7Ozs7Z0JBdkN3QixNQUFNO2dCQW9CdEIsV0FBVztnREEwREwsUUFBUSxZQUFJLE1BQU0sU0FBQyxnQkFBZ0I7Z0JBQ0Usb0JBQW9CLHVCQUF6RCxRQUFRLFlBQUksUUFBUTs7OzBCQXJDaEMsS0FBSztpREFJTCxLQUFLLFNBQUMsMEJBQTBCOzRDQUloQyxLQUFLLFNBQUMscUJBQXFCOytCQUczQixNQUFNOzRCQUdOLFNBQVMsU0FBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOztJQVQxQztRQURvQyxXQUFXLEVBQUU7MENBQ2pCLFNBQVM7Z0ZBQWdDO0lBSXpFO1FBRCtCLGdCQUFnQixDQUFDLGdDQUFnQyxDQUFDOzsyRUFDdEI7SUFnTDdELDJCQUFDO0NBQUEsQUFqTUQsQ0FNMEMsbUJBQW1CLEdBMkw1RDtTQTNMWSxvQkFBb0I7OztJQUUvQix1Q0FDZTs7SUFHZiw4REFDeUU7O0lBR3pFLHlEQUMyRDs7SUFFM0QsNENBQzJEOztJQUUzRCx5Q0FDd0I7Ozs7O0lBR3hCLDRDQUF3RTs7Ozs7SUFDeEUsc0RBQW1FOzs7OztJQUVuRSxtREFBbUQ7Ozs7O0lBQ25ELHFEQUFxRDs7Ozs7SUFDckQsK0NBQXlEOzs7OztJQUN6RCxtREFBbUQ7Ozs7O0lBQ25ELG9EQUFnRjs7Ozs7SUFFaEYsZ0RBQTZFOzs7OztJQUM3RSxpREFBbUU7O0lBQ25FLG1EQUE2RDs7Ozs7SUFFN0QsaURBQXlDOzs7OztJQUN6QywyQ0FBNEM7Ozs7O0lBRWhDLHNDQUErQjs7Ozs7SUFDL0IsMkNBQXlDOztJQUN6QywyQ0FBdUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBTa2lwU2VsZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQm9vbGVhblZhbHVlTW9kZWxDaGFpbixcbiAgQ29uc3RydWN0YWJsZSxcbiAgRGVsZWdhdGluZ1ZhbHVlTW9kZWwsXG4gIERzbCxcbiAgR3VhcmQsXG4gIExpc3RNb2RlbCxcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFN0b3JlSW5MaXN0TW9kZWwsXG4gIFRyYWNlLFxuICBVc2VEZWxlZ2F0ZSxcbiAgVmFsdWVNb2RlbCxcbiAgVmFsdWVNb2RlbENoYWluXG59IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IERpc3Bvc2FibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IEFVUF9QTEFDRV9DT05GSUcsIFBsYWNlQ29uZmlnIH0gZnJvbSAnLi4vLi4vcGxhY2UtY29uZmlnJztcbmltcG9ydCB7IFBsYWNlRGVmaW5pdGlvbiB9IGZyb20gJy4uLy4uL3BsYWNlLWRlZmluaXRpb24nO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuXG5pbXBvcnQgeyBWaXNpdCB9IGZyb20gJy4uLy4uL3Zpc2l0JztcbmltcG9ydCB7IExFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OIH0gZnJvbSAnLi9yb3V0ZS1hbmltYXRpb25zJztcblxuLy8gUXVpY2sgaGFjayB0byBhdm9pZCBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW4gdGhpcyBhbmQgUGxhY2VDb21wb25lbnRzLlxuaW50ZXJmYWNlIFBsYWNlUmVmIHtcbiAgcmVhZG9ubHkgcGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb25cblxuICBpbml0aWFsaXNlQmluZGluZ3MocGFyYW06IFZhbHVlTW9kZWw8VmlzaXQ+KTogdm9pZDtcblxuICBvblBsYWNlUmVhZHkoKTogdm9pZDtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLXBsYWNlLW91dGxldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW0xFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OXVxufSlcbmV4cG9ydCBjbGFzcyBQbGFjZU91dGxldENvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIGFuaW1hdGUgPSB0cnVlO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdwbGFjZUFuaW1hdGlvbk9yZGVyTW9kZWwnKSBAVXNlRGVsZWdhdGUoKVxuICBjdXN0b21QbGFjZUFuaW1hdGlvbk9yZGVyTW9kZWw6IExpc3RNb2RlbDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pj47XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3BsYWNlQW5pbWF0aW9uT3JkZXInKSBAU3RvcmVJbkxpc3RNb2RlbCgnY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlck1vZGVsJylcbiAgY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlcjogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD5bXTtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgcGxhY2VDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxQbGFjZUNvbXBvbmVudD4oKTtcblxuICBAVmlld0NoaWxkKCdyb3V0ZU91dGxldCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJvdXRlck91dDogUm91dGVyT3V0bGV0O1xuXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlUGxhY2UgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8UGxhY2VDb21wb25lbnQ+KCk7XG4gIHByaXZhdGUgX2FjdGl2ZVBsYWNlVmlzaXRNb2RlbCA9IG5ldyBEZWxlZ2F0aW5nVmFsdWVNb2RlbDxWaXNpdD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pbk91dGxldEFjdGl2YXRpb24gPSBuZXcgR3VhcmQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5PdXRsZXREZWFjdGl2YXRpb24gPSBuZXcgR3VhcmQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5PdXRsZXRVcGRhdGU6IEJvb2xlYW5WYWx1ZU1vZGVsQ2hhaW47XG4gIHByaXZhdGUgcmVhZG9ubHkgX2luUm91dGVWaXNpdFVwZGF0ZSA9IG5ldyBHdWFyZCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmF0ZWRSb3V0ZU1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPEFjdGl2YXRlZFJvdXRlPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BsYWNlRGVmaW5pdGlvbiA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxQbGFjZURlZmluaXRpb24+KCk7XG4gIHByaXZhdGUgcGFyZW50T3V0bGV0TW9kZWw6IE11dGFibGVWYWx1ZU1vZGVsPFBsYWNlT3V0bGV0Q29tcG9uZW50PjtcbiAgcHVibGljIHJlYWRvbmx5IHBsYWNlQW5pbWF0aW9uT3JkZXI6IFZhbHVlTW9kZWxDaGFpbjxudW1iZXI+O1xuXG4gIHByaXZhdGUgaW5pdGlhbFBsYWNlSW5kZXg6IG51bWJlciA9IG51bGw7XG4gIHByaXZhdGUgcm91dGVyVmlzaXQ6IFZhbHVlTW9kZWxDaGFpbjxWaXNpdD47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQVVQX1BMQUNFX0NPTkZJRykgcmVhZG9ubHkgcGxhY2VDb25maWc6IFBsYWNlQ29uZmlnLFxuICAgICAgICAgICAgICBAU2tpcFNlbGYoKSBAT3B0aW9uYWwoKSBwYXJlbnRPdXRsZXQ6IFBsYWNlT3V0bGV0Q29tcG9uZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuXG4gICAgdGhpcy5wYXJlbnRPdXRsZXRNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbChwYXJlbnRPdXRsZXQpO1xuICAgIHRoaXMuX2FjdGl2ZVBsYWNlVmlzaXRNb2RlbC5zZXREZWxlZ2F0ZShuZXcgTXV0YWJsZVZhbHVlTW9kZWw8VmlzaXQ+KCkpO1xuICAgIHRoaXMuX2luT3V0bGV0VXBkYXRlID0gdmFsdWVPZi5hbnkodGhpcy5faW5PdXRsZXREZWFjdGl2YXRpb24sIHRoaXMuX2luT3V0bGV0QWN0aXZhdGlvbikuYXJlVHJ1dGh5KCk7XG5cbiAgICBjb25zdCBkZWZhdWx0UGxhY2VBbmltYXRpb25PcmRlciA9IGNoYWluKHRoaXMucGFyZW50T3V0bGV0TW9kZWwpXG4gICAgICAucHVsbFZhbHVlTW9kZWwobyA9PiBvLmFjdGl2ZVBsYWNlTW9kZWwpXG4gICAgICAucGx1Y2soJ3BsYWNlRGVmaW5pdGlvbicpXG4gICAgICAucGx1Y2tMaXN0KCdjaGlsZHJlbicpXG4gICAgICAucGx1Y2soJ2NvbXBvbmVudCcpO1xuXG4gICAgY29uc3QgYWN0aXZhdGVQbGFjZVR5cGUgPSBjaGFpbih0aGlzLmFjdGl2ZVBsYWNlTW9kZWwpLm1hcChwID0+IHAuY29uc3RydWN0b3IgYXMgQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4pO1xuICAgIHRoaXMucGxhY2VBbmltYXRpb25PcmRlciA9IGNoYWluKHRoaXMuY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlck1vZGVsKVxuICAgICAgLm90aGVyd2lzZShkZWZhdWx0UGxhY2VBbmltYXRpb25PcmRlcilcbiAgICAgIC5yZWR1Y2UoKHBsYWNlc0luT3JkZXIpID0+IHtcbiAgICAgICAgbGV0IHBsYWNlSW5kZXggPSAwO1xuICAgICAgICBpZiAoYWN0aXZhdGVQbGFjZVR5cGUudmFsdWUpIHtcbiAgICAgICAgICBwbGFjZUluZGV4ID0gcGxhY2VzSW5PcmRlci5pbmRleE9mKGFjdGl2YXRlUGxhY2VUeXBlLnZhbHVlKTtcbiAgICAgICAgICBpZiAoXy5pc05pbCh0aGlzLmluaXRpYWxQbGFjZUluZGV4KSkge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsUGxhY2VJbmRleCA9IHBsYWNlSW5kZXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBfLmlzTmlsKHRoaXMuaW5pdGlhbFBsYWNlSW5kZXgpID8gMCA6IHBsYWNlSW5kZXggLSB0aGlzLmluaXRpYWxQbGFjZUluZGV4O1xuICAgICAgfSwgeyBkZXBlbmRzT246IGFjdGl2YXRlUGxhY2VUeXBlIH0pO1xuXG4gICAgLy8gUHVzaCBpbmNvbWluZyBjaGFuZ2VzIGludG8gdGhlIGNvbXBvbmVudFxuICAgIHRoaXMucm91dGVyVmlzaXQgPSBjaGFpbih0aGlzLl9hY3RpdmVQbGFjZSkucGx1Y2soJ3BsYWNlRGVmaW5pdGlvbicpLmZpbmRJbihwbGFjZVJvdXRlci5hY3RpdmVWaXNpdEluZGV4KTtcbiAgICAvLyBPdXIgcm91dGVyIHZpc2l0IHdpbGwgY2hhbmdlIHdoZW4gb3VyIGFjdGl2ZSBpcyBudWxsaWZpZWQgZHVyaW5nIGRlYWN0aXZhdGlvbiwgd2hpY2ggd2lsbCBwdXNoIGEgbnVsbCB2aXNpdFxuICAgIC8vIHRoZSB0aGUgZGVhY3RpdmF0ZWQgY29tcG9uZW50LCB3aGljaCB3aWxsIG51a2UgaXQncyB2aWV3IGJlZm9yZSB0aGUgYW5pbWF0aW9ucyBoYXZlIGZpbmlzaGVkLlxuICAgIC8vIFRoZSB2aXNpdCB3aWxsIGFsd2F5IHVwZGF0ZWQgYWZ0ZXIgdGhlIHJvdXRlciBzZXNzaW9uIGlzIGZpbnNpc2VkICh3aGVuIHRoZSBuZXcgdmlzaXRzIGFyZSByZWdpc3RlcmVkKSBzb1xuICAgIC8vIHdlIGNhbiBzYWZlbHkgaWdub3JlIGl0IGR1cmluZyBvdXRsZXQgY2hhbmdlcyBhcyB0aGVzZSBhbHdheXMgaGFwcGVuIGJlZm9yZSB0aGUgcm91dGVyIHNlc3Npb24gZW5kcy5cbiAgICB3aGVuLnZhbHVlT2YodGhpcy5yb3V0ZXJWaXNpdCkuY2hhbmdlcygoKSA9PiB0aGlzLnB1c2hSb3V0ZUNoYW5nZXNUb1Zpc2l0KCksIHsgdW5sZXNzOiB0aGlzLl9pbk91dGxldFVwZGF0ZSB9KTtcblxuICAgIC8vIEhhbmRsZSBjb21wb25lbnQgYmFzZWQgY2hhbmdlc1xuICAgIHdoZW4udmFsdWVPZih0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwpLmNoYW5nZXMoKG5leHQsIHByZXZpb3VzKSA9PiB7XG4gICAgICB0aGlzLnB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKG5leHQsIHByZXZpb3VzKTtcbiAgICB9LCB7XG4gICAgICB1bmxlc3M6IHRoaXMucGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb25BY3RpdmVcbiAgICB9KTtcblxuICAgIGNoYWluKHRoaXMuX2FjdGl2ZVBsYWNlKVxuICAgICAgLnBvc3Rwb25lV2hpbGUocGxhY2VSb3V0ZXIubmF2aWdhdGlvblNlc3Npb25BY3RpdmUpXG4gICAgICAuc3Vic2NyaWJlKHBsYWNlID0+IHRoaXMucGxhY2VDaGFuZ2VkLmVtaXQocGxhY2UpKTtcblxuICAgIC8vIGNvbnN0IHR4byA9IG5ldyBUcmFuc2FjdGlvbk9ic2VydmVyKCkub25FdmVudChlID0+IGNvbnNvbGUubG9nKGUudG9TdHJpbmcoKSkpO1xuICAgIC8vIHR4by5vYnNlcnZlKCdpblJvdXRlVmlzaXRVcGRhdGUnLCBpblJvdXRlVmlzaXRVcGRhdGUpO1xuXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGdldEFuaW1hdGlvbk9yZGVyKCkge1xuICAgIHJldHVybiB0aGlzLnBsYWNlQW5pbWF0aW9uT3JkZXIudmFsdWU7XG4gIH1cblxuICBnZXQgYW5pbWF0aW9uRHVyYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucGxhY2VDb25maWcgJiYgdGhpcy5wbGFjZUNvbmZpZy5hbmltYXRpb25EdXJhdGlvbiA/IHRoaXMucGxhY2VDb25maWcuYW5pbWF0aW9uRHVyYXRpb24gOiAnNTAwbXMnO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgbmF2aWdhdGUodmlzaXQ6IFZpc2l0KSB7XG4gICAgLy8gY29uc29sZS5sb2coeyBhY3RpdmF0ZWRSb3V0ZTogdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSB9KTtcbiAgICB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRlKHZpc2l0LCB7XG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLnBhcmVudE91dGxldCA/IHRoaXMucGFyZW50T3V0bGV0LmFjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWUgOiBudWxsXG4gICAgfSk7XG4gIH1cblxuICBnZXQgcGFyZW50T3V0bGV0KCk6IFBsYWNlT3V0bGV0Q29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRPdXRsZXRNb2RlbC52YWx1ZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIHB1c2hSb3V0ZUNoYW5nZXNUb1Zpc2l0KCkge1xuICAgIGNvbnN0IHZpc2l0ID0gdGhpcy5yb3V0ZXJWaXNpdC52YWx1ZTtcbiAgICBjb25zb2xlLmxvZyh7XG4gICAgICB2aXNpdCxcbiAgICAgIHBsYWNlOiB2aXNpdCA/IHZpc2l0LnBsYWNlRGVmaW5pdGlvbi5jb21wb25lbnQgOiBudWxsLFxuICAgICAgaW5PdXRsZXRBY3RpdmF0aW9uOiB0aGlzLl9pbk91dGxldEFjdGl2YXRpb24udmFsdWUsXG4gICAgICBpblJvdXRpbmdTZXNzaW9uOiB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uQWN0aXZlLnZhbHVlXG4gICAgfSk7XG4gICAgaWYgKHZpc2l0KSB7IC8vIGNhbiBiZSBudWxsIHdoaWxlIHRoZSBwbGFjZSBhbmQgaW5kZXggc3luYyB1cFxuICAgICAgdGhpcy5faW5Sb3V0ZVZpc2l0VXBkYXRlLndoaWxlVHJ1ZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZVBsYWNlVmlzaXRNb2RlbC52YWx1ZSA9IHZpc2l0O1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVzaFZpc2l0Q2hhbmdlc1RvUm91dGUobmV4dDogVmlzaXQsIHByZXZpb3VzOiBWaXNpdCkge1xuICAgIGNvbnN0IGFjdGl2YXRlZFJvdXRlID0gdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZTtcbiAgICB0aGlzLnBsYWNlUm91dGVyLnB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKGFjdGl2YXRlZFJvdXRlLCBwcmV2aW91cywgbmV4dCk7XG4gIH1cblxuICBnZXQgYWN0aXZlUGxhY2VNb2RlbCgpOiBWYWx1ZU1vZGVsPFBsYWNlQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBsYWNlLnJlYWRvbmx5O1xuICB9XG5cbiAgZ2V0IGFjdGl2YXRlZFJvdXRlTW9kZWwoKTogVmFsdWVNb2RlbDxBY3RpdmF0ZWRSb3V0ZT4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmF0ZWRSb3V0ZU1vZGVsLnJlYWRvbmx5O1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb25PdXRsZXRBY3RpdmF0ZWQocm91dGVyT3V0bGV0OiBSb3V0ZXJPdXRsZXQsIHBsYWNlOiBQbGFjZUNvbXBvbmVudCkge1xuICAgIHRoaXMuX2luT3V0bGV0QWN0aXZhdGlvbi53aGlsZVRydWUoKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5fYWN0aXZlUGxhY2UudmFsdWUgPSBwbGFjZTtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSA9IHJvdXRlck91dGxldC5hY3RpdmF0ZWRSb3V0ZTtcbiAgICAgICAgdGhpcy5fcGxhY2VEZWZpbml0aW9uLnZhbHVlID0gcGxhY2UucGxhY2VEZWZpbml0aW9uO1xuICAgICAgICBjb25zdCB2aXNpdE1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFZpc2l0PigpO1xuICAgICAgICB0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwuc2V0RGVsZWdhdGUodmlzaXRNb2RlbCk7XG4gICAgICAgIHBsYWNlLmluaXRpYWxpc2VCaW5kaW5ncyh2aXNpdE1vZGVsKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICghdGhpcy5hbmltYXRlKSB7XG4gICAgICAvLyB3ZSdyZSBub3QgYW5pbWF0aW5nIHNvIHRyaWdnZXIgYW55IHBvc3QgYW5pbWF0aW9uIGNhbGxiYWNrcyBub3cuXG4gICAgICB0aGlzLmFuaW1hdGlvbkRvbmUoKTtcbiAgICB9XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvbk91dGxldERlYWN0aXZhdGVkKCkge1xuICAgIHRoaXMuX2luT3V0bGV0RGVhY3RpdmF0aW9uLndoaWxlVHJ1ZSgoKSA9PiB7XG4gICAgICB0aGlzLl9hY3RpdmVQbGFjZS52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLl9hY3RpdmF0ZWRSb3V0ZU1vZGVsLnZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMuX3BsYWNlRGVmaW5pdGlvbi52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLl9hY3RpdmVQbGFjZVZpc2l0TW9kZWwuc2V0RGVsZWdhdGUobnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhbmltYXRpb25TdGFydGVkKCkge1xuICAgIGNvbnNvbGUubG9nKHsgYWN0aXZlUGxhY2U6IHRoaXMuX2FjdGl2ZVBsYWNlLnZhbHVlIH0pO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYW5pbWF0aW9uRG9uZSgpIHtcbiAgICBpZiAodGhpcy5fYWN0aXZlUGxhY2UudmFsdWUpIHtcbiAgICAgIHRoaXMuX2FjdGl2ZVBsYWNlLnZhbHVlLm9uUGxhY2VSZWFkeSgpO1xuICAgIH1cbiAgfVxuXG5cbn1cbiJdfQ==
|
|
@@ -239,16 +239,12 @@ var PlaceRouter = /** @class */ (function (_super) {
|
|
|
239
239
|
[def.getFormattedRouteId(visit), def.getFormattedRouteParameters(visit)] :
|
|
240
240
|
[def.getFormattedRouteParameters(visit)];
|
|
241
241
|
};
|
|
242
|
-
// @Trace()
|
|
243
|
-
// @Trace()
|
|
244
242
|
/**
|
|
245
243
|
* @private
|
|
246
244
|
* @param {?} event
|
|
247
245
|
* @return {?}
|
|
248
246
|
*/
|
|
249
|
-
PlaceRouter.prototype.onAngularRouterStarted =
|
|
250
|
-
// @Trace()
|
|
251
|
-
/**
|
|
247
|
+
PlaceRouter.prototype.onAngularRouterStarted = /**
|
|
252
248
|
* @private
|
|
253
249
|
* @param {?} event
|
|
254
250
|
* @return {?}
|
|
@@ -265,15 +261,11 @@ var PlaceRouter = /** @class */ (function (_super) {
|
|
|
265
261
|
}
|
|
266
262
|
this.firstRoute = false;
|
|
267
263
|
};
|
|
268
|
-
// @Trace()
|
|
269
|
-
// @Trace()
|
|
270
264
|
/**
|
|
271
265
|
* @private
|
|
272
266
|
* @return {?}
|
|
273
267
|
*/
|
|
274
|
-
PlaceRouter.prototype.onAngularRouterFinished =
|
|
275
|
-
// @Trace()
|
|
276
|
-
/**
|
|
268
|
+
PlaceRouter.prototype.onAngularRouterFinished = /**
|
|
277
269
|
* @private
|
|
278
270
|
* @return {?}
|
|
279
271
|
*/
|
|
@@ -328,6 +320,18 @@ var PlaceRouter = /** @class */ (function (_super) {
|
|
|
328
320
|
tslib_1.__metadata("design:paramtypes", [Visit, Object]),
|
|
329
321
|
tslib_1.__metadata("design:returntype", Promise)
|
|
330
322
|
], PlaceRouter.prototype, "navigate", null);
|
|
323
|
+
tslib_1.__decorate([
|
|
324
|
+
Trace(),
|
|
325
|
+
tslib_1.__metadata("design:type", Function),
|
|
326
|
+
tslib_1.__metadata("design:paramtypes", [NavigationStart]),
|
|
327
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
328
|
+
], PlaceRouter.prototype, "onAngularRouterStarted", null);
|
|
329
|
+
tslib_1.__decorate([
|
|
330
|
+
Trace(),
|
|
331
|
+
tslib_1.__metadata("design:type", Function),
|
|
332
|
+
tslib_1.__metadata("design:paramtypes", []),
|
|
333
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
334
|
+
], PlaceRouter.prototype, "onAngularRouterFinished", null);
|
|
331
335
|
return PlaceRouter;
|
|
332
336
|
}(GarbageCollector));
|
|
333
337
|
export { PlaceRouter };
|
|
@@ -361,4 +365,4 @@ if (false) {
|
|
|
361
365
|
/** @type {?} */
|
|
362
366
|
PlaceRouter.prototype.placeHistory;
|
|
363
367
|
}
|
|
364
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utcm91dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLXJvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFHTCxhQUFhLEVBQ2IsZUFBZSxFQUNmLGVBQWUsRUFDZixNQUFNLEVBQ1AsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBRUwsR0FBRyxFQUNILGdCQUFnQixFQUdoQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLEtBQUssRUFFTixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQzs7Ozs7QUFHaEM7SUFHaUMsdUNBQWdCO0lBVS9DLHFCQUE2QixNQUFjLEVBQVcsZUFBeUIsRUFBVyxZQUEwQjtRQUFwSCxZQUNFLGlCQUFPLFNBOEJSO1FBL0I0QixZQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVcscUJBQWUsR0FBZixlQUFlLENBQVU7UUFBVyxrQkFBWSxHQUFaLFlBQVksQ0FBYztRQVI1RyxnQkFBVSxHQUFHLElBQUksQ0FBQztRQUVULDZCQUF1QixHQUFHLElBQUksaUJBQWlCLEVBQXFCLENBQUM7UUFDckUsbUJBQWEsR0FBRyxJQUFJLGdCQUFnQixFQUFTLENBQUM7UUFPdkQsSUFBQSwyQkFBa0YsRUFBaEYsZ0JBQUssRUFBRSxvQkFBTyxFQUFFLGtCQUFNLEVBQUUsY0FBSSxFQUFF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OztJQUVELHNDQUFnQjs7OztJQUFoQixVQUFpQixjQUFzQztRQUNyRCxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHOzs7O1FBQUMsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsR0FBRyxFQUFULENBQVMsRUFBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7Z0JBckpGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBckJDLE1BQU07Z0JBUkMsUUFBUTtnQkF1QlIsWUFBWTs7O0lBbUVuQjtRQURDLEtBQUssRUFBRTs7aURBQ2MsS0FBSzs7K0NBVTFCO3NCQXBHSDtDQWlMQyxBQXRKRCxDQUdpQyxnQkFBZ0IsR0FtSmhEO1NBbkpZLFdBQVc7Ozs7OztJQUV0QixpQ0FBMEI7Ozs7O0lBRTFCLDhDQUFzRjs7Ozs7SUFDdEYsb0NBQStEOztJQUUvRCw4Q0FBeUQ7O0lBQ3pELHVDQUFzRTs7Ozs7SUFFMUQsNkJBQStCOztJQUFFLHNDQUFrQzs7SUFBRSxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIFJvdXRlclxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQm9vbGVhblZhbHVlTW9kZWxDaGFpbixcbiAgRHNsLFxuICBHYXJiYWdlQ29sbGVjdG9yLFxuICBIYXNPbmVJbmRleENoYWluLFxuICBMaXN0TW9kZWwsXG4gIE11dGFibGVMaXN0TW9kZWwsXG4gIE11dGFibGVWYWx1ZU1vZGVsLFxuICBUcmFjZSxcbiAgVmFsdWVNb2RlbFxufSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblNlc3Npb24gfSBmcm9tICcuL25hdmlnYXRpb24tc2Vzc2lvbic7XG5pbXBvcnQgeyBQbGFjZUhpc3RvcnkgfSBmcm9tICcuL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHsgVmlzaXQgfSBmcm9tICcuL3Zpc2l0JztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQbGFjZVJvdXRlciBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gIHByaXZhdGUgZmlyc3RSb3V0ZSA9IHRydWU7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmF2aWdhdGlvblNlc3Npb25Nb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxOYXZpZ2F0aW9uU2Vzc2lvbj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlVmlzaXRzID0gbmV3IE11dGFibGVMaXN0TW9kZWw8VmlzaXQ+KCk7XG5cbiAgcmVhZG9ubHkgbmF2aWdhdGlvblNlc3Npb25BY3RpdmU6IEJvb2xlYW5WYWx1ZU1vZGVsQ2hhaW47XG4gIHJlYWRvbmx5IGFjdGl2ZVZpc2l0SW5kZXg6IEhhc09uZUluZGV4Q2hhaW48J3BsYWNlRGVmaW5pdGlvbicsIFZpc2l0PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLCByZWFkb25seSBhbmd1bGFyTG9jYXRpb246IExvY2F0aW9uLCByZWFkb25seSBwbGFjZUhpc3Rvcnk6IFBsYWNlSGlzdG9yeSkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICB0aGlzLmFjdGl2ZVZpc2l0SW5kZXggPSBjaGFpbih0aGlzLl9hY3RpdmVWaXNpdHMpLmluZGV4QnkoJ3BsYWNlRGVmaW5pdGlvbicpO1xuXG4gICAgYW5ndWxhckxvY2F0aW9uLm9uVXJsQ2hhbmdlKHVybCA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhgbG9jYXRpb24ub25VcmxDaGFuZ2UgLT4gJHt1cmx9YCk7XG4gICAgfSk7XG5cbiAgICAvLyBUT0RPOiBtYWtlIHNldHVwIHRoZSBjYWxsYmFja3MgaW4gZHVyaW5nIG1vZHVsZSBpbml0aWF0aW9uIHRvIG1ha2UgdGhpcyB0ZXN0YWJsZS5cbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIC8vIFJvdXRpbmcgZXZlbnQgc2VxdWVuY2VcbiAgICAgIC8vID09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIC8vIE5hdmlnYXRpb25TdGFydCAtPiAuLi4uIC0+IE5hdmlnYXRpb25DYW5jZWwgLS0+IHJlZGlyZWN0LCBnbyBhcm91bmQgYWdhaW4gaW4gdGhlIHNhbWUgc2Vzc2lvblxuICAgICAgLy8gTmF2aWdhdGlvblN0YXJ0IC0+IC4uLi4gLT4gTmF2aWdhdGlvbkVuZCAtLT4gbmF2aWdhdGlvbiBjb21wbGV0ZSwgZW5kIHNlc3Npb24uXG4gICAgICAvLyBOYXZpZ2F0aW9uU3RhcnQgLT4gLi4uLiAtPiBOYXZpZ2F0aW9uRXJyb3IgLS0+IG5hdmlnYXRpb24gY2FuY2VsZWQsIGVuZCBzZXNzaW9uLlxuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlclN0YXJ0ZWQoZXZlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fCBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FcnJvcikge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlckZpbmlzaGVkKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm5hdmlnYXRpb25TZXNzaW9uQWN0aXZlID0gY2hhaW4odGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsKS5pc05vdE5pbCgpO1xuICAgIHRoaXMubmF2aWdhdGlvblNlc3Npb25BY3RpdmUuc3Vic2NyaWJlKGFjdGl2ZSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnbmF2aWdhdGlvblNlc3Npb25BY3RpdmUnLCBhY3RpdmUpO1xuICAgIH0pO1xuICAgIC8vIGNvbnN0IHR4byA9IG5ldyBUcmFuc2FjdGlvbk9ic2VydmVyKCkub25FdmVudChlID0+IGNvbnNvbGUubG9nKGUudG9TdHJpbmcoKSkpO1xuICAgIC8vIHR4by5vYnNlcnZlKCd0aGlzLm5hdmlnYXRpb25TZXNzaW9uTW9kZWwnLCB0aGlzLm5hdmlnYXRpb25TZXNzaW9uTW9kZWwpO1xuICB9XG5cbiAgZ2V0IG5hdmlnYXRpb25TZXNzaW9uKCk6IE5hdmlnYXRpb25TZXNzaW9uIHtcbiAgICByZXR1cm4gdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC52YWx1ZTtcbiAgfVxuXG4gIGdldCBuYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsKCk6IFZhbHVlTW9kZWw8TmF2aWdhdGlvblNlc3Npb24+IHtcbiAgICByZXR1cm4gdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC5yZWFkb25seTtcbiAgfVxuXG4gIGdldCBhY3RpdmVWaXNpdHMoKTogTGlzdE1vZGVsPFZpc2l0PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVZpc2l0cy5yZWFkb25seTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgcGxhY2VSb3V0ZXIubmF2aWdhdGUocGxhY2VEZXN0aW5hdGlvbnMuc29tZVBsYWNlLmNyZWF0ZVZpc2l0KHJvdXRlSWQsIC4uLnZpc2l0UGFyYW1zKSk7XG4gICAqIEBwYXJhbSB2aXNpdFxuICAgKi9cbiAgQFRyYWNlKClcbiAgYXN5bmMgbmF2aWdhdGUodmlzaXQ6IFZpc2l0LCBvcHRpb25zPzogeyByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSB9KSB7XG4gICAgdGhpcy5kb05hdmlnYXRpb24odmlzaXQsIGFzeW5jIHJvdXRlciA9PiB7XG4gICAgICBjb25zdCBjb21tYW5kcyA9IFtcbiAgICAgICAgdmlzaXQucGxhY2VEZWZpbml0aW9uLnBhdGgsXG4gICAgICAgIC4uLnRoaXMuY3JlYXRlUm91dGVQYXJhbWV0ZXJzKHZpc2l0KVxuICAgICAgXTtcbiAgICAgIGF3YWl0IHRoaXMucm91dGVyLm5hdmlnYXRlKGNvbW1hbmRzLCB7XG4gICAgICAgIHJlbGF0aXZlVG86IG9wdGlvbnMgPyBvcHRpb25zLnJlbGF0aXZlVG8gOiBudWxsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIHB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJldmlvdXM6IFZpc2l0LCBuZXh0OiBWaXNpdCkge1xuXG4gICAgLy8gd2UgaGF2ZSB0byBwdXNoIHRvIGhpc3Rvcnkgc28gb3VyIHJlbWVtYmVyIHNhbml0aXNlcnMgZG9uJ3QgcGljayB1cCB0aGUgcHJldmlvdXMgdmFsdWVcbiAgICAvLyB3aGVuIGl0J3MgYmVlbiBjbGVhcmVkIGJ5IHRoZSB1c2VyLlxuICAgIHRoaXMucGxhY2VIaXN0b3J5LmFkZChuZXh0KTtcblxuICAgIC8vIEZJWE1FOiBubyByb3V0ZSBpZCAtPiByb3V0ZSBpZCBkdXBsaWNhdGVzIHJvdXRlIHBhcmFtZXRlcnNcbiAgICBpZiAobmV4dC5oYXNSb3V0aW5nQ2hhbmdlZEZyb20ocHJldmlvdXMpKSB7XG4gICAgICByZXR1cm4gdGhpcy5kb05hdmlnYXRpb24obmV4dCwgcm91dGVyID0+IHtcbiAgICAgICAgLy8gd2UgaGF2ZSB0byB0byB1c2UgdGhlIGRlZmluaXRpb24gZm9yIHJvdXRlIGlkIGFzIG91ciByZWRpcmVjdGlvbiBhbHdheXMgaW5jbHVkZXNcbiAgICAgICAgLy8gdGhlIGlkIGluIHRoZSB1cmwgc2VnZW1lbnRzIChidXQgbGVhdmVzIGl0IGJsYW5rIHdoZW4gdGhlcmUncyBubyBpZCkuIEkuZS4gaW4gdGhlXG4gICAgICAgIC8vIG5vIGlkIGNhc2Ugd2UncmUgZG9pbmcgdGhlIGZvbGxvd2luZyByZWRpcmVjdCBbPHBsYWNlUGF0aD4sIFwiXCJdIC0+IFtcIi4uXCIsIDxpZD5dXG4gICAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9ICEhcHJldmlvdXMucGxhY2VEZWZpbml0aW9uLmhhc1JvdXRlSWQoKSA/ICcuLicgOiAnLic7XG4gICAgICAgIGNvbnN0IGNvbW1hbmRzID0gW1xuICAgICAgICAgIHJlbGF0aXZlUGF0aCxcbiAgICAgICAgICAuLi50aGlzLmNyZWF0ZVJvdXRlUGFyYW1ldGVycyhuZXh0KSxcbiAgICAgICAgICAuLi50aGlzLmV4dHJhY3RDaGlsZFBhdGgoYWN0aXZhdGVkUm91dGUuc25hcHNob3QpXG4gICAgICAgIF07XG4gICAgICAgIGNvbnNvbGUubG9nKCcjIyMgUHVzaCBDaGFuZ2VzIHRvIHJvdXRlIFJlZGlyZWN0Jywge2NvbW1hbmRzLCByZWxhdGl2ZVRvOiBhY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC51cmx9KTtcbiAgICAgICAgcmV0dXJuIHJvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywge1xuICAgICAgICAgIHJlbGF0aXZlVG86IGFjdGl2YXRlZFJvdXRlXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZG9OYXZpZ2F0aW9uKHZpc2l0OiBWaXNpdCwgY3VzdG9tTmF2aWdhdGlvbjogKHJvdXRlcjogUm91dGVyKSA9PiBhbnkpIHtcbiAgICB0aGlzLl9uYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsLnZhbHVlID0gTmF2aWdhdGlvblNlc3Npb24uY3JlYXRlSW50ZXJuYWwodmlzaXQpO1xuICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGN1c3RvbU5hdmlnYXRpb24odGhpcy5yb3V0ZXIpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAodGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbiAmJiAhdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKSkge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlckZpbmlzaGVkKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSb3V0ZVBhcmFtZXRlcnModmlzaXQ6IFZpc2l0KSB7XG4gICAgY29uc3QgZGVmID0gdmlzaXQucGxhY2VEZWZpbml0aW9uO1xuICAgIHJldHVybiB2aXNpdC5oYXNSb3V0ZUlkKCkgP1xuICAgICAgW2RlZi5nZXRGb3JtYXR0ZWRSb3V0ZUlkKHZpc2l0KSwgZGVmLmdldEZvcm1hdHRlZFJvdXRlUGFyYW1ldGVycyh2aXNpdCldIDpcbiAgICAgIFtkZWYuZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHZpc2l0KV07XG4gIH1cblxuLy8gQFRyYWNlKClcbiAgcHJpdmF0ZSBvbkFuZ3VsYXJSb3V0ZXJTdGFydGVkKGV2ZW50OiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICBpZiAoIXRoaXMubmF2aWdhdGlvblNlc3Npb24pIHsgLy8gV2UgYmVlbiBhY3RpdmF0ZWQgYnkgYW4gZXh0ZXJuYWwgcm91dGUgcmF0aGVyIHRoYW4gcGxhY2VSb3V0ZXIuZ28odmlzaXQpXG4gICAgICBjb25zb2xlLmxvZygnbmF2aWdhdGlvbiBzdGFydGVkJywgeyBmaXJzdFRpbWU6IHRoaXMuZmlyc3RSb3V0ZSB9KTtcbiAgICAgIGNvbnN0IHNlc3Npb24gPSBOYXZpZ2F0aW9uU2Vzc2lvbi5jcmVhdGVFeHRlcm5hbCh0aGlzLmZpcnN0Um91dGUpO1xuICAgICAgaWYgKGV2ZW50Lm5hdmlnYXRpb25UcmlnZ2VyID09PSAncG9wc3RhdGUnKSB7XG4gICAgICAgIHNlc3Npb24uc2V0UG9wc3RhdGVSZXR1cm4odGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QudXJsKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX25hdmlnYXRpb25TZXNzaW9uTW9kZWwudmFsdWUgPSBzZXNzaW9uO1xuICAgIH1cbiAgICB0aGlzLmZpcnN0Um91dGUgPSBmYWxzZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIHByaXZhdGUgb25Bbmd1bGFyUm91dGVyRmluaXNoZWQoKSB7XG4gICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMuX25hdmlnYXRpb25TZXNzaW9uTW9kZWwudmFsdWU7XG4gICAgLy8gVXBkYXRlIHZpc2l0cyBiZWZvcmUgd2UgZW5kIHRoZSBuYXZpZ2F0aW9uIHNlc3Npb24uICBUaGlzIGFsbG93cyB0aGUgcGxhY2Ugb3V0IGxldCB0b1xuICAgIC8vIGdhdGUgaWdub3JlIGNoYW5nZXMgdGhhdCBvY2N1ciB3aGlsZSB0aGUgdmlzaXQgaXMgYWN0aXZlXG4gICAgY29uc3QgdmlzaXRzID0gc2Vzc2lvbi5nZXRWaXNpdHMoKTtcbiAgICB2aXNpdHMuZm9yRWFjaCh2ID0+IHtcbiAgICAgIHRoaXMucGxhY2VIaXN0b3J5LmFkZCh2KTtcbiAgICB9KTtcbiAgICB0aGlzLl9hY3RpdmVWaXNpdHMudmFsdWUgPSB2aXNpdHM7XG5cbiAgICB0aGlzLl9uYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsLnZhbHVlID0gbnVsbDtcbiAgfVxuXG4gIGV4dHJhY3RDaGlsZFBhdGgoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBhbnlbXSB7XG4gICAgcmV0dXJuIF8uZmxhdHRlbihhY3RpdmF0ZWRSb3V0ZS5jaGlsZHJlbi5tYXAoY2hpbGQgPT4gY2hpbGQudXJsKSk7XG4gIH1cbn1cbiJdfQ==
|
|
368
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utcm91dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLXJvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFHTCxhQUFhLEVBQ2IsZUFBZSxFQUNmLGVBQWUsRUFDZixNQUFNLEVBQ1AsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBRUwsR0FBRyxFQUNILGdCQUFnQixFQUdoQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLEtBQUssRUFFTixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQzs7Ozs7QUFHaEM7SUFHaUMsdUNBQWdCO0lBVS9DLHFCQUE2QixNQUFjLEVBQVcsZUFBeUIsRUFBVyxZQUEwQjtRQUFwSCxZQUNFLGlCQUFPLFNBOEJSO1FBL0I0QixZQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVcscUJBQWUsR0FBZixlQUFlLENBQVU7UUFBVyxrQkFBWSxHQUFaLFlBQVksQ0FBYztRQVI1RyxnQkFBVSxHQUFHLElBQUksQ0FBQztRQUVULDZCQUF1QixHQUFHLElBQUksaUJBQWlCLEVBQXFCLENBQUM7UUFDckUsbUJBQWEsR0FBRyxJQUFJLGdCQUFnQixFQUFTLENBQUM7UUFPdkQsSUFBQSwyQkFBa0YsRUFBaEYsZ0JBQUssRUFBRSxvQkFBTyxFQUFFLGtCQUFNLEVBQUUsY0FBSSxFQUFF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aUIsY0FBc0M7UUFDckQsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSyxDQUFDLEdBQUcsRUFBVCxDQUFTLEVBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7O2dCQXJKRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQXJCQyxNQUFNO2dCQVJDLFFBQVE7Z0JBdUJSLFlBQVk7OztJQW1FbkI7UUFEQyxLQUFLLEVBQUU7O2lEQUNjLEtBQUs7OytDQVUxQjtJQWdERDtRQURDLEtBQUssRUFBRTs7aURBQzhCLGVBQWU7OzZEQVVwRDtJQUdEO1FBREMsS0FBSyxFQUFFOzs7OzhEQVlQO3NCQTVLSDtDQWlMQyxBQXRKRCxDQUdpQyxnQkFBZ0IsR0FtSmhEO1NBbkpZLFdBQVc7Ozs7OztJQUV0QixpQ0FBMEI7Ozs7O0lBRTFCLDhDQUFzRjs7Ozs7SUFDdEYsb0NBQStEOztJQUUvRCw4Q0FBeUQ7O0lBQ3pELHVDQUFzRTs7Ozs7SUFFMUQsNkJBQStCOztJQUFFLHNDQUFrQzs7SUFBRSxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIFJvdXRlclxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQm9vbGVhblZhbHVlTW9kZWxDaGFpbixcbiAgRHNsLFxuICBHYXJiYWdlQ29sbGVjdG9yLFxuICBIYXNPbmVJbmRleENoYWluLFxuICBMaXN0TW9kZWwsXG4gIE11dGFibGVMaXN0TW9kZWwsXG4gIE11dGFibGVWYWx1ZU1vZGVsLFxuICBUcmFjZSxcbiAgVmFsdWVNb2RlbFxufSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblNlc3Npb24gfSBmcm9tICcuL25hdmlnYXRpb24tc2Vzc2lvbic7XG5pbXBvcnQgeyBQbGFjZUhpc3RvcnkgfSBmcm9tICcuL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHsgVmlzaXQgfSBmcm9tICcuL3Zpc2l0JztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQbGFjZVJvdXRlciBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gIHByaXZhdGUgZmlyc3RSb3V0ZSA9IHRydWU7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmF2aWdhdGlvblNlc3Npb25Nb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxOYXZpZ2F0aW9uU2Vzc2lvbj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlVmlzaXRzID0gbmV3IE11dGFibGVMaXN0TW9kZWw8VmlzaXQ+KCk7XG5cbiAgcmVhZG9ubHkgbmF2aWdhdGlvblNlc3Npb25BY3RpdmU6IEJvb2xlYW5WYWx1ZU1vZGVsQ2hhaW47XG4gIHJlYWRvbmx5IGFjdGl2ZVZpc2l0SW5kZXg6IEhhc09uZUluZGV4Q2hhaW48J3BsYWNlRGVmaW5pdGlvbicsIFZpc2l0PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLCByZWFkb25seSBhbmd1bGFyTG9jYXRpb246IExvY2F0aW9uLCByZWFkb25seSBwbGFjZUhpc3Rvcnk6IFBsYWNlSGlzdG9yeSkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICB0aGlzLmFjdGl2ZVZpc2l0SW5kZXggPSBjaGFpbih0aGlzLl9hY3RpdmVWaXNpdHMpLmluZGV4QnkoJ3BsYWNlRGVmaW5pdGlvbicpO1xuXG4gICAgYW5ndWxhckxvY2F0aW9uLm9uVXJsQ2hhbmdlKHVybCA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhgbG9jYXRpb24ub25VcmxDaGFuZ2UgLT4gJHt1cmx9YCk7XG4gICAgfSk7XG5cbiAgICAvLyBUT0RPOiBtYWtlIHNldHVwIHRoZSBjYWxsYmFja3MgaW4gZHVyaW5nIG1vZHVsZSBpbml0aWF0aW9uIHRvIG1ha2UgdGhpcyB0ZXN0YWJsZS5cbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIC8vIFJvdXRpbmcgZXZlbnQgc2VxdWVuY2VcbiAgICAgIC8vID09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIC8vIE5hdmlnYXRpb25TdGFydCAtPiAuLi4uIC0+IE5hdmlnYXRpb25DYW5jZWwgLS0+IHJlZGlyZWN0LCBnbyBhcm91bmQgYWdhaW4gaW4gdGhlIHNhbWUgc2Vzc2lvblxuICAgICAgLy8gTmF2aWdhdGlvblN0YXJ0IC0+IC4uLi4gLT4gTmF2aWdhdGlvbkVuZCAtLT4gbmF2aWdhdGlvbiBjb21wbGV0ZSwgZW5kIHNlc3Npb24uXG4gICAgICAvLyBOYXZpZ2F0aW9uU3RhcnQgLT4gLi4uLiAtPiBOYXZpZ2F0aW9uRXJyb3IgLS0+IG5hdmlnYXRpb24gY2FuY2VsZWQsIGVuZCBzZXNzaW9uLlxuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlclN0YXJ0ZWQoZXZlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fCBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FcnJvcikge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlckZpbmlzaGVkKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm5hdmlnYXRpb25TZXNzaW9uQWN0aXZlID0gY2hhaW4odGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsKS5pc05vdE5pbCgpO1xuICAgIHRoaXMubmF2aWdhdGlvblNlc3Npb25BY3RpdmUuc3Vic2NyaWJlKGFjdGl2ZSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnbmF2aWdhdGlvblNlc3Npb25BY3RpdmUnLCBhY3RpdmUpO1xuICAgIH0pO1xuICAgIC8vIGNvbnN0IHR4byA9IG5ldyBUcmFuc2FjdGlvbk9ic2VydmVyKCkub25FdmVudChlID0+IGNvbnNvbGUubG9nKGUudG9TdHJpbmcoKSkpO1xuICAgIC8vIHR4by5vYnNlcnZlKCd0aGlzLm5hdmlnYXRpb25TZXNzaW9uTW9kZWwnLCB0aGlzLm5hdmlnYXRpb25TZXNzaW9uTW9kZWwpO1xuICB9XG5cbiAgZ2V0IG5hdmlnYXRpb25TZXNzaW9uKCk6IE5hdmlnYXRpb25TZXNzaW9uIHtcbiAgICByZXR1cm4gdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC52YWx1ZTtcbiAgfVxuXG4gIGdldCBuYXZpZ2F0aW9uU2Vzc2lvbk1vZGVsKCk6IFZhbHVlTW9kZWw8TmF2aWdhdGlvblNlc3Npb24+IHtcbiAgICByZXR1cm4gdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC5yZWFkb25seTtcbiAgfVxuXG4gIGdldCBhY3RpdmVWaXNpdHMoKTogTGlzdE1vZGVsPFZpc2l0PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVZpc2l0cy5yZWFkb25seTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgcGxhY2VSb3V0ZXIubmF2aWdhdGUocGxhY2VEZXN0aW5hdGlvbnMuc29tZVBsYWNlLmNyZWF0ZVZpc2l0KHJvdXRlSWQsIC4uLnZpc2l0UGFyYW1zKSk7XG4gICAqIEBwYXJhbSB2aXNpdFxuICAgKi9cbiAgQFRyYWNlKClcbiAgYXN5bmMgbmF2aWdhdGUodmlzaXQ6IFZpc2l0LCBvcHRpb25zPzogeyByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSB9KSB7XG4gICAgdGhpcy5kb05hdmlnYXRpb24odmlzaXQsIGFzeW5jIHJvdXRlciA9PiB7XG4gICAgICBjb25zdCBjb21tYW5kcyA9IFtcbiAgICAgICAgdmlzaXQucGxhY2VEZWZpbml0aW9uLnBhdGgsXG4gICAgICAgIC4uLnRoaXMuY3JlYXRlUm91dGVQYXJhbWV0ZXJzKHZpc2l0KVxuICAgICAgXTtcbiAgICAgIGF3YWl0IHRoaXMucm91dGVyLm5hdmlnYXRlKGNvbW1hbmRzLCB7XG4gICAgICAgIHJlbGF0aXZlVG86IG9wdGlvbnMgPyBvcHRpb25zLnJlbGF0aXZlVG8gOiBudWxsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIHB1c2hWaXNpdENoYW5nZXNUb1JvdXRlKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJldmlvdXM6IFZpc2l0LCBuZXh0OiBWaXNpdCkge1xuXG4gICAgLy8gd2UgaGF2ZSB0byBwdXNoIHRvIGhpc3Rvcnkgc28gb3VyIHJlbWVtYmVyIHNhbml0aXNlcnMgZG9uJ3QgcGljayB1cCB0aGUgcHJldmlvdXMgdmFsdWVcbiAgICAvLyB3aGVuIGl0J3MgYmVlbiBjbGVhcmVkIGJ5IHRoZSB1c2VyLlxuICAgIHRoaXMucGxhY2VIaXN0b3J5LmFkZChuZXh0KTtcblxuICAgIC8vIEZJWE1FOiBubyByb3V0ZSBpZCAtPiByb3V0ZSBpZCBkdXBsaWNhdGVzIHJvdXRlIHBhcmFtZXRlcnNcbiAgICBpZiAobmV4dC5oYXNSb3V0aW5nQ2hhbmdlZEZyb20ocHJldmlvdXMpKSB7XG4gICAgICByZXR1cm4gdGhpcy5kb05hdmlnYXRpb24obmV4dCwgcm91dGVyID0+IHtcbiAgICAgICAgLy8gd2UgaGF2ZSB0byB0byB1c2UgdGhlIGRlZmluaXRpb24gZm9yIHJvdXRlIGlkIGFzIG91ciByZWRpcmVjdGlvbiBhbHdheXMgaW5jbHVkZXNcbiAgICAgICAgLy8gdGhlIGlkIGluIHRoZSB1cmwgc2VnZW1lbnRzIChidXQgbGVhdmVzIGl0IGJsYW5rIHdoZW4gdGhlcmUncyBubyBpZCkuIEkuZS4gaW4gdGhlXG4gICAgICAgIC8vIG5vIGlkIGNhc2Ugd2UncmUgZG9pbmcgdGhlIGZvbGxvd2luZyByZWRpcmVjdCBbPHBsYWNlUGF0aD4sIFwiXCJdIC0+IFtcIi4uXCIsIDxpZD5dXG4gICAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9ICEhcHJldmlvdXMucGxhY2VEZWZpbml0aW9uLmhhc1JvdXRlSWQoKSA/ICcuLicgOiAnLic7XG4gICAgICAgIGNvbnN0IGNvbW1hbmRzID0gW1xuICAgICAgICAgIHJlbGF0aXZlUGF0aCxcbiAgICAgICAgICAuLi50aGlzLmNyZWF0ZVJvdXRlUGFyYW1ldGVycyhuZXh0KSxcbiAgICAgICAgICAuLi50aGlzLmV4dHJhY3RDaGlsZFBhdGgoYWN0aXZhdGVkUm91dGUuc25hcHNob3QpXG4gICAgICAgIF07XG4gICAgICAgIGNvbnNvbGUubG9nKCcjIyMgUHVzaCBDaGFuZ2VzIHRvIHJvdXRlIFJlZGlyZWN0JywgeyBjb21tYW5kcywgcmVsYXRpdmVUbzogYWN0aXZhdGVkUm91dGUuc25hcHNob3QudXJsIH0pO1xuICAgICAgICByZXR1cm4gcm91dGVyLm5hdmlnYXRlKGNvbW1hbmRzLCB7XG4gICAgICAgICAgcmVsYXRpdmVUbzogYWN0aXZhdGVkUm91dGVcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkb05hdmlnYXRpb24odmlzaXQ6IFZpc2l0LCBjdXN0b21OYXZpZ2F0aW9uOiAocm91dGVyOiBSb3V0ZXIpID0+IGFueSkge1xuICAgIHRoaXMuX25hdmlnYXRpb25TZXNzaW9uTW9kZWwudmFsdWUgPSBOYXZpZ2F0aW9uU2Vzc2lvbi5jcmVhdGVJbnRlcm5hbCh2aXNpdCk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGN1c3RvbU5hdmlnYXRpb24odGhpcy5yb3V0ZXIpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAodGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbiAmJiAhdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKSkge1xuICAgICAgICB0aGlzLm9uQW5ndWxhclJvdXRlckZpbmlzaGVkKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSb3V0ZVBhcmFtZXRlcnModmlzaXQ6IFZpc2l0KSB7XG4gICAgY29uc3QgZGVmID0gdmlzaXQucGxhY2VEZWZpbml0aW9uO1xuICAgIHJldHVybiB2aXNpdC5oYXNSb3V0ZUlkKCkgP1xuICAgICAgW2RlZi5nZXRGb3JtYXR0ZWRSb3V0ZUlkKHZpc2l0KSwgZGVmLmdldEZvcm1hdHRlZFJvdXRlUGFyYW1ldGVycyh2aXNpdCldIDpcbiAgICAgIFtkZWYuZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHZpc2l0KV07XG4gIH1cblxuICBAVHJhY2UoKVxuICBwcml2YXRlIG9uQW5ndWxhclJvdXRlclN0YXJ0ZWQoZXZlbnQ6IE5hdmlnYXRpb25TdGFydCkge1xuICAgIGlmICghdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbikgeyAvLyBXZSBiZWVuIGFjdGl2YXRlZCBieSBhbiBleHRlcm5hbCByb3V0ZSByYXRoZXIgdGhhbiBwbGFjZVJvdXRlci5nbyh2aXNpdClcbiAgICAgIGNvbnNvbGUubG9nKCduYXZpZ2F0aW9uIHN0YXJ0ZWQnLCB7IGZpcnN0VGltZTogdGhpcy5maXJzdFJvdXRlIH0pO1xuICAgICAgY29uc3Qgc2Vzc2lvbiA9IE5hdmlnYXRpb25TZXNzaW9uLmNyZWF0ZUV4dGVybmFsKHRoaXMuZmlyc3RSb3V0ZSk7XG4gICAgICBpZiAoZXZlbnQubmF2aWdhdGlvblRyaWdnZXIgPT09ICdwb3BzdGF0ZScpIHtcbiAgICAgICAgc2Vzc2lvbi5zZXRQb3BzdGF0ZVJldHVybih0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdC51cmwpO1xuICAgICAgfVxuICAgICAgdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC52YWx1ZSA9IHNlc3Npb247XG4gICAgfVxuICAgIHRoaXMuZmlyc3RSb3V0ZSA9IGZhbHNlO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgcHJpdmF0ZSBvbkFuZ3VsYXJSb3V0ZXJGaW5pc2hlZCgpIHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5fbmF2aWdhdGlvblNlc3Npb25Nb2RlbC52YWx1ZTtcbiAgICAvLyBVcGRhdGUgdmlzaXRzIGJlZm9yZSB3ZSBlbmQgdGhlIG5hdmlnYXRpb24gc2Vzc2lvbi4gIFRoaXMgYWxsb3dzIHRoZSBwbGFjZSBvdXQgbGV0IHRvXG4gICAgLy8gZ2F0ZSBpZ25vcmUgY2hhbmdlcyB0aGF0IG9jY3VyIHdoaWxlIHRoZSB2aXNpdCBpcyBhY3RpdmVcbiAgICBjb25zdCB2aXNpdHMgPSBzZXNzaW9uLmdldFZpc2l0cygpO1xuICAgIHZpc2l0cy5mb3JFYWNoKHYgPT4ge1xuICAgICAgdGhpcy5wbGFjZUhpc3RvcnkuYWRkKHYpO1xuICAgIH0pO1xuICAgIHRoaXMuX2FjdGl2ZVZpc2l0cy52YWx1ZSA9IHZpc2l0cztcblxuICAgIHRoaXMuX25hdmlnYXRpb25TZXNzaW9uTW9kZWwudmFsdWUgPSBudWxsO1xuICB9XG5cbiAgZXh0cmFjdENoaWxkUGF0aChhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IGFueVtdIHtcbiAgICByZXR1cm4gXy5mbGF0dGVuKGFjdGl2YXRlZFJvdXRlLmNoaWxkcmVuLm1hcChjaGlsZCA9PiBjaGlsZC51cmwpKTtcbiAgfVxufVxuIl19
|
|
@@ -17,8 +17,6 @@ import { EmptyStateComponent } from './components/empty-state/empty-state.compon
|
|
|
17
17
|
import { ListPlaceNavComponent } from './components/list-place-nav/list-place-nav.component';
|
|
18
18
|
import { PlaceOutletComponent } from './components/place-outlet/place-outlet.component';
|
|
19
19
|
import { TabbedPlaceNavigationComponent } from './components/tabbed-place-navigation/tabbed-place-navigation.component';
|
|
20
|
-
import { AUP_PLACE_CONFIG } from './place-config';
|
|
21
|
-
var ɵ0 = { animationDuration: "2000ms" };
|
|
22
20
|
var PlaceModule = /** @class */ (function () {
|
|
23
21
|
function PlaceModule() {
|
|
24
22
|
}
|
|
@@ -51,12 +49,11 @@ var PlaceModule = /** @class */ (function () {
|
|
|
51
49
|
ListPlaceNavComponent
|
|
52
50
|
],
|
|
53
51
|
providers: [
|
|
54
|
-
|
|
52
|
+
// {provide: AUP_PLACE_CONFIG, useValue: {animationDuration: "2000ms"}}
|
|
55
53
|
]
|
|
56
54
|
},] }
|
|
57
55
|
];
|
|
58
56
|
return PlaceModule;
|
|
59
57
|
}());
|
|
60
58
|
export { PlaceModule };
|
|
61
|
-
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO1NBOEJSLEVBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFDO0FBNUJ2RTtJQUFBO0lBaUNBLENBQUM7O2dCQWpDQSxRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixnQkFBZ0I7cUJBQ2pCO29CQUNELFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLHFCQUFxQjtxQkFDdEI7b0JBQ0QsZUFBZSxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQ3ZDLE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQiw4QkFBOEI7d0JBQzlCLHFCQUFxQjtxQkFDdEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULEVBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsSUFBK0IsRUFBQztxQkFDckU7aUJBQ0Y7O0lBR0Qsa0JBQUM7Q0FBQSxBQWpDRCxJQWlDQztTQUZZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBbmd1bGFyVWlQb3dlcnVwc01vZHVsZSB9IGZyb20gJy4uL2FuZ3VsYXItdWktcG93ZXJ1cHMubW9kdWxlJztcbmltcG9ydCB7IERpcmVjdGl2ZXNNb2R1bGUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmltcG9ydCB7IEJ1c3lPdmVybGF5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2J1c3ktb3ZlcmxheS9idXN5LW92ZXJsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5U3RhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RQbGFjZU5hdkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saXN0LXBsYWNlLW5hdi9saXN0LXBsYWNlLW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGxhY2Utb3V0bGV0L3BsYWNlLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBVVBfUExBQ0VfQ09ORklHIH0gZnJvbSAnLi9wbGFjZS1jb25maWcnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBEaXJlY3RpdmVzTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgQnVzeU92ZXJsYXlDb21wb25lbnQsXG4gICAgUGxhY2VPdXRsZXRDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIExpc3RQbGFjZU5hdkNvbXBvbmVudFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtCdXN5T3ZlcmxheUNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXN5T3ZlcmxheUNvbXBvbmVudCxcbiAgICBQbGFjZU91dGxldENvbXBvbmVudCxcbiAgICBFbXB0eVN0YXRlQ29tcG9uZW50LFxuICAgIFRhYmJlZFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBMaXN0UGxhY2VOYXZDb21wb25lbnRcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge3Byb3ZpZGU6IEFVUF9QTEFDRV9DT05GSUcsIHVzZVZhbHVlOiB7YW5pbWF0aW9uRHVyYXRpb246IFwiMjAwMG1zXCJ9fVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlTW9kdWxlIHtcblxufVxuIl19
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBR3hIO0lBQUE7SUFpQ0EsQ0FBQzs7Z0JBakNBLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGdCQUFnQjtxQkFDakI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLDhCQUE4Qjt3QkFDOUIscUJBQXFCO3FCQUN0QjtvQkFDRCxlQUFlLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDdkMsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDhCQUE4Qjt3QkFDOUIscUJBQXFCO3FCQUN0QjtvQkFDRCxTQUFTLEVBQUU7b0JBQ1QsdUVBQXVFO3FCQUN4RTtpQkFDRjs7SUFHRCxrQkFBQztDQUFBLEFBakNELElBaUNDO1NBRlksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFuZ3VsYXJVaVBvd2VydXBzTW9kdWxlIH0gZnJvbSAnLi4vYW5ndWxhci11aS1wb3dlcnVwcy5tb2R1bGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlc01vZHVsZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvZGlyZWN0aXZlcy5tb2R1bGUnO1xuaW1wb3J0IHsgQnVzeU92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnVzeS1vdmVybGF5L2J1c3ktb3ZlcmxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlTdGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFBsYWNlTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xpc3QtcGxhY2UtbmF2L2xpc3QtcGxhY2UtbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZU91dGxldENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbGFjZS1vdXRsZXQvcGxhY2Utb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEFVUF9QTEFDRV9DT05GSUcgfSBmcm9tICcuL3BsYWNlLWNvbmZpZyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIERpcmVjdGl2ZXNNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRW1wdHlTdGF0ZUNvbXBvbmVudCxcbiAgICBCdXN5T3ZlcmxheUNvbXBvbmVudCxcbiAgICBQbGFjZU91dGxldENvbXBvbmVudCxcbiAgICBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgTGlzdFBsYWNlTmF2Q29tcG9uZW50XG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0J1c3lPdmVybGF5Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW1xuICAgIEJ1c3lPdmVybGF5Q29tcG9uZW50LFxuICAgIFBsYWNlT3V0bGV0Q29tcG9uZW50LFxuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIExpc3RQbGFjZU5hdkNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICAvLyB7cHJvdmlkZTogQVVQX1BMQUNFX0NPTkZJRywgdXNlVmFsdWU6IHthbmltYXRpb25EdXJhdGlvbjogXCIyMDAwbXNcIn19XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUGxhY2VNb2R1bGUge1xuXG59XG4iXX0=
|