@acorex/platform 20.3.0-next.7 → 20.3.0-next.9
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/common/index.d.ts +0 -2
- package/core/index.d.ts +386 -47
- package/fesm2022/acorex-platform-common.mjs +5 -10
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +427 -125
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +422 -26
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +1843 -111
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +19 -12
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +463 -510
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +23 -15
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-BXbkGGei.mjs → acorex-platform-themes-default-entity-master-create-view.component-Ct-ri59W.mjs} +3 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Ct-ri59W.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-gQIK6PIx.mjs → acorex-platform-themes-default-entity-master-list-view.component-7BB4LdjK.mjs} +9 -9
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-7BB4LdjK.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BDJR088o.mjs +101 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BDJR088o.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +8 -8
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-KpZWpnOJ.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs} +21 -11
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs → acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs} +2 -2
- package/fesm2022/acorex-platform-themes-shared-settings.provider-CLUKU4y0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-BvOiVCgt.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs} +20 -5
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-BW0rfkjk.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs} +20 -5
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +205 -38
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-C-4bWr9G.mjs → acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs} +51 -35
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-file-list-popup.component-rW2RD35f.mjs → acorex-platform-widgets-file-list-popup.component-Cmtq2bBV.mjs} +3 -3
- package/fesm2022/acorex-platform-widgets-file-list-popup.component-Cmtq2bBV.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DNvnQ4Mc.mjs → acorex-platform-widgets-page-widget-designer.component-D8ivmxzT.mjs} +2 -2
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-D8ivmxzT.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-CPVRbE8B.mjs → acorex-platform-widgets-tabular-data-edit-popup.component-CMqq_iOj.mjs} +8 -8
- package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-CMqq_iOj.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +4590 -5073
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/builder/index.d.ts +62 -8
- package/layout/components/index.d.ts +780 -54
- package/layout/designer/index.d.ts +4 -2
- package/layout/entity/index.d.ts +53 -10
- package/package.json +9 -9
- package/widgets/index.d.ts +1441 -433
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BXbkGGei.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-gQIK6PIx.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Bp1JLsj1.mjs +0 -101
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Bp1JLsj1.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-KpZWpnOJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BvOiVCgt.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BW0rfkjk.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C-4bWr9G.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-file-list-popup.component-rW2RD35f.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DNvnQ4Mc.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-CPVRbE8B.mjs.map +0 -1
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { Signal, InjectionToken, InputSignal, TemplateRef, ElementRef, OnInit, OnDestroy, Type, ViewContainerRef, ModuleWithProviders, WritableSignal, QueryList, EventEmitter } from '@angular/core';
|
|
3
3
|
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
4
|
-
import { AXPActivityLog, AXPSystemActionType, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPActionMenuItem, AXPExecuteCommand, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
|
|
4
|
+
import { AXPActivityLog, AXPSystemActionType, AXPCategoryEntity, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPActionMenuItem, AXPExecuteCommand, AXPValidationRules, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
|
|
5
5
|
import { AXPMenuItem } from '@acorex/platform/common';
|
|
6
|
-
import
|
|
6
|
+
import * as _acorex_cdk_common from '@acorex/cdk/common';
|
|
7
|
+
import { AXValueChangedEvent, AXClickEvent, AXDataSource, AXDataSourceFilterOption, AXOrientation, AXHtmlEvent, AXEvent } from '@acorex/cdk/common';
|
|
8
|
+
import { AXTreeViewComponent, AXTreeItemClickBaseEvent } from '@acorex/components/tree-view';
|
|
9
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
7
10
|
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
8
11
|
import { AXPWidgetNode, AXPLayoutContextChangeEvent, AXPWidgetProperty, AXPWidgetConfig } from '@acorex/platform/layout/builder';
|
|
9
12
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
10
|
-
import {
|
|
13
|
+
import { AXDataTableComponent, AXDataTableRowDbClick, AXDataTableRowClick } from '@acorex/components/data-table';
|
|
11
14
|
import { AXBasePageComponent } from '@acorex/components/page';
|
|
15
|
+
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
16
|
+
import * as _acorex_platform_layout_components from '@acorex/platform/layout/components';
|
|
12
17
|
import { AXFormComponent } from '@acorex/components/form';
|
|
13
18
|
import { AXPopoverComponent } from '@acorex/components/popover';
|
|
14
19
|
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
15
20
|
import { AXCalendarService } from '@acorex/core/date-time';
|
|
16
|
-
import {
|
|
21
|
+
import { AXTabStripChangedEvent, AXTabsComponent } from '@acorex/components/tabs';
|
|
17
22
|
import { Observable } from 'rxjs';
|
|
18
|
-
import { AXTabsComponent, AXTabStripChangedEvent } from '@acorex/components/tabs';
|
|
19
23
|
|
|
20
24
|
declare class AXPActivityLogComponent {
|
|
21
25
|
private readonly translateService;
|
|
@@ -203,6 +207,85 @@ declare class AXPThemeLayoutContainerComponent {
|
|
|
203
207
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutContainerComponent, "axp-layout-container", never, {}, {}, never, ["*"], true, never>;
|
|
204
208
|
}
|
|
205
209
|
|
|
210
|
+
interface AXPCategoryTreeNode extends AXPCategoryEntity {
|
|
211
|
+
children?: AXPCategoryTreeNode[];
|
|
212
|
+
expand?: boolean;
|
|
213
|
+
hasChild?: boolean;
|
|
214
|
+
[key: string]: any;
|
|
215
|
+
}
|
|
216
|
+
interface AXPCategoryTreeConfig {
|
|
217
|
+
textField?: string;
|
|
218
|
+
valueField?: string;
|
|
219
|
+
expandedField?: string;
|
|
220
|
+
showCheckbox?: boolean;
|
|
221
|
+
searchable?: boolean;
|
|
222
|
+
searchPlaceholder?: string;
|
|
223
|
+
emptyStateTitle?: string;
|
|
224
|
+
emptyStateDescription?: string;
|
|
225
|
+
emptyStateIcon?: string;
|
|
226
|
+
}
|
|
227
|
+
interface AXPCategoryTreeEvents {
|
|
228
|
+
onNodeClick?: (node: AXPCategoryEntity) => void;
|
|
229
|
+
onNodeSelect?: (node: AXPCategoryEntity) => void;
|
|
230
|
+
onNodeCreate?: (parentNode?: AXPCategoryEntity) => void;
|
|
231
|
+
onNodeUpdate?: (node: AXPCategoryEntity) => void;
|
|
232
|
+
onNodeDelete?: (node: AXPCategoryEntity) => void;
|
|
233
|
+
onSearchChange?: (searchValue: string) => void;
|
|
234
|
+
onCollapseChange?: (node: AXPCategoryEntity) => void;
|
|
235
|
+
}
|
|
236
|
+
interface AXPCategoryTreeActions {
|
|
237
|
+
canCreate?: boolean;
|
|
238
|
+
canUpdate?: boolean;
|
|
239
|
+
canDelete?: boolean;
|
|
240
|
+
canCreateChild?: boolean;
|
|
241
|
+
createLabel?: string;
|
|
242
|
+
updateLabel?: string;
|
|
243
|
+
deleteLabel?: string;
|
|
244
|
+
createChildLabel?: string;
|
|
245
|
+
}
|
|
246
|
+
interface AXPCategoryTreeDataSource {
|
|
247
|
+
loadRootNodes: () => Promise<AXPCategoryEntity[]>;
|
|
248
|
+
loadChildNodes?: (parentId: string) => Promise<AXPCategoryEntity[]>;
|
|
249
|
+
searchNodes?: (searchValue: string) => Promise<AXPCategoryEntity[]>;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
declare class AXPCategoryTreeComponent {
|
|
253
|
+
protected readonly translationService: AXTranslationService;
|
|
254
|
+
dataSource: _angular_core.InputSignal<AXPCategoryTreeDataSource>;
|
|
255
|
+
config: _angular_core.InputSignal<AXPCategoryTreeConfig>;
|
|
256
|
+
actions: _angular_core.InputSignal<AXPCategoryTreeActions>;
|
|
257
|
+
events: _angular_core.InputSignal<AXPCategoryTreeEvents>;
|
|
258
|
+
nodeClick: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
259
|
+
nodeSelect: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
260
|
+
nodeCreate: _angular_core.OutputEmitterRef<AXPCategoryEntity<string> | undefined>;
|
|
261
|
+
nodeUpdate: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
262
|
+
nodeDelete: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
263
|
+
searchChange: _angular_core.OutputEmitterRef<string>;
|
|
264
|
+
collapseChange: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
265
|
+
tree: _angular_core.Signal<AXTreeViewComponent | undefined>;
|
|
266
|
+
isLoading: _angular_core.WritableSignal<boolean>;
|
|
267
|
+
searchValue: _angular_core.WritableSignal<string>;
|
|
268
|
+
protected treeItems: _angular_core.WritableSignal<AXPCategoryTreeNode[]>;
|
|
269
|
+
protected emptyStateTitle: _angular_core.Signal<string>;
|
|
270
|
+
protected emptyStateDescription: _angular_core.Signal<string>;
|
|
271
|
+
ngOnInit(): Promise<void>;
|
|
272
|
+
loadRootNodes(): Promise<void>;
|
|
273
|
+
loadChildNodes(parentId: string): Promise<void>;
|
|
274
|
+
searchNodes(searchValue: string): Promise<void>;
|
|
275
|
+
handleNodeClick(event: AXTreeItemClickBaseEvent): Promise<void>;
|
|
276
|
+
handleCollapseChanged(event: AXTreeItemClickBaseEvent): Promise<void>;
|
|
277
|
+
handleSearchChange(event: AXValueChangedEvent): Promise<void>;
|
|
278
|
+
handleCreateRootClick(event: AXClickEvent): Promise<void>;
|
|
279
|
+
handleCreateChildClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
280
|
+
handleUpdateNodeClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
281
|
+
handleDeleteNodeClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
282
|
+
private convertEntitiesToTreeNodes;
|
|
283
|
+
private updateNodeChildren;
|
|
284
|
+
refreshTree(parentId?: string): Promise<void>;
|
|
285
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCategoryTreeComponent, never>;
|
|
286
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPCategoryTreeComponent, "axp-category-tree", never, { "dataSource": { "alias": "dataSource"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "events": { "alias": "events"; "required": false; "isSignal": true; }; }, { "nodeClick": "nodeClick"; "nodeSelect": "nodeSelect"; "nodeCreate": "nodeCreate"; "nodeUpdate": "nodeUpdate"; "nodeDelete": "nodeDelete"; "searchChange": "searchChange"; "collapseChange": "collapseChange"; }, never, never, true, never>;
|
|
287
|
+
}
|
|
288
|
+
|
|
206
289
|
declare class AXPQueryColumnsComponent {
|
|
207
290
|
columns: _angular_core.ModelSignal<AXPColumnQuery[]>;
|
|
208
291
|
handleVisibilityChange(e: AXValueChangedEvent<boolean>, name: string): void;
|
|
@@ -357,6 +440,105 @@ declare class AXPComponentSlotModule {
|
|
|
357
440
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
|
|
358
441
|
}
|
|
359
442
|
|
|
443
|
+
interface AXPDataSelectorColumn {
|
|
444
|
+
name: string;
|
|
445
|
+
title: string;
|
|
446
|
+
visible: boolean;
|
|
447
|
+
widget: {
|
|
448
|
+
type: string;
|
|
449
|
+
options: any;
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
interface AXPDataSelectorConfig {
|
|
453
|
+
title: string;
|
|
454
|
+
dataSource: AXDataSource<any>;
|
|
455
|
+
columns: AXPDataSelectorColumn[];
|
|
456
|
+
selectionMode: 'single' | 'multiple';
|
|
457
|
+
searchFields?: string[];
|
|
458
|
+
parentField?: string;
|
|
459
|
+
allowCreate?: boolean;
|
|
460
|
+
categoryFilter?: {
|
|
461
|
+
enabled: boolean;
|
|
462
|
+
title: string;
|
|
463
|
+
dataSource: AXPCategoryTreeDataSource;
|
|
464
|
+
filterField: string;
|
|
465
|
+
filterOperator?: 'equal' | 'contains' | 'in';
|
|
466
|
+
width?: string;
|
|
467
|
+
};
|
|
468
|
+
}
|
|
469
|
+
declare class AXPDataSelectorComponent extends AXBasePageComponent {
|
|
470
|
+
protected config: _angular_core.WritableSignal<AXPDataSelectorConfig>;
|
|
471
|
+
protected searchTerm: string;
|
|
472
|
+
protected filter: AXDataSourceFilterOption;
|
|
473
|
+
protected grid: _angular_core.Signal<AXDataTableComponent | undefined>;
|
|
474
|
+
protected initialSelectedItems: any[];
|
|
475
|
+
protected selectedItems: _angular_core.WritableSignal<any[]>;
|
|
476
|
+
protected activeCategoryFilter: _angular_core.WritableSignal<{
|
|
477
|
+
node: AXPCategoryEntity;
|
|
478
|
+
filterValue: any;
|
|
479
|
+
} | null>;
|
|
480
|
+
protected allowSelect: _angular_core.Signal<boolean>;
|
|
481
|
+
protected hasSearch: _angular_core.Signal<boolean | undefined>;
|
|
482
|
+
protected searchPlaceholder: _angular_core.Signal<string>;
|
|
483
|
+
protected categoryTreeConfig: _angular_core.Signal<{
|
|
484
|
+
textField: string;
|
|
485
|
+
valueField: string;
|
|
486
|
+
showCheckbox: boolean;
|
|
487
|
+
searchable: boolean;
|
|
488
|
+
searchPlaceholder: string;
|
|
489
|
+
emptyStateTitle: string;
|
|
490
|
+
emptyStateDescription: string;
|
|
491
|
+
emptyStateIcon: string;
|
|
492
|
+
}>;
|
|
493
|
+
protected categoryTreeActions: _angular_core.Signal<{
|
|
494
|
+
canCreate: boolean;
|
|
495
|
+
canUpdate: boolean;
|
|
496
|
+
canDelete: boolean;
|
|
497
|
+
canCreateChild: boolean;
|
|
498
|
+
}>;
|
|
499
|
+
protected ngOnInit(): void;
|
|
500
|
+
protected ngAfterViewInit(): void;
|
|
501
|
+
protected handleRowDbClick(e: AXDataTableRowDbClick): void;
|
|
502
|
+
protected handleRowClick(e: AXDataTableRowClick): void;
|
|
503
|
+
protected handleSelectedRowsChange(rows: unknown[]): Promise<void>;
|
|
504
|
+
protected handleChangeSearchValue(e: AXValueChangedEvent): void;
|
|
505
|
+
protected handleCreateNewClick(): Promise<void>;
|
|
506
|
+
protected handleCloseClick(): void;
|
|
507
|
+
protected handleSelectClick(): void;
|
|
508
|
+
protected handleExpandRow(row: any): Promise<void>;
|
|
509
|
+
protected handleCategoryFilterClick(node: AXPCategoryEntity): void;
|
|
510
|
+
protected clearCategoryFilter(): void;
|
|
511
|
+
private applySearchFilter;
|
|
512
|
+
private applyFilterAndSort;
|
|
513
|
+
private applyCategoryFilter;
|
|
514
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorComponent, never>;
|
|
515
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDataSelectorComponent, "axp-data-selector", never, {}, {}, never, never, true, never>;
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
declare class AXPDataSelectorService {
|
|
519
|
+
private readonly popupService;
|
|
520
|
+
/**
|
|
521
|
+
* Open data selector popup
|
|
522
|
+
*/
|
|
523
|
+
open(config: AXPDataSelectorConfig): Promise<{
|
|
524
|
+
items: any[];
|
|
525
|
+
} | null>;
|
|
526
|
+
/**
|
|
527
|
+
* Open data selector with category filter
|
|
528
|
+
*/
|
|
529
|
+
openWithCategoryFilter(config: Omit<AXPDataSelectorConfig, 'categoryFilter'>, categoryFilterConfig: {
|
|
530
|
+
title: string;
|
|
531
|
+
dataSource: AXPCategoryTreeDataSource;
|
|
532
|
+
filterField: string;
|
|
533
|
+
filterOperator?: 'equal' | 'contains' | 'in';
|
|
534
|
+
width?: string;
|
|
535
|
+
}): Promise<{
|
|
536
|
+
items: any[];
|
|
537
|
+
} | null>;
|
|
538
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorService, never>;
|
|
539
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDataSelectorService>;
|
|
540
|
+
}
|
|
541
|
+
|
|
360
542
|
/**
|
|
361
543
|
* Form appearance and density styling
|
|
362
544
|
*/
|
|
@@ -370,6 +552,18 @@ interface AXPDynamicFormFieldDefinition {
|
|
|
370
552
|
title?: string;
|
|
371
553
|
description?: string;
|
|
372
554
|
widget: AXPWidgetNode;
|
|
555
|
+
/**
|
|
556
|
+
* Optional per-parameter layout override. Takes precedence over form layoutConfig.
|
|
557
|
+
* - number: colSpan for all breakpoints
|
|
558
|
+
* - object: colSpan per breakpoint
|
|
559
|
+
*/
|
|
560
|
+
layout?: number | {
|
|
561
|
+
default?: number;
|
|
562
|
+
md?: number;
|
|
563
|
+
lg?: number;
|
|
564
|
+
xl?: number;
|
|
565
|
+
xxl?: number;
|
|
566
|
+
};
|
|
373
567
|
}
|
|
374
568
|
interface AXPDynamicFormGroupDefinition {
|
|
375
569
|
name: string;
|
|
@@ -400,13 +594,219 @@ interface AXPDynamicFormLayoutConfig {
|
|
|
400
594
|
};
|
|
401
595
|
}
|
|
402
596
|
|
|
597
|
+
/**
|
|
598
|
+
* Describes a single step of the dynamic form stepper.
|
|
599
|
+
* Each step contains one or more groups rendered by AXPDynamicFormComponent.
|
|
600
|
+
*/
|
|
601
|
+
interface AXPDynamicFormStepperStepDefinition {
|
|
602
|
+
/** Unique identifier for the step */
|
|
603
|
+
id: string;
|
|
604
|
+
/** Display title for the step */
|
|
605
|
+
title?: string;
|
|
606
|
+
/** Optional descriptive text for the step */
|
|
607
|
+
description?: string;
|
|
608
|
+
/** Optional icon name for the step header */
|
|
609
|
+
icon?: string;
|
|
610
|
+
/** Field groups to render in this step */
|
|
611
|
+
groups: AXPDynamicFormGroupDefinition[];
|
|
612
|
+
/** Optional layout direction override for this step's form */
|
|
613
|
+
formDirection?: AXPDynamicFormDirection;
|
|
614
|
+
/** Whether the user may skip this step (defaults to false) */
|
|
615
|
+
canSkip?: boolean;
|
|
616
|
+
/** Whether the user may navigate back from this step (defaults to true) */
|
|
617
|
+
canGoBack?: boolean;
|
|
618
|
+
/** Optional data path inside the shared context for this step's data */
|
|
619
|
+
dataPath?: string;
|
|
620
|
+
}
|
|
621
|
+
/**
|
|
622
|
+
* Root definition for the dynamic form stepper.
|
|
623
|
+
*/
|
|
624
|
+
interface AXPDynamicFormStepperDefinition {
|
|
625
|
+
/** Ordered collection of steps */
|
|
626
|
+
steps: AXPDynamicFormStepperStepDefinition[];
|
|
627
|
+
/** Enforce sequential navigation (no jumping to future steps) */
|
|
628
|
+
linear?: boolean;
|
|
629
|
+
/** Show progress indicator above the content */
|
|
630
|
+
showProgress?: boolean;
|
|
631
|
+
/** Show step numbers in the header */
|
|
632
|
+
showStepNumbers?: boolean;
|
|
633
|
+
}
|
|
634
|
+
|
|
635
|
+
declare class AXPDynamicFormStepperComponent {
|
|
636
|
+
#private;
|
|
637
|
+
/**
|
|
638
|
+
* Stepper definition providing steps metadata and behavior configuration
|
|
639
|
+
*/
|
|
640
|
+
definition: _angular_core.InputSignal<AXPDynamicFormStepperDefinition>;
|
|
641
|
+
/**
|
|
642
|
+
* Shared root context for all steps
|
|
643
|
+
*/
|
|
644
|
+
context: _angular_core.InputSignal<any>;
|
|
645
|
+
/**
|
|
646
|
+
* Optional pass-through layout props for inner forms
|
|
647
|
+
*/
|
|
648
|
+
layoutLook: _angular_core.InputSignal<AXPDynamicFormLook>;
|
|
649
|
+
stepperDirection: _angular_core.InputSignal<AXOrientation>;
|
|
650
|
+
layoutConfig: _angular_core.InputSignal<AXPDynamicFormLayoutConfig | undefined>;
|
|
651
|
+
/**
|
|
652
|
+
* Optional guard that controls advancing to the next step (async only)
|
|
653
|
+
*/
|
|
654
|
+
guardNext: _angular_core.InputSignal<((e: {
|
|
655
|
+
index: number;
|
|
656
|
+
id: string;
|
|
657
|
+
fullContext: any;
|
|
658
|
+
}) => Promise<boolean>) | undefined>;
|
|
659
|
+
/**
|
|
660
|
+
* Emits when the shared root context changes
|
|
661
|
+
*/
|
|
662
|
+
contextChange: _angular_core.OutputEmitterRef<any>;
|
|
663
|
+
/**
|
|
664
|
+
* Emits when the active step changes
|
|
665
|
+
*/
|
|
666
|
+
stepChange: _angular_core.OutputEmitterRef<{
|
|
667
|
+
index: number;
|
|
668
|
+
id: string;
|
|
669
|
+
}>;
|
|
670
|
+
/**
|
|
671
|
+
* Emits after successful finish
|
|
672
|
+
*/
|
|
673
|
+
finished: _angular_core.OutputEmitterRef<any>;
|
|
674
|
+
/**
|
|
675
|
+
* Emits when cancelled by API
|
|
676
|
+
*/
|
|
677
|
+
cancel: _angular_core.OutputEmitterRef<void>;
|
|
678
|
+
/**
|
|
679
|
+
* Emits when navigation is blocked by validation or policy
|
|
680
|
+
*/
|
|
681
|
+
navigationBlocked: _angular_core.OutputEmitterRef<{
|
|
682
|
+
reason: "invalid" | "linear" | "cannot-skip" | "cannot-go-back";
|
|
683
|
+
stepId: string;
|
|
684
|
+
targetIndex?: number;
|
|
685
|
+
}>;
|
|
686
|
+
/**
|
|
687
|
+
* Internal reactive copy of the shared context
|
|
688
|
+
*/
|
|
689
|
+
private internalContext;
|
|
690
|
+
/**
|
|
691
|
+
* Active step index
|
|
692
|
+
*/
|
|
693
|
+
protected currentStepIndex: _angular_core.WritableSignal<number>;
|
|
694
|
+
/**
|
|
695
|
+
* Navigation lock while async guards are pending
|
|
696
|
+
*/
|
|
697
|
+
private navigationLocked;
|
|
698
|
+
/**
|
|
699
|
+
* Reference to underlying step wizard to sync visual navigation
|
|
700
|
+
*/
|
|
701
|
+
private readonly wizard;
|
|
702
|
+
/**
|
|
703
|
+
* References to rendered dynamic forms (usually one active)
|
|
704
|
+
*/
|
|
705
|
+
private readonly forms;
|
|
706
|
+
protected steps: _angular_core.Signal<_acorex_platform_layout_components.AXPDynamicFormStepperStepDefinition[]>;
|
|
707
|
+
protected stepCount: _angular_core.Signal<number>;
|
|
708
|
+
protected currentStep: _angular_core.Signal<_acorex_platform_layout_components.AXPDynamicFormStepperStepDefinition>;
|
|
709
|
+
protected isFirstComputed: _angular_core.Signal<boolean>;
|
|
710
|
+
protected isLastComputed: _angular_core.Signal<boolean>;
|
|
711
|
+
/**
|
|
712
|
+
* Non-undefined layout config for inner dynamic forms
|
|
713
|
+
*/
|
|
714
|
+
protected effectiveLayoutConfig: _angular_core.Signal<AXPDynamicFormLayoutConfig>;
|
|
715
|
+
/**
|
|
716
|
+
* Returns the current step pointer
|
|
717
|
+
*/
|
|
718
|
+
getCurrentStep(): {
|
|
719
|
+
index: number;
|
|
720
|
+
id: string;
|
|
721
|
+
};
|
|
722
|
+
/**
|
|
723
|
+
* Public helpers for templates/consumers
|
|
724
|
+
*/
|
|
725
|
+
isFirst(): boolean;
|
|
726
|
+
isLast(): boolean;
|
|
727
|
+
/**
|
|
728
|
+
* Returns the root context
|
|
729
|
+
*/
|
|
730
|
+
getContext(): any;
|
|
731
|
+
/**
|
|
732
|
+
* Replaces the root context programmatically
|
|
733
|
+
*/
|
|
734
|
+
setContext(ctx: any): void;
|
|
735
|
+
/**
|
|
736
|
+
* Validates the current step.
|
|
737
|
+
*/
|
|
738
|
+
validateCurrentStep(): Promise<boolean>;
|
|
739
|
+
/**
|
|
740
|
+
* Attempts to advance to the next step applying validation and guard
|
|
741
|
+
*/
|
|
742
|
+
next(): Promise<void>;
|
|
743
|
+
/**
|
|
744
|
+
* Goes back to the previous step if possible
|
|
745
|
+
*/
|
|
746
|
+
previous(): Promise<void>;
|
|
747
|
+
/**
|
|
748
|
+
* Navigates to a specific step by id or index
|
|
749
|
+
*/
|
|
750
|
+
goTo(stepIdOrIndex: string | number): Promise<void>;
|
|
751
|
+
/**
|
|
752
|
+
* Validates all steps and emits finished when successful
|
|
753
|
+
*/
|
|
754
|
+
finish(): Promise<void>;
|
|
755
|
+
/**
|
|
756
|
+
* Emits cancel event without state changes
|
|
757
|
+
*/
|
|
758
|
+
cancelFlow(): void;
|
|
759
|
+
/**
|
|
760
|
+
* Handle per-step context changes and keep internal root context in sync.
|
|
761
|
+
*/
|
|
762
|
+
protected onStepContextChange(stepId: string, stepContext: any): void;
|
|
763
|
+
/**
|
|
764
|
+
* Exposes reading a step slice to the template
|
|
765
|
+
*/
|
|
766
|
+
readStepSlice(path?: string): {
|
|
767
|
+
slice: any;
|
|
768
|
+
exists: boolean;
|
|
769
|
+
};
|
|
770
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicFormStepperComponent, never>;
|
|
771
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicFormStepperComponent, "axp-dynamic-form-stepper", never, { "definition": { "alias": "definition"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": true; "isSignal": true; }; "layoutLook": { "alias": "layoutLook"; "required": false; "isSignal": true; }; "stepperDirection": { "alias": "stepperDirection"; "required": false; "isSignal": true; }; "layoutConfig": { "alias": "layoutConfig"; "required": false; "isSignal": true; }; "guardNext": { "alias": "guardNext"; "required": false; "isSignal": true; }; }, { "contextChange": "contextChange"; "stepChange": "stepChange"; "finished": "finished"; "cancel": "cancel"; "navigationBlocked": "navigationBlocked"; }, never, never, true, never>;
|
|
772
|
+
}
|
|
773
|
+
|
|
403
774
|
interface AXPDynamicDialogConfig {
|
|
404
775
|
title: string;
|
|
405
776
|
message?: string;
|
|
406
|
-
|
|
777
|
+
/**
|
|
778
|
+
* Legacy: If provided, dialog renders only dynamic-form.
|
|
779
|
+
*/
|
|
780
|
+
formDefinition?: AXPDynamicFormDefinition;
|
|
781
|
+
/**
|
|
782
|
+
* Preferred definition: dynamic form (no steps or single step) or a multi-step stepper definition.
|
|
783
|
+
*/
|
|
784
|
+
definition?: AXPDynamicFormDefinition | AXPDynamicFormStepperDefinition;
|
|
785
|
+
/**
|
|
786
|
+
* Shared context passed to the rendered control
|
|
787
|
+
*/
|
|
407
788
|
context: any;
|
|
789
|
+
/**
|
|
790
|
+
* Shared layout options applied to form/stepper unless overridden
|
|
791
|
+
*/
|
|
408
792
|
layoutConfig?: AXPDynamicFormLayoutConfig;
|
|
793
|
+
layoutLook?: AXPDynamicFormLook;
|
|
409
794
|
size?: AXPopupSizeType;
|
|
795
|
+
closeButton?: boolean;
|
|
796
|
+
/**
|
|
797
|
+
* Optional stepper-only options. Ignored when rendering dynamic-form.
|
|
798
|
+
*/
|
|
799
|
+
stepper?: {
|
|
800
|
+
guardNext?: (e: {
|
|
801
|
+
index: number;
|
|
802
|
+
id: string;
|
|
803
|
+
fullContext: unknown;
|
|
804
|
+
}) => Promise<boolean>;
|
|
805
|
+
stepperDirection?: AXOrientation;
|
|
806
|
+
};
|
|
807
|
+
/**
|
|
808
|
+
* Footer actions. In stepper mode, footer is replaced by Prev/Next/Confirm.
|
|
809
|
+
*/
|
|
410
810
|
actions?: {
|
|
411
811
|
footer?: {
|
|
412
812
|
prefix?: AXPActionMenuItem[];
|
|
@@ -418,17 +818,44 @@ interface AXPDynamicDialogResult {
|
|
|
418
818
|
context: any;
|
|
419
819
|
action?: string;
|
|
420
820
|
}
|
|
821
|
+
interface AXPDialogRef {
|
|
822
|
+
/**
|
|
823
|
+
* Manually close the dialog (optional - dialog closes automatically after user interaction)
|
|
824
|
+
*/
|
|
825
|
+
close(): void;
|
|
826
|
+
/**
|
|
827
|
+
* Get the form data from the dialog
|
|
828
|
+
*/
|
|
829
|
+
context(): any;
|
|
830
|
+
/**
|
|
831
|
+
* Get the action that was clicked by the user
|
|
832
|
+
*/
|
|
833
|
+
action(): string | undefined;
|
|
834
|
+
/**
|
|
835
|
+
* Set the loading state of the dialog
|
|
836
|
+
*/
|
|
837
|
+
setLoading(loading: boolean): void;
|
|
838
|
+
}
|
|
421
839
|
|
|
422
840
|
declare class AXPDynamicDialogComponent extends AXBasePageComponent {
|
|
423
841
|
config: AXPDynamicDialogConfig;
|
|
424
842
|
private readonly dynamicForm;
|
|
843
|
+
protected readonly stepper: _angular_core.Signal<AXPDynamicFormStepperComponent | undefined>;
|
|
425
844
|
isSubmitting: _angular_core.WritableSignal<boolean>;
|
|
426
845
|
private previousContext;
|
|
427
846
|
private formData;
|
|
847
|
+
dialogResult: AXPDynamicDialogResult | null;
|
|
848
|
+
isSubmittingFromDialog: boolean;
|
|
849
|
+
data: any;
|
|
850
|
+
callBack: (dialogRef: AXPDialogRef) => void;
|
|
428
851
|
/**
|
|
429
852
|
* Form context for widget container
|
|
430
853
|
*/
|
|
431
854
|
protected formContext: _angular_core.Signal<Record<string, any>>;
|
|
855
|
+
/**
|
|
856
|
+
* Combined loading state from both signal and dialog
|
|
857
|
+
*/
|
|
858
|
+
protected isFormLoading: _angular_core.Signal<boolean>;
|
|
432
859
|
protected defaultLayout: () => {
|
|
433
860
|
positions: {
|
|
434
861
|
default: {
|
|
@@ -448,14 +875,42 @@ declare class AXPDynamicDialogComponent extends AXBasePageComponent {
|
|
|
448
875
|
};
|
|
449
876
|
};
|
|
450
877
|
};
|
|
878
|
+
/**
|
|
879
|
+
* Determine rendering mode and effective definitions
|
|
880
|
+
*/
|
|
881
|
+
protected readonly hasLegacyForm: _angular_core.Signal<boolean>;
|
|
882
|
+
protected readonly providedDefinition: _angular_core.Signal<_acorex_platform_layout_components.AXPDynamicFormDefinition | _acorex_platform_layout_components.AXPDynamicFormStepperDefinition | undefined>;
|
|
883
|
+
protected readonly isStepperDefinition: _angular_core.Signal<boolean>;
|
|
884
|
+
protected readonly shouldRenderForm: _angular_core.Signal<boolean>;
|
|
885
|
+
protected readonly effectiveFormDefinition: _angular_core.Signal<any>;
|
|
886
|
+
protected readonly resolvedFormDefinition: _angular_core.Signal<any>;
|
|
887
|
+
protected readonly effectiveLayoutLook: _angular_core.Signal<_acorex_platform_layout_components.AXPDynamicFormLook>;
|
|
888
|
+
protected readonly effectiveLayoutConfig: _angular_core.Signal<_acorex_platform_layout_components.AXPDynamicFormLayoutConfig>;
|
|
889
|
+
protected readonly stepperGuardNext: _angular_core.Signal<((e: {
|
|
890
|
+
index: number;
|
|
891
|
+
id: string;
|
|
892
|
+
fullContext: unknown;
|
|
893
|
+
}) => Promise<boolean>) | undefined>;
|
|
894
|
+
protected readonly stepperDirection: _angular_core.Signal<_acorex_cdk_common.AXOrientation>;
|
|
895
|
+
protected readonly stepperDefinition: _angular_core.Signal<any>;
|
|
896
|
+
stepperIsFirst: _angular_core.Signal<boolean>;
|
|
897
|
+
stepperIsLast: _angular_core.Signal<boolean>;
|
|
898
|
+
/**
|
|
899
|
+
* Effective form direction when rendering dynamic-form (single-step or legacy form).
|
|
900
|
+
* If a single-step definition is provided and that step specifies formDirection, use it.
|
|
901
|
+
*/
|
|
902
|
+
protected readonly effectiveFormDirection: _angular_core.Signal<AXPDynamicFormDirection>;
|
|
451
903
|
/**
|
|
452
904
|
* Footer actions for dynamic button system
|
|
453
905
|
*/
|
|
454
906
|
protected footerPrefixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
455
907
|
protected footerSuffixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
908
|
+
protected visibleFooterPrefixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
909
|
+
protected visibleFooterSuffixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
456
910
|
protected hasFooterActions: _angular_core.Signal<boolean>;
|
|
457
|
-
|
|
458
|
-
protected
|
|
911
|
+
/** Stepper footer: choose a single confirm action from provided suffix actions (first visible). */
|
|
912
|
+
protected confirmAction: _angular_core.Signal<AXPActionMenuItem | undefined>;
|
|
913
|
+
protected confirmActionTitle: _angular_core.Signal<string>;
|
|
459
914
|
ngOnInit(): void;
|
|
460
915
|
protected handleContextInitiated(context: any): void;
|
|
461
916
|
protected handleContextChanged(context: any): void;
|
|
@@ -471,6 +926,9 @@ declare class AXPDynamicDialogComponent extends AXBasePageComponent {
|
|
|
471
926
|
* Check if form is valid
|
|
472
927
|
*/
|
|
473
928
|
protected isFormValid(): Promise<boolean>;
|
|
929
|
+
/** Stepper navigation handlers */
|
|
930
|
+
protected goPrev(): void;
|
|
931
|
+
protected goNext(): void;
|
|
474
932
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicDialogComponent, never>;
|
|
475
933
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicDialogComponent, "axp-dynamic-dialog", never, { "config": { "alias": "config"; "required": true; }; }, {}, never, never, true, never>;
|
|
476
934
|
}
|
|
@@ -480,15 +938,24 @@ declare class AXPDynamicDialogService {
|
|
|
480
938
|
/**
|
|
481
939
|
* Show a dynamic dialog with the given configuration
|
|
482
940
|
* @param config Dialog configuration including fields, validation, and UI options
|
|
483
|
-
* @returns Promise resolving to dialog
|
|
941
|
+
* @returns Promise resolving to dialog reference for controlling the dialog
|
|
484
942
|
*/
|
|
485
|
-
showDialog(config: AXPDynamicDialogConfig): Promise<
|
|
943
|
+
showDialog(config: AXPDynamicDialogConfig): Promise<AXPDialogRef>;
|
|
486
944
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicDialogService, never>;
|
|
487
945
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDynamicDialogService>;
|
|
488
946
|
}
|
|
489
947
|
|
|
490
948
|
declare class AXPDynamicFormComponent implements OnInit {
|
|
491
949
|
#private;
|
|
950
|
+
private evaluatorService;
|
|
951
|
+
/**
|
|
952
|
+
* Tracks the latest scheduled evaluation to ensure last-write-wins for async evaluate
|
|
953
|
+
*/
|
|
954
|
+
private evaluationRunId;
|
|
955
|
+
/**
|
|
956
|
+
* Memoization cache for resolveParamLayout to keep stable object identities
|
|
957
|
+
*/
|
|
958
|
+
private layoutCache;
|
|
492
959
|
/**
|
|
493
960
|
* Form definition containing groups and fields
|
|
494
961
|
*/
|
|
@@ -509,6 +976,12 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
509
976
|
* Custom layout configuration for form fields
|
|
510
977
|
*/
|
|
511
978
|
layoutConfig: _angular_core.InputSignal<AXPDynamicFormLayoutConfig>;
|
|
979
|
+
protected expressionEvaluator(expression: any, context: any): Promise<any>;
|
|
980
|
+
protected evaluatedFormDefinition: _angular_core.WritableSignal<any>;
|
|
981
|
+
/**
|
|
982
|
+
* Evaluate definition when inputs change with last-write-wins and deep-equality guard
|
|
983
|
+
*/
|
|
984
|
+
eff: _angular_core.EffectRef;
|
|
512
985
|
/**
|
|
513
986
|
* Emitted when form context changes
|
|
514
987
|
*/
|
|
@@ -531,6 +1004,10 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
531
1004
|
* Computed layout configuration
|
|
532
1005
|
*/
|
|
533
1006
|
protected computedLayout: _angular_core.Signal<AXPDynamicFormLayoutConfig>;
|
|
1007
|
+
/**
|
|
1008
|
+
* Resolve effective grid layout for a specific parameter, merging per-parameter override with form layout.
|
|
1009
|
+
*/
|
|
1010
|
+
protected resolveParamLayout(param: AXPDynamicFormFieldDefinition): AXPDynamicFormLayoutConfig;
|
|
534
1011
|
/**
|
|
535
1012
|
* Host classes based on layout look and direction
|
|
536
1013
|
*/
|
|
@@ -561,6 +1038,255 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
561
1038
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicFormComponent, "axp-dynamic-form", never, { "formDefinition": { "alias": "formDefinition"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": true; "isSignal": true; }; "layoutLook": { "alias": "layoutLook"; "required": false; "isSignal": true; }; "layoutDirection": { "alias": "layoutDirection"; "required": false; "isSignal": true; }; "layoutConfig": { "alias": "layoutConfig"; "required": false; "isSignal": true; }; }, { "contextChange": "contextChange"; "contextInitiated": "contextInitiated"; "validityChange": "validityChange"; }, never, never, true, never>;
|
|
562
1039
|
}
|
|
563
1040
|
|
|
1041
|
+
interface TextBoxOptions {
|
|
1042
|
+
placeholder?: string;
|
|
1043
|
+
maxLength?: number;
|
|
1044
|
+
minLength?: number;
|
|
1045
|
+
mask?: string;
|
|
1046
|
+
disabled?: boolean;
|
|
1047
|
+
readonly?: boolean;
|
|
1048
|
+
validations?: AXPValidationRules;
|
|
1049
|
+
}
|
|
1050
|
+
interface LargeTextBoxOptions {
|
|
1051
|
+
placeholder?: string;
|
|
1052
|
+
maxLength?: number;
|
|
1053
|
+
minLength?: number;
|
|
1054
|
+
rows?: number;
|
|
1055
|
+
disabled?: boolean;
|
|
1056
|
+
readonly?: boolean;
|
|
1057
|
+
validations?: AXPValidationRules;
|
|
1058
|
+
}
|
|
1059
|
+
interface RichTextOptions {
|
|
1060
|
+
placeholder?: string;
|
|
1061
|
+
toolbar?: string[];
|
|
1062
|
+
height?: number;
|
|
1063
|
+
disabled?: boolean;
|
|
1064
|
+
readonly?: boolean;
|
|
1065
|
+
validations?: AXPValidationRules;
|
|
1066
|
+
}
|
|
1067
|
+
interface SelectBoxOptions<TItem extends Record<string, unknown> = Record<string, unknown>> {
|
|
1068
|
+
valueField: keyof TItem & string;
|
|
1069
|
+
textField: keyof TItem & string;
|
|
1070
|
+
dataSource: TItem[];
|
|
1071
|
+
multiple?: boolean;
|
|
1072
|
+
placeholder?: string;
|
|
1073
|
+
disabled?: boolean;
|
|
1074
|
+
readonly?: boolean;
|
|
1075
|
+
allowSearch?: boolean;
|
|
1076
|
+
validations?: AXPValidationRules;
|
|
1077
|
+
}
|
|
1078
|
+
interface LookupBoxOptions {
|
|
1079
|
+
entity: string;
|
|
1080
|
+
multiple?: boolean;
|
|
1081
|
+
expose?: Array<{
|
|
1082
|
+
source: string;
|
|
1083
|
+
target: string;
|
|
1084
|
+
}>;
|
|
1085
|
+
placeholder?: string;
|
|
1086
|
+
textField?: string;
|
|
1087
|
+
valueField?: string;
|
|
1088
|
+
look?: string;
|
|
1089
|
+
columns?: string[];
|
|
1090
|
+
allowClear?: boolean;
|
|
1091
|
+
disabled?: boolean;
|
|
1092
|
+
readonly?: boolean;
|
|
1093
|
+
validations?: AXPValidationRules;
|
|
1094
|
+
}
|
|
1095
|
+
interface NumberBoxOptions {
|
|
1096
|
+
minValue?: number;
|
|
1097
|
+
maxValue?: number;
|
|
1098
|
+
step?: number;
|
|
1099
|
+
format?: string;
|
|
1100
|
+
placeholder?: string;
|
|
1101
|
+
disabled?: boolean;
|
|
1102
|
+
readonly?: boolean;
|
|
1103
|
+
validations?: AXPValidationRules;
|
|
1104
|
+
}
|
|
1105
|
+
interface DateTimeBoxOptions {
|
|
1106
|
+
format?: string;
|
|
1107
|
+
min?: Date;
|
|
1108
|
+
max?: Date;
|
|
1109
|
+
showTime?: boolean;
|
|
1110
|
+
placeholder?: string;
|
|
1111
|
+
disabled?: boolean;
|
|
1112
|
+
readonly?: boolean;
|
|
1113
|
+
validations?: AXPValidationRules;
|
|
1114
|
+
}
|
|
1115
|
+
interface ToggleSwitchOptions {
|
|
1116
|
+
onText?: string;
|
|
1117
|
+
offText?: string;
|
|
1118
|
+
validations?: AXPValidationRules;
|
|
1119
|
+
}
|
|
1120
|
+
interface PasswordBoxOptions {
|
|
1121
|
+
placeholder?: string;
|
|
1122
|
+
maxLength?: number;
|
|
1123
|
+
minLength?: number;
|
|
1124
|
+
showToggle?: boolean;
|
|
1125
|
+
validations?: AXPValidationRules;
|
|
1126
|
+
}
|
|
1127
|
+
interface SelectionListOptions<TItem extends Record<string, unknown> = Record<string, unknown>> {
|
|
1128
|
+
valueField: keyof TItem & string;
|
|
1129
|
+
textField: keyof TItem & string;
|
|
1130
|
+
dataSource: TItem[];
|
|
1131
|
+
multiple?: boolean;
|
|
1132
|
+
placeholder?: string;
|
|
1133
|
+
disabled?: boolean;
|
|
1134
|
+
readonly?: boolean;
|
|
1135
|
+
validations?: AXPValidationRules;
|
|
1136
|
+
}
|
|
1137
|
+
interface ColorBoxOptions {
|
|
1138
|
+
defaultColor?: string;
|
|
1139
|
+
showAlpha?: boolean;
|
|
1140
|
+
disabled?: boolean;
|
|
1141
|
+
readonly?: boolean;
|
|
1142
|
+
validations?: AXPValidationRules;
|
|
1143
|
+
}
|
|
1144
|
+
interface IFieldOptions {
|
|
1145
|
+
hidden?: string | boolean;
|
|
1146
|
+
readonly?: string | boolean;
|
|
1147
|
+
disabled?: string | boolean;
|
|
1148
|
+
defaultValue?: any;
|
|
1149
|
+
}
|
|
1150
|
+
interface IFieldBuilder {
|
|
1151
|
+
title(title: string): IFieldBuilder;
|
|
1152
|
+
description(description: string): IFieldBuilder;
|
|
1153
|
+
options(values: IFieldOptions): IFieldBuilder;
|
|
1154
|
+
layout(layout: AXPDynamicFormFieldDefinition['layout']): IFieldBuilder;
|
|
1155
|
+
textBox(options?: TextBoxOptions): IFieldBuilder;
|
|
1156
|
+
largeTextBox(options?: LargeTextBoxOptions): IFieldBuilder;
|
|
1157
|
+
richText(options?: RichTextOptions): IFieldBuilder;
|
|
1158
|
+
passwordBox(options?: PasswordBoxOptions): IFieldBuilder;
|
|
1159
|
+
selectBox(options: SelectBoxOptions): IFieldBuilder;
|
|
1160
|
+
lookupBox(options: LookupBoxOptions): IFieldBuilder;
|
|
1161
|
+
selectionList(options: SelectionListOptions): IFieldBuilder;
|
|
1162
|
+
numberBox(options?: NumberBoxOptions): IFieldBuilder;
|
|
1163
|
+
dateTimeBox(options?: DateTimeBoxOptions): IFieldBuilder;
|
|
1164
|
+
toggleSwitch(options?: ToggleSwitchOptions): IFieldBuilder;
|
|
1165
|
+
colorBox(options?: ColorBoxOptions): IFieldBuilder;
|
|
1166
|
+
widget(type: string, options?: unknown): IFieldBuilder;
|
|
1167
|
+
}
|
|
1168
|
+
interface IGroupBuilder {
|
|
1169
|
+
title(title: string): IGroupBuilder;
|
|
1170
|
+
description(description: string): IGroupBuilder;
|
|
1171
|
+
field(path: string, delegate?: (field: IFieldBuilder) => void): IGroupBuilder;
|
|
1172
|
+
group(name: string, delegate?: (group: IGroupBuilder) => void): IGroupBuilder;
|
|
1173
|
+
}
|
|
1174
|
+
interface IStepBuilder {
|
|
1175
|
+
title(title: string): IStepBuilder;
|
|
1176
|
+
description(description: string): IStepBuilder;
|
|
1177
|
+
icon(icon: string): IStepBuilder;
|
|
1178
|
+
direction(direction: AXPDynamicFormDirection): IStepBuilder;
|
|
1179
|
+
group(name: string, delegate?: (group: IGroupBuilder) => void): IStepBuilder;
|
|
1180
|
+
}
|
|
1181
|
+
interface IFormBuilder {
|
|
1182
|
+
group(name: string, delegate?: (group: IGroupBuilder) => void): IFormBuilder;
|
|
1183
|
+
layout(config: Partial<AXPDynamicFormLayoutConfig>): IFormBuilder;
|
|
1184
|
+
look(look: AXPDynamicFormLook): IFormBuilder;
|
|
1185
|
+
direction(direction: AXPDynamicFormDirection): IFormBuilder;
|
|
1186
|
+
build(): AXPDynamicFormDefinition;
|
|
1187
|
+
}
|
|
1188
|
+
interface IActionBuilder {
|
|
1189
|
+
cancel(text?: string): IActionBuilder;
|
|
1190
|
+
submit(text?: string): IActionBuilder;
|
|
1191
|
+
custom(action: AXPActionMenuItem): IActionBuilder;
|
|
1192
|
+
}
|
|
1193
|
+
interface IDialogBuilder extends IFormBuilder {
|
|
1194
|
+
group(name: string, delegate?: (group: IGroupBuilder) => void): IDialogBuilder;
|
|
1195
|
+
layout(config: Partial<AXPDynamicFormLayoutConfig>): IDialogBuilder;
|
|
1196
|
+
look(look: AXPDynamicFormLook): IDialogBuilder;
|
|
1197
|
+
direction(direction: AXPDynamicFormDirection): IDialogBuilder;
|
|
1198
|
+
closeButton(closeButton: boolean): IDialogBuilder;
|
|
1199
|
+
step(id: string, delegate?: (step: IStepBuilder) => void): IDialogBuilder;
|
|
1200
|
+
stepperDirection(direction: AXOrientation): IDialogBuilder;
|
|
1201
|
+
guardNext(guard: (e: {
|
|
1202
|
+
index: number;
|
|
1203
|
+
id: string;
|
|
1204
|
+
fullContext: unknown;
|
|
1205
|
+
}) => Promise<boolean>): IDialogBuilder;
|
|
1206
|
+
title(title: string): IDialogBuilder;
|
|
1207
|
+
message(message?: string): IDialogBuilder;
|
|
1208
|
+
size(size: AXPopupSizeType): IDialogBuilder;
|
|
1209
|
+
context(context: AXPContextData): IDialogBuilder;
|
|
1210
|
+
actions(delegate?: (actions: IActionBuilder) => void): IDialogBuilder;
|
|
1211
|
+
show(): Promise<AXPDialogRef>;
|
|
1212
|
+
}
|
|
1213
|
+
interface FormBuilderState {
|
|
1214
|
+
groups: AXPDynamicFormGroupDefinition[];
|
|
1215
|
+
layoutConfig: AXPDynamicFormLayoutConfig;
|
|
1216
|
+
look: AXPDynamicFormLook;
|
|
1217
|
+
direction: AXPDynamicFormDirection;
|
|
1218
|
+
}
|
|
1219
|
+
interface DialogBuilderState extends FormBuilderState {
|
|
1220
|
+
title?: string;
|
|
1221
|
+
message?: string;
|
|
1222
|
+
size?: AXPopupSizeType;
|
|
1223
|
+
context?: AXPContextData;
|
|
1224
|
+
steps: StepBuilderState[];
|
|
1225
|
+
stepperDirection?: AXOrientation;
|
|
1226
|
+
closeButton?: boolean;
|
|
1227
|
+
guardNext?: (e: {
|
|
1228
|
+
index: number;
|
|
1229
|
+
id: string;
|
|
1230
|
+
fullContext: unknown;
|
|
1231
|
+
}) => Promise<boolean>;
|
|
1232
|
+
actions?: {
|
|
1233
|
+
footer?: {
|
|
1234
|
+
prefix?: AXPActionMenuItem[];
|
|
1235
|
+
suffix?: AXPActionMenuItem[];
|
|
1236
|
+
};
|
|
1237
|
+
};
|
|
1238
|
+
}
|
|
1239
|
+
interface FieldBuilderState {
|
|
1240
|
+
path: string;
|
|
1241
|
+
title?: string;
|
|
1242
|
+
description?: string;
|
|
1243
|
+
defaultValue?: any;
|
|
1244
|
+
hidden?: string | boolean;
|
|
1245
|
+
readonly?: string | boolean;
|
|
1246
|
+
disabled?: string | boolean;
|
|
1247
|
+
widget?: AXPWidgetNode;
|
|
1248
|
+
layout?: AXPDynamicFormFieldDefinition['layout'];
|
|
1249
|
+
}
|
|
1250
|
+
interface GroupBuilderState {
|
|
1251
|
+
name: string;
|
|
1252
|
+
title?: string;
|
|
1253
|
+
description?: string;
|
|
1254
|
+
parameters: AXPDynamicFormFieldDefinition[];
|
|
1255
|
+
}
|
|
1256
|
+
interface StepBuilderState {
|
|
1257
|
+
id: string;
|
|
1258
|
+
title?: string;
|
|
1259
|
+
description?: string;
|
|
1260
|
+
icon?: string;
|
|
1261
|
+
formDirection?: AXPDynamicFormDirection;
|
|
1262
|
+
groups: AXPDynamicFormGroupDefinition[];
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
declare class AXPDynamicFormBuilderService {
|
|
1266
|
+
private readonly dialogService;
|
|
1267
|
+
/**
|
|
1268
|
+
* Create a new form builder
|
|
1269
|
+
*/
|
|
1270
|
+
form(): IFormBuilder;
|
|
1271
|
+
/**
|
|
1272
|
+
* Create a new dialog builder
|
|
1273
|
+
*/
|
|
1274
|
+
dialog(): IDialogBuilder;
|
|
1275
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicFormBuilderService, never>;
|
|
1276
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDynamicFormBuilderService>;
|
|
1277
|
+
}
|
|
1278
|
+
|
|
1279
|
+
type StateMode = 'empty' | 'error' | 'loading' | 'warning' | 'info' | 'success';
|
|
1280
|
+
declare class AXPStateMessageComponent {
|
|
1281
|
+
mode: _angular_core.InputSignal<StateMode>;
|
|
1282
|
+
icon: _angular_core.InputSignal<string>;
|
|
1283
|
+
title: _angular_core.InputSignal<string>;
|
|
1284
|
+
description: _angular_core.InputSignal<string>;
|
|
1285
|
+
variant: _angular_core.InputSignal<"default" | "compact" | "minimal">;
|
|
1286
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPStateMessageComponent, never>;
|
|
1287
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPStateMessageComponent, "axp-state-message", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["[slot=actions]"], true, never>;
|
|
1288
|
+
}
|
|
1289
|
+
|
|
564
1290
|
/**
|
|
565
1291
|
* Describes a schema-only definition for an extra property (no value).
|
|
566
1292
|
*/
|
|
@@ -727,6 +1453,48 @@ declare class AXPQueryFiltersComponent {
|
|
|
727
1453
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQueryFiltersComponent, "axp-query-filters", never, { "filtersDefinitions": { "alias": "filtersDefinitions"; "required": false; "isSignal": true; }; "initialFilters": { "alias": "initialFilters"; "required": false; "isSignal": true; }; }, { "onFiltersChanged": "onFiltersChanged"; }, never, never, true, never>;
|
|
728
1454
|
}
|
|
729
1455
|
|
|
1456
|
+
interface AXPWidgetPropertyTab {
|
|
1457
|
+
name: string;
|
|
1458
|
+
title: string;
|
|
1459
|
+
groups: {
|
|
1460
|
+
name: string;
|
|
1461
|
+
title: string;
|
|
1462
|
+
isCollapsed: boolean;
|
|
1463
|
+
props: AXPWidgetProperty[];
|
|
1464
|
+
}[];
|
|
1465
|
+
}
|
|
1466
|
+
interface AXPWidgetPropertiesChangedEvent {
|
|
1467
|
+
values: any;
|
|
1468
|
+
mode: 'init' | 'update';
|
|
1469
|
+
}
|
|
1470
|
+
declare class AXPWidgetPropertyViewerComponent {
|
|
1471
|
+
widget: _angular_core.InputSignal<AXPWidgetNode>;
|
|
1472
|
+
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
1473
|
+
private widgetRegistryService;
|
|
1474
|
+
protected currentTabIndex: WritableSignal<number>;
|
|
1475
|
+
protected config: WritableSignal<AXPWidgetConfig<any> | null>;
|
|
1476
|
+
protected allPoperties: AXPWidgetProperty[];
|
|
1477
|
+
protected tabs: WritableSignal<AXPWidgetPropertyTab[]>;
|
|
1478
|
+
protected groups: _angular_core.Signal<{
|
|
1479
|
+
name: string;
|
|
1480
|
+
title: string;
|
|
1481
|
+
isCollapsed: boolean;
|
|
1482
|
+
props: AXPWidgetProperty[];
|
|
1483
|
+
}[]>;
|
|
1484
|
+
protected groupCollapsedStates: Map<string, boolean>;
|
|
1485
|
+
onChanged: EventEmitter<AXPWidgetPropertiesChangedEvent>;
|
|
1486
|
+
protected context: WritableSignal<any>;
|
|
1487
|
+
protected initialContext: any;
|
|
1488
|
+
constructor();
|
|
1489
|
+
update(values: any): void;
|
|
1490
|
+
private fillTabs;
|
|
1491
|
+
protected handleContextChange(e: AXPLayoutContextChangeEvent): void;
|
|
1492
|
+
protected handleTabChange(event: AXTabStripChangedEvent): void;
|
|
1493
|
+
protected handleCollapsedChange(group: string, collapsed: boolean): void;
|
|
1494
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerComponent, never>;
|
|
1495
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerComponent, "axp-widget-property-viewer", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
|
|
1496
|
+
}
|
|
1497
|
+
|
|
730
1498
|
declare class AXPQuerySortsComponent {
|
|
731
1499
|
sortDefinitions: _angular_core.ModelSignal<AXPSortDefinition[]>;
|
|
732
1500
|
sortQueries: _angular_core.WritableSignal<AXPSortQuery[]>;
|
|
@@ -956,47 +1724,5 @@ declare class AXPWidgetItemComponent {
|
|
|
956
1724
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetItemComponent, "axp-widget-item", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "isSelected": { "alias": "isSelected"; "required": false; "isSignal": true; }; "showPinButton": { "alias": "showPinButton"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; }, { "onWidgetClick": "onWidgetClick"; "onPinClick": "onPinClick"; }, never, never, true, never>;
|
|
957
1725
|
}
|
|
958
1726
|
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
title: string;
|
|
962
|
-
groups: {
|
|
963
|
-
name: string;
|
|
964
|
-
title: string;
|
|
965
|
-
isCollapsed: boolean;
|
|
966
|
-
props: AXPWidgetProperty[];
|
|
967
|
-
}[];
|
|
968
|
-
}
|
|
969
|
-
interface AXPWidgetPropertiesChangedEvent {
|
|
970
|
-
values: any;
|
|
971
|
-
mode: 'init' | 'update';
|
|
972
|
-
}
|
|
973
|
-
declare class AXPWidgetPropertyViewerComponent {
|
|
974
|
-
widget: _angular_core.InputSignal<AXPWidgetNode>;
|
|
975
|
-
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
976
|
-
private widgetRegistryService;
|
|
977
|
-
protected currentTabIndex: WritableSignal<number>;
|
|
978
|
-
protected config: WritableSignal<AXPWidgetConfig<any> | null>;
|
|
979
|
-
protected allPoperties: AXPWidgetProperty[];
|
|
980
|
-
protected tabs: WritableSignal<AXPWidgetPropertyTab[]>;
|
|
981
|
-
protected groups: _angular_core.Signal<{
|
|
982
|
-
name: string;
|
|
983
|
-
title: string;
|
|
984
|
-
isCollapsed: boolean;
|
|
985
|
-
props: AXPWidgetProperty[];
|
|
986
|
-
}[]>;
|
|
987
|
-
protected groupCollapsedStates: Map<string, boolean>;
|
|
988
|
-
onChanged: EventEmitter<AXPWidgetPropertiesChangedEvent>;
|
|
989
|
-
protected context: WritableSignal<any>;
|
|
990
|
-
protected initialContext: any;
|
|
991
|
-
constructor();
|
|
992
|
-
update(values: any): void;
|
|
993
|
-
private fillTabs;
|
|
994
|
-
protected handleContextChange(e: AXPLayoutContextChangeEvent): void;
|
|
995
|
-
protected handleTabChange(event: AXTabStripChangedEvent): void;
|
|
996
|
-
protected handleCollapsedChange(group: string, collapsed: boolean): void;
|
|
997
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerComponent, never>;
|
|
998
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerComponent, "axp-widget-property-viewer", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
|
|
999
|
-
}
|
|
1000
|
-
|
|
1001
|
-
export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDynamicDialogComponent, AXPDynamicDialogService, AXPDynamicFormComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPMenuBadgeHelper, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
|
|
1002
|
-
export type { AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDynamicDialogConfig, AXPDynamicDialogResult, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLayoutConfig, AXPDynamicFormLook, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyTab };
|
|
1727
|
+
export { AXPActivityLogComponent, AXPCategoryTreeComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDataSelectorComponent, AXPDataSelectorService, AXPDynamicDialogComponent, AXPDynamicDialogService, AXPDynamicFormBuilderService, AXPDynamicFormComponent, AXPDynamicFormStepperComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPMenuBadgeHelper, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPStateMessageComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
|
|
1728
|
+
export type { AXPCategoryTreeActions, AXPCategoryTreeConfig, AXPCategoryTreeDataSource, AXPCategoryTreeEvents, AXPCategoryTreeNode, AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDataSelectorColumn, AXPDataSelectorConfig, AXPDialogRef, AXPDynamicDialogConfig, AXPDynamicDialogResult, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLayoutConfig, AXPDynamicFormLook, AXPDynamicFormStepperDefinition, AXPDynamicFormStepperStepDefinition, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyTab, ColorBoxOptions, DateTimeBoxOptions, DialogBuilderState, FieldBuilderState, FormBuilderState, GroupBuilderState, IActionBuilder, IDialogBuilder, IFieldBuilder, IFieldOptions, IFormBuilder, IGroupBuilder, IStepBuilder, LargeTextBoxOptions, LookupBoxOptions, NumberBoxOptions, PasswordBoxOptions, RichTextOptions, SelectBoxOptions, SelectionListOptions, StateMode, StepBuilderState, TextBoxOptions, ToggleSwitchOptions };
|