@coolon/angular-ui-powerups 0.0.36 → 0.0.38

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.
Files changed (116) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +1428 -809
  2. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  3. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  4. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  5. package/coolon-angular-ui-powerups.d.ts +16 -14
  6. package/coolon-angular-ui-powerups.metadata.json +1 -1
  7. package/esm2015/coolon-angular-ui-powerups.js +16 -14
  8. package/esm2015/index.js +2 -2
  9. package/esm2015/lib/angular-ui-powerups.module.js +6 -8
  10. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +2 -3
  11. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +1 -2
  12. package/esm2015/lib/place/components/abstract-place-navigation.component.js +75 -0
  13. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +47 -0
  14. package/esm2015/lib/place/components/place-outlet/route-animations.js +12 -5
  15. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +5 -39
  16. package/esm2015/lib/place/guards/leave-place.guard.js +11 -2
  17. package/esm2015/lib/place/guards/place-route.guard.js +29 -37
  18. package/esm2015/lib/place/index.js +11 -9
  19. package/esm2015/lib/place/nav-item.js +23 -0
  20. package/esm2015/lib/place/place-component-like.js +17 -0
  21. package/esm2015/lib/place/place-component.js +118 -14
  22. package/esm2015/lib/place/place-updates-service.js +16 -0
  23. package/esm2015/lib/place/place.decorator.js +1 -1
  24. package/esm2015/lib/place/place.module.js +6 -3
  25. package/esm2015/lib/place/place.service.js +30 -6
  26. package/esm2015/lib/place/route/default-parameter-sanitiser.js +78 -0
  27. package/esm2015/lib/place/route/parameter-decorators.js +15 -7
  28. package/esm2015/lib/place/route/parameter-definition.class.js +2 -2
  29. package/esm2015/lib/place/route/parameter-sanitiser.js +17 -2
  30. package/esm2015/lib/place/route/parameter-snapshot.js +382 -0
  31. package/esm2015/lib/place/route/parameter-type.js +3 -2
  32. package/esm2015/lib/place/route/route-parameter-sanitiser.js +73 -38
  33. package/esm2015/lib/place/visit.js +22 -0
  34. package/esm2015/public_api.js +2 -2
  35. package/esm5/coolon-angular-ui-powerups.js +16 -14
  36. package/esm5/index.js +2 -2
  37. package/esm5/lib/angular-ui-powerups.module.js +6 -8
  38. package/esm5/lib/interaction/components/activity-container/activity-container.component.js +2 -3
  39. package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +1 -2
  40. package/esm5/lib/place/components/abstract-place-navigation.component.js +86 -0
  41. package/esm5/lib/place/components/list-place-nav/list-place-nav.component.js +61 -0
  42. package/esm5/lib/place/components/place-outlet/route-animations.js +12 -5
  43. package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +6 -43
  44. package/esm5/lib/place/guards/leave-place.guard.js +11 -2
  45. package/esm5/lib/place/guards/place-route.guard.js +28 -37
  46. package/esm5/lib/place/index.js +11 -9
  47. package/esm5/lib/place/nav-item.js +23 -0
  48. package/esm5/lib/place/place-component-like.js +17 -0
  49. package/esm5/lib/place/place-component.js +132 -15
  50. package/esm5/lib/place/place-updates-service.js +16 -0
  51. package/esm5/lib/place/place.decorator.js +1 -1
  52. package/esm5/lib/place/place.module.js +6 -3
  53. package/esm5/lib/place/place.service.js +35 -6
  54. package/esm5/lib/place/route/default-parameter-sanitiser.js +85 -0
  55. package/esm5/lib/place/route/parameter-decorators.js +15 -7
  56. package/esm5/lib/place/route/parameter-definition.class.js +2 -2
  57. package/esm5/lib/place/route/parameter-sanitiser.js +17 -2
  58. package/esm5/lib/place/route/parameter-snapshot.js +474 -0
  59. package/esm5/lib/place/route/parameter-type.js +3 -2
  60. package/esm5/lib/place/route/route-parameter-sanitiser.js +100 -45
  61. package/esm5/lib/place/visit.js +22 -0
  62. package/esm5/public_api.js +2 -2
  63. package/fesm2015/coolon-angular-ui-powerups.js +1146 -651
  64. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  65. package/fesm5/coolon-angular-ui-powerups.js +1391 -779
  66. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  67. package/lib/place/components/abstract-place-navigation.component.d.ts +13 -0
  68. package/lib/place/components/list-place-nav/list-place-nav.component.d.ts +8 -0
  69. package/lib/place/components/place-outlet/route-animations.d.ts +1 -0
  70. package/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.d.ts +2 -9
  71. package/lib/place/guards/place-route.guard.d.ts +4 -4
  72. package/lib/place/index.d.ts +8 -6
  73. package/lib/place/nav-item.d.ts +5 -0
  74. package/lib/place/{i-place-component.d.ts → place-component-like.d.ts} +1 -1
  75. package/lib/place/place-component.d.ts +19 -8
  76. package/lib/place/place-updates-service.d.ts +10 -0
  77. package/lib/place/place.service.d.ts +11 -8
  78. package/lib/place/route/default-parameter-sanitiser.d.ts +13 -0
  79. package/lib/place/route/parameter-decorators.d.ts +6 -2
  80. package/lib/place/route/parameter-definition.class.d.ts +3 -3
  81. package/lib/place/route/parameter-sanitiser.d.ts +8 -1
  82. package/lib/place/route/parameter-snapshot.d.ts +46 -0
  83. package/lib/place/route/route-parameter-sanitiser.d.ts +13 -9
  84. package/lib/place/visit.d.ts +6 -0
  85. package/package.json +1 -1
  86. package/schematics/place-routes/index.js +8 -95
  87. package/schematics/place-routes/index.js.map +1 -1
  88. package/schematics/place-routes/place-builder.d.ts +19 -0
  89. package/schematics/place-routes/place-builder.js +109 -0
  90. package/schematics/place-routes/place-builder.js.map +1 -0
  91. package/schematics/place-routes/{scanner.d.ts → place-class-scanner.d.ts} +10 -6
  92. package/schematics/place-routes/{scanner.js → place-class-scanner.js} +43 -18
  93. package/schematics/place-routes/place-class-scanner.js.map +1 -0
  94. package/schematics/place-routes/place-def.d.ts +19 -4
  95. package/schematics/place-routes/place-def.js +54 -4
  96. package/schematics/place-routes/place-def.js.map +1 -1
  97. package/schematics/place-routes/templates/{place-routes.ts.template → places.ts.template} +14 -11
  98. package/esm2015/lib/place/i-place-component.js +0 -17
  99. package/esm2015/lib/place/i-place-service.js +0 -16
  100. package/esm2015/lib/place/route/resolved-parameter.js +0 -16
  101. package/esm2015/lib/place/route/resolved-route-parameter-snapshot.js +0 -106
  102. package/esm2015/lib/place/route/route-parameter-bindings.js +0 -150
  103. package/esm2015/lib/place/route/visit-snapshot.js +0 -7
  104. package/esm5/lib/place/i-place-component.js +0 -17
  105. package/esm5/lib/place/i-place-service.js +0 -16
  106. package/esm5/lib/place/route/resolved-parameter.js +0 -16
  107. package/esm5/lib/place/route/resolved-route-parameter-snapshot.js +0 -129
  108. package/esm5/lib/place/route/route-parameter-bindings.js +0 -167
  109. package/esm5/lib/place/route/visit-snapshot.js +0 -11
  110. package/lib/place/i-place-service.d.ts +0 -10
  111. package/lib/place/route/resolved-parameter.d.ts +0 -5
  112. package/lib/place/route/resolved-route-parameter-snapshot.d.ts +0 -12
  113. package/lib/place/route/route-parameter-bindings.d.ts +0 -17
  114. package/lib/place/route/visit-snapshot.d.ts +0 -2
  115. package/schematics/place-routes/scanner.js.map +0 -1
  116. package/schematics/place-routes/templates/place-router.ts.template +0 -33
@@ -3,24 +3,108 @@
3
3
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
- import { assert, lang, Trace } from '@coolon/pectin';
6
+ import { assert, Binding, Dsl, lang, MutableValueModel, Trace } from '@coolon/pectin';
7
+ import { Klass } from '@coolon/typescript-utilities';
7
8
  import { Memoize } from '@typescript-plus/fast-memoize-decorator';
8
9
  import * as _ from 'lodash';
9
10
  import 'reflect-metadata';
10
11
  import { DisposableComponent } from '../components/disposable-component';
11
- import { RouteParameterBindings } from './route/route-parameter-bindings';
12
+ import { ParameterSnapshot } from './route/parameter-snapshot';
12
13
  // RAKE: making this Symbol(...) broke things.
13
14
  /** @type {?} */
14
15
  export var DEFINITION_META_DATA_KEY = 'PLACE_DEFINITION_OPTIONS';
