@coolon/angular-ui-powerups 12.4.0-alpha.90 → 12.4.1

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 (40) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +29 -25
  2. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  3. package/coolon-angular-ui-powerups.metadata.json +1 -1
  4. package/esm2015/lib/components/busy-overlay/busy-overlay.component.js +1 -1
  5. package/esm2015/lib/components/busy-overlay/busy-overlay.component.metadata.json +1 -1
  6. package/esm2015/lib/components/commands/command/command.component.js +9 -9
  7. package/esm2015/lib/components/commands/command/command.component.js.map +1 -1
  8. package/esm2015/lib/components/commands/command/command.component.metadata.json +1 -1
  9. package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.js +3 -2
  10. package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.js.map +1 -1
  11. package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.metadata.json +1 -1
  12. package/esm2015/lib/components/commands/group/popup-menu/more-menu.component.js +1 -1
  13. package/esm2015/lib/components/commands/group/popup-menu/more-menu.component.js.map +1 -1
  14. package/esm2015/lib/components/commands/group/popup-menu/more-menu.component.metadata.json +1 -1
  15. package/esm2015/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.js +2 -2
  16. package/esm2015/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.js.map +1 -1
  17. package/esm2015/lib/components/commands/group/popup-menu/popup-menu.component.js +1 -2
  18. package/esm2015/lib/components/commands/group/popup-menu/popup-menu.component.js.map +1 -1
  19. package/esm2015/lib/components/commands/group/popup-menu/popup-menu.component.metadata.json +1 -1
  20. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  21. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.js +1 -1
  22. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.metadata.json +1 -1
  23. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js +1 -1
  24. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.metadata.json +1 -1
  25. package/esm2015/lib/components/forms/select-input/select-input.component.js +1 -1
  26. package/esm2015/lib/components/forms/select-input/select-input.component.metadata.json +1 -1
  27. package/esm2015/lib/components/text/markdown/markdown.component.js +1 -0
  28. package/esm2015/lib/components/text/markdown/markdown.component.js.map +1 -1
  29. package/esm2015/lib/components/text/markdown/markdown.component.metadata.json +1 -1
  30. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +1 -1
  31. package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
  32. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +1 -1
  33. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.metadata.json +1 -1
  34. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +5 -2
  35. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js.map +1 -1
  36. package/fesm2015/coolon-angular-ui-powerups.js +28 -24
  37. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  38. package/lib/components/commands/command/command.component.d.ts +6 -6
  39. package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +1 -0
  40. package/package.json +1 -1
@@ -816,7 +816,7 @@
816
816
  { type: i0.Component, args: [{
817
817
  selector: 'aup-busy-overlay',
818
818
  template: "<ng-content></ng-content>\n<div class=\"busy-overlay-backdrop\" *ngIf=\"busyModel.value\">\n <mat-progress-spinner mode=\"indeterminate\" [diameter]=\"52\"></mat-progress-spinner>\n</div>\n",
819
- styles: [":host{position:relative}div.busy-overlay-backdrop{z-index:10;z-index:var(--aup-busy-overlay-z-index, 10);position:absolute;background-color:#0003;top:0;left:0;bottom:0;right:0;display:grid;grid-template-columns:auto;grid-template-rows:auto;place-content:center}\n"]
819
+ styles: [":host{position:relative;display:flex;flex-direction:column;align-items:stretch}div.busy-overlay-backdrop{z-index:10;z-index:var(--aup-busy-overlay-z-index, 10);position:absolute;background-color:#0003;top:0;left:0;bottom:0;right:0;display:grid;grid-template-columns:auto;grid-template-rows:auto;place-content:center}\n"]
820
820
  },] }
821
821
  ];
822
822
  BusyOverlayComponent.ctorParameters = function () { return []; };
@@ -1345,23 +1345,23 @@
1345
1345
  _this.CommandFace = exports.CommandFace;
1346
1346
  _this.alignFace = HorizontalAlignment.CENTER;
1347
1347
  var _a = pectin.Dsl.disposeWith(_this), chain = _a.chain, switchOn = _a.switchOn;
