@acorex/platform 21.0.0-next.65 → 21.0.0-next.67

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 (50) hide show
  1. package/fesm2022/acorex-platform-common.mjs +94 -18
  2. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  3. package/fesm2022/acorex-platform-core.mjs +42 -1
  4. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-layout-builder.mjs +29 -7
  6. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-layout-components.mjs +282 -108
  8. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-layout-designer.mjs +1 -1
  10. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-entity-attachments-page.component-BaTS183I.mjs +383 -0
  12. package/fesm2022/acorex-platform-layout-entity-attachments-page.component-BaTS183I.mjs.map +1 -0
  13. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs → acorex-platform-layout-entity-file-list-popup.component-_yrP5SQe.mjs} +15 -18
  14. package/fesm2022/acorex-platform-layout-entity-file-list-popup.component-_yrP5SQe.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-layout-entity.mjs +3339 -301
  16. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-views.mjs +0 -1
  18. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-widget-core.mjs +1377 -4
  20. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-widgets.mjs +9214 -11991
  22. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  23. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs → acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs} +3 -3
  24. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs.map} +1 -1
  25. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs → acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs} +3 -3
  26. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs → acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs} +4 -4
  28. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map → acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map} +1 -1
  29. package/fesm2022/acorex-platform-themes-default.mjs +685 -287
  30. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  31. package/fesm2022/{acorex-platform-themes-shared-settings.provider-BgXYCFia.mjs → acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs} +29 -2
  32. package/fesm2022/acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-themes-shared.mjs +94 -24
  34. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  35. package/fesm2022/acorex-platform-workflow.mjs +176 -26
  36. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  37. package/package.json +1 -1
  38. package/types/acorex-platform-common.d.ts +73 -9
  39. package/types/acorex-platform-core.d.ts +63 -2
  40. package/types/acorex-platform-layout-builder.d.ts +7 -1
  41. package/types/acorex-platform-layout-components.d.ts +162 -36
  42. package/types/acorex-platform-layout-entity.d.ts +704 -14
  43. package/types/acorex-platform-layout-views.d.ts +28 -0
  44. package/types/acorex-platform-layout-widget-core.d.ts +156 -3
  45. package/types/acorex-platform-layout-widgets.d.ts +29 -393
  46. package/types/acorex-platform-themes-default.d.ts +137 -30
  47. package/types/acorex-platform-themes-shared.d.ts +23 -1
  48. package/types/acorex-platform-workflow.d.ts +89 -4
  49. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +0 -1
  50. package/fesm2022/acorex-platform-themes-shared-settings.provider-BgXYCFia.mjs.map +0 -1
@@ -23,6 +23,17 @@ import * as i6 from '@acorex/core/translation';
23
23
  import { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';
24
24
  import { AXP_ENTITY_DEFINITION_CRUD_SERVICE } from '@acorex/platform/domain';
25
25
 
26
+ /** Fallback {@link AXPDialogRef} when the popup is dismissed without a footer action (e.g. header close). */
27
+ function createDismissedDialogRef(context = () => ({})) {
28
+ return {
29
+ close: () => { },
30
+ context,
31
+ action: () => 'cancel',
32
+ setLoading: () => { },
33
+ };
34
+ }
35
+ //#endregion
36
+
26
37
  //#region ---- Imports ----
27
38
  //#endregion
28
39
  //#region ---- Before open ----
@@ -1709,7 +1720,7 @@ class DialogContainerBuilder {
1709
1720
  },
1710
1721
  });
1711
1722
  if (!flag) {
1712
- resolve({ success: false });
1723
+ resolve(createDismissedDialogRef());
1713
1724
  }
1714
1725
  });
1715
1726
  }
@@ -2363,8 +2374,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
2363
2374
  }]
2364
2375
  }] });
2365
2376
 
