@acorex/platform 20.8.9 → 20.8.11
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 +125 -27
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-DVvuLUfF.mjs → acorex-platform-common-common-settings.provider-Bi1RYif5.mjs} +30 -32
- package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +711 -205
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +420 -127
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +557 -826
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +634 -114
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs} +9 -9
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +3365 -880
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +456 -204
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +18667 -14048
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +413 -171
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +507 -441
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.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-Dtv6U3df.mjs → acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs} +21 -76
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.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-CVdssZBD.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-BGO75IMz.mjs +116 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs} +5 -5
- 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-DPGHgXa6.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs} +4 -4
- 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-CdiNW691.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 +6578 -4314
- 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 +391 -166
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs +160 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs +120 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs → acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs} +16 -23
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-53VB-PS_.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-DVF9soT5.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 +1784 -61
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.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-BHcKkIx0.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 → acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs} +24 -25
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +94 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +86 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +408 -305
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +359 -100
- 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} +14 -2
- package/{common/index.d.ts → types/acorex-platform-common.d.ts} +302 -30
- package/{core/index.d.ts → types/acorex-platform-core.d.ts} +188 -44
- package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
- package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +160 -38
- package/{layout/components/index.d.ts → types/acorex-platform-layout-components.d.ts} +854 -125
- package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
- package/{layout/entity/index.d.ts → types/acorex-platform-layout-entity.d.ts} +848 -63
- package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +80 -47
- package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +274 -197
- package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +608 -122
- package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
- package/types/acorex-platform-runtime.d.ts +571 -0
- package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +113 -4
- package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +5 -4
- package/{workflow/index.d.ts → types/acorex-platform-workflow.d.ts} +162 -81
- package/fesm2022/acorex-platform-common-common-settings.provider-DVvuLUfF.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +0 -111
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +0 -160
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs +0 -1716
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +0 -120
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +0 -65
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +0 -64
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +0 -1
- package/runtime/index.d.ts +0 -307
- /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
2
|
+
import { Signal, InjectionToken, ComponentRef, OnInit, EventEmitter, TemplateRef, Injector, WritableSignal, SimpleChanges } from '@angular/core';
|
|
3
|
+
import * as _acorex_platform_layout_widget_core from '@acorex/platform/layout/widget-core';
|
|
4
4
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
5
|
+
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
6
|
+
import { AXPOptionsData, AXPMultiLanguageString, AXPDefinitionCategory, AXPDataType, AXPExpression, AXPWidgetTriggers, AXPMetaData, AXPValueTransformerFunctions, AXPValidationRules, AXPPartialNested, AXPProperty, AXPContextChangeEvent, AXPExpressionEvaluatorService } from '@acorex/platform/core';
|
|
7
|
+
export { AXPDefinitionCategory, normalizeDefinitionCategories } from '@acorex/platform/core';
|
|
5
8
|
import { AXValueChangedEvent, AXDataSource } from '@acorex/cdk/common';
|
|
6
9
|
import { Subject, BehaviorSubject } from 'rxjs';
|
|
7
|
-
import * as _acorex_platform_layout_widget_core from '@acorex/platform/layout/widget-core';
|
|
8
10
|
import { AXDataTableColumnComponent } from '@acorex/components/data-table';
|
|
9
11
|
import * as i7 from '@acorex/core/translation';
|
|
10
12
|
import { AXTranslationService } from '@acorex/core/translation';
|
|
@@ -13,18 +15,86 @@ import * as i4 from '@angular/common';
|
|
|
13
15
|
import * as i5 from '@angular/cdk/portal';
|
|
14
16
|
import * as i6 from '@acorex/components/skeleton';
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
declare enum AXPPageStatus {
|
|
19
|
+
Idle = "idle",// The page is idle.
|
|
20
|
+
Rendering = "rendering",// The page is being rendered.
|
|
21
|
+
Rendered = "rendered",// The rendering process is complete. should be renamed to idle
|
|
22
|
+
Processing = "processing",// The page is performing a task or interaction.
|
|
23
|
+
Submitting = "submitting",// The form is being submitted.
|
|
24
|
+
Submitted = "submitted",// Submission is completed.
|
|
25
|
+
Validating = "validating",// The form is being validated.
|
|
26
|
+
Validated = "validated",// Validation is completed.
|
|
27
|
+
Error = "error"
|
|
28
|
+
}
|
|
29
|
+
declare enum AXPWidgetStatus {
|
|
30
|
+
Rendering = "rendering",// The widget is being rendered.
|
|
31
|
+
Rendered = "rendered",// The rendering process is complete.
|
|
32
|
+
Processing = "processing",// The widget is performing a task or interaction.
|
|
33
|
+
Error = "error"
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
type AXPWidgetCoreElementAPI = {
|
|
37
|
+
[name: string]: Subject<any> | Function;
|
|
38
|
+
};
|
|
39
|
+
type AXPWidgetCoreElementAction = {
|
|
18
40
|
title: string;
|
|
19
|
-
|
|
41
|
+
command: string;
|
|
42
|
+
icon?: string;
|
|
43
|
+
color?: string;
|
|
44
|
+
disabled?: boolean | string;
|
|
45
|
+
hidden?: boolean | string;
|
|
46
|
+
zone?: 'header' | 'footer';
|
|
47
|
+
placement?: 'prefix' | 'suffix';
|
|
48
|
+
scope?: 'primary' | 'secondary';
|
|
49
|
+
/** When `command` is not `widget:<name>.<action>`, widget name used to resolve `api` for `hidden` / `disabled` expressions. */
|
|
50
|
+
predicateApiWidgetName?: string;
|
|
51
|
+
};
|
|
52
|
+
declare abstract class AXPWidgetCoreElement {
|
|
53
|
+
abstract get id(): string | null;
|
|
54
|
+
abstract get status(): Signal<AXPWidgetStatus>;
|
|
55
|
+
api(): AXPWidgetCoreElementAPI;
|
|
56
|
+
actions(): AXPWidgetCoreElementAction[];
|
|
57
|
+
}
|
|
58
|
+
declare class AXPWidgetCoreService {
|
|
59
|
+
private readonly variables$;
|
|
60
|
+
private readonly functions$;
|
|
61
|
+
readonly onRefresh: Subject<void>;
|
|
62
|
+
private widgets;
|
|
63
|
+
private readonly onWidgetRegistered;
|
|
64
|
+
private readonly status$;
|
|
65
|
+
readonly status: Signal<AXPPageStatus>;
|
|
66
|
+
readonly isBusy: Signal<boolean>;
|
|
67
|
+
registeredWidgetsCount: _angular_core.WritableSignal<number>;
|
|
68
|
+
get variables(): any;
|
|
69
|
+
get functions(): {
|
|
70
|
+
[key: string]: Function;
|
|
71
|
+
};
|
|
72
|
+
updateStatus(): void;
|
|
73
|
+
private detectStatus;
|
|
74
|
+
refresh(): void;
|
|
75
|
+
setStatus(status: AXPPageStatus): void;
|
|
76
|
+
setVariables(keysValues: any): void;
|
|
77
|
+
setVariables(key: string, value: any): void;
|
|
78
|
+
setFunctions(keysValues: any): void;
|
|
79
|
+
setFunctions(key: string, value: any): void;
|
|
80
|
+
registerWidget(id: string, widget: AXPWidgetCoreElement): void;
|
|
81
|
+
getWidget(id: string): AXPWidgetCoreElement | undefined;
|
|
82
|
+
/**
|
|
83
|
+
* Waits until a widget with the given id is registered, then resolves with it.
|
|
84
|
+
* If the widget is already registered, resolves immediately.
|
|
85
|
+
* Optionally accepts a timeout (in ms) after which it resolves with undefined.
|
|
86
|
+
*/
|
|
87
|
+
waitForWidget(id: string, timeoutMs?: number): Promise<AXPWidgetCoreElement | undefined>;
|
|
88
|
+
/**
|
|
89
|
+
* Returns a list of registered widget ids (names).
|
|
90
|
+
*/
|
|
91
|
+
listRegisteredWidgetNames(): string[];
|
|
92
|
+
ngOnDestroy(): void;
|
|
93
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetCoreService, never>;
|
|
94
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetCoreService>;
|
|
20
95
|
}
|
|
21
|
-
declare const AXP_WIDGETS_LAYOUT_CATEGORY: AXPWidgetCategory;
|
|
22
|
-
declare const AXP_WIDGETS_EDITOR_CATEGORY: AXPWidgetCategory;
|
|
23
|
-
declare const AXP_WIDGETS_ACTION_CATEGORY: AXPWidgetCategory;
|
|
24
|
-
declare const AXP_WIDGETS_ADVANCE_CATEGORY: AXPWidgetCategory;
|
|
25
|
-
declare const AXP_WIDGETS_CATEGORIES: AXPWidgetCategory[];
|
|
26
96
|
|
|
27
|
-
type AXPWidgetGroup = 'form-element' | 'dashboard-widget' | 'form-template' | 'property-editor' | 'meta-data' | 'setting-widget' | 'entity-widget' | 'utility-widget';
|
|
97
|
+
type AXPWidgetGroup = 'form-element' | 'dashboard-widget' | 'form-template' | 'property-editor' | 'meta-data' | 'setting-widget' | 'entity-widget' | 'utility-widget' | 'base-widget';
|
|
28
98
|
declare enum AXPWidgetGroupEnum {
|
|
29
99
|
FormElement = "form-element",
|
|
30
100
|
DashboardWidget = "dashboard-widget",
|
|
@@ -33,7 +103,8 @@ declare enum AXPWidgetGroupEnum {
|
|
|
33
103
|
MetaData = "meta-data",
|
|
34
104
|
SettingWidget = "setting-widget",
|
|
35
105
|
EntityWidget = "entity-widget",
|
|
36
|
-
UtilityWidget = "utility-widget"
|
|
106
|
+
UtilityWidget = "utility-widget",
|
|
107
|
+
BaseWidget = "base-widget"
|
|
37
108
|
}
|
|
38
109
|
|
|
39
110
|
interface AXPWidgetTypesMap {
|
|
@@ -57,6 +128,7 @@ interface AXPWidgetTypesMap {
|
|
|
57
128
|
pageLayout: 'page-layout';
|
|
58
129
|
repeaterLayout: 'repeater-layout';
|
|
59
130
|
textBlockLayout: 'text-block-layout';
|
|
131
|
+
alertBoxLayout: 'alert-box-layout';
|
|
60
132
|
fileUploader: 'file-uploader';
|
|
61
133
|
fileTypeExtension: 'file-type-extension';
|
|
62
134
|
map: 'map';
|
|
@@ -106,19 +178,9 @@ interface AXPWidgetTypesMap {
|
|
|
106
178
|
betweenValidation: 'between-validation';
|
|
107
179
|
equalValidation: 'equal-validation';
|
|
108
180
|
callbackValidation: 'callback-validation';
|
|
109
|
-
donutChart: 'donut-chart';
|
|
110
|
-
barChart: 'bar-chart';
|
|
111
|
-
lineChart: 'line-chart';
|
|
112
|
-
gaugeChart: 'gauge-chart';
|
|
113
|
-
stickyNote: 'sticky-note';
|
|
114
|
-
clockCalendar: 'clock-calendar';
|
|
115
|
-
analogClock: 'analog-clock';
|
|
116
|
-
weather: 'weather';
|
|
117
|
-
minimalWeather: 'minimal-weather';
|
|
118
|
-
advancedWeather: 'advanced-weather';
|
|
119
181
|
metaData: 'meta-data-editor';
|
|
120
182
|
templateEditor: 'template-box-editor';
|
|
121
|
-
|
|
183
|
+
templateContentEditor: 'template-content-editor';
|
|
122
184
|
themeModeChooser: 'theme-mode-chooser';
|
|
123
185
|
menuOrientationChooser: 'menu-orientation-chooser';
|
|
124
186
|
fontStyleChooser: 'font-style-chooser';
|
|
@@ -128,7 +190,6 @@ interface AXPWidgetTypesMap {
|
|
|
128
190
|
themeColorChooser: 'theme-color-chooser';
|
|
129
191
|
panel: 'panel';
|
|
130
192
|
notification: 'notification';
|
|
131
|
-
taskBoard: 'task-board';
|
|
132
193
|
comment: 'comment';
|
|
133
194
|
list: 'list-editor';
|
|
134
195
|
dataList: 'data-list';
|
|
@@ -136,27 +197,11 @@ interface AXPWidgetTypesMap {
|
|
|
136
197
|
entityList: 'entity-list';
|
|
137
198
|
stepWizard: 'step-wizard';
|
|
138
199
|
documentUploader: 'document-uploader';
|
|
200
|
+
documentFileTypeFilter: 'document-file-type-filter';
|
|
139
201
|
editorJs: 'editor-js-editor';
|
|
140
202
|
progressBar: 'progress-bar-editor';
|
|
141
203
|
rate: 'rate-picker-editor';
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
declare enum AXPPageStatus {
|
|
145
|
-
Idle = "idle",// The page is idle.
|
|
146
|
-
Rendering = "rendering",// The page is being rendered.
|
|
147
|
-
Rendered = "rendered",// The rendering process is complete. should be renamed to idle
|
|
148
|
-
Processing = "processing",// The page is performing a task or interaction.
|
|
149
|
-
Submitting = "submitting",// The form is being submitted.
|
|
150
|
-
Submitted = "submitted",// Submission is completed.
|
|
151
|
-
Validating = "validating",// The form is being validated.
|
|
152
|
-
Validated = "validated",// Validation is completed.
|
|
153
|
-
Error = "error"
|
|
154
|
-
}
|
|
155
|
-
declare enum AXPWidgetStatus {
|
|
156
|
-
Rendering = "rendering",// The widget is being rendered.
|
|
157
|
-
Rendered = "rendered",// The rendering process is complete.
|
|
158
|
-
Processing = "processing",// The widget is performing a task or interaction.
|
|
159
|
-
Error = "error"
|
|
204
|
+
entityDefinitionProvider: 'entity-definition-provider-editor';
|
|
160
205
|
}
|
|
161
206
|
|
|
162
207
|
interface AXPWidgetPropertyGroup {
|
|
@@ -182,7 +227,7 @@ interface AXPWidgetProperty {
|
|
|
182
227
|
interface: Required<Pick<AXPWidgetNode, 'path'>> & Omit<AXPWidgetNode, 'path'>;
|
|
183
228
|
};
|
|
184
229
|
validations?: AXPValidationRules;
|
|
185
|
-
visible: boolean;
|
|
230
|
+
visible: boolean | AXPExpression;
|
|
186
231
|
binding?: {
|
|
187
232
|
enabled: boolean;
|
|
188
233
|
/** When set, the expression is edited at path + '.' + optionKey (e.g. options.visibility). */
|
|
@@ -196,7 +241,7 @@ declare function createStringProperty(ctor: {
|
|
|
196
241
|
title: string;
|
|
197
242
|
path?: string;
|
|
198
243
|
group: AXPWidgetPropertyGroup;
|
|
199
|
-
visible?: boolean;
|
|
244
|
+
visible?: boolean | AXPExpression;
|
|
200
245
|
}): AXPWidgetProperty;
|
|
201
246
|
declare function createNumberProperty(ctor: {
|
|
202
247
|
defaultValue?: number;
|
|
@@ -204,7 +249,7 @@ declare function createNumberProperty(ctor: {
|
|
|
204
249
|
title: string;
|
|
205
250
|
path?: string;
|
|
206
251
|
group: AXPWidgetPropertyGroup;
|
|
207
|
-
visible?: boolean;
|
|
252
|
+
visible?: boolean | AXPExpression;
|
|
208
253
|
options?: {
|
|
209
254
|
minValue?: number;
|
|
210
255
|
maxValue?: number;
|
|
@@ -217,7 +262,7 @@ declare function createBooleanProperty(ctor: {
|
|
|
217
262
|
title: string;
|
|
218
263
|
path?: string;
|
|
219
264
|
group: AXPWidgetPropertyGroup;
|
|
220
|
-
visible?: boolean;
|
|
265
|
+
visible?: boolean | AXPExpression;
|
|
221
266
|
}): AXPWidgetProperty;
|
|
222
267
|
declare function createSelectProperty<T = string | {
|
|
223
268
|
id: string;
|
|
@@ -229,7 +274,7 @@ declare function createSelectProperty<T = string | {
|
|
|
229
274
|
title: string;
|
|
230
275
|
path?: string;
|
|
231
276
|
group: AXPWidgetPropertyGroup;
|
|
232
|
-
visible?: boolean;
|
|
277
|
+
visible?: boolean | AXPExpression;
|
|
233
278
|
}): AXPWidgetProperty;
|
|
234
279
|
interface AXPWidgetNode {
|
|
235
280
|
type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap | string;
|
|
@@ -254,6 +299,8 @@ interface AXPWidgetColumnNode {
|
|
|
254
299
|
type: string;
|
|
255
300
|
path: string;
|
|
256
301
|
options?: AXPOptionsData;
|
|
302
|
+
/** Column header caption from data-table (`title || name`); often an i18n key. */
|
|
303
|
+
caption?: string;
|
|
257
304
|
}
|
|
258
305
|
interface AXPWidgetColumnNodeToken extends AXPWidgetColumnNode {
|
|
259
306
|
config: AXPWidgetConfig;
|
|
@@ -292,10 +339,24 @@ type AXPExtractWidgetConfig<T> = {
|
|
|
292
339
|
interface AXPWidgetConfig<T = any> {
|
|
293
340
|
name: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap | string;
|
|
294
341
|
alias?: string | string[];
|
|
295
|
-
title:
|
|
342
|
+
title: AXPMultiLanguageString;
|
|
296
343
|
icon?: string;
|
|
297
|
-
description?:
|
|
298
|
-
|
|
344
|
+
description?: AXPMultiLanguageString;
|
|
345
|
+
/**
|
|
346
|
+
* Picker tabs and section headings in the widget gallery (when the widget is included in the picker list).
|
|
347
|
+
*/
|
|
348
|
+
categories?: AXPDefinitionCategory | AXPDefinitionCategory[];
|
|
349
|
+
/**
|
|
350
|
+
* Optional sub-group within a parent category tab in the widget picker.
|
|
351
|
+
* Ignored on the "All" tab (widgets are grouped by parent category only).
|
|
352
|
+
*/
|
|
353
|
+
subCategory?: AXPDefinitionCategory;
|
|
354
|
+
/**
|
|
355
|
+
* Which surfaces may offer this widget. The designer widget picker includes a widget only when this list
|
|
356
|
+
* intersects the requested groups (e.g. the layout designer requests `AXPWidgetGroupEnum.FormElement`).
|
|
357
|
+
* Use `AXPWidgetGroupEnum.BaseWidget` alone for types that must stay registered (filters, renderers, AI tools)
|
|
358
|
+
* but must not appear in form or dashboard pickers.
|
|
359
|
+
*/
|
|
299
360
|
groups?: AXPWidgetGroup[];
|
|
300
361
|
properties?: AXPWidgetProperty[];
|
|
301
362
|
components: AXPWidgetConfigComponents;
|
|
@@ -304,8 +365,15 @@ interface AXPWidgetConfig<T = any> {
|
|
|
304
365
|
designer?: AXPExtractWidgetConfig<T>['designer'];
|
|
305
366
|
options?: Record<string, any>;
|
|
306
367
|
defaultFilterWidgetName?: 'string-filter' | 'number-filter' | 'datetime-filter' | 'boolean-filter' | 'select-filter' | 'lookup-filter' | 'time-duration-filter' | string;
|
|
368
|
+
/**
|
|
369
|
+
* Optional layout for Change History. When set, this AXPWidgetNode is rendered for
|
|
370
|
+
* changes of this widget type instead of the default fieldKey/actionKey text.
|
|
371
|
+
* Context passed to renderer: the AXPActivityLogChange object.
|
|
372
|
+
* If omitted, the default display is used.
|
|
373
|
+
*/
|
|
374
|
+
historyLayout?: AXPWidgetNode;
|
|
307
375
|
}
|
|
308
|
-
interface
|
|
376
|
+
interface AXPExtendedWidget {
|
|
309
377
|
widget: AXPWidgetConfig;
|
|
310
378
|
parentName: string;
|
|
311
379
|
}
|
|
@@ -314,102 +382,6 @@ interface AXPLayoutBuilderStatusChangedEvent {
|
|
|
314
382
|
status: AXPPageStatus;
|
|
315
383
|
}
|
|
316
384
|
|
|
317
|
-
type AXPWidgetCoreContextState = 'initiated' | 'restored' | 'changed' | 'patch';
|
|
318
|
-
declare class AXPWidgetCoreContextChangeEvent {
|
|
319
|
-
oldValue?: any;
|
|
320
|
-
newValue?: any;
|
|
321
|
-
path?: string;
|
|
322
|
-
state: AXPWidgetCoreContextState;
|
|
323
|
-
data: any;
|
|
324
|
-
}
|
|
325
|
-
declare const AXPWidgetCoreContextStore: _angular_core.Type<{
|
|
326
|
-
data: _angular_core.Signal<{}>;
|
|
327
|
-
state: _angular_core.Signal<AXPWidgetCoreContextState>;
|
|
328
|
-
initialSnapshot: _angular_core.Signal<{}>;
|
|
329
|
-
previousSnapshot: _angular_core.Signal<{}>;
|
|
330
|
-
lastChange: _ngrx_signals.DeepSignal<AXPWidgetCoreContextChangeEvent>;
|
|
331
|
-
isChanged: _angular_core.Signal<boolean>;
|
|
332
|
-
isReset: _angular_core.Signal<boolean>;
|
|
333
|
-
isInitiated: _angular_core.Signal<boolean>;
|
|
334
|
-
isEmpty: _angular_core.Signal<boolean>;
|
|
335
|
-
isDirty: _angular_core.Signal<boolean>;
|
|
336
|
-
snapshot: _angular_core.Signal<{}>;
|
|
337
|
-
initial: _angular_core.Signal<{}>;
|
|
338
|
-
previous: _angular_core.Signal<{}>;
|
|
339
|
-
changeEvent: _angular_core.Signal<AXPWidgetCoreContextChangeEvent>;
|
|
340
|
-
update: (path: string, value: any) => void;
|
|
341
|
-
patch: (context: {}, skipDirtyTracking?: boolean) => void;
|
|
342
|
-
reset: () => void;
|
|
343
|
-
set: (initialData: any) => void;
|
|
344
|
-
getValue: (path: string) => any;
|
|
345
|
-
hasValue: (path: string) => boolean;
|
|
346
|
-
} & _ngrx_signals.StateSource<{
|
|
347
|
-
data: {};
|
|
348
|
-
state: AXPWidgetCoreContextState;
|
|
349
|
-
initialSnapshot: {};
|
|
350
|
-
previousSnapshot: {};
|
|
351
|
-
lastChange: AXPWidgetCoreContextChangeEvent;
|
|
352
|
-
}>>;
|
|
353
|
-
|
|
354
|
-
type AXPWidgetCoreElementAPI = {
|
|
355
|
-
[name: string]: Subject<any> | Function;
|
|
356
|
-
};
|
|
357
|
-
type AXPWidgetCoreElementAction = {
|
|
358
|
-
title: string;
|
|
359
|
-
command: string;
|
|
360
|
-
icon?: string;
|
|
361
|
-
color?: string;
|
|
362
|
-
disabled?: boolean | string;
|
|
363
|
-
hidden?: boolean | string;
|
|
364
|
-
zone?: 'header' | 'footer';
|
|
365
|
-
placement?: 'prefix' | 'suffix';
|
|
366
|
-
scope?: 'primary' | 'secondary';
|
|
367
|
-
};
|
|
368
|
-
declare abstract class AXPWidgetCoreElement {
|
|
369
|
-
abstract get id(): string | null;
|
|
370
|
-
abstract get status(): Signal<AXPWidgetStatus>;
|
|
371
|
-
api(): AXPWidgetCoreElementAPI;
|
|
372
|
-
actions(): AXPWidgetCoreElementAction[];
|
|
373
|
-
}
|
|
374
|
-
declare class AXPWidgetCoreService {
|
|
375
|
-
private readonly variables$;
|
|
376
|
-
private readonly functions$;
|
|
377
|
-
readonly onRefresh: Subject<void>;
|
|
378
|
-
private widgets;
|
|
379
|
-
private readonly onWidgetRegistered;
|
|
380
|
-
private readonly status$;
|
|
381
|
-
readonly status: Signal<AXPPageStatus>;
|
|
382
|
-
readonly isBusy: Signal<boolean>;
|
|
383
|
-
registeredWidgetsCount: _angular_core.WritableSignal<number>;
|
|
384
|
-
get variables(): any;
|
|
385
|
-
get functions(): {
|
|
386
|
-
[key: string]: Function;
|
|
387
|
-
};
|
|
388
|
-
updateStatus(): void;
|
|
389
|
-
private detectStatus;
|
|
390
|
-
refresh(): void;
|
|
391
|
-
setStatus(status: AXPPageStatus): void;
|
|
392
|
-
setVariables(keysValues: any): void;
|
|
393
|
-
setVariables(key: string, value: any): void;
|
|
394
|
-
setFunctions(keysValues: any): void;
|
|
395
|
-
setFunctions(key: string, value: any): void;
|
|
396
|
-
registerWidget(id: string, widget: AXPWidgetCoreElement): void;
|
|
397
|
-
getWidget(id: string): AXPWidgetCoreElement | undefined;
|
|
398
|
-
/**
|
|
399
|
-
* Waits until a widget with the given id is registered, then resolves with it.
|
|
400
|
-
* If the widget is already registered, resolves immediately.
|
|
401
|
-
* Optionally accepts a timeout (in ms) after which it resolves with undefined.
|
|
402
|
-
*/
|
|
403
|
-
waitForWidget(id: string, timeoutMs?: number): Promise<AXPWidgetCoreElement | undefined>;
|
|
404
|
-
/**
|
|
405
|
-
* Returns a list of registered widget ids (names).
|
|
406
|
-
*/
|
|
407
|
-
listRegisteredWidgetNames(): string[];
|
|
408
|
-
ngOnDestroy(): void;
|
|
409
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetCoreService, never>;
|
|
410
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetCoreService>;
|
|
411
|
-
}
|
|
412
|
-
|
|
413
385
|
type AXPClassMap = Readonly<Record<string, boolean>>;
|
|
414
386
|
type AXPStyleMap = Readonly<Record<string, string | number>>;
|
|
415
387
|
declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, unknown> = AXPOptionsData> extends AXPWidgetCoreElement {
|
|
@@ -418,34 +390,34 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
418
390
|
readonly host: HTMLDivElement;
|
|
419
391
|
protected readonly layoutService: AXPWidgetCoreService;
|
|
420
392
|
protected readonly contextService: {
|
|
421
|
-
data: _angular_core.Signal<
|
|
422
|
-
state: _angular_core.Signal<
|
|
393
|
+
data: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
394
|
+
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
423
395
|
initialSnapshot: _angular_core.Signal<{}>;
|
|
424
396
|
previousSnapshot: _angular_core.Signal<{}>;
|
|
425
|
-
lastChange: _ngrx_signals.DeepSignal<
|
|
397
|
+
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
426
398
|
isChanged: _angular_core.Signal<boolean>;
|
|
427
399
|
isReset: _angular_core.Signal<boolean>;
|
|
428
400
|
isInitiated: _angular_core.Signal<boolean>;
|
|
429
401
|
isEmpty: _angular_core.Signal<boolean>;
|
|
430
402
|
isDirty: _angular_core.Signal<boolean>;
|
|
431
|
-
snapshot: _angular_core.Signal<
|
|
403
|
+
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
432
404
|
initial: _angular_core.Signal<{}>;
|
|
433
405
|
previous: _angular_core.Signal<{}>;
|
|
434
|
-
changeEvent: _angular_core.Signal<
|
|
406
|
+
changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
435
407
|
update: (path: string, value: any) => void;
|
|
436
|
-
patch: (context:
|
|
408
|
+
patch: (context: Record<string, any>, skipDirtyTracking?: boolean) => void;
|
|
437
409
|
reset: () => void;
|
|
438
410
|
set: (initialData: any) => void;
|
|
439
411
|
getValue: (path: string) => any;
|
|
440
412
|
hasValue: (path: string) => boolean;
|
|
441
413
|
} & _ngrx_signals.StateSource<{
|
|
442
|
-
data:
|
|
443
|
-
state:
|
|
414
|
+
data: _acorex_platform_core.AXPContextData;
|
|
415
|
+
state: _acorex_platform_core.AXPContextState;
|
|
444
416
|
initialSnapshot: {};
|
|
445
417
|
previousSnapshot: {};
|
|
446
|
-
lastChange:
|
|
418
|
+
lastChange: _acorex_platform_core.AXPContextChangeEvent;
|
|
447
419
|
}>;
|
|
448
|
-
readonly config: AXPWidgetConfig<any>;
|
|
420
|
+
readonly config: _acorex_platform_layout_widget_core.AXPWidgetConfig<any>;
|
|
449
421
|
readonly node: AXPWidgetNode;
|
|
450
422
|
protected readonly name: string | undefined;
|
|
451
423
|
protected component: this;
|
|
@@ -530,6 +502,8 @@ declare abstract class AXPColumnWidgetComponent<T = any | null | void> {
|
|
|
530
502
|
private readonly token;
|
|
531
503
|
protected readonly path: string;
|
|
532
504
|
protected readonly options: Record<string, any>;
|
|
505
|
+
/** Column header caption when rendered inside `axp-widget-column-renderer`. */
|
|
506
|
+
protected readonly columnCaption: string | undefined;
|
|
533
507
|
protected readonly rawValue: T;
|
|
534
508
|
protected readonly rowData: any;
|
|
535
509
|
protected readonly nullText: any;
|
|
@@ -556,6 +530,33 @@ declare abstract class AXPBlockBaseLayoutWidgetComponent extends AXPBoxModelLayo
|
|
|
556
530
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPBlockBaseLayoutWidgetComponent>;
|
|
557
531
|
}
|
|
558
532
|
|
|
533
|
+
/**
|
|
534
|
+
* Maps a platform {@link AXPProperty} to a property viewer row model ({@link AXPWidgetProperty}).
|
|
535
|
+
* Kept in widget-core (not platform/core) to avoid a dependency cycle: widget-core already depends on platform/core.
|
|
536
|
+
*/
|
|
537
|
+
interface MapAXPPropertyToWidgetPropertyOptions {
|
|
538
|
+
group: AXPWidgetPropertyGroup;
|
|
539
|
+
order: number;
|
|
540
|
+
/**
|
|
541
|
+
* Dot path prefix for {@link AXPWidgetProperty.schema.interface.path}.
|
|
542
|
+
* Example: `input` → `input.requestId`; `properties` → `properties.message`.
|
|
543
|
+
*/
|
|
544
|
+
valuePathPrefix: string;
|
|
545
|
+
/**
|
|
546
|
+
* Resolves a display title (supports multi-language strings on the source property).
|
|
547
|
+
*/
|
|
548
|
+
resolveTitle: (property: AXPProperty) => string;
|
|
549
|
+
/**
|
|
550
|
+
* Optional description line for the viewer row.
|
|
551
|
+
*/
|
|
552
|
+
resolveDescription?: (property: AXPProperty) => string | undefined;
|
|
553
|
+
}
|
|
554
|
+
/**
|
|
555
|
+
* Converts a domain {@link AXPProperty} into a {@link AXPWidgetProperty} row for
|
|
556
|
+
* the layout property viewer (`AXPPropertyViewerService` and `buildPropertyViewerTabsFromProperties`).
|
|
557
|
+
*/
|
|
558
|
+
declare function mapAXPPropertyToWidgetProperty(property: AXPProperty, options: MapAXPPropertyToWidgetPropertyOptions): AXPWidgetProperty;
|
|
559
|
+
|
|
559
560
|
type AXPPropertyEditorSideValues = 'top' | 'left' | 'bottom' | 'right';
|
|
560
561
|
type AXPPropertyEditorCornerValues = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
561
562
|
type AXPPropertyEditorSideGeneric<T extends string, U extends string | number = string> = Record<T, U>;
|
|
@@ -770,56 +771,83 @@ declare abstract class AXPTableItemBaseLayoutWidgetComponent extends AXPTableIte
|
|
|
770
771
|
|
|
771
772
|
declare class AXPWidgetContainerComponent {
|
|
772
773
|
readonly contextService: {
|
|
773
|
-
data: _angular_core.Signal<
|
|
774
|
-
state: _angular_core.Signal<
|
|
774
|
+
data: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
775
|
+
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
775
776
|
initialSnapshot: _angular_core.Signal<{}>;
|
|
776
777
|
previousSnapshot: _angular_core.Signal<{}>;
|
|
777
|
-
lastChange: _ngrx_signals.DeepSignal<
|
|
778
|
+
lastChange: _ngrx_signals.DeepSignal<AXPContextChangeEvent>;
|
|
778
779
|
isChanged: _angular_core.Signal<boolean>;
|
|
779
780
|
isReset: _angular_core.Signal<boolean>;
|
|
780
781
|
isInitiated: _angular_core.Signal<boolean>;
|
|
781
782
|
isEmpty: _angular_core.Signal<boolean>;
|
|
782
783
|
isDirty: _angular_core.Signal<boolean>;
|
|
783
|
-
snapshot: _angular_core.Signal<
|
|
784
|
+
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
784
785
|
initial: _angular_core.Signal<{}>;
|
|
785
786
|
previous: _angular_core.Signal<{}>;
|
|
786
|
-
changeEvent: _angular_core.Signal<
|
|
787
|
+
changeEvent: _angular_core.Signal<AXPContextChangeEvent>;
|
|
787
788
|
update: (path: string, value: any) => void;
|
|
788
|
-
patch: (context:
|
|
789
|
+
patch: (context: Record<string, any>, skipDirtyTracking?: boolean) => void;
|
|
789
790
|
reset: () => void;
|
|
790
791
|
set: (initialData: any) => void;
|
|
791
792
|
getValue: (path: string) => any;
|
|
792
793
|
hasValue: (path: string) => boolean;
|
|
793
794
|
} & _ngrx_signals.StateSource<{
|
|
794
|
-
data:
|
|
795
|
-
state:
|
|
795
|
+
data: _acorex_platform_core.AXPContextData;
|
|
796
|
+
state: _acorex_platform_core.AXPContextState;
|
|
796
797
|
initialSnapshot: {};
|
|
797
798
|
previousSnapshot: {};
|
|
798
|
-
lastChange:
|
|
799
|
+
lastChange: AXPContextChangeEvent;
|
|
799
800
|
}>;
|
|
800
801
|
readonly builderService: AXPWidgetCoreService;
|
|
801
|
-
readonly onContextChanged: EventEmitter<
|
|
802
|
+
readonly onContextChanged: EventEmitter<AXPContextChangeEvent>;
|
|
802
803
|
set context(value: any);
|
|
803
804
|
set functions(v: any);
|
|
804
805
|
constructor();
|
|
805
806
|
status: _angular_core.Signal<_acorex_platform_layout_widget_core.AXPPageStatus>;
|
|
806
807
|
isBusy: _angular_core.Signal<boolean>;
|
|
807
808
|
refresh(): void;
|
|
808
|
-
find(name: string): Promise<AXPWidgetCoreElement | undefined>;
|
|
809
|
+
find(name: string): Promise<_acorex_platform_layout_widget_core.AXPWidgetCoreElement | undefined>;
|
|
809
810
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetContainerComponent, never>;
|
|
810
811
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetContainerComponent, "axp-widgets-container", never, { "context": { "alias": "context"; "required": false; }; "functions": { "alias": "functions"; "required": false; }; }, { "onContextChanged": "onContextChanged"; }, never, ["*"], false, never>;
|
|
811
812
|
}
|
|
812
813
|
|
|
814
|
+
/**
|
|
815
|
+
* Provider interface for widget definitions.
|
|
816
|
+
* Implement this interface and register via AXP_WIDGET_DEFINITION_PROVIDER to contribute widgets.
|
|
817
|
+
*/
|
|
818
|
+
interface AXPWidgetDefinitionProvider {
|
|
819
|
+
getWidgets(): AXPWidgetConfig[];
|
|
820
|
+
getExtendedWidgets?(): AXPExtendedWidget[];
|
|
821
|
+
}
|
|
822
|
+
/**
|
|
823
|
+
* Injection token for widget definition providers.
|
|
824
|
+
* Modules register their widget providers using this token (multi: true).
|
|
825
|
+
*/
|
|
826
|
+
declare const AXP_WIDGET_DEFINITION_PROVIDER: InjectionToken<AXPWidgetDefinitionProvider[]>;
|
|
827
|
+
|
|
828
|
+
/**
|
|
829
|
+
* Merges core + extended widgets the same way as AXPWidgetRegistryService.ensureBuilt().
|
|
830
|
+
* Use with concrete providers (e.g. AXPCoreWidgetsProvider, AXPEntityWidgetsProvider) in Node scripts without DI.
|
|
831
|
+
*/
|
|
832
|
+
declare function buildWidgetRegistryMapFromProviders(providers: AXPWidgetDefinitionProvider[]): Map<string, AXPWidgetConfig>;
|
|
833
|
+
/**
|
|
834
|
+
* Aggregates widgets from all AXP_WIDGET_DEFINITION_PROVIDER instances.
|
|
835
|
+
* Token-based like AXP_MENU_PROVIDER / AXP_PERMISSION_DEFINITION_PROVIDER / AXP_SETTING_DEFINITION_PROVIDER.
|
|
836
|
+
* No separate registry - widgets come solely from providers.
|
|
837
|
+
*/
|
|
813
838
|
declare class AXPWidgetRegistryService {
|
|
814
|
-
private
|
|
815
|
-
|
|
839
|
+
private readonly _providers;
|
|
840
|
+
private _types;
|
|
816
841
|
/**
|
|
817
|
-
*
|
|
842
|
+
* Lazy-build widget map from all providers.
|
|
818
843
|
*/
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
844
|
+
private ensureBuilt;
|
|
845
|
+
resolve(name: string): AXPWidgetConfig;
|
|
846
|
+
/**
|
|
847
|
+
* Registered widget config when present; otherwise `undefined`. Does not throw — use when
|
|
848
|
+
* {@link resolve}'s value may be a non-widget id (e.g. data-source row id in dynamic field configurator).
|
|
849
|
+
*/
|
|
850
|
+
getOptional(name: string): AXPWidgetConfig | undefined;
|
|
823
851
|
all(): AXPWidgetConfig[];
|
|
824
852
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetRegistryService, never>;
|
|
825
853
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPWidgetRegistryService>;
|
|
@@ -908,7 +936,7 @@ type AXPWidgetRendererDirectiveOptions = AXPMetaData;
|
|
|
908
936
|
declare class AXPWidgetRendererDirective {
|
|
909
937
|
parentNode: _angular_core.InputSignal<AXPLayoutBaseWidgetComponent<Record<string, any>> | null | undefined>;
|
|
910
938
|
index: _angular_core.InputSignal<number | null | undefined>;
|
|
911
|
-
mode: _angular_core.InputSignal<keyof AXPWidgetConfigComponents>;
|
|
939
|
+
mode: _angular_core.InputSignal<keyof _acorex_platform_layout_widget_core.AXPWidgetConfigComponents>;
|
|
912
940
|
node: _angular_core.InputSignal<AXPWidgetNode>;
|
|
913
941
|
private _options;
|
|
914
942
|
options: _angular_core.Signal<AXPMetaData>;
|
|
@@ -933,32 +961,32 @@ declare class AXPWidgetRendererDirective {
|
|
|
933
961
|
private injector;
|
|
934
962
|
protected builderService: AXPWidgetCoreService;
|
|
935
963
|
protected contextService: {
|
|
936
|
-
data: _angular_core.Signal<
|
|
937
|
-
state: _angular_core.Signal<
|
|
964
|
+
data: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
965
|
+
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
938
966
|
initialSnapshot: _angular_core.Signal<{}>;
|
|
939
967
|
previousSnapshot: _angular_core.Signal<{}>;
|
|
940
|
-
lastChange: _ngrx_signals.DeepSignal<
|
|
968
|
+
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
941
969
|
isChanged: _angular_core.Signal<boolean>;
|
|
942
970
|
isReset: _angular_core.Signal<boolean>;
|
|
943
971
|
isInitiated: _angular_core.Signal<boolean>;
|
|
944
972
|
isEmpty: _angular_core.Signal<boolean>;
|
|
945
973
|
isDirty: _angular_core.Signal<boolean>;
|
|
946
|
-
snapshot: _angular_core.Signal<
|
|
974
|
+
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
947
975
|
initial: _angular_core.Signal<{}>;
|
|
948
976
|
previous: _angular_core.Signal<{}>;
|
|
949
|
-
changeEvent: _angular_core.Signal<
|
|
977
|
+
changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
950
978
|
update: (path: string, value: any) => void;
|
|
951
|
-
patch: (context:
|
|
979
|
+
patch: (context: Record<string, any>, skipDirtyTracking?: boolean) => void;
|
|
952
980
|
reset: () => void;
|
|
953
981
|
set: (initialData: any) => void;
|
|
954
982
|
getValue: (path: string) => any;
|
|
955
983
|
hasValue: (path: string) => boolean;
|
|
956
984
|
} & _ngrx_signals.StateSource<{
|
|
957
|
-
data:
|
|
958
|
-
state:
|
|
985
|
+
data: _acorex_platform_core.AXPContextData;
|
|
986
|
+
state: _acorex_platform_core.AXPContextState;
|
|
959
987
|
initialSnapshot: {};
|
|
960
988
|
previousSnapshot: {};
|
|
961
|
-
lastChange:
|
|
989
|
+
lastChange: _acorex_platform_core.AXPContextChangeEvent;
|
|
962
990
|
}>;
|
|
963
991
|
protected widgetRegistery: AXPWidgetRegistryService;
|
|
964
992
|
protected unsubscriber: AXUnsubscriber;
|
|
@@ -991,6 +1019,15 @@ declare class AXPWidgetRendererDirective {
|
|
|
991
1019
|
private queueContextUpdate;
|
|
992
1020
|
private processBatchedUpdates;
|
|
993
1021
|
private isRelevantContextChange;
|
|
1022
|
+
/**
|
|
1023
|
+
* True when a context store path used in an expression (`context.eval`, `context.options`) is
|
|
1024
|
+
* affected by `changedPath`.
|
|
1025
|
+
*/
|
|
1026
|
+
private contextStorePathDependsOnChangedPath;
|
|
1027
|
+
/**
|
|
1028
|
+
* Whether an expression template string reads context store paths affected by `changedPath`.
|
|
1029
|
+
*/
|
|
1030
|
+
private expressionTextDependsOnContextPath;
|
|
994
1031
|
private hasExpressionDependency;
|
|
995
1032
|
private isPathAlias;
|
|
996
1033
|
private getExpressionValueFromNode;
|
|
@@ -1023,28 +1060,68 @@ declare class AXPWidgetRendererDirective {
|
|
|
1023
1060
|
|
|
1024
1061
|
interface AXPWidgetCoreModuleConfigs {
|
|
1025
1062
|
widgets?: AXPWidgetConfig[];
|
|
1026
|
-
|
|
1063
|
+
AXPExtendedWidgets?: AXPExtendedWidget[];
|
|
1027
1064
|
}
|
|
1028
1065
|
declare class AXPWidgetCoreModule {
|
|
1029
|
-
static
|
|
1030
|
-
static
|
|
1031
|
-
/**
|
|
1032
|
-
* @ignore
|
|
1033
|
-
*/
|
|
1034
|
-
constructor(instances: any[]);
|
|
1035
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetCoreModule, [{ optional: true; }]>;
|
|
1036
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPWidgetCoreModule, [typeof AXPWidgetContainerComponent, typeof AXPWidgetColumnRendererComponent, typeof AXPWidgetRendererDirective], [typeof i4.CommonModule, typeof i5.PortalModule, typeof i6.AXSkeletonModule, typeof i4.CommonModule, typeof i7.AXTranslationModule], [typeof AXPWidgetContainerComponent, typeof AXPWidgetColumnRendererComponent, typeof AXPWidgetRendererDirective]>;
|
|
1066
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetCoreModule, never>;
|
|
1067
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPWidgetCoreModule, [typeof AXPWidgetContainerComponent, typeof AXPWidgetColumnRendererComponent, typeof AXPWidgetRendererDirective], [typeof i4.CommonModule, typeof i5.PortalModule, typeof i6.AXSkeletonModule, typeof i7.AXTranslationModule], [typeof AXPWidgetContainerComponent, typeof AXPWidgetColumnRendererComponent, typeof AXPWidgetRendererDirective]>;
|
|
1037
1068
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPWidgetCoreModule>;
|
|
1038
1069
|
}
|
|
1039
1070
|
|
|
1071
|
+
interface AXPMetaDataFeatures {
|
|
1072
|
+
searchable?: {
|
|
1073
|
+
enabled: boolean;
|
|
1074
|
+
fullText: boolean;
|
|
1075
|
+
};
|
|
1076
|
+
filterable?: {
|
|
1077
|
+
enabled: boolean;
|
|
1078
|
+
inline: boolean;
|
|
1079
|
+
};
|
|
1080
|
+
sortable?: {
|
|
1081
|
+
enabled: boolean;
|
|
1082
|
+
};
|
|
1083
|
+
auditable?: {
|
|
1084
|
+
enabled: boolean;
|
|
1085
|
+
};
|
|
1086
|
+
}
|
|
1040
1087
|
interface AXPMetaDataDefinition {
|
|
1041
1088
|
name: string;
|
|
1042
1089
|
title: string;
|
|
1043
1090
|
defaultValue?: any;
|
|
1044
1091
|
interface: string | AXPWidgetNode | (() => Promise<AXPWidgetNode>);
|
|
1092
|
+
features?: AXPMetaDataFeatures;
|
|
1045
1093
|
}
|
|
1046
1094
|
|
|
1047
1095
|
declare const AXPWidgetsCatalog: AXPWidgetTypesMap;
|
|
1048
1096
|
|
|
1049
|
-
|
|
1050
|
-
|
|
1097
|
+
declare const AXP_WIDGETS_EDITOR_SUB_TEXT_INPUTS: AXPDefinitionCategory;
|
|
1098
|
+
declare const AXP_WIDGETS_EDITOR_SUB_NUMERIC: AXPDefinitionCategory;
|
|
1099
|
+
declare const AXP_WIDGETS_EDITOR_SUB_DATETIME: AXPDefinitionCategory;
|
|
1100
|
+
declare const AXP_WIDGETS_EDITOR_SUB_CHOICE: AXPDefinitionCategory;
|
|
1101
|
+
declare const AXP_WIDGETS_EDITOR_SUB_RICH: AXPDefinitionCategory;
|
|
1102
|
+
declare const AXP_WIDGETS_EDITOR_SUB_VISUAL: AXPDefinitionCategory;
|
|
1103
|
+
declare const AXP_WIDGETS_EDITOR_SUB_COMPOSITE: AXPDefinitionCategory;
|
|
1104
|
+
declare const AXP_WIDGETS_EDITOR_SUB_CONFIG: AXPDefinitionCategory;
|
|
1105
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_SHELL: AXPDefinitionCategory;
|
|
1106
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_GRID: AXPDefinitionCategory;
|
|
1107
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_SURFACES: AXPDefinitionCategory;
|
|
1108
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_TABS: AXPDefinitionCategory;
|
|
1109
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_LISTS: AXPDefinitionCategory;
|
|
1110
|
+
declare const AXP_WIDGETS_LAYOUT_SUB_UTILITY: AXPDefinitionCategory;
|
|
1111
|
+
declare const AXP_WIDGETS_ACTION_SUB_CONTROLS: AXPDefinitionCategory;
|
|
1112
|
+
declare const AXP_WIDGETS_ADVANCE_SUB_MEDIA: AXPDefinitionCategory;
|
|
1113
|
+
declare const AXP_WIDGETS_ADVANCE_SUB_INPUT: AXPDefinitionCategory;
|
|
1114
|
+
declare const AXP_WIDGETS_ADVANCE_SUB_DATA: AXPDefinitionCategory;
|
|
1115
|
+
declare const AXP_WIDGETS_ADVANCE_SUB_TOOLS: AXPDefinitionCategory;
|
|
1116
|
+
/** Normalizes widget categories to an array for iteration and serialization. */
|
|
1117
|
+
declare function normalizeWidgetCategories(categories?: AXPDefinitionCategory | AXPDefinitionCategory[]): AXPDefinitionCategory[];
|
|
1118
|
+
declare const AXP_WIDGETS_LAYOUT_CATEGORY: AXPDefinitionCategory;
|
|
1119
|
+
declare const AXP_WIDGETS_EDITOR_CATEGORY: AXPDefinitionCategory;
|
|
1120
|
+
declare const AXP_WIDGETS_ACTION_CATEGORY: AXPDefinitionCategory;
|
|
1121
|
+
declare const AXP_WIDGETS_ADVANCE_CATEGORY: AXPDefinitionCategory;
|
|
1122
|
+
/** AI category tab in the widget picker (metadata); unrelated to Widgets:GetForAI listing scope. */
|
|
1123
|
+
declare const AXP_WIDGETS_AI_CATEGORY: AXPDefinitionCategory;
|
|
1124
|
+
declare const AXP_WIDGETS_CATEGORIES: AXPDefinitionCategory[];
|
|
1125
|
+
|
|
1126
|
+
export { AXPBaseWidgetComponent, AXPBlockBaseLayoutWidgetComponent, AXPBoxModelLayoutWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBaseLayoutWidgetComponent, AXPGridItemBaseLayoutWidgetComponent, AXPInlineBaseLayoutWidgetComponent, AXPLayoutBaseWidgetComponent, AXPPageStatus, AXPPropertyEditorHelper, AXPTableBaseLayoutWidgetComponent, AXPTableItemBaseLayoutWidgetComponent, AXPTableItemOpsBaseLayoutWidgetComponent, AXPValueWidgetComponent, AXPWidgetColumnRendererComponent, AXPWidgetContainerComponent, AXPWidgetCoreElement, AXPWidgetCoreModule, AXPWidgetCoreService, AXPWidgetGroupEnum, AXPWidgetRegistryService, AXPWidgetRendererDirective, AXPWidgetSerializationHelper, AXPWidgetStatus, AXPWidgetsCatalog, AXP_WIDGETS_ACTION_CATEGORY, AXP_WIDGETS_ACTION_SUB_CONTROLS, AXP_WIDGETS_ADVANCE_CATEGORY, AXP_WIDGETS_ADVANCE_SUB_DATA, AXP_WIDGETS_ADVANCE_SUB_INPUT, AXP_WIDGETS_ADVANCE_SUB_MEDIA, AXP_WIDGETS_ADVANCE_SUB_TOOLS, AXP_WIDGETS_AI_CATEGORY, AXP_WIDGETS_CATEGORIES, AXP_WIDGETS_EDITOR_CATEGORY, AXP_WIDGETS_EDITOR_SUB_CHOICE, AXP_WIDGETS_EDITOR_SUB_COMPOSITE, AXP_WIDGETS_EDITOR_SUB_CONFIG, AXP_WIDGETS_EDITOR_SUB_DATETIME, AXP_WIDGETS_EDITOR_SUB_NUMERIC, AXP_WIDGETS_EDITOR_SUB_RICH, AXP_WIDGETS_EDITOR_SUB_TEXT_INPUTS, AXP_WIDGETS_EDITOR_SUB_VISUAL, AXP_WIDGETS_LAYOUT_CATEGORY, AXP_WIDGETS_LAYOUT_SUB_GRID, AXP_WIDGETS_LAYOUT_SUB_LISTS, AXP_WIDGETS_LAYOUT_SUB_SHELL, AXP_WIDGETS_LAYOUT_SUB_SURFACES, AXP_WIDGETS_LAYOUT_SUB_TABS, AXP_WIDGETS_LAYOUT_SUB_UTILITY, AXP_WIDGET_COLUMN_TOKEN, AXP_WIDGET_DEFINITION_PROVIDER, AXP_WIDGET_TOKEN, buildWidgetRegistryMapFromProviders, cloneProperty, createBooleanProperty, createNumberProperty, createSelectProperty, createStringProperty, findNonEmptyBreakpoints, mapAXPPropertyToWidgetProperty, normalizeWidgetCategories };
|
|
1127
|
+
export type { AXPBorderBox, AXPBorderBoxString, AXPBreakpointValues, AXPBreakpoints, AXPClassMap, AXPExtendedWidget, AXPExtractWidgetConfig, AXPFlexBoxString, AXPFlexItemBoxString, AXPGridBoxString, AXPGridBreakpointValues, AXPGridItemBoxString, AXPLayoutBuilderStatusChangedEvent, AXPMetaDataDefinition, AXPMetaDataFeatures, AXPPropertyCorners, AXPPropertyEditorCornerValues, AXPPropertyEditorSideGeneric, AXPPropertyEditorSideValues, AXPPropertySides, AXPSpacingBox, AXPSpacingBoxString, AXPStyleMap, AXPWidgetColumnNode, AXPWidgetColumnNodeToken, AXPWidgetComponentConfig, AXPWidgetConfig, AXPWidgetConfigComponents, AXPWidgetCoreElementAPI, AXPWidgetCoreElementAction, AXPWidgetCoreModuleConfigs, AXPWidgetDefinitionProvider, AXPWidgetDesignerOptionsMap, AXPWidgetGroup, AXPWidgetNode, AXPWidgetNodeToken, AXPWidgetProperty, AXPWidgetPropertyGroup, AXPWidgetRenderMode, AXPWidgetRendererDirectiveOptions, AXPWidgetTypesMap, AXPWidgetViewType, MapAXPPropertyToWidgetPropertyOptions };
|