@acorex/platform 19.2.3 → 19.2.5

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 (101) hide show
  1. package/common/lib/layout/menu/menu.types.d.ts +2 -1
  2. package/common/lib/search/search-definition.builder.d.ts +1 -1
  3. package/common/lib/search/search-definition.provider.d.ts +1 -0
  4. package/common/lib/search/search.types.d.ts +1 -0
  5. package/common/lib/utils/export-popup.d.ts +19 -0
  6. package/common/lib/utils/export.service.d.ts +21 -0
  7. package/common/lib/utils/index.d.ts +1 -1
  8. package/core/lib/types.d.ts +2 -2
  9. package/fesm2022/acorex-platform-common.mjs +248 -104
  10. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-layout-builder.mjs +23 -7
  13. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-designer.mjs +8 -8
  15. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-entity.mjs +42 -67
  17. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-layout-search.mjs +10 -6
  19. package/fesm2022/acorex-platform-layout-search.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-layout-setting.mjs +1 -1
  21. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CgyBuwTc.mjs +108 -0
  23. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CgyBuwTc.mjs.map +1 -0
  24. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DarhCaO1.mjs → acorex-platform-themes-default-entity-master-list-view.component-Btza4YAZ.mjs} +6 -6
  25. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DarhCaO1.mjs.map → acorex-platform-themes-default-entity-master-list-view.component-Btza4YAZ.mjs.map} +1 -1
  26. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-U8aBv1Ql.mjs +87 -0
  27. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-U8aBv1Ql.mjs.map +1 -0
  28. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Bwgawuvl.mjs → acorex-platform-themes-default-entity-master-single-view.component-63iOyFsf.mjs} +4 -4
  29. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-63iOyFsf.mjs.map +1 -0
  30. package/fesm2022/acorex-platform-themes-default-search-popup.component-DZHRY0aM.mjs +129 -0
  31. package/fesm2022/acorex-platform-themes-default-search-popup.component-DZHRY0aM.mjs.map +1 -0
  32. package/fesm2022/{acorex-platform-themes-default-setting-page.component-CGjDwlvq.mjs → acorex-platform-themes-default-setting-page.component-Cj83wZbs.mjs} +3 -3
  33. package/fesm2022/{acorex-platform-themes-default-setting-page.component-CGjDwlvq.mjs.map → acorex-platform-themes-default-setting-page.component-Cj83wZbs.mjs.map} +1 -1
  34. package/fesm2022/{acorex-platform-themes-default-setting-view.component-DK9j13yV.mjs → acorex-platform-themes-default-setting-view.component-Ypj7RgOU.mjs} +2 -2
  35. package/fesm2022/{acorex-platform-themes-default-setting-view.component-DK9j13yV.mjs.map → acorex-platform-themes-default-setting-view.component-Ypj7RgOU.mjs.map} +1 -1
  36. package/fesm2022/{acorex-platform-themes-default-theme-palette-preview.page-Cet1sYXJ.mjs → acorex-platform-themes-default-theme-palette-preview.page-D994cHWW.mjs} +4 -4
  37. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D994cHWW.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-themes-default.mjs +21 -21
  39. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  40. package/fesm2022/acorex-platform-themes-shared.mjs +11 -6
  41. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  42. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-B53z9A_A.mjs → acorex-platform-widgets-button-widget-designer.component-2iWPztWW.mjs} +2 -2
  43. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-B53z9A_A.mjs.map → acorex-platform-widgets-button-widget-designer.component-2iWPztWW.mjs.map} +1 -1
  44. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-CHDMlorX.mjs → acorex-platform-widgets-rich-text-popup.component-DYExfz5U.mjs} +2 -2
  45. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-CHDMlorX.mjs.map → acorex-platform-widgets-rich-text-popup.component-DYExfz5U.mjs.map} +1 -1
  46. package/fesm2022/acorex-platform-widgets.mjs +1236 -59
  47. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  48. package/layout/builder/lib/builder/widget-groups.d.ts +2 -1
  49. package/layout/builder/lib/builder/widget-map.d.ts +9 -0
  50. package/layout/builder/lib/builder/widget.types.d.ts +1 -1
  51. package/layout/search/lib/search.viewmodel.d.ts +2 -1
  52. package/package.json +6 -6
  53. package/themes/default/lib/layouts/search-layout/search-popup.component.d.ts +2 -1
  54. package/themes/shared/lib/components/layout-elements/layout-blocks.component.d.ts +1 -1
  55. package/themes/shared/lib/components/layout-elements/layout-header.component.d.ts +1 -1
  56. package/themes/shared/lib/components/layout-elements/layout-list.component.d.ts +1 -1
  57. package/widgets/lib/properties/groups.d.ts +2 -1
  58. package/widgets/lib/properties/validation.props.d.ts +10 -0
  59. package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -0
  60. package/widgets/lib/widgets/editors/text/text-box-widget-edit.component.d.ts +1 -0
  61. package/widgets/lib/widgets/filters/boolean-filter/boolean-filter-widget-edit.component.d.ts +1 -0
  62. package/widgets/lib/widgets/index.d.ts +9 -0
  63. package/widgets/lib/widgets/layout/advanced-grid/advanced-grid-widget-designer.component.d.ts +0 -1
  64. package/widgets/lib/widgets/validations/base-validation/base-validation.component.d.ts +13 -0
  65. package/widgets/lib/widgets/validations/base-validation/base-validation.d.ts +8 -0
  66. package/widgets/lib/widgets/validations/between-validation/between-validation-widget-edit.component.d.ts +25 -0
  67. package/widgets/lib/widgets/validations/between-validation/between-validation-widget.config.d.ts +7 -0
  68. package/widgets/lib/widgets/validations/between-validation/index.d.ts +2 -0
  69. package/widgets/lib/widgets/validations/callback-validation/callback-validation-widget-edit.component.d.ts +23 -0
  70. package/widgets/lib/widgets/validations/callback-validation/callback-validation-widget.config.d.ts +7 -0
  71. package/widgets/lib/widgets/validations/callback-validation/index.d.ts +2 -0
  72. package/widgets/lib/widgets/validations/equal-validation/equal-validation-widget-edit.component.d.ts +23 -0
  73. package/widgets/lib/widgets/validations/equal-validation/equal-validation-widget.config.d.ts +7 -0
  74. package/widgets/lib/widgets/validations/equal-validation/index.d.ts +2 -0
  75. package/widgets/lib/widgets/validations/greater-than-validation/greater-than-validation-widget-edit.component.d.ts +24 -0
  76. package/widgets/lib/widgets/validations/greater-than-validation/greater-than-validation-widget.config.d.ts +7 -0
  77. package/widgets/lib/widgets/validations/greater-than-validation/index.d.ts +2 -0
  78. package/widgets/lib/widgets/validations/less-than-validation/index.d.ts +2 -0
  79. package/widgets/lib/widgets/validations/less-than-validation/less-than-validation-widget-edit.component.d.ts +24 -0
  80. package/widgets/lib/widgets/validations/less-than-validation/less-than-validation-widget.config.d.ts +7 -0
  81. package/widgets/lib/widgets/validations/max-length-validation/index.d.ts +2 -0
  82. package/widgets/lib/widgets/validations/max-length-validation/max-length-validation-widget-edit.component.d.ts +23 -0
  83. package/widgets/lib/widgets/validations/max-length-validation/max-length-validation-widget.config.d.ts +7 -0
  84. package/widgets/lib/widgets/validations/min-length-validation/index.d.ts +2 -0
  85. package/widgets/lib/widgets/validations/min-length-validation/min-length-validation-widget-edit.component.d.ts +23 -0
  86. package/widgets/lib/widgets/validations/min-length-validation/min-length-validation-widget.config.d.ts +7 -0
  87. package/widgets/lib/widgets/validations/regular-expression-validation/index.d.ts +2 -0
  88. package/widgets/lib/widgets/validations/regular-expression-validation/regular-expression-validation-widget-edit.component.d.ts +23 -0
  89. package/widgets/lib/widgets/validations/regular-expression-validation/regular-expression-validation-widget.config.d.ts +7 -0
  90. package/widgets/lib/widgets/validations/required-validation/index.d.ts +2 -0
  91. package/widgets/lib/widgets/validations/required-validation/required-validation-widget-edit.component.d.ts +21 -0
  92. package/widgets/lib/widgets/validations/required-validation/required-validation-widget.config.d.ts +7 -0
  93. package/common/lib/utils/pdf.service.d.ts +0 -25
  94. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Yq3pzh9K.mjs +0 -108
  95. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Yq3pzh9K.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CPG4i72f.mjs +0 -87
  97. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CPG4i72f.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Bwgawuvl.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-themes-default-search-popup.component-ChZHzvG4.mjs +0 -122
  100. package/fesm2022/acorex-platform-themes-default-search-popup.component-ChZHzvG4.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-Cet1sYXJ.mjs.map +0 -1
