@acorex/modules 19.3.0-next.0 → 19.3.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/auth/lib/pages/account/profile/profile-slot.component.d.ts +4 -0
  2. package/auth/lib/pages/account/user-sessions/user-sessions.component.d.ts +71 -0
  3. package/auth/lib/pages/account/user-sessions/user-sessions.service.d.ts +22 -0
  4. package/common/lib/entities/dashboard/dashboard.types.d.ts +1 -1
  5. package/common/lib/features/home-dashboard/dashboard-home/home-dashboard.d.ts +4 -0
  6. package/common/lib/features/home-dashboard/dashboard-home/home-dashboard.store.d.ts +2 -0
  7. package/common/lib/features/home-dashboard/dashboard-home/home-dashboard.type.d.ts +1 -1
  8. package/common/lib/features/home-dashboard/widget-wrapper/dashboard-widget-wrapper.d.ts +6 -1
  9. package/document-management/lib/features/document-explorer/components/create-folder-dialog/create-folder-dialog.component.d.ts +4 -1
  10. package/document-management/lib/features/document-explorer/document-explorer.component.d.ts +2 -0
  11. package/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-column.component.d.ts +2 -2
  12. package/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-designer.component.d.ts +2 -2
  13. package/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-edit.component.d.ts +2 -2
  14. package/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-view.component.d.ts +2 -2
  15. package/document-management/lib/features/shared/document-manager.service.d.ts +2 -0
  16. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-column.component.d.ts +2 -2
  17. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-edit.component.d.ts +2 -2
  18. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-print.component.d.ts +2 -2
  19. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-view.component.d.ts +2 -2
  20. package/fesm2022/{acorex-modules-application-management-module-designer.component-Dd_lmV6C.mjs → acorex-modules-application-management-module-designer.component-ClxaJcjD.mjs} +9 -9
  21. package/fesm2022/{acorex-modules-application-management-module-designer.component-Dd_lmV6C.mjs.map → acorex-modules-application-management-module-designer.component-ClxaJcjD.mjs.map} +1 -1
  22. package/fesm2022/acorex-modules-application-management.mjs +14 -15
  23. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  24. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs → acorex-modules-auth-acorex-modules-auth-DoIq3IkC.mjs} +87 -16
  25. package/fesm2022/acorex-modules-auth-acorex-modules-auth-DoIq3IkC.mjs.map +1 -0
  26. package/fesm2022/{acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs → acorex-modules-auth-app-chooser.component-D5z_sxdb.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs.map → acorex-modules-auth-app-chooser.component-D5z_sxdb.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-auth-login.module-B_WrZQJx.mjs → acorex-modules-auth-login.module-D1lvqgpY.mjs} +4 -4
  29. package/fesm2022/{acorex-modules-auth-login.module-B_WrZQJx.mjs.map → acorex-modules-auth-login.module-D1lvqgpY.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-auth-master.layout-hDbrFbwO.mjs → acorex-modules-auth-master.layout-D0wN1nJg.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-auth-master.layout-hDbrFbwO.mjs.map → acorex-modules-auth-master.layout-D0wN1nJg.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-auth-password.component-DDE0M5GE.mjs → acorex-modules-auth-password.component-BxgUw_hF.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-auth-password.component-DDE0M5GE.mjs.map → acorex-modules-auth-password.component-BxgUw_hF.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-auth-password.component-BnT_IaqN.mjs → acorex-modules-auth-password.component-DwcP8s1c.mjs} +7 -7
  35. package/fesm2022/{acorex-modules-auth-password.component-BnT_IaqN.mjs.map → acorex-modules-auth-password.component-DwcP8s1c.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-auth-routes-Da02kID6.mjs → acorex-modules-auth-routes-BfuRe12M.mjs} +2 -2
  37. package/fesm2022/{acorex-modules-auth-routes-Da02kID6.mjs.map → acorex-modules-auth-routes-BfuRe12M.mjs.map} +1 -1
  38. package/fesm2022/acorex-modules-auth-setting.provider-CM-T8nbI.mjs +128 -0
  39. package/fesm2022/acorex-modules-auth-setting.provider-CM-T8nbI.mjs.map +1 -0
  40. package/fesm2022/{acorex-modules-auth-two-factor.module-BrDpX4X1.mjs → acorex-modules-auth-two-factor.module-BV_amlHF.mjs} +2 -2
  41. package/fesm2022/{acorex-modules-auth-two-factor.module-BrDpX4X1.mjs.map → acorex-modules-auth-two-factor.module-BV_amlHF.mjs.map} +1 -1
  42. package/fesm2022/acorex-modules-auth-user-sessions.component-CjXRKjtX.mjs +135 -0
  43. package/fesm2022/acorex-modules-auth-user-sessions.component-CjXRKjtX.mjs.map +1 -0
  44. package/fesm2022/acorex-modules-auth.mjs +1 -1
  45. package/fesm2022/{acorex-modules-common-index-rvP9ISgL.mjs → acorex-modules-common-index-BhPbl6D7.mjs} +130 -23
  46. package/fesm2022/acorex-modules-common-index-BhPbl6D7.mjs.map +1 -0
  47. package/fesm2022/acorex-modules-common.mjs +1 -1
  48. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  49. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  50. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  51. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-CI0m4lpX.mjs → acorex-modules-document-management-acorex-modules-document-management-By3KxyQi.mjs} +95 -61
  52. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-By3KxyQi.mjs.map +1 -0
  53. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-D8anTs3Q.mjs → acorex-modules-document-management-create-folder-dialog.component-BY-8zP2Y.mjs} +33 -15
  54. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-BY-8zP2Y.mjs.map +1 -0
  55. package/fesm2022/{acorex-modules-document-management-details-view.component-z05RykKt.mjs → acorex-modules-document-management-details-view.component-T2Wfo1An.mjs} +2 -2
  56. package/fesm2022/{acorex-modules-document-management-details-view.component-z05RykKt.mjs.map → acorex-modules-document-management-details-view.component-T2Wfo1An.mjs.map} +1 -1
  57. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BeiXQNAw.mjs → acorex-modules-document-management-drive-choose.component-B9OGXyP2.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BeiXQNAw.mjs.map → acorex-modules-document-management-drive-choose.component-B9OGXyP2.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DctO0SZ7.mjs → acorex-modules-document-management-large-icons-view.component-CbS823XB.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DctO0SZ7.mjs.map → acorex-modules-document-management-large-icons-view.component-CbS823XB.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CtCdVI_p.mjs → acorex-modules-document-management-large-tiles-view.component-_u1vSWi5.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CtCdVI_p.mjs.map → acorex-modules-document-management-large-tiles-view.component-_u1vSWi5.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-document-management-list-view.component-Cz2wNqhM.mjs → acorex-modules-document-management-list-view.component-jXR4GQlh.mjs} +2 -2
  64. package/fesm2022/{acorex-modules-document-management-list-view.component-Cz2wNqhM.mjs.map → acorex-modules-document-management-list-view.component-jXR4GQlh.mjs.map} +1 -1
  65. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DB868l1X.mjs → acorex-modules-document-management-rename-node-dialog.component-Cp_X2KqY.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DB868l1X.mjs.map → acorex-modules-document-management-rename-node-dialog.component-Cp_X2KqY.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-B_O5Qpmi.mjs → acorex-modules-document-management-small-icons-view.component-CkoUBGKu.mjs} +2 -2
  68. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-B_O5Qpmi.mjs.map → acorex-modules-document-management-small-icons-view.component-CkoUBGKu.mjs.map} +1 -1
  69. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-b2lauUIY.mjs → acorex-modules-document-management-small-tiles-view.component-BFyR4x39.mjs} +2 -2
  70. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-b2lauUIY.mjs.map → acorex-modules-document-management-small-tiles-view.component-BFyR4x39.mjs.map} +1 -1
  71. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  72. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-HYqIufS1.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-B89YXZyp.mjs} +19 -18
  73. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-B89YXZyp.mjs.map +1 -0
  74. package/fesm2022/{acorex-modules-form-template-management-category.entity-CLFAo0Cn.mjs → acorex-modules-form-template-management-category.entity-Dijep_aT.mjs} +9 -2
  75. package/fesm2022/acorex-modules-form-template-management-category.entity-Dijep_aT.mjs.map +1 -0
  76. package/fesm2022/{acorex-modules-form-template-management-setting.provider-DgHwqlhz.mjs → acorex-modules-form-template-management-setting.provider-CT_uJT9V.mjs} +2 -2
  77. package/fesm2022/{acorex-modules-form-template-management-setting.provider-DgHwqlhz.mjs.map → acorex-modules-form-template-management-setting.provider-CT_uJT9V.mjs.map} +1 -1
  78. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-CYAyug_g.mjs → acorex-modules-form-template-management-template-widget-edit.component-C5gnjRm4.mjs} +5 -5
  79. package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-C5gnjRm4.mjs.map +1 -0
  80. package/fesm2022/{acorex-modules-form-template-management-template.entity-DGU1QNSN.mjs → acorex-modules-form-template-management-template.entity-dw1iFvcm.mjs} +4 -4
  81. package/fesm2022/acorex-modules-form-template-management-template.entity-dw1iFvcm.mjs.map +1 -0
  82. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DXJxzTfM.mjs → acorex-modules-form-template-management-viewer-popup.component-oYKbLQpE.mjs} +3 -3
  83. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DXJxzTfM.mjs.map → acorex-modules-form-template-management-viewer-popup.component-oYKbLQpE.mjs.map} +1 -1
  84. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  85. package/fesm2022/acorex-modules-log-management.mjs +1096 -0
  86. package/fesm2022/acorex-modules-log-management.mjs.map +1 -0
  87. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  88. package/fesm2022/acorex-modules-organization-management-branch.entity-fs_iKM4S.mjs +489 -0
  89. package/fesm2022/acorex-modules-organization-management-branch.entity-fs_iKM4S.mjs.map +1 -0
  90. package/fesm2022/{acorex-modules-organization-management-chart.entity-DnmNyyD2.mjs → acorex-modules-organization-management-chart.entity-UAn44WCP.mjs} +14 -13
  91. package/fesm2022/acorex-modules-organization-management-chart.entity-UAn44WCP.mjs.map +1 -0
  92. package/fesm2022/{acorex-modules-organization-management-company.entity-BRkEcDNt.mjs → acorex-modules-organization-management-company.entity-D1A1HSkC.mjs} +12 -11
  93. package/fesm2022/acorex-modules-organization-management-company.entity-D1A1HSkC.mjs.map +1 -0
  94. package/fesm2022/{acorex-modules-organization-management-employee.entity-Cp5TejzT.mjs → acorex-modules-organization-management-department.entity-DI9QpZ1d.mjs} +192 -85
  95. package/fesm2022/acorex-modules-organization-management-department.entity-DI9QpZ1d.mjs.map +1 -0
  96. package/fesm2022/acorex-modules-organization-management-division.entity-4Gxc1dGd.mjs +442 -0
  97. package/fesm2022/acorex-modules-organization-management-division.entity-4Gxc1dGd.mjs.map +1 -0
  98. package/fesm2022/acorex-modules-organization-management-employee.entity-DSvtxcC3.mjs +601 -0
  99. package/fesm2022/acorex-modules-organization-management-employee.entity-DSvtxcC3.mjs.map +1 -0
  100. package/fesm2022/{acorex-modules-organization-management-employment-type.entity-Ul10Mdwm.mjs → acorex-modules-organization-management-employment-type.entity-CWYu9tIg.mjs} +21 -25
  101. package/fesm2022/acorex-modules-organization-management-employment-type.entity-CWYu9tIg.mjs.map +1 -0
  102. package/fesm2022/{acorex-modules-organization-management-position.entity-BpQbwW-x.mjs → acorex-modules-organization-management-position.entity-DhPT9kzv.mjs} +12 -11
  103. package/fesm2022/acorex-modules-organization-management-position.entity-DhPT9kzv.mjs.map +1 -0
  104. package/fesm2022/{acorex-modules-organization-management-division.entity-qyDyhl-q.mjs → acorex-modules-organization-management-role.entity-C-AIIaDo.mjs} +31 -39
  105. package/fesm2022/acorex-modules-organization-management-role.entity-C-AIIaDo.mjs.map +1 -0
  106. package/fesm2022/{acorex-modules-organization-management-branch.entity-e5pFx82N.mjs → acorex-modules-organization-management-team.entity-DZqK-yLT.mjs} +71 -60
  107. package/fesm2022/acorex-modules-organization-management-team.entity-DZqK-yLT.mjs.map +1 -0
  108. package/fesm2022/acorex-modules-organization-management.mjs +35 -35
  109. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  110. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-DNUdH0N9.mjs → acorex-modules-platform-management-acorex-modules-platform-management-Ckc1_cpl.mjs} +3917 -1601
  111. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-Ckc1_cpl.mjs.map +1 -0
  112. package/fesm2022/acorex-modules-platform-management-capture-screen.component-B9hhUIbH.mjs +28 -0
  113. package/fesm2022/acorex-modules-platform-management-capture-screen.component-B9hhUIbH.mjs.map +1 -0
  114. package/fesm2022/{acorex-modules-platform-management-list-version.component-D3yLcmjw.mjs → acorex-modules-platform-management-list-version.component-kbqAusu_.mjs} +6 -6
  115. package/fesm2022/acorex-modules-platform-management-list-version.component-kbqAusu_.mjs.map +1 -0
  116. package/fesm2022/{acorex-modules-platform-management-setting.provider-CQCoLwHW.mjs → acorex-modules-platform-management-setting.provider-DEzI0jUt.mjs} +21 -5
  117. package/fesm2022/acorex-modules-platform-management-setting.provider-DEzI0jUt.mjs.map +1 -0
  118. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  119. package/fesm2022/acorex-modules-security-management.mjs +1147 -461
  120. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  121. package/form-template-management/lib/features/designer/widgets/template/template-widget-designer.component.d.ts +2 -2
  122. package/form-template-management/lib/features/designer/widgets/template/template-widget-edit.component.d.ts +2 -2
  123. package/form-template-management/lib/features/designer/widgets/template/template-widget-view.component.d.ts +2 -2
  124. package/form-template-management/lib/features/designer/widgets/template-designer/template-designer-widget-view.component.d.ts +2 -2
  125. package/log-management/README.md +3 -0
  126. package/log-management/index.d.ts +7 -0
  127. package/log-management/lib/const.d.ts +20 -0
  128. package/log-management/lib/entities/axp-log/axp-log.entity.d.ts +3 -0
  129. package/log-management/lib/entities/axp-log/axp-log.service.d.ts +10 -0
  130. package/log-management/lib/entities/axp-log/axp-log.types.d.ts +23 -0
  131. package/log-management/lib/entities/axp-log/index.d.ts +3 -0
  132. package/log-management/lib/entity.provider.d.ts +10 -0
  133. package/log-management/lib/log-management.module.d.ts +6 -0
  134. package/log-management/lib/menu.provider.d.ts +5 -0
  135. package/log-management/lib/permission.provider.d.ts +4 -0
  136. package/log-management/lib/search-command.provider.d.ts +4 -0
  137. package/log-management/lib/setting.provider.d.ts +4 -0
  138. package/notification-management/lib/{components → features/components}/admin-notification-item/admin-notification-item.component.d.ts +1 -1
  139. package/notification-management/lib/{components → features/components}/admin-notification-panel/admin-notification-panel.component.d.ts +1 -1
  140. package/organization-management/lib/entities/branch/branch.types.d.ts +6 -0
  141. package/organization-management/lib/entities/department/department.types.d.ts +5 -0
  142. package/organization-management/lib/entities/division/division.types.d.ts +5 -0
  143. package/organization-management/lib/entities/employee/employee.types.d.ts +9 -1
  144. package/organization-management/lib/entities/role/role.types.d.ts +1 -1
  145. package/organization-management/lib/entities/team/team.types.d.ts +4 -1
  146. package/package.json +5 -1
  147. package/platform-management/index.d.ts +2 -1
  148. package/platform-management/lib/const.d.ts +24 -0
  149. package/platform-management/lib/entities/app-term/index.d.ts +2 -2
  150. package/platform-management/lib/entities/app-version/index.d.ts +2 -2
  151. package/platform-management/lib/entities/data-source/coulmn-def.widget.d.ts +3 -2
  152. package/platform-management/lib/entities/index.d.ts +3 -1
  153. package/platform-management/lib/entities/issue-type/index.d.ts +3 -0
  154. package/platform-management/lib/entities/issue-type/issue-type.entity.d.ts +3 -0
  155. package/platform-management/lib/entities/issue-type/issue-type.service.d.ts +10 -0
  156. package/platform-management/lib/entities/issue-type/issue-type.types.d.ts +6 -0
  157. package/platform-management/lib/entities/meta-data-definition/meta-data-definition.types.d.ts +3 -1
  158. package/platform-management/lib/entities/meta-data-definition-category/category.types.d.ts +2 -0
  159. package/platform-management/lib/entities/my-reported-issues/index.d.ts +3 -0
  160. package/platform-management/lib/entities/my-reported-issues/my-reported-issues.entity.d.ts +3 -0
  161. package/platform-management/lib/entities/my-reported-issues/my-reported-issues.service.d.ts +10 -0
  162. package/platform-management/lib/entities/my-reported-issues/my-reported-issues.types.d.ts +5 -0
  163. package/platform-management/lib/entities/promotion/index.d.ts +1 -1
  164. package/platform-management/lib/entities/reported-issues/index.d.ts +3 -0
  165. package/platform-management/lib/entities/reported-issues/reported-issues.entity.d.ts +3 -0
  166. package/platform-management/lib/entities/reported-issues/reported-issues.service.d.ts +10 -0
  167. package/platform-management/lib/entities/reported-issues/reported-issues.types.d.ts +21 -0
  168. package/platform-management/lib/features/app-terms/check-terms.service.d.ts +11 -0
  169. package/platform-management/lib/{entities/app-term → features/app-terms}/components/notify-app/notify-app.component.d.ts +1 -1
  170. package/platform-management/lib/{entities/app-term → features/app-terms}/pages/list/list-terms.component.d.ts +2 -2
  171. package/platform-management/lib/{entities/check-version.d.ts → features/app-version/check-version.service.d.ts} +3 -4
  172. package/platform-management/lib/{entities → features}/app-version/components/list-versions/list-version.component.d.ts +1 -1
  173. package/platform-management/lib/{entities → features}/app-version/components/notify-app/notify-app.component.d.ts +1 -1
  174. package/platform-management/lib/{common → features/common}/index.d.ts +1 -1
  175. package/platform-management/lib/features/index.d.ts +1 -0
  176. package/platform-management/lib/{entities → features}/promotion/components/promotion-slot/promotion-slot.component.d.ts +2 -2
  177. package/platform-management/lib/features/support/capture-screen/capture-screen.types.d.ts +19 -0
  178. package/platform-management/lib/features/support/capture-screen/components/capture-screen-component/capture-screen.component.d.ts +37 -0
  179. package/platform-management/lib/features/support/capture-screen/index.d.ts +2 -0
  180. package/platform-management/lib/features/support/capture-screen/services/capture-screen.service.d.ts +33 -0
  181. package/platform-management/lib/features/support/index.d.ts +2 -0
  182. package/platform-management/lib/features/support/report-issue/components/index.d.ts +1 -0
  183. package/platform-management/lib/features/support/report-issue/components/report-new-issue/report-new-issue.component.d.ts +40 -0
  184. package/platform-management/lib/features/support/report-issue/index.d.ts +2 -0
  185. package/platform-management/lib/features/support/report-issue/report-issue.types.d.ts +19 -0
  186. package/platform-management/lib/features/support/report-issue/services/report-new-issue.viewmodel.d.ts +15 -0
  187. package/platform-management/lib/features/support/report-issue/workflows/index.d.ts +1 -0
  188. package/platform-management/lib/features/support/report-issue/workflows/show-report-issue.workflow.d.ts +10 -0
  189. package/platform-management/lib/platform-management.module.d.ts +4 -3
  190. package/security-management/lib/const.d.ts +6 -0
  191. package/security-management/lib/entities/device-sessions/device-sessions.entity.d.ts +3 -0
  192. package/security-management/lib/entities/device-sessions/device-sessions.module.d.ts +6 -0
  193. package/security-management/lib/entities/device-sessions/device-sessions.service.d.ts +12 -0
  194. package/security-management/lib/entities/device-sessions/device-sessions.types.d.ts +34 -0
  195. package/security-management/lib/entities/device-sessions/index.d.ts +4 -0
  196. package/security-management/lib/entities/index.d.ts +1 -0
  197. package/security-management/lib/menu.keys.d.ts +2 -1
  198. package/security-management/lib/security-management.module.d.ts +6 -4
  199. package/security-management/lib/workflows/terminate-entity.workflow.d.ts +27 -0
  200. package/fesm2022/acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs.map +0 -1
  201. package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs +0 -271
  202. package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs.map +0 -1
  203. package/fesm2022/acorex-modules-common-index-rvP9ISgL.mjs.map +0 -1
  204. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-CI0m4lpX.mjs.map +0 -1
  205. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-D8anTs3Q.mjs.map +0 -1
  206. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-HYqIufS1.mjs.map +0 -1
  207. package/fesm2022/acorex-modules-form-template-management-category.entity-CLFAo0Cn.mjs.map +0 -1
  208. package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-CYAyug_g.mjs.map +0 -1
  209. package/fesm2022/acorex-modules-form-template-management-template.entity-DGU1QNSN.mjs.map +0 -1
  210. package/fesm2022/acorex-modules-organization-management-branch.entity-e5pFx82N.mjs.map +0 -1
  211. package/fesm2022/acorex-modules-organization-management-chart.entity-DnmNyyD2.mjs.map +0 -1
  212. package/fesm2022/acorex-modules-organization-management-company.entity-BRkEcDNt.mjs.map +0 -1
  213. package/fesm2022/acorex-modules-organization-management-department.entity-ChJXNpXn.mjs +0 -256
  214. package/fesm2022/acorex-modules-organization-management-department.entity-ChJXNpXn.mjs.map +0 -1
  215. package/fesm2022/acorex-modules-organization-management-division.entity-qyDyhl-q.mjs.map +0 -1
  216. package/fesm2022/acorex-modules-organization-management-employee.entity-Cp5TejzT.mjs.map +0 -1
  217. package/fesm2022/acorex-modules-organization-management-employment-type.entity-Ul10Mdwm.mjs.map +0 -1
  218. package/fesm2022/acorex-modules-organization-management-position.entity-BpQbwW-x.mjs.map +0 -1
  219. package/fesm2022/acorex-modules-organization-management-role.entity-B9N4qA_E.mjs +0 -238
  220. package/fesm2022/acorex-modules-organization-management-role.entity-B9N4qA_E.mjs.map +0 -1
  221. package/fesm2022/acorex-modules-organization-management-team.entity-7q6Eg74A.mjs +0 -238
  222. package/fesm2022/acorex-modules-organization-management-team.entity-7q6Eg74A.mjs.map +0 -1
  223. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-DNUdH0N9.mjs.map +0 -1
  224. package/fesm2022/acorex-modules-platform-management-list-version.component-D3yLcmjw.mjs.map +0 -1
  225. package/fesm2022/acorex-modules-platform-management-setting.provider-CQCoLwHW.mjs.map +0 -1
  226. /package/notification-management/lib/{components → features/components}/admin-notification-slot/admin-notification-slot.component.d.ts +0 -0
  227. /package/platform-management/lib/{entities/app-term → features/app-terms}/pages/index.d.ts +0 -0
  228. /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/index.d.ts +0 -0
  229. /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/notify-new-term.workflow.d.ts +0 -0
  230. /package/platform-management/lib/{entities → features}/app-version/components/index.d.ts +0 -0
  231. /package/platform-management/lib/{entities → features}/app-version/components/slots/app-version-slot.component.d.ts +0 -0
  232. /package/platform-management/lib/{entities → features}/app-version/workflows/change-log.workflow.d.ts +0 -0
  233. /package/platform-management/lib/{entities → features}/app-version/workflows/index.d.ts +0 -0
  234. /package/platform-management/lib/{entities → features}/app-version/workflows/show-release-notes.workflow.d.ts +0 -0
  235. /package/platform-management/lib/{common → features/common}/common.module.d.ts +0 -0
  236. /package/platform-management/lib/{common → features/common}/entity.provider.d.ts +0 -0
  237. /package/platform-management/lib/{common → features/common}/regional/data-source.provider.d.ts +0 -0
  238. /package/platform-management/lib/{common → features/common}/regional/index.d.ts +0 -0
  239. /package/platform-management/lib/{common → features/common}/regional/language-slot/language-slot.component.d.ts +0 -0
  240. /package/platform-management/lib/{common → features/common}/regional/regional-store.service.d.ts +0 -0
  241. /package/platform-management/lib/{common → features/common}/regional/setting.keys.d.ts +0 -0
  242. /package/platform-management/lib/{common → features/common}/regional/setting.provider.d.ts +0 -0
  243. /package/platform-management/lib/{entities → features}/promotion/components/index.d.ts +0 -0
