@acorex/platform 20.3.0-next.7 → 20.3.0-next.8

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.
Files changed (32) hide show
  1. package/core/index.d.ts +331 -2
  2. package/fesm2022/acorex-platform-core.mjs +347 -45
  3. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  4. package/fesm2022/acorex-platform-layout-builder.mjs +2 -2
  5. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  6. package/fesm2022/acorex-platform-layout-components.mjs +670 -51
  7. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  8. package/fesm2022/acorex-platform-layout-entity.mjs +9 -5
  9. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-layout-views.mjs +15 -0
  11. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  12. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-KpZWpnOJ.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs} +21 -11
  13. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs.map +1 -0
  14. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-BvOiVCgt.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs} +20 -5
  15. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs.map +1 -0
  16. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-BW0rfkjk.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs} +20 -5
  17. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs.map +1 -0
  18. package/fesm2022/acorex-platform-themes-shared.mjs +51 -15
  19. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  20. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-C-4bWr9G.mjs → acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs} +51 -35
  21. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs.map +1 -0
  22. package/fesm2022/acorex-platform-widgets.mjs +1089 -1657
  23. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  24. package/layout/builder/index.d.ts +2 -3
  25. package/layout/components/index.d.ts +286 -7
  26. package/layout/entity/index.d.ts +8 -1
  27. package/package.json +1 -1
  28. package/widgets/index.d.ts +1240 -284
  29. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-KpZWpnOJ.mjs.map +0 -1
  30. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BvOiVCgt.mjs.map +0 -1
  31. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BW0rfkjk.mjs.map +0 -1
  32. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C-4bWr9G.mjs.map +0 -1