@@ -312,7 +312,9 @@ class AXPEntityDefinitionRegistryService {
312
312
  this.entityResolver = inject(AXPEntityResolver); // Assuming AXPEntityLoader is the correct type
313
313
  }
314
314
  async preload() {
315
- const providers = Array.isArray(this.providers) ? this.providers : [this.providers];
315
+ const providers = Array.isArray(this.providers)
316
+ ? this.providers
317
+ : [this.providers];
316
318
  const promises = [];
317
319
  providers.forEach((provider) => {
318
320
  const items = typeof provider.preload == 'function' ? provider.preload() : [];
@@ -321,7 +323,10 @@ class AXPEntityDefinitionRegistryService {
321
323
  });
322
324
  });
323
325
  const entities = await Promise.all(promises);
324
- entities.forEach((entity) => this.register(this.middleware.process(entity)));
326
+ entities.forEach((entity) => {
327
+ if (entity != null)
328
+ this.register(this.middleware.process(entity));
329
+ });
325
330
  }
326
331
  /**
327
332
  * Registers a new entity configuration. Entities are identified uniquely by a combination
@@ -632,14 +637,7 @@ class AXPEntityMasterListViewModel {
632
637
  },
633
638
  {
634
639
  title: this.title(),
635
- url: [
636
- `/${this.session.application?.name}`,
637
- 'm',
638
- `${this.entityDef.module}`,
639
- 'e',
640
- `${this.entityDef.name}`,
641
- 'list',
642
- ],
640
+ url: [`/${this.session.application?.name}`, 'm', `${this.entityDef.module}`, 'e', `${this.entityDef.name}`, 'list'],
643
641
  },
644
642
  ];
645
643
  });
@@ -649,14 +647,10 @@ class AXPEntityMasterListViewModel {
649
647
  return list.map((tr) => new AXPEntityCommandTriggerViewModel(this.entityDef, tr)) ?? [];
650
648
  });
651
649
  this.primaryActions = computed(() => {
652
- return this.allActions().filter((a) => a.priority == 'primary' &&
653
- ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) ||
654
- (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
650
+ return this.allActions().filter((a) => a.priority == 'primary' && ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) || (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
655
651
  });
656
652
  this.secondaryActions = computed(() => {
657
- return this.allActions().filter((a) => a.priority == 'secondary' &&
658
- ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) ||
659
- (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
653
+ return this.allActions().filter((a) => a.priority == 'secondary' && ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) || (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
660
654
  });
661
655
  this.selectedScopeActionsCount = computed(() => {
662
656
  return this.allActions().filter((a) => a.scope == AXPEntityCommandScope.Selected).length;
@@ -739,8 +733,7 @@ class AXPEntityMasterListViewModel {
739
733
  const columnVisibilityMap = new Map(listViewSetting.columns.map((col) => [col.name, col.visible]));
740
734
  this.columns.update((prev) => prev
741
735
  .map((c) => ({ ...c, visible: columnVisibilityMap.get(c.name) ?? c.visible })) // Update visibility
742
- .sort((a, b) => listViewSetting.columns.findIndex((col) => col.name === a.name) -
743
- listViewSetting.columns.findIndex((col) => col.name === b.name)));
736
+ .sort((a, b) => listViewSetting.columns.findIndex((col) => col.name === a.name) - listViewSetting.columns.findIndex((col) => col.name === b.name)));
744
737
  }
745
738
  }
746
739
  clearSelection() {
@@ -750,9 +743,7 @@ class AXPEntityMasterListViewModel {
750
743
  const props = this.entityDef.properties.filter((c) => c.options?.filter?.advance?.enabled);
751
744
  return props.map((e) => {
752
745
  const widgetConfig = this.widgetResolver.resolve(e.schema.interface?.type);
753
- const type = (e.options?.filter?.advance?.widgetType ||
754
- widgetConfig?.defaultFilterWidgetName ||
755
- e.schema.interface?.type);
746
+ const type = (e.options?.filter?.advance?.widgetType || widgetConfig?.defaultFilterWidgetName || e.schema.interface?.type);
756
747
  return {
757
748
  title: e.title,
758
749
  field: e.name,
@@ -825,10 +816,7 @@ class AXPEntityMasterListViewModel {
825
816
  this.dataSource.sort(...this.sortedFields()
826
817
  .filter((sf) => sf.dir)
827
818
  .map((s) => ({ dir: s.dir, field: s.name })));
828
- const allFilters = [
829
- this.inlineFilters.filters?.length && this.inlineFilters,
830
- this.simpleFilters().filters?.length && this.simpleFilters(),
831
- ].filter(Boolean);
819
+ const allFilters = [this.inlineFilters.filters?.length && this.inlineFilters, this.simpleFilters().filters?.length && this.simpleFilters()].filter(Boolean);
832
820
  const cleanedAllFilters = this.cleanNestedFilters(allFilters);
833
821
  this.lastFiltersApplied.set(this.simpleFilters());
834
822
  this.dataSource.filter(this.filterOperatorMiddleware.transformFilter({
@@ -846,6 +834,9 @@ class AXPEntityMasterListViewModel {
846
834
  return undefined;
847
835
  if (filter.filters?.length) {
848
836
  const cleanedNestedFilters = this.cleanNestedFilters(filter.filters);
837
+ if (!filter.field && !filter.operator && cleanedNestedFilters.length === 0) {
838
+ return undefined;
839
+ }
849
840
  return {
850
841
  ...filter,
851
842
  filters: cleanedNestedFilters.filter(Boolean),
@@ -911,11 +902,7 @@ class AXPEntityMasterListViewModel {
911
902
  }
912
903
  //****************** Commands ******************//
