@acorex/platform 18.2.0 → 18.2.2

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 (384) hide show
  1. package/common/lib/app/application.types.d.ts +18 -2
  2. package/common/lib/data/data.types.d.ts +1 -1
  3. package/common/lib/data/entity-storage-service.d.ts +1 -2
  4. package/common/lib/layout/component-slot/component-slot-loader.service.d.ts +2 -2
  5. package/common/lib/layout/component-slot/component-slot.types.d.ts +2 -1
  6. package/common/lib/layout/menu/index.d.ts +0 -1
  7. package/common/lib/layout/menu/menu.provider.d.ts +12 -5
  8. package/common/lib/layout/menu/menu.service.d.ts +8 -2
  9. package/common/lib/layout/menu/menu.types.d.ts +9 -6
  10. package/common/lib/settings/index.d.ts +2 -1
  11. package/common/lib/settings/setting-definition.provider.d.ts +19 -0
  12. package/common/lib/settings/settings.types.d.ts +42 -0
  13. package/common/lib/utils/index.d.ts +0 -1
  14. package/esm2022/common/lib/app/application.types.mjs +13 -1
  15. package/esm2022/common/lib/common.module.mjs +14 -16
  16. package/esm2022/common/lib/data/data.types.mjs +1 -1
  17. package/esm2022/common/lib/data/dexie-storage.service.mjs +2 -2
  18. package/esm2022/common/lib/data/entity-storage-service.mjs +5 -5
  19. package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +6 -5
  20. package/esm2022/common/lib/layout/component-slot/component-slot.types.mjs +1 -1
  21. package/esm2022/common/lib/layout/menu/index.mjs +1 -2
  22. package/esm2022/common/lib/layout/menu/menu.provider.mjs +105 -28
  23. package/esm2022/common/lib/layout/menu/menu.service.mjs +42 -10
  24. package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
  25. package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +2 -1
  26. package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +4 -4
  27. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +2 -2
  28. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +2 -2
  29. package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +2 -2
  30. package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +2 -2
  31. package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +22 -22
  32. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +2 -2
  33. package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +2 -2
  34. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +2 -2
  35. package/esm2022/common/lib/settings/index.mjs +3 -2
  36. package/esm2022/common/lib/settings/setting-definition.provider.mjs +229 -0
  37. package/esm2022/common/lib/settings/settings.types.mjs +7 -2
  38. package/esm2022/common/lib/utils/index.mjs +1 -2
  39. package/esm2022/common/lib/workflows/common.workflow.mjs +5 -3
  40. package/esm2022/layout/builder/lib/builder/builder.service.mjs +3 -2
  41. package/esm2022/layout/builder/lib/builder/datasource-provider.service.mjs +27 -0
  42. package/esm2022/layout/builder/lib/builder/index.mjs +2 -1
  43. package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +2 -1
  44. package/esm2022/layout/builder/lib/builder/widget-renderer.component.directive.mjs +3 -9
  45. package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +7 -5
  46. package/esm2022/layout/builder/lib/builder/widget.types.mjs +59 -6
  47. package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +66 -47
  48. package/esm2022/layout/designer/lib/designer/components/breadcrumbs/breadcrumbs.component.mjs +27 -32
  49. package/esm2022/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.mjs +5 -4
  50. package/esm2022/layout/designer/lib/designer/components/grid-drawer/grid-drawer.component.mjs +2 -2
  51. package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +35 -10
  52. package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +23 -23
  53. package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +3 -3
  54. package/esm2022/layout/designer/lib/designer/designer.component.mjs +10 -9
  55. package/esm2022/layout/designer/lib/designer/index.mjs +2 -1
  56. package/esm2022/layout/designer/lib/designer/shared/designer-connector.service.mjs +5 -5
  57. package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +158 -63
  58. package/esm2022/layout/designer/lib/designer/shared/designer.types.mjs +1 -1
  59. package/esm2022/layout/designer/lib/designer/shared/generic-commands.types.mjs +52 -0
  60. package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +35 -38
  61. package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +12 -3
  62. package/esm2022/layout/designer/lib/preview/preview.component.mjs +3 -2
  63. package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +7 -6
  64. package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +5 -7
  65. package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +3 -3
  66. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +21 -18
  67. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +8 -7
  68. package/esm2022/layout/entity/lib/entity.config.mjs +6 -6
  69. package/esm2022/layout/entity/lib/entity.service.mjs +18 -0
  70. package/esm2022/layout/entity/lib/entity.viewmodel.mjs +7 -5
  71. package/esm2022/layout/entity/lib/index.mjs +2 -1
  72. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +10 -4
  73. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +42 -32
  74. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +3 -3
  75. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +20 -19
  76. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +79 -40
  77. package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +2 -2
  78. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +2 -2
  79. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +2 -2
  80. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +1 -1
  81. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +1 -1
  82. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +6 -5
  83. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +2 -2
  84. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +2 -2
  85. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +2 -2
  86. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +30 -10
  87. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +3 -3
  88. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +9 -8
  89. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +3 -3
  90. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +24 -18
  91. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +3 -3
  92. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +3 -3
  93. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +12 -10
  94. package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +2 -2
  95. package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +4 -3
  96. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +2 -4
  97. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +6 -1
  98. package/esm2022/themes/shared/lib/shared.module.mjs +25 -4
  99. package/esm2022/widgets/lib/properties/editors.props.mjs +4 -2
  100. package/esm2022/widgets/lib/properties/general.props.mjs +2 -2
  101. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +2 -2
  102. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +44 -20
  103. package/esm2022/widgets/lib/widgets/editors/contact/popup-component.mjs +1 -1
  104. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +17 -15
  105. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.mjs +7 -10
  106. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-view.component.mjs +13 -6
  107. package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +1 -2
  108. package/esm2022/widgets/lib/widgets/editors/select/index.mjs +3 -3
  109. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-edit.component.mjs +9 -20
  110. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +20 -25
  111. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.mjs +35 -17
  112. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +41 -19
  113. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.mjs +24 -15
  114. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget.config.mjs +4 -2
  115. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +14 -7
  116. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.mjs +3 -3
  117. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.mjs +29 -67
  118. package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +32 -17
  119. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +1 -22
  120. package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +3 -3
  121. package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +76 -78
  122. package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +9 -9
  123. package/esm2022/widgets/lib/widgets/layout/template/template-picker/template-picker.component.mjs +120 -0
  124. package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +65 -24
  125. package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +27 -7
  126. package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +18 -1
  127. package/fesm2022/acorex-platform-auth.mjs +1 -1
  128. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-D4k52w2k.mjs → acorex-platform-common-avatar-widget-edit.component-vDhYokEG.mjs} +3 -4
  129. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-D4k52w2k.mjs.map → acorex-platform-common-avatar-widget-edit.component-vDhYokEG.mjs.map} +1 -1
  130. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-Bbg1imZG.mjs → acorex-platform-common-avatar-widget-view.component-Dew3CVLm.mjs} +3 -4
  131. package/fesm2022/acorex-platform-common-avatar-widget-view.component-Dew3CVLm.mjs.map +1 -0
  132. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CRFI7vNR.mjs → acorex-platform-common-boolean-widget-filter.component-BdE7WOK5.mjs} +4 -5
  133. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CRFI7vNR.mjs.map → acorex-platform-common-boolean-widget-filter.component-BdE7WOK5.mjs.map} +1 -1
  134. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs → acorex-platform-common-change-password.component-g_GEw3IZ.mjs} +4 -4
  135. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs.map → acorex-platform-common-change-password.component-g_GEw3IZ.mjs.map} +1 -1
  136. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BCUcZiP_.mjs → acorex-platform-common-checkbox-widget-column.component-Bj5rjEk1.mjs} +3 -4
  137. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BCUcZiP_.mjs.map → acorex-platform-common-checkbox-widget-column.component-Bj5rjEk1.mjs.map} +1 -1
  138. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-GgWLpxV0.mjs → acorex-platform-common-checkbox-widget-edit.component-ChXbJsuG.mjs} +4 -5
  139. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-ChXbJsuG.mjs.map +1 -0
  140. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-KuRnDGoQ.mjs → acorex-platform-common-checkbox-widget-view.component-CbQwjE_u.mjs} +3 -4
  141. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-KuRnDGoQ.mjs.map → acorex-platform-common-checkbox-widget-view.component-CbQwjE_u.mjs.map} +1 -1
  142. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-DaXNK6e2.mjs → acorex-platform-common-dateTime-widget-column.component-QUYyDVw8.mjs} +3 -4
  143. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-QUYyDVw8.mjs.map +1 -0
  144. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-XOReyHZ-.mjs → acorex-platform-common-dateTime-widget-edit.component-CzLb3xnR.mjs} +3 -4
  145. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-XOReyHZ-.mjs.map → acorex-platform-common-dateTime-widget-edit.component-CzLb3xnR.mjs.map} +1 -1
  146. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-3PJx2C6G.mjs → acorex-platform-common-dateTime-widget-filter.component-DZRQ6yVk.mjs} +3 -4
  147. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-3PJx2C6G.mjs.map → acorex-platform-common-dateTime-widget-filter.component-DZRQ6yVk.mjs.map} +1 -1
  148. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-BWTedYCf.mjs → acorex-platform-common-dateTime-widget-view.component-DxNwm_5m.mjs} +3 -4
  149. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-BWTedYCf.mjs.map → acorex-platform-common-dateTime-widget-view.component-DxNwm_5m.mjs.map} +1 -1
  150. package/fesm2022/{acorex-platform-common-email-widget-column.component-MySWR3RG.mjs → acorex-platform-common-email-widget-column.component-Cm-fhlNZ.mjs} +3 -4
  151. package/fesm2022/acorex-platform-common-email-widget-column.component-Cm-fhlNZ.mjs.map +1 -0
  152. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DzqW3Ay6.mjs → acorex-platform-common-email-widget-edit.component-BfXFBLF6.mjs} +3 -4
  153. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DzqW3Ay6.mjs.map → acorex-platform-common-email-widget-edit.component-BfXFBLF6.mjs.map} +1 -1
  154. package/fesm2022/{acorex-platform-common-email-widget-view.component-ikN6SIj0.mjs → acorex-platform-common-email-widget-view.component-ClRjKVy6.mjs} +2 -3
  155. package/fesm2022/{acorex-platform-common-email-widget-view.component-ikN6SIj0.mjs.map → acorex-platform-common-email-widget-view.component-ClRjKVy6.mjs.map} +1 -1
  156. package/fesm2022/{acorex-platform-common-file-widget-column.component-GtbElxmS.mjs → acorex-platform-common-file-widget-column.component-B0v2rSWI.mjs} +2 -3
  157. package/fesm2022/acorex-platform-common-file-widget-column.component-B0v2rSWI.mjs.map +1 -0
  158. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CPSsJviw.mjs → acorex-platform-common-file-widget-edit.component-DsIqehpt.mjs} +3 -4
  159. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CPSsJviw.mjs.map → acorex-platform-common-file-widget-edit.component-DsIqehpt.mjs.map} +1 -1
  160. package/fesm2022/{acorex-platform-common-file-widget-filter.component-D-_WnxlE.mjs → acorex-platform-common-file-widget-filter.component-C3uBjqF-.mjs} +3 -4
  161. package/fesm2022/acorex-platform-common-file-widget-filter.component-C3uBjqF-.mjs.map +1 -0
  162. package/fesm2022/{acorex-platform-common-file-widget-view.component-BU8iWCVR.mjs → acorex-platform-common-file-widget-view.component-DTl_Rehd.mjs} +3 -4
  163. package/fesm2022/{acorex-platform-common-file-widget-view.component-BU8iWCVR.mjs.map → acorex-platform-common-file-widget-view.component-DTl_Rehd.mjs.map} +1 -1
  164. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DMu9OW45.mjs → acorex-platform-common-gallery-widget-edit.component-DHeFVg5x.mjs} +3 -4
  165. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DMu9OW45.mjs.map → acorex-platform-common-gallery-widget-edit.component-DHeFVg5x.mjs.map} +1 -1
  166. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-BNYgn0eK.mjs → acorex-platform-common-gallery-widget-filter.component-Di446i2c.mjs} +3 -4
  167. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-Di446i2c.mjs.map +1 -0
  168. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-D52gjNcJ.mjs → acorex-platform-common-gallery-widget-view.component-CkcRvfv-.mjs} +3 -4
  169. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-D52gjNcJ.mjs.map → acorex-platform-common-gallery-widget-view.component-CkcRvfv-.mjs.map} +1 -1
  170. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-B7Hq-1ny.mjs → acorex-platform-common-largetext-widget-edit.component-D89AlBSm.mjs} +2 -3
  171. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-D89AlBSm.mjs.map +1 -0
  172. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-2ccF27nN.mjs → acorex-platform-common-lookup-widget-column.component-CB0ehp_y.mjs} +3 -4
  173. package/fesm2022/acorex-platform-common-lookup-widget-column.component-CB0ehp_y.mjs.map +1 -0
  174. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-Cn3yALld.mjs → acorex-platform-common-lookup-widget-edit.component-B0HQnsb8.mjs} +3 -4
  175. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-Cn3yALld.mjs.map → acorex-platform-common-lookup-widget-edit.component-B0HQnsb8.mjs.map} +1 -1
  176. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-NY-w7EgD.mjs → acorex-platform-common-lookup-widget-filter.component-Dxj_XEYV.mjs} +4 -5
  177. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-Dxj_XEYV.mjs.map +1 -0
  178. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-DjbS0xsx.mjs → acorex-platform-common-lookup-widget-view.component-BtO3feA9.mjs} +3 -4
  179. package/fesm2022/acorex-platform-common-lookup-widget-view.component-BtO3feA9.mjs.map +1 -0
  180. package/fesm2022/{acorex-platform-common-map-widget-edit.component-CHyEencO.mjs → acorex-platform-common-map-widget-edit.component-hXIZrhzg.mjs} +3 -4
  181. package/fesm2022/acorex-platform-common-map-widget-edit.component-hXIZrhzg.mjs.map +1 -0
  182. package/fesm2022/{acorex-platform-common-map-widget-view.component-BMK6QTKt.mjs → acorex-platform-common-map-widget-view.component-RgV-r8q6.mjs} +3 -4
  183. package/fesm2022/acorex-platform-common-map-widget-view.component-RgV-r8q6.mjs.map +1 -0
  184. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-iVdgR19k.mjs → acorex-platform-common-messenger-widget-column.component-DGWQWuzM.mjs} +3 -4
  185. package/fesm2022/acorex-platform-common-messenger-widget-column.component-DGWQWuzM.mjs.map +1 -0
  186. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-BicSI2_5.mjs → acorex-platform-common-messenger-widget-edit.component-Blv1qL4e.mjs} +3 -4
  187. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-Blv1qL4e.mjs.map +1 -0
  188. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DlSSOqrz.mjs → acorex-platform-common-messenger-widget-view.component-DEbnPggG.mjs} +3 -4
  189. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DlSSOqrz.mjs.map → acorex-platform-common-messenger-widget-view.component-DEbnPggG.mjs.map} +1 -1
  190. package/fesm2022/{acorex-platform-common-number-widget-edit.component-DlLjt4OQ.mjs → acorex-platform-common-number-widget-edit.component-gQCEBhPv.mjs} +3 -4
  191. package/fesm2022/acorex-platform-common-number-widget-edit.component-gQCEBhPv.mjs.map +1 -0
  192. package/fesm2022/{acorex-platform-common-number-widget-filter.component-DPZQomNX.mjs → acorex-platform-common-number-widget-filter.component-CvEw3awN.mjs} +4 -5
  193. package/fesm2022/acorex-platform-common-number-widget-filter.component-CvEw3awN.mjs.map +1 -0
  194. package/fesm2022/{acorex-platform-common-number-widget-view.component-BW1ftaLk.mjs → acorex-platform-common-number-widget-view.component-ROrdklif.mjs} +3 -4
  195. package/fesm2022/acorex-platform-common-number-widget-view.component-ROrdklif.mjs.map +1 -0
  196. package/fesm2022/{acorex-platform-common-password-widget-column.component-BZEavb7p.mjs → acorex-platform-common-password-widget-column.component-vXdE4UjM.mjs} +3 -4
  197. package/fesm2022/{acorex-platform-common-password-widget-column.component-BZEavb7p.mjs.map → acorex-platform-common-password-widget-column.component-vXdE4UjM.mjs.map} +1 -1
  198. package/fesm2022/{acorex-platform-common-password-widget-edit.component-De5r-L4i.mjs → acorex-platform-common-password-widget-edit.component-BCOoHtGl.mjs} +3 -4
  199. package/fesm2022/acorex-platform-common-password-widget-edit.component-BCOoHtGl.mjs.map +1 -0
  200. package/fesm2022/{acorex-platform-common-password-widget-view.component-Dw4xxdOT.mjs → acorex-platform-common-password-widget-view.component-rpjAeimk.mjs} +4 -5
  201. package/fesm2022/{acorex-platform-common-password-widget-view.component-Dw4xxdOT.mjs.map → acorex-platform-common-password-widget-view.component-rpjAeimk.mjs.map} +1 -1
  202. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BTbtfPty.mjs → acorex-platform-common-phone-widget-column.component-BbuUbPCu.mjs} +3 -4
  203. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BTbtfPty.mjs.map → acorex-platform-common-phone-widget-column.component-BbuUbPCu.mjs.map} +1 -1
  204. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-Ay4y8j_t.mjs → acorex-platform-common-phone-widget-edit.component-Bo_aOxfZ.mjs} +3 -4
  205. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-Ay4y8j_t.mjs.map → acorex-platform-common-phone-widget-edit.component-Bo_aOxfZ.mjs.map} +1 -1
  206. package/fesm2022/{acorex-platform-common-phone-widget-view.component-D4WqjjBP.mjs → acorex-platform-common-phone-widget-view.component-DDBCR_QY.mjs} +3 -4
  207. package/fesm2022/{acorex-platform-common-phone-widget-view.component-D4WqjjBP.mjs.map → acorex-platform-common-phone-widget-view.component-DDBCR_QY.mjs.map} +1 -1
  208. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-B5rev2NB.mjs → acorex-platform-common-rich-text-widget-column.component-BHiq7hdp.mjs} +3 -4
  209. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-B5rev2NB.mjs.map → acorex-platform-common-rich-text-widget-column.component-BHiq7hdp.mjs.map} +1 -1
  210. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-BHBRQKhj.mjs → acorex-platform-common-rich-text-widget-edit.component-12odUyzb.mjs} +3 -4
  211. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-12odUyzb.mjs.map +1 -0
  212. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-0bIoY7Ws.mjs → acorex-platform-common-rich-text-widget-view.component-Xr0ohz5L.mjs} +3 -4
  213. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-Xr0ohz5L.mjs.map +1 -0
  214. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-CzJWP4YT.mjs → acorex-platform-common-selection-list-widget-column.component-C2JikSdw.mjs} +3 -4
  215. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-CzJWP4YT.mjs.map → acorex-platform-common-selection-list-widget-column.component-C2JikSdw.mjs.map} +1 -1
  216. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-DhYa6y65.mjs → acorex-platform-common-selection-list-widget-edit.component-C1QPfHCm.mjs} +4 -5
  217. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-C1QPfHCm.mjs.map +1 -0
  218. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-B344MeXJ.mjs → acorex-platform-common-selection-list-widget-filter.component-DIgxHmqa.mjs} +3 -4
  219. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DIgxHmqa.mjs.map +1 -0
  220. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-Czk5DzgK.mjs → acorex-platform-common-selection-list-widget-view.component-D-VQ4JNC.mjs} +3 -4
  221. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-D-VQ4JNC.mjs.map +1 -0
  222. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-YSGjL25D.mjs → acorex-platform-common-signature-pad-widget-edit.component-BimaJ4_d.mjs} +3 -4
  223. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-YSGjL25D.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-BimaJ4_d.mjs.map} +1 -1
  224. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-D64btt99.mjs → acorex-platform-common-signature-pad-widget-view.component-USd0U707.mjs} +3 -4
  225. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-USd0U707.mjs.map +1 -0
  226. package/fesm2022/{acorex-platform-common-string-widget-filter.component-5wb1x5Fa.mjs → acorex-platform-common-string-widget-filter.component-wI9D-Ju5.mjs} +4 -5
  227. package/fesm2022/acorex-platform-common-string-widget-filter.component-wI9D-Ju5.mjs.map +1 -0
  228. package/fesm2022/{acorex-platform-common-text-widget-column.component-U-V3HD2V.mjs → acorex-platform-common-text-widget-column.component-Be7Nr0lJ.mjs} +3 -4
  229. package/fesm2022/{acorex-platform-common-text-widget-column.component-U-V3HD2V.mjs.map → acorex-platform-common-text-widget-column.component-Be7Nr0lJ.mjs.map} +1 -1
  230. package/fesm2022/{acorex-platform-common-text-widget-edit.component-BCs13zUr.mjs → acorex-platform-common-text-widget-edit.component-feJTTnye.mjs} +3 -4
  231. package/fesm2022/{acorex-platform-common-text-widget-edit.component-BCs13zUr.mjs.map → acorex-platform-common-text-widget-edit.component-feJTTnye.mjs.map} +1 -1
  232. package/fesm2022/{acorex-platform-common-text-widget-view.component-V1RkKuNZ.mjs → acorex-platform-common-text-widget-view.component-DsUAJ-md.mjs} +3 -4
  233. package/fesm2022/{acorex-platform-common-text-widget-view.component-V1RkKuNZ.mjs.map → acorex-platform-common-text-widget-view.component-DsUAJ-md.mjs.map} +1 -1
  234. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-FqKLeAhY.mjs → acorex-platform-common-toggle-widget-column.component-BFwzsY4-.mjs} +3 -4
  235. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-FqKLeAhY.mjs.map → acorex-platform-common-toggle-widget-column.component-BFwzsY4-.mjs.map} +1 -1
  236. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-DKSnFdTQ.mjs → acorex-platform-common-toggle-widget-edit.component-Cuf9_RrU.mjs} +3 -4
  237. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-Cuf9_RrU.mjs.map +1 -0
  238. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-BOYPRUCt.mjs → acorex-platform-common-toggle-widget-view.component-DYz6VTey.mjs} +3 -4
  239. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-BOYPRUCt.mjs.map → acorex-platform-common-toggle-widget-view.component-DYz6VTey.mjs.map} +1 -1
  240. package/fesm2022/acorex-platform-common.mjs +515 -237
  241. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  242. package/fesm2022/acorex-platform-layout-builder.mjs +92 -17
  243. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  244. package/fesm2022/acorex-platform-layout-designer.mjs +424 -231
  245. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  246. package/fesm2022/acorex-platform-layout-entity.mjs +206 -134
  247. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  248. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs → acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs} +3 -3
  249. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs.map → acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs.map} +1 -1
  250. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs → acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs} +2 -2
  251. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs.map → acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs.map} +1 -1
  252. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs} +3 -3
  253. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs.map → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs.map} +1 -1
  254. package/fesm2022/acorex-platform-layouts.mjs +14 -13
  255. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  256. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-BJ7inoTB.mjs → acorex-platform-themes-default-entity-master-create-view.component-Cf5ttvrG.mjs} +7 -7
  257. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-BJ7inoTB.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-Cf5ttvrG.mjs.map} +1 -1
  258. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BLb_4pK5.mjs +306 -0
  259. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BLb_4pK5.mjs.map +1 -0
  260. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CCvE7XiE.mjs +88 -0
  261. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CCvE7XiE.mjs.map +1 -0
  262. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CwrgQFY7.mjs +150 -0
  263. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CwrgQFY7.mjs.map +1 -0
  264. package/fesm2022/acorex-platform-themes-default.mjs +49 -27
  265. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  266. package/fesm2022/acorex-platform-themes-shared.mjs +23 -4
  267. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  268. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs → acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs} +2 -2
  269. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs.map → acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs.map} +1 -1
  270. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs} +2 -2
  271. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs.map → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs.map} +1 -1
  272. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-e9O9qFIf.mjs → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs} +5 -5
  273. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-e9O9qFIf.mjs.map → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs.map} +1 -1
  274. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs} +2 -2
  275. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs.map → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs.map} +1 -1
  276. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-Brsun0id.mjs → acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs} +5 -5
  277. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs.map +1 -0
  278. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs → acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs} +2 -2
  279. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs.map → acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs.map} +1 -1
  280. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs → acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs} +76 -78
  281. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs.map +1 -0
  282. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs} +2 -2
  283. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs.map → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs.map} +1 -1
  284. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs +123 -0
  285. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs.map +1 -0
  286. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-JlCVB-Aq.mjs +135 -0
  287. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-JlCVB-Aq.mjs.map +1 -0
  288. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs → acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs} +2 -2
  289. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs.map → acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs.map} +1 -1
  290. package/fesm2022/acorex-platform-widgets.mjs +438 -385
  291. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  292. package/fesm2022/acorex-platform-workflow.mjs +1 -1
  293. package/layout/builder/lib/builder/datasource-provider.service.d.ts +24 -0
  294. package/layout/builder/lib/builder/index.d.ts +1 -0
  295. package/layout/builder/lib/builder/widget.types.d.ts +15 -9
  296. package/layout/designer/lib/designer/components/board/board.component.d.ts +8 -1
  297. package/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.d.ts +6 -4
  298. package/layout/designer/lib/designer/designer.component.d.ts +3 -2
  299. package/layout/designer/lib/designer/index.d.ts +1 -0
  300. package/layout/designer/lib/designer/shared/designer-connector.service.d.ts +10 -9
  301. package/layout/designer/lib/designer/shared/designer.service.d.ts +18 -5
  302. package/layout/designer/lib/designer/shared/designer.types.d.ts +0 -4
  303. package/layout/designer/lib/designer/shared/generic-commands.types.d.ts +9 -0
  304. package/layout/designer/lib/designer/shared/widget-designer-renderer.directive.d.ts +8 -5
  305. package/layout/designer/lib/preview/preview-viewer.component.d.ts +8 -1
  306. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +8 -4
  307. package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +2 -1
  308. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +1 -1
  309. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +2 -3
  310. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +2 -1
  311. package/layout/entity/lib/entity-master-update.viewmodel.d.ts +1 -1
  312. package/layout/entity/lib/entity.config.d.ts +1 -1
  313. package/layout/entity/lib/entity.service.d.ts +7 -0
  314. package/layout/entity/lib/entity.viewmodel.d.ts +6 -4
  315. package/layout/entity/lib/index.d.ts +1 -0
  316. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +14 -12
  317. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +2 -2
  318. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +13 -10
  319. package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +0 -1
  320. package/package.json +12 -12
  321. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +4 -1
  322. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.d.ts +1 -1
  323. package/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.d.ts +8 -2
  324. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +3 -6
  325. package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +14 -13
  326. package/themes/shared/lib/shared.module.d.ts +2 -1
  327. package/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.d.ts +2 -0
  328. package/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.d.ts +1 -3
  329. package/widgets/lib/widgets/editors/date-time/date-time-box-widget-view.component.d.ts +1 -0
  330. package/widgets/lib/widgets/editors/select/index.d.ts +2 -2
  331. package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +3 -6
  332. package/widgets/lib/widgets/editors/select/select-box-widget-view.component.d.ts +2 -3
  333. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.d.ts +6 -7
  334. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.d.ts +5 -6
  335. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.d.ts +3 -3
  336. package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +1 -2
  337. package/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.d.ts +1 -1
  338. package/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.d.ts +1 -1
  339. package/widgets/lib/widgets/layout/page/page-widget-designer.component.d.ts +8 -9
  340. package/widgets/lib/widgets/layout/template/template-picker/template-picker.component.d.ts +30 -0
  341. package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +3 -0
  342. package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +1 -0
  343. package/widgets/lib/widgets/layout/template/template.provider.d.ts +3 -0
  344. package/common/lib/layout/menu/menu.loader.d.ts +0 -17
  345. package/common/lib/utils/router-util.service.d.ts +0 -12
  346. package/esm2022/common/lib/layout/menu/menu.loader.mjs +0 -39
  347. package/esm2022/common/lib/utils/router-util.service.mjs +0 -43
  348. package/fesm2022/acorex-platform-common-avatar-widget-view.component-Bbg1imZG.mjs.map +0 -1
  349. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-GgWLpxV0.mjs.map +0 -1
  350. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-DaXNK6e2.mjs.map +0 -1
  351. package/fesm2022/acorex-platform-common-email-widget-column.component-MySWR3RG.mjs.map +0 -1
  352. package/fesm2022/acorex-platform-common-file-widget-column.component-GtbElxmS.mjs.map +0 -1
  353. package/fesm2022/acorex-platform-common-file-widget-filter.component-D-_WnxlE.mjs.map +0 -1
  354. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-BNYgn0eK.mjs.map +0 -1
  355. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-B7Hq-1ny.mjs.map +0 -1
  356. package/fesm2022/acorex-platform-common-lookup-widget-column.component-2ccF27nN.mjs.map +0 -1
  357. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-NY-w7EgD.mjs.map +0 -1
  358. package/fesm2022/acorex-platform-common-lookup-widget-view.component-DjbS0xsx.mjs.map +0 -1
  359. package/fesm2022/acorex-platform-common-map-widget-edit.component-CHyEencO.mjs.map +0 -1
  360. package/fesm2022/acorex-platform-common-map-widget-view.component-BMK6QTKt.mjs.map +0 -1
  361. package/fesm2022/acorex-platform-common-messenger-widget-column.component-iVdgR19k.mjs.map +0 -1
  362. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-BicSI2_5.mjs.map +0 -1
  363. package/fesm2022/acorex-platform-common-number-widget-edit.component-DlLjt4OQ.mjs.map +0 -1
  364. package/fesm2022/acorex-platform-common-number-widget-filter.component-DPZQomNX.mjs.map +0 -1
  365. package/fesm2022/acorex-platform-common-number-widget-view.component-BW1ftaLk.mjs.map +0 -1
  366. package/fesm2022/acorex-platform-common-password-widget-edit.component-De5r-L4i.mjs.map +0 -1
  367. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-BHBRQKhj.mjs.map +0 -1
  368. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-0bIoY7Ws.mjs.map +0 -1
  369. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-DhYa6y65.mjs.map +0 -1
  370. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-B344MeXJ.mjs.map +0 -1
  371. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-Czk5DzgK.mjs.map +0 -1
  372. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-D64btt99.mjs.map +0 -1
  373. package/fesm2022/acorex-platform-common-string-widget-filter.component-5wb1x5Fa.mjs.map +0 -1
  374. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-DKSnFdTQ.mjs.map +0 -1
  375. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs +0 -298
  376. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs.map +0 -1
  377. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs +0 -88
  378. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs.map +0 -1
  379. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BO_lAQc_.mjs +0 -150
  380. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BO_lAQc_.mjs.map +0 -1
  381. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-Brsun0id.mjs.map +0 -1
  382. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs.map +0 -1
  383. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs +0 -96
  384. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs.map +0 -1
