@acorex/platform 19.2.5 → 19.2.6

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/common/lib/workflows/common.workflow.d.ts +2 -0
  2. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  3. package/fesm2022/acorex-platform-layout-builder.mjs +12 -8
  4. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-layout-designer.mjs +11 -11
  6. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-layout-entity.mjs +67 -15
  8. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  9. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CgyBuwTc.mjs → acorex-platform-themes-default-entity-master-create-view.component-Bl9f4Rtk.mjs} +3 -3
  10. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Bl9f4Rtk.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-ClNKQnoc.mjs +376 -0
  12. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-ClNKQnoc.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B4aBmc5H.mjs +130 -0
  14. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B4aBmc5H.mjs.map +1 -0
  15. package/fesm2022/{acorex-platform-themes-default-error-401.component-BPQ1z42t.mjs → acorex-platform-themes-default-error-401.component-Brx-zHqH.mjs} +3 -3
  16. package/fesm2022/{acorex-platform-themes-default-error-401.component-BPQ1z42t.mjs.map → acorex-platform-themes-default-error-401.component-Brx-zHqH.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-themes-default-error-404.component-CGgD5C7q.mjs → acorex-platform-themes-default-error-404.component-C8mJP9D8.mjs} +3 -3
  18. package/fesm2022/{acorex-platform-themes-default-error-404.component-CGgD5C7q.mjs.map → acorex-platform-themes-default-error-404.component-C8mJP9D8.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-themes-default-error-offline.component-CkVGS1HQ.mjs → acorex-platform-themes-default-error-offline.component-CwBClgcf.mjs} +3 -3
  20. package/fesm2022/{acorex-platform-themes-default-error-offline.component-CkVGS1HQ.mjs.map → acorex-platform-themes-default-error-offline.component-CwBClgcf.mjs.map} +1 -1
  21. package/fesm2022/acorex-platform-themes-default-search-popup.component-BZJTLnlM.mjs +129 -0
  22. package/fesm2022/{acorex-platform-themes-default-search-popup.component-DZHRY0aM.mjs.map → acorex-platform-themes-default-search-popup.component-BZJTLnlM.mjs.map} +1 -1
  23. package/fesm2022/{acorex-platform-themes-default-setting-page.component-Cj83wZbs.mjs → acorex-platform-themes-default-setting-page.component-oA4kM_-3.mjs} +3 -3
  24. package/fesm2022/acorex-platform-themes-default-setting-page.component-oA4kM_-3.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-themes-default-setting-view.component-CJZBhtKE.mjs +71 -0
  26. package/fesm2022/acorex-platform-themes-default-setting-view.component-CJZBhtKE.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_AK8uVB.mjs +118 -0
  28. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_AK8uVB.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-themes-default.mjs +23 -23
  30. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  31. package/fesm2022/acorex-platform-themes-shared.mjs +2 -2
  32. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  33. package/fesm2022/acorex-platform-widgets.mjs +40 -26
  34. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  35. package/layout/builder/lib/builder/widget-column-renderer.d.ts +3 -1
  36. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +1 -0
  37. package/package.json +5 -5
  38. package/themes/shared/lib/palette.provider.d.ts +2 -2
  39. package/widgets/lib/widgets/advance/file/file-box-widget-edit.component.d.ts +4 -1
  40. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CgyBuwTc.mjs.map +0 -1
  41. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-Btza4YAZ.mjs +0 -369
  42. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-Btza4YAZ.mjs.map +0 -1
  43. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-63iOyFsf.mjs +0 -130
  44. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-63iOyFsf.mjs.map +0 -1
  45. package/fesm2022/acorex-platform-themes-default-search-popup.component-DZHRY0aM.mjs +0 -129
  46. package/fesm2022/acorex-platform-themes-default-setting-page.component-Cj83wZbs.mjs.map +0 -1
  47. package/fesm2022/acorex-platform-themes-default-setting-view.component-Ypj7RgOU.mjs +0 -71
  48. package/fesm2022/acorex-platform-themes-default-setting-view.component-Ypj7RgOU.mjs.map +0 -1
  49. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D994cHWW.mjs +0 -118
  50. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D994cHWW.mjs.map +0 -1
@@ -637,7 +637,14 @@ class AXPEntityMasterListViewModel {
637
637
  },
638
638
  {
639
639
  title: this.title(),
640
- url: [`/${this.session.application?.name}`, 'm', `${this.entityDef.module}`, 'e', `${this.entityDef.name}`, 'list'],
640
+ url: [
641
+ `/${this.session.application?.name}`,
642
+ 'm',
643
+ `${this.entityDef.module}`,
644
+ 'e',
645
+ `${this.entityDef.name}`,
646
+ 'list',
647
+ ],
641
648
  },
