@acorex/platform 21.0.0-next.5 → 21.0.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/auth/index.d.ts +228 -3
  2. package/fesm2022/acorex-platform-auth.mjs +162 -2
  3. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  4. package/fesm2022/acorex-platform-common.mjs +1 -1
  5. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  6. package/fesm2022/acorex-platform-layout-builder.mjs +11 -2
  7. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  8. package/fesm2022/acorex-platform-layout-components.mjs +7 -7
  9. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-layout-entity.mjs +79 -34
  11. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-layout-widget-core.mjs +108 -1
  13. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-widgets.mjs +224 -89
  15. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  16. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs → acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs} +4 -4
  17. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs.map +1 -0
  18. package/fesm2022/acorex-platform-themes-default.mjs +2 -2
  19. package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs} +8 -8
  20. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-themes-shared.mjs +1 -1
  22. package/fesm2022/acorex-platform-workflow.mjs +1084 -456
  23. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  24. package/layout/builder/index.d.ts +6 -0
  25. package/layout/components/index.d.ts +4 -3
  26. package/layout/entity/index.d.ts +9 -0
  27. package/layout/widget-core/index.d.ts +42 -1
  28. package/layout/widgets/index.d.ts +12 -7
  29. package/package.json +9 -9
  30. package/workflow/index.d.ts +798 -939
  31. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs.map +0 -1
  32. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-DTnfRy5f.mjs.map +0 -1
@@ -415,6 +415,11 @@ interface ILayoutBuilder {
415
415
  dialog(delegate: (container: IDialogBuilder) => void): IDialogBuilder;
416
416
  stepWizard(delegate: (wizard: IStepWizardBuilder) => void): ILayoutBuilder;
417
417
  build(): AXPWidgetNode;
418
+ toJson(options?: {
419
+ removeMeta?: boolean;
420
+ removeFunctions?: boolean;
421
+ pretty?: boolean;
422
+ }): string;
418
423
  }