1348
- _this.faces = chain(_this.command.busy).mapToList(function (busy) {
1348
+ _this.faces$ = chain(_this.command.busy).mapToList(function (busy) {
1349
1349
  return busy ?
1350
1350
  [_this.busyFaceModel.value, _this.faceModel.value] :
1351
1351
  [_this.faceModel.value, _this.busyFaceModel.value];
1352
1352
  }, { allowNil: true, dependsOn: [_this.faceModel, _this.busyFaceModel] })
1353
1353
  .rejectNil();
1354
- _this.activeFace = _this.faces.first();
1355
- _this.buttonStyle = chain(_this.activeFace).map(function (f) { return exports.CommandFace.getStyleOf(f); });
1356
- _this.colorModel = chain(_this.activeFace).map(function (f) { return exports.CommandFace.getColorOf(f); });
1357
- _this.tooltipModel = chain(_this.activeFace).map(function (f) { return exports.CommandFace.getTooltipOf(f); });
1358
- _this.iconOnly = _this.faces.select(function (face) {
1354
+ _this.activeFace$ = _this.faces$.first();
1355
+ _this.buttonStyle$ = chain(_this.activeFace$).map(function (f) { return exports.CommandFace.getStyleOf(f); });
1356
+ _this.color$ = chain(_this.activeFace$).map(function (f) { return exports.CommandFace.getColorOf(f); });
1357
+ _this.tooltip$ = chain(_this.activeFace$).map(function (f) { return exports.CommandFace.getTooltipOf(f); });
1358
+ _this.iconOnly$ = _this.faces$.select(function (face) {
1359
1359
  return ___default["default"].isEmpty(exports.CommandFace.getTextOf(face)) && !___default["default"].isEmpty(exports.CommandFace.getIconOf(face));
1360
- }).count().equals(_this.faces.count());
1360
+ }).count().equals(_this.faces$.count());
1361
1361
  return _this;
1362
1362
  }
1363
1363
  CommandComponent.prototype.isActive = function (face) {
1364
- return this.activeFace.query().equals(face);
1364
+ return this.activeFace$.query().equals(face);
1365
1365
  };
1366
1366
  CommandComponent.prototype.ngOnInit = function () {
1367
1367
  };
@@ -1376,7 +1376,7 @@
1376
1376
  CommandComponent.decorators = [
1377
1377
  { type: i0.Component, args: [{
1378
1378
  selector: 'aup-command',
1379
- template: "<ng-container *ngIf=\"iconOnly.value\">\n <button mat-icon-button [pectinCommand]=\"command\" [color]=\"colorModel.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltipModel.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces.value\"></aup-command-face>\n </button>\n</ng-container>\n<ng-container *ngIf=\"!iconOnly.value\">\n <ng-container [ngSwitch]=\"buttonStyle.value\">\n <ng-container *ngSwitchCase=\"CommandFace.Style.STROKED\">\n <button mat-stroked-button [pectinCommand]=\"command\" [color]=\"colorModel.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltipModel.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"CommandFace.Style.RAISED\">\n <button mat-raised-button [pectinCommand]=\"command\" [color]=\"colorModel.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltipModel.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button mat-button [pectinCommand]=\"command\" [color]=\"colorModel.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltipModel.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces.value\"></aup-command-face>\n </button>\n </ng-container>\n </ng-container>\n</ng-container>\n",
1379
+ template: "<ng-container *ngIf=\"iconOnly$.value\">\n <button mat-icon-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n</ng-container>\n<ng-container *ngIf=\"!iconOnly$.value\">\n <ng-container [ngSwitch]=\"buttonStyle$.value\">\n <ng-container *ngSwitchCase=\"CommandFace.Style.STROKED\">\n <button mat-stroked-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"CommandFace.Style.RAISED\">\n <button mat-raised-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button mat-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n </ng-container>\n</ng-container>\n",
1380
1380
  styles: [":host{display:inline-flex;flex-direction:row;justify-content:stretch}:host.centered button{text-align:center}:host.start button{text-align:start}:host.end button{text-align:end}button{flex:1}\n"]
1381
1381
  },] }
1382
1382
  ];
@@ -1447,6 +1447,7 @@
1447
1447
  var _c = pectin.Dsl.disposeWith(_this), chain = _c.chain, valueOf = _c.valueOf, before = _c.before, when = _c.when, after = _c.after, observe = _c.observe, switchOn = _c.switchOn;
1448
1448
  // group.faceListModel = chain(this.faceModel).mapToList(face => [face]);
1449
1449
  _this.faceAdapterModel = chain(_this.faceModelDelegate).map(function (f) { return new exports.CommandFace.Adapter(f); });
1450
+ _this.faces$ = chain(_this.faceAdapterModel).pluck('face').mapToList(function (face) { return [face]; });
1450
1451
  _this.children = chain(_this._unorderedChildren).sortBy('componentIndex');
1451
1452
  return _this;
1452
1453
  }
@@ -1458,7 +1459,7 @@
1458
1459
  get: function () {
1459
1460
  var _a, _b;
1460
1461
  if (!this.faceAdapterModel) {
1461
- console.error("Somehow faceAdapterModel is nil -- set a break point here and let me know what's going on");
1462
+ console.error('Somehow faceAdapterModel is nil -- set a break point here and let me know what\'s going on');
1462
1463
  }
1463
1464
  return (_b = (_a = this.faceAdapterModel) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : new exports.CommandFace.Adapter(undefined);
1464
1465
  },
@@ -1506,7 +1507,7 @@
1506
1507
  enabledModel: [{ type: i0.Input }]
1507
1508
  };
