@acorex/platform 21.0.0-next.3 → 21.0.0-next.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/acorex-platform-auth.mjs +295 -45
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-zhqNP3xb.mjs → acorex-platform-common-common-settings.provider-G9XcXXOG.mjs} +60 -4
- package/fesm2022/acorex-platform-common-common-settings.provider-G9XcXXOG.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +960 -319
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +1352 -832
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +554 -826
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +530 -154
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs +121 -0
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +5969 -2347
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +169 -154
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +15380 -9274
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +393 -110
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +511 -450
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs → acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs} +10 -10
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs → acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs} +39 -16
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-9uCkMxcc.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs → acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs} +6 -7
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs → acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs} +12 -12
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGQqY5Mw.mjs +111 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGQqY5Mw.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs} +6 -6
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs} +6 -6
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets.mjs +7865 -4026
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +8 -7
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +220 -169
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cvvr4HnL.mjs +160 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cvvr4HnL.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-TYoLN1Jq.mjs +120 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-TYoLN1Jq.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs → acorex-platform-themes-default-entity-master-single-view.component-C2z5Lq9y.mjs} +18 -25
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-C2z5Lq9y.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-cfREo88K.mjs → acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs} +4 -4
- package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs → acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs} +4 -4
- package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +1717 -66
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs → acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-CHfrTtol.mjs} +11 -11
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-CHfrTtol.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-BSmvnUVq.mjs} +9 -9
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BSmvnUVq.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +563 -561
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +1735 -1750
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/package.json +31 -31
- package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +247 -10
- package/{common/index.d.ts → types/acorex-platform-common.d.ts} +492 -31
- package/{core/index.d.ts → types/acorex-platform-core.d.ts} +606 -392
- package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +719 -413
- package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +128 -56
- package/types/acorex-platform-layout-components.d.ts +2927 -0
- package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +9 -3
- package/{layout/entity/index.d.ts → types/acorex-platform-layout-entity.d.ts} +1133 -237
- package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +90 -31
- package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +206 -102
- package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +942 -137
- package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
- package/{runtime/index.d.ts → types/acorex-platform-runtime.d.ts} +237 -74
- package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +113 -5
- package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +1 -1
- package/types/acorex-platform-workflow.d.ts +1806 -0
- package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs +0 -157
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs +0 -1542
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +0 -101
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs.map +0 -1
- package/layout/components/index.d.ts +0 -1669
- package/workflow/index.d.ts +0 -2443
- /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
|
@@ -1,1669 +0,0 @@
|
|
|
1
|
-
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { Signal, InjectionToken, InputSignal, TemplateRef, ElementRef, OnInit, OnDestroy, Type, ViewContainerRef, ModuleWithProviders, QueryList, OnChanges, EventEmitter, WritableSignal } from '@angular/core';
|
|
3
|
-
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
4
|
-
import { AXPActivityLog, AXPSystemActionType, AXPCategoryEntity, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
|
|
5
|
-
import { AXPMenuItem } from '@acorex/platform/common';
|
|
6
|
-
import { AXValueChangedEvent, AXClickEvent, AXDataSource, AXDataSourceFilterOption, AXHtmlEvent, AXEvent } from '@acorex/cdk/common';
|
|
7
|
-
import { AXTreeViewLegacyComponent, AXTreeItemClickBaseEventLegacy } from '@acorex/components/tree-view-legacy';
|
|
8
|
-
import { AXTranslationService } from '@acorex/core/translation';
|
|
9
|
-
import { AXPopoverComponent } from '@acorex/components/popover';
|
|
10
|
-
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
11
|
-
import { AXPWidgetNode, AXPWidgetRendererDirective, AXPWidgetCoreContextChangeEvent, AXPWidgetProperty, AXPWidgetConfig } from '@acorex/platform/layout/widget-core';
|
|
12
|
-
import * as _ngrx_signals from '@ngrx/signals';
|
|
13
|
-
import { AXDataTableComponent, AXDataTableRowDbClick, AXDataTableRowClick } from '@acorex/components/data-table';
|
|
14
|
-
import { AXBasePageComponent } from '@acorex/components/page';
|
|
15
|
-
import { AXDropListDroppedEvent } from '@acorex/cdk/drag-drop';
|
|
16
|
-
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
17
|
-
import { AXCalendarService } from '@acorex/core/date-time';
|
|
18
|
-
import { AXTabStripChangedEvent, AXTabsComponent } from '@acorex/components/tabs';
|
|
19
|
-
import { AXFormComponent } from '@acorex/components/form';
|
|
20
|
-
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
21
|
-
import { Observable } from 'rxjs';
|
|
22
|
-
|
|
23
|
-
declare class AXPActivityLogComponent {
|
|
24
|
-
private readonly translateService;
|
|
25
|
-
private readonly workflowService;
|
|
26
|
-
/**
|
|
27
|
-
* Array of activity logs to display
|
|
28
|
-
*/
|
|
29
|
-
activities: _angular_core.InputSignal<AXPActivityLog[]>;
|
|
30
|
-
/**
|
|
31
|
-
* Whether the component is in loading state
|
|
32
|
-
*/
|
|
33
|
-
loading: _angular_core.InputSignal<boolean>;
|
|
34
|
-
protected readonly i18nScope = "activity-log";
|
|
35
|
-
protected readonly Object: ObjectConstructor;
|
|
36
|
-
/**
|
|
37
|
-
* Set of expanded activity IDs
|
|
38
|
-
*/
|
|
39
|
-
private expandedItems;
|
|
40
|
-
/**
|
|
41
|
-
* Flag to track if component has been initialized
|
|
42
|
-
*/
|
|
43
|
-
private isInitialized;
|
|
44
|
-
/**
|
|
45
|
-
* Set of items that have been manually toggled (for animation control)
|
|
46
|
-
*/
|
|
47
|
-
private manuallyToggledItems;
|
|
48
|
-
constructor();
|
|
49
|
-
/**
|
|
50
|
-
* Gets the appropriate CSS class for the change type
|
|
51
|
-
*/
|
|
52
|
-
protected getChangeClasses(changeType: AXPSystemActionType): {
|
|
53
|
-
surface: string;
|
|
54
|
-
text: string;
|
|
55
|
-
icon: string;
|
|
56
|
-
};
|
|
57
|
-
/**
|
|
58
|
-
* Checks if an activity item is expanded
|
|
59
|
-
*/
|
|
60
|
-
protected isExpanded(activityId: string): boolean;
|
|
61
|
-
/**
|
|
62
|
-
* Toggles the expanded state of an activity item
|
|
63
|
-
*/
|
|
64
|
-
protected toggleExpanded(activityId: string): void;
|
|
65
|
-
/**
|
|
66
|
-
* Checks if an item should have expand/collapse animation
|
|
67
|
-
*/
|
|
68
|
-
protected shouldAnimate(activityId: string): boolean;
|
|
69
|
-
/**
|
|
70
|
-
* Checks if an activity has expandable content (changes)
|
|
71
|
-
*/
|
|
72
|
-
protected hasExpandableContent(activity: AXPActivityLog): boolean;
|
|
73
|
-
/**
|
|
74
|
-
* Handles the compare action for an activity
|
|
75
|
-
*/
|
|
76
|
-
protected handleCompare(activity: AXPActivityLog, event: Event): Promise<void>;
|
|
77
|
-
/**
|
|
78
|
-
* Checks if an activity can be compared (has a previous version)
|
|
79
|
-
*/
|
|
80
|
-
protected canCompare(activity: AXPActivityLog): boolean;
|
|
81
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPActivityLogComponent, never>;
|
|
82
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPActivityLogComponent, "axp-activity-log", never, { "activities": { "alias": "activities"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
declare class AXPTaskBadgeService {
|
|
86
|
-
private badgeMap;
|
|
87
|
-
private providers;
|
|
88
|
-
private computedCache;
|
|
89
|
-
constructor();
|
|
90
|
-
getCount(key: string): Signal<number>;
|
|
91
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskBadgeService, never>;
|
|
92
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTaskBadgeService>;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
declare const AXP_TASK_BADGE_PROVIDERS: InjectionToken<AXPTaskBadgeProvider[]>;
|
|
96
|
-
declare abstract class AXPTaskBadgeProvider {
|
|
97
|
-
abstract key: string;
|
|
98
|
-
abstract count: Signal<number>;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
declare class AXPTaskBadgeDirective {
|
|
102
|
-
#private;
|
|
103
|
-
private badgeService;
|
|
104
|
-
private host;
|
|
105
|
-
private hostElement;
|
|
106
|
-
badgeKey: InputSignal<string | undefined>;
|
|
107
|
-
count: InputSignal<number>;
|
|
108
|
-
private readonly displayCount;
|
|
109
|
-
private setValueOfInputSignal;
|
|
110
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskBadgeDirective, never>;
|
|
111
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPTaskBadgeDirective, "[axp-task-badge]", never, { "badgeKey": { "alias": "badgeKey"; "required": false; "isSignal": true; }; "count": { "alias": "axp-task-badge"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
declare class AXPMenuBadgeHelper {
|
|
115
|
-
private static cache;
|
|
116
|
-
static getTotalCount(item: AXPMenuItem, badgeService: AXPTaskBadgeService): Signal<number>;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
declare class AXPThemeLayoutPagePrimaryActionsComponent {
|
|
120
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, never>;
|
|
121
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, "axp-layout-actions-primary", never, {}, {}, never, ["ax-button,ax-dropdown-button"], true, never>;
|
|
122
|
-
}
|
|
123
|
-
declare class AXPThemeLayoutPageSecondaryActionsComponent {
|
|
124
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, never>;
|
|
125
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, "axp-layout-actions-secondary", never, {}, {}, never, ["ax-button-item,ax-divider,ng-container"], true, never>;
|
|
126
|
-
}
|
|
127
|
-
declare class AXPThemeLayoutActionsComponent {
|
|
128
|
-
readonly primaryTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
129
|
-
private readonly primaryContent;
|
|
130
|
-
hasPrimary: _angular_core.Signal<boolean>;
|
|
131
|
-
readonly secondaryTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
132
|
-
private readonly secondaryContent;
|
|
133
|
-
hasSecondary: _angular_core.Signal<boolean>;
|
|
134
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutActionsComponent, never>;
|
|
135
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutActionsComponent, "axp-layout-actions", never, {}, {}, ["primaryContent", "secondaryContent"], ["axp-layout-actions-primary", "axp-layout-actions-secondary", "*"], true, never>;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
declare class AXPThemeLayoutBlockComponent {
|
|
139
|
-
protected readonly elementRef: ElementRef<any>;
|
|
140
|
-
readonly hostElement: any;
|
|
141
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutBlockComponent, never>;
|
|
142
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutBlockComponent, " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, ", never, {}, {}, never, ["*"], true, never>;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
declare class AXPThemeLayoutFooterComponent {
|
|
146
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutFooterComponent, never>;
|
|
147
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutFooterComponent, "axp-layout-footer, axp-layout-page-footer", never, {}, {}, never, ["axp-layout-prefix", "*", "axp-layout-suffix"], true, never>;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
declare class AXPThemeLayoutPageHeaderComponent {
|
|
151
|
-
readonly title: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
152
|
-
readonly description: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
153
|
-
readonly actions: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
154
|
-
readonly navbar: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
155
|
-
readonly breadcrumbs: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
156
|
-
readonly navButton: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
157
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPageHeaderComponent, never>;
|
|
158
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPageHeaderComponent, "axp-layout-page-header", never, {}, {}, never, ["axp-layout-breadcrumbs", "axp-layout-toolbar", "axp-layout-actions", "axp-layout-description", "axp-layout-title", "axp-layout-nav-button"], true, never>;
|
|
159
|
-
}
|
|
160
|
-
declare class AXPThemeLayoutHeaderComponent {
|
|
161
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutHeaderComponent, never>;
|
|
162
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutHeaderComponent, "axp-layout-header", never, {}, {}, never, ["axp-layout-prefix", "*", "axp-layout-suffix"], true, never>;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
declare class AXPThemeLayoutListComponent {
|
|
166
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListComponent, never>;
|
|
167
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListComponent, "axp-layout-list", never, {}, {}, never, ["axp-layout-list-item,axp-layout-list-group,ng-container"], true, never>;
|
|
168
|
-
}
|
|
169
|
-
declare class AXPThemeLayoutListItemsGroupComponent {
|
|
170
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListItemsGroupComponent, never>;
|
|
171
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListItemsGroupComponent, "axp-layout-list-group", never, {}, {}, never, ["axp-layout-list-item, axp-layout-title, axp-layout-header ,ng-container"], true, never>;
|
|
172
|
-
}
|
|
173
|
-
declare class AXPThemeLayoutListItemComponent {
|
|
174
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListItemComponent, never>;
|
|
175
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListItemComponent, "axp-layout-list-item", never, {}, {}, never, ["axp-layout-content,axp-layout-prefix,axp-layout-suffix,ng-container"], true, never>;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
declare class AXPThemeLayoutSectionComponent {
|
|
179
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutSectionComponent, never>;
|
|
180
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutSectionComponent, "axp-layout-section", never, {}, {}, never, ["axp-layout-header", "axp-layout-content"], true, never>;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
declare class AXPThemeLayoutStartSideComponent {
|
|
184
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutStartSideComponent, never>;
|
|
185
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutStartSideComponent, "axp-layout-page-start-side, axp-layout-start-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer", "*"], true, never>;
|
|
186
|
-
}
|
|
187
|
-
declare class AXPThemeLayoutEndSideComponent {
|
|
188
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutEndSideComponent, never>;
|
|
189
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutEndSideComponent, "axp-layout-page-end-side, axp-layout-end-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer"], true, never>;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
declare class AXPThemeLayoutToolbarComponent {
|
|
193
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutToolbarComponent, never>;
|
|
194
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutToolbarComponent, "axp-layout-toolbar", never, {}, {}, never, ["axp-layout-prefix", "axp-layout-suffix", "*"], true, never>;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
declare class AXPThemeLayoutContainerComponent {
|
|
198
|
-
protected readonly elementRef: ElementRef<HTMLDivElement>;
|
|
199
|
-
readonly hostElement: HTMLDivElement;
|
|
200
|
-
private _isEmptySignal;
|
|
201
|
-
readonly isEmpty: Signal<boolean>;
|
|
202
|
-
private mutationObserver?;
|
|
203
|
-
ngOnInit(): void;
|
|
204
|
-
ngOnDestroy(): void;
|
|
205
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutContainerComponent, never>;
|
|
206
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutContainerComponent, "axp-layout-container", never, {}, {}, never, ["*"], true, never>;
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
interface AXPCategoryTreeNode extends AXPCategoryEntity {
|
|
210
|
-
children?: AXPCategoryTreeNode[];
|
|
211
|
-
expand?: boolean;
|
|
212
|
-
hasChild?: boolean;
|
|
213
|
-
[key: string]: any;
|
|
214
|
-
}
|
|
215
|
-
interface AXPCategoryTreeConfig {
|
|
216
|
-
textField?: string;
|
|
217
|
-
valueField?: string;
|
|
218
|
-
expandedField?: string;
|
|
219
|
-
showCheckbox?: boolean;
|
|
220
|
-
searchable?: boolean;
|
|
221
|
-
searchPlaceholder?: string;
|
|
222
|
-
emptyStateTitle?: string;
|
|
223
|
-
emptyStateDescription?: string;
|
|
224
|
-
emptyStateIcon?: string;
|
|
225
|
-
}
|
|
226
|
-
interface AXPCategoryTreeEvents {
|
|
227
|
-
onNodeClick?: (node: AXPCategoryEntity) => void;
|
|
228
|
-
onNodeSelect?: (node: AXPCategoryEntity) => void;
|
|
229
|
-
onNodeCreate?: (parentNode?: AXPCategoryEntity) => void;
|
|
230
|
-
onNodeUpdate?: (node: AXPCategoryEntity) => void;
|
|
231
|
-
onNodeDelete?: (node: AXPCategoryEntity) => void;
|
|
232
|
-
onSearchChange?: (searchValue: string) => void;
|
|
233
|
-
onCollapseChange?: (node: AXPCategoryEntity) => void;
|
|
234
|
-
}
|
|
235
|
-
interface AXPCategoryTreeActions {
|
|
236
|
-
canCreate?: boolean;
|
|
237
|
-
canUpdate?: boolean;
|
|
238
|
-
canDelete?: boolean;
|
|
239
|
-
canCreateChild?: boolean;
|
|
240
|
-
createLabel?: string;
|
|
241
|
-
updateLabel?: string;
|
|
242
|
-
deleteLabel?: string;
|
|
243
|
-
createChildLabel?: string;
|
|
244
|
-
}
|
|
245
|
-
interface AXPCategoryTreeDataSource {
|
|
246
|
-
loadRootNodes: () => Promise<AXPCategoryEntity[]>;
|
|
247
|
-
loadChildNodes?: (parentId: string) => Promise<AXPCategoryEntity[]>;
|
|
248
|
-
searchNodes?: (searchValue: string) => Promise<AXPCategoryEntity[]>;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
declare class AXPCategoryTreeComponent {
|
|
252
|
-
protected readonly translationService: AXTranslationService;
|
|
253
|
-
dataSource: _angular_core.InputSignal<AXPCategoryTreeDataSource>;
|
|
254
|
-
config: _angular_core.InputSignal<AXPCategoryTreeConfig>;
|
|
255
|
-
actions: _angular_core.InputSignal<AXPCategoryTreeActions>;
|
|
256
|
-
events: _angular_core.InputSignal<AXPCategoryTreeEvents>;
|
|
257
|
-
nodeClick: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
258
|
-
nodeSelect: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
259
|
-
nodeCreate: _angular_core.OutputEmitterRef<AXPCategoryEntity<string> | undefined>;
|
|
260
|
-
nodeUpdate: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
261
|
-
nodeDelete: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
262
|
-
searchChange: _angular_core.OutputEmitterRef<string>;
|
|
263
|
-
collapseChange: _angular_core.OutputEmitterRef<AXPCategoryEntity<string>>;
|
|
264
|
-
tree: _angular_core.Signal<AXTreeViewLegacyComponent | undefined>;
|
|
265
|
-
isLoading: _angular_core.WritableSignal<boolean>;
|
|
266
|
-
searchValue: _angular_core.WritableSignal<string>;
|
|
267
|
-
private loadingTimeoutId;
|
|
268
|
-
private readonly LOADING_DELAY;
|
|
269
|
-
protected treeItems: _angular_core.WritableSignal<AXPCategoryTreeNode[]>;
|
|
270
|
-
protected emptyStateTitle: _angular_core.Signal<string>;
|
|
271
|
-
protected emptyStateDescription: _angular_core.Signal<string>;
|
|
272
|
-
ngOnInit(): Promise<void>;
|
|
273
|
-
loadRootNodes(): Promise<void>;
|
|
274
|
-
loadChildNodes(parentId: string): Promise<void>;
|
|
275
|
-
searchNodes(searchValue: string): Promise<void>;
|
|
276
|
-
handleNodeClick(event: AXTreeItemClickBaseEventLegacy): Promise<void>;
|
|
277
|
-
handleCollapseChanged(event: AXTreeItemClickBaseEventLegacy): Promise<void>;
|
|
278
|
-
handleSearchChange(event: AXValueChangedEvent): Promise<void>;
|
|
279
|
-
handleCreateRootClick(event: AXClickEvent): Promise<void>;
|
|
280
|
-
handleCreateChildClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
281
|
-
handleUpdateNodeClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
282
|
-
handleDeleteNodeClick(node: AXPCategoryTreeNode, event: AXClickEvent): Promise<void>;
|
|
283
|
-
private convertEntitiesToTreeNodes;
|
|
284
|
-
private updateNodeChildren;
|
|
285
|
-
refreshTree(parentId?: string): Promise<void>;
|
|
286
|
-
/**
|
|
287
|
-
* Set loading state with delay to avoid flickering for fast responses
|
|
288
|
-
*/
|
|
289
|
-
private setLoadingWithDelay;
|
|
290
|
-
/**
|
|
291
|
-
* Clear loading state and cancel any pending timeout
|
|
292
|
-
*/
|
|
293
|
-
private clearLoadingState;
|
|
294
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCategoryTreeComponent, never>;
|
|
295
|
-
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>;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
/**
|
|
299
|
-
* Color Palette Picker Component
|
|
300
|
-
* Displays a grid of color swatches for selection
|
|
301
|
-
*/
|
|
302
|
-
declare class AXPColorPalettePickerComponent {
|
|
303
|
-
/**
|
|
304
|
-
* Array of color codes to display
|
|
305
|
-
*/
|
|
306
|
-
colors: _angular_core.InputSignal<string[]>;
|
|
307
|
-
/**
|
|
308
|
-
* Currently selected color
|
|
309
|
-
*/
|
|
310
|
-
selectedColor: _angular_core.InputSignal<string | null | undefined>;
|
|
311
|
-
/**
|
|
312
|
-
* Disable the entire palette
|
|
313
|
-
*/
|
|
314
|
-
disabled: _angular_core.InputSignal<boolean>;
|
|
315
|
-
/**
|
|
316
|
-
* Make the palette readonly
|
|
317
|
-
*/
|
|
318
|
-
readonly: _angular_core.InputSignal<boolean>;
|
|
319
|
-
/**
|
|
320
|
-
* Show empty/null option to clear selection
|
|
321
|
-
*/
|
|
322
|
-
allowClear: _angular_core.InputSignal<boolean>;
|
|
323
|
-
/**
|
|
324
|
-
* Emits when a color is selected or cleared (null/undefined)
|
|
325
|
-
*/
|
|
326
|
-
colorSelected: _angular_core.OutputEmitterRef<string | null | undefined>;
|
|
327
|
-
/**
|
|
328
|
-
* Handle color selection
|
|
329
|
-
*/
|
|
330
|
-
protected handleColorSelect(color: string | null | undefined): void;
|
|
331
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColorPalettePickerComponent, never>;
|
|
332
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColorPalettePickerComponent, "axp-color-palette-picker", never, { "colors": { "alias": "colors"; "required": false; "isSignal": true; }; "selectedColor": { "alias": "selectedColor"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "allowClear": { "alias": "allowClear"; "required": false; "isSignal": true; }; }, { "colorSelected": "colorSelected"; }, never, never, true, never>;
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
interface AXPColumnItemListItem {
|
|
336
|
-
id: string;
|
|
337
|
-
content: string;
|
|
338
|
-
}
|
|
339
|
-
declare class AXPColumnItemListComponent {
|
|
340
|
-
items: _angular_core.InputSignal<AXPColumnItemListItem[]>;
|
|
341
|
-
itemClick: _angular_core.OutputEmitterRef<AXPColumnItemListItem>;
|
|
342
|
-
protected moreButton: _angular_core.Signal<ElementRef<any> | undefined>;
|
|
343
|
-
protected morePopover: _angular_core.Signal<AXPopoverComponent | undefined>;
|
|
344
|
-
protected isMorePopoverOpen: _angular_core.WritableSignal<boolean>;
|
|
345
|
-
protected showMoreItems(): void;
|
|
346
|
-
protected onMorePopoverOpenChange(event: any): void;
|
|
347
|
-
private openMorePopover;
|
|
348
|
-
protected submitClick(event: AXPColumnItemListItem): void;
|
|
349
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColumnItemListComponent, never>;
|
|
350
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColumnItemListComponent, "axp-column-item-list", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
declare class AXPQueryColumnsComponent {
|
|
354
|
-
columns: _angular_core.ModelSignal<AXPColumnQuery[]>;
|
|
355
|
-
handleVisibilityChange(e: AXValueChangedEvent<boolean>, name: string): void;
|
|
356
|
-
protected drop(event: CdkDragDrop<unknown[]>): void;
|
|
357
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPQueryColumnsComponent, never>;
|
|
358
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQueryColumnsComponent, "axp-query-columns", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; }, { "columns": "columnsChange"; }, never, never, true, never>;
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
interface AXPCompareViewField {
|
|
362
|
-
path: string;
|
|
363
|
-
title: string;
|
|
364
|
-
description?: string;
|
|
365
|
-
widget: AXPWidgetNode;
|
|
366
|
-
}
|
|
367
|
-
interface AXPCompareViewObject {
|
|
368
|
-
id: string;
|
|
369
|
-
title: string;
|
|
370
|
-
description?: string;
|
|
371
|
-
context: AXPContextData;
|
|
372
|
-
}
|
|
373
|
-
interface AXPCompareViewInputs {
|
|
374
|
-
fields: AXPCompareViewField[];
|
|
375
|
-
objects: AXPCompareViewObject[];
|
|
376
|
-
}
|
|
377
|
-
type AXPCompareViewMode = 'compare' | 'changes';
|
|
378
|
-
declare class AXPCompareViewComponent implements OnInit, OnDestroy {
|
|
379
|
-
inputs: _angular_core.InputSignal<AXPCompareViewInputs | undefined>;
|
|
380
|
-
showOnlyChanges: _angular_core.WritableSignal<boolean>;
|
|
381
|
-
mode: _angular_core.InputSignal<AXPCompareViewMode>;
|
|
382
|
-
private removedObjects;
|
|
383
|
-
protected isChangesMode: _angular_core.Signal<boolean>;
|
|
384
|
-
/**
|
|
385
|
-
* Filtered fields based on showOnlyChanges toggle
|
|
386
|
-
*/
|
|
387
|
-
filteredFields: _angular_core.Signal<AXPCompareViewField[]>;
|
|
388
|
-
remainingObjects: _angular_core.Signal<AXPCompareViewObject[]>;
|
|
389
|
-
/**
|
|
390
|
-
* Check if a field value will change in the next object (to show arrow in current cell)
|
|
391
|
-
*/
|
|
392
|
-
protected hasValueChangingToNext(fieldPath: string, currentObjectIndex: number): boolean;
|
|
393
|
-
/**
|
|
394
|
-
* Check if a field value has changed compared to the previous object
|
|
395
|
-
*/
|
|
396
|
-
hasValueChangedFromPrevious(fieldPath: string, currentObjectIndex: number): boolean;
|
|
397
|
-
/**
|
|
398
|
-
* Check if a field has unequal values across objects
|
|
399
|
-
*/
|
|
400
|
-
hasUnequalValues(fieldPath: string): boolean;
|
|
401
|
-
/**
|
|
402
|
-
* Check if a field has equal values across objects
|
|
403
|
-
*/
|
|
404
|
-
hasEqualValues(fieldPath: string): boolean;
|
|
405
|
-
/**
|
|
406
|
-
* Compare two values for equality (deep comparison for objects/arrays)
|
|
407
|
-
*/
|
|
408
|
-
private areValuesEqual;
|
|
409
|
-
/**
|
|
410
|
-
* Toggle the show only changes filter
|
|
411
|
-
*/
|
|
412
|
-
toggleShowOnlyChanges(): void;
|
|
413
|
-
/**
|
|
414
|
-
* Remove an object from the comparison
|
|
415
|
-
*/
|
|
416
|
-
removeObject(objectId: string): void;
|
|
417
|
-
ngOnInit(): void;
|
|
418
|
-
ngOnDestroy(): void;
|
|
419
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCompareViewComponent, never>;
|
|
420
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPCompareViewComponent, "axp-compare-view", never, { "inputs": { "alias": "inputs"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
interface AXPComponentSlotConfig {
|
|
424
|
-
name: string;
|
|
425
|
-
priority?: number;
|
|
426
|
-
component?: Type<any>;
|
|
427
|
-
condition?: ((context?: AXPContextData) => (boolean | Promise<boolean>)) | string;
|
|
428
|
-
features?: string[];
|
|
429
|
-
loadComponent?: () => Type<any> | Promise<Type<any>>;
|
|
430
|
-
options?: AXPOptionsData | (() => AXPOptionsData) | (() => Promise<AXPOptionsData>);
|
|
431
|
-
}
|
|
432
|
-
interface AXPComponentSlotModuleConfigs {
|
|
433
|
-
[slotName: string]: AXPComponentSlotConfig[];
|
|
434
|
-
}
|
|
435
|
-
declare abstract class AXPComponentSlot {
|
|
436
|
-
host: any;
|
|
437
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlot, never>;
|
|
438
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPComponentSlot, never, never, {}, {}, never, never, true, never>;
|
|
439
|
-
}
|
|
440
|
-
|
|
441
|
-
declare class AXPComponentSlotDirective implements OnInit {
|
|
442
|
-
name: _angular_core.InputSignal<string>;
|
|
443
|
-
host: _angular_core.InputSignal<any>;
|
|
444
|
-
context: _angular_core.InputSignal<any>;
|
|
445
|
-
private elementRef;
|
|
446
|
-
private registryService;
|
|
447
|
-
private injector;
|
|
448
|
-
private evaluator;
|
|
449
|
-
private sessionService;
|
|
450
|
-
viewContainerRef: ViewContainerRef;
|
|
451
|
-
contextStore: {
|
|
452
|
-
data: _angular_core.Signal<AXPContextData>;
|
|
453
|
-
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
454
|
-
initialSnapshot: _angular_core.Signal<{}>;
|
|
455
|
-
previousSnapshot: _angular_core.Signal<{}>;
|
|
456
|
-
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
457
|
-
isChanged: _angular_core.Signal<boolean>;
|
|
458
|
-
isReset: _angular_core.Signal<boolean>;
|
|
459
|
-
isInitiated: _angular_core.Signal<boolean>;
|
|
460
|
-
isEmpty: _angular_core.Signal<boolean>;
|
|
461
|
-
isDirty: _angular_core.Signal<boolean>;
|
|
462
|
-
snapshot: _angular_core.Signal<AXPContextData>;
|
|
463
|
-
initial: _angular_core.Signal<{}>;
|
|
464
|
-
previous: _angular_core.Signal<{}>;
|
|
465
|
-
changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
466
|
-
update: (path: string, value: any) => void;
|
|
467
|
-
patch: (context: {}) => void;
|
|
468
|
-
reset: () => void;
|
|
469
|
-
set: (initialData: any) => void;
|
|
470
|
-
getValue: (path: string) => any;
|
|
471
|
-
} & _ngrx_signals.StateSource<{
|
|
472
|
-
data: AXPContextData;
|
|
473
|
-
state: _acorex_platform_core.AXPContextState;
|
|
474
|
-
initialSnapshot: {};
|
|
475
|
-
previousSnapshot: {};
|
|
476
|
-
lastChange: _acorex_platform_core.AXPContextChangeEvent;
|
|
477
|
-
}>;
|
|
478
|
-
isEmpty: _angular_core.Signal<boolean>;
|
|
479
|
-
private _viewCount;
|
|
480
|
-
private componentRefs;
|
|
481
|
-
private placeholderRefs;
|
|
482
|
-
constructor();
|
|
483
|
-
ngOnInit(): Promise<void>;
|
|
484
|
-
loadComponents(): Promise<void>;
|
|
485
|
-
private evaluateCondition;
|
|
486
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotDirective, never>;
|
|
487
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPComponentSlotDirective, "axp-component-slot", ["slot"], { "name": { "alias": "name"; "required": true; "isSignal": true; }; "host": { "alias": "host"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
|
|
488
|
-
}
|
|
489
|
-
|
|
490
|
-
declare class AXPComponentSlotRegistryService {
|
|
491
|
-
private registry;
|
|
492
|
-
register(slotName: string, config: AXPComponentSlotConfig): void;
|
|
493
|
-
get(slotName: string): AXPComponentSlotConfig[];
|
|
494
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotRegistryService, never>;
|
|
495
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPComponentSlotRegistryService>;
|
|
496
|
-
}
|
|
497
|
-
|
|
498
|
-
declare class AXPComponentSlotModule {
|
|
499
|
-
static forRoot(configs?: AXPComponentSlotModuleConfigs): ModuleWithProviders<AXPComponentSlotModule>;
|
|
500
|
-
static forChild(configs?: AXPComponentSlotModuleConfigs): ModuleWithProviders<AXPComponentSlotModule>;
|
|
501
|
-
/**
|
|
502
|
-
* @ignore
|
|
503
|
-
*/
|
|
504
|
-
constructor(instances: any[]);
|
|
505
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotModule, [{ optional: true; }]>;
|
|
506
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPComponentSlotModule, [typeof AXPComponentSlotDirective], never, [typeof AXPComponentSlotDirective]>;
|
|
507
|
-
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
|
|
508
|
-
}
|
|
509
|
-
|
|
510
|
-
interface AXPDataSelectorColumn {
|
|
511
|
-
name: string;
|
|
512
|
-
title: string;
|
|
513
|
-
visible: boolean;
|
|
514
|
-
dataPath?: string;
|
|
515
|
-
widget: {
|
|
516
|
-
type: string;
|
|
517
|
-
options: any;
|
|
518
|
-
};
|
|
519
|
-
}
|
|
520
|
-
interface AXPDataSelectorConfig {
|
|
521
|
-
title: string;
|
|
522
|
-
dataSource: AXDataSource<any>;
|
|
523
|
-
columns: AXPDataSelectorColumn[];
|
|
524
|
-
selectionMode: 'single' | 'multiple';
|
|
525
|
-
searchFields?: {
|
|
526
|
-
name: string;
|
|
527
|
-
title: string;
|
|
528
|
-
}[];
|
|
529
|
-
initialSearchTerm?: string;
|
|
530
|
-
parentField?: string;
|
|
531
|
-
allowCreate?: boolean;
|
|
532
|
-
filters?: AXDataSourceFilterOption;
|
|
533
|
-
selectedItemIds?: string[] | number[];
|
|
534
|
-
categoryFilter?: {
|
|
535
|
-
enabled: boolean;
|
|
536
|
-
title: string;
|
|
537
|
-
dataSource: AXPCategoryTreeDataSource;
|
|
538
|
-
filterField: string;
|
|
539
|
-
filterOperator?: 'equal' | 'contains' | 'in';
|
|
540
|
-
width?: string;
|
|
541
|
-
};
|
|
542
|
-
}
|
|
543
|
-
declare class AXPDataSelectorComponent extends AXBasePageComponent {
|
|
544
|
-
protected config: _angular_core.WritableSignal<AXPDataSelectorConfig>;
|
|
545
|
-
protected searchTerm: string;
|
|
546
|
-
protected searchPlaceholderText: _angular_core.WritableSignal<string>;
|
|
547
|
-
protected filter: AXDataSourceFilterOption;
|
|
548
|
-
protected grid: _angular_core.Signal<AXDataTableComponent | undefined>;
|
|
549
|
-
protected selectedItems: _angular_core.WritableSignal<any[]>;
|
|
550
|
-
private initialSelectionApplied;
|
|
551
|
-
private userHasInteracted;
|
|
552
|
-
private isApplyingInitialSelection;
|
|
553
|
-
private initialSelectedItems;
|
|
554
|
-
protected activeCategoryFilter: _angular_core.WritableSignal<{
|
|
555
|
-
node: AXPCategoryEntity;
|
|
556
|
-
filterValue: any;
|
|
557
|
-
} | null>;
|
|
558
|
-
private placeholderUpdateToken;
|
|
559
|
-
private initialSearchApplied;
|
|
560
|
-
private readonly translationService;
|
|
561
|
-
constructor();
|
|
562
|
-
protected allowSelect: _angular_core.Signal<boolean>;
|
|
563
|
-
protected selectedCount: _angular_core.Signal<number>;
|
|
564
|
-
protected hasSearch: _angular_core.Signal<boolean | undefined>;
|
|
565
|
-
protected categoryTreeConfig: _angular_core.Signal<{
|
|
566
|
-
textField: string;
|
|
567
|
-
valueField: string;
|
|
568
|
-
showCheckbox: boolean;
|
|
569
|
-
searchable: boolean;
|
|
570
|
-
searchPlaceholder: string;
|
|
571
|
-
emptyStateTitle: string;
|
|
572
|
-
emptyStateDescription: string;
|
|
573
|
-
emptyStateIcon: string;
|
|
574
|
-
}>;
|
|
575
|
-
protected categoryTreeActions: _angular_core.Signal<{
|
|
576
|
-
canCreate: boolean;
|
|
577
|
-
canUpdate: boolean;
|
|
578
|
-
canDelete: boolean;
|
|
579
|
-
canCreateChild: boolean;
|
|
580
|
-
}>;
|
|
581
|
-
protected ngOnInit(): void;
|
|
582
|
-
protected ngAfterViewInit(): Promise<void>;
|
|
583
|
-
protected handleRowDbClick(e: AXDataTableRowDbClick): void;
|
|
584
|
-
protected handleRowClick(e: AXDataTableRowClick): void;
|
|
585
|
-
protected handleSelectedRowsChange(rows: unknown[]): Promise<void>;
|
|
586
|
-
protected handleChangeSearchValue(e: AXValueChangedEvent): void;
|
|
587
|
-
protected handleCreateNewClick(): Promise<void>;
|
|
588
|
-
protected handleCloseClick(): void;
|
|
589
|
-
protected handleSelectClick(): void;
|
|
590
|
-
protected handleExpandRow(row: any): Promise<void>;
|
|
591
|
-
protected handleCategoryFilterClick(node: AXPCategoryEntity): void;
|
|
592
|
-
protected clearCategoryFilter(): void;
|
|
593
|
-
private applySearchFilter;
|
|
594
|
-
private applyFilterAndSort;
|
|
595
|
-
private applyCategoryFilter;
|
|
596
|
-
private updateSearchPlaceholder;
|
|
597
|
-
/**
|
|
598
|
-
* Apply initial selection based on selectedItemIds from config
|
|
599
|
-
* Loads items by IDs using the data source's byKey method, then selects them in the grid
|
|
600
|
-
*/
|
|
601
|
-
private applyInitialSelection;
|
|
602
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorComponent, never>;
|
|
603
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDataSelectorComponent, "axp-data-selector", never, {}, {}, never, never, true, never>;
|
|
604
|
-
}
|
|
605
|
-
|
|
606
|
-
declare class AXPDataSelectorService {
|
|
607
|
-
private readonly popupService;
|
|
608
|
-
private readonly expressionService;
|
|
609
|
-
/**
|
|
610
|
-
* Open data selector popup
|
|
611
|
-
*/
|
|
612
|
-
open(config: AXPDataSelectorConfig): Promise<{
|
|
613
|
-
items: any[];
|
|
614
|
-
} | null>;
|
|
615
|
-
/**
|
|
616
|
-
* Open data selector with category filter
|
|
617
|
-
*/
|
|
618
|
-
openWithCategoryFilter(config: Omit<AXPDataSelectorConfig, 'categoryFilter'>, categoryFilterConfig: {
|
|
619
|
-
title: string;
|
|
620
|
-
dataSource: AXPCategoryTreeDataSource;
|
|
621
|
-
filterField: string;
|
|
622
|
-
filterOperator?: 'equal' | 'contains' | 'in';
|
|
623
|
-
width?: string;
|
|
624
|
-
}): Promise<{
|
|
625
|
-
items: any[];
|
|
626
|
-
} | null>;
|
|
627
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorService, never>;
|
|
628
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDataSelectorService>;
|
|
629
|
-
}
|
|
630
|
-
|
|
631
|
-
interface AXPDragDropListItem {
|
|
632
|
-
id: string;
|
|
633
|
-
content: string;
|
|
634
|
-
data?: any;
|
|
635
|
-
disabled?: boolean;
|
|
636
|
-
cssClass?: string;
|
|
637
|
-
}
|
|
638
|
-
interface AXPDragDropListConfig {
|
|
639
|
-
allowReorder?: boolean;
|
|
640
|
-
allowTransfer?: boolean;
|
|
641
|
-
}
|
|
642
|
-
interface AXPDragDropListDropEvent {
|
|
643
|
-
previousIndex: number;
|
|
644
|
-
currentIndex: number;
|
|
645
|
-
item: AXPDragDropListItem;
|
|
646
|
-
container: any;
|
|
647
|
-
previousContainer?: any;
|
|
648
|
-
isTransfer: boolean;
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
declare class AXPDragDropListComponent {
|
|
652
|
-
items: _angular_core.ModelSignal<AXPDragDropListItem[]>;
|
|
653
|
-
listId: _angular_core.InputSignal<string>;
|
|
654
|
-
dropListGroup: _angular_core.InputSignal<string>;
|
|
655
|
-
orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
656
|
-
emptyMessage: _angular_core.InputSignal<string>;
|
|
657
|
-
disable: _angular_core.InputSignal<boolean>;
|
|
658
|
-
itemClick: _angular_core.OutputEmitterRef<AXPDragDropListItem>;
|
|
659
|
-
dropListDropped: _angular_core.OutputEmitterRef<AXDropListDroppedEvent>;
|
|
660
|
-
onDrop(event: AXDropListDroppedEvent): void;
|
|
661
|
-
onItemClick(item: AXPDragDropListItem): void;
|
|
662
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDragDropListComponent, never>;
|
|
663
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDragDropListComponent, "axp-drag-drop-list", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "listId": { "alias": "listId"; "required": false; "isSignal": true; }; "dropListGroup": { "alias": "dropListGroup"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "disable": { "alias": "disable"; "required": false; "isSignal": true; }; }, { "items": "itemsChange"; "itemClick": "itemClick"; "dropListDropped": "dropListDropped"; }, never, never, true, never>;
|
|
664
|
-
}
|
|
665
|
-
|
|
666
|
-
declare class AXPQueryFiltersComponent {
|
|
667
|
-
#private;
|
|
668
|
-
protected translate: AXTranslationService;
|
|
669
|
-
protected calendarService: AXCalendarService;
|
|
670
|
-
private filterOperatorMiddleware;
|
|
671
|
-
private settingsService;
|
|
672
|
-
filtersDefinitions: _angular_core.InputSignal<AXPFilterDefinition[]>;
|
|
673
|
-
initialFilters: _angular_core.InputSignal<AXPFilterQuery[]>;
|
|
674
|
-
onFiltersChanged: _angular_core.OutputEmitterRef<AXPFilterQuery[]>;
|
|
675
|
-
protected dateFormat: _angular_core.WritableSignal<string>;
|
|
676
|
-
protected tagBox: _angular_core.Signal<AXTagBoxComponent | undefined>;
|
|
677
|
-
protected widgetRenderer: _angular_core.Signal<AXPWidgetRendererDirective | undefined>;
|
|
678
|
-
tagBoxInput: any;
|
|
679
|
-
listItems: QueryList<any>;
|
|
680
|
-
protected selectedField: _angular_core.WritableSignal<string | null>;
|
|
681
|
-
protected selectedFilters: _angular_core.WritableSignal<AXPFilterDefinition[]>;
|
|
682
|
-
context: _angular_core.WritableSignal<any>;
|
|
683
|
-
protected activeFilter: _angular_core.WritableSignal<AXPFilterDefinition | null>;
|
|
684
|
-
protected asyncTags: _angular_core.WritableSignal<any[]>;
|
|
685
|
-
protected popover: _angular_core.Signal<AXPopoverComponent | undefined>;
|
|
686
|
-
inputValue: _angular_core.WritableSignal<string>;
|
|
687
|
-
inlineFilters: () => AXPFilterDefinition[];
|
|
688
|
-
protected getDisplayValue: (filter: AXPFilterDefinition, val: any) => Promise<any>;
|
|
689
|
-
protected convertIfISOStringDate: (val: string) => string;
|
|
690
|
-
convertQueriesToDefinitions(queries: AXPFilterQuery[]): AXPFilterDefinition[];
|
|
691
|
-
convertQueriesToContext(queries: AXPFilterQuery[]): any;
|
|
692
|
-
filterFields: () => AXPFilterDefinition[];
|
|
693
|
-
ngOnInit(): void;
|
|
694
|
-
handleSelectField(field: AXPFilterDefinition): void;
|
|
695
|
-
handleFieldKeyDown(e: KeyboardEvent, field: AXPFilterDefinition): void;
|
|
696
|
-
onContextChanged(e: AXPWidgetCoreContextChangeEvent): void;
|
|
697
|
-
handleApplyFilter(): void;
|
|
698
|
-
handleButtonKeyDown(e: Event): void;
|
|
699
|
-
handleKeyDown(e: AXHtmlEvent<KeyboardEvent>): void;
|
|
700
|
-
onEnterKeyPressed(e: Event): void;
|
|
701
|
-
handleTagClick(item: any): void;
|
|
702
|
-
handleRemoveTag(e: Event, index: number): void;
|
|
703
|
-
handleSelectFilters(e: AXValueChangedEvent): void;
|
|
704
|
-
handleAddAllInlineFilters(): void;
|
|
705
|
-
protected getActiveOperator(filter: AXPFilterDefinition | null): string | undefined;
|
|
706
|
-
handleSelectInlineFilter(filter: AXPFilterDefinition): void;
|
|
707
|
-
handleInlineFilterKeyDown(e: KeyboardEvent, filter: AXPFilterDefinition): void;
|
|
708
|
-
handlePopoverClosed(e: AXEvent): void;
|
|
709
|
-
protected onPopoverOpened(e: AXEvent): void;
|
|
710
|
-
protected deactivateAllListItems(): void;
|
|
711
|
-
protected handleKeyboardEvent(event: KeyboardEvent): Promise<void>;
|
|
712
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPQueryFiltersComponent, never>;
|
|
713
|
-
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>;
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
declare class AXPImageEditorPopupComponent extends AXBasePageComponent {
|
|
717
|
-
private readonly fileStorage;
|
|
718
|
-
image: _angular_core.InputSignal<Blob>;
|
|
719
|
-
showHistory: _angular_core.InputSignal<boolean>;
|
|
720
|
-
look: _angular_core.InputSignal<"solid" | "outline" | "blank">;
|
|
721
|
-
aspectRatio: _angular_core.InputSignal<string | undefined>;
|
|
722
|
-
private container;
|
|
723
|
-
private blobUrl;
|
|
724
|
-
protected url: _angular_core.WritableSignal<string | null>;
|
|
725
|
-
protected context: _angular_core.WritableSignal<{
|
|
726
|
-
image: Blob | null;
|
|
727
|
-
}>;
|
|
728
|
-
ngOnInit(): Promise<void>;
|
|
729
|
-
handleValueChanged(e: any): void;
|
|
730
|
-
handleSave(): void;
|
|
731
|
-
handleCancel(): void;
|
|
732
|
-
ngOnDestroy(): void;
|
|
733
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPImageEditorPopupComponent, never>;
|
|
734
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPImageEditorPopupComponent, "axp-image-editor-popup", never, { "image": { "alias": "image"; "required": true; "isSignal": true; }; "showHistory": { "alias": "showHistory"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "aspectRatio": { "alias": "aspectRatio"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
interface AXPImageEditorOpenOptions {
|
|
738
|
-
title?: string;
|
|
739
|
-
image: Blob;
|
|
740
|
-
showHistory?: boolean;
|
|
741
|
-
look?: 'solid' | 'outline' | 'blank';
|
|
742
|
-
aspectRatio?: string;
|
|
743
|
-
}
|
|
744
|
-
declare class AXPImageEditorService {
|
|
745
|
-
private readonly popupService;
|
|
746
|
-
private readonly translate;
|
|
747
|
-
open(options?: AXPImageEditorOpenOptions): Promise<Blob | null>;
|
|
748
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPImageEditorService, never>;
|
|
749
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPImageEditorService>;
|
|
750
|
-
}
|
|
751
|
-
|
|
752
|
-
/**
|
|
753
|
-
* Represents a spreadsheet item (row or column header) with id, text, and optional description
|
|
754
|
-
*/
|
|
755
|
-
interface AXPSpreadsheetItem {
|
|
756
|
-
id: string;
|
|
757
|
-
title: string;
|
|
758
|
-
description?: string;
|
|
759
|
-
/**
|
|
760
|
-
* Optional CSS class for cell styling (e.g., 'ax-bg-success-lightest ax-text-success' for green)
|
|
761
|
-
* Used when this item is used as a cell value to color-code the cell
|
|
762
|
-
* Allows proper control of both background and text colors
|
|
763
|
-
*/
|
|
764
|
-
cssClass?: string;
|
|
765
|
-
}
|
|
766
|
-
/**
|
|
767
|
-
* Represents the value structure for spreadsheet cells
|
|
768
|
-
* Stores only the ID reference to the item in cellOptions
|
|
769
|
-
*/
|
|
770
|
-
type AXPSpreadsheetCellValue = string | null;
|
|
771
|
-
/**
|
|
772
|
-
* Matrix data structure: { [rowId]: { [columnId]: cellValueId } }
|
|
773
|
-
* cellValueId is the ID of an item from cellOptions
|
|
774
|
-
*/
|
|
775
|
-
type AXPSpreadsheetData = Record<string, Record<string, AXPSpreadsheetCellValue>>;
|
|
776
|
-
/**
|
|
777
|
-
* Represents a column definition in the spreadsheet
|
|
778
|
-
*/
|
|
779
|
-
interface AXPSpreadsheetColumn {
|
|
780
|
-
/**
|
|
781
|
-
* Column identifier (unique name)
|
|
782
|
-
*/
|
|
783
|
-
name: string;
|
|
784
|
-
/**
|
|
785
|
-
* Display title for column header
|
|
786
|
-
*/
|
|
787
|
-
title: string;
|
|
788
|
-
/**
|
|
789
|
-
* Optional description for column header
|
|
790
|
-
*/
|
|
791
|
-
description?: string;
|
|
792
|
-
/**
|
|
793
|
-
* Path to access row property (e.g., 'user.name', 'age')
|
|
794
|
-
* Used to get/set values in row objects
|
|
795
|
-
*/
|
|
796
|
-
path: string;
|
|
797
|
-
/**
|
|
798
|
-
* Widget configuration for this column
|
|
799
|
-
* All cells in this column will use this widget
|
|
800
|
-
*/
|
|
801
|
-
widget: AXPWidgetNode;
|
|
802
|
-
/**
|
|
803
|
-
* Optional column width
|
|
804
|
-
*/
|
|
805
|
-
width?: string;
|
|
806
|
-
/**
|
|
807
|
-
* Column-level readonly override
|
|
808
|
-
*/
|
|
809
|
-
readonly?: boolean;
|
|
810
|
-
}
|
|
811
|
-
/**
|
|
812
|
-
* Spreadsheet row mode
|
|
813
|
-
* - 'fixed': Rows are provided as input, cannot add/remove (like matrix)
|
|
814
|
-
* - 'dynamic': Users can add/remove rows dynamically (like Excel)
|
|
815
|
-
*/
|
|
816
|
-
type AXPSpreadsheetRowMode = 'fixed' | 'dynamic';
|
|
817
|
-
/**
|
|
818
|
-
* Event emitted when a single cell value changes
|
|
819
|
-
*/
|
|
820
|
-
interface AXPSpreadsheetCellChangeEvent {
|
|
821
|
-
/**
|
|
822
|
-
* Row identifier (name for fixed mode, generated ID for dynamic mode)
|
|
823
|
-
*/
|
|
824
|
-
rowId: string;
|
|
825
|
-
/**
|
|
826
|
-
* Column name
|
|
827
|
-
*/
|
|
828
|
-
columnName: string;
|
|
829
|
-
/**
|
|
830
|
-
* New cell value (whatever the widget returns)
|
|
831
|
-
*/
|
|
832
|
-
value: any;
|
|
833
|
-
/**
|
|
834
|
-
* Full row object after update
|
|
835
|
-
*/
|
|
836
|
-
row: Record<string, any>;
|
|
837
|
-
}
|
|
838
|
-
/**
|
|
839
|
-
* Event emitted when a row is added or removed (dynamic mode only)
|
|
840
|
-
*/
|
|
841
|
-
interface AXPSpreadsheetRowChangeEvent {
|
|
842
|
-
/**
|
|
843
|
-
* Type of change: 'add' or 'remove'
|
|
844
|
-
*/
|
|
845
|
-
type: 'add' | 'remove';
|
|
846
|
-
/**
|
|
847
|
-
* Row identifier
|
|
848
|
-
*/
|
|
849
|
-
rowId: string;
|
|
850
|
-
/**
|
|
851
|
-
* Full row object (for 'add' events)
|
|
852
|
-
*/
|
|
853
|
-
row?: Record<string, any>;
|
|
854
|
-
/**
|
|
855
|
-
* All rows after the change
|
|
856
|
-
*/
|
|
857
|
-
rows: Record<string, any>[];
|
|
858
|
-
}
|
|
859
|
-
/**
|
|
860
|
-
* Configuration for the spreadsheet component
|
|
861
|
-
*/
|
|
862
|
-
interface AXPSpreadsheetConfig {
|
|
863
|
-
/**
|
|
864
|
-
* Widget configuration for cell editing (SelectBox)
|
|
865
|
-
*/
|
|
866
|
-
cellWidget?: AXPWidgetNode;
|
|
867
|
-
/**
|
|
868
|
-
* Whether the spreadsheet is in readonly mode
|
|
869
|
-
*/
|
|
870
|
-
readonly?: boolean;
|
|
871
|
-
/**
|
|
872
|
-
* Placeholder text for empty cells
|
|
873
|
-
*/
|
|
874
|
-
emptyCellPlaceholder?: string;
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
declare class AXPSpreadsheetComponent {
|
|
878
|
-
protected readonly translationService: AXTranslationService;
|
|
879
|
-
/**
|
|
880
|
-
* Translated column titles
|
|
881
|
-
*/
|
|
882
|
-
protected translatedColumnTitles: _angular_core.WritableSignal<Map<string, string>>;
|
|
883
|
-
/**
|
|
884
|
-
* Title for the spreadsheet (displayed in corner cell)
|
|
885
|
-
*/
|
|
886
|
-
title: _angular_core.InputSignal<string>;
|
|
887
|
-
/**
|
|
888
|
-
* Column definitions
|
|
889
|
-
*/
|
|
890
|
-
columns: _angular_core.InputSignal<AXPSpreadsheetColumn[]>;
|
|
891
|
-
/**
|
|
892
|
-
* Row mode: 'fixed' or 'dynamic'
|
|
893
|
-
*/
|
|
894
|
-
rowMode: _angular_core.InputSignal<AXPSpreadsheetRowMode>;
|
|
895
|
-
/**
|
|
896
|
-
* Rows data (for fixed mode - input only)
|
|
897
|
-
* Each row must have a 'name' property for identification
|
|
898
|
-
*/
|
|
899
|
-
rowsInput: _angular_core.InputSignal<Record<string, any>[]>;
|
|
900
|
-
/**
|
|
901
|
-
* Rows data (for dynamic mode - two-way binding)
|
|
902
|
-
*/
|
|
903
|
-
rowsModel: _angular_core.ModelSignal<Record<string, any>[]>;
|
|
904
|
-
/**
|
|
905
|
-
* Whether the spreadsheet is in readonly mode
|
|
906
|
-
*/
|
|
907
|
-
readonly: _angular_core.InputSignal<boolean>;
|
|
908
|
-
/**
|
|
909
|
-
* Placeholder text for empty cells (default: "–")
|
|
910
|
-
*/
|
|
911
|
-
emptyCellPlaceholder: _angular_core.InputSignal<string>;
|
|
912
|
-
/**
|
|
913
|
-
* Path to property in row object to display as row header title
|
|
914
|
-
* Example: 'name', 'title', 'user.name'
|
|
915
|
-
*/
|
|
916
|
-
rowTitlePath: _angular_core.InputSignal<string | null>;
|
|
917
|
-
/**
|
|
918
|
-
* Path to property in row object to display as row header description
|
|
919
|
-
* Example: 'description', 'details', 'user.description'
|
|
920
|
-
*/
|
|
921
|
-
rowDescriptionPath: _angular_core.InputSignal<string | null>;
|
|
922
|
-
/**
|
|
923
|
-
* Whether to allow adding rows (dynamic mode only, default: true)
|
|
924
|
-
*/
|
|
925
|
-
allowAddRows: _angular_core.InputSignal<boolean>;
|
|
926
|
-
/**
|
|
927
|
-
* Whether to allow removing rows (default: true for dynamic mode, false for fixed mode)
|
|
928
|
-
* Can be enabled for fixed mode if needed
|
|
929
|
-
*/
|
|
930
|
-
allowRemoveRows: _angular_core.InputSignal<boolean>;
|
|
931
|
-
/**
|
|
932
|
-
* Emitted when a single cell value changes
|
|
933
|
-
*/
|
|
934
|
-
cellChange: _angular_core.OutputEmitterRef<AXPSpreadsheetCellChangeEvent>;
|
|
935
|
-
/**
|
|
936
|
-
* Emitted when rows are added or removed (dynamic mode only)
|
|
937
|
-
*/
|
|
938
|
-
rowChange: _angular_core.OutputEmitterRef<AXPSpreadsheetRowChangeEvent>;
|
|
939
|
-
/**
|
|
940
|
-
* Emitted when the entire spreadsheet data changes
|
|
941
|
-
*/
|
|
942
|
-
spreadsheetChange: _angular_core.OutputEmitterRef<Record<string, any>[]>;
|
|
943
|
-
/**
|
|
944
|
-
* Currently editing cell: { rowId, columnName } | null
|
|
945
|
-
*/
|
|
946
|
-
protected editingCell: _angular_core.WritableSignal<{
|
|
947
|
-
rowId: string;
|
|
948
|
-
columnName: string;
|
|
949
|
-
} | null>;
|
|
950
|
-
/**
|
|
951
|
-
* Original value when entering edit mode (for cancel functionality)
|
|
952
|
-
*/
|
|
953
|
-
private originalCellValue;
|
|
954
|
-
/**
|
|
955
|
-
* Internal rows state (for fixed mode)
|
|
956
|
-
*/
|
|
957
|
-
private internalRows;
|
|
958
|
-
/**
|
|
959
|
-
* Row ID mapping: rowId -> row index (for tracking)
|
|
960
|
-
*/
|
|
961
|
-
private rowIdMap;
|
|
962
|
-
/**
|
|
963
|
-
* Cache for widget nodes to prevent re-rendering
|
|
964
|
-
* Key: `${rowIndex}_${columnName}`, Value: AXPWidgetNode
|
|
965
|
-
*/
|
|
966
|
-
private widgetNodeCache;
|
|
967
|
-
/**
|
|
968
|
-
* Cache for cell values to detect actual changes
|
|
969
|
-
* Key: `${rowIndex}_${columnName}`, Value: any
|
|
970
|
-
*/
|
|
971
|
-
private cellValueCache;
|
|
972
|
-
/**
|
|
973
|
-
* Get current rows based on mode
|
|
974
|
-
*/
|
|
975
|
-
protected currentRows: _angular_core.Signal<Record<string, any>[]>;
|
|
976
|
-
/**
|
|
977
|
-
* Context for widgets-container (all rows as an object with rows array)
|
|
978
|
-
* This allows widgets to access their cell via path like: rows[index].column.path
|
|
979
|
-
*/
|
|
980
|
-
protected spreadsheetContext: _angular_core.Signal<{
|
|
981
|
-
rows: Record<string, any>[];
|
|
982
|
-
}>;
|
|
983
|
-
/**
|
|
984
|
-
* Get rows with IDs (ensure all rows have identifiers)
|
|
985
|
-
*/
|
|
986
|
-
protected rowsWithIds: _angular_core.Signal<{
|
|
987
|
-
rowId: string;
|
|
988
|
-
row: Record<string, any>;
|
|
989
|
-
}[]>;
|
|
990
|
-
/**
|
|
991
|
-
* Check if spreadsheet is empty
|
|
992
|
-
*/
|
|
993
|
-
protected isEmpty: _angular_core.Signal<boolean>;
|
|
994
|
-
/**
|
|
995
|
-
* Check if only columns are empty
|
|
996
|
-
*/
|
|
997
|
-
protected isColumnsEmpty: _angular_core.Signal<boolean>;
|
|
998
|
-
/**
|
|
999
|
-
* Check if only rows are empty
|
|
1000
|
-
*/
|
|
1001
|
-
protected isRowsEmpty: _angular_core.Signal<boolean>;
|
|
1002
|
-
constructor();
|
|
1003
|
-
/**
|
|
1004
|
-
* Get the value for a specific cell by row index
|
|
1005
|
-
*/
|
|
1006
|
-
protected getCellValue(rowIndex: number, columnName: string): any;
|
|
1007
|
-
/**
|
|
1008
|
-
* Get row title from row object using rowTitlePath
|
|
1009
|
-
*/
|
|
1010
|
-
protected getRowTitle(row: Record<string, any>, path: string): string;
|
|
1011
|
-
/**
|
|
1012
|
-
* Get row description from row object using rowDescriptionPath
|
|
1013
|
-
*/
|
|
1014
|
-
protected getRowDescription(row: Record<string, any>, path: string): string;
|
|
1015
|
-
/**
|
|
1016
|
-
* Get row by ID
|
|
1017
|
-
*/
|
|
1018
|
-
protected getRowById(rowId: string): Record<string, any> | null;
|
|
1019
|
-
/**
|
|
1020
|
-
* Check if a cell is currently being edited
|
|
1021
|
-
*/
|
|
1022
|
-
protected isCellEditing(rowId: string, columnName: string): boolean;
|
|
1023
|
-
/**
|
|
1024
|
-
* Check if a column is readonly
|
|
1025
|
-
*/
|
|
1026
|
-
protected isColumnReadonly(column: AXPSpreadsheetColumn): boolean;
|
|
1027
|
-
/**
|
|
1028
|
-
* Get widget node for a cell with dynamic path based on row index
|
|
1029
|
-
* Path format: rows[rowIndex].column.path
|
|
1030
|
-
* Uses caching to prevent unnecessary re-renders
|
|
1031
|
-
*/
|
|
1032
|
-
protected getCellWidgetNode(column: AXPSpreadsheetColumn, rowIndex: number): AXPWidgetNode;
|
|
1033
|
-
/**
|
|
1034
|
-
* Handle cell click to start editing
|
|
1035
|
-
*/
|
|
1036
|
-
protected handleCellClick(rowId: string, columnName: string, event?: MouseEvent): void;
|
|
1037
|
-
/**
|
|
1038
|
-
* Handle cell value change from widget
|
|
1039
|
-
* The widget sets the value at path like rows[index].column.path
|
|
1040
|
-
*/
|
|
1041
|
-
protected handleCellValueChange(rowIndex: number, columnName: string, event: AXPWidgetCoreContextChangeEvent): void;
|
|
1042
|
-
/**
|
|
1043
|
-
* Handle spreadsheet context change from widgets-container
|
|
1044
|
-
* This is called when any widget in the spreadsheet changes
|
|
1045
|
-
*/
|
|
1046
|
-
protected handleSpreadsheetContextChange(event: AXPWidgetCoreContextChangeEvent): void;
|
|
1047
|
-
/**
|
|
1048
|
-
* Handle blur event to stop editing (when user clicks away from cell)
|
|
1049
|
-
*/
|
|
1050
|
-
protected handleCellBlur(rowId: string, columnName: string): void;
|
|
1051
|
-
/**
|
|
1052
|
-
* Handle Escape key to cancel editing
|
|
1053
|
-
*/
|
|
1054
|
-
protected handleKeyDown(event: KeyboardEvent): void;
|
|
1055
|
-
/**
|
|
1056
|
-
* Commit cell edit (save changes and close editing mode)
|
|
1057
|
-
*/
|
|
1058
|
-
protected commitCellEdit(): void;
|
|
1059
|
-
/**
|
|
1060
|
-
* Cancel cell edit (discard changes and close editing mode - same as escape)
|
|
1061
|
-
*/
|
|
1062
|
-
protected cancelCellEdit(): void;
|
|
1063
|
-
/**
|
|
1064
|
-
* Handle click outside to stop editing
|
|
1065
|
-
*/
|
|
1066
|
-
protected handleClickOutside(event: MouseEvent): void;
|
|
1067
|
-
/**
|
|
1068
|
-
* Handle add row (dynamic mode only)
|
|
1069
|
-
*/
|
|
1070
|
-
protected handleAddRow(): void;
|
|
1071
|
-
/**
|
|
1072
|
-
* Handle remove row (works for both fixed and dynamic modes)
|
|
1073
|
-
*/
|
|
1074
|
-
protected handleRemoveRow(rowId: string, _event: AXClickEvent): void;
|
|
1075
|
-
/**
|
|
1076
|
-
* Generate unique row ID for dynamic mode
|
|
1077
|
-
*/
|
|
1078
|
-
private generateRowId;
|
|
1079
|
-
/**
|
|
1080
|
-
* Update rows array (sync internal state)
|
|
1081
|
-
*/
|
|
1082
|
-
private updateRows;
|
|
1083
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSpreadsheetComponent, never>;
|
|
1084
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSpreadsheetComponent, "axp-spreadsheet", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rowMode": { "alias": "rowMode"; "required": false; "isSignal": true; }; "rowsInput": { "alias": "rowsInput"; "required": false; "isSignal": true; }; "rowsModel": { "alias": "rowsModel"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "emptyCellPlaceholder": { "alias": "emptyCellPlaceholder"; "required": false; "isSignal": true; }; "rowTitlePath": { "alias": "rowTitlePath"; "required": false; "isSignal": true; }; "rowDescriptionPath": { "alias": "rowDescriptionPath"; "required": false; "isSignal": true; }; "allowAddRows": { "alias": "allowAddRows"; "required": false; "isSignal": true; }; "allowRemoveRows": { "alias": "allowRemoveRows"; "required": false; "isSignal": true; }; }, { "rowsModel": "rowsModelChange"; "cellChange": "cellChange"; "rowChange": "rowChange"; "spreadsheetChange": "spreadsheetChange"; }, never, never, true, never>;
|
|
1085
|
-
}
|
|
1086
|
-
|
|
1087
|
-
declare class AXPLogoComponent implements OnInit, OnChanges {
|
|
1088
|
-
source: any;
|
|
1089
|
-
protected logoType: string;
|
|
1090
|
-
private platform;
|
|
1091
|
-
ngOnInit(): void;
|
|
1092
|
-
ngOnChanges(): void;
|
|
1093
|
-
protected setLogoType(): void;
|
|
1094
|
-
protected setLogoTheme(): void;
|
|
1095
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLogoComponent, never>;
|
|
1096
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLogoComponent, "axp-logo", never, { "source": { "alias": "source"; "required": false; }; }, {}, never, never, true, never>;
|
|
1097
|
-
}
|
|
1098
|
-
|
|
1099
|
-
interface AXPPropertyViewerGroup {
|
|
1100
|
-
name: string;
|
|
1101
|
-
title: string;
|
|
1102
|
-
isCollapsed: boolean;
|
|
1103
|
-
props: AXPWidgetProperty[];
|
|
1104
|
-
}
|
|
1105
|
-
interface AXPPropertyViewerTab {
|
|
1106
|
-
name: string;
|
|
1107
|
-
title: string;
|
|
1108
|
-
groups: AXPPropertyViewerGroup[];
|
|
1109
|
-
}
|
|
1110
|
-
interface AXPPropertyViewerChangedEvent {
|
|
1111
|
-
values: any;
|
|
1112
|
-
mode: 'init' | 'update';
|
|
1113
|
-
}
|
|
1114
|
-
|
|
1115
|
-
declare class AXPPropertyViewerComponent {
|
|
1116
|
-
/**
|
|
1117
|
-
* List of tabs that should be rendered inside the property viewer.
|
|
1118
|
-
*/
|
|
1119
|
-
tabsInput: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
|
|
1120
|
-
/**
|
|
1121
|
-
* Determines rendering mode.
|
|
1122
|
-
*/
|
|
1123
|
-
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
1124
|
-
/**
|
|
1125
|
-
* Emits when property context changes.
|
|
1126
|
-
*/
|
|
1127
|
-
onChanged: EventEmitter<AXPPropertyViewerChangedEvent>;
|
|
1128
|
-
protected currentTabIndex: WritableSignal<number>;
|
|
1129
|
-
protected tabs: _angular_core.Signal<AXPPropertyViewerTab[]>;
|
|
1130
|
-
protected groups: _angular_core.Signal<AXPPropertyViewerGroup[]>;
|
|
1131
|
-
protected context: WritableSignal<any>;
|
|
1132
|
-
protected groupCollapsedStates: Map<string, boolean>;
|
|
1133
|
-
constructor();
|
|
1134
|
-
/**
|
|
1135
|
-
* Replaces the current context with the provided value and emits an init event.
|
|
1136
|
-
*/
|
|
1137
|
-
initializeContext(value: any): void;
|
|
1138
|
-
/**
|
|
1139
|
-
* Merges the provided value into the current context and emits an update event.
|
|
1140
|
-
*/
|
|
1141
|
-
update(value: any): void;
|
|
1142
|
-
/**
|
|
1143
|
-
* Handles context changes produced by rendered widgets.
|
|
1144
|
-
*/
|
|
1145
|
-
protected handleContextChange(event: AXPWidgetCoreContextChangeEvent): void;
|
|
1146
|
-
/**
|
|
1147
|
-
* Handles tab selection changes.
|
|
1148
|
-
*/
|
|
1149
|
-
protected handleTabChange(event: AXTabStripChangedEvent): void;
|
|
1150
|
-
/**
|
|
1151
|
-
* Stores collapsed state for a group.
|
|
1152
|
-
*/
|
|
1153
|
-
protected handleCollapsedChange(groupName: string, isCollapsed: boolean): void;
|
|
1154
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerComponent, never>;
|
|
1155
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPPropertyViewerComponent, "axp-property-viewer", never, { "tabsInput": { "alias": "tabsInput"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
|
|
1156
|
-
}
|
|
1157
|
-
|
|
1158
|
-
declare class AXPPropertyViewerPopupComponent extends AXBasePageComponent {
|
|
1159
|
-
tabs: _angular_core.InputSignal<AXPPropertyViewerTab[]>;
|
|
1160
|
-
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
1161
|
-
context: _angular_core.InputSignal<any>;
|
|
1162
|
-
protected readonly propertyViewer: _angular_core.Signal<AXPPropertyViewerComponent | undefined>;
|
|
1163
|
-
protected readonly currentValues: _angular_core.WritableSignal<any>;
|
|
1164
|
-
protected currentMode: 'init' | 'update';
|
|
1165
|
-
constructor();
|
|
1166
|
-
protected handlePropertyChanged(event: AXPPropertyViewerChangedEvent): void;
|
|
1167
|
-
protected handleCloseClick(): void;
|
|
1168
|
-
protected handleApplyClick(): void;
|
|
1169
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerPopupComponent, never>;
|
|
1170
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPPropertyViewerPopupComponent, "axp-property-viewer-popup", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1171
|
-
}
|
|
1172
|
-
|
|
1173
|
-
interface AXPPropertyViewerConfig {
|
|
1174
|
-
title: string;
|
|
1175
|
-
tabs: AXPPropertyViewerTab[];
|
|
1176
|
-
context?: any;
|
|
1177
|
-
mode?: 'simple' | 'advanced';
|
|
1178
|
-
size?: 'sm' | 'md' | 'lg' | 'full';
|
|
1179
|
-
}
|
|
1180
|
-
interface AXPPropertyViewerResult {
|
|
1181
|
-
values: any;
|
|
1182
|
-
mode: 'init' | 'update';
|
|
1183
|
-
}
|
|
1184
|
-
declare class AXPPropertyViewerService {
|
|
1185
|
-
private readonly popupService;
|
|
1186
|
-
/**
|
|
1187
|
-
* Open property viewer popup with predefined tabs and context.
|
|
1188
|
-
*/
|
|
1189
|
-
open(config: AXPPropertyViewerConfig): Promise<AXPPropertyViewerResult | null>;
|
|
1190
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPPropertyViewerService, never>;
|
|
1191
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPPropertyViewerService>;
|
|
1192
|
-
}
|
|
1193
|
-
|
|
1194
|
-
declare class AXPQuerySortsComponent {
|
|
1195
|
-
sortDefinitions: _angular_core.ModelSignal<AXPSortDefinition[]>;
|
|
1196
|
-
sortQueries: _angular_core.WritableSignal<AXPSortQuery[]>;
|
|
1197
|
-
initialSortQueries: _angular_core.InputSignal<AXPSortQuery[]>;
|
|
1198
|
-
sortQueriesChange: _angular_core.OutputEmitterRef<AXPSortQuery[]>;
|
|
1199
|
-
constructor();
|
|
1200
|
-
protected drop(event: CdkDragDrop<unknown[]>): void;
|
|
1201
|
-
getSortDirection(item: AXPSortDefinition): "desc" | "asc" | undefined;
|
|
1202
|
-
protected changeItemSort(item: AXPSortDefinition): void;
|
|
1203
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPQuerySortsComponent, never>;
|
|
1204
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQuerySortsComponent, "axp-query-sorts", never, { "sortDefinitions": { "alias": "sortDefinitions"; "required": false; "isSignal": true; }; "initialSortQueries": { "alias": "initialSortQueries"; "required": false; "isSignal": true; }; }, { "sortDefinitions": "sortDefinitionsChange"; "sortQueriesChange": "sortQueriesChange"; }, never, never, true, never>;
|
|
1205
|
-
}
|
|
1206
|
-
|
|
1207
|
-
type StateMode = 'empty' | 'error' | 'loading' | 'warning' | 'info' | 'success';
|
|
1208
|
-
declare class AXPStateMessageComponent {
|
|
1209
|
-
mode: _angular_core.InputSignal<StateMode>;
|
|
1210
|
-
icon: _angular_core.InputSignal<string>;
|
|
1211
|
-
title: _angular_core.InputSignal<string>;
|
|
1212
|
-
description: _angular_core.InputSignal<string>;
|
|
1213
|
-
variant: _angular_core.InputSignal<"default" | "compact" | "minimal">;
|
|
1214
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPStateMessageComponent, never>;
|
|
1215
|
-
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>;
|
|
1216
|
-
}
|
|
1217
|
-
|
|
1218
|
-
declare class AXPStopwatchComponent implements OnDestroy {
|
|
1219
|
-
mode: _angular_core.InputSignal<"count-up" | "count-down">;
|
|
1220
|
-
timeLimit: _angular_core.InputSignal<number | undefined>;
|
|
1221
|
-
format: _angular_core.InputSignal<"hh:mm:ss" | "mm:ss" | "ss">;
|
|
1222
|
-
autoStart: _angular_core.InputSignal<boolean>;
|
|
1223
|
-
showControls: _angular_core.InputSignal<boolean>;
|
|
1224
|
-
value: _angular_core.InputSignal<number>;
|
|
1225
|
-
valueChange: _angular_core.OutputEmitterRef<number>;
|
|
1226
|
-
timeUp: _angular_core.OutputEmitterRef<void>;
|
|
1227
|
-
private readonly currentTime;
|
|
1228
|
-
protected readonly isRunning: _angular_core.WritableSignal<boolean>;
|
|
1229
|
-
private intervalId;
|
|
1230
|
-
protected readonly isTimeUp: _angular_core.Signal<boolean>;
|
|
1231
|
-
protected readonly displayTime: _angular_core.Signal<string>;
|
|
1232
|
-
constructor();
|
|
1233
|
-
ngOnDestroy(): void;
|
|
1234
|
-
start(): void;
|
|
1235
|
-
pause(): void;
|
|
1236
|
-
reset(): void;
|
|
1237
|
-
private stop;
|
|
1238
|
-
private onTimeUp;
|
|
1239
|
-
private formatTime;
|
|
1240
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPStopwatchComponent, never>;
|
|
1241
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPStopwatchComponent, "axp-stopwatch", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "timeLimit": { "alias": "timeLimit"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "autoStart": { "alias": "autoStart"; "required": false; "isSignal": true; }; "showControls": { "alias": "showControls"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "timeUp": "timeUp"; }, never, never, true, never>;
|
|
1242
|
-
}
|
|
1243
|
-
|
|
1244
|
-
interface AXPTemplateViewerConfig {
|
|
1245
|
-
template: AXPWidgetNode | string;
|
|
1246
|
-
title?: string;
|
|
1247
|
-
size?: AXPopupSizeType;
|
|
1248
|
-
context?: any;
|
|
1249
|
-
metadata?: AXPMetaData;
|
|
1250
|
-
readOnly?: boolean;
|
|
1251
|
-
showActions?: boolean;
|
|
1252
|
-
}
|
|
1253
|
-
interface AXPTemplateViewerResult {
|
|
1254
|
-
context: any;
|
|
1255
|
-
cancelled: boolean;
|
|
1256
|
-
metadata?: AXPMetaData;
|
|
1257
|
-
}
|
|
1258
|
-
|
|
1259
|
-
declare class AXPTemplateViewerComponent extends AXBasePageComponent {
|
|
1260
|
-
set config(value: AXPTemplateViewerConfig | undefined);
|
|
1261
|
-
get config(): AXPTemplateViewerConfig | undefined;
|
|
1262
|
-
protected context: any;
|
|
1263
|
-
protected readonly document: _angular_core.WritableSignal<AXPWidgetNode>;
|
|
1264
|
-
protected readonly currentPageIndex: _angular_core.WritableSignal<number>;
|
|
1265
|
-
protected readonly _config: _angular_core.WritableSignal<AXPTemplateViewerConfig | undefined>;
|
|
1266
|
-
protected readonly currentPage: _angular_core.Signal<AXPWidgetNode>;
|
|
1267
|
-
protected ngOnInit(): Promise<void>;
|
|
1268
|
-
private loadTemplate;
|
|
1269
|
-
protected handleContextChanged(e: AXPWidgetCoreContextChangeEvent): void;
|
|
1270
|
-
protected handleSubmit(form: AXFormComponent): Promise<void>;
|
|
1271
|
-
protected handleCancel(): void;
|
|
1272
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTemplateViewerComponent, never>;
|
|
1273
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPTemplateViewerComponent, "axp-template-viewer", never, { "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
|
|
1274
|
-
}
|
|
1275
|
-
|
|
1276
|
-
declare class AXPTemplateViewerService {
|
|
1277
|
-
private readonly popupService;
|
|
1278
|
-
/**
|
|
1279
|
-
* Show a template viewer dialog with the given configuration
|
|
1280
|
-
* @param config Template viewer configuration including template, title, and UI options
|
|
1281
|
-
* @returns Promise resolving to viewer result with form values and cancellation status
|
|
1282
|
-
*/
|
|
1283
|
-
showTemplate(config: AXPTemplateViewerConfig): Promise<AXPTemplateViewerResult>;
|
|
1284
|
-
/**
|
|
1285
|
-
* Show a template viewer in read-only mode
|
|
1286
|
-
* @param config Template viewer configuration
|
|
1287
|
-
* @returns Promise resolving to viewer result
|
|
1288
|
-
*/
|
|
1289
|
-
showTemplateReadOnly(config: Omit<AXPTemplateViewerConfig, 'readOnly' | 'showActions'>): Promise<AXPTemplateViewerResult>;
|
|
1290
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTemplateViewerService, never>;
|
|
1291
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTemplateViewerService>;
|
|
1292
|
-
}
|
|
1293
|
-
|
|
1294
|
-
type AXPUserAvatarSize = 'small' | 'medium' | 'large';
|
|
1295
|
-
type AXPUserAvatarStatus = 'online' | 'offline';
|
|
1296
|
-
type AXPUserAvatarData = {
|
|
1297
|
-
id: string;
|
|
1298
|
-
status: AXPUserAvatarStatus;
|
|
1299
|
-
username: string;
|
|
1300
|
-
firstName: string;
|
|
1301
|
-
lastName?: string;
|
|
1302
|
-
avatarUrl?: string;
|
|
1303
|
-
};
|
|
1304
|
-
interface AXPUserAvatarProvider {
|
|
1305
|
-
provide(userId: string): Promise<AXPUserAvatarData>;
|
|
1306
|
-
}
|
|
1307
|
-
|
|
1308
|
-
declare class AXPUserAvatarService {
|
|
1309
|
-
private provider;
|
|
1310
|
-
private readonly cacheExpiryTime;
|
|
1311
|
-
private readonly refreshInterval;
|
|
1312
|
-
private cache;
|
|
1313
|
-
/**
|
|
1314
|
-
* Gets user information with caching and auto-refresh
|
|
1315
|
-
* @param userId The username to fetch information for
|
|
1316
|
-
* @returns Observable that emits user avatar data
|
|
1317
|
-
*/
|
|
1318
|
-
getUserInfo$(userId: string): Observable<AXPUserAvatarData>;
|
|
1319
|
-
/**
|
|
1320
|
-
* Gets user information (Promise-based for backward compatibility)
|
|
1321
|
-
* @param userId The username to fetch information for
|
|
1322
|
-
* @returns Promise that resolves to user avatar data
|
|
1323
|
-
*/
|
|
1324
|
-
getUserInfo(userId: string): Promise<AXPUserAvatarData>;
|
|
1325
|
-
/**
|
|
1326
|
-
* Clears the entire cache or a specific user's cache
|
|
1327
|
-
* @param userId Optional username to clear specific cache
|
|
1328
|
-
*/
|
|
1329
|
-
clearCache(userId?: string): void;
|
|
1330
|
-
/**
|
|
1331
|
-
* Force refresh data for a specific username
|
|
1332
|
-
* @param userId The username to refresh
|
|
1333
|
-
* @returns Promise that resolves to the refreshed data
|
|
1334
|
-
*/
|
|
1335
|
-
refreshUserInfo(userId: string): Promise<AXPUserAvatarData>;
|
|
1336
|
-
/**
|
|
1337
|
-
* Checks if a cache entry is expired
|
|
1338
|
-
*/
|
|
1339
|
-
private isExpired;
|
|
1340
|
-
/**
|
|
1341
|
-
* Fetches data from provider and updates the cache
|
|
1342
|
-
*/
|
|
1343
|
-
private fetchAndUpdateCache;
|
|
1344
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPUserAvatarService, never>;
|
|
1345
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPUserAvatarService>;
|
|
1346
|
-
}
|
|
1347
|
-
|
|
1348
|
-
declare const AXP_USER_AVATAR_PROVIDER: InjectionToken<AXPUserAvatarProvider>;
|
|
1349
|
-
|
|
1350
|
-
declare class AXPUserAvatarComponent implements OnInit, OnDestroy {
|
|
1351
|
-
private readonly userAvatarService;
|
|
1352
|
-
private readonly destroy$;
|
|
1353
|
-
protected userInfo: _angular_core.WritableSignal<AXPUserAvatarData | null>;
|
|
1354
|
-
size: _angular_core.InputSignal<number>;
|
|
1355
|
-
userId: _angular_core.InputSignal<string>;
|
|
1356
|
-
src: _angular_core.WritableSignal<string>;
|
|
1357
|
-
userName: _angular_core.Signal<string>;
|
|
1358
|
-
firstName: _angular_core.Signal<string>;
|
|
1359
|
-
lastName: _angular_core.Signal<string>;
|
|
1360
|
-
title: _angular_core.Signal<string>;
|
|
1361
|
-
isOnline: _angular_core.Signal<boolean>;
|
|
1362
|
-
avatarText: _angular_core.Signal<string>;
|
|
1363
|
-
avatarColor: _angular_core.Signal<string>;
|
|
1364
|
-
protected hasAvatar: _angular_core.Signal<boolean>;
|
|
1365
|
-
protected isAvatarLoaded: _angular_core.WritableSignal<boolean>;
|
|
1366
|
-
protected isLoading: _angular_core.Signal<boolean>;
|
|
1367
|
-
protected onImageError(event: AXHtmlEvent<ErrorEvent>): void;
|
|
1368
|
-
protected onImageLoad(event: AXHtmlEvent<Event>): void;
|
|
1369
|
-
ngOnInit(): void;
|
|
1370
|
-
ngOnDestroy(): void;
|
|
1371
|
-
private loadUserData;
|
|
1372
|
-
/**
|
|
1373
|
-
* Generate avatar image source
|
|
1374
|
-
* This is a placeholder - implement based on your actual requirements
|
|
1375
|
-
*/
|
|
1376
|
-
private generateAvatarSrc;
|
|
1377
|
-
/**
|
|
1378
|
-
* Get initials from first and last name
|
|
1379
|
-
*/
|
|
1380
|
-
private getInitials;
|
|
1381
|
-
private hashString;
|
|
1382
|
-
private pickColor;
|
|
1383
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPUserAvatarComponent, never>;
|
|
1384
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPUserAvatarComponent, "axp-user-avatar", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "userId": { "alias": "userId"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1385
|
-
}
|
|
1386
|
-
|
|
1387
|
-
declare class AXPQueryViewsComponent {
|
|
1388
|
-
#private;
|
|
1389
|
-
protected popupService: AXPopupService;
|
|
1390
|
-
protected translate: AXTranslationService;
|
|
1391
|
-
protected tabs: _angular_core.Signal<AXTabsComponent | undefined>;
|
|
1392
|
-
views: _angular_core.ModelSignal<AXPViewQuery[]>;
|
|
1393
|
-
selectedView: _angular_core.ModelSignal<AXPViewQuery>;
|
|
1394
|
-
protected isMounted: _angular_core.WritableSignal<boolean>;
|
|
1395
|
-
ngAfterViewInit(): void;
|
|
1396
|
-
setView(view: AXPViewQuery): void;
|
|
1397
|
-
handleActiveChange(e: any): void;
|
|
1398
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPQueryViewsComponent, never>;
|
|
1399
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQueryViewsComponent, "axp-query-views", never, { "views": { "alias": "views"; "required": false; "isSignal": true; }; "selectedView": { "alias": "selectedView"; "required": true; "isSignal": true; }; }, { "views": "viewsChange"; "selectedView": "selectedViewChange"; }, never, never, true, never>;
|
|
1400
|
-
}
|
|
1401
|
-
|
|
1402
|
-
/**
|
|
1403
|
-
* Compact widget field configurator component
|
|
1404
|
-
* Designed to be embedded in entity definition forms for configuring widget properties
|
|
1405
|
-
*/
|
|
1406
|
-
declare class AXPWidgetFieldConfiguratorComponent {
|
|
1407
|
-
/**
|
|
1408
|
-
* Widget node configuration (two-way binding)
|
|
1409
|
-
*/
|
|
1410
|
-
widget: _angular_core.ModelSignal<AXPWidgetNode>;
|
|
1411
|
-
/**
|
|
1412
|
-
* Label for the widget selector
|
|
1413
|
-
*/
|
|
1414
|
-
label: _angular_core.InputSignal<string>;
|
|
1415
|
-
/**
|
|
1416
|
-
* Field name (technical identifier, used for form field path)
|
|
1417
|
-
*/
|
|
1418
|
-
fieldName: _angular_core.InputSignal<string>;
|
|
1419
|
-
/**
|
|
1420
|
-
* Field title (display name, used in UI labels and titles)
|
|
1421
|
-
*/
|
|
1422
|
-
fieldTitle: _angular_core.InputSignal<string>;
|
|
1423
|
-
/**
|
|
1424
|
-
* Readonly mode
|
|
1425
|
-
*/
|
|
1426
|
-
readonly: _angular_core.InputSignal<boolean>;
|
|
1427
|
-
private readonly widgetRegistry;
|
|
1428
|
-
private readonly widgetPropertyViewerService;
|
|
1429
|
-
private readonly translationService;
|
|
1430
|
-
private readonly formBuilderService;
|
|
1431
|
-
/**
|
|
1432
|
-
* Currently selected widget type
|
|
1433
|
-
*/
|
|
1434
|
-
protected selectedWidgetType: _angular_core.WritableSignal<string>;
|
|
1435
|
-
/**
|
|
1436
|
-
* Whether the component is in edit mode (showing select box)
|
|
1437
|
-
*/
|
|
1438
|
-
protected isEditMode: _angular_core.WritableSignal<boolean>;
|
|
1439
|
-
/**
|
|
1440
|
-
* Available widgets filtered by FormElement group
|
|
1441
|
-
*/
|
|
1442
|
-
protected availableWidgets: _angular_core.Signal<{
|
|
1443
|
-
value: string;
|
|
1444
|
-
text: string;
|
|
1445
|
-
icon: string | undefined;
|
|
1446
|
-
description: string | undefined;
|
|
1447
|
-
}[]>;
|
|
1448
|
-
/**
|
|
1449
|
-
* Current widget configuration details
|
|
1450
|
-
*/
|
|
1451
|
-
protected currentWidgetConfig: _angular_core.Signal<{
|
|
1452
|
-
title: string;
|
|
1453
|
-
description: string | undefined;
|
|
1454
|
-
icon: string | undefined;
|
|
1455
|
-
hasProperties: boolean | undefined;
|
|
1456
|
-
} | null>;
|
|
1457
|
-
/**
|
|
1458
|
-
* Whether configure button should be enabled
|
|
1459
|
-
*/
|
|
1460
|
-
protected canConfigure: _angular_core.Signal<boolean>;
|
|
1461
|
-
/**
|
|
1462
|
-
* Whether widget has been configured (has options)
|
|
1463
|
-
*/
|
|
1464
|
-
protected isConfigured: _angular_core.Signal<boolean>;
|
|
1465
|
-
/**
|
|
1466
|
-
* Whether preview button should be enabled
|
|
1467
|
-
*/
|
|
1468
|
-
protected canPreview: _angular_core.Signal<boolean>;
|
|
1469
|
-
/**
|
|
1470
|
-
* Enter edit mode (show select box)
|
|
1471
|
-
*/
|
|
1472
|
-
protected enterEditMode(): void;
|
|
1473
|
-
constructor();
|
|
1474
|
-
/**
|
|
1475
|
-
* Handle widget type change
|
|
1476
|
-
*/
|
|
1477
|
-
protected onWidgetTypeChange(event: any): Promise<void>;
|
|
1478
|
-
/**
|
|
1479
|
-
* Open widget property viewer
|
|
1480
|
-
*/
|
|
1481
|
-
protected openPropertyViewer(): Promise<void>;
|
|
1482
|
-
/**
|
|
1483
|
-
* Open widget preview with actual rendered widget
|
|
1484
|
-
*/
|
|
1485
|
-
protected openPreview(): Promise<void>;
|
|
1486
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetFieldConfiguratorComponent, never>;
|
|
1487
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetFieldConfiguratorComponent, "axp-widget-field-configurator", never, { "widget": { "alias": "widget"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "fieldName": { "alias": "fieldName"; "required": false; "isSignal": true; }; "fieldTitle": { "alias": "fieldTitle"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, { "widget": "widgetChange"; }, never, never, true, never>;
|
|
1488
|
-
}
|
|
1489
|
-
|
|
1490
|
-
/**
|
|
1491
|
-
* Generic interface for widget item data
|
|
1492
|
-
*/
|
|
1493
|
-
interface AXPWidgetItemData {
|
|
1494
|
-
/** Display title of the widget */
|
|
1495
|
-
title: string;
|
|
1496
|
-
/** Description text for the widget */
|
|
1497
|
-
description?: string;
|
|
1498
|
-
/** Icon class (e.g., FontAwesome classes) */
|
|
1499
|
-
icon?: string;
|
|
1500
|
-
/** Whether the widget is pinned/favorited */
|
|
1501
|
-
isPinned: boolean;
|
|
1502
|
-
/** Generic data payload - can be any type based on use case */
|
|
1503
|
-
data?: unknown;
|
|
1504
|
-
}
|
|
1505
|
-
/**
|
|
1506
|
-
* Event data for widget item interactions
|
|
1507
|
-
*/
|
|
1508
|
-
interface AXPWidgetItemClickEvent<T = unknown> {
|
|
1509
|
-
/** The mouse event */
|
|
1510
|
-
event: MouseEvent;
|
|
1511
|
-
/** The widget item data */
|
|
1512
|
-
widget: AXPWidgetItemData & {
|
|
1513
|
-
data?: T;
|
|
1514
|
-
};
|
|
1515
|
-
}
|
|
1516
|
-
|
|
1517
|
-
/**
|
|
1518
|
-
* Generic widget item component for displaying selectable widgets with icons, titles, and descriptions.
|
|
1519
|
-
* Can be used across different modules for consistent widget display and interaction.
|
|
1520
|
-
*/
|
|
1521
|
-
declare class AXPWidgetItemComponent {
|
|
1522
|
-
/** The widget data to display */
|
|
1523
|
-
widget: _angular_core.InputSignal<AXPWidgetItemData>;
|
|
1524
|
-
/** Whether this widget is currently selected */
|
|
1525
|
-
isSelected: _angular_core.InputSignal<boolean>;
|
|
1526
|
-
/** Whether to show the pin button */
|
|
1527
|
-
showPinButton: _angular_core.InputSignal<boolean>;
|
|
1528
|
-
/** Custom CSS classes to apply to the widget item */
|
|
1529
|
-
customClasses: _angular_core.InputSignal<string>;
|
|
1530
|
-
/** Emitted when the widget item is clicked */
|
|
1531
|
-
onWidgetClick: _angular_core.OutputEmitterRef<AXPWidgetItemClickEvent<unknown>>;
|
|
1532
|
-
/** Emitted when the pin button is clicked */
|
|
1533
|
-
onPinClick: _angular_core.OutputEmitterRef<AXPWidgetItemClickEvent<unknown>>;
|
|
1534
|
-
/**
|
|
1535
|
-
* Handle widget item click event
|
|
1536
|
-
*/
|
|
1537
|
-
handleClick(event: MouseEvent): void;
|
|
1538
|
-
/**
|
|
1539
|
-
* Handle pin button click event
|
|
1540
|
-
*/
|
|
1541
|
-
handlePinClick(event: MouseEvent): void;
|
|
1542
|
-
/**
|
|
1543
|
-
* Get the effective icon to display
|
|
1544
|
-
*/
|
|
1545
|
-
getIconClass(): string;
|
|
1546
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetItemComponent, never>;
|
|
1547
|
-
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>;
|
|
1548
|
-
}
|
|
1549
|
-
|
|
1550
|
-
interface AXPWidgetPropertyTab {
|
|
1551
|
-
name: string;
|
|
1552
|
-
title: string;
|
|
1553
|
-
groups: {
|
|
1554
|
-
name: string;
|
|
1555
|
-
title: string;
|
|
1556
|
-
isCollapsed: boolean;
|
|
1557
|
-
props: AXPWidgetProperty[];
|
|
1558
|
-
}[];
|
|
1559
|
-
}
|
|
1560
|
-
interface AXPWidgetPropertiesChangedEvent {
|
|
1561
|
-
values: any;
|
|
1562
|
-
mode: 'init' | 'update';
|
|
1563
|
-
}
|
|
1564
|
-
declare class AXPWidgetPropertyViewerComponent {
|
|
1565
|
-
widget: _angular_core.InputSignal<AXPWidgetNode>;
|
|
1566
|
-
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
1567
|
-
private widgetRegistryService;
|
|
1568
|
-
protected currentTabIndex: WritableSignal<number>;
|
|
1569
|
-
protected config: WritableSignal<AXPWidgetConfig<any> | null>;
|
|
1570
|
-
protected allPoperties: AXPWidgetProperty[];
|
|
1571
|
-
protected tabs: WritableSignal<AXPWidgetPropertyTab[]>;
|
|
1572
|
-
protected groups: _angular_core.Signal<{
|
|
1573
|
-
name: string;
|
|
1574
|
-
title: string;
|
|
1575
|
-
isCollapsed: boolean;
|
|
1576
|
-
props: AXPWidgetProperty[];
|
|
1577
|
-
}[]>;
|
|
1578
|
-
protected groupCollapsedStates: Map<string, boolean>;
|
|
1579
|
-
onChanged: EventEmitter<AXPWidgetPropertiesChangedEvent>;
|
|
1580
|
-
protected context: WritableSignal<any>;
|
|
1581
|
-
protected initialContext: any;
|
|
1582
|
-
constructor();
|
|
1583
|
-
update(values: any): void;
|
|
1584
|
-
private fillTabs;
|
|
1585
|
-
protected handleContextChange(e: AXPWidgetCoreContextChangeEvent): void;
|
|
1586
|
-
protected handleTabChange(event: AXTabStripChangedEvent): void;
|
|
1587
|
-
protected handleCollapsedChange(group: string, collapsed: boolean): void;
|
|
1588
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerComponent, never>;
|
|
1589
|
-
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>;
|
|
1590
|
-
}
|
|
1591
|
-
|
|
1592
|
-
declare class AXPWidgetPropertyViewerPopupComponent extends AXBasePageComponent {
|
|
1593
|
-
widget: _angular_core.InputSignal<AXPWidgetNode>;
|
|
1594
|
-
mode: _angular_core.InputSignal<"simple" | "advanced">;
|
|
1595
|
-
protected currentValues: _angular_core.WritableSignal<any>;
|
|
1596
|
-
protected handlePropertyChanged(event: {
|
|
1597
|
-
values: any;
|
|
1598
|
-
mode: 'init' | 'update';
|
|
1599
|
-
}): void;
|
|
1600
|
-
protected handleCloseClick(): void;
|
|
1601
|
-
protected handleApplyClick(): void;
|
|
1602
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerPopupComponent, never>;
|
|
1603
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerPopupComponent, "axp-widget-property-viewer-popup", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1604
|
-
}
|
|
1605
|
-
|
|
1606
|
-
interface AXPWidgetPropertyInjection {
|
|
1607
|
-
property: AXPWidgetProperty;
|
|
1608
|
-
tab?: {
|
|
1609
|
-
name?: string;
|
|
1610
|
-
title?: string;
|
|
1611
|
-
};
|
|
1612
|
-
group?: {
|
|
1613
|
-
name?: string;
|
|
1614
|
-
title?: string;
|
|
1615
|
-
};
|
|
1616
|
-
}
|
|
1617
|
-
interface AXPWidgetPropertyViewerConfig {
|
|
1618
|
-
title: string;
|
|
1619
|
-
widget: AXPWidgetNode;
|
|
1620
|
-
mode?: 'simple' | 'advanced';
|
|
1621
|
-
/**
|
|
1622
|
-
* Property names to exclude from the viewer.
|
|
1623
|
-
*/
|
|
1624
|
-
exclude?: string[];
|
|
1625
|
-
/**
|
|
1626
|
-
* Custom property injection configuration.
|
|
1627
|
-
*/
|
|
1628
|
-
custom?: {
|
|
1629
|
-
/**
|
|
1630
|
-
* Custom property injection entries.
|
|
1631
|
-
*/
|
|
1632
|
-
properties: AXPWidgetPropertyInjection[];
|
|
1633
|
-
/**
|
|
1634
|
-
* Default tab fallback if property injection doesn't specify one.
|
|
1635
|
-
* When omitted, falls back to the first tab or "general".
|
|
1636
|
-
*/
|
|
1637
|
-
defaultTab?: {
|
|
1638
|
-
name?: string;
|
|
1639
|
-
title?: string;
|
|
1640
|
-
};
|
|
1641
|
-
/**
|
|
1642
|
-
* Default group fallback when injection doesn't specify a group.
|
|
1643
|
-
* When omitted, falls back to the tab's first group or property defined group.
|
|
1644
|
-
*/
|
|
1645
|
-
defaultGroup?: {
|
|
1646
|
-
name?: string;
|
|
1647
|
-
title?: string;
|
|
1648
|
-
};
|
|
1649
|
-
};
|
|
1650
|
-
}
|
|
1651
|
-
interface AXPWidgetPropertyViewerResult {
|
|
1652
|
-
values: any;
|
|
1653
|
-
mode: 'init' | 'update';
|
|
1654
|
-
}
|
|
1655
|
-
declare class AXPWidgetPropertyViewerService {
|
|
1656
|
-
private readonly widgetRegistryService;
|
|
1657
|
-
private readonly propertyViewerService;
|
|
1658
|
-
/**
|
|
1659
|
-
* Open widget property viewer popup
|
|
1660
|
-
*/
|
|
1661
|
-
open(config: AXPWidgetPropertyViewerConfig): Promise<AXPWidgetPropertyViewerResult | null>;
|
|
1662
|
-
private buildTabs;
|
|
1663
|
-
private buildInitialContext;
|
|
1664
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetPropertyViewerService, never>;
|
|
1665
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetPropertyViewerService>;
|
|
1666
|
-
}
|
|
1667
|
-
|
|
1668
|
-
export { AXPActivityLogComponent, AXPCategoryTreeComponent, AXPColorPalettePickerComponent, AXPColumnItemListComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDataSelectorComponent, AXPDataSelectorService, AXPDragDropListComponent, AXPImageEditorPopupComponent, AXPImageEditorService, AXPLogoComponent, AXPMenuBadgeHelper, AXPPropertyViewerComponent, AXPPropertyViewerPopupComponent, AXPPropertyViewerService, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPSpreadsheetComponent, AXPStateMessageComponent, AXPStopwatchComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetFieldConfiguratorComponent, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXPWidgetPropertyViewerPopupComponent, AXPWidgetPropertyViewerService, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
|
|
1669
|
-
export type { AXPCategoryTreeActions, AXPCategoryTreeConfig, AXPCategoryTreeDataSource, AXPCategoryTreeEvents, AXPCategoryTreeNode, AXPColumnItemListItem, AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDataSelectorColumn, AXPDataSelectorConfig, AXPDragDropListConfig, AXPDragDropListDropEvent, AXPDragDropListItem, AXPImageEditorOpenOptions, AXPPropertyViewerChangedEvent, AXPPropertyViewerConfig, AXPPropertyViewerGroup, AXPPropertyViewerResult, AXPPropertyViewerTab, AXPSpreadsheetCellChangeEvent, AXPSpreadsheetCellValue, AXPSpreadsheetColumn, AXPSpreadsheetConfig, AXPSpreadsheetData, AXPSpreadsheetItem, AXPSpreadsheetRowChangeEvent, AXPSpreadsheetRowMode, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyInjection, AXPWidgetPropertyTab, AXPWidgetPropertyViewerConfig, AXPWidgetPropertyViewerResult, StateMode };
|