@coolon/angular-ui-powerups 0.0.44 → 0.0.46

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 (51) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +545 -218
  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.metadata.json +1 -1
  6. package/esm2015/coolon-angular-ui-powerups.js +2 -2
  7. package/esm2015/index.js +2 -2
  8. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +17 -12
  9. package/esm2015/lib/place/guards/place-route.guard.js +4 -4
  10. package/esm2015/lib/place/index.js +1 -2
  11. package/esm2015/lib/place/place-component.js +2 -2
  12. package/esm2015/lib/place/place-history.js +29 -6
  13. package/esm2015/lib/place/place-router.js +38 -23
  14. package/esm2015/lib/place/route/parameter-decorators.js +1 -1
  15. package/esm2015/lib/place/route/parameter-definition.class.js +92 -9
  16. package/esm2015/lib/place/route/parameter-sanitiser.js +4 -3
  17. package/esm2015/lib/place/route/parameter-snapshot.js +221 -23
  18. package/esm2015/lib/place/route/route-parameter-sanitiser.js +2 -2
  19. package/esm2015/lib/place/visit.js +3 -3
  20. package/esm2015/public_api.js +2 -2
  21. package/esm5/coolon-angular-ui-powerups.js +2 -2
  22. package/esm5/index.js +2 -2
  23. package/esm5/lib/place/components/place-outlet/place-outlet.component.js +17 -12
  24. package/esm5/lib/place/guards/place-route.guard.js +4 -4
  25. package/esm5/lib/place/index.js +1 -2
  26. package/esm5/lib/place/place-component.js +2 -2
  27. package/esm5/lib/place/place-history.js +39 -6
  28. package/esm5/lib/place/place-router.js +45 -28
  29. package/esm5/lib/place/route/parameter-decorators.js +1 -1
  30. package/esm5/lib/place/route/parameter-definition.class.js +104 -9
  31. package/esm5/lib/place/route/parameter-sanitiser.js +4 -3
  32. package/esm5/lib/place/route/parameter-snapshot.js +276 -23
  33. package/esm5/lib/place/route/route-parameter-sanitiser.js +2 -2
  34. package/esm5/lib/place/visit.js +3 -3
  35. package/esm5/public_api.js +2 -2
  36. package/fesm2015/coolon-angular-ui-powerups.js +453 -198
  37. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  38. package/fesm5/coolon-angular-ui-powerups.js +547 -219
  39. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  40. package/lib/place/components/place-outlet/place-outlet.component.d.ts +0 -1
  41. package/lib/place/index.d.ts +0 -1
  42. package/lib/place/place-history.d.ts +3 -0
  43. package/lib/place/place-router.d.ts +4 -3
  44. package/lib/place/route/parameter-definition.class.d.ts +12 -2
  45. package/lib/place/route/parameter-sanitiser.d.ts +3 -2
  46. package/lib/place/route/parameter-snapshot.d.ts +11 -8
  47. package/lib/place/visit.d.ts +2 -2
  48. package/package.json +1 -1
  49. package/esm2015/lib/place/route/default-parameter-sanitiser.js +0 -66
  50. package/esm5/lib/place/route/default-parameter-sanitiser.js +0 -73
  51. package/lib/place/route/default-parameter-sanitiser.d.ts +0 -11
@@ -4,6 +4,8 @@
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
6
  import { Opts } from '@coolon/typescript-utilities';
