@acorex/components 18.5.17 → 18.6.0
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/audio-wave/lib/audio-wave.component.d.ts +5 -0
- package/button-group/lib/button-group.component.d.ts +5 -2
- package/circular-progress/lib/circular-progress.component.d.ts +21 -57
- package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +28 -0
- package/data-pager/lib/data-pager-prev-buttons.component.d.ts +20 -0
- package/data-pager/lib/data-pager.component.d.ts +111 -0
- package/data-table/lib/columns/data-text-column.component.d.ts +58 -0
- package/data-table/lib/columns/row-command-column.component.d.ts +83 -0
- package/data-table/lib/columns/row-index-column.component.d.ts +51 -0
- package/data-table/lib/columns/row-select-column.component.d.ts +47 -0
- package/data-table/lib/data-table/data-table.component.d.ts +200 -0
- package/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.d.ts +185 -0
- package/datetime-box/lib/datetime-box.component.d.ts +59 -1
- package/datetime-input/lib/datetime-input.component.d.ts +133 -0
- package/datetime-picker/lib/datetime-picker.component.d.ts +95 -0
- package/decorators/lib/components/clear-button.component.d.ts +25 -0
- package/decorators/lib/components/close-button.component.d.ts +22 -0
- package/decorators/lib/components/generic-content.component.d.ts +4 -0
- package/decorators/lib/components/icon.component.d.ts +12 -0
- package/dialog/lib/dialog.component.d.ts +20 -0
- package/drawer/lib/drawer-container.component.d.ts +7 -0
- package/drawer/lib/drawer.component.d.ts +104 -0
- package/dropdown/lib/dropdown-box.component.d.ts +66 -0
- package/dropdown/lib/dropdown-panel.component.d.ts +85 -0
- package/dropdown-button/lib/dropdown-button.component.d.ts +38 -0
- package/esm2022/audio-wave/lib/audio-wave.component.mjs +6 -1
- package/esm2022/button-group/lib/button-group.component.mjs +6 -3
- package/esm2022/circular-progress/lib/circular-progress.component.mjs +45 -114
- package/esm2022/data-pager/lib/data-pager-pagesize-dropdown.component.mjs +23 -1
- package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +18 -1
- package/esm2022/data-pager/lib/data-pager.component.mjs +109 -1
- package/esm2022/data-table/lib/columns/data-text-column.component.mjs +32 -1
- package/esm2022/data-table/lib/columns/row-command-column.component.mjs +63 -1
- package/esm2022/data-table/lib/columns/row-index-column.component.mjs +40 -1
- package/esm2022/data-table/lib/columns/row-select-column.component.mjs +39 -1
- package/esm2022/data-table/lib/data-table/data-table.component.mjs +183 -1
- package/esm2022/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.mjs +159 -1
- package/esm2022/datetime-box/lib/datetime-box.component.mjs +51 -2
- package/esm2022/datetime-input/lib/datetime-input.component.mjs +122 -1
- package/esm2022/datetime-picker/lib/datetime-picker.component.mjs +90 -1
- package/esm2022/decorators/lib/components/clear-button.component.mjs +26 -1
- package/esm2022/decorators/lib/components/close-button.component.mjs +23 -1
- package/esm2022/decorators/lib/components/generic-content.component.mjs +5 -1
- package/esm2022/decorators/lib/components/icon.component.mjs +13 -1
- package/esm2022/dialog/lib/dialog.component.mjs +18 -1
- package/esm2022/drawer/lib/drawer-container.component.mjs +8 -1
- package/esm2022/drawer/lib/drawer.component.mjs +102 -1
- package/esm2022/dropdown/lib/dropdown-box.component.mjs +58 -1
- package/esm2022/dropdown/lib/dropdown-panel.component.mjs +77 -1
- package/esm2022/dropdown-button/lib/dropdown-button.component.mjs +36 -1
- package/esm2022/form/lib/form-field.component.mjs +40 -1
- package/esm2022/form/lib/form.component.mjs +59 -1
- package/esm2022/form/lib/validation-summary.component.mjs +41 -1
- package/esm2022/image/lib/image.component.mjs +47 -1
- package/esm2022/label/lib/label.component.mjs +32 -1
- package/esm2022/list/lib/list.component.mjs +84 -1
- package/esm2022/loading/lib/loading-spinner.component.mjs +17 -1
- package/esm2022/loading/lib/loading.component.mjs +27 -1
- package/esm2022/popup/lib/popup.component.mjs +2 -2
- package/esm2022/progress-bar/lib/progress-bar.component.mjs +1 -1
- package/esm2022/uploader/index.mjs +5 -5
- package/esm2022/uploader/lib/{uploader-dialog-container.component.mjs → uploader-dialog-container/uploader-dialog-container.component.mjs} +2 -2
- package/esm2022/uploader/lib/uploader-drop-zone/uploader-drop-zone.component.mjs +27 -0
- package/esm2022/uploader/lib/uploader-list/uploader-list.component.mjs +26 -0
- package/esm2022/uploader/lib/uploader-zone.directive.mjs +23 -16
- package/esm2022/uploader/lib/uploader.models.mjs +6 -1
- package/esm2022/uploader/lib/uploader.module.mjs +18 -13
- package/esm2022/uploader/lib/uploader.service.mjs +14 -7
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.mjs +50 -10
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.mjs +8 -16
- package/fesm2022/acorex-components-audio-wave.mjs +5 -0
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +5 -2
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +44 -113
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +147 -0
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +510 -0
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +50 -1
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +121 -0
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +89 -0
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +63 -0
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +17 -0
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +108 -0
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +35 -0
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +133 -0
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +137 -0
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +46 -0
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +31 -0
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +83 -0
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +42 -0
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +1 -1
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +63 -32
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +55 -25
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/form/lib/form-field.component.d.ts +45 -0
- package/form/lib/form.component.d.ts +58 -0
- package/form/lib/validation-summary.component.d.ts +49 -0
- package/image/lib/image.component.d.ts +61 -0
- package/label/lib/label.component.d.ts +34 -0
- package/list/lib/list.component.d.ts +98 -0
- package/loading/lib/loading-spinner.component.d.ts +20 -0
- package/loading/lib/loading.component.d.ts +35 -0
- package/package.json +66 -66
- package/progress-bar/lib/progress-bar.component.d.ts +0 -1
- package/uploader/index.d.ts +4 -4
- package/uploader/lib/{uploader-drop-zone.component.d.ts → uploader-drop-zone/uploader-drop-zone.component.d.ts} +3 -1
- package/uploader/lib/{uploader-list.component.d.ts → uploader-list/uploader-list.component.d.ts} +1 -1
- package/uploader/lib/uploader-zone.directive.d.ts +1 -0
- package/uploader/lib/uploader.models.d.ts +5 -0
- package/uploader/lib/uploader.module.d.ts +4 -4
- package/uploader/lib/uploader.service.d.ts +2 -1
- package/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.d.ts +16 -3
- package/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.d.ts +3 -4
- package/esm2022/uploader/lib/uploader-drop-zone.component.mjs +0 -18
- package/esm2022/uploader/lib/uploader-list.component.mjs +0 -26
- /package/uploader/lib/{uploader-dialog-container.component.d.ts → uploader-dialog-container/uploader-dialog-container.component.d.ts} +0 -0
|
@@ -62,12 +62,34 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
62
62
|
constructor() {
|
|
63
63
|
super(...arguments);
|
|
64
64
|
this._platform = inject(AXPlatform);
|
|
65
|
+
/**
|
|
66
|
+
* @ignore
|
|
67
|
+
*/
|
|
65
68
|
this._isMobile = false;
|
|
69
|
+
/**
|
|
70
|
+
* @ignore
|
|
71
|
+
*/
|
|
66
72
|
this._popoverWidth = '180px';
|
|
73
|
+
/**
|
|
74
|
+
* @ignore
|
|
75
|
+
*/
|
|
67
76
|
this._placement = convertToPlacement('bottom-start');
|
|
77
|
+
/**
|
|
78
|
+
* Emitted when the drawer is opened.
|
|
79
|
+
*
|
|
80
|
+
* @event
|
|
81
|
+
*/
|
|
68
82
|
this.onOpened = new EventEmitter();
|
|
83
|
+
/**
|
|
84
|
+
* Emitted when the drawer is closed.
|
|
85
|
+
*
|
|
86
|
+
* @event
|
|
87
|
+
*/
|
|
69
88
|
this.onClosed = new EventEmitter();
|
|
70
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* @ignore
|
|
92
|
+
*/
|
|
71
93
|
ngOnInit() {
|
|
72
94
|
super.ngOnInit();
|
|
73
95
|
this._target = this.getHostElement();
|
|
@@ -77,6 +99,9 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
77
99
|
this.close();
|
|
78
100
|
});
|
|
79
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* @ignore
|
|
104
|
+
*/
|
|
80
105
|
_handlePopupOnOpened(e) {
|
|
81
106
|
this._popover?.focus();
|
|
82
107
|
this.onOpened.emit({
|
|
@@ -84,6 +109,9 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
84
109
|
isUserInteraction: e.isUserInteraction,
|
|
85
110
|
});
|
|
86
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* @ignore
|
|
114
|
+
*/
|
|
87
115
|
_handlePopupOnClosed(e) {
|
|
88
116
|
this.focus();
|
|
89
117
|
this.onClosed.emit({
|
|
@@ -91,6 +119,9 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
91
119
|
isUserInteraction: e.isUserInteraction,
|
|
92
120
|
});
|
|
93
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* @ignore
|
|
124
|
+
*/
|
|
94
125
|
_handleKeydown(e) {
|
|
95
126
|
if (e.ctrlKey && e.code === 'ArrowDown') {
|
|
96
127
|
this.open();
|
|
@@ -101,14 +132,26 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
101
132
|
e.preventDefault();
|
|
102
133
|
}
|
|
103
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Updates the position of the popover.
|
|
137
|
+
* @ignore
|
|
138
|
+
*/
|
|
104
139
|
updatePosition() {
|
|
105
140
|
this._popover?.updatePosition();
|
|
106
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Toggles the popover open or closed, if not disabled.
|
|
144
|
+
* @ignore
|
|
145
|
+
*/
|
|
107
146
|
toggle() {
|
|
108
147
|
if (this.disabled !== true) {
|
|
109
148
|
this._popover.toggle();
|
|
110
149
|
}
|
|
111
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Closes the popover if it's open and not disabled, then focuses the element.
|
|
153
|
+
* @ignore
|
|
154
|
+
*/
|
|
112
155
|
close() {
|
|
113
156
|
if (!this.isOpen || this.disabled) {
|
|
114
157
|
return;
|
|
@@ -116,6 +159,10 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
116
159
|
this._popover.close();
|
|
117
160
|
this.focus();
|
|
118
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Opens the popover if it's not already open and not disabled, then focuses the popover.
|
|
164
|
+
* @ignore
|
|
165
|
+
*/
|
|
119
166
|
open() {
|
|
120
167
|
if (this.isOpen || this.disabled) {
|
|
121
168
|
return;
|
|
@@ -123,12 +170,22 @@ class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookCompo
|
|
|
123
170
|
this._popover.open();
|
|
124
171
|
this._popover.focus();
|
|
125
172
|
}
|
|
173
|
+
/**
|
|
174
|
+
* Indicates if the popover is currently open.
|
|
175
|
+
* @ignore
|
|
176
|
+
*/
|
|
126
177
|
get isOpen() {
|
|
127
178
|
return this._popover?.isOpen;
|
|
128
179
|
}
|
|
180
|
+
/**
|
|
181
|
+
* Indicates if the popover is styled as an actionsheet.
|
|
182
|
+
*/
|
|
129
183
|
get isActionsheetStyle() {
|
|
130
184
|
return this._popover?.isActionsheetStyle;
|
|
131
185
|
}
|
|
186
|
+
/**
|
|
187
|
+
* @ignore
|
|
188
|
+
*/
|
|
132
189
|
get __hostClass() {
|
|
133
190
|
return `ax-editor-container ax-look-${this.look} ${this.disabled ? 'ax-state-disabled' : ''}`;
|
|
134
191
|
}
|
|
@@ -154,10 +211,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
|
154
211
|
}] } });
|
|
155
212
|
|
|
156
213
|
/* eslint-disable @angular-eslint/no-host-metadata-property */
|
|
214
|
+
/**
|
|
215
|
+
* A panel for displaying dropdown content with configurable width and positioning.
|
|
216
|
+
*
|
|
217
|
+
* @category Components
|
|
218
|
+
*/
|
|
157
219
|
class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
220
|
+
/**
|
|
221
|
+
* Gets the target HTML element for the dropdown panel.
|
|
222
|
+
*/
|
|
158
223
|
get _target() {
|
|
159
224
|
return this.__target;
|
|
160
225
|
}
|
|
226
|
+
/**
|
|
227
|
+
* Sets the target HTML element for the dropdown panel.
|
|
228
|
+
*/
|
|
161
229
|
set _target(v) {
|
|
162
230
|
this.__target = v;
|
|
163
231
|
}
|
|
@@ -180,16 +248,46 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
180
248
|
// });
|
|
181
249
|
// });
|
|
182
250
|
// }
|
|
251
|
+
/**
|
|
252
|
+
* @ignore
|
|
253
|
+
*/
|
|
183
254
|
constructor() {
|
|
184
255
|
super();
|
|
185
256
|
this._platform = inject(AXPlatform);
|
|
257
|
+
/**
|
|
258
|
+
* @ignore
|
|
259
|
+
*/
|
|
186
260
|
this._isMobile = false;
|
|
261
|
+
/**
|
|
262
|
+
* @ignore
|
|
263
|
+
*/
|
|
187
264
|
this._placement = convertToPlacement('bottom-start');
|
|
265
|
+
/**
|
|
266
|
+
* @ignore
|
|
267
|
+
*/
|
|
188
268
|
this._subs = [];
|
|
269
|
+
/**
|
|
270
|
+
* Emitted when the dropdown panel is opened.
|
|
271
|
+
*
|
|
272
|
+
* @event
|
|
273
|
+
*/
|
|
189
274
|
this.onOpened = new EventEmitter();
|
|
275
|
+
/**
|
|
276
|
+
* Emitted when the dropdown panel is closed.
|
|
277
|
+
*
|
|
278
|
+
* @event
|
|
279
|
+
*/
|
|
190
280
|
this.onClosed = new EventEmitter();
|
|
281
|
+
/**
|
|
282
|
+
* Determines if adaptivity is enabled for the component.
|
|
283
|
+
*
|
|
284
|
+
* @defaultValue false
|
|
285
|
+
*/
|
|
191
286
|
this.adaptivityEnabled = false;
|
|
192
287
|
}
|
|
288
|
+
/**
|
|
289
|
+
* @ignore
|
|
290
|
+
*/
|
|
193
291
|
ngOnInit() {
|
|
194
292
|
if (isBrowser()) {
|
|
195
293
|
super.ngOnInit();
|
|
@@ -202,6 +300,9 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
202
300
|
});
|
|
203
301
|
}
|
|
204
302
|
}
|
|
303
|
+
/**
|
|
304
|
+
* @ignore
|
|
305
|
+
*/
|
|
205
306
|
ngAfterViewInit() {
|
|
206
307
|
[this._target, this.getHostElement()].forEach((el) => {
|
|
207
308
|
el?.addEventListener('keydown', (e) => {
|
|
@@ -212,11 +313,17 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
212
313
|
});
|
|
213
314
|
});
|
|
214
315
|
}
|
|
316
|
+
/**
|
|
317
|
+
* @ignore
|
|
318
|
+
*/
|
|
215
319
|
ngOnDestroy() {
|
|
216
320
|
this._subs.forEach((s) => {
|
|
217
321
|
s?.unsubscribe();
|
|
218
322
|
});
|
|
219
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* @ignore
|
|
326
|
+
*/
|
|
220
327
|
_handlePopupOnOpened(e) {
|
|
221
328
|
this._popover?.focus();
|
|
222
329
|
this.onOpened.emit({
|
|
@@ -224,6 +331,9 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
224
331
|
isUserInteraction: e.isUserInteraction,
|
|
225
332
|
});
|
|
226
333
|
}
|
|
334
|
+
/**
|
|
335
|
+
* @ignore
|
|
336
|
+
*/
|
|
227
337
|
_handlePopupOnClosed(e) {
|
|
228
338
|
this._target.focus();
|
|
229
339
|
this.onClosed.emit({
|
|
@@ -231,11 +341,19 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
231
341
|
isUserInteraction: e.isUserInteraction,
|
|
232
342
|
});
|
|
233
343
|
}
|
|
344
|
+
/**
|
|
345
|
+
* Toggles the popover open or closed, if not disabled.
|
|
346
|
+
* @ignore
|
|
347
|
+
*/
|
|
234
348
|
toggle() {
|
|
235
349
|
if (this.disabled !== true) {
|
|
236
350
|
this._popover.toggle();
|
|
237
351
|
}
|
|
238
352
|
}
|
|
353
|
+
/**
|
|
354
|
+
* Closes the popover if it is open and not disabled.
|
|
355
|
+
* @ignore
|
|
356
|
+
*/
|
|
239
357
|
close() {
|
|
240
358
|
if (!this.isOpen || this.disabled) {
|
|
241
359
|
return;
|
|
@@ -243,6 +361,10 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
243
361
|
this._popover.close();
|
|
244
362
|
this.focus();
|
|
245
363
|
}
|
|
364
|
+
/**
|
|
365
|
+
* Opens the popover if it is not already open and not disabled.
|
|
366
|
+
* @ignore
|
|
367
|
+
*/
|
|
246
368
|
open() {
|
|
247
369
|
if (this.isOpen || this.disabled) {
|
|
248
370
|
return;
|
|
@@ -250,12 +372,23 @@ class AXDropdownPanelComponent extends MXInteractiveComponent {
|
|
|
250
372
|
this._popover.open();
|
|
251
373
|
this._popover.focus();
|
|
252
374
|
}
|
|
375
|
+
/**
|
|
376
|
+
* Gets whether the popover is currently open.
|
|
377
|
+
* @ignore
|
|
378
|
+
*/
|
|
253
379
|
get isOpen() {
|
|
254
380
|
return this._popover?.isOpen;
|
|
255
381
|
}
|
|
382
|
+
/**
|
|
383
|
+
* Gets whether the popover is styled as an actionsheet.
|
|
384
|
+
* @ignore
|
|
385
|
+
*/
|
|
256
386
|
get isActionsheetStyle() {
|
|
257
387
|
return this._popover?.isActionsheetStyle;
|
|
258
388
|
}
|
|
389
|
+
/**
|
|
390
|
+
* @ignore
|
|
391
|
+
*/
|
|
259
392
|
get __hostClass() {
|
|
260
393
|
return ['ax-dropdown-panel'];
|
|
261
394
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../libs/components/dropdown/src/lib/dropdown-box.class.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.html","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.html","../../../../libs/components/dropdown/src/lib/dropdown.module.ts","../../../../libs/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@Injectable()\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected emitOnOpenedEvent(): void {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected emitOnClosedEvent(): void {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n protected abstract dropdown: AXDropdownBoxComponent;\n\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import { AXEvent, MXInteractiveComponent, MXLookComponent, convertToPlacement } from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { Component, EventEmitter, HostBinding, HostListener, OnInit, Output, ViewChild, inject } from '@angular/core';\nimport { classes } from 'polytype';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'look'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n host: { ngSkipHydration: 'true' },\n})\nexport class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookComponent) implements OnInit {\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _target: HTMLDivElement;\n protected _popoverTitle: string;\n protected _popoverWidth = '180px';\n protected _placement = convertToPlacement('bottom-start');\n\n @ViewChild(AXPopoverComponent, { static: true })\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n override ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._platform.resize.pipe(startWith()).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n if (!this.isActionsheetStyle) this.close();\n });\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.ctrlKey && e.code === 'ArrowDown') {\n this.open();\n e.preventDefault();\n }\n if (e.code === 'Escape') {\n this.close();\n e.preventDefault();\n }\n }\n\n updatePosition() {\n this._popover?.updatePosition();\n }\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n get isActionsheetStyle(): boolean {\n return this._popover?.isActionsheetStyle;\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-editor-container ax-look-${this.look} ${this.disabled ? 'ax-state-disabled' : ''}`;\n }\n}\n","<ng-content select=\"[input]\"> </ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover>\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" aria-modal=\"true\" (keydown)=\"_handleKeydown($event)\"\n [class.ax-overlay-actionsheet]=\"popover.isActionsheetStyle\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>","/* eslint-disable @angular-eslint/no-host-metadata-property */\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { AXClosbaleComponent, AXEvent, MXInteractiveComponent, convertToPlacement } from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform, isBrowser } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.scss'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXClosbaleComponent,\n useExisting: AXDropdownPanelComponent,\n },\n ],\n host: { ngSkipHydration: 'true' },\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnDestroy {\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _popoverTitle: string;\n protected _placement = convertToPlacement('bottom-start');\n\n _subs: Subscription[] = [];\n\n private __target: HTMLDivElement;\n @Input()\n public get _target(): HTMLDivElement {\n return this.__target;\n }\n public set _target(v: HTMLDivElement) {\n this.__target = v;\n }\n\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n @Input()\n adaptivityEnabled = false;\n\n // what the hell ???\n // constructor() {\n // super();\n // afterNextRender(() => {\n // this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n // this._platform.resize.pipe(startWith(null)).subscribe(() => {\n // this._isMobile = this._platform.is('SM');\n // this._popover?.close();\n // });\n // [this._target, this.getHostElement()].forEach((el) => {\n // el.addEventListener('keydown', (e) => {\n // if (e.code == 'Escape' && this.isOpen) {\n // e.stopPropagation();\n // this.close();\n // }\n // });\n // });\n // });\n // }\n\n constructor() {\n super();\n }\n\n override ngOnInit() {\n if (isBrowser()) {\n super.ngOnInit();\n if (!this._target) {\n this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n }\n this._platform.resize.pipe(startWith(null)).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n }\n\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el?.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n get isActionsheetStyle(): boolean {\n return this._popover?.isActionsheetStyle;\n }\n\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n}\n","<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div class=\"ax-overlay-pane\">\n <ng-content> </ng-content>\n </div>\n</ax-popover>\n","import { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\n\n@NgModule({\n imports: [CommonModule, AXCommonModule, A11yModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n declarations: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../libs/components/dropdown/src/lib/dropdown-box.class.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.html","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.html","../../../../libs/components/dropdown/src/lib/dropdown.module.ts","../../../../libs/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@Injectable()\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected emitOnOpenedEvent(): void {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected emitOnClosedEvent(): void {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n protected abstract dropdown: AXDropdownBoxComponent;\n\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import { AXEvent, MXInteractiveComponent, MXLookComponent, convertToPlacement } from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { Component, EventEmitter, HostBinding, HostListener, OnInit, Output, ViewChild, inject } from '@angular/core';\nimport { classes } from 'polytype';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'look'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n host: { ngSkipHydration: 'true' },\n})\nexport class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookComponent) implements OnInit {\n private _platform: AXPlatform = inject(AXPlatform);\n /**\n * @ignore\n */\n protected _isMobile = false;\n\n /**\n * @ignore\n */\n protected _target: HTMLDivElement;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _popoverWidth = '180px';\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent, { static: true })\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the drawer is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the drawer is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * @ignore\n */\n override ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._platform.resize.pipe(startWith()).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n if (!this.isActionsheetStyle) this.close();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.ctrlKey && e.code === 'ArrowDown') {\n this.open();\n e.preventDefault();\n }\n if (e.code === 'Escape') {\n this.close();\n e.preventDefault();\n }\n }\n\n /**\n * Updates the position of the popover.\n * @ignore\n */\n updatePosition() {\n this._popover?.updatePosition();\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it's open and not disabled, then focuses the element.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it's not already open and not disabled, then focuses the popover.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Indicates if the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * Indicates if the popover is styled as an actionsheet.\n */\n get isActionsheetStyle(): boolean {\n return this._popover?.isActionsheetStyle;\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-editor-container ax-look-${this.look} ${this.disabled ? 'ax-state-disabled' : ''}`;\n }\n}\n","<ng-content select=\"[input]\"> </ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover>\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" aria-modal=\"true\" (keydown)=\"_handleKeydown($event)\"\n [class.ax-overlay-actionsheet]=\"popover.isActionsheetStyle\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>","/* eslint-disable @angular-eslint/no-host-metadata-property */\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { AXClosbaleComponent, AXEvent, MXInteractiveComponent, convertToPlacement } from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform, isBrowser } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n/**\n * A panel for displaying dropdown content with configurable width and positioning.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.scss'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXClosbaleComponent,\n useExisting: AXDropdownPanelComponent,\n },\n ],\n host: { ngSkipHydration: 'true' },\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnDestroy {\n private _platform: AXPlatform = inject(AXPlatform);\n\n /**\n * @ignore\n */\n protected _isMobile = false;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n /**\n * @ignore\n */\n _subs: Subscription[] = [];\n\n /**\n * @ignore\n */\n private __target: HTMLDivElement;\n\n /**\n * Gets the target HTML element for the dropdown panel.\n */\n @Input()\n public get _target(): HTMLDivElement {\n return this.__target;\n }\n\n /**\n * Sets the target HTML element for the dropdown panel.\n */\n public set _target(v: HTMLDivElement) {\n this.__target = v;\n }\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the dropdown panel is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the dropdown panel is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Determines if adaptivity is enabled for the component.\n *\n * @defaultValue false\n */\n @Input()\n adaptivityEnabled = false;\n\n // what the hell ???\n // constructor() {\n // super();\n // afterNextRender(() => {\n // this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n // this._platform.resize.pipe(startWith(null)).subscribe(() => {\n // this._isMobile = this._platform.is('SM');\n // this._popover?.close();\n // });\n // [this._target, this.getHostElement()].forEach((el) => {\n // el.addEventListener('keydown', (e) => {\n // if (e.code == 'Escape' && this.isOpen) {\n // e.stopPropagation();\n // this.close();\n // }\n // });\n // });\n // });\n // }\n\n /**\n * @ignore\n */\n constructor() {\n super();\n }\n\n /**\n * @ignore\n */\n override ngOnInit() {\n if (isBrowser()) {\n super.ngOnInit();\n if (!this._target) {\n this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n }\n this._platform.resize.pipe(startWith(null)).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el?.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n /**\n * @ignore\n */\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it is open and not disabled.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it is not already open and not disabled.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Gets whether the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * Gets whether the popover is styled as an actionsheet.\n * @ignore\n */\n get isActionsheetStyle(): boolean {\n return this._popover?.isActionsheetStyle;\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n}\n","<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div class=\"ax-overlay-pane\">\n <ng-content> </ng-content>\n </div>\n</ax-popover>\n","import { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\n\n@NgModule({\n imports: [CommonModule, AXCommonModule, A11yModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n declarations: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -30,9 +30,16 @@ class AXFormValidationEvent extends AXEvent {
|
|
|
30
30
|
* @category Components
|
|
31
31
|
*/
|
|
32
32
|
class AXFormComponent extends MXBaseComponent {
|
|
33
|
+
/**
|
|
34
|
+
* Determines when the form should be updated.
|
|
35
|
+
*/
|
|
33
36
|
get updateOn() {
|
|
34
37
|
return this._updateOn;
|
|
35
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Sets the criteria for when the form should be updated.
|
|
41
|
+
* @param v The criteria to set (e.g., 'change', 'blur').
|
|
42
|
+
*/
|
|
36
43
|
set updateOn(v) {
|
|
37
44
|
this.setOption({
|
|
38
45
|
name: 'updateOn',
|
|
@@ -42,20 +49,53 @@ class AXFormComponent extends MXBaseComponent {
|
|
|
42
49
|
},
|
|
43
50
|
});
|
|
44
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* @ignore
|
|
54
|
+
*/
|
|
45
55
|
async _handleSubmit(e) {
|
|
46
56
|
e.preventDefault();
|
|
47
57
|
await this.validate();
|
|
48
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* @ignore
|
|
61
|
+
*/
|
|
49
62
|
_handleReset() {
|
|
50
63
|
this.reset();
|
|
51
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* @ignore
|
|
67
|
+
*/
|
|
52
68
|
constructor() {
|
|
53
69
|
super();
|
|
70
|
+
/**
|
|
71
|
+
* Specifies the mode of the label in the form field.
|
|
72
|
+
* @defaultValue 'static'
|
|
73
|
+
*/
|
|
54
74
|
this.labelMode = input('static');
|
|
75
|
+
/**
|
|
76
|
+
* Determines the style of the message in the form field.
|
|
77
|
+
* @defaultValue 'bottom'
|
|
78
|
+
*/
|
|
55
79
|
this.messageStyle = input('bottom');
|
|
80
|
+
/**
|
|
81
|
+
* Emitted when the form is validated.
|
|
82
|
+
*
|
|
83
|
+
* @event
|
|
84
|
+
*/
|
|
56
85
|
this.onValidate = new EventEmitter();
|
|
86
|
+
/**
|
|
87
|
+
* Emitted when the form's update mode changes.
|
|
88
|
+
*
|
|
89
|
+
* @event
|
|
90
|
+
*/
|
|
57
91
|
this.updateOnChange = new EventEmitter();
|
|
92
|
+
/**
|
|
93
|
+
* @ignore
|
|
94
|
+
*/
|
|
58
95
|
this._updateOn = 'blur';
|
|
96
|
+
/**
|
|
97
|
+
* @ignore
|
|
98
|
+
*/
|
|
59
99
|
this._subs = [];
|
|
60
100
|
}
|
|
61
101
|
//TODO: check update on
|
|
@@ -82,10 +122,16 @@ class AXFormComponent extends MXBaseComponent {
|
|
|
82
122
|
// }
|
|
83
123
|
// });
|
|
84
124
|
// }
|
|
125
|
+
/**
|
|
126
|
+
* @ignore
|
|
127
|
+
*/
|
|
85
128
|
_clearSubs() {
|
|
86
129
|
this._subs.forEach((c) => c?.unsubscribe());
|
|
87
130
|
this._subs = [];
|
|
88
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* @ignore
|
|
134
|
+
*/
|
|
89
135
|
get fields() {
|
|
90
136
|
return Array.from(this.getHostElement().querySelectorAll('[ax-form-item="true"]'))
|
|
91
137
|
.map((c) => c.__axContext__)
|
|
@@ -101,6 +147,9 @@ class AXFormComponent extends MXBaseComponent {
|
|
|
101
147
|
this._emitOnValidateEvent(mergedSummary);
|
|
102
148
|
return mergedSummary;
|
|
103
149
|
}
|
|
150
|
+
/**
|
|
151
|
+
* @ignore
|
|
152
|
+
*/
|
|
104
153
|
_emitOnValidateEvent(e) {
|
|
105
154
|
this.onValidate.emit({
|
|
106
155
|
component: this,
|
|
@@ -108,12 +157,21 @@ class AXFormComponent extends MXBaseComponent {
|
|
|
108
157
|
htmlElement: this.getHostElement(),
|
|
109
158
|
});
|
|
110
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Resets all form fields without clearing errors.
|
|
162
|
+
*/
|
|
111
163
|
reset() {
|
|
112
164
|
this.fields.forEach((c) => c.reset(false));
|
|
113
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Resets validation errors for all form fields.
|
|
168
|
+
*/
|
|
114
169
|
resetErrors() {
|
|
115
170
|
this.fields.forEach((c) => c.resetErrors());
|
|
116
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* @ignore
|
|
174
|
+
*/
|
|
117
175
|
ngOnDestroy() {
|
|
118
176
|
this._clearSubs();
|
|
119
177
|
}
|
|
@@ -140,10 +198,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
|
140
198
|
type: Input
|
|
141
199
|
}] } });
|
|
142
200
|
|
|
201
|
+
/**
|
|
202
|
+
* A container component for form fields that provides styling and structure.
|
|
203
|
+
*
|
|
204
|
+
* @category Components
|
|
205
|
+
*/
|
|
143
206
|
class AXFormFieldComponent extends MXBaseComponent {
|
|
207
|
+
/**
|
|
208
|
+
* @ignore
|
|
209
|
+
*/
|
|
144
210
|
constructor() {
|
|
145
211
|
super();
|
|
212
|
+
/**
|
|
213
|
+
* Specifies the mode of the label in the form field.
|
|
214
|
+
* @defaultValue 'static'
|
|
215
|
+
*/
|
|
146
216
|
this.labelMode = input('static');
|
|
217
|
+
/**
|
|
218
|
+
* @ignore
|
|
219
|
+
*/
|
|
147
220
|
this._labelMode = signal(this.labelMode());
|
|
148
221
|
this.unsubscriber = inject(AXUnsubscriber);
|
|
149
222
|
this.form = inject(AXFormComponent, { optional: true });
|
|
@@ -158,21 +231,39 @@ class AXFormFieldComponent extends MXBaseComponent {
|
|
|
158
231
|
this.setLabelMode();
|
|
159
232
|
}, { allowSignalWrites: true });
|
|
160
233
|
}
|
|
234
|
+
/**
|
|
235
|
+
* Calculates and sets the indentation size for the label based on the width of the prefix element.
|
|
236
|
+
* @ignore
|
|
237
|
+
*/
|
|
161
238
|
calcIndentSize() {
|
|
162
239
|
const prefix = this.input?.getHostElement()?.querySelector('ax-prefix');
|
|
163
240
|
if (prefix) {
|
|
164
241
|
this.label.getHostElement().style.insetInlineStart = prefix?.clientWidth + 'px';
|
|
165
242
|
}
|
|
166
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Sets the required attribute for the input field based on validation rules.
|
|
246
|
+
* Automatically updates if validation rules change.
|
|
247
|
+
* @ignore
|
|
248
|
+
*/
|
|
167
249
|
setRequired() {
|
|
168
250
|
this.autoSetRequired();
|
|
169
251
|
this.input?.validationRulesChange.pipe(this.unsubscriber.takeUntilDestroy).subscribe(() => {
|
|
170
252
|
this.autoSetRequired();
|
|
171
253
|
});
|
|
172
254
|
}
|
|
255
|
+
/**
|
|
256
|
+
* Sets the label mode based on the form's label mode configuration.
|
|
257
|
+
* @ignore
|
|
258
|
+
*/
|
|
173
259
|
setLabelMode() {
|
|
174
260
|
this._labelMode.set(this.form?.labelMode());
|
|
175
261
|
}
|
|
262
|
+
/**
|
|
263
|
+
* Subscribes to focus and blur events on the input element.
|
|
264
|
+
* Adds or removes the 'ax-state-focused' class to/from the host element based on the focus state.
|
|
265
|
+
* @ignone
|
|
266
|
+
*/
|
|
176
267
|
listeningEvent() {
|
|
177
268
|
const focusEvent = this.input?.['onFocus'];
|
|
178
269
|
focusEvent?.subscribe((e) => {
|
|
@@ -199,6 +290,9 @@ class AXFormFieldComponent extends MXBaseComponent {
|
|
|
199
290
|
// break;
|
|
200
291
|
// }
|
|
201
292
|
// }
|
|
293
|
+
/**
|
|
294
|
+
* @ignore
|
|
295
|
+
*/
|
|
202
296
|
autoSetRequired() {
|
|
203
297
|
if (this.label && this.input) {
|
|
204
298
|
if (this.label.required == null || this.label['autoSetRequired']) {
|
|
@@ -207,6 +301,9 @@ class AXFormFieldComponent extends MXBaseComponent {
|
|
|
207
301
|
}
|
|
208
302
|
}
|
|
209
303
|
}
|
|
304
|
+
/**
|
|
305
|
+
* @ignore
|
|
306
|
+
*/
|
|
210
307
|
get __hostClass() {
|
|
211
308
|
let hasValue;
|
|
212
309
|
if (this.input) {
|
|
@@ -283,20 +380,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
|
283
380
|
type: Input
|
|
284
381
|
}] } });
|
|
285
382
|
|
|
383
|
+
/**
|
|
384
|
+
* Displays validation summaries in the form of an alert.
|
|
385
|
+
*
|
|
386
|
+
* @category Components
|
|
387
|
+
*/
|
|
286
388
|
class AXValidationSummaryComponent extends MXBaseComponent {
|
|
389
|
+
/**
|
|
390
|
+
* The title of the validation summary alert.
|
|
391
|
+
*/
|
|
287
392
|
get title() {
|
|
288
393
|
return this._title;
|
|
289
394
|
}
|
|
395
|
+
/**
|
|
396
|
+
* Sets the title of the validation summary alert.
|
|
397
|
+
*
|
|
398
|
+
* @param v The title to be set.
|
|
399
|
+
*/
|
|
290
400
|
set title(v) {
|
|
291
401
|
this._title = v;
|
|
292
402
|
}
|
|
403
|
+
/**
|
|
404
|
+
* @ignore
|
|
405
|
+
*/
|
|
293
406
|
constructor(_tosatService, host) {
|
|
294
407
|
super();
|
|
295
408
|
this._tosatService = _tosatService;
|
|
296
409
|
this.host = host;
|
|
410
|
+
/**
|
|
411
|
+
* @ignore
|
|
412
|
+
*/
|
|
297
413
|
this._content = null;
|
|
414
|
+
/**
|
|
415
|
+
* @ignore
|
|
416
|
+
*/
|
|
298
417
|
this._title = 'validation.messages.title';
|
|
418
|
+
/**
|
|
419
|
+
* Specifies the display mode for the validation summary.
|
|
420
|
+
*
|
|
421
|
+
* @defaultValue 'toast'
|
|
422
|
+
*/
|
|
299
423
|
this.displayMode = 'toast';
|
|
424
|
+
/**
|
|
425
|
+
* Determines whether the validation summary should automatically hide after a specified time.
|
|
426
|
+
* @defaultValue false
|
|
427
|
+
*/
|
|
300
428
|
this.autoHide = false;
|
|
301
429
|
//
|
|
302
430
|
this.sub = host.onValidate.subscribe((e) => {
|
|
@@ -322,12 +450,21 @@ class AXValidationSummaryComponent extends MXBaseComponent {
|
|
|
322
450
|
this.cdr.markForCheck();
|
|
323
451
|
});
|
|
324
452
|
}
|
|
453
|
+
/**
|
|
454
|
+
* @ignore
|
|
455
|
+
*/
|
|
325
456
|
formatRule(rule) {
|
|
326
457
|
return rule.title ? `<li><b>${rule.title}:</b> ${rule.message}</li>` : `<li>${rule.message}</li>`;
|
|
327
458
|
}
|
|
459
|
+
/**
|
|
460
|
+
* @ignore
|
|
461
|
+
*/
|
|
328
462
|
_handleOnDismissed() {
|
|
329
463
|
this._content = null;
|
|
330
464
|
}
|
|
465
|
+
/**
|
|
466
|
+
* @ignore
|
|
467
|
+
*/
|
|
331
468
|
ngOnDestroy() {
|
|
332
469
|
this.sub?.unsubscribe();
|
|
333
470
|
}
|