@acorex/platform 18.0.1 → 18.0.4

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 (272) hide show
  1. package/common/lib/app/application.types.d.ts +43 -26
  2. package/common/lib/common.module.d.ts +6 -5
  3. package/common/lib/data/data-provider.types.d.ts +1 -1
  4. package/common/lib/data/dexie-storage.service.d.ts +15 -0
  5. package/common/lib/data/entity-data-provider.d.ts +14 -0
  6. package/common/lib/data/index.d.ts +3 -0
  7. package/common/lib/data/storage-service.d.ts +22 -0
  8. package/common/lib/schema/entity/entity.class.d.ts +3 -0
  9. package/common/lib/utils/data-generator.d.ts +2 -0
  10. package/esm2022/common/lib/app/application.types.mjs +1 -1
  11. package/esm2022/common/lib/common.module.mjs +19 -2
  12. package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
  13. package/esm2022/common/lib/data/dexie-storage.service.mjs +36 -0
  14. package/esm2022/common/lib/data/entity-data-provider.mjs +26 -0
  15. package/esm2022/common/lib/data/index.mjs +4 -1
  16. package/esm2022/common/lib/data/storage-service.mjs +5 -0
  17. package/esm2022/common/lib/schema/entity/entity-registery.service.mjs +2 -2
  18. package/esm2022/common/lib/schema/entity/entity.class.mjs +1 -1
  19. package/esm2022/common/lib/utils/data-generator.mjs +22 -1
  20. package/esm2022/common/lib/workflows/common.workflow.mjs +3 -3
  21. package/esm2022/layout/builder/lib/builder/builder.service.mjs +7 -2
  22. package/esm2022/layout/builder/lib/builder/widget.types.mjs +5 -1
  23. package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +9 -8
  24. package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +34 -21
  25. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +23 -15
  26. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +46 -49
  27. package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +9 -7
  28. package/esm2022/layout/entity/lib/entity-registery.service.mjs +2 -2
  29. package/esm2022/layout/entity/lib/entity.module.mjs +13 -4
  30. package/esm2022/layout/entity/lib/entity.viewmodel.mjs +7 -6
  31. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +127 -39
  32. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +83 -37
  33. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +34 -23
  34. package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +17 -20
  35. package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +17 -15
  36. package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +11 -23
  37. package/esm2022/layout/entity/lib/workflows/show-details.workflow.mjs +3 -3
  38. package/esm2022/layout/entity/lib/workflows/show-list.workflow.mjs +35 -0
  39. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +3 -3
  40. package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +2 -2
  41. package/esm2022/layouts/lib/layout.module.mjs +3 -3
  42. package/esm2022/themes/default/acorex-platform-themes-default.mjs +5 -0
  43. package/esm2022/themes/default/index.mjs +3 -0
  44. package/esm2022/themes/default/lib/default.module.mjs +74 -0
  45. package/esm2022/themes/default/lib/entity-reuse.strategy.mjs +21 -0
  46. package/esm2022/themes/default/lib/layout.routes.mjs +20 -0
  47. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +114 -0
  48. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +93 -0
  49. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +163 -0
  50. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +64 -0
  51. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +62 -0
  52. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +82 -0
  53. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +77 -0
  54. package/esm2022/themes/default/lib/layouts/root-layout/components/footer/footer.component.mjs +14 -0
  55. package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +29 -0
  56. package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +5 -0
  57. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +78 -0
  58. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +91 -0
  59. package/esm2022/themes/default/lib/pages/errors/error-401/error-401.component.mjs +28 -0
  60. package/esm2022/themes/default/lib/pages/errors/error-404/error-404.component.mjs +22 -0
  61. package/esm2022/themes/default/lib/pages/errors/error-offline/error-offline.component.mjs +16 -0
  62. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +2 -2
  63. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +21 -12
  64. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +3 -2
  65. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-column.component.mjs +2 -2
  66. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-view.component.mjs +2 -2
  67. package/esm2022/workflow/lib/actions/start-workflow.action.mjs +28 -0
  68. package/esm2022/workflow/lib/workflow.module.mjs +7 -2
  69. package/esm2022/workflow/lib/workflow.service.mjs +53 -6
  70. package/esm2022/workflow/lib/workflow.types.mjs +12 -6
  71. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-DAmNXjDm.mjs → acorex-platform-common-avatar-widget-edit.component-B-of5ssU.mjs} +3 -2
  72. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-DAmNXjDm.mjs.map → acorex-platform-common-avatar-widget-edit.component-B-of5ssU.mjs.map} +1 -1
  73. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs → acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs} +4 -3
  74. package/fesm2022/acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs.map +1 -0
  75. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs → acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs} +4 -3
  76. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs.map +1 -0
  77. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BiUHPDqV.mjs → acorex-platform-common-checkbox-widget-column.component-X9d1iY_F.mjs} +4 -3
  78. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BiUHPDqV.mjs.map → acorex-platform-common-checkbox-widget-column.component-X9d1iY_F.mjs.map} +1 -1
  79. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs → acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs} +4 -3
  80. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs.map +1 -0
  81. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs → acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs} +4 -3
  82. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs.map → acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs.map} +1 -1
  83. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs → acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs} +4 -3
  84. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs.map +1 -0
  85. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-B0s6FN-g.mjs → acorex-platform-common-dateTime-widget-edit.component-D8FSiqAo.mjs} +4 -3
  86. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-B0s6FN-g.mjs.map → acorex-platform-common-dateTime-widget-edit.component-D8FSiqAo.mjs.map} +1 -1
  87. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs → acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs} +4 -3
  88. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs.map → acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs.map} +1 -1
  89. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs → acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs} +4 -3
  90. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs.map → acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs.map} +1 -1
  91. package/fesm2022/{acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs → acorex-platform-common-email-widget-column.component-BgNdL62k.mjs} +4 -3
  92. package/fesm2022/acorex-platform-common-email-widget-column.component-BgNdL62k.mjs.map +1 -0
  93. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs → acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs} +4 -3
  94. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs.map → acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs.map} +1 -1
  95. package/fesm2022/{acorex-platform-common-email-widget-view.component-B6puyycL.mjs → acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs} +4 -3
  96. package/fesm2022/{acorex-platform-common-email-widget-view.component-B6puyycL.mjs.map → acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs.map} +1 -1
  97. package/fesm2022/{acorex-platform-common-file-widget-column.component-C1faGR4K.mjs → acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs} +4 -3
  98. package/fesm2022/acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs.map +1 -0
  99. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs → acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs} +4 -3
  100. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs.map → acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs.map} +1 -1
  101. package/fesm2022/{acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs → acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs} +4 -3
  102. package/fesm2022/acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs.map +1 -0
  103. package/fesm2022/{acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs → acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs} +4 -3
  104. package/fesm2022/{acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs.map → acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs.map} +1 -1
  105. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs → acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs} +4 -3
  106. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs.map → acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs.map} +1 -1
  107. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs → acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs} +4 -3
  108. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs.map +1 -0
  109. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs → acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs} +4 -3
  110. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs.map → acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs.map} +1 -1
  111. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs → acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs} +4 -3
  112. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs.map +1 -0
  113. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs → acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs} +4 -3
  114. package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs.map +1 -0
  115. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs → acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs} +4 -3
  116. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs.map +1 -0
  117. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs → acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs} +4 -3
  118. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs.map +1 -0
  119. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs → acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs} +4 -3
  120. package/fesm2022/acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs.map +1 -0
  121. package/fesm2022/{acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs → acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs} +4 -3
  122. package/fesm2022/acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs.map +1 -0
  123. package/fesm2022/{acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs → acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs} +4 -3
  124. package/fesm2022/acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs.map +1 -0
  125. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs → acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs} +4 -3
  126. package/fesm2022/acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs.map +1 -0
  127. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-kiEHxJia.mjs → acorex-platform-common-messenger-widget-edit.component-B_FG_n0O.mjs} +4 -3
  128. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-kiEHxJia.mjs.map → acorex-platform-common-messenger-widget-edit.component-B_FG_n0O.mjs.map} +1 -1
  129. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs → acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs} +4 -3
  130. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs.map → acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs.map} +1 -1
  131. package/fesm2022/{acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs → acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs} +4 -3
  132. package/fesm2022/acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs.map +1 -0
  133. package/fesm2022/{acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs → acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs} +4 -3
  134. package/fesm2022/{acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs.map → acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs.map} +1 -1
  135. package/fesm2022/{acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs → acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs} +4 -3
  136. package/fesm2022/acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs.map +1 -0
  137. package/fesm2022/{acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs → acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs} +4 -3
  138. package/fesm2022/{acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs.map → acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs.map} +1 -1
  139. package/fesm2022/{acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs → acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs} +4 -3
  140. package/fesm2022/acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs.map +1 -0
  141. package/fesm2022/{acorex-platform-common-password-widget-view.component-CKaQItON.mjs → acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs} +4 -3
  142. package/fesm2022/{acorex-platform-common-password-widget-view.component-CKaQItON.mjs.map → acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs.map} +1 -1
  143. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs → acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs} +4 -3
  144. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs.map → acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs.map} +1 -1
  145. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs → acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs} +4 -3
  146. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs.map → acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs.map} +1 -1
  147. package/fesm2022/{acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs → acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs} +4 -3
  148. package/fesm2022/{acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs.map → acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs.map} +1 -1
  149. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BPzwY_8L.mjs → acorex-platform-common-rich-text-widget-column.component-DDT58tca.mjs} +4 -3
  150. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BPzwY_8L.mjs.map → acorex-platform-common-rich-text-widget-column.component-DDT58tca.mjs.map} +1 -1
  151. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs → acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs} +4 -3
  152. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs.map +1 -0
  153. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs → acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs} +4 -3
  154. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs.map +1 -0
  155. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-_MglaOmo.mjs → acorex-platform-common-selection-list-widget-column.component-BCCmg8MI.mjs} +4 -3
  156. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-_MglaOmo.mjs.map → acorex-platform-common-selection-list-widget-column.component-BCCmg8MI.mjs.map} +1 -1
  157. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-QKw_tyOd.mjs → acorex-platform-common-selection-list-widget-edit.component-B5eUdN2R.mjs} +4 -3
  158. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-B5eUdN2R.mjs.map +1 -0
  159. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs → acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs} +4 -3
  160. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs.map +1 -0
  161. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-CjDiuUdj.mjs → acorex-platform-common-selection-list-widget-view.component-Bxvd_AKZ.mjs} +4 -3
  162. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-Bxvd_AKZ.mjs.map +1 -0
  163. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DF29uWl2.mjs → acorex-platform-common-signature-pad-widget-edit.component-CNjYCEi6.mjs} +4 -3
  164. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DF29uWl2.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-CNjYCEi6.mjs.map} +1 -1
  165. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-BWzoR4HM.mjs → acorex-platform-common-signature-pad-widget-view.component-CsiBv_7i.mjs} +4 -3
  166. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CsiBv_7i.mjs.map +1 -0
  167. package/fesm2022/{acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs → acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs} +4 -3
  168. package/fesm2022/acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs.map +1 -0
  169. package/fesm2022/{acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs → acorex-platform-common-text-widget-column.component-qXusAevm.mjs} +4 -3
  170. package/fesm2022/{acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs.map → acorex-platform-common-text-widget-column.component-qXusAevm.mjs.map} +1 -1
  171. package/fesm2022/{acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs → acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs} +4 -3
  172. package/fesm2022/{acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs.map → acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs.map} +1 -1
  173. package/fesm2022/{acorex-platform-common-text-widget-view.component-WbZtm_bf.mjs → acorex-platform-common-text-widget-view.component-BpxTaeQW.mjs} +4 -3
  174. package/fesm2022/{acorex-platform-common-text-widget-view.component-WbZtm_bf.mjs.map → acorex-platform-common-text-widget-view.component-BpxTaeQW.mjs.map} +1 -1
  175. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs → acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs} +4 -3
  176. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs.map → acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs.map} +1 -1
  177. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs → acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs} +4 -3
  178. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs.map +1 -0
  179. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs → acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs} +4 -3
  180. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs.map → acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs.map} +1 -1
  181. package/fesm2022/acorex-platform-common.mjs +252 -149
  182. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  183. package/fesm2022/acorex-platform-layout-builder.mjs +10 -1
  184. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  185. package/fesm2022/acorex-platform-layout-entity.mjs +445 -261
  186. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  187. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs → acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs} +3 -3
  188. package/fesm2022/acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs.map +1 -0
  189. package/fesm2022/acorex-platform-layouts.mjs +4 -4
  190. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  191. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs +96 -0
  192. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs.map +1 -0
  193. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs +85 -0
  194. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs.map +1 -0
  195. package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs +31 -0
  196. package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs.map +1 -0
  197. package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs +25 -0
  198. package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs.map +1 -0
  199. package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs +19 -0
  200. package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs.map +1 -0
  201. package/fesm2022/acorex-platform-themes-default.mjs +688 -0
  202. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -0
  203. package/fesm2022/acorex-platform-widgets.mjs +50 -42
  204. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  205. package/fesm2022/acorex-platform-workflow.mjs +184 -104
  206. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  207. package/layout/builder/lib/builder/widget.types.d.ts +3 -0
  208. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +6 -5
  209. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +4 -0
  210. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +10 -5
  211. package/layout/entity/lib/entity-master-update.viewmodel.d.ts +0 -1
  212. package/layout/entity/lib/entity.viewmodel.d.ts +3 -3
  213. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +18 -3
  214. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.d.ts +8 -1
  215. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +10 -3
  216. package/layout/entity/lib/workflows/create-entity.workflow.d.ts +0 -2
  217. package/layout/entity/lib/workflows/delete-entity.workflow.d.ts +2 -4
  218. package/layout/entity/lib/workflows/modify-section.workflow.d.ts +2 -5
  219. package/layout/entity/lib/workflows/show-list.workflow.d.ts +10 -0
  220. package/package.json +7 -1
  221. package/themes/default/README.md +3 -0
  222. package/themes/default/index.d.ts +2 -0
  223. package/themes/default/lib/default.module.d.ts +8 -0
  224. package/themes/default/lib/entity-reuse.strategy.d.ts +8 -0
  225. package/themes/default/lib/layout.routes.d.ts +2 -0
  226. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +24 -0
  227. package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +17 -0
  228. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +29 -0
  229. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +18 -0
  230. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.d.ts +16 -0
  231. package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +16 -0
  232. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +13 -0
  233. package/themes/default/lib/layouts/root-layout/components/footer/footer.component.d.ts +5 -0
  234. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +10 -0
  235. package/themes/default/lib/layouts/root-layout/index.d.ts +4 -0
  236. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +32 -0
  237. package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +24 -0
  238. package/themes/default/lib/pages/errors/error-401/error-401.component.d.ts +10 -0
  239. package/themes/default/lib/pages/errors/error-404/error-404.component.d.ts +8 -0
  240. package/themes/default/lib/pages/errors/error-offline/error-offline.component.d.ts +9 -0
  241. package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.d.ts +4 -0
  242. package/workflow/lib/actions/start-workflow.action.d.ts +10 -0
  243. package/workflow/lib/workflow.service.d.ts +4 -2
  244. package/workflow/lib/workflow.types.d.ts +3 -1
  245. package/fesm2022/acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs.map +0 -1
  246. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs.map +0 -1
  247. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs.map +0 -1
  248. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs.map +0 -1
  249. package/fesm2022/acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs.map +0 -1
  250. package/fesm2022/acorex-platform-common-file-widget-column.component-C1faGR4K.mjs.map +0 -1
  251. package/fesm2022/acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs.map +0 -1
  252. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs.map +0 -1
  253. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs.map +0 -1
  254. package/fesm2022/acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs.map +0 -1
  255. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs.map +0 -1
  256. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs.map +0 -1
  257. package/fesm2022/acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs.map +0 -1
  258. package/fesm2022/acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs.map +0 -1
  259. package/fesm2022/acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs.map +0 -1
  260. package/fesm2022/acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs.map +0 -1
  261. package/fesm2022/acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs.map +0 -1
  262. package/fesm2022/acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs.map +0 -1
  263. package/fesm2022/acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs.map +0 -1
  264. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs.map +0 -1
  265. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs.map +0 -1
  266. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-QKw_tyOd.mjs.map +0 -1
  267. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs.map +0 -1
  268. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-CjDiuUdj.mjs.map +0 -1
  269. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-BWzoR4HM.mjs.map +0 -1
  270. package/fesm2022/acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs.map +0 -1
  271. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs.map +0 -1
  272. package/fesm2022/acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs.map +0 -1
