@igo2/common 20.2.0 → 21.0.0-next.10
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.
- package/fesm2022/igo2-common-action.mjs +62 -77
- package/fesm2022/igo2-common-action.mjs.map +1 -1
- package/fesm2022/igo2-common-backdrop.mjs +11 -20
- package/fesm2022/igo2-common-backdrop.mjs.map +1 -1
- package/fesm2022/igo2-common-badge.mjs +7 -8
- package/fesm2022/igo2-common-badge.mjs.map +1 -1
- package/fesm2022/igo2-common-clickout.mjs +11 -11
- package/fesm2022/igo2-common-clickout.mjs.map +1 -1
- package/fesm2022/igo2-common-clone.mjs +8 -9
- package/fesm2022/igo2-common-clone.mjs.map +1 -1
- package/fesm2022/igo2-common-collapsible.mjs +18 -27
- package/fesm2022/igo2-common-collapsible.mjs.map +1 -1
- package/fesm2022/igo2-common-color.mjs +10 -10
- package/fesm2022/igo2-common-color.mjs.map +1 -1
- package/fesm2022/igo2-common-confirm-dialog.mjs +12 -11
- package/fesm2022/igo2-common-confirm-dialog.mjs.map +1 -1
- package/fesm2022/igo2-common-context-menu.mjs +23 -27
- package/fesm2022/igo2-common-context-menu.mjs.map +1 -1
- package/fesm2022/igo2-common-custom-html.mjs +11 -12
- package/fesm2022/igo2-common-custom-html.mjs.map +1 -1
- package/fesm2022/igo2-common-datepicker.mjs +26 -20
- package/fesm2022/igo2-common-datepicker.mjs.map +1 -1
- package/fesm2022/igo2-common-dom.mjs +10 -8
- package/fesm2022/igo2-common-dom.mjs.map +1 -1
- package/fesm2022/igo2-common-drag-drop.mjs +83 -55
- package/fesm2022/igo2-common-drag-drop.mjs.map +1 -1
- package/fesm2022/igo2-common-dynamic-component.mjs +27 -21
- package/fesm2022/igo2-common-dynamic-component.mjs.map +1 -1
- package/fesm2022/igo2-common-entity.mjs +181 -148
- package/fesm2022/igo2-common-entity.mjs.map +1 -1
- package/fesm2022/igo2-common-flexible.mjs +26 -78
- package/fesm2022/igo2-common-flexible.mjs.map +1 -1
- package/fesm2022/igo2-common-form.mjs +426 -125
- package/fesm2022/igo2-common-form.mjs.map +1 -1
- package/fesm2022/igo2-common-home-button.mjs +7 -7
- package/fesm2022/igo2-common-icon.mjs +8 -8
- package/fesm2022/igo2-common-icon.mjs.map +1 -1
- package/fesm2022/igo2-common-image.mjs +14 -16
- package/fesm2022/igo2-common-image.mjs.map +1 -1
- package/fesm2022/igo2-common-interactive-tour.mjs +55 -32
- package/fesm2022/igo2-common-interactive-tour.mjs.map +1 -1
- package/fesm2022/igo2-common-json-dialog.mjs +11 -11
- package/fesm2022/igo2-common-json-dialog.mjs.map +1 -1
- package/fesm2022/igo2-common-keyvalue.mjs +11 -10
- package/fesm2022/igo2-common-keyvalue.mjs.map +1 -1
- package/fesm2022/igo2-common-list.mjs +28 -31
- package/fesm2022/igo2-common-list.mjs.map +1 -1
- package/fesm2022/igo2-common-panel.mjs +12 -13
- package/fesm2022/igo2-common-panel.mjs.map +1 -1
- package/fesm2022/igo2-common-resizable-bar.mjs +11 -17
- package/fesm2022/igo2-common-resizable-bar.mjs.map +1 -1
- package/fesm2022/igo2-common-select-value-dialog.mjs +23 -13
- package/fesm2022/igo2-common-select-value-dialog.mjs.map +1 -1
- package/fesm2022/igo2-common-sidenav.mjs +14 -19
- package/fesm2022/igo2-common-sidenav.mjs.map +1 -1
- package/fesm2022/igo2-common-spinner.mjs +14 -15
- package/fesm2022/igo2-common-spinner.mjs.map +1 -1
- package/fesm2022/igo2-common-stop-propagation.mjs +12 -14
- package/fesm2022/igo2-common-stop-propagation.mjs.map +1 -1
- package/fesm2022/igo2-common-table.mjs +62 -69
- package/fesm2022/igo2-common-table.mjs.map +1 -1
- package/fesm2022/igo2-common-timepicker.mjs +14 -15
- package/fesm2022/igo2-common-timepicker.mjs.map +1 -1
- package/fesm2022/igo2-common-tool.mjs +35 -32
- package/fesm2022/igo2-common-tool.mjs.map +1 -1
- package/fesm2022/igo2-common-widget.mjs +18 -18
- package/fesm2022/igo2-common-widget.mjs.map +1 -1
- package/fesm2022/igo2-common-workspace.mjs +28 -32
- package/fesm2022/igo2-common-workspace.mjs.map +1 -1
- package/package.json +60 -59
- package/{action/index.d.ts → types/igo2-common-action.d.ts} +2 -5
- package/{backdrop/index.d.ts → types/igo2-common-backdrop.d.ts} +2 -4
- package/{badge/index.d.ts → types/igo2-common-badge.d.ts} +4 -4
- package/{clickout/index.d.ts → types/igo2-common-clickout.d.ts} +1 -1
- package/{collapsible/index.d.ts → types/igo2-common-collapsible.d.ts} +2 -4
- package/{confirm-dialog/index.d.ts → types/igo2-common-confirm-dialog.d.ts} +1 -1
- package/{context-menu/index.d.ts → types/igo2-common-context-menu.d.ts} +2 -2
- package/{datepicker/index.d.ts → types/igo2-common-datepicker.d.ts} +9 -9
- package/{drag-drop/index.d.ts → types/igo2-common-drag-drop.d.ts} +15 -13
- package/{dynamic-component/index.d.ts → types/igo2-common-dynamic-component.d.ts} +3 -3
- package/{entity/index.d.ts → types/igo2-common-entity.d.ts} +64 -60
- package/types/igo2-common-flexible.d.ts +42 -0
- package/types/igo2-common-form.d.ts +568 -0
- package/{icon/index.d.ts → types/igo2-common-icon.d.ts} +1 -1
- package/{interactive-tour/index.d.ts → types/igo2-common-interactive-tour.d.ts} +6 -6
- package/{json-dialog/index.d.ts → types/igo2-common-json-dialog.d.ts} +4 -4
- package/{keyvalue/index.d.ts → types/igo2-common-keyvalue.d.ts} +4 -1
- package/{list/index.d.ts → types/igo2-common-list.d.ts} +7 -7
- package/{panel/index.d.ts → types/igo2-common-panel.d.ts} +1 -1
- package/{resizable-bar/index.d.ts → types/igo2-common-resizable-bar.d.ts} +4 -5
- package/{select-value-dialog/index.d.ts → types/igo2-common-select-value-dialog.d.ts} +2 -2
- package/{sidenav/index.d.ts → types/igo2-common-sidenav.d.ts} +2 -2
- package/{spinner/index.d.ts → types/igo2-common-spinner.d.ts} +1 -1
- package/{table/index.d.ts → types/igo2-common-table.d.ts} +17 -18
- package/{timepicker/index.d.ts → types/igo2-common-timepicker.d.ts} +3 -3
- package/{tool/index.d.ts → types/igo2-common-tool.d.ts} +7 -8
- package/{widget/index.d.ts → types/igo2-common-widget.d.ts} +7 -7
- package/{workspace/index.d.ts → types/igo2-common-workspace.d.ts} +12 -12
- package/flexible/index.d.ts +0 -56
- package/form/index.d.ts +0 -429
- /package/{clone/index.d.ts → types/igo2-common-clone.d.ts} +0 -0
- /package/{color/index.d.ts → types/igo2-common-color.d.ts} +0 -0
- /package/{custom-html/index.d.ts → types/igo2-common-custom-html.d.ts} +0 -0
- /package/{dom/index.d.ts → types/igo2-common-dom.d.ts} +0 -0
- /package/{environment/index.d.ts → types/igo2-common-environment.d.ts} +0 -0
- /package/{home-button/index.d.ts → types/igo2-common-home-button.d.ts} +0 -0
- /package/{image/index.d.ts → types/igo2-common-image.d.ts} +0 -0
- /package/{stop-propagation/index.d.ts → types/igo2-common-stop-propagation.d.ts} +0 -0
- /package/{index.d.ts → types/igo2-common.d.ts} +0 -0
|
@@ -42,7 +42,7 @@ class ActionStore extends EntityStore {
|
|
|
42
42
|
*/
|
|
43
43
|
class ActionbarItemComponent {
|
|
44
44
|
disabled$ = new BehaviorSubject(false);
|
|
45
|
-
checkCondition$ = new BehaviorSubject(
|
|
45
|
+
checkCondition$ = new BehaviorSubject(false);
|
|
46
46
|
tooltip$ = new BehaviorSubject(undefined);
|
|
47
47
|
noDisplay$ = new BehaviorSubject(false);
|
|
48
48
|
ngClass$ = new BehaviorSubject({});
|
|
@@ -57,23 +57,23 @@ class ActionbarItemComponent {
|
|
|
57
57
|
/**
|
|
58
58
|
* Action
|
|
59
59
|
*/
|
|
60
|
-
action = input(
|
|
60
|
+
action = input.required(...(ngDevMode ? [{ debugName: "action" }] : /* istanbul ignore next */ []));
|
|
61
61
|
/**
|
|
62
62
|
* Color
|
|
63
63
|
*/
|
|
64
|
-
color = input('default', ...(ngDevMode ? [{ debugName: "color" }] : []));
|
|
64
|
+
color = input('default', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
65
65
|
/**
|
|
66
66
|
* Whether the action title is displayed
|
|
67
67
|
*/
|
|
68
|
-
withTitle = input(true, ...(ngDevMode ? [{ debugName: "withTitle" }] : []));
|
|
68
|
+
withTitle = input(true, ...(ngDevMode ? [{ debugName: "withTitle" }] : /* istanbul ignore next */ []));
|
|
69
69
|
/**
|
|
70
70
|
* Whether the action icon is displayed
|
|
71
71
|
*/
|
|
72
|
-
withIcon = input(true, ...(ngDevMode ? [{ debugName: "withIcon" }] : []));
|
|
72
|
+
withIcon = input(true, ...(ngDevMode ? [{ debugName: "withIcon" }] : /* istanbul ignore next */ []));
|
|
73
73
|
/**
|
|
74
74
|
* Whether a tooltip should be shown
|
|
75
75
|
*/
|
|
76
|
-
withTooltip = input(true, ...(ngDevMode ? [{ debugName: "withTooltip" }] : []));
|
|
76
|
+
withTooltip = input(true, ...(ngDevMode ? [{ debugName: "withTooltip" }] : /* istanbul ignore next */ []));
|
|
77
77
|
/**
|
|
78
78
|
* Whether the action is disabled
|
|
79
79
|
*/
|
|
@@ -100,64 +100,49 @@ class ActionbarItemComponent {
|
|
|
100
100
|
* @internal
|
|
101
101
|
*/
|
|
102
102
|
get title() {
|
|
103
|
-
return this.action()
|
|
103
|
+
return this.action()?.title;
|
|
104
104
|
}
|
|
105
105
|
ngOnInit() {
|
|
106
|
-
const args = this.action().args || [];
|
|
107
106
|
const action = this.action();
|
|
108
|
-
|
|
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
|
|
114
|
-
this.checkCondition$$ = action
|
|
113
|
+
if (isObservable(action?.checkCondition)) {
|
|
114
|
+
this.checkCondition$$ = action?.checkCondition.subscribe((checkCondition) => this.updateCheckCondition(checkCondition));
|
|
115
115
|
}
|
|
116
116
|
else {
|
|
117
|
-
this.updateCheckCondition(action
|
|
117
|
+
this.updateCheckCondition(action?.checkCondition);
|
|
118
118
|
}
|
|
119
|
-
if (isObservable(action
|
|
120
|
-
this.tooltip$$ = action
|
|
119
|
+
if (isObservable(action?.tooltip)) {
|
|
120
|
+
this.tooltip$$ = action?.tooltip.subscribe((tooltip) => this.updateTooltip(tooltip));
|
|
121
121
|
}
|
|
122
122
|
else {
|
|
123
|
-
this.updateTooltip(action
|
|
123
|
+
this.updateTooltip(action?.tooltip);
|
|
124
124
|
}
|
|
125
|
-
if (action
|
|
125
|
+
if (action?.availability !== undefined) {
|
|
126
126
|
this.availability$$ = action
|
|
127
|
-
|
|
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
|
|
131
|
+
if (action?.display !== undefined) {
|
|
132
132
|
this.display$$ = action
|
|
133
|
-
|
|
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
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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,12 +162,12 @@ 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
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
183
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
167
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActionbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
168
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", 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
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActionbarItemComponent, decorators: [{
|
|
186
171
|
type: Component,
|
|
187
172
|
args: [{ selector: 'igo-actionbar-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
188
173
|
MatListModule,
|
|
@@ -195,8 +180,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", 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
|
|
199
|
-
}], propDecorators: { action: [{ type: i0.Input, args: [{ isSignal: true, alias: "action", required:
|
|
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,55 +237,55 @@ class ActionbarComponent {
|
|
|
252
237
|
/**
|
|
253
238
|
* Action store
|
|
254
239
|
*/
|
|
255
|
-
store = input(
|
|
240
|
+
store = input.required(...(ngDevMode ? [{ debugName: "store" }] : /* istanbul ignore next */ []));
|
|
256
241
|
/**
|
|
257
242
|
* Actionbar mode
|
|
258
243
|
*/
|
|
259
|
-
mode = input(ActionbarMode.Dock, ...(ngDevMode ? [{ debugName: "mode" }] : []));
|
|
244
|
+
mode = input(ActionbarMode.Dock, ...(ngDevMode ? [{ debugName: "mode" }] : /* istanbul ignore next */ []));
|
|
260
245
|
/**
|
|
261
246
|
* Whether a toggle button should be displayed (Dock mode)
|
|
262
247
|
*/
|
|
263
|
-
withToggleButton = input(false, ...(ngDevMode ? [{ debugName: "withToggleButton" }] : []));
|
|
248
|
+
withToggleButton = input(false, ...(ngDevMode ? [{ debugName: "withToggleButton" }] : /* istanbul ignore next */ []));
|
|
264
249
|
/**
|
|
265
250
|
* Whether a the actionbar should display buttons horizontally
|
|
266
251
|
*/
|
|
267
|
-
horizontal = input(false, ...(ngDevMode ? [{ debugName: "horizontal" }] : []));
|
|
252
|
+
horizontal = input(false, ...(ngDevMode ? [{ debugName: "horizontal" }] : /* istanbul ignore next */ []));
|
|
268
253
|
/**
|
|
269
254
|
* Color
|
|
270
255
|
*/
|
|
271
|
-
color = input('default', ...(ngDevMode ? [{ debugName: "color" }] : []));
|
|
256
|
+
color = input('default', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
272
257
|
/**
|
|
273
258
|
* Color of the button if action mode === overlay
|
|
274
259
|
*/
|
|
275
|
-
iconColor = input('default', ...(ngDevMode ? [{ debugName: "iconColor" }] : []));
|
|
260
|
+
iconColor = input('default', ...(ngDevMode ? [{ debugName: "iconColor" }] : /* istanbul ignore next */ []));
|
|
276
261
|
/**
|
|
277
262
|
* Whether action titles are displayed
|
|
278
263
|
*/
|
|
279
|
-
withTitle = input(true, ...(ngDevMode ? [{ debugName: "withTitle" }] : []));
|
|
264
|
+
withTitle = input(true, ...(ngDevMode ? [{ debugName: "withTitle" }] : /* istanbul ignore next */ []));
|
|
280
265
|
/**
|
|
281
266
|
* Whether action tooltips are displayed
|
|
282
267
|
*/
|
|
283
|
-
withTooltip = input(true, ...(ngDevMode ? [{ debugName: "withTooltip" }] : []));
|
|
268
|
+
withTooltip = input(true, ...(ngDevMode ? [{ debugName: "withTooltip" }] : /* istanbul ignore next */ []));
|
|
284
269
|
/**
|
|
285
270
|
* Whether action titles are displayed (condition for scroll button)
|
|
286
271
|
*/
|
|
287
|
-
scrollActive = input(true, ...(ngDevMode ? [{ debugName: "scrollActive" }] : []));
|
|
272
|
+
scrollActive = input(true, ...(ngDevMode ? [{ debugName: "scrollActive" }] : /* istanbul ignore next */ []));
|
|
288
273
|
/**
|
|
289
274
|
* Whether action icons are displayed
|
|
290
275
|
*/
|
|
291
|
-
withIcon = input(true, ...(ngDevMode ? [{ debugName: "withIcon" }] : []));
|
|
276
|
+
withIcon = input(true, ...(ngDevMode ? [{ debugName: "withIcon" }] : /* istanbul ignore next */ []));
|
|
292
277
|
/**
|
|
293
278
|
* Which icon want to be shown
|
|
294
279
|
*/
|
|
295
|
-
icon = input('more_horiz', ...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
280
|
+
icon = input('more_horiz', ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
296
281
|
/**
|
|
297
282
|
* Overlay X position
|
|
298
283
|
*/
|
|
299
|
-
xPosition = input('before', ...(ngDevMode ? [{ debugName: "xPosition" }] : []));
|
|
284
|
+
xPosition = input('before', ...(ngDevMode ? [{ debugName: "xPosition" }] : /* istanbul ignore next */ []));
|
|
300
285
|
/**
|
|
301
286
|
* Overlay Y position
|
|
302
287
|
*/
|
|
303
|
-
yPosition = input('above', ...(ngDevMode ? [{ debugName: "yPosition" }] : []));
|
|
288
|
+
yPosition = input('above', ...(ngDevMode ? [{ debugName: "yPosition" }] : /* istanbul ignore next */ []));
|
|
304
289
|
/**
|
|
305
290
|
* Class to add to the actionbar overlay
|
|
306
291
|
*/
|
|
@@ -355,14 +340,14 @@ class ActionbarComponent {
|
|
|
355
340
|
if (this.watcher !== undefined) {
|
|
356
341
|
this.watcher.destroy();
|
|
357
342
|
}
|
|
358
|
-
|
|
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
|
|
350
|
+
this.watcher?.destroy();
|
|
366
351
|
}
|
|
367
352
|
/**
|
|
368
353
|
* Invoke the action handler
|
|
@@ -378,10 +363,10 @@ class ActionbarComponent {
|
|
|
378
363
|
scrollUp() {
|
|
379
364
|
this.elRef.nativeElement.scrollBy(0, -52);
|
|
380
365
|
}
|
|
381
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
382
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
366
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActionbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
367
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", 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
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
369
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActionbarComponent, decorators: [{
|
|
385
370
|
type: Component,
|
|
386
371
|
args: [{ selector: 'igo-actionbar', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
387
372
|
MatButtonModule,
|
|
@@ -394,7 +379,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", 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:
|
|
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,
|
|
@@ -414,11 +399,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
414
399
|
* @deprecated import the ActionbarComponent directly
|
|
415
400
|
*/
|
|
416
401
|
class IgoActionModule {
|
|
417
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
418
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
419
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
402
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
403
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoActionModule, imports: [ActionbarComponent], exports: [ActionbarComponent] });
|
|
404
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionModule, imports: [ActionbarComponent] });
|
|
420
405
|
}
|
|
421
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
406
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionModule, decorators: [{
|
|
422
407
|
type: NgModule,
|
|
423
408
|
args: [{
|
|
424
409
|
imports: [ActionbarComponent],
|
|
@@ -430,11 +415,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
430
415
|
* @deprecated import the ActionbarComponent directly
|
|
431
416
|
*/
|
|
432
417
|
class IgoActionbarModule {
|
|
433
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
434
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
435
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
418
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
419
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoActionbarModule, imports: [ActionbarComponent], exports: [ActionbarComponent] });
|
|
420
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionbarModule, imports: [ActionbarComponent] });
|
|
436
421
|
}
|
|
437
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoActionbarModule, decorators: [{
|
|
438
423
|
type: NgModule,
|
|
439
424
|
args: [{
|
|
440
425
|
imports: [ActionbarComponent],
|
|
@@ -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,24 +1,15 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { NgClass } from '@angular/common';
|
|
2
|
+
import { input, Component, NgModule } from '@angular/core';
|
|
4
3
|
|
|
5
4
|
class BackdropComponent {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
set shown(value) {
|
|
10
|
-
this._shown = value;
|
|
11
|
-
}
|
|
12
|
-
_shown;
|
|
13
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: BackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.19", type: BackdropComponent, isStandalone: true, selector: "igo-backdrop", inputs: { shown: "shown" }, ngImport: i0, template: "<div [ngClass]=\"{ '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"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
5
|
+
shown = input(false, ...(ngDevMode ? [{ debugName: "shown" }] : /* istanbul ignore next */ []));
|
|
6
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: BackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.14", 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"] });
|
|
15
8
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: BackdropComponent, decorators: [{
|
|
17
10
|
type: Component,
|
|
18
|
-
args: [{ selector: 'igo-backdrop',
|
|
19
|
-
}], propDecorators: { shown: [{
|
|
20
|
-
type: Input
|
|
21
|
-
}] } });
|
|
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 }] }] } });
|
|
22
13
|
|
|
23
14
|
/**
|
|
24
15
|
* @deprecated import the BackdropComponent directly
|
|
@@ -30,11 +21,11 @@ class IgoBackdropModule {
|
|
|
30
21
|
providers: []
|
|
31
22
|
};
|
|
32
23
|
}
|
|
33
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
34
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
35
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoBackdropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
25
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoBackdropModule, imports: [BackdropComponent], exports: [BackdropComponent] });
|
|
26
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoBackdropModule });
|
|
36
27
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoBackdropModule, decorators: [{
|
|
38
29
|
type: NgModule,
|
|
39
30
|
args: [{
|
|
40
31
|
imports: [BackdropComponent],
|