@coolon/angular-ui-powerups 0.0.28 → 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 (30) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +95 -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/esm5/lib/place/abstract-place-component.js +1 -10
  12. package/esm5/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +8 -3
  13. package/esm5/lib/place/place-component.js +1 -3
  14. package/esm5/lib/place/place.decorator.js +23 -6
  15. package/esm5/lib/place/place.module.js +4 -2
  16. package/fesm2015/coolon-angular-ui-powerups.js +91 -84
  17. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  18. package/fesm5/coolon-angular-ui-powerups.js +94 -81
  19. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  20. package/lib/place/abstract-place-component.d.ts +0 -2
  21. package/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.d.ts +4 -3
  22. package/lib/place/place-component.d.ts +0 -2
  23. package/lib/place/place.decorator.d.ts +7 -2
  24. package/package.json +1 -1
  25. package/schematics/place-routes/index.js +19 -13
  26. package/schematics/place-routes/index.js.map +1 -1
  27. package/schematics/place-routes/place-def.d.ts +1 -1
  28. package/schematics/place-routes/place-def.js.map +1 -1
  29. package/schematics/place-routes/scanner.js +1 -0
  30. package/schematics/place-routes/scanner.js.map +1 -1
@@ -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\"\n [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">{{placeDescriptor.title}}</a>\n</nav>\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL2NvbXBvbmVudHMvdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQWtCLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRy9FO0lBS29ELDBEQUFtQjtJQVVyRTtRQUFBLFlBQ0UsaUJBQU8sU0FHUjtRQUZPLElBQUEsMkJBQWtGLEVBQWhGLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxrQkFBTSxFQUFFLGNBQUksRUFBRSxnQkFBSyxFQUFFLG9CQUFPLEVBQUUsc0JBQWtDO1FBQ3hGLEtBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7O0lBQy9ELENBQUM7Ozs7SUFFRCxpREFBUTs7O0lBQVI7SUFDQSxDQUFDOztnQkF0QkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELDBUQUF1RDs7aUJBRXhEOzs7Ozt5QkFHRSxLQUFLOzhCQUdMLEtBQUs7O0lBRk47UUFEVSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7O2tFQUNkO0lBRzNCO1FBRFUsV0FBVyxFQUFFOzBDQUNWLFNBQVM7dUVBQW1CO0lBYTNDLHFDQUFDO0NBQUEsQUF4QkQsQ0FLb0QsbUJBQW1CLEdBbUJ0RTtTQW5CWSw4QkFBOEI7OztJQUV6QyxnREFDMkI7O0lBRTNCLHFEQUN5Qzs7SUFFekMsdURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEc2wsIExpc3RNb2RlbCwgTGlzdE1vZGVsQ2hhaW4sIFN0b3JlSW5MaXN0TW9kZWwsIFVzZURlbGVnYXRlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhY2UgfSBmcm9tICcuLi8uLi9wbGFjZS5kZWNvcmF0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhbmd1bGFyLXVpLXBvd2VydXBzLXRhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmJlZC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFiYmVkLXBsYWNlLW5hdmlnYXRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJiZWRQbGFjZU5hdmlnYXRpb25Db21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBAU3RvcmVJbkxpc3RNb2RlbCgncGxhY2VzTW9kZWwnKVxuICBwbGFjZXM6IFBsYWNlLkRlc2NyaXB0b3JbXTtcblxuICBASW5wdXQoKSBAVXNlRGVsZWdhdGUoKVxuICBwbGFjZXNNb2RlbDogTGlzdE1vZGVsPFBsYWNlLkRlc2NyaXB0b3I+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
@@ -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\"\n [routerLink]='placeDescriptor.path'\n routerLinkActive #rla=\"routerLinkActive\"\n [active]=\"rla.isActive\"\n [matTooltip]=\"placeDescriptor.title\">{{placeDescriptor.title}}</a>\n</nav>\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
  */