@coolon/angular-ui-powerups 0.0.27 → 0.0.29

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 (36) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +99 -83
  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/lib/place/abstract-place-component.js +1 -10
  7. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +8 -3
  8. package/esm2015/lib/place/place-component.js +1 -3
  9. package/esm2015/lib/place/place.decorator.js +17 -6
  10. package/esm2015/lib/place/place.module.js +4 -2
  11. package/esm2015/lib/place/route/parameter-decorators.js +5 -1
  12. package/esm5/lib/place/abstract-place-component.js +1 -10
  13. package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +8 -3
  14. package/esm5/lib/place/place-component.js +1 -3
  15. package/esm5/lib/place/place.decorator.js +23 -6
  16. package/esm5/lib/place/place.module.js +4 -2
  17. package/esm5/lib/place/route/parameter-decorators.js +5 -1
  18. package/fesm2015/coolon-angular-ui-powerups.js +95 -84
  19. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  20. package/fesm5/coolon-angular-ui-powerups.js +98 -81
  21. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  22. package/lib/place/abstract-place-component.d.ts +0 -2
  23. package/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.d.ts +4 -3
  24. package/lib/place/place-component.d.ts +0 -2
  25. package/lib/place/place.decorator.d.ts +7 -2
  26. package/lib/place/route/parameter-decorators.d.ts +2 -0
  27. package/package.json +1 -1
  28. package/schematics/place-routes/index.js +19 -13
  29. package/schematics/place-routes/index.js.map +1 -1
  30. package/schematics/place-routes/place-def.d.ts +8 -5
  31. package/schematics/place-routes/place-def.js +41 -17
  32. package/schematics/place-routes/place-def.js.map +1 -1
  33. package/schematics/place-routes/scanner.d.ts +14 -2
  34. package/schematics/place-routes/scanner.js +58 -13
  35. package/schematics/place-routes/scanner.js.map +1 -1
  36. package/schematics/place-routes/templates/{services/place-router.service.ts.template → place-router.ts.template} +13 -18
@@ -3,7 +3,6 @@
3
3
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
- import { MutableValueModel, UseDelegate } from '@coolon/pectin';
7
6
  import { Memoize } from '@typescript-plus/fast-memoize-decorator';
8
7
  import { DisposableComponent } from '../components/disposable-component';
9
8
  import { Place } from './place.decorator';
