@acorex/components 22.3.15 → 22.3.17
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/acorex-components-calendar.mjs +21 -17
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +118 -50
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +63 -7
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-lookup.mjs +272 -35
- package/fesm2022/acorex-components-lookup.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +2 -2
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +2 -2
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +2 -2
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +10 -2
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/package.json +3 -3
- package/types/acorex-components-calendar.d.ts +10 -0
- package/types/acorex-components-data-pager.d.ts +24 -0
- package/types/acorex-components-data-table.d.ts +20 -0
- package/types/acorex-components-lookup.d.ts +60 -10
- package/types/acorex-components-tree-view.d.ts +5 -0
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/components",
|
|
3
|
-
"version": "22.3.
|
|
3
|
+
"version": "22.3.17",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@acorex/core": "22.3.
|
|
6
|
-
"@acorex/cdk": "22.3.
|
|
5
|
+
"@acorex/core": "22.3.17",
|
|
6
|
+
"@acorex/cdk": "22.3.17",
|
|
7
7
|
"@angular/aria": ">=22.1.0",
|
|
8
8
|
"polytype": ">=0.17.0",
|
|
9
9
|
"hammerjs": ">=2.0.8",
|
|
@@ -198,6 +198,10 @@ declare class AXCalendarRangeComponent extends AXCalendarRangeComponent_base imp
|
|
|
198
198
|
* @ignore
|
|
199
199
|
*/
|
|
200
200
|
protected handleNextClick(): void;
|
|
201
|
+
/**
|
|
202
|
+
* @ignore
|
|
203
|
+
*/
|
|
204
|
+
private _navRangeByArrowButton;
|
|
201
205
|
/**
|
|
202
206
|
* @ignore
|
|
203
207
|
*/
|
|
@@ -410,6 +414,12 @@ declare class AXCalendarComponent extends AXCalendarComponent_base {
|
|
|
410
414
|
* @ignore
|
|
411
415
|
*/
|
|
412
416
|
protected _handleNextClick(): void;
|
|
417
|
+
/**
|
|
418
|
+
* Maps prev/next arrow clicks to calendar navigation (RTL inverts arrow semantics).
|
|
419
|
+
*
|
|
420
|
+
* @ignore
|
|
421
|
+
*/
|
|
422
|
+
private _navByArrowButton;
|
|
413
423
|
/**
|
|
414
424
|
* @ignore
|
|
415
425
|
*/
|
|
@@ -68,6 +68,10 @@ declare abstract class AXDataPagerChild extends MXInteractiveComponent {
|
|
|
68
68
|
* @ignore
|
|
69
69
|
*/
|
|
70
70
|
ngAfterViewInit(): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* @ignore
|
|
73
|
+
*/
|
|
74
|
+
protected isRtl(): boolean;
|
|
71
75
|
/**
|
|
72
76
|
* @ignore
|
|
73
77
|
*/
|
|
@@ -131,6 +135,8 @@ declare class AXDataPagerInputSelectorComponent extends AXDataPagerChild {
|
|
|
131
135
|
* @category Components
|
|
132
136
|
*/
|
|
133
137
|
declare class AXDataPagerNextButtonsComponent extends AXDataPagerChild {
|
|
138
|
+
protected disabledNextSingle: boolean;
|
|
139
|
+
protected disabledLastDouble: boolean;
|
|
134
140
|
/**
|
|
135
141
|
* @ignore
|
|
136
142
|
*/
|
|
@@ -165,6 +171,22 @@ declare class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {
|
|
|
165
171
|
* @ignore
|
|
166
172
|
*/
|
|
167
173
|
protected applyParent(): Promise<void>;
|
|
174
|
+
/**
|
|
175
|
+
* @ignore
|
|
176
|
+
*/
|
|
177
|
+
protected _isLeadingDoubleDisabled(): boolean;
|
|
178
|
+
/**
|
|
179
|
+
* @ignore
|
|
180
|
+
*/
|
|
181
|
+
protected _isTrailingDoubleDisabled(): boolean;
|
|
182
|
+
/**
|
|
183
|
+
* @ignore
|
|
184
|
+
*/
|
|
185
|
+
protected _onLeadingDoubleClick(): void;
|
|
186
|
+
/**
|
|
187
|
+
* @ignore
|
|
188
|
+
*/
|
|
189
|
+
protected _onTrailingDoubleClick(): void;
|
|
168
190
|
/**
|
|
169
191
|
* @ignore
|
|
170
192
|
*/
|
|
@@ -219,6 +241,8 @@ declare class AXDataPagerPageSizesComponent extends AXDataPagerChild {
|
|
|
219
241
|
* @category Components
|
|
220
242
|
*/
|
|
221
243
|
declare class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {
|
|
244
|
+
protected disabledFirstDouble: boolean;
|
|
245
|
+
protected disabledPrevSingle: boolean;
|
|
222
246
|
/**
|
|
223
247
|
* @ignore
|
|
224
248
|
*/
|
|
@@ -51,6 +51,10 @@ declare abstract class AXDataTableColumnComponent {
|
|
|
51
51
|
abstract get loadingEnabled(): boolean;
|
|
52
52
|
abstract get name(): string;
|
|
53
53
|
get cssClass(): string | undefined;
|
|
54
|
+
/** Minimum width (px) applied when auto-fitting or resizing this column. */
|
|
55
|
+
get minAutoWidth(): number;
|
|
56
|
+
/** Extra space (px) added to the measured content width when auto-fitting. */
|
|
57
|
+
get autoFitPadding(): number;
|
|
54
58
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXDataTableColumnComponent, never>;
|
|
55
59
|
static ɵdir: i0.ɵɵDirectiveDeclaration<AXDataTableColumnComponent, never, never, { "caption": { "alias": "caption"; "required": false; }; "width": { "alias": "width"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "allowSorting": { "alias": "allowSorting"; "required": false; }; "allowResizing": { "alias": "allowResizing"; "required": false; }; "hasTitle": { "alias": "hasTitle"; "required": false; }; "sortIndex": { "alias": "sortIndex"; "required": false; }; "sortOrder": { "alias": "sortOrder"; "required": false; }; }, {}, ["childColumns"], never, true, never>;
|
|
56
60
|
}
|
|
@@ -531,6 +535,8 @@ declare class AXRowDropdownCommandColumnComponent extends AXBaseRowCommandColumn
|
|
|
531
535
|
* Returns the name identifier for the column component.
|
|
532
536
|
*/
|
|
533
537
|
get name(): string;
|
|
538
|
+
get autoFitPadding(): number;
|
|
539
|
+
get minAutoWidth(): number;
|
|
534
540
|
/**
|
|
535
541
|
* @ignore
|
|
536
542
|
*/
|
|
@@ -733,6 +739,8 @@ declare class AXRowIndexColumnComponent extends AXDataTableColumnComponent imple
|
|
|
733
739
|
* Gets the CSS class applied to the component.
|
|
734
740
|
*/
|
|
735
741
|
get cssClass(): string | undefined;
|
|
742
|
+
get autoFitPadding(): number;
|
|
743
|
+
get minAutoWidth(): number;
|
|
736
744
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXRowIndexColumnComponent, never>;
|
|
737
745
|
static ɵcmp: i0.ɵɵComponentDeclaration<AXRowIndexColumnComponent, "ax-index-column", never, { "width": { "alias": "width"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "padZero": { "alias": "padZero"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
738
746
|
}
|
|
@@ -840,6 +848,8 @@ declare class AXRowSelectColumnComponent extends AXDataTableColumnComponent {
|
|
|
840
848
|
* Gets the CSS class applied to the component.
|
|
841
849
|
*/
|
|
842
850
|
get cssClass(): string | undefined;
|
|
851
|
+
get autoFitPadding(): number;
|
|
852
|
+
get minAutoWidth(): number;
|
|
843
853
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXRowSelectColumnComponent, never>;
|
|
844
854
|
static ɵcmp: i0.ɵɵComponentDeclaration<AXRowSelectColumnComponent, "ax-select-column", never, { "width": { "alias": "width"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "advanceSelect": { "alias": "advanceSelect"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
845
855
|
}
|
|
@@ -1224,6 +1234,16 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
|
|
|
1224
1234
|
* Tree expand columns must keep `width: auto` so nested indent can use leftover table space.
|
|
1225
1235
|
*/
|
|
1226
1236
|
private isTreeFillColumn;
|
|
1237
|
+
/**
|
|
1238
|
+
* Tree fill columns must never keep a pixel width from auto-fit; they absorb remaining table width.
|
|
1239
|
+
*
|
|
1240
|
+
* @ignore
|
|
1241
|
+
*/
|
|
1242
|
+
private enforceTreeFillColumnWidths;
|
|
1243
|
+
/**
|
|
1244
|
+
* @ignore
|
|
1245
|
+
*/
|
|
1246
|
+
protected resolveColumnWidth(column: AXDataTableColumnComponent): string | number | 'auto';
|
|
1227
1247
|
/**
|
|
1228
1248
|
* Returns the display text for a cell. Used for the cell tooltip when the column has `hasTitle`.
|
|
1229
1249
|
*/
|
|
@@ -42,6 +42,17 @@ interface AXLookupColumn {
|
|
|
42
42
|
* `valueField` / `textField` / `disabledField` mappings.
|
|
43
43
|
*/
|
|
44
44
|
type AXLookupItem = Record<string, unknown>;
|
|
45
|
+
/**
|
|
46
|
+
* Multi-select bound value when the user selects all items (optionally with exclusions).
|
|
47
|
+
* Used with `multi-select` and `multi-select-tree` via `[(value)]` / `[(ngModel)]`.
|
|
48
|
+
*/
|
|
49
|
+
interface AXLookupSelectAllValue {
|
|
50
|
+
selectAll: true;
|
|
51
|
+
/** Value keys (`valueField`) that are not selected while `selectAll` is true. */
|
|
52
|
+
excluded?: unknown[];
|
|
53
|
+
}
|
|
54
|
+
/** Bound value in multi-select lookup modes. */
|
|
55
|
+
type AXLookupMultiValue = unknown[] | AXLookupSelectAllValue | null;
|
|
45
56
|
/**
|
|
46
57
|
* Internal event emitted by the mini view components when the user picks or toggles an item.
|
|
47
58
|
*/
|
|
@@ -54,7 +65,7 @@ interface AXLookupItemClickEvent {
|
|
|
54
65
|
*/
|
|
55
66
|
interface AXLookupSelectionChangedEvent<TItem = any> extends AXEvent {
|
|
56
67
|
items: TItem[];
|
|
57
|
-
value: unknown | unknown[] | null;
|
|
68
|
+
value: unknown | unknown[] | AXLookupSelectAllValue | null;
|
|
58
69
|
}
|
|
59
70
|
|
|
60
71
|
/**
|
|
@@ -83,6 +94,14 @@ declare abstract class AXLookupListViewBase {
|
|
|
83
94
|
* Currently selected values (always an array, even for single selection).
|
|
84
95
|
*/
|
|
85
96
|
selectedValues: _angular_core.InputSignal<unknown[]>;
|
|
97
|
+
/**
|
|
98
|
+
* When `true`, every non-disabled row is selected except keys listed in `excludedValues`.
|
|
99
|
+
*/
|
|
100
|
+
selectAllActive: _angular_core.InputSignal<boolean>;
|
|
101
|
+
/**
|
|
102
|
+
* Value keys excluded from selection while `selectAllActive` is true.
|
|
103
|
+
*/
|
|
104
|
+
excludedValues: _angular_core.InputSignal<unknown[]>;
|
|
86
105
|
/**
|
|
87
106
|
* The fixed row height in pixels used by the virtual scroll viewport.
|
|
88
107
|
*/
|
|
@@ -154,7 +173,7 @@ declare abstract class AXLookupListViewBase {
|
|
|
154
173
|
protected activateNavItem(nav: AXListNavigationDirective, item: AXListNavigationItemDirective): void;
|
|
155
174
|
protected trackByIndex: (index: number) => number;
|
|
156
175
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXLookupListViewBase, never>;
|
|
157
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXLookupListViewBase, never, never, { "dataSource": { "alias": "dataSource"; "required": true; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "selectedValues": { "alias": "selectedValues"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "required": false; "isSignal": true; }; "maxVisibleItems": { "alias": "maxVisibleItems"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; "isSignal": true; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; "isSignal": true; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; "isSignal": true; }; "alternate": { "alias": "alternate"; "required": false; "isSignal": true; }; "highlightText": { "alias": "highlightText"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; "navigateOut": "navigateOut"; }, never, never, true, never>;
|
|
176
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXLookupListViewBase, never, never, { "dataSource": { "alias": "dataSource"; "required": true; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "selectedValues": { "alias": "selectedValues"; "required": false; "isSignal": true; }; "selectAllActive": { "alias": "selectAllActive"; "required": false; "isSignal": true; }; "excludedValues": { "alias": "excludedValues"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "required": false; "isSignal": true; }; "maxVisibleItems": { "alias": "maxVisibleItems"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; "isSignal": true; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; "isSignal": true; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; "isSignal": true; }; "alternate": { "alias": "alternate"; "required": false; "isSignal": true; }; "highlightText": { "alias": "highlightText"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; "navigateOut": "navigateOut"; }, never, never, true, never>;
|
|
158
177
|
}
|
|
159
178
|
|
|
160
179
|
/**
|
|
@@ -266,7 +285,7 @@ declare class AXLookupMultiSelectTreeComponent {
|
|
|
266
285
|
*
|
|
267
286
|
* @category Components
|
|
268
287
|
*/
|
|
269
|
-
declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent implements FormValueControl<unknown | unknown[] | null> {
|
|
288
|
+
declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent implements FormValueControl<unknown | unknown[] | AXLookupSelectAllValue | null> {
|
|
270
289
|
#private;
|
|
271
290
|
/**
|
|
272
291
|
* The name of the form field, used by validation rules and `ax-form.validate(names)`.
|
|
@@ -405,11 +424,13 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
|
|
|
405
424
|
*/
|
|
406
425
|
loadingTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
407
426
|
/**
|
|
408
|
-
* The selected value(s): a scalar in single modes
|
|
409
|
-
*
|
|
410
|
-
* via {@link FormValueControl}.
|
|
427
|
+
* The selected value(s): a scalar in single modes; in `multi-select` / `multi-select-tree` an array
|
|
428
|
+
* of keys or `{ selectAll: true, excluded?: [...] }` when the default header “Select all” is used.
|
|
429
|
+
* Supports `[(value)]`, `[(ngModel)]`, and signal forms via {@link FormValueControl}.
|
|
411
430
|
*/
|
|
412
431
|
readonly value: _angular_core.ModelSignal<unknown>;
|
|
432
|
+
/** Projected popover header; when set, replaces the default multi-select “Select all” header. */
|
|
433
|
+
private readonly projectedHeader;
|
|
413
434
|
/**
|
|
414
435
|
* Full items that resolve the current `value` key(s) without calling datasource `byKey`.
|
|
415
436
|
* Use when the parent already has the selected entity (e.g. edit forms). Seeds the internal
|
|
@@ -472,8 +493,17 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
|
|
|
472
493
|
/** The datasource for list-based modes; plain arrays are converted. */
|
|
473
494
|
protected resolvedDataSource: _angular_core.Signal<AXDataSource<AXLookupItem>>;
|
|
474
495
|
protected resolvedTreeDataSource: _angular_core.Signal<AXTreeViewDataSource>;
|
|
475
|
-
/**
|
|
496
|
+
/** Explicit key list (empty when multi value is select-all object). */
|
|
476
497
|
protected selectedValues: _angular_core.Signal<unknown[]>;
|
|
498
|
+
protected multiSelectAllActive: _angular_core.Signal<boolean>;
|
|
499
|
+
protected multiExcludedValues: _angular_core.Signal<unknown[]>;
|
|
500
|
+
protected hasProjectedHeader: _angular_core.Signal<boolean>;
|
|
501
|
+
protected showDefaultSelectAllHeader: _angular_core.Signal<boolean>;
|
|
502
|
+
protected selectAllHeaderChecked: _angular_core.Signal<boolean>;
|
|
503
|
+
protected selectAllHeaderIndeterminate: _angular_core.Signal<boolean>;
|
|
504
|
+
/** Keys used for tree controlled selection when leaving select-all mode. */
|
|
505
|
+
protected effectiveSelectedKeys: _angular_core.Signal<unknown[]>;
|
|
506
|
+
protected hasSelection: _angular_core.Signal<boolean>;
|
|
477
507
|
/** The resolved selected items (via cache, datasource `find`/`byKey`, or tree node lookup). */
|
|
478
508
|
protected selectedItems: _angular_core.WritableSignal<AXLookupItem[]>;
|
|
479
509
|
/** Display text shown in the trigger for single modes. */
|
|
@@ -528,6 +558,12 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
|
|
|
528
558
|
protected onTriggerKeydown(e: KeyboardEvent): void;
|
|
529
559
|
/** Filters the datasource from the actionsheet search field and handles Enter with no matches. */
|
|
530
560
|
protected onSheetSearchKeydown(e: AXHtmlEvent<KeyboardEvent>): void;
|
|
561
|
+
/**
|
|
562
|
+
* Toggles the default header “Select all” checkbox; updates `value` only (no separate event).
|
|
563
|
+
*/
|
|
564
|
+
protected onSelectAllHeaderChanged(checked: boolean): void;
|
|
565
|
+
/** Toggles select-all from the header row so the checkbox stays pointer-events-none like option rows. */
|
|
566
|
+
protected onSelectAllHeaderMouseDown(event: Event): void;
|
|
531
567
|
/** Blocks typing when the trigger is not editable (keeps Tab / keyboard open working). */
|
|
532
568
|
protected onBeforeInput(event: Event): void;
|
|
533
569
|
/**
|
|
@@ -594,7 +630,7 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
|
|
|
594
630
|
*/
|
|
595
631
|
reset(isUserInteraction?: boolean): void;
|
|
596
632
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXLookupComponent<any>, never>;
|
|
597
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXLookupComponent<any>, "ax-lookup", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "treeDataSource": { "alias": "treeDataSource"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "treeParentField": { "alias": "treeParentField"; "required": false; "isSignal": true; }; "hasChildrenField": { "alias": "hasChildrenField"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "adaptivityEnabled": { "alias": "adaptivityEnabled"; "required": false; "isSignal": true; }; "caption": { "alias": "caption"; "required": false; "isSignal": true; }; "alternate": { "alias": "alternate"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "required": false; "isSignal": true; }; "maxVisibleItems": { "alias": "maxVisibleItems"; "required": false; "isSignal": true; }; "treeSelectionBehavior": { "alias": "treeSelectionBehavior"; "required": false; "isSignal": true; }; "highlightSearch": { "alias": "highlightSearch"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; "isSignal": true; }; "selectedTemplate": { "alias": "selectedTemplate"; "required": false; "isSignal": true; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; "isSignal": true; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "valueItems": { "alias": "valueItems"; "required": false; "isSignal": true; }; }, { "look": "lookChange"; "value": "valueChange"; "onValueChanged": "onValueChanged"; "onSelectionChanged": "onSelectionChanged"; "onFocus": "onFocus"; "onBlur": "onBlur"; "onItemClick": "onItemClick"; "onItemSelected": "onItemSelected"; "onOpened": "onOpened"; "onClosed": "onClosed"; },
|
|
633
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXLookupComponent<any>, "ax-lookup", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "treeDataSource": { "alias": "treeDataSource"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "treeParentField": { "alias": "treeParentField"; "required": false; "isSignal": true; }; "hasChildrenField": { "alias": "hasChildrenField"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "adaptivityEnabled": { "alias": "adaptivityEnabled"; "required": false; "isSignal": true; }; "caption": { "alias": "caption"; "required": false; "isSignal": true; }; "alternate": { "alias": "alternate"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "required": false; "isSignal": true; }; "maxVisibleItems": { "alias": "maxVisibleItems"; "required": false; "isSignal": true; }; "treeSelectionBehavior": { "alias": "treeSelectionBehavior"; "required": false; "isSignal": true; }; "highlightSearch": { "alias": "highlightSearch"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; "isSignal": true; }; "selectedTemplate": { "alias": "selectedTemplate"; "required": false; "isSignal": true; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; "isSignal": true; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "valueItems": { "alias": "valueItems"; "required": false; "isSignal": true; }; }, { "look": "lookChange"; "value": "valueChange"; "onValueChanged": "onValueChanged"; "onSelectionChanged": "onSelectionChanged"; "onFocus": "onFocus"; "onBlur": "onBlur"; "onItemClick": "onItemClick"; "onItemSelected": "onItemSelected"; "onOpened": "onOpened"; "onClosed": "onClosed"; }, ["projectedHeader"], ["ax-prefix", "ax-clear-button", "ax-suffix", "ax-header", "ax-footer", "ax-validation-rule"], true, never>;
|
|
598
634
|
}
|
|
599
635
|
|
|
600
636
|
/**
|
|
@@ -899,6 +935,20 @@ declare class AXLookupModule {
|
|
|
899
935
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXLookupModule>;
|
|
900
936
|
}
|
|
901
937
|
|
|
938
|
+
/**
|
|
939
|
+
* Multi-select value when the user chooses “select all” instead of an explicit key list.
|
|
940
|
+
*/
|
|
941
|
+
declare function isLookupSelectAllValue(value: unknown): value is AXLookupSelectAllValue;
|
|
942
|
+
/** Excluded value keys when `selectAll` is active (empty when not in select-all mode). */
|
|
943
|
+
declare function lookupExcludedValues(value: unknown): unknown[];
|
|
944
|
+
/** Whether the bound multi value is in select-all mode. */
|
|
945
|
+
declare function lookupSelectAllActive(value: unknown): boolean;
|
|
946
|
+
/** Normalized explicit key list for array-mode multi values. */
|
|
947
|
+
declare function lookupArrayValues(value: unknown): unknown[];
|
|
948
|
+
declare function createLookupSelectAllValue(excluded?: unknown[]): AXLookupSelectAllValue;
|
|
949
|
+
/** Deep equality for lookup multi values (arrays and select-all objects). */
|
|
950
|
+
declare function lookupMultiValuesEqual(a: unknown, b: unknown): boolean;
|
|
951
|
+
|
|
902
952
|
/** Whether a tree node may have descendants (embedded children or lazy metadata). */
|
|
903
953
|
declare function lookupTreeNodeMayHaveChildren(node: AXTreeViewNode): boolean;
|
|
904
954
|
interface HydrateLookupTreeOptions {
|
|
@@ -958,5 +1008,5 @@ declare function cloneLookupTreeNodes(nodes: AXLookupItem[]): AXLookupItem[];
|
|
|
958
1008
|
/** Depth-first flattening of nested `children` arrays. */
|
|
959
1009
|
declare function flattenTreeNodes(nodes: AXLookupItem[]): AXLookupItem[];
|
|
960
1010
|
|
|
961
|
-
export { AXLookupComponent, AXLookupDropDownListComponent, AXLookupDropDownTreeComponent, AXLookupModule, AXLookupMultiColumnComponent, AXLookupMultiColumnTreeComponent, AXLookupMultiSelectComponent, AXLookupMultiSelectTreeComponent, cloneLookupTreeNodes, convertLookupArrayToDataSource, createLookupTreeTableDataSource, filterTreeNodes, flattenTreeNodes, hydrateLookupTree, lookupTreeNodeMayHaveChildren, matchesLookupText, prepareFilteredTreeTableRows };
|
|
962
|
-
export type { AXLookupArrayDataSourceOptions, AXLookupColumn, AXLookupItem, AXLookupItemClickEvent, AXLookupMode, AXLookupSelectionChangedEvent, AXLookupTreeSelectionEvent, AXLookupTreeTableDataSourceOptions, HydrateLookupTreeOptions };
|
|
1011
|
+
export { AXLookupComponent, AXLookupDropDownListComponent, AXLookupDropDownTreeComponent, AXLookupModule, AXLookupMultiColumnComponent, AXLookupMultiColumnTreeComponent, AXLookupMultiSelectComponent, AXLookupMultiSelectTreeComponent, cloneLookupTreeNodes, convertLookupArrayToDataSource, createLookupSelectAllValue, createLookupTreeTableDataSource, filterTreeNodes, flattenTreeNodes, hydrateLookupTree, isLookupSelectAllValue, lookupArrayValues, lookupExcludedValues, lookupMultiValuesEqual, lookupSelectAllActive, lookupTreeNodeMayHaveChildren, matchesLookupText, prepareFilteredTreeTableRows };
|
|
1012
|
+
export type { AXLookupArrayDataSourceOptions, AXLookupColumn, AXLookupItem, AXLookupItemClickEvent, AXLookupMode, AXLookupMultiValue, AXLookupSelectAllValue, AXLookupSelectionChangedEvent, AXLookupTreeSelectionEvent, AXLookupTreeTableDataSourceOptions, HydrateLookupTreeOptions };
|
|
@@ -749,6 +749,11 @@ declare class AXTreeViewComponent {
|
|
|
749
749
|
* Toggle node expansion state with lazy loading support
|
|
750
750
|
* Note: Disabled nodes can still be toggled (expanded/collapsed) for better UX
|
|
751
751
|
*/
|
|
752
|
+
/**
|
|
753
|
+
* Keeps expand/collapse from selecting the node or moving focus out of a parent editor
|
|
754
|
+
* (for example a lookup trigger, which would close the popup).
|
|
755
|
+
*/
|
|
756
|
+
onExpandTogglePointerDown(event: Event): void;
|
|
752
757
|
toggleNode(node: AXTreeViewNode, event: Event): Promise<void>;
|
|
753
758
|
/**
|
|
754
759
|
* Toggle node selection state with indeterminate support (for multiple mode)
|