@igo2/common 21.0.0-next.1 → 21.0.0-next.3

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 (84) hide show
  1. package/fesm2022/igo2-common-action.mjs +34 -49
  2. package/fesm2022/igo2-common-action.mjs.map +1 -1
  3. package/fesm2022/igo2-common-backdrop.mjs +5 -13
  4. package/fesm2022/igo2-common-backdrop.mjs.map +1 -1
  5. package/fesm2022/igo2-common-badge.mjs.map +1 -1
  6. package/fesm2022/igo2-common-collapsible.mjs +6 -14
  7. package/fesm2022/igo2-common-collapsible.mjs.map +1 -1
  8. package/fesm2022/igo2-common-color.mjs.map +1 -1
  9. package/fesm2022/igo2-common-confirm-dialog.mjs +2 -1
  10. package/fesm2022/igo2-common-confirm-dialog.mjs.map +1 -1
  11. package/fesm2022/igo2-common-context-menu.mjs +6 -4
  12. package/fesm2022/igo2-common-context-menu.mjs.map +1 -1
  13. package/fesm2022/igo2-common-datepicker.mjs +21 -15
  14. package/fesm2022/igo2-common-datepicker.mjs.map +1 -1
  15. package/fesm2022/igo2-common-dom.mjs +3 -1
  16. package/fesm2022/igo2-common-dom.mjs.map +1 -1
  17. package/fesm2022/igo2-common-drag-drop.mjs +59 -27
  18. package/fesm2022/igo2-common-drag-drop.mjs.map +1 -1
  19. package/fesm2022/igo2-common-dynamic-component.mjs +9 -3
  20. package/fesm2022/igo2-common-dynamic-component.mjs.map +1 -1
  21. package/fesm2022/igo2-common-entity.mjs +134 -99
  22. package/fesm2022/igo2-common-entity.mjs.map +1 -1
  23. package/fesm2022/igo2-common-flexible.mjs +19 -71
  24. package/fesm2022/igo2-common-flexible.mjs.map +1 -1
  25. package/fesm2022/igo2-common-form.mjs +46 -45
  26. package/fesm2022/igo2-common-form.mjs.map +1 -1
  27. package/fesm2022/igo2-common-icon.mjs +1 -1
  28. package/fesm2022/igo2-common-icon.mjs.map +1 -1
  29. package/fesm2022/igo2-common-image.mjs.map +1 -1
  30. package/fesm2022/igo2-common-interactive-tour.mjs +40 -17
  31. package/fesm2022/igo2-common-interactive-tour.mjs.map +1 -1
  32. package/fesm2022/igo2-common-json-dialog.mjs +2 -2
  33. package/fesm2022/igo2-common-json-dialog.mjs.map +1 -1
  34. package/fesm2022/igo2-common-keyvalue.mjs +3 -1
  35. package/fesm2022/igo2-common-keyvalue.mjs.map +1 -1
  36. package/fesm2022/igo2-common-list.mjs +11 -6
  37. package/fesm2022/igo2-common-list.mjs.map +1 -1
  38. package/fesm2022/igo2-common-panel.mjs +1 -1
  39. package/fesm2022/igo2-common-panel.mjs.map +1 -1
  40. package/fesm2022/igo2-common-resizable-bar.mjs +2 -4
  41. package/fesm2022/igo2-common-resizable-bar.mjs.map +1 -1
  42. package/fesm2022/igo2-common-select-value-dialog.mjs +14 -4
  43. package/fesm2022/igo2-common-select-value-dialog.mjs.map +1 -1
  44. package/fesm2022/igo2-common-sidenav.mjs.map +1 -1
  45. package/fesm2022/igo2-common-spinner.mjs +1 -1
  46. package/fesm2022/igo2-common-spinner.mjs.map +1 -1
  47. package/fesm2022/igo2-common-table.mjs +53 -60
  48. package/fesm2022/igo2-common-table.mjs.map +1 -1
  49. package/fesm2022/igo2-common-timepicker.mjs +8 -9
  50. package/fesm2022/igo2-common-timepicker.mjs.map +1 -1
  51. package/fesm2022/igo2-common-tool.mjs +19 -16
  52. package/fesm2022/igo2-common-tool.mjs.map +1 -1
  53. package/fesm2022/igo2-common-widget.mjs +4 -4
  54. package/fesm2022/igo2-common-widget.mjs.map +1 -1
  55. package/fesm2022/igo2-common-workspace.mjs +12 -16
  56. package/fesm2022/igo2-common-workspace.mjs.map +1 -1
  57. package/package.json +3 -3
  58. package/types/igo2-common-action.d.ts +2 -5
  59. package/types/igo2-common-backdrop.d.ts +2 -4
  60. package/types/igo2-common-badge.d.ts +4 -4
  61. package/types/igo2-common-collapsible.d.ts +2 -4
  62. package/types/igo2-common-confirm-dialog.d.ts +1 -1
  63. package/types/igo2-common-context-menu.d.ts +2 -2
  64. package/types/igo2-common-datepicker.d.ts +9 -9
  65. package/types/igo2-common-drag-drop.d.ts +14 -12
  66. package/types/igo2-common-dynamic-component.d.ts +3 -3
  67. package/types/igo2-common-entity.d.ts +61 -57
  68. package/types/igo2-common-flexible.d.ts +14 -28
  69. package/types/igo2-common-form.d.ts +24 -24
  70. package/types/igo2-common-icon.d.ts +1 -1
  71. package/types/igo2-common-interactive-tour.d.ts +6 -6
  72. package/types/igo2-common-json-dialog.d.ts +4 -4
  73. package/types/igo2-common-keyvalue.d.ts +4 -1
  74. package/types/igo2-common-list.d.ts +7 -7
  75. package/types/igo2-common-panel.d.ts +1 -1
  76. package/types/igo2-common-resizable-bar.d.ts +4 -5
  77. package/types/igo2-common-select-value-dialog.d.ts +2 -2
  78. package/types/igo2-common-sidenav.d.ts +2 -2
  79. package/types/igo2-common-spinner.d.ts +1 -1
  80. package/types/igo2-common-table.d.ts +17 -18
  81. package/types/igo2-common-timepicker.d.ts +3 -3
  82. package/types/igo2-common-tool.d.ts +7 -8
  83. package/types/igo2-common-widget.d.ts +7 -7
  84. package/types/igo2-common-workspace.d.ts +12 -12
