@acorex/platform 21.0.0-next.88 → 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 +8 -2
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-VfmZct9H.mjs → acorex-platform-common-common-settings.provider-DilV4dql.mjs} +15 -42
- package/fesm2022/acorex-platform-common-common-settings.provider-DilV4dql.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +3299 -3200
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +621 -26
- package/fesm2022/acorex-platform-core.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 +125 -26
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +4 -4
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity-contracts.mjs +106 -12
- package/fesm2022/acorex-platform-layout-entity-contracts.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +419 -147
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +851 -162
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +378 -103
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-D4MOHEpI.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs} +2 -2
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-D4MOHEpI.mjs.map → acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs.map} +1 -1
- 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 +575 -239
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +221 -24
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-BUwPqwUS.mjs → acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs} +48 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +103 -24
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/package.json +1 -1
- package/types/acorex-platform-auth.d.ts +1 -0
- package/types/acorex-platform-common.d.ts +202 -151
- package/types/acorex-platform-core.d.ts +161 -6
- package/types/acorex-platform-layout-builder.d.ts +10 -20
- package/types/acorex-platform-layout-components.d.ts +14 -1
- package/types/acorex-platform-layout-entity-contracts.d.ts +27 -2
- package/types/acorex-platform-layout-entity.d.ts +61 -12
- package/types/acorex-platform-layout-views.d.ts +101 -19
- package/types/acorex-platform-layout-widget-core.d.ts +65 -9
- package/types/acorex-platform-layout-widgets.d.ts +48 -26
- package/types/acorex-platform-themes-default.d.ts +56 -5
- package/types/acorex-platform-themes-shared.d.ts +4 -0
- package/fesm2022/acorex-platform-common-common-settings.provider-VfmZct9H.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-BUwPqwUS.mjs.map +0 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
import { AXPEntityListFilterDefinition, AXPEntityListSortableField, AXPEntityAggregateRequest, AXPEntityDetailDto, AXPEntityModel, AXPEntityListItemDto, AXPEntityCreateDto, AXPEntityUpdateDto, AXPEntityQueryAllOptions, AXPEntityQueryAllResult, AXPEntityAggregateOptions, AXPEntityAggregateResult, AXPEntity as AXPEntity$1 } from '@acorex/platform/layout/entity-contracts';
|
|
2
|
+
export * from '@acorex/platform/layout/entity-contracts';
|
|
3
|
+
export { collectNestedCreateHiddenProperties, entityDetailsCreateActions, entityDetailsCreateActionsDeferredParent, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsNewEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterEditAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, mergeForeignKeyFieldIntoCreateActions } from '@acorex/platform/layout/entity-contracts';
|
|
1
4
|
import * as _acorex_platform_contracts from '@acorex/platform/contracts';
|
|
2
5
|
import { AXPExecuteCommandResult, AXPMetaData, AXPGridLayoutOptions, AXPMultiLanguageString, AXPBreadcrumbItem, AXPFilterQuery, AXPExecuteCommand, AXPFilterDefinition, AXPPagedListResult, AXPCategoryEntity, AXPEntityOp, AXPMiddlewareErrorResponse, AXPExpression, AXPColumnQuery, AXPSortDefinition, AXPFileListItem } from '@acorex/platform/contracts';
|
|
3
6
|
import { AXPCommand, AXPQueryExecutor, AXPCommandService, AXPQuery } from '@acorex/platform/runtime';
|
|
4
7
|
import * as _angular_core from '@angular/core';
|
|
5
8
|
import { ElementRef, InjectionToken, Injector, Type, EnvironmentProviders, OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
6
|
-
import { AXPEntityListFilterDefinition, AXPEntityAggregateRequest, AXPEntityDetailDto, AXPEntityModel, AXPEntityListItemDto, AXPEntityCreateDto, AXPEntityUpdateDto, AXPEntityQueryAllOptions, AXPEntityQueryAllResult, AXPEntityAggregateOptions, AXPEntityAggregateResult, AXPEntity as AXPEntity$1 } from '@acorex/platform/layout/entity-contracts';
|
|
7
|
-
export * from '@acorex/platform/layout/entity-contracts';
|
|
8
|
-
export { collectNestedCreateHiddenProperties, entityDetailsCreateActions, entityDetailsCreateActionsDeferredParent, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsNewEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterEditAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, mergeForeignKeyFieldIntoCreateActions } from '@acorex/platform/layout/entity-contracts';
|
|
9
9
|
import * as i4 from '@acorex/platform/layout/widget-core';
|
|
10
10
|
import { AXPWidgetNode, AXPWidgetColumnNode, AXPWidgetCoreService, AXPColumnWidgetComponent, AXPValueWidgetComponent, AXPWidgetConfig, AXPWidgetRendererDirective, AXPWidgetCoreElementAPI } from '@acorex/platform/layout/widget-core';
|
|
11
11
|
import { AXPPreloadFiltersApplyEvent, AXPColumnItemListItem, AXPDataSelectorRowActionsHandler, AXPCategoryTreeDataSource, AXPDataSelectorAllowCreate } from '@acorex/platform/layout/components';
|
|
12
12
|
import { AXPPageLayoutBaseComponent } from '@acorex/platform/layout/views';
|
|
13
|
-
import { AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPQueryRequest, AXHighlightService, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem, AXPExpressionEvaluatorService, AXPContextEvalFactory, AXPContextChangeEvent } from '@acorex/platform/core';
|
|
13
|
+
import { AXPDataSourceDefinitionProvider, AXPDataSourceDefinition, AXPQueryRequest, AXHighlightService, AXPDeviceService, AXPBroadcastEventService, AXPActionMenuItem, AXPContextData, AXPExpressionEvaluatorService, AXPContextEvalFactory, AXPContextStore, AXPContextChangeEvent } from '@acorex/platform/core';
|
|
14
14
|
import * as _acorex_platform_common from '@acorex/platform/common';
|
|
15
15
|
import { AXPRelatedEntity, AXPEntityPage, AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPCardField, AXPEntityPropertyLayoutConfig, AXPEntitySectionView, AXPEntityPropertyCreateView, AXPQueryView, AXPEntityMasterListLayoutType, AXPEntityMasterListDisplayMode, AXPEntityMasterListLayoutOption, AXPEntityPropertyView, AXPEntityCategoryPlugin, AXPEntityPropertyGroup, AXPEntityMasterCreateLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityMasterSingleLayoutView, AXPEntityMasterListView, AXPEntityDetailListView, AXCFileUploaderCapabilities, AXCFileUploaderAction, AXPQueryFilter } from '@acorex/platform/common';
|
|
16
16
|
export { AXPEntityDefinitionCrudService, AXP_ENTITY_DEFINITION_CRUD_SERVICE } from '@acorex/platform/domain';
|
|
@@ -43,6 +43,7 @@ declare class AXPCreateEntityCommand implements AXPCommand<any, any> {
|
|
|
43
43
|
private translationService;
|
|
44
44
|
private settingsService;
|
|
45
45
|
private openEntityDetailsCommand;
|
|
46
|
+
private workflowEventService;
|
|
46
47
|
protected context: {};
|
|
47
48
|
execute(input: any): Promise<AXPExecuteCommandResult<any>>;
|
|
48
49
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCreateEntityCommand, never>;
|
|
@@ -297,9 +298,9 @@ declare class AXPEntitiesListDataSourceDefinition implements AXPDataSourceDefini
|
|
|
297
298
|
|
|
298
299
|
/**
|
|
299
300
|
* Built-in entity detail tabs from plugins. Sidebar order (after related page-list / page-detail
|
|
300
|
-
* tabs): meta-data-builder → attachments → documents → comments → history.
|
|
301
|
+
* tabs): meta-data-builder → attachments → documents → comments → dashboard → history.
|
|
301
302
|
*/
|
|
302
|
-
type EntityDetailPluginPageSlot = 'meta-data-builder' | 'attachments' | 'documents' | 'comments' | 'history';
|
|
303
|
+
type EntityDetailPluginPageSlot = 'meta-data-builder' | 'attachments' | 'documents' | 'comments' | 'dashboard' | 'history';
|
|
303
304
|
/** Identifies an `entity.pages` entry when skipping its order during recomputation. */
|
|
304
305
|
interface SkipEntityComponentPageRef {
|
|
305
306
|
componentKey: string;
|
|
@@ -802,6 +803,10 @@ declare class AXPEntityMasterListViewModel {
|
|
|
802
803
|
* Apply filters from query params
|
|
803
804
|
*/
|
|
804
805
|
applyFiltersFromQueryParams(filtersJson: string | null): boolean;
|
|
806
|
+
/**
|
|
807
|
+
* Loads host and merge-detail related sortable field definitions (async registry resolution).
|
|
808
|
+
*/
|
|
809
|
+
loadSortableFields(): Promise<void>;
|
|
805
810
|
/**
|
|
806
811
|
* Loads host and merge-detail related filter definitions (async registry resolution).
|
|
807
812
|
*/
|
|
@@ -811,6 +816,7 @@ declare class AXPEntityMasterListViewModel {
|
|
|
811
816
|
applyViewFilters(): Promise<void>;
|
|
812
817
|
resetFilters(): void;
|
|
813
818
|
applyFilterAndSort(): Promise<void>;
|
|
819
|
+
private resolveMergeDetailProperty;
|
|
814
820
|
private allAvailableColumns;
|
|
815
821
|
visibleColumnCount: () => number;
|
|
816
822
|
columns: _angular_core.WritableSignal<AXPEntityListViewColumnViewModel[]>;
|
|
@@ -832,6 +838,7 @@ declare class AXPEntityMasterListViewModel {
|
|
|
832
838
|
private allAvailableCardFields;
|
|
833
839
|
cardFields: _angular_core.WritableSignal<AXPEntityListViewCardFieldViewModel[]>;
|
|
834
840
|
applyCardFields(): void;
|
|
841
|
+
sortableFieldDefinitions: _angular_core.WritableSignal<AXPEntityListSortableField[]>;
|
|
835
842
|
sortableFields: () => {
|
|
836
843
|
name: string;
|
|
837
844
|
title: string;
|
|
@@ -1494,10 +1501,16 @@ declare class EntityDataAccessor<TKey = any, TDetailDto extends AXPEntityDetailD
|
|
|
1494
1501
|
private entityRegistry;
|
|
1495
1502
|
private queryExecutor;
|
|
1496
1503
|
private commandService;
|
|
1504
|
+
private injector;
|
|
1497
1505
|
private crudService;
|
|
1498
1506
|
private entityDef;
|
|
1499
1507
|
private entityDefPromise;
|
|
1500
|
-
constructor(module: string, entity: string, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService);
|
|
1508
|
+
constructor(module: string, entity: string, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService, injector: Injector);
|
|
1509
|
+
/**
|
|
1510
|
+
* Lazily creates the CRUD fallback inside an injection context so {@link AXMEntityCrudServiceImpl}
|
|
1511
|
+
* can resolve {@link AXPEntityStorageService} via `inject()`.
|
|
1512
|
+
*/
|
|
1513
|
+
private ensureCrudService;
|
|
1501
1514
|
/**
|
|
1502
1515
|
* Resolves the entity definition lazily and caches it.
|
|
1503
1516
|
* @returns The resolved entity definition
|
|
@@ -1548,9 +1561,10 @@ declare class EntityBuilder {
|
|
|
1548
1561
|
private entityRegistry;
|
|
1549
1562
|
private queryExecutor;
|
|
1550
1563
|
private commandService;
|
|
1564
|
+
private injector;
|
|
1551
1565
|
readonly module: string;
|
|
1552
1566
|
readonly entity: string;
|
|
1553
|
-
constructor(module: string, entity: string, sessionService: AXPSessionService, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService);
|
|
1567
|
+
constructor(module: string, entity: string, sessionService: AXPSessionService, entityRegistry: AXPEntityDefinitionRegistryService, queryExecutor: AXPQueryExecutor, commandService: AXPCommandService, injector: Injector);
|
|
1554
1568
|
/**
|
|
1555
1569
|
* Creates a path for the entity.
|
|
1556
1570
|
* @param path - The path segment (defaults to 'list')
|
|
@@ -1569,6 +1583,7 @@ declare class AXPEntityService {
|
|
|
1569
1583
|
private entityRegistry;
|
|
1570
1584
|
private queryExecutor;
|
|
1571
1585
|
private commandService;
|
|
1586
|
+
private injector;
|
|
1572
1587
|
/**
|
|
1573
1588
|
* @deprecated Use `withEntity(module, entity).createPath(path)` instead.
|
|
1574
1589
|
* This method will be removed in a future version.
|
|
@@ -2633,7 +2648,7 @@ declare class AXPEntityListToolbarService {
|
|
|
2633
2648
|
private createColumnDefinitions;
|
|
2634
2649
|
/**
|
|
2635
2650
|
* Create Sort Definitions for Toolbar.
|
|
2636
|
-
* Includes
|
|
2651
|
+
* Includes host properties and merge-detail related fields with sort enabled.
|
|
2637
2652
|
*/
|
|
2638
2653
|
private createSortDefinitions;
|
|
2639
2654
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityListToolbarService, never>;
|
|
@@ -3166,6 +3181,16 @@ declare class AXPFileUploaderWidgetService {
|
|
|
3166
3181
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPFileUploaderWidgetService>;
|
|
3167
3182
|
}
|
|
3168
3183
|
|
|
3184
|
+
interface AXPLookupWidgetCreateOptions {
|
|
3185
|
+
enable?: boolean;
|
|
3186
|
+
context?: AXPContextData;
|
|
3187
|
+
}
|
|
3188
|
+
interface ResolvedLookupCreateOptions {
|
|
3189
|
+
enabled: boolean;
|
|
3190
|
+
mode: 'none' | 'full' | 'quick';
|
|
3191
|
+
context?: AXPContextData;
|
|
3192
|
+
}
|
|
3193
|
+
|
|
3169
3194
|
type AXPLookupWidgetLookType = 'select' | 'lookup';
|
|
3170
3195
|
/**
|
|
3171
3196
|
* How the lookup column resolves related items for display in entity lists.
|
|
@@ -3222,6 +3247,10 @@ interface AXPLookupWidgetOptions {
|
|
|
3222
3247
|
expose?: string | string[];
|
|
3223
3248
|
look?: AXPLookupWidgetLookType;
|
|
3224
3249
|
allowClear?: boolean;
|
|
3250
|
+
/** Inline entity create configuration. */
|
|
3251
|
+
create?: AXPLookupWidgetCreateOptions;
|
|
3252
|
+
/** @deprecated Use create.enable; still supported for create mode (quick/full). */
|
|
3253
|
+
allowCreate?: 'none' | 'full' | 'quick';
|
|
3225
3254
|
displayFormat?: string;
|
|
3226
3255
|
/** Column list: entity detail popover behavior. */
|
|
3227
3256
|
popover?: AXPLookupPopoverOptions;
|
|
@@ -3282,6 +3311,9 @@ declare class AXPLookupWidgetViewComponent extends AXPValueWidgetComponent<any>
|
|
|
3282
3311
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLookupWidgetViewComponent, "axp-lookup-widget-view", never, {}, {}, never, never, true, never>;
|
|
3283
3312
|
}
|
|
3284
3313
|
|
|
3314
|
+
type AXPContextStoreInstance = InstanceType<typeof AXPContextStore>;
|
|
3315
|
+
type AXPLookupCreateContextStore = AXPContextStoreInstance;
|
|
3316
|
+
|
|
3285
3317
|
/**
|
|
3286
3318
|
* Selects which entity list row actions appear in the data selector.
|
|
3287
3319
|
* Match by full command name, action `name`, trigger name, or command suffix (e.g. `:Preview`).
|
|
@@ -3352,7 +3384,11 @@ interface AXPEntityDataSelectorCategoryOptions {
|
|
|
3352
3384
|
dataSource?: AXPCategoryTreeDataSource;
|
|
3353
3385
|
}
|
|
3354
3386
|
interface AXPEntityDataSelectorCreateOptions {
|
|
3387
|
+
enable?: boolean;
|
|
3388
|
+
/** Create dialog mode when enabled. Legacy `allowCreate` maps here. */
|
|
3355
3389
|
mode?: AXPDataSelectorAllowCreate;
|
|
3390
|
+
/** Prefilled entity create form values; may use {{ context.eval() }} expressions. */
|
|
3391
|
+
context?: AXPContextData;
|
|
3356
3392
|
}
|
|
3357
3393
|
/** Nested options for {@link AXPEntityDataSelectorService.open}. */
|
|
3358
3394
|
interface AXPEntityDataSelectorOpenOptions {
|
|
@@ -3365,6 +3401,8 @@ interface AXPEntityDataSelectorOpenOptions {
|
|
|
3365
3401
|
sort?: AXPEntityDataSelectorSortOptions;
|
|
3366
3402
|
category?: AXPEntityDataSelectorCategoryOptions;
|
|
3367
3403
|
create?: AXPEntityDataSelectorCreateOptions;
|
|
3404
|
+
/** Form context store used to evaluate `create.context` expressions. Must come from the hosting form scope. */
|
|
3405
|
+
contextStore?: AXPLookupCreateContextStore;
|
|
3368
3406
|
/** Entity list row actions to expose in the selector grid (matched by command name). */
|
|
3369
3407
|
rowActions?: AXPEntityDataSelectorRowActionsConfig;
|
|
3370
3408
|
}
|
|
@@ -3384,7 +3422,10 @@ interface AXPEntityDataSelectorOptions {
|
|
|
3384
3422
|
name: string;
|
|
3385
3423
|
dir: 'asc' | 'desc';
|
|
3386
3424
|
}[];
|
|
3425
|
+
/** @deprecated Prefer nested `create`. Legacy allowCreate mode. */
|
|
3387
3426
|
allowCreate?: AXPDataSelectorAllowCreate;
|
|
3427
|
+
/** Form context store for evaluating create.context expressions. */
|
|
3428
|
+
contextStore?: AXPLookupCreateContextStore;
|
|
3388
3429
|
searchFields?: string[];
|
|
3389
3430
|
initialSearchTerm?: string;
|
|
3390
3431
|
selectedItemIds?: string[] | number[];
|
|
@@ -3424,6 +3465,11 @@ declare class AXPEntityDataSelectorService {
|
|
|
3424
3465
|
private readonly categoryTreeService;
|
|
3425
3466
|
private readonly translationService;
|
|
3426
3467
|
private readonly rowActionsService;
|
|
3468
|
+
private readonly expressionEvaluator;
|
|
3469
|
+
/**
|
|
3470
|
+
* Resolves lookup `create.context` templates using the provided form context store.
|
|
3471
|
+
*/
|
|
3472
|
+
resolveCreateContext(template?: AXPContextData | null, contextStore?: AXPLookupCreateContextStore | null): Promise<Record<string, unknown>>;
|
|
3427
3473
|
/**
|
|
3428
3474
|
* Open entity data selector popup.
|
|
3429
3475
|
* Accepts nested {@link AXPEntityDataSelectorOpenOptions} or deprecated flat {@link AXPEntityDataSelectorOptions}.
|
|
@@ -3433,7 +3479,7 @@ declare class AXPEntityDataSelectorService {
|
|
|
3433
3479
|
* Execute Entity:Create and return created item.
|
|
3434
3480
|
* Used by lookup widget and data selector for inline create.
|
|
3435
3481
|
*/
|
|
3436
|
-
executeEntityCreate(entity: AXPEntity, mode: 'full' | 'quick'): Promise<any | null>;
|
|
3482
|
+
executeEntityCreate(entity: AXPEntity, mode: 'full' | 'quick', initialData?: Record<string, unknown>): Promise<any | null>;
|
|
3437
3483
|
/**
|
|
3438
3484
|
* Normalize item's phones/emails for expose/display.
|
|
3439
3485
|
* Call this when receiving items from any source (create, API, selector).
|
|
@@ -3541,7 +3587,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
3541
3587
|
protected allowUnselect: _angular_core.Signal<boolean>;
|
|
3542
3588
|
protected look: _angular_core.Signal<AXPLookupWidgetLookType>;
|
|
3543
3589
|
protected displayField: _angular_core.Signal<string>;
|
|
3544
|
-
protected
|
|
3590
|
+
protected resolvedCreate: _angular_core.Signal<ResolvedLookupCreateOptions>;
|
|
3545
3591
|
protected selectorRowActions: _angular_core.Signal<AXPLookupSelectorRowActionsConfig | undefined>;
|
|
3546
3592
|
protected valueField: _angular_core.Signal<string>;
|
|
3547
3593
|
protected displayFormat: _angular_core.Signal<string | undefined>;
|
|
@@ -3567,6 +3613,7 @@ declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponent<any>
|
|
|
3567
3613
|
* so e.g. `{ person: { educationLevel: { id, title } } }` would replace the entire `person`
|
|
3568
3614
|
* object and drop sibling fields like `person.educationLevelId`, causing a value/effect loop.
|
|
3569
3615
|
*/
|
|
3616
|
+
private syncExposePathsToSavedBaseline;
|
|
3570
3617
|
private expoesItems;
|
|
3571
3618
|
outputs(): (string | {
|
|
3572
3619
|
[name: string]: unknown;
|
|
@@ -3918,6 +3965,7 @@ declare class AXPMultiSourceSelectorComponent extends AXBasePageComponent {
|
|
|
3918
3965
|
protected activeSource: _angular_core.Signal<AXPMultiSourceItem | null>;
|
|
3919
3966
|
protected selectedItems: _angular_core.WritableSignal<AXPMultiSourceRef[]>;
|
|
3920
3967
|
protected readonly AXPMultiSourceType: typeof AXPMultiSourceType;
|
|
3968
|
+
constructor();
|
|
3921
3969
|
protected ngOnInit(): void;
|
|
3922
3970
|
protected handleTabClick(source: AXPMultiSourceItem): void;
|
|
3923
3971
|
protected handleSelectFromSource(source: AXPMultiSourceItem): Promise<void>;
|
|
@@ -4202,6 +4250,7 @@ declare class AXPEntityCreatePopupAction extends AXPWorkflowAction {
|
|
|
4202
4250
|
private factory;
|
|
4203
4251
|
private config;
|
|
4204
4252
|
private translateService;
|
|
4253
|
+
private settingsService;
|
|
4205
4254
|
execute(context: AXPWorkflowContext): Promise<void>;
|
|
4206
4255
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityCreatePopupAction, never>;
|
|
4207
4256
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityCreatePopupAction>;
|
|
@@ -4328,4 +4377,4 @@ declare class AXPShowListViewAction extends AXPWorkflowAction {
|
|
|
4328
4377
|
declare const AXPShowListViewWorkflow: AXPWorkflow;
|
|
4329
4378
|
|
|
4330
4379
|
export { ATTACHMENTS_PAGE_COMPONENT_KEY, AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCategoryTreeService, AXPCreateEntityCommand, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEditFileUploaderCommand, AXPEntitiesListDataSourceDefinition, AXPEntityApplyUpdatesAction, AXPEntityCategoryTreeSelectorComponent, AXPEntityCategoryWidget, AXPEntityCategoryWidgetColumnComponent, AXPEntityCategoryWidgetEditComponent, AXPEntityCategoryWidgetViewComponent, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDataSelectorRowActionsService, AXPEntityDataSelectorService, AXPEntityDefinitionProviderWidget, AXPEntityDefinitionProviderWidgetEditComponent, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityFormBuilderService, AXPEntityListPersistenceModeDefault, AXPEntityListTableService, AXPEntityListToolbarService, AXPEntityListViewCardFieldViewModel, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityListWidget, AXPEntityListWidgetViewComponent, AXPEntityMasterCreateViewModel, AXPEntityMasterListCardSelectActionName, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityPreloadFiltersContainerComponent, AXPEntityPreloadFiltersViewModel, AXPEntityPreloadFiltersViewModelResolver, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPEntityUpdateViewSectionViewModel, AXPFileListComponent, AXPFileUploaderLoadFilesQuery, AXPFileUploaderSaveFilesCommand, AXPFileUploaderWidget, AXPFileUploaderWidgetColumnComponent, AXPFileUploaderWidgetEditComponent, AXPFileUploaderWidgetService, AXPFileUploaderWidgetViewComponent, AXPGetEntityDetailsQuery, AXPLayoutOrderingConfigService, AXPLookupWidget, AXPLookupWidgetColumnComponent, AXPLookupWidgetEditComponent, AXPLookupWidgetViewComponent, AXPMiddlewareAbortError, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPMultiSourceDefinitionProviderContext, AXPMultiSourceDefinitionProviderService, AXPMultiSourceFederatedSearchService, AXPMultiSourceSelectorComponent, AXPMultiSourceSelectorService, AXPMultiSourceSelectorWidget, AXPMultiSourceSelectorWidgetColumnComponent, AXPMultiSourceSelectorWidgetEditComponent, AXPMultiSourceSelectorWidgetViewComponent, AXPMultiSourceType, AXPOpenEntityDetailsCommand, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPRelatedColumnEnrichmentService, AXPRelatedColumnMetadataResolver, AXPSelectorStructureWidget, AXPSelectorStructureWidgetColumnComponent, AXPSelectorStructureWidgetEditComponent, AXPSelectorStructureWidgetViewComponent, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, AXPTruncatedBreadcrumbComponent, AXPUpdateEntityCommand, AXPViewEntityDetailsCommand, AXP_CATEGORY_TREE_ROOT_TITLE_I18N_KEY, 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, AXP_MULTI_SOURCE_DEFINITION_PROVIDER, DEFAULT_COLUMN_ORDER, DEFAULT_PAIR_SPAN_RULES, DEFAULT_PROPERTY_ORDER, DEFAULT_SECTION_ORDER, ENTITY_LIST_ROUTE_CONTEXT_SESSION_KEY, EntityBuilder, EntityDataAccessor, actionExists, applyDataSourcePagingWithoutLoad, attachmentFieldCount, attachmentsPlugin, attachmentsSemanticallyEqual, axpCreateEntityAiToolInputDefaults, axpCreateEntityCommandDefinition, canPersistEntityListState, cloneLayoutArrays, columnOrderingMiddleware, columnOrderingMiddlewareProvider, columnWidthMiddleware, columnWidthMiddlewareProvider, commandMessageTextForError, committedAttachments, computeEntityAggregates, createColumnOrderingMiddlewareProvider, createLayoutOrderingMiddlewareProvider, createModifierContext, defaultCardLayoutMiddleware, defaultCardLayoutMiddlewareProvider, defaultMultiLanguageMiddleware, defaultMultiLanguageMiddlewareProvider, detectEntityChanges, ensureLayoutPropertyView, ensureLayoutSection, ensureListActions, eventDispatchMiddleware, filterSortEntityRows, findEntityListRowDataInTree, fingerprintAttachmentItem, fingerprintAttachments, formatLookupItemDisplay, formatLookupItemDisplayAsync, getDataSourcePageIndex, getEntityListRowId, getMasterInterfacePropertySortKey, hasFileUploaderTitleOrDescriptionFields, isAXPMiddlewareAbortError, isAttachmentListEntry, isCategoryEntity, isCategoryFilter, isFileListItem, isFileUploaderEditDialogAuto, isLegacyEntityDataSelectorOptions, layoutOrderingMiddlewareFactory, layoutOrderingMiddlewareProvider, mapEntityStorageErrorToCommandResult, mapLegacyEntityDataSelectorOptions, normalizeEntityDataSelectorOptions, normalizeEntityFieldToFileList, normalizeEntityListPersistenceMode, normalizeListPaging, persistedAttachments, provideEntity, resolveEntityPluginDetailPageOrder, resolveFileUploaderEditDialog, resolveFileUploaderEntityScope, resolveLookupDisplayField, resolveLookupDisplayTemplate, restoreEntityListExpandedRows, runEntityQuery, searchResultDescriptionMiddleware, searchResultDescriptionMiddlewareProvider, shouldLoadEntityListStateFromStorage, shouldResetEntityListStateOnRouteEntry };
|
|
4331
|
-
export type { AXPDataSeeder, AXPEntityActionPlugin, AXPEntityCategoryWidgetOptions, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityDataSelectorCategoryFilterOptions, AXPEntityDataSelectorCategoryOptions, AXPEntityDataSelectorCreateOptions, AXPEntityDataSelectorFilterOptions, AXPEntityDataSelectorGridOptions, AXPEntityDataSelectorOpenInput, AXPEntityDataSelectorOpenOptions, AXPEntityDataSelectorOptions, AXPEntityDataSelectorResult, AXPEntityDataSelectorRowActionsConfig, AXPEntityDataSelectorSearchOptions, AXPEntityDataSelectorSelectionOptions, AXPEntityDataSelectorSortOptions, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailPopoverOptions, AXPEntityLayoutLike, AXPEntityLayoutPropertyLike, AXPEntityLayoutSectionLike, AXPEntityListEntry, AXPEntityListExpandRowRef, AXPEntityListInput, AXPEntityListPagingState, AXPEntityListPersistenceMode, AXPEntityListToolbarConvertOptions, AXPEntityMasterListCardLayout, AXPEntityMasterListCardSecondaryActionItem, AXPEntityMasterListViewSortPropViewModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPFileListLook, AXPFileUploaderEditDialogFieldOptions, AXPFileUploaderEditDialogMode, AXPFileUploaderEditDialogOptions, AXPFileUploaderEntityFilesScope, AXPFileUploaderLoadFilesInput, AXPFileUploaderLoadFilesResult, AXPFileUploaderSaveFilesInput, AXPFileUploaderSaveFilesResult, AXPFileUploaderShowFileListEntityContext, AXPFileUploaderShowFileListOptions, AXPFileUploaderUploadActionDescriptor, AXPFileUploaderWidgetColumnOptions, AXPFileUploaderWidgetDesignerOptions, AXPFileUploaderWidgetEditOptions, AXPFileUploaderWidgetOptions, AXPFileUploaderWidgetPrintOptions, AXPFileUploaderWidgetViewOptions, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPLookupColumnResolveOptions, AXPLookupColumnResolveStrategy, AXPLookupDisplayEvalDeps, AXPLookupDisplayOptions, AXPLookupPopoverOptions, AXPLookupSelectorRowActionsConfig, AXPLookupWidgetLookType, AXPLookupWidgetOptions, AXPMultiSourceDefinition, AXPMultiSourceDefinitionProvider, AXPMultiSourceItem, AXPMultiSourceRef, AXPMultiSourceSearchResult, AXPMultiSourceSearchResultItem, AXPMultiSourceSelectorOpenConfig, AXPMultiSourceSelectorResult, AXPMultiSourceSelectorWidgetOptions, AXPMultiSourceValue, AXPOpenEntityDetailsCommandInput, AXPRelatedColumnMetadata, AXPSelectorStructureFieldDef, AXPSelectorStructureIdentityDisplay, AXPSelectorStructurePresentationMode, AXPSelectorStructureSelectorMode, AXPSelectorStructureStructureMode, AXPSelectorStructureWidgetColumnOptions, AXPSelectorStructureWidgetDesignerOptions, AXPSelectorStructureWidgetEditOptions, AXPSelectorStructureWidgetOptions, AXPSelectorStructureWidgetPrintOptions, AXPSelectorStructureWidgetViewOptions, AXPShowListViewCondition, AttachmentsDisplayMode, AttachmentsPluginOptions, CategoryQueryEvent, CategoryQueryFunction, CategoryQueryResult, CategoryTreeConfig, CategoryTreeNodeData, EntityDetailPluginPageSlot, PairSpanRule, ResolveEntityPluginDetailPageOrderOptions, RunEntityQueryAdapters, SectionOrderConfig, SkipEntityComponentPageRef };
|
|
4380
|
+
export type { AXPDataSeeder, AXPEntityActionPlugin, AXPEntityCategoryWidgetOptions, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityDataSelectorCategoryFilterOptions, AXPEntityDataSelectorCategoryOptions, AXPEntityDataSelectorCreateOptions, AXPEntityDataSelectorFilterOptions, AXPEntityDataSelectorGridOptions, AXPEntityDataSelectorOpenInput, AXPEntityDataSelectorOpenOptions, AXPEntityDataSelectorOptions, AXPEntityDataSelectorResult, AXPEntityDataSelectorRowActionsConfig, AXPEntityDataSelectorSearchOptions, AXPEntityDataSelectorSelectionOptions, AXPEntityDataSelectorSortOptions, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailPopoverOptions, AXPEntityLayoutLike, AXPEntityLayoutPropertyLike, AXPEntityLayoutSectionLike, AXPEntityListEntry, AXPEntityListExpandRowRef, AXPEntityListInput, AXPEntityListPagingState, AXPEntityListPersistenceMode, AXPEntityListToolbarConvertOptions, AXPEntityMasterListCardLayout, AXPEntityMasterListCardSecondaryActionItem, AXPEntityMasterListViewSortPropViewModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPFileListLook, AXPFileUploaderEditDialogFieldOptions, AXPFileUploaderEditDialogMode, AXPFileUploaderEditDialogOptions, AXPFileUploaderEntityFilesScope, AXPFileUploaderLoadFilesInput, AXPFileUploaderLoadFilesResult, AXPFileUploaderSaveFilesInput, AXPFileUploaderSaveFilesResult, AXPFileUploaderShowFileListEntityContext, AXPFileUploaderShowFileListOptions, AXPFileUploaderUploadActionDescriptor, AXPFileUploaderWidgetColumnOptions, AXPFileUploaderWidgetDesignerOptions, AXPFileUploaderWidgetEditOptions, AXPFileUploaderWidgetOptions, AXPFileUploaderWidgetPrintOptions, AXPFileUploaderWidgetViewOptions, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPLookupColumnResolveOptions, AXPLookupColumnResolveStrategy, AXPLookupDisplayEvalDeps, AXPLookupDisplayOptions, AXPLookupPopoverOptions, AXPLookupSelectorRowActionsConfig, AXPLookupWidgetCreateOptions, AXPLookupWidgetLookType, AXPLookupWidgetOptions, AXPMultiSourceDefinition, AXPMultiSourceDefinitionProvider, AXPMultiSourceItem, AXPMultiSourceRef, AXPMultiSourceSearchResult, AXPMultiSourceSearchResultItem, AXPMultiSourceSelectorOpenConfig, AXPMultiSourceSelectorResult, AXPMultiSourceSelectorWidgetOptions, AXPMultiSourceValue, AXPOpenEntityDetailsCommandInput, AXPRelatedColumnMetadata, AXPSelectorStructureFieldDef, AXPSelectorStructureIdentityDisplay, AXPSelectorStructurePresentationMode, AXPSelectorStructureSelectorMode, AXPSelectorStructureStructureMode, AXPSelectorStructureWidgetColumnOptions, AXPSelectorStructureWidgetDesignerOptions, AXPSelectorStructureWidgetEditOptions, AXPSelectorStructureWidgetOptions, AXPSelectorStructureWidgetPrintOptions, AXPSelectorStructureWidgetViewOptions, AXPShowListViewCondition, AttachmentsDisplayMode, AttachmentsPluginOptions, CategoryQueryEvent, CategoryQueryFunction, CategoryQueryResult, CategoryTreeConfig, CategoryTreeNodeData, EntityDetailPluginPageSlot, PairSpanRule, ResolveEntityPluginDetailPageOrderOptions, RunEntityQueryAdapters, SectionOrderConfig, SkipEntityComponentPageRef };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
2
2
|
import * as _angular_core from '@angular/core';
|
|
3
|
-
import { Signal, OnInit, OnDestroy } from '@angular/core';
|
|
3
|
+
import { Signal, InjectionToken, OnInit, OnDestroy } from '@angular/core';
|
|
4
4
|
import * as _acorex_platform_themes_shared from '@acorex/platform/themes/shared';
|
|
5
5
|
import { AXClickEvent } from '@acorex/cdk/common';
|
|
6
|
-
import { AXPTabNavigationService, AXPHomePageService, AXPSettingsService, AXPTabPreviewService, AXPUnsavedChangesConfirmService, AXPEntityCommandScope } from '@acorex/platform/common';
|
|
6
|
+
import { AXPTabNavigationService, AXPHomePageService, AXPSettingsService, AXPTabPreviewService, AXPUnsavedChangesConfirmService, AXPBrowserTitleService, AXPEntityCommandScope } from '@acorex/platform/common';
|
|
7
7
|
import * as i1 from '@acorex/cdk/drawer';
|
|
8
8
|
import { AXDrawerItemDirective } from '@acorex/cdk/drawer';
|
|
9
9
|
import { AXPBreadcrumbItem, AXPMultiLanguageString, AXPBadge, AXPPageStatus, AXPBackButton, AXPExecuteCommand, AXPExecuteCommandResult } from '@acorex/platform/contracts';
|
|
@@ -82,6 +82,7 @@ declare class AXPPageLayoutComponent {
|
|
|
82
82
|
isSystemMode: _angular_core.Signal<boolean>;
|
|
83
83
|
isSideMenuOpen: _angular_core.Signal<boolean>;
|
|
84
84
|
isOverlayLoading: _angular_core.Signal<boolean>;
|
|
85
|
+
overlayTaskCount: _angular_core.Signal<number>;
|
|
85
86
|
isNavigationLoading: _angular_core.Signal<boolean>;
|
|
86
87
|
isMenuHorizontal: _angular_core.Signal<boolean>;
|
|
87
88
|
effectiveMenuVerticalMode: _angular_core.Signal<_acorex_platform_themes_shared.AXPMenuVerticalMode>;
|
|
@@ -95,6 +96,7 @@ declare class AXPPageLayoutComponent {
|
|
|
95
96
|
toggleSideMenu: () => void;
|
|
96
97
|
setNavigationLoading: (value: boolean, delay?: number) => void;
|
|
97
98
|
setOverlayLoading: (value: boolean, delay?: number) => void;
|
|
99
|
+
clearOverlayLoading: () => void;
|
|
98
100
|
loadSettings: () => Promise<void>;
|
|
99
101
|
} & _ngrx_signals.StateSource<{
|
|
100
102
|
currentMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
@@ -166,6 +168,7 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
166
168
|
isSystemMode: _angular_core.Signal<boolean>;
|
|
167
169
|
isSideMenuOpen: _angular_core.Signal<boolean>;
|
|
168
170
|
isOverlayLoading: _angular_core.Signal<boolean>;
|
|
171
|
+
overlayTaskCount: _angular_core.Signal<number>;
|
|
169
172
|
isNavigationLoading: _angular_core.Signal<boolean>;
|
|
170
173
|
isMenuHorizontal: _angular_core.Signal<boolean>;
|
|
171
174
|
effectiveMenuVerticalMode: _angular_core.Signal<_acorex_platform_themes_shared.AXPMenuVerticalMode>;
|
|
@@ -179,6 +182,7 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
179
182
|
toggleSideMenu: () => void;
|
|
180
183
|
setNavigationLoading: (value: boolean, delay?: number) => void;
|
|
181
184
|
setOverlayLoading: (value: boolean, delay?: number) => void;
|
|
185
|
+
clearOverlayLoading: () => void;
|
|
182
186
|
loadSettings: () => Promise<void>;
|
|
183
187
|
} & _ngrx_signals.StateSource<{
|
|
184
188
|
currentMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
@@ -210,7 +214,9 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
210
214
|
protected readonly tabNavigation: AXPTabNavigationService;
|
|
211
215
|
protected readonly tabPreviewService: AXPTabPreviewService;
|
|
212
216
|
protected readonly unsavedChangesConfirm: AXPUnsavedChangesConfirmService;
|
|
217
|
+
protected readonly browserTitleService: AXPBrowserTitleService;
|
|
213
218
|
protected readonly router: Router;
|
|
219
|
+
private readonly pageLayoutDestroyRef;
|
|
214
220
|
private _updateTrigger;
|
|
215
221
|
/** Tab key captured at page init — stable while the route instance is cached. */
|
|
216
222
|
private readonly pageTabKey;
|
|
@@ -219,6 +225,8 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
219
225
|
ngOnInit(): Promise<void>;
|
|
220
226
|
/** Maps the home-page route to the pinned home tab key instead of a path-based key. */
|
|
221
227
|
private resolvePageTabKey;
|
|
228
|
+
/** Stable tab key for this cached page instance (tabular mode). */
|
|
229
|
+
protected getPageTabKey(): string | null;
|
|
222
230
|
protected publishTabStructuredPreview(tabKey: string, input: {
|
|
223
231
|
titleValue: AXPMultiLanguageString;
|
|
224
232
|
descriptionValue: AXPMultiLanguageString | null;
|
|
@@ -235,6 +243,10 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
235
243
|
protected getPageIcon(): string | null | Promise<string | null>;
|
|
236
244
|
hasTitle: _angular_core.Signal<boolean>;
|
|
237
245
|
hasTitleIcon: _angular_core.Signal<boolean>;
|
|
246
|
+
/** Publishes the page title to the browser tab when this instance is the active route. */
|
|
247
|
+
protected publishBrowserTitleIfActive(): Promise<void>;
|
|
248
|
+
/** True when this cached page instance matches the current router location. */
|
|
249
|
+
protected isActivePageForBrowserTitle(): boolean;
|
|
238
250
|
description: _angular_core.WritableSignal<AXPMultiLanguageString | null>;
|
|
239
251
|
hasDescription: _angular_core.Signal<boolean>;
|
|
240
252
|
protected getPageDescription(): AXPMultiLanguageString | null | Promise<AXPMultiLanguageString | null>;
|
|
@@ -242,7 +254,9 @@ declare abstract class AXPPageLayoutBaseComponent implements AXPPageLayoutBase {
|
|
|
242
254
|
breadcrumbs: _angular_core.WritableSignal<AXPBreadcrumbItem[]>;
|
|
243
255
|
hasBreadcrumbs: _angular_core.Signal<boolean>;
|
|
244
256
|
protected getPageBreadcrumbs(): AXPBreadcrumbItem[] | Promise<AXPBreadcrumbItem[]>;
|
|
245
|
-
/**
|
|
257
|
+
/** Collects resolved breadcrumb labels (Home excluded upstream) for tab chrome. */
|
|
258
|
+
protected resolveBreadcrumbTabTitleSegments(pageBreadcrumbs: AXPBreadcrumbItem[]): Promise<string[]>;
|
|
259
|
+
/** Joins breadcrumb segments as the stored tab title string. */
|
|
246
260
|
protected resolveBreadcrumbTabTitle(pageBreadcrumbs: AXPBreadcrumbItem[]): Promise<string | null>;
|
|
247
261
|
/** Resolves a breadcrumb label the same way as page chrome (`t(item.title)`). */
|
|
248
262
|
protected resolveBreadcrumbItemTitle(item: AXPBreadcrumbItem | undefined): Promise<string | null>;
|
|
@@ -338,6 +352,7 @@ declare class AXPPopupLayoutComponent {
|
|
|
338
352
|
isSystemMode: _angular_core.Signal<boolean>;
|
|
339
353
|
isSideMenuOpen: _angular_core.Signal<boolean>;
|
|
340
354
|
isOverlayLoading: _angular_core.Signal<boolean>;
|
|
355
|
+
overlayTaskCount: _angular_core.Signal<number>;
|
|
341
356
|
isNavigationLoading: _angular_core.Signal<boolean>;
|
|
342
357
|
isMenuHorizontal: _angular_core.Signal<boolean>;
|
|
343
358
|
effectiveMenuVerticalMode: _angular_core.Signal<_acorex_platform_themes_shared.AXPMenuVerticalMode>;
|
|
@@ -351,6 +366,7 @@ declare class AXPPopupLayoutComponent {
|
|
|
351
366
|
toggleSideMenu: () => void;
|
|
352
367
|
setNavigationLoading: (value: boolean, delay?: number) => void;
|
|
353
368
|
setOverlayLoading: (value: boolean, delay?: number) => void;
|
|
369
|
+
clearOverlayLoading: () => void;
|
|
354
370
|
loadSettings: () => Promise<void>;
|
|
355
371
|
} & _ngrx_signals.StateSource<{
|
|
356
372
|
currentMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
@@ -407,6 +423,7 @@ declare abstract class AXPPopupLayoutBaseComponent extends AXBasePageComponent {
|
|
|
407
423
|
isSystemMode: _angular_core.Signal<boolean>;
|
|
408
424
|
isSideMenuOpen: _angular_core.Signal<boolean>;
|
|
409
425
|
isOverlayLoading: _angular_core.Signal<boolean>;
|
|
426
|
+
overlayTaskCount: _angular_core.Signal<number>;
|
|
410
427
|
isNavigationLoading: _angular_core.Signal<boolean>;
|
|
411
428
|
isMenuHorizontal: _angular_core.Signal<boolean>;
|
|
412
429
|
effectiveMenuVerticalMode: _angular_core.Signal<_acorex_platform_themes_shared.AXPMenuVerticalMode>;
|
|
@@ -420,6 +437,7 @@ declare abstract class AXPPopupLayoutBaseComponent extends AXBasePageComponent {
|
|
|
420
437
|
toggleSideMenu: () => void;
|
|
421
438
|
setNavigationLoading: (value: boolean, delay?: number) => void;
|
|
422
439
|
setOverlayLoading: (value: boolean, delay?: number) => void;
|
|
440
|
+
clearOverlayLoading: () => void;
|
|
423
441
|
loadSettings: () => Promise<void>;
|
|
424
442
|
} & _ngrx_signals.StateSource<{
|
|
425
443
|
currentMode: _acorex_platform_themes_shared.AXPThemeMode;
|
|
@@ -548,9 +566,20 @@ interface AXPLayoutDetailsViewAdapter {
|
|
|
548
566
|
getPageStatus?: (context: Record<string, unknown>, currentPage: AXPLayoutDetailsViewPage | null) => Promise<AXPPageStatus | null>;
|
|
549
567
|
}
|
|
550
568
|
|
|
569
|
+
interface AXPLayoutDetailsViewRouteParams {
|
|
570
|
+
moduleName: string;
|
|
571
|
+
entityName: string;
|
|
572
|
+
id: string;
|
|
573
|
+
}
|
|
574
|
+
interface AXPLayoutDetailsViewAdapterLoader {
|
|
575
|
+
load(params: AXPLayoutDetailsViewRouteParams): Promise<AXPLayoutDetailsViewAdapter>;
|
|
576
|
+
}
|
|
577
|
+
declare const AXP_LAYOUT_DETAILS_VIEW_ADAPTER_LOADER: InjectionToken<AXPLayoutDetailsViewAdapterLoader>;
|
|
578
|
+
|
|
551
579
|
declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
552
580
|
adapter: _angular_core.Signal<AXPLayoutDetailsViewAdapter | null>;
|
|
553
581
|
rootContext: _angular_core.Signal<Record<string, any>>;
|
|
582
|
+
savedContext: _angular_core.Signal<Record<string, any>>;
|
|
554
583
|
previousContext: _angular_core.Signal<Record<string, any>>;
|
|
555
584
|
context: _angular_core.Signal<Record<string, any>>;
|
|
556
585
|
scope: _angular_core.Signal<AXPExpressionEvaluatorScope | null>;
|
|
@@ -567,6 +596,8 @@ declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
|
567
596
|
isLarge: _angular_core.Signal<boolean>;
|
|
568
597
|
isBusy: _angular_core.Signal<boolean>;
|
|
569
598
|
isSaving: _angular_core.Signal<boolean>;
|
|
599
|
+
isOverlayBusy: _angular_core.Signal<boolean>;
|
|
600
|
+
isPageReady: _angular_core.Signal<boolean>;
|
|
570
601
|
isDirty: _angular_core.Signal<boolean>;
|
|
571
602
|
changesCount: _angular_core.Signal<1 | 0>;
|
|
572
603
|
isLoaded: _angular_core.Signal<boolean>;
|
|
@@ -574,7 +605,8 @@ declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
|
574
605
|
activeTabContent: _angular_core.Signal<AXPWidgetNode[]>;
|
|
575
606
|
loadAdapter: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
576
607
|
loadPage: (pageId?: string, forceRefresh?: boolean) => Promise<void>;
|
|
577
|
-
load: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
608
|
+
load: (adapter: AXPLayoutDetailsViewAdapter, forceRefresh?: boolean, pageIdFromUrl?: string) => Promise<void>;
|
|
609
|
+
loadFromRoute: (forceRefresh?: boolean) => Promise<void>;
|
|
578
610
|
updateContext: (context: any) => void;
|
|
579
611
|
setFormDirty: (dirty: boolean) => void;
|
|
580
612
|
updatePageSelectedRows: (rows: any[]) => void;
|
|
@@ -601,10 +633,11 @@ declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
|
601
633
|
applySavedState: (context: Record<string, unknown>) => void;
|
|
602
634
|
discard: () => Promise<void>;
|
|
603
635
|
save: (command: AXPExecuteCommand, form: AXFormComponent, liveContext?: Record<string, unknown>) => Promise<boolean>;
|
|
604
|
-
goToListPage: () => void
|
|
636
|
+
goToListPage: () => Promise<void>;
|
|
605
637
|
} & _ngrx_signals.StateSource<{
|
|
606
638
|
adapter: AXPLayoutDetailsViewAdapter | null;
|
|
607
639
|
rootContext: Record<string, any>;
|
|
640
|
+
savedContext: Record<string, any>;
|
|
608
641
|
previousContext: Record<string, any>;
|
|
609
642
|
context: Record<string, any>;
|
|
610
643
|
scope: AXPExpressionEvaluatorScope | null;
|
|
@@ -619,10 +652,10 @@ declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
|
619
652
|
|
|
620
653
|
declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent implements OnInit, OnDestroy {
|
|
621
654
|
#private;
|
|
622
|
-
adapter: _angular_core.InputSignal<AXPLayoutDetailsViewAdapter>;
|
|
623
655
|
protected vm: {
|
|
624
|
-
adapter: _angular_core.Signal<AXPLayoutDetailsViewAdapter | null>;
|
|
656
|
+
adapter: _angular_core.Signal<_acorex_platform_layout_views.AXPLayoutDetailsViewAdapter | null>;
|
|
625
657
|
rootContext: _angular_core.Signal<Record<string, any>>;
|
|
658
|
+
savedContext: _angular_core.Signal<Record<string, any>>;
|
|
626
659
|
previousContext: _angular_core.Signal<Record<string, any>>;
|
|
627
660
|
context: _angular_core.Signal<Record<string, any>>;
|
|
628
661
|
scope: _angular_core.Signal<_acorex_platform_core.AXPExpressionEvaluatorScope | null>;
|
|
@@ -639,14 +672,17 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
639
672
|
isLarge: _angular_core.Signal<boolean>;
|
|
640
673
|
isBusy: _angular_core.Signal<boolean>;
|
|
641
674
|
isSaving: _angular_core.Signal<boolean>;
|
|
675
|
+
isOverlayBusy: _angular_core.Signal<boolean>;
|
|
676
|
+
isPageReady: _angular_core.Signal<boolean>;
|
|
642
677
|
isDirty: _angular_core.Signal<boolean>;
|
|
643
678
|
changesCount: _angular_core.Signal<1 | 0>;
|
|
644
679
|
isLoaded: _angular_core.Signal<boolean>;
|
|
645
680
|
currentPageSelectedRows: _angular_core.Signal<any[]>;
|
|
646
681
|
activeTabContent: _angular_core.Signal<_acorex_platform_layout_widget_core.AXPWidgetNode[]>;
|
|
647
|
-
loadAdapter: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
682
|
+
loadAdapter: (adapter: _acorex_platform_layout_views.AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
648
683
|
loadPage: (pageId?: string, forceRefresh?: boolean) => Promise<void>;
|
|
649
|
-
load: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
684
|
+
load: (adapter: _acorex_platform_layout_views.AXPLayoutDetailsViewAdapter, forceRefresh?: boolean, pageIdFromUrl?: string) => Promise<void>;
|
|
685
|
+
loadFromRoute: (forceRefresh?: boolean) => Promise<void>;
|
|
650
686
|
updateContext: (context: any) => void;
|
|
651
687
|
setFormDirty: (dirty: boolean) => void;
|
|
652
688
|
updatePageSelectedRows: (rows: any[]) => void;
|
|
@@ -673,10 +709,11 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
673
709
|
applySavedState: (context: Record<string, unknown>) => void;
|
|
674
710
|
discard: () => Promise<void>;
|
|
675
711
|
save: (command: AXPExecuteCommand, form: AXFormComponent, liveContext?: Record<string, unknown>) => Promise<boolean>;
|
|
676
|
-
goToListPage: () => void
|
|
712
|
+
goToListPage: () => Promise<void>;
|
|
677
713
|
} & _ngrx_signals.StateSource<{
|
|
678
|
-
adapter: AXPLayoutDetailsViewAdapter | null;
|
|
714
|
+
adapter: _acorex_platform_layout_views.AXPLayoutDetailsViewAdapter | null;
|
|
679
715
|
rootContext: Record<string, any>;
|
|
716
|
+
savedContext: Record<string, any>;
|
|
680
717
|
previousContext: Record<string, any>;
|
|
681
718
|
context: Record<string, any>;
|
|
682
719
|
scope: _acorex_platform_core.AXPExpressionEvaluatorScope | null;
|
|
@@ -694,14 +731,26 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
694
731
|
private readonly unsavedChangesPopstate;
|
|
695
732
|
private readonly pageComponentInstanceRegistry;
|
|
696
733
|
private readonly shortcutRegistry;
|
|
734
|
+
private readonly workflowService;
|
|
697
735
|
private readonly destroyRef;
|
|
698
736
|
private readonly elementRef;
|
|
737
|
+
private readonly debug;
|
|
699
738
|
private onSelectionChangeSubscription?;
|
|
700
|
-
/** Prevents sidebar tab init events from pushing history before
|
|
701
|
-
private detailsLayoutReady;
|
|
739
|
+
/** Prevents sidebar tab init events from pushing history before the first page activation completes. */
|
|
740
|
+
private readonly detailsLayoutReady;
|
|
702
741
|
private readonly destroyed$;
|
|
703
742
|
private footerActionsGeneration;
|
|
704
743
|
private keyboardShortcutRegistrationGeneration;
|
|
744
|
+
private overlayFallbackTimer?;
|
|
745
|
+
/** Page id the overlay release logic is bound to; reset on sidebar/page switch. */
|
|
746
|
+
private overlayTargetPageId;
|
|
747
|
+
/** After a page switch, wait for widget registry to clear before accepting remounted widgets. */
|
|
748
|
+
private overlaySawZeroWidgetsAfterPageChange;
|
|
749
|
+
/** Cancels in-flight overlay release when the page changes. */
|
|
750
|
+
private overlayReleaseGeneration;
|
|
751
|
+
private overlayReleasePromise?;
|
|
752
|
+
/** Safety cap when widget ready detection does not settle. */
|
|
753
|
+
private static readonly overlayMaxWaitMs;
|
|
705
754
|
/** Header actions with resolved shortcut chords, keyed by command name. */
|
|
706
755
|
private readonly actionShortcutEntries;
|
|
707
756
|
/** Save/discard use live {@link AXPLayoutDetailsViewViewModel.isDirty}; other actions use evaluated `visible`. */
|
|
@@ -741,15 +790,27 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
741
790
|
protected isFooterActionDisabled(action: AXPActionMenuItem): boolean;
|
|
742
791
|
protected hasFooter: _angular_core.Signal<boolean>;
|
|
743
792
|
/**
|
|
744
|
-
*
|
|
793
|
+
* Re-fetches the entity adapter and reloads the active page.
|
|
745
794
|
*/
|
|
746
795
|
protected refreshLayout(): Promise<void>;
|
|
747
796
|
ngOnInit(): Promise<void>;
|
|
797
|
+
/** Navigates to {@link AXPLayoutDetailsViewAdapter.exitUrl} when the open record was deleted. */
|
|
798
|
+
private handleEntityDeleted;
|
|
748
799
|
ngAfterViewInit(): Promise<void>;
|
|
749
800
|
ngOnDestroy(): void;
|
|
750
801
|
private refreshFooterActions;
|
|
751
802
|
protected handleOnContextChanged(e: AXPContextChangeEvent): void;
|
|
752
803
|
private getLiveFormContext;
|
|
804
|
+
/** Whether the active page renders widget nodes (not only hosted components). */
|
|
805
|
+
private pageHasWidgetNodes;
|
|
806
|
+
/** Clears all overlay loading tasks once the page (or hosted view) is ready. */
|
|
807
|
+
private clearPageOverlay;
|
|
808
|
+
private scheduleOverlayFallback;
|
|
809
|
+
private clearOverlayFallback;
|
|
810
|
+
/**
|
|
811
|
+
* Hides overlay after the widget container reports continuous idle (same gate as saved baseline).
|
|
812
|
+
*/
|
|
813
|
+
private requestOverlayRelease;
|
|
753
814
|
private finalizeSave;
|
|
754
815
|
private finalizeDiscard;
|
|
755
816
|
/** Reverts widget form state and view-model context to the last saved baseline. */
|
|
@@ -792,6 +853,11 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
792
853
|
protected pageContentTrackKey(item: AXPPageContentItem, index: number): string;
|
|
793
854
|
/** Whether the active component-based entity page has unsaved edits. */
|
|
794
855
|
private isActivePageComponentDirty;
|
|
856
|
+
/**
|
|
857
|
+
* Widget-form dirty state for leave guards (popstate, canDeactivate).
|
|
858
|
+
* Unlike {@link liveFormIsDirty}, does not suppress dirty while overlay is busy.
|
|
859
|
+
*/
|
|
860
|
+
private hasWidgetFormUnsavedChanges;
|
|
795
861
|
/** Whether the current details page has user-origin unsaved edits (form or component page). */
|
|
796
862
|
private shouldPromptLeave;
|
|
797
863
|
/** Single gate for leaving the page or switching details sub-pages when dirty. */
|
|
@@ -805,19 +871,25 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
805
871
|
/** Waits for builder/effect microtasks to finish after a component page command. */
|
|
806
872
|
private waitForComponentDirtySettle;
|
|
807
873
|
private refreshKeyboardShortcutRegistrations;
|
|
874
|
+
/** i18n scope label for the active details sub-page shortcut group in the help dialog. */
|
|
875
|
+
private getKeyboardShortcutScope;
|
|
876
|
+
/** Primary overview page backed by the entity widget form (not a component-hosted sub-page). */
|
|
877
|
+
private isWidgetFormPrimaryPage;
|
|
878
|
+
private registerDetailsViewShortcutScope;
|
|
808
879
|
private collectActionShortcutEntries;
|
|
809
|
-
private
|
|
810
|
-
/** Whether save/discard core shortcuts are listed in the help dialog (page
|
|
880
|
+
private isShortcutActionAvailable;
|
|
881
|
+
/** Whether save/discard core shortcuts are listed in the help dialog (widget overview page only). */
|
|
811
882
|
private isCoreSaveShortcutAvailable;
|
|
812
883
|
private isCoreDiscardShortcutAvailable;
|
|
813
884
|
private canExecuteSaveShortcut;
|
|
814
885
|
private canExecuteDiscardShortcut;
|
|
815
886
|
private executeDiscardViaShortcut;
|
|
887
|
+
private executeActionShortcut;
|
|
816
888
|
private isActionShortcutActive;
|
|
817
889
|
private registerCoreKeyboardShortcuts;
|
|
818
890
|
private registerActionKeyboardShortcuts;
|
|
819
891
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLayoutDetailsViewComponent, never>;
|
|
820
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLayoutDetailsViewComponent, "axp-layout-details-view", never, {
|
|
892
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLayoutDetailsViewComponent, "axp-layout-details-view", never, {}, {}, never, never, true, never>;
|
|
821
893
|
}
|
|
822
894
|
|
|
823
895
|
type AXPDetailsViewActionShortcut = AXPKeyboardShortcutChord;
|
|
@@ -834,6 +906,16 @@ declare function resolveDetailsViewActionShortcuts(commandBaseName: string, expl
|
|
|
834
906
|
* Resolves save/discard footer command shortcuts from page settings.
|
|
835
907
|
*/
|
|
836
908
|
declare function resolveDetailsViewFooterCommandShortcuts(commandName: string, explicit?: readonly AXPKeyboardShortcut[]): AXPDetailsViewActionShortcut[] | undefined;
|
|
909
|
+
/**
|
|
910
|
+
* Platform defaults for component-page footer save/discard commands (e.g. `MetaDataBuilder:Save`).
|
|
911
|
+
*/
|
|
912
|
+
declare function resolvePageFooterActionDefaultShortcuts(commandName: string): AXPDetailsViewActionShortcut[] | undefined;
|
|
913
|
+
declare function isSaveFooterCommand(commandName: string): boolean;
|
|
914
|
+
declare function isDiscardFooterCommand(commandName: string): boolean;
|
|
915
|
+
/**
|
|
916
|
+
* Resolves keyboard shortcuts for a footer action on entity detail sub-pages.
|
|
917
|
+
*/
|
|
918
|
+
declare function resolvePageFooterActionShortcuts(commandName: string, explicit?: readonly AXPKeyboardShortcut[]): AXPDetailsViewActionShortcut[] | undefined;
|
|
837
919
|
|
|
838
920
|
/**
|
|
839
921
|
* Prompts for unsaved changes before leaving the entity details route (breadcrumbs, menu, back to list).
|
|
@@ -881,5 +963,5 @@ declare class AXPPageComponentRendererDirective implements OnInit, OnDestroy {
|
|
|
881
963
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPPageComponentRendererDirective, "[axp-page-component-renderer]", never, { "componentKey": { "alias": "componentKey"; "required": true; "isSignal": true; }; "rootContext": { "alias": "rootContext"; "required": false; "isSignal": true; }; "pageConfig": { "alias": "pageConfig"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "componentReady": "componentReady"; }, never, never, true, never>;
|
|
882
964
|
}
|
|
883
965
|
|
|
884
|
-
export { AXPLayoutDetailsViewComponent, AXPLayoutDetailsViewViewModel, AXPPageComponentInstanceRegistryService, AXPPageComponentRendererDirective, AXPPageLayoutBase, AXPPageLayoutBaseComponent, AXPPageLayoutComponent, AXPPopupLayoutBase, AXPPopupLayoutBaseComponent, AXPPopupLayoutComponent, axpDetailsViewCanDeactivateGuard, buildNotSavedPageBadge, getDetailsViewActionCommandBaseName, isDiscardCommand, resolveDetailsViewActionShortcuts, resolveDetailsViewFooterCommandShortcuts };
|
|
885
|
-
export type { AXPDetailsViewActionShortcut, AXPLayoutDetailsViewAction, AXPLayoutDetailsViewAdapter, AXPLayoutDetailsViewPage, AXPLayoutDetailsViewTabItem, AXPPageContentItem };
|
|
966
|
+
export { AXPLayoutDetailsViewComponent, AXPLayoutDetailsViewViewModel, AXPPageComponentInstanceRegistryService, AXPPageComponentRendererDirective, AXPPageLayoutBase, AXPPageLayoutBaseComponent, AXPPageLayoutComponent, AXPPopupLayoutBase, AXPPopupLayoutBaseComponent, AXPPopupLayoutComponent, AXP_LAYOUT_DETAILS_VIEW_ADAPTER_LOADER, axpDetailsViewCanDeactivateGuard, buildNotSavedPageBadge, getDetailsViewActionCommandBaseName, isDiscardCommand, isDiscardFooterCommand, isSaveFooterCommand, resolveDetailsViewActionShortcuts, resolveDetailsViewFooterCommandShortcuts, resolvePageFooterActionDefaultShortcuts, resolvePageFooterActionShortcuts };
|
|
967
|
+
export type { AXPDetailsViewActionShortcut, AXPLayoutDetailsViewAction, AXPLayoutDetailsViewAdapter, AXPLayoutDetailsViewAdapterLoader, AXPLayoutDetailsViewPage, AXPLayoutDetailsViewRouteParams, AXPLayoutDetailsViewTabItem, AXPPageContentItem };
|