@@ -0,0 +1,688 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ViewEncapsulation, inject, signal, ViewChild, NgModule, ChangeDetectionStrategy, Input, EventEmitter, Output, effect } from '@angular/core';
3
+ import * as i1 from '@acorex/platform/common';
4
+ import { getRootDrawer, AXPLayoutRootDrawerToggle, AXP_MENU_LOADER, AXP_PLATFORM_CONFIG_TOKEN, AXPLayoutService, AXPRouteUtilityService, isSmallScreen, AXPNavigateAction, AXPLayoutRootDrawerClose, AXPLogoComponent, AXPComponentSlotModule, AXPStickyDirective, AXPGridLayoutDirective, getChildDrawer, AXPCommonModule } from '@acorex/platform/common';
5
+ import * as i2 from '@angular/router';
6
+ import { Router, RouterModule, ActivatedRoute, RouteReuseStrategy } from '@angular/router';
7
+ import { Store } from '@ngrx/store';
8
+ import * as i1$1 from '@angular/common';
9
+ import { CommonModule } from '@angular/common';
10
+ import * as i4 from '@acorex/components/drawer';
11
+ import { AXDrawerModule } from '@acorex/components/drawer';
12
+ import * as i2$1 from '@acorex/core/utils';
13
+ import { AXUnsubscriber } from '@acorex/core/utils';
14
+ import * as i3 from '@acorex/components/decorators';
15
+ import { AXDecoratorModule } from '@acorex/components/decorators';
16
+ import * as i5 from '@acorex/components/side-menu';
17
+ import { AXSideMenuModule } from '@acorex/components/side-menu';
18
+ import * as i5$1 from '@acorex/components/loading';
19
+ import { AXLoadingModule } from '@acorex/components/loading';
20
+ import * as i8 from '@acorex/platform/auth';
21
+ import { AXPAuthModule } from '@acorex/platform/auth';
22
+ import { AXAvatarModule } from '@acorex/components/avatar';
23
+ import * as i7$1 from '@acorex/components/badge';
24
+ import { AXBadgeModule } from '@acorex/components/badge';
25
+ import * as i4$3 from '@acorex/components/button';
26
+ import { AXButtonModule } from '@acorex/components/button';
27
+ import * as i4$2 from '@acorex/components/dropdown';
28
+ import { AXDropdownModule } from '@acorex/components/dropdown';
29
+ import * as i3$2 from '@acorex/components/image';
30
+ import { AXImageModule } from '@acorex/components/image';
31
+ import { AXPopoverModule } from '@acorex/components/popover';
32
+ import * as i7 from '@acorex/components/tabs';
33
+ import { AXTabsModule } from '@acorex/components/tabs';
34
+ import * as i1$2 from '@acorex/components/action-sheet';
35
+ import { AXActionSheetModule } from '@acorex/components/action-sheet';
36
+ import * as i9 from '@acorex/components/breadcrumbs';
37
+ import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
38
+ import { AXDialogModule } from '@acorex/components/dialog';
39
+ import * as i2$2 from '@acorex/components/form';
40
+ import { AXFormModule } from '@acorex/components/form';
41
+ import * as i8$1 from '@acorex/platform/layout/builder';
42
+ import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
43
+ import { AXPWidgetsModule } from '@acorex/platform/widgets';
44
+ import * as i4$1 from '@acorex/components/data-table';
45
+ import { AXDataTableModule } from '@acorex/components/data-table';
46
+ import * as i3$1 from '@acorex/core/platform';
47
+ import { AXTooltipModule } from '@acorex/components/tooltip';
48
+ import * as i11 from '@acorex/components/search-box';
49
+ import { AXSearchBoxModule } from '@acorex/components/search-box';
50
+ import * as i1$3 from '@angular/forms';
51
+ import { FormsModule } from '@angular/forms';
52
+ import { AXP_ENTITY_CONFIG_TOKEN } from '@acorex/platform/layout/entity';
53
+ import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle, CdkDragPlaceholder } from '@angular/cdk/drag-drop';
54
+ import * as i4$4 from '@acorex/components/switch';
55
+ import { AXSwitchModule } from '@acorex/components/switch';
56
+ import * as i5$2 from '@acorex/components/select-box';
57
+ import { AXSelectBoxModule } from '@acorex/components/select-box';
58
+
59
+ class AXPRootLayoutFooterComponent {
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPRootLayoutFooterComponent, selector: "axp-dashboard-admin-footer", host: { classAttribute: "ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t" }, providers: [], ngImport: i0, template: "<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\r\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\r\n</div>\r\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\r\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\r\n</div>", dependencies: [{ kind: "directive", type: i1.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name"] }], encapsulation: i0.ViewEncapsulation.None }); }
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutFooterComponent, decorators: [{
64
+ type: Component,
65
+ args: [{ selector: 'axp-dashboard-admin-footer', encapsulation: ViewEncapsulation.None, providers: [], host: {
66
+ class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',
67
+ }, template: "<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\r\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\r\n</div>\r\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\r\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\r\n</div>" }]
68
+ }] });
69
+
70
+ class AXPRootLayoutHeaderComponent {
71
+ constructor() {
72
+ this.store = inject((Store));
73
+ this.router = inject(Router);
74
+ this.isOpen = this.store.select(getRootDrawer());
75
+ }
76
+ menuClick() {
77
+ this.store.dispatch(AXPLayoutRootDrawerToggle());
78
+ }
79
+ logoClick() {
80
+ this.router.navigate(['/']);
81
+ }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
83
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header", host: { classAttribute: "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" }, ngImport: i0, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\r\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\r\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\r\n </div>\r\n <div class=\"ax-flex ax-items-center\">\r\n <div\r\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\"\r\n (click)=\"menuClick()\">\r\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !(isOpen | async) }\"> </i>\r\n </div>\r\n <axp-component-slot name=\"header-start\"></axp-component-slot>\r\n </div>\r\n <div class=\"ax-flex ax-items-center\">\r\n <axp-component-slot name=\"header-end\"></axp-component-slot>\r\n </div>\r\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
84
+ }
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutHeaderComponent, decorators: [{
86
+ type: Component,
87
+ args: [{ selector: 'axp-dashboard-admin-header', encapsulation: ViewEncapsulation.None, host: {
88
+ 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',
89
+ }, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\r\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\r\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\r\n </div>\r\n <div class=\"ax-flex ax-items-center\">\r\n <div\r\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\"\r\n (click)=\"menuClick()\">\r\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !(isOpen | async) }\"> </i>\r\n </div>\r\n <axp-component-slot name=\"header-start\"></axp-component-slot>\r\n </div>\r\n <div class=\"ax-flex ax-items-center\">\r\n <axp-component-slot name=\"header-end\"></axp-component-slot>\r\n </div>\r\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"] }]
90
+ }] });
91
+
92
+ class AXPRootLayoutComponent {
93
+ get layoutService() {
94
+ return this._layoutService;
95
+ }
96
+ set layoutService(value) {
97
+ this._layoutService = value;
98
+ }
99
+ constructor() {
100
+ this.manuLoader = inject(AXP_MENU_LOADER);
101
+ this.config = inject(AXP_PLATFORM_CONFIG_TOKEN);
102
+ this._layoutService = inject(AXPLayoutService);
103
+ this.subscriber = inject(AXUnsubscriber);
104
+ this.store = inject((Store));
105
+ this.routeUtilService = inject(AXPRouteUtilityService);
106
+ this.isActiveRoute = (item) => this.routeUtilService.isRouteActive(item);
107
+ this.logo = this.config.logo;
108
+ this.isOpen = this.store.select(getRootDrawer());
109
+ this.isSM = this.store.select(isSmallScreen());
110
+ this.isLoading = signal(false);
111
+ this.showNavigationProgress = signal(false);
112
+ this.menuItems$ = this.manuLoader.getItems(1);
113
+ this.layoutService.navigationLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {
114
+ this.showNavigationProgress.set(value);
115
+ });
116
+ //
117
+ this.layoutService.overlayLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {
118
+ this.isLoading.set(value);
119
+ });
120
+ }
121
+ handleMenuClick(e, item) {
122
+ if (item.path && item.children?.length)
123
+ return;
124
+ if (item.command) {
125
+ this.store.dispatch(item.command);
126
+ }
127
+ else if (item.path) {
128
+ this.store.dispatch(AXPNavigateAction({ payload: { commands: item.path } }));
129
+ }
130
+ }
131
+ handleCollapsedChange(value) {
132
+ if (value)
133
+ this.store.dispatch(AXPLayoutRootDrawerClose());
134
+ }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
136
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPRootLayoutComponent, selector: "ng-component", providers: [
137
+ {
138
+ provide: AXUnsubscriber,
139
+ },
140
+ ], viewQueries: [{ propertyName: "drawer", first: true, predicate: ["drawer"], descendants: true }], ngImport: i0, template: "<ax-drawer-container>\r\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\"(isSM | async) ? 'overlay' : 'push'\"\r\n (collapsedChange)=\"handleCollapsedChange($event)\">\r\n <ax-content\r\n class=\"ax-w-64 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\">\r\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\r\n <axp-logo [source]=\"logo?.light\"></axp-logo>\r\n </header>\r\n <div class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\r\n <ax-side-menu>\r\n <ng-container *ngFor=\"let node of this.menuItems$ | async\" [ngTemplateOutlet]=\"sideMenu\"\r\n [ngTemplateOutletContext]=\"{ $implicit: node }\">\r\n </ng-container>\r\n </ax-side-menu>\r\n <ng-template #sideMenu let-item>\r\n @if(item.type=='group') {\r\n <ax-title *permission=\"item.data?.requiredPermission;\">{{ item.text }}</ax-title>\r\n } @else {\r\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"handleMenuClick($event, item)\"\r\n [active]=\"isActiveRoute(item) && !item.children?.length\" [isCollapsed]=\"item.opened == true ? false : true\">\r\n <ax-prefix>\r\n <ax-icon [class]=\"item.icon\"></ax-icon>\r\n </ax-prefix>\r\n {{ item.text }}\r\n <ng-container *ngIf=\"item.children\">\r\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\r\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\r\n </ng-container>\r\n </ng-container>\r\n </ax-side-menu-item>\r\n }\r\n </ng-template>\r\n </div>\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\r\n @if(showNavigationProgress())\r\n {\r\n <div class=\"axp-navigating-progress\">\r\n <div></div>\r\n </div>\r\n }\r\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\r\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"isLoading()\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\r\n </ax-content>\r\n</ax-drawer-container>", dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i4.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i4.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "component", type: i5.AXSideMenuComponent, selector: "ax-side-menu" }, { kind: "component", type: i5.AXSideMenuItemComponent, selector: "ax-side-menu-item", inputs: ["disabled", "color", "isLoading", "text", "isCollapsed", "active"], outputs: ["isLoadingChange", "textChange", "isCollapsedChange", "activeChange", "onClick"] }, { kind: "directive", type: i5$1.AXLoadingDirective, selector: "[axIsLoading]", inputs: ["axIsLoading"] }, { kind: "component", type: i1.AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "directive", type: i8.AXPPermissionDirective, selector: "[permission]", inputs: ["permission", "permissionElse"] }, { kind: "component", type: AXPRootLayoutFooterComponent, selector: "axp-dashboard-admin-footer" }, { kind: "component", type: AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header" }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
141
+ }
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRootLayoutComponent, decorators: [{
143
+ type: Component,
144
+ args: [{ encapsulation: ViewEncapsulation.None, providers: [
145
+ {
146
+ provide: AXUnsubscriber,
147
+ },
148
+ ], template: "<ax-drawer-container>\r\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\"(isSM | async) ? 'overlay' : 'push'\"\r\n (collapsedChange)=\"handleCollapsedChange($event)\">\r\n <ax-content\r\n class=\"ax-w-64 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\">\r\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\r\n <axp-logo [source]=\"logo?.light\"></axp-logo>\r\n </header>\r\n <div class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\r\n <ax-side-menu>\r\n <ng-container *ngFor=\"let node of this.menuItems$ | async\" [ngTemplateOutlet]=\"sideMenu\"\r\n [ngTemplateOutletContext]=\"{ $implicit: node }\">\r\n </ng-container>\r\n </ax-side-menu>\r\n <ng-template #sideMenu let-item>\r\n @if(item.type=='group') {\r\n <ax-title *permission=\"item.data?.requiredPermission;\">{{ item.text }}</ax-title>\r\n } @else {\r\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"handleMenuClick($event, item)\"\r\n [active]=\"isActiveRoute(item) && !item.children?.length\" [isCollapsed]=\"item.opened == true ? false : true\">\r\n <ax-prefix>\r\n <ax-icon [class]=\"item.icon\"></ax-icon>\r\n </ax-prefix>\r\n {{ item.text }}\r\n <ng-container *ngIf=\"item.children\">\r\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\r\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\r\n </ng-container>\r\n </ng-container>\r\n </ax-side-menu-item>\r\n }\r\n </ng-template>\r\n </div>\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\r\n @if(showNavigationProgress())\r\n {\r\n <div class=\"axp-navigating-progress\">\r\n <div></div>\r\n </div>\r\n }\r\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\r\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"isLoading()\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\r\n </ax-content>\r\n</ax-drawer-container>" }]
149
+ }], ctorParameters: () => [], propDecorators: { drawer: [{
150
+ type: ViewChild,
151
+ args: ['drawer']
152
+ }] } });
153
+
154
+ class AXPAdminRootLayoutModule {
155
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAdminRootLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
156
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: AXPAdminRootLayoutModule, declarations: [AXPRootLayoutFooterComponent,
157
+ AXPRootLayoutHeaderComponent,
158
+ AXPRootLayoutComponent], imports: [CommonModule,
159
+ RouterModule,
160
+ AXButtonModule,
161
+ AXDecoratorModule,
162
+ AXDropdownModule,
163
+ AXAvatarModule,
164
+ AXImageModule,
165
+ AXImageModule,
166
+ AXPopoverModule,
167
+ AXBadgeModule,
168
+ AXTabsModule,
169
+ AXDrawerModule,
170
+ AXSideMenuModule,
171
+ AXLoadingModule,
172
+ AXPLogoComponent,
173
+ AXPAuthModule,
174
+ AXPComponentSlotModule] }); }
175
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAdminRootLayoutModule, imports: [CommonModule,
176
+ RouterModule,
177
+ AXButtonModule,
178
+ AXDecoratorModule,
179
+ AXDropdownModule,
180
+ AXAvatarModule,
181
+ AXImageModule,
182
+ AXImageModule,
183
+ AXPopoverModule,
184
+ AXBadgeModule,
185
+ AXTabsModule,
186
+ AXDrawerModule,
187
+ AXSideMenuModule,
188
+ AXLoadingModule,
189
+ AXPLogoComponent,
190
+ AXPAuthModule,
191
+ AXPComponentSlotModule] }); }
192
+ }
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAdminRootLayoutModule, decorators: [{
194
+ type: NgModule,
195
+ args: [{
196
+ imports: [
197
+ CommonModule,
198
+ RouterModule,
199
+ AXButtonModule,
200
+ AXDecoratorModule,
201
+ AXDropdownModule,
202
+ AXAvatarModule,
203
+ AXImageModule,
204
+ AXImageModule,
205
+ AXPopoverModule,
206
+ AXBadgeModule,
207
+ AXTabsModule,
208
+ AXDrawerModule,
209
+ AXSideMenuModule,
210
+ AXLoadingModule,
211
+ AXPLogoComponent,
212
+ AXPAuthModule,
213
+ AXPComponentSlotModule,
214
+ ],
215
+ exports: [],
216
+ declarations: [
217
+ AXPRootLayoutFooterComponent,
218
+ AXPRootLayoutHeaderComponent,
219
+ AXPRootLayoutComponent,
220
+ ],
221
+ providers: [],
222
+ }]
223
+ }] });
224
+
225
+ const routes = [
226
+ {
227
+ path: 'error',
228
+ children: [
229
+ {
230
+ path: 'offline',
231
+ loadComponent: () => import('./acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs').then(c => c.AXPErrorOfflineComponent),
232
+ },
233
+ {
234
+ path: '404',
235
+ loadComponent: () => import('./acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs').then(c => c.AXPError404Component),
236
+ },
237
+ {
238
+ path: '401',
239
+ loadComponent: () => import('./acorex-platform-themes-default-error-401.component-Djuin07Z.mjs').then(c => c.AXPError401Component),
240
+ },
241
+ ]
242
+ },
243
+ ];
244
+
245
+ class AXPEntityDetailListViewComponent {
246
+ constructor(actionSheetService, unsubscriber, platform) {
247
+ this.actionSheetService = actionSheetService;
248
+ this.unsubscriber = unsubscriber;
249
+ this.platform = platform;
250
+ this.layout = inject(AXPLayoutService);
251
+ this.dropdownRowItems = [
252
+ {
253
+ text: 'Details',
254
+ icon: 'fa-solid fa-eye',
255
+ name: 'open-entity',
256
+ divided: true,
257
+ },
258
+ {
259
+ text: 'Delete',
260
+ icon: 'fa-solid fa-trash-can',
261
+ name: 'delete-entity',
262
+ color: 'danger',
263
+ disabled: true,
264
+ },
265
+ ];
266
+ this.getDropdownRowItems = (rowData) => {
267
+ return Promise.resolve(this.dropdownRowItems);
268
+ };
269
+ }
270
+ handleChangeSearchValue(e) {
271
+ if (e.isUserInteraction) {
272
+ this.vm.applyInlineFilter(e.value);
273
+ }
274
+ }
275
+ handleRowDbClick(e) {
276
+ const d = {
277
+ component: e.component,
278
+ name: this.dropdownRowItems[0].name,
279
+ data: e.data,
280
+ };
281
+ this.handleRowCommandClick(d);
282
+ }
283
+ async handleRowCommandClick(e) {
284
+ this.vm.executeCommand(e.name, e.data);
285
+ }
286
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityDetailListViewComponent, deps: [{ token: i1$2.AXActionSheetService }, { token: i2$1.AXUnsubscriber }, { token: i3$1.AXPlatform }], target: i0.ɵɵFactoryTarget.Component }); }
287
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPEntityDetailListViewComponent, isStandalone: true, selector: "axp-entity-detail-list-view", inputs: { vm: ["viewModel", "vm"] }, providers: [AXUnsubscriber], viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], ngImport: i0, template: "<div class=\"ax-flex ax-p-2\">\r\n <div class=\"ax-flex ax-flex-1 ax-overflow-auto ax-h-48\">\r\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1 \" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\r\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\r\n (onRowDbClick)=\"handleRowDbClick($event)\">\r\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\r\n @for(col of vm.columns();track col.name) {\r\n @if(col.visible)\r\n {\r\n <axp-widget-column-renderer [caption]=\"col.title\" [node]=\"col.node()\"></axp-widget-column-renderer>\r\n }\r\n }\r\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\r\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\r\n </ax-data-table>\r\n </div>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXActionSheetModule }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "ngmodule", type: AXDialogModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTabsModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "ngmodule", type: AXDataTableModule }, { kind: "component", type: i4$1.AXDataTableComponent, selector: "ax-data-table", inputs: ["dataSource", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged"] }, { kind: "component", type: i4$1.AXRowSelectColumnComponent, selector: "ax-select-column", inputs: ["width", "caption", "fixed"] }, { kind: "component", type: i4$1.AXRowDropdownCommandColumnComponent, selector: "ax-dropdown-command-column", inputs: ["width", "caption", "fixed", "footerTemplate", "items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type:
288
+ //
289
+ AXPLayoutBuilderModule }, { kind: "component", type: i8$1.AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: ["caption", "node", "footerTemplate", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXPWidgetsModule }, { kind: "ngmodule", type: AXPAuthModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
290
+ }
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityDetailListViewComponent, decorators: [{
292
+ type: Component,
293
+ args: [{ selector: 'axp-entity-detail-list-view', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [AXUnsubscriber], imports: [
294
+ CommonModule,
295
+ FormsModule,
296
+ RouterModule,
297
+ AXButtonModule,
298
+ AXDecoratorModule,
299
+ AXBadgeModule,
300
+ AXDropdownModule,
301
+ AXPopoverModule,
302
+ AXFormModule,
303
+ AXActionSheetModule,
304
+ AXDrawerModule,
305
+ AXDialogModule,
306
+ AXLoadingModule,
307
+ AXTabsModule,
308
+ AXTooltipModule,
309
+ AXBreadcrumbsModule,
310
+ AXSearchBoxModule,
311
+ AXDataTableModule,
312
+ //
313
+ AXPLayoutBuilderModule,
314
+ AXPWidgetsModule,
315
+ AXPStickyDirective,
316
+ AXPGridLayoutDirective,
317
+ AXPAuthModule,
318
+ ], standalone: true, template: "<div class=\"ax-flex ax-p-2\">\r\n <div class=\"ax-flex ax-flex-1 ax-overflow-auto ax-h-48\">\r\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1 \" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\r\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\r\n (onRowDbClick)=\"handleRowDbClick($event)\">\r\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\r\n @for(col of vm.columns();track col.name) {\r\n @if(col.visible)\r\n {\r\n <axp-widget-column-renderer [caption]=\"col.title\" [node]=\"col.node()\"></axp-widget-column-renderer>\r\n }\r\n }\r\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\r\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\r\n </ax-data-table>\r\n </div>\r\n</div>" }]
319
+ }], ctorParameters: () => [{ type: i1$2.AXActionSheetService }, { type: i2$1.AXUnsubscriber }, { type: i3$1.AXPlatform }], propDecorators: { vm: [{
320
+ type: Input,
321
+ args: ['viewModel']
322
+ }], grid: [{
323
+ type: ViewChild,
324
+ args: ['grid']
325
+ }] } });
326
+
327
+ class AXPEntityMasterSingleViewComponent {
328
+ constructor() {
329
+ this.activeRoute = inject(ActivatedRoute);
330
+ this.vm = this.activeRoute.snapshot.data['vm'];
331
+ //
332
+ this.store = inject((Store));
333
+ this.isSM = this.store.select(isSmallScreen());
334
+ this.isOpen = this.store.select(getChildDrawer());
335
+ this.selectedTabIndex = signal(0);
336
+ }
337
+ handleActiveTabChanged(e) {
338
+ this.selectedTabIndex.set(e.index);
339
+ }
340
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityMasterSingleViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
341
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPEntityMasterSingleViewComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<ax-drawer-container>\r\n <!-- <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\" (isSM | async) ? 'overlay' : 'push'\"\r\n *ngIf=\"loader.hasSections$ | async\" (collapsedChange)=\"handleCollapsedChange($event)\">\r\n <ax-content class=\"ax-border-e ax-p-6 ax-w-64\">\r\n <p class=\"ax-text-xl ax-font-bold ax-mb-6\">{{loader.sectionTitle}}</p>\r\n <ax-tabs look=\"with-line\" location=\"start\">\r\n @for(tab of (loader.sections$ | async); track tab.name)\r\n {\r\n <ax-tab-item [text]=\"tab.title\" [active]=\"isActive(tab)\" (onClick)=\"handleMenuClick($event,tab)\"\r\n [disabled]=\"editForm.context\">\r\n </ax-tab-item>\r\n }\r\n </ax-tabs>\r\n </ax-content>\r\n </ax-drawer> -->\r\n <ax-content #content class=\"ax-overflow-x-hidden\">\r\n <div\r\n class=\"ax-flex ax-flex-col ax-gap-4 ax-min-h-full ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\">\r\n <div class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\" #sticky=\"axpSticky\"\r\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\" [stickyOffset]=\"50\"\r\n [stickyParent]=\"content.getHostElement()\">\r\n <!-------- Begin Toolbar -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <!-------- Begin Title -------->\r\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\r\n <div class=\"ax-text-xl md:ax-text-3xl ax-font-bold\">{{ vm.title()}}</div>\r\n @if(vm.description())\r\n {\r\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">{{\r\n vm.description() }}</div>\r\n }\r\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\"\r\n [class.ax-hidden]=\"isSM | async\">\r\n <ng-template #divider>\r\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\r\n </ng-template>\r\n @for(b of vm.beardcrumbs();track $index;let last=$last)\r\n {\r\n <ax-breadcrumbs-item [active]=\"last\" [class.!ax-font-semibold]=\"last\"\r\n [class.!ax-text-neutral-600]=\"last\" [routerLink]=\"b.url\">\r\n @if(b.icon)\r\n {\r\n <i [class]=\"b.icon\"></i>\r\n }\r\n {{b.title}}\r\n </ax-breadcrumbs-item>\r\n }\r\n </ax-breadcrumbs>\r\n </div>\r\n </div>\r\n <!-------- Finish Title -------->\r\n <!--------------------------------------------------------------->\r\n <!-- Begin Action Menu -->\r\n <div class=\"ax-flex ax-items-center ax-gap-3\">\r\n @for(tr of vm.primaryActions();track $index)\r\n {\r\n <ax-button [text]=\"tr.title\" [color]=\"tr.color\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n }\r\n @if(vm.secondaryActions().length) {\r\n <ax-button [text]=\"(isSM | async) ? null : 'Actions'\" color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\r\n </ax-prefix>\r\n <ax-dropdown-panel>\r\n <ax-button-item-list>\r\n @for(tr of vm.secondaryActions();track $index)\r\n {\r\n <ng-container>\r\n @if(tr.separated)\r\n {\r\n <ax-divider></ax-divider>\r\n }\r\n <ax-button-item [text]=\"tr.title\" class=\"ax-font-semibold ax-text-{{tr.color}}\"\r\n (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button-item>\r\n </ng-container>\r\n }\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n }\r\n </div>\r\n <!-- Finish Action Menu -->\r\n </div>\r\n <!----- Finish Toolbar ----->\r\n <!--------------------------------------------------------------->\r\n <ax-tabs [look]=\"'classic'\" class=\"ax-mt-4 ax-font-semibold\">\r\n <ax-tab-item text=\"Overview\">\r\n </ax-tab-item>\r\n <ax-tab-item text=\"History\">\r\n </ax-tab-item>\r\n <ax-tab-item text=\"Comments\">\r\n </ax-tab-item>\r\n </ax-tabs>\r\n </div>\r\n <!-- Begin Sections -->\r\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\r\n @for(section of vm.sections(); track section.name()) {\r\n <div class=\"ax-card ax-shadow-md ax-mt-2\" [gridLayout]=\"section.layout()\">\r\n <ax-form #form>\r\n <axp-widgets-container [context]=\"vm.context()\">\r\n <div class=\"ax-card-header !ax-py-2 !ax-px-4\">\r\n <p>\r\n <span class=\"!ax-text-lg ax-font-semibold \">{{ section.title()\r\n }}</span>\r\n <br>\r\n @if(section.description()) {\r\n <span class=\"ax-text-sm ax-font-normal ax-text-gray-500\">{{ section.description()\r\n }}</span>\r\n }\r\n </p>\r\n @if(section.editable()) {\r\n <ax-button class=\"ax-xs\" color=\"ghost\" [look]=\"'blank'\"\r\n (onClick)=\"vm.executeCommand('modify-entity-section',section)\">\r\n <ax-icon class=\"fa-solid fa-pen ax-text-gray-600\"> </ax-icon>\r\n </ax-button>\r\n }\r\n </div>\r\n <div class=\"ax-card-body !ax-grid !ax-grid-cols-12 !ax-gap-4\">\r\n @for(attr of section.props(); track $index) {\r\n <div class=\"ax-flex ax-flex-col ax-gap-1\" [gridLayout]=\"attr.layout()\">\r\n <div>\r\n <div>\r\n <span class=\"ax-font-semibold\">{{ attr.title() }}</span>\r\n </div>\r\n </div>\r\n <div class=\"ax-text-neutral-500\">\r\n <axp-widget-renderer [node]=\"attr.node()\"> </axp-widget-renderer>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </axp-widgets-container>\r\n </ax-form>\r\n </div>\r\n }\r\n </div>\r\n <!-- Finish Sections -->\r\n <!--------------------------------------------------------------->\r\n @if(vm.relatedEntities().length)\r\n {\r\n <ax-tabs [look]=\"'default'\" class=\"ax-mt-2 ax-font-semibold\" #tab\r\n (onActiveTabChanged)=\"handleActiveTabChanged($event)\">\r\n @for(e of vm.relatedEntities();track $index;let index= $index){\r\n <ax-tab-item [text]=\"e.title()\" [key]=\"index.toString()\">\r\n </ax-tab-item>\r\n }\r\n </ax-tabs>\r\n @for(e of vm.relatedEntities();track $index;let index= $index){\r\n <div [class.ax-hidden]=\"$index!=selectedTabIndex()\">\r\n <axp-entity-detail-list-view [viewModel]=\"e\"></axp-entity-detail-list-view>\r\n </div>\r\n }\r\n }\r\n\r\n </div>\r\n </ax-content>\r\n</ax-drawer-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4$2.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2$2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXActionSheetModule }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i4.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXDialogModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i7.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i7.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4$3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "component", type: i4$3.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i4$3.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "component", type: i9.AXBreadCrumbsComponent, selector: "ax-breadcrumbs" }, { kind: "component", type: i9.AXBreadCrumbsItemComponent, selector: "ax-breadcrumbs-item", inputs: ["disabled", "active"] }, { kind: "ngmodule", type:
342
+ //
343
+ AXPLayoutBuilderModule }, { kind: "component", type: i8$1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "variables", "functions"], outputs: ["contextChange"] }, { kind: "component", type: i8$1.AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: ["node"] }, { kind: "ngmodule", type: AXPWidgetsModule }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }, { kind: "directive", type: AXPGridLayoutDirective, selector: "[gridLayout]", inputs: ["gridLayout"] }, { kind: "component", type:
344
+ //
345
+ AXPEntityDetailListViewComponent, selector: "axp-entity-detail-list-view", inputs: ["viewModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
346
+ }
347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityMasterSingleViewComponent, decorators: [{
348
+ type: Component,
349
+ args: [{ imports: [
350
+ CommonModule,
351
+ RouterModule,
352
+ AXDecoratorModule,
353
+ AXDropdownModule,
354
+ AXPopoverModule,
355
+ AXFormModule,
356
+ AXActionSheetModule,
357
+ AXDrawerModule,
358
+ AXDialogModule,
359
+ AXLoadingModule,
360
+ AXTabsModule,
361
+ AXButtonModule,
362
+ AXBreadcrumbsModule,
363
+ //
364
+ AXPLayoutBuilderModule,
365
+ AXPWidgetsModule,
366
+ AXPStickyDirective,
367
+ AXPGridLayoutDirective,
368
+ //
369
+ AXPEntityDetailListViewComponent
370
+ ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ax-drawer-container>\r\n <!-- <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\" (isSM | async) ? 'overlay' : 'push'\"\r\n *ngIf=\"loader.hasSections$ | async\" (collapsedChange)=\"handleCollapsedChange($event)\">\r\n <ax-content class=\"ax-border-e ax-p-6 ax-w-64\">\r\n <p class=\"ax-text-xl ax-font-bold ax-mb-6\">{{loader.sectionTitle}}</p>\r\n <ax-tabs look=\"with-line\" location=\"start\">\r\n @for(tab of (loader.sections$ | async); track tab.name)\r\n {\r\n <ax-tab-item [text]=\"tab.title\" [active]=\"isActive(tab)\" (onClick)=\"handleMenuClick($event,tab)\"\r\n [disabled]=\"editForm.context\">\r\n </ax-tab-item>\r\n }\r\n </ax-tabs>\r\n </ax-content>\r\n </ax-drawer> -->\r\n <ax-content #content class=\"ax-overflow-x-hidden\">\r\n <div\r\n class=\"ax-flex ax-flex-col ax-gap-4 ax-min-h-full ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\">\r\n <div class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\" #sticky=\"axpSticky\"\r\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\" [stickyOffset]=\"50\"\r\n [stickyParent]=\"content.getHostElement()\">\r\n <!-------- Begin Toolbar -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <!-------- Begin Title -------->\r\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\r\n <div class=\"ax-text-xl md:ax-text-3xl ax-font-bold\">{{ vm.title()}}</div>\r\n @if(vm.description())\r\n {\r\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">{{\r\n vm.description() }}</div>\r\n }\r\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\"\r\n [class.ax-hidden]=\"isSM | async\">\r\n <ng-template #divider>\r\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\r\n </ng-template>\r\n @for(b of vm.beardcrumbs();track $index;let last=$last)\r\n {\r\n <ax-breadcrumbs-item [active]=\"last\" [class.!ax-font-semibold]=\"last\"\r\n [class.!ax-text-neutral-600]=\"last\" [routerLink]=\"b.url\">\r\n @if(b.icon)\r\n {\r\n <i [class]=\"b.icon\"></i>\r\n }\r\n {{b.title}}\r\n </ax-breadcrumbs-item>\r\n }\r\n </ax-breadcrumbs>\r\n </div>\r\n </div>\r\n <!-------- Finish Title -------->\r\n <!--------------------------------------------------------------->\r\n <!-- Begin Action Menu -->\r\n <div class=\"ax-flex ax-items-center ax-gap-3\">\r\n @for(tr of vm.primaryActions();track $index)\r\n {\r\n <ax-button [text]=\"tr.title\" [color]=\"tr.color\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n }\r\n @if(vm.secondaryActions().length) {\r\n <ax-button [text]=\"(isSM | async) ? null : 'Actions'\" color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\r\n </ax-prefix>\r\n <ax-dropdown-panel>\r\n <ax-button-item-list>\r\n @for(tr of vm.secondaryActions();track $index)\r\n {\r\n <ng-container>\r\n @if(tr.separated)\r\n {\r\n <ax-divider></ax-divider>\r\n }\r\n <ax-button-item [text]=\"tr.title\" class=\"ax-font-semibold ax-text-{{tr.color}}\"\r\n (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button-item>\r\n </ng-container>\r\n }\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n }\r\n </div>\r\n <!-- Finish Action Menu -->\r\n </div>\r\n <!----- Finish Toolbar ----->\r\n <!--------------------------------------------------------------->\r\n <ax-tabs [look]=\"'classic'\" class=\"ax-mt-4 ax-font-semibold\">\r\n <ax-tab-item text=\"Overview\">\r\n </ax-tab-item>\r\n <ax-tab-item text=\"History\">\r\n </ax-tab-item>\r\n <ax-tab-item text=\"Comments\">\r\n </ax-tab-item>\r\n </ax-tabs>\r\n </div>\r\n <!-- Begin Sections -->\r\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\r\n @for(section of vm.sections(); track section.name()) {\r\n <div class=\"ax-card ax-shadow-md ax-mt-2\" [gridLayout]=\"section.layout()\">\r\n <ax-form #form>\r\n <axp-widgets-container [context]=\"vm.context()\">\r\n <div class=\"ax-card-header !ax-py-2 !ax-px-4\">\r\n <p>\r\n <span class=\"!ax-text-lg ax-font-semibold \">{{ section.title()\r\n }}</span>\r\n <br>\r\n @if(section.description()) {\r\n <span class=\"ax-text-sm ax-font-normal ax-text-gray-500\">{{ section.description()\r\n }}</span>\r\n }\r\n </p>\r\n @if(section.editable()) {\r\n <ax-button class=\"ax-xs\" color=\"ghost\" [look]=\"'blank'\"\r\n (onClick)=\"vm.executeCommand('modify-entity-section',section)\">\r\n <ax-icon class=\"fa-solid fa-pen ax-text-gray-600\"> </ax-icon>\r\n </ax-button>\r\n }\r\n </div>\r\n <div class=\"ax-card-body !ax-grid !ax-grid-cols-12 !ax-gap-4\">\r\n @for(attr of section.props(); track $index) {\r\n <div class=\"ax-flex ax-flex-col ax-gap-1\" [gridLayout]=\"attr.layout()\">\r\n <div>\r\n <div>\r\n <span class=\"ax-font-semibold\">{{ attr.title() }}</span>\r\n </div>\r\n </div>\r\n <div class=\"ax-text-neutral-500\">\r\n <axp-widget-renderer [node]=\"attr.node()\"> </axp-widget-renderer>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </axp-widgets-container>\r\n </ax-form>\r\n </div>\r\n }\r\n </div>\r\n <!-- Finish Sections -->\r\n <!--------------------------------------------------------------->\r\n @if(vm.relatedEntities().length)\r\n {\r\n <ax-tabs [look]=\"'default'\" class=\"ax-mt-2 ax-font-semibold\" #tab\r\n (onActiveTabChanged)=\"handleActiveTabChanged($event)\">\r\n @for(e of vm.relatedEntities();track $index;let index= $index){\r\n <ax-tab-item [text]=\"e.title()\" [key]=\"index.toString()\">\r\n </ax-tab-item>\r\n }\r\n </ax-tabs>\r\n @for(e of vm.relatedEntities();track $index;let index= $index){\r\n <div [class.ax-hidden]=\"$index!=selectedTabIndex()\">\r\n <axp-entity-detail-list-view [viewModel]=\"e\"></axp-entity-detail-list-view>\r\n </div>\r\n }\r\n }\r\n\r\n </div>\r\n </ax-content>\r\n</ax-drawer-container>" }]
371
+ }] });
372
+
373
+ var entityMasterSingleView_component = /*#__PURE__*/Object.freeze({
374
+ __proto__: null,
375
+ AXPEntityMasterSingleViewComponent: AXPEntityMasterSingleViewComponent
376
+ });
377
+
378
+ class AXPListViewOptionsColumnsComponent {
379
+ constructor() {
380
+ this.store = inject((Store));
381
+ this.isSM = this.store.select(isSmallScreen());
382
+ this.onClosed = new EventEmitter();
383
+ }
384
+ handleVisibilityChange(e, name) {
385
+ if (e.isUserInteraction) {
386
+ const col = this.vm.columns().find(c => c.name == name);
387
+ if (col) {
388
+ col.visible = e.value ?? true;
389
+ }
390
+ }
391
+ }
392
+ drop(event) {
393
+ moveItemInArray(this.vm.columns(), event.previousIndex, event.currentIndex);
394
+ }
395
+ handleClose() {
396
+ this.onClosed.emit();
397
+ }
398
+ handleResetClick() {
399
+ this.vm.resetColumns();
400
+ }
401
+ handleApplyClick() {
402
+ this.onClosed.emit();
403
+ }
404
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPListViewOptionsColumnsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
405
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPListViewOptionsColumnsComponent, isStandalone: true, selector: "axp-list-view-option-columns", inputs: { vm: ["viewModel", "vm"] }, outputs: { onClosed: "onClosed" }, ngImport: i0, template: "<ax-header class=\"ax-flex ax-items-center\">\r\n <h2 class=\"ax-text-xl ax-font-bold\">Columns</h2>\r\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\r\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\r\n </ax-button>\r\n</ax-header>\r\n<div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\r\n @for(item of vm.columns();track item.name)\r\n {\r\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\r\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\r\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\r\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title }}</p>\r\n </div>\r\n <ax-switch class=\"ax-sm\" [ngModel]=\"item.visible\"\r\n (onValueChanged)=\"handleVisibilityChange($event, item.name)\"></ax-switch>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\r\n <ax-button text=\"Apply\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\r\n <ax-button text=\"Reset\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\r\n</ax-footer>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4$3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "component", type: i4$4.AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }] }); }
406
+ }
407
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPListViewOptionsColumnsComponent, decorators: [{
408
+ type: Component,
409
+ args: [{ selector: 'axp-list-view-option-columns', imports: [
410
+ CommonModule,
411
+ FormsModule,
412
+ CdkDropList,
413
+ CdkDrag,
414
+ CdkDragPlaceholder,
415
+ CdkDragHandle,
416
+ AXButtonModule,
417
+ AXDecoratorModule,
418
+ AXSwitchModule,
419
+ ], standalone: true, template: "<ax-header class=\"ax-flex ax-items-center\">\r\n <h2 class=\"ax-text-xl ax-font-bold\">Columns</h2>\r\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\r\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\r\n </ax-button>\r\n</ax-header>\r\n<div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\r\n @for(item of vm.columns();track item.name)\r\n {\r\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\r\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\r\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\r\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title }}</p>\r\n </div>\r\n <ax-switch class=\"ax-sm\" [ngModel]=\"item.visible\"\r\n (onValueChanged)=\"handleVisibilityChange($event, item.name)\"></ax-switch>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\r\n <ax-button text=\"Apply\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\r\n <ax-button text=\"Reset\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\r\n</ax-footer>" }]
420
+ }], propDecorators: { vm: [{
421
+ type: Input,
422
+ args: ['viewModel']
423
+ }], onClosed: [{
424
+ type: Output
425
+ }] } });
426
+
427
+ class AXPListViewOptionSortingComponent {
428
+ constructor() {
429
+ this.isSM = false;
430
+ this.onClosed = new EventEmitter();
431
+ }
432
+ drop(event) {
433
+ moveItemInArray(this.vm.sortableFields(), event.previousIndex, event.currentIndex);
434
+ }
435
+ changeItemSort(item) {
436
+ item.dir = ((item.dir == 'asc' ? 'desc' : 'asc'));
437
+ }
438
+ handleClose() {
439
+ this.onClosed.emit();
440
+ }
441
+ handleResetClick() {
442
+ this.vm.resetSorts();
443
+ }
444
+ handleApplyClick() {
445
+ this.vm.applySorts();
446
+ this.onClosed.emit();
447
+ }
448
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPListViewOptionSortingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
449
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPListViewOptionSortingComponent, isStandalone: true, selector: "axp-list-view-option-sorting", inputs: { vm: ["viewModel", "vm"] }, outputs: { onClosed: "onClosed" }, ngImport: i0, template: "<ax-header class=\"ax-flex ax-items-center\">\r\n <h2 class=\"ax-text-xl ax-font-bold\">Sorts</h2>\r\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\r\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\r\n </ax-button>\r\n</ax-header>\r\n<div class=\"ax-flex ax-p-4 ax-flex-col ax-justify-center ax-gap-4 ax-select-none\"\r\n [class.ax-h-[calc(100vh-310px)]]=\"vm.sortedCount()==0\">\r\n @if(vm.sortedCount()==0){\r\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center\">\r\n <ax-image src=\"assets/documents.svg\"></ax-image>\r\n <p class=\"ax-mt-6 ax-mb-1 ax-font-bold\">No Sorts Selected</p>\r\n <span class=\"ax-text-neutral-400 ax-text-sm md:ax-text-md\">Please select field(s) that you want to sort</span>\r\n </div>\r\n }\r\n <div cdkDropList (cdkDropListDropped)=\"drop($event)\"\r\n class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-py-1 ax-max-h-[calc(100vh-310px)] ax-overflow-auto\">\r\n @for(item of vm.sortedFields();track $index)\r\n {\r\n <div class=\"ax-flex ax-gap-2 ax-items-center\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\r\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\" cdkDragHandle></ax-icon>\r\n <ax-select-box [dataSource]=\"vm.sortableFields()\" valueField=\"name\" textField=\"title\" [(ngModel)]=\"item.name\">\r\n </ax-select-box>\r\n <ax-button [color]=\"'default'\" class=\"ax-sm\" (click)=\"changeItemSort(item)\">\r\n <ax-icon [class.ax-text-primary]=\"item.dir == 'asc'\"\r\n class=\"fa-solid fa-arrow-up-long ax-text-neutral-400\"></ax-icon>\r\n <ax-icon [class.ax-text-primary]=\"item.dir == 'desc'\"\r\n class=\"fa-solid fa-arrow-down-long ax-text-neutral-400\"></ax-icon>\r\n </ax-button>\r\n <ax-button look=\"blank\" (onClick)=\"vm.removeSort(item.name)\">\r\n <ax-icon class=\"fa-solid fa-trash-can ax-text-danger-500\"></ax-icon>\r\n </ax-button>\r\n </div>\r\n }\r\n </div>\r\n\r\n <div class=\"ax-flex ax-gap-2\">\r\n <div class=\"ax-w-full\" #addField>\r\n @if(vm.sortedCount()==0){\r\n <div class=\"ax-flex ax-justify-center ax-w-full\">\r\n <ax-button (onClick)=\"vm.addSort()\" color=\"primary\" text=\"Add field\" look=\"outline\"\r\n class=\"ax-md ax-w-56\"></ax-button>\r\n </div>\r\n }@else if(vm.canAddMoreSort()) {\r\n <ax-button (onClick)=\"vm.addSort()\" color=\"primary\" text=\"Add field\" look=\"blank\" class=\"ax-sm\"></ax-button>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\r\n <ax-button text=\"Apply\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\r\n <ax-button text=\"Reset\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\r\n</ax-footer>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4$3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i3$2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i5$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }] }); }
450
+ }
451
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPListViewOptionSortingComponent, decorators: [{
452
+ type: Component,
453
+ args: [{ selector: 'axp-list-view-option-sorting', standalone: true, imports: [
454
+ CommonModule,
455
+ FormsModule,
456
+ CdkDropList,
457
+ CdkDrag,
458
+ CdkDragPlaceholder,
459
+ CdkDragHandle,
460
+ AXButtonModule,
461
+ AXImageModule,
462
+ AXDecoratorModule,
463
+ AXSwitchModule,
464
+ AXSelectBoxModule
465
+ ], template: "<ax-header class=\"ax-flex ax-items-center\">\r\n <h2 class=\"ax-text-xl ax-font-bold\">Sorts</h2>\r\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\r\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\r\n </ax-button>\r\n</ax-header>\r\n<div class=\"ax-flex ax-p-4 ax-flex-col ax-justify-center ax-gap-4 ax-select-none\"\r\n [class.ax-h-[calc(100vh-310px)]]=\"vm.sortedCount()==0\">\r\n @if(vm.sortedCount()==0){\r\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center\">\r\n <ax-image src=\"assets/documents.svg\"></ax-image>\r\n <p class=\"ax-mt-6 ax-mb-1 ax-font-bold\">No Sorts Selected</p>\r\n <span class=\"ax-text-neutral-400 ax-text-sm md:ax-text-md\">Please select field(s) that you want to sort</span>\r\n </div>\r\n }\r\n <div cdkDropList (cdkDropListDropped)=\"drop($event)\"\r\n class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-py-1 ax-max-h-[calc(100vh-310px)] ax-overflow-auto\">\r\n @for(item of vm.sortedFields();track $index)\r\n {\r\n <div class=\"ax-flex ax-gap-2 ax-items-center\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\r\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\" cdkDragHandle></ax-icon>\r\n <ax-select-box [dataSource]=\"vm.sortableFields()\" valueField=\"name\" textField=\"title\" [(ngModel)]=\"item.name\">\r\n </ax-select-box>\r\n <ax-button [color]=\"'default'\" class=\"ax-sm\" (click)=\"changeItemSort(item)\">\r\n <ax-icon [class.ax-text-primary]=\"item.dir == 'asc'\"\r\n class=\"fa-solid fa-arrow-up-long ax-text-neutral-400\"></ax-icon>\r\n <ax-icon [class.ax-text-primary]=\"item.dir == 'desc'\"\r\n class=\"fa-solid fa-arrow-down-long ax-text-neutral-400\"></ax-icon>\r\n </ax-button>\r\n <ax-button look=\"blank\" (onClick)=\"vm.removeSort(item.name)\">\r\n <ax-icon class=\"fa-solid fa-trash-can ax-text-danger-500\"></ax-icon>\r\n </ax-button>\r\n </div>\r\n }\r\n </div>\r\n\r\n <div class=\"ax-flex ax-gap-2\">\r\n <div class=\"ax-w-full\" #addField>\r\n @if(vm.sortedCount()==0){\r\n <div class=\"ax-flex ax-justify-center ax-w-full\">\r\n <ax-button (onClick)=\"vm.addSort()\" color=\"primary\" text=\"Add field\" look=\"outline\"\r\n class=\"ax-md ax-w-56\"></ax-button>\r\n </div>\r\n }@else if(vm.canAddMoreSort()) {\r\n <ax-button (onClick)=\"vm.addSort()\" color=\"primary\" text=\"Add field\" look=\"blank\" class=\"ax-sm\"></ax-button>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\r\n <ax-button text=\"Apply\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\r\n <ax-button text=\"Reset\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\r\n</ax-footer>" }]
466
+ }], propDecorators: { onClosed: [{
467
+ type: Output
468
+ }], vm: [{
469
+ type: Input,
470
+ args: ['viewModel']
471
+ }] } });
472
+
473
+ class AXPEntityMasterListViewComponent {
474
+ constructor(actionSheetService, platform) {
475
+ this.actionSheetService = actionSheetService;
476
+ this.platform = platform;
477
+ this.layout = inject(AXPLayoutService);
478
+ this.activeRoute = inject(ActivatedRoute);
479
+ this.vm = this.activeRoute.snapshot.data['vm'];
480
+ //
481
+ this.store = inject((Store));
482
+ this.isSM = this.store.select(isSmallScreen());
483
+ this.isOpen = this.store.select(getChildDrawer());
484
+ this.dropdownRowItems = [
485
+ {
486
+ text: 'Details',
487
+ icon: 'fa-solid fa-eye',
488
+ name: 'open-entity',
489
+ divided: true,
490
+ },
491
+ {
492
+ text: 'Delete',
493
+ icon: 'fa-solid fa-trash-can',
494
+ name: 'delete-entity',
495
+ color: 'danger',
496
+ disabled: true,
497
+ },
498
+ ];
499
+ this.getDropdownRowItems = (rowData) => {
500
+ return Promise.resolve(this.dropdownRowItems);
501
+ };
502
+ effect(() => {
503
+ this.grid.selectedRows = this.vm.selectedItems();
504
+ }, { allowSignalWrites: true });
505
+ //
506
+ this.vm.events$.subscribe(e => {
507
+ if (e.action == "refresh") {
508
+ this.grid.refresh();
509
+ }
510
+ });
511
+ }
512
+ ngAfterViewInit() {
513
+ this.vm.setView();
514
+ }
515
+ closeDrawer(name, collapsed) {
516
+ if (collapsed) {
517
+ switch (name) {
518
+ case 'conditions':
519
+ //this.loader.resetConditions();
520
+ break;
521
+ case 'columns':
522
+ this.vm.applyColumns();
523
+ break;
524
+ case 'sorts':
525
+ //this.vm.resetSorts();
526
+ break;
527
+ default:
528
+ break;
529
+ }
530
+ }
531
+ }
532
+ handleChangeSearchValue(e) {
533
+ if (e.isUserInteraction) {
534
+ this.vm.applyInlineFilter(e.value);
535
+ }
536
+ }
537
+ handleRowDbClick(e) {
538
+ const d = {
539
+ component: e.component,
540
+ name: this.dropdownRowItems[0].name,
541
+ data: e.data,
542
+ };
543
+ this.handleRowCommandClick(d);
544
+ }
545
+ async handleRowCommandClick(e) {
546
+ this.vm.executeCommand(e.name, e.data);
547
+ }
548
+ async handleSelectedRowsChange(rows) {
549
+ this.vm.selectedItems.set(rows);
550
+ }
551
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityMasterListViewComponent, deps: [{ token: i1$2.AXActionSheetService }, { token: i3$1.AXPlatform }], target: i0.ɵɵFactoryTarget.Component }); }
552
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPEntityMasterListViewComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], ngImport: i0, template: "<ax-drawer-container>\r\n <ax-content class=\"ax-flex ax-flex-col ax-overflow-hidden\" #content>\r\n <div\r\n class=\"ax-flex ax-flex-col ax-gap-4 ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\">\r\n <div class=\"ax-flex ax-flex-col ax-pt-4 ax-gap-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\" #sticky=\"axpSticky\"\r\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\" [stickyParent]=\"content.getHostElement()\">\r\n <!-------- Begin Toolbar -------->\r\n <!-------- Begin Line 1 -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <!-------- Begin Title -------->\r\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\r\n <div class=\"ax-text-xl md:ax-text-3xl ax-font-bold\">{{ vm.title()}}</div>\r\n @if(vm.description())\r\n {\r\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">{{\r\n vm.description() }}</div>\r\n }\r\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\" [class.ax-hidden]=\"isSM | async\">\r\n <ng-template #divider>\r\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\r\n </ng-template>\r\n @for(b of vm.beardcrumbs();track $index;let last=$last)\r\n {\r\n <ax-breadcrumbs-item [active]=\"last\" [class.!ax-font-semibold]=\"last\"\r\n [class.!ax-text-neutral-600]=\"last\" [routerLink]=\"b.url\">\r\n @if(b.icon)\r\n {\r\n <i [class]=\"b.icon\"></i>\r\n }\r\n {{b.title}}\r\n </ax-breadcrumbs-item>\r\n }\r\n </ax-breadcrumbs>\r\n </div>\r\n </div>\r\n <!-------- Finish Title -------->\r\n <!--------------------------------------------------------------->\r\n <!-- Begin Action Menu -->\r\n <div class=\"ax-flex ax-items-center ax-gap-3\">\r\n @for(tr of vm.primaryActions();track $index)\r\n {\r\n <ax-button [text]=\"tr.title\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n }\r\n @if(vm.secondaryActions().length) {\r\n <ax-button [text]=\"(isSM | async) ? null : 'Actions'\" color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\r\n </ax-prefix>\r\n <ax-dropdown-panel>\r\n <ax-button-item-list>\r\n @for(tr of vm.secondaryActions();track $index;let first=$first)\r\n {\r\n <ng-container>\r\n @if(tr.separated && !$first)\r\n {\r\n <ax-divider></ax-divider>\r\n }\r\n <ax-button-item [text]=\"tr.title\" class=\"ax-font-semibold ax-text-{{tr.color}}\"\r\n (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button-item>\r\n </ng-container>\r\n }\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n }\r\n </div>\r\n <!-- Finish Action Menu -->\r\n </div>\r\n\r\n <!-------- Finish Line 1 -------->\r\n\r\n <!-------- Begin Line 2 -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\r\n <!-------- Begin Selection -------->\r\n\r\n @if(vm.hasSelectedItems())\r\n {\r\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\r\n <span class=\"ax-text-xl ax-font-bold\"> {{ vm.selectedItems().length }} Items Selected </span>\r\n <span (click)=\"vm.clearSelection()\"\r\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\">Clear\r\n Items</span>\r\n </div>\r\n\r\n <!-------- Finish Selection -------->\r\n\r\n } @else {\r\n\r\n <!-------- Begin View -------->\r\n\r\n <ax-button [text]=\"vm.view().title\" #views color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-eye\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <i class=\"fa-solid fa-caret-down\"></i>\r\n </ax-suffix>\r\n <ax-dropdown-panel [adaptivityEnabled]=\"true\">\r\n <ax-button-item-list class=\"ax-bg-surface\">\r\n <ax-title class=\"ax-font-bold ax-opacity-100\">Public Views</ax-title>\r\n <ax-button-item *ngFor=\"let v of vm.views()\" [text]=\"v.title\" [class.ax-bg-on-surface]=\"vm.view()==v\"\r\n (onClick)=\"vm.setView(v.name)\"></ax-button-item>\r\n <!-- <ax-title class=\"ax-font-bold ax-opacity-100\" *ngIf=\"hasCustomViews$ | async\">Created by me</ax-title>\r\n <ax-button-item class=\"ax-pe-4 ax-flex ax-justify-between\" *ngFor=\"let v of customViews$ | async\"\r\n [text]=\"v.title\" [class.ax-bg-on-surface]=\"(view$ | async) == v\" (onClick)=\"loader.setView(v.name)\">\r\n <ax-suffix>\r\n <ax-button (onClick)=\"updateViewPopup($event, v)\" class=\"ax-xs\" look=\"none\">\r\n <ax-icon class=\"far fa-edit\"> </ax-icon>\r\n </ax-button>\r\n </ax-suffix>\r\n </ax-button-item> -->\r\n <!-- <ng-container *feature=\"'axp-entity-list-custom-view'\">\r\n <ax-divider></ax-divider>\r\n <ax-button-item text=\"Add Custom View\" (onClick)=\"addCustomViewPopup()\"\r\n class=\"ax-font-semibold ax-text-primary\"></ax-button-item>\r\n </ng-container> -->\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n <!-------- Finish View -------->\r\n\r\n <!-------- Begin Inline Search -------->\r\n\r\n @if(vm.hasInlineFilters())\r\n {\r\n <div class=\"ax-w-72\" *feature=\"'axp-entity-list-inline-filter'\">\r\n <ax-search-box [placeholder]=\"'Search on '+vm.inlineFiltersPlaceholders().join(', ')\"\r\n (onValueChanged)=\"handleChangeSearchValue($event)\"><ax-clear-button></ax-clear-button></ax-search-box>\r\n </div>\r\n }\r\n }\r\n <!-------- Finish Inline Search -------->\r\n </div>\r\n\r\n <!-- Begin View Action Menu -->\r\n @if(!vm.hasSelectedItems())\r\n {\r\n <div class=\"ax-flex ax-gap-3\">\r\n <ax-button text=\"Columns\" color=\"ghost\" (onClick)=\"columnsDrawer.open()\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-bars\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-badge [text]=\"vm.visibleColumnCount().toString()\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n </ax-button>\r\n <ax-button text=\"Filters\" color=\"ghost\" (onClick)=\"conditionsDrawer.open()\"\r\n *feature=\"'axp-entity-list-advance-filter'\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-sliders\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-badge text=\"3\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n </ax-button>\r\n @if(vm.canSort())\r\n {\r\n <ax-button text=\"Sort\" color=\"ghost\" (onClick)=\"sortsDrawer.open()\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-bars-sort\"></i>\r\n </ax-prefix>\r\n @if(vm.sortedCount())\r\n {\r\n <ax-suffix>\r\n <ax-badge [text]=\"vm.sortedCount().toString()\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n }\r\n </ax-button>\r\n }\r\n </div>\r\n }\r\n <!-- Finish View Action Menu -->\r\n </div>\r\n <!-------- Finish Line 2 -------->\r\n\r\n <!----- Finish Toolbar ----->\r\n\r\n </div>\r\n </div>\r\n <!----- Begin DataTable ----->\r\n <div class=\"ax-flex ax-flex-1 ax-px-6 ax-py-4 ax-overflow-auto\">\r\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1\" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\r\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\r\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\" (onRowDbClick)=\"handleRowDbClick($event)\">\r\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\r\n @for(col of vm.columns();track col.name) {\r\n @if(col.visible)\r\n {\r\n <axp-widget-column-renderer [caption]=\"col.title\" [node]=\"col.node()\"></axp-widget-column-renderer>\r\n }\r\n }\r\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\r\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\r\n </ax-data-table>\r\n </div>\r\n <!----- Finish DataTable ----->\r\n </ax-content>\r\n\r\n <ax-drawer (collapsedChange)=\"closeDrawer('columns', $event)\" #columnsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\r\n <axp-list-view-option-columns [viewModel]=\"vm\" (onClosed)=\"columnsDrawer.close()\"></axp-list-view-option-columns>\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-drawer (collapsedChange)=\"closeDrawer('conditions', $event)\" #conditionsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[25vw] ax-border-e\">\r\n <!-- <axp-list-view-option-conditions [loader]=\"loader\"\r\n (onClosed)=\"conditionsDrawer.close()\"></axp-list-view-option-conditions> -->\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-drawer (collapsedChange)=\"closeDrawer('sorts', $event)\" #sortsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\r\n <axp-list-view-option-sorting (onClosed)=\"sortsDrawer.close()\" [viewModel]=\"vm\"></axp-list-view-option-sorting>\r\n </ax-content>\r\n </ax-drawer>\r\n</ax-drawer-container>", styles: [".cdk-drag-preview{border-radius:.375rem;border-width:1px;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background:rgba(var(--ax-color-on-surface));padding:.5rem;height:max-content!important}.collapsed-search-box{margin-top:0;height:0px;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4$3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "component", type: i4$3.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i4$3.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i7$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4$2.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXActionSheetModule }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i4.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i4.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXDialogModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTabsModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "component", type: i9.AXBreadCrumbsComponent, selector: "ax-breadcrumbs" }, { kind: "component", type: i9.AXBreadCrumbsItemComponent, selector: "ax-breadcrumbs-item", inputs: ["disabled", "active"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i11.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDataTableModule }, { kind: "component", type: i4$1.AXDataTableComponent, selector: "ax-data-table", inputs: ["dataSource", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged"] }, { kind: "component", type: i4$1.AXRowSelectColumnComponent, selector: "ax-select-column", inputs: ["width", "caption", "fixed"] }, { kind: "component", type: i4$1.AXRowDropdownCommandColumnComponent, selector: "ax-dropdown-command-column", inputs: ["width", "caption", "fixed", "footerTemplate", "items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type:
553
+ //
554
+ AXPLayoutBuilderModule }, { kind: "component", type: i8$1.AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: ["caption", "node", "footerTemplate", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXPWidgetsModule }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }, { kind: "ngmodule", type: AXPAuthModule }, { kind: "directive", type: i8.AXPFeatureDirective, selector: "[feature]", inputs: ["feature", "featureElse"] }, { kind: "component", type:
555
+ //
556
+ AXPListViewOptionsColumnsComponent, selector: "axp-list-view-option-columns", inputs: ["viewModel"], outputs: ["onClosed"] }, { kind: "component", type: AXPListViewOptionSortingComponent, selector: "axp-list-view-option-sorting", inputs: ["viewModel"], outputs: ["onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
557
+ }
558
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityMasterListViewComponent, decorators: [{
559
+ type: Component,
560
+ args: [{ encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
561
+ CommonModule,
562
+ FormsModule,
563
+ RouterModule,
564
+ AXButtonModule,
565
+ AXDecoratorModule,
566
+ AXBadgeModule,
567
+ AXDropdownModule,
568
+ AXPopoverModule,
569
+ AXFormModule,
570
+ AXActionSheetModule,
571
+ AXDrawerModule,
572
+ AXDialogModule,
573
+ AXLoadingModule,
574
+ AXTabsModule,
575
+ AXTooltipModule,
576
+ AXBreadcrumbsModule,
577
+ AXSearchBoxModule,
578
+ AXDataTableModule,
579
+ //
580
+ AXPLayoutBuilderModule,
581
+ AXPWidgetsModule,
582
+ AXPStickyDirective,
583
+ AXPGridLayoutDirective,
584
+ AXPAuthModule,
585
+ //
586
+ AXPListViewOptionsColumnsComponent,
587
+ AXPListViewOptionSortingComponent
588
+ ], standalone: true, template: "<ax-drawer-container>\r\n <ax-content class=\"ax-flex ax-flex-col ax-overflow-hidden\" #content>\r\n <div\r\n class=\"ax-flex ax-flex-col ax-gap-4 ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\">\r\n <div class=\"ax-flex ax-flex-col ax-pt-4 ax-gap-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\" #sticky=\"axpSticky\"\r\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\" [stickyParent]=\"content.getHostElement()\">\r\n <!-------- Begin Toolbar -------->\r\n <!-------- Begin Line 1 -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <!-------- Begin Title -------->\r\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\r\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\r\n <div class=\"ax-text-xl md:ax-text-3xl ax-font-bold\">{{ vm.title()}}</div>\r\n @if(vm.description())\r\n {\r\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">{{\r\n vm.description() }}</div>\r\n }\r\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\" [class.ax-hidden]=\"isSM | async\">\r\n <ng-template #divider>\r\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\r\n </ng-template>\r\n @for(b of vm.beardcrumbs();track $index;let last=$last)\r\n {\r\n <ax-breadcrumbs-item [active]=\"last\" [class.!ax-font-semibold]=\"last\"\r\n [class.!ax-text-neutral-600]=\"last\" [routerLink]=\"b.url\">\r\n @if(b.icon)\r\n {\r\n <i [class]=\"b.icon\"></i>\r\n }\r\n {{b.title}}\r\n </ax-breadcrumbs-item>\r\n }\r\n </ax-breadcrumbs>\r\n </div>\r\n </div>\r\n <!-------- Finish Title -------->\r\n <!--------------------------------------------------------------->\r\n <!-- Begin Action Menu -->\r\n <div class=\"ax-flex ax-items-center ax-gap-3\">\r\n @for(tr of vm.primaryActions();track $index)\r\n {\r\n <ax-button [text]=\"tr.title\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n }\r\n @if(vm.secondaryActions().length) {\r\n <ax-button [text]=\"(isSM | async) ? null : 'Actions'\" color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\r\n </ax-prefix>\r\n <ax-dropdown-panel>\r\n <ax-button-item-list>\r\n @for(tr of vm.secondaryActions();track $index;let first=$first)\r\n {\r\n <ng-container>\r\n @if(tr.separated && !$first)\r\n {\r\n <ax-divider></ax-divider>\r\n }\r\n <ax-button-item [text]=\"tr.title\" class=\"ax-font-semibold ax-text-{{tr.color}}\"\r\n (onClick)=\"vm.executeCommand(tr.name)\">\r\n <ax-prefix>\r\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\r\n </ax-prefix>\r\n </ax-button-item>\r\n </ng-container>\r\n }\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n }\r\n </div>\r\n <!-- Finish Action Menu -->\r\n </div>\r\n\r\n <!-------- Finish Line 1 -------->\r\n\r\n <!-------- Begin Line 2 -------->\r\n <div class=\"ax-flex ax-justify-between ax-items-center\">\r\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\r\n <!-------- Begin Selection -------->\r\n\r\n @if(vm.hasSelectedItems())\r\n {\r\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\r\n <span class=\"ax-text-xl ax-font-bold\"> {{ vm.selectedItems().length }} Items Selected </span>\r\n <span (click)=\"vm.clearSelection()\"\r\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\">Clear\r\n Items</span>\r\n </div>\r\n\r\n <!-------- Finish Selection -------->\r\n\r\n } @else {\r\n\r\n <!-------- Begin View -------->\r\n\r\n <ax-button [text]=\"vm.view().title\" #views color=\"ghost\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-eye\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <i class=\"fa-solid fa-caret-down\"></i>\r\n </ax-suffix>\r\n <ax-dropdown-panel [adaptivityEnabled]=\"true\">\r\n <ax-button-item-list class=\"ax-bg-surface\">\r\n <ax-title class=\"ax-font-bold ax-opacity-100\">Public Views</ax-title>\r\n <ax-button-item *ngFor=\"let v of vm.views()\" [text]=\"v.title\" [class.ax-bg-on-surface]=\"vm.view()==v\"\r\n (onClick)=\"vm.setView(v.name)\"></ax-button-item>\r\n <!-- <ax-title class=\"ax-font-bold ax-opacity-100\" *ngIf=\"hasCustomViews$ | async\">Created by me</ax-title>\r\n <ax-button-item class=\"ax-pe-4 ax-flex ax-justify-between\" *ngFor=\"let v of customViews$ | async\"\r\n [text]=\"v.title\" [class.ax-bg-on-surface]=\"(view$ | async) == v\" (onClick)=\"loader.setView(v.name)\">\r\n <ax-suffix>\r\n <ax-button (onClick)=\"updateViewPopup($event, v)\" class=\"ax-xs\" look=\"none\">\r\n <ax-icon class=\"far fa-edit\"> </ax-icon>\r\n </ax-button>\r\n </ax-suffix>\r\n </ax-button-item> -->\r\n <!-- <ng-container *feature=\"'axp-entity-list-custom-view'\">\r\n <ax-divider></ax-divider>\r\n <ax-button-item text=\"Add Custom View\" (onClick)=\"addCustomViewPopup()\"\r\n class=\"ax-font-semibold ax-text-primary\"></ax-button-item>\r\n </ng-container> -->\r\n </ax-button-item-list>\r\n </ax-dropdown-panel>\r\n </ax-button>\r\n <!-------- Finish View -------->\r\n\r\n <!-------- Begin Inline Search -------->\r\n\r\n @if(vm.hasInlineFilters())\r\n {\r\n <div class=\"ax-w-72\" *feature=\"'axp-entity-list-inline-filter'\">\r\n <ax-search-box [placeholder]=\"'Search on '+vm.inlineFiltersPlaceholders().join(', ')\"\r\n (onValueChanged)=\"handleChangeSearchValue($event)\"><ax-clear-button></ax-clear-button></ax-search-box>\r\n </div>\r\n }\r\n }\r\n <!-------- Finish Inline Search -------->\r\n </div>\r\n\r\n <!-- Begin View Action Menu -->\r\n @if(!vm.hasSelectedItems())\r\n {\r\n <div class=\"ax-flex ax-gap-3\">\r\n <ax-button text=\"Columns\" color=\"ghost\" (onClick)=\"columnsDrawer.open()\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-bars\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-badge [text]=\"vm.visibleColumnCount().toString()\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n </ax-button>\r\n <ax-button text=\"Filters\" color=\"ghost\" (onClick)=\"conditionsDrawer.open()\"\r\n *feature=\"'axp-entity-list-advance-filter'\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-sliders\"></i>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-badge text=\"3\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n </ax-button>\r\n @if(vm.canSort())\r\n {\r\n <ax-button text=\"Sort\" color=\"ghost\" (onClick)=\"sortsDrawer.open()\">\r\n <ax-prefix>\r\n <i class=\"fa-solid fa-bars-sort\"></i>\r\n </ax-prefix>\r\n @if(vm.sortedCount())\r\n {\r\n <ax-suffix>\r\n <ax-badge [text]=\"vm.sortedCount().toString()\" color=\"primary\"></ax-badge>\r\n </ax-suffix>\r\n }\r\n </ax-button>\r\n }\r\n </div>\r\n }\r\n <!-- Finish View Action Menu -->\r\n </div>\r\n <!-------- Finish Line 2 -------->\r\n\r\n <!----- Finish Toolbar ----->\r\n\r\n </div>\r\n </div>\r\n <!----- Begin DataTable ----->\r\n <div class=\"ax-flex ax-flex-1 ax-px-6 ax-py-4 ax-overflow-auto\">\r\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1\" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\r\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\r\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\" (onRowDbClick)=\"handleRowDbClick($event)\">\r\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\r\n @for(col of vm.columns();track col.name) {\r\n @if(col.visible)\r\n {\r\n <axp-widget-column-renderer [caption]=\"col.title\" [node]=\"col.node()\"></axp-widget-column-renderer>\r\n }\r\n }\r\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\r\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\r\n </ax-data-table>\r\n </div>\r\n <!----- Finish DataTable ----->\r\n </ax-content>\r\n\r\n <ax-drawer (collapsedChange)=\"closeDrawer('columns', $event)\" #columnsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\r\n <axp-list-view-option-columns [viewModel]=\"vm\" (onClosed)=\"columnsDrawer.close()\"></axp-list-view-option-columns>\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-drawer (collapsedChange)=\"closeDrawer('conditions', $event)\" #conditionsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[25vw] ax-border-e\">\r\n <!-- <axp-list-view-option-conditions [loader]=\"loader\"\r\n (onClosed)=\"conditionsDrawer.close()\"></axp-list-view-option-conditions> -->\r\n </ax-content>\r\n </ax-drawer>\r\n <ax-drawer (collapsedChange)=\"closeDrawer('sorts', $event)\" #sortsDrawer location=\"end\" [mode]=\"'overlay'\">\r\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\r\n <axp-list-view-option-sorting (onClosed)=\"sortsDrawer.close()\" [viewModel]=\"vm\"></axp-list-view-option-sorting>\r\n </ax-content>\r\n </ax-drawer>\r\n</ax-drawer-container>", styles: [".cdk-drag-preview{border-radius:.375rem;border-width:1px;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background:rgba(var(--ax-color-on-surface));padding:.5rem;height:max-content!important}.collapsed-search-box{margin-top:0;height:0px;opacity:0}\n"] }]
589
+ }], ctorParameters: () => [{ type: i1$2.AXActionSheetService }, { type: i3$1.AXPlatform }], propDecorators: { grid: [{
590
+ type: ViewChild,
591
+ args: ['grid']
592
+ }] } });
593
+
594
+ var entityMasterListView_component = /*#__PURE__*/Object.freeze({
595
+ __proto__: null,
596
+ AXPEntityMasterListViewComponent: AXPEntityMasterListViewComponent
597
+ });
598
+
599
+ class AXPEntityReuseStrategy {
600
+ shouldDetach(route) {
601
+ return false;
602
+ }
603
+ store(route, detachedTree) { }
604
+ shouldAttach(route) {
605
+ return false;
606
+ }
607
+ retrieve(route) {
608
+ return null;
609
+ }
610
+ shouldReuseRoute(future, curr) {
611
+ if (future.component === AXPEntityMasterListViewComponent || future.component === AXPEntityMasterSingleViewComponent) {
612
+ return false;
613
+ }
614
+ return future.routeConfig === curr.routeConfig;
615
+ }
616
+ }
617
+
618
+ class AXPDefaultThemeModule {
619
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPDefaultThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
620
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: AXPDefaultThemeModule, imports: [i2.RouterModule, AXPCommonModule] }); }
621
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPDefaultThemeModule, providers: [
622
+ {
623
+ provide: AXP_ENTITY_CONFIG_TOKEN,
624
+ useValue: {
625
+ viewers: {
626
+ root: () => AXPRootLayoutComponent,
627
+ master: {
628
+ single: () => Promise.resolve().then(function () { return entityMasterSingleView_component; })
629
+ .then(c => c.AXPEntityMasterSingleViewComponent),
630
+ ///
631
+ create: () => import('./acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs')
632
+ .then(c => c.AXPEntityMasterCreateViewComponent),
633
+ ///
634
+ modify: () => import('./acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs')
635
+ .then(c => c.AXPEntityMasterModifyViewComponent),
636
+ //
637
+ list: () => Promise.resolve().then(function () { return entityMasterListView_component; })
638
+ .then(c => c.AXPEntityMasterListViewComponent)
639
+ }
640
+ }
641
+ }
642
+ },
643
+ { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }
644
+ ], imports: [RouterModule.forChild(routes),
645
+ AXPCommonModule] }); }
646
+ }
647
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPDefaultThemeModule, decorators: [{
648
+ type: NgModule,
649
+ args: [{
650
+ imports: [
651
+ RouterModule.forChild(routes),
652
+ AXPCommonModule,
653
+ ],
654
+ exports: [],
655
+ declarations: [],
656
+ providers: [
657
+ {
658
+ provide: AXP_ENTITY_CONFIG_TOKEN,
659
+ useValue: {
660
+ viewers: {
661
+ root: () => AXPRootLayoutComponent,
662
+ master: {
663
+ single: () => Promise.resolve().then(function () { return entityMasterSingleView_component; })
664
+ .then(c => c.AXPEntityMasterSingleViewComponent),
665
+ ///
666
+ create: () => import('./acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs')
667
+ .then(c => c.AXPEntityMasterCreateViewComponent),
668
+ ///
669
+ modify: () => import('./acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs')
670
+ .then(c => c.AXPEntityMasterModifyViewComponent),
671
+ //
672
+ list: () => Promise.resolve().then(function () { return entityMasterListView_component; })
673
+ .then(c => c.AXPEntityMasterListViewComponent)
674
+ }
675
+ }
676
+ }
677
+ },
678
+ { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }
679
+ ]
680
+ }]
681
+ }] });
682
+
683
+ /**
684
+ * Generated bundle index. Do not edit.
685
+ */
686
+
687
+ export { AXPAdminRootLayoutModule, AXPDefaultThemeModule, AXPRootLayoutComponent, AXPRootLayoutFooterComponent, AXPRootLayoutHeaderComponent };
688
+ //# sourceMappingURL=acorex-platform-themes-default.mjs.map