1508
1509
  __decorate([
1509
- pectin.StoreInValueModel("enabledModel"),
1510
+ pectin.StoreInValueModel('enabledModel'),
1510
1511
  __metadata("design:type", Boolean)
1511
1512
  ], AbstractPopupMenuComponent.prototype, "enabled", void 0);
1512
1513
  __decorate([
@@ -1545,7 +1546,7 @@
1545
1546
  MoreMenuComponent.decorators = [
1546
1547
  { type: i0.Component, args: [{
1547
1548
  selector: 'aup-more-menu',
1548
- template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n",
1549
+ template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n",
1549
1550
  providers: [
1550
1551
  { provide: POPUP_CONTAINER, useExisting: MoreMenuComponent }
1551
1552
  ]
@@ -1758,9 +1759,9 @@
1758
1759
  };
1759
1760
  PopupMenuRendererComponent.prototype.getFaces = function (child) {
1760
1761
  return this.isCommand(child) ?
1761
- child.faces.value :
1762
+ child.faces$.value :
1762
1763
  this.isPopupMenu(child) ?
1763
- [child.faceAdapter.face] :
1764
+ child.faces$.value :
1764
1765
  undefined;
1765
1766
  };
1766
1767
  return PopupMenuRendererComponent;
@@ -1788,14 +1789,13 @@
1788
1789
  var _this = _super.call(this, element, parent) || this;
1789
1790
  var _a = pectin.Dsl.disposeWith(_this), chain = _a.chain, valueOf = _a.valueOf, before = _a.before, when = _a.when, after = _a.after, observe = _a.observe, switchOn = _a.switchOn;
1790
1791
  return _this;
1791
- // group.faceListModel = chain(this.faceModel).mapToList(face => [face]);
1792
1792
  }
1793
1793
  return PopupMenuComponent;
1794
1794
  }(AbstractPopupMenuComponent));
1795
1795
  PopupMenuComponent.decorators = [
1796
1796
  { type: i0.Component, args: [{
1797
1797
  selector: 'aup-popup-menu',
1798
- template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"[face]\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n",
1798
+ template: "<div class=\"content\" style=\"display: none\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"isRoot()\">\n <ng-container *ngIf=\"faceAdapter.text\" [ngSwitch]=\"faceAdapter.style\">\n <ng-container *ngSwitchCase=\"'stroked'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-stroked-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'raised'\">\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-raised-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <button matMenuTrigger\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n mat-button>\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu [parent]=\"this\" (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n\n </ng-container>\n\n <ng-container *ngIf=\"!faceAdapter.text\">\n <button matMenuTrigger\n mat-icon-button\n [matMenuTriggerFor]=\"subMenu.menuComponent\"\n (click) = \"$event.stopPropagation()\"\n [matTooltip]=\"faceAdapter.tooltip\"\n [color]=\"faceAdapter.color\"\n [disabled]=\"!enabled\"\n >\n <aup-command-face [faces]=\"faces$.value\"></aup-command-face>\n </button>\n <aup-popup-menu-renderer #subMenu\n [parent]=\"this\"\n (commandFired)=\"onCommandFired()\"></aup-popup-menu-renderer>\n </ng-container>\n</ng-container>\n",
1799
1799
  providers: [
1800
1800
  { provide: POPUP_CONTAINER, useExisting: PopupMenuComponent }
1801
1801
  ]
@@ -2233,7 +2233,7 @@
2233
2233
  { type: i0.Component, args: [{
2234
2234
  selector: 'aup-autocomplete-input',
2235
2235
  template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"string\"\n matInput\n [matAutocomplete]=\"autocomplete\"\n placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValueModel.value\"\n (ngModelChange)=\"updateFilter($event)\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-autocomplete #autocomplete [displayWith]=\"optionLabelFormat\" [autoActiveFirstOption]=\"true\" (optionSelected)=\"onSelect($event)\">\n <mat-option *ngFor=\"let option of filteredOptions.value; let i = index\"\n [value]=\"option\"\n >{{formatOption(option)}}</mat-option>\n <mat-option *ngIf=\"allowNil\">{{placeholder}}</mat-option>\n </mat-autocomplete>\n\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div>{{placeholder}}</div>\n <div class=\"item\" *ngFor=\"let item of options\">{{optionLabelFormat(item)}}</div>\n</div>\n",
2236
- styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:inline-block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"]
2236
+ styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"]
2237
2237
  },] }
2238
2238
  ];
2239
2239
  AutocompleteInputComponent.ctorParameters = function () { return []; };
@@ -2303,7 +2303,7 @@
2303
2303
  { type: i0.Component, args: [{
2304
2304
  selector: 'aup-multiple-select-input',
2305
2305
  template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n multiple\n [(ngModel)]=\"componentListModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div>{{placeholder}}</div>\n <div class=\"item\" *ngFor=\"let item of options\">{{optionLabelFormat(item)}}</div>\n</div>\n",
2306
- styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:inline-block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:30px}\n"]
2306
+ styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:30px}\n"]
2307
2307
  },] }
2308
2308
  ];
2309
2309
  MultipleSelectInputComponent.ctorParameters = function () { return []; };
@@ -2393,7 +2393,7 @@
2393
2393
  { type: i0.Component, args: [{
2394
2394
  selector: 'aup-select-input',
2395
2395
  template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div class=\"item\" *ngFor=\"let item of options\">{{optionLabelFormat(item)}}</div>\n</div>\n",
2396
- styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:inline-block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"]
2396
+ styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"]
2397
2397
  },] }
2398
2398
  ];
2399
2399
  SelectInputComponent.ctorParameters = function () { return []; };
@@ -5077,6 +5077,7 @@
5077
5077
  label: [{ type: i0.Input }]
5078
5078
  };
