@acorex/platform 18.2.1 → 18.2.3

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 (454) hide show
  1. package/common/lib/app/application.types.d.ts +8 -0
  2. package/common/lib/app/operators.d.ts +1 -0
  3. package/common/lib/common.module.d.ts +6 -7
  4. package/common/lib/data/entity-storage-service.d.ts +0 -1
  5. package/common/lib/data/filter-middleware.service.d.ts +28 -0
  6. package/common/lib/data/index.d.ts +3 -1
  7. package/common/lib/data/operators.service.d.ts +14 -0
  8. package/common/lib/layout/index.d.ts +0 -2
  9. package/common/lib/layout/menu/index.d.ts +0 -1
  10. package/common/lib/layout/menu/menu.provider.d.ts +11 -4
  11. package/common/lib/layout/menu/menu.service.d.ts +8 -2
  12. package/common/lib/layout/menu/menu.types.d.ts +9 -6
  13. package/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.d.ts +0 -2
  14. package/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.d.ts +1 -0
  15. package/common/lib/schema/widgets/email/email-widget-edit.component.d.ts +0 -2
  16. package/common/lib/schema/widgets/phone/phone-widget-edit.component.d.ts +0 -2
  17. package/common/lib/schema/widgets/text/text-widget-edit.component.d.ts +0 -2
  18. package/common/lib/settings/index.d.ts +2 -1
  19. package/common/lib/settings/setting-definition.provider.d.ts +19 -0
  20. package/common/lib/settings/settings.types.d.ts +51 -0
  21. package/common/lib/utils/index.d.ts +0 -1
  22. package/esm2022/common/lib/app/application.types.mjs +4 -4
  23. package/esm2022/common/lib/app/operators.mjs +16 -1
  24. package/esm2022/common/lib/common.module.mjs +23 -12
  25. package/esm2022/common/lib/data/entity-storage-service.mjs +4 -4
  26. package/esm2022/common/lib/data/filter-middleware.service.mjs +53 -0
  27. package/esm2022/common/lib/data/index.mjs +4 -2
  28. package/esm2022/common/lib/data/operators.service.mjs +15 -0
  29. package/esm2022/common/lib/layout/index.mjs +1 -3
  30. package/esm2022/common/lib/layout/menu/index.mjs +1 -2
  31. package/esm2022/common/lib/layout/menu/menu.provider.mjs +105 -24
  32. package/esm2022/common/lib/layout/menu/menu.service.mjs +43 -11
  33. package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
  34. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +2 -2
  35. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +2 -2
  36. package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +2 -2
  37. package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +2 -2
  38. package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +22 -22
  39. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +7 -8
  40. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +47 -25
  41. package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +6 -7
  42. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +2 -2
  43. package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +2 -2
  44. package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +6 -7
  45. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +2 -2
  46. package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +6 -7
  47. package/esm2022/common/lib/settings/index.mjs +3 -2
  48. package/esm2022/common/lib/settings/setting-definition.provider.mjs +183 -0
  49. package/esm2022/common/lib/settings/settings.types.mjs +1 -1
  50. package/esm2022/common/lib/utils/data-generator.mjs +1 -1
  51. package/esm2022/common/lib/utils/index.mjs +1 -2
  52. package/esm2022/common/lib/workflows/common.workflow.mjs +5 -3
  53. package/esm2022/layout/builder/lib/builder/builder.service.mjs +3 -2
  54. package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +3 -1
  55. package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +7 -5
  56. package/esm2022/layout/builder/lib/builder/widget.types.mjs +17 -8
  57. package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +61 -34
  58. package/esm2022/layout/designer/lib/designer/components/breadcrumbs/breadcrumbs.component.mjs +27 -32
  59. package/esm2022/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.mjs +1 -1
  60. package/esm2022/layout/designer/lib/designer/components/grid-drawer/grid-drawer.component.mjs +2 -2
  61. package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +34 -14
  62. package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +23 -23
  63. package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +3 -3
  64. package/esm2022/layout/designer/lib/designer/designer.component.mjs +10 -4
  65. package/esm2022/layout/designer/lib/designer/index.mjs +2 -1
  66. package/esm2022/layout/designer/lib/designer/shared/designer-connector.service.mjs +5 -6
  67. package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +158 -61
  68. package/esm2022/layout/designer/lib/designer/shared/designer.types.mjs +1 -1
  69. package/esm2022/layout/designer/lib/designer/shared/generic-commands.types.mjs +52 -0
  70. package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +32 -38
  71. package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +3 -3
  72. package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +3 -3
  73. package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +10 -9
  74. package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +4 -3
  75. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +26 -20
  76. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +5 -3
  77. package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +3 -3
  78. package/esm2022/layout/entity/lib/entity.module.mjs +12 -1
  79. package/esm2022/layout/entity/lib/entity.viewmodel.mjs +7 -5
  80. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +10 -4
  81. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +42 -32
  82. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +3 -3
  83. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +1 -2
  84. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +79 -40
  85. package/esm2022/layout/setting/acorex-platform-layout-setting.mjs +5 -0
  86. package/esm2022/layout/setting/index.mjs +2 -0
  87. package/esm2022/layout/setting/lib/setting.viewmodel.mjs +50 -0
  88. package/esm2022/layouts/lib/admin/admin.module.mjs +17 -5
  89. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +2 -2
  90. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +3 -3
  91. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +4 -3
  92. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +8 -23
  93. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +1 -1
  94. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +2 -6
  95. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +4 -5
  96. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +8 -11
  97. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +12 -10
  98. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +2 -2
  99. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +3 -3
  100. package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +1 -3
  101. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +2 -2
  102. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +2 -2
  103. package/esm2022/themes/default/index.mjs +2 -1
  104. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +39 -25
  105. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +2 -2
  106. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +6 -9
  107. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +2 -6
  108. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +24 -18
  109. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +2 -2
  110. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +6 -8
  111. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +3 -3
  112. package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +6 -8
  113. package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +3 -3
  114. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +11 -40
  115. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +3 -2
  116. package/esm2022/themes/default/lib/layouts/setting-layout/convert-setting-data.mjs +49 -0
  117. package/esm2022/themes/default/lib/layouts/setting-layout/index.mjs +3 -0
  118. package/esm2022/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.mjs +104 -0
  119. package/esm2022/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.mjs +44 -0
  120. package/esm2022/themes/shared/lib/services/theme.service.mjs +183 -19
  121. package/esm2022/widgets/lib/properties/editors.props.mjs +2 -2
  122. package/esm2022/widgets/lib/properties/layout.props.mjs +13 -13
  123. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-column.component.mjs +20 -0
  124. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-designer.component.mjs +18 -0
  125. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.mjs +24 -0
  126. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-filter.component.mjs +20 -0
  127. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-print.component.mjs +19 -0
  128. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-view.component.mjs +22 -0
  129. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.mjs +31 -0
  130. package/esm2022/widgets/lib/widgets/advance/cron-job/index.mjs +8 -0
  131. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +2 -2
  132. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +44 -20
  133. package/esm2022/widgets/lib/widgets/editors/contact/popup-component.mjs +1 -1
  134. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +1 -2
  135. package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +1 -2
  136. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +18 -25
  137. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.mjs +7 -11
  138. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +7 -12
  139. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.mjs +24 -15
  140. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +14 -7
  141. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.mjs +3 -3
  142. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.mjs +29 -67
  143. package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +32 -17
  144. package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +6 -7
  145. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +1 -22
  146. package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +3 -3
  147. package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +76 -78
  148. package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +9 -9
  149. package/esm2022/widgets/lib/widgets/layout/template/template-picker/template-picker.component.mjs +120 -0
  150. package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +65 -24
  151. package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +27 -7
  152. package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +18 -1
  153. package/esm2022/widgets/lib/widgets.module.mjs +5 -2
  154. package/fesm2022/acorex-platform-auth.mjs +1 -1
  155. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BYEjzXpW.mjs → acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs} +4 -6
  156. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BYEjzXpW.mjs.map → acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs.map} +1 -1
  157. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-CfHELBLm.mjs → acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs} +5 -7
  158. package/fesm2022/acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs.map +1 -0
  159. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-DRDiIxsn.mjs → acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs} +5 -7
  160. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs.map +1 -0
  161. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs → acorex-platform-common-change-password.component-g_GEw3IZ.mjs} +4 -4
  162. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs.map → acorex-platform-common-change-password.component-g_GEw3IZ.mjs.map} +1 -1
  163. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Bn0tnHyT.mjs → acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs} +5 -7
  164. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Bn0tnHyT.mjs.map → acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs.map} +1 -1
  165. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-BuS0Pg-j.mjs → acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs} +6 -8
  166. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs.map +1 -0
  167. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-D7kmxXjj.mjs → acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs} +5 -7
  168. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-D7kmxXjj.mjs.map → acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs.map} +1 -1
  169. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-CtS98tbi.mjs → acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs} +5 -7
  170. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs.map +1 -0
  171. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-Dm4QofDq.mjs → acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs} +10 -14
  172. package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs.map +1 -0
  173. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-DDny36SE.mjs → acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs} +50 -30
  174. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs.map +1 -0
  175. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-lzf0fwxr.mjs → acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs} +5 -7
  176. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-lzf0fwxr.mjs.map → acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs.map} +1 -1
  177. package/fesm2022/{acorex-platform-common-email-widget-column.component-Cy_Kj9po.mjs → acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs} +5 -7
  178. package/fesm2022/acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs.map +1 -0
  179. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DTxCX3ok.mjs → acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs} +10 -13
  180. package/fesm2022/acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs.map +1 -0
  181. package/fesm2022/{acorex-platform-common-email-widget-view.component-CvEHLvcT.mjs → acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs} +4 -6
  182. package/fesm2022/{acorex-platform-common-email-widget-view.component-CvEHLvcT.mjs.map → acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs.map} +1 -1
  183. package/fesm2022/{acorex-platform-common-file-widget-column.component-GtbElxmS.mjs → acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs} +5 -7
  184. package/fesm2022/acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs.map +1 -0
  185. package/fesm2022/{acorex-platform-common-file-widget-edit.component-3fR5jRFv.mjs → acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs} +5 -7
  186. package/fesm2022/{acorex-platform-common-file-widget-edit.component-3fR5jRFv.mjs.map → acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs.map} +1 -1
  187. package/fesm2022/{acorex-platform-common-file-widget-filter.component-B7etTIuq.mjs → acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs} +5 -7
  188. package/fesm2022/acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs.map +1 -0
  189. package/fesm2022/{acorex-platform-common-file-widget-view.component-RsQQjlL7.mjs → acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs} +5 -7
  190. package/fesm2022/{acorex-platform-common-file-widget-view.component-RsQQjlL7.mjs.map → acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs.map} +1 -1
  191. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CixJEDUT.mjs → acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs} +4 -6
  192. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CixJEDUT.mjs.map → acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs.map} +1 -1
  193. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-1wzY6U5s.mjs → acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs} +5 -7
  194. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs.map +1 -0
  195. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-YaLJU3Cv.mjs → acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs} +4 -6
  196. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-YaLJU3Cv.mjs.map → acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs.map} +1 -1
  197. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-BeiJZnEv.mjs → acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs} +4 -6
  198. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs.map +1 -0
  199. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-C5DZ-cez.mjs → acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs} +5 -7
  200. package/fesm2022/acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs.map +1 -0
  201. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-uopyJIC1.mjs → acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs} +5 -7
  202. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-uopyJIC1.mjs.map → acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs.map} +1 -1
  203. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-D1lrIkz4.mjs → acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs} +5 -7
  204. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs.map +1 -0
  205. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-DTNcGNir.mjs → acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs} +5 -7
  206. package/fesm2022/acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs.map +1 -0
  207. package/fesm2022/{acorex-platform-common-map-widget-edit.component-h4SRiV6_.mjs → acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs} +5 -7
  208. package/fesm2022/acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs.map +1 -0
  209. package/fesm2022/{acorex-platform-common-map-widget-view.component-Deos8gVy.mjs → acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs} +5 -7
  210. package/fesm2022/acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs.map +1 -0
  211. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-DN8dFLZD.mjs → acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs} +5 -7
  212. package/fesm2022/acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs.map +1 -0
  213. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-m_zxHCw5.mjs → acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs} +5 -7
  214. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs.map +1 -0
  215. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DA9MiNb9.mjs → acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs} +5 -7
  216. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DA9MiNb9.mjs.map → acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs.map} +1 -1
  217. package/fesm2022/{acorex-platform-common-number-widget-edit.component-B0if4vR4.mjs → acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs} +5 -7
  218. package/fesm2022/acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs.map +1 -0
  219. package/fesm2022/{acorex-platform-common-number-widget-filter.component-BgTJbR2u.mjs → acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs} +6 -8
  220. package/fesm2022/acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs.map +1 -0
  221. package/fesm2022/{acorex-platform-common-number-widget-view.component-Du1oQYBH.mjs → acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs} +5 -7
  222. package/fesm2022/acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs.map +1 -0
  223. package/fesm2022/{acorex-platform-common-password-widget-column.component-CEWtRX1S.mjs → acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs} +5 -7
  224. package/fesm2022/{acorex-platform-common-password-widget-column.component-CEWtRX1S.mjs.map → acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs.map} +1 -1
  225. package/fesm2022/{acorex-platform-common-password-widget-edit.component-B-_m6f_C.mjs → acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs} +5 -7
  226. package/fesm2022/acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs.map +1 -0
  227. package/fesm2022/{acorex-platform-common-password-widget-view.component-BVW-Zak-.mjs → acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs} +6 -7
  228. package/fesm2022/{acorex-platform-common-password-widget-view.component-BVW-Zak-.mjs.map → acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs.map} +1 -1
  229. package/fesm2022/{acorex-platform-common-phone-widget-column.component-DGaGGltV.mjs → acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs} +5 -7
  230. package/fesm2022/{acorex-platform-common-phone-widget-column.component-DGaGGltV.mjs.map → acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs.map} +1 -1
  231. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-BNfAQ_4j.mjs → acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs} +9 -12
  232. package/fesm2022/acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs.map +1 -0
  233. package/fesm2022/{acorex-platform-common-phone-widget-view.component-xGygt5Y9.mjs → acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs} +5 -7
  234. package/fesm2022/{acorex-platform-common-phone-widget-view.component-xGygt5Y9.mjs.map → acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs.map} +1 -1
  235. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BJYxnZm2.mjs → acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs} +5 -7
  236. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BJYxnZm2.mjs.map → acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs.map} +1 -1
  237. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-Dvv8JnXl.mjs → acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs} +5 -7
  238. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs.map +1 -0
  239. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-B77Y5luo.mjs → acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs} +5 -7
  240. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs.map +1 -0
  241. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-1zPVFgFG.mjs → acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs} +5 -7
  242. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-1zPVFgFG.mjs.map → acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs.map} +1 -1
  243. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-Tdkf-0cn.mjs → acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs} +6 -8
  244. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs.map +1 -0
  245. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-y2aFk-A6.mjs → acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs} +4 -6
  246. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs.map +1 -0
  247. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-DLc1MHex.mjs → acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs} +5 -7
  248. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs.map +1 -0
  249. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-qUuwwYlj.mjs → acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs} +4 -6
  250. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-qUuwwYlj.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs.map} +1 -1
  251. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-D5XVZ88b.mjs → acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs} +5 -7
  252. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs.map +1 -0
  253. package/fesm2022/{acorex-platform-common-string-widget-filter.component-B9h7CnEz.mjs → acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs} +6 -8
  254. package/fesm2022/acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs.map +1 -0
  255. package/fesm2022/{acorex-platform-common-text-widget-column.component-LFKeHZbS.mjs → acorex-platform-common-text-widget-column.component-DVczwvKA.mjs} +5 -7
  256. package/fesm2022/{acorex-platform-common-text-widget-column.component-LFKeHZbS.mjs.map → acorex-platform-common-text-widget-column.component-DVczwvKA.mjs.map} +1 -1
  257. package/fesm2022/{acorex-platform-common-text-widget-edit.component-BiyTKmvV.mjs → acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs} +10 -14
  258. package/fesm2022/acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs.map +1 -0
  259. package/fesm2022/{acorex-platform-common-text-widget-view.component-BDxpsxE6.mjs → acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs} +5 -7
  260. package/fesm2022/{acorex-platform-common-text-widget-view.component-BDxpsxE6.mjs.map → acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs.map} +1 -1
  261. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-BnmR9hFM.mjs → acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs} +5 -7
  262. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-BnmR9hFM.mjs.map → acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs.map} +1 -1
  263. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-Cz7LayX-.mjs → acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs} +5 -7
  264. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs.map +1 -0
  265. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Cq2-5QUg.mjs → acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs} +5 -7
  266. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Cq2-5QUg.mjs.map → acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs.map} +1 -1
  267. package/fesm2022/acorex-platform-common.mjs +1203 -1069
  268. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  269. package/fesm2022/acorex-platform-layout-builder.mjs +25 -11
  270. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  271. package/fesm2022/acorex-platform-layout-designer.mjs +396 -211
  272. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  273. package/fesm2022/acorex-platform-layout-entity.mjs +186 -113
  274. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  275. package/fesm2022/acorex-platform-layout-setting.mjs +57 -0
  276. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -0
  277. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs → acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs} +3 -3
  278. 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
  279. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs → acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs} +2 -2
  280. 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
  281. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs} +3 -3
  282. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs.map → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs.map} +1 -1
  283. package/fesm2022/acorex-platform-layouts.mjs +47 -55
  284. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  285. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-dByV3T8-.mjs → acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs} +7 -7
  286. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-dByV3T8-.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs.map} +1 -1
  287. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs +301 -0
  288. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs.map +1 -0
  289. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CdwlY0Fa.mjs → acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs} +7 -7
  290. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CdwlY0Fa.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs.map} +1 -1
  291. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs +148 -0
  292. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs.map +1 -0
  293. package/fesm2022/acorex-platform-themes-default.mjs +240 -79
  294. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  295. package/fesm2022/acorex-platform-themes-shared.mjs +184 -20
  296. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  297. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs → acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs} +2 -2
  298. 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
  299. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs} +2 -2
  300. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs.map → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs.map} +1 -1
  301. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs} +3 -3
  302. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs.map → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs.map} +1 -1
  303. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs} +2 -2
  304. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs.map → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs.map} +1 -1
  305. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs → acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs} +2 -2
  306. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs.map → acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs.map} +1 -1
  307. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs → acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs} +2 -2
  308. 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
  309. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs → acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs} +76 -78
  310. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs.map +1 -0
  311. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs} +2 -2
  312. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs.map → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs.map} +1 -1
  313. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs +123 -0
  314. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs.map +1 -0
  315. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs +136 -0
  316. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs.map +1 -0
  317. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs → acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs} +2 -2
  318. 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
  319. package/fesm2022/acorex-platform-widgets.mjs +431 -269
  320. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  321. package/fesm2022/acorex-platform-workflow.mjs +1 -1
  322. package/layout/builder/lib/builder/widget.types.d.ts +4 -3
  323. package/layout/designer/lib/designer/components/board/board.component.d.ts +8 -0
  324. package/layout/designer/lib/designer/designer.component.d.ts +3 -1
  325. package/layout/designer/lib/designer/index.d.ts +1 -0
  326. package/layout/designer/lib/designer/shared/designer-connector.service.d.ts +10 -6
  327. package/layout/designer/lib/designer/shared/designer.service.d.ts +18 -3
  328. package/layout/designer/lib/designer/shared/generic-commands.types.d.ts +9 -0
  329. package/layout/designer/lib/designer/shared/widget-designer-renderer.directive.d.ts +8 -5
  330. package/layout/designer/lib/preview/preview-viewer.component.d.ts +2 -2
  331. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -2
  332. package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +3 -1
  333. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +2 -2
  334. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +3 -3
  335. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -0
  336. package/layout/entity/lib/entity.viewmodel.d.ts +5 -3
  337. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +14 -12
  338. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +13 -10
  339. package/layout/setting/README.md +4 -0
  340. package/layout/setting/index.d.ts +1 -0
  341. package/layout/setting/lib/setting.viewmodel.d.ts +13 -0
  342. package/layouts/lib/admin/admin.module.d.ts +6 -3
  343. package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +42 -9
  344. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.d.ts +0 -2
  345. package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +0 -3
  346. package/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.d.ts +4 -2
  347. package/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.d.ts +0 -1
  348. package/package.json +18 -18
  349. package/themes/default/index.d.ts +1 -0
  350. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +47 -9
  351. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +42 -4
  352. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +0 -2
  353. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.d.ts +1 -1
  354. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +42 -3
  355. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +42 -2
  356. package/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.d.ts +8 -2
  357. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +42 -14
  358. package/themes/default/lib/layouts/setting-layout/convert-setting-data.d.ts +21 -0
  359. package/themes/default/lib/layouts/setting-layout/index.d.ts +2 -0
  360. package/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.d.ts +24 -0
  361. package/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.d.ts +20 -0
  362. package/themes/shared/lib/components/theme-slot.component.d.ts +31 -5
  363. package/themes/shared/lib/services/theme.service.d.ts +45 -5
  364. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-column.component.d.ts +6 -0
  365. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-designer.component.d.ts +6 -0
  366. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.d.ts +8 -0
  367. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-filter.component.d.ts +6 -0
  368. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-print.component.d.ts +6 -0
  369. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-view.component.d.ts +7 -0
  370. package/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.d.ts +7 -0
  371. package/widgets/lib/widgets/advance/cron-job/index.d.ts +7 -0
  372. package/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.d.ts +2 -0
  373. package/widgets/lib/widgets/editors/select/select-box-widget-view.component.d.ts +2 -3
  374. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.d.ts +1 -1
  375. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.d.ts +1 -1
  376. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.d.ts +3 -3
  377. package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +1 -2
  378. package/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.d.ts +1 -1
  379. package/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.d.ts +1 -1
  380. package/widgets/lib/widgets/layout/page/page-widget-designer.component.d.ts +8 -9
  381. package/widgets/lib/widgets/layout/template/template-picker/template-picker.component.d.ts +30 -0
  382. package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +3 -0
  383. package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +1 -0
  384. package/widgets/lib/widgets/layout/template/template.provider.d.ts +3 -0
  385. package/common/lib/layout/layout.service.d.ts +0 -19
  386. package/common/lib/layout/menu/menu.loader.d.ts +0 -17
  387. package/common/lib/layout/theme/store/admin-layout.actions.d.ts +0 -7
  388. package/common/lib/layout/theme/store/admin-layout.effects.d.ts +0 -9
  389. package/common/lib/layout/theme/store/admin-layout.reducers.d.ts +0 -19
  390. package/common/lib/layout/theme/store/admin-layout.selectors.d.ts +0 -4
  391. package/common/lib/layout/theme/store/admin-layout.state.d.ts +0 -11
  392. package/common/lib/layout/theme/store/index.d.ts +0 -5
  393. package/common/lib/utils/router-util.service.d.ts +0 -12
  394. package/esm2022/common/lib/layout/layout.service.mjs +0 -79
  395. package/esm2022/common/lib/layout/menu/menu.loader.mjs +0 -39
  396. package/esm2022/common/lib/layout/theme/store/admin-layout.actions.mjs +0 -11
  397. package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +0 -21
  398. package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +0 -63
  399. package/esm2022/common/lib/layout/theme/store/admin-layout.selectors.mjs +0 -7
  400. package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +0 -13
  401. package/esm2022/common/lib/layout/theme/store/index.mjs +0 -6
  402. package/esm2022/common/lib/utils/router-util.service.mjs +0 -43
  403. package/esm2022/mocks/acorex-platform-mocks.mjs +0 -5
  404. package/esm2022/mocks/index.mjs +0 -7
  405. package/esm2022/mocks/lib/mocks.module.mjs +0 -15
  406. package/esm2022/mocks/lib/services/mocker.service.mjs +0 -114
  407. package/esm2022/mocks/lib/storage/storage.mock.service.mjs +0 -183
  408. package/fesm2022/acorex-platform-common-avatar-widget-view.component-CfHELBLm.mjs.map +0 -1
  409. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-DRDiIxsn.mjs.map +0 -1
  410. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BuS0Pg-j.mjs.map +0 -1
  411. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-CtS98tbi.mjs.map +0 -1
  412. package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-Dm4QofDq.mjs.map +0 -1
  413. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-DDny36SE.mjs.map +0 -1
  414. package/fesm2022/acorex-platform-common-email-widget-column.component-Cy_Kj9po.mjs.map +0 -1
  415. package/fesm2022/acorex-platform-common-email-widget-edit.component-DTxCX3ok.mjs.map +0 -1
  416. package/fesm2022/acorex-platform-common-file-widget-column.component-GtbElxmS.mjs.map +0 -1
  417. package/fesm2022/acorex-platform-common-file-widget-filter.component-B7etTIuq.mjs.map +0 -1
  418. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-1wzY6U5s.mjs.map +0 -1
  419. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BeiJZnEv.mjs.map +0 -1
  420. package/fesm2022/acorex-platform-common-lookup-widget-column.component-C5DZ-cez.mjs.map +0 -1
  421. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-D1lrIkz4.mjs.map +0 -1
  422. package/fesm2022/acorex-platform-common-lookup-widget-view.component-DTNcGNir.mjs.map +0 -1
  423. package/fesm2022/acorex-platform-common-map-widget-edit.component-h4SRiV6_.mjs.map +0 -1
  424. package/fesm2022/acorex-platform-common-map-widget-view.component-Deos8gVy.mjs.map +0 -1
  425. package/fesm2022/acorex-platform-common-messenger-widget-column.component-DN8dFLZD.mjs.map +0 -1
  426. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-m_zxHCw5.mjs.map +0 -1
  427. package/fesm2022/acorex-platform-common-number-widget-edit.component-B0if4vR4.mjs.map +0 -1
  428. package/fesm2022/acorex-platform-common-number-widget-filter.component-BgTJbR2u.mjs.map +0 -1
  429. package/fesm2022/acorex-platform-common-number-widget-view.component-Du1oQYBH.mjs.map +0 -1
  430. package/fesm2022/acorex-platform-common-password-widget-edit.component-B-_m6f_C.mjs.map +0 -1
  431. package/fesm2022/acorex-platform-common-phone-widget-edit.component-BNfAQ_4j.mjs.map +0 -1
  432. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Dvv8JnXl.mjs.map +0 -1
  433. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-B77Y5luo.mjs.map +0 -1
  434. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-Tdkf-0cn.mjs.map +0 -1
  435. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-y2aFk-A6.mjs.map +0 -1
  436. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-DLc1MHex.mjs.map +0 -1
  437. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-D5XVZ88b.mjs.map +0 -1
  438. package/fesm2022/acorex-platform-common-string-widget-filter.component-B9h7CnEz.mjs.map +0 -1
  439. package/fesm2022/acorex-platform-common-text-widget-edit.component-BiyTKmvV.mjs.map +0 -1
  440. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-Cz7LayX-.mjs.map +0 -1
  441. package/fesm2022/acorex-platform-mocks.mjs +0 -319
  442. package/fesm2022/acorex-platform-mocks.mjs.map +0 -1
  443. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-mzb-FV9E.mjs +0 -299
  444. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-mzb-FV9E.mjs.map +0 -1
  445. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-ItkFB3QF.mjs +0 -150
  446. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-ItkFB3QF.mjs.map +0 -1
  447. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs.map +0 -1
  448. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-BWc0_EA0.mjs +0 -96
  449. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-BWc0_EA0.mjs.map +0 -1
  450. package/mocks/README.md +0 -3
  451. package/mocks/index.d.ts +0 -3
  452. package/mocks/lib/mocks.module.d.ts +0 -7
  453. package/mocks/lib/services/mocker.service.d.ts +0 -29
  454. package/mocks/lib/storage/storage.mock.service.d.ts +0 -25
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layout.routes.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { Route } from '@angular/router';\nexport const routes: Route[] = [\n {\n path: 'error',\n children: [\n {\n path: 'offline',\n loadComponent: () => import('./pages/errors/error-offline/error-offline.component').then(c => c.AXPErrorOfflineComponent),\n },\n {\n path: '404',\n loadComponent: () => import('./pages/errors/error-404/error-404.component').then(c => c.AXPError404Component),\n },\n {\n path: '401',\n loadComponent: () => import('./pages/errors/error-401/error-401.component').then(c => c.AXPError401Component),\n },\n ]\n },\n];\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-dashboard-admin-footer',\n templateUrl: './footer.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [],\n host: {\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\n },\n})\nexport class AXPRootLayoutFooterComponent {\n}\n","<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\n</div>\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\n</div>","\nimport { AXPAdminLayoutState, AXPLayoutRootDrawerToggle, getRootDrawer } from '@acorex/platform/common';\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\n\n\n@Component({\n selector: 'axp-dashboard-admin-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\n },\n})\nexport class AXPRootLayoutHeaderComponent {\n\n private store = inject(Store<AXPAdminLayoutState>);\n private router = inject(Router);\n\n protected isOpen = this.store.select(getRootDrawer());\n\n menuClick() {\n this.store.dispatch(AXPLayoutRootDrawerToggle());\n }\n\n logoClick() {\n this.router.navigate(['/']);\n }\n}\n","<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !(isOpen | async) }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>","import { Component, inject } from '@angular/core';\nimport { AXPMenuItem, AXPMenuService } from '@acorex/platform/common';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\nimport { sortBy } from 'lodash-es';\n\n@Component({\n selector: 'axp-root-menu',\n templateUrl: './root-menu.component.html',\n styleUrls: ['./root-menu.component.scss'],\n})\nexport class AXPRootLayoutMenuComponent {\n protected menuStore = inject(AXPMenuService);\n protected router = inject(Router);\n\n onMenuItemClick(item: AXPMenuItem): void {\n if (!item.children?.length) {\n this.menuStore.executeCommand(item);\n }\n }\n\n ngOnInit(): void {\n // Select the menu item based on the current route when the page loads\n this.menuStore.selectMenuItemByRoute(this.router.url);\n\n // Update the selected menu item whenever the route changes\n this.router.events.pipe(\n filter(event => event instanceof NavigationEnd)\n ).subscribe((event: NavigationEnd) => {\n this.menuStore.selectMenuItemByRoute(event.urlAfterRedirects);\n });\n }\n\n\n protected sort(items: AXPMenuItem[]): AXPMenuItem[] {\n return sortBy(items, [c => c.priority ?? 0, c => c.text]);\n }\n}","<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\" >\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem()\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>","import { AXDrawerComponent } from '@acorex/components/drawer';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport {\n AXPAdminLayoutState,\n AXPLayoutRootDrawerClose,\n AXPLayoutService,\n AXPMenuItem,\n AXPRouteUtilityService,\n AXP_MENU_LOADER,\n AXP_PLATFORM_CONFIG_TOKEN,\n getRootDrawer,\n isSmallScreen,\n} from '@acorex/platform/common';\nimport { Component, ViewChild, ViewEncapsulation, WritableSignal, inject, signal } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\n\n@Component({\n templateUrl: './root-layout.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXUnsubscriber,\n },\n ],\n})\nexport class AXPRootLayoutComponent {\n @ViewChild('drawer') drawer!: AXDrawerComponent;\n\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\n private _layoutService = inject(AXPLayoutService);\n public get layoutService() {\n return this._layoutService;\n }\n public set layoutService(value) {\n this._layoutService = value;\n }\n private subscriber = inject(AXUnsubscriber);\n\n private store = inject(Store<AXPAdminLayoutState>);\n private routeUtilService = inject(AXPRouteUtilityService);\n protected isActiveRoute = (item: AXPMenuItem) => this.routeUtilService.isRouteActive(item);\n protected logo = this.config.logo;\n\n protected isOpen = this.store.select(getRootDrawer());\n protected isSM = this.store.select(isSmallScreen());\n protected isLoading: WritableSignal<boolean> = signal(false);\n protected showNavigationProgress: WritableSignal<boolean> = signal(false);\n\n constructor() {\n this.layoutService.navigationLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\n this.showNavigationProgress.set(value);\n });\n //\n this.layoutService.overlayLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\n this.isLoading.set(value);\n });\n }\n\n protected handleCollapsedChange(value: boolean) {\n if (value) this.store.dispatch(AXPLayoutRootDrawerClose());\n }\n}\n","<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\"(isSM | async) ? 'overlay' : 'push'\"\n (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(showNavigationProgress()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"isLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>","import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\nimport { AXPRootLayoutMenuComponent } from './components/menu/root-menu.component';\nimport { AXPRootLayoutComponent } from './root-layout.component';\nimport { AXTranslationModule } from '@acorex/core/translation';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n AXButtonModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXAvatarModule,\n AXImageModule,\n AXImageModule,\n AXPopoverModule,\n AXBadgeModule,\n AXTabsModule,\n AXDrawerModule,\n AXSideMenuModule,\n AXLoadingModule,\n AXPLogoComponent,\n AXPAuthModule,\n AXPComponentSlotModule,\n ],\n exports: [],\n declarations: [\n AXPRootLayoutFooterComponent,\n AXPRootLayoutHeaderComponent,\n AXPRootLayoutComponent,\n AXPRootLayoutMenuComponent,\n ],\n providers: [],\n})\nexport class AXPAdminRootLayoutModule { }\n","import { ActivatedRouteSnapshot, DetachedRouteHandle, RouteReuseStrategy } from '@angular/router';\n\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void {}\n\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\n return null;\n }\n\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\n if (future.data && future.data['reuse'] === false) {\n return false;\n }\n return future.routeConfig === curr.routeConfig;\n }\n}\n","import { inject, NgModule } from \"@angular/core\";\nimport { RouteReuseStrategy, RouterModule } from \"@angular/router\";\nimport { routes } from \"./layout.routes\";\nimport { AXPCommonModule } from \"@acorex/platform/common\";\nimport { AXPRootLayoutComponent } from \"./layouts/root-layout\";\nimport { AXPEntityReuseStrategy } from \"./entity-reuse.strategy\";\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from \"@acorex/platform/layout/entity\";\nimport { AXPThemesSharedModule } from \"@acorex/platform/themes/shared\";\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes),\n AXPCommonModule,\n AXPThemesSharedModule\n ],\n exports: [],\n declarations: [],\n providers: [\n\n {\n provide: AXP_ENTITY_CONFIG_TOKEN,\n useValue: {\n viewers: {\n root: () => AXPRootLayoutComponent,\n master: {\n single: () => import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component')\n .then(c => c.AXPEntityMasterSingleViewComponent),\n ///\n create: () => import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component')\n .then(c => c.AXPEntityMasterCreateViewComponent),\n ///\n modify: () => import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component')\n .then(c => c.AXPEntityMasterModifyViewComponent),\n //\n list: () => import('./layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component')\n .then(c => c.AXPEntityMasterListViewComponent)\n }\n }\n } as AXPEntityConfigs\n },\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }\n ]\n})\nexport class AXPDefaultThemeModule {\n\n}\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport {\n AXDataTableComponent,\n AXDataTableModule,\n AXDataTableRowDbClick,\n AXRowCommandItem,\n AXRowCommandItemClickEvent,\n} from '@acorex/components/data-table';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport {\n AXPAdminLayoutState,\n AXPGridLayoutDirective,\n AXPLayoutService,\n AXPStickyDirective,\n isSmallScreen,\n} from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layouts';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewChild,\n ViewEncapsulation,\n computed,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { Subject, takeUntil } from 'rxjs';\n\n@Component({\n selector: 'axp-entity-detail-list-view',\n templateUrl: 'entity-detail-list-view.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXUnsubscriber],\n imports: [\n CommonModule,\n FormsModule,\n RouterModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXDropdownModule,\n AXPopoverModule,\n AXFormModule,\n AXActionSheetModule,\n AXDrawerModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXTooltipModule,\n AXBreadcrumbsModule,\n AXSearchBoxModule,\n AXDataTableModule,\n //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPStickyDirective,\n AXPGridLayoutDirective,\n AXPAuthModule,\n AXTranslationModule,\n ],\n standalone: true,\n})\nexport class AXPEntityDetailListViewComponent {\n private layout = inject(AXPLayoutService);\n private workflow = inject(AXPWorkflowService);\n\n @Input('viewModel')\n vm: AXPEntityDetailListViewModel;\n\n protected focusedRow: any;\n //\n @ViewChild('grid') grid!: AXDataTableComponent;\n\n constructor(\n private actionSheetService: AXActionSheetService,\n private unsubscriber: AXUnsubscriber,\n protected platform: AXPlatform,\n private store: Store<AXPAdminLayoutState>\n ) {\n this.subscribeActionEvents();\n }\n\n protected isSM = this.store.select(isSmallScreen());\n\n private readonly destroyed = new Subject<void>();\n\n handleChangeSearchValue(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.vm.applyInlineFilter(e.value);\n }\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n console.log(event);\n this.grid.refresh();\n });\n }\n\n ngAfterViewInit(): void {\n // this.grid.refresh();\n }\n\n private dropdownRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.rowActions().map(\n (c) =>\n ({\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem)\n );\n });\n\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\n const item = this.dropdownRowItems()?.[0];\n if (item) {\n const d: AXRowCommandItemClickEvent = {\n component: e.component,\n name: item.name,\n data: e.data,\n };\n this.handleRowCommandClick(d);\n }\n }\n\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\n return Promise.resolve(this.dropdownRowItems());\n };\n\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\n this.vm.executeCommand(e.name, e.data);\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","<div class=\"ax-flex ax-p-2\">\n <div class=\"ax-flex ax-flex-col ax-items-end ax-gap-3 ax-flex-1 ax-overflow-auto ax-min-h-72\">\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"(tr.title | translate | async)!\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button>\n } @if(vm.secondaryActions().length) {\n <ax-button [text]=\"(isSM | async) ? null : ('actions' | translate | async)\" color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(tr of vm.secondaryActions();track $index) {\n <ng-container>\n @if(tr.separated && !$first) {\n <ax-divider></ax-divider>\n }\n <ax-button-item\n [text]=\"(tr.title | translate | async)!\"\n class=\"ax-font-semibold ax-text-{{ tr.color }}\"\n (onClick)=\"vm.executeCommand(tr.name)\"\n >\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n <ax-data-table\n #grid\n [showFooter]=\"false\"\n class=\"ax-flex-1\"\n [paging]=\"true\"\n [fetchDataMode]=\"'manual'\"\n [loading]=\"{ enabled: true, animation: true }\"\n [dataSource]=\"vm.dataSource\"\n (onRowDbClick)=\"handleRowDbClick($event)\"\n >\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer\n [caption]=\"col.title | translate | async\"\n [node]=\"col.node()\"\n ></axp-widget-column-renderer>\n } }\n <ax-dropdown-command-column\n fixed=\"end\"\n [width]=\"'60px'\"\n [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-dropdown-command-column>\n </ax-data-table>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i5","i4","i6.AXPRootLayoutFooterComponent","i7.AXPRootLayoutHeaderComponent","i8.AXPRootLayoutMenuComponent","i9","i7","i10","i11"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layout.routes.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/convert-setting-data.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-preview/setting-preview.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-preview/setting-preview.component.html","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { Route } from '@angular/router';\nexport const routes: Route[] = [\n {\n path: 'error',\n children: [\n {\n path: 'offline',\n loadComponent: () => import('./pages/errors/error-offline/error-offline.component').then(c => c.AXPErrorOfflineComponent),\n },\n {\n path: '404',\n loadComponent: () => import('./pages/errors/error-404/error-404.component').then(c => c.AXPError404Component),\n },\n {\n path: '401',\n loadComponent: () => import('./pages/errors/error-401/error-401.component').then(c => c.AXPError401Component),\n },\n ]\n },\n];\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-dashboard-admin-footer',\n templateUrl: './footer.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [],\n host: {\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\n },\n})\nexport class AXPRootLayoutFooterComponent {\n}\n","<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\n</div>\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\n</div>","\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { Router } from '@angular/router';\n\n\n@Component({\n selector: 'axp-dashboard-admin-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\n },\n})\nexport class AXPRootLayoutHeaderComponent {\n\n protected store = inject(AXPLayoutThemeService);\n private router = inject(Router);\n\n\n menuClick() {\n this.store.toggleSideMenu();\n }\n\n logoClick() {\n this.router.navigate(['/']);\n }\n}\n","<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !store.isSideMenuOpen() }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>","import { Component, inject } from '@angular/core';\nimport { AXPMenuItem, AXPMenuService } from '@acorex/platform/common';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\nimport { sortBy } from 'lodash-es';\n\n@Component({\n selector: 'axp-root-menu',\n templateUrl: './root-menu.component.html',\n styleUrls: ['./root-menu.component.scss'],\n})\nexport class AXPRootLayoutMenuComponent {\n protected menuStore = inject(AXPMenuService);\n protected router = inject(Router);\n\n onMenuItemClick(item: AXPMenuItem): void {\n if (!item.children?.length) {\n this.menuStore.executeCommand(item);\n }\n }\n\n ngOnInit(): void {\n // Select the menu item based on the current route when the page loads\n this.menuStore.selectMenuItemByRoute(this.router.url);\n\n // Update the selected menu item whenever the route changes\n this.router.events.pipe(\n filter(event => event instanceof NavigationEnd)\n ).subscribe((event: NavigationEnd) => {\n this.menuStore.selectMenuItemByRoute(event.urlAfterRedirects);\n });\n }\n\n\n protected sort(items: AXPMenuItem[]): AXPMenuItem[] {\n return sortBy(items, [c => c.priority ?? 0, c => c.text]);\n }\n}","<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\">\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem().item\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>","import { AXDrawerComponent } from '@acorex/components/drawer';\nimport {\n AXP_PLATFORM_CONFIG_TOKEN,\n} from '@acorex/platform/common';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\n\n@Component({\n templateUrl: './root-layout.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPRootLayoutComponent {\n @ViewChild('drawer') drawer!: AXDrawerComponent;\n\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\n\n\n protected store = inject(AXPLayoutThemeService);\n protected logo = this.config.logo;\n\n\n\n constructor() {\n }\n\n protected handleCollapsedChange(value: boolean) {\n if (value) {\n this.store.closeSideMenu();\n };\n }\n}\n","<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!store.isSideMenuOpen()\"\n [mode]=\"store.isSmall() ? 'overlay' : 'push'\" (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(store.isNavigationLoading()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"store.isOverlayLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>","import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\nimport { AXPRootLayoutMenuComponent } from './components/menu/root-menu.component';\nimport { AXPRootLayoutComponent } from './root-layout.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n AXButtonModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXAvatarModule,\n AXImageModule,\n AXImageModule,\n AXPopoverModule,\n AXBadgeModule,\n AXTabsModule,\n AXDrawerModule,\n AXSideMenuModule,\n AXLoadingModule,\n AXPLogoComponent,\n AXPAuthModule,\n AXPComponentSlotModule,\n // AXMConversationModule\n ],\n exports: [],\n declarations: [\n AXPRootLayoutFooterComponent,\n AXPRootLayoutHeaderComponent,\n AXPRootLayoutComponent,\n AXPRootLayoutMenuComponent,\n ],\n providers: [],\n})\nexport class AXPAdminRootLayoutModule {}\n","import { ActivatedRouteSnapshot, DetachedRouteHandle, RouteReuseStrategy } from '@angular/router';\n\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void {}\n\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\n return null;\n }\n\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\n if (future.data && future.data['reuse'] === false) {\n return false;\n }\n return future.routeConfig === curr.routeConfig;\n }\n}\n","import { inject, NgModule } from \"@angular/core\";\nimport { RouteReuseStrategy, RouterModule } from \"@angular/router\";\nimport { routes } from \"./layout.routes\";\nimport { AXPCommonModule } from \"@acorex/platform/common\";\nimport { AXPRootLayoutComponent } from \"./layouts/root-layout\";\nimport { AXPEntityReuseStrategy } from \"./entity-reuse.strategy\";\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from \"@acorex/platform/layout/entity\";\nimport { AXPThemesSharedModule } from \"@acorex/platform/themes/shared\";\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes),\n AXPCommonModule,\n AXPThemesSharedModule\n ],\n exports: [],\n declarations: [],\n providers: [\n\n {\n provide: AXP_ENTITY_CONFIG_TOKEN,\n useValue: {\n viewers: {\n root: () => AXPRootLayoutComponent,\n master: {\n single: () => import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component')\n .then(c => c.AXPEntityMasterSingleViewComponent),\n ///\n create: () => import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component')\n .then(c => c.AXPEntityMasterCreateViewComponent),\n ///\n modify: () => import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component')\n .then(c => c.AXPEntityMasterModifyViewComponent),\n //\n list: () => import('./layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component')\n .then(c => c.AXPEntityMasterListViewComponent)\n }\n }\n } as AXPEntityConfigs\n },\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }\n ]\n})\nexport class AXPDefaultThemeModule {\n\n}\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport {\n AXDataTableComponent,\n AXDataTableModule,\n AXDataTableRowDbClick,\n AXRowCommandItem,\n AXRowCommandItemClickEvent,\n} from '@acorex/components/data-table';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport {\n AXPGridLayoutDirective,\n AXPStickyDirective,\n} from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layouts';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\nimport { Subject, takeUntil } from 'rxjs';\n\n@Component({\n selector: 'axp-entity-detail-list-view',\n templateUrl: 'entity-detail-list-view.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXUnsubscriber],\n imports: [\n CommonModule,\n FormsModule,\n RouterModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXDropdownModule,\n AXPopoverModule,\n AXFormModule,\n AXActionSheetModule,\n AXDrawerModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXTooltipModule,\n AXBreadcrumbsModule,\n AXSearchBoxModule,\n AXDataTableModule,\n //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPStickyDirective,\n AXPGridLayoutDirective,\n AXPAuthModule,\n AXTranslationModule,\n ],\n standalone: true,\n})\nexport class AXPEntityDetailListViewComponent {\n private workflow = inject(AXPWorkflowService);\n protected store = inject(AXPLayoutThemeService)\n\n @Input('viewModel')\n vm: AXPEntityDetailListViewModel;\n\n protected focusedRow: any;\n //\n @ViewChild('grid') grid!: AXDataTableComponent;\n\n constructor(\n private actionSheetService: AXActionSheetService,\n private unsubscriber: AXUnsubscriber,\n ) {\n effect(\n () => {\n this.grid.selectedRows = this.vm.selectedItems();\n },\n { allowSignalWrites: true }\n );\n this.subscribeActionEvents();\n }\n\n\n private readonly destroyed = new Subject<void>();\n\n handleChangeSearchValue(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.vm.applyInlineFilter(e.value);\n }\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n console.log(event);\n this.grid.refresh();\n });\n }\n\n ngAfterViewInit(): void {\n // this.grid.refresh();\n }\n\n protected dropdownRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.secondaryRowActions().map(\n (c) =>\n ({\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem)\n );\n });\n\n protected commandRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.primaryRowActions().map((c) => {\n return {\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem;\n });\n });\n\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\n const item = this.dropdownRowItems()?.[0];\n if (item) {\n const d: AXRowCommandItemClickEvent = {\n component: e.component,\n name: item.name,\n data: e.data,\n };\n this.handleRowCommandClick(d);\n }\n }\n\n protected getCommandRowItems = (): AXRowCommandItem[] => {\n return this.commandRowItems();\n };\n\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\n return Promise.resolve(this.dropdownRowItems());\n };\n\n protected async handleSelectedRowsChange(rows: unknown[]) {\n this.vm.selectedItems.set(rows);\n }\n\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\n this.vm.executeCommand(e.name, e.data);\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","<div class=\"ax-flex ax-p-2\">\n <div class=\"ax-flex ax-flex-col ax-items-end ax-gap-3 ax-flex-1 ax-overflow-auto ax-min-h-72\">\n <div class=\"ax-flex ax-justify-between ax-items-center ax-w-full\">\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\n @if(vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedItems().length }} {{ 't(\"itemsSelected\", { scope: \"common\" })' | translate | async }}\n </span>\n <span (click)=\"vm.clearSelection()\"\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\">{{\n 't(\"unselect\", { scope: \"common\" })' | translate | async }}</span>\n </div>\n\n } @else { @if(vm.hasInlineFilters() && !store.isSmall()) {\n <div class=\"ax-w-72\">\n <ax-search-box\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"><ax-clear-button></ax-clear-button></ax-search-box>\n </div>\n } }\n </div>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"(tr.title | translate | async)!\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button>\n } @if(vm.secondaryActions().length) {\n <ax-button [text]=\"store.isSmall() ? null : ('actions' | translate | async)\" color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(tr of vm.secondaryActions();track $index) {\n <ng-container>\n @if(tr.separated && !$first) {\n <ax-divider></ax-divider>\n }\n <ax-button-item [text]=\"(tr.title | translate | async)!\" class=\"ax-font-semibold ax-text-{{ tr.color }}\"\n (onClick)=\"vm.executeCommand(tr.name)\">\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n </div>\n\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1\" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\" (onRowDbClick)=\"handleRowDbClick($event)\">\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer [caption]=\"col.title | translate | async\"\n [node]=\"col.node()\"></axp-widget-column-renderer>\n } } @if(getCommandRowItems().length){\n\n <ax-command-column fixed=\"end\" [width]=\"getCommandRowItems().length * 60 + 'px'\" [items]=\"getCommandRowItems()\"\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-command-column>\n\n } @if(dropdownRowItems().length){\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\n }\n </ax-data-table>\n </div>\n</div>","import { AXTreeViewSchema } from '@acorex/components/tree-view/lib/tree-view.class';\nimport { AXPSettingDefinitionGroup } from '@acorex/platform/common';\n\n/**\n * Converts a list of AXPSettingDefinitionGroup into a tree structure of AXTreeViewSchema.\n * This function processes groups and their nested sub-groups, recursively creating a tree.\n *\n * @param groups - Array of top-level setting groups to be converted into tree view schema.\n * @param parentId - The parent ID for nested groups, passed down recursively. (Optional, default is undefined)\n *\n * @returns An array of AXTreeViewSchema representing the hierarchical structure of groups.\n */\nexport function convertToTreeViewSchema(\n groups: AXPSettingDefinitionGroup[],\n parentId?: string | number\n): AXTreeViewSchema[] {\n // Helper function to traverse and convert a single group (and its sub-groups)\n const traverseGroups = (group: AXPSettingDefinitionGroup, parent?: string | number): AXTreeViewSchema => {\n const currentId = group.name;\n\n // Schema for the current group\n const schema: AXTreeViewSchema = {\n id: currentId, // Unique identifier for the group (using group name)\n parentId: parent, // Parent group ID, passed down recursively\n text: group.title, // Display title of the group\n tooltip: group.description, // Optional description as tooltip\n hasChild: group.groups.length > 0, // Whether the group has child groups\n isExpanded: false, // Default state for expansion (optional)\n childrens: group.groups.length > 0 ? [] : undefined, // Child groups array (undefined if no children)\n };\n\n // Recursively process nested groups (sub-groups inside the current group)\n group.groups.forEach((subGroup) => {\n const childSchema = traverseGroups(subGroup, currentId); // Create schema for sub-group\n schema.childrens?.push(childSchema); // Add the child schema to the parent group's children\n });\n\n return schema; // Return the group schema with its children (if any)\n };\n\n // Initialize an array to hold the top-level groups' schemas\n const treeViewSchemas: AXTreeViewSchema[] = [];\n\n // Process each top-level group and convert it into tree view schema\n groups.forEach((group) => {\n treeViewSchemas.push(traverseGroups(group, parentId)); // Add the schema for each group\n });\n\n // Return the resulting hierarchical structure\n return treeViewSchemas;\n}\n\n/**\n * Converts nested groups into breadcrumb-like paths.\n * Each path represents the hierarchy of group names leading to a specific group.\n *\n * @param groups - The input array of AXPSettingDefinitionGroup.\n * @param basePath - The current path prefix (optional, default is an empty array).\n *\n * @returns An array of paths where each path is an array of strings representing the breadcrumb.\n */\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerComponent, AXDrawerModule } from '@acorex/components/drawer';\nimport { AXTreeViewModule } from '@acorex/components/tree-view';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema } from '@acorex/components/tree-view/lib/tree-view.class';\nimport { AXPSettingDefinitionItem, AXPSettingDefinitionProviderService } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n OnInit,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ActivatedRoute, Router, RouterOutlet } from '@angular/router';\nimport { convertToTreeViewSchema } from '../convert-setting-data';\n\n@Component({\n templateUrl: 'setting-menu.component.html',\n standalone: true,\n imports: [AXDrawerModule, CommonModule, RouterOutlet, AXDecoratorModule, AXTreeViewModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPSettingsMenuComponent implements OnInit {\n drawerComp = viewChild<AXDrawerComponent>('drawer');\n settingService = inject(AXPSettingDefinitionProviderService);\n activatedRoute = inject(ActivatedRoute);\n router = inject(Router);\n data = signal<AXPSettingDefinitionItem[]>([]);\n formattedData = computed<AXTreeViewSchema[]>(() => convertToTreeViewSchema(this.data()));\n\n constructor() {\n this.activatedRoute.params.subscribe((i) => {\n i?.['group']\n })\n afterNextRender(() => {\n this.drawerComp()?.open();\n });\n }\n async ngOnInit(): Promise<void> {\n await this.getData();\n }\n\n async getData() {\n this.data.set(await this.settingService.items());\n }\n\n onClick(item: AXTreeItemClickBaseEvent) {\n this.router.navigate([item.data?.['id']], { relativeTo: this.activatedRoute });\n }\n\n // private viewModel = inject(AXPSettingsViewModel);\n // protected dataSource = this.viewModel.dataSource;\n // @ViewChild('grid') grid!: AXDataTableComponent;\n // // عنوان صفحه تنظیمات\n // protected title = this.viewModel.title;\n // // مقدار جستجوی تنظیمات\n // protected searchValue = '';\n // constructor(private cdr: ChangeDetectorRef) {}\n // // هندل تغییرات جستجو\n // handleSearchValueChange(event: AXValueChangedEvent) {\n // if (event.isUserInteraction) {\n // this.viewModel.applySearch(event.value);\n // }\n // }\n // // انتخاب تنظیم یا گروه تنظیم\n // handleRowDbClick(rowData: any) {\n // this.viewModel.selectSetting(rowData);\n // }\n // // ذخیره تغییرات تنظیمات\n // saveSetting(settingKey: string, value: any) {\n // this.viewModel.saveSetting({ key: settingKey, value });\n // }\n}\n","<ax-drawer-container class=\"ax-min-w-96 ax-flex ax-items-center ax-h-[100vh-104px]\">\n <ax-drawer #drawer location=\"start\" mode=\"push\" [collapsed]=\"true\">\n <ax-content class=\"ax-flex ax-min-w-[300px] ax-flex-col ax-p-6 ax-border-r\">\n <p class=\"ax-text-xl ax-font-bold ax-pb-6\">Settings</p>\n @if(data()){\n <ax-tree-view\n (onNodeClick)=\"onClick($event)\"\n [hasChildField]=\"'hasChild'\"\n [selectable]=\"false\"\n [items]=\"formattedData()\"\n ></ax-tree-view>\n }\n </ax-content>\n </ax-drawer>\n\n <ax-content class=\"ax-bg-light-100 dark:ax-bg-dark-500 ax-flex ax-h-full ax-w-full ax-p-3 dark:ax-border-white/30\">\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n","import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPGroupDetails, AXPSettingDefinitionProviderService, AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { ActivatedRoute, Router, RouterLink } from '@angular/router';\n\n@Component({\n templateUrl: 'setting-preview.component.html',\n standalone: true,\n imports: [\n AXPLayoutBuilderModule,\n AXDecoratorModule,\n AXBreadcrumbsModule,\n RouterLink,\n AXButtonModule,\n AXTranslationModule,\n AsyncPipe,\n AXPStickyDirective,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ax-w-full',\n },\n})\nexport class AXPSettingsPreviewComponent {\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly router = inject(Router);\n private readonly toastService = inject(AXToastService);\n\n private readonly settingService = inject(AXPSettingDefinitionProviderService);\n\n protected data = signal<AXPGroupDetails | null>(null);\n protected context = signal<Record<any, any>>({});\n protected setContext(value: any) {\n this.context.set(value);\n }\n\n private isSaving = signal(false);\n private previousContext = signal({});\n protected canCancel = computed(() => this.isObjectEmpty(this.context()));\n protected canSave = computed(\n () =>\n !this.isSaving() &&\n !this.isObjectEmpty(this.context()) &&\n !this.areObjectsEqual(this.context(), this.previousContext())\n );\n\n fullRoute = this.router.url.split('/settings')[0] + '/settings/';\n eff = effect(() => console.log(this.context()));\n\n constructor() {\n debugger;\n this.activatedRoute.params.subscribe((i) => {\n const apiData = this.settingService.findGroupDetails(i?.['group']);\n // console.log(apiData);\n this.data.set(apiData);\n });\n }\n\n private isObjectEmpty(obj: object): boolean {\n // Check if the object has any own properties\n return Object.keys(obj).length === 0;\n }\n\n private areObjectsEqual<T>(obj1: T, obj2: T): boolean {\n // Check if both are not objects or are null, compare directly\n if (typeof obj1 !== 'object' || typeof obj2 !== 'object' || obj1 === null || obj2 === null) {\n return obj1 === obj2;\n }\n\n // Check if the keys' lengths match\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n // Recursively compare each key and value\n for (const key of keys1) {\n const keyTyped = key as keyof T;\n if (!obj2.hasOwnProperty(key) || !this.areObjectsEqual(obj1[keyTyped], obj2[keyTyped])) {\n return false;\n }\n }\n\n return true;\n }\n\n protected onCancel(): void {\n this.context.set({});\n }\n\n protected onSave(): void {\n this.previousContext.set(this.context());\n //call api\n this.isSaving.set(true);\n this.toastService.show({\n color: 'success',\n title: `saved successfully`,\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: false,\n });\n //simulate wait until api call is responded\n setTimeout(() => {\n this.isSaving.set(false);\n }, 500);\n }\n}\n","<div #content>\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 ax-mx-6 ax-shadow-xl'\"\n [stickyOffset]=\"30\"\n [stickyParent]=\"content\"\n >\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">{{ data()?.breadcrumb?.[0]?.title }}</div>\n @if(false) {\n <div class=\"ax-text-sm ax-text-neutral-600\">description</div>\n }\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\">\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n <ax-breadcrumbs-item [active]=\"false\" [routerLink]=\"fullRoute\"> Home </ax-breadcrumbs-item>\n @for(b of data()?.breadcrumb;track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [class.!dark:ax-text-neutral-200]=\"last\"\n [routerLink]=\"fullRoute + b.name\"\n >\n {{ b.title }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n </div>\n </div>\n <axp-widgets-container\n class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4 ax-h-full ax-w-full\"\n [context]=\"context()\"\n (contextChange)=\"setContext($event)\"\n >\n <div class=\"ax-bg-surface ax-my-5 ax-border ax-rounded-xl\">\n @if(data()?.sections){ @for(i of data()?.sections; track i.name){\n <div class=\"ax-p-2 ax-w-full\">\n <div class=\"ax-py-4 ax-px-2\">\n <span class=\"ax-font-bold ax-text-xl\">{{ i.title }}</span>\n </div>\n @for(j of i.settings; track j.name){\n <div class=\"ax-p-2\">\n <p class=\"ax-text-sm ax-pb-1 ax-pl-1\">{{ j.title }}:</p>\n <div class=\"ax-max-w-[50%]\">\n <ng-container axp-widget-renderer [node]=\"j.widget\" [mode]=\"'edit'\"> </ng-container>\n </div>\n </div>\n }\n </div>\n }\n <div class=\"ax-w-full ax-gap-3 ax-p-4 ax-pt-6 ax-border-t ax-flex ax-justify-end ax-items-center\">\n <ax-button [disabled]=\"canCancel()\" (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button\n [disabled]=\"!canSave()\"\n (onClick)=\"onSave()\"\n color=\"primary\"\n [text]=\"'save-changes' | translate | async\"\n ></ax-button>\n </div>\n }@else {\n <div class=\"ax-p-3\">\n @for(group of data()?.childGroups; track $index){\n <div class=\"ax-p-4\">\n <a [routerLink]=\"fullRoute + group.name\" class=\"ax-text-primary-600 ax-underline ax-font-bold ax-text-xl\">{{\n group.title\n }}</a>\n </div>\n }\n </div>\n }\n </div></axp-widgets-container\n >\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i5","i3","i4","i6.AXPRootLayoutFooterComponent","i7.AXPRootLayoutHeaderComponent","i8.AXPRootLayoutMenuComponent"],"mappings":"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"}
@@ -7,10 +7,11 @@ import { AXDropdownModule } from '@acorex/components/dropdown';
7
7
  import * as i1 from '@angular/common';