419
424
  interface IWidgetBuilder {
420
425
  name(name: string): IWidgetBuilder;
@@ -565,6 +570,7 @@ interface IDialogBuilder {
565
570
  content(delegate: (layoutBuilder: IFlexContainerBuilder) => void): IDialogBuilder;
566
571
  setActions(delegate?: (actions: IActionBuilder) => void): IDialogBuilder;
567
572
  addCustomAction(action: AXPActionMenuItem): IDialogBuilder;
573
+ build(): AXPWidgetNode;
568
574
  show(): Promise<AXPDialogRef>;
569
575
  }
570
576
  interface IListWidgetBuilder extends IBaseContainerBuilder<IListWidgetBuilder>, ILayoutContainerBuilder<IListWidgetBuilder>, IChildContainerBuilder<IListWidgetBuilder>, IWidgetContainerBuilder<IListWidgetBuilder> {
@@ -988,15 +988,16 @@ declare class AXPSpreadsheetComponent {
988
988
  row: Record<string, any>;
989
989
  }[]>;
990
990
  /**
991
- * Check if spreadsheet is empty
991
+ * Check if spreadsheet is completely empty (both columns and rows)
992
992
  */
993
993
  protected isEmpty: _angular_core.Signal<boolean>;
994
994
  /**
995
- * Check if only columns are empty
995
+ * Check if columns are empty (regardless of rows)
996
+ * When columns are empty, we should show a message about missing columns, not rows
996
997
  */
997
998
  protected isColumnsEmpty: _angular_core.Signal<boolean>;
998
999
  /**
999
- * Check if only rows are empty
1000
+ * Check if only rows are empty (columns exist but no rows)
1000
1001
  */
1001
1002
  protected isRowsEmpty: _angular_core.Signal<boolean>;
1002
1003
  constructor();
@@ -1263,6 +1263,8 @@ interface IPropertyFilterStage {
1263
1263
  actions(delegate: (a: IActionBuilder) => void): IPropertyFilterStage;
1264
1264
  /** Add an extra field into a specific group, using the original field builder API */
1265
1265
  field(groupId: string, path: string, delegate?: (field: CompatFormFieldBuilder) => void): IPropertyFilterStage;
1266
+ /** Build and return the widget node without showing dialog */
1267
+ build(): Promise<AXPWidgetNode>;
1266
1268
  /** Show dialog */
1267
1269
  show(): Promise<AXPDialogRef>;
1268
1270
  mode(mode: 'edit' | 'view'): IPropertyFilterStage;
@@ -1272,6 +1274,13 @@ declare class AXPEntityFormBuilderService implements IEntitySelectorStage {
1272
1274
  private readonly layoutBuilder;
1273
1275
  private readonly deviceService;
1274
1276
  entity(fullName: string): IInterfaceSelectorStage;
1277
+ /**
1278
+ * Fetches a record by ID for the specified entity.
1279
+ * @param fullName - Entity full name in "module.entity" format
1280
+ * @param id - Record ID to fetch
1281
+ * @returns Promise resolving to the record data, or empty object if not found
1282
+ */
1283
+ getRecordById(fullName: string, id: string): Promise<Record<string, any>>;
1275
1284
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEntityFormBuilderService, never>;
1276
1285
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEntityFormBuilderService>;
1277
1286
  }
@@ -598,6 +598,47 @@ declare class AXPPropertyEditorHelper {
598
598
  }
599
599
  declare function findNonEmptyBreakpoints<T>(values: AXPBreakpointValues<T>): AXPBreakpoints[];
600
600
 
601
+ /**
602
+ * Helper class for serializing and deserializing AXPWidgetNode to/from JSON
603
+ */
604
+ declare class AXPWidgetSerializationHelper {
605
+ /**
606
+ * Removes non-serializable properties from widget node
607
+ * @param node - The widget node to clean
608
+ * @param options - Serialization options
609
+ * @returns Cleaned widget node ready for JSON serialization
610
+ */
611
+ private static cleanNode;
612
+ /**
613
+ * Recursively removes functions from object properties
614
+ */
615
+ private static removeFunctions;
616
+ /**
617
+ * Converts AXPWidgetNode to JSON string
618
+ * @param node - The widget node to serialize
619
+ * @param options - Serialization options
620
+ * @returns JSON string representation of the widget node
621
+ */
622
+ static toJson(node: AXPWidgetNode, options?: {
623
+ removeMeta?: boolean;
624
+ removeFunctions?: boolean;
625
+ pretty?: boolean;
626
+ }): string;
627
+ /**
628
+ * Converts JSON string to AXPWidgetNode
629
+ * @param json - JSON string to deserialize
630
+ * @returns Parsed AXPWidgetNode object
631
+ * @throws Error if JSON is invalid or doesn't match AXPWidgetNode structure
632
+ */
633
+ static fromJson(json: string): AXPWidgetNode;
634
+ /**
635
+ * Removes meta property from widget node (similar to designer service)
636
+ * @param node - The widget node to process
637
+ * @returns Widget node without meta property
638
+ */
639
+ static removeMeta(node: AXPWidgetNode): AXPWidgetNode;
640
+ }
641
+
601
642
  declare abstract class AXPFlexBaseLayoutWidgetComponent extends AXPBlockBaseLayoutWidgetComponent {
602
643
  protected flex: _angular_core.Signal<AXPFlexBoxString | undefined>;
603
644
  hostFlexStyle: _angular_core.Signal<Record<string, string | number>>;
@@ -975,5 +1016,5 @@ interface AXPMetaDataDefinition {
975
1016
 
976
1017
  declare const AXPWidgetsCatalog: AXPWidgetTypesMap;
977
1018
 
978
- export { AXPBaseWidgetComponent, AXPBlockBaseLayoutWidgetComponent, AXPBoxModelLayoutWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBaseLayoutWidgetComponent, AXPGridItemBaseLayoutWidgetComponent, AXPInlineBaseLayoutWidgetComponent, AXPLayoutBaseWidgetComponent, AXPPageStatus, AXPPropertyEditorHelper, AXPTableBaseLayoutWidgetComponent, AXPTableItemBaseLayoutWidgetComponent, AXPTableItemOpsBaseLayoutWidgetComponent, AXPValueWidgetComponent, AXPWidgetColumnRendererComponent, AXPWidgetContainerComponent, AXPWidgetCoreContextChangeEvent, AXPWidgetCoreContextStore, AXPWidgetCoreElement, AXPWidgetCoreModule, AXPWidgetCoreService, AXPWidgetGroupEnum, AXPWidgetRegistryService, AXPWidgetRendererDirective, AXPWidgetStatus, AXPWidgetsCatalog, AXP_WIDGETS_ACTION_CATEGORY, AXP_WIDGETS_ADVANCE_CATEGORY, AXP_WIDGETS_CATEGORIES, AXP_WIDGETS_EDITOR_CATEGORY, AXP_WIDGETS_LAYOUT_CATEGORY, AXP_WIDGET_COLUMN_TOKEN, AXP_WIDGET_TOKEN, cloneProperty, createBooleanProperty, createNumberProperty, createSelectProperty, createStringProperty, findNonEmptyBreakpoints };
1019
+ export { AXPBaseWidgetComponent, AXPBlockBaseLayoutWidgetComponent, AXPBoxModelLayoutWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBaseLayoutWidgetComponent, AXPGridItemBaseLayoutWidgetComponent, AXPInlineBaseLayoutWidgetComponent, AXPLayoutBaseWidgetComponent, AXPPageStatus, AXPPropertyEditorHelper, AXPTableBaseLayoutWidgetComponent, AXPTableItemBaseLayoutWidgetComponent, AXPTableItemOpsBaseLayoutWidgetComponent, AXPValueWidgetComponent, AXPWidgetColumnRendererComponent, AXPWidgetContainerComponent, AXPWidgetCoreContextChangeEvent, AXPWidgetCoreContextStore, AXPWidgetCoreElement, AXPWidgetCoreModule, AXPWidgetCoreService, AXPWidgetGroupEnum, AXPWidgetRegistryService, AXPWidgetRendererDirective, AXPWidgetSerializationHelper, AXPWidgetStatus, AXPWidgetsCatalog, AXP_WIDGETS_ACTION_CATEGORY, AXP_WIDGETS_ADVANCE_CATEGORY, AXP_WIDGETS_CATEGORIES, AXP_WIDGETS_EDITOR_CATEGORY, AXP_WIDGETS_LAYOUT_CATEGORY, AXP_WIDGET_COLUMN_TOKEN, AXP_WIDGET_TOKEN, cloneProperty, createBooleanProperty, createNumberProperty, createSelectProperty, createStringProperty, findNonEmptyBreakpoints };
979
1020
  export type { AXPBorderBox, AXPBorderBoxString, AXPBreakpointValues, AXPBreakpoints, AXPClassMap, AXPExtractWidgetConfig, AXPFlexBoxString, AXPFlexItemBoxString, AXPGridBoxString, AXPGridBreakpointValues, AXPGridItemBoxString, AXPLayoutBuilderStatusChangedEvent, AXPMetaDataDefinition, AXPPropertyCorners, AXPPropertyEditorCornerValues, AXPPropertyEditorSideGeneric, AXPPropertyEditorSideValues, AXPPropertySides, AXPSpacingBox, AXPSpacingBoxString, AXPStyleMap, AXPWidgetCategory, AXPWidgetColumnNode, AXPWidgetColumnNodeToken, AXPWidgetComponentConfig, AXPWidgetConfig, AXPWidgetConfigComponents, AXPWidgetCoreContextState, AXPWidgetCoreElementAPI, AXPWidgetCoreElementAction, AXPWidgetCoreModuleConfigs, AXPWidgetDesignerOptionsMap, AXPWidgetGroup, AXPWidgetNode, AXPWidgetNodeToken, AXPWidgetProperty, AXPWidgetPropertyGroup, AXPWidgetRenderMode, AXPWidgetRendererDirectiveOptions, AXPWidgetTypesMap, AXPWidgetViewType, extendedWidget };
@@ -310,7 +310,7 @@ interface AXPCheckBoxWidgetOptions {
310
310
  }
311
311
 
312
312
  declare class AXPColorBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
313
- rgba: _angular_core.Signal<string>;
313
+ rgba: () => string;
314
314
  protected clipboard: AXPClipBoardService;
315
315
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColorBoxWidgetColumnComponent, never>;
316
316
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColorBoxWidgetColumnComponent, "axp-color-box-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
@@ -374,7 +374,8 @@ interface AXPColorBoxWidgetOptions {
374
374
  }
375
375
 
376
376
  declare class AXPColorPaletteWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
377
- rgba: _angular_core.Signal<string>;
377
+ hasValue: () => boolean;
378
+ rgba: () => string;
378
379
  protected clipboard: AXPClipBoardService;
379
380
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColorPaletteWidgetColumnComponent, never>;
380
381
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPColorPaletteWidgetColumnComponent, "axp-color-palette-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
@@ -421,6 +422,7 @@ declare class AXPColorPaletteWidgetEditComponent extends AXPValueWidgetComponent
421
422
  }
422
423
 
423
424
  declare class AXPColorPaletteWidgetViewComponent extends AXPValueWidgetComponent<any> {
425
+ hasValue: _angular_core.Signal<boolean>;
424
426
  rgba: _angular_core.Signal<string>;
425
427
  protected clipboard: AXPClipBoardService;
426
428
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPColorPaletteWidgetViewComponent, never>;
@@ -492,7 +494,7 @@ declare class AXPConnectedListsWidgetViewComponent extends AXPValueWidgetCompone
492
494
  }
493
495
 
494
496
  declare class AXPConnectedListsWidgetColumnComponent extends AXPColumnWidgetComponent<AXPDragDropListItem[] | null | undefined> {
495
- protected allItems: _angular_core.Signal<AXPDragDropListItem[]>;
497
+ protected allItems: () => AXPDragDropListItem[];
496
498
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPConnectedListsWidgetColumnComponent, never>;
497
499
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPConnectedListsWidgetColumnComponent, "axp-connected-drag-drop-lists-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
498
500
  }
@@ -879,7 +881,7 @@ declare class AXPListWidgetViewComponent extends AXPValueWidgetComponent<AXPDrag
879
881
  }
880
882
 
881
883
  declare class AXPListWidgetColumnComponent extends AXPColumnWidgetComponent<AXPDragDropListItem[] | null | undefined> {
882
- protected allItems: _angular_core.Signal<AXPDragDropListItem[]>;
884
+ protected allItems: () => AXPDragDropListItem[];
883
885
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPListWidgetColumnComponent, never>;
884
886
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPListWidgetColumnComponent, "axp-drag-drop-list-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
885
887
  }
@@ -1629,7 +1631,7 @@ interface AXPTemplateBoxWidgetOptions {
1629
1631
 
1630
1632
  declare class AXPTextBoxWidgetColumnComponent extends AXPColumnWidgetComponent<string | Record<string, string>> {
1631
1633
  private translationService;
1632
- protected displayText: _angular_core.Signal<string>;
1634
+ protected displayText: () => string;
1633
1635
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTextBoxWidgetColumnComponent, never>;
1634
1636
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPTextBoxWidgetColumnComponent, "axp-text-box-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; }, {}, never, never, true, never>;
1635
1637
  }
@@ -2542,25 +2544,28 @@ declare class AXPSchedulerPickerWidgetColumnComponent extends AXPColumnWidgetCom
2542
2544
  #private;
2543
2545
  private readonly schedulerPickerService;
2544
2546
  protected summary: _angular_core.WritableSignal<string>;
2547
+ private isSchedulerValue;
2545
2548
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSchedulerPickerWidgetColumnComponent, never>;
2546
2549
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSchedulerPickerWidgetColumnComponent, "axp-scheduler-picker-widget-column", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
2547
2550
  }
2548
2551
 
2549
2552
  declare class AXPSchedulerPickerWidgetEditComponent extends AXPValueWidgetComponent<AXSchedulerPickerValue | null> {
2553
+ #private;
2554
+ private readonly schedulerPickerService;
2550
2555
  protected internalValue: _angular_core.Signal<AXSchedulerPickerValue | null>;
2551
2556
  protected settings: _angular_core.Signal<AXSchedulerPickerSettings>;
2552
2557
  protected disabled: _angular_core.Signal<boolean>;
2553
2558
  protected summary: _angular_core.WritableSignal<string>;
2554
- protected onSummary(text: string): void;
2555
2559
  protected onValueChange(val: AXSchedulerPickerValue | null): void;
2556
2560
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSchedulerPickerWidgetEditComponent, never>;
2557
2561
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSchedulerPickerWidgetEditComponent, "axp-scheduler-picker-widget-edit", never, {}, {}, never, never, true, never>;
2558
2562
  }
2559
2563
 
2560
- declare class AXPSchedulerPickerWidgetViewComponent extends AXPValueWidgetComponent<AXSchedulerPickerValue | null> {
2564
+ declare class AXPSchedulerPickerWidgetViewComponent extends AXPValueWidgetComponent<AXSchedulerPickerValue | string | null> {
2561
2565
  #private;
2562
2566
  private readonly schedulerPickerService;
2563
2567
  protected summary: _angular_core.WritableSignal<string>;
2568
+ private isSchedulerValue;
2564
2569
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPSchedulerPickerWidgetViewComponent, never>;
2565
2570
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPSchedulerPickerWidgetViewComponent, "axp-scheduler-picker-widget-view", never, {}, {}, never, never, true, never>;
2566
2571
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "21.0.0-next.5",
3
+ "version": "21.0.0-next.8",
4
4
  "peerDependencies": {
5
5
  "@acorex/cdk": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0",
6
6
  "@acorex/core": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0",
@@ -27,6 +27,14 @@
27
27
  "types": "./index.d.ts",
28
28
  "default": "./fesm2022/acorex-platform.mjs"
29
29
  },
30
+ "./auth": {
31
+ "types": "./auth/index.d.ts",
32
+ "default": "./fesm2022/acorex-platform-auth.mjs"
33
+ },
34
+ "./common": {
35
+ "types": "./common/index.d.ts",
36
+ "default": "./fesm2022/acorex-platform-common.mjs"
37
+ },
30
38
  "./core": {
31
39
  "types": "./core/index.d.ts",
32
40
  "default": "./fesm2022/acorex-platform-core.mjs"
@@ -35,10 +43,6 @@
35
43
  "types": "./domain/index.d.ts",
36
44
  "default": "./fesm2022/acorex-platform-domain.mjs"
37
45
  },
38
- "./common": {
39
- "types": "./common/index.d.ts",
40
- "default": "./fesm2022/acorex-platform-common.mjs"
41
- },
42
46
  "./native": {
43
47
  "types": "./native/index.d.ts",
44
48
  "default": "./fesm2022/acorex-platform-native.mjs"
@@ -51,10 +55,6 @@
51
55
  "types": "./workflow/index.d.ts",
52
56
  "default": "./fesm2022/acorex-platform-workflow.mjs"
53
57
  },
54
- "./auth": {
55
- "types": "./auth/index.d.ts",
56
- "default": "./fesm2022/acorex-platform-auth.mjs"
57
- },
58
58
  "./layout/builder": {
59
59
  "types": "./layout/builder/index.d.ts",
60
60
  "default": "./fesm2022/acorex-platform-layout-builder.mjs"