@acorex/modules 19.2.20 → 19.3.0-next.1

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 (218) hide show
  1. package/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.d.ts +2 -2
  2. package/auth/lib/setting.provider.d.ts +4 -0
  3. package/common/index.d.ts +1 -0
  4. package/common/lib/entities/dashboard/dashboard.types.d.ts +1 -1
  5. package/common/lib/features/{dashboard-home/dashboard-home.d.ts → home-dashboard/dashboard-home/home-dashboard.d.ts} +72 -52
  6. package/common/lib/features/{dashboard-home/dashboard-home.store.d.ts → home-dashboard/dashboard-home/home-dashboard.store.d.ts} +9 -4
  7. package/common/lib/features/home-dashboard/dashboard-home/index.d.ts +3 -0
  8. package/common/lib/features/{dashboard-popups → home-dashboard/dashboard-popups}/add-dashboard-popup.d.ts +7 -5
  9. package/common/lib/features/home-dashboard/dashboard-popups/configuration-popup.d.ts +14 -0
  10. package/common/lib/features/{dashboard-popups → home-dashboard/dashboard-popups}/dashboard-popup.service.d.ts +5 -4
  11. package/common/lib/features/home-dashboard/setrting.keys.d.ts +3 -0
  12. package/common/lib/features/{widget-wrapper → home-dashboard/widget-wrapper}/dashboard-widget-wrapper.d.ts +2 -1
  13. package/common/lib/menu.provider.d.ts +1 -1
  14. package/conversation/lib/entities/chat/pages/chat/chat.component.d.ts +1 -1
  15. package/conversation/lib/entities/comments/comments.service.d.ts +4 -4
  16. package/conversation/lib/entities/comments/comments.type.d.ts +1 -1
  17. package/document-management/lib/badge.provider.d.ts +11 -0
  18. package/document-management/lib/entities/document/document.service.d.ts +1 -1
  19. package/document-management/lib/entities/document/document.types.d.ts +2 -0
  20. package/document-management/lib/entities/document-type/document-type.service.d.ts +3 -3
  21. package/document-management/lib/entities/folder/folder.service.d.ts +2 -7
  22. package/document-management/lib/entities/folder/folder.types.d.ts +2 -1
  23. package/document-management/lib/features/document-explorer/components/create-folder-dialog/create-folder-dialog.component.d.ts +9 -0
  24. package/document-management/lib/features/document-explorer/document-explorer.component.d.ts +20 -8
  25. package/document-management/lib/features/document-explorer/document-explorer.viewmodel.d.ts +10 -6
  26. package/document-management/lib/features/document-explorer/views/detail-panel/detail-panel.component.d.ts +40 -36
  27. package/document-management/lib/features/document-explorer/views/details/details-view.component.d.ts +40 -36
  28. package/document-management/lib/features/document-explorer/views/large-icons/large-icons-view.component.d.ts +40 -36
  29. package/document-management/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.d.ts +40 -36
  30. package/document-management/lib/features/document-explorer/views/list/list-view.component.d.ts +40 -36
  31. package/document-management/lib/features/document-explorer/views/small-icons/small-icons-view.component.d.ts +40 -36
  32. package/document-management/lib/features/document-explorer/views/small-tiles/small-tiles-view.component.d.ts +40 -36
  33. package/document-management/lib/features/drive/drive.component.d.ts +15 -9
  34. package/document-management/lib/features/drive/index.d.ts +3 -0
  35. package/document-management/lib/features/drive-choose/drive-choose.component.d.ts +16 -8
  36. package/document-management/lib/features/shared/components/document-type-choose-file/document-type-choose-file.component.d.ts +16 -0
  37. package/document-management/lib/features/shared/components/file-viewer-popup/file-viewer-popup.component.d.ts +5 -1
  38. package/document-management/lib/features/shared/components/folder-path-breadcrumbs/folder-path-breadcrumbs.component.d.ts +10 -6
  39. package/document-management/lib/features/shared/components/index.d.ts +1 -0
  40. package/document-management/lib/features/shared/components/link-dialog/link-dialog.component.d.ts +24 -0
  41. package/document-management/lib/features/shared/components/lock-dialog/lock-dialog.component.d.ts +16 -0
  42. package/document-management/lib/features/shared/components/share-dialog/share-dialog.component.d.ts +22 -0
  43. package/document-management/lib/features/shared/components/share-email-dialog/share-email-dialog.component.d.ts +17 -0
  44. package/document-management/lib/features/shared/components/unlock-dialog/unlock-dialog.component.d.ts +10 -0
  45. package/document-management/lib/features/shared/document-manager.service.d.ts +45 -22
  46. package/document-management/lib/features/shared/document-manager.types.d.ts +5 -7
  47. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-column.component.d.ts +1 -1
  48. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-edit.component.d.ts +66 -44
  49. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-print.component.d.ts +1 -1
  50. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-view.component.d.ts +1 -1
  51. package/document-management/lib/features/widgets/document-attachment/index.d.ts +0 -1
  52. package/fesm2022/acorex-modules-application-management.mjs +0 -1
  53. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  54. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DrcL7GCj.mjs → acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs} +15 -19
  55. package/fesm2022/acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs.map +1 -0
  56. package/fesm2022/{acorex-modules-auth-app-chooser.component-CbJb1P_k.mjs → acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs} +2 -2
  57. package/fesm2022/{acorex-modules-auth-app-chooser.component-CbJb1P_k.mjs.map → acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs.map} +1 -1
  58. package/fesm2022/{acorex-modules-auth-login.module-DFCB1l7W.mjs → acorex-modules-auth-login.module-B_WrZQJx.mjs} +4 -4
  59. package/fesm2022/{acorex-modules-auth-login.module-DFCB1l7W.mjs.map → acorex-modules-auth-login.module-B_WrZQJx.mjs.map} +1 -1
  60. package/fesm2022/{acorex-modules-auth-master.layout-CuKXvY0o.mjs → acorex-modules-auth-master.layout-hDbrFbwO.mjs} +2 -2
  61. package/fesm2022/{acorex-modules-auth-master.layout-CuKXvY0o.mjs.map → acorex-modules-auth-master.layout-hDbrFbwO.mjs.map} +1 -1
  62. package/fesm2022/{acorex-modules-auth-password.component-DacOjakT.mjs → acorex-modules-auth-password.component-BnT_IaqN.mjs} +2 -2
  63. package/fesm2022/{acorex-modules-auth-password.component-DacOjakT.mjs.map → acorex-modules-auth-password.component-BnT_IaqN.mjs.map} +1 -1
  64. package/fesm2022/{acorex-modules-auth-password.component-5gwz30CZ.mjs → acorex-modules-auth-password.component-DDE0M5GE.mjs} +2 -2
  65. package/fesm2022/{acorex-modules-auth-password.component-5gwz30CZ.mjs.map → acorex-modules-auth-password.component-DDE0M5GE.mjs.map} +1 -1
  66. package/fesm2022/{acorex-modules-auth-routes-D018Lg-b.mjs → acorex-modules-auth-routes-Da02kID6.mjs} +2 -2
  67. package/fesm2022/{acorex-modules-auth-routes-D018Lg-b.mjs.map → acorex-modules-auth-routes-Da02kID6.mjs.map} +1 -1
  68. package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs +271 -0
  69. package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs.map +1 -0
  70. package/fesm2022/{acorex-modules-auth-two-factor.module-DiEB7VWl.mjs → acorex-modules-auth-two-factor.module-BrDpX4X1.mjs} +2 -2
  71. package/fesm2022/{acorex-modules-auth-two-factor.module-DiEB7VWl.mjs.map → acorex-modules-auth-two-factor.module-BrDpX4X1.mjs.map} +1 -1
  72. package/fesm2022/acorex-modules-auth.mjs +1 -1
  73. package/fesm2022/acorex-modules-common-index-rvP9ISgL.mjs +717 -0
  74. package/fesm2022/acorex-modules-common-index-rvP9ISgL.mjs.map +1 -0
  75. package/fesm2022/acorex-modules-common.mjs +34 -24
  76. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  77. package/fesm2022/acorex-modules-conversation.mjs +4 -2
  78. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  79. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs → acorex-modules-document-management-acorex-modules-document-management-C36haVZ_.mjs} +1054 -266
  80. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C36haVZ_.mjs.map +1 -0
  81. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-C9YP1aFi.mjs +135 -0
  82. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-C9YP1aFi.mjs.map +1 -0
  83. package/fesm2022/{acorex-modules-document-management-details-view.component-BHcu_gYH.mjs → acorex-modules-document-management-details-view.component-BFMgAxeK.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-document-management-details-view.component-BHcu_gYH.mjs.map → acorex-modules-document-management-details-view.component-BFMgAxeK.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-document-management-drive-choose.component-WoZfDyLK.mjs → acorex-modules-document-management-drive-choose.component-Bo-I7TN5.mjs} +22 -16
  86. package/fesm2022/acorex-modules-document-management-drive-choose.component-Bo-I7TN5.mjs.map +1 -0
  87. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DvriE0YR.mjs → acorex-modules-document-management-large-icons-view.component-CZ-GUtnO.mjs} +2 -2
  88. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DvriE0YR.mjs.map → acorex-modules-document-management-large-icons-view.component-CZ-GUtnO.mjs.map} +1 -1
  89. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-ByWrKvZe.mjs → acorex-modules-document-management-large-tiles-view.component-Cw5yZ851.mjs} +2 -2
  90. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-ByWrKvZe.mjs.map → acorex-modules-document-management-large-tiles-view.component-Cw5yZ851.mjs.map} +1 -1
  91. package/fesm2022/acorex-modules-document-management-link-dialog.component-1iPUnhr1.mjs +70 -0
  92. package/fesm2022/acorex-modules-document-management-link-dialog.component-1iPUnhr1.mjs.map +1 -0
  93. package/fesm2022/{acorex-modules-document-management-list-view.component-B6J6Tokv.mjs → acorex-modules-document-management-list-view.component-BPkaAGjR.mjs} +2 -2
  94. package/fesm2022/{acorex-modules-document-management-list-view.component-B6J6Tokv.mjs.map → acorex-modules-document-management-list-view.component-BPkaAGjR.mjs.map} +1 -1
  95. package/fesm2022/acorex-modules-document-management-lock-dialog.component-BwKdUUcf.mjs +52 -0
  96. package/fesm2022/acorex-modules-document-management-lock-dialog.component-BwKdUUcf.mjs.map +1 -0
  97. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-Dae6RWb8.mjs → acorex-modules-document-management-rename-node-dialog.component-DEhPxW3b.mjs} +10 -10
  98. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-DEhPxW3b.mjs.map +1 -0
  99. package/fesm2022/acorex-modules-document-management-share-dialog.component-BiNdRpqs.mjs +143 -0
  100. package/fesm2022/acorex-modules-document-management-share-dialog.component-BiNdRpqs.mjs.map +1 -0
  101. package/fesm2022/acorex-modules-document-management-share-email-dialog.component-BvR5OuCV.mjs +55 -0
  102. package/fesm2022/acorex-modules-document-management-share-email-dialog.component-BvR5OuCV.mjs.map +1 -0
  103. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-TrYeB22e.mjs → acorex-modules-document-management-small-icons-view.component-Cz-sHFPj.mjs} +2 -2
  104. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-TrYeB22e.mjs.map → acorex-modules-document-management-small-icons-view.component-Cz-sHFPj.mjs.map} +1 -1
  105. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DDKdWg8I.mjs → acorex-modules-document-management-small-tiles-view.component-C_SlJ79h.mjs} +2 -2
  106. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DDKdWg8I.mjs.map → acorex-modules-document-management-small-tiles-view.component-C_SlJ79h.mjs.map} +1 -1
  107. package/fesm2022/acorex-modules-document-management-unlock-dialog.component-DkZQ84kg.mjs +37 -0
  108. package/fesm2022/acorex-modules-document-management-unlock-dialog.component-DkZQ84kg.mjs.map +1 -0
  109. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  110. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-CJYrDtq6.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-C3bCqH0S.mjs} +30 -24
  111. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-C3bCqH0S.mjs.map +1 -0
  112. package/fesm2022/{acorex-modules-form-template-management-category.entity-BdiYytzK.mjs → acorex-modules-form-template-management-category.entity-B8FoSfDd.mjs} +7 -3
  113. package/fesm2022/acorex-modules-form-template-management-category.entity-B8FoSfDd.mjs.map +1 -0
  114. package/fesm2022/{acorex-modules-form-template-management-setting.provider-CoETMkEC.mjs → acorex-modules-form-template-management-setting.provider-2gDLkJ82.mjs} +20 -17
  115. package/fesm2022/acorex-modules-form-template-management-setting.provider-2gDLkJ82.mjs.map +1 -0
  116. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-0JfGxdMv.mjs → acorex-modules-form-template-management-template-picker.component-M-R2U9CH.mjs} +5 -4
  117. package/fesm2022/acorex-modules-form-template-management-template-picker.component-M-R2U9CH.mjs.map +1 -0
  118. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BkJ3ieIg.mjs → acorex-modules-form-template-management-template-widget-edit.component-CGLJ_4tB.mjs} +2 -2
  119. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BkJ3ieIg.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-CGLJ_4tB.mjs.map} +1 -1
  120. package/fesm2022/{acorex-modules-form-template-management-template.entity-ByE2p0Mu.mjs → acorex-modules-form-template-management-template.entity-Cm57FCm7.mjs} +53 -33
  121. package/fesm2022/acorex-modules-form-template-management-template.entity-Cm57FCm7.mjs.map +1 -0
  122. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CThcXWpt.mjs → acorex-modules-form-template-management-viewer-popup.component-C8QVMY0f.mjs} +2 -2
  123. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CThcXWpt.mjs.map → acorex-modules-form-template-management-viewer-popup.component-C8QVMY0f.mjs.map} +1 -1
  124. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  125. package/fesm2022/acorex-modules-notification-management.mjs +43 -35
  126. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  127. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-JKQwYEPq.mjs → acorex-modules-organization-management-org-chart-configuration.page-BFu7TUGC.mjs} +3 -3
  128. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-JKQwYEPq.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-BFu7TUGC.mjs.map} +1 -1
  129. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-QLdDEdqL.mjs → acorex-modules-organization-management-org-chart-configuration.service-B4ohp4o5.mjs} +5 -4
  130. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-B4ohp4o5.mjs.map +1 -0
  131. package/fesm2022/{acorex-modules-organization-management-org-chart.page-C2ZtUVKI.mjs → acorex-modules-organization-management-org-chart.page-BIytyLYP.mjs} +3 -4
  132. package/fesm2022/acorex-modules-organization-management-org-chart.page-BIytyLYP.mjs.map +1 -0
  133. package/fesm2022/{acorex-modules-organization-management-setting.provider-CMDpwkG2.mjs → acorex-modules-organization-management-setting.provider-BPjFNA5E.mjs} +44 -23
  134. package/fesm2022/acorex-modules-organization-management-setting.provider-BPjFNA5E.mjs.map +1 -0
  135. package/fesm2022/acorex-modules-organization-management.mjs +6 -6
  136. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  137. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-C-vMSeD0.mjs +4746 -0
  138. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-C-vMSeD0.mjs.map +1 -0
  139. package/fesm2022/{acorex-modules-platform-management-list-version.component-C9764yzu.mjs → acorex-modules-platform-management-list-version.component-EHtlPye1.mjs} +2 -2
  140. package/fesm2022/acorex-modules-platform-management-list-version.component-EHtlPye1.mjs.map +1 -0
  141. package/fesm2022/acorex-modules-platform-management-setting.provider-Bbd_enhk.mjs +335 -0
  142. package/fesm2022/acorex-modules-platform-management-setting.provider-Bbd_enhk.mjs.map +1 -0
  143. package/fesm2022/acorex-modules-platform-management.mjs +1 -4866
  144. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  145. package/fesm2022/acorex-modules-security-management.mjs +18 -12
  146. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  147. package/form-template-management/lib/entities/category/category.service.d.ts +2 -2
  148. package/form-template-management/lib/entities/category/category.types.d.ts +2 -1
  149. package/form-template-management/lib/entities/template/template.service.d.ts +2 -2
  150. package/form-template-management/lib/entities/template/template.types.d.ts +38 -5
  151. package/form-template-management/lib/features/designer/template.provider.d.ts +1 -1
  152. package/form-template-management/lib/features/designer/widgets/template-picker/template.provider.d.ts +3 -3
  153. package/form-template-management/lib/setting.provider.d.ts +4 -0
  154. package/notification-management/lib/{components → features/components}/admin-notification-item/admin-notification-item.component.d.ts +1 -1
  155. package/notification-management/lib/{components → features/components}/admin-notification-panel/admin-notification-panel.component.d.ts +1 -1
  156. package/notification-management/lib/setting.provider.d.ts +4 -0
  157. package/organization-management/lib/features/organization-chart/org-chart-configuration.page.d.ts +2 -2
  158. package/organization-management/lib/features/organization-chart/org-chart.page.d.ts +2 -2
  159. package/organization-management/lib/setting.provider.d.ts +5 -3
  160. package/package.json +1 -1
  161. package/platform-management/index.d.ts +1 -1
  162. package/platform-management/lib/entities/app-term/index.d.ts +2 -2
  163. package/platform-management/lib/entities/app-version/index.d.ts +2 -2
  164. package/platform-management/lib/entities/index.d.ts +0 -1
  165. package/platform-management/lib/entities/promotion/index.d.ts +1 -1
  166. package/platform-management/lib/features/app-terms/check-terms.service.d.ts +11 -0
  167. package/platform-management/lib/{entities/app-term → features/app-terms}/components/notify-app/notify-app.component.d.ts +1 -1
  168. package/platform-management/lib/{entities/app-term → features/app-terms}/pages/list/list-terms.component.d.ts +2 -2
  169. package/platform-management/lib/{entities/check-version.d.ts → features/app-version/check-version.service.d.ts} +3 -4
  170. package/platform-management/lib/{entities → features}/app-version/components/list-versions/list-version.component.d.ts +1 -1
  171. package/platform-management/lib/{entities → features}/app-version/components/notify-app/notify-app.component.d.ts +1 -1
  172. package/platform-management/lib/{common → features/common}/index.d.ts +1 -1
  173. package/platform-management/lib/{common → features/common}/regional/setting.keys.d.ts +3 -1
  174. package/platform-management/lib/{common → features/common}/regional/setting.provider.d.ts +4 -1
  175. package/platform-management/lib/{entities → features}/promotion/components/promotion-slot/promotion-slot.component.d.ts +2 -2
  176. package/platform-management/lib/platform-management.module.d.ts +4 -3
  177. package/security-management/lib/entities/users/users.service.d.ts +4 -4
  178. package/security-management/lib/entities/users/users.types.d.ts +0 -4
  179. package/common/lib/features/dashboard-home/index.d.ts +0 -1
  180. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-filter.component.d.ts +0 -6
  181. package/fesm2022/acorex-modules-auth-acorex-modules-auth-DrcL7GCj.mjs.map +0 -1
  182. package/fesm2022/acorex-modules-auth-setting.provider-DDl3OHw6.mjs +0 -59
  183. package/fesm2022/acorex-modules-auth-setting.provider-DDl3OHw6.mjs.map +0 -1
  184. package/fesm2022/acorex-modules-common-index-D90SN6SH.mjs +0 -507
  185. package/fesm2022/acorex-modules-common-index-D90SN6SH.mjs.map +0 -1
  186. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs.map +0 -1
  187. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs +0 -92
  188. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs.map +0 -1
  189. package/fesm2022/acorex-modules-document-management-drive-choose.component-WoZfDyLK.mjs.map +0 -1
  190. package/fesm2022/acorex-modules-document-management-drive.component-B3BCzdVv.mjs +0 -305
  191. package/fesm2022/acorex-modules-document-management-drive.component-B3BCzdVv.mjs.map +0 -1
  192. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-Dae6RWb8.mjs.map +0 -1
  193. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-CJYrDtq6.mjs.map +0 -1
  194. package/fesm2022/acorex-modules-form-template-management-category.entity-BdiYytzK.mjs.map +0 -1
  195. package/fesm2022/acorex-modules-form-template-management-setting.provider-CoETMkEC.mjs.map +0 -1
  196. package/fesm2022/acorex-modules-form-template-management-template-picker.component-0JfGxdMv.mjs.map +0 -1
  197. package/fesm2022/acorex-modules-form-template-management-template.entity-ByE2p0Mu.mjs.map +0 -1
  198. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-QLdDEdqL.mjs.map +0 -1
  199. package/fesm2022/acorex-modules-organization-management-org-chart.page-C2ZtUVKI.mjs.map +0 -1
  200. package/fesm2022/acorex-modules-organization-management-setting.provider-CMDpwkG2.mjs.map +0 -1
  201. package/fesm2022/acorex-modules-platform-management-list-version.component-C9764yzu.mjs.map +0 -1
  202. /package/common/lib/features/{dashboard-home/dashboard.type.d.ts → home-dashboard/dashboard-home/home-dashboard.type.d.ts} +0 -0
  203. /package/notification-management/lib/{components → features/components}/admin-notification-slot/admin-notification-slot.component.d.ts +0 -0
  204. /package/platform-management/lib/{entities/app-term → features/app-terms}/pages/index.d.ts +0 -0
  205. /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/index.d.ts +0 -0
  206. /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/notify-new-term.workflow.d.ts +0 -0
  207. /package/platform-management/lib/{entities → features}/app-version/components/index.d.ts +0 -0
  208. /package/platform-management/lib/{entities → features}/app-version/components/slots/app-version-slot.component.d.ts +0 -0
  209. /package/platform-management/lib/{entities → features}/app-version/workflows/change-log.workflow.d.ts +0 -0
  210. /package/platform-management/lib/{entities → features}/app-version/workflows/index.d.ts +0 -0
  211. /package/platform-management/lib/{entities → features}/app-version/workflows/show-release-notes.workflow.d.ts +0 -0
  212. /package/platform-management/lib/{common → features/common}/common.module.d.ts +0 -0
  213. /package/platform-management/lib/{common → features/common}/entity.provider.d.ts +0 -0
  214. /package/platform-management/lib/{common → features/common}/regional/data-source.provider.d.ts +0 -0
  215. /package/platform-management/lib/{common → features/common}/regional/index.d.ts +0 -0
  216. /package/platform-management/lib/{common → features/common}/regional/language-slot/language-slot.component.d.ts +0 -0
  217. /package/platform-management/lib/{common → features/common}/regional/regional-store.service.d.ts +0 -0
  218. /package/platform-management/lib/{entities → features}/promotion/components/index.d.ts +0 -0