@@ -14,8 +13,6 @@ var AbstractPlaceComponent = /** @class */ (function (_super) {
14
13
  var _this = _super.call(this) || this;
15
14
  _this.activatedRoute = activatedRoute;
16
15
  _this.routeBindingMediator = _this.registerDisposable(new RouteParameterBindings(_this, router, activatedRoute));
17
- // See https://coolon.atlassian.net/browse/PEC-59
18
- ((/** @type {?} */ ((/** @type {?} */ (_this.titleModel))))).setDefault(_this.placeConfig.title);
19
16
  return _this;
20
17
  }
21
18
  Object.defineProperty(AbstractPlaceComponent.prototype, "placeConfig", {
@@ -37,10 +34,6 @@ var AbstractPlaceComponent = /** @class */ (function (_super) {
37
34
  function () {
38
35
  return true;
39
36
  };
40
- tslib_1.__decorate([
41
- UseDelegate(),
42
- tslib_1.__metadata("design:type", MutableValueModel)
43
- ], AbstractPlaceComponent.prototype, "titleModel", void 0);
44
37
  tslib_1.__decorate([
45
38
  Memoize(),
46
39
  tslib_1.__metadata("design:type", Place.Descriptor),
@@ -50,8 +43,6 @@ var AbstractPlaceComponent = /** @class */ (function (_super) {
50
43
  }(DisposableComponent));
51
44
  export { AbstractPlaceComponent };
52
45
  if (false) {
53
- /** @type {?} */
54
- AbstractPlaceComponent.prototype.titleModel;
55
46
  /**
56
47
  * @type {?}
57
48
  * @private
@@ -63,4 +54,4 @@ if (false) {
63
54
  */
64
55
  AbstractPlaceComponent.prototype.activatedRoute;
65
56
  }
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL2Fic3RyYWN0LXBsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLE9BQU8sRUFBdUMsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXpFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUxRTtJQUE0QyxrREFBbUI7SUFPN0QsZ0NBQXNCLGNBQThCLEVBQUUsTUFBYztRQUFwRSxZQUNFLGlCQUFPLFNBSVI7UUFMcUIsb0JBQWMsR0FBZCxjQUFjLENBQWdCO1FBRWxELEtBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxzQkFBc0IsQ0FBQyxLQUFJLEVBQUUsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDOUcsaURBQWlEO1FBQ2pELENBQUMsbUJBQUEsbUJBQUEsS0FBSSxDQUFDLFVBQVUsRUFBVyxFQUFnQyxDQUFDLENBQUMsVUFBVSxDQUFDLEtBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7O0lBQ2xHLENBQUM7SUFHRCxzQkFBSSwrQ0FBVzs7OztRQUFmO1lBQ0UsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLG1CQUFBLG1CQUFBLElBQUksQ0FBQyxXQUFXLEVBQU8sRUFBaUMsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7OztPQUFBOzs7O0lBRUQsOENBQWE7OztJQUFiO1FBQ0UsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBbEJEO1FBREMsV0FBVyxFQUFFOzBDQUNPLGlCQUFpQjs4REFBUztJQVkvQztRQURDLE9BQU8sRUFBRTswQ0FDUyxLQUFLLENBQUMsVUFBVTs7NkRBRWxDO0lBTUgsNkJBQUM7Q0FBQSxBQXZCRCxDQUE0QyxtQkFBbUIsR0F1QjlEO1NBdkJZLHNCQUFzQjs7O0lBRWpDLDRDQUMrQzs7Ozs7SUFFL0Msc0RBQXFEOzs7OztJQUV6QyxnREFBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgRGVsZWdhdGluZ1ZhbHVlTW9kZWwsIE11dGFibGVWYWx1ZU1vZGVsLCBVc2VEZWxlZ2F0ZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IE1lbW9pemUgfSBmcm9tICdAdHlwZXNjcmlwdC1wbHVzL2Zhc3QtbWVtb2l6ZS1kZWNvcmF0b3InO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnQgfSBmcm9tICcuL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZSB9IGZyb20gJy4vcGxhY2UuZGVjb3JhdG9yJztcbmltcG9ydCB7IFJvdXRlUGFyYW1ldGVyQmluZGluZ3MgfSBmcm9tICcuL3JvdXRlL3JvdXRlLXBhcmFtZXRlci1iaW5kaW5ncyc7XG5cbmV4cG9ydCBjbGFzcyBBYnN0cmFjdFBsYWNlQ29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIFBsYWNlQ29tcG9uZW50IHtcblxuICBAVXNlRGVsZWdhdGUoKVxuICByZWFkb25seSB0aXRsZU1vZGVsOiBNdXRhYmxlVmFsdWVNb2RlbDxzdHJpbmc+O1xuXG4gIHByaXZhdGUgcm91dGVCaW5kaW5nTWVkaWF0b3I6IFJvdXRlUGFyYW1ldGVyQmluZGluZ3M7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucm91dGVCaW5kaW5nTWVkaWF0b3IgPSB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgUm91dGVQYXJhbWV0ZXJCaW5kaW5ncyh0aGlzLCByb3V0ZXIsIGFjdGl2YXRlZFJvdXRlKSk7XG4gICAgLy8gU2VlIGh0dHBzOi8vY29vbG9uLmF0bGFzc2lhbi5uZXQvYnJvd3NlL1BFQy01OVxuICAgICh0aGlzLnRpdGxlTW9kZWwgYXMgdW5rbm93biBhcyBEZWxlZ2F0aW5nVmFsdWVNb2RlbDxzdHJpbmc+KS5zZXREZWZhdWx0KHRoaXMucGxhY2VDb25maWcudGl0bGUpO1xuICB9XG5cbiAgQE1lbW9pemUoKVxuICBnZXQgcGxhY2VDb25maWcoKTogUGxhY2UuRGVzY3JpcHRvciB7XG4gICAgcmV0dXJuIFBsYWNlLmdldERlc2NyaXB0b3IodGhpcy5jb25zdHJ1Y3RvciBhcyBhbnkgYXMgQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4pO1xuICB9XG5cbiAgY2FuRGVhY3RpdmF0ZSgpOiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxufVxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL2Fic3RyYWN0LXBsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFMUU7SUFBNEMsa0RBQW1CO0lBSTdELGdDQUFzQixjQUE4QixFQUFFLE1BQWM7UUFBcEUsWUFDRSxpQkFBTyxTQUVSO1FBSHFCLG9CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUVsRCxLQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksc0JBQXNCLENBQUMsS0FBSSxFQUFFLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDOztJQUNoSCxDQUFDO0lBR0Qsc0JBQUksK0NBQVc7Ozs7UUFBZjtZQUNFLE9BQU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxtQkFBQSxtQkFBQSxJQUFJLENBQUMsV0FBVyxFQUFPLEVBQWlDLENBQUMsQ0FBQztRQUN2RixDQUFDOzs7T0FBQTs7OztJQUVELDhDQUFhOzs7SUFBYjtRQUNFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQU5EO1FBREMsT0FBTyxFQUFFOzBDQUNTLEtBQUssQ0FBQyxVQUFVOzs2REFFbEM7SUFNSCw2QkFBQztDQUFBLEFBbEJELENBQTRDLG1CQUFtQixHQWtCOUQ7U0FsQlksc0JBQXNCOzs7Ozs7SUFFakMsc0RBQXFEOzs7OztJQUV6QyxnREFBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgRGVsZWdhdGluZ1ZhbHVlTW9kZWwsIE11dGFibGVWYWx1ZU1vZGVsLCBVc2VEZWxlZ2F0ZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IE1lbW9pemUgfSBmcm9tICdAdHlwZXNjcmlwdC1wbHVzL2Zhc3QtbWVtb2l6ZS1kZWNvcmF0b3InO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnQgfSBmcm9tICcuL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZSB9IGZyb20gJy4vcGxhY2UuZGVjb3JhdG9yJztcbmltcG9ydCB7IFJvdXRlUGFyYW1ldGVyQmluZGluZ3MgfSBmcm9tICcuL3JvdXRlL3JvdXRlLXBhcmFtZXRlci1iaW5kaW5ncyc7XG5cbmV4cG9ydCBjbGFzcyBBYnN0cmFjdFBsYWNlQ29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIFBsYWNlQ29tcG9uZW50IHtcblxuICBwcml2YXRlIHJvdXRlQmluZGluZ01lZGlhdG9yOiBSb3V0ZVBhcmFtZXRlckJpbmRpbmdzO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsIHJvdXRlcjogUm91dGVyKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnJvdXRlQmluZGluZ01lZGlhdG9yID0gdGhpcy5yZWdpc3RlckRpc3Bvc2FibGUobmV3IFJvdXRlUGFyYW1ldGVyQmluZGluZ3ModGhpcywgcm91dGVyLCBhY3RpdmF0ZWRSb3V0ZSkpO1xuICB9XG5cbiAgQE1lbW9pemUoKVxuICBnZXQgcGxhY2VDb25maWcoKTogUGxhY2UuRGVzY3JpcHRvciB7XG4gICAgcmV0dXJuIFBsYWNlLmdldERlc2NyaXB0b3IodGhpcy5jb25zdHJ1Y3RvciBhcyBhbnkgYXMgQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4pO1xuICB9XG5cbiAgY2FuRGVhY3RpdmF0ZSgpOiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxufVxuIl19
@@ -6,12 +6,17 @@ import * as tslib_1 from "tslib";
6
6
  import { Component, Input } from '@angular/core';
7
7
  import { Dsl, ListModel, StoreInListModel, UseDelegate } from '@coolon/pectin';
8
8
  import { DisposableComponent } from '../../../components/disposable-component';
9
+ import { Place } from '../../place.decorator';
9
10
  var TabbedPlaceNavigationComponent = /** @class */ (function (_super) {
10
11
  tslib_1.__extends(TabbedPlaceNavigationComponent, _super);
11
12
  function TabbedPlaceNavigationComponent() {
12
13
  var _this = _super.call(this) || this;
13
14
  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;
14
- _this.orderedPlaces = chain(_this.placesModel).sortBy('order');
15
+ _this.orderedPlaces = chain(_this.placesModel).map((/**
16
+ * @param {?} c
17
+ * @return {?}
18
+ */
19
+ function (c) { return Place.getDescriptor(c); })).sortBy('order');
15
20
  return _this;
16
21
  }
17
22
  /**
@@ -25,7 +30,7 @@ var TabbedPlaceNavigationComponent = /** @class */ (function (_super) {
25
30
  TabbedPlaceNavigationComponent.decorators = [
26
31
  { type: Component, args: [{
27
32
  selector: 'angular-ui-powerups-tabbed-place-navigation',
28
- template: "<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDescriptor of orderedPlaces.value\" [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">{{placeDescriptor.title}}</a>\n</nav>\n\n",
33
+ template: "<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDescriptor of orderedPlaces.value\"\n [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">\n <mat-icon *ngIf=\"placeDescriptor.getData('navIcon')\">{{placeDescriptor.getData('navIcon')}}</mat-icon>\n <span>{{placeDescriptor.getData(\"navTitle\", 'missing @Place({data: {navTitle: ??}\\})')}}</span>\n </a>\n</nav>\n",
29
34
  styles: [""]
30
35
  }] }
31
36
  ];
@@ -54,4 +59,4 @@ if (false) {
54
59
  /** @type {?} */
55
60
  TabbedPlaceNavigationComponent.prototype.orderedPlaces;
56
61
  }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQWtCLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRy9FO0lBS29ELDBEQUFtQjtJQVVyRTtRQUFBLFlBQ0UsaUJBQU8sU0FHUjtRQUZPLElBQUEsMkJBQWtGLEVBQWhGLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxrQkFBTSxFQUFFLGNBQUksRUFBRSxnQkFBSyxFQUFFLG9CQUFPLEVBQUUsc0JBQWtDO1FBQ3hGLEtBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7O0lBQy9ELENBQUM7Ozs7SUFFRCxpREFBUTs7O0lBQVI7SUFDQSxDQUFDOztnQkF0QkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELHNUQUF1RDs7aUJBRXhEOzs7Ozt5QkFHRSxLQUFLOzhCQUdMLEtBQUs7O0lBRk47UUFEVSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7O2tFQUNkO0lBRzNCO1FBRFUsV0FBVyxFQUFFOzBDQUNWLFNBQVM7dUVBQW1CO0lBYTNDLHFDQUFDO0NBQUEsQUF4QkQsQ0FLb0QsbUJBQW1CLEdBbUJ0RTtTQW5CWSw4QkFBOEI7OztJQUV6QyxnREFDMkI7O0lBRTNCLHFEQUN5Qzs7SUFFekMsdURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEc2wsIExpc3RNb2RlbCwgTGlzdE1vZGVsQ2hhaW4sIFN0b3JlSW5MaXN0TW9kZWwsIFVzZURlbGVnYXRlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2UgfSBmcm9tICcuLi8uLi9wbGFjZS5kZWNvcmF0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhbmd1bGFyLXVpLXBvd2VydXBzLXRhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBAU3RvcmVJbkxpc3RNb2RlbCgncGxhY2VzTW9kZWwnKVxuICBwbGFjZXM6IFBsYWNlLkRlc2NyaXB0b3JbXTtcblxuICBASW5wdXQoKSBAVXNlRGVsZWdhdGUoKVxuICBwbGFjZXNNb2RlbDogTGlzdE1vZGVsPFBsYWNlLkRlc2NyaXB0b3I+O1xuXG4gIHJlYWRvbmx5IG9yZGVyZWRQbGFjZXM6IExpc3RNb2RlbENoYWluPFBsYWNlLkRlc2NyaXB0b3I+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICB0aGlzLm9yZGVyZWRQbGFjZXMgPSBjaGFpbih0aGlzLnBsYWNlc01vZGVsKS5zb3J0QnkoJ29yZGVyJyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG59XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFpQixHQUFHLEVBQUUsU0FBUyxFQUFrQixnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUM7SUFLb0QsMERBQW1CO0lBVXJFO1FBQUEsWUFDRSxpQkFBTyxTQUdSO1FBRk8sSUFBQSwyQkFBa0YsRUFBaEYsZ0JBQUssRUFBRSxvQkFBTyxFQUFFLGtCQUFNLEVBQUUsY0FBSSxFQUFFLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxzQkFBa0M7UUFDeEYsS0FBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUc7Ozs7UUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQXRCLENBQXNCLEVBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7O0lBQ2hHLENBQUM7Ozs7SUFFRCxpREFBUTs7O0lBQVI7SUFDQSxDQUFDOztnQkF0QkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELDJmQUF1RDs7aUJBRXhEOzs7Ozt5QkFHRSxLQUFLOzhCQUdMLEtBQUs7O0lBRk47UUFEVSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7O2tFQUNEO0lBR3hDO1FBRFUsV0FBVyxFQUFFOzBDQUNWLFNBQVM7dUVBQWdDO0lBYXhELHFDQUFDO0NBQUEsQUF4QkQsQ0FLb0QsbUJBQW1CLEdBbUJ0RTtTQW5CWSw4QkFBOEI7OztJQUV6QyxnREFDd0M7O0lBRXhDLHFEQUNzRDs7SUFFdEQsdURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3RhYmxlLCBEc2wsIExpc3RNb2RlbCwgTGlzdE1vZGVsQ2hhaW4sIFN0b3JlSW5MaXN0TW9kZWwsIFVzZURlbGVnYXRlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wbGFjZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2UgfSBmcm9tICcuLi8uLi9wbGFjZS5kZWNvcmF0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhbmd1bGFyLXVpLXBvd2VydXBzLXRhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBAU3RvcmVJbkxpc3RNb2RlbCgncGxhY2VzTW9kZWwnKVxuICBwbGFjZXM6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+W107XG5cbiAgQElucHV0KCkgQFVzZURlbGVnYXRlKClcbiAgcGxhY2VzTW9kZWw6IExpc3RNb2RlbDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pj47XG5cbiAgcmVhZG9ubHkgb3JkZXJlZFBsYWNlczogTGlzdE1vZGVsQ2hhaW48UGxhY2UuRGVzY3JpcHRvcj47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMub3JkZXJlZFBsYWNlcyA9IGNoYWluKHRoaXMucGxhY2VzTW9kZWwpLm1hcChjID0+IFBsYWNlLmdldERlc2NyaXB0b3IoYykpLnNvcnRCeSgnb3JkZXInKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbn1cbiJdfQ==
@@ -7,11 +7,9 @@
7
7
  */
8
8
  export function PlaceComponent() { }
9
9
  if (false) {
10
- /** @type {?} */
11
- PlaceComponent.prototype.titleModel;
12
10
  /**
13
11
  * @return {?}
14
12
  */
15
13
  PlaceComponent.prototype.canDeactivate = function () { };
16
14
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsb0NBR0M7OztJQUZDLG9DQUE4Qjs7OztJQUM5Qix5REFBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWx1ZU1vZGVsIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBsYWNlQ29tcG9uZW50IHtcbiAgdGl0bGVNb2RlbDpWYWx1ZU1vZGVsPHN0cmluZz47XG4gIGNhbkRlYWN0aXZhdGUoKTogYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj47XG59XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsb0NBRUM7Ozs7O0lBREMseURBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBQbGFjZUNvbXBvbmVudCB7XG4gIGNhbkRlYWN0aXZhdGUoKTogYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj47XG59XG4iXX0=
@@ -28,20 +28,37 @@ export function Place(options) {
28
28
  /** @type {?} */
29
29
  Options.prototype.path;
30
30
  /** @type {?} */
31
- Options.prototype.title;
32
- /** @type {?} */
33
31
  Options.prototype.order;
34
32
  /** @type {?|undefined} */
33
+ Options.prototype.data;
34
+ /** @type {?|undefined} */
35
35
  Options.prototype.authenticate;
36
36
  }
37
37
  var Descriptor = /** @class */ (function () {
38
38
  function Descriptor(placeClass, options) {
39
39
  assert.notNil(options);
40
40
  this.path = options.path;
41
- this.title = options.title;
42
41
  this.order = options.order;
42
+ this.data = options.data;
43
43
  this.authenticate = _.isNil(options.authenticate) || options.authenticate;
44
44
  }
45
+ /**
46
+ * @template T
47
+ * @param {?} key
48
+ * @param {?=} defaultValue
49
+ * @return {?}
50
+ */
51
+ Descriptor.prototype.getData = /**
52
+ * @template T
53
+ * @param {?} key
54
+ * @param {?=} defaultValue
55
+ * @return {?}
56
+ */
57
+ function (key, defaultValue) {
58
+ return this.data ?
59
+ _.isNil(this.data[key]) ? defaultValue : this.data[key] :
60
+ defaultValue;
61
+ };
45
62
  return Descriptor;
46
63
  }());
47
64
  Place.Descriptor = Descriptor;
@@ -51,9 +68,9 @@ export function Place(options) {
51
68
  /** @type {?} */
52
69
  Descriptor.prototype.authenticate;
53
70
  /** @type {?} */
54
- Descriptor.prototype.title;
55
- /** @type {?} */
56
71
  Descriptor.prototype.order;
72
+ /** @type {?} */
73
+ Descriptor.prototype.data;
57
74
  }
58
75
  /**
59
76
  * @param {?} klass
@@ -66,4 +83,4 @@ export function Place(options) {
66
83
  }
67
84
  Place.getDescriptor = getDescriptor;
68
85
  })(Place || (Place = {}));
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLGtCQUFrQixDQUFDOzs7OztBQUcxQixNQUFNLFVBQVUsS0FBSyxDQUFDLE9BQXNCO0lBQzFDOzs7O0lBQU8sVUFBQyxNQUFnQjtRQUN0QixPQUFPLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQyxFQUFDO0FBQ0osQ0FBQztBQUVELFdBQWlCLEtBQUs7Ozs7SUFDcEIsc0JBTUM7Ozs7UUFMQyx1QkFBYTs7UUFDYix3QkFBYzs7UUFDZCx3QkFBYzs7UUFDZCwrQkFBc0I7O0lBSXhCO1FBTUUsb0JBQVksVUFBeUMsRUFBRSxPQUFnQjtZQUNyRSxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztZQUN6QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQztRQUM1RSxDQUFDO1FBQ0gsaUJBQUM7SUFBRCxDQUFDLEFBYkQsSUFhQztJQWJZLGdCQUFVLGFBYXRCLENBQUE7OztRQVpDLDBCQUFzQjs7UUFDdEIsa0NBQStCOztRQUMvQiwyQkFBdUI7O1FBQ3ZCLDJCQUF1Qjs7Ozs7O0lBV3pCLFNBQWdCLGFBQWEsQ0FBQyxLQUFvQzs7WUFDMUQsWUFBWSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQztRQUNoRSxPQUFPLElBQUksVUFBVSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBSGUsbUJBQWEsZ0JBRzVCLENBQUE7QUFDSCxDQUFDLEVBNUJnQixLQUFLLEtBQUwsS0FBSyxRQTRCckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnQsIENvbnN0cnVjdGFibGUgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgJ3JlZmxlY3QtbWV0YWRhdGEnO1xuaW1wb3J0IHsgUGxhY2VDb21wb25lbnQgfSBmcm9tICcuL3BsYWNlLWNvbXBvbmVudCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBQbGFjZShvcHRpb25zOiBQbGFjZS5PcHRpb25zKSB7XG4gIHJldHVybiAodGFyZ2V0OiBGdW5jdGlvbikgPT4ge1xuICAgIFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoJ3BsYWNlLm9wdGlvbnMnLCBvcHRpb25zLCB0YXJnZXQpO1xuICB9O1xufVxuXG5leHBvcnQgbmFtZXNwYWNlIFBsYWNlIHtcbiAgZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBvcmRlcjogbnVtYmVyO1xuICAgIGF1dGhlbnRpY2F0ZT86IGJvb2xlYW4gLy8gZGVmYXVsdHMgdG8gdHJ1ZVxuICAgIC8vIGNoaWxkT2Y/OiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50PlxuICB9XG5cbiAgZXhwb3J0IGNsYXNzIERlc2NyaXB0b3Ige1xuICAgIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcbiAgICByZWFkb25seSBhdXRoZW50aWNhdGU6IGJvb2xlYW47XG4gICAgcmVhZG9ubHkgdGl0bGU6IHN0cmluZztcbiAgICByZWFkb25seSBvcmRlcjogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IocGxhY2VDbGFzczogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4sIG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgICAgIGFzc2VydC5ub3ROaWwob3B0aW9ucyk7XG4gICAgICB0aGlzLnBhdGggPSBvcHRpb25zLnBhdGg7XG4gICAgICB0aGlzLnRpdGxlID0gb3B0aW9ucy50aXRsZTtcbiAgICAgIHRoaXMub3JkZXIgPSBvcHRpb25zLm9yZGVyO1xuICAgICAgdGhpcy5hdXRoZW50aWNhdGUgPSBfLmlzTmlsKG9wdGlvbnMuYXV0aGVudGljYXRlKSB8fCBvcHRpb25zLmF1dGhlbnRpY2F0ZTtcbiAgICB9XG4gIH1cblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvcihrbGFzczogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4pOiBEZXNjcmlwdG9yIHtcbiAgICBjb25zdCBwbGFjZU9wdGlvbnMgPSBSZWZsZWN0LmdldE1ldGFkYXRhKCdwbGFjZS5vcHRpb25zJywga2xhc3MpO1xuICAgIHJldHVybiBuZXcgRGVzY3JpcHRvcihrbGFzcywgcGxhY2VPcHRpb25zKTtcbiAgfVxufVxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLGtCQUFrQixDQUFDOzs7OztBQUcxQixNQUFNLFVBQVUsS0FBSyxDQUFDLE9BQXNCO0lBQzFDOzs7O0lBQU8sVUFBQyxNQUFnQjtRQUN0QixPQUFPLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQyxFQUFDO0FBQ0osQ0FBQztBQUVELFdBQWlCLEtBQUs7Ozs7SUFDcEIsc0JBTUM7Ozs7UUFMQyx1QkFBYTs7UUFDYix3QkFBYzs7UUFDZCx1QkFBMkI7O1FBQzNCLCtCQUFzQjs7SUFJeEI7UUFNRSxvQkFBWSxVQUF5QyxFQUFFLE9BQWdCO1lBQ3JFLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDekIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDO1FBQzVFLENBQUM7Ozs7Ozs7UUFFRCw0QkFBTzs7Ozs7O1FBQVAsVUFBVyxHQUFVLEVBQUUsWUFBZTtZQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN6RCxZQUFZLENBQUM7UUFDakIsQ0FBQztRQUNILGlCQUFDO0lBQUQsQ0FBQyxBQW5CRCxJQW1CQztJQW5CWSxnQkFBVSxhQW1CdEIsQ0FBQTs7O1FBbEJDLDBCQUFzQjs7UUFDdEIsa0NBQStCOztRQUMvQiwyQkFBdUI7O1FBQ3ZCLDBCQUFtQzs7Ozs7O0lBaUJyQyxTQUFnQixhQUFhLENBQUMsS0FBb0M7O1lBQzFELFlBQVksR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUM7UUFDaEUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUhlLG1CQUFhLGdCQUc1QixDQUFBO0FBQ0gsQ0FBQyxFQWxDZ0IsS0FBSyxLQUFMLEtBQUssUUFrQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzZXJ0LCBDb25zdHJ1Y3RhYmxlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0ICdyZWZsZWN0LW1ldGFkYXRhJztcbmltcG9ydCB7IFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi9wbGFjZS1jb21wb25lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gUGxhY2Uob3B0aW9uczogUGxhY2UuT3B0aW9ucykge1xuICByZXR1cm4gKHRhcmdldDogRnVuY3Rpb24pID0+IHtcbiAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKCdwbGFjZS5vcHRpb25zJywgb3B0aW9ucywgdGFyZ2V0KTtcbiAgfTtcbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQbGFjZSB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XG4gICAgcGF0aDogc3RyaW5nLFxuICAgIG9yZGVyOiBudW1iZXI7XG4gICAgZGF0YT86IHtba2V5OnN0cmluZ106IGFueX0sIC8vIGRlZmF1bHRzIHRvIHRydWVcbiAgICBhdXRoZW50aWNhdGU/OiBib29sZWFuIC8vIGRlZmF1bHRzIHRvIHRydWVcbiAgICAvLyBjaGlsZE9mPzogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD5cbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBEZXNjcmlwdG9yIHtcbiAgICByZWFkb25seSBwYXRoOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgYXV0aGVudGljYXRlOiBib29sZWFuO1xuICAgIHJlYWRvbmx5IG9yZGVyOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgZGF0YToge1trZXk6c3RyaW5nXTogYW55fTtcblxuICAgIGNvbnN0cnVjdG9yKHBsYWNlQ2xhc3M6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBvcHRpb25zOiBPcHRpb25zKSB7XG4gICAgICBhc3NlcnQubm90TmlsKG9wdGlvbnMpO1xuICAgICAgdGhpcy5wYXRoID0gb3B0aW9ucy5wYXRoO1xuICAgICAgdGhpcy5vcmRlciA9IG9wdGlvbnMub3JkZXI7XG4gICAgICB0aGlzLmRhdGEgPSBvcHRpb25zLmRhdGE7XG4gICAgICB0aGlzLmF1dGhlbnRpY2F0ZSA9IF8uaXNOaWwob3B0aW9ucy5hdXRoZW50aWNhdGUpIHx8IG9wdGlvbnMuYXV0aGVudGljYXRlO1xuICAgIH1cblxuICAgIGdldERhdGE8VD4oa2V5OnN0cmluZywgZGVmYXVsdFZhbHVlPzpUKTpUIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEgP1xuICAgICAgICBfLmlzTmlsKHRoaXMuZGF0YVtrZXldKSA/IGRlZmF1bHRWYWx1ZSA6IHRoaXMuZGF0YVtrZXldIDpcbiAgICAgICAgZGVmYXVsdFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXREZXNjcmlwdG9yKGtsYXNzOiBDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pik6IERlc2NyaXB0b3Ige1xuICAgIGNvbnN0IHBsYWNlT3B0aW9ucyA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoJ3BsYWNlLm9wdGlvbnMnLCBrbGFzcyk7XG4gICAgcmV0dXJuIG5ldyBEZXNjcmlwdG9yKGtsYXNzLCBwbGFjZU9wdGlvbnMpO1xuICB9XG59XG4iXX0=
@@ -5,6 +5,7 @@
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { NgModule } from '@angular/core';
7
7
  import { MatProgressSpinnerModule } from '@angular/material';
8
+ import { MatIconModule } from '@angular/material/icon';
8
9
  import { MatListModule } from '@angular/material/list';
9
10
  import { MatTabsModule } from '@angular/material/tabs';
10
11
  import { MatTooltipModule } from '@angular/material/tooltip';
@@ -27,7 +28,8 @@ var PlaceModule = /** @class */ (function () {
27
28
  RouterModule,
28
29
  MatTabsModule,
29
30
  MatListModule,
30
- MatTooltipModule
31
+ MatTooltipModule,
32
+ MatIconModule
31
33
  ],
32
34
  declarations: [
33
35
  EmptyStateComponent,
@@ -50,4 +52,4 @@ var PlaceModule = /** @class */ (function () {
50
52
  return PlaceModule;
51
53
  }());
52
54
  export { PlaceModule };
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDeEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DO0lBQUE7SUE2QkEsQ0FBQzs7Z0JBN0JBLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3FCQUNqQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsOEJBQThCO3FCQUMvQjtvQkFDRCxlQUFlLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDdkMsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDhCQUE4QjtxQkFDL0I7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFlBQVk7cUJBQ2I7aUJBQ0Y7O0lBR0Qsa0JBQUM7Q0FBQSxBQTdCRCxJQTZCQztTQUZZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCdXN5T3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9idXN5LW92ZXJsYXkvYnVzeS1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eVN0YXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZU91dGxldENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbGFjZS1vdXRsZXQvcGxhY2Utb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlU2VydmljZSB9IGZyb20gJy4vcGxhY2Uuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBFbXB0eVN0YXRlQ29tcG9uZW50LFxuICAgIEJ1c3lPdmVybGF5Q29tcG9uZW50LFxuICAgIFBsYWNlT3V0bGV0Q29tcG9uZW50LFxuICAgIFRhYmJlZFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtCdXN5T3ZlcmxheUNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXN5T3ZlcmxheUNvbXBvbmVudCxcbiAgICBQbGFjZU91dGxldENvbXBvbmVudCxcbiAgICBFbXB0eVN0YXRlQ29tcG9uZW50LFxuICAgIFRhYmJlZFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBQbGFjZVNlcnZpY2VcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQbGFjZU1vZHVsZSB7XG5cbn1cbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3BsYWNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQztJQUFBO0lBOEJBLENBQUM7O2dCQTlCQSxRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsOEJBQThCO3FCQUMvQjtvQkFDRCxlQUFlLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDdkMsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDhCQUE4QjtxQkFDL0I7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFlBQVk7cUJBQ2I7aUJBQ0Y7O0lBR0Qsa0JBQUM7Q0FBQSxBQTlCRCxJQThCQztTQUZZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCdXN5T3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9idXN5LW92ZXJsYXkvYnVzeS1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eVN0YXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZU91dGxldENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbGFjZS1vdXRsZXQvcGxhY2Utb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWNlU2VydmljZSB9IGZyb20gJy4vcGxhY2Uuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgQnVzeU92ZXJsYXlDb21wb25lbnQsXG4gICAgUGxhY2VPdXRsZXRDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50XG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0J1c3lPdmVybGF5Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW1xuICAgIEJ1c3lPdmVybGF5Q29tcG9uZW50LFxuICAgIFBsYWNlT3V0bGV0Q29tcG9uZW50LFxuICAgIEVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgVGFiYmVkUGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIFBsYWNlU2VydmljZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlTW9kdWxlIHtcblxufVxuIl19
@@ -14,6 +14,8 @@ if (false) {
14
14
  /** @type {?|undefined} */
15
15
  ParameterOptions.prototype.as;
16
16
  /** @type {?|undefined} */
17
+ ParameterOptions.prototype.optional;
18
+ /** @type {?|undefined} */
17
19
  ParameterOptions.prototype.sanitiser;
18
20
  }
19
21
  /**
@@ -25,6 +27,8 @@ if (false) {
25
27
  /** @type {?|undefined} */
26
28
  ListParameterOptions.prototype.as;
27
29
  /** @type {?|undefined} */
30
+ ListParameterOptions.prototype.optional;
31
+ /** @type {?|undefined} */
28
32
  ListParameterOptions.prototype.listSanitiser;
29
33
  }
30
34
  /**
@@ -175,4 +179,4 @@ function createArrayDefinition(propertyName, type, options) {
175
179
  };
176
180
  return def;
177
181
  }
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlY29yYXRvcnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLWRlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQWlCLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFJM0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBRXBFLHNDQUdDOzs7SUFGQyw4QkFBWTs7SUFDWixxQ0FBaUQ7Ozs7OztBQUduRCwwQ0FHQzs7O0lBRkMsa0NBQVk7O0lBQ1osNkNBQXVEOzs7Ozs7OztBQUd6RCxNQUFNLFVBQVUsT0FBTyxDQUE0QixJQUFzQixFQUFFLE9BQTZCO0lBQ3RHLG1DQUFtQztJQUNuQzs7Ozs7SUFBTyxVQUFDLFNBQWlCLEVBQUUsV0FBNEI7O1lBQy9DLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUM7UUFDaEUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsRyxXQUFXLEVBQUUsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQyxFQUFDO0FBQ0osQ0FBQzs7Ozs7Ozs7QUFPRCxNQUFNLFVBQVUsY0FBYyxDQUFJLElBQXNCLEVBQUUsT0FBNkI7SUFDckY7Ozs7O0lBQU8sVUFBQyxTQUFpQixFQUFFLFdBQTRCOztZQUMvQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFD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QUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLENBQUM7UUFDbEQsWUFBWSxFQUFFLG9CQUFvQjtRQUNsQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekIsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQztRQUNsRCxTQUFTLEVBQUUsS0FBSztRQUNoQixPQUFPLEVBQUUsSUFBSTtLQUNkO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzZXJ0LCBDb25zdHJ1Y3RhYmxlLCBVc2VEZWxlZ2F0ZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IEtsYXNzLCBPcHRzIH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJEZWZpbml0aW9uIH0gZnJvbSAnLi9wYXJhbWV0ZXItZGVmaW5pdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTYW5pdGlzZXIgfSBmcm9tICcuL3BhcmFtZXRlci1zYW5pdGlzZXInO1xuaW1wb3J0IHsgUGFyYW1ldGVyVHlwZSB9IGZyb20gJy4vcGFyYW1ldGVyLXR5cGUnO1xuaW1wb3J0IHsgUm91dGVQYXJhbWV0ZXJCaW5kaW5ncyB9IGZyb20gJy4vcm91dGUtcGFyYW1ldGVyLWJpbmRpbmdzJztcblxuZXhwb3J0IGludGVyZmFjZSBQYXJhbWV0ZXJPcHRpb25zPFQ+IHtcbiAgYXM/OiBzdHJpbmc7XG4gIHNhbml0aXNlcj86IENvbnN0cnVjdGFibGU8UGFyYW1ldGVyU2FuaXRpc2VyPFQ+Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0UGFyYW1ldGVyT3B0aW9uczxUPiB7XG4gIGFzPzogc3RyaW5nO1xuICBsaXN0U2FuaXRpc2VyPzogQ29uc3RydWN0YWJsZTxQYXJhbWV0ZXJTYW5pdGlzZXI8VFtdPj47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBSb3V0ZUlkPFQgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXI+KHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM/OiBQYXJhbWV0ZXJPcHRpb25zPFQ+KTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAvLyBhc3NlcnQuaXNUcnV0aHkodHlwZS5pc1ZhbGlkKCkpO1xuICByZXR1cm4gKHByb3RvdHlwZTogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgY29uc3QgcGFyYW0gPSBjcmVhdGVEZWZpbml0aW9uKHByb3BlcnR5S2V5LCB0eXBlLCBvcHRpb25zLCB0cnVlKTtcbiAgICBLbGFzcy5nZXQocHJvdG90eXBlKS5hZGRUb093bk1ldGFkYXRhTGlzdChSb3V0ZVBhcmFtZXRlckJpbmRpbmdzLlJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSwgcGFyYW0pO1xuICAgIFVzZURlbGVnYXRlKCkocHJvdG90eXBlLCBwcm9wZXJ0eUtleSk7XG4gIH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFJvdXRlUGFyYW1ldGVyIGluc3RlYWQuXG4gKiBAcGFyYW0gdHlwZVxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFF1ZXJ5UGFyYW1ldGVyPFQ+KHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM/OiBQYXJhbWV0ZXJPcHRpb25zPFQ+KTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICByZXR1cm4gKHByb3RvdHlwZTogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgY29uc3QgcGFyYW0gPSBjcmVhdGVEZWZpbml0aW9uKHByb3BlcnR5S2V5LCB0eXBlLCBvcHRpb25zLCBmYWxzZSk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUm91dGVQYXJhbWV0ZXJCaW5kaW5ncy5ST1VURV9QQVJBTUVURVJfTElTVF9LRVksIHBhcmFtKTtcbiAgICBVc2VEZWxlZ2F0ZSgpKHByb3RvdHlwZSwgcHJvcGVydHlLZXkpO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXI8VD4odHlwZTogUGFyYW1ldGVyVHlwZTxUPiwgb3B0aW9ucz86IFBhcmFtZXRlck9wdGlvbnM8VD4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIC8vIGFzc2VydC5pc1RydXRoeSh0eXBlLmlzVmFsaWQoKSk7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IGNyZWF0ZURlZmluaXRpb24ocHJvcGVydHlLZXksIHR5cGUsIG9wdGlvbnMsIGZhbHNlKTtcbiAgICBLbGFzcy5nZXQocHJvdG90eXBlKS5hZGRUb093bk1ldGFkYXRhTGlzdChSb3V0ZVBhcmFtZXRlckJpbmRpbmdzLlJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSwgcGFyYW0pO1xuICAgIFVzZURlbGVnYXRlKCkocHJvdG90eXBlLCBwcm9wZXJ0eUtleSk7XG4gIH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFJvdXRlUGFyYW1ldGVyTGlzdCBpbnN0ZWFkXG4gKiBAcGFyYW0gZWxlbWVudFR5cGVcbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBRdWVyeVBhcmFtZXRlckxpc3Q8RT4oZWxlbWVudFR5cGU6IFBhcmFtZXRlclR5cGU8RT4sIG9wdGlvbnM/OiBMaXN0UGFyYW1ldGVyT3B0aW9uczxFPik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgLy8gYXNzZXJ0LmlzVHJ1dGh5KHR5cGUuaXNWYWxpZCgpKTtcbiAgcmV0dXJuIChwcm90b3R5cGU6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgIGNvbnN0IHBhcmFtID0gY3JlYXRlQXJyYXlEZWZpbml0aW9uKHByb3BlcnR5S2V5LCBlbGVtZW50VHlwZSwgb3B0aW9ucyk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUm91dGVQYXJhbWV0ZXJCaW5kaW5ncy5ST1VURV9QQVJBTUVURVJfTElTVF9LRVksIHBhcmFtKTtcbiAgICBVc2VEZWxlZ2F0ZSgpKHByb3RvdHlwZSwgcHJvcGVydHlLZXkpO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXJMaXN0PEU+KGVsZW1lbnRUeXBlOiBQYXJhbWV0ZXJUeXBlPEU+LCBvcHRpb25zPzogTGlzdFBhcmFtZXRlck9wdGlvbnM8RT4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIC8vIGFzc2VydC5pc1RydXRoeSh0eXBlLmlzVmFsaWQoKSk7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IGNyZWF0ZUFycmF5RGVmaW5pdGlvbihwcm9wZXJ0eUtleSwgZWxlbWVudFR5cGUsIG9wdGlvbnMpO1xuICAgIEtsYXNzLmdldChwcm90b3R5cGUpLmFkZFRvT3duTWV0YWRhdGFMaXN0KFJvdXRlUGFyYW1ldGVyQmluZGluZ3MuUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZLCBwYXJhbSk7XG4gICAgVXNlRGVsZWdhdGUoKShwcm90b3R5cGUsIHByb3BlcnR5S2V5KTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlRGVmaW5pdGlvbjxUPihwcm9wZXJ0eU5hbWU6IHN5bWJvbCB8IHN0cmluZywgdHlwZTogUGFyYW1ldGVyVHlwZTxUPiwgb3B0aW9uczogUGFyYW1ldGVyT3B0aW9uczxUPiwgcm91dGVJZDogYm9vbGVhbikge1xuICBjb25zdCBvcHRzID0gT3B0cy5nZXQob3B0aW9ucyk7XG4gIGNvbnN0IHByb3BlcnR5TmFtZUFzU3RyaW5nID0gYXNzZXJ0Lm5vdE5pbChwcm9wZXJ0eU5hbWUpLnRvU3RyaW5nKCk7XG4gIGNvbnN0IGRlZjogUGFyYW1ldGVyRGVmaW5pdGlvbjxUPiA9IHtcbiAgICBuYW1lOiBvcHRzLmdldE9wdGlvbmFsKCdhcycsIHByb3BlcnR5TmFtZUFzU3RyaW5nKSxcbiAgICBwcm9wZXJ0eU5hbWU6IHByb3BlcnR5TmFtZUFzU3RyaW5nLFxuICAgIHR5cGU6IGFzc2VydC5ub3ROaWwodHlwZSksXG4gICAgc2FuaXRpc2VyOiBvcHRzLmdldE9wdGlvbmFsKCdzYW5pdGlzZXInLCBudWxsKSxcbiAgICBpc1JvdXRlSWQ6IHJvdXRlSWQsXG4gICAgaXNBcnJheTogZmFsc2VcbiAgfTtcbiAgcmV0dXJuIGRlZjtcbn1cblxuZnVuY3Rpb24gY3JlYXRlQXJyYXlEZWZpbml0aW9uPFQ+KHByb3BlcnR5TmFtZTogc3ltYm9sIHwgc3RyaW5nLCB0eXBlOiBQYXJhbWV0ZXJUeXBlPFQ+LCBvcHRpb25zOiBMaXN0UGFyYW1ldGVyT3B0aW9uczxUPikge1xuICBjb25zdCBvcHRzID0gT3B0cy5nZXQob3B0aW9ucyk7XG4gIGNvbnN0IHByb3BlcnR5TmFtZUFzU3RyaW5nID0gYXNzZXJ0Lm5vdE5pbChwcm9wZXJ0eU5hbWUpLnRvU3RyaW5nKCk7XG5cbiAgY29uc3QgZGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFRbXT4gPSB7XG4gICAgbmFtZTogb3B0cy5nZXRPcHRpb25hbCgnYXMnLCBwcm9wZXJ0eU5hbWVBc1N0cmluZyksXG4gICAgcHJvcGVydHlOYW1lOiBwcm9wZXJ0eU5hbWVBc1N0cmluZyxcbiAgICB0eXBlOiBhc3NlcnQubm90TmlsKHR5cGUpLFxuICAgIHNhbml0aXNlcjogb3B0cy5nZXRPcHRpb25hbCgnbGlzdFNhbml0aXNlcicsIG51bGwpLFxuICAgIGlzUm91dGVJZDogZmFsc2UsXG4gICAgaXNBcnJheTogdHJ1ZVxuICB9O1xuICByZXR1cm4gZGVmO1xufVxuIl19
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlY29yYXRvcnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLWRlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQWlCLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFJM0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBRXBFLHNDQUlDOzs7SUFIQyw4QkFBWTs7SUFDWixvQ0FBa0I7O0lBQ2xCLHFDQUFpRDs7Ozs7O0FBR25ELDBDQUlDOzs7SUFIQyxrQ0FBWTs7SUFDWix3Q0FBa0I7O0lBQ2xCLDZDQUF1RDs7Ozs7Ozs7QUFHekQsTUFBTSxVQUFVLE9BQU8sQ0FBNEIsSUFBc0IsRUFBRSxPQUE2QjtJQUN0RyxtQ0FBbUM7SUFDbkM7Ozs7O0lBQU8sVUFBQyxTQUFpQixFQUFFLFdBQTRCOztZQUMvQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDO1FBQ2hFLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsb0JBQW9CLENBQUMsc0JBQXNCLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEcsV0FBVyxFQUFFLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLENBQUMsRUFBQztBQUNKLENBQUM7Ozs7Ozs7O0FBT0QsTUFBTSxVQUFVLGNBQWMsQ0FBSSxJQUFzQixFQUFFLE9BQTZCO0lBQ3JGOzs7OztJQUFPLFVBQUMsU0FBaUIsRUFBRSxXQUE0Qjs7WUFDL0MsS0FBSyxHQUFHLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxJ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RTdELEdBQUcsR0FBZ0M7UUFDdkMsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLG9CQUFvQixDQUFDO1FBQ2xELFlBQVksRUFBRSxvQkFBb0I7UUFDbEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUM7UUFDbEQsU0FBUyxFQUFFLEtBQUs7UUFDaEIsT0FBTyxFQUFFLElBQUk7S0FDZDtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFzc2VydCwgQ29uc3RydWN0YWJsZSwgVXNlRGVsZWdhdGUgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBLbGFzcywgT3B0cyB9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgUGFyYW1ldGVyRGVmaW5pdGlvbiB9IGZyb20gJy4vcGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2FuaXRpc2VyIH0gZnJvbSAnLi9wYXJhbWV0ZXItc2FuaXRpc2VyJztcbmltcG9ydCB7IFBhcmFtZXRlclR5cGUgfSBmcm9tICcuL3BhcmFtZXRlci10eXBlJztcbmltcG9ydCB7IFJvdXRlUGFyYW1ldGVyQmluZGluZ3MgfSBmcm9tICcuL3JvdXRlLXBhcmFtZXRlci1iaW5kaW5ncyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyT3B0aW9uczxUPiB7XG4gIGFzPzogc3RyaW5nO1xuICBvcHRpb25hbD86Ym9vbGVhbjtcbiAgc2FuaXRpc2VyPzogQ29uc3RydWN0YWJsZTxQYXJhbWV0ZXJTYW5pdGlzZXI8VD4+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RQYXJhbWV0ZXJPcHRpb25zPFQ+IHtcbiAgYXM/OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzpib29sZWFuO1xuICBsaXN0U2FuaXRpc2VyPzogQ29uc3RydWN0YWJsZTxQYXJhbWV0ZXJTYW5pdGlzZXI8VFtdPj47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBSb3V0ZUlkPFQgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXI+KHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM/OiBQYXJhbWV0ZXJPcHRpb25zPFQ+KTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAvLyBhc3NlcnQuaXNUcnV0aHkodHlwZS5pc1ZhbGlkKCkpO1xuICByZXR1cm4gKHByb3RvdHlwZTogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgY29uc3QgcGFyYW0gPSBjcmVhdGVEZWZpbml0aW9uKHByb3BlcnR5S2V5LCB0eXBlLCBvcHRpb25zLCB0cnVlKTtcbiAgICBLbGFzcy5nZXQocHJvdG90eXBlKS5hZGRUb093bk1ldGFkYXRhTGlzdChSb3V0ZVBhcmFtZXRlckJpbmRpbmdzLlJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSwgcGFyYW0pO1xuICAgIFVzZURlbGVnYXRlKCkocHJvdG90eXBlLCBwcm9wZXJ0eUtleSk7XG4gIH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFJvdXRlUGFyYW1ldGVyIGluc3RlYWQuXG4gKiBAcGFyYW0gdHlwZVxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFF1ZXJ5UGFyYW1ldGVyPFQ+KHR5cGU6IFBhcmFtZXRlclR5cGU8VD4sIG9wdGlvbnM/OiBQYXJhbWV0ZXJPcHRpb25zPFQ+KTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICByZXR1cm4gKHByb3RvdHlwZTogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgY29uc3QgcGFyYW0gPSBjcmVhdGVEZWZpbml0aW9uKHByb3BlcnR5S2V5LCB0eXBlLCBvcHRpb25zLCBmYWxzZSk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUm91dGVQYXJhbWV0ZXJCaW5kaW5ncy5ST1VURV9QQVJBTUVURVJfTElTVF9LRVksIHBhcmFtKTtcbiAgICBVc2VEZWxlZ2F0ZSgpKHByb3RvdHlwZSwgcHJvcGVydHlLZXkpO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXI8VD4odHlwZTogUGFyYW1ldGVyVHlwZTxUPiwgb3B0aW9ucz86IFBhcmFtZXRlck9wdGlvbnM8VD4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIC8vIGFzc2VydC5pc1RydXRoeSh0eXBlLmlzVmFsaWQoKSk7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IGNyZWF0ZURlZmluaXRpb24ocHJvcGVydHlLZXksIHR5cGUsIG9wdGlvbnMsIGZhbHNlKTtcbiAgICBLbGFzcy5nZXQocHJvdG90eXBlKS5hZGRUb093bk1ldGFkYXRhTGlzdChSb3V0ZVBhcmFtZXRlckJpbmRpbmdzLlJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSwgcGFyYW0pO1xuICAgIFVzZURlbGVnYXRlKCkocHJvdG90eXBlLCBwcm9wZXJ0eUtleSk7XG4gIH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFJvdXRlUGFyYW1ldGVyTGlzdCBpbnN0ZWFkXG4gKiBAcGFyYW0gZWxlbWVudFR5cGVcbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBRdWVyeVBhcmFtZXRlckxpc3Q8RT4oZWxlbWVudFR5cGU6IFBhcmFtZXRlclR5cGU8RT4sIG9wdGlvbnM/OiBMaXN0UGFyYW1ldGVyT3B0aW9uczxFPik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgLy8gYXNzZXJ0LmlzVHJ1dGh5KHR5cGUuaXNWYWxpZCgpKTtcbiAgcmV0dXJuIChwcm90b3R5cGU6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgIGNvbnN0IHBhcmFtID0gY3JlYXRlQXJyYXlEZWZpbml0aW9uKHByb3BlcnR5S2V5LCBlbGVtZW50VHlwZSwgb3B0aW9ucyk7XG4gICAgS2xhc3MuZ2V0KHByb3RvdHlwZSkuYWRkVG9Pd25NZXRhZGF0YUxpc3QoUm91dGVQYXJhbWV0ZXJCaW5kaW5ncy5ST1VURV9QQVJBTUVURVJfTElTVF9LRVksIHBhcmFtKTtcbiAgICBVc2VEZWxlZ2F0ZSgpKHByb3RvdHlwZSwgcHJvcGVydHlLZXkpO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUm91dGVQYXJhbWV0ZXJMaXN0PEU+KGVsZW1lbnRUeXBlOiBQYXJhbWV0ZXJUeXBlPEU+LCBvcHRpb25zPzogTGlzdFBhcmFtZXRlck9wdGlvbnM8RT4pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gIC8vIGFzc2VydC5pc1RydXRoeSh0eXBlLmlzVmFsaWQoKSk7XG4gIHJldHVybiAocHJvdG90eXBlOiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICBjb25zdCBwYXJhbSA9IGNyZWF0ZUFycmF5RGVmaW5pdGlvbihwcm9wZXJ0eUtleSwgZWxlbWVudFR5cGUsIG9wdGlvbnMpO1xuICAgIEtsYXNzLmdldChwcm90b3R5cGUpLmFkZFRvT3duTWV0YWRhdGFMaXN0KFJvdXRlUGFyYW1ldGVyQmluZGluZ3MuUk9VVEVfUEFSQU1FVEVSX0xJU1RfS0VZLCBwYXJhbSk7XG4gICAgVXNlRGVsZWdhdGUoKShwcm90b3R5cGUsIHByb3BlcnR5S2V5KTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlRGVmaW5pdGlvbjxUPihwcm9wZXJ0eU5hbWU6IHN5bWJvbCB8IHN0cmluZywgdHlwZTogUGFyYW1ldGVyVHlwZTxUPiwgb3B0aW9uczogUGFyYW1ldGVyT3B0aW9uczxUPiwgcm91dGVJZDogYm9vbGVhbikge1xuICBjb25zdCBvcHRzID0gT3B0cy5nZXQob3B0aW9ucyk7XG4gIGNvbnN0IHByb3BlcnR5TmFtZUFzU3RyaW5nID0gYXNzZXJ0Lm5vdE5pbChwcm9wZXJ0eU5hbWUpLnRvU3RyaW5nKCk7XG4gIGNvbnN0IGRlZjogUGFyYW1ldGVyRGVmaW5pdGlvbjxUPiA9IHtcbiAgICBuYW1lOiBvcHRzLmdldE9wdGlvbmFsKCdhcycsIHByb3BlcnR5TmFtZUFzU3RyaW5nKSxcbiAgICBwcm9wZXJ0eU5hbWU6IHByb3BlcnR5TmFtZUFzU3RyaW5nLFxuICAgIHR5cGU6IGFzc2VydC5ub3ROaWwodHlwZSksXG4gICAgc2FuaXRpc2VyOiBvcHRzLmdldE9wdGlvbmFsKCdzYW5pdGlzZXInLCBudWxsKSxcbiAgICBpc1JvdXRlSWQ6IHJvdXRlSWQsXG4gICAgaXNBcnJheTogZmFsc2VcbiAgfTtcbiAgcmV0dXJuIGRlZjtcbn1cblxuZnVuY3Rpb24gY3JlYXRlQXJyYXlEZWZpbml0aW9uPFQ+KHByb3BlcnR5TmFtZTogc3ltYm9sIHwgc3RyaW5nLCB0eXBlOiBQYXJhbWV0ZXJUeXBlPFQ+LCBvcHRpb25zOiBMaXN0UGFyYW1ldGVyT3B0aW9uczxUPikge1xuICBjb25zdCBvcHRzID0gT3B0cy5nZXQob3B0aW9ucyk7XG4gIGNvbnN0IHByb3BlcnR5TmFtZUFzU3RyaW5nID0gYXNzZXJ0Lm5vdE5pbChwcm9wZXJ0eU5hbWUpLnRvU3RyaW5nKCk7XG5cbiAgY29uc3QgZGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFRbXT4gPSB7XG4gICAgbmFtZTogb3B0cy5nZXRPcHRpb25hbCgnYXMnLCBwcm9wZXJ0eU5hbWVBc1N0cmluZyksXG4gICAgcHJvcGVydHlOYW1lOiBwcm9wZXJ0eU5hbWVBc1N0cmluZyxcbiAgICB0eXBlOiBhc3NlcnQubm90TmlsKHR5cGUpLFxuICAgIHNhbml0aXNlcjogb3B0cy5nZXRPcHRpb25hbCgnbGlzdFNhbml0aXNlcicsIG51bGwpLFxuICAgIGlzUm91dGVJZDogZmFsc2UsXG4gICAgaXNBcnJheTogdHJ1ZVxuICB9O1xuICByZXR1cm4gZGVmO1xufVxuIl19
@@ -10,15 +10,16 @@ import { PortalModule } from '@angular/cdk/portal';
10
10
  import { Deferred } from '@coolon/pectin/lib/promise/deferred.class';
11
11
  import { assert as assert$1, Klass, Opts } from '@coolon/typescript-utilities';
12
12
  import { MatDialog as MatDialog$1 } from '@angular/material/dialog';
13
+ import { MatIconModule } from '@angular/material/icon';
13
14
  import { MatListModule } from '@angular/material/list';
14
15
  import { MatTabsModule as MatTabsModule$1 } from '@angular/material/tabs';
15
16
  import { MatTooltipModule } from '@angular/material/tooltip';
16
17
  import { RouterModule, Router, ActivatedRoute, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
17
18
  import { query, style, group, animate, trigger, transition } from '@angular/animations';
18
- import ResizeObserver from 'resize-observer-polyfill';
19
- import { Memoize } from '@typescript-plus/fast-memoize-decorator';
20
19
  import { isNil } from 'lodash';
21
20
  import 'reflect-metadata';
21
+ import ResizeObserver from 'resize-observer-polyfill';
22
+ import { Memoize } from '@typescript-plus/fast-memoize-decorator';
22
23
  import { Memoize as Memoize$1 } from '@typescript-plus/fast-memoize-decorator/dist/src';
23
24
 
24
25
  /**
@@ -1572,6 +1573,86 @@ if (false) {
1572
1573
  PlaceOutletComponent.prototype.placeService;
1573
1574
  }
1574
1575
 
1576
+ /**
1577
+ * @fileoverview added by tsickle
1578
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
1579
+ */
1580
+ /**
1581
+ * @param {?} options
1582
+ * @return {?}
1583
+ */
1584
+ function Place(options) {
1585
+ return (/**
1586
+ * @param {?} target
1587
+ * @return {?}
1588
+ */
1589
+ (target) => {
1590
+ Reflect.defineMetadata('place.options', options, target);
1591
+ });
1592
+ }
1593
+ (function (Place) {
1594
+ /**
1595
+ * @record
1596
+ */
1597
+ function Options() { }
1598
+ Place.Options = Options;
1599
+ if (false) {
1600
+ /** @type {?} */
1601
+ Options.prototype.path;
1602
+ /** @type {?} */
1603
+ Options.prototype.order;
1604
+ /** @type {?|undefined} */
1605
+ Options.prototype.data;
1606
+ /** @type {?|undefined} */
1607
+ Options.prototype.authenticate;
1608
+ }
1609
+ class Descriptor {
1610
+ /**
1611
+ * @param {?} placeClass
1612
+ * @param {?} options
1613
+ */
1614
+ constructor(placeClass, options) {
1615
+ assert.notNil(options);
1616
+ this.path = options.path;
1617
+ this.order = options.order;
1618
+ this.data = options.data;
1619
+ this.authenticate = isNil(options.authenticate) || options.authenticate;
1620
+ }
1621
+ /**
1622
+ * @template T
1623
+ * @param {?} key
1624
+ * @param {?=} defaultValue
1625
+ * @return {?}
1626
+ */
1627
+ getData(key, defaultValue) {
1628
+ return this.data ?
1629
+ isNil(this.data[key]) ? defaultValue : this.data[key] :
1630
+ defaultValue;
1631
+ }
1632
+ }
1633
+ Place.Descriptor = Descriptor;
1634
+ if (false) {
1635
+ /** @type {?} */
1636
+ Descriptor.prototype.path;
1637
+ /** @type {?} */
1638
+ Descriptor.prototype.authenticate;
1639
+ /** @type {?} */
1640
+ Descriptor.prototype.order;
1641
+ /** @type {?} */
1642
+ Descriptor.prototype.data;
1643
+ }
1644
+ /**
1645
+ * @param {?} klass
1646
+ * @return {?}
1647
+ */
1648
+ function getDescriptor(klass) {
1649
+ /** @type {?} */
1650
+ const placeOptions = Reflect.getMetadata('place.options', klass);
1651
+ return new Descriptor(klass, placeOptions);
1652
+ }
1653
+ Place.getDescriptor = getDescriptor;
1654
+ })(Place || (Place = {}));
1655
+
1575
1656
  /**
1576
1657
  * @fileoverview added by tsickle
1577
1658
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -1580,7 +1661,11 @@ class TabbedPlaceNavigationComponent extends DisposableComponent {
1580
1661
  constructor() {
1581
1662
  super();
1582
1663
  const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
1583
- this.orderedPlaces = chain(this.placesModel).sortBy('order');
1664
+ this.orderedPlaces = chain(this.placesModel).map((/**
1665
+ * @param {?} c
1666
+ * @return {?}
1667
+ */
1668
+ c => Place.getDescriptor(c))).sortBy('order');
1584
1669
  }
1585
1670
  /**
1586
1671
  * @return {?}
@@ -1591,7 +1676,7 @@ class TabbedPlaceNavigationComponent extends DisposableComponent {
1591
1676
  TabbedPlaceNavigationComponent.decorators = [
1592
1677
  { type: Component, args: [{
1593
1678
  selector: 'angular-ui-powerups-tabbed-place-navigation',
1594
- template: "<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDescriptor of orderedPlaces.value\" [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">{{placeDescriptor.title}}</a>\n</nav>\n\n",
1679
+ template: "<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDescriptor of orderedPlaces.value\"\n [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">\n <mat-icon *ngIf=\"placeDescriptor.getData('navIcon')\">{{placeDescriptor.getData('navIcon')}}</mat-icon>\n <span>{{placeDescriptor.getData(\"navTitle\", 'missing @Place({data: {navTitle: ??}\\})')}}</span>\n </a>\n</nav>\n",
1595
1680
  styles: [""]
1596
1681
  }] }
1597
1682
  ];
@@ -1633,7 +1718,8 @@ PlaceModule.decorators = [
1633
1718
  RouterModule,
1634
1719
  MatTabsModule$1,
1635
1720
  MatListModule,
1636
- MatTooltipModule
1721
+ MatTooltipModule,
1722
+ MatIconModule
1637
1723
  ],
1638
1724
  declarations: [
1639
1725
  EmptyStateComponent,
@@ -2031,75 +2117,6 @@ if (false) {
2031
2117
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
2032
2118
  */
2033
2119
 
2034
- /**
2035
- * @fileoverview added by tsickle
2036
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
2037
- */
2038
- /**
2039
- * @param {?} options
2040
- * @return {?}
2041
- */
2042
- function Place(options) {
2043
- return (/**
2044
- * @param {?} target
2045
- * @return {?}
2046
- */
2047
- (target) => {
2048
- Reflect.defineMetadata('place.options', options, target);
2049
- });
2050
- }
2051
- (function (Place) {
2052
- /**
2053
- * @record
2054
- */
2055
- function Options() { }
2056
- Place.Options = Options;
2057
- if (false) {
2058
- /** @type {?} */
2059
- Options.prototype.path;
2060
- /** @type {?} */
2061
- Options.prototype.title;
2062
- /** @type {?} */
2063
- Options.prototype.order;
2064
- /** @type {?|undefined} */
2065
- Options.prototype.authenticate;
2066
- }
2067
- class Descriptor {
2068
- /**
2069
- * @param {?} placeClass
2070
- * @param {?} options
2071
- */
2072
- constructor(placeClass, options) {
2073
- assert.notNil(options);
2074
- this.path = options.path;
2075
- this.title = options.title;
2076
- this.order = options.order;
2077
- this.authenticate = isNil(options.authenticate) || options.authenticate;
2078
- }
2079
- }
2080
- Place.Descriptor = Descriptor;
2081
- if (false) {
2082
- /** @type {?} */
2083
- Descriptor.prototype.path;
2084
- /** @type {?} */
2085
- Descriptor.prototype.authenticate;
2086
- /** @type {?} */
2087
- Descriptor.prototype.title;
2088
- /** @type {?} */
2089
- Descriptor.prototype.order;
2090
- }
2091
- /**
2092
- * @param {?} klass
2093
- * @return {?}
2094
- */
2095
- function getDescriptor(klass) {
2096
- /** @type {?} */
2097
- const placeOptions = Reflect.getMetadata('place.options', klass);
2098
- return new Descriptor(klass, placeOptions);
2099
- }
2100
- Place.getDescriptor = getDescriptor;
2101
- })(Place || (Place = {}));
2102
-
2103
2120
  /**
2104
2121
  * @fileoverview added by tsickle
2105
2122
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -2403,8 +2420,6 @@ class AbstractPlaceComponent extends DisposableComponent {
2403
2420
  super();
2404
2421
  this.activatedRoute = activatedRoute;
2405
2422
  this.routeBindingMediator = this.registerDisposable(new RouteParameterBindings(this, router, activatedRoute));
2406
- // See https://coolon.atlassian.net/browse/PEC-59
2407
- ((/** @type {?} */ ((/** @type {?} */ (this.titleModel))))).setDefault(this.placeConfig.title);
2408
2423
  }
2409
2424
  /**
2410
2425
  * @return {?}
@@ -2419,18 +2434,12 @@ class AbstractPlaceComponent extends DisposableComponent {
2419
2434
  return true;
2420
2435
  }
2421
2436
  }
2422
- __decorate([
2423
- UseDelegate(),
2424
- __metadata("design:type", MutableValueModel)
2425
- ], AbstractPlaceComponent.prototype, "titleModel", void 0);
2426
2437
  __decorate([
2427
2438
  Memoize(),
2428
2439
  __metadata("design:type", Place.Descriptor),
2429
2440
  __metadata("design:paramtypes", [])
2430
2441
  ], AbstractPlaceComponent.prototype, "placeConfig", null);
2431
2442
  if (false) {
2432
- /** @type {?} */
2433
- AbstractPlaceComponent.prototype.titleModel;
2434
2443
  /**
2435
2444
  * @type {?}
2436
2445
  * @private
@@ -2452,8 +2461,6 @@ if (false) {
2452
2461
  */
2453
2462
  function PlaceComponent() { }
2454
2463
  if (false) {
2455
- /** @type {?} */
2456
- PlaceComponent.prototype.titleModel;
2457
2464
  /**
2458
2465
  * @return {?}
2459
2466
  */
@@ -2875,6 +2882,8 @@ if (false) {
2875
2882
  /** @type {?|undefined} */
2876
2883
  ParameterOptions.prototype.as;
2877
2884
  /** @type {?|undefined} */
2885
+ ParameterOptions.prototype.optional;
2886
+ /** @type {?|undefined} */
2878
2887
  ParameterOptions.prototype.sanitiser;
2879
2888
  }
2880
2889
  /**
@@ -2886,6 +2895,8 @@ if (false) {
2886
2895
  /** @type {?|undefined} */
2887
2896
  ListParameterOptions.prototype.as;
2888
2897
  /** @type {?|undefined} */
2898
+ ListParameterOptions.prototype.optional;
2899
+ /** @type {?|undefined} */
2889
2900
  ListParameterOptions.prototype.listSanitiser;
2890
2901
  }
2891
2902
  /**