@acorex/components 22.0.0-next.9 → 22.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/combo-box/README.md +35 -0
  2. package/fesm2022/acorex-components-accordion.mjs +2 -2
  3. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  4. package/fesm2022/acorex-components-action-sheet.mjs +1 -0
  5. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  6. package/fesm2022/acorex-components-alert.mjs +2 -2
  7. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  8. package/fesm2022/acorex-components-button.mjs +4 -4
  9. package/fesm2022/acorex-components-button.mjs.map +1 -1
  10. package/fesm2022/acorex-components-calendar.mjs +10 -12
  11. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  12. package/fesm2022/acorex-components-check-box.mjs +2 -2
  13. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  14. package/fesm2022/acorex-components-combo-box.mjs +783 -0
  15. package/fesm2022/acorex-components-combo-box.mjs.map +1 -0
  16. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-DCcRJYfF.mjs +50 -0
  17. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-DCcRJYfF.mjs.map +1 -0
  18. package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs → acorex-components-conversation-open-composer-picker-for-files-DnSW908R.mjs} +7 -20
  19. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-DnSW908R.mjs.map +1 -0
  20. package/fesm2022/acorex-components-conversation.mjs +8966 -16359
  21. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  22. package/fesm2022/acorex-components-data-table.mjs +188 -64
  23. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  24. package/fesm2022/acorex-components-datetime-box.mjs +14 -16
  25. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  26. package/fesm2022/acorex-components-datetime-input.mjs +61 -32
  27. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  28. package/fesm2022/acorex-components-decorators.mjs +21 -5
  29. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  30. package/fesm2022/acorex-components-dialog.mjs +7 -4
  31. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  32. package/fesm2022/acorex-components-drawer.mjs +2 -2
  33. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  34. package/fesm2022/acorex-components-dropdown.mjs +4 -4
  35. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  36. package/fesm2022/acorex-components-fab.mjs +5 -5
  37. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  38. package/fesm2022/acorex-components-file-viewer.mjs +27 -27
  39. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  40. package/fesm2022/acorex-components-form.mjs +21 -5
  41. package/fesm2022/acorex-components-form.mjs.map +1 -1
  42. package/fesm2022/acorex-components-grid-layout-builder.mjs +238 -36
  43. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  44. package/fesm2022/acorex-components-label.mjs +2 -2
  45. package/fesm2022/acorex-components-label.mjs.map +1 -1
  46. package/fesm2022/acorex-components-list.mjs +2 -2
  47. package/fesm2022/acorex-components-list.mjs.map +1 -1
  48. package/fesm2022/acorex-components-loading-dialog.mjs +59 -42
  49. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  50. package/fesm2022/acorex-components-lookup.mjs +2897 -0
  51. package/fesm2022/acorex-components-lookup.mjs.map +1 -0
  52. package/fesm2022/acorex-components-map.mjs +2 -2
  53. package/fesm2022/acorex-components-map.mjs.map +1 -1
  54. package/fesm2022/acorex-components-menu.mjs +238 -75
  55. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  56. package/fesm2022/acorex-components-notification.mjs +13 -6
  57. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  58. package/fesm2022/acorex-components-number-box.mjs +30 -29
  59. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  60. package/fesm2022/acorex-components-password-box.mjs +3 -3
  61. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  62. package/fesm2022/acorex-components-popover.mjs +40 -6
  63. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  64. package/fesm2022/acorex-components-popup.mjs +4 -2
  65. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  66. package/fesm2022/acorex-components-radio.mjs +2 -2
  67. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  68. package/fesm2022/acorex-components-range-slider.mjs +2 -2
  69. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  70. package/fesm2022/acorex-components-scheduler.mjs +12 -22
  71. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  72. package/fesm2022/acorex-components-select-box.mjs +55 -18
  73. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  74. package/fesm2022/acorex-components-selection-list.mjs +2 -2
  75. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  76. package/fesm2022/acorex-components-switch.mjs +2 -2
  77. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  78. package/fesm2022/acorex-components-tabs.mjs +2 -2
  79. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  80. package/fesm2022/acorex-components-tag-box.mjs +2 -2
  81. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  82. package/fesm2022/acorex-components-text-area.mjs +2 -2
  83. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  84. package/fesm2022/acorex-components-toast.mjs +9 -2
  85. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  86. package/fesm2022/acorex-components-tooltip.mjs +2 -2
  87. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  88. package/fesm2022/acorex-components-tree-view.mjs +40 -3
  89. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  90. package/lookup/README.md +74 -0
  91. package/package.json +12 -7
  92. package/select-box/README.md +5 -0
  93. package/types/acorex-components-action-sheet.d.ts +9 -1
  94. package/types/acorex-components-combo-box.d.ts +280 -0
  95. package/types/acorex-components-conversation.d.ts +947 -1354
  96. package/types/acorex-components-data-table.d.ts +47 -5
  97. package/types/acorex-components-datetime-box.d.ts +2 -0
  98. package/types/acorex-components-datetime-input.d.ts +24 -5
  99. package/types/acorex-components-decorators.d.ts +1 -0
  100. package/types/acorex-components-dialog.d.ts +9 -0
  101. package/types/acorex-components-grid-layout-builder.d.ts +34 -2
  102. package/types/acorex-components-loading-dialog.d.ts +12 -4
  103. package/types/acorex-components-lookup.d.ts +831 -0
  104. package/types/acorex-components-menu.d.ts +28 -4
  105. package/types/acorex-components-notification.d.ts +11 -1
  106. package/types/acorex-components-number-box.d.ts +3 -1
  107. package/types/acorex-components-popover.d.ts +12 -1
  108. package/types/acorex-components-popup.d.ts +9 -1
  109. package/types/acorex-components-scheduler.d.ts +2 -4
  110. package/types/acorex-components-select-box.d.ts +21 -4
  111. package/types/acorex-components-toast.d.ts +10 -1
  112. package/types/acorex-components-tree-view.d.ts +9 -1
  113. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs +0 -106
  114. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs.map +0 -1
  115. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs.map +0 -1
  116. package/fesm2022/acorex-components-selection-list-2.mjs +0 -168
  117. package/fesm2022/acorex-components-selection-list-2.mjs.map +0 -1
  118. package/selection-list-2/README.md +0 -3
  119. package/types/acorex-components-selection-list-2.d.ts +0 -52
