@acorex/components 21.0.2-next.3 → 21.0.2-next.30
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/conversation2/README.md +8 -6
- package/fesm2022/acorex-components-button-group.mjs +26 -6
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +50 -9
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation2.mjs +5585 -3526
- package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +22 -5
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +14 -14
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +2 -2
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-flow-chart.mjs +42 -26
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +102 -28
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +43 -5
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +27 -3
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +19 -2
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +3 -2
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +1 -0
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +3 -7
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +428 -70
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +5 -4
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +2 -2
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +3 -5
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +11 -2
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/package.json +3 -3
- package/types/acorex-components-button-group.d.ts +9 -3
- package/types/acorex-components-color-palette.d.ts +2 -0
- package/types/acorex-components-conversation2.d.ts +2468 -2437
- package/types/acorex-components-data-pager.d.ts +2 -0
- package/types/acorex-components-data-table.d.ts +8 -8
- package/types/acorex-components-flow-chart.d.ts +4 -0
- package/types/acorex-components-menu.d.ts +47 -7
- package/types/acorex-components-number-box.d.ts +9 -0
- package/types/acorex-components-popup.d.ts +11 -1
- package/types/acorex-components-qrcode.d.ts +1 -0
- package/types/acorex-components-query-builder.d.ts +1 -1
- package/types/acorex-components-side-menu.d.ts +96 -34
- package/types/acorex-components-step-wizard.d.ts +2 -1
|
@@ -164,6 +164,8 @@ declare class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {
|
|
|
164
164
|
protected _currentPage: number;
|
|
165
165
|
protected _lastPage: number;
|
|
166
166
|
protected _loading: boolean;
|
|
167
|
+
private localeService;
|
|
168
|
+
protected rtlstatus: i0.Signal<boolean>;
|
|
167
169
|
/**
|
|
168
170
|
* @ignore
|
|
169
171
|
*/
|
|
@@ -108,6 +108,10 @@ declare abstract class AXDataTableColumnComponent {
|
|
|
108
108
|
fixed: 'start' | 'end' | undefined;
|
|
109
109
|
allowSorting: boolean;
|
|
110
110
|
allowResizing: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* When true, shows the cell content as tooltip on hover (via `axTooltip`).
|
|
113
|
+
*/
|
|
114
|
+
hasTitle: boolean;
|
|
111
115
|
sortIndex: number | undefined;
|
|
112
116
|
sortOrder: AXSortOrder | undefined;
|
|
113
117
|
abstract get renderCellTemplate(): TemplateRef<unknown>;
|
|
@@ -247,7 +251,7 @@ declare class AXDataTableTextColumnComponent extends AXDataTableColumnComponent
|
|
|
247
251
|
*/
|
|
248
252
|
get name(): string;
|
|
249
253
|
/**
|
|
250
|
-
* Returns the display text for a row cell. Used for cell tooltip when
|
|
254
|
+
* Returns the display text for a row cell. Used for cell tooltip when the column has `hasTitle`.
|
|
251
255
|
*/
|
|
252
256
|
getCellDisplayText(rowData: unknown): string;
|
|
253
257
|
/**
|
|
@@ -264,7 +268,7 @@ declare class AXDataTableTextColumnComponent extends AXDataTableColumnComponent
|
|
|
264
268
|
*/
|
|
265
269
|
formatOptions: AXFormatOptions;
|
|
266
270
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXDataTableTextColumnComponent, never>;
|
|
267
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXDataTableTextColumnComponent, "ax-text-column", never, { "width": { "alias": "width"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "allowSorting": { "alias": "allowSorting"; "required": false; }; "allowResizing": { "alias": "allowResizing"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "customExpandIcon": { "alias": "customExpandIcon"; "required": false; }; "customCollapseIcon": { "alias": "customCollapseIcon"; "required": false; }; "dataField": { "alias": "dataField"; "required": false; }; "expandHandler": { "alias": "expandHandler"; "required": false; }; "wrapText": { "alias": "wrapText"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "format": { "alias": "format"; "required": false; }; "formatOptions": { "alias": "formatOptions"; "required": false; }; }, {}, never, never, true, never>;
|
|
271
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXDataTableTextColumnComponent, "ax-text-column", never, { "width": { "alias": "width"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "allowSorting": { "alias": "allowSorting"; "required": false; }; "allowResizing": { "alias": "allowResizing"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "hasTitle": { "alias": "hasTitle"; "required": false; }; "customExpandIcon": { "alias": "customExpandIcon"; "required": false; }; "customCollapseIcon": { "alias": "customCollapseIcon"; "required": false; }; "dataField": { "alias": "dataField"; "required": false; }; "expandHandler": { "alias": "expandHandler"; "required": false; }; "wrapText": { "alias": "wrapText"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "format": { "alias": "format"; "required": false; }; "formatOptions": { "alias": "formatOptions"; "required": false; }; }, {}, never, never, true, never>;
|
|
268
272
|
}
|
|
269
273
|
|
|
270
274
|
type AXRowCommandItem = AXButtonItemListItem & {
|
|
@@ -621,10 +625,6 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
|
|
|
621
625
|
* @ignore
|
|
622
626
|
*/
|
|
623
627
|
customDataPager: AXDataPagerComponent;
|
|
624
|
-
/**
|
|
625
|
-
* When true, shows the cell content as tooltip (title attribute) on hover.
|
|
626
|
-
*/
|
|
627
|
-
title: boolean;
|
|
628
628
|
/**
|
|
629
629
|
* @ignore
|
|
630
630
|
*/
|
|
@@ -860,7 +860,7 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
|
|
|
860
860
|
ngAfterViewInit(): void;
|
|
861
861
|
private captureAutoFitIntentColumns;
|
|
862
862
|
/**
|
|
863
|
-
* Returns the display text for a cell. Used for the
|
|
863
|
+
* Returns the display text for a cell. Used for the cell tooltip when the column has `hasTitle`.
|
|
864
864
|
*/
|
|
865
865
|
protected getCellTooltipText(column: AXDataTableColumnComponent, rowData: unknown): string;
|
|
866
866
|
/**
|
|
@@ -992,7 +992,7 @@ declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, Af
|
|
|
992
992
|
headerOnly?: boolean;
|
|
993
993
|
}): void;
|
|
994
994
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXDataTableComponent, never>;
|
|
995
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXDataTableComponent, "ax-data-table", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "selectedRows": { "alias": "selectedRows"; "required": false; }; "parentField": { "alias": "parentField"; "required": false; }; "hasChildrenField": { "alias": "hasChildrenField"; "required": false; }; "rowDetailsTemplate": { "alias": "rowDetailsTemplate"; "required": false; }; "
|
|
995
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXDataTableComponent, "ax-data-table", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "selectedRows": { "alias": "selectedRows"; "required": false; }; "parentField": { "alias": "parentField"; "required": false; }; "hasChildrenField": { "alias": "hasChildrenField"; "required": false; }; "rowDetailsTemplate": { "alias": "rowDetailsTemplate"; "required": false; }; "rowTemplate": { "alias": "rowTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "noDataTemplate": { "alias": "noDataTemplate"; "required": false; }; "alternative": { "alias": "alternative"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "fixedHeader": { "alias": "fixedHeader"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; "fixedFooter": { "alias": "fixedFooter"; "required": false; }; "itemHeight": { "alias": "itemHeight"; "required": false; }; "allowReordering": { "alias": "allowReordering"; "required": false; }; "paging": { "alias": "paging"; "required": false; }; "fetchDataMode": { "alias": "fetchDataMode"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "focusedRow": { "alias": "focusedRow"; "required": false; }; }, { "selectedRowsChange": "selectedRowsChange"; "focusedRowChange": "focusedRowChange"; "onRowClick": "onRowClick"; "onRowDbClick": "onRowDbClick"; "onColumnsOrderChanged": "onColumnsOrderChanged"; "onColumnSizeChanged": "onColumnSizeChanged"; "onPageChanged": "onPageChanged"; }, ["customDataPager", "columns"], ["ax-header", "ax-data-pager", "ax-footer"], true, never>;
|
|
996
996
|
}
|
|
997
997
|
|
|
998
998
|
declare class AXDataTableModule {
|
|
@@ -45,6 +45,8 @@ type AXLineClickEvent = {
|
|
|
45
45
|
declare class AXFlowChartService {
|
|
46
46
|
#private;
|
|
47
47
|
private zone;
|
|
48
|
+
private platformId;
|
|
49
|
+
private document;
|
|
48
50
|
initialFlowChartEdge: _angular_core.WritableSignal<any[]>;
|
|
49
51
|
initialFlowChartNode: _angular_core.WritableSignal<any[]>;
|
|
50
52
|
selectedNode: _angular_core.WritableSignal<AXFlowChartNodes>;
|
|
@@ -113,6 +115,8 @@ declare class AXFlowChartRendererComponent extends NXComponent implements OnDest
|
|
|
113
115
|
private canvas;
|
|
114
116
|
private svg;
|
|
115
117
|
private service;
|
|
118
|
+
private document;
|
|
119
|
+
private platformId;
|
|
116
120
|
readonly onLineClick: _angular_core.OutputEmitterRef<AXLineClickEvent>;
|
|
117
121
|
readonly onLineDbClick: _angular_core.OutputEmitterRef<AXLineClickEvent>;
|
|
118
122
|
readonly onNodeClick: _angular_core.OutputEmitterRef<AXNodeClickEvent>;
|
|
@@ -2,6 +2,7 @@ import * as _angular_core from '@angular/core';
|
|
|
2
2
|
import { WritableSignal, OutputEmitterRef, OnDestroy } from '@angular/core';
|
|
3
3
|
import { AXStyleColorType, NXComponent, NXClickEvent, AXOrientation, NXEvent } from '@acorex/cdk/common';
|
|
4
4
|
import { AXPoint } from '@acorex/core/utils';
|
|
5
|
+
import { UrlTree, IsActiveMatchOptions } from '@angular/router';
|
|
5
6
|
import { Subject } from 'rxjs';
|
|
6
7
|
|
|
7
8
|
type AXMenuOpenTrigger = 'click' | 'hover';
|
|
@@ -16,22 +17,37 @@ declare abstract class AXRootMenu {
|
|
|
16
17
|
}
|
|
17
18
|
declare abstract class AXMenuItemComponentBase {
|
|
18
19
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
name?: string;
|
|
20
|
+
/** Shared tree item shape for `ax-menu`, `ax-context-menu`, and `ax-side-menu`. */
|
|
21
|
+
interface AXMenuItem {
|
|
22
22
|
text: string;
|
|
23
|
-
|
|
23
|
+
name?: string;
|
|
24
24
|
icon?: string;
|
|
25
|
+
data?: unknown;
|
|
25
26
|
disabled?: boolean;
|
|
26
27
|
items?: AXMenuItem[];
|
|
28
|
+
color?: AXStyleColorType;
|
|
27
29
|
suffix?: {
|
|
28
30
|
text: string;
|
|
29
31
|
};
|
|
32
|
+
/** Side-menu alias for `suffix.text`. */
|
|
33
|
+
suffixText?: string;
|
|
30
34
|
break?: boolean;
|
|
31
35
|
group?: {
|
|
32
36
|
name?: string;
|
|
33
37
|
title?: string;
|
|
34
38
|
};
|
|
39
|
+
title?: string;
|
|
40
|
+
routerLink?: string | any[] | UrlTree;
|
|
41
|
+
routerLinkActive?: string | string[];
|
|
42
|
+
routerLinkActiveOptions?: {
|
|
43
|
+
exact: boolean;
|
|
44
|
+
} | IsActiveMatchOptions;
|
|
45
|
+
href?: string;
|
|
46
|
+
target?: '_blank' | '_self' | '_parent' | '_top';
|
|
47
|
+
active?: boolean;
|
|
48
|
+
isLoading?: boolean;
|
|
49
|
+
isCollapsed?: boolean;
|
|
50
|
+
toggleOnClick?: boolean;
|
|
35
51
|
}
|
|
36
52
|
declare class AXMenuItemClickBaseEvent<T extends NXComponent = NXComponent> extends NXClickEvent<T> {
|
|
37
53
|
item: {
|
|
@@ -56,6 +72,8 @@ declare class AXContextMenuComponent extends NXComponent {
|
|
|
56
72
|
readonly orientation: _angular_core.InputSignal<AXOrientation>;
|
|
57
73
|
readonly openOn: _angular_core.InputSignal<AXMenuOpenTrigger>;
|
|
58
74
|
readonly closeOn: _angular_core.InputSignal<AXMenuCloseTrigger>;
|
|
75
|
+
/** When true, closes the menu on router navigation (e.g. side-menu route changes). */
|
|
76
|
+
readonly closeOnRouteChange: _angular_core.InputSignal<boolean>;
|
|
59
77
|
readonly originalItems: _angular_core.InputSignal<AXMenuItem[]>;
|
|
60
78
|
readonly target: _angular_core.InputSignal<string | HTMLElement | HTMLElement[]>;
|
|
61
79
|
onItemClick: _angular_core.OutputEmitterRef<AXContextMenuItemsClickEvent>;
|
|
@@ -68,7 +86,11 @@ declare class AXContextMenuComponent extends NXComponent {
|
|
|
68
86
|
private document;
|
|
69
87
|
private platformID;
|
|
70
88
|
private zIndexService;
|
|
89
|
+
private injector;
|
|
71
90
|
private zToken;
|
|
91
|
+
private lastOpenPoint;
|
|
92
|
+
private router;
|
|
93
|
+
private destroyRef;
|
|
72
94
|
/** @ignore */
|
|
73
95
|
constructor();
|
|
74
96
|
ngOnDestroy(): void;
|
|
@@ -92,6 +114,8 @@ declare class AXContextMenuComponent extends NXComponent {
|
|
|
92
114
|
private originalParent;
|
|
93
115
|
protected items: _angular_core.WritableSignal<AXMenuItem[]>;
|
|
94
116
|
/** @ignore */
|
|
117
|
+
private setupCloseOnRouteChange;
|
|
118
|
+
/** @ignore */
|
|
95
119
|
private getTargetElements;
|
|
96
120
|
/** @ignore */
|
|
97
121
|
private bindContextEvent;
|
|
@@ -101,6 +125,13 @@ declare class AXContextMenuComponent extends NXComponent {
|
|
|
101
125
|
private handleContextMenu;
|
|
102
126
|
/** @ignore */
|
|
103
127
|
private internalShowAt;
|
|
128
|
+
/**
|
|
129
|
+
* Positions the menu at `point`, flipping when it would overflow the viewport.
|
|
130
|
+
* Uses a temporary visible layout pass so parents that hide the host (e.g. side-menu `display: none`) do not yield a zero-sized rect.
|
|
131
|
+
*/
|
|
132
|
+
private positionAtPoint;
|
|
133
|
+
/** Measures menu size even when an ancestor hides the host with `display: none`. */
|
|
134
|
+
private measureMenuRect;
|
|
104
135
|
/** @ignore */
|
|
105
136
|
private createBackdrop;
|
|
106
137
|
/** @ignore */
|
|
@@ -111,7 +142,7 @@ declare class AXContextMenuComponent extends NXComponent {
|
|
|
111
142
|
/** @ignore */
|
|
112
143
|
get __hostClass(): any;
|
|
113
144
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXContextMenuComponent, never>;
|
|
114
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXContextMenuComponent, "ax-context-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "originalItems": { "alias": "items"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; "onOpening": "onOpening"; "onClose": "onClose"; }, never, ["ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
|
|
145
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXContextMenuComponent, "ax-context-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "closeOnRouteChange": { "alias": "closeOnRouteChange"; "required": false; "isSignal": true; }; "originalItems": { "alias": "items"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; "onOpening": "onOpening"; "onClose": "onClose"; }, never, ["ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
|
|
115
146
|
}
|
|
116
147
|
|
|
117
148
|
type AXMenuItemClickEvent = AXMenuItemClickBaseEvent<AXMenuItemComponent>;
|
|
@@ -131,6 +162,7 @@ declare class AXMenuItemComponent extends NXComponent implements OnDestroy {
|
|
|
131
162
|
private scrollableParents;
|
|
132
163
|
private unsuscriber;
|
|
133
164
|
private renderer;
|
|
165
|
+
private injector;
|
|
134
166
|
private zIndexService;
|
|
135
167
|
private zToken;
|
|
136
168
|
protected arrowIcon: _angular_core.Signal<string>;
|
|
@@ -161,10 +193,18 @@ declare class AXMenuItemComponent extends NXComponent implements OnDestroy {
|
|
|
161
193
|
* @returns void - No return value. Triggers submenu closing side-effects.
|
|
162
194
|
*/
|
|
163
195
|
close(): void;
|
|
196
|
+
/**
|
|
197
|
+
* Positions the submenu after layout so nested levels measure their full height.
|
|
198
|
+
*/
|
|
199
|
+
private schedulePositionCalculation;
|
|
164
200
|
/**
|
|
165
201
|
* Calculate the position of the submenu to avoid it going out of the viewport.
|
|
166
202
|
*/
|
|
167
203
|
private calculatePosition;
|
|
204
|
+
/** Measures submenu size using the same flex layout as the rendered menu. */
|
|
205
|
+
private measureSubmenuRect;
|
|
206
|
+
/** Keeps the submenu fully inside the viewport vertically. */
|
|
207
|
+
private clampVerticalPosition;
|
|
168
208
|
handleClick(e: MouseEvent): void;
|
|
169
209
|
handleMouseEnter(event: MouseEvent): void;
|
|
170
210
|
private mouseLeaveTimeout;
|
|
@@ -234,5 +274,5 @@ declare class AXMenuModule {
|
|
|
234
274
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXMenuModule>;
|
|
235
275
|
}
|
|
236
276
|
|
|
237
|
-
export { AXContextMenuComponent, AXContextMenuOpeningEvent, AXMenuComponent,
|
|
238
|
-
export type { AXContextMenuItemsClickEvent, AXMenuCloseTrigger, AXMenuItemClickEvent, AXMenuItemsClickEvent, AXMenuOpenTrigger };
|
|
277
|
+
export { AXContextMenuComponent, AXContextMenuOpeningEvent, AXMenuComponent, AXMenuItemClickBaseEvent, AXMenuItemComponent, AXMenuItemComponentBase, AXMenuModule, AXMenuService, AXRootMenu };
|
|
278
|
+
export type { AXContextMenuItemsClickEvent, AXMenuCloseTrigger, AXMenuItem, AXMenuItemClickEvent, AXMenuItemsClickEvent, AXMenuOpenTrigger };
|
|
@@ -29,11 +29,20 @@ declare class AXNumberBoxComponent extends AXNumberBoxComponent_base {
|
|
|
29
29
|
protected mode: _angular_core.WritableSignal<"digits" | "thousandsSeparator" | "decimal">;
|
|
30
30
|
private input;
|
|
31
31
|
protected stringValue: _angular_core.WritableSignal<string>;
|
|
32
|
+
private translationService;
|
|
33
|
+
protected validateFn: (val: number) => Promise<{
|
|
34
|
+
result: boolean;
|
|
35
|
+
message: string;
|
|
36
|
+
} | {
|
|
37
|
+
result: boolean;
|
|
38
|
+
message?: undefined;
|
|
39
|
+
}>;
|
|
32
40
|
protected internalValueChanged(value: number | undefined): void;
|
|
33
41
|
private plusValue;
|
|
34
42
|
private minusValue;
|
|
35
43
|
private getNumericValue;
|
|
36
44
|
private getSteppedValue;
|
|
45
|
+
private clampToRange;
|
|
37
46
|
private getFractionDigits;
|
|
38
47
|
protected handleOnKeydownEvent(e: KeyboardEvent): void;
|
|
39
48
|
protected handleUpClick(): void;
|
|
@@ -9,7 +9,7 @@ import * as i3 from '@acorex/components/decorators';
|
|
|
9
9
|
import * as i4 from '@acorex/core/translation';
|
|
10
10
|
|
|
11
11
|
type AXPopupContentType = TemplateRef<unknown> | AXComponentType<unknown>;
|
|
12
|
-
type AXPopupSizeType = 'sm' | 'md' | 'lg' | 'full' | 'fit';
|
|
12
|
+
type AXPopupSizeType = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | 'fit';
|
|
13
13
|
interface AXPopupConfig {
|
|
14
14
|
title?: string;
|
|
15
15
|
closeButton?: boolean;
|
|
@@ -23,6 +23,7 @@ interface AXPopupConfig {
|
|
|
23
23
|
hasBackdrop?: boolean;
|
|
24
24
|
backdropClass?: string;
|
|
25
25
|
closeOnBackdropClick?: boolean;
|
|
26
|
+
closeOnNavigation?: boolean;
|
|
26
27
|
viewContainerRef?: ViewContainerRef;
|
|
27
28
|
providers?: StaticProvider[];
|
|
28
29
|
panelClass?: string[];
|
|
@@ -67,6 +68,8 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit, OnDest
|
|
|
67
68
|
private loadingService;
|
|
68
69
|
private _platform;
|
|
69
70
|
private componentService;
|
|
71
|
+
private _router;
|
|
72
|
+
private _destroyRef;
|
|
70
73
|
private contentContainerRef;
|
|
71
74
|
private contentContainerEl;
|
|
72
75
|
readonly __content__: i0.InputSignal<AXPopupContentType>;
|
|
@@ -97,6 +100,13 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit, OnDest
|
|
|
97
100
|
private elementStartPos;
|
|
98
101
|
/** @ignore */
|
|
99
102
|
ngOnInit(): void;
|
|
103
|
+
/**
|
|
104
|
+
* Subscribes to router navigation events so the popup is closed automatically
|
|
105
|
+
* when the user navigates to another route. Enabled by default; disable via
|
|
106
|
+
* `closeOnNavigation: false` in the popup config.
|
|
107
|
+
* @ignore
|
|
108
|
+
*/
|
|
109
|
+
private _setupCloseOnNavigation;
|
|
100
110
|
/** @ignore */
|
|
101
111
|
private renderContent;
|
|
102
112
|
/** @ignore */
|
|
@@ -7,6 +7,7 @@ type AXQrcodeLevel = 'L' | 'M' | 'Q' | 'H';
|
|
|
7
7
|
declare function debounce(func: (...args: any) => void, delayMS: number): (...args: any[]) => void;
|
|
8
8
|
|
|
9
9
|
declare class AXQrcodeComponent implements AfterViewInit {
|
|
10
|
+
private platformId;
|
|
10
11
|
/**
|
|
11
12
|
* @description Value of QR code
|
|
12
13
|
*/
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { AXDataSource, AXValueChangedEvent } from '@acorex/cdk/common';
|
|
3
2
|
import * as i1 from '@acorex/components/button-group';
|
|
4
3
|
import { AXButtonGroupItemComponent } from '@acorex/components/button-group';
|
|
4
|
+
import { AXDataSource, AXValueChangedEvent } from '@acorex/cdk/common';
|
|
5
5
|
import * as i3 from '@acorex/components/select-box';
|
|
6
6
|
import { AXSelectBoxComponent } from '@acorex/components/select-box';
|
|
7
7
|
import * as i2 from '@acorex/components/decorators';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { Signal, ElementRef } from '@angular/core';
|
|
2
3
|
import * as i2 from '@acorex/cdk/common';
|
|
3
4
|
import { MXInteractiveComponent, AXClickEvent, NXComponent } from '@acorex/cdk/common';
|
|
5
|
+
import { AXMenuItem, AXContextMenuItemsClickEvent } from '@acorex/components/menu';
|
|
4
6
|
import * as i5 from '@angular/router';
|
|
5
7
|
import { UrlTree, IsActiveMatchOptions } from '@angular/router';
|
|
6
8
|
import * as i1 from '@angular/common';
|
|
@@ -8,9 +10,22 @@ import * as i3 from '@acorex/components/loading';
|
|
|
8
10
|
import * as i4 from '@acorex/core/translation';
|
|
9
11
|
import * as i6 from '@acorex/components/decorators';
|
|
10
12
|
|
|
13
|
+
/**
|
|
14
|
+
* DI token for the parent `ax-side-menu`. Child `ax-side-menu-item`s inject this
|
|
15
|
+
* to read shared state (e.g. the current display mode) without creating a
|
|
16
|
+
* circular import on the concrete `AXSideMenuComponent` class.
|
|
17
|
+
*/
|
|
18
|
+
declare abstract class AXSideMenuBase {
|
|
19
|
+
abstract readonly mode: Signal<'full' | 'compact'>;
|
|
20
|
+
}
|
|
21
|
+
|
|
11
22
|
declare class AXSideMenuItemClickEvent extends AXClickEvent {
|
|
12
23
|
handled: boolean;
|
|
13
24
|
}
|
|
25
|
+
/** Routes context-menu clicks back to the matching `ax-side-menu-item`. */
|
|
26
|
+
interface AXSideMenuContextMenuItemData {
|
|
27
|
+
sideMenuItem: AXSideMenuItemComponent;
|
|
28
|
+
}
|
|
14
29
|
declare class AXSideMenuItemComponent extends MXInteractiveComponent {
|
|
15
30
|
#private;
|
|
16
31
|
text: _angular_core.ModelSignal<string>;
|
|
@@ -18,9 +33,6 @@ declare class AXSideMenuItemComponent extends MXInteractiveComponent {
|
|
|
18
33
|
isLoading: _angular_core.ModelSignal<boolean>;
|
|
19
34
|
isCollapsed: _angular_core.ModelSignal<boolean>;
|
|
20
35
|
onClick: _angular_core.OutputEmitterRef<AXSideMenuItemClickEvent>;
|
|
21
|
-
tooltipStatus: _angular_core.WritableSignal<boolean>;
|
|
22
|
-
tooltipText: _angular_core.InputSignal<string>;
|
|
23
|
-
private elem;
|
|
24
36
|
readonly toggleOnClick: _angular_core.InputSignal<boolean>;
|
|
25
37
|
readonly href: _angular_core.InputSignal<string>;
|
|
26
38
|
readonly routerLink: _angular_core.InputSignal<string | any[] | UrlTree>;
|
|
@@ -29,56 +41,106 @@ declare class AXSideMenuItemComponent extends MXInteractiveComponent {
|
|
|
29
41
|
exact: boolean;
|
|
30
42
|
} | IsActiveMatchOptions>;
|
|
31
43
|
readonly target: _angular_core.InputSignal<"_blank" | "_self" | "_parent" | "_top">;
|
|
32
|
-
|
|
44
|
+
protected menuItemTrigger: _angular_core.Signal<ElementRef<HTMLElement>>;
|
|
33
45
|
protected hasChild: _angular_core.WritableSignal<boolean>;
|
|
34
|
-
|
|
35
|
-
|
|
46
|
+
protected isCompactMode: _angular_core.Signal<boolean>;
|
|
47
|
+
/** Top-level rail entry in compact mode (opens the flyout context menu). */
|
|
48
|
+
protected isFirstLevel: _angular_core.Signal<boolean>;
|
|
49
|
+
/** Tooltip text for first-level items in compact mode only. */
|
|
50
|
+
protected tooltipContent: _angular_core.Signal<string>;
|
|
51
|
+
private readonly elem;
|
|
52
|
+
private readonly platformId;
|
|
53
|
+
private readonly destroyRef;
|
|
54
|
+
private readonly menuMode;
|
|
55
|
+
private readonly contentLabel;
|
|
56
|
+
private childObserver;
|
|
57
|
+
private childRefreshScheduled;
|
|
58
|
+
private readonly childItems;
|
|
59
|
+
private readonly childrenSlot;
|
|
60
|
+
private readonly childrenContextMenu;
|
|
61
|
+
private get hostElement();
|
|
62
|
+
syncMenuMode(mode: 'full' | 'compact'): void;
|
|
63
|
+
/** Builds the cascading `AXMenuItem` tree used by the compact-mode context menu. */
|
|
64
|
+
buildMenuItemsFromChildren(): AXMenuItem[];
|
|
65
|
+
activateFromContextMenu(nativeEvent: MouseEvent): void;
|
|
36
66
|
toggle(): void;
|
|
37
67
|
open(): void;
|
|
38
68
|
close(): void;
|
|
69
|
+
protected handleContextMenuItemClick(event: AXContextMenuItemsClickEvent): void;
|
|
70
|
+
protected handleContextMenuClosed(): void;
|
|
71
|
+
protected handleClickEvent(e: MouseEvent): void;
|
|
72
|
+
private openCompactContextMenu;
|
|
73
|
+
private getContextMenuAnchorPoint;
|
|
74
|
+
private mapSlotChildrenToMenuItems;
|
|
75
|
+
private toMenuItem;
|
|
76
|
+
private hasNestedChildren;
|
|
77
|
+
/** Direct `ax-side-menu-item` children of `menuHost` (defaults to this item). */
|
|
78
|
+
private getDirectChildElements;
|
|
79
|
+
private reparentOrphanedChildren;
|
|
80
|
+
private scheduleChildRefresh;
|
|
81
|
+
private hasRelevantMutation;
|
|
82
|
+
private nodeListContainsMenuStructuralNode;
|
|
83
|
+
private getItemLabel;
|
|
84
|
+
private getItemIcon;
|
|
85
|
+
private getItemSuffix;
|
|
86
|
+
private getInstanceFromElement;
|
|
87
|
+
private closeSiblingCompactMenus;
|
|
88
|
+
private updateHasChild;
|
|
89
|
+
private updateContentLabel;
|
|
39
90
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSideMenuItemComponent, never>;
|
|
40
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuItemComponent, "ax-side-menu-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; "isSignal": true; }; "
|
|
91
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuItemComponent, "ax-side-menu-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; "isSignal": true; }; "toggleOnClick": { "alias": "toggleOnClick"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "routerLink": { "alias": "routerLink"; "required": false; "isSignal": true; }; "routerLinkActive": { "alias": "routerLinkActive"; "required": false; "isSignal": true; }; "routerLinkActiveOptions": { "alias": "routerLinkActiveOptions"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "text": "textChange"; "active": "activeChange"; "isLoading": "isLoadingChange"; "isCollapsed": "isCollapsedChange"; "onClick": "onClick"; }, ["childItems"], ["ax-title", "ax-side-menu-item, ng-container, [ngTemplateOutlet]", "ax-divider", "ax-prefix", "*", "ax-suffix"], true, never>;
|
|
41
92
|
}
|
|
42
93
|
|
|
43
94
|
type AXSideMenuLook = 'pills' | 'with-line' | 'with-line-color' | 'default';
|
|
44
95
|
type AXSideMenuLocation = 'start' | 'end';
|
|
45
|
-
type AXSideMenuItem = {
|
|
46
|
-
title?: string;
|
|
47
|
-
routerLink?: string | any[] | UrlTree;
|
|
48
|
-
routerLinkActive?: string | string[];
|
|
49
|
-
routerLinkActiveOptions?: {
|
|
50
|
-
exact: boolean;
|
|
51
|
-
} | IsActiveMatchOptions;
|
|
52
|
-
href?: string;
|
|
53
|
-
target?: '_blank' | '_self' | '_parent' | '_top';
|
|
54
|
-
text: string;
|
|
55
|
-
active?: boolean;
|
|
56
|
-
disabled?: boolean;
|
|
57
|
-
isLoading?: boolean;
|
|
58
|
-
isCollapsed?: boolean;
|
|
59
|
-
icon?: string;
|
|
60
|
-
data?: unknown;
|
|
61
|
-
suffixText?: string;
|
|
62
|
-
toggleOnClick?: boolean;
|
|
63
|
-
items?: AXSideMenuItem[];
|
|
64
|
-
};
|
|
65
96
|
/**
|
|
66
97
|
* @category
|
|
67
98
|
* A component for displaying a side menu with customizable content.
|
|
68
99
|
*/
|
|
69
|
-
declare class AXSideMenuComponent extends NXComponent {
|
|
100
|
+
declare class AXSideMenuComponent extends NXComponent implements AXSideMenuBase {
|
|
70
101
|
#private;
|
|
71
|
-
items: _angular_core.ModelSignal<
|
|
102
|
+
items: _angular_core.ModelSignal<AXMenuItem[]>;
|
|
72
103
|
readonly look: _angular_core.InputSignal<AXSideMenuLook>;
|
|
73
104
|
readonly location: _angular_core.InputSignal<AXSideMenuLocation>;
|
|
74
105
|
readonly mode: _angular_core.InputSignal<"full" | "compact">;
|
|
75
|
-
children: _angular_core.Signal<readonly AXSideMenuItemComponent[]>;
|
|
76
106
|
private elementRef;
|
|
77
|
-
|
|
107
|
+
/**
|
|
108
|
+
* All `ax-side-menu-item` instances discovered by walking the host DOM.
|
|
109
|
+
*
|
|
110
|
+
* We use DOM discovery (instead of `contentChildren`) because Angular content
|
|
111
|
+
* queries do **not** traverse embedded views created by `ngTemplateOutlet`,
|
|
112
|
+
* and the `AXSideMenuBase` DI token is not reachable from inside those views
|
|
113
|
+
* either (they inherit injection from the template's declaration site, not
|
|
114
|
+
* the insertion site). Walking the DOM works for direct projection,
|
|
115
|
+
* structural directives, and recursive `ngTemplateOutlet`-based templates
|
|
116
|
+
* uniformly.
|
|
117
|
+
*/
|
|
118
|
+
private _items;
|
|
119
|
+
/** Read-only signal exposing every discovered `ax-side-menu-item` instance. */
|
|
120
|
+
readonly children: _angular_core.Signal<AXSideMenuItemComponent[]>;
|
|
121
|
+
private platformId;
|
|
122
|
+
private destroyRef;
|
|
123
|
+
hostElement: HTMLElement;
|
|
124
|
+
private domRefreshScheduled;
|
|
125
|
+
private domRefreshObserver;
|
|
126
|
+
/**
|
|
127
|
+
* Walks the host DOM to discover every nested `ax-side-menu-item`, looks up
|
|
128
|
+
* the component instance through the `__axContext__` property that
|
|
129
|
+
* `MXBaseComponent.ngOnInit` attaches to each host element, and updates the
|
|
130
|
+
* internal items signal and `.first-level` CSS class accordingly.
|
|
131
|
+
*
|
|
132
|
+
* Triggered both initially and from a `MutationObserver` so recursive
|
|
133
|
+
* templates that add/remove items at runtime stay in sync.
|
|
134
|
+
*/
|
|
135
|
+
private refreshItemsFromDom;
|
|
136
|
+
private scheduleDomRefresh;
|
|
137
|
+
private hasRelevantMenuItemMutation;
|
|
138
|
+
private nodeListContainsMenuItem;
|
|
139
|
+
private addFirstLevelClass;
|
|
78
140
|
/** @ignore */
|
|
79
141
|
private get __hostClass();
|
|
80
142
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSideMenuComponent, never>;
|
|
81
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuComponent, "ax-side-menu", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "items": "itemsChange"; },
|
|
143
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuComponent, "ax-side-menu", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "items": "itemsChange"; }, never, ["ax-side-menu-item,ax-title,ng-container,[ngTemplateOutlet]"], true, never>;
|
|
82
144
|
}
|
|
83
145
|
|
|
84
146
|
declare class AXOutlineSideMenuDirective {
|
|
@@ -107,5 +169,5 @@ declare class AXSideMenuModule {
|
|
|
107
169
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXSideMenuModule>;
|
|
108
170
|
}
|
|
109
171
|
|
|
110
|
-
export { AXOutlineSideMenuDirective, AXSideMenuComponent, AXSideMenuItemClickEvent, AXSideMenuItemComponent, AXSideMenuModule };
|
|
111
|
-
export type {
|
|
172
|
+
export { AXOutlineSideMenuDirective, AXSideMenuBase, AXSideMenuComponent, AXSideMenuItemClickEvent, AXSideMenuItemComponent, AXSideMenuModule };
|
|
173
|
+
export type { AXSideMenuContextMenuItemData, AXSideMenuLocation, AXSideMenuLook };
|
|
@@ -6,7 +6,7 @@ interface AXStepWizardItem {
|
|
|
6
6
|
id: string;
|
|
7
7
|
title: string;
|
|
8
8
|
}
|
|
9
|
-
type AXStepWizardLook = 'rounded-icon' | 'circular-icon' | 'circular' | 'text-line' | 'custom';
|
|
9
|
+
type AXStepWizardLook = 'rounded-icon' | 'circular-icon' | 'circular' | 'text-line' | 'rounded-arrow-minimal' | 'rectangular-arrow-minimal' | 'custom';
|
|
10
10
|
type AXStepWizardSize = 'ax-sm' | 'ax-md' | 'ax-lg';
|
|
11
11
|
type AXStepWizardState = 'pending' | 'success' | 'error' | 'warning' | 'clear';
|
|
12
12
|
|
|
@@ -21,6 +21,7 @@ declare class AXStepWizardItemComponent extends MXBaseComponent {
|
|
|
21
21
|
state: _angular_core.ModelSignal<AXStepWizardState>;
|
|
22
22
|
stepId: _angular_core.WritableSignal<string>;
|
|
23
23
|
className: _angular_core.Signal<string>;
|
|
24
|
+
isArrowMinimalLook: _angular_core.Signal<boolean>;
|
|
24
25
|
template: _angular_core.Signal<TemplateRef<unknown>>;
|
|
25
26
|
set id(v: string);
|
|
26
27
|
private get __hostClass();
|