@acorex/platform 21.0.0-next.85 → 21.0.0-next.89
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 +9 -3
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-Ytey9uhY.mjs → acorex-platform-common-common-settings.provider-DilV4dql.mjs} +16 -3
- package/fesm2022/acorex-platform-common-common-settings.provider-DilV4dql.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +3426 -2488
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-contracts.mjs +1160 -9
- package/fesm2022/acorex-platform-contracts.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +826 -152
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain-contracts.mjs +58 -0
- package/fesm2022/acorex-platform-domain-contracts.mjs.map +1 -0
- package/fesm2022/acorex-platform-domain.mjs +2 -50
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +98 -189
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-RttFwaw9.mjs} +17 -4
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-RttFwaw9.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +181 -46
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +7 -6
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity-contracts.mjs +1208 -0
- package/fesm2022/acorex-platform-layout-entity-contracts.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +1080 -889
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +1150 -247
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +388 -207
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs +513 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs} +4 -4
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-XWRUVoL4.mjs} +2 -2
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs.map → acorex-platform-layout-widgets-tabular-data-view-popup.component-XWRUVoL4.mjs.map} +1 -1
- package/fesm2022/acorex-platform-layout-widgets.mjs +1541 -394
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs → acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs} +2 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +956 -115
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs → acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs} +50 -3
- package/fesm2022/acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +104 -24
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +6 -8
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/package.json +9 -5
- package/types/acorex-platform-auth.d.ts +3 -1
- package/types/acorex-platform-common.d.ts +655 -1268
- package/types/acorex-platform-contracts.d.ts +1791 -260
- package/types/acorex-platform-core.d.ts +2302 -2800
- package/types/acorex-platform-domain-contracts.d.ts +416 -0
- package/types/acorex-platform-domain.d.ts +4 -415
- package/types/acorex-platform-layout-builder.d.ts +11 -20
- package/types/acorex-platform-layout-components.d.ts +29 -5
- package/types/acorex-platform-layout-designer.d.ts +2 -1
- package/types/acorex-platform-layout-entity-contracts.d.ts +889 -0
- package/types/acorex-platform-layout-entity.d.ts +143 -275
- package/types/acorex-platform-layout-views.d.ts +147 -31
- package/types/acorex-platform-layout-widget-core.d.ts +74 -14
- package/types/acorex-platform-layout-widgets.d.ts +136 -38
- package/types/acorex-platform-runtime.d.ts +1 -1
- package/types/acorex-platform-themes-default.d.ts +227 -73
- package/types/acorex-platform-themes-shared.d.ts +4 -0
- package/types/acorex-platform-workflow.d.ts +5 -18
- package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +0 -116
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs.map +0 -1
- package/fesm2022/acorex-platform-native.mjs +0 -155
- package/fesm2022/acorex-platform-native.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map +0 -1
- package/native/README.md +0 -4
- package/types/acorex-platform-native.d.ts +0 -28
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { Signal, InjectionToken,
|
|
2
|
+
import { Signal, InjectionToken, OnInit, ComponentRef, EventEmitter, OnChanges, TemplateRef, Injector, WritableSignal, SimpleChanges, Type } from '@angular/core';
|
|
3
3
|
import * as _acorex_platform_layout_widget_core from '@acorex/platform/layout/widget-core';
|
|
4
4
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
5
5
|
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
6
|
-
import {
|
|
7
|
-
export { AXPDefinitionCategory, normalizeDefinitionCategories } from '@acorex/platform/core';
|
|
6
|
+
import { AXPContextChangeEvent, AXPExpressionEvaluatorService } from '@acorex/platform/core';
|
|
8
7
|
import { AXValueChangedEvent, AXDataSource } from '@acorex/cdk/common';
|
|
8
|
+
import { AXPOptionsData, AXPMultiLanguageString, AXPDefinitionCategory, AXPDataType, AXPExpression, AXPWidgetTriggers, AXPMetaData, AXPValueTransformerFunctions, AXPValidationRules, AXPPartialNested, AXPProperty } from '@acorex/platform/contracts';
|
|
9
9
|
import { Subject, BehaviorSubject } from 'rxjs';
|
|
10
10
|
import { AXDataTableColumnComponent } from '@acorex/components/data-table';
|
|
11
11
|
import * as i7 from '@acorex/core/translation';
|
|
@@ -18,18 +18,17 @@ import * as i6 from '@acorex/components/skeleton';
|
|
|
18
18
|
declare enum AXPPageStatus {
|
|
19
19
|
Idle = "idle",// The page is idle.
|
|
20
20
|
Rendering = "rendering",// The page is being rendered.
|
|
21
|
-
Rendered = "rendered",// The rendering process is complete.
|
|
21
|
+
Rendered = "rendered",// The rendering process is complete.
|
|
22
22
|
Processing = "processing",// The page is performing a task or interaction.
|
|
23
23
|
Submitting = "submitting",// The form is being submitted.
|
|
24
24
|
Submitted = "submitted",// Submission is completed.
|
|
25
25
|
Validating = "validating",// The form is being validated.
|
|
26
|
-
Validated = "validated",// Validation is completed.
|
|
26
|
+
Validated = "validated",// Validation is completed.
|
|
27
27
|
Error = "error"
|
|
28
28
|
}
|
|
29
29
|
declare enum AXPWidgetStatus {
|
|
30
|
-
Rendering = "rendering",// The widget is being
|
|
31
|
-
Rendered = "rendered",// The
|
|
32
|
-
Processing = "processing",// The widget is performing a task or interaction.
|
|
30
|
+
Rendering = "rendering",// The widget is being mounted and bound.
|
|
31
|
+
Rendered = "rendered",// The widget shell is ready (async hydration may still run).
|
|
33
32
|
Error = "error"
|
|
34
33
|
}
|
|
35
34
|
|
|
@@ -52,6 +51,7 @@ type AXPWidgetCoreElementAction = {
|
|
|
52
51
|
declare abstract class AXPWidgetCoreElement {
|
|
53
52
|
abstract get id(): string | null;
|
|
54
53
|
abstract get status(): Signal<AXPWidgetStatus>;
|
|
54
|
+
abstract get isHydrating(): Signal<boolean>;
|
|
55
55
|
api(): AXPWidgetCoreElementAPI;
|
|
56
56
|
actions(): AXPWidgetCoreElementAction[];
|
|
57
57
|
}
|
|
@@ -61,18 +61,40 @@ declare class AXPWidgetCoreService {
|
|
|
61
61
|
readonly onRefresh: Subject<void>;
|
|
62
62
|
private widgets;
|
|
63
63
|
private readonly onWidgetRegistered;
|
|
64
|
+
/** Bumps when widget render/hydration state changes so aggregate computeds re-evaluate. */
|
|
65
|
+
private readonly widgetsRevision;
|
|
64
66
|
private readonly status$;
|
|
65
67
|
readonly status: Signal<AXPPageStatus>;
|
|
68
|
+
readonly registeredWidgetsCount: _angular_core.WritableSignal<number>;
|
|
69
|
+
readonly isRendering: Signal<boolean>;
|
|
70
|
+
readonly isHydrating: Signal<boolean>;
|
|
66
71
|
readonly isBusy: Signal<boolean>;
|
|
67
|
-
|
|
72
|
+
readonly isStructureReady: Signal<boolean>;
|
|
68
73
|
private readonly dirtyWidgetsRevision;
|
|
69
74
|
readonly dirtyWidgetsRevisionSignal: Signal<number>;
|
|
75
|
+
constructor();
|
|
70
76
|
get variables(): any;
|
|
71
77
|
get functions(): {
|
|
72
78
|
[key: string]: Function;
|
|
73
79
|
};
|
|
80
|
+
/** Recomputes aggregate container state after a widget registers or changes status/hydration. */
|
|
81
|
+
notifyWidgetStateChanged(): void;
|
|
82
|
+
/** @deprecated Prefer {@link notifyWidgetStateChanged}. */
|
|
74
83
|
updateStatus(): void;
|
|
75
|
-
|
|
84
|
+
/** Debug snapshot of registered widget render/hydration state. */
|
|
85
|
+
getWidgetStateSnapshot(): {
|
|
86
|
+
count: number;
|
|
87
|
+
isRendering: boolean;
|
|
88
|
+
isHydrating: boolean;
|
|
89
|
+
isStructureReady: boolean;
|
|
90
|
+
isBusy: boolean;
|
|
91
|
+
widgets: Array<{
|
|
92
|
+
id: string;
|
|
93
|
+
status: AXPWidgetStatus;
|
|
94
|
+
isHydrating: boolean;
|
|
95
|
+
}>;
|
|
96
|
+
};
|
|
97
|
+
private detectAggregateStatus;
|
|
76
98
|
refresh(): void;
|
|
77
99
|
setStatus(status: AXPPageStatus): void;
|
|
78
100
|
setVariables(keysValues: any): void;
|
|
@@ -80,6 +102,8 @@ declare class AXPWidgetCoreService {
|
|
|
80
102
|
setFunctions(keysValues: any): void;
|
|
81
103
|
setFunctions(key: string, value: any): void;
|
|
82
104
|
registerWidget(id: string, widget: AXPWidgetCoreElement): void;
|
|
105
|
+
unregisterWidget(id: string): void;
|
|
106
|
+
clearWidgets(): void;
|
|
83
107
|
getWidget(id: string): AXPWidgetCoreElement | undefined;
|
|
84
108
|
waitForWidget(id: string, timeoutMs?: number): Promise<AXPWidgetCoreElement | undefined>;
|
|
85
109
|
listRegisteredWidgetNames(): string[];
|
|
@@ -381,7 +405,7 @@ interface AXPLayoutBuilderStatusChangedEvent {
|
|
|
381
405
|
|
|
382
406
|
type AXPClassMap = Readonly<Record<string, boolean>>;
|
|
383
407
|
type AXPStyleMap = Readonly<Record<string, string | number>>;
|
|
384
|
-
declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, unknown> = AXPOptionsData> extends AXPWidgetCoreElement {
|
|
408
|
+
declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, unknown> = AXPOptionsData> extends AXPWidgetCoreElement implements OnInit {
|
|
385
409
|
#private;
|
|
386
410
|
protected readonly token: AXPWidgetNodeToken<TOptions>;
|
|
387
411
|
readonly host: HTMLDivElement;
|
|
@@ -391,12 +415,14 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
391
415
|
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
392
416
|
savedSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
393
417
|
previousSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
418
|
+
userEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
394
419
|
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
395
420
|
isChanged: _angular_core.Signal<boolean>;
|
|
396
421
|
isReset: _angular_core.Signal<boolean>;
|
|
397
422
|
isInitiated: _angular_core.Signal<boolean>;
|
|
398
423
|
isEmpty: _angular_core.Signal<boolean>;
|
|
399
424
|
isSavedCommitted: _angular_core.Signal<boolean>;
|
|
425
|
+
hasUserEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
400
426
|
isDirty: _angular_core.Signal<boolean>;
|
|
401
427
|
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
402
428
|
saved: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
@@ -405,6 +431,7 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
405
431
|
changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
406
432
|
update: (path: string, value: any, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
407
433
|
applyObjectPaths: (obj: Record<string, unknown>, options?: _acorex_platform_core.AXPContextUpdateOptions, prefix?: string) => void;
|
|
434
|
+
syncPathToSavedBaseline: (path: string, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
408
435
|
patch: (context: Record<string, any>, options?: _acorex_platform_core.AXPContextPatchOptions) => void;
|
|
409
436
|
revertToSaved: () => void;
|
|
410
437
|
reset: () => void;
|
|
@@ -419,6 +446,7 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
419
446
|
state: _acorex_platform_core.AXPContextState;
|
|
420
447
|
savedSnapshot: _acorex_platform_core.AXPContextData;
|
|
421
448
|
previousSnapshot: _acorex_platform_core.AXPContextData;
|
|
449
|
+
userEditedSinceCommit: boolean;
|
|
422
450
|
lastChange: _acorex_platform_core.AXPContextChangeEvent;
|
|
423
451
|
}>;
|
|
424
452
|
readonly config: _acorex_platform_layout_widget_core.AXPWidgetConfig<any>;
|
|
@@ -435,6 +463,10 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
435
463
|
private _status;
|
|
436
464
|
status: _angular_core.Signal<AXPWidgetStatus>;
|
|
437
465
|
readonly onStatusChanged: BehaviorSubject<AXPWidgetStatus>;
|
|
466
|
+
/** Depth counter so nested async hydration calls share one busy state. */
|
|
467
|
+
private hydrationDepth;
|
|
468
|
+
private _isHydrating;
|
|
469
|
+
isHydrating: _angular_core.Signal<boolean>;
|
|
438
470
|
isBusy: _angular_core.Signal<boolean>;
|
|
439
471
|
parent: AXPLayoutBaseWidgetComponent<any> | null | undefined;
|
|
440
472
|
parentComponent: ComponentRef<any> | null | undefined;
|
|
@@ -447,6 +479,10 @@ declare abstract class AXPBaseWidgetComponent<TOptions extends Record<string, un
|
|
|
447
479
|
})[];
|
|
448
480
|
ngOnInit(): void;
|
|
449
481
|
setStatus(status: AXPWidgetStatus): void;
|
|
482
|
+
/** Marks async data loading (lookup, select, file fetch, etc.). */
|
|
483
|
+
protected beginHydration(): void;
|
|
484
|
+
/** Clears hydration started by {@link beginHydration}. */
|
|
485
|
+
protected endHydration(): void;
|
|
450
486
|
setOptions(values: Partial<TOptions>): void;
|
|
451
487
|
output<T = any>(name: string): T;
|
|
452
488
|
call(name: string, ...args: any[]): void;
|
|
@@ -478,6 +514,8 @@ declare abstract class AXPValueWidgetComponent<T = any | null, TOptions extends
|
|
|
478
514
|
getValue: _angular_core.Signal<T>;
|
|
479
515
|
protected validationRules: _angular_core.Signal<AXPValidationRules>;
|
|
480
516
|
protected extractValue(path: string): any;
|
|
517
|
+
/** Applies schema default without marking the form as user-edited. */
|
|
518
|
+
protected applyDefaultValue(value: T | null | undefined): void;
|
|
481
519
|
setValue(value: T | null | undefined): void;
|
|
482
520
|
protected detectFullPath(): void;
|
|
483
521
|
protected handleValueChanged(e: AXValueChangedEvent<T>): void;
|
|
@@ -498,6 +536,12 @@ declare abstract class AXPDataListWidgetComponent extends AXPValueWidgetComponen
|
|
|
498
536
|
private lastStringDataSourceRef;
|
|
499
537
|
private rf;
|
|
500
538
|
protected extractItem(item: unknown): Promise<any>;
|
|
539
|
+
/**
|
|
540
|
+
* Value used to resolve `selectedItems`. Defaults to the stored value, but
|
|
541
|
+
* widgets that wrap their value (e.g. filter mode) can override this to expose
|
|
542
|
+
* the unwrapped scalar/array so item resolution receives a real key.
|
|
543
|
+
*/
|
|
544
|
+
protected resolveSelectedItemsValue(): any;
|
|
501
545
|
private effect2;
|
|
502
546
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataListWidgetComponent, never>;
|
|
503
547
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDataListWidgetComponent>;
|
|
@@ -779,12 +823,14 @@ declare class AXPWidgetContainerComponent {
|
|
|
779
823
|
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
780
824
|
savedSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
781
825
|
previousSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
826
|
+
userEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
782
827
|
lastChange: _ngrx_signals.DeepSignal<AXPContextChangeEvent>;
|
|
783
828
|
isChanged: _angular_core.Signal<boolean>;
|
|
784
829
|
isReset: _angular_core.Signal<boolean>;
|
|
785
830
|
isInitiated: _angular_core.Signal<boolean>;
|
|
786
831
|
isEmpty: _angular_core.Signal<boolean>;
|
|
787
832
|
isSavedCommitted: _angular_core.Signal<boolean>;
|
|
833
|
+
hasUserEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
788
834
|
isDirty: _angular_core.Signal<boolean>;
|
|
789
835
|
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
790
836
|
saved: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
@@ -793,6 +839,7 @@ declare class AXPWidgetContainerComponent {
|
|
|
793
839
|
changeEvent: _angular_core.Signal<AXPContextChangeEvent>;
|
|
794
840
|
update: (path: string, value: any, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
795
841
|
applyObjectPaths: (obj: Record<string, unknown>, options?: _acorex_platform_core.AXPContextUpdateOptions, prefix?: string) => void;
|
|
842
|
+
syncPathToSavedBaseline: (path: string, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
796
843
|
patch: (context: Record<string, any>, options?: _acorex_platform_core.AXPContextPatchOptions) => void;
|
|
797
844
|
revertToSaved: () => void;
|
|
798
845
|
reset: () => void;
|
|
@@ -807,12 +854,16 @@ declare class AXPWidgetContainerComponent {
|
|
|
807
854
|
state: _acorex_platform_core.AXPContextState;
|
|
808
855
|
savedSnapshot: _acorex_platform_core.AXPContextData;
|
|
809
856
|
previousSnapshot: _acorex_platform_core.AXPContextData;
|
|
857
|
+
userEditedSinceCommit: boolean;
|
|
810
858
|
lastChange: AXPContextChangeEvent;
|
|
811
859
|
}>;
|
|
812
860
|
readonly builderService: AXPWidgetCoreService;
|
|
861
|
+
private readonly debug;
|
|
813
862
|
readonly onContextChanged: EventEmitter<AXPContextChangeEvent>;
|
|
814
863
|
private lastEmittedFormDirty;
|
|
815
864
|
private savedBaselineTimer?;
|
|
865
|
+
private settlePromise?;
|
|
866
|
+
private wasHydrating;
|
|
816
867
|
set context(value: any);
|
|
817
868
|
set functions(v: any);
|
|
818
869
|
readonly isSavedCommitted: _angular_core.Signal<boolean>;
|
|
@@ -820,13 +871,20 @@ declare class AXPWidgetContainerComponent {
|
|
|
820
871
|
constructor();
|
|
821
872
|
status: _angular_core.Signal<_acorex_platform_layout_widget_core.AXPPageStatus>;
|
|
822
873
|
isBusy: _angular_core.Signal<boolean>;
|
|
874
|
+
isHydrating: _angular_core.Signal<boolean>;
|
|
875
|
+
/** True when registered widgets exist and none are rendering or hydrating. */
|
|
876
|
+
isWidgetsReady: _angular_core.Signal<boolean>;
|
|
823
877
|
refresh(): void;
|
|
824
878
|
find(name: string): Promise<_acorex_platform_layout_widget_core.AXPWidgetCoreElement | undefined>;
|
|
825
879
|
private syncExternalContext;
|
|
826
880
|
/** Commits the current data as saved after widget hydration settles. */
|
|
827
881
|
settleSavedBaseline(): Promise<void>;
|
|
882
|
+
/** Resolves when widgets stay registered, structure-ready, and idle for {@link FORM_SAVED_BASELINE_IDLE_MS}. */
|
|
883
|
+
waitUntilSettled(): Promise<void>;
|
|
828
884
|
replaceContext(value: unknown): Promise<void>;
|
|
829
885
|
revertAndSettle(): void;
|
|
886
|
+
/** Re-commits baseline after post-load hydration when the user has not edited the form. */
|
|
887
|
+
private scheduleRebaselineAfterHydration;
|
|
830
888
|
private clearSavedBaselineTimer;
|
|
831
889
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetContainerComponent, never>;
|
|
832
890
|
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>;
|
|
@@ -997,12 +1055,14 @@ declare class AXPWidgetRendererDirective {
|
|
|
997
1055
|
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
998
1056
|
savedSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
999
1057
|
previousSnapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
1058
|
+
userEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
1000
1059
|
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
1001
1060
|
isChanged: _angular_core.Signal<boolean>;
|
|
1002
1061
|
isReset: _angular_core.Signal<boolean>;
|
|
1003
1062
|
isInitiated: _angular_core.Signal<boolean>;
|
|
1004
1063
|
isEmpty: _angular_core.Signal<boolean>;
|
|
1005
1064
|
isSavedCommitted: _angular_core.Signal<boolean>;
|
|
1065
|
+
hasUserEditedSinceCommit: _angular_core.Signal<boolean>;
|
|
1006
1066
|
isDirty: _angular_core.Signal<boolean>;
|
|
1007
1067
|
snapshot: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
1008
1068
|
saved: _angular_core.Signal<_acorex_platform_core.AXPContextData>;
|
|
@@ -1011,6 +1071,7 @@ declare class AXPWidgetRendererDirective {
|
|
|
1011
1071
|
changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
1012
1072
|
update: (path: string, value: any, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
1013
1073
|
applyObjectPaths: (obj: Record<string, unknown>, options?: _acorex_platform_core.AXPContextUpdateOptions, prefix?: string) => void;
|
|
1074
|
+
syncPathToSavedBaseline: (path: string, options?: _acorex_platform_core.AXPContextUpdateOptions) => void;
|
|
1014
1075
|
patch: (context: Record<string, any>, options?: _acorex_platform_core.AXPContextPatchOptions) => void;
|
|
1015
1076
|
revertToSaved: () => void;
|
|
1016
1077
|
reset: () => void;
|
|
@@ -1025,6 +1086,7 @@ declare class AXPWidgetRendererDirective {
|
|
|
1025
1086
|
state: _acorex_platform_core.AXPContextState;
|
|
1026
1087
|
savedSnapshot: _acorex_platform_core.AXPContextData;
|
|
1027
1088
|
previousSnapshot: _acorex_platform_core.AXPContextData;
|
|
1089
|
+
userEditedSinceCommit: boolean;
|
|
1028
1090
|
lastChange: _acorex_platform_core.AXPContextChangeEvent;
|
|
1029
1091
|
}>;
|
|
1030
1092
|
protected widgetRegistery: AXPWidgetRegistryService;
|
|
@@ -1108,8 +1170,6 @@ declare class AXPWidgetCoreModule {
|
|
|
1108
1170
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPWidgetCoreModule>;
|
|
1109
1171
|
}
|
|
1110
1172
|
|
|
1111
|
-
declare const AXPWidgetsCatalog: AXPWidgetTypesMap;
|
|
1112
|
-
|
|
1113
1173
|
declare const AXP_WIDGETS_EDITOR_SUB_TEXT_INPUTS: AXPDefinitionCategory;
|
|
1114
1174
|
declare const AXP_WIDGETS_EDITOR_SUB_NUMERIC: AXPDefinitionCategory;
|
|
1115
1175
|
declare const AXP_WIDGETS_EDITOR_SUB_DATETIME: AXPDefinitionCategory;
|
|
@@ -1292,5 +1352,5 @@ declare const AXP_BETWEEN_VALIDATION_PROPERTY: AXPWidgetProperty;
|
|
|
1292
1352
|
declare const AXP_EQUAL_VALIDATION_PROPERTY: AXPWidgetProperty;
|
|
1293
1353
|
declare const AXP_CALLBACK_VALIDATION_PROPERTY: AXPWidgetProperty;
|
|
1294
1354
|
|
|
1295
|
-
export { AXPBaseWidgetComponent, AXPBlockBaseLayoutWidgetComponent, AXPBoxModelLayoutWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBaseLayoutWidgetComponent, AXPGridItemBaseLayoutWidgetComponent, AXPInlineBaseLayoutWidgetComponent, AXPLayoutBaseWidgetComponent, AXPPageStatus, AXPPropertyEditorHelper, AXPTableBaseLayoutWidgetComponent, AXPTableItemBaseLayoutWidgetComponent, AXPTableItemOpsBaseLayoutWidgetComponent, AXPValueWidgetComponent, AXPWidgetColumnCellComponent, AXPWidgetColumnRendererComponent, AXPWidgetContainerComponent, AXPWidgetCoreElement, AXPWidgetCoreModule, AXPWidgetCoreService, AXPWidgetGroupEnum, AXPWidgetRegistryService, AXPWidgetRendererDirective, AXPWidgetSerializationHelper, AXPWidgetStatus,
|
|
1355
|
+
export { AXPBaseWidgetComponent, AXPBlockBaseLayoutWidgetComponent, AXPBoxModelLayoutWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBaseLayoutWidgetComponent, AXPGridItemBaseLayoutWidgetComponent, AXPInlineBaseLayoutWidgetComponent, AXPLayoutBaseWidgetComponent, AXPPageStatus, AXPPropertyEditorHelper, AXPTableBaseLayoutWidgetComponent, AXPTableItemBaseLayoutWidgetComponent, AXPTableItemOpsBaseLayoutWidgetComponent, AXPValueWidgetComponent, AXPWidgetColumnCellComponent, AXPWidgetColumnRendererComponent, AXPWidgetContainerComponent, AXPWidgetCoreElement, AXPWidgetCoreModule, AXPWidgetCoreService, AXPWidgetGroupEnum, AXPWidgetRegistryService, AXPWidgetRendererDirective, AXPWidgetSerializationHelper, AXPWidgetStatus, AXP_ALLOW_CLEAR_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_ANIMATION_PROPERTY_GROUP, AXP_APPEARANCE_PROPERTY_GROUP, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_OPTIONS_PROPERTY, AXP_DATE_DEPTH_PROPERTY, AXP_DATE_FORMAT_PROPERTY, AXP_DATE_RANGE_LIMIT_PROPERTY, AXP_DEFAULT_ROW_COUNT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FIT_LINE_COUNT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_ITEM_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTY, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SHOW_HEADER_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LAYOUT_TABLE_PROPERTY_GROUP, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MAX_LINE_COUNT_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LINE_COUNT_PROPERTY, AXP_MULTI_LANGUAGE_PROPERTY, AXP_NAME_PROPERTY, AXP_NUMBER_SEPARATOR_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_SHOW_PASSWORD_PROPERTY, AXP_SPIN_BUTTON_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMNS_PROPERTY, AXP_TABLE_COLUMN_ALIGNMENT_PROPERTIES, AXP_TABLE_COLUMN_CELL_ALIGN_PROPERTY, AXP_TABLE_COLUMN_HEADER_ALIGN_PROPERTY, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TABLE_ITEM_COLSPAN_PROPERTY, AXP_TABLE_ITEM_ROWSPAN_PROPERTY, AXP_TEXT_ALIGN_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRIGGERS_PROPERTY, AXP_TRIGGERS_PROPERTY_GROUP, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_VERTICAL_ALIGN_PROPERTY, 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_PROPERTY_GROUP, AXP_WIDGET_TOKEN, booleanDefaultProperty, buildWidgetRegistryMapFromProviders, cloneProperty, createBooleanProperty, createNumberProperty, createSelectProperty, createStringProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, mapAXPPropertyToWidgetProperty, normalizeWidgetCategories, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty, richTextDefaultProperty, selectEditorDefaultValueProperty, selectionListEditorDefaultValueProperty };
|
|
1296
1356
|
export type { AXPBorderBox, AXPBorderBoxString, AXPBreakpointValues, AXPBreakpoints, AXPClassMap, AXPExtendedWidget, AXPExtractWidgetConfig, AXPFlexBoxString, AXPFlexItemBoxString, AXPGridBoxString, AXPGridBreakpointValues, AXPGridItemBoxString, AXPLayoutBuilderStatusChangedEvent, 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 };
|