@@ -4,6 +4,9 @@ export declare class AXMAuthProfileSlotComponent {
4
4
  private router;
5
5
  private sessionService;
6
6
  private themeService;
7
+ private popupService;
8
+ private platform;
9
+ private translateService;
7
10
  protected isDarkMode: import("@angular/core").Signal<boolean>;
8
11
  protected user$: import("rxjs").Observable<import("@acorex/platform/auth").AXPUser | null>;
9
12
  protected tenant$: import("rxjs").Observable<import("@acorex/platform/auth").AXPTenant | null>;
@@ -14,6 +17,7 @@ export declare class AXMAuthProfileSlotComponent {
14
17
  logOut(): Promise<void>;
15
18
  toggleProfileMenu(): void;
16
19
  protected handleSignIn(): void;
20
+ protected openUserSession(): Promise<void>;
17
21
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMAuthProfileSlotComponent, never>;
18
22
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMAuthProfileSlotComponent, "ng-component", never, {}, {}, never, never, true, never>;
19
23
  }
@@ -0,0 +1,71 @@
1
+ import { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';
2
+ import { AXMSecurityManagementDeviceSessionsEntityModel } from '@acorex/modules/security-management';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXMUserSessionsComponent {
5
+ AXPTokenExpirationDurations: {
6
+ oneWeek: string;
7
+ oneMonth: string;
8
+ threeMonths: string;
9
+ sixMonths: string;
10
+ };
11
+ items: import("@angular/core").WritableSignal<AXMSecurityManagementDeviceSessionsEntityModel[]>;
12
+ activeSession: import("@angular/core").WritableSignal<AXMSecurityManagementDeviceSessionsEntityModel | undefined>;
13
+ expireTime: import("@angular/core").WritableSignal<{
14
+ name: string;
15
+ id: string;
16
+ } | null>;
17
+ expirationItems: {
18
+ name: string;
19
+ id: string;
20
+ }[];
21
+ protected dataSource: AXDataSource<any>;
22
+ private userDeviceSessionsService;
23
+ private cdRef;
24
+ private popupService;
25
+ private platform;
26
+ private translateService;
27
+ private sessionService;
28
+ private settingService;
29
+ constructor();
30
+ private loadUserSessions;
31
+ itemsWithIcons: import("@angular/core").Signal<{
32
+ icon: string;
33
+ clientName: string;
34
+ ipAddress: string;
35
+ userAgent: string;
36
+ authorizationId: string;
37
+ status: string;
38
+ userId: string;
39
+ user: {
40
+ id: string;
41
+ name: string;
42
+ };
43
+ applicationId: string;
44
+ application: {
45
+ id: string;
46
+ name: string;
47
+ };
48
+ tenantId: string;
49
+ tenant: {
50
+ id: string;
51
+ name: string;
52
+ };
53
+ isActiveSession: boolean;
54
+ deviceName: string;
55
+ operatingSystem: string;
56
+ browser: string;
57
+ location: string;
58
+ lastLoginDate: Date;
59
+ id: string;
60
+ createdAt?: Date;
61
+ updatedAt?: Date;
62
+ createdBy?: string;
63
+ updatedBy?: string;
64
+ }[]>;
65
+ getDeviceIcon(deviceName: string | undefined): string;
66
+ protected onChangeSessionExpireTime(e: AXValueChangedEvent): void;
67
+ onTerminate(sessionId: string | undefined): Promise<void>;
68
+ onTerminateAll(): Promise<void>;
69
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMUserSessionsComponent, never>;
70
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXMUserSessionsComponent, "ng-component", never, {}, {}, never, never, true, never>;
71
+ }
@@ -0,0 +1,22 @@
1
+ import { AXMSecurityManagementDeviceSessionsEntityModel } from '@acorex/modules/security-management';
2
+ import * as i0 from "@angular/core";
3
+ export declare abstract class AXMUserDeviceSessionsService {
4
+ abstract getSessions(): Promise<AXMSecurityManagementDeviceSessionsEntityModel[]>;
5
+ abstract getCurrentActiveSessions(): Promise<AXMSecurityManagementDeviceSessionsEntityModel>;
6
+ abstract terminateSession(sessionId: string): any;
7
+ abstract terminateAllSession(): any;
8
+ abstract setTokenLifetimeMinutes(value: string): any;
9
+ }
10
+ export declare class AXMUserDeviceSessionsServiceImp extends AXMUserDeviceSessionsService {
11
+ private sessionService;
12
+ private deviceSessionsService;
13
+ private settingService;
14
+ constructor();
15
+ getSessions(): Promise<AXMSecurityManagementDeviceSessionsEntityModel[]>;
16
+ getCurrentActiveSessions(): Promise<AXMSecurityManagementDeviceSessionsEntityModel>;
17
+ terminateSession(sessionId: string): Promise<void>;
18
+ terminateAllSession(): Promise<void>;
19
+ setTokenLifetimeMinutes(value: any): Promise<void>;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMUserDeviceSessionsServiceImp, never>;
21
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXMUserDeviceSessionsServiceImp>;
22
+ }
@@ -4,5 +4,5 @@ export interface AXMCommonDashboardEntityModel extends AXPEntityModel<string> {
4
4
  name: string;
5
5
  title: string;
6
6
  description: string;
7
- widget: AXPDashboardWidgetData[];
7
+ widgets: AXPDashboardWidgetData[];
8
8
  }
@@ -1,6 +1,7 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { ActivatedRoute, Router } from '@angular/router';
3
3
  import { AXDialogService } from '@acorex/components/dialog';
4
+ import { AXPLayoutContextChangeEvent } from '@acorex/platform/layout/builder';
4
5
  import { AXPBasePageComponent } from '@acorex/platform/themes/default';
5
6
  import { AXPopupService } from '@acorex/components/popup';
6
7
  import { AXPActionMenuItem, AXPBreadcrumbItem, AXPExecuteCommand } from '@acorex/platform/core';
@@ -48,6 +49,8 @@ export declare class AXPDashboardHomeComponent extends AXPBasePageComponent impl
48
49
  handleConfigChange: (dashboard: import("./home-dashboard.type").AXPDashboardLayout) => Promise<void>;
49
50
  onGridChange: (event: import("@acorex/components/grid-layout-builder").AXGridLayoutEvent) => Promise<void>;
50
51
  handlePopupConfiguration: (widgetNode: import("@acorex/platform/layout/builder").AXPWidgetNode) => Promise<void>;
52
+ handleValueChanged: (widgetNode: import("@acorex/platform/layout/builder").AXPWidgetNode, data: unknown) => Promise<void>;
53
+ handleOptionsChanged: (widgetNode: import("@acorex/platform/layout/builder").AXPWidgetNode, data: unknown) => Promise<void>;
51
54
  refreshDashboards: () => Promise<void>;
52
55
  } & import("@ngrx/signals").StateSource<{
53
56
  dashboards: import("./home-dashboard.type").AXPDashboardLayout[];
@@ -128,6 +131,7 @@ export declare class AXPDashboardHomeComponent extends AXPBasePageComponent impl
128
131
  getSecondaryMenuItems(): Promise<AXPActionMenuItem[]>;
129
132
  getPageBreadcrumbs(): AXPBreadcrumbItem[] | Promise<AXPBreadcrumbItem[]>;
130
133
  execute(command: AXPExecuteCommand): Promise<void>;
134
+ log(event: AXPLayoutContextChangeEvent): void;
131
135
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPDashboardHomeComponent, never>;
132
136
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPDashboardHomeComponent, "axp-dashboard-home", never, {}, {}, never, never, true, never>;
133
137
  }
@@ -15,6 +15,8 @@ export declare const AXCDashboardStore: import("@angular/core").Type<{
15
15
  handleConfigChange: (dashboard: AXPDashboardLayout) => Promise<void>;
16
16
  onGridChange: (event: AXGridLayoutEvent) => Promise<void>;
17
17
  handlePopupConfiguration: (widgetNode: AXPWidgetNode) => Promise<void>;
18
+ handleValueChanged: (widgetNode: AXPWidgetNode, data: unknown) => Promise<void>;
19
+ handleOptionsChanged: (widgetNode: AXPWidgetNode, data: unknown) => Promise<void>;
18
20
  refreshDashboards: () => Promise<void>;
19
21
  } & import("@ngrx/signals").StateSource<{
20
22
  dashboards: AXPDashboardLayout[];
@@ -4,7 +4,7 @@ export interface AXPDashboardLayout {
4
4
  id: string;
5
5
  title: string;
6
6
  description?: string;
7
- widget: AXPDashboardWidgetData[];
7
+ widgets: AXPDashboardWidgetData[];
8
8
  }
9
9
  export type AXPDashboardWidgetData = {
10
10
  config: AXGridLayoutNode;
@@ -1,11 +1,16 @@
1
1
  import { AXButtonItemComponent } from '@acorex/components/button';
2
2
  import { AXItemClickEvent } from '@acorex/components/common';
3
+ import { AXPWidgetRendererDirective } from '@acorex/platform/layout/builder';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare class AXCDashboardWidgetWrapperComponent {
6
+ #private;
5
7
  onDelete: import("@angular/core").OutputEmitterRef<void>;
6
8
  onConfiguration: import("@angular/core").OutputEmitterRef<void>;
9
+ onValueChanged: import("@angular/core").OutputEmitterRef<unknown>;
10
+ onOptionsChanged: import("@angular/core").OutputEmitterRef<unknown>;
11
+ widget: import("@angular/core").Signal<AXPWidgetRendererDirective | undefined>;
7
12
  hasOptions: import("@angular/core").InputSignal<boolean>;
8
13
  handleOnItemClick(event: AXItemClickEvent<AXButtonItemComponent>): void;
9
14
  static ɵfac: i0.ɵɵFactoryDeclaration<AXCDashboardWidgetWrapperComponent, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<AXCDashboardWidgetWrapperComponent, "axc-dashboard-widget-wrapper", never, { "hasOptions": { "alias": "hasOptions"; "required": false; "isSignal": true; }; }, { "onDelete": "onDelete"; "onConfiguration": "onConfiguration"; }, never, ["*"], true, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXCDashboardWidgetWrapperComponent, "axc-dashboard-widget-wrapper", never, { "hasOptions": { "alias": "hasOptions"; "required": false; "isSignal": true; }; }, { "onDelete": "onDelete"; "onConfiguration": "onConfiguration"; "onValueChanged": "onValueChanged"; "onOptionsChanged": "onOptionsChanged"; }, ["widget"], ["*"], true, never>;
11
16
  }
@@ -2,16 +2,19 @@ import { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';
2
2
  import { AXFormComponent } from '@acorex/components/form';
3
3
  import { AXBasePageComponent } from '@acorex/components/page';
4
4
  import { AXMDocumentManagementDocumentTypeEntityModel } from '../../../../entities/document-type/document-type.types';
5
+ import { AXMDocumentExplorerNode, AXMNodeType } from '../../../drive';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class AXMCreateFolderDialog extends AXBasePageComponent {
7
8
  private driveService;
8
9
  private documentTypeService;
10
+ defaultValue?: AXMDocumentExplorerNode;
9
11
  parentId?: string;
10
12
  protected name: import("@angular/core").ModelSignal<string>;
11
13
  protected color: import("@angular/core").ModelSignal<string>;
12
14
  protected description: import("@angular/core").ModelSignal<string>;
13
- protected selectedDocumentTypes: never[];
15
+ protected selectedDocumentTypes: import("@angular/core").WritableSignal<AXMNodeType[]>;
14
16
  protected dataSource: AXDataSource<AXMDocumentManagementDocumentTypeEntityModel>;
17
+ protected ngOnInit(): void;
15
18
  protected handleValueChange(event: AXValueChangedEvent): void;
16
19
  handleSubmitButton(form: AXFormComponent): Promise<void>;
17
20
  onCancel(): void;
@@ -199,11 +199,13 @@ export declare class AXMDocumentExplorerComponent {
199
199
  protected handleContextMenuOnOpening(e: AXContextMenuOpeningEvent): Promise<void>;
200
200
  protected handleContextMenuRootOnOpening(e: AXContextMenuOpeningEvent): Promise<void>;
201
201
  protected handleContextMenuItemClick(e: AXContextMenuItemsClickEvent): Promise<void>;
202
+ protected showFolderProperty(node: AXMDocumentExplorerNode): Promise<void>;
202
203
  protected share(node: AXMDocumentExplorerNode): Promise<void>;
203
204
  protected shareWithEmail(node: AXMDocumentExplorerNode): Promise<void>;
204
205
  protected link(node: AXMDocumentExplorerNode): Promise<void>;
205
206
  protected lock(node: AXMDocumentExplorerNode): Promise<void>;
206
207
  protected unlock(node: AXMDocumentExplorerNode): Promise<void>;
208
+ protected openGalleryWithFolderId(): Promise<void>;
207
209
  protected openGallery(node: AXMDocumentExplorerNode): Promise<void>;
208
210
  protected openFile(node: AXMDocumentExplorerNode): Promise<void>;
209
211
  protected handleDownloadFile(node: AXMDocumentExplorerNode): void;
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMFileTypeExtensionWidgetColumnComponent extends AXPWidgetComponent<any> {
3
+ export declare class AXMFileTypeExtensionWidgetColumnComponent extends AXPValueWidgetComponent<any> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMFileTypeExtensionWidgetColumnComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMFileTypeExtensionWidgetColumnComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
6
6
  }
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMFileTypeExtensionWidgetDesignerComponent extends AXPWidgetComponent<any> {
3
+ export declare class AXMFileTypeExtensionWidgetDesignerComponent extends AXPValueWidgetComponent<any> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMFileTypeExtensionWidgetDesignerComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMFileTypeExtensionWidgetDesignerComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
6
6
  }
@@ -1,8 +1,8 @@
1
1
  import { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';
2
2
  import { AXPFileType, AXPFileTypeProviderService } from '@acorex/platform/common';
3
- import { AXPLayoutContextChangeEvent, AXPWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';
3
+ import { AXPLayoutContextChangeEvent, AXPValueWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';
4
4
  import * as i0 from "@angular/core";
5
- export declare class AXMFileTypeExtensionWidgetEditComponent extends AXPWidgetComponent<any> {
5
+ export declare class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent<any> {
6
6
  protected fileTypeService: AXPFileTypeProviderService;
7
7
  protected dataSource: AXDataSource<unknown>;
8
8
  selectedItems: import("@angular/core").WritableSignal<AXPFileType[]>;
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMFileTypeExtensionWidgetViewComponent extends AXPWidgetComponent<any> {
3
+ export declare class AXMFileTypeExtensionWidgetViewComponent extends AXPValueWidgetComponent<any> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMFileTypeExtensionWidgetViewComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMFileTypeExtensionWidgetViewComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
6
6
  }
@@ -74,6 +74,7 @@ export interface AXMDocumentManagerServiceInterface {
74
74
  showLinkDialog(node: AXMDocumentExplorerNode): Promise<void>;
75
75
  showLockDialog(node: AXMDocumentExplorerNode): Promise<void>;
76
76
  showUnlockDialog(node: AXMDocumentExplorerNode): Promise<void>;
77
+ showFolderEditDialog(node: AXMDocumentExplorerNode): Promise<boolean>;
77
78
  updateFileName(node: AXMDocumentExplorerNode, name: string): Promise<AXMDocumentExplorerNode>;
78
79
  }
79
80
  /**
@@ -121,6 +122,7 @@ export declare class AXMDocumentManagerService implements AXMDocumentManagerServ
121
122
  showLinkDialog(node: AXMDocumentExplorerNode): Promise<void>;
122
123
  showLockDialog(node: AXMDocumentExplorerNode): Promise<void>;
123
124
  showUnlockDialog(node: AXMDocumentExplorerNode): Promise<void>;
125
+ showFolderEditDialog(node: AXMDocumentExplorerNode): Promise<boolean>;
124
126
  updateFileName(node: AXMDocumentExplorerNode, name: string): Promise<AXMDocumentExplorerNode>;
125
127
  /**
126
128
  * Gets the root folder based on the specified scope
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMDocumentAttachmentWidgetColumnComponent extends AXPWidgetComponent<void> {
3
+ export declare class AXMDocumentAttachmentWidgetColumnComponent extends AXPValueWidgetComponent<void> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMDocumentAttachmentWidgetColumnComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMDocumentAttachmentWidgetColumnComponent, "ng-component", never, {}, {}, never, never, true, never>;
6
6
  }
@@ -2,7 +2,7 @@ import { AXFileService } from '@acorex/core/file';
2
2
  import { AXPSessionService } from '@acorex/platform/auth';
3
3
  import { AXPFileStorageService } from '@acorex/platform/common';
4
4
  import { AXPPlatformScope } from '@acorex/platform/core';
5
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
5
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
6
6
  import { AXMDocumentExplorerComponent } from '../../document-explorer';
7
7
  import { AXMDocumentExplorerNode, AXMDocumentManagerService } from '../../drive';
8
8
  import * as i0 from "@angular/core";
@@ -12,7 +12,7 @@ export interface AXMDocumentAttachment {
12
12
  size: number;
13
13
  extension: string;
14
14
  }
15
- export declare class AXMDocumentAttachmentWidgetEditComponent extends AXPWidgetComponent<void> {
15
+ export declare class AXMDocumentAttachmentWidgetEditComponent extends AXPValueWidgetComponent<void> {
16
16
  protected readonly vm: {
17
17
  viewMode: import("@angular/core").Signal<import("../../drive").AXPDocumentExplorerViewMode>;
18
18
  isLoading: import("@angular/core").Signal<boolean>;
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMDocumentAttachmentWidgetPrintComponent extends AXPWidgetComponent<void> {
3
+ export declare class AXMDocumentAttachmentWidgetPrintComponent extends AXPValueWidgetComponent<void> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMDocumentAttachmentWidgetPrintComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMDocumentAttachmentWidgetPrintComponent, "ng-component", never, {}, {}, never, never, true, never>;
6
6
  }
@@ -1,6 +1,6 @@
1
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXMDocumentAttachmentWidgetViewComponent extends AXPWidgetComponent<void> {
3
+ export declare class AXMDocumentAttachmentWidgetViewComponent extends AXPValueWidgetComponent<void> {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMDocumentAttachmentWidgetViewComponent, never>;
5
5
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMDocumentAttachmentWidgetViewComponent, "axp-document-attachment-widget", never, {}, {}, never, never, true, never>;
6
6
  }
@@ -1,19 +1,19 @@
1
- import * as i7$1 from '@acorex/components/badge';
1
+ import * as i7 from '@acorex/components/badge';
2
2
  import { AXBadgeModule } from '@acorex/components/badge';
3
- import * as i7 from '@acorex/components/button';
3
+ import * as i6 from '@acorex/components/button';
4
4
  import { AXButtonModule } from '@acorex/components/button';
5
- import * as i6 from '@acorex/components/collapse';
5
+ import * as i6$1 from '@acorex/components/collapse';
6
6
  import { AXCollapseModule } from '@acorex/components/collapse';
7
- import * as i3 from '@acorex/components/decorators';
7
+ import * as i2$1 from '@acorex/components/decorators';
8
8
  import { AXDecoratorModule } from '@acorex/components/decorators';
9
9
  import * as i2 from '@acorex/components/drawer';
10
10
  import { AXDrawerModule } from '@acorex/components/drawer';
11
- import * as i8 from '@acorex/components/menu';
11
+ import * as i8$1 from '@acorex/components/menu';
12
12
  import { AXMenuModule } from '@acorex/components/menu';
13
13
  import { AXPopoverModule } from '@acorex/components/popover';
14
14
  import { AXSelectionListModule } from '@acorex/components/selection-list';
15
15
  import { AXSideMenuModule } from '@acorex/components/side-menu';
16
- import * as i10 from '@acorex/core/translation';
16
+ import * as i8 from '@acorex/core/translation';
17
17
  import { AXTranslationModule } from '@acorex/core/translation';
18
18
  import { AXPEntityDeletedEvent, AXPEntityCreateEvent } from '@acorex/platform/layout/entity';
19
19
  import { AXPWorkflowService, ofType } from '@acorex/platform/workflow';
@@ -21,7 +21,7 @@ import * as i1 from '@angular/common';
21
21
  import { CommonModule } from '@angular/common';
22
22
  import * as i0 from '@angular/core';
23
23
  import { inject, signal, Injectable, ChangeDetectorRef, viewChild, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
24
- import * as i2$1 from '@angular/router';
24
+ import * as i2$2 from '@angular/router';
25
25
  import { RouterModule } from '@angular/router';
26
26
  import { set } from 'lodash-es';
27
27
  import { Subject, takeUntil } from 'rxjs';
@@ -291,7 +291,7 @@ class AXMModuleDesignerComponent {
291
291
  set(target, 'data', data);
292
292
  }
293
293
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMModuleDesignerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
294
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMModuleDesignerComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i2.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i2.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i7.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXSideMenuModule }, { kind: "ngmodule", type: AXCollapseModule }, { kind: "component", type: i6.AXCollapseComponent, selector: "ax-collapse", inputs: ["disabled", "look", "isCollapsed", "showHeader", "caption", "icon", "isLoading", "headerTemplate"], outputs: ["onClick", "isCollapsedChange"] }, { kind: "component", type: i6.AXCollapseGroupComponent, selector: "ax-collapse-group", inputs: ["look", "accordion", "activeIndex"], outputs: ["accordionChange", "activeIndexChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i7$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i8.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
294
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMModuleDesignerComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i2.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i2.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i6.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXSideMenuModule }, { kind: "ngmodule", type: AXCollapseModule }, { kind: "component", type: i6$1.AXCollapseComponent, selector: "ax-collapse", inputs: ["disabled", "look", "isCollapsed", "showHeader", "caption", "icon", "isLoading", "headerTemplate"], outputs: ["onClick", "isCollapsedChange"] }, { kind: "component", type: i6$1.AXCollapseGroupComponent, selector: "ax-collapse-group", inputs: ["look", "accordion", "activeIndex"], outputs: ["accordionChange", "activeIndexChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i7.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i8$1.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
295
295
  }
296
296
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMModuleDesignerComponent, decorators: [{
297
297
  type: Component,
@@ -312,4 +312,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
312
312
  }], ctorParameters: () => [] });
313
313
 
314
314
  export { AXMModuleDesignerComponent };
315
- //# sourceMappingURL=acorex-modules-application-management-module-designer.component-Dd_lmV6C.mjs.map
315
+ //# sourceMappingURL=acorex-modules-application-management-module-designer.component-ClxaJcjD.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-application-management-module-designer.component-Dd_lmV6C.mjs","sources":["../../../../libs/modules/application-management/src/lib/services/context-menu.service.ts","../../../../libs/modules/application-management/src/lib/module-designer/module-designer.component.ts","../../../../libs/modules/application-management/src/lib/module-designer/module-designer.component.html"],"sourcesContent":["import { AXContextMenuItemsClickEvent, AXContextMenuOpeningEvent, AXMenuItem } from '@acorex/components/menu';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { AXMModuleItem } from '../module-designer/module-designer.type';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXMModuleDesignerContextMenuService {\n private workflow = inject(AXPWorkflowService);\n protected copiedRecord = signal<{ type: AXMModuleItem; record: any } | null>(null);\n protected elementData = signal<{ entityType: AXMModuleItem; record: any; moduleId: string } | null>(null);\n\n private menuItems: AXMenuItem[] = [\n {\n name: 'create',\n text: 'Create',\n icon: 'fas fa-plus',\n color: 'primary',\n },\n {\n name: 'delete',\n text: 'Delete',\n icon: 'fas fa-trash',\n color: 'danger',\n },\n {\n name: 'details',\n text: 'Details',\n icon: 'fas fa-eye',\n color: 'default',\n },\n {\n name: 'copy',\n text: 'Copy',\n icon: 'fas fa-copy',\n color: 'default',\n },\n {\n name: 'paste',\n text: 'Paste',\n icon: 'fas fa-paste',\n color: 'default',\n disabled: false,\n },\n ];\n\n open(e: AXContextMenuOpeningEvent) {\n const target = e.targetElement;\n const elementType = target?.getAttribute('data-elementType');\n\n const { data } = target as any;\n\n if (elementType == 'module' || elementType == 'subModule') {\n const moduleId = target?.getAttribute('data-moduleId');\n const entityType = target?.getAttribute('data-entityType') as AXMModuleItem;\n if (elementType == 'module') {\n this.elementData.set({\n entityType,\n moduleId: moduleId as string,\n record: {\n id: moduleId,\n },\n });\n e.items = this.getMenuItems(['details', 'delete']);\n } else {\n this.elementData.set({\n entityType,\n moduleId: moduleId as string,\n record: undefined,\n });\n const items = this.getMenuItems(['create', 'paste']);\n const customMenuItems = items.map((i) =>\n i.name == 'paste' ? { ...i, disabled: entityType == this.copiedRecord()?.type ? false : true } : i\n );\n e.items = customMenuItems;\n }\n } else if (elementType == 'subModuleItem') {\n this.elementData.set(data);\n e.items = this.getMenuItems(['delete', 'copy', 'details']);\n } else {\n e.items = [];\n e.canceled = true;\n }\n }\n\n itemClick(e: AXContextMenuItemsClickEvent) {\n if (this.elementData()) {\n switch (e.item.name) {\n case 'create':\n this.createEntity(this.elementData()?.entityType as AXMModuleItem, this.elementData()?.moduleId);\n break;\n\n case 'details':\n this.showDetails(this.elementData()?.entityType as AXMModuleItem | 'module', this.elementData()?.record.id);\n break;\n\n case 'delete':\n this.deleteEntity(\n this.elementData()?.entityType as AXMModuleItem | 'module',\n this.elementData()?.record.id,\n this.elementData()?.moduleId\n );\n break;\n\n case 'copy':\n this.copyRecord(this.elementData()?.entityType as AXMModuleItem, this.elementData()?.record);\n break;\n\n case 'paste':\n this.pasteRecord(this.elementData()?.moduleId as string);\n break;\n\n default:\n break;\n }\n }\n }\n\n async createEntity(entityType: 'module' | AXMModuleItem, moduleId?: string) {\n await this.workflow.execute('create-module-entity', {\n entity: `application-management.${entityType}`,\n data: {\n moduleId,\n },\n meta: {\n type: entityType,\n moduleId,\n },\n });\n }\n\n async showDetails(entityType: 'module' | AXMModuleItem, id: string) {\n await this.workflow.execute('show-module-entity-details', {\n entity: `application-management.${entityType}`,\n data: {\n id,\n },\n });\n }\n\n private copyRecord(entityType: AXMModuleItem, record: any) {\n const newRecord = { ...record, moduleId: undefined, id: undefined };\n this.copiedRecord.set({ type: entityType, record: newRecord });\n }\n\n private async pasteRecord(moduleId: string) {\n if (this.copiedRecord()) {\n await this.workflow.execute('create-module-entity', {\n entity: `application-management.${this.copiedRecord()?.type}`,\n data: {\n ...this.copiedRecord()?.record,\n moduleId,\n },\n meta: {\n type: this.copiedRecord()?.type,\n moduleId,\n },\n });\n }\n }\n\n private async deleteEntity(entityType: 'module' | AXMModuleItem, id: string[] | string, moduleId?: string) {\n await this.workflow.execute('delete-entity', {\n entity: `application-management.${entityType}`,\n data: {\n id,\n },\n meta: {\n moduleId,\n type: entityType,\n },\n });\n }\n\n private getMenuItems(includeItems: string[]) {\n return this.menuItems.filter((i) => includeItems.includes(i.name as string));\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCollapseClickEvent, AXCollapseModule } from '@acorex/components/collapse';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport {\n AXContextMenuComponent,\n AXContextMenuItemsClickEvent,\n AXContextMenuOpeningEvent,\n AXMenuModule,\n} from '@acorex/components/menu';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layout/entity';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n OnInit,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { set } from 'lodash-es';\nimport { Subject, takeUntil } from 'rxjs';\nimport { AXMModuleDesignerContextMenuService } from '../services/context-menu.service';\nimport { AXPModuleDesignerService } from './module-designer.service';\nimport { AXMModuleItem } from './module-designer.type';\n\n@Component({\n templateUrl: './module-designer.component.html',\n styleUrls: ['./module-designer.component.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n CommonModule,\n AXDrawerModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXSideMenuModule,\n AXCollapseModule,\n AXPopoverModule,\n AXSelectionListModule,\n AXBadgeModule,\n AXMenuModule,\n RouterModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXMModuleDesignerComponent implements OnInit {\n protected cdr: ChangeDetectorRef = inject(ChangeDetectorRef);\n protected contextMenu = viewChild<AXContextMenuComponent>('contextMenu');\n\n protected dataProvider = inject(AXPModuleDesignerService);\n private workflow = inject(AXPWorkflowService);\n protected contextMenuService = inject(AXMModuleDesignerContextMenuService);\n\n protected modules = signal<any[]>([]);\n\n protected moduleDataCache = new Map<string, any[]>();\n\n private readonly destroyed = new Subject<void>();\n\n constructor() {\n this.subscribeActionEvents();\n }\n\n ngOnInit() {\n this.loadModules();\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n const { meta } = event.payload;\n if (meta.type === 'module') {\n this.loadModules();\n } else {\n this.loadModuleData(meta.moduleId, meta.type, true);\n }\n this.cdr.markForCheck();\n });\n }\n\n protected async loadModules() {\n try {\n const modules = await this.dataProvider.getModules();\n this.modules.set(modules.items);\n this.refreshContextMenu();\n } catch (error) {\n console.error('Error loading modules:', error);\n }\n }\n\n protected async handleCollapseItemClick(moduleId: string, e: AXCollapseClickEvent, dataType: AXMModuleItem) {\n if (e.component.isCollapsed) {\n e.handled = true;\n e.component.isLoading = true;\n\n await this.loadModuleData(moduleId, dataType);\n\n e.component.toggle();\n e.component.isLoading = false;\n e.component['cdr'].markForCheck();\n this.refreshContextMenu();\n }\n }\n\n protected refreshContextMenu() {\n setTimeout(() => {\n this.contextMenu()?.refresh();\n }, 0);\n }\n\n protected async loadModuleData(moduleId: string, dataType: AXMModuleItem, hardReload = false) {\n const cacheKey = `${moduleId}-${dataType}`;\n\n let dataItems = this.moduleDataCache.get(cacheKey);\n // if (!dataItems || hardReload) {\n try {\n const methodMap = {\n entity: this.dataProvider.getEntities,\n permission: this.dataProvider.getPermissions,\n feature: this.dataProvider.getFeatures,\n };\n const data = await methodMap[dataType].call(this.dataProvider, moduleId);\n\n dataItems = data.items as any[];\n this.moduleDataCache.set(cacheKey, dataItems);\n } catch (error) {\n console.error(`Error loading ${dataType}:`, error);\n }\n // }\n }\n\n protected getEntities(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-entity`) || [];\n }\n\n protected getPermissions(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-permission`) || [];\n }\n\n protected getFeatures(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-feature`) || [];\n }\n\n protected openingContextMenu(e: AXContextMenuOpeningEvent) {\n this.contextMenuService.open(e);\n }\n\n protected handleActionClick(e: AXContextMenuItemsClickEvent) {\n this.contextMenuService.itemClick(e);\n }\n\n protected createModule() {\n this.contextMenuService.createEntity('module');\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n protected assignData(target: HTMLElement, data: any): void {\n set(target, 'data', data);\n }\n}\n","<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n"],"names":["i3","i4","i7","i9"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-modules-application-management-module-designer.component-ClxaJcjD.mjs","sources":["../../../../libs/modules/application-management/src/lib/services/context-menu.service.ts","../../../../libs/modules/application-management/src/lib/module-designer/module-designer.component.ts","../../../../libs/modules/application-management/src/lib/module-designer/module-designer.component.html"],"sourcesContent":["import { AXContextMenuItemsClickEvent, AXContextMenuOpeningEvent, AXMenuItem } from '@acorex/components/menu';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { AXMModuleItem } from '../module-designer/module-designer.type';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXMModuleDesignerContextMenuService {\n private workflow = inject(AXPWorkflowService);\n protected copiedRecord = signal<{ type: AXMModuleItem; record: any } | null>(null);\n protected elementData = signal<{ entityType: AXMModuleItem; record: any; moduleId: string } | null>(null);\n\n private menuItems: AXMenuItem[] = [\n {\n name: 'create',\n text: 'Create',\n icon: 'fas fa-plus',\n color: 'primary',\n },\n {\n name: 'delete',\n text: 'Delete',\n icon: 'fas fa-trash',\n color: 'danger',\n },\n {\n name: 'details',\n text: 'Details',\n icon: 'fas fa-eye',\n color: 'default',\n },\n {\n name: 'copy',\n text: 'Copy',\n icon: 'fas fa-copy',\n color: 'default',\n },\n {\n name: 'paste',\n text: 'Paste',\n icon: 'fas fa-paste',\n color: 'default',\n disabled: false,\n },\n ];\n\n open(e: AXContextMenuOpeningEvent) {\n const target = e.targetElement;\n const elementType = target?.getAttribute('data-elementType');\n\n const { data } = target as any;\n\n if (elementType == 'module' || elementType == 'subModule') {\n const moduleId = target?.getAttribute('data-moduleId');\n const entityType = target?.getAttribute('data-entityType') as AXMModuleItem;\n if (elementType == 'module') {\n this.elementData.set({\n entityType,\n moduleId: moduleId as string,\n record: {\n id: moduleId,\n },\n });\n e.items = this.getMenuItems(['details', 'delete']);\n } else {\n this.elementData.set({\n entityType,\n moduleId: moduleId as string,\n record: undefined,\n });\n const items = this.getMenuItems(['create', 'paste']);\n const customMenuItems = items.map((i) =>\n i.name == 'paste' ? { ...i, disabled: entityType == this.copiedRecord()?.type ? false : true } : i\n );\n e.items = customMenuItems;\n }\n } else if (elementType == 'subModuleItem') {\n this.elementData.set(data);\n e.items = this.getMenuItems(['delete', 'copy', 'details']);\n } else {\n e.items = [];\n e.canceled = true;\n }\n }\n\n itemClick(e: AXContextMenuItemsClickEvent) {\n if (this.elementData()) {\n switch (e.item.name) {\n case 'create':\n this.createEntity(this.elementData()?.entityType as AXMModuleItem, this.elementData()?.moduleId);\n break;\n\n case 'details':\n this.showDetails(this.elementData()?.entityType as AXMModuleItem | 'module', this.elementData()?.record.id);\n break;\n\n case 'delete':\n this.deleteEntity(\n this.elementData()?.entityType as AXMModuleItem | 'module',\n this.elementData()?.record.id,\n this.elementData()?.moduleId\n );\n break;\n\n case 'copy':\n this.copyRecord(this.elementData()?.entityType as AXMModuleItem, this.elementData()?.record);\n break;\n\n case 'paste':\n this.pasteRecord(this.elementData()?.moduleId as string);\n break;\n\n default:\n break;\n }\n }\n }\n\n async createEntity(entityType: 'module' | AXMModuleItem, moduleId?: string) {\n await this.workflow.execute('create-module-entity', {\n entity: `application-management.${entityType}`,\n data: {\n moduleId,\n },\n meta: {\n type: entityType,\n moduleId,\n },\n });\n }\n\n async showDetails(entityType: 'module' | AXMModuleItem, id: string) {\n await this.workflow.execute('show-module-entity-details', {\n entity: `application-management.${entityType}`,\n data: {\n id,\n },\n });\n }\n\n private copyRecord(entityType: AXMModuleItem, record: any) {\n const newRecord = { ...record, moduleId: undefined, id: undefined };\n this.copiedRecord.set({ type: entityType, record: newRecord });\n }\n\n private async pasteRecord(moduleId: string) {\n if (this.copiedRecord()) {\n await this.workflow.execute('create-module-entity', {\n entity: `application-management.${this.copiedRecord()?.type}`,\n data: {\n ...this.copiedRecord()?.record,\n moduleId,\n },\n meta: {\n type: this.copiedRecord()?.type,\n moduleId,\n },\n });\n }\n }\n\n private async deleteEntity(entityType: 'module' | AXMModuleItem, id: string[] | string, moduleId?: string) {\n await this.workflow.execute('delete-entity', {\n entity: `application-management.${entityType}`,\n data: {\n id,\n },\n meta: {\n moduleId,\n type: entityType,\n },\n });\n }\n\n private getMenuItems(includeItems: string[]) {\n return this.menuItems.filter((i) => includeItems.includes(i.name as string));\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCollapseClickEvent, AXCollapseModule } from '@acorex/components/collapse';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport {\n AXContextMenuComponent,\n AXContextMenuItemsClickEvent,\n AXContextMenuOpeningEvent,\n AXMenuModule,\n} from '@acorex/components/menu';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layout/entity';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n OnInit,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { set } from 'lodash-es';\nimport { Subject, takeUntil } from 'rxjs';\nimport { AXMModuleDesignerContextMenuService } from '../services/context-menu.service';\nimport { AXPModuleDesignerService } from './module-designer.service';\nimport { AXMModuleItem } from './module-designer.type';\n\n@Component({\n templateUrl: './module-designer.component.html',\n styleUrls: ['./module-designer.component.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n CommonModule,\n AXDrawerModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXSideMenuModule,\n AXCollapseModule,\n AXPopoverModule,\n AXSelectionListModule,\n AXBadgeModule,\n AXMenuModule,\n RouterModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXMModuleDesignerComponent implements OnInit {\n protected cdr: ChangeDetectorRef = inject(ChangeDetectorRef);\n protected contextMenu = viewChild<AXContextMenuComponent>('contextMenu');\n\n protected dataProvider = inject(AXPModuleDesignerService);\n private workflow = inject(AXPWorkflowService);\n protected contextMenuService = inject(AXMModuleDesignerContextMenuService);\n\n protected modules = signal<any[]>([]);\n\n protected moduleDataCache = new Map<string, any[]>();\n\n private readonly destroyed = new Subject<void>();\n\n constructor() {\n this.subscribeActionEvents();\n }\n\n ngOnInit() {\n this.loadModules();\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n const { meta } = event.payload;\n if (meta.type === 'module') {\n this.loadModules();\n } else {\n this.loadModuleData(meta.moduleId, meta.type, true);\n }\n this.cdr.markForCheck();\n });\n }\n\n protected async loadModules() {\n try {\n const modules = await this.dataProvider.getModules();\n this.modules.set(modules.items);\n this.refreshContextMenu();\n } catch (error) {\n console.error('Error loading modules:', error);\n }\n }\n\n protected async handleCollapseItemClick(moduleId: string, e: AXCollapseClickEvent, dataType: AXMModuleItem) {\n if (e.component.isCollapsed) {\n e.handled = true;\n e.component.isLoading = true;\n\n await this.loadModuleData(moduleId, dataType);\n\n e.component.toggle();\n e.component.isLoading = false;\n e.component['cdr'].markForCheck();\n this.refreshContextMenu();\n }\n }\n\n protected refreshContextMenu() {\n setTimeout(() => {\n this.contextMenu()?.refresh();\n }, 0);\n }\n\n protected async loadModuleData(moduleId: string, dataType: AXMModuleItem, hardReload = false) {\n const cacheKey = `${moduleId}-${dataType}`;\n\n let dataItems = this.moduleDataCache.get(cacheKey);\n // if (!dataItems || hardReload) {\n try {\n const methodMap = {\n entity: this.dataProvider.getEntities,\n permission: this.dataProvider.getPermissions,\n feature: this.dataProvider.getFeatures,\n };\n const data = await methodMap[dataType].call(this.dataProvider, moduleId);\n\n dataItems = data.items as any[];\n this.moduleDataCache.set(cacheKey, dataItems);\n } catch (error) {\n console.error(`Error loading ${dataType}:`, error);\n }\n // }\n }\n\n protected getEntities(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-entity`) || [];\n }\n\n protected getPermissions(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-permission`) || [];\n }\n\n protected getFeatures(moduleId: string) {\n return this.moduleDataCache.get(`${moduleId}-feature`) || [];\n }\n\n protected openingContextMenu(e: AXContextMenuOpeningEvent) {\n this.contextMenuService.open(e);\n }\n\n protected handleActionClick(e: AXContextMenuItemsClickEvent) {\n this.contextMenuService.itemClick(e);\n }\n\n protected createModule() {\n this.contextMenuService.createEntity('module');\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n protected assignData(target: HTMLElement, data: any): void {\n set(target, 'data', data);\n }\n}\n","<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n"],"names":["i3","i4","i6","i8","i9"],"mappings":"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"}