2366
- //#endregion
2367
-
2368
2377
  class AXPDialogRendererComponent extends AXBasePageComponent {
2369
2378
  constructor() {
2370
2379
  super(...arguments);
@@ -2372,6 +2381,8 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2372
2381
  this.expressionEvaluator = inject(AXPExpressionEvaluatorService);
2373
2382
  this.commandService = inject(AXPCommandService);
2374
2383
  this.hookService = inject(AXPHookService, { optional: true });
2384
+ /** Ensures `show()` resolves once when the dialog closes (footer action or header close). */
2385
+ this.callbackInvoked = false;
2375
2386
  this.context = signal({}, ...(ngDevMode ? [{ debugName: "context" }] : /* istanbul ignore next */ []));
2376
2387
  // This will be set by the popup service automatically - same as dynamic-dialog
2377
2388
  this.callBack = () => { };
@@ -2492,7 +2503,7 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2492
2503
  if (this.shouldKeepDialogOpenAfterCommandResult(cmdResult)) {
2493
2504
  return;
2494
2505
  }
2495
- this.callBack(cmdResult);
2506
+ this.resolveDialog(cmdResult);
2496
2507
  await this.closeWithOptionalSkipValidate(cmdResult);
2497
2508
  }
2498
2509
  catch (error) {
@@ -2510,7 +2521,7 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2510
2521
  if (this.shouldKeepDialogOpenAfterCommandResult(result)) {
2511
2522
  return;
2512
2523
  }
2513
- this.callBack(result);
2524
+ this.resolveDialog(result);
2514
2525
  await this.closeWithOptionalSkipValidate(result);
2515
2526
  }
2516
2527
  catch {
@@ -2528,7 +2539,7 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2528
2539
  this.data.context = result.context;
2529
2540
  this.data.action = result.action;
2530
2541
  }
2531
- this.callBack({
2542
+ this.resolveDialog({
2532
2543
  ...this.createDialogRef(cmd),
2533
2544
  action: () => result.action,
2534
2545
  });
@@ -2564,6 +2575,14 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2564
2575
  }
2565
2576
  return false;
2566
2577
  }
2578
+ /** Resolves the dialog `show()` promise exactly once. */
2579
+ resolveDialog(result) {
2580
+ if (this.callbackInvoked) {
2581
+ return;
2582
+ }
2583
+ this.callbackInvoked = true;
2584
+ this.callBack(result);
2585
+ }
2567
2586
  createDialogRef(actionCmd) {
2568
2587
  return {
2569
2588
  close: (res) => {
@@ -2634,6 +2653,9 @@ class AXPDialogRendererComponent extends AXBasePageComponent {
2634
2653
  }
2635
2654
  }
2636
2655
  async close(result) {
2656
+ if (!this.callbackInvoked) {
2657
+ this.resolveDialog(this.createDialogRef('cancel'));
2658
+ }
2637
2659
  if (result) {
2638
2660
  const isValid = await this.layoutRenderer()?.validate();
2639
2661
  if (isValid?.result) {
@@ -3090,5 +3112,5 @@ var previewWidgetField_command = /*#__PURE__*/Object.freeze({
3090
3112
  * Generated bundle index. Do not edit.
3091
3113
  */
3092
3114
 
3093
- export { AXPDialogRendererComponent, AXPLayoutBuilderService, AXPLayoutConversionService, AXPLayoutRendererComponent, AXPPreviewWidgetFieldCommand, AXP_LAYOUT_BUILDER_DIALOG_BEFORE_OPEN_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONFIG_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONTEXT_CHANGED_HOOK_KEY, AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY, LayoutBuilderModule };
3115
+ export { AXPDialogRendererComponent, AXPLayoutBuilderService, AXPLayoutConversionService, AXPLayoutRendererComponent, AXPPreviewWidgetFieldCommand, AXP_LAYOUT_BUILDER_DIALOG_BEFORE_OPEN_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONFIG_HOOK_KEY, AXP_LAYOUT_BUILDER_DIALOG_CONTEXT_CHANGED_HOOK_KEY, AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY, LayoutBuilderModule, createDismissedDialogRef };
3094
3116
  //# sourceMappingURL=acorex-platform-layout-builder.mjs.map