@@ -1,27 +1,29 @@
1
1
  import { AXFormatService } from '@acorex/core/format';
2
- import { cloneDeep, set, merge, get, sortBy } from 'lodash-es';
2
+ import { cloneDeep, set, merge, isNil, get, sortBy } from 'lodash-es';
3
3
  import * as i0 from '@angular/core';
4
- import { InjectionToken, inject, Injectable, computed, signal, Injector, Component, ChangeDetectionStrategy, DestroyRef, ViewChild, NgModule } from '@angular/core';
4
+ import { InjectionToken, inject, Injectable, computed, signal, Injector, effect, HostBinding, ChangeDetectionStrategy, Component, DestroyRef, ViewChild, NgModule } from '@angular/core';
5
5
  import * as i1$3 from '@acorex/platform/workflow';
6
6
  import { createWorkFlowEvent, AXPWorkflowAction, AXPWorkflowService, ofType, AXPWorkflowModule } from '@acorex/platform/workflow';
7
7
  import { AXPSessionService, AXPAuthGuard } from '@acorex/platform/auth';
8
- import { resolveActionLook, AXPLayoutService, AXPEntityCommandScope, AXPWorkflowNavigateAction } from '@acorex/platform/common';
8
+ import { resolveActionLook, AXPLayoutService, AXPEntityCommandScope, getEntityInfo, AXPWorkflowNavigateAction } from '@acorex/platform/common';
9
9
  import { AXDialogService } from '@acorex/components/dialog';