8
8
  import { CommonModule } from '@angular/common';
9
9
  import * as i0 from '@angular/core';
10
- import { inject, computed, Component, NgModule } from '@angular/core';
10
+ import { computed, inject, Component, NgModule } from '@angular/core';
11
11
  import * as i1$1 from '@acorex/platform/common';
12
12
  import { AXPSettingsService, AXPComponentSlotModule } from '@acorex/platform/common';
13
13
  import { signalStore, withState, withComputed, withMethods, patchState, withHooks } from '@ngrx/signals';
14
+ import { timer } from 'rxjs';
14
15
  import * as i5 from '@acorex/core/translation';
15
16
  import { AXTranslationModule } from '@acorex/core/translation';
16
17
 
@@ -21,44 +22,188 @@ var AXPThemeVariant;
21
22
  AXPThemeVariant["Dark"] = "dark";
22
23
  AXPThemeVariant["System"] = "system";
23
24
  })(AXPThemeVariant || (AXPThemeVariant = {}));
24
- const THEME_VARIANT_KEY = 'theme-variant';
25
- // ThemeStore - Manages theme settings and system changes
25
+ // Screen Size Enum
26
+ var AXPScreenSize;
27
+ (function (AXPScreenSize) {
28
+ AXPScreenSize["Small"] = "small";
29
+ AXPScreenSize["Medium"] = "medium";
30
+ AXPScreenSize["Large"] = "large";
31
+ })(AXPScreenSize || (AXPScreenSize = {}));
32
+ // Device Type Enum
33
+ var AXPDeviceType;
34
+ (function (AXPDeviceType) {
35
+ AXPDeviceType["Mobile"] = "mobile";
36
+ AXPDeviceType["Tablet"] = "tablet";
37
+ AXPDeviceType["Desktop"] = "desktop";
38
+ })(AXPDeviceType || (AXPDeviceType = {}));
39
+ // Side Menu State Enum
40
+ var AXPSideMenuState;
41
+ (function (AXPSideMenuState) {
42
+ AXPSideMenuState["Opened"] = "opened";
43
+ AXPSideMenuState["Closed"] = "closed";
44
+ })(AXPSideMenuState || (AXPSideMenuState = {}));
45
+ const THEME_VARIANT_KEY = 'layout:theme:variant';
46
+ const THEME_SIDEMENU_STATE_KEY = 'layout:theme:sidemenu';
47
+ // ThemeStore - Manages theme settings, system changes, and loading states
26
48
  const AXPLayoutThemeService = signalStore({ providedIn: 'root' },
27
49
  // Initial State
28
- withState((settingService = inject(AXPSettingsService)) => {
50
+ withState(() => {
29
51
  const initialTheme = AXPThemeVariant.System;
30
52
  const systemPrefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
53
+ // Helper function to get the initial screen size
54
+ const getScreenSize = () => {
55
+ const width = window.innerWidth;
56
+ if (width <= 600)
57
+ return AXPScreenSize.Small;
58
+ if (width <= 1024)
59
+ return AXPScreenSize.Medium;
60
+ return AXPScreenSize.Large;
61
+ };
62
+ // Helper function to determine device type
63
+ const getDeviceType = () => {
64
+ const userAgent = navigator.userAgent.toLowerCase();
65
+ if (/mobile|android|iphone|ipad/.test(userAgent)) {
66
+ return AXPDeviceType.Mobile;
67
+ }
68
+ else if (/tablet/.test(userAgent)) {
69
+ return AXPDeviceType.Tablet;
70
+ }
71
+ return AXPDeviceType.Desktop;
72
+ };
73
+ // Helper function to determine if the device supports touch
74
+ const isTouchDevice = () => {
75
+ return 'ontouchstart' in window || navigator.maxTouchPoints > 0;
76
+ };
31
77
  const state = {
32
78
  currentTheme: initialTheme,
33
79
  systemTheme: (systemPrefersDark ? AXPThemeVariant.Dark : AXPThemeVariant.Light),
34
- listener: null,
80
+ screenSize: getScreenSize(),
81
+ deviceType: getDeviceType(),
82
+ isTouchDevice: isTouchDevice(),
83
+ overlayLoading: false,
84
+ navigationLoading: false,
85
+ overlayLoadingTaskCount: 0,
86
+ navigationLoadingTaskCount: 0,
87
+ sideMenuState: (getScreenSize() === AXPScreenSize.Large ? AXPSideMenuState.Opened : AXPSideMenuState.Closed),
88
+ _listener: null,
89
+ _resizeListener: null,
35
90
  };
36
91
  return state;
37
92
  }),
38
93
  // Computed Signals
39
- withComputed(({ currentTheme, systemTheme }) => ({
94
+ withComputed(({ currentTheme, systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({
40
95
  isDarkMode: computed(() => currentTheme() === AXPThemeVariant.Dark ||
41
96
  (currentTheme() === AXPThemeVariant.System && systemTheme() === AXPThemeVariant.Dark)),
42
97
  isLightMode: computed(() => currentTheme() === AXPThemeVariant.Light ||
43
98
  (currentTheme() === AXPThemeVariant.System && systemTheme() === AXPThemeVariant.Light)),
44
99
  isSystemMode: computed(() => currentTheme() === AXPThemeVariant.System),
100
+ isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),
101
+ isSmall: computed(() => screenSize() === AXPScreenSize.Small),
102
+ isMedium: computed(() => screenSize() === AXPScreenSize.Medium),
103
+ isLarge: computed(() => screenSize() === AXPScreenSize.Large),
104
+ isMobileDevice: computed(() => deviceType() === AXPDeviceType.Mobile),
105
+ isTabletDevice: computed(() => deviceType() === AXPDeviceType.Tablet),
106
+ isDesktopDevice: computed(() => deviceType() === AXPDeviceType.Desktop),
107
+ isTouchScreen: computed(() => isTouchDevice()),
108
+ isOverlayLoading: computed(() => overlayLoading()),
109
+ isNavigationLoading: computed(() => navigationLoading()),
45
110
  })),
46
111
  // Methods for State Management
47
112
  withMethods((store, settingService = inject(AXPSettingsService)) => {
113
+ // Update HTML class based on theme
48
114
  const updateHtmlClass = (dark) => {
49
115
  const html = document.getElementsByTagName('html')[0];
50
116
  dark ? html.classList.add('ax-dark') : html.classList.remove('ax-dark');
51
117
  };
118
+ // Update screen size based on window width
119
+ const updateScreenSize = () => {
120
+ const width = window.innerWidth;
121
+ let newScreenSize;
122
+ if (width <= 600) {
123
+ newScreenSize = AXPScreenSize.Small;
124
+ }
125
+ else if (width <= 1024) {
126
+ newScreenSize = AXPScreenSize.Medium;
127
+ }
128
+ else {
129
+ newScreenSize = AXPScreenSize.Large;
130
+ }
131
+ if (newScreenSize !== store.screenSize()) {
132
+ patchState(store, { screenSize: newScreenSize });
133
+ if (store.sideMenuState() !== AXPSideMenuState.Closed) {
134
+ patchState(store, { sideMenuState: newScreenSize === AXPScreenSize.Small ? AXPSideMenuState.Closed : AXPSideMenuState.Opened });
135
+ settingService.set(THEME_SIDEMENU_STATE_KEY, store.sideMenuState());
136
+ }
137
+ }
138
+ };
139
+ const minimumDisplayTime = 500; // milliseconds
52
140
  return {
141
+ // Change theme and update HTML class
53
142
  changeTheme(theme) {
54
143
  settingService.set(THEME_VARIANT_KEY, theme);
55
144
  patchState(store, { currentTheme: theme });
56
145
  updateHtmlClass(store.isDarkMode());
57
146
  },
58
- applyCurrentTheme() {
147
+ // Open side menu
148
+ openSideMenu() {
149
+ patchState(store, { sideMenuState: AXPSideMenuState.Opened });
150
+ settingService.set(THEME_SIDEMENU_STATE_KEY, AXPSideMenuState.Opened);
151
+ },
152
+ // Close side menu
153
+ closeSideMenu() {
154
+ patchState(store, { sideMenuState: AXPSideMenuState.Closed });
155
+ settingService.set(THEME_SIDEMENU_STATE_KEY, AXPSideMenuState.Closed);
156
+ },
157
+ // Toggle side menu state
158
+ toggleSideMenu() {
159
+ const newSideMenuState = store.sideMenuState() === AXPSideMenuState.Opened ? AXPSideMenuState.Closed : AXPSideMenuState.Opened;
160
+ patchState(store, { sideMenuState: newSideMenuState });
161
+ settingService.set(THEME_SIDEMENU_STATE_KEY, newSideMenuState);
162
+ },
163
+ // Set navigation loading state with a task counter
164
+ setNavigationLoading(value) {
165
+ if (value) {
166
+ patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });
167
+ patchState(store, { navigationLoading: true });
168
+ }
169
+ else {
170
+ if (store.navigationLoadingTaskCount() > 0) {
171
+ patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() - 1 });
172
+ }
173
+ if (store.navigationLoadingTaskCount() === 0) {
174
+ timer(minimumDisplayTime).subscribe(() => {
175
+ if (store.navigationLoadingTaskCount() === 0) {
176
+ patchState(store, { navigationLoading: false });
177
+ }
178
+ });
179
+ }
180
+ }
181
+ },
182
+ // Set overlay loading state with a task counter
183
+ setOverlayLoading(value) {
184
+ if (value) {
185
+ patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });
186
+ patchState(store, { overlayLoading: true });
187
+ }
188
+ else {
189
+ if (store.overlayLoadingTaskCount() > 0) {
190
+ patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });
191
+ }
192
+ if (store.overlayLoadingTaskCount() === 0) {
193
+ timer(minimumDisplayTime).subscribe(() => {
194
+ if (store.overlayLoadingTaskCount() === 0) {
195
+ patchState(store, { overlayLoading: false });
196
+ }
197
+ });
198
+ }
199
+ }
200
+ },
201
+ // Apply the current theme to the HTML class
202
+ _applyCurrentTheme() {
59
203
  updateHtmlClass(store.isDarkMode());
60
204
  },
61
- setupListener() {
205
+ // Set up event listener for system theme changes
206
+ _setupSystemColorListener() {
62
207
  const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');
63
208
  const listener = (e) => {
64
209
  patchState(store, { systemTheme: e.matches ? AXPThemeVariant.Dark : AXPThemeVariant.Light });
@@ -67,32 +212,51 @@ withMethods((store, settingService = inject(AXPSettingsService)) => {
67
212
  mediaQueryList.addEventListener('change', listener);
68
213
  return listener;
69
214
  },
70
- removeListener(listener) {
215
+ // Remove event listener for system theme changes
216
+ _removeSystemColorListener(listener) {
71
217
  const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');
72
218
  mediaQueryList.removeEventListener('change', listener);
73
219
  },
220
+ // Set up event listener for window resize
221
+ _setupResizeListener() {
222
+ const listener = () => {
223
+ updateScreenSize();
224
+ };
225
+ window.addEventListener('resize', listener);
226
+ return listener;
227
+ },
228
+ // Remove event listener for window resize
229
+ _removeResizeListener(listener) {
230
+ window.removeEventListener('resize', listener);
231
+ },
74
232
  };
75
233
  }),
76
234
  // Lifecycle Hooks
77
235
  withHooks((store, settingService = inject(AXPSettingsService)) => ({
78
236
  onInit() {
79
- //
237
+ // Initialize theme and side menu setting from storage
80
238
  (async () => {
81
239
  const settingTheme = (await settingService.get(THEME_VARIANT_KEY)) ?? AXPThemeVariant.System;
82
- if (settingTheme) {
83
- patchState(store, { currentTheme: settingTheme });
84
- }
85
- store.applyCurrentTheme();
240
+ patchState(store, { currentTheme: settingTheme });
241
+ const settingSideMenu = (await settingService.get(THEME_SIDEMENU_STATE_KEY)) ?? store.sideMenuState();
242
+ patchState(store, { sideMenuState: settingSideMenu });
243
+ store._applyCurrentTheme();
86
244
  })();
87
245
  // Set up event listener for system theme changes
88
- const listener = store.setupListener();
89
- patchState(store, { listener });
246
+ const listener = store._setupSystemColorListener();
247
+ patchState(store, { _listener: listener });
248
+ // Set up event listener for window resize
249
+ const resizeListener = store._setupResizeListener();
250
+ patchState(store, { _resizeListener: resizeListener });
90
251
  },
91
252
  onDestroy() {
92
- // Clean up event listener when store is destroyed
93
- const { listener } = store;
253
+ // Clean up event listeners when store is destroyed
254
+ const { _listener: listener, _resizeListener: resizeListener } = store;
94
255
  if (listener) {
95
- store.removeListener(listener);
256
+ store._removeSystemColorListener(listener);
257
+ }
258
+ if (resizeListener) {
259
+ store._removeResizeListener(resizeListener);
96
260
  }
97
261
  },
98
262
  })));
@@ -238,5 +402,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
238
402
  * Generated bundle index. Do not edit.
239
403
  */
240
404
 
241
- export { AXPLayoutThemeService, AXPThemeSlotComponent, AXPThemeVariant, AXPThemesSharedModule };
405
+ export { AXPDeviceType, AXPLayoutThemeService, AXPScreenSize, AXPSideMenuState, AXPThemeSlotComponent, AXPThemeVariant, AXPThemesSharedModule };
242
406
  //# sourceMappingURL=acorex-platform-themes-shared.mjs.map