@@ -1,92 +0,0 @@
1
- import * as i2$1 from '@acorex/components/button';
2
- import { AXButtonModule } from '@acorex/components/button';
3
- import * as i8 from '@acorex/components/color-box';
4
- import { AXColorBoxModule } from '@acorex/components/color-box';
5
- import * as i3 from '@acorex/components/decorators';
6
- import { AXDecoratorModule } from '@acorex/components/decorators';
7
- import * as i7 from '@acorex/components/form';
8
- import { AXFormModule } from '@acorex/components/form';
9
- import * as i4$1 from '@acorex/components/label';
10
- import { AXLabelModule } from '@acorex/components/label';
11
- import * as i10 from '@acorex/components/loading';
12
- import { AXLoadingModule } from '@acorex/components/loading';
13
- import { AXBasePageComponent } from '@acorex/components/page';
14
- import * as i4 from '@acorex/components/text-box';
15
- import { AXTextBoxModule } from '@acorex/components/text-box';
16
- import * as i3$1 from '@acorex/core/translation';
17
- import { AXTranslationModule } from '@acorex/core/translation';
18
- import * as i1 from '@angular/common';
19
- import { CommonModule } from '@angular/common';
20
- import * as i0 from '@angular/core';
21
- import { inject, model, Component } from '@angular/core';
22
- import * as i2 from '@angular/forms';
23
- import { FormsModule } from '@angular/forms';
24
- import { a as AXMDocumentManagerService } from './acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs';
25
- import { AXAutoFocusDirective } from '@acorex/components/common';
26
-
27
- class AXMCreateFolderDialog extends AXBasePageComponent {
28
- constructor() {
29
- super(...arguments);
30
- this.driveService = inject(AXMDocumentManagerService);
31
- this.name = model('');
32
- this.color = model('#FFFFFF');
33
- this.description = model('');
34
- }
35
- async handleSubmitButton(form) {
36
- this.isLoading = true;
37
- const validated = await form.validate();
38
- if (validated.result) {
39
- try {
40
- const folder = await this.driveService.createFolder({
41
- name: this.name(),
42
- color: this.color(),
43
- parentId: this.parentId,
44
- description: this.description(),
45
- size: 0,
46
- });
47
- this.close({
48
- result: true,
49
- folder,
50
- });
51
- }
52
- catch (error) {
53
- console.error('Error creating folder:', error);
54
- }
55
- finally {
56
- this.isLoading = false;
57
- }
58
- }
59
- else {
60
- this.isLoading = false;
61
- }
62
- }
63
- onCancel() {
64
- this.close({
65
- result: false,
66
- });
67
- }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMCreateFolderDialog, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMCreateFolderDialog, isStandalone: true, selector: "ax-create-folder-dialog", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { name: "nameChange", color: "colorChange", description: "descriptionChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-p-4\">\n <ax-form #form>\n <div class=\"ax-flex ax-flex-col ax-gap-4\">\n <ax-form-field>\n <ax-label>\n {{ 'name' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"name\" class=\"ax-input ax-w-full\" [axAutoFocus]=\"true\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'description' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"description\" class=\"ax-input ax-w-full\"> </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'color' | translate | async }}\n </ax-label>\n <ax-color-box [(ngModel)]=\"color\" class=\"ax-w-full\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-color-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-end ax-gap-2\"></div>\n </div>\n </ax-form>\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button look=\"solid\" color=\"primary\" (onClick)=\"handleSubmitButton(form)\" [text]=\"'save' | translate | async\">\n @if(isLoading) {\n <ax-loading> </ax-loading>\n }\n </ax-button>\n </ax-suffix>\n</ax-footer>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type:
70
- //
71
- AXDecoratorModule }, { 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: AXTextBoxModule }, { kind: "component", type: i4.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i4$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$1.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: AXFormModule }, { kind: "component", type: i7.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i7.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i7.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i8.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3$1.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i10.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "directive", type: AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }] }); }
72
- }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMCreateFolderDialog, decorators: [{
74
- type: Component,
75
- args: [{ selector: 'ax-create-folder-dialog', standalone: true, imports: [
76
- CommonModule,
77
- FormsModule,
78
- //
79
- AXDecoratorModule,
80
- AXTextBoxModule,
81
- AXLabelModule,
82
- AXButtonModule,
83
- AXFormModule,
84
- AXColorBoxModule,
85
- AXTranslationModule,
86
- AXLoadingModule,
87
- AXAutoFocusDirective
88
- ], template: "<div class=\"ax-p-4\">\n <ax-form #form>\n <div class=\"ax-flex ax-flex-col ax-gap-4\">\n <ax-form-field>\n <ax-label>\n {{ 'name' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"name\" class=\"ax-input ax-w-full\" [axAutoFocus]=\"true\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'description' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"description\" class=\"ax-input ax-w-full\"> </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'color' | translate | async }}\n </ax-label>\n <ax-color-box [(ngModel)]=\"color\" class=\"ax-w-full\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-color-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-end ax-gap-2\"></div>\n </div>\n </ax-form>\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button look=\"solid\" color=\"primary\" (onClick)=\"handleSubmitButton(form)\" [text]=\"'save' | translate | async\">\n @if(isLoading) {\n <ax-loading> </ax-loading>\n }\n </ax-button>\n </ax-suffix>\n</ax-footer>" }]
89
- }] });
90
-
91
- export { AXMCreateFolderDialog };
92
- //# sourceMappingURL=acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs","sources":["../../../../libs/modules/document-management/src/lib/features/document-explorer/components/create-folder-dialog/create-folder-dialog.component.ts","../../../../libs/modules/document-management/src/lib/features/document-explorer/components/create-folder-dialog/create-folder-dialog.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXColorBoxModule } from '@acorex/components/color-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject, model } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXMDocumentManagerService } from '../../../shared';\nimport { AXAutoFocusDirective } from '@acorex/components/common';\n\n@Component({\n selector: 'ax-create-folder-dialog',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n //\n AXDecoratorModule,\n AXTextBoxModule,\n AXLabelModule,\n AXButtonModule,\n AXFormModule,\n AXColorBoxModule,\n AXTranslationModule,\n AXLoadingModule,\n AXAutoFocusDirective\n ],\n templateUrl: './create-folder-dialog.component.html',\n})\nexport class AXMCreateFolderDialog extends AXBasePageComponent {\n private driveService = inject(AXMDocumentManagerService);\n\n parentId?: string;\n\n protected name = model<string>('');\n protected color = model<string>('#FFFFFF');\n protected description = model<string>('');\n\n async handleSubmitButton(form: AXFormComponent) {\n this.isLoading = true;\n const validated = await form.validate();\n if (validated.result) {\n try {\n const folder = await this.driveService.createFolder({\n name: this.name(),\n color: this.color(),\n parentId: this.parentId,\n description: this.description(),\n size: 0,\n });\n this.close({\n result: true,\n folder,\n });\n } catch (error) {\n console.error('Error creating folder:', error);\n } finally {\n this.isLoading = false;\n }\n } else {\n this.isLoading = false;\n }\n }\n\n onCancel() {\n this.close({\n result: false,\n });\n }\n}\n","<div class=\"ax-p-4\">\n <ax-form #form>\n <div class=\"ax-flex ax-flex-col ax-gap-4\">\n <ax-form-field>\n <ax-label>\n {{ 'name' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"name\" class=\"ax-input ax-w-full\" [axAutoFocus]=\"true\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'description' | translate | async }}\n </ax-label>\n <ax-text-box [(ngModel)]=\"description\" class=\"ax-input ax-w-full\"> </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>\n {{ 'color' | translate | async }}\n </ax-label>\n <ax-color-box [(ngModel)]=\"color\" class=\"ax-w-full\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-color-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-end ax-gap-2\"></div>\n </div>\n </ax-form>\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button look=\"solid\" color=\"primary\" (onClick)=\"handleSubmitButton(form)\" [text]=\"'save' | translate | async\">\n @if(isLoading) {\n <ax-loading> </ax-loading>\n }\n </ax-button>\n </ax-suffix>\n</ax-footer>"],"names":["i6","i9"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-document-management-drive-choose.component-WoZfDyLK.mjs","sources":["../../../../libs/modules/document-management/src/lib/features/drive-choose/drive-choose.component.ts","../../../../libs/modules/document-management/src/lib/features/drive-choose/drive-choose.component.html"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSimplePageLayout } from '@acorex/platform/themes/default';\n\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPFileTypeProviderService } from '@acorex/platform/common';\nimport {\n AXPLayoutThemeService,\n AXPThemeLayoutActionsComponent,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutFooterComponent,\n AXPThemeLayoutHeaderComponent,\n AXPThemeLayoutPageHeaderComponent,\n AXPThemeLayoutPagePrimaryActionsComponent,\n AXPThemeLayoutPageSecondaryActionsComponent,\n AXPThemeLayoutToolbarComponent,\n} from '@acorex/platform/themes/shared';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n OnInit,\n signal,\n untracked,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentExplorerComponent, AXPDocumentExplorerViewModel } from '../document-explorer';\nimport { AXMDocumentManagerService, AXMFolderPathBreadcrumbsComponent } from '../shared';\nimport { AXMDocumentExplorerBrowseMode, AXMDocumentSelectionMode, AXMDriveScope } from '../shared/document-manager.types';\nimport { AXBasePageComponent } from '@acorex/components/page';\n@Component({\n selector: 'ax-document-drive-choose',\n templateUrl: './drive-choose.component.html',\n styleUrls: ['./drive-choose.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n AXMenuModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXDropdownButtonModule,\n AXDropdownModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBadgeModule,\n AXSearchBoxModule,\n AXFormatModule,\n AXFileModule,\n AXBreadcrumbsModule,\n AXDateTimeModule,\n AXMDocumentExplorerComponent,\n AXMFolderPathBreadcrumbsComponent\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AXPDocumentExplorerViewModel],\n})\nexport class AXMDocumentDriveChooseComponent extends AXBasePageComponent implements OnInit {\n protected readonly layout = inject(AXPLayoutThemeService);\n protected readonly rootConfig = RootConfig;\n private readonly fileTypeService = inject(AXPFileTypeProviderService);\n private readonly driveService = inject(AXMDocumentManagerService);\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n\n\n\n protected readonly filterItems = signal<Array<{ key: string; textKey: string; icon: string }>>([]);\n public selectedFilter = signal<string>('all');\n\n protected browseMode: AXMDocumentExplorerBrowseMode = 'file';\n protected selectionMode: AXMDocumentSelectionMode = 'single';\n\n protected readonly sortItems = signal([\n { key: 'name', textKey: 'actions.sort-by-name', icon: 'fa-light fa-font' },\n { key: 'modified', textKey: 'actions.sort-by-date', icon: 'fa-light fa-calendar' },\n { key: 'size', textKey: 'actions.sort-by-size', icon: 'fa-light fa-weight-hanging' },\n ]);\n\n protected documentExplorer = viewChild(AXMDocumentExplorerComponent);\n\n protected readonly selectedSort = computed(() => {\n const items = this.sortItems();\n return items.find((item) => item.key === this.vm.sortField()) || items[0];\n });\n\n\n protected readonly selectText = computed(() => {\n return this.vm.browseMode() == 'file' ? 'actions.select-file' : 'actions.select-folder';\n });\n\n #navigateEffect = effect(() => {\n const navigatingFolderId = this.vm.navigatingFolderId();\n if (navigatingFolderId) {\n this.loadDrive(navigatingFolderId);\n }\n });\n\n #loadingEffect = effect(() => {\n const isLoading = this.vm.isLoading();\n untracked(() => {\n this.layout.setNavigationLoading(isLoading);\n });\n });\n\n async handleSearchChange(event: any) {\n const result = await this.driveService.searchNodes(event.value, AXMDriveScope.Platform);\n console.log(result);\n }\n\n override async ngOnInit() {\n super.ngOnInit();\n await this.loadFilterItems();\n await this.vm.initialize({ browseMode: this.browseMode });\n this.loadDrive();\n }\n\n private async loadDrive(folderId?: string) {\n if (folderId) {\n await this.vm.loadFolderContents(folderId);\n } else {\n const root = await this.driveService.getRoot(AXMDriveScope.Platform);\n if (root.result) {\n await this.vm.loadFolderContents(root.result.id);\n }\n }\n }\n\n async loadFilterItems() {\n const types = await this.fileTypeService.items();\n const items = [\n { key: 'all', textKey: 'file-types.all', icon: 'fa-light fa-folder-closed' },\n ...types.map((type) => ({\n key: type.name,\n textKey: `file-types.${type.name}`,\n icon: type.icon || 'fa-light fa-file',\n })),\n ];\n this.filterItems.set(items);\n }\n\n protected setFilter(key: string): void {\n this.selectedFilter.set(key);\n }\n\n protected getFilterIcon(): string {\n if (this.selectedFilter() === 'all') {\n return 'fa-light fa-folder-closed';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.icon || 'fa-light fa-file';\n }\n\n protected getFilterText(): string {\n if (this.selectedFilter() === 'all') {\n return 'file-types.all';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.textKey || 'file-types.all';\n }\n\n protected handleNavigateToFolder(folderId: string) {\n this.vm.navigateToFolder(folderId);\n }\n\n protected async handleSubmitButton() {\n this.close({\n result: true,\n items: this.vm.browseMode() == 'file' ?\n this.vm.selectedNodes() :\n [this.vm.currentFolder()]\n });\n }\n\n protected handleCancelClick() {\n this.close({\n result: false,\n });\n }\n}\n","<div class=\"ax-flex ax-p-2 ax-items-center ax-w-full ax-light-surface ax-border-b\" *translate=\"let t\">\n <!-- Breadcrumbs Section -->\n <axm-folder-path-breadcrumbs></axm-folder-path-breadcrumbs>\n <!-- Search Box -->\n <ax-search-box (onValueChanged)=\"handleSearchChange($event)\" class=\"ax-w-72 ax-sm\"\n [placeholder]=\"t('actions.search', { scope: rootConfig.config.i18n }) | async\"><ax-clear-button></ax-clear-button></ax-search-box>\n</div>\n<div class=\"ax-p-2\">\n <axm-document-explorer [browseMode]=\"browseMode\" [selectionMode]=\"selectionMode\" [viewMode]=\"'list'\"\n [showContextMenu]=\"false\"></axm-document-explorer>\n</div>\n<ax-footer *translate=\"let t\">\n <ax-suffix>\n <ax-button (onClick)=\"handleCancelClick()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button look=\"solid\" color=\"primary\" (onClick)=\"handleSubmitButton()\"\n [text]=\"t(selectText(),{scope:rootConfig.config.i18n}) | async\">\n </ax-button>\n </ax-suffix>\n</ax-footer>"],"names":["i4"],"mappings":"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"}
@@ -1,305 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, ViewEncapsulation, Component, signal, computed, viewChild, effect, untracked, HostListener, ChangeDetectionStrategy } from '@angular/core';
3
- import * as i1 from '@angular/common';
4
- import { CommonModule } from '@angular/common';
5
- import { AXBadgeModule } from '@acorex/components/badge';
6
- import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
7
- import * as i2$1 from '@acorex/components/button';
8
- import { AXButtonModule } from '@acorex/components/button';
9
- import { AXButtonGroupModule } from '@acorex/components/button-group';
10
- import * as i3 from '@acorex/components/decorators';
11
- import { AXDecoratorModule } from '@acorex/components/decorators';
12
- import * as i2$2 from '@acorex/components/dropdown';
13
- import { AXDropdownModule } from '@acorex/components/dropdown';
14
- import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
15
- import { AXLoadingModule } from '@acorex/components/loading';
16
- import { AXMenuModule } from '@acorex/components/menu';
17
- import * as i3$1 from '@acorex/core/translation';
18
- import { AXTranslationModule } from '@acorex/core/translation';
19
- import { AXPBasePageComponent, AXPPageLayoutComponent, AXPBasePage } from '@acorex/platform/themes/default';
20
- import * as i5 from '@acorex/components/search-box';
21
- import { AXSearchBoxModule } from '@acorex/components/search-box';
22
- import { AXDateTimeModule } from '@acorex/core/date-time';
23
- import { AXFileModule } from '@acorex/core/file';
24
- import * as i2 from '@acorex/core/format';
25
- import { AXFormatModule } from '@acorex/core/format';
26
- import { AXPFileTypeProviderService } from '@acorex/platform/common';
27
- import { AXPThemeLayoutBlockComponent } from '@acorex/platform/themes/shared';
28
- import { Router, ActivatedRoute, RouterModule } from '@angular/router';
29
- import { A as AXPDocumentExplorerViewModel, R as RootConfig, a as AXMDocumentManagerService, b as AXMDocumentExplorerComponent, c as AXMDriveScope, d as AXMFolderPathBreadcrumbsComponent } from './acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs';
30
-
31
- class AXMDocumentExplorerDetailPanelComponent {
32
- constructor() {
33
- this.vm = inject(AXPDocumentExplorerViewModel);
34
- }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMDocumentExplorerDetailPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMDocumentExplorerDetailPanelComponent, isStandalone: true, selector: "axm-document-explorer-detail-panel", ngImport: i0, template: "<!-- Multiple Selected -->\n@if(vm.hasMultipleSelectedItems()) {\n<div class=\"__header\" *translate=\"let t\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg fa-solid\"></i>\n <span> {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\"></div>\n}\n<!-- Single Selected -->\n@else {\n<!-- Info -->\n@let nodeInfo = vm.getNodeInfo((vm.selectedNode() ?? vm.currentFolder())!);\n<div class=\"__header\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg {{ nodeInfo.icon }} fa-solid\"></i>\n <span>{{ nodeInfo.name }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\">\n @for(section of nodeInfo.sections; track section.title) {\n <div class=\"__section\">\n <div class=\"__title\">\n <span>{{ section.title }}</span>\n </div>\n <div class=\"__content\">\n @for(detail of section.details; track detail.title) {\n <div class=\"__row\">\n <div class=\"__title\">\n <span>{{ detail.title }}</span>\n </div>\n <div class=\"__content\">\n @if(detail.format) {\n <span>{{ detail.content | format : detail.format | async }}</span>\n } @else {\n <span>{{ detail.content ?? '---' }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n</div>\n}\n", styles: ["axm-document-explorer-detail-panel{display:flex;flex-direction:column;border-radius:.5rem;border-width:1px;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface))}@media (min-width: 1024px){axm-document-explorer-detail-panel{min-width:20rem}}axm-document-explorer-detail-panel>.__header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;padding:1rem}axm-document-explorer-detail-panel>.__header>.__title{display:flex;width:90%;flex-direction:row;align-items:center;gap:.5rem}axm-document-explorer-detail-panel>.__header>.__title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-weight:600;line-height:1.625}axm-document-explorer-detail-panel>.__content{display:flex;flex-direction:column}axm-document-explorer-detail-panel>.__content>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}axm-document-explorer-detail-panel>.__content>.__section{display:flex;flex-direction:column;padding:1rem}axm-document-explorer-detail-panel>.__content>.__section>.__title{margin-bottom:1rem;font-size:.875rem;line-height:1.25rem;font-weight:700}axm-document-explorer-detail-panel>.__content>.__section>.__content{display:flex;flex-direction:column;gap:1rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row{display:flex;flex-direction:column;gap:.25rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__title{display:flex;font-size:.875rem;line-height:1.25rem;font-weight:600;opacity:.9}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__content{display:flex;flex-direction:row;align-items:center;gap:.5rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__content span{opacity:.7}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "pipe", type: i2.AXFormatPipe, name: "format" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$1.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: AXTranslationModule }, { kind: "directive", type: i3$1.AXTranslatorDirective, selector: "[translate]" }], encapsulation: i0.ViewEncapsulation.None }); }
37
- }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMDocumentExplorerDetailPanelComponent, decorators: [{
39
- type: Component,
40
- args: [{ selector: 'axm-document-explorer-detail-panel', standalone: true, encapsulation: ViewEncapsulation.None, imports: [
41
- CommonModule,
42
- AXDecoratorModule,
43
- AXFormatModule,
44
- AXButtonModule,
45
- AXTranslationModule
46
- ], template: "<!-- Multiple Selected -->\n@if(vm.hasMultipleSelectedItems()) {\n<div class=\"__header\" *translate=\"let t\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg fa-solid\"></i>\n <span> {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\"></div>\n}\n<!-- Single Selected -->\n@else {\n<!-- Info -->\n@let nodeInfo = vm.getNodeInfo((vm.selectedNode() ?? vm.currentFolder())!);\n<div class=\"__header\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg {{ nodeInfo.icon }} fa-solid\"></i>\n <span>{{ nodeInfo.name }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\">\n @for(section of nodeInfo.sections; track section.title) {\n <div class=\"__section\">\n <div class=\"__title\">\n <span>{{ section.title }}</span>\n </div>\n <div class=\"__content\">\n @for(detail of section.details; track detail.title) {\n <div class=\"__row\">\n <div class=\"__title\">\n <span>{{ detail.title }}</span>\n </div>\n <div class=\"__content\">\n @if(detail.format) {\n <span>{{ detail.content | format : detail.format | async }}</span>\n } @else {\n <span>{{ detail.content ?? '---' }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n</div>\n}\n", styles: ["axm-document-explorer-detail-panel{display:flex;flex-direction:column;border-radius:.5rem;border-width:1px;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface))}@media (min-width: 1024px){axm-document-explorer-detail-panel{min-width:20rem}}axm-document-explorer-detail-panel>.__header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;padding:1rem}axm-document-explorer-detail-panel>.__header>.__title{display:flex;width:90%;flex-direction:row;align-items:center;gap:.5rem}axm-document-explorer-detail-panel>.__header>.__title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-weight:600;line-height:1.625}axm-document-explorer-detail-panel>.__content{display:flex;flex-direction:column}axm-document-explorer-detail-panel>.__content>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}axm-document-explorer-detail-panel>.__content>.__section{display:flex;flex-direction:column;padding:1rem}axm-document-explorer-detail-panel>.__content>.__section>.__title{margin-bottom:1rem;font-size:.875rem;line-height:1.25rem;font-weight:700}axm-document-explorer-detail-panel>.__content>.__section>.__content{display:flex;flex-direction:column;gap:1rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row{display:flex;flex-direction:column;gap:.25rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__title{display:flex;font-size:.875rem;line-height:1.25rem;font-weight:600;opacity:.9}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__content{display:flex;flex-direction:row;align-items:center;gap:.5rem}axm-document-explorer-detail-panel>.__content>.__section>.__content>.__row>.__content span{opacity:.7}\n"] }]
47
- }] });
48
-
49
- class AXMDocumentDriveComponent extends AXPBasePageComponent {
50
- constructor() {
51
- super(...arguments);
52
- //#region ---------------- Services & Dependencies ----------------
53
- this.rootConfig = RootConfig;
54
- this.fileTypeService = inject(AXPFileTypeProviderService);
55
- this.driveService = inject(AXMDocumentManagerService);
56
- this.vm = inject(AXPDocumentExplorerViewModel);
57
- this.router = inject(Router);
58
- this.activatedRoute = inject(ActivatedRoute);
59
- //#endregion
60
- //#region ---------------- View Properties ----------------
61
- this.filterItems = signal([]);
62
- this.selectedFilter = signal('all');
63
- this.sortItems = signal([
64
- { key: 'name', textKey: 'actions.sort-by-name', icon: 'fa-light fa-font' },
65
- { key: 'modified', textKey: 'actions.sort-by-date', icon: 'fa-light fa-calendar' },
66
- { key: 'size', textKey: 'actions.sort-by-size', icon: 'fa-light fa-weight-hanging' },
67
- ]);
68
- this.viewsItems = signal([
69
- { key: 'large-icons', icon: 'fa-light fa-grid' },
70
- { key: 'small-icons', icon: 'fa-light fa-grid', break: true },
71
- { key: 'large-tiles', icon: 'fa-grid-2' },
72
- { key: 'small-tiles', icon: 'fa-grid-2', break: true },
73
- { key: 'details', icon: 'fa-bars', break: true },
74
- { key: 'list', icon: 'fa-list' },
75
- ]);
76
- this.selectedViewMode = computed(() => this.viewsItems().find((item) => item.key === this.vm.viewMode()) || this.viewsItems()[0]);
77
- this.selectionMode = signal('single');
78
- this.documentExplorer = viewChild(AXMDocumentExplorerComponent);
79
- //#endregion
80
- //#region ---------------- Computed Properties ----------------
81
- this.selectedSort = computed(() => {
82
- const items = this.sortItems();
83
- return items.find((item) => item.key === this.vm.sortField()) || items[0];
84
- });
85
- //#endregion
86
- //#region ---------------- Effects ----------------
87
- this.#navigateEffect = effect(() => {
88
- const navigatingFolderId = this.vm.navigatingFolderId();
89
- if (navigatingFolderId) {
90
- this.handleNavigateToFolder(navigatingFolderId);
91
- }
92
- });
93
- this.#loadingEffect = effect(() => {
94
- const isLoading = this.vm.isLoading();
95
- untracked(() => {
96
- this.layoutService.setNavigationLoading(isLoading);
97
- });
98
- });
99
- }
100
- //#endregion
101
- //#region ---------------- Effects ----------------
102
- #navigateEffect;
103
- #loadingEffect;
104
- //#endregion
105
- //#region ---------------- Lifecycle Hooks ----------------
106
- async ngOnInit() {
107
- super.ngOnInit();
108
- await this.loadFilterItems();
109
- await this.vm.initialize({ browseMode: 'file' });
110
- this.activatedRoute.paramMap.subscribe(async () => {
111
- this.loadDrive();
112
- });
113
- }
114
- //#endregion
115
- //#region ---------------- Event Handlers ----------------
116
- async handleSearchChange(event) {
117
- console.log(event);
118
- const result = await this.driveService.searchNodes(event.value, AXMDriveScope.Platform);
119
- console.log(result);
120
- }
121
- handleCtrlKey(e) {
122
- this.selectionMode.set('multiple');
123
- }
124
- handleCtrlKeyUp(e) {
125
- this.selectionMode.set('single');
126
- }
127
- handleNavigateToFolder(folderId) {
128
- this.router.navigate([`${this.sessionService.application?.name}/drive/my/${folderId}`]);
129
- }
130
- //#endregion
131
- //#region ---------------- Data Loading Methods ----------------
132
- async loadDrive() {
133
- const folderId = this.activatedRoute.snapshot.paramMap.get('id');
134
- if (folderId) {
135
- await this.vm.loadFolderContents(folderId);
136
- }
137
- else {
138
- const root = await this.driveService.getRoot(AXMDriveScope.Platform);
139
- if (root.result) {
140
- await this.router.navigate([`${this.sessionService.application?.name}/drive/my/${root.result.id}`], {
141
- replaceUrl: true,
142
- });
143
- }
144
- }
145
- //
146
- this.recompute();
147
- }
148
- async loadFilterItems() {
149
- const types = await this.fileTypeService.items();
150
- const items = [
151
- { key: 'all', textKey: 'file-types.all', icon: 'fa-light fa-folder-closed' },
152
- ...types.map((type) => ({
153
- key: type.name,
154
- textKey: `file-types.${type.name}`,
155
- icon: type.icon || 'fa-light fa-file',
156
- })),
157
- ];
158
- this.filterItems.set(items);
159
- }
160
- //#endregion
161
- //#region ---------------- Filter Methods ----------------
162
- setFilter(key) {
163
- this.selectedFilter.set(key);
164
- }
165
- getFilterIcon() {
166
- if (this.selectedFilter() === 'all') {
167
- return 'fa-light fa-folder-closed';
168
- }
169
- const item = this.filterItems().find((item) => item.key === this.selectedFilter());
170
- return item?.icon || 'fa-light fa-file';
171
- }
172
- getFilterText() {
173
- if (this.selectedFilter() === 'all') {
174
- return 'file-types.all';
175
- }
176
- const item = this.filterItems().find((item) => item.key === this.selectedFilter());
177
- return item?.textKey || 'file-types.all';
178
- }
179
- //#endregion
180
- //#region ---------------- Page Configuration Overrides ----------------
181
- async getPrimaryMenuItems() {
182
- if (this.vm.hasMultipleSelectedItems()) {
183
- return [
184
- {
185
- name: 'deleteItems',
186
- title: 't("deleteItems")',
187
- icon: 'fa-light fa-trash-can',
188
- color: 'danger',
189
- }
190
- ];
191
- }
192
- return [
193
- {
194
- name: 'new-folder',
195
- title: 't("add-item")',
196
- icon: 'fa-light fa-plus',
197
- items: await this.vm.getFolderAddMenuItems()
198
- },
199
- ];
200
- }
201
- async getSecondaryMenuItems() {
202
- if (this.vm.hasMultipleSelectedItems()) {
203
- return [
204
- {
205
- name: 'delete',
206
- title: 't("delete")',
207
- icon: 'fa-light fa-trash-can',
208
- color: 'danger',
209
- }
210
- ];
211
- }
212
- return this.vm.getFolderActionMenuItems();
213
- }
214
- getPageTitle() {
215
- if (this.vm.isRoot()) {
216
- return 'Drive';
217
- }
218
- return this.vm.currentFolder()?.name || '';
219
- }
220
- async getPageDescription() {
221
- const count = await this.vm.itemsCount();
222
- const size = await this.vm.availableSpace();
223
- const formattedSize = await this.formatService.format(size, 'filesize');
224
- return this.translateService.translateAsync('my-drive.description', {
225
- scope: this.rootConfig.config.i18n,
226
- params: {
227
- count,
228
- size: formattedSize
229
- }
230
- });
231
- }
232
- getPageBreadcrumbs() {
233
- return [
234
- {
235
- title: this.translateService.translateSync('entity.home'),
236
- icon: 'fa-solid fa-home ax-text-xs ax-me-2',
237
- },
238
- {
239
- title: 'My Drive',
240
- },
241
- {
242
- title: this.vm.currentFolder()?.name || '',
243
- }
244
- ];
245
- }
246
- execute(command) {
247
- switch (command.name) {
248
- case 'new-folder':
249
- const folderId = command.options?.['folderId'];
250
- if (folderId) {
251
- this.driveService.showCreateFolderDialog(folderId);
252
- }
253
- break;
254
- }
255
- }
256
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMDocumentDriveComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
257
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMDocumentDriveComponent, isStandalone: true, selector: "axp-document-drive", host: { listeners: { "document:keydown.control": "handleCtrlKey($event)", "document:keyup.control": "handleCtrlKeyUp($event)" } }, providers: [
258
- AXPDocumentExplorerViewModel,
259
- {
260
- provide: AXPBasePage,
261
- useExisting: AXMDocumentDriveComponent
262
- }
263
- ], viewQueries: [{ propertyName: "documentExplorer", first: true, predicate: AXMDocumentExplorerComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<!-- Main Layout -->\n<axp-page-layout *translate=\"let t\">\n <axp-page-toolbar>\n <!-- Left Side Toolbar -->\n <axp-layout-prefix>\n @if(vm.hasMultipleSelectedItems() ) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}\n </span>\n <span (click)=\"vm.deselectAll()\" class=\"ax-text-sm ax-text-primary-500 ax-underline ax-cursor-pointer\">{{\n t('unselect', { scope: 'common' }) | async\n }}</span>\n </div>\n }\n <!---------->\n @else {\n <!-- Filter Dropdown -->\n <ax-button [text]=\"t(getFilterText(), { scope: rootConfig.config.i18n }) | async\">\n <ax-prefix>\n <ax-icon [icon]=\"getFilterIcon()\"></ax-icon>\n </ax-prefix>\n\n <ax-dropdown-panel>\n <ax-button-item-list class=\"ax-p-2\">\n @for(item of filterItems(); track item.key) {\n <ax-button-item (onClick)=\"setFilter(item.key)\"\n [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-- Search Box -->\n <ax-search-box (onValueChanged)=\"handleSearchChange($event)\" class=\"ax-w-72 ax-hidden md:ax-flex\"\n [placeholder]=\"t('actions.search', { scope: rootConfig.config.i18n }) | async\"><ax-clear-button></ax-clear-button></ax-search-box>\n }\n </axp-layout-prefix>\n\n <!-- Right Side Toolbar -->\n <axp-layout-suffix>\n <!-- Sort Dropdown -->\n <ax-button>\n <ax-icon\n [icon]=\"'fa-light fa-arrow-' + (vm.sortDirection() === 'asc' ? 'up' : 'down') + '-wide-short'\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n <!-- Sort By Options -->\n @for(item of sortItems(); track item.key) {\n <ax-button-item [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\"\n (onClick)=\"vm.setSortField(item.key)\" [selected]=\"vm.sortField() === item.key\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n <ax-divider></ax-divider>\n <!-- Sort Direction Options -->\n <ax-button-item [text]=\"(t('actions.sort-ascending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'asc'\" (onClick)=\"vm.setSortDirection('asc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-up-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item [text]=\"(t('actions.sort-descending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'desc'\" (onClick)=\"vm.setSortDirection('desc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-down-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n <!-- View Mode Toggle -->\n <ax-button>\n <ax-icon icon=\"fa-light {{ selectedViewMode().icon }}\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(item of viewsItems(); track item.key) {\n <!-- view mode items -->\n <ax-button-item [text]=\"(t('view-modes.' + item.key, { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.isViewMode(item.key)\" (onClick)=\"vm.setViewMode(item.key)\">\n <ax-prefix>\n <ax-icon icon=\"fa-light {{ item.icon }}\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n @if(item.break) {\n <ax-divider></ax-divider>\n }\n <!-- end of view mode items -->\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n @if(layoutService.isLarge()) {\n <!-- Detail Panel Toggle -->\n <ax-button (onClick)=\"vm.toggleDetailPanel()\">\n <ax-icon icon=\"{{ vm.isDetailPanelOpen() ? 'fa-solid fa-square-info' : 'fa-light fa-square-info' }}\"></ax-icon>\n </ax-button>\n }\n </axp-layout-suffix>\n </axp-page-toolbar>\n\n <!-- Content Section -->\n <axp-page-content class=\"ax-overflow-auto ax-flex ax-flex-row ax-gap-4\">\n <axm-document-explorer [selectionMode]=\"selectionMode()\"></axm-document-explorer>\n @if (vm.isDetailPanelOpen() && layoutService.isLarge()) {\n <axm-document-explorer-detail-panel class=\"ax-sticky ax-top-0 ax-z-50\"></axm-document-explorer-detail-panel>\n }\n </axp-page-content>\n\n <!-- Footer Section -->\n @if(!layoutService.isSmall()) {\n <axp-page-footer>\n <axp-layout-prefix>\n <axm-folder-path-breadcrumbs></axm-folder-path-breadcrumbs>\n </axp-layout-prefix>\n </axp-page-footer>\n }\n</axp-page-layout>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXMenuModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$1.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: "component", type: i2$1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2$1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i2$2.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i3$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i5.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXFileModule }, { kind: "component", type: AXPPageLayoutComponent, selector: "axp-page-layout" }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer, axp-page-header, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title, axp-layout-nav-button, axp-layout-description, axp-layout-title-bar, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "component", type: AXMDocumentExplorerComponent, selector: "axm-document-explorer", inputs: ["browseMode", "viewMode", "selectionMode", "showContextMenu"] }, { kind: "component", type: AXMFolderPathBreadcrumbsComponent, selector: "axm-folder-path-breadcrumbs" }, { kind: "component", type: AXMDocumentExplorerDetailPanelComponent, selector: "axm-document-explorer-detail-panel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
264
- }
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMDocumentDriveComponent, decorators: [{
266
- type: Component,
267
- args: [{ selector: 'axp-document-drive', standalone: true, imports: [
268
- CommonModule,
269
- RouterModule,
270
- AXMenuModule,
271
- AXButtonModule,
272
- AXButtonGroupModule,
273
- AXDropdownButtonModule,
274
- AXDropdownModule,
275
- AXTranslationModule,
276
- AXDecoratorModule,
277
- AXLoadingModule,
278
- AXBreadcrumbsModule,
279
- AXBadgeModule,
280
- AXSearchBoxModule,
281
- AXFormatModule,
282
- AXFileModule,
283
- AXPPageLayoutComponent,
284
- AXPThemeLayoutBlockComponent,
285
- AXDateTimeModule,
286
- AXMDocumentExplorerComponent,
287
- AXMFolderPathBreadcrumbsComponent,
288
- AXMDocumentExplorerDetailPanelComponent,
289
- ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
290
- AXPDocumentExplorerViewModel,
291
- {
292
- provide: AXPBasePage,
293
- useExisting: AXMDocumentDriveComponent
294
- }
295
- ], template: "<!-- Main Layout -->\n<axp-page-layout *translate=\"let t\">\n <axp-page-toolbar>\n <!-- Left Side Toolbar -->\n <axp-layout-prefix>\n @if(vm.hasMultipleSelectedItems() ) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}\n </span>\n <span (click)=\"vm.deselectAll()\" class=\"ax-text-sm ax-text-primary-500 ax-underline ax-cursor-pointer\">{{\n t('unselect', { scope: 'common' }) | async\n }}</span>\n </div>\n }\n <!---------->\n @else {\n <!-- Filter Dropdown -->\n <ax-button [text]=\"t(getFilterText(), { scope: rootConfig.config.i18n }) | async\">\n <ax-prefix>\n <ax-icon [icon]=\"getFilterIcon()\"></ax-icon>\n </ax-prefix>\n\n <ax-dropdown-panel>\n <ax-button-item-list class=\"ax-p-2\">\n @for(item of filterItems(); track item.key) {\n <ax-button-item (onClick)=\"setFilter(item.key)\"\n [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-- Search Box -->\n <ax-search-box (onValueChanged)=\"handleSearchChange($event)\" class=\"ax-w-72 ax-hidden md:ax-flex\"\n [placeholder]=\"t('actions.search', { scope: rootConfig.config.i18n }) | async\"><ax-clear-button></ax-clear-button></ax-search-box>\n }\n </axp-layout-prefix>\n\n <!-- Right Side Toolbar -->\n <axp-layout-suffix>\n <!-- Sort Dropdown -->\n <ax-button>\n <ax-icon\n [icon]=\"'fa-light fa-arrow-' + (vm.sortDirection() === 'asc' ? 'up' : 'down') + '-wide-short'\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n <!-- Sort By Options -->\n @for(item of sortItems(); track item.key) {\n <ax-button-item [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\"\n (onClick)=\"vm.setSortField(item.key)\" [selected]=\"vm.sortField() === item.key\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n <ax-divider></ax-divider>\n <!-- Sort Direction Options -->\n <ax-button-item [text]=\"(t('actions.sort-ascending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'asc'\" (onClick)=\"vm.setSortDirection('asc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-up-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item [text]=\"(t('actions.sort-descending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'desc'\" (onClick)=\"vm.setSortDirection('desc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-down-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n <!-- View Mode Toggle -->\n <ax-button>\n <ax-icon icon=\"fa-light {{ selectedViewMode().icon }}\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(item of viewsItems(); track item.key) {\n <!-- view mode items -->\n <ax-button-item [text]=\"(t('view-modes.' + item.key, { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.isViewMode(item.key)\" (onClick)=\"vm.setViewMode(item.key)\">\n <ax-prefix>\n <ax-icon icon=\"fa-light {{ item.icon }}\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n @if(item.break) {\n <ax-divider></ax-divider>\n }\n <!-- end of view mode items -->\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n @if(layoutService.isLarge()) {\n <!-- Detail Panel Toggle -->\n <ax-button (onClick)=\"vm.toggleDetailPanel()\">\n <ax-icon icon=\"{{ vm.isDetailPanelOpen() ? 'fa-solid fa-square-info' : 'fa-light fa-square-info' }}\"></ax-icon>\n </ax-button>\n }\n </axp-layout-suffix>\n </axp-page-toolbar>\n\n <!-- Content Section -->\n <axp-page-content class=\"ax-overflow-auto ax-flex ax-flex-row ax-gap-4\">\n <axm-document-explorer [selectionMode]=\"selectionMode()\"></axm-document-explorer>\n @if (vm.isDetailPanelOpen() && layoutService.isLarge()) {\n <axm-document-explorer-detail-panel class=\"ax-sticky ax-top-0 ax-z-50\"></axm-document-explorer-detail-panel>\n }\n </axp-page-content>\n\n <!-- Footer Section -->\n @if(!layoutService.isSmall()) {\n <axp-page-footer>\n <axp-layout-prefix>\n <axm-folder-path-breadcrumbs></axm-folder-path-breadcrumbs>\n </axp-layout-prefix>\n </axp-page-footer>\n }\n</axp-page-layout>" }]
296
- }], propDecorators: { handleCtrlKey: [{
297
- type: HostListener,
298
- args: ['document:keydown.control', ['$event']]
299
- }], handleCtrlKeyUp: [{
300
- type: HostListener,
301
- args: ['document:keyup.control', ['$event']]
302
- }] } });
303
-
304
- export { AXMDocumentDriveComponent };
305
- //# sourceMappingURL=acorex-modules-document-management-drive.component-B3BCzdVv.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-document-management-drive.component-B3BCzdVv.mjs","sources":["../../../../libs/modules/document-management/src/lib/features/document-explorer/views/detail-panel/detail-panel.component.ts","../../../../libs/modules/document-management/src/lib/features/document-explorer/views/detail-panel/detail-panel.component.html","../../../../libs/modules/document-management/src/lib/features/drive/drive.component.ts","../../../../libs/modules/document-management/src/lib/features/drive/drive.component.html"],"sourcesContent":["import { Component, inject, ViewEncapsulation } from \"@angular/core\";\nimport { AXPDocumentExplorerViewModel } from \"../../document-explorer.viewmodel\";\nimport { AXDecoratorModule } from \"@acorex/components/decorators\";\nimport { AXFormatModule } from \"@acorex/core/format\";\nimport { CommonModule } from \"@angular/common\";\nimport { AXButtonModule } from \"@acorex/components/button\";\nimport { AXTranslationModule } from \"@acorex/core/translation\";\n\n@Component({\n selector: 'axm-document-explorer-detail-panel',\n templateUrl: './detail-panel.component.html',\n styleUrls: ['./detail-panel.component.scss'],\n standalone: true,\n encapsulation: ViewEncapsulation.None,\n imports: [\n CommonModule,\n AXDecoratorModule,\n AXFormatModule,\n AXButtonModule,\n AXTranslationModule\n ]\n})\nexport class AXMDocumentExplorerDetailPanelComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n}\n","<!-- Multiple Selected -->\n@if(vm.hasMultipleSelectedItems()) {\n<div class=\"__header\" *translate=\"let t\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg fa-solid\"></i>\n <span> {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\"></div>\n}\n<!-- Single Selected -->\n@else {\n<!-- Info -->\n@let nodeInfo = vm.getNodeInfo((vm.selectedNode() ?? vm.currentFolder())!);\n<div class=\"__header\">\n <div class=\"__title\">\n <i class=\"fa-fw fa-lg {{ nodeInfo.icon }} fa-solid\"></i>\n <span>{{ nodeInfo.name }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"vm.closeDetailPanel()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n</div>\n<div class=\"__content\">\n @for(section of nodeInfo.sections; track section.title) {\n <div class=\"__section\">\n <div class=\"__title\">\n <span>{{ section.title }}</span>\n </div>\n <div class=\"__content\">\n @for(detail of section.details; track detail.title) {\n <div class=\"__row\">\n <div class=\"__title\">\n <span>{{ detail.title }}</span>\n </div>\n <div class=\"__content\">\n @if(detail.format) {\n <span>{{ detail.content | format : detail.format | async }}</span>\n } @else {\n <span>{{ detail.content ?? '---' }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n</div>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n HostListener,\n inject,\n OnInit,\n signal,\n untracked,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPBasePage, AXPBasePageComponent, AXPPageLayoutComponent } from '@acorex/platform/themes/default';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPFileTypeProviderService } from '@acorex/platform/common';\nimport {\n AXPThemeLayoutBlockComponent,\n} from '@acorex/platform/themes/shared';\n\n\n\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentExplorerComponent, AXPDocumentExplorerViewModel } from '../document-explorer';\nimport { AXMDocumentExplorerDetailPanelComponent } from '../document-explorer/views/detail-panel/detail-panel.component';\nimport { AXMDocumentManagerService, AXMFolderPathBreadcrumbsComponent } from '../shared';\nimport { AXMDriveScope, AXMDocumentSelectionMode } from '../shared/document-manager.types';\nimport { AXPActionMenuItem, AXPBreadcrumbItem, AXPExecuteCommand } from '@acorex/platform/core';\n\n@Component({\n selector: 'axp-document-drive',\n templateUrl: './drive.component.html',\n styleUrls: ['./drive.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n AXMenuModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXDropdownButtonModule,\n AXDropdownModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBreadcrumbsModule,\n AXBadgeModule,\n AXSearchBoxModule,\n AXFormatModule,\n AXFileModule,\n AXPPageLayoutComponent,\n AXPThemeLayoutBlockComponent,\n AXDateTimeModule,\n AXMDocumentExplorerComponent,\n AXMFolderPathBreadcrumbsComponent,\n AXMDocumentExplorerDetailPanelComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n AXPDocumentExplorerViewModel,\n {\n provide: AXPBasePage,\n useExisting: AXMDocumentDriveComponent\n }\n ],\n})\nexport class AXMDocumentDriveComponent extends AXPBasePageComponent implements OnInit {\n\n //#region ---------------- Services & Dependencies ----------------\n\n protected readonly rootConfig = RootConfig;\n private readonly fileTypeService = inject(AXPFileTypeProviderService);\n private readonly driveService = inject(AXMDocumentManagerService);\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n protected readonly router = inject(Router);\n protected readonly activatedRoute = inject(ActivatedRoute);\n\n //#endregion\n\n\n //#region ---------------- View Properties ----------------\n\n protected readonly filterItems = signal<Array<{ key: string; textKey: string; icon: string }>>([]);\n public selectedFilter = signal<string>('all');\n\n protected readonly sortItems = signal([\n { key: 'name', textKey: 'actions.sort-by-name', icon: 'fa-light fa-font' },\n { key: 'modified', textKey: 'actions.sort-by-date', icon: 'fa-light fa-calendar' },\n { key: 'size', textKey: 'actions.sort-by-size', icon: 'fa-light fa-weight-hanging' },\n ]);\n\n protected readonly viewsItems = signal([\n { key: 'large-icons', icon: 'fa-light fa-grid' },\n { key: 'small-icons', icon: 'fa-light fa-grid', break: true },\n { key: 'large-tiles', icon: 'fa-grid-2' },\n { key: 'small-tiles', icon: 'fa-grid-2', break: true },\n { key: 'details', icon: 'fa-bars', break: true },\n { key: 'list', icon: 'fa-list' },\n ]);\n\n protected readonly selectedViewMode = computed(() => this.viewsItems().find((item) => item.key === this.vm.viewMode()) || this.viewsItems()[0]);\n protected readonly selectionMode = signal<AXMDocumentSelectionMode>('single');\n protected documentExplorer = viewChild(AXMDocumentExplorerComponent);\n\n //#endregion\n\n\n //#region ---------------- Computed Properties ----------------\n\n protected readonly selectedSort = computed(() => {\n const items = this.sortItems();\n return items.find((item) => item.key === this.vm.sortField()) || items[0];\n });\n\n //#endregion\n\n\n //#region ---------------- Effects ----------------\n\n #navigateEffect = effect(() => {\n const navigatingFolderId = this.vm.navigatingFolderId();\n if (navigatingFolderId) {\n this.handleNavigateToFolder(navigatingFolderId);\n }\n });\n\n #loadingEffect = effect(() => {\n const isLoading = this.vm.isLoading();\n untracked(() => {\n this.layoutService.setNavigationLoading(isLoading);\n });\n });\n\n //#endregion\n\n\n //#region ---------------- Lifecycle Hooks ----------------\n\n override async ngOnInit() {\n super.ngOnInit();\n await this.loadFilterItems();\n await this.vm.initialize({ browseMode: 'file' });\n this.activatedRoute.paramMap.subscribe(async () => {\n this.loadDrive();\n });\n }\n\n //#endregion\n\n\n //#region ---------------- Event Handlers ----------------\n\n async handleSearchChange(event: any) {\n console.log(event);\n const result = await this.driveService.searchNodes(event.value, AXMDriveScope.Platform);\n console.log(result);\n }\n\n @HostListener('document:keydown.control', ['$event'])\n handleCtrlKey(e: KeyboardEvent) {\n this.selectionMode.set('multiple');\n }\n\n @HostListener('document:keyup.control', ['$event'])\n handleCtrlKeyUp(e: KeyboardEvent) {\n this.selectionMode.set('single');\n }\n\n protected handleNavigateToFolder(folderId: string) {\n this.router.navigate([`${this.sessionService.application?.name}/drive/my/${folderId}`]);\n }\n\n //#endregion\n\n\n //#region ---------------- Data Loading Methods ----------------\n\n private async loadDrive() {\n const folderId = this.activatedRoute.snapshot.paramMap.get('id');\n if (folderId) {\n await this.vm.loadFolderContents(folderId);\n } else {\n const root = await this.driveService.getRoot(AXMDriveScope.Platform);\n if (root.result) {\n await this.router.navigate([`${this.sessionService.application?.name}/drive/my/${root.result.id}`], {\n replaceUrl: true,\n });\n }\n }\n //\n this.recompute();\n }\n\n async loadFilterItems() {\n const types = await this.fileTypeService.items();\n const items = [\n { key: 'all', textKey: 'file-types.all', icon: 'fa-light fa-folder-closed' },\n ...types.map((type) => ({\n key: type.name,\n textKey: `file-types.${type.name}`,\n icon: type.icon || 'fa-light fa-file',\n })),\n ];\n this.filterItems.set(items);\n }\n\n //#endregion\n\n\n //#region ---------------- Filter Methods ----------------\n\n protected setFilter(key: string): void {\n this.selectedFilter.set(key);\n }\n\n protected getFilterIcon(): string {\n if (this.selectedFilter() === 'all') {\n return 'fa-light fa-folder-closed';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.icon || 'fa-light fa-file';\n }\n\n protected getFilterText(): string {\n if (this.selectedFilter() === 'all') {\n return 'file-types.all';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.textKey || 'file-types.all';\n }\n\n //#endregion\n\n\n //#region ---------------- Page Configuration Overrides ----------------\n\n override async getPrimaryMenuItems(): Promise<AXPActionMenuItem[]> {\n if (this.vm.hasMultipleSelectedItems()) {\n return [\n {\n name: 'deleteItems',\n title: 't(\"deleteItems\")',\n icon: 'fa-light fa-trash-can',\n color: 'danger',\n }\n ];\n }\n return [\n {\n name: 'new-folder',\n title: 't(\"add-item\")',\n icon: 'fa-light fa-plus',\n items: await this.vm.getFolderAddMenuItems()\n },\n ]\n }\n\n override async getSecondaryMenuItems(): Promise<AXPActionMenuItem[]> {\n if (this.vm.hasMultipleSelectedItems()) {\n return [\n {\n name: 'delete',\n title: 't(\"delete\")',\n icon: 'fa-light fa-trash-can',\n color: 'danger',\n }\n ];\n }\n return this.vm.getFolderActionMenuItems();\n }\n\n override getPageTitle(): string {\n if (this.vm.isRoot()) {\n return 'Drive';\n }\n return this.vm.currentFolder()?.name || '';\n }\n\n override async getPageDescription(): Promise<string> {\n const count = await this.vm.itemsCount();\n const size = await this.vm.availableSpace();\n const formattedSize = await this.formatService.format(size, 'filesize');\n return this.translateService.translateAsync('my-drive.description', {\n scope: this.rootConfig.config.i18n,\n params: {\n count,\n size: formattedSize\n }\n });\n }\n\n override getPageBreadcrumbs(): AXPBreadcrumbItem[] | Promise<AXPBreadcrumbItem[]> {\n return [\n {\n title: this.translateService.translateSync('entity.home'),\n icon: 'fa-solid fa-home ax-text-xs ax-me-2',\n },\n {\n title: 'My Drive',\n },\n {\n title: this.vm.currentFolder()?.name || '',\n }\n ];\n }\n\n override execute(command: AXPExecuteCommand): void | Promise<void> {\n switch (command.name) {\n case 'new-folder':\n const folderId = command.options?.['folderId'] as string;\n if (folderId) {\n this.driveService.showCreateFolderDialog(folderId);\n }\n break;\n }\n }\n\n //#endregion\n\n}\n","<!-- Main Layout -->\n<axp-page-layout *translate=\"let t\">\n <axp-page-toolbar>\n <!-- Left Side Toolbar -->\n <axp-layout-prefix>\n @if(vm.hasMultipleSelectedItems() ) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedCount() }} {{ t('itemsSelected', { scope: 'common' }) | async }}\n </span>\n <span (click)=\"vm.deselectAll()\" class=\"ax-text-sm ax-text-primary-500 ax-underline ax-cursor-pointer\">{{\n t('unselect', { scope: 'common' }) | async\n }}</span>\n </div>\n }\n <!---------->\n @else {\n <!-- Filter Dropdown -->\n <ax-button [text]=\"t(getFilterText(), { scope: rootConfig.config.i18n }) | async\">\n <ax-prefix>\n <ax-icon [icon]=\"getFilterIcon()\"></ax-icon>\n </ax-prefix>\n\n <ax-dropdown-panel>\n <ax-button-item-list class=\"ax-p-2\">\n @for(item of filterItems(); track item.key) {\n <ax-button-item (onClick)=\"setFilter(item.key)\"\n [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-- Search Box -->\n <ax-search-box (onValueChanged)=\"handleSearchChange($event)\" class=\"ax-w-72 ax-hidden md:ax-flex\"\n [placeholder]=\"t('actions.search', { scope: rootConfig.config.i18n }) | async\"><ax-clear-button></ax-clear-button></ax-search-box>\n }\n </axp-layout-prefix>\n\n <!-- Right Side Toolbar -->\n <axp-layout-suffix>\n <!-- Sort Dropdown -->\n <ax-button>\n <ax-icon\n [icon]=\"'fa-light fa-arrow-' + (vm.sortDirection() === 'asc' ? 'up' : 'down') + '-wide-short'\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n <!-- Sort By Options -->\n @for(item of sortItems(); track item.key) {\n <ax-button-item [text]=\"(t(item.textKey, { scope: rootConfig.config.i18n }) | async)!\"\n (onClick)=\"vm.setSortField(item.key)\" [selected]=\"vm.sortField() === item.key\">\n <ax-prefix>\n <ax-icon [icon]=\"item.icon\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n <ax-divider></ax-divider>\n <!-- Sort Direction Options -->\n <ax-button-item [text]=\"(t('actions.sort-ascending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'asc'\" (onClick)=\"vm.setSortDirection('asc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-up-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item [text]=\"(t('actions.sort-descending', { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.sortDirection() === 'desc'\" (onClick)=\"vm.setSortDirection('desc')\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-arrow-down-wide-short\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n <!-- View Mode Toggle -->\n <ax-button>\n <ax-icon icon=\"fa-light {{ selectedViewMode().icon }}\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(item of viewsItems(); track item.key) {\n <!-- view mode items -->\n <ax-button-item [text]=\"(t('view-modes.' + item.key, { scope: rootConfig.config.i18n }) | async)!\"\n [selected]=\"vm.isViewMode(item.key)\" (onClick)=\"vm.setViewMode(item.key)\">\n <ax-prefix>\n <ax-icon icon=\"fa-light {{ item.icon }}\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n @if(item.break) {\n <ax-divider></ax-divider>\n }\n <!-- end of view mode items -->\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n\n @if(layoutService.isLarge()) {\n <!-- Detail Panel Toggle -->\n <ax-button (onClick)=\"vm.toggleDetailPanel()\">\n <ax-icon icon=\"{{ vm.isDetailPanelOpen() ? 'fa-solid fa-square-info' : 'fa-light fa-square-info' }}\"></ax-icon>\n </ax-button>\n }\n </axp-layout-suffix>\n </axp-page-toolbar>\n\n <!-- Content Section -->\n <axp-page-content class=\"ax-overflow-auto ax-flex ax-flex-row ax-gap-4\">\n <axm-document-explorer [selectionMode]=\"selectionMode()\"></axm-document-explorer>\n @if (vm.isDetailPanelOpen() && layoutService.isLarge()) {\n <axm-document-explorer-detail-panel class=\"ax-sticky ax-top-0 ax-z-50\"></axm-document-explorer-detail-panel>\n }\n </axp-page-content>\n\n <!-- Footer Section -->\n @if(!layoutService.isSmall()) {\n <axp-page-footer>\n <axp-layout-prefix>\n <axm-folder-path-breadcrumbs></axm-folder-path-breadcrumbs>\n </axp-layout-prefix>\n </axp-page-footer>\n }\n</axp-page-layout>"],"names":["i2","i3","i4","i5","i6"],"mappings":"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"}