@@ -42,7 +42,7 @@ class ActionStore extends EntityStore {
42
42
  */
43
43
  class ActionbarItemComponent {
44
44
  disabled$ = new BehaviorSubject(false);
45
- checkCondition$ = new BehaviorSubject(undefined);
45
+ checkCondition$ = new BehaviorSubject(false);
46
46
  tooltip$ = new BehaviorSubject(undefined);
47
47
  noDisplay$ = new BehaviorSubject(false);
48
48
  ngClass$ = new BehaviorSubject({});
@@ -57,7 +57,7 @@ class ActionbarItemComponent {
57
57
  /**
58
58
  * Action
59
59
  */
60
- action = input(undefined, ...(ngDevMode ? [{ debugName: "action" }] : /* istanbul ignore next */ []));
60
+ action = input.required(...(ngDevMode ? [{ debugName: "action" }] : /* istanbul ignore next */ []));
61
61
  /**
62
62
  * Color
63
63
  */
@@ -100,64 +100,49 @@ class ActionbarItemComponent {
100
100
  * @internal
101
101
  */
102
102
  get title() {
103
- return this.action().title;
103
+ return this.action()?.title;
104
104
  }
105
105
  ngOnInit() {
106
- const args = this.action().args || [];
107
106
  const action = this.action();
108
- if (action.ngClass !== undefined) {
107
+ const args = action?.args || [];
108
+ if (action?.ngClass !== undefined) {
109
109
  this.ngClass$$ = action
110
110
  .ngClass(...args)
111
111
  .subscribe((ngClass) => this.updateNgClass(ngClass));
112
112
  }
113
- if (isObservable(action.checkCondition)) {
114
- this.checkCondition$$ = action.checkCondition.subscribe((checkCondition) => this.updateCheckCondition(checkCondition));
113
+ if (isObservable(action?.checkCondition)) {
114
+ this.checkCondition$$ = action?.checkCondition.subscribe((checkCondition) => this.updateCheckCondition(checkCondition));
115
115
  }
116
116
  else {
117
- this.updateCheckCondition(action.checkCondition);
117
+ this.updateCheckCondition(action?.checkCondition);
118
118
  }
119
- if (isObservable(action.tooltip)) {
120
- this.tooltip$$ = action.tooltip.subscribe((tooltip) => this.updateTooltip(tooltip));
119
+ if (isObservable(action?.tooltip)) {
120
+ this.tooltip$$ = action?.tooltip.subscribe((tooltip) => this.updateTooltip(tooltip));
121
121
  }
122
122
  else {
123
- this.updateTooltip(action.tooltip);
123
+ this.updateTooltip(action?.tooltip);
124
124
  }
125
- if (action.availability !== undefined) {
125
+ if (action?.availability !== undefined) {
126
126
  this.availability$$ = action
127
- .availability(...args)
127
+ ?.availability(...args)
128
128
  .subscribe((available) => (this.disabled = !available));
129
129
  }
130
130
  this.disabled$$ = this.disabled$.subscribe((disabled) => this.updateNgClass({ 'igo-actionbar-item-disabled': disabled }));
131
- if (action.display !== undefined) {
131
+ if (action?.display !== undefined) {
132
132
  this.display$$ = action
133
- .display(...args)
133
+ ?.display(...args)
134
134
  .subscribe((display) => (this.noDisplay = !display));
135
135
  }
136
136
  this.noDisplay$$ = this.noDisplay$.subscribe((noDisplay) => this.updateNgClass({ 'igo-actionbar-item-no-display': noDisplay }));
137
137
  }
138
138
  ngOnDestroy() {
139
- if (this.ngClass$$ !== undefined) {
140
- this.ngClass$$.unsubscribe();
141
- this.ngClass$$ = undefined;
142
- }
143
- if (this.availability$$ !== undefined) {
144
- this.availability$$.unsubscribe();
145
- this.availability$$ = undefined;
146
- }
147
- if (this.display$$ !== undefined) {
148
- this.display$$.unsubscribe();
149
- this.display$$ = undefined;
150
- }
151
- if (this.checkCondition$$ !== undefined) {
152
- this.checkCondition$$.unsubscribe();
153
- this.checkCondition$$ = undefined;
154
- }
155
- if (this.tooltip$$ !== undefined) {
156
- this.tooltip$$.unsubscribe();
157
- this.tooltip$$ = undefined;
158
- }
159
- this.disabled$$.unsubscribe();
160
- this.noDisplay$$.unsubscribe();
139
+ this.ngClass$$?.unsubscribe();
140
+ this.availability$$?.unsubscribe();
141
+ this.display$$?.unsubscribe();
142
+ this.checkCondition$$?.unsubscribe();
143
+ this.tooltip$$?.unsubscribe();
144
+ this.disabled$$?.unsubscribe();
145
+ this.noDisplay$$?.unsubscribe();
161
146
  }
162
147
  /**
163
148
  * When the action button is clicked, emit the 'trigger' event but don't
@@ -177,10 +162,10 @@ class ActionbarItemComponent {
177
162
  this.tooltip$.next(tooltip);
178
163
  }
179
164
  updateCheckCondition(checkCondition) {
180
- this.checkCondition$.next(checkCondition);
165
+ this.checkCondition$.next(checkCondition ?? false);
181
166
  }
182
167
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: ActionbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
183
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: ActionbarItemComponent, isStandalone: true, selector: "igo-actionbar-item", inputs: { action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, withTitle: { classPropertyName: "withTitle", publicName: "withTitle", isSignal: true, isRequired: false, transformFunction: null }, withIcon: { classPropertyName: "withIcon", publicName: "withIcon", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, noDisplay: { classPropertyName: "noDisplay", publicName: "noDisplay", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { trigger: "trigger" }, ngImport: i0, template: "@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon;\n <igo-icon [icon]=\"isObservable(icon) ? (icon | async) : icon\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n", styles: [":host ::ng-deep mat-list-item:hover{cursor:pointer}:host{--mat-list-list-item-leading-avatar-size: 48px}:host .mdc-icon-button{--mat-icon-button-state-layer-size: 48px}:host mat-list-item{padding-right:0}:host mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}:host mat-list-item.igo-actionbar-item-no-display{display:none}:host mat-list-item ::ng-deep button[matlistitemavatar]{margin-left:0;background-color:inherit}:host mat-list-item ::ng-deep button .mat-mdc-button-persistent-ripple{display:none}:host .item-checkbox ::ng-deep mat-checkbox label{margin-left:28px}:host .actionbar-item [matline]{padding-left:16px}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1.MatListItemAvatar, selector: "[matListItemAvatar]" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "component", type: IgoIconComponent, selector: "igo-icon", inputs: ["color", "icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
168
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: ActionbarItemComponent, isStandalone: true, selector: "igo-actionbar-item", inputs: { action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: true, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, withTitle: { classPropertyName: "withTitle", publicName: "withTitle", isSignal: true, isRequired: false, transformFunction: null }, withIcon: { classPropertyName: "withIcon", publicName: "withIcon", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, noDisplay: { classPropertyName: "noDisplay", publicName: "noDisplay", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { trigger: "trigger" }, ngImport: i0, template: "@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon!;\n <igo-icon [icon]=\"(isObservable(icon) ? (icon | async) : icon)!\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n", styles: [":host ::ng-deep mat-list-item:hover{cursor:pointer}:host{--mat-list-list-item-leading-avatar-size: 48px}:host .mdc-icon-button{--mat-icon-button-state-layer-size: 48px}:host mat-list-item{padding-right:0}:host mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}:host mat-list-item.igo-actionbar-item-no-display{display:none}:host mat-list-item ::ng-deep button[matlistitemavatar]{margin-left:0;background-color:inherit}:host mat-list-item ::ng-deep button .mat-mdc-button-persistent-ripple{display:none}:host .item-checkbox ::ng-deep mat-checkbox label{margin-left:28px}:host .actionbar-item [matline]{padding-left:16px}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1.MatListItemAvatar, selector: "[matListItemAvatar]" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "component", type: IgoIconComponent, selector: "igo-icon", inputs: ["color", "icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
184
169
  }
185
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: ActionbarItemComponent, decorators: [{
186
171
  type: Component,
@@ -195,8 +180,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImpo
195
180
  IgoLanguageModule,
196
181
  IgoIconComponent,
197
182
  MatButtonModule
198
- ], template: "@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon;\n <igo-icon [icon]=\"isObservable(icon) ? (icon | async) : icon\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n", styles: [":host ::ng-deep mat-list-item:hover{cursor:pointer}:host{--mat-list-list-item-leading-avatar-size: 48px}:host .mdc-icon-button{--mat-icon-button-state-layer-size: 48px}:host mat-list-item{padding-right:0}:host mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}:host mat-list-item.igo-actionbar-item-no-display{display:none}:host mat-list-item ::ng-deep button[matlistitemavatar]{margin-left:0;background-color:inherit}:host mat-list-item ::ng-deep button .mat-mdc-button-persistent-ripple{display:none}:host .item-checkbox ::ng-deep mat-checkbox label{margin-left:28px}:host .actionbar-item [matline]{padding-left:16px}\n"] }]
199
- }], propDecorators: { action: [{ type: i0.Input, args: [{ isSignal: true, alias: "action", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], withTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTitle", required: false }] }], withIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "withIcon", required: false }] }], withTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTooltip", required: false }] }], disabled: [{
183
+ ], template: "@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon!;\n <igo-icon [icon]=\"(isObservable(icon) ? (icon | async) : icon)!\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n", styles: [":host ::ng-deep mat-list-item:hover{cursor:pointer}:host{--mat-list-list-item-leading-avatar-size: 48px}:host .mdc-icon-button{--mat-icon-button-state-layer-size: 48px}:host mat-list-item{padding-right:0}:host mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}:host mat-list-item.igo-actionbar-item-no-display{display:none}:host mat-list-item ::ng-deep button[matlistitemavatar]{margin-left:0;background-color:inherit}:host mat-list-item ::ng-deep button .mat-mdc-button-persistent-ripple{display:none}:host .item-checkbox ::ng-deep mat-checkbox label{margin-left:28px}:host .actionbar-item [matline]{padding-left:16px}\n"] }]
184
+ }], propDecorators: { action: [{ type: i0.Input, args: [{ isSignal: true, alias: "action", required: true }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], withTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTitle", required: false }] }], withIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "withIcon", required: false }] }], withTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTooltip", required: false }] }], disabled: [{
200
185
  type: Input
201
186
  }], noDisplay: [{
202
187
  type: Input
@@ -252,7 +237,7 @@ class ActionbarComponent {
252
237
  /**
253
238
  * Action store
254
239
  */
255
- store = input(undefined, ...(ngDevMode ? [{ debugName: "store" }] : /* istanbul ignore next */ []));
240
+ store = input.required(...(ngDevMode ? [{ debugName: "store" }] : /* istanbul ignore next */ []));
256
241
  /**
257
242
  * Actionbar mode
258
243
  */
@@ -355,14 +340,14 @@ class ActionbarComponent {
355
340
  if (this.watcher !== undefined) {
356
341
  this.watcher.destroy();
357
342
  }
358
- this.watcher = new EntityStoreWatcher(this.store(), this.cdRef);
343
+ const storeValue = this.store();
344
+ if (storeValue) {
345
+ this.watcher = new EntityStoreWatcher(storeValue, this.cdRef);
346
+ }
359
347
  }
360
348
  }
361
- /**
362
- * @internal
363
- */
364
349
  ngOnDestroy() {
365
- this.watcher.destroy();
350
+ this.watcher?.destroy();
366
351
  }
367
352
  /**
368
353
  * Invoke the action handler
@@ -379,7 +364,7 @@ class ActionbarComponent {
379
364
  this.elRef.nativeElement.scrollBy(0, -52);
380
365
  }
381
366
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: ActionbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
382
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: ActionbarComponent, isStandalone: true, selector: "igo-actionbar", inputs: { store: { classPropertyName: "store", publicName: "store", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, withToggleButton: { classPropertyName: "withToggleButton", publicName: "withToggleButton", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: true, isRequired: false, transformFunction: null }, withTitle: { classPropertyName: "withTitle", publicName: "withTitle", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, scrollActive: { classPropertyName: "scrollActive", publicName: "scrollActive", isSignal: true, isRequired: false, transformFunction: null }, withIcon: { classPropertyName: "withIcon", publicName: "withIcon", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, xPosition: { classPropertyName: "xPosition", publicName: "xPosition", isSignal: true, isRequired: false, transformFunction: null }, yPosition: { classPropertyName: "yPosition", publicName: "yPosition", isSignal: true, isRequired: false, transformFunction: null }, overlayClass: { classPropertyName: "overlayClass", publicName: "overlayClass", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.is-collapsed": "this.isCollapsed", "class.with-title": "this.withTitleClass", "class.with-icon": "this.withIconClass", "class.horizontal": "this.horizontalClass" } }, usesOnChanges: true, ngImport: i0, template: "@let actions = store().view.all$() | async;\n\n@if (heightCondition && positionConditionTop && isDesktop) {\n <div id=\"topChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\"\n >\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n </div>\n}\n@if (mode() === actionbarMode.Dock) {\n <mat-list matListItemIcon>\n @if (withToggleButton()) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color()\"\n [disabled]=\"store().view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\"\n />\n }\n @if (!collapsed) {\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [withTooltip]=\"withTooltip()\"\n [color]=\"color()\"\n [disabled]=\"store().state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n }\n </mat-list>\n}\n\n@if (heightCondition && positionConditionLow && isDesktop) {\n <div id=\"lowChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\"\n >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n}\n\n@if (mode() === actionbarMode.Overlay) {\n <div>\n <button\n class=\"buttonOverlay\"\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store().view.empty\"\n [color]=\"iconColor()\"\n >\n <mat-icon>{{ icon() }}</mat-icon>\n </button>\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition()\"\n [yPosition]=\"yPosition()\"\n [class]=\"overlayClass\"\n >\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n </mat-list>\n </mat-menu>\n </div>\n}\n@if (mode() === actionbarMode.Context) {\n <mat-card class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n <br />\n }\n </mat-list>\n </mat-card>\n}\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host.horizontal{max-width:100%;overflow:unset}:host.horizontal mat-list{width:auto;white-space:nowrap}:host.horizontal igo-actionbar-item{display:inline-block}:host mat-list{padding-top:0}:host .buttonOverlay{margin:0}:host .context-menu-card{padding:8px 3px;margin:10px}:host #topChevron{position:sticky;top:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host #topChevron{position:fixed;top:unset}}@supports (-ms-accelerator: true){:host #topChevron{position:fixed;top:unset}}:host #lowChevron{position:sticky;bottom:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}:host .igo-actionbar-overlay{min-width:inherit!important;padding-top:0;padding-bottom:0}:host .igo-actionbar-overlay .mat-mdc-list{padding-top:0}:host .igo-actionbar-overlay .mat-mdc-menu-content:not(:empty){padding-top:0;padding-bottom:0}:host.with-title ::ng-deep .mdc-list-item--with-leading-avatar .mdc-list-item__start{margin-right:0}:host ::ng-deep .mdc-list-item__primary-text{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "directive", type: i1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: ActionbarItemComponent, selector: "igo-actionbar-item", inputs: ["action", "color", "withTitle", "withIcon", "withTooltip", "disabled", "noDisplay"], outputs: ["trigger"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: i5$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i6.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
367
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: ActionbarComponent, isStandalone: true, selector: "igo-actionbar", inputs: { store: { classPropertyName: "store", publicName: "store", isSignal: true, isRequired: true, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, withToggleButton: { classPropertyName: "withToggleButton", publicName: "withToggleButton", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: true, isRequired: false, transformFunction: null }, withTitle: { classPropertyName: "withTitle", publicName: "withTitle", isSignal: true, isRequired: false, transformFunction: null }, withTooltip: { classPropertyName: "withTooltip", publicName: "withTooltip", isSignal: true, isRequired: false, transformFunction: null }, scrollActive: { classPropertyName: "scrollActive", publicName: "scrollActive", isSignal: true, isRequired: false, transformFunction: null }, withIcon: { classPropertyName: "withIcon", publicName: "withIcon", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, xPosition: { classPropertyName: "xPosition", publicName: "xPosition", isSignal: true, isRequired: false, transformFunction: null }, yPosition: { classPropertyName: "yPosition", publicName: "yPosition", isSignal: true, isRequired: false, transformFunction: null }, overlayClass: { classPropertyName: "overlayClass", publicName: "overlayClass", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.is-collapsed": "this.isCollapsed", "class.with-title": "this.withTitleClass", "class.with-icon": "this.withIconClass", "class.horizontal": "this.horizontalClass" } }, usesOnChanges: true, ngImport: i0, template: "@let actions = store().view.all$() | async;\n\n@if (heightCondition && positionConditionTop && isDesktop) {\n <div id=\"topChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\"\n >\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n </div>\n}\n@if (mode() === actionbarMode.Dock) {\n <mat-list matListItemIcon>\n @if (withToggleButton()) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color()\"\n [disabled]=\"store().view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\"\n />\n }\n @if (!collapsed) {\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [withTooltip]=\"withTooltip()\"\n [color]=\"color()\"\n [disabled]=\"store().state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n }\n </mat-list>\n}\n\n@if (heightCondition && positionConditionLow && isDesktop) {\n <div id=\"lowChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\"\n >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n}\n\n@if (mode() === actionbarMode.Overlay) {\n <div>\n <button\n class=\"buttonOverlay\"\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store().view.empty\"\n [color]=\"iconColor()\"\n >\n <mat-icon>{{ icon() }}</mat-icon>\n </button>\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition()\"\n [yPosition]=\"yPosition()\"\n [class]=\"overlayClass\"\n >\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n </mat-list>\n </mat-menu>\n </div>\n}\n@if (mode() === actionbarMode.Context) {\n <mat-card class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n <br />\n }\n </mat-list>\n </mat-card>\n}\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host.horizontal{max-width:100%;overflow:unset}:host.horizontal mat-list{width:auto;white-space:nowrap}:host.horizontal igo-actionbar-item{display:inline-block}:host mat-list{padding-top:0}:host .buttonOverlay{margin:0}:host .context-menu-card{padding:8px 3px;margin:10px}:host #topChevron{position:sticky;top:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host #topChevron{position:fixed;top:unset}}@supports (-ms-accelerator: true){:host #topChevron{position:fixed;top:unset}}:host #lowChevron{position:sticky;bottom:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}:host .igo-actionbar-overlay{min-width:inherit!important;padding-top:0;padding-bottom:0}:host .igo-actionbar-overlay .mat-mdc-list{padding-top:0}:host .igo-actionbar-overlay .mat-mdc-menu-content:not(:empty){padding-top:0;padding-bottom:0}:host.with-title ::ng-deep .mdc-list-item--with-leading-avatar .mdc-list-item__start{margin-right:0}:host ::ng-deep .mdc-list-item__primary-text{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "directive", type: i1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: ActionbarItemComponent, selector: "igo-actionbar-item", inputs: ["action", "color", "withTitle", "withIcon", "withTooltip", "disabled", "noDisplay"], outputs: ["trigger"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: i5$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i6.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
383
368
  }
384
369
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: ActionbarComponent, decorators: [{
385
370
  type: Component,
@@ -394,7 +379,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImpo
394
379
  AsyncPipe,
395
380
  IgoLanguageModule
396
381
  ], template: "@let actions = store().view.all$() | async;\n\n@if (heightCondition && positionConditionTop && isDesktop) {\n <div id=\"topChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\"\n >\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n </div>\n}\n@if (mode() === actionbarMode.Dock) {\n <mat-list matListItemIcon>\n @if (withToggleButton()) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color()\"\n [disabled]=\"store().view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\"\n />\n }\n @if (!collapsed) {\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [withTooltip]=\"withTooltip()\"\n [color]=\"color()\"\n [disabled]=\"store().state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n }\n </mat-list>\n}\n\n@if (heightCondition && positionConditionLow && isDesktop) {\n <div id=\"lowChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\"\n >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n}\n\n@if (mode() === actionbarMode.Overlay) {\n <div>\n <button\n class=\"buttonOverlay\"\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store().view.empty\"\n [color]=\"iconColor()\"\n >\n <mat-icon>{{ icon() }}</mat-icon>\n </button>\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition()\"\n [yPosition]=\"yPosition()\"\n [class]=\"overlayClass\"\n >\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n </mat-list>\n </mat-menu>\n </div>\n}\n@if (mode() === actionbarMode.Context) {\n <mat-card class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n <br />\n }\n </mat-list>\n </mat-card>\n}\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host.horizontal{max-width:100%;overflow:unset}:host.horizontal mat-list{width:auto;white-space:nowrap}:host.horizontal igo-actionbar-item{display:inline-block}:host mat-list{padding-top:0}:host .buttonOverlay{margin:0}:host .context-menu-card{padding:8px 3px;margin:10px}:host #topChevron{position:sticky;top:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host #topChevron{position:fixed;top:unset}}@supports (-ms-accelerator: true){:host #topChevron{position:fixed;top:unset}}:host #lowChevron{position:sticky;bottom:0;background-color:var(--mat-sys-on-primary-container);z-index:3;display:flex;justify-content:center}:host .igo-actionbar-overlay{min-width:inherit!important;padding-top:0;padding-bottom:0}:host .igo-actionbar-overlay .mat-mdc-list{padding-top:0}:host .igo-actionbar-overlay .mat-mdc-menu-content:not(:empty){padding-top:0;padding-bottom:0}:host.with-title ::ng-deep .mdc-list-item--with-leading-avatar .mdc-list-item__start{margin-right:0}:host ::ng-deep .mdc-list-item__primary-text{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}\n"] }]
397
- }], propDecorators: { store: [{ type: i0.Input, args: [{ isSignal: true, alias: "store", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], withToggleButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "withToggleButton", required: false }] }], horizontal: [{ type: i0.Input, args: [{ isSignal: true, alias: "horizontal", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], iconColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconColor", required: false }] }], withTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTitle", required: false }] }], withTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTooltip", required: false }] }], scrollActive: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollActive", required: false }] }], withIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "withIcon", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], xPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "xPosition", required: false }] }], yPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "yPosition", required: false }] }], overlayClass: [{
382
+ }], propDecorators: { store: [{ type: i0.Input, args: [{ isSignal: true, alias: "store", required: true }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], withToggleButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "withToggleButton", required: false }] }], horizontal: [{ type: i0.Input, args: [{ isSignal: true, alias: "horizontal", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], iconColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconColor", required: false }] }], withTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTitle", required: false }] }], withTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "withTooltip", required: false }] }], scrollActive: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollActive", required: false }] }], withIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "withIcon", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], xPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "xPosition", required: false }] }], yPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "yPosition", required: false }] }], overlayClass: [{
398
383
  type: Input
399
384
  }], isCollapsed: [{
400
385
  type: HostBinding,
@@ -1 +1 @@
1
- {"version":3,"file":"igo2-common-action.mjs","sources":["../../../packages/common/action/src/shared/action.enums.ts","../../../packages/common/action/src/shared/store.ts","../../../packages/common/action/src/actionbar/actionbar-item.component.ts","../../../packages/common/action/src/actionbar/actionbar-item.component.html","../../../packages/common/action/src/actionbar/actionbar.component.ts","../../../packages/common/action/src/actionbar/actionbar.component.html","../../../packages/common/action/src/action.module.ts","../../../packages/common/action/src/actionbar/actionbar.module.ts","../../../packages/common/action/src/igo2-common-action.ts"],"sourcesContent":["export enum ActionbarMode {\n Dock = 'dock',\n Overlay = 'overlay',\n Context = 'context'\n}\n","import { EntityStore } from '@igo2/common/entity';\n\nimport { Action } from './action.interfaces';\n\n/**\n * The class is a specialized version of an EntityStore that stores\n * actions.\n */\nexport class ActionStore extends EntityStore<Action> {}\n","import { AsyncPipe, NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnDestroy,\n OnInit,\n input,\n output\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { IgoIconComponent } from '@igo2/common/icon';\nimport { IgoLanguageModule } from '@igo2/core/language';\n\nimport { BehaviorSubject, Subscription, isObservable } from 'rxjs';\n\nimport { Action } from '../shared/action.interfaces';\n\n/**\n * An action button\n */\n@Component({\n selector: 'igo-actionbar-item',\n templateUrl: './actionbar-item.component.html',\n styleUrls: ['./actionbar-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatListModule,\n MatTooltipModule,\n NgClass,\n MatButtonModule,\n MatIconModule,\n MatCheckboxModule,\n AsyncPipe,\n IgoLanguageModule,\n IgoIconComponent,\n MatButtonModule\n ]\n})\nexport class ActionbarItemComponent implements OnInit, OnDestroy {\n readonly disabled$ = new BehaviorSubject<boolean>(false);\n\n readonly checkCondition$ = new BehaviorSubject<boolean>(undefined);\n\n readonly tooltip$ = new BehaviorSubject<string>(undefined);\n\n readonly noDisplay$ = new BehaviorSubject<boolean>(false);\n\n readonly ngClass$ = new BehaviorSubject<Record<string, boolean>>({});\n\n private ngClass$$: Subscription;\n\n private disabled$$: Subscription;\n\n private availability$$: Subscription;\n\n private checkCondition$$: Subscription;\n\n private tooltip$$: Subscription;\n\n private noDisplay$$: Subscription;\n\n private display$$: Subscription;\n\n isObservable = isObservable;\n\n /**\n * Action\n */\n readonly action = input<Action>(undefined);\n\n /**\n * Color\n */\n readonly color = input('default');\n\n /**\n * Whether the action title is displayed\n */\n readonly withTitle = input(true);\n\n /**\n * Whether the action icon is displayed\n */\n readonly withIcon = input(true);\n\n /**\n * Whether a tooltip should be shown\n */\n readonly withTooltip = input(true);\n\n /**\n * Whether the action is disabled\n */\n @Input()\n set disabled(value: boolean) {\n this.disabled$.next(value);\n }\n get disabled(): boolean {\n return this.disabled$.value;\n }\n\n /**\n * Whether the action is display or not\n */\n @Input()\n set noDisplay(value: boolean) {\n this.noDisplay$.next(value);\n }\n get noDisplay(): boolean {\n return this.noDisplay$.value;\n }\n\n /**\n * Event emitted when the action button is clicked\n */\n readonly trigger = output<Action>();\n\n /**\n * @internal\n */\n get title(): string {\n return this.action().title;\n }\n\n ngOnInit() {\n const args = this.action().args || [];\n\n const action = this.action();\n if (action.ngClass !== undefined) {\n this.ngClass$$ = action\n .ngClass(...args)\n .subscribe((ngClass: Record<string, boolean>) =>\n this.updateNgClass(ngClass)\n );\n }\n\n if (isObservable(action.checkCondition)) {\n this.checkCondition$$ = action.checkCondition.subscribe(\n (checkCondition) => this.updateCheckCondition(checkCondition)\n );\n } else {\n this.updateCheckCondition(action.checkCondition);\n }\n\n if (isObservable(action.tooltip)) {\n this.tooltip$$ = action.tooltip.subscribe((tooltip) =>\n this.updateTooltip(tooltip)\n );\n } else {\n this.updateTooltip(action.tooltip);\n }\n\n if (action.availability !== undefined) {\n this.availability$$ = action\n .availability(...args)\n .subscribe((available) => (this.disabled = !available));\n }\n\n this.disabled$$ = this.disabled$.subscribe((disabled) =>\n this.updateNgClass({ 'igo-actionbar-item-disabled': disabled })\n );\n\n if (action.display !== undefined) {\n this.display$$ = action\n .display(...args)\n .subscribe((display) => (this.noDisplay = !display));\n }\n\n this.noDisplay$$ = this.noDisplay$.subscribe((noDisplay) =>\n this.updateNgClass({ 'igo-actionbar-item-no-display': noDisplay })\n );\n }\n\n ngOnDestroy() {\n if (this.ngClass$$ !== undefined) {\n this.ngClass$$.unsubscribe();\n this.ngClass$$ = undefined;\n }\n\n if (this.availability$$ !== undefined) {\n this.availability$$.unsubscribe();\n this.availability$$ = undefined;\n }\n\n if (this.display$$ !== undefined) {\n this.display$$.unsubscribe();\n this.display$$ = undefined;\n }\n\n if (this.checkCondition$$ !== undefined) {\n this.checkCondition$$.unsubscribe();\n this.checkCondition$$ = undefined;\n }\n\n if (this.tooltip$$ !== undefined) {\n this.tooltip$$.unsubscribe();\n this.tooltip$$ = undefined;\n }\n\n this.disabled$$.unsubscribe();\n this.noDisplay$$.unsubscribe();\n }\n\n /**\n * When the action button is clicked, emit the 'trigger' event but don't\n * invoke the action handler. This is handled by the parent component.\n * @internal\n */\n onClick() {\n if (this.disabled) {\n return;\n }\n this.trigger.emit(this.action());\n }\n\n private updateNgClass(ngClass: Record<string, boolean>) {\n this.ngClass$.next(Object.assign({}, this.ngClass$.value, ngClass));\n }\n\n private updateTooltip(tooltip: string) {\n this.tooltip$.next(tooltip);\n }\n\n private updateCheckCondition(checkCondition: boolean) {\n this.checkCondition$.next(checkCondition);\n }\n}\n","@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon;\n <igo-icon [icon]=\"isObservable(icon) ? (icon | async) : icon\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n","import { Overlay } from '@angular/cdk/overlay';\nimport { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n inject,\n input\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport {\n MatMenuModule,\n MenuPositionX,\n MenuPositionY\n} from '@angular/material/menu';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { EntityStoreWatcher } from '@igo2/common/entity';\nimport { IgoLanguageModule } from '@igo2/core/language';\nimport { MediaService } from '@igo2/core/media';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { ActionbarMode } from '../shared/action.enums';\nimport { Action } from '../shared/action.interfaces';\nimport { ActionStore } from '../shared/store';\nimport { ActionbarItemComponent } from './actionbar-item.component';\n\n/**\n * A list of action buttons.\n * This component can be displayed in one of two way: 'dock' or 'overlay'\n */\n@Component({\n selector: 'igo-actionbar',\n templateUrl: './actionbar.component.html',\n styleUrls: ['./actionbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n MatTooltipModule,\n MatIconModule,\n MatListModule,\n ActionbarItemComponent,\n MatMenuModule,\n MatCardModule,\n AsyncPipe,\n IgoLanguageModule\n ]\n})\nexport class ActionbarComponent implements OnDestroy, OnChanges {\n overlay = inject(Overlay);\n private elRef = inject(ElementRef);\n private cdRef = inject(ChangeDetectorRef);\n mediaService = inject(MediaService);\n\n /**\n * Reference to the ActionbarMode enum for use in the template\n * @internal\n */\n actionbarMode = ActionbarMode;\n\n /**\n * Whether the actionbar is collapsed (Dock mode)\n * @internal\n */\n collapsed = false;\n\n /**\n * Toggle collapse action (Dock)\n * @internal\n */\n toggleCollapseAction = {\n id: 'actionbar_toggle',\n icon: 'more_vert',\n handler: () => {\n this.collapsed = !this.collapsed;\n }\n };\n\n /**\n * Action store watcher\n * @internal\n */\n private watcher: EntityStoreWatcher<Action>;\n\n /**\n * Height Condition for scroll button\n */\n heightCondition$ = new BehaviorSubject<boolean>(false);\n\n /**\n * Position Condition for top scroll button\n */\n positionConditionTop$ = new BehaviorSubject<boolean>(true);\n\n /**\n * Position Condition for low scroll button\n */\n positionConditionLow$ = new BehaviorSubject<boolean>(true);\n\n /**\n * Action store\n */\n readonly store = input<ActionStore>(undefined);\n\n /**\n * Actionbar mode\n */\n readonly mode = input<ActionbarMode>(ActionbarMode.Dock);\n\n /**\n * Whether a toggle button should be displayed (Dock mode)\n */\n readonly withToggleButton = input(false);\n\n /**\n * Whether a the actionbar should display buttons horizontally\n */\n readonly horizontal = input(false);\n\n /**\n * Color\n */\n readonly color = input('default');\n\n /**\n * Color of the button if action mode === overlay\n */\n readonly iconColor = input('default');\n\n /**\n * Whether action titles are displayed\n */\n readonly withTitle = input(true);\n\n /**\n * Whether action tooltips are displayed\n */\n readonly withTooltip = input(true);\n\n /**\n * Whether action titles are displayed (condition for scroll button)\n */\n readonly scrollActive = input(true);\n\n /**\n * Whether action icons are displayed\n */\n readonly withIcon = input(true);\n\n /**\n * Which icon want to be shown\n */\n readonly icon = input('more_horiz');\n\n /**\n * Overlay X position\n */\n readonly xPosition = input<MenuPositionX>('before');\n\n /**\n * Overlay Y position\n */\n readonly yPosition = input<MenuPositionY>('above');\n\n /**\n * Class to add to the actionbar overlay\n */\n @Input()\n set overlayClass(value: string) {\n this._overlayClass = value;\n }\n get overlayClass(): string {\n return [this._overlayClass, 'igo-actionbar-overlay'].join(' ');\n }\n private _overlayClass = '';\n\n @HostBinding('class.is-collapsed') isCollapsed = this.collapsed;\n\n /**\n * @ignore\n */\n @HostBinding('class.with-title')\n get withTitleClass() {\n return this.withTitle();\n }\n\n /**\n * @ignore\n */\n @HostBinding('class.with-icon')\n get withIconClass() {\n return this.withIcon();\n }\n\n /**\n * @ignore\n */\n @HostBinding('class.horizontal')\n get horizontalClass() {\n return this.horizontal();\n }\n\n get heightCondition(): boolean {\n const el = this.elRef.nativeElement;\n return !this.scrollActive() && el.clientHeight < el.scrollHeight\n ? true\n : false;\n }\n\n get positionConditionTop(): boolean {\n return this.elRef.nativeElement.scrollTop === 0 ? false : true;\n }\n\n get positionConditionLow(): boolean {\n const el = this.elRef.nativeElement;\n return el.scrollTop >= el.scrollHeight - el.clientHeight ? false : true;\n }\n\n get isDesktop(): boolean {\n return this.mediaService.isDesktop() || this.mediaService.isTablet();\n }\n\n /**\n * @internal\n */\n ngOnChanges(changes: SimpleChanges) {\n const store = changes.store;\n if (store && store.currentValue !== store.previousValue) {\n if (this.watcher !== undefined) {\n this.watcher.destroy();\n }\n this.watcher = new EntityStoreWatcher(this.store(), this.cdRef);\n }\n }\n\n /**\n * @internal\n */\n ngOnDestroy() {\n this.watcher.destroy();\n }\n\n /**\n * Invoke the action handler\n * @internal\n */\n onTriggerAction(action: Action) {\n const args = action.args || [];\n action.handler(...args);\n }\n\n scrollDown() {\n this.elRef.nativeElement.scrollBy(0, 52);\n }\n\n scrollUp() {\n this.elRef.nativeElement.scrollBy(0, -52);\n }\n}\n","@let actions = store().view.all$() | async;\n\n@if (heightCondition && positionConditionTop && isDesktop) {\n <div id=\"topChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\"\n >\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n </div>\n}\n@if (mode() === actionbarMode.Dock) {\n <mat-list matListItemIcon>\n @if (withToggleButton()) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color()\"\n [disabled]=\"store().view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\"\n />\n }\n @if (!collapsed) {\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [withTooltip]=\"withTooltip()\"\n [color]=\"color()\"\n [disabled]=\"store().state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n }\n </mat-list>\n}\n\n@if (heightCondition && positionConditionLow && isDesktop) {\n <div id=\"lowChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\"\n >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n}\n\n@if (mode() === actionbarMode.Overlay) {\n <div>\n <button\n class=\"buttonOverlay\"\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store().view.empty\"\n [color]=\"iconColor()\"\n >\n <mat-icon>{{ icon() }}</mat-icon>\n </button>\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition()\"\n [yPosition]=\"yPosition()\"\n [class]=\"overlayClass\"\n >\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n </mat-list>\n </mat-menu>\n </div>\n}\n@if (mode() === actionbarMode.Context) {\n <mat-card class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n <br />\n }\n </mat-list>\n </mat-card>\n}\n","import { NgModule } from '@angular/core';\n\nimport { ActionbarComponent } from './actionbar/actionbar.component';\n\n/**\n * @deprecated import the ActionbarComponent directly\n */\n@NgModule({\n imports: [ActionbarComponent],\n exports: [ActionbarComponent]\n})\nexport class IgoActionModule {}\n","import { NgModule } from '@angular/core';\n\nimport { ActionbarComponent } from './actionbar.component';\n\n/**\n * @deprecated import the ActionbarComponent directly\n */\n@NgModule({\n imports: [ActionbarComponent],\n exports: [ActionbarComponent]\n})\nexport class IgoActionbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i3","i4","i5","i7"],"mappings":"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"}
1
+ {"version":3,"file":"igo2-common-action.mjs","sources":["../../../packages/common/action/src/shared/action.enums.ts","../../../packages/common/action/src/shared/store.ts","../../../packages/common/action/src/actionbar/actionbar-item.component.ts","../../../packages/common/action/src/actionbar/actionbar-item.component.html","../../../packages/common/action/src/actionbar/actionbar.component.ts","../../../packages/common/action/src/actionbar/actionbar.component.html","../../../packages/common/action/src/action.module.ts","../../../packages/common/action/src/actionbar/actionbar.module.ts","../../../packages/common/action/src/igo2-common-action.ts"],"sourcesContent":["export enum ActionbarMode {\n Dock = 'dock',\n Overlay = 'overlay',\n Context = 'context'\n}\n","import { EntityStore } from '@igo2/common/entity';\n\nimport { Action } from './action.interfaces';\n\n/**\n * The class is a specialized version of an EntityStore that stores\n * actions.\n */\nexport class ActionStore extends EntityStore<Action> {}\n","import { AsyncPipe, NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnDestroy,\n OnInit,\n input,\n output\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { IgoIconComponent } from '@igo2/common/icon';\nimport { IgoLanguageModule } from '@igo2/core/language';\n\nimport { BehaviorSubject, Subscription, isObservable } from 'rxjs';\n\nimport { Action } from '../shared/action.interfaces';\n\n/**\n * An action button\n */\n@Component({\n selector: 'igo-actionbar-item',\n templateUrl: './actionbar-item.component.html',\n styleUrls: ['./actionbar-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatListModule,\n MatTooltipModule,\n NgClass,\n MatButtonModule,\n MatIconModule,\n MatCheckboxModule,\n AsyncPipe,\n IgoLanguageModule,\n IgoIconComponent,\n MatButtonModule\n ]\n})\nexport class ActionbarItemComponent implements OnInit, OnDestroy {\n readonly disabled$ = new BehaviorSubject(false);\n\n readonly checkCondition$ = new BehaviorSubject(false);\n\n readonly tooltip$ = new BehaviorSubject<string | undefined>(undefined);\n\n readonly noDisplay$ = new BehaviorSubject(false);\n\n readonly ngClass$ = new BehaviorSubject<Record<string, boolean>>({});\n\n private ngClass$$?: Subscription;\n\n private disabled$$?: Subscription;\n\n private availability$$?: Subscription;\n\n private checkCondition$$?: Subscription;\n\n private tooltip$$?: Subscription;\n\n private noDisplay$$?: Subscription;\n\n private display$$?: Subscription;\n\n isObservable = isObservable;\n\n /**\n * Action\n */\n readonly action = input.required<Action>();\n\n /**\n * Color\n */\n readonly color = input('default');\n\n /**\n * Whether the action title is displayed\n */\n readonly withTitle = input(true);\n\n /**\n * Whether the action icon is displayed\n */\n readonly withIcon = input(true);\n\n /**\n * Whether a tooltip should be shown\n */\n readonly withTooltip = input(true);\n\n /**\n * Whether the action is disabled\n */\n @Input()\n set disabled(value: boolean) {\n this.disabled$.next(value);\n }\n get disabled(): boolean {\n return this.disabled$.value;\n }\n\n /**\n * Whether the action is display or not\n */\n @Input()\n set noDisplay(value: boolean) {\n this.noDisplay$.next(value);\n }\n get noDisplay(): boolean {\n return this.noDisplay$.value;\n }\n\n /**\n * Event emitted when the action button is clicked\n */\n readonly trigger = output<Action>();\n\n /**\n * @internal\n */\n get title(): string | undefined {\n return this.action()?.title;\n }\n\n ngOnInit() {\n const action = this.action();\n const args = action?.args || [];\n\n if (action?.ngClass !== undefined) {\n this.ngClass$$ = action\n .ngClass(...args)\n .subscribe((ngClass: Record<string, boolean>) =>\n this.updateNgClass(ngClass)\n );\n }\n\n if (isObservable(action?.checkCondition)) {\n this.checkCondition$$ = action?.checkCondition.subscribe(\n (checkCondition) => this.updateCheckCondition(checkCondition)\n );\n } else {\n this.updateCheckCondition(action?.checkCondition);\n }\n\n if (isObservable(action?.tooltip)) {\n this.tooltip$$ = action?.tooltip.subscribe((tooltip) =>\n this.updateTooltip(tooltip)\n );\n } else {\n this.updateTooltip(action?.tooltip);\n }\n\n if (action?.availability !== undefined) {\n this.availability$$ = action\n ?.availability(...args)\n .subscribe((available) => (this.disabled = !available));\n }\n\n this.disabled$$ = this.disabled$.subscribe((disabled) =>\n this.updateNgClass({ 'igo-actionbar-item-disabled': disabled })\n );\n\n if (action?.display !== undefined) {\n this.display$$ = action\n ?.display(...args)\n .subscribe((display) => (this.noDisplay = !display));\n }\n\n this.noDisplay$$ = this.noDisplay$.subscribe((noDisplay) =>\n this.updateNgClass({ 'igo-actionbar-item-no-display': noDisplay })\n );\n }\n\n ngOnDestroy() {\n this.ngClass$$?.unsubscribe();\n this.availability$$?.unsubscribe();\n this.display$$?.unsubscribe();\n this.checkCondition$$?.unsubscribe();\n this.tooltip$$?.unsubscribe();\n this.disabled$$?.unsubscribe();\n this.noDisplay$$?.unsubscribe();\n }\n\n /**\n * When the action button is clicked, emit the 'trigger' event but don't\n * invoke the action handler. This is handled by the parent component.\n * @internal\n */\n onClick() {\n if (this.disabled) {\n return;\n }\n this.trigger.emit(this.action()!);\n }\n\n private updateNgClass(ngClass: Record<string, boolean>) {\n this.ngClass$.next(Object.assign({}, this.ngClass$.value, ngClass));\n }\n\n private updateTooltip(tooltip: string | undefined) {\n this.tooltip$.next(tooltip);\n }\n\n private updateCheckCondition(checkCondition: boolean | undefined) {\n this.checkCondition$.next(checkCondition ?? false);\n }\n}\n","@if (!action().checkbox) {\n <mat-list-item\n class=\"actionbar-item\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\"\n >\n @if (withIcon()) {\n <button\n matListItemAvatar\n matIconButton\n [color]=\"color()\"\n [disabled]=\"disabled$ | async\"\n [disableRipple]=\"true\"\n >\n @let icon = action().icon!;\n <igo-icon [icon]=\"(isObservable(icon) ? (icon | async) : icon)!\" />\n </button>\n }\n @if (withTitle()) {\n <span matLine>{{ title | translate }}</span>\n }\n </mat-list-item>\n}\n\n@if (action().checkbox) {\n <mat-list-item\n class=\"item-checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n withTooltip() ? ((tooltip$ | async) || title | translate) : ''\n \"\n [ngClass]=\"ngClass$ | async\"\n >\n @if (withTitle()) {\n <mat-checkbox\n (change)=\"action().handler()\"\n [checked]=\"checkCondition$ | async\"\n >\n {{ title | translate }}\n </mat-checkbox>\n }\n </mat-list-item>\n}\n","import { Overlay } from '@angular/cdk/overlay';\nimport { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n inject,\n input\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport {\n MatMenuModule,\n MenuPositionX,\n MenuPositionY\n} from '@angular/material/menu';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { EntityStoreWatcher } from '@igo2/common/entity';\nimport { IgoLanguageModule } from '@igo2/core/language';\nimport { MediaService } from '@igo2/core/media';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { ActionbarMode } from '../shared/action.enums';\nimport { Action } from '../shared/action.interfaces';\nimport { ActionStore } from '../shared/store';\nimport { ActionbarItemComponent } from './actionbar-item.component';\n\n/**\n * A list of action buttons.\n * This component can be displayed in one of two way: 'dock' or 'overlay'\n */\n@Component({\n selector: 'igo-actionbar',\n templateUrl: './actionbar.component.html',\n styleUrls: ['./actionbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n MatTooltipModule,\n MatIconModule,\n MatListModule,\n ActionbarItemComponent,\n MatMenuModule,\n MatCardModule,\n AsyncPipe,\n IgoLanguageModule\n ]\n})\nexport class ActionbarComponent implements OnDestroy, OnChanges {\n overlay = inject(Overlay);\n private elRef = inject(ElementRef);\n private cdRef = inject(ChangeDetectorRef);\n mediaService = inject(MediaService);\n\n /**\n * Reference to the ActionbarMode enum for use in the template\n * @internal\n */\n actionbarMode = ActionbarMode;\n\n /**\n * Whether the actionbar is collapsed (Dock mode)\n * @internal\n */\n collapsed = false;\n\n /**\n * Toggle collapse action (Dock)\n * @internal\n */\n toggleCollapseAction = {\n id: 'actionbar_toggle',\n icon: 'more_vert',\n handler: () => {\n this.collapsed = !this.collapsed;\n }\n };\n\n /**\n * Action store watcher\n * @internal\n */\n private watcher?: EntityStoreWatcher<Action>;\n\n /**\n * Height Condition for scroll button\n */\n heightCondition$ = new BehaviorSubject<boolean>(false);\n\n /**\n * Position Condition for top scroll button\n */\n positionConditionTop$ = new BehaviorSubject<boolean>(true);\n\n /**\n * Position Condition for low scroll button\n */\n positionConditionLow$ = new BehaviorSubject<boolean>(true);\n\n /**\n * Action store\n */\n readonly store = input.required<ActionStore>();\n\n /**\n * Actionbar mode\n */\n readonly mode = input<ActionbarMode>(ActionbarMode.Dock);\n\n /**\n * Whether a toggle button should be displayed (Dock mode)\n */\n readonly withToggleButton = input(false);\n\n /**\n * Whether a the actionbar should display buttons horizontally\n */\n readonly horizontal = input(false);\n\n /**\n * Color\n */\n readonly color = input('default');\n\n /**\n * Color of the button if action mode === overlay\n */\n readonly iconColor = input('default');\n\n /**\n * Whether action titles are displayed\n */\n readonly withTitle = input(true);\n\n /**\n * Whether action tooltips are displayed\n */\n readonly withTooltip = input(true);\n\n /**\n * Whether action titles are displayed (condition for scroll button)\n */\n readonly scrollActive = input(true);\n\n /**\n * Whether action icons are displayed\n */\n readonly withIcon = input(true);\n\n /**\n * Which icon want to be shown\n */\n readonly icon = input('more_horiz');\n\n /**\n * Overlay X position\n */\n readonly xPosition = input<MenuPositionX>('before');\n\n /**\n * Overlay Y position\n */\n readonly yPosition = input<MenuPositionY>('above');\n\n /**\n * Class to add to the actionbar overlay\n */\n @Input()\n set overlayClass(value: string) {\n this._overlayClass = value;\n }\n get overlayClass(): string {\n return [this._overlayClass, 'igo-actionbar-overlay'].join(' ');\n }\n private _overlayClass = '';\n\n @HostBinding('class.is-collapsed') isCollapsed = this.collapsed;\n\n /**\n * @ignore\n */\n @HostBinding('class.with-title')\n get withTitleClass() {\n return this.withTitle();\n }\n\n /**\n * @ignore\n */\n @HostBinding('class.with-icon')\n get withIconClass() {\n return this.withIcon();\n }\n\n /**\n * @ignore\n */\n @HostBinding('class.horizontal')\n get horizontalClass() {\n return this.horizontal();\n }\n\n get heightCondition(): boolean {\n const el = this.elRef.nativeElement;\n return !this.scrollActive() && el.clientHeight < el.scrollHeight\n ? true\n : false;\n }\n\n get positionConditionTop(): boolean {\n return this.elRef.nativeElement.scrollTop === 0 ? false : true;\n }\n\n get positionConditionLow(): boolean {\n const el = this.elRef.nativeElement;\n return el.scrollTop >= el.scrollHeight - el.clientHeight ? false : true;\n }\n\n get isDesktop(): boolean {\n return this.mediaService.isDesktop() || this.mediaService.isTablet();\n }\n\n /**\n * @internal\n */\n ngOnChanges(changes: SimpleChanges) {\n const store = changes.store;\n if (store && store.currentValue !== store.previousValue) {\n if (this.watcher !== undefined) {\n this.watcher.destroy();\n }\n const storeValue = this.store();\n if (storeValue) {\n this.watcher = new EntityStoreWatcher(storeValue, this.cdRef);\n }\n }\n }\n\n ngOnDestroy() {\n this.watcher?.destroy();\n }\n\n /**\n * Invoke the action handler\n * @internal\n */\n onTriggerAction(action: Action) {\n const args = action.args || [];\n action.handler(...args);\n }\n\n scrollDown() {\n this.elRef.nativeElement.scrollBy(0, 52);\n }\n\n scrollUp() {\n this.elRef.nativeElement.scrollBy(0, -52);\n }\n}\n","@let actions = store().view.all$() | async;\n\n@if (heightCondition && positionConditionTop && isDesktop) {\n <div id=\"topChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\"\n >\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n </div>\n}\n@if (mode() === actionbarMode.Dock) {\n <mat-list matListItemIcon>\n @if (withToggleButton()) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color()\"\n [disabled]=\"store().view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\"\n />\n }\n @if (!collapsed) {\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [withTooltip]=\"withTooltip()\"\n [color]=\"color()\"\n [disabled]=\"store().state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n }\n </mat-list>\n}\n\n@if (heightCondition && positionConditionLow && isDesktop) {\n <div id=\"lowChevron\">\n <button\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\"\n >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n}\n\n@if (mode() === actionbarMode.Overlay) {\n <div>\n <button\n class=\"buttonOverlay\"\n matIconButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store().view.empty\"\n [color]=\"iconColor()\"\n >\n <mat-icon>{{ icon() }}</mat-icon>\n </button>\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition()\"\n [yPosition]=\"yPosition()\"\n [class]=\"overlayClass\"\n >\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n }\n </mat-list>\n </mat-menu>\n </div>\n}\n@if (mode() === actionbarMode.Context) {\n <mat-card class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n @for (action of actions; track action) {\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle()\"\n [withIcon]=\"withIcon()\"\n [color]=\"color()\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\"\n />\n <br />\n }\n </mat-list>\n </mat-card>\n}\n","import { NgModule } from '@angular/core';\n\nimport { ActionbarComponent } from './actionbar/actionbar.component';\n\n/**\n * @deprecated import the ActionbarComponent directly\n */\n@NgModule({\n imports: [ActionbarComponent],\n exports: [ActionbarComponent]\n})\nexport class IgoActionModule {}\n","import { NgModule } from '@angular/core';\n\nimport { ActionbarComponent } from './actionbar.component';\n\n/**\n * @deprecated import the ActionbarComponent directly\n */\n@NgModule({\n imports: [ActionbarComponent],\n exports: [ActionbarComponent]\n})\nexport class IgoActionbarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i3","i4","i5","i7"],"mappings":"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"}
@@ -1,23 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Input, Component, NgModule } from '@angular/core';
2
+ import { input, Component, NgModule } from '@angular/core';
3
3
 
4
4
  class BackdropComponent {
5
- get shown() {
6
- return this._shown;
7
- }
8
- set shown(value) {
9
- this._shown = value;
10
- }
11
- _shown;
5
+ shown = input(false, ...(ngDevMode ? [{ debugName: "shown" }] : /* istanbul ignore next */ []));
12
6
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: BackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.10", type: BackdropComponent, isStandalone: true, selector: "igo-backdrop", inputs: { shown: "shown" }, ngImport: i0, template: "<div [class.igo-backdrop-shown]=\"shown\"></div>\n", styles: [":host>div{position:absolute;inset:0;background-color:#64646480;z-index:2;display:none}:host>div.igo-backdrop-shown{display:block}\n"] });
7
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.10", type: BackdropComponent, isStandalone: true, selector: "igo-backdrop", inputs: { shown: { classPropertyName: "shown", publicName: "shown", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [class.igo-backdrop-shown]=\"shown()\"></div>\n", styles: [":host>div{position:absolute;inset:0;background-color:#64646480;z-index:2;display:none}:host>div.igo-backdrop-shown{display:block}\n"] });
14
8
  }
15
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: BackdropComponent, decorators: [{
16
10
  type: Component,
17
- args: [{ selector: 'igo-backdrop', template: "<div [class.igo-backdrop-shown]=\"shown\"></div>\n", styles: [":host>div{position:absolute;inset:0;background-color:#64646480;z-index:2;display:none}:host>div.igo-backdrop-shown{display:block}\n"] }]
18
- }], propDecorators: { shown: [{
19
- type: Input
20
- }] } });
11
+ args: [{ selector: 'igo-backdrop', template: "<div [class.igo-backdrop-shown]=\"shown()\"></div>\n", styles: [":host>div{position:absolute;inset:0;background-color:#64646480;z-index:2;display:none}:host>div.igo-backdrop-shown{display:block}\n"] }]
12
+ }], propDecorators: { shown: [{ type: i0.Input, args: [{ isSignal: true, alias: "shown", required: false }] }] } });
21
13
 