642
649
  ];
643
650
  });
@@ -647,10 +654,14 @@ class AXPEntityMasterListViewModel {
647
654
  return list.map((tr) => new AXPEntityCommandTriggerViewModel(this.entityDef, tr)) ?? [];
648
655
  });
649
656
  this.primaryActions = computed(() => {
650
- return this.allActions().filter((a) => a.priority == 'primary' && ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) || (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
657
+ return this.allActions().filter((a) => a.priority == 'primary' &&
658
+ ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) ||
659
+ (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
651
660
  });
652
661
  this.secondaryActions = computed(() => {
653
- return this.allActions().filter((a) => a.priority == 'secondary' && ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) || (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
662
+ return this.allActions().filter((a) => a.priority == 'secondary' &&
663
+ ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) ||
664
+ (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
654
665
  });
655
666
  this.selectedScopeActionsCount = computed(() => {
656
667
  return this.allActions().filter((a) => a.scope == AXPEntityCommandScope.Selected).length;
@@ -719,9 +730,10 @@ class AXPEntityMasterListViewModel {
719
730
  .pipe(ofType(AXPRefreshEvent))
720
731
  .pipe(takeUntil(this.destroyed))
721
732
  .subscribe((event) => {
733
+ debugger;
722
734
  if (event.payload.entity == getEntityInfo(this.entityDef).source) {
723
735
  this.selectedItems.set([]);
724
- this.events$.next({ action: 'refresh' });
736
+ this.events$.next({ action: 'refresh', meta: event.payload.meta });
725
737
  }
726
738
  });
727
739
  this.sortedFields.set(this.sortableFields());
@@ -733,7 +745,8 @@ class AXPEntityMasterListViewModel {
733
745
  const columnVisibilityMap = new Map(listViewSetting.columns.map((col) => [col.name, col.visible]));
734
746
  this.columns.update((prev) => prev
735
747
  .map((c) => ({ ...c, visible: columnVisibilityMap.get(c.name) ?? c.visible })) // Update visibility
736
- .sort((a, b) => listViewSetting.columns.findIndex((col) => col.name === a.name) - listViewSetting.columns.findIndex((col) => col.name === b.name)));
748
+ .sort((a, b) => listViewSetting.columns.findIndex((col) => col.name === a.name) -
749
+ listViewSetting.columns.findIndex((col) => col.name === b.name)));
737
750
  }
738
751
  }
739
752
  clearSelection() {
@@ -743,7 +756,9 @@ class AXPEntityMasterListViewModel {
743
756
  const props = this.entityDef.properties.filter((c) => c.options?.filter?.advance?.enabled);
744
757
  return props.map((e) => {
745
758
  const widgetConfig = this.widgetResolver.resolve(e.schema.interface?.type);
746
- const type = (e.options?.filter?.advance?.widgetType || widgetConfig?.defaultFilterWidgetName || e.schema.interface?.type);
759
+ const type = (e.options?.filter?.advance?.widgetType ||
760
+ widgetConfig?.defaultFilterWidgetName ||
761
+ e.schema.interface?.type);
747
762
  return {
748
763
  title: e.title,
749
764
  field: e.name,
@@ -816,7 +831,10 @@ class AXPEntityMasterListViewModel {
816
831
  this.dataSource.sort(...this.sortedFields()
817
832
  .filter((sf) => sf.dir)
818
833
  .map((s) => ({ dir: s.dir, field: s.name })));
819
- const allFilters = [this.inlineFilters.filters?.length && this.inlineFilters, this.simpleFilters().filters?.length && this.simpleFilters()].filter(Boolean);
834
+ const allFilters = [
835
+ this.inlineFilters.filters?.length && this.inlineFilters,
836
+ this.simpleFilters().filters?.length && this.simpleFilters(),
837
+ ].filter(Boolean);
820
838
  const cleanedAllFilters = this.cleanNestedFilters(allFilters);
821
839
  this.lastFiltersApplied.set(this.simpleFilters());
822
840
  this.dataSource.filter(this.filterOperatorMiddleware.transformFilter({
@@ -902,7 +920,11 @@ class AXPEntityMasterListViewModel {
902
920
  }
903
921
  //****************** Commands ******************//
904
922
  async executeCommand(commandName, data = null) {
905
- const action = this.allActions().find((c) => c.name == commandName && ((this.selectedItems().length ? c.scope == AXPEntityCommandScope.Selected : c.scope == AXPEntityCommandScope.Individual) || c.scope == AXPEntityCommandScope.TypeLevel));
923
+ const action = this.allActions().find((c) => c.name == commandName &&
924
+ ((this.selectedItems().length
925
+ ? c.scope == AXPEntityCommandScope.Selected
926
+ : c.scope == AXPEntityCommandScope.Individual) ||
927
+ c.scope == AXPEntityCommandScope.TypeLevel));
906
928
  await this.workflow.execute(commandName, {
907
929
  entity: getEntityInfo(this.entityDef).source,
908
930
  entityInfo: {
@@ -967,6 +989,10 @@ class AXPEntityPerformDeleteAction extends AXPWorkflowAction {
967
989
  const showResult = process?.showResult ?? true;
968
990
  const ids = Array.isArray(data) ? data.map((c) => c.id) : [data.id];
969
991
  const entity = await this.entityRegistery.resolve(moduleName, entityName);
992
+ debugger;
993
+ if (entity.parentKey && data[entity.parentKey]) {
994
+ context.setVariable('meta', { ...meta, refreshTargetId: data[entity.parentKey] });
995
+ }
970
996
  let deletedCount = 0;
971
997
  context.setVariable('deleteSuccessful', false);
972
998
  const dialog = this.loadingDialog.show({
@@ -1018,7 +1044,7 @@ class AXPEntityPerformDeleteAction extends AXPWorkflowAction {
1018
1044
  }
1019
1045
  // Dispatch actions
1020
1046
  this.dispatch(AXPEntityDeletedEvent({ entity: moduleEntity, ids: ids, meta: meta }));
1021
- this.dispatch(AXPRefreshEvent({ entity: moduleEntity }));
1047
+ this.dispatch(AXPRefreshEvent({ entity: moduleEntity, meta: context.getVariable('meta') }));
1022
1048
  }
1023
1049
  else if (successfulPromises > 0 && failedPromises > 0) {
1024
1050
  // Some items deleted successfully, some failed
@@ -1202,7 +1228,10 @@ class AXPEntityModifySectionPopupAction extends AXPWorkflowAction {
1202
1228
  const headerTitle = decoration?.header?.title;
1203
1229
  const com = await this.config.viewers.master.modify();
1204
1230
  const popup = await this.popupService.open(com, {
1205
- title: headerTitle ? headerTitle : title ?? `${this.translateService.translateSync('entity.modify')} ${this.translateService.translateSync(entityRef.formats.individual)}`,
1231
+ title: headerTitle
1232
+ ? headerTitle
1233
+ : title ??
1234
+ `${this.translateService.translateSync('entity.modify')} ${this.translateService.translateSync(entityRef.formats.individual)}`,
1206
1235
  size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',
1207
1236
  data: {
1208
1237
  vm,
@@ -1226,7 +1255,13 @@ class AXPEntityModifyConfirmedAction extends AXPWorkflowAction {
1226
1255
  async execute(context) {
1227
1256
  const updatedData = context.getVariable('data');
1228
1257
  this.dispatch(AXPEntityModifyEvent({ entity: context.getVariable('entity'), values: updatedData }));
1229
- this.dispatch(AXPRefreshEvent({ entity: context.getVariable('entity') }));
1258
+ const gridItemParentKey = context.getVariable('parentKey');
1259
+ this.dispatch(AXPRefreshEvent({
1260
+ entity: context.getVariable('entity'),
1261
+ meta: {
1262
+ refreshTargetId: updatedData[gridItemParentKey],
1263
+ },
1264
+ }));
1230
1265
  }
1231
1266
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityModifyConfirmedAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1232
1267
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityModifyConfirmedAction }); }
@@ -1745,7 +1780,7 @@ class AXPLookupWidgetSelectorComponent extends AXBasePageComponent {
1745
1780
  }
1746
1781
  </ax-suffix>
1747
1782
  </ax-footer>
1748
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i2$1.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i4.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i4.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "ngmodule", type: AXDataTableModule }, { kind: "component", type: i5.AXDataTableComponent, selector: "ax-data-table", inputs: ["dataSource", "parentField", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged", "onColumnSizeChanged"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i6.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i7.AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: ["caption", "node", "footerTemplate", "expandHandler", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1783
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i2$1.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i4.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i4.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "ngmodule", type: AXDataTableModule }, { kind: "component", type: i5.AXDataTableComponent, selector: "ax-data-table", inputs: ["dataSource", "parentField", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged", "onColumnSizeChanged"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i6.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i7.AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: ["caption", "customExpandIcon", "customCollapseIcon", "node", "footerTemplate", "expandHandler", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1749
1784
  }
1750
1785
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPLookupWidgetSelectorComponent, decorators: [{
1751
1786
  type: Component,
@@ -2473,7 +2508,7 @@ class AXPEntityCreatePopupAction extends AXPWorkflowAction {
2473
2508
  const [module, entity] = context.getVariable('entity').split('.');
2474
2509
  const data = context.getVariable('data');
2475
2510
  const options = context.getVariable('options');
2476
- console.log('options', options);
2511
+ console.log('data', data);
2477
2512
  const process = options?.['process'];
2478
2513
  const decoration = options?.['decoration'];
2479
2514
  const headerTitle = decoration?.header?.title;
@@ -2481,6 +2516,9 @@ class AXPEntityCreatePopupAction extends AXPWorkflowAction {
2481
2516
  const canCreateNewOne = process?.canCreateNewOne;
2482
2517
  const entityRef = await this.entityRegistery.resolve(module, entity);
2483
2518
  const com = await this.config.viewers.master.create();
2519
+ if (entityRef.parentKey) {
2520
+ context.setVariable('parentKey', entityRef.parentKey);
2521
+ }
2484
2522
  const result = await this.popupService.open(com, {
2485
2523
  title: headerTitle
2486
2524
  ? headerTitle
@@ -2496,9 +2534,15 @@ class AXPEntityCreatePopupAction extends AXPWorkflowAction {
2496
2534
  });
2497
2535
  context.setOutput('result', false);
2498
2536
  if (result.data?.save) {
2537
+ console.log(result);
2499
2538
  context.setOutput('result', true);
2500
2539
  const prevData = context.getVariable('data');
2540
+ const prevMeta = context.getVariable('meta');
2501
2541
  context.setVariable('data', { ...prevData, ...result.data.item });
2542
+ debugger;
2543
+ if (entityRef.parentKey && result.data.item[entityRef.parentKey]) {
2544
+ context.setVariable('meta', { ...prevMeta, refreshTargetId: result.data.item[entityRef.parentKey] });
2545
+ }
2502
2546
  }
2503
2547
  }
2504
2548
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityCreatePopupAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
@@ -2510,7 +2554,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
2510
2554
  class AXPEntityCreateSubmittedAction extends AXPWorkflowAction {
2511
2555
  async execute(context) {
2512
2556
  this.dispatch(AXPEntityCreateEvent({ entity: context.getVariable('entity'), meta: context.getVariable('meta') }));
2513
- this.dispatch(AXPRefreshEvent({ entity: context.getVariable('entity') }));
2557
+ this.dispatch(AXPRefreshEvent({ entity: context.getVariable('entity'), meta: context.getVariable('meta') }));
2514
2558
  }
2515
2559
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityCreateSubmittedAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2516
2560
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityCreateSubmittedAction }); }
@@ -2570,9 +2614,11 @@ class AXPQuickEntityModifyPopupAction extends AXPWorkflowAction {
2570
2614
  this.factory = inject(AXPEntityMasterUpdateViewModelFactory);
2571
2615
  }
2572
2616
  async execute(context) {
2617
+ debugger;
2573
2618
  const [moduleName, entityName] = context.getVariable('entity').split('.');
2574
2619
  const data = context.getVariable('data');
2575
2620
  const entityRef = await this.entityRegistery.resolve(moduleName, entityName);
2621
+ const { parentKey } = entityRef;
2576
2622
  const { id } = data;
2577
2623
  const { interfaces, title } = entityRef;
2578
2624
  const properties = interfaces?.master?.update?.properties?.map((p) => p.name) || [];
@@ -2580,9 +2626,15 @@ class AXPQuickEntityModifyPopupAction extends AXPWorkflowAction {
2580
2626
  const options = context.getVariable('options');
2581
2627
  const decoration = options?.['decoration'];
2582
2628
  const headerTitle = decoration?.header?.title;
2629
+ if (parentKey) {
2630
+ context.setVariable('parentKey', parentKey);
2631
+ }
2583
2632
  const com = await this.config.viewers.master.modify();
2584
2633
  const popup = await this.popupService.open(com, {
2585
- title: headerTitle ? headerTitle : title ?? `${this.translateService.translateSync('entity.modify')} ${this.translateService.translateSync(entityRef.formats.individual)}`,
2634
+ title: headerTitle
2635
+ ? headerTitle
2636
+ : title ??
2637
+ `${this.translateService.translateSync('entity.modify')} ${this.translateService.translateSync(entityRef.formats.individual)}`,
2586
2638
  size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',
2587
2639
  data: {
2588
2640
  vm,