913
904
  async executeCommand(commandName, data = null) {
914
- const action = this.allActions().find((c) => c.name == commandName &&
915
- ((this.selectedItems().length
916
- ? c.scope == AXPEntityCommandScope.Selected
917
- : c.scope == AXPEntityCommandScope.Individual) ||
918
- c.scope == AXPEntityCommandScope.TypeLevel));
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));
919
906
  await this.workflow.execute(commandName, {
920
907
  entity: getEntityInfo(this.entityDef).source,
921
908
  entityInfo: {
@@ -1509,7 +1496,7 @@ const AXPEntityDetailViewModelResolver = (route, state, service = inject(AXPEnti
1509
1496
 
1510
1497
  class AXPEntityCommandSearchDefinitionProvider {
1511
1498
  async provide(context) {
1512
- context.addDefinition('command', 'Commands', 'fa-solid fa-command', 1, {
1499
+ context.addDefinition('command', 'Commands', 'command', 'fa-solid fa-command', 1, {
1513
1500
  format: {
1514
1501
  id: '{{id}}',
1515
1502
  },
@@ -1529,33 +1516,21 @@ class AXPEntitySearchDefinitionProvider {
1529
1516
  this.entityRegister = inject(AXPEntityDefinitionRegistryService);
1530
1517
  }
1531
1518
  async provide(context) {
1532
- const moduleDefinitions = new Map();
1519
+ console.log(this.entityRegister.getAll());
1533
1520
  this.entityRegister.getAll().forEach((entity) => {
1534
- if (!moduleDefinitions.has(entity.module)) {
1535
- moduleDefinitions.set(`Module.${entity.module}`, {
1536
- name: `Module.${entity.module}`,
1537
- title: entity.formats.searchResult?.description ?? entity.module,
1538
- icon: 'fa-solid fa-objects-column',
1539
- order: 4,
1540
- actions: [
1541
- {
1542
- name: 'open-entity',
1543
- type: 'view',
1544
- priority: 'primary',
1545
- },
1546
- ],
1547
- format: {
1548
- title: entity.formats.searchResult?.title,
1549
- description: (entity.formats.searchResult?.description ?? entity.module) + ' / ' + entity.title,
1550
- id: '{{data.id}}',
1521
+ context.addDefinition(`Module.${entity.module}.${entity.name}`, entity.formats.searchResult?.description ?? entity.module, `Module.${entity.module}`, 'fa-solid fa-objects-column', 4, {
1522
+ actions: [
1523
+ {
1524
+ name: 'open-entity',
1525
+ type: 'view',
1526
+ priority: 'primary',
1551
1527
  },
1552
- });
1553
- }
1554
- });
1555
- moduleDefinitions.forEach((definition) => {
1556
- context.addDefinition(definition.name, definition.title, definition.icon, definition.order, {
1557
- format: definition.format,
1558
- actions: definition.actions,
1528
+ ],
1529
+ format: {
1530
+ title: entity.formats.searchResult?.title,
1531
+ description: (entity.formats.searchResult?.description ?? entity.module) + ' / ' + entity.title,
1532
+ id: '{{data.id}}',
1533
+ },
1559
1534
  });
1560
1535
  });
1561
1536
  }
@@ -1770,7 +1745,7 @@ class AXPLookupWidgetSelectorComponent extends AXBasePageComponent {
1770
1745
  }
1771
1746
  </ax-suffix>
1772
1747
  </ax-footer>
1773
- `, 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-sub-title, 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 }); }
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 }); }
1774
1749
  }
1775
1750
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPLookupWidgetSelectorComponent, decorators: [{
1776
1751
  type: Component,
@@ -2154,7 +2129,7 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
2154
2129
  </ax-button>
2155
2130
  </ax-suffix>
2156
2131
  </ax-text-box>
2157
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i2$2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: 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-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i6$1.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2132
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i2$2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: 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: AXLoadingModule }, { kind: "component", type: i1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i6$1.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2158
2133
  }
2159
2134
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPLookupWidgetEditComponent, decorators: [{
2160
2135
  type: Component,
@@ -2398,7 +2373,7 @@ class AXPWidgetSelectorWidgetEditComponent extends AXPWidgetComponent {
2398
2373
  <axp-widget-property-viewer [widget]="selectedWidgetNode()!" (onChanged)="handleChangeWidget($event)">
2399
2374
  </axp-widget-property-viewer>
2400
2375
  }
2401
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i2$2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", 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-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i6$1.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "component", type: AXPWidgetPropertyViewerComponent, selector: "axp-widget-property-viewer", inputs: ["widget"], outputs: ["onChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2376
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i2$2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", 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: AXLoadingModule }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i6$1.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "component", type: AXPWidgetPropertyViewerComponent, selector: "axp-widget-property-viewer", inputs: ["widget"], outputs: ["onChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2402
2377
  }
2403
2378
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPWidgetSelectorWidgetEditComponent, decorators: [{
2404
2379
  type: Component,
@@ -2772,14 +2747,14 @@ function routesFacory() {
2772
2747
  class AXPEntityModule {
2773
2748
  constructor(appInitService, injector) {
2774
2749
  const service = injector.get(AXPEntityDefinitionRegistryService);
2775
- // appInitService.registerTask({
2776
- // name: 'layout-theme',
2777
- // statusText: 'Preload entities ...',
2778
- // run: async () => {
2779
- // // load in background
2780
- // service.preload();
2781
- // },
2782
- // });
2750
+ appInitService.registerTask({
2751
+ name: 'layout-theme',
2752
+ statusText: 'Preload entities ...',
2753
+ run: async () => {
2754
+ // load in background
2755
+ service.preload();
2756
+ },
2757
+ });
2783
2758
  }
2784
2759
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityModule, deps: [{ token: i1$3.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
2785
2760
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityModule, imports: [RouterModule, i2$3.AXPWorkflowModule, i7.AXPLayoutBuilderModule] }); }