10
10
  import { AXLoadingDialogService } from '@acorex/components/loading-dialog';
11
11
  import * as i8 from '@acorex/core/translation';
12
12
  import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
13
13
  import { AXPopupService } from '@acorex/components/popup';
14
14
  import { AXPlatform } from '@acorex/core/platform';
15
- import * as i2 from '@acorex/components/common';
15
+ import * as i2$1 from '@acorex/components/common';
16
16
  import { AXDataSource, AXCommonModule } from '@acorex/components/common';
17
17
  import { Subject, takeUntil } from 'rxjs';
18
18
  import * as i7 from '@acorex/platform/layout/builder';
19
- import { AXPWidgetComponent, AXPLayoutBuilderModule, AXPLayoutBuilderService, AXPColumnWidgetComponent, AXP_WIDGETS_EDITOR_GROUP, AXPWidgetsCatalog, AXPWidgetRegistryService } from '@acorex/platform/layout/builder';
19
+ import { AXPWidgetComponent, AXPLayoutBuilderModule, AXPLayoutBuilderService, AXPColumnWidgetComponent, AXPWidgetsCatalog, AXP_WIDGETS_EDITOR_GROUP, AXPWidgetRegistryService } from '@acorex/platform/layout/builder';
20
20
  import { RouterModule, ROUTES } from '@angular/router';
