@acorex/platform 18.0.2 → 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 (232) 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/lib/default.module.mjs +3 -3
  43. package/esm2022/themes/default/lib/entity-reuse.strategy.mjs +2 -2
  44. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +2 -2
  45. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/{entity-list-view.component.mjs → entity-master-list-view.component.mjs} +8 -2
  46. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +2 -1
  47. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +1 -1
  48. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +2 -2
  49. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +21 -12
  50. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +3 -2
  51. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-column.component.mjs +2 -2
  52. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-view.component.mjs +2 -2
  53. package/esm2022/workflow/lib/actions/start-workflow.action.mjs +28 -0
  54. package/esm2022/workflow/lib/workflow.module.mjs +7 -2
  55. package/esm2022/workflow/lib/workflow.service.mjs +53 -6
  56. package/esm2022/workflow/lib/workflow.types.mjs +12 -6
  57. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-DAmNXjDm.mjs → acorex-platform-common-avatar-widget-edit.component-B-of5ssU.mjs} +3 -2
  58. 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
  59. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs → acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs} +4 -3
  60. package/fesm2022/acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs.map +1 -0
  61. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs → acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs} +4 -3
  62. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs.map +1 -0
  63. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BiUHPDqV.mjs → acorex-platform-common-checkbox-widget-column.component-X9d1iY_F.mjs} +4 -3
  64. 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
  65. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs → acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs} +4 -3
  66. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs.map +1 -0
  67. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs → acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs} +4 -3
  68. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs.map → acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs.map} +1 -1
  69. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs → acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs} +4 -3
  70. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs.map +1 -0
  71. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-B0s6FN-g.mjs → acorex-platform-common-dateTime-widget-edit.component-D8FSiqAo.mjs} +4 -3
  72. 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
  73. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs → acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs} +4 -3
  74. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs.map → acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs.map} +1 -1
  75. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs → acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs} +4 -3
  76. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs.map → acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs.map} +1 -1
  77. package/fesm2022/{acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs → acorex-platform-common-email-widget-column.component-BgNdL62k.mjs} +4 -3
  78. package/fesm2022/acorex-platform-common-email-widget-column.component-BgNdL62k.mjs.map +1 -0
  79. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs → acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs} +4 -3
  80. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs.map → acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs.map} +1 -1
  81. package/fesm2022/{acorex-platform-common-email-widget-view.component-B6puyycL.mjs → acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs} +4 -3
  82. package/fesm2022/{acorex-platform-common-email-widget-view.component-B6puyycL.mjs.map → acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs.map} +1 -1
  83. package/fesm2022/{acorex-platform-common-file-widget-column.component-C1faGR4K.mjs → acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs} +4 -3
  84. package/fesm2022/acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs.map +1 -0
  85. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs → acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs} +4 -3
  86. package/fesm2022/{acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs.map → acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs.map} +1 -1
  87. package/fesm2022/{acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs → acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs} +4 -3
  88. package/fesm2022/acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs.map +1 -0
  89. package/fesm2022/{acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs → acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs} +4 -3
  90. package/fesm2022/{acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs.map → acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs.map} +1 -1
  91. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs → acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs} +4 -3
  92. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs.map → acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs.map} +1 -1
  93. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs → acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs} +4 -3
  94. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs.map +1 -0
  95. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs → acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs} +4 -3
  96. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs.map → acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs.map} +1 -1
  97. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs → acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs} +4 -3
  98. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs.map +1 -0
  99. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs → acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs} +4 -3
  100. package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs.map +1 -0
  101. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs → acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs} +4 -3
  102. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs.map +1 -0
  103. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs → acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs} +4 -3
  104. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs.map +1 -0
  105. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs → acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs} +4 -3
  106. package/fesm2022/acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs.map +1 -0
  107. package/fesm2022/{acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs → acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs} +4 -3
  108. package/fesm2022/acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs.map +1 -0
  109. package/fesm2022/{acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs → acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs} +4 -3
  110. package/fesm2022/acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs.map +1 -0
  111. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs → acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs} +4 -3
  112. package/fesm2022/acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs.map +1 -0
  113. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-kiEHxJia.mjs → acorex-platform-common-messenger-widget-edit.component-B_FG_n0O.mjs} +4 -3
  114. 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
  115. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs → acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs} +4 -3
  116. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs.map → acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs.map} +1 -1
  117. package/fesm2022/{acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs → acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs} +4 -3
  118. package/fesm2022/acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs.map +1 -0
  119. package/fesm2022/{acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs → acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs} +4 -3
  120. package/fesm2022/{acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs.map → acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs.map} +1 -1
  121. package/fesm2022/{acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs → acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs} +4 -3
  122. package/fesm2022/acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs.map +1 -0
  123. package/fesm2022/{acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs → acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs} +4 -3
  124. package/fesm2022/{acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs.map → acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs.map} +1 -1
  125. package/fesm2022/{acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs → acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs} +4 -3
  126. package/fesm2022/acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs.map +1 -0
  127. package/fesm2022/{acorex-platform-common-password-widget-view.component-CKaQItON.mjs → acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs} +4 -3
  128. package/fesm2022/{acorex-platform-common-password-widget-view.component-CKaQItON.mjs.map → acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs.map} +1 -1
  129. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs → acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs} +4 -3
  130. package/fesm2022/{acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs.map → acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs.map} +1 -1
  131. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs → acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs} +4 -3
  132. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs.map → acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs.map} +1 -1
  133. package/fesm2022/{acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs → acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs} +4 -3
  134. package/fesm2022/{acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs.map → acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs.map} +1 -1
  135. 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
  136. 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
  137. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs → acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs} +4 -3
  138. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs.map +1 -0
  139. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs → acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs} +4 -3
  140. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs.map +1 -0
  141. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-_MglaOmo.mjs → acorex-platform-common-selection-list-widget-column.component-BCCmg8MI.mjs} +4 -3
  142. 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
  143. 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
  144. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-B5eUdN2R.mjs.map +1 -0
  145. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs → acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs} +4 -3
  146. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs.map +1 -0
  147. 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
  148. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-Bxvd_AKZ.mjs.map +1 -0
  149. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DF29uWl2.mjs → acorex-platform-common-signature-pad-widget-edit.component-CNjYCEi6.mjs} +4 -3
  150. 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
  151. 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
  152. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CsiBv_7i.mjs.map +1 -0
  153. package/fesm2022/{acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs → acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs} +4 -3
  154. package/fesm2022/acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs.map +1 -0
  155. package/fesm2022/{acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs → acorex-platform-common-text-widget-column.component-qXusAevm.mjs} +4 -3
  156. package/fesm2022/{acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs.map → acorex-platform-common-text-widget-column.component-qXusAevm.mjs.map} +1 -1
  157. package/fesm2022/{acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs → acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs} +4 -3
  158. package/fesm2022/{acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs.map → acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs.map} +1 -1
  159. package/fesm2022/{acorex-platform-common-text-widget-view.component-WbZtm_bf.mjs → acorex-platform-common-text-widget-view.component-BpxTaeQW.mjs} +4 -3
  160. 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
  161. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs → acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs} +4 -3
  162. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs.map → acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs.map} +1 -1
  163. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs → acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs} +4 -3
  164. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs.map +1 -0
  165. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs → acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs} +4 -3
  166. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs.map → acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs.map} +1 -1
  167. package/fesm2022/acorex-platform-common.mjs +252 -149
  168. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  169. package/fesm2022/acorex-platform-layout-builder.mjs +10 -1
  170. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  171. package/fesm2022/acorex-platform-layout-entity.mjs +445 -261
  172. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  173. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs → acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs} +3 -3
  174. package/fesm2022/acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs.map +1 -0
  175. package/fesm2022/acorex-platform-layouts.mjs +4 -4
  176. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  177. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Buanq4is.mjs → acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs} +2 -2
  178. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs.map +1 -0
  179. package/fesm2022/acorex-platform-themes-default.mjs +13 -6
  180. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  181. package/fesm2022/acorex-platform-widgets.mjs +50 -42
  182. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  183. package/fesm2022/acorex-platform-workflow.mjs +184 -104
  184. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  185. package/layout/builder/lib/builder/widget.types.d.ts +3 -0
  186. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +6 -5
  187. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +4 -0
  188. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +10 -5
  189. package/layout/entity/lib/entity-master-update.viewmodel.d.ts +0 -1
  190. package/layout/entity/lib/entity.viewmodel.d.ts +3 -3
  191. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +18 -3
  192. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.d.ts +8 -1
  193. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +10 -3
  194. package/layout/entity/lib/workflows/create-entity.workflow.d.ts +0 -2
  195. package/layout/entity/lib/workflows/delete-entity.workflow.d.ts +2 -4
  196. package/layout/entity/lib/workflows/modify-section.workflow.d.ts +2 -5
  197. package/layout/entity/lib/workflows/show-list.workflow.d.ts +10 -0
  198. package/package.json +1 -1
  199. package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.d.ts +4 -0
  200. package/workflow/lib/actions/start-workflow.action.d.ts +10 -0
  201. package/workflow/lib/workflow.service.d.ts +4 -2
  202. package/workflow/lib/workflow.types.d.ts +3 -1
  203. package/fesm2022/acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs.map +0 -1
  204. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs.map +0 -1
  205. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs.map +0 -1
  206. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs.map +0 -1
  207. package/fesm2022/acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs.map +0 -1
  208. package/fesm2022/acorex-platform-common-file-widget-column.component-C1faGR4K.mjs.map +0 -1
  209. package/fesm2022/acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs.map +0 -1
  210. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs.map +0 -1
  211. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs.map +0 -1
  212. package/fesm2022/acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs.map +0 -1
  213. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs.map +0 -1
  214. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs.map +0 -1
  215. package/fesm2022/acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs.map +0 -1
  216. package/fesm2022/acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs.map +0 -1
  217. package/fesm2022/acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs.map +0 -1
  218. package/fesm2022/acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs.map +0 -1
  219. package/fesm2022/acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs.map +0 -1
  220. package/fesm2022/acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs.map +0 -1
  221. package/fesm2022/acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs.map +0 -1
  222. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs.map +0 -1
  223. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs.map +0 -1
  224. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-QKw_tyOd.mjs.map +0 -1
  225. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs.map +0 -1
  226. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-CjDiuUdj.mjs.map +0 -1
  227. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-BWzoR4HM.mjs.map +0 -1
  228. package/fesm2022/acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs.map +0 -1
  229. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs.map +0 -1
  230. package/fesm2022/acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs.map +0 -1
  231. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Buanq4is.mjs.map +0 -1
  232. /package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/{entity-list-view.component.d.ts → entity-master-list-view.component.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/layout.routes.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-list-view.component.html","../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'axp-dashboard-admin-footer',\r\n templateUrl: './footer.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [],\r\n host: {\r\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\r\n },\r\n})\r\nexport class AXPRootLayoutFooterComponent {\r\n}\r\n","<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>","\r\nimport { AXPAdminLayoutState, AXPLayoutRootDrawerToggle, getRootDrawer } from '@acorex/platform/common';\r\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Component({\r\n selector: 'axp-dashboard-admin-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n host: {\r\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\r\n },\r\n})\r\nexport class AXPRootLayoutHeaderComponent {\r\n\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n private router = inject(Router);\r\n\r\n protected isOpen = this.store.select(getRootDrawer());\r\n\r\n menuClick() {\r\n this.store.dispatch(AXPLayoutRootDrawerToggle());\r\n }\r\n\r\n logoClick() {\r\n this.router.navigate(['/']);\r\n }\r\n}\r\n","<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>","import { AXDrawerComponent } from '@acorex/components/drawer';\r\nimport { AXUnsubscriber } from '@acorex/core/utils';\r\nimport {\r\n AXPMenuItem,\r\n AXPRouteUtilityService,\r\n AXP_MENU_LOADER,\r\n AXP_PLATFORM_CONFIG_TOKEN,\r\n AXPNavigateAction,\r\n AXPLayoutService,\r\n AXPAdminLayoutState,\r\n AXPLayoutRootDrawerClose,\r\n getRootDrawer,\r\n isSmallScreen,\r\n} from '@acorex/platform/common';\r\nimport { Component, ViewChild, ViewEncapsulation, WritableSignal, inject, signal } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n templateUrl: './root-layout.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: AXUnsubscriber,\r\n },\r\n ],\r\n})\r\nexport class AXPRootLayoutComponent {\r\n @ViewChild('drawer') drawer!: AXDrawerComponent;\r\n\r\n private manuLoader = inject(AXP_MENU_LOADER);\r\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\r\n private _layoutService = inject(AXPLayoutService);\r\n public get layoutService() {\r\n return this._layoutService;\r\n }\r\n public set layoutService(value) {\r\n this._layoutService = value;\r\n }\r\n private subscriber = inject(AXUnsubscriber);\r\n\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n private routeUtilService = inject(AXPRouteUtilityService);\r\n protected isActiveRoute = (item: AXPMenuItem) => this.routeUtilService.isRouteActive(item);\r\n protected logo = this.config.logo;\r\n\r\n protected isOpen = this.store.select(getRootDrawer());\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isLoading: WritableSignal<boolean> = signal(false);\r\n protected showNavigationProgress: WritableSignal<boolean> = signal(false);\r\n protected menuItems$: Observable<AXPMenuItem[]> = this.manuLoader.getItems(1);\r\n\r\n constructor() {\r\n this.layoutService.navigationLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\r\n this.showNavigationProgress.set(value);\r\n });\r\n //\r\n this.layoutService.overlayLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\r\n this.isLoading.set(value);\r\n });\r\n }\r\n\r\n protected handleMenuClick(e: any, item: AXPMenuItem) {\r\n if (item.path && item.children?.length) return;\r\n if (item.command) {\r\n this.store.dispatch(item.command);\r\n } else if (item.path) {\r\n this.store.dispatch(AXPNavigateAction({ payload: { commands: item.path } }));\r\n }\r\n }\r\n\r\n protected handleCollapsedChange(value: boolean) {\r\n if (value) this.store.dispatch(AXPLayoutRootDrawerClose());\r\n }\r\n}\r\n","<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>","import { AXAvatarModule } from '@acorex/components/avatar';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXImageModule } from '@acorex/components/image';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AXPRootLayoutComponent } from './root-layout.component';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\r\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\r\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXDropdownModule,\r\n AXAvatarModule,\r\n AXImageModule,\r\n AXImageModule,\r\n AXPopoverModule,\r\n AXBadgeModule,\r\n AXTabsModule,\r\n AXDrawerModule,\r\n AXSideMenuModule,\r\n AXLoadingModule,\r\n AXPLogoComponent,\r\n AXPAuthModule,\r\n AXPComponentSlotModule,\r\n ],\r\n exports: [],\r\n declarations: [\r\n AXPRootLayoutFooterComponent,\r\n AXPRootLayoutHeaderComponent,\r\n AXPRootLayoutComponent,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXPAdminRootLayoutModule { }\r\n","import { Route } from '@angular/router';\r\nexport const routes: Route[] = [\r\n {\r\n path: 'error',\r\n children: [\r\n {\r\n path: 'offline',\r\n loadComponent: () => import('./pages/errors/error-offline/error-offline.component').then(c => c.AXPErrorOfflineComponent),\r\n },\r\n {\r\n path: '404',\r\n loadComponent: () => import('./pages/errors/error-404/error-404.component').then(c => c.AXPError404Component),\r\n },\r\n {\r\n path: '401',\r\n loadComponent: () => import('./pages/errors/error-401/error-401.component').then(c => c.AXPError401Component),\r\n },\r\n ]\r\n },\r\n];\r\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\r\nimport { AXDataTableComponent, AXDataTableModule, AXDataTableRowDbClick, AXRowCommandItem, AXRowCommandItemClickEvent } from '@acorex/components/data-table';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXPlatform } from '@acorex/core/platform';\r\nimport { ChangeDetectionStrategy, Component, Input, ViewChild, ViewEncapsulation, inject } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AXUnsubscriber } from '@acorex/core/utils';\r\nimport { AXPGridLayoutDirective, AXPLayoutService, AXPStickyDirective } from '@acorex/platform/common';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXTooltipModule } from '@acorex/components/tooltip';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-entity-detail-list-view',\r\n templateUrl: 'entity-detail-list-view.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [AXUnsubscriber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXBadgeModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXTooltipModule,\r\n AXBreadcrumbsModule,\r\n AXSearchBoxModule,\r\n AXDataTableModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n AXPAuthModule,\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPEntityDetailListViewComponent {\r\n\r\n private layout = inject(AXPLayoutService);\r\n\r\n @Input('viewModel')\r\n vm: AXPEntityDetailListViewModel;\r\n\r\n protected focusedRow: any;\r\n //\r\n @ViewChild('grid') grid!: AXDataTableComponent;\r\n\r\n constructor(\r\n private actionSheetService: AXActionSheetService,\r\n private unsubscriber: AXUnsubscriber,\r\n protected platform: AXPlatform,\r\n ) {\r\n }\r\n\r\n\r\n handleChangeSearchValue(e: AXValueChangedEvent) {\r\n if (e.isUserInteraction) {\r\n this.vm.applyInlineFilter(e.value);\r\n }\r\n }\r\n\r\n private dropdownRowItems: AXRowCommandItem[] = [\r\n {\r\n text: 'Details',\r\n icon: 'fa-solid fa-eye',\r\n name: 'open-entity',\r\n divided: true,\r\n },\r\n {\r\n text: 'Delete',\r\n icon: 'fa-solid fa-trash-can',\r\n name: 'delete-entity',\r\n color: 'danger',\r\n disabled: true,\r\n },\r\n ];\r\n\r\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\r\n const d: AXRowCommandItemClickEvent = {\r\n component: e.component,\r\n name: this.dropdownRowItems[0].name,\r\n data: e.data,\r\n };\r\n this.handleRowCommandClick(d);\r\n }\r\n\r\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\r\n return Promise.resolve(this.dropdownRowItems);\r\n };\r\n\r\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\r\n this.vm.executeCommand(e.name, e.data);\r\n }\r\n\r\n}\r\n","<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>","import { AXActionSheetModule } from '@acorex/components/action-sheet';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXPAdminLayoutState, AXPStickyDirective, getChildDrawer, isSmallScreen } from '@acorex/platform/common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\r\nimport { ActivatedRoute, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { AXPGridLayoutDirective } from '@acorex/platform/common';\r\nimport { AXPEntityDetailListViewComponent } from '../entity-detail-list-view/entity-detail-list-view.component';\r\nimport { AXPEntityMasterSingleViewModel } from '@acorex/platform/layout/entity';\r\n@Component({\r\n templateUrl: './entity-master-single-view.component.html',\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n AXDecoratorModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXButtonModule,\r\n AXBreadcrumbsModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n //\r\n AXPEntityDetailListViewComponent\r\n ],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXPEntityMasterSingleViewComponent {\r\n private activeRoute = inject(ActivatedRoute);\r\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterSingleViewModel;\r\n //\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isOpen = this.store.select(getChildDrawer());\r\n\r\n\r\n protected selectedTabIndex = signal(0);\r\n\r\n handleActiveTabChanged(e: any) {\r\n this.selectedTabIndex.set(e.index);\r\n }\r\n}","<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>","import { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDragPlaceholder, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, EventEmitter, Input, Output, inject } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AXPAdminLayoutState, isSmallScreen } from '@acorex/platform/common';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXSwitchModule } from '@acorex/components/switch';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-list-view-option-columns',\r\n templateUrl: './list-view-option-columns.component.html',\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n CdkDropList,\r\n CdkDrag,\r\n CdkDragPlaceholder,\r\n CdkDragHandle,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXSwitchModule,\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPListViewOptionsColumnsComponent {\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n\r\n @Input('viewModel')\r\n public vm!: AXPEntityMasterListViewModel;\r\n protected isSM = this.store.select(isSmallScreen());\r\n\r\n @Output()\r\n public onClosed = new EventEmitter<void>();\r\n\r\n\r\n\r\n\r\n handleVisibilityChange(e: AXValueChangedEvent<boolean>, name: string) {\r\n if (e.isUserInteraction) {\r\n const col = this.vm.columns().find(c => c.name == name);\r\n if (col) {\r\n col.visible = e.value ?? true;\r\n }\r\n }\r\n }\r\n\r\n protected drop(event: CdkDragDrop<unknown[]>) {\r\n moveItemInArray(this.vm.columns(), event.previousIndex, event.currentIndex);\r\n }\r\n\r\n protected handleClose() {\r\n this.onClosed.emit();\r\n }\r\n protected handleResetClick() {\r\n this.vm.resetColumns();\r\n }\r\n\r\n protected handleApplyClick() {\r\n this.onClosed.emit();\r\n }\r\n}\r\n","<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>","import { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDragPlaceholder, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXSwitchModule } from '@acorex/components/switch';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXImageModule } from '@acorex/components/image';\r\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\r\nimport { AXPEntityMasterListViewModel, AXPEntityMasterListViewSortPropViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-list-view-option-sorting',\r\n templateUrl: './list-view-option-sorting.component.html',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n CdkDropList,\r\n CdkDrag,\r\n CdkDragPlaceholder,\r\n CdkDragHandle,\r\n AXButtonModule,\r\n AXImageModule,\r\n AXDecoratorModule,\r\n AXSwitchModule,\r\n AXSelectBoxModule\r\n ],\r\n})\r\nexport class AXPListViewOptionSortingComponent {\r\n protected isSM = false;\r\n\r\n @Output()\r\n public onClosed = new EventEmitter<void>();\r\n\r\n @Input('viewModel')\r\n public vm!: AXPEntityMasterListViewModel;\r\n\r\n\r\n protected drop(event: CdkDragDrop<unknown[]>) {\r\n moveItemInArray(this.vm.sortableFields(), event.previousIndex, event.currentIndex);\r\n }\r\n\r\n protected changeItemSort(item: AXPEntityMasterListViewSortPropViewModel) {\r\n item.dir = ((item.dir == 'asc' ? 'desc' : 'asc'));\r\n }\r\n\r\n protected handleClose() {\r\n this.onClosed.emit();\r\n }\r\n protected handleResetClick() {\r\n this.vm.resetSorts();\r\n }\r\n\r\n protected handleApplyClick() {\r\n this.onClosed.emit();\r\n }\r\n}\r\n","<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>","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\r\nimport { AXDataTableComponent, AXDataTableModule, AXDataTableRowDbClick, AXRowCommandItem, AXRowCommandItemClickEvent } from '@acorex/components/data-table';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXPlatform } from '@acorex/core/platform';\r\nimport { ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation, effect, inject } from '@angular/core';\r\nimport { ActivatedRoute, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport { AXPAdminLayoutState, AXPGridLayoutDirective, AXPLayoutService, AXPStickyDirective, getChildDrawer, isSmallScreen } from '@acorex/platform/common';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXTooltipModule } from '@acorex/components/tooltip';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXPListViewOptionsColumnsComponent } from './list-view-option-columns/list-view-option-columns.component';\r\nimport { AXPListViewOptionSortingComponent } from './list-view-option-sorting/list-view-option-sorting.component';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n templateUrl: 'entity-list-view.component.html',\r\n styleUrls: ['entity-list-view.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXBadgeModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXTooltipModule,\r\n AXBreadcrumbsModule,\r\n AXSearchBoxModule,\r\n AXDataTableModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n AXPAuthModule,\r\n //\r\n AXPListViewOptionsColumnsComponent,\r\n AXPListViewOptionSortingComponent\r\n\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPEntityMasterListViewComponent {\r\n\r\n private layout = inject(AXPLayoutService);\r\n private activeRoute = inject(ActivatedRoute);\r\n\r\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterListViewModel;\r\n\r\n //\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isOpen = this.store.select(getChildDrawer());\r\n //\r\n protected focusedRow: any;\r\n //\r\n @ViewChild('grid') grid!: AXDataTableComponent;\r\n\r\n constructor(\r\n private actionSheetService: AXActionSheetService,\r\n protected platform: AXPlatform,\r\n ) {\r\n effect(() => {\r\n this.grid.selectedRows = this.vm.selectedItems();\r\n }, { allowSignalWrites: true })\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.vm.setView();\r\n }\r\n\r\n protected closeDrawer(name: string, collapsed: boolean) {\r\n if (collapsed) {\r\n switch (name) {\r\n case 'conditions':\r\n //this.loader.resetConditions();\r\n break;\r\n case 'columns':\r\n this.vm.applyColumns()\r\n break;\r\n case 'sorts':\r\n this.vm.applySorts();\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n handleChangeSearchValue(e: AXValueChangedEvent) {\r\n if (e.isUserInteraction) {\r\n this.vm.applyInlineFilter(e.value);\r\n }\r\n }\r\n\r\n private dropdownRowItems: AXRowCommandItem[] = [\r\n {\r\n text: 'Details',\r\n icon: 'fa-solid fa-eye',\r\n name: 'open-entity',\r\n divided: true,\r\n },\r\n {\r\n text: 'Delete',\r\n icon: 'fa-solid fa-trash-can',\r\n name: 'delete-entity',\r\n color: 'danger',\r\n disabled: true,\r\n },\r\n ];\r\n\r\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\r\n const d: AXRowCommandItemClickEvent = {\r\n component: e.component,\r\n name: this.dropdownRowItems[0].name,\r\n data: e.data,\r\n };\r\n this.handleRowCommandClick(d);\r\n }\r\n\r\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\r\n return Promise.resolve(this.dropdownRowItems);\r\n };\r\n\r\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\r\n this.vm.executeCommand(e.name, e.data);\r\n }\r\n\r\n protected async handleSelectedRowsChange(rows: unknown[]) {\r\n this.vm.selectedItems.set(rows);\r\n }\r\n\r\n}\r\n","<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>","import { ActivatedRouteSnapshot, RouteReuseStrategy, DetachedRouteHandle } from '@angular/router';\r\nimport { AXPEntityMasterSingleViewComponent } from './layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component';\r\nimport { AXPEntityMasterListViewComponent } from './layouts/entity-layouts/entity-master-list-view/entity-list-view.component';\r\n\r\n\r\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\r\n\r\n\r\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\r\n return false;\r\n }\r\n\r\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void { }\r\n\r\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\r\n return false;\r\n }\r\n\r\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\r\n return null;\r\n }\r\n\r\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n if (future.component === AXPEntityMasterListViewComponent || future.component === AXPEntityMasterSingleViewComponent) {\r\n return false;\r\n }\r\n\r\n return future.routeConfig === curr.routeConfig;\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { RouteReuseStrategy, RouterModule } from \"@angular/router\";\r\nimport { routes } from \"./layout.routes\";\r\nimport { AXPCommonModule } from \"@acorex/platform/common\";\r\nimport { AXPRootLayoutComponent } from \"./layouts/root-layout\";\r\nimport { AXPEntityReuseStrategy } from \"./entity-reuse.strategy\";\r\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from \"@acorex/platform/layout/entity\";\r\n@NgModule({\r\n imports: [\r\n RouterModule.forChild(routes),\r\n AXPCommonModule,\r\n ],\r\n exports: [],\r\n declarations: [],\r\n providers: [\r\n {\r\n provide: AXP_ENTITY_CONFIG_TOKEN,\r\n useValue: {\r\n viewers: {\r\n root: () => AXPRootLayoutComponent,\r\n master: {\r\n single: () => import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component')\r\n .then(c => c.AXPEntityMasterSingleViewComponent),\r\n ///\r\n create: () => import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component')\r\n .then(c => c.AXPEntityMasterCreateViewComponent),\r\n ///\r\n modify: () => import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component')\r\n .then(c => c.AXPEntityMasterModifyViewComponent),\r\n //\r\n list: () => import('./layouts/entity-layouts/entity-master-list-view/entity-list-view.component')\r\n .then(c => c.AXPEntityMasterListViewComponent)\r\n }\r\n }\r\n } as AXPEntityConfigs\r\n },\r\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }\r\n ]\r\n})\r\nexport class AXPDefaultThemeModule {\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i6","i7","i9.AXPRootLayoutFooterComponent","i10.AXPRootLayoutHeaderComponent","i3","i4","i5","i8","i10","i9","i12","i13","i14"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/layout.routes.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.html","../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'axp-dashboard-admin-footer',\r\n templateUrl: './footer.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [],\r\n host: {\r\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\r\n },\r\n})\r\nexport class AXPRootLayoutFooterComponent {\r\n}\r\n","<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>","\r\nimport { AXPAdminLayoutState, AXPLayoutRootDrawerToggle, getRootDrawer } from '@acorex/platform/common';\r\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Component({\r\n selector: 'axp-dashboard-admin-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n host: {\r\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\r\n },\r\n})\r\nexport class AXPRootLayoutHeaderComponent {\r\n\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n private router = inject(Router);\r\n\r\n protected isOpen = this.store.select(getRootDrawer());\r\n\r\n menuClick() {\r\n this.store.dispatch(AXPLayoutRootDrawerToggle());\r\n }\r\n\r\n logoClick() {\r\n this.router.navigate(['/']);\r\n }\r\n}\r\n","<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>","import { AXDrawerComponent } from '@acorex/components/drawer';\r\nimport { AXUnsubscriber } from '@acorex/core/utils';\r\nimport {\r\n AXPMenuItem,\r\n AXPRouteUtilityService,\r\n AXP_MENU_LOADER,\r\n AXP_PLATFORM_CONFIG_TOKEN,\r\n AXPNavigateAction,\r\n AXPLayoutService,\r\n AXPAdminLayoutState,\r\n AXPLayoutRootDrawerClose,\r\n getRootDrawer,\r\n isSmallScreen,\r\n} from '@acorex/platform/common';\r\nimport { Component, ViewChild, ViewEncapsulation, WritableSignal, inject, signal } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n templateUrl: './root-layout.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: AXUnsubscriber,\r\n },\r\n ],\r\n})\r\nexport class AXPRootLayoutComponent {\r\n @ViewChild('drawer') drawer!: AXDrawerComponent;\r\n\r\n private manuLoader = inject(AXP_MENU_LOADER);\r\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\r\n private _layoutService = inject(AXPLayoutService);\r\n public get layoutService() {\r\n return this._layoutService;\r\n }\r\n public set layoutService(value) {\r\n this._layoutService = value;\r\n }\r\n private subscriber = inject(AXUnsubscriber);\r\n\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n private routeUtilService = inject(AXPRouteUtilityService);\r\n protected isActiveRoute = (item: AXPMenuItem) => this.routeUtilService.isRouteActive(item);\r\n protected logo = this.config.logo;\r\n\r\n protected isOpen = this.store.select(getRootDrawer());\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isLoading: WritableSignal<boolean> = signal(false);\r\n protected showNavigationProgress: WritableSignal<boolean> = signal(false);\r\n protected menuItems$: Observable<AXPMenuItem[]> = this.manuLoader.getItems(1);\r\n\r\n constructor() {\r\n this.layoutService.navigationLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\r\n this.showNavigationProgress.set(value);\r\n });\r\n //\r\n this.layoutService.overlayLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {\r\n this.isLoading.set(value);\r\n });\r\n }\r\n\r\n protected handleMenuClick(e: any, item: AXPMenuItem) {\r\n if (item.path && item.children?.length) return;\r\n if (item.command) {\r\n this.store.dispatch(item.command);\r\n } else if (item.path) {\r\n this.store.dispatch(AXPNavigateAction({ payload: { commands: item.path } }));\r\n }\r\n }\r\n\r\n protected handleCollapsedChange(value: boolean) {\r\n if (value) this.store.dispatch(AXPLayoutRootDrawerClose());\r\n }\r\n}\r\n","<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>","import { AXAvatarModule } from '@acorex/components/avatar';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXImageModule } from '@acorex/components/image';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AXPRootLayoutComponent } from './root-layout.component';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\r\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\r\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXDropdownModule,\r\n AXAvatarModule,\r\n AXImageModule,\r\n AXImageModule,\r\n AXPopoverModule,\r\n AXBadgeModule,\r\n AXTabsModule,\r\n AXDrawerModule,\r\n AXSideMenuModule,\r\n AXLoadingModule,\r\n AXPLogoComponent,\r\n AXPAuthModule,\r\n AXPComponentSlotModule,\r\n ],\r\n exports: [],\r\n declarations: [\r\n AXPRootLayoutFooterComponent,\r\n AXPRootLayoutHeaderComponent,\r\n AXPRootLayoutComponent,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXPAdminRootLayoutModule { }\r\n","import { Route } from '@angular/router';\r\nexport const routes: Route[] = [\r\n {\r\n path: 'error',\r\n children: [\r\n {\r\n path: 'offline',\r\n loadComponent: () => import('./pages/errors/error-offline/error-offline.component').then(c => c.AXPErrorOfflineComponent),\r\n },\r\n {\r\n path: '404',\r\n loadComponent: () => import('./pages/errors/error-404/error-404.component').then(c => c.AXPError404Component),\r\n },\r\n {\r\n path: '401',\r\n loadComponent: () => import('./pages/errors/error-401/error-401.component').then(c => c.AXPError401Component),\r\n },\r\n ]\r\n },\r\n];\r\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\r\nimport { AXDataTableComponent, AXDataTableModule, AXDataTableRowDbClick, AXRowCommandItem, AXRowCommandItemClickEvent } from '@acorex/components/data-table';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXPlatform } from '@acorex/core/platform';\r\nimport { ChangeDetectionStrategy, Component, Input, ViewChild, ViewEncapsulation, inject } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AXUnsubscriber } from '@acorex/core/utils';\r\nimport { AXPGridLayoutDirective, AXPLayoutService, AXPStickyDirective } from '@acorex/platform/common';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXTooltipModule } from '@acorex/components/tooltip';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-entity-detail-list-view',\r\n templateUrl: 'entity-detail-list-view.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [AXUnsubscriber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXBadgeModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXTooltipModule,\r\n AXBreadcrumbsModule,\r\n AXSearchBoxModule,\r\n AXDataTableModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n AXPAuthModule,\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPEntityDetailListViewComponent {\r\n\r\n private layout = inject(AXPLayoutService);\r\n\r\n @Input('viewModel')\r\n vm: AXPEntityDetailListViewModel;\r\n\r\n protected focusedRow: any;\r\n //\r\n @ViewChild('grid') grid!: AXDataTableComponent;\r\n\r\n constructor(\r\n private actionSheetService: AXActionSheetService,\r\n private unsubscriber: AXUnsubscriber,\r\n protected platform: AXPlatform,\r\n ) {\r\n }\r\n\r\n\r\n handleChangeSearchValue(e: AXValueChangedEvent) {\r\n if (e.isUserInteraction) {\r\n this.vm.applyInlineFilter(e.value);\r\n }\r\n }\r\n\r\n private dropdownRowItems: AXRowCommandItem[] = [\r\n {\r\n text: 'Details',\r\n icon: 'fa-solid fa-eye',\r\n name: 'open-entity',\r\n divided: true,\r\n },\r\n {\r\n text: 'Delete',\r\n icon: 'fa-solid fa-trash-can',\r\n name: 'delete-entity',\r\n color: 'danger',\r\n disabled: true,\r\n },\r\n ];\r\n\r\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\r\n const d: AXRowCommandItemClickEvent = {\r\n component: e.component,\r\n name: this.dropdownRowItems[0].name,\r\n data: e.data,\r\n };\r\n this.handleRowCommandClick(d);\r\n }\r\n\r\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\r\n return Promise.resolve(this.dropdownRowItems);\r\n };\r\n\r\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\r\n this.vm.executeCommand(e.name, e.data);\r\n }\r\n\r\n}\r\n","<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>","import { AXActionSheetModule } from '@acorex/components/action-sheet';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXPAdminLayoutState, AXPStickyDirective, getChildDrawer, isSmallScreen } from '@acorex/platform/common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\r\nimport { ActivatedRoute, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { AXPGridLayoutDirective } from '@acorex/platform/common';\r\nimport { AXPEntityDetailListViewComponent } from '../entity-detail-list-view/entity-detail-list-view.component';\r\nimport { AXPEntityMasterSingleViewModel } from '@acorex/platform/layout/entity';\r\n\r\n\r\n@Component({\r\n templateUrl: './entity-master-single-view.component.html',\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n AXDecoratorModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXButtonModule,\r\n AXBreadcrumbsModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n //\r\n AXPEntityDetailListViewComponent\r\n ],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXPEntityMasterSingleViewComponent {\r\n private activeRoute = inject(ActivatedRoute);\r\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterSingleViewModel;\r\n //\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isOpen = this.store.select(getChildDrawer());\r\n\r\n\r\n protected selectedTabIndex = signal(0);\r\n\r\n handleActiveTabChanged(e: any) {\r\n this.selectedTabIndex.set(e.index);\r\n }\r\n}","<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>","import { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDragPlaceholder, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, EventEmitter, Input, Output, inject } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AXPAdminLayoutState, isSmallScreen } from '@acorex/platform/common';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXSwitchModule } from '@acorex/components/switch';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-list-view-option-columns',\r\n templateUrl: './list-view-option-columns.component.html',\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n CdkDropList,\r\n CdkDrag,\r\n CdkDragPlaceholder,\r\n CdkDragHandle,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXSwitchModule,\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPListViewOptionsColumnsComponent {\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n\r\n @Input('viewModel')\r\n public vm!: AXPEntityMasterListViewModel;\r\n protected isSM = this.store.select(isSmallScreen());\r\n\r\n @Output()\r\n public onClosed = new EventEmitter<void>();\r\n\r\n\r\n\r\n\r\n handleVisibilityChange(e: AXValueChangedEvent<boolean>, name: string) {\r\n if (e.isUserInteraction) {\r\n const col = this.vm.columns().find(c => c.name == name);\r\n if (col) {\r\n col.visible = e.value ?? true;\r\n }\r\n }\r\n }\r\n\r\n protected drop(event: CdkDragDrop<unknown[]>) {\r\n moveItemInArray(this.vm.columns(), event.previousIndex, event.currentIndex);\r\n }\r\n\r\n protected handleClose() {\r\n this.onClosed.emit();\r\n }\r\n protected handleResetClick() {\r\n this.vm.resetColumns();\r\n }\r\n\r\n protected handleApplyClick() {\r\n this.onClosed.emit();\r\n }\r\n}\r\n","<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>","import { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDragPlaceholder, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXSwitchModule } from '@acorex/components/switch';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXImageModule } from '@acorex/components/image';\r\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\r\nimport { AXPEntityMasterListViewModel, AXPEntityMasterListViewSortPropViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n selector: 'axp-list-view-option-sorting',\r\n templateUrl: './list-view-option-sorting.component.html',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n CdkDropList,\r\n CdkDrag,\r\n CdkDragPlaceholder,\r\n CdkDragHandle,\r\n AXButtonModule,\r\n AXImageModule,\r\n AXDecoratorModule,\r\n AXSwitchModule,\r\n AXSelectBoxModule\r\n ],\r\n})\r\nexport class AXPListViewOptionSortingComponent {\r\n protected isSM = false;\r\n\r\n @Output()\r\n public onClosed = new EventEmitter<void>();\r\n\r\n @Input('viewModel')\r\n public vm!: AXPEntityMasterListViewModel;\r\n\r\n\r\n protected drop(event: CdkDragDrop<unknown[]>) {\r\n moveItemInArray(this.vm.sortableFields(), event.previousIndex, event.currentIndex);\r\n }\r\n\r\n protected changeItemSort(item: AXPEntityMasterListViewSortPropViewModel) {\r\n item.dir = ((item.dir == 'asc' ? 'desc' : 'asc'));\r\n }\r\n\r\n protected handleClose() {\r\n this.onClosed.emit();\r\n }\r\n protected handleResetClick() {\r\n this.vm.resetSorts();\r\n }\r\n\r\n protected handleApplyClick() {\r\n this.vm.applySorts();\r\n this.onClosed.emit();\r\n }\r\n}\r\n","<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>","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\r\nimport { AXDataTableComponent, AXDataTableModule, AXDataTableRowDbClick, AXRowCommandItem, AXRowCommandItemClickEvent } from '@acorex/components/data-table';\r\nimport { AXDrawerModule } from '@acorex/components/drawer';\r\nimport { AXPlatform } from '@acorex/core/platform';\r\nimport { ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation, effect, inject } from '@angular/core';\r\nimport { ActivatedRoute, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport { AXPAdminLayoutState, AXPGridLayoutDirective, AXPLayoutService, AXPStickyDirective, getChildDrawer, isSmallScreen } from '@acorex/platform/common';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXDialogModule } from '@acorex/components/dialog';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXFormModule } from '@acorex/components/form';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXTabsModule } from '@acorex/components/tabs';\r\nimport { AXTooltipModule } from '@acorex/components/tooltip';\r\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\r\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXPAuthModule } from '@acorex/platform/auth';\r\nimport { AXPListViewOptionsColumnsComponent } from './list-view-option-columns/list-view-option-columns.component';\r\nimport { AXPListViewOptionSortingComponent } from './list-view-option-sorting/list-view-option-sorting.component';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\r\n\r\n@Component({\r\n templateUrl: 'entity-master-list-view.component.html',\r\n styleUrls: ['entity-master-list-view.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n RouterModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n AXBadgeModule,\r\n AXDropdownModule,\r\n AXPopoverModule,\r\n AXFormModule,\r\n AXActionSheetModule,\r\n AXDrawerModule,\r\n AXDialogModule,\r\n AXLoadingModule,\r\n AXTabsModule,\r\n AXTooltipModule,\r\n AXBreadcrumbsModule,\r\n AXSearchBoxModule,\r\n AXDataTableModule,\r\n //\r\n AXPLayoutBuilderModule,\r\n AXPWidgetsModule,\r\n AXPStickyDirective,\r\n AXPGridLayoutDirective,\r\n AXPAuthModule,\r\n //\r\n AXPListViewOptionsColumnsComponent,\r\n AXPListViewOptionSortingComponent\r\n\r\n ],\r\n standalone: true,\r\n})\r\nexport class AXPEntityMasterListViewComponent {\r\n\r\n private layout = inject(AXPLayoutService);\r\n private activeRoute = inject(ActivatedRoute);\r\n\r\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterListViewModel;\r\n\r\n //\r\n private store = inject(Store<AXPAdminLayoutState>);\r\n protected isSM = this.store.select(isSmallScreen());\r\n protected isOpen = this.store.select(getChildDrawer());\r\n //\r\n protected focusedRow: any;\r\n //\r\n @ViewChild('grid') grid!: AXDataTableComponent;\r\n\r\n constructor(\r\n private actionSheetService: AXActionSheetService,\r\n protected platform: AXPlatform,\r\n ) {\r\n effect(() => {\r\n this.grid.selectedRows = this.vm.selectedItems();\r\n }, { allowSignalWrites: true });\r\n //\r\n this.vm.events$.subscribe(e => {\r\n if (e.action == \"refresh\") {\r\n this.grid.refresh();\r\n }\r\n })\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.vm.setView();\r\n }\r\n\r\n protected closeDrawer(name: string, collapsed: boolean) {\r\n if (collapsed) {\r\n switch (name) {\r\n case 'conditions':\r\n //this.loader.resetConditions();\r\n break;\r\n case 'columns':\r\n this.vm.applyColumns()\r\n break;\r\n case 'sorts':\r\n //this.vm.resetSorts();\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n handleChangeSearchValue(e: AXValueChangedEvent) {\r\n if (e.isUserInteraction) {\r\n this.vm.applyInlineFilter(e.value);\r\n }\r\n }\r\n\r\n private dropdownRowItems: AXRowCommandItem[] = [\r\n {\r\n text: 'Details',\r\n icon: 'fa-solid fa-eye',\r\n name: 'open-entity',\r\n divided: true,\r\n },\r\n {\r\n text: 'Delete',\r\n icon: 'fa-solid fa-trash-can',\r\n name: 'delete-entity',\r\n color: 'danger',\r\n disabled: true,\r\n },\r\n ];\r\n\r\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\r\n const d: AXRowCommandItemClickEvent = {\r\n component: e.component,\r\n name: this.dropdownRowItems[0].name,\r\n data: e.data,\r\n };\r\n this.handleRowCommandClick(d);\r\n }\r\n\r\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\r\n return Promise.resolve(this.dropdownRowItems);\r\n };\r\n\r\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\r\n this.vm.executeCommand(e.name, e.data);\r\n }\r\n\r\n protected async handleSelectedRowsChange(rows: unknown[]) {\r\n this.vm.selectedItems.set(rows);\r\n }\r\n\r\n}\r\n","<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>","import { ActivatedRouteSnapshot, RouteReuseStrategy, DetachedRouteHandle } from '@angular/router';\r\nimport { AXPEntityMasterSingleViewComponent } from './layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component';\r\nimport { AXPEntityMasterListViewComponent } from './layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component';\r\n\r\n\r\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\r\n\r\n\r\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\r\n return false;\r\n }\r\n\r\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void { }\r\n\r\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\r\n return false;\r\n }\r\n\r\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\r\n return null;\r\n }\r\n\r\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n if (future.component === AXPEntityMasterListViewComponent || future.component === AXPEntityMasterSingleViewComponent) {\r\n return false;\r\n }\r\n\r\n return future.routeConfig === curr.routeConfig;\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { RouteReuseStrategy, RouterModule } from \"@angular/router\";\r\nimport { routes } from \"./layout.routes\";\r\nimport { AXPCommonModule } from \"@acorex/platform/common\";\r\nimport { AXPRootLayoutComponent } from \"./layouts/root-layout\";\r\nimport { AXPEntityReuseStrategy } from \"./entity-reuse.strategy\";\r\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from \"@acorex/platform/layout/entity\";\r\n@NgModule({\r\n imports: [\r\n RouterModule.forChild(routes),\r\n AXPCommonModule,\r\n ],\r\n exports: [],\r\n declarations: [],\r\n providers: [\r\n {\r\n provide: AXP_ENTITY_CONFIG_TOKEN,\r\n useValue: {\r\n viewers: {\r\n root: () => AXPRootLayoutComponent,\r\n master: {\r\n single: () => import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component')\r\n .then(c => c.AXPEntityMasterSingleViewComponent),\r\n ///\r\n create: () => import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component')\r\n .then(c => c.AXPEntityMasterCreateViewComponent),\r\n ///\r\n modify: () => import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component')\r\n .then(c => c.AXPEntityMasterModifyViewComponent),\r\n //\r\n list: () => import('./layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component')\r\n .then(c => c.AXPEntityMasterListViewComponent)\r\n }\r\n }\r\n } as AXPEntityConfigs\r\n },\r\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }\r\n ]\r\n})\r\nexport class AXPDefaultThemeModule {\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i6","i7","i9.AXPRootLayoutFooterComponent","i10.AXPRootLayoutHeaderComponent","i3","i4","i5","i8","i10","i9","i12","i13","i14"],"mappings":"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"}