@@ -155,6 +155,7 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
155
155
  set highlightText(value: string | undefined);
156
156
  selectedRowsChange: EventEmitter<unknown[]>;
157
157
  protected readonly highlightedRows: WritableSignal<Map<string | number, AXDataTableRowHighlight>>;
158
+ protected readonly highlightedColumns: WritableSignal<Map<string, AXDataTableRowColorType>>;
158
159
  private readonly rowCssClassCache;
159
160
  private readonly cellCssClassCache;
160
161
  private readonly highlightService;
@@ -180,9 +181,40 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
180
181
  */
181
182
  highlightRows(rows: unknown[], options?: AXDataTableRowHighlightOptions): void;
182
183
  /**
183
- * Clears all temporary row highlights.
184
+ * Applies a color highlight to rows by their key (id) values.
185
+ * Unlike `highlightRow`, no badge, pulse, or pinning is applied.
186
+ *
187
+ * @param keys - Key (id) values of the rows to highlight.
188
+ * @param color - Semantic highlight color. @defaultValue `'primary'`
189
+ */
190
+ highlightRowsByKey(keys: (string | number)[], color?: AXDataTableRowColorType): void;
191
+ /**
192
+ * Clears temporary row highlights.
193
+ *
194
+ * @param keys - When provided, only highlights of rows with these key (id) values are cleared.
195
+ */
196
+ clearRowHighlights(keys?: (string | number)[]): void;
197
+ /**
198
+ * Applies a color highlight to one or more columns.
199
+ *
200
+ * @param columnNames - Column identifiers; either the column `name` (e.g. `cl-firstName`) or its `dataField`.
201
+ * @param color - Semantic highlight color. @defaultValue `'primary'`
202
+ */
203
+ highlightColumns(columnNames: string | string[], color?: AXDataTableRowColorType): void;
204
+ /**
205
+ * Clears column highlights.
206
+ *
207
+ * @param columnNames - When provided, only highlights of these columns are cleared.
208
+ */
209
+ clearColumnHighlights(columnNames?: string | string[]): void;
210
+ /**
211
+ * Returns the highlight color of a column, if any.
212
+ */
213
+ getColumnHighlightColor(column: AXDataTableColumnComponent): AXDataTableRowColorType | null;
214
+ /**
215
+ * Returns the CSS class of a highlighted column, applied to its header and body cells.
184
216
  */
