@acorex/platform 20.2.4-next.8 → 20.3.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/common/index.d.ts +1 -1
- package/core/index.d.ts +3 -2
- package/fesm2022/acorex-platform-auth.mjs +1 -1
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +16 -2
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +29 -6
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +372 -25
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +172 -63
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +47 -6
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +14 -4
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/index.d.ts +12 -12
- package/layout/components/index.d.ts +161 -11
- package/layout/entity/index.d.ts +28 -2
- package/layout/views/index.d.ts +14 -4
- package/package.json +13 -27
- package/workflow/index.d.ts +1 -0
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { Signal, InjectionToken, InputSignal, TemplateRef, ElementRef, OnInit, OnDestroy, Type, ViewContainerRef, ModuleWithProviders, WritableSignal, QueryList, EventEmitter } from '@angular/core';
|
|
3
3
|
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
4
|
-
import { AXPActivityLog, AXPSystemActionType, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPViewQuery } from '@acorex/platform/core';
|
|
4
|
+
import { AXPActivityLog, AXPSystemActionType, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPActionMenuItem, AXPExecuteCommand, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
|
|
5
5
|
import { AXPMenuItem } from '@acorex/platform/common';
|
|
6
6
|
import { AXValueChangedEvent, AXHtmlEvent, AXEvent } from '@acorex/cdk/common';
|
|
7
7
|
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
8
8
|
import { AXPWidgetNode, AXPLayoutContextChangeEvent, AXPWidgetProperty, AXPWidgetConfig } from '@acorex/platform/layout/builder';
|
|
9
9
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
10
|
+
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
11
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
|
10
12
|
import { AXFormComponent } from '@acorex/components/form';
|
|
11
13
|
import { AXPopoverComponent } from '@acorex/components/popover';
|
|
12
14
|
import { AXTagBoxComponent } from '@acorex/components/tag-box';
|
|
13
15
|
import { AXCalendarService } from '@acorex/core/date-time';
|
|
14
16
|
import { AXTranslationService } from '@acorex/core/translation';
|
|
15
17
|
import { Observable } from 'rxjs';
|
|
16
|
-
import { AXPopupService } from '@acorex/components/popup';
|
|
17
18
|
import { AXTabsComponent, AXTabStripChangedEvent } from '@acorex/components/tabs';
|
|
18
19
|
|
|
19
20
|
declare class AXPActivityLogComponent {
|
|
@@ -301,8 +302,8 @@ declare class AXPComponentSlotDirective implements OnInit {
|
|
|
301
302
|
contextStore: {
|
|
302
303
|
data: _angular_core.Signal<AXPContextData>;
|
|
303
304
|
state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
|
|
304
|
-
initialSnapshot:
|
|
305
|
-
previousSnapshot:
|
|
305
|
+
initialSnapshot: _angular_core.Signal<{}>;
|
|
306
|
+
previousSnapshot: _angular_core.Signal<{}>;
|
|
306
307
|
lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
|
|
307
308
|
isChanged: _angular_core.Signal<boolean>;
|
|
308
309
|
isReset: _angular_core.Signal<boolean>;
|
|
@@ -356,7 +357,14 @@ declare class AXPComponentSlotModule {
|
|
|
356
357
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
|
|
357
358
|
}
|
|
358
359
|
|
|
359
|
-
|
|
360
|
+
/**
|
|
361
|
+
* Form appearance and density styling
|
|
362
|
+
*/
|
|
363
|
+
type AXPDynamicFormLook = 'normal' | 'compact' | 'borderless';
|
|
364
|
+
/**
|
|
365
|
+
* Form layout direction and flow
|
|
366
|
+
*/
|
|
367
|
+
type AXPDynamicFormDirection = 'vertical' | 'horizontal' | 'grid';
|
|
360
368
|
interface AXPDynamicFormFieldDefinition {
|
|
361
369
|
path: string;
|
|
362
370
|
title?: string;
|
|
@@ -392,6 +400,93 @@ interface AXPDynamicFormLayoutConfig {
|
|
|
392
400
|
};
|
|
393
401
|
}
|
|
394
402
|
|
|
403
|
+
interface AXPDynamicDialogConfig {
|
|
404
|
+
title: string;
|
|
405
|
+
message?: string;
|
|
406
|
+
formDefinition: AXPDynamicFormDefinition;
|
|
407
|
+
context: any;
|
|
408
|
+
layoutConfig?: AXPDynamicFormLayoutConfig;
|
|
409
|
+
size?: AXPopupSizeType;
|
|
410
|
+
actions?: {
|
|
411
|
+
footer?: {
|
|
412
|
+
prefix?: AXPActionMenuItem[];
|
|
413
|
+
suffix?: AXPActionMenuItem[];
|
|
414
|
+
};
|
|
415
|
+
};
|
|
416
|
+
}
|
|
417
|
+
interface AXPDynamicDialogResult {
|
|
418
|
+
context: any;
|
|
419
|
+
action?: string;
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
declare class AXPDynamicDialogComponent extends AXBasePageComponent {
|
|
423
|
+
config: AXPDynamicDialogConfig;
|
|
424
|
+
private readonly dynamicForm;
|
|
425
|
+
isSubmitting: _angular_core.WritableSignal<boolean>;
|
|
426
|
+
private previousContext;
|
|
427
|
+
private formData;
|
|
428
|
+
/**
|
|
429
|
+
* Form context for widget container
|
|
430
|
+
*/
|
|
431
|
+
protected formContext: _angular_core.Signal<Record<string, any>>;
|
|
432
|
+
protected defaultLayout: () => {
|
|
433
|
+
positions: {
|
|
434
|
+
default: {
|
|
435
|
+
colSpan: number;
|
|
436
|
+
};
|
|
437
|
+
md: {
|
|
438
|
+
colSpan: number;
|
|
439
|
+
};
|
|
440
|
+
lg: {
|
|
441
|
+
colSpan: number;
|
|
442
|
+
};
|
|
443
|
+
xl: {
|
|
444
|
+
colSpan: number;
|
|
445
|
+
};
|
|
446
|
+
xxl: {
|
|
447
|
+
colSpan: number;
|
|
448
|
+
};
|
|
449
|
+
};
|
|
450
|
+
};
|
|
451
|
+
/**
|
|
452
|
+
* Footer actions for dynamic button system
|
|
453
|
+
*/
|
|
454
|
+
protected footerPrefixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
455
|
+
protected footerSuffixActions: _angular_core.Signal<AXPActionMenuItem[]>;
|
|
456
|
+
protected hasFooterActions: _angular_core.Signal<boolean>;
|
|
457
|
+
protected hasVisibleFooterPrefixActions: _angular_core.Signal<boolean>;
|
|
458
|
+
protected hasVisibleFooterSuffixActions: _angular_core.Signal<boolean>;
|
|
459
|
+
ngOnInit(): void;
|
|
460
|
+
protected handleContextInitiated(context: any): void;
|
|
461
|
+
protected handleContextChanged(context: any): void;
|
|
462
|
+
/**
|
|
463
|
+
* Execute a dynamic action
|
|
464
|
+
*/
|
|
465
|
+
protected executeAction(action: AXPActionMenuItem): Promise<void>;
|
|
466
|
+
/**
|
|
467
|
+
* Execute a command
|
|
468
|
+
*/
|
|
469
|
+
protected executeCommand(command: AXPExecuteCommand): Promise<void>;
|
|
470
|
+
/**
|
|
471
|
+
* Check if form is valid
|
|
472
|
+
*/
|
|
473
|
+
protected isFormValid(): Promise<boolean>;
|
|
474
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicDialogComponent, never>;
|
|
475
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicDialogComponent, "axp-dynamic-dialog", never, { "config": { "alias": "config"; "required": true; }; }, {}, never, never, true, never>;
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
declare class AXPDynamicDialogService {
|
|
479
|
+
private readonly popupService;
|
|
480
|
+
/**
|
|
481
|
+
* Show a dynamic dialog with the given configuration
|
|
482
|
+
* @param config Dialog configuration including fields, validation, and UI options
|
|
483
|
+
* @returns Promise resolving to dialog result with form values and cancellation status
|
|
484
|
+
*/
|
|
485
|
+
showDialog(config: AXPDynamicDialogConfig): Promise<AXPDynamicDialogResult>;
|
|
486
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicDialogService, never>;
|
|
487
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDynamicDialogService>;
|
|
488
|
+
}
|
|
489
|
+
|
|
395
490
|
declare class AXPDynamicFormComponent implements OnInit {
|
|
396
491
|
#private;
|
|
397
492
|
/**
|
|
@@ -403,9 +498,13 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
403
498
|
*/
|
|
404
499
|
context: _angular_core.InputSignal<any>;
|
|
405
500
|
/**
|
|
406
|
-
*
|
|
501
|
+
* Form appearance and density styling (normal, compact, spacious)
|
|
407
502
|
*/
|
|
408
|
-
|
|
503
|
+
layoutLook: _angular_core.InputSignal<AXPDynamicFormLook>;
|
|
504
|
+
/**
|
|
505
|
+
* Form layout direction and flow (vertical, horizontal, grid)
|
|
506
|
+
*/
|
|
507
|
+
layoutDirection: _angular_core.InputSignal<AXPDynamicFormDirection>;
|
|
409
508
|
/**
|
|
410
509
|
* Custom layout configuration for form fields
|
|
411
510
|
*/
|
|
@@ -433,7 +532,7 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
433
532
|
*/
|
|
434
533
|
protected computedLayout: _angular_core.Signal<AXPDynamicFormLayoutConfig>;
|
|
435
534
|
/**
|
|
436
|
-
* Host classes based on layout
|
|
535
|
+
* Host classes based on layout look and direction
|
|
437
536
|
*/
|
|
438
537
|
protected hostClasses: _angular_core.Signal<string>;
|
|
439
538
|
ngOnInit(): void;
|
|
@@ -441,6 +540,7 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
441
540
|
* Handle context change events from widget container
|
|
442
541
|
*/
|
|
443
542
|
protected handleContextChanged(event: AXPLayoutContextChangeEvent): void;
|
|
543
|
+
protected isRequired(param: AXPDynamicFormFieldDefinition): boolean;
|
|
444
544
|
/**
|
|
445
545
|
* Get the form component instance
|
|
446
546
|
*/
|
|
@@ -458,7 +558,7 @@ declare class AXPDynamicFormComponent implements OnInit {
|
|
|
458
558
|
*/
|
|
459
559
|
validate(): Promise<boolean>;
|
|
460
560
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicFormComponent, never>;
|
|
461
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicFormComponent, "axp-dynamic-form", never, { "formDefinition": { "alias": "formDefinition"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": true; "isSignal": true; }; "
|
|
561
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDynamicFormComponent, "axp-dynamic-form", never, { "formDefinition": { "alias": "formDefinition"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": true; "isSignal": true; }; "layoutLook": { "alias": "layoutLook"; "required": false; "isSignal": true; }; "layoutDirection": { "alias": "layoutDirection"; "required": false; "isSignal": true; }; "layoutConfig": { "alias": "layoutConfig"; "required": false; "isSignal": true; }; }, { "contextChange": "contextChange"; "contextInitiated": "contextInitiated"; "validityChange": "validityChange"; }, never, never, true, never>;
|
|
462
562
|
}
|
|
463
563
|
|
|
464
564
|
/**
|
|
@@ -640,6 +740,56 @@ declare class AXPQuerySortsComponent {
|
|
|
640
740
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPQuerySortsComponent, "axp-query-sorts", never, { "sortDefinitions": { "alias": "sortDefinitions"; "required": false; "isSignal": true; }; "initialSortQueries": { "alias": "initialSortQueries"; "required": false; "isSignal": true; }; }, { "sortDefinitions": "sortDefinitionsChange"; "sortQueriesChange": "sortQueriesChange"; }, never, never, true, never>;
|
|
641
741
|
}
|
|
642
742
|
|
|
743
|
+
interface AXPTemplateViewerConfig {
|
|
744
|
+
template: AXPWidgetNode | string;
|
|
745
|
+
title?: string;
|
|
746
|
+
size?: AXPopupSizeType;
|
|
747
|
+
context?: any;
|
|
748
|
+
metadata?: AXPMetaData;
|
|
749
|
+
readOnly?: boolean;
|
|
750
|
+
showActions?: boolean;
|
|
751
|
+
}
|
|
752
|
+
interface AXPTemplateViewerResult {
|
|
753
|
+
context: any;
|
|
754
|
+
cancelled: boolean;
|
|
755
|
+
metadata?: AXPMetaData;
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
declare class AXPTemplateViewerComponent extends AXBasePageComponent {
|
|
759
|
+
set config(value: AXPTemplateViewerConfig | undefined);
|
|
760
|
+
get config(): AXPTemplateViewerConfig | undefined;
|
|
761
|
+
protected context: any;
|
|
762
|
+
protected readonly document: _angular_core.WritableSignal<AXPWidgetNode>;
|
|
763
|
+
protected readonly currentPageIndex: _angular_core.WritableSignal<number>;
|
|
764
|
+
protected readonly _config: _angular_core.WritableSignal<AXPTemplateViewerConfig | undefined>;
|
|
765
|
+
protected readonly currentPage: _angular_core.Signal<AXPWidgetNode>;
|
|
766
|
+
protected ngOnInit(): Promise<void>;
|
|
767
|
+
private loadTemplate;
|
|
768
|
+
protected handleContextChanged(e: AXPLayoutContextChangeEvent): void;
|
|
769
|
+
protected handleSubmit(form: AXFormComponent): Promise<void>;
|
|
770
|
+
protected handleCancel(): void;
|
|
771
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTemplateViewerComponent, never>;
|
|
772
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPTemplateViewerComponent, "axp-template-viewer", never, { "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
|
|
773
|
+
}
|
|
774
|
+
|
|
775
|
+
declare class AXPTemplateViewerService {
|
|
776
|
+
private readonly popupService;
|
|
777
|
+
/**
|
|
778
|
+
* Show a template viewer dialog with the given configuration
|
|
779
|
+
* @param config Template viewer configuration including template, title, and UI options
|
|
780
|
+
* @returns Promise resolving to viewer result with form values and cancellation status
|
|
781
|
+
*/
|
|
782
|
+
showTemplate(config: AXPTemplateViewerConfig): Promise<AXPTemplateViewerResult>;
|
|
783
|
+
/**
|
|
784
|
+
* Show a template viewer in read-only mode
|
|
785
|
+
* @param config Template viewer configuration
|
|
786
|
+
* @returns Promise resolving to viewer result
|
|
787
|
+
*/
|
|
788
|
+
showTemplateReadOnly(config: Omit<AXPTemplateViewerConfig, 'readOnly' | 'showActions'>): Promise<AXPTemplateViewerResult>;
|
|
789
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTemplateViewerService, never>;
|
|
790
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTemplateViewerService>;
|
|
791
|
+
}
|
|
792
|
+
|
|
643
793
|
type AXPUserAvatarSize = 'small' | 'medium' | 'large';
|
|
644
794
|
type AXPUserAvatarStatus = 'online' | 'offline';
|
|
645
795
|
type AXPUserAvatarData = {
|
|
@@ -848,5 +998,5 @@ declare class AXPWidgetPropertyViewerComponent {
|
|
|
848
998
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPWidgetPropertyViewerComponent, "axp-widget-property-viewer", never, { "widget": { "alias": "widget"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "onChanged": "onChanged"; }, never, never, true, never>;
|
|
849
999
|
}
|
|
850
1000
|
|
|
851
|
-
export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDynamicFormComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPMenuBadgeHelper, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
|
|
852
|
-
export type { AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDynamicFormDefinition, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLayoutConfig,
|
|
1001
|
+
export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDynamicDialogComponent, AXPDynamicDialogService, AXPDynamicFormComponent, AXPExtraPropertiesComponent, AXPExtraPropertiesSchemaComponent, AXPExtraPropertiesValuesComponent, AXPMenuBadgeHelper, AXPQueryColumnsComponent, AXPQueryFiltersComponent, AXPQuerySortsComponent, AXPQueryViewsComponent, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPTemplateViewerComponent, AXPTemplateViewerService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXPWidgetItemComponent, AXPWidgetPropertyViewerComponent, AXP_EXTRA_PROPERTY_TYPES, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
|
|
1002
|
+
export type { AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDynamicDialogConfig, AXPDynamicDialogResult, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLayoutConfig, AXPDynamicFormLook, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyTab };
|
package/layout/entity/index.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import * as rxjs from 'rxjs';
|
|
|
12
12
|
import { Subject } from 'rxjs';
|
|
13
13
|
import * as i2 from '@acorex/platform/workflow';
|
|
14
14
|
import { AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
|
|
15
|
+
import { AXPCommand } from '@acorex/platform/runtime';
|
|
15
16
|
|
|
16
17
|
interface AXPDataSeeder {
|
|
17
18
|
seed(): Promise<void>;
|
|
@@ -901,6 +902,31 @@ declare class AXPShowListViewAction extends AXPWorkflowAction {
|
|
|
901
902
|
}
|
|
902
903
|
declare const AXPShowListViewWorkflow: AXPWorkflow;
|
|
903
904
|
|
|
905
|
+
interface AXPOpenEntityDetailsCommandInput {
|
|
906
|
+
entity: string;
|
|
907
|
+
data: {
|
|
908
|
+
id: string;
|
|
909
|
+
};
|
|
910
|
+
}
|
|
911
|
+
interface AXPOpenEntityDetailsCommandResult {
|
|
912
|
+
success: boolean;
|
|
913
|
+
}
|
|
914
|
+
/**
|
|
915
|
+
* Generic command to open entity details view
|
|
916
|
+
* Can be used by any entity to navigate to its detail page
|
|
917
|
+
*/
|
|
918
|
+
declare class AXPOpenEntityDetailsCommand implements AXPCommand<AXPOpenEntityDetailsCommandInput, AXPOpenEntityDetailsCommandResult> {
|
|
919
|
+
private readonly navigation;
|
|
920
|
+
private readonly sessionService;
|
|
921
|
+
/**
|
|
922
|
+
* Execute the command to navigate to entity details
|
|
923
|
+
* @param input - Command input containing entity and data information
|
|
924
|
+
*/
|
|
925
|
+
execute(input: AXPOpenEntityDetailsCommandInput): Promise<AXPOpenEntityDetailsCommandResult>;
|
|
926
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPOpenEntityDetailsCommand, never>;
|
|
927
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPOpenEntityDetailsCommand>;
|
|
928
|
+
}
|
|
929
|
+
|
|
904
930
|
declare function entityMasterCreateAction(): AXPEntityAction;
|
|
905
931
|
declare function entityMasterBulkDeleteAction(): AXPEntityAction;
|
|
906
932
|
declare function entityMasterViewAction(): AXPEntityAction;
|
|
@@ -956,5 +982,5 @@ declare const createColumnWidthMiddlewareProvider: (widths: ColumnWidthConfig, e
|
|
|
956
982
|
*/
|
|
957
983
|
declare const columnWidthMiddlewareProvider: AXPEntityModifierProvider;
|
|
958
984
|
|
|
959
|
-
export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntityApplyUpdatesAction, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, 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, actionExists, columnWidthMiddlewareFactory, columnWidthMiddlewareProvider, createColumnWidthMiddlewareProvider, createModifierContext, detectEntityChanges, ensureListActions, entityDetailsCreateActions, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, eventDispatchMiddleware };
|
|
960
|
-
export type { AXPAuditable, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityListItemDto, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOp, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, ColumnWidthConfig };
|
|
985
|
+
export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntityApplyUpdatesAction, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPMiddlewareEntityStorageService, AXPModifyEntitySectionWorkflow, AXPOpenEntityDetailsCommand, AXPQuickEntityModifyPopupAction, AXPQuickModifyEntityWorkflow, AXPShowDetailViewAction, AXPShowDetailsViewWorkflow, AXPShowListViewAction, AXPShowListViewWorkflow, 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, actionExists, columnWidthMiddlewareFactory, columnWidthMiddlewareProvider, createColumnWidthMiddlewareProvider, createModifierContext, detectEntityChanges, ensureListActions, entityDetailsCreateActions, entityDetailsCrudActions, entityDetailsEditAction, entityDetailsReferenceCondition, entityDetailsReferenceCreateActions, entityDetailsSimpleCondition, entityMasterBulkDeleteAction, entityMasterCreateAction, entityMasterCrudActions, entityMasterDeleteAction, entityMasterRecordActions, entityMasterViewAction, entityOverrideDetailsViewAction, eventDispatchMiddleware };
|
|
986
|
+
export type { AXPAuditable, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityListItemDto, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOp, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPOpenEntityDetailsCommandInput, AXPOpenEntityDetailsCommandResult, ColumnWidthConfig };
|
package/layout/views/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { AXClickEvent } from '@acorex/cdk/common';
|
|
|
6
6
|
import * as i1 from '@acorex/cdk/drawer';
|
|
7
7
|
import { AXDrawerItemDirective } from '@acorex/cdk/drawer';
|
|
8
8
|
import * as _acorex_platform_core from '@acorex/platform/core';
|
|
9
|
-
import { AXPActionMenuItem, AXPBreadcrumbItem, AXPBadge, AXPBackButton, AXPExecuteCommand, AXPExecuteCommandResult, AXPExpressionEvaluatorScope } from '@acorex/platform/core';
|
|
9
|
+
import { AXPActionMenuItem, AXPBreadcrumbItem, AXPBadge, AXPBackButton, AXPExecuteCommand, AXPExecuteCommandResult, AXPExpressionEvaluatorScope, AXPBroadcastEventService } from '@acorex/platform/core';
|
|
10
10
|
import { AXPWorkflowService } from '@acorex/platform/workflow';
|
|
11
11
|
import { AXPCommandService, AXPPolicyEngineService } from '@acorex/platform/runtime';
|
|
12
12
|
import { AXToastService } from '@acorex/components/toast';
|
|
@@ -19,6 +19,7 @@ import * as _acorex_platform_layout_builder from '@acorex/platform/layout/builde
|
|
|
19
19
|
import { AXPWidgetNode, AXPPageStatus, AXPWidgetContainerComponent, AXPLayoutContextChangeEvent } from '@acorex/platform/layout/builder';
|
|
20
20
|
import { AXFormComponent } from '@acorex/components/form';
|
|
21
21
|
import * as _acorex_platform_layout_views from '@acorex/platform/layout/views';
|
|
22
|
+
import { Router, ActivatedRoute } from '@angular/router';
|
|
22
23
|
|
|
23
24
|
declare abstract class AXPPageLayoutBase {
|
|
24
25
|
abstract primaryMenuItems: Signal<AXPActionMenuItem[]>;
|
|
@@ -461,9 +462,10 @@ interface AXPLayoutDetailsViewAdapter {
|
|
|
461
462
|
icon?: string;
|
|
462
463
|
actions?: AXPLayoutDetailsViewAction[];
|
|
463
464
|
breadcrumbs?: AXPBreadcrumbItem[];
|
|
465
|
+
pages: AXPLayoutDetailsViewPage[];
|
|
464
466
|
execute?: (command: AXPExecuteCommand, context: {}) => Promise<AXPExecuteCommandResult>;
|
|
465
467
|
load?: (params?: Record<string, any>) => Promise<AXPExecuteCommandResult>;
|
|
466
|
-
|
|
468
|
+
exitUrl?: string;
|
|
467
469
|
}
|
|
468
470
|
|
|
469
471
|
declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
@@ -495,7 +497,7 @@ declare const AXPLayoutDetailsViewViewModel: _angular_core.Type<{
|
|
|
495
497
|
tab: AXPLayoutDetailsViewTabItem;
|
|
496
498
|
}[]>;
|
|
497
499
|
loadAdapter: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
498
|
-
loadPage: (pageId?: string) => Promise<void>;
|
|
500
|
+
loadPage: (pageId?: string, forceRefresh?: boolean) => Promise<void>;
|
|
499
501
|
load: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
500
502
|
updateContext: (context: any) => void;
|
|
501
503
|
updatePageSelectedRows: (rows: any[]) => void;
|
|
@@ -572,7 +574,7 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
572
574
|
tab: _acorex_platform_layout_views.AXPLayoutDetailsViewTabItem;
|
|
573
575
|
}[]>;
|
|
574
576
|
loadAdapter: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
575
|
-
loadPage: (pageId?: string) => Promise<void>;
|
|
577
|
+
loadPage: (pageId?: string, forceRefresh?: boolean) => Promise<void>;
|
|
576
578
|
load: (adapter: AXPLayoutDetailsViewAdapter) => Promise<void>;
|
|
577
579
|
updateContext: (context: any) => void;
|
|
578
580
|
updatePageSelectedRows: (rows: any[]) => void;
|
|
@@ -616,7 +618,11 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
616
618
|
tab: _acorex_platform_layout_views.AXPLayoutDetailsViewTabItem;
|
|
617
619
|
}>>;
|
|
618
620
|
}>;
|
|
621
|
+
protected router: Router;
|
|
622
|
+
protected route: ActivatedRoute;
|
|
623
|
+
protected eventService: AXPBroadcastEventService;
|
|
619
624
|
private onSelectionChangeSubscription?;
|
|
625
|
+
private readonly destroyed$;
|
|
620
626
|
protected form: _angular_core.Signal<AXFormComponent | undefined>;
|
|
621
627
|
protected widgetContainer: _angular_core.Signal<AXPWidgetContainerComponent | undefined>;
|
|
622
628
|
protected footerPrimaryActions: _angular_core.WritableSignal<AXPActionMenuItem[]>;
|
|
@@ -625,6 +631,10 @@ declare class AXPLayoutDetailsViewComponent extends AXPPageLayoutBaseComponent i
|
|
|
625
631
|
protected hasVisibleFooterPrimaryActions: _angular_core.Signal<boolean>;
|
|
626
632
|
protected hasVisibleFooterSecondaryActions: _angular_core.Signal<boolean>;
|
|
627
633
|
protected hasFooter: _angular_core.Signal<boolean>;
|
|
634
|
+
/**
|
|
635
|
+
* Append timestamp query param to trigger router to re-run guards/resolvers
|
|
636
|
+
*/
|
|
637
|
+
protected refreshLayout(): Promise<void>;
|
|
628
638
|
ngOnInit(): Promise<void>;
|
|
629
639
|
ngAfterViewInit(): Promise<void>;
|
|
630
640
|
ngOnDestroy(): void;
|
package/package.json
CHANGED
|
@@ -1,30 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/platform",
|
|
3
|
-
"version": "20.
|
|
3
|
+
"version": "20.3.0-next.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@
|
|
6
|
-
"@
|
|
7
|
-
"@
|
|
8
|
-
"@
|
|
9
|
-
"@
|
|
10
|
-
"@
|
|
11
|
-
"
|
|
12
|
-
"jwt-decode": "^4.0.0",
|
|
13
|
-
"leaflet": "^1.9.4",
|
|
14
|
-
"leaflet-draw": "^1.0.4",
|
|
15
|
-
"leaflet.locatecontrol": "^0.81.1",
|
|
16
|
-
"lodash-es": "^4.17.21",
|
|
17
|
-
"@types/lodash-es": "^4.17.8",
|
|
18
|
-
"memoizee": "^0.4.15",
|
|
19
|
-
"oidc-client-ts": "^3.0.1",
|
|
20
|
-
"jspdf": "^2.5.1",
|
|
5
|
+
"@acorex/styles": ">=20.0.0",
|
|
6
|
+
"@acorex/core": ">=20.0.0",
|
|
7
|
+
"@acorex/components": ">=20.0.0",
|
|
8
|
+
"@angular/animations": "^20.0.0",
|
|
9
|
+
"@acorex/cdk": ">=20.0.0",
|
|
10
|
+
"@acorex/charts": ">=20.0.0",
|
|
11
|
+
"@ngrx/signals": "^20.0.0",
|
|
21
12
|
"dom-to-image": "^2.6.0",
|
|
22
|
-
"
|
|
23
|
-
"signature_pad": "^4.1.7",
|
|
24
|
-
"@acorex/styles": "^20.0.0",
|
|
25
|
-
"@acorex/core": "^20.0.0",
|
|
26
|
-
"@acorex/components": "^20.0.0",
|
|
27
|
-
"@angular/animations": "^20.0.0"
|
|
13
|
+
"signature_pad": "^4.1.7"
|
|
28
14
|
},
|
|
29
15
|
"dependencies": {
|
|
30
16
|
"tslib": "^2.3.0"
|
|
@@ -56,10 +42,6 @@
|
|
|
56
42
|
"types": "./domain/index.d.ts",
|
|
57
43
|
"default": "./fesm2022/acorex-platform-domain.mjs"
|
|
58
44
|
},
|
|
59
|
-
"./native": {
|
|
60
|
-
"types": "./native/index.d.ts",
|
|
61
|
-
"default": "./fesm2022/acorex-platform-native.mjs"
|
|
62
|
-
},
|
|
63
45
|
"./runtime": {
|
|
64
46
|
"types": "./runtime/index.d.ts",
|
|
65
47
|
"default": "./fesm2022/acorex-platform-runtime.mjs"
|
|
@@ -72,6 +54,10 @@
|
|
|
72
54
|
"types": "./workflow/index.d.ts",
|
|
73
55
|
"default": "./fesm2022/acorex-platform-workflow.mjs"
|
|
74
56
|
},
|
|
57
|
+
"./native": {
|
|
58
|
+
"types": "./native/index.d.ts",
|
|
59
|
+
"default": "./fesm2022/acorex-platform-native.mjs"
|
|
60
|
+
},
|
|
75
61
|
"./layout/builder": {
|
|
76
62
|
"types": "./layout/builder/index.d.ts",
|
|
77
63
|
"default": "./fesm2022/acorex-platform-layout-builder.mjs"
|