7
+ import _ from 'lodash';
8
+ import { PlaceHistory } from '../place-history';
7
9
  /**
8
10
  * @abstract
9
11
  * @template T, S
@@ -19,11 +21,8 @@ ParameterDefinition = /** @class */ (function () {
19
21
  /** @type {?} */
20
22
  var opts = Opts.get(options);
21
23
  this.name = opts.getOptional('as', propertyName);
22
- // this.sanitiser = new DefaultParameterSanitiser(
23
- // this,
24
- // opts.getOptional('remember', false),
25
- // opts.getOptional('defaultValue', null)
26
- // );
24
+ this.remember = opts.getOptional('remember', false);
25
+ this.defaultValue = opts.getOptional('defaultValue', null);
27
26
  }
28
27
  /**
29
28
  * @param {?} injector
@@ -34,7 +33,12 @@ ParameterDefinition = /** @class */ (function () {
34
33
  * @return {?}
35
34
  */
36
35
  function (injector) {
37
- return this.sanitiser;
36
+ if (this.remember || !_.isNil(this.defaultValue)) {
37
+ return new ParameterDefinition.DefaultParameterSanitiser(this.remember, this.defaultValue, injector.get(PlaceHistory));
38
+ }
39
+ else {
40
+ return null;
41
+ }
38
42
  };
39
43
  return ParameterDefinition;
40
44
  }());
@@ -50,8 +54,16 @@ if (false) {
50
54
  ParameterDefinition.prototype.isArray;
51
55
  /** @type {?} */
52
56
  ParameterDefinition.prototype.name;
53
- /** @type {?} */
54
- ParameterDefinition.prototype.sanitiser;
57
+ /**
58
+ * @type {?}
59
+ * @private
60
+ */
61
+ ParameterDefinition.prototype.remember;
62
+ /**
63
+ * @type {?}
64
+ * @private
65
+ */
66
+ ParameterDefinition.prototype.defaultValue;
55
67
  /** @type {?} */
56
68
  ParameterDefinition.prototype.propertyName;
57
69
  /** @type {?} */
@@ -143,5 +155,88 @@ if (false) {
143
155
  /** @type {?} */
144
156
  ArrayParameter.prototype.isArray;
145
157
  }
158
+ /**
159
+ * @template T, S
160
+ */
161
+ var /**
162
+ * @template T, S
163
+ */
164
+ DefaultParameterSanitiser = /** @class */ (function () {
165
+ function DefaultParameterSanitiser(remember, defaultValue, placeHistory) {
166
+ this.remember = remember;
167
+ this.defaultValue = defaultValue;
168
+ this.placeHistory = placeHistory;
169
+ }
170
+ /**
171
+ * @param {?} parameterDef
172
+ * @param {?} value
173
+ * @param {?=} visit
174
+ * @return {?}
175
+ */
176
+ DefaultParameterSanitiser.prototype.sanitise = /**
177
+ * @param {?} parameterDef
178
+ * @param {?} value
179
+ * @param {?=} visit
180
+ * @return {?}
181
+ */
182
+ function (parameterDef, value, visit) {
183
+ var _this = this;
184
+ if (this.isBlank(parameterDef, value)) {
185
+ if (this.remember) {
186
+ /** @type {?} */
187
+ var visits = this.placeHistory.getHistory(visit.placeDefinition);
188
+ value = visits.map((/**
189
+ * @param {?} v
190
+ * @return {?}
191
+ */
192
+ function (v) { return v.getValueOf(parameterDef); }))
193
+ .filter((/**
194
+ * @param {?} v
195
+ * @return {?}
196
+ */
197
+ function (v) { return !_.isNil(v); }))
198
+ .find((/**
199
+ * @param {?} v
200
+ * @return {?}
201
+ */
202
+ function (v) { return !_this.isBlank(parameterDef, v); }));
203
+ }
204
+ value = this.isBlank(parameterDef, value) ? this.defaultValue : value;
205
+ console.log(parameterDef.name + " is blank, returning: " + value);
206
+ return value;
207
+ }
208
+ else {
209
+ console.log(parameterDef.name + " is not blank");
210
+ return value;
211
+ }
212
+ };
213
+ /**
214
+ * @private
215
+ * @param {?} def
216
+ * @param {?} value
217
+ * @return {?}
218
+ */
219
+ DefaultParameterSanitiser.prototype.isBlank = /**
220
+ * @private
221
+ * @param {?} def
222
+ * @param {?} value
223
+ * @return {?}
224
+ */
225
+ function (def, value) {
226
+ /** @type {?} */
227
+ var isNil = _.isNil(value);
228
+ return isNil ? true : def.isArray ? value['length'] < 1 : false;
229
+ };
230
+ return DefaultParameterSanitiser;
231
+ }());
232
+ ParameterDefinition.DefaultParameterSanitiser = DefaultParameterSanitiser;
233
+ if (false) {
234
+ /** @type {?} */
235
+ DefaultParameterSanitiser.prototype.remember;
236
+ /** @type {?} */
237
+ DefaultParameterSanitiser.prototype.defaultValue;
238
+ /** @type {?} */
239
+ DefaultParameterSanitiser.prototype.placeHistory;
240
+ }
146
241
  })(ParameterDefinition || (ParameterDefinition = {}));
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7O0FBS3BEOzs7OztJQU9FLDZCQUFxQixZQUFvQixFQUFXLElBQXNCLEVBQUUsT0FBdUM7UUFBOUYsaUJBQVksR0FBWixZQUFZLENBQVE7UUFBVyxTQUFJLEdBQUosSUFBSSxDQUFrQjs7WUFDbEUsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDakQsa0RBQWtEO1FBQ2xELFVBQVU7UUFDVix5Q0FBeUM7UUFDekMsMkNBQTJDO1FBQzNDLEtBQUs7SUFDUCxDQUFDOzs7OztJQUVELDBDQUFZOzs7O0lBQVosVUFBYSxRQUFpQjtRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNILDBCQUFDO0FBQUQsQ0FBQyxBQXBCRCxJQW9CQzs7Ozs7Ozs7SUFuQkMsd0NBQXFDOztJQUNyQyxzQ0FBbUM7O0lBRW5DLG1DQUFzQjs7SUFDdEIsd0NBQW9EOztJQUV4QywyQ0FBNkI7O0lBQUUsbUNBQStCOztBQWU1RSxXQUFpQixtQkFBbUI7Ozs7O0lBRWxDLHNCQU1DOzs7O1FBTEMscUJBQVk7O1FBQ1osMkJBQW1COztRQUNuQiwyQkFBbUI7O1FBQ25CLCtCQUFpQjs7Ozs7SUFJbkI7Ozs7UUFBZ0MsbUNBQXNCO1FBQXREO1lBQUEscUVBR0M7WUFGVSxlQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLGFBQU8sR0FBRyxLQUFLLENBQUM7O1FBQzNCLENBQUM7UUFBRCxjQUFDO0lBQUQsQ0FBQyxBQUhELENBQWdDLG1CQUFtQixHQUdsRDtJQUhZLDJCQUFPLFVBR25CLENBQUE7OztRQUZDLDRCQUEwQjs7UUFDMUIsMEJBQXlCOzs7OztJQUczQjs7OztRQUF1QywwQ0FBc0I7UUFBN0Q7WUFBQSxxRUFHQztZQUZVLGVBQVMsR0FBRyxLQUFLLENBQUM7WUFDbEIsYUFBTyxHQUFHLEtBQUssQ0FBQzs7UUFDM0IsQ0FBQztRQUFELHFCQUFDO0lBQUQsQ0FBQyxBQUhELENBQXVDLG1CQUFtQixHQUd6RDtJQUhZLGtDQUFjLGlCQUcxQixDQUFBOzs7UUFGQyxtQ0FBMkI7O1FBQzNCLGlDQUF5Qjs7Ozs7SUFHM0I7Ozs7UUFBdUMsMENBQTJCO1FBQWxFO1lBQUEscUVBR0M7WUFGVSxlQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ2xCLGFBQU8sR0FBRyxJQUFJLENBQUM7O1FBQzFCLENBQUM7UUFBRCxxQkFBQztJQUFELENBQUMsQUFIRCxDQUF1QyxtQkFBbUIsR0FHekQ7SUFIWSxrQ0FBYyxpQkFHMUIsQ0FBQTs7O1FBRkMsbUNBQTJCOztRQUMzQixpQ0FBd0I7O0FBSTVCLENBQUMsRUExQmdCLG1CQUFtQixLQUFuQixtQkFBbUIsUUEwQm5DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9wdHMgfSBmcm9tICdAY29vbG9uL3R5cGVzY3JpcHQtdXRpbGl0aWVzJztcbmltcG9ydCB7IERlZmF1bHRQYXJhbWV0ZXJTYW5pdGlzZXIgfSBmcm9tICcuL2RlZmF1bHQtcGFyYW1ldGVyLXNhbml0aXNlcic7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTYW5pdGlzZXIgfSBmcm9tICcuL3BhcmFtZXRlci1zYW5pdGlzZXInO1xuaW1wb3J0IHsgUGFyYW1ldGVyVHlwZSB9IGZyb20gJy4vcGFyYW1ldGVyLXR5cGUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGFyYW1ldGVyRGVmaW5pdGlvbjxULCBTID0gVD4ge1xuICBhYnN0cmFjdCByZWFkb25seSBpc1JvdXRlSWQ6IGJvb2xlYW47XG4gIGFic3RyYWN0IHJlYWRvbmx5IGlzQXJyYXk6IGJvb2xlYW47XG5cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBzYW5pdGlzZXI6IERlZmF1bHRQYXJhbWV0ZXJTYW5pdGlzZXI8VCwgUz47XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgcHJvcGVydHlOYW1lOiBzdHJpbmcsIHJlYWRvbmx5IHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM6IFBhcmFtZXRlckRlZmluaXRpb24uT3B0aW9uczxTPikge1xuICAgIGNvbnN0IG9wdHMgPSBPcHRzLmdldChvcHRpb25zKTtcbiAgICB0aGlzLm5hbWUgPSBvcHRzLmdldE9wdGlvbmFsKCdhcycsIHByb3BlcnR5TmFtZSk7XG4gICAgLy8gdGhpcy5zYW5pdGlzZXIgPSBuZXcgRGVmYXVsdFBhcmFtZXRlclNhbml0aXNlcihcbiAgICAvLyAgIHRoaXMsXG4gICAgLy8gICBvcHRzLmdldE9wdGlvbmFsKCdyZW1lbWJlcicsIGZhbHNlKSxcbiAgICAvLyAgIG9wdHMuZ2V0T3B0aW9uYWwoJ2RlZmF1bHRWYWx1ZScsIG51bGwpXG4gICAgLy8gKTtcbiAgfVxuXG4gIGdldFNhbml0aXNlcihpbmplY3RvcjpJbmplY3Rvcik6UGFyYW1ldGVyU2FuaXRpc2VyPFM+IHtcbiAgICByZXR1cm4gdGhpcy5zYW5pdGlzZXI7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQYXJhbWV0ZXJEZWZpbml0aW9uIHtcblxuICBleHBvcnQgaW50ZXJmYWNlIE9wdGlvbnM8VD4ge1xuICAgIGFzPzogc3RyaW5nO1xuICAgIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgICByZW1lbWJlcj86IGJvb2xlYW47XG4gICAgZGVmYXVsdFZhbHVlPzogVDtcbiAgICAvLyBzYW5pdGlzZXI/OiBDb25zdHJ1Y3RhYmxlPFBhcmFtZXRlclNhbml0aXNlcjxUPj4gfCBQYXJhbWV0ZXJTYW5pdGlzZXIuT3B0aW9uczxUPjtcbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBSb3V0ZUlkPFQ+IGV4dGVuZHMgUGFyYW1ldGVyRGVmaW5pdGlvbjxUPiB7XG4gICAgcmVhZG9ubHkgaXNSb3V0ZUlkID0gdHJ1ZTtcbiAgICByZWFkb25seSBpc0FycmF5ID0gZmFsc2U7XG4gIH1cblxuICBleHBvcnQgY2xhc3MgVmFsdWVQYXJhbWV0ZXI8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+IHtcbiAgICByZWFkb25seSBpc1JvdXRlSWQgPSBmYWxzZTtcbiAgICByZWFkb25seSBpc0FycmF5ID0gZmFsc2U7XG4gIH1cblxuICBleHBvcnQgY2xhc3MgQXJyYXlQYXJhbWV0ZXI8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFRbXT4ge1xuICAgIHJlYWRvbmx5IGlzUm91dGVJZCA9IGZhbHNlO1xuICAgIHJlYWRvbmx5IGlzQXJyYXkgPSB0cnVlO1xuICB9XG5cblxufVxuIl19
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFNaEQ7Ozs7O0lBUUUsNkJBQXFCLFlBQW9CLEVBQVcsSUFBc0IsRUFBRSxPQUF1QztRQUE5RixpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUFXLFNBQUksR0FBSixJQUFJLENBQWtCOztZQUNsRSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQzs7Ozs7SUFFRCwwQ0FBWTs7OztJQUFaLFVBQWEsUUFBa0I7UUFDN0IsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDaEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLFlB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QUFDLEdBQUcsQ0FBSSxZQUFZLENBQUMsSUFBSSxrQkFBZSxDQUFDLENBQUM7Z0JBQ2pELE9BQU8sS0FBSyxDQUFDO2FBQ2Q7UUFDSCxDQUFDOzs7Ozs7O1FBRU8sMkNBQU87Ozs7OztRQUFmLFVBQWdCLEdBQThCLEVBQUUsS0FBUTs7Z0JBQ2hELEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUM1QixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDbEUsQ0FBQztRQUNILGdDQUFDO0lBQUQsQ0FBQyxBQTFCRCxJQTBCQztJQTFCWSw2Q0FBeUIsNEJBMEJyQyxDQUFBOzs7UUF4QmEsNkNBQTBCOztRQUFFLGlEQUF3Qjs7UUFBRSxpREFBbUM7O0FBMEJ6RyxDQUFDLEVBdERnQixtQkFBbUIsS0FBbkIsbUJBQW1CLFFBc0RuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPcHRzIH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgUGxhY2VIaXN0b3J5IH0gZnJvbSAnLi4vcGxhY2UtaGlzdG9yeSc7XG5pbXBvcnQgeyBWaXNpdCB9IGZyb20gJy4uL3Zpc2l0JztcbmltcG9ydCB7IFBhcmFtZXRlclNhbml0aXNlciB9IGZyb20gJy4vcGFyYW1ldGVyLXNhbml0aXNlcic7XG5pbXBvcnQgeyBQYXJhbWV0ZXJUeXBlIH0gZnJvbSAnLi9wYXJhbWV0ZXItdHlwZSc7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhcmFtZXRlckRlZmluaXRpb248VCwgUyA9IFQ+IHtcbiAgYWJzdHJhY3QgcmVhZG9ubHkgaXNSb3V0ZUlkOiBib29sZWFuO1xuICBhYnN0cmFjdCByZWFkb25seSBpc0FycmF5OiBib29sZWFuO1xuXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZW1lbWJlcjogYm9vbGVhbjtcbiAgcHJpdmF0ZSBkZWZhdWx0VmFsdWU6IFM7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgcHJvcGVydHlOYW1lOiBzdHJpbmcsIHJlYWRvbmx5IHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM6IFBhcmFtZXRlckRlZmluaXRpb24uT3B0aW9uczxTPikge1xuICAgIGNvbnN0IG9wdHMgPSBPcHRzLmdldChvcHRpb25zKTtcbiAgICB0aGlzLm5hbWUgPSBvcHRzLmdldE9wdGlvbmFsKCdhcycsIHByb3BlcnR5TmFtZSk7XG4gICAgdGhpcy5yZW1lbWJlciA9IG9wdHMuZ2V0T3B0aW9uYWwoJ3JlbWVtYmVyJywgZmFsc2UpO1xuICAgIHRoaXMuZGVmYXVsdFZhbHVlID0gb3B0cy5nZXRPcHRpb25hbCgnZGVmYXVsdFZhbHVlJywgbnVsbCk7XG4gIH1cblxuICBnZXRTYW5pdGlzZXIoaW5qZWN0b3I6IEluamVjdG9yKTogUGFyYW1ldGVyU2FuaXRpc2VyPFM+IHtcbiAgICBpZiAodGhpcy5yZW1lbWJlciB8fCAhXy5pc05pbCh0aGlzLmRlZmF1bHRWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBuZXcgUGFyYW1ldGVyRGVmaW5pdGlvbi5EZWZhdWx0UGFyYW1ldGVyU2FuaXRpc2VyKHRoaXMucmVtZW1iZXIsIHRoaXMuZGVmYXVsdFZhbHVlLCBpbmplY3Rvci5nZXQoUGxhY2VIaXN0b3J5KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFBhcmFtZXRlckRlZmluaXRpb24ge1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgT3B0aW9uczxUPiB7XG4gICAgYXM/OiBzdHJpbmc7XG4gICAgb3B0aW9uYWw/OiBib29sZWFuO1xuICAgIHJlbWVtYmVyPzogYm9vbGVhbjtcbiAgICBkZWZhdWx0VmFsdWU/OiBUO1xuICAgIC8vIHNhbml0aXNlcj86IENvbnN0cnVjdGFibGU8UGFyYW1ldGVyU2FuaXRpc2VyPFQ+PiB8IFBhcmFtZXRlclNhbml0aXNlci5PcHRpb25zPFQ+O1xuICB9XG5cbiAgZXhwb3J0IGNsYXNzIFJvdXRlSWQ8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+IHtcbiAgICByZWFkb25seSBpc1JvdXRlSWQgPSB0cnVlO1xuICAgIHJlYWRvbmx5IGlzQXJyYXkgPSBmYWxzZTtcbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBWYWx1ZVBhcmFtZXRlcjxUPiBleHRlbmRzIFBhcmFtZXRlckRlZmluaXRpb248VD4ge1xuICAgIHJlYWRvbmx5IGlzUm91dGVJZCA9IGZhbHNlO1xuICAgIHJlYWRvbmx5IGlzQXJyYXkgPSBmYWxzZTtcbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBBcnJheVBhcmFtZXRlcjxUPiBleHRlbmRzIFBhcmFtZXRlckRlZmluaXRpb248VCwgVFtdPiB7XG4gICAgcmVhZG9ubHkgaXNSb3V0ZUlkID0gZmFsc2U7XG4gICAgcmVhZG9ubHkgaXNBcnJheSA9IHRydWU7XG4gIH1cblxuXG4gIGV4cG9ydCBjbGFzcyBEZWZhdWx0UGFyYW1ldGVyU2FuaXRpc2VyPFQsIFM+IGltcGxlbWVudHMgUGFyYW1ldGVyU2FuaXRpc2VyPFM+IHtcblxuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHJlbWVtYmVyOiBib29sZWFuLCByZWFkb25seSBkZWZhdWx0VmFsdWU6IFMsIHJlYWRvbmx5IHBsYWNlSGlzdG9yeTogUGxhY2VIaXN0b3J5KSB7XG4gICAgfVxuXG4gICAgc2FuaXRpc2UocGFyYW1ldGVyRGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFM+LCB2YWx1ZTogUywgdmlzaXQ/OiBWaXNpdCk6IFByb21pc2U8Uz4gfCBTIHtcbiAgICAgIGlmICh0aGlzLmlzQmxhbmsocGFyYW1ldGVyRGVmLCB2YWx1ZSkpIHtcbiAgICAgICAgaWYgKHRoaXMucmVtZW1iZXIpIHtcbiAgICAgICAgICBjb25zdCB2aXNpdHMgPSB0aGlzLnBsYWNlSGlzdG9yeS5nZXRIaXN0b3J5KHZpc2l0LnBsYWNlRGVmaW5pdGlvbik7XG4gICAgICAgICAgdmFsdWUgPSB2aXNpdHMubWFwKHYgPT4gdi5nZXRWYWx1ZU9mKHBhcmFtZXRlckRlZikpXG4gICAgICAgICAgICAuZmlsdGVyKHYgPT4gIV8uaXNOaWwodikpXG4gICAgICAgICAgICAuZmluZCh2ID0+ICF0aGlzLmlzQmxhbmsocGFyYW1ldGVyRGVmLCB2KSk7XG4gICAgICAgIH1cbiAgICAgICAgdmFsdWUgPSB0aGlzLmlzQmxhbmsocGFyYW1ldGVyRGVmLCB2YWx1ZSkgPyB0aGlzLmRlZmF1bHRWYWx1ZSA6IHZhbHVlO1xuICAgICAgICBjb25zb2xlLmxvZyhgJHtwYXJhbWV0ZXJEZWYubmFtZX0gaXMgYmxhbmssIHJldHVybmluZzogJHt2YWx1ZX1gKTtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coYCR7cGFyYW1ldGVyRGVmLm5hbWV9IGlzIG5vdCBibGFua2ApO1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0JsYW5rKGRlZjogUGFyYW1ldGVyRGVmaW5pdGlvbjxULCBTPiwgdmFsdWU6IFMpIHtcbiAgICAgIGNvbnN0IGlzTmlsID0gXy5pc05pbCh2YWx1ZSk7XG4gICAgICByZXR1cm4gaXNOaWwgPyB0cnVlIDogZGVmLmlzQXJyYXkgPyB2YWx1ZVsnbGVuZ3RoJ10gPCAxIDogZmFsc2U7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -4,15 +4,16 @@
4
4
  */