185
- clearRowHighlights(): void;
217
+ getColumnCssClass(column: AXDataTableColumnComponent): string;
186
218
  /**
187
219
  * Returns the temporary highlight state for a row, if any.
188
220
  */
@@ -200,7 +232,7 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
200
232
  */
201
233
  getRowCssClass(row: unknown, rowIndex: number): string;
202
234
  /**
203
- * Returns CSS classes for a body cell, merging column `cssClass` with `cellCssClass`.
235
+ * Returns CSS classes for a body cell, merging column `cssClass`, column highlight, and `cellCssClass`.
204
236
  */
205
237
  getCellCssClass(row: unknown, column: AXDataTableColumnComponent, rowIndex: number): string;
206
238
  /**
@@ -396,7 +428,7 @@ declare class AXDataTableTextColumnComponent extends AXDataTableColumnComponent
396
428
  /**
397
429
  * @ignore
398
430
  */
399
- protected handleExpandRow(row: any): Promise<void>;
431
+ protected handleExpandRow(row: any, event?: Event): Promise<void>;
400
432
  /**
401
433
  * Generates a unique name based on the `dataField` value.
402
434
  */
@@ -609,7 +641,7 @@ declare class AXRowExpandColumnComponent extends AXDataTableColumnComponent {
609
641
  /**
610
642
  * @ignore
611
643
  */
612
- protected handleExpandRow(row: any): Promise<void>;
644
+ protected handleExpandRow(row: any, event?: Event): Promise<void>;
613
645
  /**
614
646
  * Indicates whether loading is enabled for the column.
615
647
  */
@@ -821,6 +853,11 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
821
853
  * @ignore
822
854
  */
823
855
  protected normalColumnsList: Signal<any[]>;
856
+ /**
857
+ * True when a text column owns the tree expander. That column stays `width: auto`
858
+ * so leftover table space is used for nested indent instead of the empty spacer.
859
+ */
860
+ protected hasTreeFillColumn: Signal<boolean>;
824
861
  /**
825
862
  * @ignore
826
863
  */
@@ -1019,11 +1056,16 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
1019
1056
  * @ignore
1020
1057
  */
1021
1058
  ngOnInit(): void;
1059
+ private applyLoadedRows;
1022
1060
  /**
1023
1061
  * @ignore
1024
1062
  */
1025
1063
  ngAfterViewInit(): void;
1026
1064
  private captureAutoFitIntentColumns;
1065
+ /**
1066
+ * Tree expand columns must keep `width: auto` so nested indent can use leftover table space.
1067
+ */
1068
+ private isTreeFillColumn;
1027
1069
  /**
1028
1070
  * Returns the display text for a cell. Used for the cell tooltip when the column has `hasTitle`.
1029
1071
  */
@@ -37,6 +37,7 @@ declare const AXDateTimeBoxComponent_base: polytype.Polytype.ClusteredConstructo
37
37
  * @category Components
38
38
  */
39
39
  declare class AXDateTimeBoxComponent extends AXDateTimeBoxComponent_base {
40
+ private readonly defaultConfig;
40
41
  /**
41
42
  * @ignore
42
43
  */
@@ -59,6 +60,7 @@ declare class AXDateTimeBoxComponent extends AXDateTimeBoxComponent_base {
59
60
  * Indicates whether typing is allowed in the input.
60
61
  * When false, clicking the input (or the calendar icon) opens the picker.
61
62
  * When true, the input is for typing and the picker opens from the calendar button.
63
+ * Defaults to `AX_DATETIME_INPUT_CONFIG.allowTyping` when not set on the instance.
62
64
  *
63
65
  * @defaultValue false
64
66
  */
@@ -1,6 +1,8 @@
1
1
  import * as _angular_core from '@angular/core';
2
+ import { InjectionToken } from '@angular/core';
2
3
  import { MXInputBaseValueComponent, AXClickEvent } from '@acorex/cdk/common';
3
4
  import { AXDateTimePickerType } from '@acorex/components/calendar';
5
+ import { AXLocaleProfile } from '@acorex/core/locale';
4
6
 
5
7
  /**
6
8
  * A component for date and time input with segment-based typing, keyboard navigation,
@@ -10,9 +12,9 @@ import { AXDateTimePickerType } from '@acorex/components/calendar';
10
12
  */
11
13
  declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
12
14
  #private;
13
- private platformService;
14
15
  private localeService;
15
16
  private calendarService;
17
+ private readonly defaultConfig;
16
18
  /** @ignore */
17
19
  private readonly _editingParts;
18
20
  /** @ignore */
@@ -24,6 +26,7 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
24
26
  /**
25
27
  * When true, the user can type digits and navigate segments with the keyboard.
26
28
  * When false, keyboard input is blocked (used by datetime-box picker mode).
29
+ * Defaults to `AX_DATETIME_INPUT_CONFIG.allowTyping` when not set on the instance.
27
30
  * @defaultValue false
28
31
  */
29
32
  allowTyping: _angular_core.InputSignal<boolean>;
@@ -46,6 +49,8 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
46
49
  protected readonly _calendarSystem: _angular_core.Signal<string>;
47
50
  protected readonly _resolvedFormat: _angular_core.Signal<string>;
48
51
  /** @ignore */
52
+ protected readonly _isHijriRtl: _angular_core.Signal<boolean>;
53
+ /** @ignore */
49
54
  private _editingDate;
50
55
  /** @ignore */
51
56
  private inputRef;
@@ -54,9 +59,7 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
54
59
  /**
55
60
  * @description check if page is in rtl or ltr
56
61
  */
57
- protected isRtl: _angular_core.WritableSignal<boolean>;
58
- /** @ignore */
59
- protected ngOnInit(): void;
62
+ protected readonly isRtl: _angular_core.Signal<boolean>;
60
63
  /**
61
64
  * Formats a part using the calendar already attached to the AXDateTime.
62
65
  * @ignore
@@ -67,6 +70,8 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
67
70
  /** @ignore */
68
71
  private _getOrderedParts;
69
72
  /** @ignore */
73
+ private _getNavigationParts;
74
+ /** @ignore */
70
75
  private _clearInputBuffer;
71
76
  /** @ignore */
72
77
  private _updateText;
@@ -108,10 +113,24 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
108
113
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXDateTimeInputComponent, "ax-datetime-input", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "allowTyping": { "alias": "allowTyping"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "picker": { "alias": "picker"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "onClick": "onClick"; }, never, ["ax-validation-rule"], true, never>;
109
114
  }
110
115
 
116
+ interface AXDateTimeInputConfig {
117
+ allowTyping: boolean;
118
+ }
119
+ declare const AXDateTimeInputDefaultConfig: AXDateTimeInputConfig;
120
+ declare const AX_DATETIME_INPUT_CONFIG: InjectionToken<AXDateTimeInputConfig>;
121
+ declare function resolveDateTimeInputFormat(options: {
122
+ customFormat: string | null | undefined;
123
+ calendarSystem: string;
124
+ picker: AXDateTimePickerType;
125
+ isRtl: boolean;
126
+ localeFormats: AXLocaleProfile['formats'];
127
+ }): string;
128
+
111
129
  declare class AXDateTimeInputModule {
112
130
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDateTimeInputModule, never>;
113
131
  static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXDateTimeInputModule, never, [typeof AXDateTimeInputComponent], [typeof AXDateTimeInputComponent]>;
114
132
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXDateTimeInputModule>;
115
133
  }
116
134
 
117
- export { AXDateTimeInputComponent, AXDateTimeInputModule };
135
+ export { AXDateTimeInputComponent, AXDateTimeInputDefaultConfig, AXDateTimeInputModule, AX_DATETIME_INPUT_CONFIG, resolveDateTimeInputFormat };
136
+ export type { AXDateTimeInputConfig };
@@ -8,6 +8,7 @@ import * as i1 from '@angular/common';
8
8
  * @category Components
9
9
  */
10
10
  declare class AXDecoratorClearButtonComponent extends MXBaseComponent {
11
+ #private;
11
12
  private _parent;
12
13
  /**
13
14
  * @ignore
@@ -2,6 +2,7 @@ import * as i2 from '@acorex/cdk/common';
2
2
  import { AXStyleColorType, AXStyleLookType, AXHotKeyAction, MXBaseComponent } from '@acorex/cdk/common';
3
3
  import { AXOverlayRef } from '@acorex/cdk/overlay';
4
4
  import * as i0 from '@angular/core';
5
+ import { ElementRef } from '@angular/core';
5
6
  import * as i1 from '@angular/common';
6
7
  import * as i3 from '@angular/cdk/drag-drop';
7
8
  import * as i4 from '@angular/cdk/a11y';
@@ -34,6 +35,14 @@ interface AXDialogConfig {
34
35
  icon?: string | 'none';
35
36
  draggable?: boolean;
36
37
  direction?: 'rtl' | 'ltr';
38
+ /**
39
+ * Element used to resolve inherited visual context for overlays rendered
40
+ * outside the originating DOM subtree.
41
+ *
42
+ * This affects Appearance, Light/Dark theme, Contrast, Size, and supported
43
+ * Density context. It does not affect overlay positioning.
44
+ */
45
+ contextElement?: HTMLElement | ElementRef<HTMLElement>;
37
46
  }
38
47
  interface AXDialogRef {
39
48
  close(): void;
@@ -5,6 +5,8 @@ import { NXEvent, NXComponent } from '@acorex/cdk/common';
5
5
  import { Subscription } from 'rxjs';
6
6
  import * as gridstack from 'gridstack';
7
7
 
8
+ /** Grid size preset as `[width, height]` in column/row units. */
9
+ type AXGridLayoutSize = readonly [width: number, height: number];
8
10
  interface AXGridLayoutPosition {
9
11
  /** widget position x (default?: 0) */
10
12
  x?: number;
@@ -22,6 +24,11 @@ interface AXGridLayoutPosition {
22
24
  minWidth?: number;
23
25
  /** minimum height of widget in rows (default?: undefined = un-constrained) */
24
26
  minHeight?: number;
27
+ /**
28
+ * When set, resize is limited to these `[width, height]` presets.
29
+ * Invalid sizes revert to the previous size on resize end. Min/max bounds are derived from this list.
30
+ */
31
+ allowedSizes?: readonly AXGridLayoutSize[];
25
32
  }
26
33
  interface AXGridLayoutWidget extends AXGridLayoutPosition {
27
34
  id?: string;
@@ -318,5 +325,30 @@ declare class AXGridLayoutBuilderModule {
318
325
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXGridLayoutBuilderModule>;
319
326
  }
320
327
 
321
- export { AXGridLayoutBuilderModule, AXGridLayoutContainerComponent, AXGridLayoutWidgetComponent };
322
- export type { AXGridLayout, AXGridLayoutContainerElement, AXGridLayoutEvent, AXGridLayoutNode, AXGridLayoutOptions, AXGridLayoutPosition, AXGridLayoutWidget, AXGridLayoutWidgetElement };
328
+ declare const AX_GRID_LAYOUT_ALLOWED_SIZES_ATTR = "data-ax-allowed-sizes";
329
+ declare function convertAXGridLayoutWidgetToGridStackWidget(widget: AXGridLayoutWidget): gridstack.GridStackWidget;
330
+ declare function convertGridStackWidgetToAXGridLayoutWidget(widget: gridstack.GridStackWidget): AXGridLayoutWidget;
331
+ declare function convertAXGridLayoutNodeToGridStackNode(node: AXGridLayoutNode): gridstack.GridStackNode;
332
+ declare function convertGridStackNodeToAXGridLayoutNode(node: gridstack.GridStackNode): AXGridLayoutNode;
333
+ declare function convertAXGridLayoutOptionsToGridStackOptions(options: AXGridLayoutOptions): gridstack.GridStackOptions;
334
+ declare function convertGridStackOptionsToAXGridLayoutOptions(options: gridstack.GridStackOptions): AXGridLayoutOptions;
335
+ /** remove keys which are undefined */
336
+ declare function removeUndefinedKeys<T extends object>(obj: T): T;
337
+ declare function writeAllowedSizesToElement(element: HTMLElement | undefined, allowedSizes: readonly AXGridLayoutSize[] | undefined): void;
338
+ declare function readAllowedSizesFromElement(element: HTMLElement): readonly AXGridLayoutSize[] | undefined;
339
+ declare const AX_GRID_LAYOUT_RESIZE_INVALID_CLASS = "ax-grid-layout-resize-invalid";
340
+ declare const AX_GRID_LAYOUT_RESIZE_PREV_SIZE_ATTR = "data-ax-resize-prev-size";
341
+ declare function isExactAllowedSize(width: number, height: number, allowedSizes: readonly AXGridLayoutSize[]): boolean;
342
+ declare function updateResizeValidityMarkers(gridEl: HTMLElement, element: gridstack.GridItemHTMLElement): void;
343
+ declare function clearResizeValidityMarkers(gridEl: HTMLElement): void;
344
+ declare function storeResizeStartSize(element: gridstack.GridItemHTMLElement): void;
345
+ declare function clearResizeStartSize(element: HTMLElement): void;
346
+ declare function readResizeStartSize(element: HTMLElement): AXGridLayoutSize | undefined;
347
+ declare function snapToAllowedSize(width: number, height: number, allowedSizes: readonly AXGridLayoutSize[]): AXGridLayoutSize;
348
+ declare function deriveMinMaxFromAllowedSizes(allowedSizes: readonly AXGridLayoutSize[]): Pick<AXGridLayoutWidget, 'minWidth' | 'maxWidth' | 'minHeight' | 'maxHeight'>;
349
+ declare function normalizeLayoutNodeWithAllowedSizes<T extends AXGridLayoutWidget>(node: T): T;
350
+ declare function snapElementToAllowedSize(grid: gridstack.GridStack, element: gridstack.GridItemHTMLElement): boolean;
351
+ declare function revertElementToAllowedSizeIfInvalid(grid: gridstack.GridStack, element: gridstack.GridItemHTMLElement): boolean;
352
+
353
+ export { AXGridLayoutBuilderModule, AXGridLayoutContainerComponent, AXGridLayoutWidgetComponent, AX_GRID_LAYOUT_ALLOWED_SIZES_ATTR, AX_GRID_LAYOUT_RESIZE_INVALID_CLASS, AX_GRID_LAYOUT_RESIZE_PREV_SIZE_ATTR, clearResizeStartSize, clearResizeValidityMarkers, convertAXGridLayoutNodeToGridStackNode, convertAXGridLayoutOptionsToGridStackOptions, convertAXGridLayoutWidgetToGridStackWidget, convertGridStackNodeToAXGridLayoutNode, convertGridStackOptionsToAXGridLayoutOptions, convertGridStackWidgetToAXGridLayoutWidget, deriveMinMaxFromAllowedSizes, isExactAllowedSize, normalizeLayoutNodeWithAllowedSizes, readAllowedSizesFromElement, readResizeStartSize, removeUndefinedKeys, revertElementToAllowedSizeIfInvalid, snapElementToAllowedSize, snapToAllowedSize, storeResizeStartSize, updateResizeValidityMarkers, writeAllowedSizesToElement };
354
+ export type { AXGridLayout, AXGridLayoutContainerElement, AXGridLayoutEvent, AXGridLayoutNode, AXGridLayoutOptions, AXGridLayoutPosition, AXGridLayoutSize, AXGridLayoutWidget, AXGridLayoutWidgetElement };
@@ -1,6 +1,7 @@
1
1
  import { AXStyleColorType, AXStyleLookType, AXHotKeyAction, MXBaseComponent } from '@acorex/cdk/common';
2
2
  import { AXOverlayRef } from '@acorex/cdk/overlay';
3
3
  import { AXDialogButtonItem } from '@acorex/components/dialog';
4
+ import { AXPopupSizeType, AXPopupRef } from '@acorex/components/popup';
4
5
  import { AXProgressMode } from '@acorex/components/progress-bar';
5
6
  import * as _angular_core from '@angular/core';
6
7
  import { OnInit } from '@angular/core';
@@ -13,6 +14,8 @@ interface AXLoadingDialogConfig {
13
14
  progressValue?: number;
14
15
  progressColor?: AXStyleColorType;
15
16
  progressHeight?: number;
17
+ /** Popup size token. Uses the same responsive sizes as `AXPopupService`. @default 'sm' */
18
+ size?: AXPopupSizeType;
16
19
  buttons?: AXLoadingDialogButtonItem[];
17
20
  }
18
21
  interface AXLoadingDialogButtonItem {
@@ -43,7 +46,7 @@ interface AXLoadingDialogRef {
43
46
  type AXDialogRef = AXLoadingDialogRef;
44
47
  /**
45
48
  * @internal
46
- * Internal reference used by loading dialog service to manage overlay instances
49
+ * Internal reference used by loading dialog service to manage overlay instances.
47
50
  */
48
51
  interface AXLoadingDialogInternalRef {
49
52
  overlayRef: AXOverlayRef<unknown>;
@@ -57,8 +60,13 @@ interface AXLoadingDialogInternalRef {
57
60
  declare class AXLoadingDialogComponent extends MXBaseComponent implements OnInit {
58
61
  /** Loading dialog configuration data */
59
62
  data: _angular_core.InputSignal<AXLoadingDialogConfig>;
60
- /** @internal Callback function to close the dialog */
63
+ /** Callback function to close the dialog */
61
64
  onClose: _angular_core.InputSignal<() => void>;
65
+ /**
66
+ * Injected by {@link AXPopupComponent} when this dialog is opened via {@link AXPopupService}.
67
+ * @internal
68
+ */
69
+ readonly __popup__: _angular_core.InputSignal<AXPopupRef<any>>;
62
70
  /** @ignore */
63
71
  protected progressText: _angular_core.WritableSignal<string>;
64
72
  /** @ignore */
@@ -116,7 +124,7 @@ declare class AXLoadingDialogComponent extends MXBaseComponent implements OnInit
116
124
  /** @ignore */
117
125
  protected _hasAutoFocus(button: AXLoadingDialogButtonItem): boolean;
118
126
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXLoadingDialogComponent, never>;
119
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXLoadingDialogComponent, "ax-loading-dialog", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "onClose": { "alias": "onClose"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
127
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXLoadingDialogComponent, "ax-loading-dialog", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "onClose": { "alias": "onClose"; "required": false; "isSignal": true; }; "__popup__": { "alias": "__popup__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
120
128
  }
121
129
 
122
130
  declare class AXLoadingDialogModule {
@@ -126,7 +134,7 @@ declare class AXLoadingDialogModule {
126
134
  }
127
135
 
128
136
  declare class AXLoadingDialogService {
129
- private overlayService;
137
+ private popupService;
130
138
  /**
131
139
  * Opens a loading dialog with the specified configuration.
132
140
  *