5079
5079
 
5080
+ // TODO: Look at using unified parser: https://javascript.plainenglish.io/markdown-to-angular-rendering-using-unified-and-remark-96835bb877
5080
5081
  /**
5081
5082
  * @example
5082
5083
  * <aup-markdown [content]="..."></aup-markdown>
@@ -6067,7 +6068,7 @@
6067
6068
  { type: i0.Component, args: [{
6068
6069
  selector: 'aup-activity-container',
6069
6070
  template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busyModel]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n",
6070
- styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}\n"]
6071
+ styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"]
6071
6072
  },] }
6072
6073
  ];
6073
6074
  ActivityContainerComponent.ctorParameters = function () { return []; };
@@ -6516,7 +6517,7 @@
6516
6517
  { type: i0.Component, args: [{
6517
6518
  selector: 'aup-in-place-interaction-context',
6518
6519
  template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs [dynamicHeight]=\"false\" [animationDuration]=\"animationDuration\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n",
6519
- styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}\n"]
6520
+ styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-activity-container{flex:1}\n"]
6520
6521
  },] }
6521
6522
  ];
6522
6523
  InPlaceInteractionContextComponent.ctorParameters = function () { return [
@@ -9912,6 +9913,7 @@
9912
9913
  var visitModel = new pectin.MutableValueModel(routerVisit);
9913
9914
  pectin.DebugContext.tag(visitModel, "PlaceOutletComponent[" + activePlace.constructor.name + ")].visitModel");
9914
9915
  activePlace.initialiseVisit(routerVisit, function (current, previous) {
9916
+ console.log("initialiseVisitCallback", { routerVisitModel: _this.routerVisitModel.value });
9915
9917
  _this.pushVisitChangeToRoute(previous, current);
9916
9918
  });
9917
9919
  var finishPlaceLoad = function () {
@@ -9930,6 +9932,7 @@
9930
9932
  var _a = pectin.Dsl.disposeWith(activePlace), when = _a.when, chain = _a.chain, valueOf = _a.valueOf;
9931
9933
  when(this.routerVisitModel)
9932
9934
  .changes(function (visit) {
9935
+ console.log("routerVisitModel.change", { routerVisitModel: _this.routerVisitModel.value });
9933
9936
  _this.pushVisitChangeToComponent(activePlace, visit);
9934
9937
  }, {
9935
9938
  unless: valueOf.any(this._isPushingVisitToRoute, this.routerVisitModel.isNil()).areTruthy()
@@ -9940,6 +9943,7 @@
9940
9943
  };
9941
9944
  PlaceOutletComponent.prototype.pushVisitChangeToRoute = function (previous, current) {
9942
9945
  return __awaiter(this, void 0, void 0, function () {
9946
+ var routerVisit;
9943
9947
  return __generator(this, function (_a) {
9944
9948
  switch (_a.label) {
9945
9949
  case 0:
@@ -9953,9 +9957,9 @@
9953
9957
  this._isPushingVisitToRoute.value = false;
9954
9958
  return [7 /*endfinally*/];
9955
9959
  case 3:
9956
- // sanitisers may have adjusted other values in the visit to we check and write it back.
9957
- if (current.hasRoutingChangedFrom(this.routerVisitModel.value)) {
9958
- this.pushVisitChangeToComponent(this.activePlaceModel.value, this.routerVisitModel.value);
9960
+ routerVisit = this.routerVisitModel.value;
9961
+ if (routerVisit && current.hasRoutingChangedFrom(routerVisit)) {
9962
+ this.pushVisitChangeToComponent(this.activePlaceModel.value, routerVisit);
9959
9963
  }
9960
9964
  return [2 /*return*/];
9961
9965
  }