5
5
  /**
6
6
  * @record
7
- * @template T
7
+ * @template S
8
8
  */
9
9
  export function ParameterSanitiser() { }
10
10
  if (false) {
11
11
  /**
12
+ * @param {?} parameterDef
12
13
  * @param {?} value
13
14
  * @param {?=} visit
14
15
  * @return {?}
15
16
  */
16
- ParameterSanitiser.prototype.sanitise = function (value, visit) { };
17
+ ParameterSanitiser.prototype.sanitise = function (parameterDef, value, visit) { };
17
18
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNhbml0aXNlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9yb3V0ZS9wYXJhbWV0ZXItc2FuaXRpc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBRUEsd0NBRUM7Ozs7Ozs7SUFEQyxvRUFBa0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaXNpdCB9IGZyb20gJy4uL3Zpc2l0JztcblxuZXhwb3J0IGludGVyZmFjZSBQYXJhbWV0ZXJTYW5pdGlzZXI8VD4ge1xuICBzYW5pdGlzZSh2YWx1ZTogVCwgdmlzaXQ/OiBWaXNpdCk6IFQgfCBQcm9taXNlPFQ+O1xufVxuIl19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNhbml0aXNlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9yb3V0ZS9wYXJhbWV0ZXItc2FuaXRpc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0Esd0NBRUM7Ozs7Ozs7O0lBREMsa0ZBQTZGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlzaXQgfSBmcm9tICcuLi92aXNpdCc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJEZWZpbml0aW9uIH0gZnJvbSAnLi9wYXJhbWV0ZXItZGVmaW5pdGlvbi5jbGFzcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyU2FuaXRpc2VyPFM+IHtcbiAgc2FuaXRpc2UocGFyYW1ldGVyRGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPGFueSwgUz4sIHZhbHVlOiBTLCB2aXNpdD86IFZpc2l0KTogUHJvbWlzZTxTPiB8IFM7XG59XG4iXX0=