21
21
  import * as i1 from '@acorex/components/loading';
22
22
  import { AXLoadingModule } from '@acorex/components/loading';
23
23
  import * as i1$1 from '@angular/common';
24
24
  import { CommonModule } from '@angular/common';
25
+ import * as i2 from '@acorex/components/badge';
26
+ import { AXBadgeModule } from '@acorex/components/badge';
25
27
  import * as i3 from '@acorex/components/button';
26
28
  import { AXButtonModule } from '@acorex/components/button';
27
29
  import * as i4 from '@acorex/components/decorators';
@@ -29,8 +31,8 @@ import { AXDecoratorModule } from '@acorex/components/decorators';
29
31
  import * as i6$1 from '@acorex/components/form';
30
32
  import { AXFormModule } from '@acorex/components/form';
31
33
  import { AXSelectBoxModule } from '@acorex/components/select-box';
32
- import * as i2$1 from '@acorex/components/text-box';
33
- import { AXTextBoxComponent, AXTextBoxModule } from '@acorex/components/text-box';
34
+ import * as i2$2 from '@acorex/components/text-box';
35
+ import { AXTextBoxModule, AXTextBoxComponent } from '@acorex/components/text-box';
34
36
  import { AXValidationModule } from '@acorex/core/validation';
35
37
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
36
38
  import * as i1$2 from '@angular/forms';