22
14
  /**
23
15
  * @deprecated import the BackdropComponent directly
@@ -1 +1 @@
1
- {"version":3,"file":"igo2-common-backdrop.mjs","sources":["../../../packages/common/backdrop/src/backdrop.component.ts","../../../packages/common/backdrop/src/backdrop.component.html","../../../packages/common/backdrop/src/backdrop.module.ts","../../../packages/common/backdrop/src/igo2-common-backdrop.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'igo-backdrop',\n templateUrl: './backdrop.component.html',\n styleUrls: ['./backdrop.component.scss']\n})\nexport class BackdropComponent {\n @Input()\n get shown(): boolean {\n return this._shown;\n }\n set shown(value: boolean) {\n this._shown = value;\n }\n private _shown: boolean;\n}\n","<div [class.igo-backdrop-shown]=\"shown\"></div>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BackdropComponent } from './backdrop.component';\n\n/**\n * @deprecated import the BackdropComponent directly\n */\n@NgModule({\n imports: [BackdropComponent],\n exports: [BackdropComponent]\n})\nexport class IgoBackdropModule {\n static forRoot(): ModuleWithProviders<IgoBackdropModule> {\n return {\n ngModule: IgoBackdropModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;MAOa,iBAAiB,CAAA;AAC5B,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;IACpB;IACA,IAAI,KAAK,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;IACrB;AACQ,IAAA,MAAM;wGARH,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,oGCP9B,oDACA,EAAA,MAAA,EAAA,CAAA,qIAAA,CAAA,EAAA,CAAA;;4FDMa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,oDAAA,EAAA,MAAA,EAAA,CAAA,qIAAA,CAAA,EAAA;;sBAKvB;;;AEJH;;AAEG;MAKU,iBAAiB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,iBAAiB;AAC3B,YAAA,SAAS,EAAE;SACZ;IACH;wGANW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAAjB,iBAAiB,EAAA,OAAA,EAAA,CAHlB,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACjB,iBAAiB,CAAA,EAAA,CAAA;yGAEhB,iBAAiB,EAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,OAAO,EAAE,CAAC,iBAAiB;AAC5B,iBAAA;;;ACVD;;AAEG;;;;"}
1
+ {"version":3,"file":"igo2-common-backdrop.mjs","sources":["../../../packages/common/backdrop/src/backdrop.component.ts","../../../packages/common/backdrop/src/backdrop.component.html","../../../packages/common/backdrop/src/backdrop.module.ts","../../../packages/common/backdrop/src/igo2-common-backdrop.ts"],"sourcesContent":["import { Component, input } from '@angular/core';\n\n@Component({\n selector: 'igo-backdrop',\n templateUrl: './backdrop.component.html',\n styleUrls: ['./backdrop.component.scss']\n})\nexport class BackdropComponent {\n shown = input(false);\n}\n","<div [class.igo-backdrop-shown]=\"shown()\"></div>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BackdropComponent } from './backdrop.component';\n\n/**\n * @deprecated import the BackdropComponent directly\n */\n@NgModule({\n imports: [BackdropComponent],\n exports: [BackdropComponent]\n})\nexport class IgoBackdropModule {\n static forRoot(): ModuleWithProviders<IgoBackdropModule> {\n return {\n ngModule: IgoBackdropModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;MAOa,iBAAiB,CAAA;AAC5B,IAAA,KAAK,GAAG,KAAK,CAAC,KAAK,4EAAC;wGADT,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,4MCP9B,sDACA,EAAA,MAAA,EAAA,CAAA,qIAAA,CAAA,EAAA,CAAA;;4FDMa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,sDAAA,EAAA,MAAA,EAAA,CAAA,qIAAA,CAAA,EAAA;;;AEC1B;;AAEG;MAKU,iBAAiB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,iBAAiB;AAC3B,YAAA,SAAS,EAAE;SACZ;IACH;wGANW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAAjB,iBAAiB,EAAA,OAAA,EAAA,CAHlB,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACjB,iBAAiB,CAAA,EAAA,CAAA;yGAEhB,iBAAiB,EAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,OAAO,EAAE,CAAC,iBAAiB;AAC5B,iBAAA;;;ACVD;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"igo2-common-badge.mjs","sources":["../../../packages/common/badge/src/badge-icon.directive.ts","../../../packages/common/badge/src/badge-icon.module.ts","../../../packages/common/badge/src/igo2-common-badge.ts"],"sourcesContent":["import { Directive, ElementRef, Input, OnInit, inject } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\n/**\n * This directive allow to add an icon inside a matBadge.\n * A value must be set into the matBadge directive ex: matBadge=\"icon\".\n * The badge content will be overrided by this current directive.\n */\n@Directive({\n selector: '[igoMatBadgeIcon]',\n providers: [MatIconModule]\n})\nexport class IgoBadgeIconDirective implements OnInit {\n private el = inject(ElementRef);\n\n @Input()\n set igoMatBadgeIcon(value: string) {\n this.html = `\n <mat-icon class=\"mat-icon material-symbols-outlined\" style=\"height: 16px; width: 16px; font-size: 16px;\">${value}</mat-icon>\n `;\n this.updateHtml();\n }\n private html: string;\n\n @Input()\n set matBadgeHidden(value: boolean) {\n this.hidden = value;\n this.updateHidden();\n }\n private hidden = false;\n\n @Input()\n set matBadgeDisabled(value: boolean) {\n this.disabled = value;\n this.updateDisabled();\n }\n private disabled = false;\n\n @Input()\n set igoMatBadgeInverseColor(value: boolean) {\n this.inverseColor = value;\n this.updateColor();\n }\n private inverseColor = false;\n\n @Input()\n set igoMatBadgeInheritColor(value: boolean) {\n this.inheritColor = value;\n this.updateColor();\n }\n private inheritColor = false;\n\n @Input()\n set igoMatBadgeColor(value: string) {\n this.color = value;\n this.updateColor();\n }\n private color;\n\n @Input()\n set igoMatBadgeBackgroundColor(value: string | null) {\n this.backgroundColor = value;\n this.updateColor();\n }\n private backgroundColor;\n\n get badge() {\n return this.el.nativeElement.querySelector('.mat-badge-content');\n }\n\n private originalColor: string;\n\n ngOnInit() {\n this.badge.style.alignItems = 'center';\n this.badge.style.justifyContent = 'center';\n\n this.updateHidden();\n this.updateColor();\n this.updateHtml();\n }\n\n private updateHtml() {\n if (!this.badge) {\n return;\n }\n this.badge.innerHTML = '';\n if (this.html) {\n this.badge.innerHTML = this.html;\n }\n }\n private updateColor() {\n if (!this.badge) {\n return;\n }\n\n if (this.color || this.backgroundColor) {\n this.badge.style.color = this.color ? this.color : '';\n this.badge.style.background = this.backgroundColor\n ? this.backgroundColor\n : '';\n } else if (this.inheritColor) {\n if (this.inverseColor) {\n this.badge.style.color = 'currentColor';\n this.badge.style.background = 'none';\n } else {\n this.badge.style.color = '';\n this.badge.style.background = 'currentColor';\n }\n } else if (!this.inheritColor) {\n if (this.inverseColor) {\n this.badge.style.color = window\n .getComputedStyle(this.badge, null)\n .getPropertyValue('background-color');\n this.badge.style.background = 'none';\n } else {\n this.badge.style.color = '';\n this.badge.style.background = '';\n }\n }\n this.originalColor = this.badge.style.color;\n this.updateDisabled();\n }\n\n private updateHidden() {\n if (!this.badge) {\n return;\n }\n this.badge.style.display = this.hidden ? 'none' : 'flex';\n }\n\n private updateDisabled() {\n if (!this.badge || !this.inverseColor) {\n return;\n }\n if (this.disabled) {\n this.originalColor = this.badge.style.color;\n this.badge.style.color = '#b9b9b9';\n } else {\n this.badge.style.color = this.originalColor;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { IgoBadgeIconDirective } from './badge-icon.directive';\n\n/**\n * @deprecated import the IgoBadgeIconDirective directly\n */\n@NgModule({\n imports: [IgoBadgeIconDirective],\n exports: [IgoBadgeIconDirective]\n})\nexport class IgoMatBadgeIconModule {\n static forRoot(): ModuleWithProviders<IgoMatBadgeIconModule> {\n return {\n ngModule: IgoMatBadgeIconModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"igo2-common-badge.mjs","sources":["../../../packages/common/badge/src/badge-icon.directive.ts","../../../packages/common/badge/src/badge-icon.module.ts","../../../packages/common/badge/src/igo2-common-badge.ts"],"sourcesContent":["import { Directive, ElementRef, Input, OnInit, inject } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\n/**\n * This directive allow to add an icon inside a matBadge.\n * A value must be set into the matBadge directive ex: matBadge=\"icon\".\n * The badge content will be overrided by this current directive.\n */\n@Directive({\n selector: '[igoMatBadgeIcon]',\n providers: [MatIconModule]\n})\nexport class IgoBadgeIconDirective implements OnInit {\n private el = inject(ElementRef);\n\n @Input()\n set igoMatBadgeIcon(value: string) {\n this.html = `\n <mat-icon class=\"mat-icon material-symbols-outlined\" style=\"height: 16px; width: 16px; font-size: 16px;\">${value}</mat-icon>\n `;\n this.updateHtml();\n }\n private html?: string;\n\n @Input()\n set matBadgeHidden(value: boolean) {\n this.hidden = value;\n this.updateHidden();\n }\n private hidden = false;\n\n @Input()\n set matBadgeDisabled(value: boolean) {\n this.disabled = value;\n this.updateDisabled();\n }\n private disabled = false;\n\n @Input()\n set igoMatBadgeInverseColor(value: boolean) {\n this.inverseColor = value;\n this.updateColor();\n }\n private inverseColor = false;\n\n @Input()\n set igoMatBadgeInheritColor(value: boolean) {\n this.inheritColor = value;\n this.updateColor();\n }\n private inheritColor = false;\n\n @Input()\n set igoMatBadgeColor(value: string) {\n this.color = value;\n this.updateColor();\n }\n private color?: string;\n\n @Input()\n set igoMatBadgeBackgroundColor(value: string | null) {\n this.backgroundColor = value;\n this.updateColor();\n }\n private backgroundColor?: string | null;\n\n get badge() {\n return this.el.nativeElement.querySelector('.mat-badge-content');\n }\n\n private originalColor?: string;\n\n ngOnInit() {\n this.badge.style.alignItems = 'center';\n this.badge.style.justifyContent = 'center';\n\n this.updateHidden();\n this.updateColor();\n this.updateHtml();\n }\n\n private updateHtml() {\n if (!this.badge) {\n return;\n }\n this.badge.innerHTML = '';\n if (this.html) {\n this.badge.innerHTML = this.html;\n }\n }\n private updateColor() {\n if (!this.badge) {\n return;\n }\n\n if (this.color || this.backgroundColor) {\n this.badge.style.color = this.color ? this.color : '';\n this.badge.style.background = this.backgroundColor\n ? this.backgroundColor\n : '';\n } else if (this.inheritColor) {\n if (this.inverseColor) {\n this.badge.style.color = 'currentColor';\n this.badge.style.background = 'none';\n } else {\n this.badge.style.color = '';\n this.badge.style.background = 'currentColor';\n }\n } else if (!this.inheritColor) {\n if (this.inverseColor) {\n this.badge.style.color = window\n .getComputedStyle(this.badge, null)\n .getPropertyValue('background-color');\n this.badge.style.background = 'none';\n } else {\n this.badge.style.color = '';\n this.badge.style.background = '';\n }\n }\n this.originalColor = this.badge.style.color;\n this.updateDisabled();\n }\n\n private updateHidden() {\n if (!this.badge) {\n return;\n }\n this.badge.style.display = this.hidden ? 'none' : 'flex';\n }\n\n private updateDisabled() {\n if (!this.badge || !this.inverseColor) {\n return;\n }\n if (this.disabled) {\n this.originalColor = this.badge.style.color;\n this.badge.style.color = '#b9b9b9';\n } else {\n this.badge.style.color = this.originalColor;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { IgoBadgeIconDirective } from './badge-icon.directive';\n\n/**\n * @deprecated import the IgoBadgeIconDirective directly\n */\n@NgModule({\n imports: [IgoBadgeIconDirective],\n exports: [IgoBadgeIconDirective]\n})\nexport class IgoMatBadgeIconModule {\n static forRoot(): ModuleWithProviders<IgoMatBadgeIconModule> {\n return {\n ngModule: IgoMatBadgeIconModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Renderer2, ElementRef, output, HostListener, Input, Directive, input, model, Component, NgModule } from '@angular/core';
2
+ import { inject, Renderer2, ElementRef, input, output, HostListener, Input, Directive, model, Component, NgModule } from '@angular/core';
3
3
  import * as i2 from '@angular/material/icon';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import * as i1 from '@angular/material/list';
@@ -8,13 +8,7 @@ import { MatListModule } from '@angular/material/list';
8
8
  class CollapseDirective {
9
9
  renderer = inject(Renderer2);
10
10
  el = inject(ElementRef);
11
- get target() {
12
- return this._target;
13
- }
14
- set target(value) {
15
- this._target = value;
16
- }
17
- _target;
11
+ target = input(...(ngDevMode ? [undefined, { debugName: "target" }] : /* istanbul ignore next */ []));
18
12
  get collapsed() {
19
13
  return this._collapsed;
20
14
  }
@@ -29,24 +23,22 @@ class CollapseDirective {
29
23
  this.collapsed = !this.collapsed;
30
24
  }
31
25
  collapseTarget() {
32
- this.renderer.addClass(this.target, 'igo-collapsed');
26
+ this.renderer.addClass(this.target(), 'igo-collapsed');
33
27
  this.renderer.addClass(this.el.nativeElement, 'collapsed');
34
28
  }
35
29
  expandTarget() {
36
- this.renderer.removeClass(this.target, 'igo-collapsed');
30
+ this.renderer.removeClass(this.target(), 'igo-collapsed');
37
31
  this.renderer.removeClass(this.el.nativeElement, 'collapsed');
38
32
  }
39
33
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: CollapseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
40
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.10", type: CollapseDirective, isStandalone: true, selector: "[igoCollapse]", inputs: { target: "target", collapsed: "collapsed" }, outputs: { toggle: "toggle" }, host: { listeners: { "click": "click()" } }, ngImport: i0 });
34
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.10", type: CollapseDirective, isStandalone: true, selector: "[igoCollapse]", inputs: { target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { toggle: "toggle" }, host: { listeners: { "click": "click()" } }, ngImport: i0 });
41
35
  }
42
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: CollapseDirective, decorators: [{
43
37
  type: Directive,
44
38
  args: [{
45
39
  selector: '[igoCollapse]'
46
40
  }]
47
- }], propDecorators: { target: [{
48
- type: Input
49
- }], collapsed: [{
41
+ }], propDecorators: { target: [{ type: i0.Input, args: [{ isSignal: true, alias: "target", required: false }] }], collapsed: [{
50
42
  type: Input
51
43
  }], toggle: [{ type: i0.Output, args: ["toggle"] }], click: [{
52
44
  type: HostListener,