16
+ // this one seems ok.
17
+ /** @type {?} */
18
+ export var ROUTE_PARAMETER_LIST_KEY = Symbol('place:route:parameters');
15
19
  var PlaceComponent = /** @class */ (function (_super) {
16
20
  tslib_1.__extends(PlaceComponent, _super);
17
21
  function PlaceComponent(activatedRoute, placeService) {
18
22
  var _this = _super.call(this) || this;
19
23
  _this.activatedRoute = activatedRoute;
20
- _this.routeBindingMediator = _this.registerDisposable(new RouteParameterBindings(_this, placeService));
24
+ _this._incomingRouteChange = new MutableValueModel(false);
25
+ _this.resolvedParameters = new MutableValueModel();
26
+ 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;
27
+ _this.placeDefinition.getRouteParameters().forEach((/**
28
+ * @param {?} p
29
+ * @return {?}
30
+ */
31
+ function (p) { return _this.installBinding(p); }));
32
+ observe.valuesFrom(activatedRoute.paramMap)
33
+ .last()
34
+ .map((/**
35
+ * @param {?} params
36
+ * @return {?}
37
+ */
38
+ function (params) { return ParameterSnapshot.create(_this.placeDefinition, params); }))
39
+ .subscribe((/**
40
+ * @param {?} resolvedParameters
41
+ * @return {?}
42
+ */
43
+ function (resolvedParameters) {
44
+ _this._incomingRouteChange.value = true;
45
+ _this.resolvedParameters.value = resolvedParameters;
46
+ _this._incomingRouteChange.value = false;
47
+ }));
48
+ when.valueOf(_this.resolvedParameters).changes((/**
49
+ * @param {?} params
50
+ * @param {?} previous
51
+ * @return {?}
52
+ */
53
+ function (params, previous) {
54
+ placeService.notifyRouteParametersChanged({
55
+ activatedRoute: _this.activatedRoute,
56
+ next: params,
57
+ previous: previous,
58
+ updateRoute: !_this.incomingRouteChange.value // we update the route if it's a component triggered change.
59
+ });
60
+ }));
21
61
  return _this;
22
62
  }
23
- Object.defineProperty(PlaceComponent.prototype, "placeConfig", {
63
+ Object.defineProperty(PlaceComponent.prototype, "incomingRouteChange", {
64
+ get: /**
65
+ * @return {?}
66
+ */
67
+ function () {
68
+ return this._incomingRouteChange.readonly;
69
+ },
70
+ enumerable: true,
71
+ configurable: true
72
+ });
73
+ /**
74
+ * @private
75
+ * @template T, S
76
+ * @param {?} parameterDef
77
+ * @return {?}
78
+ */
79
+ PlaceComponent.prototype.installBinding = /**
80
+ * @private
81
+ * @template T, S
82
+ * @param {?} parameterDef
83
+ * @return {?}
84
+ */
85
+ function (parameterDef) {
86
+ /** @type {?} */
87
+ var model = (/** @type {?} */ (this[parameterDef.propertyName]));
88
+ // this.txo.observe(parameterDef.propertyName, model);
89
+ this.registerDisposable(new Binding(this.resolvedParameters, model, {
90
+ toRight: /**
91
+ * @param {?} parameters
92
+ * @return {?}
93
+ */
94
+ function (parameters) {
95
+ return parameters.getResolvedParameterValue(parameterDef);
96
+ },
97
+ toLeft: /**
98
+ * @param {?} value
99
+ * @param {?=} currentParameters
100
+ * @return {?}
101
+ */
102
+ function (value, currentParameters) {
103
+ return currentParameters.replace(parameterDef, value);
104
+ }
105
+ }));
106
+ };
107
+ Object.defineProperty(PlaceComponent.prototype, "placeDefinition", {
24
108
  get: /**
25
109
  * @return {?}
26
110
  */
@@ -51,7 +135,7 @@ var PlaceComponent = /** @class */ (function (_super) {
51
135
  Memoize(),
52
136
  tslib_1.__metadata("design:type", PlaceComponent.Definition),
53
137
  tslib_1.__metadata("design:paramtypes", [])
54
- ], PlaceComponent.prototype, "placeConfig", null);
138
+ ], PlaceComponent.prototype, "placeDefinition", null);
55
139
  tslib_1.__decorate([
56
140
  Trace(),
57
141
  tslib_1.__metadata("design:type", Function),
@@ -62,11 +146,13 @@ var PlaceComponent = /** @class */ (function (_super) {
62
146
  }(DisposableComponent));
63
147
  export { PlaceComponent };
64
148
  if (false) {
149
+ /** @type {?} */
150
+ PlaceComponent.prototype._incomingRouteChange;
65
151
  /**
66
152
  * @type {?}
67
153
  * @private
68
154
  */
69
- PlaceComponent.prototype.routeBindingMediator;
155
+ PlaceComponent.prototype.resolvedParameters;
70
156
  /** @type {?} */
71
157
  PlaceComponent.prototype.activatedRoute;
72
158
  }
@@ -79,17 +165,31 @@ if (false) {
79
165
  this.order = options.order;
80
166
  this.data = options.data;
81
167
  this.authenticate = _.isNil(options.authenticate) || options.authenticate;
168
+ this.children = (options.children || []).map((/**
169
+ * @param {?} c
170
+ * @return {?}
171
+ */
172
+ function (c) { return PlaceComponent.getDefinition(c).component; }));
82
173
  }
83
174
  /**
84
- * @param {?} construcable
175
+ * @return {?}
176
+ */
177
+ Definition.prototype.getRouteParameters = /**
178
+ * @return {?}
179
+ */
180
+ function () {
181
+ return Klass.get(this.component).getMetadataList(ROUTE_PARAMETER_LIST_KEY);
182
+ };
183
+ /**
184
+ * @param {?} constructable
85
185
  * @return {?}
86
186
  */
87
187
  Definition.prototype.isDescriptorForType = /**
88
- * @param {?} construcable
188
+ * @param {?} constructable
89
189
  * @return {?}
90
190
  */
91
- function (construcable) {
92
- return lang.constructorChain(construcable).includes(PlaceComponent);
191
+ function (constructable) {
192
+ return lang.constructorChain(constructable).includes(PlaceComponent);
93
193
  };
94
194
  /**
95
195
  * @param {?} placeComponent
@@ -146,6 +246,12 @@ if (false) {
146
246
  return defaultValue;
147
247
  }
148
248
  };
249
+ tslib_1.__decorate([
250
+ Memoize(),
251
+ tslib_1.__metadata("design:type", Function),
252
+ tslib_1.__metadata("design:paramtypes", []),
253
+ tslib_1.__metadata("design:returntype", Array)
254
+ ], Definition.prototype, "getRouteParameters", null);
149
255
  return Definition;
150
256
  }());
151
257
  PlaceComponent.Definition = Definition;
@@ -159,6 +265,8 @@ if (false) {
159
265
  /** @type {?} */
160
266
  Definition.prototype.data;
161
267
  /** @type {?} */
268
+ Definition.prototype.children;
269
+ /** @type {?} */
162
270
  Definition.prototype.component;
163
271
  }
164
272
  /**
@@ -175,15 +283,24 @@ if (false) {
175
283
  Options.prototype.data;
176
284
  /** @type {?|undefined} */
177
285
  Options.prototype.authenticate;
286
+ /** @type {?|undefined} */
287
+ Options.prototype.children;
288
+ }
289
+ /**
290
+ * @record
291
+ */
292
+ function ChildOptions() { }
293
+ PlaceComponent.ChildOptions = ChildOptions;
294
+ if (false) {
295
+ /** @type {?} */
296
+ ChildOptions.prototype.parent;
178
297
  }
179
298
  /**
180
299
  * @param {?} klass
181
300
  * @return {?}
182
301
  */
183
302
  function getDefinition(klass) {
184
- /** @type {?} */
185
- var placeOptions = Reflect.getMetadata(DEFINITION_META_DATA_KEY, klass);
186
- return new Definition(klass, placeOptions);
303
+ return Reflect.getMetadata(DEFINITION_META_DATA_KEY, klass);
187
304
  }
188
305
  PlaceComponent.getDefinition = getDefinition;
189
306
  /**
@@ -192,8 +309,8 @@ if (false) {
192
309
  * @return {?}
193
310
  */
194
311
  function injectDefinition(klass, options) {
195
- Reflect.defineMetadata(DEFINITION_META_DATA_KEY, options, klass);
312
+ Reflect.defineMetadata(DEFINITION_META_DATA_KEY, new Definition(klass, options), klass);
196
313
  }
197
314
  PlaceComponent.injectDefinition = injectDefinition;
198
315
  })(PlaceComponent || (PlaceComponent = {}));
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQWlCLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUd6RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBRzFFLE1BQU0sS0FBTyx3QkFBd0IsR0FBRywwQkFBMEI7QUFFbEU7SUFBb0MsMENBQW1CO0lBSXJELHdCQUFxQixjQUE4QixFQUFFLFlBQTJCO1FBQWhGLFlBQ0UsaUJBQU8sU0FFUjtRQUhvQixvQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFFakQsS0FBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLHNCQUFzQixDQUFDLEtBQUksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDOztJQUN0RyxDQUFDO0lBR0Qsc0JBQUksdUNBQVc7Ozs7UUFBZjtZQUNFLE9BQU8sY0FBYyxDQUFDLGFBQWEsQ0FBQyxtQkFBQSxtQkFBQSxJQUFJLENBQUMsV0FBVyxFQUFPLEVBQWlDLENBQUMsQ0FBQztRQUNoRyxDQUFDOzs7T0FBQTs7OztJQUVELHNDQUFhOzs7SUFBYjtRQUNFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7OztJQUdELHFDQUFZOzs7SUFBWjtJQUNBLENBQUM7SUFWRDtRQURDLE9BQU8sRUFBRTswQ0FDUyxjQUFjLENBQUMs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QUM7SUFDbkUsQ0FBQztJQUZlLCtCQUFnQixtQkFFL0IsQ0FBQTtBQUdILENBQUMsRUEzRGdCLGNBQWMsS0FBZCxjQUFjLFFBMkQ5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGFzc2VydCwgQ29uc3RydWN0YWJsZSwgbGFuZywgVHJhY2UgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBNZW1vaXplIH0gZnJvbSAnQHR5cGVzY3JpcHQtcGx1cy9mYXN0LW1lbW9pemUtZGVjb3JhdG9yJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCAncmVmbGVjdC1tZXRhZGF0YSc7XG5pbXBvcnQgeyBEaXNwb3NhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBJUGxhY2VDb21wb25lbnQgfSBmcm9tICcuL2ktcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IElQbGFjZVNlcnZpY2UgfSBmcm9tICcuL2ktcGxhY2Utc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZVBhcmFtZXRlckJpbmRpbmdzIH0gZnJvbSAnLi9yb3V0ZS9yb3V0ZS1wYXJhbWV0ZXItYmluZGluZ3MnO1xuXG4vLyBSQUtFOiBtYWtpbmcgdGhpcyBTeW1ib2woLi4uKSBicm9rZSB0aGluZ3MuXG5leHBvcnQgY29uc3QgREVGSU5JVElPTl9NRVRBX0RBVEFfS0VZID0gJ1BMQUNFX0RFRklOSVRJT05fT1BUSU9OUyc7XG5cbmV4cG9ydCBjbGFzcyBQbGFjZUNvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBJUGxhY2VDb21wb25lbnQge1xuXG4gIHByaXZhdGUgcm91dGVCaW5kaW5nTWVkaWF0b3I6IFJvdXRlUGFyYW1ldGVyQmluZGluZ3M7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwbGFjZVNlcnZpY2U6IElQbGFjZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucm91dGVCaW5kaW5nTWVkaWF0b3IgPSB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgUm91dGVQYXJhbWV0ZXJCaW5kaW5ncyh0aGlzLCBwbGFjZVNlcnZpY2UpKTtcbiAgfVxuXG4gIEBNZW1vaXplKClcbiAgZ2V0IHBsYWNlQ29uZmlnKCk6IFBsYWNlQ29tcG9uZW50LkRlZmluaXRpb24ge1xuICAgIHJldHVybiBQbGFjZUNvbXBvbmVudC5nZXREZWZpbml0aW9uKHRoaXMuY29uc3RydWN0b3IgYXMgYW55IGFzIENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTtcbiAgfVxuXG4gIGNhbkRlYWN0aXZhdGUoKTogYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgb25QbGFjZVJlYWR5KCkge1xuICB9XG5cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQbGFjZUNvbXBvbmVudCB7XG5cbiAgZXhwb3J0IGNsYXNzIERlZmluaXRpb24ge1xuICAgIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcbiAgICByZWFkb25seSBhdXRoZW50aWNhdGU6IGJvb2xlYW47XG4gICAgcmVhZG9ubHkgb3JkZXI6IG51bWJlcjtcbiAgICByZWFkb25seSBkYXRhOiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgY29tcG9uZW50OiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Piwgb3B0aW9uczogUGxhY2VDb21wb25lbnQuT3B0aW9ucykge1xuICAgICAgYXNzZXJ0Lm5vdE5pbChvcHRpb25zKTtcbiAgICAgIHRoaXMucGF0aCA9IG9wdGlvbnMucGF0aDtcbiAgICAgIHRoaXMub3JkZXIgPSBvcHRpb25zLm9yZGVyO1xuICAgICAgdGhpcy5kYXRhID0gb3B0aW9ucy5kYXRhO1xuICAgICAgdGhpcy5hdXRoZW50aWNhdGUgPSBfLmlzTmlsKG9wdGlvbnMuYXV0aGVudGljYXRlKSB8fCBvcHRpb25zLmF1dGhlbnRpY2F0ZTtcbiAgICB9XG5cbiAgICBpc0Rlc2NyaXB0b3JGb3JUeXBlKGNvbnN0cnVjYWJsZTogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4pIHtcbiAgICAgIHJldHVybiBsYW5nLmNvbnN0cnVjdG9yQ2hhaW4oY29uc3RydWNhYmxlKS5pbmNsdWRlcyhQbGFjZUNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgaXNEZXNjcmlwdG9yRm9yKHBsYWNlQ29tcG9uZW50OiBQbGFjZUNvbXBvbmVudCkge1xuICAgICAgcmV0dXJuIHBsYWNlQ29tcG9uZW50LmNvbnN0cnVjdG9yID09PSB0aGlzLmNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBnZXREYXRhPFQ+KGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBUKTogVCB7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhID9cbiAgICAgICAgXy5pc05pbCh0aGlzLmRhdGFba2V5XSkgPyBkZWZhdWx0VmFsdWUgOiB0aGlzLmRhdGFba2V5XSA6XG4gICAgICAgIGRlZmF1bHRWYWx1ZTtcbiAgICB9XG5cbiAgICBzZWFyY2hEYXRhPFQ+KGtleXM6IHN0cmluZ1tdLCBkZWZhdWx0VmFsdWU/OiBUKTogVCB7XG4gICAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICAgIGNvbnN0IGZvdW5kID0ga2V5cy5maW5kKGtleSA9PiAhXy5pc05pbCh0aGlzLmRhdGFba2V5XSkpO1xuICAgICAgICByZXR1cm4gZm91bmQgPyB0aGlzLmRhdGFbZm91bmRdIDogZGVmYXVsdFZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XG4gICAgcGF0aDogc3RyaW5nLFxuICAgIG9yZGVyOiBudW1iZXI7XG4gICAgZGF0YT86IHsgW2tleTogc3RyaW5nXTogYW55IH0sIC8vIGRlZmF1bHRzIHRvIHRydWVcbiAgICBhdXRoZW50aWNhdGU/OiBib29sZWFuIC8vIGRlZmF1bHRzIHRvIHRydWVcbiAgICAvLyBjaGlsZE9mPzogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD5cbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXREZWZpbml0aW9uKGtsYXNzOiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pik6IERlZmluaXRpb24ge1xuICAgIGNvbnN0IHBsYWNlT3B0aW9ucyA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoREVGSU5JVElPTl9NRVRBX0RBVEFfS0VZLCBrbGFzcyk7XG4gICAgcmV0dXJuIG5ldyBEZWZpbml0aW9uKGtsYXNzLCBwbGFjZU9wdGlvbnMpO1xuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGluamVjdERlZmluaXRpb24oa2xhc3M6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBvcHRpb25zOiBPcHRpb25zKSB7XG4gICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShERUZJTklUSU9OX01FVEFfREFUQV9LRVksIG9wdGlvbnMsIGtsYXNzKTtcbiAgfVxuXG5cbn1cbiJdfQ==
316
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFDTCxNQUFNLEVBQ04sT0FBTyxFQUVQLEdBQUcsRUFFSCxJQUFJLEVBQ0osaUJBQWlCLEVBQ2pCLEtBQUssRUFFTixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUl6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBRy9ELE1BQU0sS0FBTyx3QkFBd0IsR0FBRywwQkFBMEI7OztBQUVsRSxNQUFNLEtBQU8sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDO0FBRXhFO0lBQW9DLDBDQUFtQjtJQUtyRCx3QkFBcUIsY0FBOEIsRUFBRSxZQUFpQztRQUF0RixZQUNFLGlCQUFPLFNBc0JSO1FBdkJvQixvQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFIbkMsMEJBQW9CLEdBQUcsSUFBSSxpQkFBaUIsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM1RCx3QkFBa0IsR0FBRyxJQUFJLGlCQUFpQixFQUFxQixDQUFDO1FBSXpFLElBQUEsMkJBQWtGLEVBQWhGLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxrQkFBTSxFQUFFLGNBQUksRUFBRSxnQkFBSyxFQUFFLG9CQUFPLEVBQUUsc0JBQWtDO1FBRXhGLEtBQUksQ0FBQyxlQUFlLENBQUMsa0JBQWtC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QixFQUFFLElBQUksVUFBVSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRmUsK0JBQWdCLG1CQUUvQixDQUFBO0FBR0gsQ0FBQyxFQXJFZ0IsY0FBYyxLQUFkLGNBQWMsUUFxRTlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgYXNzZXJ0LFxuICBCaW5kaW5nLFxuICBDb25zdHJ1Y3RhYmxlLFxuICBEc2wsXG4gIElNdXRhYmxlSGFzVmFsdWUsXG4gIGxhbmcsXG4gIE11dGFibGVWYWx1ZU1vZGVsLFxuICBUcmFjZSxcbiAgVmFsdWVNb2RlbFxufSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBLbGFzcyB9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgTWVtb2l6ZSB9IGZyb20gJ0B0eXBlc2NyaXB0LXBsdXMvZmFzdC1tZW1vaXplLWRlY29yYXRvcic7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgJ3JlZmxlY3QtbWV0YWRhdGEnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnRMaWtlIH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQtbGlrZSc7XG5pbXBvcnQgeyBQbGFjZVVwZGF0ZXNTZXJ2aWNlIH0gZnJvbSAnLi9wbGFjZS11cGRhdGVzLXNlcnZpY2UnO1xuaW1wb3J0IHsgUGFyYW1ldGVyRGVmaW5pdGlvbiB9IGZyb20gJy4vcm91dGUvcGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU25hcHNob3QgfSBmcm9tICcuL3JvdXRlL3BhcmFtZXRlci1zbmFwc2hvdCc7XG5cbi8vIFJBS0U6IG1ha2luZyB0aGlzIFN5bWJvbCguLi4pIGJyb2tlIHRoaW5ncy5cbmV4cG9ydCBjb25zdCBERUZJTklUSU9OX01FVEFfREFUQV9LRVkgPSAnUExBQ0VfREVGSU5JVElPTl9PUFRJT05TJztcbi8vIHRoaXMgb25lIHNlZW1zIG9rLlxuZXhwb3J0IGNvbnN0IFJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSA9IFN5bWJvbCgncGxhY2U6cm91dGU6cGFyYW1ldGVycycpO1xuXG5leHBvcnQgY2xhc3MgUGxhY2VDb21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgUGxhY2VDb21wb25lbnRMaWtlIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgX2luY29taW5nUm91dGVDaGFuZ2UgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc29sdmVkUGFyYW1ldGVycyA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxQYXJhbWV0ZXJTbmFwc2hvdD4oKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsIHBsYWNlU2VydmljZTogUGxhY2VVcGRhdGVzU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcblxuICAgIHRoaXMucGxhY2VEZWZpbml0aW9uLmdldFJvdXRlUGFyYW1ldGVycygpLmZvckVhY2gocCA9PiB0aGlzLmluc3RhbGxCaW5kaW5nKHApKTtcblxuICAgIG9ic2VydmUudmFsdWVzRnJvbShhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcClcbiAgICAgIC5sYXN0KClcbiAgICAgIC5tYXAocGFyYW1zID0+IFBhcmFtZXRlclNuYXBzaG90LmNyZWF0ZSh0aGlzLnBsYWNlRGVmaW5pdGlvbiwgcGFyYW1zKSlcbiAgICAgIC5zdWJzY3JpYmUocmVzb2x2ZWRQYXJhbWV0ZXJzID0+IHtcbiAgICAgICAgdGhpcy5faW5jb21pbmdSb3V0ZUNoYW5nZS52YWx1ZSA9IHRydWU7XG4gICAgICAgIHRoaXMucmVzb2x2ZWRQYXJhbWV0ZXJzLnZhbHVlID0gcmVzb2x2ZWRQYXJhbWV0ZXJzO1xuICAgICAgICB0aGlzLl9pbmNvbWluZ1JvdXRlQ2hhbmdlLnZhbHVlID0gZmFsc2U7XG4gICAgICB9KTtcblxuICAgIHdoZW4udmFsdWVPZih0aGlzLnJlc29sdmVkUGFyYW1ldGVycykuY2hhbmdlcygocGFyYW1zLCBwcmV2aW91cykgPT4ge1xuICAgICAgcGxhY2VTZXJ2aWNlLm5vdGlmeVJvdXRlUGFyYW1ldGVyc0NoYW5nZWQoe1xuICAgICAgICBhY3RpdmF0ZWRSb3V0ZTogdGhpcy5hY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgbmV4dDogcGFyYW1zLFxuICAgICAgICBwcmV2aW91czogcHJldmlvdXMsXG4gICAgICAgIHVwZGF0ZVJvdXRlOiAhdGhpcy5pbmNvbWluZ1JvdXRlQ2hhbmdlLnZhbHVlIC8vIHdlIHVwZGF0ZSB0aGUgcm91dGUgaWYgaXQncyBhIGNvbXBvbmVudCB0cmlnZ2VyZWQgY2hhbmdlLlxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgaW5jb21pbmdSb3V0ZUNoYW5nZSgpOiBWYWx1ZU1vZGVsPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5faW5jb21pbmdSb3V0ZUNoYW5nZS5yZWFkb25seTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zdGFsbEJpbmRpbmc8VCwgUz4ocGFyYW1ldGVyRGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFM+KSB7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzW3BhcmFtZXRlckRlZi5wcm9wZXJ0eU5hbWVdIGFzIElNdXRhYmxlSGFzVmFsdWU8Uz47XG4gICAgLy8gdGhpcy50eG8ub2JzZXJ2ZShwYXJhbWV0ZXJEZWYucHJvcGVydHlOYW1lLCBtb2RlbCk7XG4gICAgdGhpcy5yZWdpc3RlckRpc3Bvc2FibGUobmV3IEJpbmRpbmcodGhpcy5yZXNvbHZlZFBhcmFtZXRlcnMsIG1vZGVsLCB7XG4gICAgICB0b1JpZ2h0KHBhcmFtZXRlcnM6IFBhcmFtZXRlclNuYXBzaG90KTogUyB7XG4gICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLmdldFJlc29sdmVkUGFyYW1ldGVyVmFsdWUocGFyYW1ldGVyRGVmKTtcbiAgICAgIH0sXG4gICAgICB0b0xlZnQodmFsdWU6IFMsIGN1cnJlbnRQYXJhbWV0ZXJzPzogUGFyYW1ldGVyU25hcHNob3QpOiBQYXJhbWV0ZXJTbmFwc2hvdCB7XG4gICAgICAgIHJldHVybiBjdXJyZW50UGFyYW1ldGVycy5yZXBsYWNlKHBhcmFtZXRlckRlZiwgdmFsdWUpO1xuICAgICAgfVxuICAgIH0pKTtcbiAgfVxuXG5cbiAgQE1lbW9pemUoKVxuICBnZXQgcGxhY2VEZWZpbml0aW9uKCk6IFBsYWNlQ29tcG9uZW50LkRlZmluaXRpb24ge1xuICAgIHJldHVybiBQbGFjZUNvbXBvbmVudC5nZXREZWZpbml0aW9uKHRoaXMuY29uc3RydWN0b3IgYXMgYW55IGFzIENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTtcbiAgfVxuXG4gIGNhbkRlYWN0aXZhdGUoKTogYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgb25QbGFjZVJlYWR5KCkge1xuICB9XG5cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQbGFjZUNvbXBvbmVudCB7XG5cbiAgZXhwb3J0IGNsYXNzIERlZmluaXRpb24ge1xuICAgIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcbiAgICByZWFkb25seSBhdXRoZW50aWNhdGU6IGJvb2xlYW47XG4gICAgcmVhZG9ubHkgb3JkZXI6IG51bWJlcjtcbiAgICByZWFkb25seSBkYXRhOiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuICAgIHJlYWRvbmx5IGNoaWxkcmVuOiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50PltdO1xuXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgY29tcG9uZW50OiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Piwgb3B0aW9uczogUGxhY2VDb21wb25lbnQuT3B0aW9ucykge1xuICAgICAgYXNzZXJ0Lm5vdE5pbChvcHRpb25zKTtcbiAgICAgIHRoaXMucGF0aCA9IG9wdGlvbnMucGF0aDtcbiAgICAgIHRoaXMub3JkZXIgPSBvcHRpb25zLm9yZGVyO1xuICAgICAgdGhpcy5kYXRhID0gb3B0aW9ucy5kYXRhO1xuICAgICAgdGhpcy5hdXRoZW50aWNhdGUgPSBfLmlzTmlsKG9wdGlvbnMuYXV0aGVudGljYXRlKSB8fCBvcHRpb25zLmF1dGhlbnRpY2F0ZTtcbiAgICAgIHRoaXMuY2hpbGRyZW4gPSAob3B0aW9ucy5jaGlsZHJlbiB8fFtdKS5tYXAoYyA9PiBQbGFjZUNvbXBvbmVudC5nZXREZWZpbml0aW9uKGMpLmNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgQE1lbW9pemUoKVxuICAgIGdldFJvdXRlUGFyYW1ldGVycygpOiBQYXJhbWV0ZXJEZWZpbml0aW9uPGFueT5bXSB7XG4gICAgICByZXR1cm4gS2xhc3MuZ2V0KHRoaXMuY29tcG9uZW50KS5nZXRNZXRhZGF0YUxpc3QoUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZKTtcbiAgICB9XG5cbiAgICBpc0Rlc2NyaXB0b3JGb3JUeXBlKGNvbnN0cnVjdGFibGU6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KSB7XG4gICAgICByZXR1cm4gbGFuZy5jb25zdHJ1Y3RvckNoYWluKGNvbnN0cnVjdGFibGUpLmluY2x1ZGVzKFBsYWNlQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBpc0Rlc2NyaXB0b3JGb3IocGxhY2VDb21wb25lbnQ6IFBsYWNlQ29tcG9uZW50KSB7XG4gICAgICByZXR1cm4gcGxhY2VDb21wb25lbnQuY29uc3RydWN0b3IgPT09IHRoaXMuY29tcG9uZW50O1xuICAgIH1cblxuICAgIGdldERhdGE8VD4oa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IFQpOiBUIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEgP1xuICAgICAgICBfLmlzTmlsKHRoaXMuZGF0YVtrZXldKSA/IGRlZmF1bHRWYWx1ZSA6IHRoaXMuZGF0YVtrZXldIDpcbiAgICAgICAgZGVmYXVsdFZhbHVlO1xuICAgIH1cblxuICAgIHNlYXJjaERhdGE8VD4oa2V5czogc3RyaW5nW10sIGRlZmF1bHRWYWx1ZT86IFQpOiBUIHtcbiAgICAgIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgICAgY29uc3QgZm91bmQgPSBrZXlzLmZpbmQoa2V5ID0+ICFfLmlzTmlsKHRoaXMuZGF0YVtrZXldKSk7XG4gICAgICAgIHJldHVybiBmb3VuZCA/IHRoaXMuZGF0YVtmb3VuZF0gOiBkZWZhdWx0VmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgb3JkZXI6IG51bWJlcjtcbiAgICBkYXRhPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSwgLy8gZGVmYXVsdHMgdG8gdHJ1ZVxuICAgIGF1dGhlbnRpY2F0ZT86IGJvb2xlYW4sIC8vIGRlZmF1bHRzIHRvIHRydWVcbiAgICBjaGlsZHJlbj86IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+W11cbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQ2hpbGRPcHRpb25zIGV4dGVuZHMgT3B0aW9ucyB7XG4gICAgcGFyZW50OiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50PlxuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldERlZmluaXRpb24oa2xhc3M6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTogRGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIFJlZmxlY3QuZ2V0TWV0YWRhdGEoREVGSU5JVElPTl9NRVRBX0RBVEFfS0VZLCBrbGFzcyk7XG4gIH1cblxuICBleHBvcnQgZnVuY3Rpb24gaW5qZWN0RGVmaW5pdGlvbihrbGFzczogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4sIG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKERFRklOSVRJT05fTUVUQV9EQVRBX0tFWSwgbmV3IERlZmluaXRpb24oa2xhc3MsIG9wdGlvbnMpLCBrbGFzcyk7XG4gIH1cblxuXG59XG4iXX0=
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ /**
6
+ * @record
7
+ */
8
+ export function PlaceUpdatesService() { }
9
+ if (false) {
10
+ /**
11
+ * @param {?} params
12
+ * @return {?}
13
+ */
14
+ PlaceUpdatesService.prototype.notifyRouteParametersChanged = function (params) { };
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtdXBkYXRlcy1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLXVwZGF0ZXMtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEseUNBT0M7Ozs7OztJQU5DLG1GQUtHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnRMaWtlIH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQtbGlrZSc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTbmFwc2hvdCB9IGZyb20gJy4vcm91dGUvcGFyYW1ldGVyLXNuYXBzaG90JztcblxuZXhwb3J0IGludGVyZmFjZSBQbGFjZVVwZGF0ZXNTZXJ2aWNlIHtcbiAgbm90aWZ5Um91dGVQYXJhbWV0ZXJzQ2hhbmdlZChwYXJhbXM6IHtcbiAgICBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgbmV4dDogUGFyYW1ldGVyU25hcHNob3QsXG4gICAgcHJldmlvdXM6IFBhcmFtZXRlclNuYXBzaG90LFxuICAgIHVwZGF0ZVJvdXRlOiBib29sZWFuXG4gIH0pO1xufVxuIl19
@@ -20,4 +20,4 @@ export function Place(options) {
20
20
  PlaceComponent.injectDefinition((/** @type {?} */ (target)), options);
21
21
  });
22
22
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFpQixJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7O0FBRW5ELE1BQU0sVUFBVSxLQUFLLENBQUMsT0FBK0I7SUFDbkQ7Ozs7SUFBTyxVQUFDLE1BQWdCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQUEsTUFBTSxFQUFzQixDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9FLElBQUksQ0FBQyxZQUFZLENBQUksTUFBTSw0REFBeUQsQ0FBQyxDQUFBO1NBQ3hGO1FBQ0QsY0FBYyxDQUFDLGdCQUFnQixDQUFDLG1CQUFBLE1BQU0sRUFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDLEVBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgbGFuZyB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gUGxhY2Uob3B0aW9uczogUGxhY2VDb21wb25lbnQuT3B0aW9ucykge1xuICByZXR1cm4gKHRhcmdldDogRnVuY3Rpb24pID0+IHtcbiAgICBpZiAoIWxhbmcuY29uc3RydWN0b3JDaGFpbih0YXJnZXQgYXMgQ29uc3RydWN0YWJsZTxhbnk+KS5pbmNsdWRlcyhQbGFjZUNvbXBvbmVudCkpIHtcbiAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYCR7dGFyZ2V0fSBtdXN0IGV4dGVuZCBQbGFjZUNvbXBvbmVudCB0byB1c2UgdGhlIEBQbGFjZSBkZWNvcmF0b3JgKVxuICAgIH1cbiAgICBQbGFjZUNvbXBvbmVudC5pbmplY3REZWZpbml0aW9uKHRhcmdldCBhcyBDb25zdHJ1Y3RhYmxlPGFueT4sIG9wdGlvbnMpO1xuICB9O1xufVxuXG4iXX0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFpQixJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7O0FBRW5ELE1BQU0sVUFBVSxLQUFLLENBQUMsT0FBK0I7SUFDbkQ7Ozs7SUFBTyxVQUFDLE1BQWdCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQUEsTUFBTSxFQUFzQixDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9FLElBQUksQ0FBQyxZQUFZLENBQUksTUFBTSw0REFBeUQsQ0FBQyxDQUFBO1NBQ3hGO1FBQ0QsY0FBYyxDQUFDLGdCQUFnQixDQUFDLG1CQUFBLE1BQU0sRUFBc0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDLEVBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgbGFuZyB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gUGxhY2Uob3B0aW9uczogUGxhY2VDb21wb25lbnQuT3B0aW9ucykge1xuICByZXR1cm4gKHRhcmdldDogRnVuY3Rpb24pID0+IHtcbiAgICBpZiAoIWxhbmcuY29uc3RydWN0b3JDaGFpbih0YXJnZXQgYXMgQ29uc3RydWN0YWJsZTxhbnk+KS5pbmNsdWRlcyhQbGFjZUNvbXBvbmVudCkpIHtcbiAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYCR7dGFyZ2V0fSBtdXN0IGV4dGVuZCBQbGFjZUNvbXBvbmVudCB0byB1c2UgdGhlIEBQbGFjZSBkZWNvcmF0b3JgKVxuICAgIH1cbiAgICBQbGFjZUNvbXBvbmVudC5pbmplY3REZWZpbml0aW9uKHRhcmdldCBhcyBDb25zdHJ1Y3RhYmxlPGFueT4sIG9wdGlvbnMpO1xuICB9O1xufVxuIl19
@@ -13,6 +13,7 @@ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
13
13
  import { RouterModule } from '@angular/router';
14
14
  import { BusyOverlayComponent } from './components/busy-overlay/busy-overlay.component';
15
15
  import { EmptyStateComponent } from './components/empty-state/empty-state.component';
16
+ import { ListPlaceNavComponent } from './components/list-place-nav/list-place-nav.component';
16
17
  import { PlaceOutletComponent } from './components/place-outlet/place-outlet.component';
17
18
  import { TabbedPlaceNavigationComponent } from './components/tabbed-place-navigation/tabbed-place-navigation.component';
18
19
  import { PlaceService } from './place.service';
@@ -35,14 +36,16 @@ var PlaceModule = /** @class */ (function () {
35
36
  EmptyStateComponent,
36
37
  BusyOverlayComponent,
37
38
  PlaceOutletComponent,
38
- TabbedPlaceNavigationComponent
39
+ TabbedPlaceNavigationComponent,
40
+ ListPlaceNavComponent
39
41
  ],
40
42
  entryComponents: [BusyOverlayComponent],
41
43
  exports: [
42
44
  BusyOverlayComponent,
43
45
  PlaceOutletComponent,
44
46
  EmptyStateComponent,
45
- TabbedPlaceNavigationComponent
47
+ TabbedPlaceNavigationComponent,
48
+ ListPlaceNavComponent
46
49
  ],
47
50
  providers: [
48
51
  PlaceService
@@ -52,4 +55,4 @@ var PlaceModule = /** @class */ (function () {
52
55
  return PlaceModule;
53
56
  }());
54
57
  export { PlaceModule };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQztJQUFBO0lBOEJBLENBQUM7O2dCQTlCQSxRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsOEJBQThCO3FCQUMvQjtvQkFDRCxlQUFlLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDdkMsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDhCQUE4QjtxQkFDL0I7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFlBQVk7cUJBQ2I7aUJBQ0Y7O0lBR0Qsa0JBQUM7Q0FBQSxBQTlCRCxJQThCQztTQUZZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCdXN5T3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9idXN5LW92ZXJsYXkvYnVzeS1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eVN0YXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZU91dGxldENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbGFjZS1vdXRsZXQvcGxhY2Utb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlU2VydmljZSB9IGZyb20gJy4vcGxhY2Uuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgQnVzeU92ZXJsYXlDb21wb25lbnQsXG4gICAgUGxhY2VPdXRsZXRDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50XG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0J1c3lPdmVybGF5Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW1xuICAgIEJ1c3lPdmVybGF5Q29tcG9uZW50LFxuICAgIFBsYWNlT3V0bGV0Q29tcG9uZW50LFxuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIFBsYWNlU2VydmljZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlTW9kdWxlIHtcblxufVxuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQztJQUFBO0lBZ0NBLENBQUM7O2dCQWhDQSxRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsOEJBQThCO3dCQUM5QixxQkFBcUI7cUJBQ3RCO29CQUNELGVBQWUsRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUN2QyxPQUFPLEVBQUU7d0JBQ1Asb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsOEJBQThCO3dCQUM5QixxQkFBcUI7cUJBQ3RCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxZQUFZO3FCQUNiO2lCQUNGOztJQUdELGtCQUFDO0NBQUEsQUFoQ0QsSUFnQ0M7U0FGWSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQnVzeU92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnVzeS1vdmVybGF5L2J1c3ktb3ZlcmxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlTdGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdFBsYWNlTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xpc3QtcGxhY2UtbmF2L2xpc3QtcGxhY2UtbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZU91dGxldENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbGFjZS1vdXRsZXQvcGxhY2Utb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlU2VydmljZSB9IGZyb20gJy4vcGxhY2Uuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgQnVzeU92ZXJsYXlDb21wb25lbnQsXG4gICAgUGxhY2VPdXRsZXRDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIExpc3RQbGFjZU5hdkNvbXBvbmVudFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtCdXN5T3ZlcmxheUNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXN5T3ZlcmxheUNvbXBvbmVudCxcbiAgICBQbGFjZU91dGxldENvbXBvbmVudCxcbiAgICBFbXB0eVN0YXRlQ29tcG9uZW50LFxuICAgIFRhYmJlZFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBMaXN0UGxhY2VOYXZDb21wb25lbnRcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgUGxhY2VTZXJ2aWNlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUGxhY2VNb2R1bGUge1xuXG59XG4iXX0=
@@ -3,17 +3,19 @@
3
3
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
- import { Injectable } from '@angular/core';
6
+ import { Injectable, Injector } from '@angular/core';
7
7
  import { Router } from '@angular/router';
8
8
  import { GarbageCollector, MutableListModel, Trace } from '@coolon/pectin';
9
9
  import { PlaceComponent } from './place-component';
10
+ import { ParameterSnapshot } from './route/parameter-snapshot';
10
11
  import * as i0 from "@angular/core";
11
12
  import * as i1 from "@angular/router";
12
13
  var PlaceService = /** @class */ (function (_super) {
13
14
  tslib_1.__extends(PlaceService, _super);
14
- function PlaceService(router) {
15
+ function PlaceService(router, injector) {
15
16
  var _this = _super.call(this) || this;
16
17
  _this.router = router;
18
+ _this.injector = injector;
17
19
  _this._activePlaces = new MutableListModel();
18
20
  return _this;
19
21
  }
@@ -67,10 +69,25 @@ var PlaceService = /** @class */ (function (_super) {
67
69
  /** @type {?} */
68
70
  var path = routeId ? [relativePath, routeId, params.next.getFormattedParameters()] : [relativePath, params.next.getFormattedParameters()];
69
71
  this.router.navigate(path, {
70
- relativeTo: params.placeComponent.activatedRoute
72
+ relativeTo: params.activatedRoute
71
73
  });
72
74
  }
73
75
  };
76
+ /**
77
+ * @param {?} snapshot
78
+ * @return {?}
79
+ */
80
+ PlaceService.prototype.sanitise = /**
81
+ * @param {?} snapshot
82
+ * @return {?}
83
+ */
84
+ function (snapshot) {
85
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
86
+ return tslib_1.__generator(this, function (_a) {
87
+ return [2 /*return*/, snapshot];
88
+ });
89
+ });
90
+ };
74
91
  PlaceService.decorators = [
75
92
  { type: Injectable, args: [{
76
93
  providedIn: 'root'
@@ -78,9 +95,10 @@ var PlaceService = /** @class */ (function (_super) {
78
95
  ];
79
96
  /** @nocollapse */
80
97
  PlaceService.ctorParameters = function () { return [
81
- { type: Router }
98
+ { type: Router },
99
+ { type: Injector }
82
100
  ]; };
83
- /** @nocollapse */ PlaceService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function PlaceService_Factory() { return new PlaceService(i0.ɵɵinject(i1.Router)); }, token: PlaceService, providedIn: "root" });
101
+ /** @nocollapse */ PlaceService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function PlaceService_Factory() { return new PlaceService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i0.INJECTOR)); }, token: PlaceService, providedIn: "root" });
84
102
  tslib_1.__decorate([
85
103
  Trace(),
86
104
  tslib_1.__metadata("design:type", Function),
@@ -99,6 +117,12 @@ var PlaceService = /** @class */ (function (_super) {
99
117
  tslib_1.__metadata("design:paramtypes", [Object]),
100
118
  tslib_1.__metadata("design:returntype", void 0)
101
119
  ], PlaceService.prototype, "notifyRouteParametersChanged", null);
120
+ tslib_1.__decorate([
121
+ Trace(),
122
+ tslib_1.__metadata("design:type", Function),
123
+ tslib_1.__metadata("design:paramtypes", [ParameterSnapshot]),
124
+ tslib_1.__metadata("design:returntype", Promise)
125
+ ], PlaceService.prototype, "sanitise", null);
102
126
  return PlaceService;
103
127
  }(GarbageCollector));
104
128
  export { PlaceService };
@@ -113,5 +137,10 @@ if (false) {
113
137
  * @protected
114
138
  */
115
139
  PlaceService.prototype.router;
140
+ /**
141
+ * @type {?}
142
+ * @protected
143
+ */
144
+ PlaceService.prototype.injector;
116
145
  }
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9wbGFjZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWtCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQUduRDtJQUdrQyx3Q0FBZ0I7SUFJaEQsc0JBQXNCLE1BQWM7UUFBcEMsWUFDRSxpQkFBTyxTQUNSO1FBRnFCLFlBQU0sR0FBTixNQUFNLENBQVE7UUFGNUIsbUJBQWEsR0FBRyxJQUFJLGdCQUFnQixFQUFrQixDQUFDOztJQUkvRCxDQUFDO0lBRUQsc0JBQUksc0NBQVk7Ozs7UUFBaEI7WUFDRSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQ3JDLENBQUM7OztPQUFBOzs7OztJQUdELGlDQUFVOzs7O0lBQVYsVUFBVyxLQUFxQjtRQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs7OztJQUdELG1DQUFZOzs7O0lBQVosVUFBYSxLQUFxQjtRQUNoQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDOzs7OztJQUdELG1EQUE0Qjs7OztJQUE1QixVQUE2QixNQUs1QjtRQUNDLGdDQUFnQztRQUNoQyxJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUU7O2dCQUNoQixPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTs7Z0JBQzNDLFlBQVksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHOztnQkFDMUQsSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDM0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO2dCQUN6QixVQUFVLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxjQUFjO2FBQ2pELENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7Z0JBekNGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBUndCLE1BQU07OztJQXNCN0I7UUFEQyxLQUFLLEVBQUU7O2lEQUNVLGNBQWM7O2tEQUUvQjtJQUdEO1FBREMsS0FBSyxFQUFFOztpREFDWSxjQUFjOztvREFFakM7SUFHRDtRQURDLEtBQUssRUFBRTs7OztvRUFnQlA7dUJBaERIO0NBaURDLEFBMUNELENBR2tDLGdCQUFnQixHQXVDakQ7U0F2Q1ksWUFBWTs7Ozs7O0lBRXZCLHFDQUErRDs7Ozs7SUFFbkQsOEJBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBHYXJiYWdlQ29sbGVjdG9yLCBNdXRhYmxlTGlzdE1vZGVsLCBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IElQbGFjZVNlcnZpY2UgfSBmcm9tICcuL2ktcGxhY2Utc2VydmljZSc7XG5pbXBvcnQgeyBQbGFjZUNvbXBvbmVudCB9IGZyb20gJy4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFJlc29sdmVkUm91dGVQYXJhbWV0ZXJTbmFwc2hvdCB9IGZyb20gJy4vcm91dGUvcmVzb2x2ZWQtcm91dGUtcGFyYW1ldGVyLXNuYXBzaG90JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUGxhY2VTZXJ2aWNlIGV4dGVuZHMgR2FyYmFnZUNvbGxlY3RvciBpbXBsZW1lbnRzIElQbGFjZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2FjdGl2ZVBsYWNlcyA9IG5ldyBNdXRhYmxlTGlzdE1vZGVsPFBsYWNlQ29tcG9uZW50PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlcikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBnZXQgYWN0aXZlUGxhY2VzKCkge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVQbGFjZXMucmVhZG9ubHk7XG4gIH1cblxuICBAVHJhY2UoKVxuICBvbkFjdGl2YXRlKHBsYWNlOiBQbGFjZUNvbXBvbmVudCkge1xuICAgIHRoaXMuX2FjdGl2ZVBsYWNlcy5wdXNoKHBsYWNlKTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIG9uRGVhY3RpdmF0ZShwbGFjZTogUGxhY2VDb21wb25lbnQpIHtcbiAgICB0aGlzLl9hY3RpdmVQbGFjZXMucmVtb3ZlKHBsYWNlKTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIG5vdGlmeVJvdXRlUGFyYW1ldGVyc0NoYW5nZWQocGFyYW1zOiB7XG4gICAgcGxhY2VDb21wb25lbnQ6IFBsYWNlQ29tcG9uZW50LFxuICAgIG5leHQ6IFJlc29sdmVkUm91dGVQYXJhbWV0ZXJTbmFwc2hvdCxcbiAgICBwcmV2aW91czogUmVzb2x2ZWRSb3V0ZVBhcmFtZXRlclNuYXBzaG90LFxuICAgIHVwZGF0ZVJvdXRlOiBib29sZWFuXG4gIH0pIHtcbiAgICAvLyBXZSB1cGRhdGUgdGhlIHJvdXRlciBzdGF0ZS4uLlxuICAgIGlmIChwYXJhbXMudXBkYXRlUm91dGUpIHtcbiAgICAgIGNvbnN0IHJvdXRlSWQgPSBwYXJhbXMubmV4dC5nZXRGb3JtYXR0ZWRSb3V0ZUlkKCk7XG4gICAgICBjb25zdCByZWxhdGl2ZVBhdGggPSAhIXBhcmFtcy5wcmV2aW91cy5oYXNSb3V0ZUlkKCkgPyAnLi4nIDogJy4nO1xuICAgICAgY29uc3QgcGF0aCA9IHJvdXRlSWQgPyBbcmVsYXRpdmVQYXRoLCByb3V0ZUlkLCBwYXJhbXMubmV4dC5nZXRGb3JtYXR0ZWRQYXJhbWV0ZXJzKCldIDogW3JlbGF0aXZlUGF0aCwgcGFyYW1zLm5leHQuZ2V0Rm9ybWF0dGVkUGFyYW1ldGVycygpXTtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKHBhdGgsIHtcbiAgICAgICAgcmVsYXRpdmVUbzogcGFyYW1zLnBsYWNlQ29tcG9uZW50LmFjdGl2YXRlZFJvdXRlXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9wbGFjZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFrQixNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFFL0Q7SUFHa0Msd0NBQWdCO0lBSWhELHNCQUFzQixNQUFjLEVBQVksUUFBa0I7UUFBbEUsWUFDRSxpQkFBTyxTQUNSO1FBRnFCLFlBQU0sR0FBTixNQUFNLENBQVE7UUFBWSxjQUFRLEdBQVIsUUFBUSxDQUFVO1FBRjFELG1CQUFhLEdBQUcsSUFBSSxnQkFBZ0IsRUFBa0IsQ0FBQzs7SUFJL0QsQ0FBQztJQUVELHNCQUFJLHNDQUFZOzs7O1FBQWhCO1lBQ0UsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUNyQyxDQUFDOzs7T0FBQTs7Ozs7SUFHRCxpQ0FBVTs7OztJQUFWLFVBQVcsS0FBcUI7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7Ozs7SUFHRCxtQ0FBWTs7OztJQUFaLFVBQWEsS0FBcUI7UUFDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7Ozs7SUFHRCxtREFBNEI7Ozs7SUFBNUIsVUFBNkIsTUFLNUI7UUFDQyxnQ0FBZ0M7UUFDaEMsSUFBSSxNQUFNLENBQUMsV0FBVyxFQUFFOztnQkFDaEIsT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7O2dCQUMzQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRzs7Z0JBQzFELElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzNJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtnQkFDekIsVUFBVSxFQUFFLE1BQU0sQ0FBQyxjQUFjO2FBQ2xDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7Ozs7SUFHSywrQkFBUTs7OztJQUFkLFVBQWUsUUFBMkI7OztnQkFDeEMsc0JBQU8sUUFBUSxFQUFDOzs7S0FDakI7O2dCQTlDRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQVR3QixNQUFNO2dCQURWLFFBQVE7OztJQXdCM0I7UUFEQyxLQUFLLEVBQUU7O2lEQUNVLGNBQWM7O2tEQUUvQjtJQUdEO1FBREMsS0FBSyxFQUFFOztpREFDWSxjQUFjOztvREFFakM7SUFHRDtRQURDLEtBQUssRUFBRTs7OztvRUFnQlA7SUFHRDtRQURDLEtBQUssRUFBRTs7aURBQ2lCLGlCQUFpQjs7Z0RBRXpDO3VCQXRESDtDQXlEQyxBQWpERCxDQUdrQyxnQkFBZ0IsR0E4Q2pEO1NBOUNZLFlBQVk7Ozs7OztJQUV2QixxQ0FBK0Q7Ozs7O0lBRW5ELDhCQUF3Qjs7Ozs7SUFBRSxnQ0FBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBHYXJiYWdlQ29sbGVjdG9yLCBNdXRhYmxlTGlzdE1vZGVsLCBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50TGlrZSB9IGZyb20gJy4vcGxhY2UtY29tcG9uZW50LWxpa2UnO1xuaW1wb3J0IHsgUGxhY2VVcGRhdGVzU2VydmljZSB9IGZyb20gJy4vcGxhY2UtdXBkYXRlcy1zZXJ2aWNlJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU25hcHNob3QgfSBmcm9tICcuL3JvdXRlL3BhcmFtZXRlci1zbmFwc2hvdCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlU2VydmljZSBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3IgaW1wbGVtZW50cyBQbGFjZVVwZGF0ZXNTZXJ2aWNlIHtcblxuICBwcml2YXRlIF9hY3RpdmVQbGFjZXMgPSBuZXcgTXV0YWJsZUxpc3RNb2RlbDxQbGFjZUNvbXBvbmVudD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZVBsYWNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlUGxhY2VzLnJlYWRvbmx5O1xuICB9XG5cbiAgQFRyYWNlKClcbiAgb25BY3RpdmF0ZShwbGFjZTogUGxhY2VDb21wb25lbnQpIHtcbiAgICB0aGlzLl9hY3RpdmVQbGFjZXMucHVzaChwbGFjZSk7XG4gIH1cblxuICBAVHJhY2UoKVxuICBvbkRlYWN0aXZhdGUocGxhY2U6IFBsYWNlQ29tcG9uZW50KSB7XG4gICAgdGhpcy5fYWN0aXZlUGxhY2VzLnJlbW92ZShwbGFjZSk7XG4gIH1cblxuICBAVHJhY2UoKVxuICBub3RpZnlSb3V0ZVBhcmFtZXRlcnNDaGFuZ2VkKHBhcmFtczoge1xuICAgIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBuZXh0OiBQYXJhbWV0ZXJTbmFwc2hvdCxcbiAgICBwcmV2aW91czogUGFyYW1ldGVyU25hcHNob3QsXG4gICAgdXBkYXRlUm91dGU6IGJvb2xlYW5cbiAgfSkge1xuICAgIC8vIFdlIHVwZGF0ZSB0aGUgcm91dGVyIHN0YXRlLi4uXG4gICAgaWYgKHBhcmFtcy51cGRhdGVSb3V0ZSkge1xuICAgICAgY29uc3Qgcm91dGVJZCA9IHBhcmFtcy5uZXh0LmdldEZvcm1hdHRlZFJvdXRlSWQoKTtcbiAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9ICEhcGFyYW1zLnByZXZpb3VzLmhhc1JvdXRlSWQoKSA/ICcuLicgOiAnLic7XG4gICAgICBjb25zdCBwYXRoID0gcm91dGVJZCA/IFtyZWxhdGl2ZVBhdGgsIHJvdXRlSWQsIHBhcmFtcy5uZXh0LmdldEZvcm1hdHRlZFBhcmFtZXRlcnMoKV0gOiBbcmVsYXRpdmVQYXRoLCBwYXJhbXMubmV4dC5nZXRGb3JtYXR0ZWRQYXJhbWV0ZXJzKCldO1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUocGF0aCwge1xuICAgICAgICByZWxhdGl2ZVRvOiBwYXJhbXMuYWN0aXZhdGVkUm91dGVcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIEBUcmFjZSgpXG4gIGFzeW5jIHNhbml0aXNlKHNuYXBzaG90OiBQYXJhbWV0ZXJTbmFwc2hvdCk6IFByb21pc2U8UGFyYW1ldGVyU25hcHNob3Q+IHtcbiAgICByZXR1cm4gc25hcHNob3Q7XG4gIH1cblxuXG59XG4iXX0=
@@ -0,0 +1,85 @@
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 { Trace } from '@coolon/pectin';
7
+ import * as _ from 'lodash';
8
+ /**
9
+ * @template T, S
10
+ */
11
+ var DefaultParameterSanitiser = /** @class */ (function () {
12
+ function DefaultParameterSanitiser(def, placeService, options) {
13
+ this.def = def;
14
+ this.placeService = placeService;
15
+ this.remember = _.isNil(options.remember) ? false : options.remember;
16
+ this.defaultValue = _.isNil(options.defaultValue) ? null : options.defaultValue;
17
+ }
18
+ /**
19
+ * @param {?} value
20
+ * @param {?} visit
21
+ * @return {?}
22
+ */
23
+ DefaultParameterSanitiser.prototype.sanitise = /**
24
+ * @param {?} value
25
+ * @param {?} visit
26
+ * @return {?}
27
+ */
28
+ function (value, visit) {
29
+ if (this.isBlank(value)) {
30
+ if (this.remember) {
31
+ // value = null;
32
+ }
33
+ return this.isBlank(value) && !_.isNil(this.defaultValue) ? this.defaultValue : value;
34
+ }
35
+ else {
36
+ return value;
37
+ }
38
+ };
39
+ /**
40
+ * @private
41
+ * @param {?} value
42
+ * @return {?}
43
+ */
44
+ DefaultParameterSanitiser.prototype.isBlank = /**
45
+ * @private
46
+ * @param {?} value
47
+ * @return {?}
48
+ */
49
+ function (value) {
50
+ /** @type {?} */
51
+ var isNil = _.isNil(value);
52
+ return this.def.isArray ? !isNil || value['length'] < 1 : isNil;
53
+ };
54
+ tslib_1.__decorate([
55
+ Trace(),
56
+ tslib_1.__metadata("design:type", Function),
57
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
58
+ tslib_1.__metadata("design:returntype", Object)
59
+ ], DefaultParameterSanitiser.prototype, "sanitise", null);
60
+ return DefaultParameterSanitiser;
61
+ }());
62
+ export { DefaultParameterSanitiser };
63
+ if (false) {
64
+ /**
65
+ * @type {?}
66
+ * @private
67
+ */
68
+ DefaultParameterSanitiser.prototype.remember;
69
+ /**
70
+ * @type {?}
71
+ * @private
72
+ */
73
+ DefaultParameterSanitiser.prototype.defaultValue;
74
+ /**
75
+ * @type {?}
76
+ * @private
77
+ */
78
+ DefaultParameterSanitiser.prototype.def;
79
+ /**
80
+ * @type {?}
81
+ * @private
82
+ */
83
+ DefaultParameterSanitiser.prototype.placeService;
84
+ }
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wYXJhbWV0ZXItc2FuaXRpc2VyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3JvdXRlL2RlZmF1bHQtcGFyYW1ldGVyLXNhbml0aXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQzs7OztBQU01QjtJQUtFLG1DQUFvQixHQUE4QixFQUFtQixZQUEwQixFQUFFLE9BQXNDO1FBQW5ILFFBQUcsR0FBSCxHQUFHLENBQTJCO1FBQW1CLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzdGLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUNyRSxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7SUFDbEYsQ0FBQzs7Ozs7O0lBR0QsNENBQVE7Ozs7O0lBQVIsVUFBUyxLQUFRLEVBQUUsS0FBWTtRQUM3QixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNqQixnQkFBZ0I7YUFDakI7WUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1NBRXZGO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQzs7Ozs7O0lBRU8sMkNBQU87Ozs7O0lBQWYsVUFBZ0IsS0FBUTs7WUFDaEIsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNsRSxDQUFDO0lBZkQ7UUFEQyxLQUFLLEVBQUU7Ozs7NkRBV1A7SUFNSCxnQ0FBQztDQUFBLEFBM0JELElBMkJDO1NBM0JZLHlCQUF5Qjs7Ozs7O0lBRXBDLDZDQUEwQjs7Ozs7SUFDMUIsaURBQXdCOzs7OztJQUVaLHdDQUFzQzs7Ozs7SUFBRSxpREFBMkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFBsYWNlU2VydmljZSB9IGZyb20gJy4uL3BsYWNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVmlzaXQgfSBmcm9tICcuLi92aXNpdCc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJEZWZpbml0aW9uIH0gZnJvbSAnLi9wYXJhbWV0ZXItZGVmaW5pdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTYW5pdGlzZXIgfSBmcm9tICcuL3BhcmFtZXRlci1zYW5pdGlzZXInO1xuXG5leHBvcnQgY2xhc3MgRGVmYXVsdFBhcmFtZXRlclNhbml0aXNlcjxULCBTPiBpbXBsZW1lbnRzIFBhcmFtZXRlclNhbml0aXNlcjxTPiB7XG5cbiAgcHJpdmF0ZSByZW1lbWJlcjogYm9vbGVhbjtcbiAgcHJpdmF0ZSBkZWZhdWx0VmFsdWU6IFM7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkZWY6IFBhcmFtZXRlckRlZmluaXRpb248VCwgUz4sIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VTZXJ2aWNlOiBQbGFjZVNlcnZpY2UsIG9wdGlvbnM6IFBhcmFtZXRlclNhbml0aXNlci5PcHRpb25zPFM+KSB7XG4gICAgdGhpcy5yZW1lbWJlciA9IF8uaXNOaWwob3B0aW9ucy5yZW1lbWJlcikgPyBmYWxzZSA6IG9wdGlvbnMucmVtZW1iZXI7XG4gICAgdGhpcy5kZWZhdWx0VmFsdWUgPSBfLmlzTmlsKG9wdGlvbnMuZGVmYXVsdFZhbHVlKSA/IG51bGwgOiBvcHRpb25zLmRlZmF1bHRWYWx1ZTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIHNhbml0aXNlKHZhbHVlOiBTLCB2aXNpdDogVmlzaXQpOiBQcm9taXNlPFM+IHwgUyB7XG4gICAgaWYgKHRoaXMuaXNCbGFuayh2YWx1ZSkpIHtcbiAgICAgIGlmICh0aGlzLnJlbWVtYmVyKSB7XG4gICAgICAgIC8vIHZhbHVlID0gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmlzQmxhbmsodmFsdWUpICYmICFfLmlzTmlsKHRoaXMuZGVmYXVsdFZhbHVlKSA/IHRoaXMuZGVmYXVsdFZhbHVlIDogdmFsdWU7XG5cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNCbGFuayh2YWx1ZTogUykge1xuICAgIGNvbnN0IGlzTmlsID0gXy5pc05pbCh2YWx1ZSk7XG4gICAgcmV0dXJuIHRoaXMuZGVmLmlzQXJyYXkgPyAhaXNOaWwgfHwgdmFsdWVbJ2xlbmd0aCddIDwgMSA6IGlzTmlsO1xuICB9XG59XG4iXX0=