@@ -133,7 +133,6 @@ interface AXPWidgetTypesMap {
133
133
  advancedGrid: 'advanced-grid-layout';
134
134
  advancedGridItem: 'advanced-grid-item-layout';
135
135
  grid: 'grid-layout';
136
- gridRow: 'grid-row-layout';
137
136
  gridItem: 'grid-item-layout';
138
137
  qrcode: 'qrcode';
139
138
  widgetSelector: 'widget-selector';
@@ -381,8 +380,8 @@ declare abstract class AXPBaseWidgetComponent extends AXPLayoutElement {
381
380
  protected readonly name: string | undefined;
382
381
  protected _id: string | null;
383
382
  get id(): string | null;
384
- protected _options: _angular_core.WritableSignal<any>;
385
- options: _angular_core.Signal<any>;
383
+ protected _options: _angular_core.WritableSignal<_acorex_platform_core.AXPOptionsData>;
384
+ options: _angular_core.Signal<_acorex_platform_core.AXPOptionsData>;
386
385
  onOptionsChanged: Subject<{
387
386
  sender: AXPBaseWidgetComponent;
388
387
  }>;
@@ -1,14 +1,15 @@
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, AXPActionMenuItem, AXPExecuteCommand, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
4
+ import { AXPActivityLog, AXPSystemActionType, AXPColumnQuery, AXPContextData, AXPOptionsData, AXPActionMenuItem, AXPExecuteCommand, AXPValidationRules, AXPFilterDefinition, AXPFilterQuery, AXPSortDefinition, AXPSortQuery, AXPMetaData, AXPViewQuery } from '@acorex/platform/core';
5
5
  import { AXPMenuItem } from '@acorex/platform/common';
6
- import { AXValueChangedEvent, AXHtmlEvent, AXEvent } from '@acorex/cdk/common';
6
+ import { AXValueChangedEvent, AXDataSource, AXDataSourceFilterOption, 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';
10
+ import { AXDataTableComponent, AXDataTableRowDbClick, AXDataTableRowClick } from '@acorex/components/data-table';
11
11
  import { AXBasePageComponent } from '@acorex/components/page';
12
+ import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
12
13
  import { AXFormComponent } from '@acorex/components/form';
13
14
  import { AXPopoverComponent } from '@acorex/components/popover';
14
15
  import { AXTagBoxComponent } from '@acorex/components/tag-box';
@@ -357,6 +358,68 @@ declare class AXPComponentSlotModule {
357
358
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
358
359
  }
359
360
 
361
+ interface AXPDataSelectorColumn {
362
+ name: string;
363
+ title: string;
364
+ visible: boolean;
365
+ widget: {
366
+ type: string;
367
+ options: any;
368
+ };
369
+ }
370
+ interface AXPDataSelectorConfig {
371
+ title: string;
372
+ dataSource: AXDataSource<any>;
373
+ columns: AXPDataSelectorColumn[];
374
+ selectionMode: 'single' | 'multiple';
375
+ searchFields?: string[];
376
+ parentField?: string;
377
+ allowCreate?: boolean;
378
+ }
379
+ declare class AXPDataSelectorComponent extends AXBasePageComponent {
380
+ protected config: _angular_core.WritableSignal<AXPDataSelectorConfig>;
381
+ protected searchTerm: string;
382
+ protected filter: AXDataSourceFilterOption;
383
+ protected grid: _angular_core.Signal<AXDataTableComponent | undefined>;
384
+ protected initialSelectedItems: any[];
385
+ protected selectedItems: _angular_core.WritableSignal<any[]>;
386
+ protected allowSelect: _angular_core.Signal<boolean>;
387
+ protected hasSearch: _angular_core.Signal<boolean | undefined>;
388
+ protected searchPlaceholder: _angular_core.Signal<string>;
389
+ protected ngOnInit(): void;
390
+ protected ngAfterViewInit(): void;
391
+ protected handleRowDbClick(e: AXDataTableRowDbClick): void;
392
+ protected handleRowClick(e: AXDataTableRowClick): void;
393
+ protected handleSelectedRowsChange(rows: unknown[]): Promise<void>;
394
+ protected handleChangeSearchValue(e: AXValueChangedEvent): void;
395
+ protected handleCreateNewClick(): Promise<void>;
396
+ protected handleCloseClick(): void;
397
+ protected handleSelectClick(): void;
398
+ protected handleExpandRow(row: any): Promise<void>;
399
+ private applySearchFilter;
400
+ private applyFilterAndSort;
401
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorComponent, never>;
402
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDataSelectorComponent, "axp-data-selector", never, {}, {}, never, never, true, never>;
403
+ }
404
+
405
+ declare class AXPDataSelectorService {
406
+ private readonly popupService;
407
+ /**
408
+ * Open data selector popup
409
+ */
410
+ open(config: AXPDataSelectorConfig): Promise<{
411
+ items: any[];
412
+ } | null>;
413
+ /**
414
+ * Open data selector for meta data selection
415
+ */
416
+ openMetaDataSelector(dataSource: any): Promise<{
417
+ items: any[];
418
+ } | null>;
419
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataSelectorService, never>;
420
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDataSelectorService>;
421
+ }
422
+
360
423
  /**
361
424
  * Form appearance and density styling
362
425
  */
@@ -418,6 +481,24 @@ interface AXPDynamicDialogResult {
418
481
  context: any;
419
482
  action?: string;
420
483
  }
484
+ interface AXPDialogRef {
485
+ /**
486
+ * Manually close the dialog (optional - dialog closes automatically after user interaction)
487
+ */
488
+ close(): void;
489
+ /**
490
+ * Get the form data from the dialog
491
+ */
492
+ context(): any;
493
+ /**
494
+ * Get the action that was clicked by the user
495
+ */
496
+ action(): string | undefined;
497
+ /**
498
+ * Set the loading state of the dialog
499
+ */
500
+ setLoading(loading: boolean): void;
501
+ }
421
502
 
422
503
  declare class AXPDynamicDialogComponent extends AXBasePageComponent {
423
504
  config: AXPDynamicDialogConfig;
@@ -425,10 +506,18 @@ declare class AXPDynamicDialogComponent extends AXBasePageComponent {
425
506
  isSubmitting: _angular_core.WritableSignal<boolean>;
426
507
  private previousContext;
427
508
  private formData;
509
+ dialogResult: AXPDynamicDialogResult | null;
510
+ isSubmittingFromDialog: boolean;
511
+ data: any;
512
+ callBack: (dialogRef: AXPDialogRef) => void;
428
513
  /**
429
514
  * Form context for widget container
430
515
  */
431
516
  protected formContext: _angular_core.Signal<Record<string, any>>;
517
+ /**
518
+ * Combined loading state from both signal and dialog
519
+ */
520
+ protected isFormLoading: _angular_core.Signal<boolean>;
432
521
  protected defaultLayout: () => {
433
522
  positions: {
434
523
  default: {
@@ -480,9 +569,9 @@ declare class AXPDynamicDialogService {
480
569
  /**
481
570
  * Show a dynamic dialog with the given configuration
482
571
  * @param config Dialog configuration including fields, validation, and UI options
483
- * @returns Promise resolving to dialog result with form values and cancellation status
572
+ * @returns Promise resolving to dialog reference for controlling the dialog
484
573
  */
485
- showDialog(config: AXPDynamicDialogConfig): Promise<AXPDynamicDialogResult>;
574
+ showDialog(config: AXPDynamicDialogConfig): Promise<AXPDialogRef>;
486
575
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicDialogService, never>;
487
576
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDynamicDialogService>;
488
577
  }
@@ -561,6 +650,196 @@ declare class AXPDynamicFormComponent implements OnInit {
561
650
  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>;
562
651
  }
563
652
 
653
+ interface TextBoxOptions {
654
+ placeholder?: string;
655
+ maxLength?: number;
656
+ minLength?: number;
657
+ mask?: string;
658
+ disabled?: boolean;
659
+ readonly?: boolean;
660
+ validations?: AXPValidationRules;
661
+ }
662
+ interface LargeTextBoxOptions {
663
+ placeholder?: string;
664
+ maxLength?: number;
665
+ minLength?: number;
666
+ rows?: number;
667
+ disabled?: boolean;
668
+ readonly?: boolean;
669
+ validations?: AXPValidationRules;
670
+ }
671
+ interface RichTextOptions {
672
+ placeholder?: string;
673
+ toolbar?: string[];
674
+ height?: number;
675
+ disabled?: boolean;
676
+ readonly?: boolean;
677
+ validations?: AXPValidationRules;
678
+ }
679
+ interface SelectBoxOptions<TItem extends Record<string, unknown> = Record<string, unknown>> {
680
+ valueField: keyof TItem & string;
681
+ textField: keyof TItem & string;
682
+ dataSource: TItem[];
683
+ multiple?: boolean;
684
+ placeholder?: string;
685
+ disabled?: boolean;
686
+ readonly?: boolean;
687
+ validations?: AXPValidationRules;
688
+ }
689
+ interface LookupBoxOptions {
690
+ entity: string;
691
+ multiple?: boolean;
692
+ expose?: Array<{
693
+ source: string;
694
+ target: string;
695
+ }>;
696
+ placeholder?: string;
697
+ textField?: string;
698
+ valueField?: string;
699
+ look?: string;
700
+ columns?: string[];
701
+ allowClear?: boolean;
702
+ disabled?: boolean;
703
+ readonly?: boolean;
704
+ validations?: AXPValidationRules;
705
+ }
706
+ interface NumberBoxOptions {
707
+ minValue?: number;
708
+ maxValue?: number;
709
+ step?: number;
710
+ format?: string;
711
+ placeholder?: string;
712
+ disabled?: boolean;
713
+ readonly?: boolean;
714
+ validations?: AXPValidationRules;
715
+ }
716
+ interface DateTimeBoxOptions {
717
+ format?: string;
718
+ min?: Date;
719
+ max?: Date;
720
+ showTime?: boolean;
721
+ placeholder?: string;
722
+ disabled?: boolean;
723
+ readonly?: boolean;
724
+ validations?: AXPValidationRules;
725
+ }
726
+ interface ToggleSwitchOptions {
727
+ onText?: string;
728
+ offText?: string;
729
+ validations?: AXPValidationRules;
730
+ }
731
+ interface PasswordBoxOptions {
732
+ placeholder?: string;
733
+ maxLength?: number;
734
+ minLength?: number;
735
+ showToggle?: boolean;
736
+ validations?: AXPValidationRules;
737
+ }
738
+ interface SelectionListOptions<TItem extends Record<string, unknown> = Record<string, unknown>> {
739
+ valueField: keyof TItem & string;
740
+ textField: keyof TItem & string;
741
+ dataSource: TItem[];
742
+ multiple?: boolean;
743
+ placeholder?: string;
744
+ disabled?: boolean;
745
+ readonly?: boolean;
746
+ validations?: AXPValidationRules;
747
+ }
748
+ interface ColorBoxOptions {
749
+ defaultColor?: string;
750
+ showAlpha?: boolean;
751
+ disabled?: boolean;
752
+ readonly?: boolean;
753
+ validations?: AXPValidationRules;
754
+ }
755
+ interface IFieldBuilder {
756
+ title(title: string): IFieldBuilder;
757
+ description(description: string): IFieldBuilder;
758
+ defaultValue(value: any): IFieldBuilder;
759
+ textBox(options?: TextBoxOptions): IFieldBuilder;
760
+ largeTextBox(options?: LargeTextBoxOptions): IFieldBuilder;
761
+ richText(options?: RichTextOptions): IFieldBuilder;
762
+ passwordBox(options?: PasswordBoxOptions): IFieldBuilder;
763
+ selectBox(options: SelectBoxOptions): IFieldBuilder;
764
+ lookupBox(options: LookupBoxOptions): IFieldBuilder;
765
+ selectionList(options: SelectionListOptions): IFieldBuilder;
766
+ numberBox(options?: NumberBoxOptions): IFieldBuilder;
767
+ dateTimeBox(options?: DateTimeBoxOptions): IFieldBuilder;
768
+ toggleSwitch(options?: ToggleSwitchOptions): IFieldBuilder;
769
+ colorBox(options?: ColorBoxOptions): IFieldBuilder;
770
+ widget(type: string, options?: unknown): IFieldBuilder;
771
+ }
772
+ interface IGroupBuilder {
773
+ field(path: string, delegate?: (field: IFieldBuilder) => void): IGroupBuilder;
774
+ group(name: string, delegate?: (group: IGroupBuilder) => void): IGroupBuilder;
775
+ }
776
+ interface IFormBuilder {
777
+ group(name: string, delegate?: (group: IGroupBuilder) => void): IFormBuilder;
778
+ layout(config: Partial<AXPDynamicFormLayoutConfig>): IFormBuilder;
779
+ look(look: AXPDynamicFormLook): IFormBuilder;
780
+ direction(direction: AXPDynamicFormDirection): IFormBuilder;
781
+ build(): AXPDynamicFormDefinition;
782
+ }
783
+ interface IActionBuilder {
784
+ cancel(text?: string): IActionBuilder;
785
+ submit(text?: string): IActionBuilder;
786
+ custom(action: AXPActionMenuItem): IActionBuilder;
787
+ }
788
+ interface IDialogBuilder extends IFormBuilder {
789
+ group(name: string, delegate?: (group: IGroupBuilder) => void): IDialogBuilder;
790
+ title(title: string): IDialogBuilder;
791
+ message(message?: string): IDialogBuilder;
792
+ size(size: AXPopupSizeType): IDialogBuilder;
793
+ context(context: AXPContextData): IDialogBuilder;
794
+ actions(delegate?: (actions: IActionBuilder) => void): IDialogBuilder;
795
+ show(): Promise<AXPDialogRef>;
796
+ }
797
+ interface FormBuilderState {
798
+ groups: AXPDynamicFormGroupDefinition[];
799
+ layoutConfig: AXPDynamicFormLayoutConfig;
800
+ look: AXPDynamicFormLook;
801
+ direction: AXPDynamicFormDirection;
802
+ }
803
+ interface DialogBuilderState extends FormBuilderState {
804
+ title?: string;
805
+ message?: string;
806
+ size?: AXPopupSizeType;
807
+ context?: AXPContextData;
808
+ actions?: {
809
+ footer?: {
810
+ prefix?: AXPActionMenuItem[];
811
+ suffix?: AXPActionMenuItem[];
812
+ };
813
+ };
814
+ }
815
+ interface FieldBuilderState {
816
+ path: string;
817
+ title?: string;
818
+ description?: string;
819
+ defaultValue?: any;
820
+ widget?: AXPWidgetNode;
821
+ }
822
+ interface GroupBuilderState {
823
+ name: string;
824
+ title?: string;
825
+ description?: string;
826
+ parameters: AXPDynamicFormFieldDefinition[];
827
+ }
828
+
829
+ declare class AXPDynamicFormBuilderService {
830
+ private readonly dialogService;
831
+ /**
832
+ * Create a new form builder
833
+ */
834
+ form(): IFormBuilder;
835
+ /**
836
+ * Create a new dialog builder
837
+ */
838
+ dialog(): IDialogBuilder;
839
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDynamicFormBuilderService, never>;
840
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPDynamicFormBuilderService>;
841
+ }
842
+
564
843
  /**
565
844
  * Describes a schema-only definition for an extra property (no value).
566
845
  */
@@ -998,5 +1277,5 @@ declare class AXPWidgetPropertyViewerComponent {
998
1277
  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>;
999
1278
  }
1000
1279
 
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 };
1280
+ export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPDataSelectorComponent, AXPDataSelectorService, AXPDynamicDialogComponent, AXPDynamicDialogService, AXPDynamicFormBuilderService, 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 };
1281
+ export type { AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPDataSelectorColumn, AXPDataSelectorConfig, AXPDialogRef, AXPDynamicDialogConfig, AXPDynamicDialogResult, AXPDynamicFormDefinition, AXPDynamicFormDirection, AXPDynamicFormFieldDefinition, AXPDynamicFormGroupDefinition, AXPDynamicFormLayoutConfig, AXPDynamicFormLook, AXPExtraPropertyItem, AXPExtraPropertySchemaItem, AXPExtraPropertyType, AXPTemplateViewerConfig, AXPTemplateViewerResult, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus, AXPWidgetItemClickEvent, AXPWidgetItemData, AXPWidgetPropertiesChangedEvent, AXPWidgetPropertyTab, ColorBoxOptions, DateTimeBoxOptions, DialogBuilderState, FieldBuilderState, FormBuilderState, GroupBuilderState, IActionBuilder, IDialogBuilder, IFieldBuilder, IFormBuilder, IGroupBuilder, LargeTextBoxOptions, LookupBoxOptions, NumberBoxOptions, PasswordBoxOptions, RichTextOptions, SelectBoxOptions, SelectionListOptions, TextBoxOptions, ToggleSwitchOptions };
@@ -517,8 +517,15 @@ interface AXPAuditable {
517
517
  createdBy?: string;
518
518
  updatedBy?: string;
519
519
  }
520
+ interface AXPRecordControl {
521
+ isReadOnly?: boolean;
522
+ isHidden?: boolean;
523
+ isSystem?: boolean;
524
+ isImmutable?: boolean;
525
+ }
520
526
  interface AXPEntityModel<Id> extends AXPAuditable {
521
527
  id: Id;
528
+ control?: AXPRecordControl;
522
529
  }
523
530
  interface AXPEntityCreateDto {
524
531
  }
@@ -1093,4 +1100,4 @@ declare class AXPEntityDetailPopoverService {
1093
1100
  }
1094
1101
 
1095
1102
  export { AXMEntityCrudService, AXMEntityCrudServiceImpl, AXPCreateEntityWorkflow, AXPDataSeederService, AXPDeleteEntityWorkflow, AXPEntityApplyUpdatesAction, AXPEntityCommandTriggerViewModel, AXPEntityCreateEvent, AXPEntityCreatePopupAction, AXPEntityCreateSubmittedAction, AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDataProvider, AXPEntityDataProviderImpl, AXPEntityDefinitionRegistryService, AXPEntityDeletedEvent, AXPEntityDetailListViewModel, AXPEntityDetailPopoverComponent, AXPEntityDetailPopoverService, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityEventDispatcherService, AXPEntityListViewColumnViewModel, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityMiddleware, AXPEntityModifyConfirmedAction, AXPEntityModifyEvent, AXPEntityModifySectionPopupAction, AXPEntityModule, AXPEntityPerformDeleteAction, AXPEntityResolver, AXPEntityService, AXPEntityStorageService, AXPGetEntityDetailsQuery, 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 };
1096
- export type { AXPAuditable, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityDetailPopoverOptions, AXPEntityListItemDto, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOp, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPOpenEntityDetailsCommandInput, AXPOpenEntityDetailsCommandResult, ColumnWidthConfig };
1103
+ export type { AXPAuditable, AXPDataSeeder, AXPEntityActionPlugin, AXPEntityChangeSet, AXPEntityConfigs, AXPEntityCreateDto, AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityDeleteOptions, AXPEntityDetailDto, AXPEntityDetailPopoverOptions, AXPEntityListItemDto, AXPEntityMasterListViewSortPropViewModel, AXPEntityModel, AXPEntityModifier, AXPEntityModifierContext, AXPEntityModifierProvider, AXPEntityOp, AXPEntityOutputDto, AXPEntityPreloadEntity, AXPEntityStorageContext, AXPEntityStorageMiddleware, AXPEntityUpdateDto, AXPGetEntityDetailsQueryInput, AXPGetEntityDetailsQueryResult, AXPOpenEntityDetailsCommandInput, AXPOpenEntityDetailsCommandResult, AXPRecordControl, ColumnWidthConfig };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "20.3.0-next.7",
3
+ "version": "20.3.0-next.8",
4
4
  "peerDependencies": {
5
5
  "@acorex/styles": ">=20.0.0",
6
6
  "@acorex/core": ">=20.0.0",