@acorex/platform 20.6.0-next.9 → 21.0.0-next.0
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/auth/index.d.ts +91 -12
- package/common/index.d.ts +615 -44
- package/core/index.d.ts +718 -422
- package/fesm2022/acorex-platform-auth.mjs +152 -39
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +1009 -112
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +887 -408
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +99 -11
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +555 -492
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +2446 -2733
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +9 -9
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +9708 -4721
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +32 -26
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +252 -182
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs → acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs} +2 -2
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs +30 -0
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-C1l2KSDa.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs} +2 -2
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-D-31ej0C.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs} +2 -2
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets.mjs +9791 -6928
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +79 -3
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs +157 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs +1542 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +101 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs → acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs} +3 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +282 -43
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs +55 -0
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +42 -137
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +658 -45
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/index.d.ts +10 -34
- package/layout/components/index.d.ts +694 -375
- package/layout/designer/index.d.ts +4 -4
- package/layout/entity/index.d.ts +802 -183
- package/layout/views/index.d.ts +5 -58
- package/layout/widget-core/index.d.ts +63 -75
- package/layout/widgets/README.md +0 -1
- package/layout/widgets/index.d.ts +493 -129
- package/package.json +5 -5
- package/runtime/index.d.ts +36 -8
- package/themes/default/index.d.ts +44 -75
- package/themes/shared/index.d.ts +11 -49
- package/workflow/index.d.ts +401 -90
- package/fesm2022/acorex-platform-layout-entity-create-entity.command-DGeylNSY.mjs +0 -52
- package/fesm2022/acorex-platform-layout-entity-create-entity.command-DGeylNSY.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs +0 -50
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs +0 -42
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs +0 -55
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs +0 -50
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs +0 -48
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs +0 -42
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-C1l2KSDa.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-D-31ej0C.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-WbPPqDON.mjs +0 -115
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-WbPPqDON.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CD7rJIMh.mjs +0 -803
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CD7rJIMh.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs +0 -101
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs.map +0 -1
package/layout/entity/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AXPExecuteCommandResult, AXPMetaData, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPMiddlewareErrorResponse, AXHighlightService, AXPExpression, AXPColumnQuery, AXPSortDefinition, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem } from '@acorex/platform/core';
|
|
2
|
+
import { AXPCommand, AXPQueryExecutor, AXPCommandService, AXPQuery } from '@acorex/platform/runtime';
|
|
2
3
|
import * as _angular_core from '@angular/core';
|
|
3
|
-
import { ElementRef, InjectionToken, Injector, Type } from '@angular/core';
|
|
4
|
+
import { ElementRef, InjectionToken, Injector, Type, OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
4
5
|
import { AXPopoverComponent } from '@acorex/components/popover';
|
|
5
|
-
import { AXPMetaData, AXPGridLayoutOptions, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPUserReference, AXPQueryRequest, AXPPagedListResult, AXPCategoryEntity as AXPCategoryEntity$1, AXPAppStartUpService, AXPMiddlewareErrorResponse, AXPColumnQuery, AXPSortDefinition, AXPActionMenuItem, AXPExpression } from '@acorex/platform/core';
|
|
6
6
|
import * as i3 from '@acorex/platform/layout/widget-core';
|
|
7
|
-
import { AXPWidgetNode, AXPWidgetColumnNode, AXPWidgetCoreService,
|
|
8
|
-
import { AXStyleColorType, AXDataSource, AXDataSourceFilterOption,
|
|
7
|
+
import { AXPWidgetNode, AXPWidgetColumnNode, AXPWidgetCoreService, AXPColumnWidgetComponent, AXPValueWidgetComponent, AXPWidgetConfig, AXPWidgetRendererDirective } from '@acorex/platform/layout/widget-core';
|
|
8
|
+
import { AXStyleColorType, AXDataSource, AXDataSourceFilterOption, AXValueChangedEvent, AXClickEvent, AXFocusEvent, AXHtmlEvent, AXDataSourceSortOption } from '@acorex/cdk/common';
|
|
9
9
|
import * as _acorex_platform_common from '@acorex/platform/common';
|
|
10
10
|
import { AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPRelatedEntity, AXPEntitySectionView, AXPEntityPropertyCreateView, AXPEntityPropertyLayoutConfig, AXPQueryView, AXPEntityPropertyView, AXPCategoryEntity, AXPEntityPropertyGroup, AXPEntityMasterCreateLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityMasterSingleLayoutView, AXPEntityMasterListView, AXPEntityDetailListView, AXPQueryFilter } from '@acorex/platform/common';
|
|
11
11
|
import * as i1 from '@angular/router';
|
|
@@ -14,16 +14,50 @@ import * as rxjs from 'rxjs';
|
|
|
14
14
|
import { Subject } from 'rxjs';
|
|
15
15
|
import * as i2 from '@acorex/platform/workflow';
|
|
16
16
|
import { AXPWorkflowService, AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
|
|
17
|
+
import { AXPSessionService } from '@acorex/platform/auth';
|
|
18
|
+
import { AXTreeViewNode, AXTreeViewComponent, AXTreeViewNodeToggleEvent, AXTreeViewNodeSelectEvent, AXTreeViewSelectionChangeEvent } from '@acorex/components/tree-view';
|
|
19
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
17
20
|
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
18
21
|
import { IActionBuilder, IFormFieldBuilder, AXPDialogRef } from '@acorex/platform/layout/builder';
|
|
19
|
-
import {
|
|
20
|
-
import * as _ngrx_signals from '@ngrx/signals';
|
|
21
|
-
import * as _acorex_platform_themes_shared from '@acorex/platform/themes/shared';
|
|
22
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
|
22
23
|
import { AXFormatService } from '@acorex/core/format';
|
|
23
|
-
import { AXSelectBoxComponent } from '@acorex/components/select-box';
|
|
24
24
|
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
25
|
+
import { AXPDataListWidgetComponentOptions } from '@acorex/platform/layout/widgets';
|
|
26
|
+
import { AXSelectBoxComponent } from '@acorex/components/select-box';
|
|
27
|
+
|
|
28
|
+
declare class AXPCreateEntityCommand implements AXPCommand<any, any> {
|
|
29
|
+
private entityForm;
|
|
30
|
+
private settingsService;
|
|
31
|
+
private entityService;
|
|
32
|
+
private toastService;
|
|
33
|
+
private translationService;
|
|
34
|
+
private eventService;
|
|
35
|
+
protected context: {};
|
|
36
|
+
execute(input: any): Promise<AXPExecuteCommandResult<any>>;
|
|
37
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCreateEntityCommand, never>;
|
|
38
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPCreateEntityCommand>;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
declare class AXPUpdateEntityCommand implements AXPCommand<any, any> {
|
|
42
|
+
private readonly entityForm;
|
|
43
|
+
private readonly settingsService;
|
|
44
|
+
private readonly entityService;
|
|
45
|
+
private readonly toastService;
|
|
46
|
+
private readonly translationService;
|
|
47
|
+
private readonly eventService;
|
|
48
|
+
execute(input: any): Promise<AXPExecuteCommandResult<any>>;
|
|
49
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPUpdateEntityCommand, never>;
|
|
50
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPUpdateEntityCommand>;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
declare class AXPViewEntityDetailsCommand implements AXPCommand<any, any> {
|
|
54
|
+
private readonly entityForm;
|
|
55
|
+
private readonly entityService;
|
|
56
|
+
private readonly translationService;
|
|
57
|
+
execute(input: any): Promise<AXPExecuteCommandResult<any>>;
|
|
58
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPViewEntityDetailsCommand, never>;
|
|
59
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPViewEntityDetailsCommand>;
|
|
60
|
+
}
|
|
27
61
|
|
|
28
62
|
interface AXPOpenEntityDetailsCommandInput {
|
|
29
63
|
entity: string;
|
|
@@ -31,21 +65,18 @@ interface AXPOpenEntityDetailsCommandInput {
|
|
|
31
65
|
id: string;
|
|
32
66
|
};
|
|
33
67
|
}
|
|
34
|
-
interface AXPOpenEntityDetailsCommandResult {
|
|
35
|
-
success: boolean;
|
|
36
|
-
}
|
|
37
68
|
/**
|
|
38
69
|
* Generic command to open entity details view
|
|
39
70
|
* Can be used by any entity to navigate to its detail page
|
|
40
71
|
*/
|
|
41
|
-
declare class AXPOpenEntityDetailsCommand implements AXPCommand<AXPOpenEntityDetailsCommandInput,
|
|
72
|
+
declare class AXPOpenEntityDetailsCommand implements AXPCommand<AXPOpenEntityDetailsCommandInput, AXPExecuteCommandResult> {
|
|
42
73
|
private readonly router;
|
|
43
74
|
private readonly sessionService;
|
|
44
75
|
/**
|
|
45
76
|
* Execute the command to navigate to entity details
|
|
46
77
|
* @param input - Command input containing entity and data information
|
|
47
78
|
*/
|
|
48
|
-
execute(input: AXPOpenEntityDetailsCommandInput): Promise<
|
|
79
|
+
execute(input: AXPOpenEntityDetailsCommandInput): Promise<AXPExecuteCommandResult>;
|
|
49
80
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPOpenEntityDetailsCommand, never>;
|
|
50
81
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPOpenEntityDetailsCommand>;
|
|
51
82
|
}
|
|
@@ -138,6 +169,7 @@ declare class AXPDataSeederService {
|
|
|
138
169
|
|
|
139
170
|
declare class AXPEntityCommandTriggerViewModel {
|
|
140
171
|
priority: 'primary' | 'secondary';
|
|
172
|
+
order: number;
|
|
141
173
|
color: AXStyleColorType;
|
|
142
174
|
icon: string;
|
|
143
175
|
title: string;
|
|
@@ -174,7 +206,8 @@ declare class AXPEntityDetailListViewModel {
|
|
|
174
206
|
private workflow;
|
|
175
207
|
private filterOperatorMiddleware;
|
|
176
208
|
private expressionEvaluator;
|
|
177
|
-
|
|
209
|
+
private queryExecutor;
|
|
210
|
+
dataSource: AXDataSource<any>;
|
|
178
211
|
parentKey: _angular_core.Signal<string | undefined>;
|
|
179
212
|
constructor(injector: Injector, detailEntityConfig: AXPRelatedEntity, parent: {
|
|
180
213
|
entity: AXPEntity;
|
|
@@ -212,6 +245,11 @@ declare class AXPEntityDetailListViewModel {
|
|
|
212
245
|
getSecondaryActions(): Promise<AXPEntityCommandTriggerViewModel[]>;
|
|
213
246
|
}
|
|
214
247
|
|
|
248
|
+
declare const AXPEntityEventsKeys: {
|
|
249
|
+
REFRESH_LAYOUT: string;
|
|
250
|
+
REFRESH_DATA: string;
|
|
251
|
+
};
|
|
252
|
+
|
|
215
253
|
/**
|
|
216
254
|
* Entity Event Dispatcher - A wrapper for entity-specific events
|
|
217
255
|
* Handles pattern-based dispatching for entity operations with wildcard support
|
|
@@ -251,6 +289,7 @@ declare class AXPEntityCreateViewElementViewModel {
|
|
|
251
289
|
title: _angular_core.WritableSignal<string>;
|
|
252
290
|
description: _angular_core.WritableSignal<string | undefined>;
|
|
253
291
|
editable: _angular_core.Signal<boolean>;
|
|
292
|
+
isVisible: _angular_core.Signal<string | boolean>;
|
|
254
293
|
isRequired: _angular_core.Signal<boolean>;
|
|
255
294
|
layout: _angular_core.Signal<AXPEntityPropertyLayoutConfig>;
|
|
256
295
|
node: _angular_core.Signal<AXPWidgetNode>;
|
|
@@ -317,6 +356,7 @@ declare class AXPEntityMasterListViewModel {
|
|
|
317
356
|
private readonly expressionEvaluator;
|
|
318
357
|
private readonly commandService;
|
|
319
358
|
private readonly eventService;
|
|
359
|
+
private readonly queryExecutor;
|
|
320
360
|
private readonly filterOperatorMiddleware;
|
|
321
361
|
private settingEntityKey;
|
|
322
362
|
private readonly destroyed;
|
|
@@ -329,7 +369,7 @@ declare class AXPEntityMasterListViewModel {
|
|
|
329
369
|
views: _angular_core.Signal<AXPEntityMasterListViewQueryViewModel[]>;
|
|
330
370
|
view: _angular_core.WritableSignal<AXPEntityMasterListViewQueryViewModel>;
|
|
331
371
|
setView(viewName?: string | null): Promise<void>;
|
|
332
|
-
dataSource: AXDataSource<
|
|
372
|
+
dataSource: AXDataSource<any>;
|
|
333
373
|
constructor(injector: Injector, config: AXPEntity);
|
|
334
374
|
applySettings(): Promise<void>;
|
|
335
375
|
saveSettings(changesType: 'columnSizes' | 'columnOrders' | 'view' | 'pageSize' | 'filters' | 'sorts', data?: any): Promise<void>;
|
|
@@ -621,6 +661,27 @@ interface AXPEntityModifierProvider {
|
|
|
621
661
|
|
|
622
662
|
declare function ensureListActions(ctx: AXPEntityModifierContext): void;
|
|
623
663
|
declare function actionExists(actions: any[] | undefined, commandName: string, name?: string): boolean;
|
|
664
|
+
interface AXPEntityLayoutSectionLike {
|
|
665
|
+
id: string;
|
|
666
|
+
}
|
|
667
|
+
interface AXPEntityLayoutPropertyLike {
|
|
668
|
+
name: string;
|
|
669
|
+
}
|
|
670
|
+
interface AXPEntityLayoutLike<TSection extends AXPEntityLayoutSectionLike = AXPEntityLayoutSectionLike, TProperty extends AXPEntityLayoutPropertyLike = AXPEntityLayoutPropertyLike> {
|
|
671
|
+
sections: TSection[];
|
|
672
|
+
properties?: TProperty[];
|
|
673
|
+
}
|
|
674
|
+
/**
|
|
675
|
+
* Clones `sections` and `properties` arrays to prevent accidental cross-interface mutations.
|
|
676
|
+
* Many entity definitions reuse the same array instances across create/update/single interfaces.
|
|
677
|
+
*/
|
|
678
|
+
declare function cloneLayoutArrays<TLayout extends AXPEntityLayoutLike>(layout: TLayout): TLayout & {
|
|
679
|
+
properties: NonNullable<TLayout['properties']>;
|
|
680
|
+
};
|
|
681
|
+
declare function ensureLayoutSection<TLayout extends AXPEntityLayoutLike>(layout: TLayout, section: TLayout['sections'][number]): void;
|
|
682
|
+
declare function ensureLayoutPropertyView<TLayout extends AXPEntityLayoutLike>(layout: TLayout & {
|
|
683
|
+
properties: NonNullable<TLayout['properties']>;
|
|
684
|
+
}, prop: NonNullable<TLayout['properties']>[number]): void;
|
|
624
685
|
|
|
625
686
|
interface AXPEntityActionPlugin {
|
|
626
687
|
name: string;
|
|
@@ -656,14 +717,13 @@ interface AXPEntityDefinitionPreloader {
|
|
|
656
717
|
preload(): AXPEntityPreloadEntity[];
|
|
657
718
|
}
|
|
658
719
|
declare class AXPEntityDefinitionRegistryService {
|
|
659
|
-
private providers;
|
|
660
|
-
private resolver;
|
|
661
720
|
private middleware;
|
|
721
|
+
private moduleProviderLoader;
|
|
722
|
+
private manifestRegistry;
|
|
662
723
|
private onChanged;
|
|
663
724
|
get onChanged$(): rxjs.Observable<{
|
|
664
725
|
name: string;
|
|
665
726
|
}>;
|
|
666
|
-
preload(): Promise<void>;
|
|
667
727
|
private entities;
|
|
668
728
|
private entityResolver;
|
|
669
729
|
/**
|
|
@@ -691,6 +751,12 @@ declare class AXPEntityDefinitionRegistryService {
|
|
|
691
751
|
* @returns An array of AXPEntity objects.
|
|
692
752
|
*/
|
|
693
753
|
getAll(): AXPEntity[];
|
|
754
|
+
/**
|
|
755
|
+
* Clear all registered entity configurations.
|
|
756
|
+
* Should be called when modules are cleared to prevent stale entity data.
|
|
757
|
+
* @param preserveModules Optional list of module names whose entities should be preserved
|
|
758
|
+
*/
|
|
759
|
+
clear(preserveModules?: string[]): void;
|
|
694
760
|
/**
|
|
695
761
|
* Resolves an entity configuration based on module and entity name. If the configuration
|
|
696
762
|
* is not already registered, attempts to load it dynamically. Throws an error if the
|
|
@@ -702,6 +768,13 @@ declare class AXPEntityDefinitionRegistryService {
|
|
|
702
768
|
* @throws Error if the entity configuration cannot be resolved.
|
|
703
769
|
*/
|
|
704
770
|
resolve(moduleName: string, entityName: string): Promise<AXPEntity>;
|
|
771
|
+
exists(moduleName: string, entityName: string): Promise<boolean>;
|
|
772
|
+
/**
|
|
773
|
+
* Waits for module provider to be loaded if the module exists in manifest but provider isn't registered yet.
|
|
774
|
+
* This handles race conditions where entity resolution happens before module providers finish loading.
|
|
775
|
+
* Only waits for required modules or waits briefly for non-required modules (which may not be accessible to current user).
|
|
776
|
+
*/
|
|
777
|
+
private waitForModuleProviderIfNeeded;
|
|
705
778
|
/**
|
|
706
779
|
* Creates a unique key for an entity based on its module and name.
|
|
707
780
|
*
|
|
@@ -714,36 +787,32 @@ declare class AXPEntityDefinitionRegistryService {
|
|
|
714
787
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityDefinitionRegistryService>;
|
|
715
788
|
}
|
|
716
789
|
|
|
717
|
-
interface
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
deleted?:
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
};
|
|
730
|
-
}
|
|
731
|
-
interface AXPRecordControl {
|
|
732
|
-
isReadOnly?: boolean;
|
|
790
|
+
interface AXPAuditEvent {
|
|
791
|
+
at?: Date;
|
|
792
|
+
by?: AXPUserReference;
|
|
793
|
+
reason?: string;
|
|
794
|
+
source?: string;
|
|
795
|
+
}
|
|
796
|
+
interface AXPAuditInfo {
|
|
797
|
+
created?: AXPAuditEvent;
|
|
798
|
+
updated?: AXPAuditEvent;
|
|
799
|
+
deleted?: AXPAuditEvent;
|
|
800
|
+
}
|
|
801
|
+
interface AXPRecordStateInfo {
|
|
733
802
|
isHidden?: boolean;
|
|
734
803
|
isSystem?: boolean;
|
|
735
804
|
isImmutable?: boolean;
|
|
736
805
|
isDistributed?: boolean;
|
|
737
806
|
}
|
|
738
|
-
interface
|
|
807
|
+
interface AXPRecordOwnershipInfo {
|
|
739
808
|
tenantId?: string;
|
|
740
|
-
|
|
809
|
+
applicationId?: string;
|
|
741
810
|
}
|
|
742
811
|
interface AXPEntityModel<Id> {
|
|
743
812
|
id: Id;
|
|
744
|
-
auditInfo?:
|
|
745
|
-
stateInfo?:
|
|
746
|
-
ownershipInfo?:
|
|
813
|
+
auditInfo?: AXPAuditInfo;
|
|
814
|
+
stateInfo?: AXPRecordStateInfo;
|
|
815
|
+
ownershipInfo?: AXPRecordOwnershipInfo;
|
|
747
816
|
}
|
|
748
817
|
interface AXPEntityCreateDto {
|
|
749
818
|
}
|
|
@@ -824,6 +893,7 @@ declare class AXMEntityCrudServiceImpl<TKey, TDetailDto extends AXPEntityDetailD
|
|
|
824
893
|
}): Promise<AXPPagedListResult<TListItemDto>>;
|
|
825
894
|
getCategoriesList(request?: AXPQueryRequest): Promise<AXPPagedListResult<AXPCategoryEntity$1<TKey>>>;
|
|
826
895
|
get storageService(): AXPEntityStorageService<any, any, any, any, any>;
|
|
896
|
+
custom<Req, Res>(request: Req): Promise<void>;
|
|
827
897
|
}
|
|
828
898
|
|
|
829
899
|
interface AXPEntityConfigs {
|
|
@@ -848,21 +918,121 @@ interface AXPEntityDefinitionLoader {
|
|
|
848
918
|
declare const AXP_ENTITY_DEFINITION_LOADER: InjectionToken<AXPEntityDefinitionLoader>;
|
|
849
919
|
declare class AXPEntityResolver {
|
|
850
920
|
private providers;
|
|
921
|
+
private providerRegistry;
|
|
851
922
|
get(moduleName: string, entityName: string): Promise<AXPEntity | null>;
|
|
852
923
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityResolver, never>;
|
|
853
924
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityResolver>;
|
|
854
925
|
}
|
|
855
926
|
|
|
856
927
|
declare class AXPEntityModule {
|
|
857
|
-
constructor(appInitService: AXPAppStartUpService, injector: Injector);
|
|
858
928
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityModule, never>;
|
|
859
929
|
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPEntityModule, never, [typeof i1.RouterModule, typeof i2.AXPWorkflowModule, typeof i3.AXPWidgetCoreModule], never>;
|
|
860
930
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPEntityModule>;
|
|
861
931
|
}
|
|
862
932
|
|
|
933
|
+
/**
|
|
934
|
+
* Data accessor for entity operations.
|
|
935
|
+
* Provides methods to query and execute commands with smart resolution:
|
|
936
|
+
* 1. Checks entity definition queries/commands first
|
|
937
|
+
* 2. Falls back to CRUD service if not defined
|
|
938
|
+
*/
|
|
939
|
+
declare class EntityDataAccessor<TKey = any, TDetailDto extends AXPEntityDetailDto<TKey> = AXPEntityModel<TKey>, TListItemDto extends AXPEntityListItemDto<TKey> = TDetailDto, TCreateDto extends AXPEntityCreateDto = Omit<TDetailDto, 'id'>, TUpdateDto extends AXPEntityUpdateDto<TKey> = TDetailDto> {
|
|
940
|
+
private module;
|
|
941
|
+
private entity;
|
|
942
|
+
private entityRegistry;
|
|
943
|
+
private queryExecutor;
|
|
944
|
+
private commandService;
|
|
945
|
+
private crudService;
|
|
946
|
+
private entityDef;
|
|
947
|
+
private entityDefPromise;
|
|
948
|
+
constructor(module: string, entity: string, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService);
|
|
949
|
+
/**
|
|
950
|
+
* Resolves the entity definition lazily and caches it.
|
|
951
|
+
* @returns The resolved entity definition
|
|
952
|
+
*/
|
|
953
|
+
private resolveEntityDef;
|
|
954
|
+
/**
|
|
955
|
+
* Gets a single entity by key.
|
|
956
|
+
* @param key - The entity key
|
|
957
|
+
* @returns The entity detail or null if not found
|
|
958
|
+
*/
|
|
959
|
+
byKey(key: TKey): Promise<TDetailDto | null>;
|
|
960
|
+
/**
|
|
961
|
+
* Queries a list of entities.
|
|
962
|
+
* @param request - The query request (optional)
|
|
963
|
+
* @returns The paged list result
|
|
964
|
+
*/
|
|
965
|
+
query(request?: AXPQueryRequest): Promise<AXPPagedListResult<TListItemDto>>;
|
|
966
|
+
/**
|
|
967
|
+
* Creates a new entity.
|
|
968
|
+
* @param data - The entity data to create
|
|
969
|
+
* @returns The created entity key
|
|
970
|
+
*/
|
|
971
|
+
create(data: TCreateDto): Promise<TKey>;
|
|
972
|
+
/**
|
|
973
|
+
* Updates an existing entity.
|
|
974
|
+
* @param id - The entity key
|
|
975
|
+
* @param data - The entity data to update
|
|
976
|
+
* @returns The updated entity
|
|
977
|
+
*/
|
|
978
|
+
update(id: TKey, data: Omit<Partial<TUpdateDto>, 'id'>): Promise<TDetailDto>;
|
|
979
|
+
/**
|
|
980
|
+
* Deletes an entity.
|
|
981
|
+
* @param id - The entity key
|
|
982
|
+
*/
|
|
983
|
+
delete(id: TKey): Promise<void>;
|
|
984
|
+
}
|
|
985
|
+
/**
|
|
986
|
+
* Builder class for entity operations.
|
|
987
|
+
* Provides methods to create paths and access entity data.
|
|
988
|
+
*/
|
|
989
|
+
declare class EntityBuilder {
|
|
990
|
+
private sessionService;
|
|
991
|
+
private entityRegistry;
|
|
992
|
+
private queryExecutor;
|
|
993
|
+
private commandService;
|
|
994
|
+
readonly module: string;
|
|
995
|
+
readonly entity: string;
|
|
996
|
+
constructor(module: string, entity: string, sessionService: AXPSessionService, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService);
|
|
997
|
+
/**
|
|
998
|
+
* Creates a path for the entity.
|
|
999
|
+
* @param path - The path segment (defaults to 'list')
|
|
1000
|
+
* @returns The full path string
|
|
1001
|
+
*/
|
|
1002
|
+
createPath(path?: string): string;
|
|
1003
|
+
/**
|
|
1004
|
+
* Gets the data accessor for the entity with generic type support.
|
|
1005
|
+
* Entity definition is resolved lazily on first method call.
|
|
1006
|
+
* @returns An EntityDataAccessor instance
|
|
1007
|
+
*/
|
|
1008
|
+
data<TKey = any, TDetailDto extends AXPEntityDetailDto<TKey> = AXPEntityModel<TKey>, TListItemDto extends AXPEntityListItemDto<TKey> = TDetailDto, TCreateDto extends AXPEntityCreateDto = Omit<TDetailDto, 'id'>, TUpdateDto extends AXPEntityUpdateDto<TKey> = TDetailDto>(): EntityDataAccessor<TKey, TDetailDto, TListItemDto, TCreateDto, TUpdateDto>;
|
|
1009
|
+
}
|
|
863
1010
|
declare class AXPEntityService {
|
|
864
1011
|
private sessionService;
|
|
1012
|
+
private entityRegistry;
|
|
1013
|
+
private queryExecutor;
|
|
1014
|
+
private commandService;
|
|
1015
|
+
/**
|
|
1016
|
+
* @deprecated Use `withEntity(module, entity).createPath(path)` instead.
|
|
1017
|
+
* This method will be removed in a future version.
|
|
1018
|
+
*/
|
|
865
1019
|
createPath(module: string, entity: string, path?: string): string;
|
|
1020
|
+
/**
|
|
1021
|
+
* Creates a builder for entity operations.
|
|
1022
|
+
* Entity definition is resolved lazily when data accessor methods are called.
|
|
1023
|
+
* @param module - The module name
|
|
1024
|
+
* @param entity - The entity name
|
|
1025
|
+
* @returns An EntityBuilder instance
|
|
1026
|
+
*/
|
|
1027
|
+
withEntity(module: string, entity: string): EntityBuilder;
|
|
1028
|
+
/**
|
|
1029
|
+
* Creates a builder for entity operations using dot notation.
|
|
1030
|
+
* Entity definition is resolved lazily when data accessor methods are called.
|
|
1031
|
+
* @param entityKey - The entity key in format "module.entity"
|
|
1032
|
+
* @returns An EntityBuilder instance
|
|
1033
|
+
* @throws Error if the entity key format is invalid
|
|
1034
|
+
*/
|
|
1035
|
+
withEntity(entityKey: string): EntityBuilder;
|
|
866
1036
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityService, never>;
|
|
867
1037
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityService>;
|
|
868
1038
|
}
|
|
@@ -939,6 +1109,44 @@ declare const createColumnWidthMiddlewareProvider: (widths: ColumnWidthConfig, e
|
|
|
939
1109
|
*/
|
|
940
1110
|
declare const columnWidthMiddlewareProvider: AXPEntityModifierProvider;
|
|
941
1111
|
|
|
1112
|
+
/**
|
|
1113
|
+
* Configuration for section ordering
|
|
1114
|
+
*/
|
|
1115
|
+
interface SectionOrderConfig {
|
|
1116
|
+
/**
|
|
1117
|
+
* Default order for common sections
|
|
1118
|
+
* Lower numbers appear first
|
|
1119
|
+
*/
|
|
1120
|
+
sections: Record<string, number>;
|
|
1121
|
+
/**
|
|
1122
|
+
* Default order for properties within sections
|
|
1123
|
+
* Key format: 'sectionId.propertyName' or just 'propertyName' for any section
|
|
1124
|
+
*/
|
|
1125
|
+
properties: Record<string, number>;
|
|
1126
|
+
}
|
|
1127
|
+
/**
|
|
1128
|
+
* Default order for common sections
|
|
1129
|
+
*/
|
|
1130
|
+
declare const DEFAULT_SECTION_ORDER: Record<string, number>;
|
|
1131
|
+
/**
|
|
1132
|
+
* Default order for common properties
|
|
1133
|
+
* Format: 'sectionId.propertyName' for section-specific or 'propertyName' for any section
|
|
1134
|
+
*/
|
|
1135
|
+
declare const DEFAULT_PROPERTY_ORDER: Record<string, number>;
|
|
1136
|
+
/**
|
|
1137
|
+
* Factory to create a layout ordering middleware
|
|
1138
|
+
*/
|
|
1139
|
+
declare const layoutOrderingMiddlewareFactory: (config: SectionOrderConfig) => AXPEntityModifier;
|
|
1140
|
+
/**
|
|
1141
|
+
* Helper to create a provider for the layout ordering middleware
|
|
1142
|
+
* By default it applies to all entities using the '*' pattern
|
|
1143
|
+
*/
|
|
1144
|
+
declare const createLayoutOrderingMiddlewareProvider: (config?: Partial<SectionOrderConfig>, entityName?: string | RegExp) => AXPEntityModifierProvider;
|
|
1145
|
+
/**
|
|
1146
|
+
* Default provider registered with the default configuration
|
|
1147
|
+
*/
|
|
1148
|
+
declare const layoutOrderingMiddlewareProvider: AXPEntityModifierProvider;
|
|
1149
|
+
|
|
942
1150
|
interface AXPGetEntityDetailsQueryInput {
|
|
943
1151
|
entity: string;
|
|
944
1152
|
id: string;
|
|
@@ -972,15 +1180,82 @@ declare class AXPGetEntityDetailsQuery implements AXPQuery<AXPGetEntityDetailsQu
|
|
|
972
1180
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPGetEntityDetailsQuery>;
|
|
973
1181
|
}
|
|
974
1182
|
|
|
1183
|
+
interface CategoryQueryEvent {
|
|
1184
|
+
skip: number;
|
|
1185
|
+
take: number;
|
|
1186
|
+
filter?: {
|
|
1187
|
+
field?: string;
|
|
1188
|
+
value?: unknown;
|
|
1189
|
+
operator?: {
|
|
1190
|
+
type: string;
|
|
1191
|
+
};
|
|
1192
|
+
filters?: unknown[];
|
|
1193
|
+
logic?: string;
|
|
1194
|
+
};
|
|
1195
|
+
}
|
|
1196
|
+
interface CategoryQueryResult {
|
|
1197
|
+
items: Record<string, unknown>[];
|
|
1198
|
+
total?: number;
|
|
1199
|
+
totalCount?: number;
|
|
1200
|
+
}
|
|
1201
|
+
type CategoryQueryFunction = (event: CategoryQueryEvent) => Promise<CategoryQueryResult>;
|
|
1202
|
+
interface CategoryTreeConfig {
|
|
1203
|
+
entityKey: string;
|
|
1204
|
+
textField?: string;
|
|
1205
|
+
valueField?: string;
|
|
1206
|
+
parentKey?: string;
|
|
1207
|
+
}
|
|
1208
|
+
interface CategoryTreeNodeData {
|
|
1209
|
+
categoryEntityDef: AXPEntity | null;
|
|
1210
|
+
categoryEntityQueryFunc: CategoryQueryFunction | null;
|
|
1211
|
+
basicQueryEvent: CategoryQueryEvent;
|
|
1212
|
+
}
|
|
1213
|
+
declare class AXPCategoryTreeService {
|
|
1214
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1215
|
+
protected readonly translate: AXTranslationService;
|
|
1216
|
+
/**
|
|
1217
|
+
* Initialize category tree data source
|
|
1218
|
+
*/
|
|
1219
|
+
initializeCategoryTree(config: CategoryTreeConfig): Promise<CategoryTreeNodeData | null>;
|
|
1220
|
+
/**
|
|
1221
|
+
* Create root node with children from items
|
|
1222
|
+
*/
|
|
1223
|
+
createRootNode(items: Record<string, unknown>[], config: CategoryTreeConfig): Promise<AXTreeViewNode>;
|
|
1224
|
+
/**
|
|
1225
|
+
* Convert entity item to AXTreeViewNode format
|
|
1226
|
+
*/
|
|
1227
|
+
convertToTreeNode(item: Record<string, unknown>, config: CategoryTreeConfig): AXTreeViewNode;
|
|
1228
|
+
/**
|
|
1229
|
+
* Load root categories
|
|
1230
|
+
*/
|
|
1231
|
+
loadRootCategories(treeData: CategoryTreeNodeData, config: CategoryTreeConfig): Promise<Record<string, unknown>[] | null>;
|
|
1232
|
+
/**
|
|
1233
|
+
* Load children for a given node
|
|
1234
|
+
*/
|
|
1235
|
+
loadChildren(node: AXTreeViewNode, treeData: CategoryTreeNodeData, config: CategoryTreeConfig): Promise<AXTreeViewNode[]>;
|
|
1236
|
+
/**
|
|
1237
|
+
* Search categories recursively (all levels)
|
|
1238
|
+
*/
|
|
1239
|
+
searchCategories(searchValue: string, treeData: CategoryTreeNodeData, config: CategoryTreeConfig): Promise<Record<string, unknown>[] | null>;
|
|
1240
|
+
/**
|
|
1241
|
+
* Update children at a specific node in the tree
|
|
1242
|
+
*/
|
|
1243
|
+
updateChildrenAtPath(nodes: AXTreeViewNode[], targetId: string, childNodes: AXTreeViewNode[]): AXTreeViewNode[];
|
|
1244
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCategoryTreeService, never>;
|
|
1245
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPCategoryTreeService>;
|
|
1246
|
+
}
|
|
1247
|
+
|
|
975
1248
|
interface IEntitySelectorStage {
|
|
976
1249
|
/** Select target entity using "module.entity" format */
|
|
977
1250
|
entity(fullName: string): IInterfaceSelectorStage;
|
|
978
1251
|
}
|
|
979
1252
|
interface IInterfaceSelectorStage {
|
|
980
1253
|
/** Use master.create interface */
|
|
981
|
-
create(): IPropertyFilterStage;
|
|
982
|
-
/** Use master.update interface */
|
|
983
|
-
update(
|
|
1254
|
+
create(initialData?: any): IPropertyFilterStage;
|
|
1255
|
+
/** Use master.update interface. Accepts id (string) or full record data (object). */
|
|
1256
|
+
update(data: string | Record<string, any>): IPropertyFilterStage;
|
|
1257
|
+
/** Use master.single interface (read-only view). Accepts id (string) or full record data (object). */
|
|
1258
|
+
single(data: string | Record<string, any>): IPropertyFilterStage;
|
|
984
1259
|
}
|
|
985
1260
|
interface IPropertyFilterStage {
|
|
986
1261
|
/** Only include provided property names (by AXPEntityProperty.name). Mutually exclusive with exclude(). */
|
|
@@ -1001,13 +1276,13 @@ interface IPropertyFilterStage {
|
|
|
1001
1276
|
show(): Promise<AXPDialogRef>;
|
|
1002
1277
|
mode(mode: 'edit' | 'view'): IPropertyFilterStage;
|
|
1003
1278
|
}
|
|
1004
|
-
declare class
|
|
1279
|
+
declare class AXPEntityFormBuilderService implements IEntitySelectorStage {
|
|
1005
1280
|
private readonly entityRegistry;
|
|
1006
1281
|
private readonly layoutBuilder;
|
|
1007
|
-
private readonly
|
|
1282
|
+
private readonly deviceService;
|
|
1008
1283
|
entity(fullName: string): IInterfaceSelectorStage;
|
|
1009
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
1010
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<
|
|
1284
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityFormBuilderService, never>;
|
|
1285
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityFormBuilderService>;
|
|
1011
1286
|
}
|
|
1012
1287
|
type CompatFormFieldBuilder = {
|
|
1013
1288
|
path(path: string): any;
|
|
@@ -1058,8 +1333,14 @@ declare function entityDetailsCreateActions(parentId: string): AXPEntityAction;
|
|
|
1058
1333
|
declare function entityDetailsSimpleCondition(fk: string): AXPQueryFilter;
|
|
1059
1334
|
declare function entityDetailsReferenceCondition(type: string): AXPQueryFilter[];
|
|
1060
1335
|
declare function entityDetailsEditAction(): AXPEntityAction;
|
|
1336
|
+
declare function entityDetailsNewEditAction(): AXPEntityAction;
|
|
1061
1337
|
declare function entityOverrideDetailsViewAction(): AXPEntityAction;
|
|
1062
|
-
declare function entityDetailsCrudActions(parentId: string
|
|
1338
|
+
declare function entityDetailsCrudActions(parentId: string, options?: {
|
|
1339
|
+
create?: boolean;
|
|
1340
|
+
delete?: boolean;
|
|
1341
|
+
view?: boolean;
|
|
1342
|
+
edit?: boolean;
|
|
1343
|
+
}): AXPEntityAction[];
|
|
1063
1344
|
declare function entityDetailsReferenceCreateActions(type: string): AXPEntityAction[];
|
|
1064
1345
|
type AXPEntityChangeSet = {
|
|
1065
1346
|
[key: string]: {
|
|
@@ -1077,6 +1358,449 @@ type AXPEntityChangeSet = {
|
|
|
1077
1358
|
*/
|
|
1078
1359
|
declare function detectEntityChanges(oldObj: any, newObj: any): AXPEntityChangeSet;
|
|
1079
1360
|
|
|
1361
|
+
declare class AXPEntityCategoryTreeSelectorComponent extends AXBasePageComponent implements OnInit {
|
|
1362
|
+
protected readonly categoryTreeService: AXPCategoryTreeService;
|
|
1363
|
+
private readonly translationService;
|
|
1364
|
+
protected readonly highlightService: AXHighlightService;
|
|
1365
|
+
entityKey: _angular_core.WritableSignal<string>;
|
|
1366
|
+
textField: _angular_core.WritableSignal<string>;
|
|
1367
|
+
valueField: _angular_core.WritableSignal<string>;
|
|
1368
|
+
allowMultiple: _angular_core.WritableSignal<boolean>;
|
|
1369
|
+
selectedValues: _angular_core.WritableSignal<string[]>;
|
|
1370
|
+
searchPlaceholder: _angular_core.WritableSignal<string>;
|
|
1371
|
+
excludedNodeId: _angular_core.WritableSignal<string | undefined>;
|
|
1372
|
+
searchWithChildren: _angular_core.WritableSignal<boolean>;
|
|
1373
|
+
protected tree: _angular_core.Signal<AXTreeViewComponent | undefined>;
|
|
1374
|
+
protected loading: _angular_core.WritableSignal<boolean>;
|
|
1375
|
+
protected selectedNodeIds: _angular_core.WritableSignal<string[]>;
|
|
1376
|
+
protected searchValue: _angular_core.WritableSignal<string>;
|
|
1377
|
+
protected searchResultCount: _angular_core.WritableSignal<number>;
|
|
1378
|
+
protected isSearching: _angular_core.WritableSignal<boolean>;
|
|
1379
|
+
protected resultsFoundText: _angular_core.WritableSignal<string>;
|
|
1380
|
+
protected noRecordsTitle: _angular_core.WritableSignal<string>;
|
|
1381
|
+
private currentSearchTerm;
|
|
1382
|
+
private isRefreshing;
|
|
1383
|
+
private isUpdatingSelection;
|
|
1384
|
+
/**
|
|
1385
|
+
* Computed property to check if we should show the "no search results" empty state.
|
|
1386
|
+
* Returns true when search is active, not searching, and no results found.
|
|
1387
|
+
*/
|
|
1388
|
+
protected readonly showNoSearchResults: _angular_core.Signal<boolean>;
|
|
1389
|
+
protected treeData: CategoryTreeNodeData | null;
|
|
1390
|
+
private treeConfig;
|
|
1391
|
+
private nodeDataCache;
|
|
1392
|
+
private matchingNodeIds;
|
|
1393
|
+
private relevantNodeIds;
|
|
1394
|
+
private expandedNodesBeforeSearch;
|
|
1395
|
+
private nodesExpandedDuringSearch;
|
|
1396
|
+
private isInitializing;
|
|
1397
|
+
ngOnInit(): void;
|
|
1398
|
+
private initializeTree;
|
|
1399
|
+
/**
|
|
1400
|
+
* Handles search input value changes - Uses server-side search for efficiency and reliability
|
|
1401
|
+
*/
|
|
1402
|
+
handleSearchChange(event: AXValueChangedEvent<string>): Promise<void>;
|
|
1403
|
+
/**
|
|
1404
|
+
* Collects all parent IDs for the given search results
|
|
1405
|
+
* Handles both nested 'parent' object and 'parentId' field in search results
|
|
1406
|
+
* Recursively fetches parent nodes to build the full parent chain
|
|
1407
|
+
*/
|
|
1408
|
+
private collectParentIds;
|
|
1409
|
+
/**
|
|
1410
|
+
* Collects children IDs for matching search results recursively
|
|
1411
|
+
* Adds all descendants (children, grandchildren, etc.) to relevantNodeIds so they appear in the filtered tree
|
|
1412
|
+
*/
|
|
1413
|
+
private collectChildrenIds;
|
|
1414
|
+
/**
|
|
1415
|
+
* Recursively collects all descendant IDs for a given node
|
|
1416
|
+
*/
|
|
1417
|
+
private collectChildrenRecursively;
|
|
1418
|
+
/**
|
|
1419
|
+
* Fetches a single item by ID from the server
|
|
1420
|
+
*/
|
|
1421
|
+
private fetchItemById;
|
|
1422
|
+
/**
|
|
1423
|
+
* Sorts parent IDs by their depth (root first, leaves last)
|
|
1424
|
+
* Optimized to use cached data and batch fetch missing items
|
|
1425
|
+
*/
|
|
1426
|
+
private sortParentsByDepth;
|
|
1427
|
+
/**
|
|
1428
|
+
* Updates translated messages for search results
|
|
1429
|
+
*/
|
|
1430
|
+
private updateTranslatedMessages;
|
|
1431
|
+
/**
|
|
1432
|
+
* Resets search state and restores tree to original expanded state
|
|
1433
|
+
*/
|
|
1434
|
+
private resetSearch;
|
|
1435
|
+
protected onNodeToggle(event: AXTreeViewNodeToggleEvent): Promise<void>;
|
|
1436
|
+
protected onNodeSelect(event: AXTreeViewNodeSelectEvent): Promise<void>;
|
|
1437
|
+
protected onSelectionChange(event: AXTreeViewSelectionChangeEvent): Promise<void>;
|
|
1438
|
+
/** Datasource callback for tree-view component. */
|
|
1439
|
+
protected datasource: (id?: string) => Promise<AXTreeViewNode[]>;
|
|
1440
|
+
protected onConfirm(): Promise<void>;
|
|
1441
|
+
protected onCancel(): Promise<void>;
|
|
1442
|
+
/**
|
|
1443
|
+
* Checks if a node matches the current search term
|
|
1444
|
+
*/
|
|
1445
|
+
protected isMatchingNode(nodeId: string): boolean;
|
|
1446
|
+
/**
|
|
1447
|
+
* Checks if a node is currently selected
|
|
1448
|
+
*/
|
|
1449
|
+
protected isNodeSelected(nodeId: string | number | undefined): boolean;
|
|
1450
|
+
/**
|
|
1451
|
+
* Handles checkbox change event to toggle node selection
|
|
1452
|
+
* In multiple mode: recursively selects/deselects children
|
|
1453
|
+
* Parent states are handled automatically by tree component's intermediate-nested behavior
|
|
1454
|
+
*/
|
|
1455
|
+
protected handleCheckboxChange(nodeId: string | number | undefined, checked: boolean): Promise<void>;
|
|
1456
|
+
/**
|
|
1457
|
+
* Selects a node and recursively selects all its children
|
|
1458
|
+
*/
|
|
1459
|
+
private selectNodeAndChildren;
|
|
1460
|
+
/**
|
|
1461
|
+
* Collects all descendant node IDs recursively
|
|
1462
|
+
*/
|
|
1463
|
+
private collectAllDescendants;
|
|
1464
|
+
/**
|
|
1465
|
+
* Deselects a node and recursively deselects all its children
|
|
1466
|
+
*/
|
|
1467
|
+
private deselectNodeAndChildren;
|
|
1468
|
+
/**
|
|
1469
|
+
* Recursively deselects all children of a parent node
|
|
1470
|
+
*/
|
|
1471
|
+
private loadAndDeselectChildrenRecursively;
|
|
1472
|
+
/**
|
|
1473
|
+
* Updates parent states based on children selection (select/intermediate)
|
|
1474
|
+
* Called after a node is selected/deselected to update parent checkbox states
|
|
1475
|
+
*/
|
|
1476
|
+
private updateParentStates;
|
|
1477
|
+
/**
|
|
1478
|
+
* Recursively loads and selects all children of a parent node using the datasource
|
|
1479
|
+
* This method directly calls datasource without expanding/collapsing nodes to avoid UI glitches
|
|
1480
|
+
*/
|
|
1481
|
+
private loadAndSelectChildrenRecursively;
|
|
1482
|
+
private updateSelectedNodes;
|
|
1483
|
+
/**
|
|
1484
|
+
* Updates all parent states based on their children's selection
|
|
1485
|
+
* Used during initialization to ensure proper parent states (select/intermediate)
|
|
1486
|
+
*/
|
|
1487
|
+
private updateAllParentStates;
|
|
1488
|
+
/**
|
|
1489
|
+
* Expands parents of selected nodes so they're visible when popup opens
|
|
1490
|
+
*/
|
|
1491
|
+
private expandParentsOfSelectedNodes;
|
|
1492
|
+
/**
|
|
1493
|
+
* Selects parents whose all children are selected
|
|
1494
|
+
* This ensures that when all children of a parent are selected, the parent also appears selected
|
|
1495
|
+
*/
|
|
1496
|
+
private selectParentsWithAllChildrenSelected;
|
|
1497
|
+
/**
|
|
1498
|
+
* Syncs selection state with the tree component
|
|
1499
|
+
* Handles cases where nodes might not be in the tree structure yet
|
|
1500
|
+
*/
|
|
1501
|
+
private syncSelectionWithTree;
|
|
1502
|
+
/**
|
|
1503
|
+
* Loads node data for IDs that are selected but not yet in the cache.
|
|
1504
|
+
* This is critical for pre-selected values in collapsed branches.
|
|
1505
|
+
*/
|
|
1506
|
+
private loadMissingNodeData;
|
|
1507
|
+
/**
|
|
1508
|
+
* Marks nodes as selected in the tree structure based on selectedNodeIds.
|
|
1509
|
+
* This ensures pre-selected nodes appear selected when the tree is rendered.
|
|
1510
|
+
*/
|
|
1511
|
+
private markNodesAsSelected;
|
|
1512
|
+
/**
|
|
1513
|
+
* Marks a single node as selected if it's in the selectedNodeIds list.
|
|
1514
|
+
*/
|
|
1515
|
+
private markNodeAsSelectedIfNeeded;
|
|
1516
|
+
/**
|
|
1517
|
+
* Marks a node and its children as disabled if the node ID matches the excluded ID.
|
|
1518
|
+
*/
|
|
1519
|
+
private markNodeAsDisabled;
|
|
1520
|
+
/**
|
|
1521
|
+
* Processes root node: marks excluded as disabled, marks selected, and syncs selection with tree component
|
|
1522
|
+
*/
|
|
1523
|
+
private processRootNode;
|
|
1524
|
+
/**
|
|
1525
|
+
* Processes child nodes: marks excluded as disabled, marks selected, and syncs selection
|
|
1526
|
+
*/
|
|
1527
|
+
private processChildNodes;
|
|
1528
|
+
/**
|
|
1529
|
+
* Caches node data from items array
|
|
1530
|
+
*/
|
|
1531
|
+
private cacheNodeData;
|
|
1532
|
+
/**
|
|
1533
|
+
* Caches node data from tree nodes
|
|
1534
|
+
*/
|
|
1535
|
+
private cacheNodeDataFromNodes;
|
|
1536
|
+
/**
|
|
1537
|
+
* Calculate the full path from root to the selected node.
|
|
1538
|
+
* Returns an array of strings like ["C", "B"] for node B under parent C.
|
|
1539
|
+
* Uses tree-view's getNodePath() API when available, otherwise falls back to manual calculation.
|
|
1540
|
+
*/
|
|
1541
|
+
private calculateNodePath;
|
|
1542
|
+
/**
|
|
1543
|
+
* Manual path calculation fallback
|
|
1544
|
+
*/
|
|
1545
|
+
private calculateNodePathManually;
|
|
1546
|
+
/**
|
|
1547
|
+
* Get the display title for a node.
|
|
1548
|
+
*/
|
|
1549
|
+
private getNodeTitle;
|
|
1550
|
+
/**
|
|
1551
|
+
* Checks if a node is a leaf node (has no children)
|
|
1552
|
+
*/
|
|
1553
|
+
private isLeafNode;
|
|
1554
|
+
/**
|
|
1555
|
+
* Checks if a node has children by querying the data source
|
|
1556
|
+
*/
|
|
1557
|
+
private checkIfNodeHasChildren;
|
|
1558
|
+
private getSelectedItems;
|
|
1559
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryTreeSelectorComponent, never>;
|
|
1560
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryTreeSelectorComponent, "axp-entity-category-tree-selector", never, {}, {}, never, never, true, never>;
|
|
1561
|
+
}
|
|
1562
|
+
|
|
1563
|
+
declare class AXPEntityCategoryWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
|
|
1564
|
+
protected readonly entityDetailPopoverService: AXPEntityDetailPopoverService;
|
|
1565
|
+
protected readonly formatService: AXFormatService;
|
|
1566
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1567
|
+
private readonly rawValueSignal;
|
|
1568
|
+
set rawValueInput(value: any);
|
|
1569
|
+
protected entity: _angular_core.Signal<string>;
|
|
1570
|
+
protected valueField: _angular_core.Signal<string>;
|
|
1571
|
+
protected textField: _angular_core.Signal<string>;
|
|
1572
|
+
protected columnName: _angular_core.Signal<string>;
|
|
1573
|
+
protected defaultTextField: _angular_core.Signal<string>;
|
|
1574
|
+
protected displayField: _angular_core.Signal<string>;
|
|
1575
|
+
protected host: ElementRef<any>;
|
|
1576
|
+
private entityDef;
|
|
1577
|
+
protected displayItems: _angular_core.WritableSignal<any[]>;
|
|
1578
|
+
protected selectedItemIndex: _angular_core.WritableSignal<number>;
|
|
1579
|
+
private efEntity;
|
|
1580
|
+
private efDisplay;
|
|
1581
|
+
protected visibleItems: _angular_core.Signal<any[]>;
|
|
1582
|
+
protected showItemDetail(item: any, index: number): Promise<void>;
|
|
1583
|
+
protected handleItemClick(index: number): void;
|
|
1584
|
+
protected getItemPath(item: any): string[];
|
|
1585
|
+
protected hasParent(item: any): boolean;
|
|
1586
|
+
protected getItemText(item: any): string;
|
|
1587
|
+
protected getItemId(item: any): string;
|
|
1588
|
+
private extractItemWithPath;
|
|
1589
|
+
/**
|
|
1590
|
+
* Calculate the full path from root to the item.
|
|
1591
|
+
* Returns an array of strings like ["C", "B"] for item B under parent C.
|
|
1592
|
+
*/
|
|
1593
|
+
private calculateItemPath;
|
|
1594
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryWidgetColumnComponent, never>;
|
|
1595
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryWidgetColumnComponent, "axp-entity-category-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; "rawValueInput": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
|
|
1596
|
+
}
|
|
1597
|
+
|
|
1598
|
+
interface AXPEntityCategoryWidgetOptions {
|
|
1599
|
+
disabled?: boolean | AXPExpression;
|
|
1600
|
+
readonly?: boolean | AXPExpression;
|
|
1601
|
+
placeholder?: string;
|
|
1602
|
+
entity?: string;
|
|
1603
|
+
multiple?: boolean;
|
|
1604
|
+
textField?: string;
|
|
1605
|
+
valueField?: string;
|
|
1606
|
+
parentKey?: string;
|
|
1607
|
+
expose?: Array<{
|
|
1608
|
+
source: string;
|
|
1609
|
+
target: string;
|
|
1610
|
+
}>;
|
|
1611
|
+
allowClear?: boolean;
|
|
1612
|
+
look?: 'select' | 'lookup';
|
|
1613
|
+
maxVisible?: number;
|
|
1614
|
+
characterLimit?: number | 'auto';
|
|
1615
|
+
sectionLimit?: number | 'auto';
|
|
1616
|
+
}
|
|
1617
|
+
|
|
1618
|
+
declare class AXPEntityCategoryWidgetEditComponent extends AXPValueWidgetComponent<any, AXPEntityCategoryWidgetOptions> {
|
|
1619
|
+
#private;
|
|
1620
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1621
|
+
protected readonly popupService: AXPopupService;
|
|
1622
|
+
private readonly translateService;
|
|
1623
|
+
protected readonly cdr: ChangeDetectorRef;
|
|
1624
|
+
protected entity: _angular_core.Signal<string>;
|
|
1625
|
+
protected multiple: _angular_core.Signal<boolean>;
|
|
1626
|
+
protected disabled: _angular_core.Signal<boolean>;
|
|
1627
|
+
protected textField: _angular_core.Signal<string>;
|
|
1628
|
+
protected valueField: _angular_core.Signal<string>;
|
|
1629
|
+
protected expose: _angular_core.Signal<{
|
|
1630
|
+
source: string;
|
|
1631
|
+
target: string;
|
|
1632
|
+
}[] | undefined>;
|
|
1633
|
+
protected allowClear: _angular_core.Signal<boolean>;
|
|
1634
|
+
protected characterLimit: _angular_core.Signal<number | "auto">;
|
|
1635
|
+
protected sectionLimit: _angular_core.Signal<number | "auto">;
|
|
1636
|
+
protected defaultTextField: _angular_core.Signal<string>;
|
|
1637
|
+
protected displayField: _angular_core.Signal<string>;
|
|
1638
|
+
protected searchPlaceholderText: _angular_core.WritableSignal<string>;
|
|
1639
|
+
protected selectedItems: _angular_core.WritableSignal<any[]>;
|
|
1640
|
+
protected isLoading: _angular_core.WritableSignal<boolean>;
|
|
1641
|
+
protected isOpen: _angular_core.WritableSignal<boolean>;
|
|
1642
|
+
protected tagBox: _angular_core.Signal<AXTagBoxComponent | undefined>;
|
|
1643
|
+
protected searchTerm: _angular_core.WritableSignal<string | null>;
|
|
1644
|
+
private entityDef;
|
|
1645
|
+
protected handleAddClick(e: AXClickEvent): void;
|
|
1646
|
+
protected handleValueChange(e: AXValueChangedEvent): void;
|
|
1647
|
+
protected handleOnBlur(e: AXFocusEvent): void;
|
|
1648
|
+
protected handleKeyUp(e: AXHtmlEvent): Promise<void>;
|
|
1649
|
+
protected handleClearClick(): void;
|
|
1650
|
+
protected handleRemoveItem(event: Event, index: number): Promise<void>;
|
|
1651
|
+
clearInput(): void;
|
|
1652
|
+
private showTreeSelector;
|
|
1653
|
+
clear(): void;
|
|
1654
|
+
private findByValue;
|
|
1655
|
+
private setItems;
|
|
1656
|
+
private singleOrMultiple;
|
|
1657
|
+
protected getItemLabel(item: any): string;
|
|
1658
|
+
/**
|
|
1659
|
+
* Get item path as array for breadcrumb component
|
|
1660
|
+
*/
|
|
1661
|
+
protected getItemPath(item: any): string[];
|
|
1662
|
+
/**
|
|
1663
|
+
* Join path array with separator.
|
|
1664
|
+
* Override this method to customize the separator (e.g., " > ", " -> ", " / ")
|
|
1665
|
+
*/
|
|
1666
|
+
protected joinPath(path: string[]): string;
|
|
1667
|
+
protected getItemId(item: any): string;
|
|
1668
|
+
/**
|
|
1669
|
+
* Calculate the full path from root to the item.
|
|
1670
|
+
* Returns an array of strings like ["C", "B"] for item B under parent C.
|
|
1671
|
+
*/
|
|
1672
|
+
private calculateItemPath;
|
|
1673
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryWidgetEditComponent, never>;
|
|
1674
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryWidgetEditComponent, "axp-entity-category-widget-edit", never, {}, {}, never, never, true, never>;
|
|
1675
|
+
}
|
|
1676
|
+
|
|
1677
|
+
declare class AXPEntityCategoryWidgetViewComponent extends AXPValueWidgetComponent<any> {
|
|
1678
|
+
protected readonly formatService: AXFormatService;
|
|
1679
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1680
|
+
protected entity: _angular_core.Signal<string>;
|
|
1681
|
+
protected multiple: _angular_core.Signal<boolean>;
|
|
1682
|
+
protected valueField: _angular_core.Signal<string>;
|
|
1683
|
+
protected textField: _angular_core.Signal<string>;
|
|
1684
|
+
protected badgeClass: _angular_core.Signal<string>;
|
|
1685
|
+
protected displayField: _angular_core.Signal<string>;
|
|
1686
|
+
protected loading: _angular_core.WritableSignal<boolean>;
|
|
1687
|
+
private entityDef;
|
|
1688
|
+
protected displayItems: _angular_core.WritableSignal<{
|
|
1689
|
+
id: string;
|
|
1690
|
+
text: string;
|
|
1691
|
+
}[]>;
|
|
1692
|
+
private efEntity;
|
|
1693
|
+
private efDisplay;
|
|
1694
|
+
private extractItem;
|
|
1695
|
+
private getDisplayText;
|
|
1696
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCategoryWidgetViewComponent, never>;
|
|
1697
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityCategoryWidgetViewComponent, "axp-entity-category-widget-view", never, {}, {}, never, never, true, never>;
|
|
1698
|
+
}
|
|
1699
|
+
|
|
1700
|
+
declare const AXPEntityCategoryWidget: AXPWidgetConfig;
|
|
1701
|
+
|
|
1702
|
+
declare class AXPTruncatedBreadcrumbComponent implements OnDestroy {
|
|
1703
|
+
/**
|
|
1704
|
+
* Array of path sections to display
|
|
1705
|
+
*/
|
|
1706
|
+
sections: _angular_core.InputSignal<string[]>;
|
|
1707
|
+
/**
|
|
1708
|
+
* Maximum number of characters per section.
|
|
1709
|
+
* Can be a number or 'auto' to calculate based on available space.
|
|
1710
|
+
*/
|
|
1711
|
+
characterLimit: _angular_core.InputSignal<number | "auto">;
|
|
1712
|
+
/**
|
|
1713
|
+
* Maximum number of sections to display before showing ellipsis.
|
|
1714
|
+
* Can be a number or 'auto' to calculate based on available space.
|
|
1715
|
+
*/
|
|
1716
|
+
sectionLimit: _angular_core.InputSignal<number | "auto">;
|
|
1717
|
+
/**
|
|
1718
|
+
* Icon class for separator between sections
|
|
1719
|
+
*/
|
|
1720
|
+
separatorIcon: _angular_core.InputSignal<string>;
|
|
1721
|
+
/**
|
|
1722
|
+
* Icon class for ellipsis
|
|
1723
|
+
*/
|
|
1724
|
+
ellipsisIcon: _angular_core.InputSignal<string>;
|
|
1725
|
+
/**
|
|
1726
|
+
* Icon class for eye icon (collapse button)
|
|
1727
|
+
*/
|
|
1728
|
+
eyeIcon: _angular_core.InputSignal<string>;
|
|
1729
|
+
protected container: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
|
|
1730
|
+
protected isExpanded: _angular_core.WritableSignal<boolean>;
|
|
1731
|
+
private containerWidth;
|
|
1732
|
+
private resizeObserver;
|
|
1733
|
+
/**
|
|
1734
|
+
* Effective character limit (calculated if 'auto', otherwise uses input value)
|
|
1735
|
+
*/
|
|
1736
|
+
protected effectiveCharacterLimit: _angular_core.Signal<number>;
|
|
1737
|
+
/**
|
|
1738
|
+
* Effective section limit (calculated if 'auto', otherwise uses input value)
|
|
1739
|
+
*/
|
|
1740
|
+
protected effectiveSectionLimit: _angular_core.Signal<number>;
|
|
1741
|
+
/**
|
|
1742
|
+
* All sections with truncated text (for collapsed display)
|
|
1743
|
+
*/
|
|
1744
|
+
protected allSections: _angular_core.Signal<{
|
|
1745
|
+
text: string;
|
|
1746
|
+
original: string;
|
|
1747
|
+
}[]>;
|
|
1748
|
+
/**
|
|
1749
|
+
* All sections with full text (for expanded display)
|
|
1750
|
+
*/
|
|
1751
|
+
protected allSectionsFull: _angular_core.Signal<string[]>;
|
|
1752
|
+
/**
|
|
1753
|
+
* Sections to display (first N sections) when collapsed
|
|
1754
|
+
*/
|
|
1755
|
+
protected displayedSections: _angular_core.Signal<{
|
|
1756
|
+
text: string;
|
|
1757
|
+
original: string;
|
|
1758
|
+
}[]>;
|
|
1759
|
+
/**
|
|
1760
|
+
* Last section (always shown if there are hidden sections)
|
|
1761
|
+
*/
|
|
1762
|
+
protected lastSection: _angular_core.Signal<{
|
|
1763
|
+
text: string;
|
|
1764
|
+
original: string;
|
|
1765
|
+
}>;
|
|
1766
|
+
/**
|
|
1767
|
+
* Check if there are hidden sections
|
|
1768
|
+
*/
|
|
1769
|
+
protected hasHiddenSections: _angular_core.Signal<boolean>;
|
|
1770
|
+
constructor();
|
|
1771
|
+
ngOnDestroy(): void;
|
|
1772
|
+
/**
|
|
1773
|
+
* Handles click on separator icon to expand
|
|
1774
|
+
*/
|
|
1775
|
+
protected handleSeparatorClick(event: Event): void;
|
|
1776
|
+
/**
|
|
1777
|
+
* Handles click on ellipsis icon to expand
|
|
1778
|
+
*/
|
|
1779
|
+
protected handleEllipsisClick(event: Event): void;
|
|
1780
|
+
/**
|
|
1781
|
+
* Handles click on eye icon to collapse
|
|
1782
|
+
*/
|
|
1783
|
+
protected handleCollapseClick(event: Event): void;
|
|
1784
|
+
/**
|
|
1785
|
+
* Initializes ResizeObserver to track container width
|
|
1786
|
+
*/
|
|
1787
|
+
private initializeResizeObserver;
|
|
1788
|
+
/**
|
|
1789
|
+
* Calculates automatic character limit based on available space
|
|
1790
|
+
*/
|
|
1791
|
+
private calculateAutoCharacterLimit;
|
|
1792
|
+
/**
|
|
1793
|
+
* Calculates automatic section limit based on available space
|
|
1794
|
+
*/
|
|
1795
|
+
private calculateAutoSectionLimit;
|
|
1796
|
+
/**
|
|
1797
|
+
* Truncates text to character limit with ellipsis
|
|
1798
|
+
*/
|
|
1799
|
+
private truncateText;
|
|
1800
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTruncatedBreadcrumbComponent, never>;
|
|
1801
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPTruncatedBreadcrumbComponent, "axp-truncated-breadcrumb", never, { "sections": { "alias": "sections"; "required": false; "isSignal": true; }; "characterLimit": { "alias": "characterLimit"; "required": false; "isSignal": true; }; "sectionLimit": { "alias": "sectionLimit"; "required": false; "isSignal": true; }; "separatorIcon": { "alias": "separatorIcon"; "required": false; "isSignal": true; }; "ellipsisIcon": { "alias": "ellipsisIcon"; "required": false; "isSignal": true; }; "eyeIcon": { "alias": "eyeIcon"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1802
|
+
}
|
|
1803
|
+
|
|
1080
1804
|
declare class AXPEntityListTableService {
|
|
1081
1805
|
private readonly workflow;
|
|
1082
1806
|
private readonly expressionEvaluator;
|
|
@@ -1149,68 +1873,9 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
1149
1873
|
protected workflow: AXPWorkflowService;
|
|
1150
1874
|
protected entityListTableService: AXPEntityListTableService;
|
|
1151
1875
|
protected entityListToolbarService: AXPEntityListToolbarService;
|
|
1152
|
-
protected
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
systemThemeMode: _angular_core.Signal<_acorex_platform_themes_shared.AXPThemeMode>;
|
|
1156
|
-
font: _ngrx_signals.DeepSignal<{
|
|
1157
|
-
family: string;
|
|
1158
|
-
size: string;
|
|
1159
|
-
}>;
|
|
1160
|
-
screenSize: _angular_core.Signal<_acorex_platform_themes_shared.AXPScreenSize>;
|
|
1161
|
-
deviceType: _angular_core.Signal<_acorex_platform_themes_shared.AXPDeviceType>;
|
|
1162
|
-
isTouchDevice: _angular_core.Signal<boolean>;
|
|
1163
|
-
overlayLoading: _angular_core.Signal<boolean>;
|
|
1164
|
-
navigationLoading: _angular_core.Signal<boolean>;
|
|
1165
|
-
overlayLoadingTaskCount: _angular_core.Signal<number>;
|
|
1166
|
-
navigationLoadingTaskCount: _angular_core.Signal<number>;
|
|
1167
|
-
sideMenuState: _angular_core.Signal<_acorex_platform_themes_shared.AXPSideMenuState>;
|
|
1168
|
-
sideMenuWidth: _angular_core.Signal<number>;
|
|
1169
|
-
menuOrientation: _angular_core.Signal<_acorex_platform_themes_shared.AXPMenuOrientation>;
|
|
1170
|
-
isPrinting: _angular_core.Signal<boolean>;
|
|
1171
|
-
isDarkMode: _angular_core.Signal<boolean>;
|
|
1172
|
-
isLightMode: _angular_core.Signal<boolean>;
|
|
1173
|
-
isSystemMode: _angular_core.Signal<boolean>;
|
|
1174
|
-
isSideMenuOpen: _angular_core.Signal<boolean>;
|
|
1175
|
-
isSideMenuOverlay: _angular_core.Signal<boolean>;
|
|
1176
|
-
isSmall: _angular_core.Signal<boolean>;
|
|
1177
|
-
isMedium: _angular_core.Signal<boolean>;
|
|
1178
|
-
isLarge: _angular_core.Signal<boolean>;
|
|
1179
|
-
isMobileDevice: _angular_core.Signal<boolean>;
|
|
1180
|
-
isTabletDevice: _angular_core.Signal<boolean>;
|
|
1181
|
-
isDesktopDevice: _angular_core.Signal<boolean>;
|
|
1182
|
-
isTouchScreen: _angular_core.Signal<boolean>;
|
|
1183
|
-
isOverlayLoading: _angular_core.Signal<boolean>;
|
|
1184
|
-
isNavigationLoading: _angular_core.Signal<boolean>;
|
|
1185
|
-
isMenuHorizontal: _angular_core.Signal<boolean>;
|
|
1186
|
-
changeThemeMode: (theme: _acorex_platform_themes_shared.AXPThemeMode) => void;
|
|
1187
|
-
openSideMenu: () => void;
|
|
1188
|
-
closeSideMenu: () => void;
|
|
1189
|
-
setSideMenuWidth: (width: number) => void;
|
|
1190
|
-
toggleSideMenu: () => void;
|
|
1191
|
-
setNavigationLoading: (value: boolean, delay?: number) => void;
|
|
1192
|
-
setOverlayLoading: (value: boolean, delay?: number) => void;
|
|
1193
|
-
loadSettings: () => Promise<void>;
|
|
1194
|
-
} & _ngrx_signals.StateSource<{
|
|
1195
|
-
currentMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
1196
|
-
currentPalette: string;
|
|
1197
|
-
systemThemeMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
1198
|
-
font: {
|
|
1199
|
-
family: string;
|
|
1200
|
-
size: string;
|
|
1201
|
-
};
|
|
1202
|
-
screenSize: _acorex_platform_themes_shared.AXPScreenSize;
|
|
1203
|
-
deviceType: _acorex_platform_themes_shared.AXPDeviceType;
|
|
1204
|
-
isTouchDevice: boolean;
|
|
1205
|
-
overlayLoading: boolean;
|
|
1206
|
-
navigationLoading: boolean;
|
|
1207
|
-
overlayLoadingTaskCount: number;
|
|
1208
|
-
navigationLoadingTaskCount: number;
|
|
1209
|
-
sideMenuState: _acorex_platform_themes_shared.AXPSideMenuState;
|
|
1210
|
-
sideMenuWidth: number;
|
|
1211
|
-
menuOrientation: _acorex_platform_themes_shared.AXPMenuOrientation;
|
|
1212
|
-
isPrinting: boolean;
|
|
1213
|
-
}>;
|
|
1876
|
+
protected deviceService: AXPDeviceService;
|
|
1877
|
+
protected commandService: AXPCommandService;
|
|
1878
|
+
protected eventService: AXPBroadcastEventService;
|
|
1214
1879
|
protected isMounted: _angular_core.WritableSignal<boolean>;
|
|
1215
1880
|
readonly entity: _angular_core.WritableSignal<AXPEntity | null>;
|
|
1216
1881
|
protected listNode: _angular_core.WritableSignal<AXPWidgetNode | null>;
|
|
@@ -1235,6 +1900,7 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
1235
1900
|
protected handleActionClick(item: AXPActionMenuItem): void;
|
|
1236
1901
|
protected handleSecondaryActionClick(item: AXPActionMenuItem): void;
|
|
1237
1902
|
protected execute(commandName: string, data: any): Promise<void>;
|
|
1903
|
+
protected queries: undefined;
|
|
1238
1904
|
/**
|
|
1239
1905
|
* Validates that all required dependencies are available
|
|
1240
1906
|
*/
|
|
@@ -1271,38 +1937,6 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
1271
1937
|
|
|
1272
1938
|
declare const AXPEntityListWidget: AXPWidgetConfig;
|
|
1273
1939
|
|
|
1274
|
-
declare class AXPEntityReferenceWidgetViewComponent extends AXPLayoutBaseWidgetComponent {
|
|
1275
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityReferenceWidgetViewComponent, never>;
|
|
1276
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityReferenceWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1277
|
-
}
|
|
1278
|
-
|
|
1279
|
-
declare class AXPEntityReferenceWidgetEditComponent extends AXPLayoutBaseWidgetComponent {
|
|
1280
|
-
#private;
|
|
1281
|
-
protected readonly injector: Injector;
|
|
1282
|
-
protected readonly entityResolver: AXPEntityResolver;
|
|
1283
|
-
protected entity: _angular_core.Signal<string>;
|
|
1284
|
-
protected entityDef: _angular_core.WritableSignal<AXPEntity | null>;
|
|
1285
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityReferenceWidgetEditComponent, never>;
|
|
1286
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityReferenceWidgetEditComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1287
|
-
}
|
|
1288
|
-
|
|
1289
|
-
declare class AXPEntityReferenceWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
|
|
1290
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityReferenceWidgetColumnComponent, never>;
|
|
1291
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityReferenceWidgetColumnComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
|
|
1292
|
-
}
|
|
1293
|
-
|
|
1294
|
-
declare class AXPEntityReferenceWidgetPrintComponent extends AXPLayoutBaseWidgetComponent {
|
|
1295
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityReferenceWidgetPrintComponent, never>;
|
|
1296
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityReferenceWidgetPrintComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1297
|
-
}
|
|
1298
|
-
|
|
1299
|
-
declare class AXPEntityReferenceWidgetDesignerComponent extends AXPLayoutBaseWidgetComponent {
|
|
1300
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityReferenceWidgetDesignerComponent, never>;
|
|
1301
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPEntityReferenceWidgetDesignerComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1302
|
-
}
|
|
1303
|
-
|
|
1304
|
-
declare const AXPEntityReferenceWidget: AXPWidgetConfig;
|
|
1305
|
-
|
|
1306
1940
|
declare class AXPLookupFilterWidgetEditComponent extends AXPValueWidgetComponent<any> {
|
|
1307
1941
|
#private;
|
|
1308
1942
|
protected editorPath: string;
|
|
@@ -1331,12 +1965,13 @@ declare module '@acorex/platform/layout/widget-core' {
|
|
|
1331
1965
|
|
|
1332
1966
|
declare class AXPLookupWidgetViewComponent extends AXPValueWidgetComponent<any> {
|
|
1333
1967
|
protected readonly formatService: AXFormatService;
|
|
1334
|
-
protected readonly entityResolver:
|
|
1968
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1335
1969
|
protected entity: _angular_core.Signal<string>;
|
|
1336
1970
|
protected multiple: _angular_core.Signal<boolean>;
|
|
1337
1971
|
protected valueField: _angular_core.Signal<string>;
|
|
1338
1972
|
protected textField: _angular_core.Signal<string>;
|
|
1339
1973
|
protected badgeClass: _angular_core.Signal<string>;
|
|
1974
|
+
protected displayFormat: _angular_core.Signal<string | undefined>;
|
|
1340
1975
|
protected displayField: _angular_core.Signal<string>;
|
|
1341
1976
|
protected loading: _angular_core.WritableSignal<boolean>;
|
|
1342
1977
|
private entityDef;
|
|
@@ -1344,6 +1979,7 @@ declare class AXPLookupWidgetViewComponent extends AXPValueWidgetComponent<any>
|
|
|
1344
1979
|
private efEntity;
|
|
1345
1980
|
private efDisplay;
|
|
1346
1981
|
private extractItem;
|
|
1982
|
+
private getDisplayText;
|
|
1347
1983
|
private get __class();
|
|
1348
1984
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLookupWidgetViewComponent, never>;
|
|
1349
1985
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLookupWidgetViewComponent, "axp-lookup-widget-view", never, {}, {}, never, never, true, never>;
|
|
@@ -1362,6 +1998,8 @@ interface AXPEntityDataSelectorOptions {
|
|
|
1362
1998
|
}[];
|
|
1363
1999
|
allowCreate?: boolean;
|
|
1364
2000
|
searchFields?: string[];
|
|
2001
|
+
initialSearchTerm?: string;
|
|
2002
|
+
selectedItemIds?: string[] | number[];
|
|
1365
2003
|
}
|
|
1366
2004
|
interface AXPEntityDataSelectorResult {
|
|
1367
2005
|
items: any[];
|
|
@@ -1420,12 +2058,13 @@ interface AXPLookupWidgetOptions {
|
|
|
1420
2058
|
expose?: string | string[];
|
|
1421
2059
|
look?: AXPLookupWidgetLookType;
|
|
1422
2060
|
allowClear?: boolean;
|
|
2061
|
+
displayFormat?: string;
|
|
1423
2062
|
}
|
|
1424
2063
|
|
|
1425
2064
|
declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any> {
|
|
1426
2065
|
#private;
|
|
1427
2066
|
protected readonly injector: Injector;
|
|
1428
|
-
protected readonly entityResolver:
|
|
2067
|
+
protected readonly entityResolver: AXPEntityDefinitionRegistryService;
|
|
1429
2068
|
protected readonly formatService: AXFormatService;
|
|
1430
2069
|
protected readonly popupService: AXPopupService;
|
|
1431
2070
|
protected readonly entityDataSelectorService: AXPEntityDataSelectorService;
|
|
@@ -1438,6 +2077,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
1438
2077
|
protected disabled: _angular_core.Signal<string>;
|
|
1439
2078
|
protected columns: _angular_core.Signal<string[]>;
|
|
1440
2079
|
protected textField: _angular_core.Signal<string>;
|
|
2080
|
+
protected hasClearButton: _angular_core.Signal<boolean>;
|
|
1441
2081
|
protected customFilter: _angular_core.Signal<AXDataSourceFilterOption>;
|
|
1442
2082
|
protected multiple: _angular_core.Signal<boolean>;
|
|
1443
2083
|
protected look: _angular_core.Signal<AXPLookupWidgetLookType>;
|
|
@@ -1446,21 +2086,27 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
1446
2086
|
protected displayField: _angular_core.Signal<string>;
|
|
1447
2087
|
protected selectedItemsText: _angular_core.Signal<string>;
|
|
1448
2088
|
protected valueField: _angular_core.Signal<string>;
|
|
2089
|
+
protected displayFormat: _angular_core.Signal<string | undefined>;
|
|
1449
2090
|
protected conditions?: AXPQueryFilter[];
|
|
1450
2091
|
protected filter: AXDataSourceFilterOption | null;
|
|
1451
2092
|
private entityDef;
|
|
2093
|
+
/**
|
|
2094
|
+
* Get default sort order from entity's first list view
|
|
2095
|
+
*/
|
|
2096
|
+
protected defaultSorts: _angular_core.Signal<AXDataSourceSortOption[]>;
|
|
1452
2097
|
protected dataSource: _angular_core.Signal<AXDataSource<unknown> | null>;
|
|
1453
2098
|
protected searchTerm: _angular_core.WritableSignal<string | null>;
|
|
1454
2099
|
protected selectedItems: _angular_core.WritableSignal<any[]>;
|
|
1455
2100
|
textbox: _angular_core.Signal<AXTagBoxComponent | undefined>;
|
|
1456
2101
|
protected isLoading: _angular_core.WritableSignal<boolean>;
|
|
1457
2102
|
protected isOpen: _angular_core.WritableSignal<boolean>;
|
|
1458
|
-
|
|
2103
|
+
private placeholderUpdateToken;
|
|
1459
2104
|
private findByValue;
|
|
1460
2105
|
protected handleOnClick(e: AXClickEvent): void;
|
|
1461
2106
|
private showSelector;
|
|
1462
2107
|
protected selectBoxValueChange(e: AXValueChangedEvent): void;
|
|
1463
2108
|
protected handleValueChange(e: AXValueChangedEvent): void;
|
|
2109
|
+
protected handleSearchInputChange(e: AXValueChangedEvent): void;
|
|
1464
2110
|
protected handleOnBlur(e: AXFocusEvent): void;
|
|
1465
2111
|
protected handleKeyUp(e: AXHtmlEvent): Promise<void>;
|
|
1466
2112
|
private setItems;
|
|
@@ -1468,6 +2114,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
1468
2114
|
refresh(): void;
|
|
1469
2115
|
clear(): void;
|
|
1470
2116
|
clearInput(): void;
|
|
2117
|
+
protected getTagLabel(item: any): string;
|
|
1471
2118
|
private searchByValue;
|
|
1472
2119
|
private mergeFilter;
|
|
1473
2120
|
private singleOrMultiple;
|
|
@@ -1481,6 +2128,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
1481
2128
|
|
|
1482
2129
|
declare class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
|
|
1483
2130
|
private readonly entityDetailPopoverService;
|
|
2131
|
+
private readonly formatService;
|
|
1484
2132
|
protected moreButton: _angular_core.Signal<ElementRef<any> | undefined>;
|
|
1485
2133
|
protected morePopover: _angular_core.Signal<AXPopoverComponent | undefined>;
|
|
1486
2134
|
protected host: ElementRef<any>;
|
|
@@ -1489,6 +2137,8 @@ declare class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent<an
|
|
|
1489
2137
|
protected entity: string;
|
|
1490
2138
|
protected columnName: string;
|
|
1491
2139
|
protected maxVisible: number;
|
|
2140
|
+
protected displayFormat: _angular_core.Signal<string | undefined>;
|
|
2141
|
+
protected displayField: _angular_core.Signal<string>;
|
|
1492
2142
|
protected isMorePopoverOpen: _angular_core.WritableSignal<boolean>;
|
|
1493
2143
|
protected selectedItemIndex: _angular_core.WritableSignal<number>;
|
|
1494
2144
|
protected displayItems: _angular_core.Signal<any[]>;
|
|
@@ -1503,44 +2153,13 @@ declare class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent<an
|
|
|
1503
2153
|
private openMorePopover;
|
|
1504
2154
|
private closeMorePopover;
|
|
1505
2155
|
private extractItem;
|
|
2156
|
+
protected getDisplayText(item: any): string;
|
|
1506
2157
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLookupWidgetColumnComponent, never>;
|
|
1507
2158
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLookupWidgetColumnComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
|
|
1508
2159
|
}
|
|
1509
2160
|
|
|
1510
2161
|
declare const AXPLookupWidget: AXPWidgetConfig;
|
|
1511
2162
|
|
|
1512
|
-
declare class AXPWidgetSelectorWidgetEditComponent extends AXPValueWidgetComponent<any> {
|
|
1513
|
-
private popupService;
|
|
1514
|
-
private widgetRegisteryService;
|
|
1515
|
-
textbox: AXTextBoxComponent;
|
|
1516
|
-
protected searchTerm: _angular_core.WritableSignal<string | null>;
|
|
1517
|
-
protected isOpen: _angular_core.WritableSignal<boolean>;
|
|
1518
|
-
protected textField: _angular_core.WritableSignal<string>;
|
|
1519
|
-
protected displayText: _angular_core.Signal<any>;
|
|
1520
|
-
protected selectedWidgetNode: _angular_core.WritableSignal<AXPWidgetNode | null>;
|
|
1521
|
-
protected selectedItem: _angular_core.WritableSignal<any>;
|
|
1522
|
-
protected placeholder: _angular_core.Signal<any>;
|
|
1523
|
-
protected loading: _angular_core.Signal<boolean>;
|
|
1524
|
-
ngAfterViewInit(): void;
|
|
1525
|
-
showSelector(): Promise<void>;
|
|
1526
|
-
protected convertWidgetConfigToNode(config: AXPWidgetConfig): AXPWidgetNode;
|
|
1527
|
-
protected handleChangeWidget(e: AXPWidgetPropertiesChangedEvent): void;
|
|
1528
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetSelectorWidgetEditComponent, never>;
|
|
1529
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetSelectorWidgetEditComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1530
|
-
}
|
|
1531
|
-
|
|
1532
|
-
declare class AXPWidgetSelectorWidgetViewComponent extends AXPValueWidgetComponent<any> {
|
|
1533
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPWidgetSelectorWidgetViewComponent, never>;
|
|
1534
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetSelectorWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
1535
|
-
}
|
|
1536
|
-
|
|
1537
|
-
declare const AXPWidgetSelectorWidget: AXPWidgetConfig;
|
|
1538
|
-
declare module '@acorex/platform/layout/widget-core' {
|
|
1539
|
-
interface AXPWidgetTypesMap {
|
|
1540
|
-
widgetSelector: 'widget-selector';
|
|
1541
|
-
}
|
|
1542
|
-
}
|
|
1543
|
-
|
|
1544
2163
|
declare const AXPEntityCreateEvent: {
|
|
1545
2164
|
(payload: {
|
|
1546
2165
|
entity: string;
|
|
@@ -1596,7 +2215,7 @@ declare class AXPEntityPerformDeleteAction extends AXPWorkflowAction {
|
|
|
1596
2215
|
private dialogService;
|
|
1597
2216
|
private loadingDialog;
|
|
1598
2217
|
private translationService;
|
|
1599
|
-
private
|
|
2218
|
+
private settingsService;
|
|
1600
2219
|
execute(context: AXPWorkflowContext): Promise<void>;
|
|
1601
2220
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityPerformDeleteAction, never>;
|
|
1602
2221
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityPerformDeleteAction>;
|
|
@@ -1671,5 +2290,5 @@ declare class AXPShowListViewAction extends AXPWorkflowAction {
|
|
|
1671
2290
|
}
|
|
1672
2291
|
declare const AXPShowListViewWorkflow: AXPWorkflow;
|
|
1673
2292
|
|
|
1674
|
-
export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntityApplyUpdatesAction, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDataSelectorService, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver,
|
|
1675
|
-
export type {
|
|
2293
|
+
export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCategoryTreeService, AXPCreateEntityCommand, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntityApplyUpdatesAction, AXPEntityCategoryTreeSelectorComponent, AXPEntityCategoryWidget, AXPEntityCategoryWidgetColumnComponent, AXPEntityCategoryWidgetEditComponent, AXPEntityCategoryWidgetViewComponent, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDataSelectorService, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityEventsKeys, AXPEntityFormBuilderService, AXPEntityListTableService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityListWidget, AXPEntityListWidgetViewComponent, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPEntityUpdateViewSectionViewModel, AXPGetEntityDetailsQuery, AXPLookupFilterWidget, AXPLookupFilterWidgetEditComponent, AXPLookupWidget, AXPLookupWidgetColumnComponent, AXPLookupWidgetEditComponent, AXPLookupWidgetViewComponent, AXPMiddlewareAbortError, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPOpenEntityDetailsCommand, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, AXPTruncatedBreadcrumbComponent, AXPUpdateEntityCommand, AXPViewEntityDetailsCommand, AXP_DATA_SEEDER_TOKEN, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER, AXP_ENTITY_MODIFIER, AXP_ENTITY_STORAGE_BACKEND, AXP_ENTITY_STORAGE_MIDDLEWARE, DEFAULT_COLUMN_WIDTHS, DEFAULT_PROPERTY_ORDER, DEFAULT_SECTION_ORDER, EntityBuilder, EntityDataAccessor, actionExists, cloneLayoutArrays, columnWidthMiddlewareFactory, columnWidthMiddlewareProvider, createColumnWidthMiddlewareProvider, createLayoutOrderingMiddlewareProvider, createModifierContext, detectEntityChanges, ensureLayoutPropertyView, ensureLayoutSection, ensureListActions, entityDetailsCreateActions, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsNewEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, eventDispatchMiddleware, isAXPMiddlewareAbortError, layoutOrderingMiddlewareFactory, layoutOrderingMiddlewareProvider };
|
|
2294
|
+
export type { AXPAuditEvent, AXPAuditInfo, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityCategoryWidgetOptions, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDataSelectorOptions, AXPEntityDataSelectorResult, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityDetailPopoverOptions, AXPEntityLayoutLike, AXPEntityLayoutPropertyLike, AXPEntityLayoutSectionLike, AXPEntityListItemDto, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOp, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPLookupWidgetLookType, AXPLookupWidgetOptions, AXPOpenEntityDetailsCommandInput, AXPRecordOwnershipInfo, AXPRecordStateInfo, CategoryQueryEvent, CategoryQueryFunction, CategoryQueryResult, CategoryTreeConfig, CategoryTreeNodeData, ColumnWidthConfig, SectionOrderConfig };
|