@@ -45,14 +47,14 @@ import { AXP_DISABLED_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP,
45
47
  import { AXPWidgetPropertyViewerComponent } from '@acorex/platform/layout/designer';
46
48
 
47
49
  const AXP_ENTITY_CONFIG_TOKEN = new InjectionToken('AXP_ENTITY_CONFIG_TOKEN');
48
- const AXP_ENTITY_DEFINITION_LOADER = new InjectionToken('AXP_ENTITY_DEFINITION_LOADER');
50
+ const AXP_ENTITY_DEFINITION_LOADER = new InjectionToken('AXP_ENTITY_DEFINITION_PROVIDER');
49
51
  class AXPEntityResolver {
50
52
  constructor() {
51
- this.loader = inject(AXP_ENTITY_DEFINITION_LOADER);
53
+ this.providers = inject(AXP_ENTITY_DEFINITION_LOADER);
52
54
  }
53
55
  async get(moduleName, entityName) {
54
- if (Array.isArray(this.loader)) {
55
- for (const loader of this.loader) {
56
+ if (Array.isArray(this.providers)) {
57
+ for (const loader of this.providers) {
56
58
  const entity = await loader.get(moduleName, entityName);
57
59
  if (entity) {
58
60
  return entity;
@@ -60,7 +62,7 @@ class AXPEntityResolver {
60
62
  }
61
63
  }
62
64
  else {
63
- return await this.loader.get(moduleName, entityName);
65
+ return await this.providers.get(moduleName, entityName);
64
66
  }
65
67
  return null;
66
68
  }
@@ -157,12 +159,14 @@ class AXPEntityListViewColumnViewModel {
157
159
  this.name = this.property.name;
158
160
  this.title = this.column.title ?? this.property.title;
159
161
  this.visible = this.column?.options?.visible ?? true;
162
+ this.dir = this.column.sort?.dir;
163
+ this.sortEnabled = this.property.options?.sort?.enabled;
160
164
  this.node = computed(() => {
161
165
  const widget = this.property.schema.interface;
162
166
  return {
163
- path: this.name,
167
+ path: this.column.options?.dataPath ?? this.name,
164
168
  type: widget.type,
165
- options: { ...widget?.options, ...this.column?.options }
169
+ options: { ...widget?.options, ...this.column?.options },
166
170
  };
167
171
  });
168
172
  }
@@ -406,7 +410,7 @@ class AXPEntityModifySectionPopupAction extends AXPWorkflowAction {
406
410
  const vm = await this.factory.create(moduleName, entityName, id, properties);
407
411
  const com = await this.config.viewers.master.modify();
408
412
  const popup = await this.popupService.open(com, {
409
- title: title ?? `${this.translateService.translateSync('entity.modify')} ${entityRef.formats.individual}`,
413
+ title: title ?? `${this.translateService.translateSync('entity.modify')} ${this.translateService.translateSync(entityRef.formats.individual)}`,
410
414
  size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',
411
415
  data: {
412
416
  vm,
@@ -525,9 +529,8 @@ class AXPEntityDetailListViewModel {
525
529
  ((a.scope == AXPEntityCommandScope.Selected && this.hasSelectedItems()) ||
526
530
  (a.scope == AXPEntityCommandScope.TypeLevel && !this.hasSelectedItems())));
527
531
  });
528
- this.rowActions = computed(() => {
529
- return this.allActions().filter((a) => a.scope == AXPEntityCommandScope.Individual);
530
- });
532
+ this.primaryRowActions = computed(() => this.allActions().filter((a) => a.scope == AXPEntityCommandScope.Individual && a.priority === 'primary'));
533
+ this.secondaryRowActions = computed(() => this.allActions().filter((a) => a.scope == AXPEntityCommandScope.Individual && a.priority === 'secondary'));
531
534
  //****************** Filter ******************//
532
535
  this.inlineFilters = {
533
536
  field: null,
@@ -639,9 +642,8 @@ class AXPEntityDetailListViewModel {
639
642
  data[relatedColumn] = this.parent.data['id'];
640
643
  }
641
644
  }
642
- debugger;
643
645
  await this.workflow.execute(commandName, {
644
- entity: this.detailEntity()?.source,
646
+ entity: getEntityInfo(this.detailEntity()).source,
645
647
  data: action?.scope == AXPEntityCommandScope.Selected ? this.selectedItems() : data,
646
648
  });
647
649
  }
@@ -692,6 +694,7 @@ class AXPEntityMasterSingleElementViewModel {
692
694
  this.property = this.entity.properties.find(c => c.name == this.propertyView.name);
693
695
  this.name = signal(this.property.name);
694
696
  this.title = signal(this.property.title);
697
+ this.showLabel = signal(this.propertyView.layout?.label?.visible != false);
695
698
  this.description = signal(this.property.description);
696
699
  this.layout = computed(() => {
697
700
  const viewProp = this.entity.interfaces?.master?.single?.properties?.find(c => c.name == this.property.name);
@@ -778,10 +781,10 @@ class AXPEntityMasterSingleViewModel {
778
781
  .pipe(ofType(AXPEntityDeletedEvent))
779
782
  .pipe(takeUntil(this.destroyed))
780
783
  .subscribe((event) => {
781
- if (event.payload.entity == this.entityDef.source &&
784
+ if (event.payload.entity == getEntityInfo(this.entityDef).source &&
782
785
  event.payload.ids.includes(this.context().id)) {
783
786
  this.workflow.execute('show-list-view', {
784
- entity: this.entityDef.source
787
+ entity: getEntityInfo(this.entityDef).source
785
788
  });
786
789
  }
787
790
  });
@@ -789,7 +792,7 @@ class AXPEntityMasterSingleViewModel {
789
792
  .pipe(ofType(AXPEntityModifyEvent))
790
793
  .pipe(takeUntil(this.destroyed))
791
794
  .subscribe(async (event) => {
792
- if (event.payload.entity == this.entityDef.source &&
795
+ if (event.payload.entity == getEntityInfo(this.entityDef).source &&
793
796
  event.payload.values.id === this.context().id) {
794
797
  this.context.set(event.payload.values);
795
798
  }
@@ -800,7 +803,7 @@ class AXPEntityMasterSingleViewModel {
800
803
  switch (commandName) {
801
804
  case 'modify-entity-section': {
802
805
  this.workflow.execute('modify-entity-section', {
803
- entity: this.entityDef.source,
806
+ entity: getEntityInfo(this.entityDef).source,
804
807
  data: {
805
808
  id: this.context().id,
806
809
  properties: data.editableProps().map(m => m.name()),
@@ -812,7 +815,7 @@ class AXPEntityMasterSingleViewModel {
812
815
  {
813
816
  const action = this.actions().find(c => c.name == commandName);
814
817
  this.workflow.execute(commandName, {
815
- entity: this.entityDef.source,
818
+ entity: getEntityInfo(this.entityDef).source,
816
819
  data: action?.scope == AXPEntityCommandScope.Individual ? this.context() : null
817
820
  });
818
821
  }
@@ -970,7 +973,7 @@ class AXPEntityMasterCreateViewModel {
970
973
  }
971
974
  async createNewOne() {
972
975
  await this.workflow.execute('create-entity', {
973
- entity: this.entityDef.source
976
+ entity: getEntityInfo(this.entityDef).source
974
977
  });
975
978
  }
976
979
  }
@@ -1016,7 +1019,6 @@ class AXPEntityMasterListViewModel {
1016
1019
  this.session = this.injector.get(AXPSessionService);
1017
1020
  this.workflow = this.injector.get(AXPWorkflowService);
1018
1021
  this.destroyed = new Subject();
1019
- this.translateService = this.injector.get(AXTranslationService);
1020
1022
  this.events$ = new Subject();
1021
1023
  this.dataSource = new AXDataSource({
1022
1024
  byKey: (key) => {
@@ -1053,7 +1055,7 @@ class AXPEntityMasterListViewModel {
1053
1055
  this.beardcrumbs = computed(() => {
1054
1056
  return [
1055
1057
  {
1056
- title: this.translateService.translateSync('entity.home'),
1058
+ title: 'entity.home',
1057
1059
  icon: 'fa-solid fa-home ax-text-xs ax-me-2',
1058
1060
  url: [`/${this.session.application?.name}`],
1059
1061
  },
@@ -1122,8 +1124,8 @@ class AXPEntityMasterListViewModel {
1122
1124
  return props.map((e) => {
1123
1125
  return {
1124
1126
  name: e.name,
1125
- title: e.title ?? cloneDeep.name,
1126
- dir: 'asc',
1127
+ title: e.title,
1128
+ dir: undefined,
1127
1129
  };
1128
1130
  });
1129
1131
  };
@@ -1137,7 +1139,7 @@ class AXPEntityMasterListViewModel {
1137
1139
  return this.sortedCount() < this.sortableFieldsCount();
1138
1140
  };
1139
1141
  this.sortedCount = () => {
1140
- return this.sortedFields().length;
1142
+ return this.sortedFields().filter((i) => i.dir).length;
1141
1143
  };
1142
1144
  this.sortedFields = signal([]);
1143
1145
  this.views = computed(() => {
@@ -1151,11 +1153,13 @@ class AXPEntityMasterListViewModel {
1151
1153
  .pipe(ofType(AXPEntityDeletedEvent))
1152
1154
  .pipe(takeUntil(this.destroyed))
1153
1155
  .subscribe((event) => {
1154
- if (event.payload.entity == this.entityDef.source) {
1156
+ if (event.payload.entity == getEntityInfo(this.entityDef).source) {
1155
1157
  this.selectedItems.set([]);
1156
1158
  this.events$.next({ action: 'refresh' });
1157
1159
  }
1158
1160
  });
1161
+ console.log(this.sortableFields());
1162
+ this.sortedFields.set(this.sortableFields());
1159
1163
  }
1160
1164
  clearSelection() {
1161
1165
  this.selectedItems.set([]);
@@ -1186,7 +1190,6 @@ class AXPEntityMasterListViewModel {
1186
1190
  operator: f.operator,
1187
1191
  value: f.value,
1188
1192
  }));
1189
- console.log(this.advanceFilters.filters);
1190
1193
  //
1191
1194
  const inline = this.inlineFilters.filters?.length ?? 0;
1192
1195
  const advance = this.advanceFilters.filters?.length ?? 0;
@@ -1240,12 +1243,17 @@ class AXPEntityMasterListViewModel {
1240
1243
  this.sortedFields.set(this.sortedFields().filter((c) => c.name != name));
1241
1244
  }
1242
1245
  applyViewSorts() {
1243
- const fileds = this.view().sorts.map((c) => ({
1244
- name: c.name,
1245
- title: c.name,
1246
- dir: c.dir ?? 'asc',
1247
- }));
1248
- this.sortedFields.set(fileds);
1246
+ const viewSorts = this.view().sorts;
1247
+ this.sortedFields.update((prev) => {
1248
+ const viewSortsMap = new Map(viewSorts.map((vs) => [vs.name, vs]));
1249
+ return prev.map((sf) => {
1250
+ const updatedSort = viewSortsMap.get(sf.name);
1251
+ if (updatedSort) {
1252
+ return { ...updatedSort, title: sf.title };
1253
+ }
1254
+ return sf;
1255
+ });
1256
+ });
1249
1257
  }
1250
1258
  //****************** Views ******************//
1251
1259
  setView(viewName = null) {
@@ -1264,7 +1272,7 @@ class AXPEntityMasterListViewModel {
1264
1272
  : c.scope == AXPEntityCommandScope.Individual) ||
1265
1273
  c.scope == AXPEntityCommandScope.TypeLevel));
1266
1274
  await this.workflow.execute(commandName, {
1267
- entity: this.entityDef.source,
1275
+ entity: getEntityInfo(this.entityDef).source,
1268
1276
  data: action?.scope == AXPEntityCommandScope.Selected ? this.selectedItems() : data,
1269
1277
  });
1270
1278
  }
@@ -1294,7 +1302,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
1294
1302
  args: [{ providedIn: 'root' }]
1295
1303
  }] });
1296
1304
  const AXPEntityListViewModelResolver = (route, state, service = inject(AXPEntityListViewModelFactory)) => {
1297
- const appName = route.parent?.paramMap.get('app');
1298
1305
  const moduleName = route.parent?.paramMap.get('module');
1299
1306
  const entityName = route.paramMap.get('entity');
1300
1307
  //
@@ -1304,65 +1311,101 @@ const AXPEntityListViewModelResolver = (route, state, service = inject(AXPEntity
1304
1311
  class AXPLookupWidgetViewComponent extends AXPWidgetComponent {
1305
1312
  constructor() {
1306
1313
  super(...arguments);
1307
- this.textField = 'title';
1308
- //protected entity: string;
1309
- this.entity = computed(() => this.options()['entity']);
1310
1314
  this.formatService = inject(AXFormatService);
1311
1315
  this.entityResolver = inject(AXPEntityResolver);
1312
- this.displayText = signal('');
1316
+ this.entity = computed(() => this.options()['entity']);
1317
+ this.multiple = computed(() => this.options()['multiple']);
1318
+ this.valueField = computed(() => this.options()['valueField'] ?? 'id');
1319
+ this.textField = computed(() => this.options()['textField'] ?? 'title');
1320
+ this.displayField = computed(() => {
1321
+ return this.textField() ?? this.entityDef()?.formats.lookup ?? this.entityDef()?.properties.find((c) => c.name != 'id')?.name ?? 'title';
1322
+ });
1313
1323
  this.loading = signal(false);
1314
- this.selectedItem = signal(null);
1324
+ this.entityDef = signal(null);
1325
+ this.displayItems = signal([]);
1326
+ this.efEntity = effect(async () => {
1327
+ const [module, entity] = this.entity().split('.');
1328
+ this.entityDef.set(await this.entityResolver.get(module, entity));
1329
+ }, { allowSignalWrites: true });
1330
+ this.efDisplay = effect(async () => {
1331
+ const value = this.getValue();
1332
+ if (isNil(value)) {
1333
+ this.displayItems.set([]);
1334
+ }
1335
+ else {
1336
+ const items = Array.isArray(value)
1337
+ ? value.map(async (item) => await this.extractItem(item))
1338
+ : [await this.extractItem(value)];
1339
+ this.displayItems.set(items);
1340
+ }
1341
+ }, { allowSignalWrites: true });
1315
1342
  }
1316
- async ngOnInit() {
1317
- super.ngOnInit();
1318
- const [module, entity] = this.entity().split('.');
1319
- this.entityDef = await this.entityResolver.get(module, entity);
1320
- this.textField =
1321
- this.entityDef?.formats.lookup ?? this.entityDef?.properties.find((c) => c.name != 'id')?.name ?? 'title';
1322
- const value = this.getValue();
1323
- if (typeof value == 'object' && !Array.isArray(value))
1324
- this.displayText.set(this.formatService.format(this.textField, 'string', value));
1325
- else if (value != null) {
1326
- this.setItem();
1343
+ async extractItem(item) {
1344
+ if (typeof item == 'object') {
1345
+ return {
1346
+ id: item[this.valueField()],
1347
+ text: this.formatService.format(this.displayField(), 'string', item),
1348
+ };
1349
+ }
1350
+ else {
1351
+ const byKey = this.entityDef()?.queries.byKey?.execute;
1352
+ if (byKey) {
1353
+ this.loading.set(true);
1354
+ const item = await byKey(this.getValue());
1355
+ this.loading.set(false);
1356
+ return {
1357
+ id: item[this.valueField()],
1358
+ text: this.formatService.format(this.textField(), 'string', item),
1359
+ };
1360
+ }
1361
+ return {
1362
+ id: item,
1363
+ text: item
1364
+ };
1327
1365
  }
1328
1366
  }
1329
- async setItem() {
1330
- this.loading.set(true);
1331
- const byKey = this.entityDef?.queries.byKey?.execute;
1332
- const item = await byKey(this.getValue());
1333
- const text = this.formatService.format(this.textField, 'string', item);
1334
- this.loading.set(false);
1335
- this.displayText.set(text);
1367
+ get __class() {
1368
+ const cls = {};
1369
+ cls[`ax-flex`] = true;
1370
+ cls[`ax-gap-1`] = true;
1371
+ return cls;
1336
1372
  }
1337
1373
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1338
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLookupWidgetViewComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1339
- <span>
1340
- @if(loading()){
1374
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLookupWidgetViewComponent, isStandalone: true, selector: "axp-lookup-widget-view", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
1375
+ @if(loading())
1376
+ {
1341
1377
  <ax-loading></ax-loading>
1342
- }@else{
1343
- {{ displayText() }}
1378
+ }
1379
+ @else{
1380
+ @for (item of displayItems(); track $index) {
1381
+ <ax-badge [look]="'twotone'" [text]="item.text" color="primary"></ax-badge>
1344
1382
  }
1345
- </span>
1346
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1383
+ }
1384
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1347
1385
  }
1348
1386
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetViewComponent, decorators: [{
1349
1387
  type: Component,
1350
1388
  args: [{
1389
+ selector: 'axp-lookup-widget-view',
1351
1390
  template: `
1352
- <span>
1353
- @if(loading()){
1391
+ @if(loading())
1392
+ {
1354
1393
  <ax-loading></ax-loading>
1355
- }@else{
1356
- {{ displayText() }}
1394
+ }
1395
+ @else{
1396
+ @for (item of displayItems(); track $index) {
1397
+ <ax-badge [look]="'twotone'" [text]="item.text" color="primary"></ax-badge>
1357
1398
  }
1358
- </span>
1399
+ }
1359
1400
  `,
1360
1401
  standalone: true,
1361
1402
  changeDetection: ChangeDetectionStrategy.OnPush,
1362
- imports: [CommonModule, AXLoadingModule],
1363
- inputs: [],
1403
+ imports: [CommonModule, AXLoadingModule, AXBadgeModule],
1364
1404
  }]
1365
- }] });
1405
+ }], propDecorators: { __class: [{
1406
+ type: HostBinding,
1407
+ args: ['class']
1408
+ }] } });
1366
1409
 
1367
1410
  var lookupWidgetView_component = /*#__PURE__*/Object.freeze({
1368
1411
  __proto__: null,
@@ -1435,7 +1478,7 @@ class AXPLookupWidgetSelectorComponent extends AXBasePageComponent {
1435
1478
  >
1436
1479
  <!-- <ax-select-column fixed="start" [width]="'50px'"></ax-select-column> -->
1437
1480
  @for(col of vm.columns();track col.name) { @if(col.visible) {
1438
- <axp-widget-column-renderer [caption]="col.title" [node]="col.node()"></axp-widget-column-renderer>
1481
+ <axp-widget-column-renderer [caption]="col.title | translate | async" [node]="col.node()"></axp-widget-column-renderer>
1439
1482
  } }
1440
1483
  </ax-data-table>
1441
1484
  </div>
@@ -1470,7 +1513,7 @@ class AXPLookupWidgetSelectorComponent extends AXBasePageComponent {
1470
1513
  }
1471
1514
  </ax-suffix>
1472
1515
  </ax-footer>
1473
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i2.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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i6.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "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", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1516
+ `, 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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i6.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "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", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1474
1517
  }
1475
1518
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetSelectorComponent, decorators: [{
1476
1519
  type: Component,
@@ -1502,7 +1545,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
1502
1545
  >
1503
1546
  <!-- <ax-select-column fixed="start" [width]="'50px'"></ax-select-column> -->
1504
1547
  @for(col of vm.columns();track col.name) { @if(col.visible) {
1505
- <axp-widget-column-renderer [caption]="col.title" [node]="col.node()"></axp-widget-column-renderer>
1548
+ <axp-widget-column-renderer [caption]="col.title | translate | async" [node]="col.node()"></axp-widget-column-renderer>
1506
1549
  } }
1507
1550
  </ax-data-table>
1508
1551
  </div>
@@ -1572,55 +1615,55 @@ class AXPLookupWidgetSelectorViewModel {
1572
1615
  return func(e);
1573
1616
  },
1574
1617
  pageSize: 10,
1575
- key: 'id'
1618
+ key: 'id',
1576
1619
  });
1577
1620
  this.canCreate = computed(() => {
1578
1621
  return this.entityDef.commands?.create?.execute != null;
1579
1622
  });
1580
1623
  this.inlineFiltersPlaceholders = computed(() => {
1581
- return this.entityDef.properties.filter(p => p.options?.filter?.inline?.enabled).map(c => c.title ?? c.name);
1624
+ return (this.entityDef?.properties.filter((p) => p.options?.filter?.inline?.enabled).map((c) => c.title ?? c.name) ?? []);
1582
1625
  });
1583
1626
  this.hasInlineFilters = computed(() => {
1584
1627
  return this.inlineFiltersPlaceholders().length > 0;
1585
1628
  });
1586
1629
  this.columns = () => {
1587
1630
  const listColumns = this.entityDef.columns ?? [];
1588
- const columns = listColumns?.map(c => c.name) ?? [];
1589
- const props = this.entityDef.properties.filter(p => p.schema.hidden != true);
1590
- const displayColumns = props.filter(p => columns.some(c => c == p.name));
1591
- return displayColumns.map(p => {
1592
- return new AXPEntityListViewColumnViewModel(p, listColumns?.find(c => c.name == p.name));
1631
+ const columns = listColumns?.map((c) => c.name) ?? [];
1632
+ const props = this.entityDef.properties.filter((p) => p.schema.hidden != true);
1633
+ const displayColumns = props.filter((p) => columns.some((c) => c == p.name));
1634
+ return displayColumns.map((p) => {
1635
+ return new AXPEntityListViewColumnViewModel(p, listColumns?.find((c) => c.name == p.name));
1593
1636
  });
1594
1637
  };
1595
1638
  this.inlineFilters = {
1596
1639
  field: null,
1597
1640
  logic: 'or',
1598
1641
  operator: null,
1599
- filters: []
1642
+ filters: [],
1600
1643
  };
1601
1644
  this.advanceFilters = {
1602
1645
  field: null,
1603
1646
  logic: 'and',
1604
1647
  operator: null,
1605
- filters: []
1648
+ filters: [],
1606
1649
  };
1607
1650
  }
1608
1651
  async create() {
1609
1652
  await this.workflow.execute('create-entity', {
1610
- entity: this.entityDef.source,
1653
+ entity: getEntityInfo(this.entityDef).source,
1611
1654
  });
1612
1655
  }
1613
1656
  applyInlineFilter(value, refresh = true) {
1614
- const props = this.entityDef.properties.filter(c => c.options?.filter?.inline?.enabled);
1657
+ const props = this.entityDef.properties.filter((c) => c.options?.filter?.inline?.enabled);
1615
1658
  this.inlineFilters.filters = [];
1616
1659
  if (value) {
1617
- props.forEach(p => {
1660
+ props.forEach((p) => {
1618
1661
  this.inlineFilters.filters?.push({
1619
1662
  field: p.name,
1620
1663
  operator: {
1621
- type: 'contains'
1664
+ type: 'contains',
1622
1665
  },
1623
- value
1666
+ value,
1624
1667
  });
1625
1668
  });
1626
1669
  }
@@ -1648,7 +1691,7 @@ class AXPLookupWidgetSelectorViewModel {
1648
1691
  field: null,
1649
1692
  logic: 'and',
1650
1693
  operator: null,
1651
- filters: filters
1694
+ filters: filters,
1652
1695
  });
1653
1696
  // Refresh the dataSource
1654
1697
  this.dataSource.refresh();
@@ -1656,17 +1699,13 @@ class AXPLookupWidgetSelectorViewModel {
1656
1699
  async find(value) {
1657
1700
  this.applyInlineFilter(value.trim(), false);
1658
1701
  const func = this.entityDef.queries.list?.execute;
1659
- return await func({ filter: this.inlineFilters, take: 10 }) ?? [];
1702
+ return (await func({ filter: this.inlineFilters, take: 10 })) ?? [];
1660
1703
  }
1661
1704
  }
1662
1705
 
1663
1706
  class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1664
1707
  constructor() {
1665
1708
  super(...arguments);
1666
- this.expose = computed(() => this.options()['expose']);
1667
- this.entity = computed(() => this.options()['entity']);
1668
- this.textField = signal('');
1669
- this.validationRules = [];
1670
1709
  this.injector = inject(Injector);
1671
1710
  this.entityResolver = inject(AXPEntityResolver);
1672
1711
  this.formatService = inject(AXFormatService);
@@ -1674,6 +1713,13 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1674
1713
  this.builderService = inject(AXPLayoutBuilderService);
1675
1714
  this.destroyRef = inject(DestroyRef);
1676
1715
  this.translateService = inject(AXTranslationService);
1716
+ this.expose = computed(() => this.options()['expose']);
1717
+ this.entity = computed(() => this.options()['entity']);
1718
+ this.validationRules = computed(() => this.options()["validationRules"] ?? []);
1719
+ this.textField = computed(() => {
1720
+ return this.entityDef()?.formats.lookup ?? this.entityDef()?.properties.find((c) => c.name != 'id')?.name ?? 'title';
1721
+ });
1722
+ this.entityDef = signal(null);
1677
1723
  this.searchTerm = signal(null);
1678
1724
  this.displayText = signal('');
1679
1725
  this.selectedItem = signal(null);
@@ -1683,35 +1729,42 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1683
1729
  this.placeholder = computed(() => {
1684
1730
  return (this.translateService.translateSync('widget.lookup.search') + this.vm()?.inlineFiltersPlaceholders().join(', '));
1685
1731
  });
1686
- }
1687
- async ngOnInit() {
1732
+ this.efDisplay = effect(async () => {
1733
+ const value = this.getValue();
1734
+ if (isNil(value)) {
1735
+ this.displayText.set('');
1736
+ }
1737
+ else if (typeof value == 'object' && !Array.isArray(value)) {
1738
+ this.displayText.set(this.formatService.format(this.textField(), 'string', value));
1739
+ }
1740
+ else if (value != null) {
1741
+ await this.findByValue();
1742
+ }
1743
+ }, { allowSignalWrites: true });
1744
+ this.efEntity = effect(async () => {
1745
+ const [module, entity] = this.entity().split('.');
1746
+ this.entityDef.set(await this.entityResolver.get(module, entity));
1747
+ this.vm.set(new AXPLookupWidgetSelectorViewModel(this.injector, this.entityDef(), this.filter));
1748
+ }, { allowSignalWrites: true });
1749
+ }
1750
+ ngOnInit() {
1688
1751
  super.ngOnInit();
1689
1752
  //
1690
- const [module, entity] = this.entity().split('.');
1691
- this.entityDef = await this.entityResolver.get(module, entity);
1692
- //
1693
- this.vm.set(new AXPLookupWidgetSelectorViewModel(this.injector, this.entityDef, this.filter));
1694
- //
1695
- this.textField.set(this.entityDef?.formats.lookup ?? this.entityDef?.properties.find((c) => c.name != 'id')?.name ?? 'title');
1696
- const value = this.getValue();
1697
- if (typeof value == 'object' && !Array.isArray(value))
1698
- this.displayText.set(this.formatService.format(this.textField(), 'string', value));
1699
- else if (value != null) {
1700
- await this.findByValue();
1701
- }
1702
- //
1703
1753
  this.builderService.onChanged.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(async (c) => {
1704
1754
  if (c.path == this.path) {
1705
- if (this.getValue())
1755
+ if (this.getValue()) {
1706
1756
  await this.findByValue();
1757
+ }
1707
1758
  }
1708
1759
  });
1709
1760
  }
1710
1761
  async findByValue() {
1711
1762
  this.isLoading.set(true);
1712
- const byKey = this.entityDef?.queries.byKey?.execute;
1713
- const item = await byKey(this.getValue());
1714
- this.setItems(item);
1763
+ const byKey = this.entityDef()?.queries.byKey?.execute;
1764
+ if (byKey) {
1765
+ const item = await byKey(this.getValue());
1766
+ this.setItems(item);
1767
+ }
1715
1768
  this.isLoading.set(false);
1716
1769
  }
1717
1770
  handleOnClick(e) {
@@ -1721,10 +1774,10 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1721
1774
  this.isOpen.set(true);
1722
1775
  this.popupService
1723
1776
  .open(AXPLookupWidgetSelectorComponent, {
1724
- title: this.translateService.translateSync('widget.lookup.search') + ' ' + this.entityDef?.formats.plural,
1777
+ title: `${this.translateService.translateSync('widget.lookup.search')} ${this.translateService.translateSync(this.entityDef()?.formats.plural)}`,
1725
1778
  size: (this.vm()?.columns().length ?? 0) > 3 ? 'lg' : 'md',
1726
1779
  data: {
1727
- vm: new AXPLookupWidgetSelectorViewModel(this.injector, this.entityDef, this.filter),
1780
+ vm: new AXPLookupWidgetSelectorViewModel(this.injector, this.entityDef(), this.filter),
1728
1781
  searchTerm: this.searchTerm() == this.displayText() ? null : this.searchTerm(),
1729
1782
  },
1730
1783
  })
@@ -1804,15 +1857,14 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1804
1857
  }
1805
1858
  handleClearClick() {
1806
1859
  this.clear();
1807
- this.setValue(null);
1808
1860
  }
1809
1861
  clear() {
1862
+ this.setValue(null);
1810
1863
  this.searchTerm.set('');
1811
- this.displayText.set('');
1812
1864
  this.selectedItem.set(null);
1813
1865
  }
1814
1866
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1815
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLookupWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "textbox", first: true, predicate: AXTextBoxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
1867
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLookupWidgetEditComponent, isStandalone: true, selector: "axp-lookup-widget-edit", viewQueries: [{ propertyName: "textbox", first: true, predicate: AXTextBoxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
1816
1868
  <ax-text-box
1817
1869
  [ngModel]="displayText()"
1818
1870
  (onValueChanged)="handleValueChange($event)"
@@ -1820,7 +1872,7 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1820
1872
  (onKeyUp)="handleKeyDown($event)"
1821
1873
  (onBlur)="handleOnBlur($event)"
1822
1874
  >
1823
- @for (validation of validationRules; track $index) {
1875
+ @for (validation of validationRules(); track $index) {
1824
1876
  <ax-validation-rule
1825
1877
  [rule]="validation.rule"
1826
1878
  [message]="validation.options?.message"
@@ -1839,11 +1891,12 @@ class AXPLookupWidgetEditComponent extends AXPWidgetComponent {
1839
1891
  </ax-button>
1840
1892
  </ax-suffix>
1841
1893
  </ax-text-box>
1842
- `, 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$1.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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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 }); }
1894
+ `, 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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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 }); }
1843
1895
  }
1844
1896
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetEditComponent, decorators: [{
1845
1897
  type: Component,
1846
1898
  args: [{
1899
+ selector: 'axp-lookup-widget-edit',
1847
1900
  template: `
1848
1901
  <ax-text-box
1849
1902
  [ngModel]="displayText()"
@@ -1852,7 +1905,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
1852
1905
  (onKeyUp)="handleKeyDown($event)"
1853
1906
  (onBlur)="handleOnBlur($event)"
1854
1907
  >
1855
- @for (validation of validationRules; track $index) {
1908
+ @for (validation of validationRules(); track $index) {
1856
1909
  <ax-validation-rule
1857
1910
  [rule]="validation.rule"
1858
1911
  [message]="validation.options?.message"
@@ -1918,15 +1971,19 @@ var lookupWidgetFilter_component = /*#__PURE__*/Object.freeze({
1918
1971
 
1919
1972
  class AXPLookupWidgetColumnComponent extends AXPColumnWidgetComponent {
1920
1973
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1921
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPLookupWidgetColumnComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: `{{rawValue}}`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1974
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPLookupWidgetColumnComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: `
1975
+ <ax-badge [look]="'twotone'" [text]="rawValue" color="primary"></ax-badge>
1976
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1922
1977
  }
1923
1978
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLookupWidgetColumnComponent, decorators: [{
1924
1979
  type: Component,
1925
1980
  args: [{
1926
- template: `{{rawValue}}`,
1981
+ template: `
1982
+ <ax-badge [look]="'twotone'" [text]="rawValue" color="primary"></ax-badge>
1983
+ `,
1927
1984
  standalone: true,
1928
1985
  changeDetection: ChangeDetectionStrategy.OnPush,
1929
- imports: [CommonModule],
1986
+ imports: [CommonModule, AXBadgeModule],
1930
1987
  inputs: ['rawValue']
1931
1988
  }]
1932
1989
  }] });
@@ -2081,7 +2138,7 @@ class AXPWidgetSelectorWidgetEditComponent extends AXPWidgetComponent {
2081
2138
  <axp-widget-property-viewer [widget]="selectedWidgetNode()!" (onChanged)="handleChangeWidget($event)">
2082
2139
  </axp-widget-property-viewer>
2083
2140
  }
2084
- `, 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$1.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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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 }); }
2141
+ `, 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", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "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 }); }
2085
2142
  }
2086
2143
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetSelectorWidgetEditComponent, decorators: [{
2087
2144
  type: Component,
@@ -2436,9 +2493,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
2436
2493
  }]
2437
2494
  }] });
2438
2495
 
2496
+ class AXPEntityService {
2497
+ constructor() {
2498
+ this.sessionService = inject(AXPSessionService);
2499
+ }
2500
+ createPath(module, entity, path = 'list') {
2501
+ return `/${this.sessionService.application?.name}/m/${module}/e/${entity}/${path}`;
2502
+ }
2503
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPEntityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2504
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPEntityService, providedIn: 'root' }); }
2505
+ }
2506
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPEntityService, decorators: [{
2507
+ type: Injectable,
2508
+ args: [{ providedIn: 'root' }]
2509
+ }] });
2510
+
2439
2511
  /**
2440
2512
  * Generated bundle index. Do not edit.
2441
2513
  */
2442
2514
 
2443
- export { AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDefinitionRegistryService, AXPEntityDetailListViewModel, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityModule, AXPEntityResolver, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER };
2515
+ export { AXPEntityCreateViewElementViewModel, AXPEntityCreateViewModelFactory, AXPEntityCreateViewSectionViewModel, AXPEntityDefinitionRegistryService, AXPEntityDetailListViewModel, AXPEntityDetailViewModelFactory, AXPEntityDetailViewModelResolver, AXPEntityListViewModelFactory, AXPEntityListViewModelResolver, AXPEntityMasterCreateViewModel, AXPEntityMasterListViewModel, AXPEntityMasterListViewQueryViewModel, AXPEntityMasterSingleElementViewModel, AXPEntityMasterSingleViewGroupViewModel, AXPEntityMasterSingleViewModel, AXPEntityMasterUpdateElementViewModel, AXPEntityMasterUpdateViewModel, AXPEntityMasterUpdateViewModelFactory, AXPEntityModule, AXPEntityResolver, AXPEntityService, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER };
2444
2516
  //# sourceMappingURL=acorex-platform-layout-entity.mjs.map