@acorex/modules 20.2.0-next.2 → 20.2.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/auth/index.d.ts +1 -0
  2. package/common/index.d.ts +1 -8
  3. package/contact-management/index.d.ts +69 -2
  4. package/conversation/README.md +1 -1
  5. package/conversation/index.d.ts +180 -121
  6. package/data-management/index.d.ts +5 -12
  7. package/document-management/index.d.ts +51 -4
  8. package/fesm2022/{acorex-modules-application-management-module-designer.component-udoks-Ef.mjs → acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs} +7 -7
  9. package/fesm2022/{acorex-modules-application-management-module-designer.component-udoks-Ef.mjs.map → acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs.map} +1 -1
  10. package/fesm2022/acorex-modules-application-management.mjs +41 -41
  11. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  12. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BxqN76H7.mjs → acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs} +50 -49
  13. package/fesm2022/acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs.map +1 -0
  14. package/fesm2022/{acorex-modules-auth-app-chooser.component-5FbgqbVo.mjs → acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs} +5 -5
  15. package/fesm2022/{acorex-modules-auth-app-chooser.component-5FbgqbVo.mjs.map → acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-blank.layout-C8NsXB9K.mjs → acorex-modules-auth-blank.layout-ZjroQcdq.mjs} +4 -4
  17. package/fesm2022/{acorex-modules-auth-blank.layout-C8NsXB9K.mjs.map → acorex-modules-auth-blank.layout-ZjroQcdq.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-auth-login.module-CmMM4TpQ.mjs → acorex-modules-auth-login.module-D1aa1F6G.mjs} +8 -8
  19. package/fesm2022/{acorex-modules-auth-login.module-CmMM4TpQ.mjs.map → acorex-modules-auth-login.module-D1aa1F6G.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-auth-master.layout-eX5-7AeO.mjs → acorex-modules-auth-master.layout-CGQmSlGQ.mjs} +5 -5
  21. package/fesm2022/{acorex-modules-auth-master.layout-eX5-7AeO.mjs.map → acorex-modules-auth-master.layout-CGQmSlGQ.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-auth-oauth-callback.component-C9s-5c7F.mjs → acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs} +5 -5
  23. package/fesm2022/{acorex-modules-auth-oauth-callback.component-C9s-5c7F.mjs.map → acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-auth-password.component-CDrYHh1x.mjs → acorex-modules-auth-password.component-Cb3FJ1DZ.mjs} +5 -5
  25. package/fesm2022/{acorex-modules-auth-password.component-CDrYHh1x.mjs.map → acorex-modules-auth-password.component-Cb3FJ1DZ.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-auth-password.component-r_Lh8oGN.mjs → acorex-modules-auth-password.component-CiWdX7f_.mjs} +5 -5
  27. package/fesm2022/{acorex-modules-auth-password.component-r_Lh8oGN.mjs.map → acorex-modules-auth-password.component-CiWdX7f_.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-auth-routes-CMdsDZud.mjs → acorex-modules-auth-routes-pae8qpX9.mjs} +2 -2
  29. package/fesm2022/{acorex-modules-auth-routes-CMdsDZud.mjs.map → acorex-modules-auth-routes-pae8qpX9.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-BdK5T-8X.mjs → acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs} +4 -4
  31. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-BdK5T-8X.mjs.map → acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs → acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs} +4 -4
  33. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs.map → acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-auth-two-factor.module-YV9pDOnB.mjs → acorex-modules-auth-two-factor.module-DtcoHPH4.mjs} +7 -7
  35. package/fesm2022/{acorex-modules-auth-two-factor.module-YV9pDOnB.mjs.map → acorex-modules-auth-two-factor.module-DtcoHPH4.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-auth-user-sessions.component-KI9dYs78.mjs → acorex-modules-auth-user-sessions.component-sI6P2joA.mjs} +5 -5
  37. package/fesm2022/{acorex-modules-auth-user-sessions.component-KI9dYs78.mjs.map → acorex-modules-auth-user-sessions.component-sI6P2joA.mjs.map} +1 -1
  38. package/fesm2022/acorex-modules-auth.mjs +1 -1
  39. package/fesm2022/acorex-modules-calendar-management.mjs +22 -22
  40. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  41. package/fesm2022/{acorex-modules-common-search-popup.component-DbTj01Wz.mjs → acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs} +8 -8
  42. package/fesm2022/{acorex-modules-common-search-popup.component-DbTj01Wz.mjs.map → acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-D_6STmWm.mjs → acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs} +7 -7
  44. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-D_6STmWm.mjs.map → acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs.map} +1 -1
  45. package/fesm2022/acorex-modules-common.mjs +1222 -1
  46. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  47. package/fesm2022/{acorex-modules-contact-management-acorex-modules-contact-management-CM72FkGM.mjs → acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs} +281 -54
  48. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs.map +1 -0
  49. package/fesm2022/{acorex-modules-contact-management-address-type.entity-CW0fx3v8.mjs → acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-contact-management-address-type.entity-CW0fx3v8.mjs.map → acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-contact-management-contact-address.entity-D5OGWsSx.mjs → acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-contact-management-contact-address.entity-D5OGWsSx.mjs.map → acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-Cpdd-Xwb.mjs → acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-Cpdd-Xwb.mjs.map → acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-B_gQ7mEo.mjs → acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs} +2 -2
  56. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-B_gQ7mEo.mjs.map → acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs.map} +1 -1
  57. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-BwYBaS8B.mjs → acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-BwYBaS8B.mjs.map → acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-CDbm4Rq3.mjs → acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-CDbm4Rq3.mjs.map → acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BpNDJPVs.mjs → acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BpNDJPVs.mjs.map → acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs.map} +1 -1
  63. package/fesm2022/acorex-modules-contact-management.mjs +1 -1
  64. package/fesm2022/acorex-modules-content-management.mjs +14 -36
  65. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  66. package/fesm2022/acorex-modules-conversation.mjs +1549 -1324
  67. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  68. package/fesm2022/acorex-modules-dashboard-management.mjs +76 -75
  69. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  70. package/fesm2022/acorex-modules-data-management.mjs +140 -126
  71. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  72. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-C7ot6PfT.mjs → acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs} +1402 -389
  73. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs.map +1 -0
  74. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-C6pop0RM.mjs → acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs} +5 -5
  75. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-C6pop0RM.mjs.map → acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs.map} +1 -1
  76. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs → acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs} +5 -5
  77. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs.map → acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs.map} +1 -1
  78. package/fesm2022/{acorex-modules-document-management-details-view.component-CzTg3hha.mjs → acorex-modules-document-management-details-view.component-CMI2Eokj.mjs} +5 -5
  79. package/fesm2022/{acorex-modules-document-management-details-view.component-CzTg3hha.mjs.map → acorex-modules-document-management-details-view.component-CMI2Eokj.mjs.map} +1 -1
  80. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs → acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs} +5 -5
  81. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs.map → acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs.map} +1 -1
  82. package/fesm2022/{acorex-modules-document-management-drive.component-TzRLr7rb.mjs → acorex-modules-document-management-drive.component-DoGdTL3n.mjs} +11 -10
  83. package/fesm2022/acorex-modules-document-management-drive.component-DoGdTL3n.mjs.map +1 -0
  84. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BeKFvgYU.mjs → acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs} +5 -5
  85. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BeKFvgYU.mjs.map → acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs.map} +1 -1
  86. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CQyiGE99.mjs → acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs} +5 -5
  87. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CQyiGE99.mjs.map → acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs.map} +1 -1
  88. package/fesm2022/{acorex-modules-document-management-link-dialog.component-CPuOuvu-.mjs → acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs} +4 -4
  89. package/fesm2022/{acorex-modules-document-management-link-dialog.component-CPuOuvu-.mjs.map → acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs.map} +1 -1
  90. package/fesm2022/{acorex-modules-document-management-list-view.component-CWGGArxw.mjs → acorex-modules-document-management-list-view.component-C4VFnACA.mjs} +5 -5
  91. package/fesm2022/{acorex-modules-document-management-list-view.component-CWGGArxw.mjs.map → acorex-modules-document-management-list-view.component-C4VFnACA.mjs.map} +1 -1
  92. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs → acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs} +4 -4
  93. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs.map → acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs.map} +1 -1
  94. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-C_J1rPak.mjs → acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs} +4 -4
  95. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-C_J1rPak.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs.map} +1 -1
  96. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-By_NgUX6.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs} +4 -4
  97. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-By_NgUX6.mjs.map → acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs.map} +1 -1
  98. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-zwCw3v1w.mjs → acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs} +4 -4
  99. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-zwCw3v1w.mjs.map → acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs.map} +1 -1
  100. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs → acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs} +10 -2
  101. package/fesm2022/acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs.map +1 -0
  102. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-MPkYZl2p.mjs → acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs} +5 -5
  103. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-MPkYZl2p.mjs.map → acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs.map} +1 -1
  104. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CLF6b1Io.mjs → acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs} +4 -4
  105. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CLF6b1Io.mjs.map → acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs.map} +1 -1
  106. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-B8zNvOUv.mjs → acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs} +4 -4
  107. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-B8zNvOUv.mjs.map → acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs.map} +1 -1
  108. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-DRVLlW1e.mjs → acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs} +5 -5
  109. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-DRVLlW1e.mjs.map → acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs.map} +1 -1
  110. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C1E8RKYM.mjs → acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs} +5 -5
  111. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C1E8RKYM.mjs.map → acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs.map} +1 -1
  112. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  113. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-zz8KU2BM.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs} +65 -67
  114. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs.map +1 -0
  115. package/fesm2022/{acorex-modules-form-template-management-category.entity-g5YGQjj3.mjs → acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs} +2 -2
  116. package/fesm2022/{acorex-modules-form-template-management-category.entity-g5YGQjj3.mjs.map → acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs.map} +1 -1
  117. package/fesm2022/{acorex-modules-form-template-management-designer.page-DQorNK3f.mjs → acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs} +4 -4
  118. package/fesm2022/{acorex-modules-form-template-management-designer.page-DQorNK3f.mjs.map → acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs.map} +1 -1
  119. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-BFPqDVO3.mjs → acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs} +2 -2
  120. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-BFPqDVO3.mjs.map → acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs.map} +1 -1
  121. package/fesm2022/{acorex-modules-form-template-management-settings.provider-DYbrgJI7.mjs → acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs} +2 -2
  122. package/fesm2022/{acorex-modules-form-template-management-settings.provider-DYbrgJI7.mjs.map → acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs.map} +1 -1
  123. package/fesm2022/acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs +224 -0
  124. package/fesm2022/acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs.map +1 -0
  125. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-CCL7xNSm.mjs → acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs} +5 -5
  126. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-CCL7xNSm.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs.map} +1 -1
  127. package/fesm2022/{acorex-modules-form-template-management-template.entity-XNBsmQZY.mjs → acorex-modules-form-template-management-template.entity-CQm29n5v.mjs} +2 -2
  128. package/fesm2022/{acorex-modules-form-template-management-template.entity-XNBsmQZY.mjs.map → acorex-modules-form-template-management-template.entity-CQm29n5v.mjs.map} +1 -1
  129. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-Bw9VbGx7.mjs → acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs} +12 -19
  130. package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs.map +1 -0
  131. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  132. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs → acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs} +31 -35
  133. package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs.map +1 -0
  134. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs → acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs} +5 -5
  135. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs.map → acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs.map} +1 -1
  136. package/fesm2022/acorex-modules-issue-management.mjs +1 -1
  137. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs +1975 -0
  138. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs.map +1 -0
  139. package/fesm2022/acorex-modules-locale-management-profiles-MJ9xFTtp.mjs +19 -0
  140. package/fesm2022/acorex-modules-locale-management-profiles-MJ9xFTtp.mjs.map +1 -0
  141. package/fesm2022/{acorex-modules-common-settings.provider-DPVsF4c9.mjs → acorex-modules-locale-management-settings.provider-PKnqTses.mjs} +6 -6
  142. package/fesm2022/acorex-modules-locale-management-settings.provider-PKnqTses.mjs.map +1 -0
  143. package/fesm2022/acorex-modules-locale-management.mjs +2 -0
  144. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -0
  145. package/fesm2022/acorex-modules-location-management.mjs +3139 -0
  146. package/fesm2022/acorex-modules-location-management.mjs.map +1 -0
  147. package/fesm2022/acorex-modules-log-management.mjs +160 -35
  148. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  149. package/fesm2022/acorex-modules-notification-management.mjs +149 -123
  150. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  151. package/fesm2022/{acorex-modules-organization-management-add-item.component-Dr-bwC4K.mjs → acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs} +4 -4
  152. package/fesm2022/{acorex-modules-organization-management-add-item.component-Dr-bwC4K.mjs.map → acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs.map} +1 -1
  153. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-a2JPiCy9.mjs → acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs} +5 -5
  154. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-a2JPiCy9.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs.map} +1 -1
  155. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-BkfSow3s.mjs → acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs} +4 -4
  156. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-BkfSow3s.mjs.map → acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs.map} +1 -1
  157. package/fesm2022/{acorex-modules-organization-management-org-chart.page-CXhtYrCS.mjs → acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs} +15 -14
  158. package/fesm2022/acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs.map +1 -0
  159. package/fesm2022/{acorex-modules-organization-management-settings.provider-hlbUXugb.mjs → acorex-modules-organization-management-settings.provider-feVwZnkw.mjs} +6 -30
  160. package/fesm2022/acorex-modules-organization-management-settings.provider-feVwZnkw.mjs.map +1 -0
  161. package/fesm2022/acorex-modules-organization-management.mjs +128 -124
  162. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  163. package/fesm2022/{acorex-modules-platform-management-list-version.component-BOfUQDwo.mjs → acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs} +4 -4
  164. package/fesm2022/{acorex-modules-platform-management-list-version.component-BOfUQDwo.mjs.map → acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs.map} +1 -1
  165. package/fesm2022/acorex-modules-platform-management.mjs +91 -303
  166. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  167. package/fesm2022/acorex-modules-project-management.mjs +232 -453
  168. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  169. package/fesm2022/{acorex-modules-report-management-report-create-root.component-Cv88TDx7.mjs → acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs} +4 -4
  170. package/fesm2022/{acorex-modules-report-management-report-create-root.component-Cv88TDx7.mjs.map → acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs.map} +1 -1
  171. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-DHu-kyCd.mjs → acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs} +7 -7
  172. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-DHu-kyCd.mjs.map → acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs.map} +1 -1
  173. package/fesm2022/acorex-modules-report-management.mjs +24 -24
  174. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  175. package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
  176. package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
  177. package/fesm2022/acorex-modules-security-management.mjs +97 -61
  178. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  179. package/fesm2022/{acorex-modules-settings-management-setting-page.component-cG4ykm2g.mjs → acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs} +12 -6
  180. package/fesm2022/acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs.map +1 -0
  181. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CrEK2N1U.mjs → acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs} +4 -4
  182. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CrEK2N1U.mjs.map → acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs.map} +1 -1
  183. package/fesm2022/acorex-modules-settings-management.mjs +9 -7
  184. package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
  185. package/fesm2022/acorex-modules-task-management.mjs +5937 -0
  186. package/fesm2022/acorex-modules-task-management.mjs.map +1 -0
  187. package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
  188. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  189. package/fesm2022/acorex-modules-training-management.mjs +43 -43
  190. package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
  191. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-DnSdOSmj.mjs → acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs} +60 -29
  192. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs.map +1 -0
  193. package/fesm2022/{acorex-modules-workflow-management-task-board.page-Bzu4j4VW.mjs → acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs} +197 -183
  194. package/fesm2022/acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs.map +1 -0
  195. package/fesm2022/acorex-modules-workflow-management.mjs +1 -1
  196. package/locale-management/README.md +3 -0
  197. package/locale-management/index.d.ts +182 -0
  198. package/location-management/README.md +3 -0
  199. package/location-management/index.d.ts +166 -0
  200. package/notification-management/index.d.ts +14 -5
  201. package/package.json +17 -5
  202. package/task-management/README.md +189 -0
  203. package/task-management/index.d.ts +320 -0
  204. package/workflow-management/index.d.ts +8 -3
  205. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BxqN76H7.mjs.map +0 -1
  206. package/fesm2022/acorex-modules-common-acorex-modules-common-D06CT4CO.mjs +0 -1657
  207. package/fesm2022/acorex-modules-common-acorex-modules-common-D06CT4CO.mjs.map +0 -1
  208. package/fesm2022/acorex-modules-common-settings.provider-DPVsF4c9.mjs.map +0 -1
  209. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-CM72FkGM.mjs.map +0 -1
  210. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C7ot6PfT.mjs.map +0 -1
  211. package/fesm2022/acorex-modules-document-management-drive.component-TzRLr7rb.mjs.map +0 -1
  212. package/fesm2022/acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs.map +0 -1
  213. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-zz8KU2BM.mjs.map +0 -1
  214. package/fesm2022/acorex-modules-form-template-management-template-picker.component-DgH_DUIB.mjs +0 -196
  215. package/fesm2022/acorex-modules-form-template-management-template-picker.component-DgH_DUIB.mjs.map +0 -1
  216. package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-Bw9VbGx7.mjs.map +0 -1
  217. package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs.map +0 -1
  218. package/fesm2022/acorex-modules-organization-management-org-chart.page-CXhtYrCS.mjs.map +0 -1
  219. package/fesm2022/acorex-modules-organization-management-settings.provider-hlbUXugb.mjs.map +0 -1
  220. package/fesm2022/acorex-modules-settings-management-setting-page.component-cG4ykm2g.mjs.map +0 -1
  221. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-DnSdOSmj.mjs.map +0 -1
  222. package/fesm2022/acorex-modules-workflow-management-task-board.page-Bzu4j4VW.mjs.map +0 -1
@@ -29,6 +29,9 @@ import * as i3$4 from '@acorex/platform/workflow';
29
29
  import { AXPWorkflowAction, AXPWorkflowService, AXPWorkflowModule } from '@acorex/platform/workflow';
30
30
  import { AXPopupService } from '@acorex/components/popup';
31
31
  import { AXUploaderService } from '@acorex/components/uploader';
32
+ import { AXDialogService } from '@acorex/components/dialog';
33
+ import * as i3$1 from '@acorex/core/translation';
34
+ import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
32
35
  import * as i1$4 from '@acorex/platform/layout/components';
33
36
  import { AXPComponentSlotModule, AXP_TASK_BADGE_PROVIDERS } from '@acorex/platform/layout/components';
34
37
  import * as i1$3 from '@angular/common';
@@ -38,12 +41,11 @@ import { AXButtonModule } from '@acorex/components/button';
38
41
  import { AXTextBoxModule } from '@acorex/components/text-box';
39
42
  import { AXCheckBoxModule } from '@acorex/components/check-box';
40
43
  import { AXPPlatformScope } from '@acorex/platform/core';
41
- import { AXDialogService } from '@acorex/components/dialog';
42
44
  import { AXFileService } from '@acorex/core/file';
43
45
  import { castArray, set as set$1, get as get$1, cloneDeep } from 'lodash-es';
44
- import * as i3$1 from '@acorex/core/translation';
45
- import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
46
46
  import { AXBasePageComponent } from '@acorex/components/page';
47
+ import * as i5 from '@acorex/components/dropdown-button';
48
+ import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
47
49
  import { AXLoadingModule } from '@acorex/components/loading';
48
50
  import * as i3$3 from '@acorex/components/menu';
49
51
  import { AXMenuModule } from '@acorex/components/menu';
@@ -64,6 +66,12 @@ const RootConfig = {
64
66
  icon: 'fa-light fa-books',
65
67
  },
66
68
  entities: {
69
+ review: {
70
+ name: 'Review',
71
+ title: `t("review", { scope: "${config.i18n}" })`,
72
+ titlePlural: `t("reviewPlural", { scope: "${config.i18n}" })`,
73
+ icon: 'fa-light fa-file-pen',
74
+ },
67
75
  folder: {
68
76
  name: 'Folder',
69
77
  title: `t("folder", { scope: "${config.i18n}" })`,
@@ -123,14 +131,16 @@ class AXMEntityProvider {
123
131
  return (await Promise.resolve().then(function () { return index$1; })).documentTypeFactory(this.injector);
124
132
  case RootConfig.entities.folder.name:
125
133
  return (await Promise.resolve().then(function () { return index$1; })).folderFactory(this.injector);
134
+ case RootConfig.entities.review.name:
135
+ return (await Promise.resolve().then(function () { return index$1; })).reviewFactory(this.injector);
126
136
  }
127
137
  }
128
138
  return null;
129
139
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
131
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMEntityProvider }); }
140
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
141
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEntityProvider }); }
132
142
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMEntityProvider, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEntityProvider, decorators: [{
134
144
  type: Injectable
135
145
  }] });
136
146
 
@@ -151,6 +161,13 @@ const AXMPermissionsKeys = {
151
161
  Delete: 'document-management:driver:delete',
152
162
  Create: 'document-management:driver:create',
153
163
  },
164
+ Review: {
165
+ Management: 'document-management:review:manage',
166
+ View: 'document-management:review:view',
167
+ Edit: 'document-management:review:edit',
168
+ Delete: 'document-management:review:delete',
169
+ Create: 'document-management:document-type:create',
170
+ },
154
171
  },
155
172
  };
156
173
 
@@ -195,6 +212,15 @@ class AXMMenuProvider {
195
212
  badgeKey: 'badge-2',
196
213
  priority: 1,
197
214
  },
215
+ {
216
+ text: `t("document-review-title", { scope: "${RootConfig.config.i18n}" })`,
217
+ path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.document.name),
218
+ icon: RootConfig.entities.review.icon,
219
+ data: {
220
+ // requiredPermission: [AXMPermissionsKeys.DocumentManagement.Review.Management]
221
+ },
222
+ priority: 4,
223
+ },
198
224
  ],
199
225
  },
200
226
  ]);
@@ -250,13 +276,19 @@ class AXMDocumentServiceImpl extends AXMDocumentService {
250
276
  async searchFiles(_searchTerm, _rootFolderId) {
251
277
  throw new Error('Not implemented');
252
278
  }
253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
254
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentServiceImpl }); }
279
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
280
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentServiceImpl }); }
255
281
  }
256
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentServiceImpl, decorators: [{
282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentServiceImpl, decorators: [{
257
283
  type: Injectable
258
284
  }], ctorParameters: () => [] });
259
285
 
286
+ var document_service = /*#__PURE__*/Object.freeze({
287
+ __proto__: null,
288
+ AXMDocumentService: AXMDocumentService,
289
+ AXMDocumentServiceImpl: AXMDocumentServiceImpl
290
+ });
291
+
260
292
  async function documentFactory(injector) {
261
293
  const dataService = injector.get(AXMDocumentService);
262
294
  const i18n = RootConfig.config.i18n;
@@ -264,16 +296,32 @@ async function documentFactory(injector) {
264
296
  module: RootConfig.module.name,
265
297
  name: RootConfig.entities.document.name,
266
298
  source: '',
267
- title: RootConfig.entities.document.title,
299
+ title: RootConfig.entities.review.title,
268
300
  formats: {
269
- individual: RootConfig.entities.document.title,
270
- plural: RootConfig.entities.document.titlePlural,
301
+ individual: RootConfig.entities.review.title,
302
+ plural: RootConfig.entities.review.titlePlural,
271
303
  searchResult: {
272
304
  title: '{{ title }}',
273
305
  description: RootConfig.module.title,
274
306
  },
275
307
  },
276
- relatedEntities: [],
308
+ relatedEntities: [
309
+ {
310
+ entity: `${RootConfig.module.name}.${RootConfig.entities.review.name}`,
311
+ columns: ['reviewerId', 'status', 'comment', 'reviewedAt', 'modifiedAt', 'modifiedBy'],
312
+ conditions: [
313
+ {
314
+ name: 'documentId',
315
+ operator: {
316
+ type: 'equal',
317
+ },
318
+ value: '{{context.eval("id")}}',
319
+ },
320
+ ],
321
+ // hidden: '{{context.eval("toggle")}}',
322
+ actions: [],
323
+ },
324
+ ],
277
325
  groups: [
278
326
  {
279
327
  id: 'section',
@@ -289,9 +337,15 @@ async function documentFactory(injector) {
289
337
  sort: {
290
338
  enabled: true,
291
339
  },
340
+ filter: {
341
+ inline: {
342
+ enabled: true,
343
+ }
344
+ }
292
345
  },
293
346
  schema: {
294
347
  dataType: 'string',
348
+ readonly: true,
295
349
  interface: {
296
350
  type: AXPWidgetsCatalog.text,
297
351
  options: {
@@ -305,28 +359,13 @@ async function documentFactory(injector) {
305
359
  },
306
360
  ],
307
361
  },
308
- {
309
- name: 'title',
310
- title: 't("title", { scope: "common" })',
311
- groupId: 'section',
312
- schema: {
313
- dataType: 'string',
314
- interface: {
315
- type: AXPWidgetsCatalog.text,
316
- },
317
- },
318
- validations: [
319
- {
320
- rule: 'required',
321
- },
322
- ],
323
- },
324
362
  {
325
363
  name: 'type',
326
364
  title: 't("type", { scope: "common" })',
327
365
  groupId: 'section',
328
366
  schema: {
329
367
  dataType: 'string',
368
+ readonly: true,
330
369
  interface: {
331
370
  type: AXPWidgetsCatalog.lookup,
332
371
  options: {
@@ -347,6 +386,7 @@ async function documentFactory(injector) {
347
386
  groupId: 'section',
348
387
  schema: {
349
388
  dataType: 'string',
389
+ readonly: true,
350
390
  interface: {
351
391
  type: AXPWidgetsCatalog.metaData,
352
392
  options: {
@@ -366,6 +406,7 @@ async function documentFactory(injector) {
366
406
  groupId: 'section',
367
407
  schema: {
368
408
  dataType: 'string',
409
+ readonly: true,
369
410
  interface: {
370
411
  type: AXPWidgetsCatalog.fileUploader,
371
412
  options: {
@@ -387,16 +428,40 @@ async function documentFactory(injector) {
387
428
  groupId: 'section',
388
429
  schema: {
389
430
  dataType: 'number',
431
+ readonly: true,
390
432
  interface: {
391
433
  type: AXPWidgetsCatalog.number,
434
+ options: {},
435
+ },
436
+ },
437
+ },
438
+ {
439
+ name: 'status',
440
+ title: `t("status", { scope: "${i18n}" })`,
441
+ groupId: 'section',
442
+ options: {
443
+ sort: {
444
+ enabled: true,
445
+ },
446
+ filter: {
447
+ inline: {
448
+ enabled: true,
449
+ }
450
+ }
451
+ },
452
+ schema: {
453
+ dataType: 'string',
454
+ readonly: true,
455
+ interface: {
456
+ type: AXPWidgetsCatalog.text,
392
457
  options: {
393
- readOnly: true,
458
+ content: `{{ context.eval('status') }}`,
394
459
  },
395
460
  },
396
461
  },
397
462
  },
398
463
  ],
399
- columns: [{ name: 'name' }, { name: 'title' }],
464
+ columns: [{ name: 'name' }, { name: 'status' }, { name: 'version' }],
400
465
  commands: {
401
466
  create: {
402
467
  execute: async (data) => {
@@ -424,7 +489,31 @@ async function documentFactory(injector) {
424
489
  },
425
490
  list: {
426
491
  execute: async (e) => {
427
- return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
492
+ const filter = e.filter;
493
+ // Base filter for requiresReview
494
+ const baseFilters = [
495
+ {
496
+ field: 'documentType.requiresReview',
497
+ operator: { type: 'equal' },
498
+ value: true
499
+ }
500
+ ];
501
+ // Check if e.filter has filters array with items
502
+ const hasAdditionalFilters = filter?.filters && Array.isArray(filter.filters) && filter.filters.length > 0;
503
+ // Combine filters if additional filters exist
504
+ const allFilters = hasAdditionalFilters
505
+ ? [...baseFilters, ...filter.filters]
506
+ : baseFilters;
507
+ const x = await dataService.query({
508
+ skip: e.skip,
509
+ take: e.take,
510
+ filter: {
511
+ logic: 'and',
512
+ filters: allFilters
513
+ }
514
+ });
515
+ console.log(x);
516
+ return x;
428
517
  },
429
518
  type: AXPEntityQueryType.List,
430
519
  },
@@ -448,75 +537,6 @@ async function documentFactory(injector) {
448
537
  },
449
538
  },
450
539
  },
451
- {
452
- name: 'title',
453
- layout: {
454
- positions: {
455
- lg: {
456
- colSpan: 6,
457
- },
458
- },
459
- },
460
- },
461
- {
462
- name: 'type',
463
- layout: {
464
- positions: {
465
- lg: {
466
- colSpan: 12,
467
- },
468
- },
469
- },
470
- },
471
- {
472
- name: 'metaData',
473
- layout: {
474
- positions: {
475
- lg: {
476
- colSpan: 12,
477
- },
478
- },
479
- },
480
- },
481
- {
482
- name: 'file',
483
- layout: {
484
- positions: {
485
- lg: {
486
- colSpan: 12,
487
- },
488
- },
489
- },
490
- },
491
- ],
492
- },
493
- update: {
494
- sections: [
495
- {
496
- id: 'section',
497
- },
498
- ],
499
- properties: [
500
- {
501
- name: 'name',
502
- layout: {
503
- positions: {
504
- lg: {
505
- colSpan: 6,
506
- },
507
- },
508
- },
509
- },
510
- {
511
- name: 'title',
512
- layout: {
513
- positions: {
514
- lg: {
515
- colSpan: 6,
516
- },
517
- },
518
- },
519
- },
520
540
  {
521
541
  name: 'type',
522
542
  layout: {
@@ -549,6 +569,55 @@ async function documentFactory(injector) {
549
569
  },
550
570
  ],
551
571
  },
572
+ // update: {
573
+ // sections: [
574
+ // {
575
+ // id: 'section',
576
+ // },
577
+ // ],
578
+ // properties: [
579
+ // {
580
+ // name: 'name',
581
+ // layout: {
582
+ // positions: {
583
+ // lg: {
584
+ // colSpan: 6,
585
+ // },
586
+ // },
587
+ // },
588
+ // },
589
+ // {
590
+ // name: 'type',
591
+ // layout: {
592
+ // positions: {
593
+ // lg: {
594
+ // colSpan: 12,
595
+ // },
596
+ // },
597
+ // },
598
+ // },
599
+ // {
600
+ // name: 'metaData',
601
+ // layout: {
602
+ // positions: {
603
+ // lg: {
604
+ // colSpan: 12,
605
+ // },
606
+ // },
607
+ // },
608
+ // },
609
+ // {
610
+ // name: 'file',
611
+ // layout: {
612
+ // positions: {
613
+ // lg: {
614
+ // colSpan: 12,
615
+ // },
616
+ // },
617
+ // },
618
+ // },
619
+ // ],
620
+ // },
552
621
  single: {
553
622
  title: '{{title}}',
554
623
  sections: [
@@ -575,17 +644,17 @@ async function documentFactory(injector) {
575
644
  },
576
645
  },
577
646
  {
578
- name: 'title',
647
+ name: 'type',
579
648
  layout: {
580
649
  positions: {
581
650
  lg: {
582
- colSpan: 6,
651
+ colSpan: 12,
583
652
  },
584
653
  },
585
654
  },
586
655
  },
587
656
  {
588
- name: 'type',
657
+ name: 'metaData',
589
658
  layout: {
590
659
  positions: {
591
660
  lg: {
@@ -594,45 +663,74 @@ async function documentFactory(injector) {
594
663
  },
595
664
  },
596
665
  },
597
- {
598
- name: 'metaData',
666
+ // {
667
+ // name: 'file',
668
+ // layout: {
669
+ // positions: {
670
+ // lg: {
671
+ // colSpan: 12,
672
+ // },
673
+ // },
674
+ // },
675
+ // },
676
+ {
677
+ name: 'status',
599
678
  layout: {
600
679
  positions: {
601
680
  lg: {
602
- colSpan: 12,
681
+ colSpan: 6,
603
682
  },
604
683
  },
605
684
  },
606
685
  },
607
686
  {
608
- name: 'file',
687
+ name: 'version',
609
688
  layout: {
610
689
  positions: {
611
690
  lg: {
612
- colSpan: 12,
691
+ colSpan: 6,
613
692
  },
614
693
  },
615
694
  },
616
695
  },
617
696
  ],
618
- actions: [],
619
- },
620
- list: {
621
697
  actions: [
622
698
  {
623
- title: `t("create", { scope: "common" })`,
624
- command: 'create-entity',
699
+ title: `t("document-review.send-review.title", { scope: "${i18n}" })`,
700
+ command: {
701
+ name: 'send-to-review',
702
+ options: {
703
+ id: '{{context.eval("id")}}',
704
+ title: '{{context.eval("title")}}',
705
+ }
706
+ },
625
707
  priority: 'primary',
626
- type: 'create',
708
+ type: 'sent-review',
627
709
  scope: AXPEntityCommandScope.TypeLevel,
710
+ hidden: '{{context.eval("status") == "Draft"}}',
628
711
  },
629
712
  {
630
- title: 't("deleteItems", { scope: "common" })',
631
- command: 'delete-entity',
713
+ title: `t("document-review.submit-review.title", { scope: "${i18n}" })`,
714
+ command: {
715
+ name: 'submit-review',
716
+ options: {
717
+ id: '{{context.eval("reviewRecordId")}}',
718
+ decoration: {
719
+ header: {
720
+ title: '{{ context.eval("title") + " " + context.eval("version") }}',
721
+ }
722
+ }
723
+ }
724
+ },
632
725
  priority: 'primary',
633
- type: 'delete',
634
- scope: AXPEntityCommandScope.Selected,
726
+ type: 'review',
727
+ scope: AXPEntityCommandScope.TypeLevel,
728
+ hidden: '{{context.eval("status") == "PendingReview"}}',
635
729
  },
730
+ ],
731
+ },
732
+ list: {
733
+ actions: [
636
734
  {
637
735
  title: 't("detail", { scope: "common" })',
638
736
  command: 'open-entity',
@@ -640,15 +738,8 @@ async function documentFactory(injector) {
640
738
  type: 'view',
641
739
  scope: AXPEntityCommandScope.Individual,
642
740
  },
643
- {
644
- title: 't("delete", { scope: "common" })',
645
- command: 'delete-entity',
646
- priority: 'secondary',
647
- type: 'delete',
648
- scope: AXPEntityCommandScope.Individual,
649
- },
650
741
  ],
651
- views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
742
+ views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],
652
743
  },
653
744
  },
654
745
  },
@@ -657,16 +748,16 @@ async function documentFactory(injector) {
657
748
  }
658
749
 
659
750
  class AXMDocumentManagementDocumentEntityModule {
660
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
661
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule }); }
662
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, providers: [
751
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
752
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule }); }
753
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, providers: [
663
754
  {
664
755
  provide: AXMDocumentService,
665
756
  useClass: AXMDocumentServiceImpl,
666
757
  },
667
758
  ] }); }
668
759
  }
669
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, decorators: [{
760
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, decorators: [{
670
761
  type: NgModule,
671
762
  args: [{
672
763
  imports: [],
@@ -681,16 +772,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
681
772
  }]
682
773
  }] });
683
774
 
775
+ function getNextStatus(options) {
776
+ const { current, requiresReview, requiresDistribution, reviewFirst, reviewResult, allSignaturesCollected } = options;
777
+ switch (current) {
778
+ case 'Draft':
779
+ if (requiresReview)
780
+ return 'PendingReview';
781
+ if (requiresDistribution)
782
+ return 'Distributed';
783
+ return 'Completed';
784
+ case 'PendingReview':
785
+ if (reviewResult === 'rejected')
786
+ return 'Rejected';
787
+ if (reviewResult === 'approved') {
788
+ if (requiresDistribution)
789
+ return 'Distributed';
790
+ return 'Completed';
791
+ }
792
+ return null;
793
+ case 'Reviewed':
794
+ if (requiresDistribution)
795
+ return 'Distributed';
796
+ return 'Completed';
797
+ case 'Distributed':
798
+ if (allSignaturesCollected)
799
+ return 'Completed';
800
+ return 'Distributed';
801
+ default:
802
+ return null;
803
+ }
804
+ }
805
+ const AXMDocumentWorkflowTransitionMap = {
806
+ Draft: ['PendingReview', 'Distributed', 'Completed'],
807
+ PendingReview: ['Reviewed', 'Rejected'],
808
+ Rejected: ['PendingReview'], // پس از اصلاح
809
+ Reviewed: ['Distributed', 'Completed'],
810
+ Distributed: ['Completed'],
811
+ Completed: []
812
+ };
813
+ function canTransition(from, to) {
814
+ return AXMDocumentWorkflowTransitionMap[from]?.includes(to) ?? false;
815
+ }
816
+
684
817
  class AXMDocumentTypeService extends AXMEntityCrudServiceImpl {
685
818
  }
686
819
  class AXMDocumentTypeServiceImpl extends AXMDocumentTypeService {
687
820
  constructor() {
688
821
  super(`${RootConfig.module.name}.${RootConfig.entities.documentType.name}`);
689
822
  }
690
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
691
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentTypeServiceImpl }); }
823
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
824
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentTypeServiceImpl }); }
692
825
  }
693
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentTypeServiceImpl, decorators: [{
826
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentTypeServiceImpl, decorators: [{
694
827
  type: Injectable
695
828
  }], ctorParameters: () => [] });
696
829
 
@@ -716,6 +849,10 @@ async function documentTypeFactory(injector) {
716
849
  id: 'section',
717
850
  title: RootConfig.entities.documentType.title,
718
851
  },
852
+ {
853
+ id: 'management',
854
+ title: `t("management", { scope: "${i18n}" })`,
855
+ },
719
856
  ],
720
857
  properties: [
721
858
  {
@@ -805,9 +942,9 @@ async function documentTypeFactory(injector) {
805
942
  },
806
943
  },
807
944
  {
808
- name: 'needReview',
809
- title: `t("needReview", { scope: "${i18n}" })`,
810
- groupId: 'section',
945
+ name: 'enableExpiration',
946
+ title: `t("enableExpiration", { scope: "${i18n}" })`,
947
+ groupId: 'management',
811
948
  schema: {
812
949
  dataType: 'boolean',
813
950
  interface: {
@@ -816,9 +953,20 @@ async function documentTypeFactory(injector) {
816
953
  },
817
954
  },
818
955
  {
819
- name: 'allowDistribute',
820
- title: `t("allowDistribute", { scope: "${i18n}" })`,
821
- groupId: 'section',
956
+ name: 'requiresReview',
957
+ title: `t("requiresReview", { scope: "${i18n}" })`,
958
+ groupId: 'management',
959
+ schema: {
960
+ dataType: 'boolean',
961
+ interface: {
962
+ type: AXPWidgetsCatalog.toggle,
963
+ },
964
+ },
965
+ },
966
+ {
967
+ name: 'requiresDistribution',
968
+ title: `t("requiresDistribution", { scope: "${i18n}" })`,
969
+ groupId: 'management',
822
970
  schema: {
823
971
  dataType: 'boolean',
824
972
  interface: {
@@ -829,11 +977,20 @@ async function documentTypeFactory(injector) {
829
977
  {
830
978
  name: 'enableVersioning',
831
979
  title: `t("enableVersioning", { scope: "${i18n}" })`,
832
- groupId: 'section',
980
+ groupId: 'management',
833
981
  schema: {
834
982
  dataType: 'boolean',
835
983
  interface: {
836
984
  type: AXPWidgetsCatalog.toggle,
985
+ options: {
986
+ disabled: '{{ !!context.eval("requiresReview") }}',
987
+ },
988
+ triggers: [
989
+ {
990
+ event: "{{ events.context('requiresReview') }}",
991
+ action: "{{ context.set('enableVersioning', true) }}",
992
+ }
993
+ ]
837
994
  },
838
995
  },
839
996
  },
@@ -911,6 +1068,9 @@ async function documentTypeFactory(injector) {
911
1068
  {
912
1069
  id: 'section',
913
1070
  },
1071
+ {
1072
+ id: 'management',
1073
+ },
914
1074
  ],
915
1075
  properties: [
916
1076
  {
@@ -954,7 +1114,17 @@ async function documentTypeFactory(injector) {
954
1114
  },
955
1115
  },
956
1116
  {
957
- name: 'needReview',
1117
+ name: 'enableExpiration',
1118
+ layout: {
1119
+ positions: {
1120
+ lg: {
1121
+ colSpan: 6,
1122
+ },
1123
+ },
1124
+ },
1125
+ },
1126
+ {
1127
+ name: 'requiresReview',
958
1128
  layout: {
959
1129
  positions: {
960
1130
  lg: {
@@ -964,7 +1134,7 @@ async function documentTypeFactory(injector) {
964
1134
  },
965
1135
  },
966
1136
  {
967
- name: 'allowDistribute',
1137
+ name: 'requiresDistribution',
968
1138
  layout: {
969
1139
  positions: {
970
1140
  lg: {
@@ -1010,6 +1180,9 @@ async function documentTypeFactory(injector) {
1010
1180
  {
1011
1181
  id: 'section',
1012
1182
  },
1183
+ {
1184
+ id: 'management',
1185
+ },
1013
1186
  ],
1014
1187
  properties: [
1015
1188
  {
@@ -1053,7 +1226,17 @@ async function documentTypeFactory(injector) {
1053
1226
  },
1054
1227
  },
1055
1228
  {
1056
- name: 'needReview',
1229
+ name: 'enableExpiration',
1230
+ layout: {
1231
+ positions: {
1232
+ lg: {
1233
+ colSpan: 6,
1234
+ },
1235
+ },
1236
+ },
1237
+ },
1238
+ {
1239
+ name: 'requiresReview',
1057
1240
  layout: {
1058
1241
  positions: {
1059
1242
  lg: {
@@ -1063,7 +1246,7 @@ async function documentTypeFactory(injector) {
1063
1246
  },
1064
1247
  },
1065
1248
  {
1066
- name: 'allowDistribute',
1249
+ name: 'requiresDistribution',
1067
1250
  layout: {
1068
1251
  positions: {
1069
1252
  lg: {
@@ -1117,6 +1300,16 @@ async function documentTypeFactory(injector) {
1117
1300
  },
1118
1301
  },
1119
1302
  },
1303
+ {
1304
+ id: 'management',
1305
+ layout: {
1306
+ positions: {
1307
+ lg: {
1308
+ colSpan: 12,
1309
+ },
1310
+ },
1311
+ },
1312
+ },
1120
1313
  ],
1121
1314
  properties: [
1122
1315
  {
@@ -1160,7 +1353,17 @@ async function documentTypeFactory(injector) {
1160
1353
  },
1161
1354
  },
1162
1355
  {
1163
- name: 'needReview',
1356
+ name: 'enableExpiration',
1357
+ layout: {
1358
+ positions: {
1359
+ lg: {
1360
+ colSpan: 6,
1361
+ },
1362
+ },
1363
+ },
1364
+ },
1365
+ {
1366
+ name: 'requiresReview',
1164
1367
  layout: {
1165
1368
  positions: {
1166
1369
  lg: {
@@ -1170,7 +1373,7 @@ async function documentTypeFactory(injector) {
1170
1373
  },
1171
1374
  },
1172
1375
  {
1173
- name: 'allowDistribute',
1376
+ name: 'requiresDistribution',
1174
1377
  layout: {
1175
1378
  positions: {
1176
1379
  lg: {
@@ -1252,16 +1455,16 @@ async function documentTypeFactory(injector) {
1252
1455
  }
1253
1456
 
1254
1457
  class AXMDocumentManagementDocumentTypeEntityModule {
1255
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1256
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule }); }
1257
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, providers: [
1458
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1459
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule }); }
1460
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, providers: [
1258
1461
  {
1259
1462
  provide: AXMDocumentTypeService,
1260
1463
  useClass: AXMDocumentTypeServiceImpl,
1261
1464
  },
1262
1465
  ] }); }
1263
1466
  }
1264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, decorators: [{
1467
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, decorators: [{
1265
1468
  type: NgModule,
1266
1469
  args: [{
1267
1470
  imports: [],
@@ -1282,10 +1485,10 @@ class AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl extends A
1282
1485
  constructor() {
1283
1486
  super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaDefinition}`);
1284
1487
  }
1285
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1286
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl }); }
1488
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1489
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl }); }
1287
1490
  }
1288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, decorators: [{
1491
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, decorators: [{
1289
1492
  type: Injectable
1290
1493
  }], ctorParameters: () => [] });
1291
1494
 
@@ -1521,16 +1724,16 @@ async function documentTypeMetaDefinitionfactory(injector) {
1521
1724
  }
1522
1725
 
1523
1726
  class AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule {
1524
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1525
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule }); }
1526
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, providers: [
1727
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1728
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule }); }
1729
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, providers: [
1527
1730
  {
1528
1731
  provide: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,
1529
1732
  useClass: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,
1530
1733
  },
1531
1734
  ] }); }
1532
1735
  }
1533
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, decorators: [{
1736
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, decorators: [{
1534
1737
  type: NgModule,
1535
1738
  args: [{
1536
1739
  imports: [],
@@ -1551,10 +1754,10 @@ class AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl extends AXMDoc
1551
1754
  constructor() {
1552
1755
  super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaValue}`);
1553
1756
  }
1554
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1555
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl }); }
1757
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1758
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl }); }
1556
1759
  }
1557
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, decorators: [{
1760
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, decorators: [{
1558
1761
  type: Injectable
1559
1762
  }], ctorParameters: () => [] });
1560
1763
 
@@ -1790,16 +1993,16 @@ async function documentTypeMetaValueFactory(injector) {
1790
1993
  }
1791
1994
 
1792
1995
  class AXMDocumentManagementDocumentTypeMetaValueEntityModule {
1793
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1794
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule }); }
1795
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, providers: [
1996
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1997
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule }); }
1998
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, providers: [
1796
1999
  {
1797
2000
  provide: AXMDocumentManagementDocumentTypeMetaValueEntityService,
1798
2001
  useClass: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,
1799
2002
  },
1800
2003
  ] }); }
1801
2004
  }
1802
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, decorators: [{
2005
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, decorators: [{
1803
2006
  type: NgModule,
1804
2007
  args: [{
1805
2008
  imports: [],
@@ -1820,10 +2023,10 @@ class AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl extends
1820
2023
  constructor() {
1821
2024
  super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeStatus}`);
1822
2025
  }
1823
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1824
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl }); }
2026
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2027
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl }); }
1825
2028
  }
1826
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, decorators: [{
2029
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, decorators: [{
1827
2030
  type: Injectable
1828
2031
  }], ctorParameters: () => [] });
1829
2032
 
@@ -2059,16 +2262,16 @@ async function documentTypeStatusDefinitionFactory(injector) {
2059
2262
  }
2060
2263
 
2061
2264
  class AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule {
2062
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2063
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule }); }
2064
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, providers: [
2265
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2266
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule }); }
2267
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, providers: [
2065
2268
  {
2066
2269
  provide: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,
2067
2270
  useClass: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,
2068
2271
  },
2069
2272
  ] }); }
2070
2273
  }
2071
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, decorators: [{
2274
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, decorators: [{
2072
2275
  type: NgModule,
2073
2276
  args: [{
2074
2277
  imports: [],
@@ -2095,10 +2298,10 @@ class AXMFolderServiceImpl extends AXMFolderService {
2095
2298
  async searchFolders(_searchTerm, _rootFolderId) {
2096
2299
  throw new Error('Not implemented');
2097
2300
  }
2098
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFolderServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2099
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFolderServiceImpl }); }
2301
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFolderServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2302
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFolderServiceImpl }); }
2100
2303
  }
2101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFolderServiceImpl, decorators: [{
2304
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFolderServiceImpl, decorators: [{
2102
2305
  type: Injectable
2103
2306
  }], ctorParameters: () => [] });
2104
2307
 
@@ -2201,26 +2404,554 @@ async function folderFactory(injector) {
2201
2404
  create: {
2202
2405
  sections: [
2203
2406
  {
2204
- id: 'section',
2407
+ id: 'section',
2408
+ },
2409
+ ],
2410
+ properties: [
2411
+ {
2412
+ name: 'name',
2413
+ layout: {
2414
+ positions: {
2415
+ lg: {
2416
+ colSpan: 6,
2417
+ },
2418
+ },
2419
+ },
2420
+ },
2421
+ {
2422
+ name: 'title',
2423
+ layout: {
2424
+ positions: {
2425
+ lg: {
2426
+ colSpan: 6,
2427
+ },
2428
+ },
2429
+ },
2430
+ },
2431
+ ],
2432
+ },
2433
+ update: {
2434
+ sections: [
2435
+ {
2436
+ id: 'section',
2437
+ },
2438
+ ],
2439
+ properties: [
2440
+ {
2441
+ name: 'name',
2442
+ layout: {
2443
+ positions: {
2444
+ lg: {
2445
+ colSpan: 6,
2446
+ },
2447
+ },
2448
+ },
2449
+ },
2450
+ {
2451
+ name: 'title',
2452
+ layout: {
2453
+ positions: {
2454
+ lg: {
2455
+ colSpan: 6,
2456
+ },
2457
+ },
2458
+ },
2459
+ },
2460
+ ],
2461
+ },
2462
+ single: {
2463
+ title: '{{title}}',
2464
+ sections: [
2465
+ {
2466
+ id: 'section',
2467
+ layout: {
2468
+ positions: {
2469
+ lg: {
2470
+ colSpan: 12,
2471
+ },
2472
+ },
2473
+ },
2474
+ },
2475
+ ],
2476
+ properties: [
2477
+ {
2478
+ name: 'name',
2479
+ layout: {
2480
+ positions: {
2481
+ lg: {
2482
+ colSpan: 6,
2483
+ },
2484
+ },
2485
+ },
2486
+ },
2487
+ {
2488
+ name: 'title',
2489
+ layout: {
2490
+ positions: {
2491
+ lg: {
2492
+ colSpan: 6,
2493
+ },
2494
+ },
2495
+ },
2496
+ },
2497
+ ],
2498
+ actions: [],
2499
+ },
2500
+ list: {
2501
+ actions: [
2502
+ {
2503
+ title: `t("create", { scope: "common" })`,
2504
+ command: 'create-entity',
2505
+ priority: 'primary',
2506
+ type: 'create',
2507
+ scope: AXPEntityCommandScope.TypeLevel,
2508
+ },
2509
+ {
2510
+ title: 't("deleteItems", { scope: "common" })',
2511
+ command: 'delete-entity',
2512
+ priority: 'primary',
2513
+ type: 'delete',
2514
+ scope: AXPEntityCommandScope.Selected,
2515
+ },
2516
+ {
2517
+ title: 't("detail", { scope: "common" })',
2518
+ command: 'open-entity',
2519
+ priority: 'secondary',
2520
+ type: 'view',
2521
+ scope: AXPEntityCommandScope.Individual,
2522
+ },
2523
+ {
2524
+ title: 't("delete", { scope: "common" })',
2525
+ command: 'delete-entity',
2526
+ priority: 'secondary',
2527
+ type: 'delete',
2528
+ scope: AXPEntityCommandScope.Individual,
2529
+ },
2530
+ ],
2531
+ views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
2532
+ },
2533
+ },
2534
+ },
2535
+ };
2536
+ return entityDef;
2537
+ }
2538
+
2539
+ class AXMReviewService extends AXMEntityCrudServiceImpl {
2540
+ }
2541
+ class AXMReviewServiceImpl extends AXMReviewService {
2542
+ constructor() {
2543
+ super(`${RootConfig.module.name}.${RootConfig.entities.review.name}`);
2544
+ }
2545
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMReviewServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2546
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMReviewServiceImpl }); }
2547
+ }
2548
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMReviewServiceImpl, decorators: [{
2549
+ type: Injectable
2550
+ }], ctorParameters: () => [] });
2551
+
2552
+ // Helper function to update document status based on review status
2553
+ async function updateDocumentStatus(documentId, reviewStatus, injector) {
2554
+ try {
2555
+ // Import document service dynamically to avoid circular dependencies
2556
+ const { AXMDocumentService } = await Promise.resolve().then(function () { return document_service; });
2557
+ const documentService = injector.get(AXMDocumentService);
2558
+ // Map review status to document workflow phase
2559
+ let documentStatus;
2560
+ switch (reviewStatus) {
2561
+ case 'Approved':
2562
+ documentStatus = 'Reviewed';
2563
+ break;
2564
+ case 'Rejected':
2565
+ documentStatus = 'Rejected';
2566
+ break;
2567
+ case 'Pending':
2568
+ documentStatus = 'PendingReview';
2569
+ break;
2570
+ default:
2571
+ documentStatus = 'PendingReview';
2572
+ }
2573
+ // Update the document status
2574
+ await documentService.updateOne(documentId, { status: documentStatus });
2575
+ }
2576
+ catch (error) {
2577
+ console.error('Failed to update document status:', error);
2578
+ // Don't throw error to avoid breaking the review process
2579
+ }
2580
+ }
2581
+ async function reviewFactory(injector) {
2582
+ const dataService = injector.get(AXMReviewService);
2583
+ const i18n = RootConfig.config.i18n;
2584
+ const entityDef = {
2585
+ module: RootConfig.module.name,
2586
+ name: RootConfig.entities.review.name,
2587
+ source: '',
2588
+ title: RootConfig.entities.review.title,
2589
+ formats: {
2590
+ individual: RootConfig.entities.review.title,
2591
+ plural: RootConfig.entities.review.titlePlural,
2592
+ searchResult: {
2593
+ title: '{{ title }}',
2594
+ description: RootConfig.module.title,
2595
+ },
2596
+ },
2597
+ relatedEntities: [],
2598
+ groups: [
2599
+ {
2600
+ id: 'section',
2601
+ title: RootConfig.entities.review.title,
2602
+ },
2603
+ ],
2604
+ properties: [
2605
+ {
2606
+ name: 'version',
2607
+ title: `t("version", { scope: "${i18n}" })`,
2608
+ groupId: 'section',
2609
+ schema: {
2610
+ dataType: 'number',
2611
+ interface: {
2612
+ type: AXPWidgetsCatalog.textBlockLayout,
2613
+ options: {
2614
+ content: `{{ context.eval('version') }}`
2615
+ }
2616
+ },
2617
+ },
2618
+ },
2619
+ {
2620
+ name: 'documentId',
2621
+ groupId: 'section',
2622
+ title: `t("document", { scope: "${i18n}" })`,
2623
+ options: {
2624
+ sort: {
2625
+ enabled: true,
2626
+ },
2627
+ filter: {
2628
+ advance: {
2629
+ enabled: true,
2630
+ },
2631
+ inline: {
2632
+ enabled: true,
2633
+ },
2634
+ },
2635
+ },
2636
+ schema: {
2637
+ dataType: 'string',
2638
+ interface: {
2639
+ type: AXPWidgetsCatalog.lookup,
2640
+ options: {
2641
+ entity: `${RootConfig.module.name}.${RootConfig.entities.document.name}`,
2642
+ multiple: false,
2643
+ filter: "{{ { logic:'and' , filters: [ { field:'documentType.requiresReview' , value: true , operator: { type:'equal' } },] } }}",
2644
+ textField: 'name',
2645
+ valueField: 'id',
2646
+ expose: [
2647
+ { source: 'id', target: 'document.id' },
2648
+ { source: 'name', target: 'document.name' },
2649
+ { source: 'title', target: 'document.title' },
2650
+ { source: 'version', target: 'document.version' },
2651
+ ],
2652
+ },
2653
+ triggers: [
2654
+ {
2655
+ event: "{{ events.context('documentId') }}",
2656
+ action: "{{ context.set('version' , context.eval('document').version ) }}",
2657
+ }
2658
+ ]
2659
+ },
2660
+ },
2661
+ validations: [
2662
+ {
2663
+ rule: 'required',
2664
+ },
2665
+ ],
2666
+ },
2667
+ {
2668
+ name: 'reviewerId',
2669
+ title: `t("reviewer", { scope: "${i18n}" })`,
2670
+ groupId: 'section',
2671
+ options: {
2672
+ sort: {
2673
+ enabled: true,
2674
+ },
2675
+ filter: {
2676
+ advance: {
2677
+ enabled: true,
2678
+ },
2679
+ inline: {
2680
+ enabled: true,
2681
+ },
2682
+ },
2683
+ },
2684
+ schema: {
2685
+ dataType: 'string',
2686
+ defaultValue: "{{ session.currentUser().id }}",
2687
+ interface: {
2688
+ type: AXPWidgetsCatalog.lookup,
2689
+ options: {
2690
+ entity: 'SecurityManagement.users',
2691
+ multiple: false,
2692
+ textField: 'name',
2693
+ valueField: 'id',
2694
+ expose: [
2695
+ { source: 'id', target: 'reviewer.id' },
2696
+ { source: 'name', target: 'reviewer.name' },
2697
+ ],
2698
+ },
2699
+ },
2700
+ },
2701
+ validations: [
2702
+ {
2703
+ rule: 'required',
2704
+ },
2705
+ ],
2706
+ },
2707
+ {
2708
+ name: 'status',
2709
+ title: `t("approve", { scope: "${i18n}" })`,
2710
+ groupId: 'section',
2711
+ schema: {
2712
+ dataType: 'string',
2713
+ interface: {
2714
+ type: AXPWidgetsCatalog.toggle,
2715
+ options: {},
2716
+ },
2717
+ },
2718
+ validations: [
2719
+ {
2720
+ rule: 'required',
2721
+ },
2722
+ ],
2723
+ },
2724
+ {
2725
+ name: 'comment',
2726
+ title: `t("comment", { scope: "${i18n}" })`,
2727
+ groupId: 'section',
2728
+ schema: {
2729
+ dataType: 'string',
2730
+ interface: {
2731
+ type: AXPWidgetsCatalog.richText,
2732
+ },
2733
+ },
2734
+ },
2735
+ {
2736
+ name: 'reviewedAt',
2737
+ title: `t("reviewedAt", { scope: "${i18n}" })`,
2738
+ groupId: 'section',
2739
+ options: {
2740
+ sort: {
2741
+ enabled: true,
2742
+ },
2743
+ filter: {
2744
+ advance: {
2745
+ enabled: true,
2746
+ },
2747
+ inline: {
2748
+ enabled: false,
2749
+ },
2750
+ },
2751
+ },
2752
+ schema: {
2753
+ defaultValue: '{{ variables.execute("now") }}',
2754
+ dataType: 'date',
2755
+ interface: {
2756
+ type: AXPWidgetsCatalog.dateTime,
2757
+ options: {
2758
+ showTime: true,
2759
+ },
2760
+ },
2761
+ },
2762
+ validations: [
2763
+ {
2764
+ rule: 'required',
2765
+ },
2766
+ ],
2767
+ },
2768
+ {
2769
+ name: 'modifiedAt',
2770
+ title: `t("modifiedAt", { scope: "${i18n}" })`,
2771
+ groupId: 'section',
2772
+ options: {
2773
+ sort: {
2774
+ enabled: true,
2775
+ },
2776
+ filter: {
2777
+ advance: {
2778
+ enabled: true,
2779
+ },
2780
+ inline: {
2781
+ enabled: false,
2782
+ },
2783
+ },
2784
+ },
2785
+ schema: {
2786
+ dataType: 'date',
2787
+ interface: {
2788
+ type: AXPWidgetsCatalog.dateTime,
2789
+ options: {
2790
+ showTime: true,
2791
+ },
2792
+ },
2793
+ },
2794
+ },
2795
+ {
2796
+ name: 'modifiedBy',
2797
+ title: `t("modifiedBy", { scope: "${i18n}" })`,
2798
+ groupId: 'section',
2799
+ options: {
2800
+ sort: {
2801
+ enabled: true,
2802
+ },
2803
+ filter: {
2804
+ advance: {
2805
+ enabled: true,
2806
+ },
2807
+ inline: {
2808
+ enabled: true,
2809
+ },
2810
+ },
2811
+ },
2812
+ schema: {
2813
+ dataType: 'string',
2814
+ interface: {
2815
+ type: AXPWidgetsCatalog.lookup,
2816
+ options: {
2817
+ entity: 'SecurityManagement.users',
2818
+ multiple: false,
2819
+ textField: 'name',
2820
+ valueField: 'id',
2821
+ expose: [
2822
+ { source: 'id', target: 'modifier.id' },
2823
+ { source: 'name', target: 'modifier.name' },
2824
+ ],
2825
+ },
2826
+ },
2827
+ },
2828
+ },
2829
+ ],
2830
+ columns: [
2831
+ { name: 'documentId', options: { dataPath: 'document.name' } },
2832
+ { name: 'reviewerId', options: { dataPath: 'reviewerId.displayName' } },
2833
+ { name: 'status' },
2834
+ { name: 'comment' },
2835
+ { name: 'reviewedAt' },
2836
+ { name: 'modifiedAt' },
2837
+ { name: 'modifiedBy' }
2838
+ ],
2839
+ commands: {
2840
+ create: {
2841
+ execute: async (data) => {
2842
+ // Set reviewedAt to current date if not provided
2843
+ if (!data.reviewedAt) {
2844
+ data.reviewedAt = new Date();
2845
+ }
2846
+ // Create the review record
2847
+ const res = await dataService.insertOne(data);
2848
+ // Update document status based on review status
2849
+ await updateDocumentStatus(data.documentId, data.status, injector);
2850
+ return { id: res };
2851
+ },
2852
+ },
2853
+ delete: {
2854
+ execute: async (id) => {
2855
+ return await dataService.deleteOne(id);
2856
+ },
2857
+ },
2858
+ update: {
2859
+ execute: async (data) => {
2860
+ // Update reviewedAt to current date
2861
+ data.reviewedAt = new Date();
2862
+ // Update the review record
2863
+ const result = await dataService.updateOne(data.id, data);
2864
+ // Update document status based on review status
2865
+ await updateDocumentStatus(data.documentId, data.status, injector);
2866
+ return result;
2867
+ },
2868
+ },
2869
+ },
2870
+ queries: {
2871
+ byKey: {
2872
+ execute: async (id) => {
2873
+ return await dataService.getOne(id);
2874
+ },
2875
+ type: AXPEntityQueryType.Single,
2876
+ },
2877
+ list: {
2878
+ execute: async (e) => {
2879
+ return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
2880
+ },
2881
+ type: AXPEntityQueryType.List,
2882
+ },
2883
+ },
2884
+ interfaces: {
2885
+ master: {
2886
+ create: {
2887
+ sections: [
2888
+ {
2889
+ id: 'section',
2890
+ },
2891
+ ],
2892
+ properties: [
2893
+ {
2894
+ name: 'documentId',
2895
+ layout: {
2896
+ positions: {
2897
+ lg: {
2898
+ colSpan: 12,
2899
+ order: 1,
2900
+ },
2901
+ },
2902
+ },
2903
+ },
2904
+ {
2905
+ name: 'reviewerId',
2906
+ layout: {
2907
+ positions: {
2908
+ lg: {
2909
+ colSpan: 6,
2910
+ order: 5,
2911
+ },
2912
+ },
2913
+ },
2205
2914
  },
2206
- ],
2207
- properties: [
2208
2915
  {
2209
- name: 'name',
2916
+ name: 'version',
2210
2917
  layout: {
2211
2918
  positions: {
2212
2919
  lg: {
2213
2920
  colSpan: 6,
2921
+ order: 2,
2214
2922
  },
2215
2923
  },
2216
2924
  },
2217
2925
  },
2218
2926
  {
2219
- name: 'title',
2927
+ name: 'status',
2928
+ layout: {
2929
+ positions: {
2930
+ lg: {
2931
+ colSpan: 6,
2932
+ order: 3,
2933
+ },
2934
+ },
2935
+ },
2936
+ },
2937
+ {
2938
+ name: 'comment',
2939
+ layout: {
2940
+ positions: {
2941
+ lg: {
2942
+ colSpan: 12,
2943
+ order: 4,
2944
+ },
2945
+ },
2946
+ },
2947
+ },
2948
+ {
2949
+ name: 'reviewedAt',
2220
2950
  layout: {
2221
2951
  positions: {
2222
2952
  lg: {
2223
2953
  colSpan: 6,
2954
+ order: 6,
2224
2955
  },
2225
2956
  },
2226
2957
  },
@@ -2235,21 +2966,67 @@ async function folderFactory(injector) {
2235
2966
  ],
2236
2967
  properties: [
2237
2968
  {
2238
- name: 'name',
2969
+ name: 'documentId',
2970
+ layout: {
2971
+ positions: {
2972
+ lg: {
2973
+ colSpan: 12,
2974
+ order: 1,
2975
+ },
2976
+ },
2977
+ },
2978
+ },
2979
+ {
2980
+ name: 'reviewerId',
2239
2981
  layout: {
2240
2982
  positions: {
2241
2983
  lg: {
2242
2984
  colSpan: 6,
2985
+ order: 5,
2243
2986
  },
2244
2987
  },
2245
2988
  },
2246
2989
  },
2247
2990
  {
2248
- name: 'title',
2991
+ name: 'version',
2992
+ layout: {
2993
+ positions: {
2994
+ lg: {
2995
+ colSpan: 6,
2996
+ order: 2,
2997
+ },
2998
+ },
2999
+ },
3000
+ },
3001
+ {
3002
+ name: 'status',
3003
+ layout: {
3004
+ positions: {
3005
+ lg: {
3006
+ colSpan: 6,
3007
+ order: 3,
3008
+ },
3009
+ },
3010
+ },
3011
+ },
3012
+ {
3013
+ name: 'comment',
3014
+ layout: {
3015
+ positions: {
3016
+ lg: {
3017
+ colSpan: 12,
3018
+ order: 4,
3019
+ },
3020
+ },
3021
+ },
3022
+ },
3023
+ {
3024
+ name: 'reviewedAt',
2249
3025
  layout: {
2250
3026
  positions: {
2251
3027
  lg: {
2252
3028
  colSpan: 6,
3029
+ order: 6,
2253
3030
  },
2254
3031
  },
2255
3032
  },
@@ -2257,7 +3034,7 @@ async function folderFactory(injector) {
2257
3034
  ],
2258
3035
  },
2259
3036
  single: {
2260
- title: '{{title}}',
3037
+ title: '{{document.name}} - Review',
2261
3038
  sections: [
2262
3039
  {
2263
3040
  id: 'section',
@@ -2272,21 +3049,90 @@ async function folderFactory(injector) {
2272
3049
  ],
2273
3050
  properties: [
2274
3051
  {
2275
- name: 'name',
3052
+ name: 'documentId',
3053
+ dataPath: 'document',
3054
+ layout: {
3055
+ positions: {
3056
+ lg: {
3057
+ colSpan: 12,
3058
+ order: 1,
3059
+ },
3060
+ },
3061
+ },
3062
+ },
3063
+ {
3064
+ name: 'reviewerId',
2276
3065
  layout: {
2277
3066
  positions: {
2278
3067
  lg: {
2279
3068
  colSpan: 6,
3069
+ order: 5,
2280
3070
  },
2281
3071
  },
2282
3072
  },
2283
3073
  },
2284
3074
  {
2285
- name: 'title',
3075
+ name: 'version',
3076
+ layout: {
3077
+ positions: {
3078
+ lg: {
3079
+ colSpan: 6,
3080
+ order: 2,
3081
+ },
3082
+ },
3083
+ },
3084
+ },
3085
+ {
3086
+ name: 'status',
3087
+ layout: {
3088
+ positions: {
3089
+ lg: {
3090
+ colSpan: 6,
3091
+ order: 3,
3092
+ },
3093
+ },
3094
+ },
3095
+ },
3096
+ {
3097
+ name: 'comment',
3098
+ layout: {
3099
+ positions: {
3100
+ lg: {
3101
+ colSpan: 12,
3102
+ order: 4,
3103
+ },
3104
+ },
3105
+ },
3106
+ },
3107
+ {
3108
+ name: 'reviewedAt',
3109
+ layout: {
3110
+ positions: {
3111
+ lg: {
3112
+ colSpan: 6,
3113
+ order: 6,
3114
+ },
3115
+ },
3116
+ },
3117
+ },
3118
+ {
3119
+ name: 'modifiedAt',
3120
+ layout: {
3121
+ positions: {
3122
+ lg: {
3123
+ colSpan: 6,
3124
+ order: 7,
3125
+ },
3126
+ },
3127
+ },
3128
+ },
3129
+ {
3130
+ name: 'modifiedBy',
2286
3131
  layout: {
2287
3132
  positions: {
2288
3133
  lg: {
2289
3134
  colSpan: 6,
3135
+ order: 8,
2290
3136
  },
2291
3137
  },
2292
3138
  },
@@ -2296,36 +3142,27 @@ async function folderFactory(injector) {
2296
3142
  },
2297
3143
  list: {
2298
3144
  actions: [
2299
- {
2300
- title: `t("create", { scope: "common" })`,
2301
- command: 'create-entity',
2302
- priority: 'primary',
2303
- type: 'create',
2304
- scope: AXPEntityCommandScope.TypeLevel,
2305
- },
2306
- {
2307
- title: 't("deleteItems", { scope: "common" })',
2308
- command: 'delete-entity',
2309
- priority: 'primary',
2310
- type: 'delete',
2311
- scope: AXPEntityCommandScope.Selected,
2312
- },
2313
3145
  {
2314
3146
  title: 't("detail", { scope: "common" })',
2315
3147
  command: 'open-entity',
2316
3148
  priority: 'secondary',
2317
3149
  type: 'view',
2318
3150
  scope: AXPEntityCommandScope.Individual,
3151
+ default: true,
2319
3152
  },
2320
3153
  {
2321
- title: 't("delete", { scope: "common" })',
2322
- command: 'delete-entity',
3154
+ title: 't("detail", { scope: "common" })',
3155
+ command: 'open-entity',
2323
3156
  priority: 'secondary',
2324
- type: 'delete',
3157
+ type: 'view',
2325
3158
  scope: AXPEntityCommandScope.Individual,
2326
3159
  },
2327
3160
  ],
2328
- views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
3161
+ views: [
3162
+ createAllQueryView({
3163
+ sorts: [{ name: 'reviewedAt', dir: 'desc' }],
3164
+ }),
3165
+ ],
2329
3166
  },
2330
3167
  },
2331
3168
  },
@@ -2352,12 +3189,17 @@ var index$1 = /*#__PURE__*/Object.freeze({
2352
3189
  AXMDocumentTypeServiceImpl: AXMDocumentTypeServiceImpl,
2353
3190
  AXMFolderService: AXMFolderService,
2354
3191
  AXMFolderServiceImpl: AXMFolderServiceImpl,
3192
+ AXMReviewService: AXMReviewService,
3193
+ AXMReviewServiceImpl: AXMReviewServiceImpl,
3194
+ canTransition: canTransition,
2355
3195
  documentFactory: documentFactory,
2356
3196
  documentTypeFactory: documentTypeFactory,
2357
3197
  documentTypeMetaDefinitionfactory: documentTypeMetaDefinitionfactory,
2358
3198
  documentTypeMetaValueFactory: documentTypeMetaValueFactory,
2359
3199
  documentTypeStatusDefinitionFactory: documentTypeStatusDefinitionFactory,
2360
- folderFactory: folderFactory
3200
+ folderFactory: folderFactory,
3201
+ getNextStatus: getNextStatus,
3202
+ reviewFactory: reviewFactory
2361
3203
  });
2362
3204
 
2363
3205
  class AXMImageFileTypeProvider {
@@ -2703,10 +3545,10 @@ class AXMCodeFileTypeProvider {
2703
3545
  }
2704
3546
 
2705
3547
  class AXMFileTypeExtensionWidgetColumnComponent extends AXPValueWidgetComponent {
2706
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2707
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXMFileTypeExtensionWidgetColumnComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3548
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3549
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AXMFileTypeExtensionWidgetColumnComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2708
3550
  }
2709
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, decorators: [{
3551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, decorators: [{
2710
3552
  type: Component,
2711
3553
  args: [{
2712
3554
  template: ``,
@@ -2722,10 +3564,10 @@ var fileTypeExtensionColumn_component = /*#__PURE__*/Object.freeze({
2722
3564
  });
2723
3565
 
2724
3566
  class AXMFileTypeExtensionWidgetDesignerComponent extends AXPValueWidgetComponent {
2725
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2726
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXMFileTypeExtensionWidgetDesignerComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3567
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3568
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AXMFileTypeExtensionWidgetDesignerComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2727
3569
  }
2728
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, decorators: [{
3570
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, decorators: [{
2729
3571
  type: Component,
2730
3572
  args: [{
2731
3573
  template: ``,
@@ -2840,8 +3682,8 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
2840
3682
  hasMetaInExtensions(extensions) {
2841
3683
  return extensions.some((ext) => ext.meta && ext.meta.length > 0);
2842
3684
  }
2843
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2844
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMFileTypeExtensionWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ` <div>
3685
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3686
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMFileTypeExtensionWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ` <div>
2845
3687
  <ax-select-box
2846
3688
  #dd
2847
3689
  [dataSource]="dataSource"
@@ -2906,7 +3748,7 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
2906
3748
  </axp-widgets-container>
2907
3749
  </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i1.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i4.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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: AXPLayoutBuilderModule }, { kind: "component", type: i6.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i6.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXCollapseModule }, { kind: "component", type: i7.AXCollapseComponent, selector: "ax-collapse", inputs: ["disabled", "look", "isCollapsed", "showHeader", "caption", "icon", "isLoading", "headerTemplate"], outputs: ["onClick", "isCollapsedChange"] }, { kind: "component", type: i7.AXCollapseGroupComponent, selector: "ax-collapse-group", inputs: ["look", "accordion", "activeIndex"], outputs: ["accordionChange", "activeIndexChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2908
3750
  }
2909
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, decorators: [{
3751
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, decorators: [{
2910
3752
  type: Component,
2911
3753
  args: [{
2912
3754
  template: ` <div>
@@ -2993,10 +3835,10 @@ var fileTypeExtensionEdit_component = /*#__PURE__*/Object.freeze({
2993
3835
  });
2994
3836
 
2995
3837
  class AXMFileTypeExtensionWidgetViewComponent extends AXPValueWidgetComponent {
2996
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2997
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXMFileTypeExtensionWidgetViewComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3838
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3839
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AXMFileTypeExtensionWidgetViewComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2998
3840
  }
2999
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, decorators: [{
3841
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, decorators: [{
3000
3842
  type: Component,
3001
3843
  args: [{
3002
3844
  template: ``,
@@ -3042,9 +3884,9 @@ const AXmFileTypeExtensionWidget = {
3042
3884
  };
3043
3885
 
3044
3886
  class AXMFileTypeModule {
3045
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3046
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeModule }); }
3047
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeModule, providers: [
3887
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3888
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeModule }); }
3889
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeModule, providers: [
3048
3890
  {
3049
3891
  provide: AXP_FILE_TYPE_INFO_PROVIDER,
3050
3892
  useClass: AXMImageFileTypeProvider,
@@ -3077,7 +3919,7 @@ class AXMFileTypeModule {
3077
3919
  },
3078
3920
  ] }); }
3079
3921
  }
3080
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileTypeModule, decorators: [{
3922
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileTypeModule, decorators: [{
3081
3923
  type: NgModule,
3082
3924
  args: [{
3083
3925
  providers: [
@@ -3157,7 +3999,7 @@ class AXMChooseFileWorkflowAction extends AXPWorkflowAction {
3157
3999
  }
3158
4000
  this.uploadService.browse({
3159
4001
  //accept: doc.type,
3160
- multiple: doc.isMultiple,
4002
+ multiple: false,
3161
4003
  });
3162
4004
  }
3163
4005
  }
@@ -3194,6 +4036,156 @@ const AXMUploadWorkflow = {
3194
4036
  },
3195
4037
  };
3196
4038
 
4039
+ /**
4040
+ * Action to show confirmation dialog for sending document to review
4041
+ */
4042
+ class AXMSendToReviewConfirmAction extends AXPWorkflowAction {
4043
+ constructor() {
4044
+ super(...arguments);
4045
+ this.dialogService = inject(AXDialogService);
4046
+ this.translationService = inject(AXTranslationService);
4047
+ }
4048
+ //private documentService = inject(AXMDocumentService);
4049
+ async execute(context) {
4050
+ const documentId = context.getVariable('options.id');
4051
+ const documentTitle = context.getVariable('options.title');
4052
+ const dialogResult = await this.dialogService.confirm(await this.translationService.translateAsync('document-review.confirm-send.title', {
4053
+ scope: 'document-management',
4054
+ }), await this.translationService.translateAsync('document-review.confirm-send.message', {
4055
+ scope: 'document-management',
4056
+ params: { title: documentTitle },
4057
+ }), 'primary', 'horizontal', false, 'cancel');
4058
+ context.setOutput('confirmed', dialogResult.result);
4059
+ }
4060
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMSendToReviewConfirmAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4061
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMSendToReviewConfirmAction }); }
4062
+ }
4063
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMSendToReviewConfirmAction, decorators: [{
4064
+ type: Injectable
4065
+ }] });
4066
+ /**
4067
+ * Action to update document status to PendingReview
4068
+ */
4069
+ class AXMUpdateDocumentStatusAction extends AXPWorkflowAction {
4070
+ constructor() {
4071
+ super(...arguments);
4072
+ this.documentService = inject(AXMDocumentService);
4073
+ this.reviewService = inject(AXMReviewService);
4074
+ }
4075
+ async execute(context) {
4076
+ try {
4077
+ const documentId = context.getVariable('options.id');
4078
+ const document = await this.documentService.getOne(documentId);
4079
+ const reviewRecordID = await this.reviewService.insertOne({
4080
+ documentId: documentId,
4081
+ reviewStatus: 'Pending',
4082
+ version: document.version ?? 0,
4083
+ modifiedAt: document.updatedAt,
4084
+ // modifiedBy : document.updatedBy,
4085
+ modifiedBy: {
4086
+ //TODO
4087
+ id: document.updatedBy ?? '',
4088
+ name: document.updatedBy ?? '',
4089
+ title: document.updatedBy ?? '',
4090
+ },
4091
+ });
4092
+ await this.documentService.updateOne(documentId, {
4093
+ status: 'PendingReview',
4094
+ reviewRecordId: reviewRecordID,
4095
+ });
4096
+ context.setOutput('success', true);
4097
+ }
4098
+ catch (error) {
4099
+ context.setOutput('success', false);
4100
+ context.setOutput('error', error);
4101
+ }
4102
+ }
4103
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMUpdateDocumentStatusAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4104
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMUpdateDocumentStatusAction }); }
4105
+ }
4106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMUpdateDocumentStatusAction, decorators: [{
4107
+ type: Injectable
4108
+ }] });
4109
+ // Note: Using AXPToastAction from platform/common instead of custom toast action
4110
+ /**
4111
+ * Workflow for sending document to review
4112
+ */
4113
+ const AXMSendToReviewWorkflow = {
4114
+ startStepId: 'confirm-send',
4115
+ steps: {
4116
+ 'confirm-send': {
4117
+ id: 'confirm-send',
4118
+ action: 'AXMSendToReviewConfirmAction',
4119
+ nextSteps: [
4120
+ {
4121
+ conditions: [{ type: 'SINGLE', expression: 'context.getOutput("confirmed") == true' }],
4122
+ nextStepId: 'update-status',
4123
+ },
4124
+ ],
4125
+ },
4126
+ 'update-status': {
4127
+ id: 'update-status',
4128
+ action: 'AXMUpdateDocumentStatusAction',
4129
+ nextSteps: [
4130
+ {
4131
+ conditions: [{ type: 'SINGLE', expression: 'context.getOutput("success") == true' }],
4132
+ nextStepId: 'reload-entity',
4133
+ },
4134
+ {
4135
+ conditions: [{ type: 'SINGLE', expression: 'context.getOutput("success") == false' }],
4136
+ nextStepId: 'show-error',
4137
+ },
4138
+ ],
4139
+ },
4140
+ 'reload-entity': {
4141
+ id: 'reload-entity',
4142
+ action: 'reload',
4143
+ },
4144
+ 'show-success': {
4145
+ id: 'show-success',
4146
+ action: 'AXPToastAction',
4147
+ input: {
4148
+ color: 'success',
4149
+ title: 'document-review.send-review.success',
4150
+ content: 'document-review.send-review.success',
4151
+ },
4152
+ },
4153
+ 'show-error': {
4154
+ id: 'show-error',
4155
+ action: 'AXPToastAction',
4156
+ input: {
4157
+ color: 'danger',
4158
+ title: 'document-review.send-review.error',
4159
+ content: 'document-review.send-review.error',
4160
+ },
4161
+ },
4162
+ },
4163
+ };
4164
+ /**
4165
+ * Workflow for submitting review
4166
+ */
4167
+ const AXMSubmitReviewWorkflow = {
4168
+ startStepId: 'open-review-entity',
4169
+ steps: {
4170
+ 'open-review-entity': {
4171
+ action: 'start-workflow',
4172
+ input: {
4173
+ workflow: 'quick-modify-entity',
4174
+ context: {
4175
+ entity: `${RootConfig.module.name}.${RootConfig.entities.review.name}`,
4176
+ data: {
4177
+ id: '{{ context.getVariable("options.id") }}',
4178
+ },
4179
+ },
4180
+ },
4181
+ },
4182
+ 'reload-entity': {
4183
+ id: 'reload-entity',
4184
+ action: 'reload',
4185
+ },
4186
+ },
4187
+ };
4188
+
3197
4189
  class AXMTaskBadgeProviderSample1 {
3198
4190
  constructor() {
3199
4191
  this.count = signal(0, ...(ngDevMode ? [{ debugName: "count" }] : []));
@@ -3223,12 +4215,14 @@ class AXMDocumentManagerService {
3223
4215
  this.folderService = inject(AXMFolderService);
3224
4216
  this.sessionService = inject(AXPSessionService);
3225
4217
  this.documentService = inject(AXMDocumentService);
4218
+ this.documentTypeService = inject(AXMDocumentTypeService);
3226
4219
  this.popupService = inject(AXPopupService);
3227
4220
  this.dialogService = inject(AXDialogService);
3228
4221
  this.fileService = inject(AXPFileStorageService);
3229
4222
  this.fileManagerService = inject(AXFileService);
3230
4223
  this.workflow = inject(AXPWorkflowService);
3231
4224
  this.translate = inject(AXTranslationService);
4225
+ this.reviewService = inject(AXMReviewService);
3232
4226
  //#endregion
3233
4227
  //#region ---- Private Properties ----
3234
4228
  this.scopedDriveCache = new Map();
@@ -3248,7 +4242,7 @@ class AXMDocumentManagerService {
3248
4242
  description: folder.description,
3249
4243
  childrenCount: folder.nodeCount,
3250
4244
  size: folder.size,
3251
- documentTypes: folder.documentTypes,
4245
+ documentTypes: folder.documentTypes || [],
3252
4246
  storageType: 'physical',
3253
4247
  inherit: folder.inherit,
3254
4248
  children: [
@@ -3369,6 +4363,7 @@ class AXMDocumentManagerService {
3369
4363
  fileId: file.fileId,
3370
4364
  storageType: 'physical',
3371
4365
  meta: file.meta ? Object.values(file.meta) : undefined,
4366
+ documentTypes: file.documentType ? [file.documentType] : [],
3372
4367
  };
3373
4368
  }
3374
4369
  /**
@@ -3644,16 +4639,16 @@ class AXMDocumentManagerService {
3644
4639
  * Moves a node to another location
3645
4640
  */
3646
4641
  async moveTo(options) {
3647
- const comp = (await import('./acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs')).AXMDocumentDriveChooseComponent;
4642
+ const comp = (await import('./acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs')).AXMDocumentDriveChooseComponent;
3648
4643
  const popup = await this.popupService.open(comp, {
3649
4644
  title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,
3650
4645
  data: {
3651
4646
  selectionMode: options.multiple ? 'multiple' : 'single',
3652
4647
  browseMode: options.browseMode ?? 'file',
3653
- scope: options.scope
4648
+ scope: options.scope,
3654
4649
  },
3655
4650
  });
3656
- const selectedFolders = popup.data.result ? popup.data?.items ?? [] : [];
4651
+ const selectedFolders = popup.data.result ? (popup.data?.items ?? []) : [];
3657
4652
  if (selectedFolders.length > 0) {
3658
4653
  const selectedFolder = selectedFolders[0];
3659
4654
  if (selectedFolder) {
@@ -3677,16 +4672,16 @@ class AXMDocumentManagerService {
3677
4672
  * Copies a node to another location
3678
4673
  */
3679
4674
  async copyTo(options) {
3680
- const comp = (await import('./acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs')).AXMDocumentDriveChooseComponent;
4675
+ const comp = (await import('./acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs')).AXMDocumentDriveChooseComponent;
3681
4676
  const popup = await this.popupService.open(comp, {
3682
4677
  title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,
3683
4678
  data: {
3684
4679
  selectionMode: options.multiple ? 'multiple' : 'single',
3685
4680
  browseMode: options.browseMode ?? 'file',
3686
- scope: options.scope
4681
+ scope: options.scope,
3687
4682
  },
3688
4683
  });
3689
- const selectedFolders = popup.data.result ? popup.data?.items ?? [] : [];
4684
+ const selectedFolders = popup.data.result ? (popup.data?.items ?? []) : [];
3690
4685
  if (selectedFolders.length > 0) {
3691
4686
  const selectedFolder = selectedFolders[0];
3692
4687
  if (selectedFolder) {
@@ -3707,6 +4702,9 @@ class AXMDocumentManagerService {
3707
4702
  //TODO upload file to file storage
3708
4703
  fileId: '',
3709
4704
  size: 0,
4705
+ documentType: options.node.documentTypes[0],
4706
+ // TODO
4707
+ status: 'Draft',
3710
4708
  });
3711
4709
  }
3712
4710
  return true;
@@ -3725,7 +4723,9 @@ class AXMDocumentManagerService {
3725
4723
  * Searches for folders by term within a scope
3726
4724
  */
3727
4725
  async searchFolders(searchTerm, scope, options) {
3728
- const { result: rootNode } = options?.folderId ? await this.getFolder(scope, options.folderId, options) : await this.getRoot(scope, options);
4726
+ const { result: rootNode } = options?.folderId
4727
+ ? await this.getFolder(scope, options.folderId, options)
4728
+ : await this.getRoot(scope, options);
3729
4729
  const folders = await this.folderService.searchFolders(searchTerm, rootNode.id);
3730
4730
  return folders.map((folder) => this.mapFolderDtoToFolderNode(folder));
3731
4731
  }
@@ -3733,7 +4733,9 @@ class AXMDocumentManagerService {
3733
4733
  * Searches for files by term within a scope
3734
4734
  */
3735
4735
  async searchFiles(searchTerm, scope, options) {
3736
- const { result: rootNode } = options?.folderId ? await this.getFolder(scope, options.folderId, options) : await this.getRoot(scope, options);
4736
+ const { result: rootNode } = options?.folderId
4737
+ ? await this.getFolder(scope, options.folderId, options)
4738
+ : await this.getRoot(scope, options);
3737
4739
  const files = await this.documentService.searchFiles(searchTerm, rootNode.id);
3738
4740
  return files.map((file) => this.mapFileToNode(file));
3739
4741
  }
@@ -3786,8 +4788,9 @@ class AXMDocumentManagerService {
3786
4788
  },
3787
4789
  });
3788
4790
  if (result.data != null) {
3789
- const { uploads, result: metaContext } = result.data;
3790
- for (const listItem of uploads) { // listItem is AXPFileListItem
4791
+ const { uploads, result: metaContext, isReviewSent } = result.data;
4792
+ for (const listItem of uploads) {
4793
+ // listItem is AXPFileListItem
3791
4794
  let actualFile;
3792
4795
  if (listItem.source?.kind === 'blob' && listItem.source.value instanceof Blob) {
3793
4796
  actualFile = listItem.source.value;
@@ -3804,41 +4807,29 @@ class AXMDocumentManagerService {
3804
4807
  name: listItem.name,
3805
4808
  });
3806
4809
  await this.fileService.commit(f.fileId);
3807
- let version = 1;
3808
- if (docType.enableVersioning) {
3809
- try {
3810
- const existingDocs = await this.documentService.query({
3811
- skip: 0,
3812
- take: 100,
3813
- filter: {
3814
- operator: null,
3815
- logic: 'and',
3816
- filters: [
3817
- { field: 'parentId', operator: { type: 'equal' }, value: folderId },
3818
- { field: 'type', operator: { type: 'equal' }, value: docType.id },
3819
- { field: 'name', operator: { type: 'equal' }, value: listItem.name },
3820
- ],
3821
- },
3822
- });
3823
- if (existingDocs.items.length > 0) {
3824
- const maxVer = Math.max(...existingDocs.items.map((d) => (d.version ?? 0)));
3825
- version = maxVer + 1;
3826
- }
3827
- }
3828
- catch (err) {
3829
- console.warn('Version query failed', err);
3830
- }
3831
- }
3832
- await this.documentService.insertOne({
4810
+ const docId = await this.documentService.insertOne({
3833
4811
  fileId: f.fileId,
3834
4812
  meta: metaContext,
3835
4813
  parentId: folderId,
3836
4814
  size: listItem.size ?? 0,
3837
4815
  name: listItem.name,
3838
4816
  title: listItem.name,
3839
- type: docType.id,
3840
- version,
4817
+ documentType: docType,
4818
+ version: docType.enableVersioning ? 1 : undefined,
4819
+ status: docType.requiresReview ? (isReviewSent ? 'PendingReview' : 'Draft') : 'Completed',
3841
4820
  });
4821
+ if (isReviewSent) {
4822
+ const reviewRecordID = await this.reviewService.insertOne({
4823
+ documentId: docId,
4824
+ // document : docType,
4825
+ version: 1,
4826
+ reviewStatus: 'Pending',
4827
+ modifiedBy: this.sessionService.user,
4828
+ });
4829
+ await this.documentService.updateOne(docId, {
4830
+ reviewRecordId: reviewRecordID,
4831
+ });
4832
+ }
3842
4833
  }
3843
4834
  return true;
3844
4835
  }
@@ -3853,74 +4844,77 @@ class AXMDocumentManagerService {
3853
4844
  */
3854
4845
  async updateUploadFileByType(node) {
3855
4846
  const comp = (await Promise.resolve().then(function () { return index; })).AXMDocumentTypeChooseFileComponent;
3856
- console.log(node);
3857
- const result = await this.popupService.open(comp, {
3858
- title: `Edit ${node.documentTypes?.[0]?.title}`,
3859
- data: {
3860
- documentType: node.documentTypes?.[0],
3861
- },
3862
- });
3863
- if (result.data != null) {
3864
- const { uploads, result: metaContext } = result.data;
3865
- for (const listItem of uploads) { // listItem is AXPFileListItem
3866
- let actualFile;
3867
- if (listItem.source?.kind === 'blob' && listItem.source.value instanceof Blob) {
3868
- actualFile = listItem.source.value;
3869
- }
3870
- if (!actualFile) {
3871
- console.warn(`Skipping item without a valid blob source in uploadFileByType: ${listItem.name}`);
3872
- continue;
3873
- }
3874
- const f = await this.fileService.save({
3875
- category: 'document',
3876
- file: actualFile,
3877
- //refId: folderId,
3878
- refId: node.parentId ?? '',
3879
- refType: `${RootConfig.module.name}.${RootConfig.entities.folder.name}`,
3880
- name: listItem.name,
3881
- });
3882
- await this.fileService.commit(f.fileId);
3883
- let version = 1;
3884
- if (node.documentTypes?.[0]?.enableVersioning) {
3885
- try {
3886
- const existingDocs = await this.documentService.query({
3887
- skip: 0,
3888
- take: 100,
3889
- filter: {
3890
- operator: null,
3891
- logic: 'and',
3892
- filters: [
3893
- { field: 'parentId', operator: { type: 'equal' }, value: node.parentId },
3894
- { field: 'type', operator: { type: 'equal' }, value: node.documentTypes?.[0]?.id },
3895
- { field: 'name', operator: { type: 'equal' }, value: listItem.name },
3896
- ],
4847
+ const editableFile = await this.documentService.getOne(node.id);
4848
+ if (editableFile.documentType) {
4849
+ const docType = editableFile.documentType;
4850
+ // Transform meta object to extract only values
4851
+ const transformedMeta = editableFile.meta
4852
+ ? Object.fromEntries(Object.entries(editableFile.meta).map(([key, obj]) => [key, obj.value]))
4853
+ : {};
4854
+ const result = await this.popupService.open(comp, {
4855
+ title: `Edit ${editableFile.name}`,
4856
+ data: {
4857
+ documentType: docType,
4858
+ defaultContext: {
4859
+ ...transformedMeta,
4860
+ uploads: [
4861
+ {
4862
+ name: editableFile.name,
4863
+ size: editableFile.size,
4864
+ status: 'uploaded',
4865
+ source: {
4866
+ kind: 'fileId',
4867
+ value: editableFile.fileId,
4868
+ },
3897
4869
  },
4870
+ ],
4871
+ },
4872
+ },
4873
+ });
4874
+ if (result.data != null) {
4875
+ const { uploads, result: metaContext, isReviewSent } = result.data;
4876
+ let newFileId;
4877
+ const itemUpload = uploads[0];
4878
+ if (!(itemUpload.source?.kind == 'fileId' && itemUpload.source.value == editableFile.fileId)) {
4879
+ const f = await this.fileService.save({
4880
+ category: 'document',
4881
+ file: itemUpload.source?.value,
4882
+ //refId: folderId,
4883
+ refId: node.parentId ?? '',
4884
+ refType: `${RootConfig.module.name}.${RootConfig.entities.folder.name}`,
4885
+ name: itemUpload.name,
4886
+ });
4887
+ await this.fileService.commit(f.fileId);
4888
+ newFileId = f.fileId;
4889
+ }
4890
+ if (newFileId != undefined || metaContext != editableFile.meta) {
4891
+ const newVersion = docType.enableVersioning ? (editableFile.version ?? 1) + 1 : undefined;
4892
+ let reviewRecordID = undefined;
4893
+ if (isReviewSent) {
4894
+ reviewRecordID = await this.reviewService.insertOne({
4895
+ documentId: node.id,
4896
+ version: newVersion ?? 0,
4897
+ reviewStatus: 'Pending',
4898
+ modifiedBy: this.sessionService.user,
3898
4899
  });
3899
- if (existingDocs.items.length > 0) {
3900
- const maxVer = Math.max(...existingDocs.items.map((d) => (d.version ?? 0)));
3901
- version = maxVer + 1;
3902
- }
3903
- }
3904
- catch (err) {
3905
- console.warn('Version query failed', err);
3906
4900
  }
4901
+ await this.documentService.updateOne(node.id, {
4902
+ fileId: newFileId ?? editableFile.fileId,
4903
+ meta: metaContext,
4904
+ version: newVersion,
4905
+ reviewRecordId: reviewRecordID,
4906
+ status: docType.requiresReview ? (isReviewSent ? 'PendingReview' : 'Draft') : 'Completed',
4907
+ });
3907
4908
  }
3908
- await this.documentService.updateOne(node.id, {
3909
- fileId: f.fileId,
3910
- meta: metaContext,
3911
- parentId: node.parentId ?? undefined,
3912
- size: listItem.size ?? 0,
3913
- name: listItem.name,
3914
- title: listItem.name,
3915
- version,
3916
- });
4909
+ return true;
4910
+ }
4911
+ else {
4912
+ return false;
3917
4913
  }
3918
- return true;
3919
4914
  }
3920
4915
  else {
3921
4916
  return false;
3922
4917
  }
3923
- return false;
3924
4918
  }
3925
4919
  //#endregion
3926
4920
  //#region ---- Dialog Operations ----
@@ -3928,7 +4922,7 @@ class AXMDocumentManagerService {
3928
4922
  * Shows share dialog for a node
3929
4923
  */
3930
4924
  async showShareDialog(node) {
3931
- const comp = (await import('./acorex-modules-document-management-share-dialog.component-CLF6b1Io.mjs')).AXMShareDialogComponent;
4925
+ const comp = (await import('./acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs')).AXMShareDialogComponent;
3932
4926
  const popup = await this.popupService.open(comp, {
3933
4927
  title: 'Share',
3934
4928
  data: {
@@ -3943,7 +4937,7 @@ class AXMDocumentManagerService {
3943
4937
  * Shows share via email dialog for a node
3944
4938
  */
3945
4939
  async showShareWithEmailDialog(node) {
3946
- const comp = (await import('./acorex-modules-document-management-share-email-dialog.component-B8zNvOUv.mjs'))
4940
+ const comp = (await import('./acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs'))
3947
4941
  .AXMShareEmailDialogComponent;
3948
4942
  const popup = await this.popupService.open(comp, {
3949
4943
  title: 'Share via Email',
@@ -3959,7 +4953,7 @@ class AXMDocumentManagerService {
3959
4953
  * Shows link dialog for a node
3960
4954
  */
3961
4955
  async showLinkDialog(node) {
3962
- const comp = (await import('./acorex-modules-document-management-link-dialog.component-CPuOuvu-.mjs')).AXMLinkDialogComponent;
4956
+ const comp = (await import('./acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs')).AXMLinkDialogComponent;
3963
4957
  const popup = await this.popupService.open(comp, {
3964
4958
  title: 'Share Link',
3965
4959
  data: {
@@ -3996,7 +4990,7 @@ class AXMDocumentManagerService {
3996
4990
  * Shows folder edit dialog
3997
4991
  */
3998
4992
  async showFolderEditDialog(node) {
3999
- const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs'))
4993
+ const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs'))
4000
4994
  .AXMCreateFolderDialog;
4001
4995
  const popup = await this.popupService.open(comp, {
4002
4996
  title: await this.translate.translateAsync('@document-management:actions.update-folder'),
@@ -4010,7 +5004,7 @@ class AXMDocumentManagerService {
4010
5004
  * Shows create folder dialog
4011
5005
  */
4012
5006
  async showCreateFolderDialog(parentId) {
4013
- const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs'))
5007
+ const comp = (await import('./acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs'))
4014
5008
  .AXMCreateFolderDialog;
4015
5009
  const popup = await this.popupService.open(comp, {
4016
5010
  title: await this.translate.translateAsync('@document-management:actions.create-folder'),
@@ -4024,7 +5018,7 @@ class AXMDocumentManagerService {
4024
5018
  * Shows rename popup for a node
4025
5019
  */
4026
5020
  async showRenamePopup(node) {
4027
- const comp = (await import('./acorex-modules-document-management-rename-node-dialog.component-MPkYZl2p.mjs'))
5021
+ const comp = (await import('./acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs'))
4028
5022
  .AXMRenameNodeDialog;
4029
5023
  const popup = await this.popupService.open(comp, {
4030
5024
  title: 't("actions.rename")',
@@ -4050,7 +5044,7 @@ class AXMDocumentManagerService {
4050
5044
  * Shows choose file dialog
4051
5045
  */
4052
5046
  async showChooseFileDialog(scope) {
4053
- const comp = (await import('./acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs')).AXMDocumentDriveChooseComponent;
5047
+ const comp = (await import('./acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs')).AXMDocumentDriveChooseComponent;
4054
5048
  const result = await this.popupService.open(comp, {
4055
5049
  title: await this.translate.translateAsync('@document-management:actions.choose-from-drive'),
4056
5050
  data: {
@@ -4069,8 +5063,8 @@ class AXMDocumentManagerService {
4069
5063
  const isVirtualFolder = node.parentId === 'virtual';
4070
5064
  const parentFolderName = isVirtualFolder ? 'Virtual' : (await this.folderService.getOne(node.parentId)).name;
4071
5065
  const documents = isVirtualFolder
4072
- ? options?.folderVirtualFiles ?? []
4073
- : (await this.folderService.getOne(node.parentId)).documents ?? [];
5066
+ ? (options?.folderVirtualFiles ?? [])
5067
+ : ((await this.folderService.getOne(node.parentId)).documents ?? []);
4074
5068
  const nodes = await Promise.all(documents
4075
5069
  .filter((item) => {
4076
5070
  if (!item.name)
@@ -4086,8 +5080,8 @@ class AXMDocumentManagerService {
4086
5080
  data: {
4087
5081
  nodes,
4088
5082
  index: isVirtualFolder
4089
- ? options?.folderVirtualFiles?.findIndex((f) => f.id === node.id) ?? 0
4090
- : options?.index ?? 0,
5083
+ ? (options?.folderVirtualFiles?.findIndex((f) => f.id === node.id) ?? 0)
5084
+ : (options?.index ?? 0),
4091
5085
  },
4092
5086
  });
4093
5087
  }
@@ -4103,10 +5097,10 @@ class AXMDocumentManagerService {
4103
5097
  return node;
4104
5098
  }
4105
5099
  }
4106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4107
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagerService, providedIn: 'root' }); }
5100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5101
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagerService, providedIn: 'root' }); }
4108
5102
  }
4109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagerService, decorators: [{
5103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagerService, decorators: [{
4110
5104
  type: Injectable,
4111
5105
  args: [{
4112
5106
  providedIn: 'root',
@@ -4220,6 +5214,7 @@ class ScopedDriveService {
4220
5214
  class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {
4221
5215
  constructor() {
4222
5216
  super(...arguments);
5217
+ this.defaultContext = {};
4223
5218
  this.context = signal({}, ...(ngDevMode ? [{ debugName: "context" }] : []));
4224
5219
  this.resultObject = {};
4225
5220
  this.uploadNode = signal({
@@ -4233,11 +5228,12 @@ class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {
4233
5228
  }, ...(ngDevMode ? [{ debugName: "uploadNode" }] : []));
4234
5229
  }
4235
5230
  async ngOnInit() {
5231
+ this.context.set(this.defaultContext);
4236
5232
  this.uploadNode.update((old) => {
4237
5233
  return {
4238
5234
  ...old,
4239
5235
  options: {
4240
- multiple: this.documentType.isMultiple,
5236
+ multiple: false,
4241
5237
  accept: this.documentType.name == 'any'
4242
5238
  ? ''
4243
5239
  : this.documentType.type.selectedItems.map((i) => `.${i.name.split('.')[1]}`).join(','),
@@ -4245,7 +5241,6 @@ class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {
4245
5241
  };
4246
5242
  });
4247
5243
  for (const i of this.documentType.meta) {
4248
- console.log(i);
4249
5244
  if (!get(i, '__node__')) {
4250
5245
  const node = typeof i.interface == 'function'
4251
5246
  ? await i.interface()
@@ -4263,7 +5258,7 @@ class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {
4263
5258
  handleCancel() {
4264
5259
  this.close();
4265
5260
  }
4266
- handleSubmit() {
5261
+ handleSubmit(isReviewSent = false) {
4267
5262
  const contextData = this.context();
4268
5263
  const uploads = contextData.uploads;
4269
5264
  delete contextData.uploads;
@@ -4279,19 +5274,20 @@ class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {
4279
5274
  this.close({
4280
5275
  uploads: uploads,
4281
5276
  result: result,
5277
+ isReviewSent: isReviewSent,
4282
5278
  });
4283
5279
  }
4284
5280
  getNode(meta) {
4285
5281
  return get(meta, '__node__');
4286
5282
  }
4287
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4288
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMDocumentTypeChooseFileComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ax-content>\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-widgets-container [context]=\"context()\" (onContextChanged)=\"handleContextChanged($event)\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (doc of documentType.meta; track doc.name) {\n <ax-form-field>\n <ax-label>{{ doc.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(doc)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n }\n <ng-container axp-widget-renderer [node]=\"uploadNode()\" mode=\"edit\"></ng-container>\n </div>\n </ax-form>\n </axp-widgets-container>\n </div>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'cancel' | translate | async\" (onClick)=\"handleCancel()\"> </ax-button>\n <ax-button [text]=\"'submit' | translate | async\" look=\"solid\" color=\"primary\" (onClick)=\"handleSubmit()\">\n </ax-button>\n </ax-suffix>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type:
5283
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5284
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMDocumentTypeChooseFileComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ax-content>\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-widgets-container [context]=\"context()\" (onContextChanged)=\"handleContextChanged($event)\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (doc of documentType.meta; track doc.name) {\n <ax-form-field>\n <ax-label>{{ doc.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(doc)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n } \n <ng-container axp-widget-renderer [node]=\"uploadNode()\" mode=\"edit\"></ng-container>\n </div>\n </ax-form>\n </axp-widgets-container>\n </div>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'cancel' | translate | async\" (onClick)=\"handleCancel()\"> </ax-button>\n\n <ax-dropdown-button color=\"primary\" [text]=\"'submit' | translate | async\" look=\"solid\"\n (onClick)=\"handleSubmit()\">\n <ax-button-item-list>\n <ax-button-item [text]=\"('@document-management:submitAndSendForReview' | translate | async)!\"\n (onClick)=\"handleSubmit(true)\">\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n </ax-suffix>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type:
4289
5285
  //
4290
- AXButtonModule }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i3.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i4.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type:
5286
+ AXButtonModule }, { kind: "component", type: i1$2.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: i1$2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i1$2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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: AXFormModule }, { kind: "component", type: i3.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i3.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i4.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "component", type: i5.AXDropdownButtonComponent, selector: "ax-dropdown-button", inputs: ["disabled", "size", "color", "look", "text", "type", "mode"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type:
4291
5287
  //
4292
5288
  AXPLayoutBuilderModule }, { kind: "component", type: i6.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i6.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4293
5289
  }
4294
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, decorators: [{
5290
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, decorators: [{
4295
5291
  type: Component,
4296
5292
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [
4297
5293
  CommonModule,
@@ -4302,9 +5298,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
4302
5298
  AXLabelModule,
4303
5299
  AXSelectBoxModule,
4304
5300
  AXTranslationModule,
5301
+ AXDropdownButtonModule,
4305
5302
  //
4306
5303
  AXPLayoutBuilderModule,
4307
- ], template: "<ax-content>\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-widgets-container [context]=\"context()\" (onContextChanged)=\"handleContextChanged($event)\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (doc of documentType.meta; track doc.name) {\n <ax-form-field>\n <ax-label>{{ doc.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(doc)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n }\n <ng-container axp-widget-renderer [node]=\"uploadNode()\" mode=\"edit\"></ng-container>\n </div>\n </ax-form>\n </axp-widgets-container>\n </div>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'cancel' | translate | async\" (onClick)=\"handleCancel()\"> </ax-button>\n <ax-button [text]=\"'submit' | translate | async\" look=\"solid\" color=\"primary\" (onClick)=\"handleSubmit()\">\n </ax-button>\n </ax-suffix>\n</ax-footer>\n" }]
5304
+ ], template: "<ax-content>\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-widgets-container [context]=\"context()\" (onContextChanged)=\"handleContextChanged($event)\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (doc of documentType.meta; track doc.name) {\n <ax-form-field>\n <ax-label>{{ doc.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(doc)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n } \n <ng-container axp-widget-renderer [node]=\"uploadNode()\" mode=\"edit\"></ng-container>\n </div>\n </ax-form>\n </axp-widgets-container>\n </div>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'cancel' | translate | async\" (onClick)=\"handleCancel()\"> </ax-button>\n\n <ax-dropdown-button color=\"primary\" [text]=\"'submit' | translate | async\" look=\"solid\"\n (onClick)=\"handleSubmit()\">\n <ax-button-item-list>\n <ax-button-item [text]=\"('@document-management:submitAndSendForReview' | translate | async)!\"\n (onClick)=\"handleSubmit(true)\">\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n </ax-suffix>\n</ax-footer>\n" }]
4308
5305
  }] });
4309
5306
 
4310
5307
  class AXMFileViewerPopupComponent extends AXBasePageComponent {
@@ -4327,10 +5324,10 @@ class AXMFileViewerPopupComponent extends AXBasePageComponent {
4327
5324
  onClose() {
4328
5325
  this.close();
4329
5326
  }
4330
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileViewerPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4331
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.3", type: AXMFileViewerPopupComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "mediaViewer", first: true, predicate: AXMediaViewerContainerComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ax-content>\n <ax-media-viewer-container [thumbnail]=\"true\" #c [dataArray]=\"nodes\">\n <ax-header>\n <ax-prefix>\n <ax-file-info></ax-file-info>\n </ax-prefix>\n <ax-suffix>\n <ax-fullscreen-button></ax-fullscreen-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"c.next()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"c.prev()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'close'\" (click)=\"onClose()\" />\n </ax-suffix>\n</ax-footer>\n", styles: ["ax-media-viewer-container{--ax-sys-border-radius:0 }\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "component", type: i2.AXDecoratorFullScreenButtonComponent, selector: "ax-fullscreen-button" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.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: AXMediaViewerModule }, { kind: "component", type: i3$2.AXMediaViewerContainerComponent, selector: "ax-media-viewer-container", inputs: ["dataArray", "thumbnail"] }, { kind: "component", type: i3$2.AXFileInfoComponent, selector: "ax-file-info" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5327
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileViewerPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5328
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.4", type: AXMFileViewerPopupComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "mediaViewer", first: true, predicate: AXMediaViewerContainerComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ax-content>\n <ax-media-viewer-container [thumbnail]=\"true\" #c [dataArray]=\"nodes\">\n <ax-header>\n <ax-prefix>\n <ax-file-info></ax-file-info>\n </ax-prefix>\n <ax-suffix>\n <ax-fullscreen-button></ax-fullscreen-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"c.next()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"c.prev()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'close'\" (click)=\"onClose()\" />\n </ax-suffix>\n</ax-footer>\n", styles: ["ax-media-viewer-container{--ax-sys-border-radius:0 }\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "component", type: i2.AXDecoratorFullScreenButtonComponent, selector: "ax-fullscreen-button" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.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: AXMediaViewerModule }, { kind: "component", type: i3$2.AXMediaViewerContainerComponent, selector: "ax-media-viewer-container", inputs: ["dataArray", "thumbnail"] }, { kind: "component", type: i3$2.AXFileInfoComponent, selector: "ax-file-info" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4332
5329
  }
4333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFileViewerPopupComponent, decorators: [{
5330
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFileViewerPopupComponent, decorators: [{
4334
5331
  type: Component,
4335
5332
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXDecoratorModule, AXButtonModule, AXMediaViewerModule], template: "<ax-content>\n <ax-media-viewer-container [thumbnail]=\"true\" #c [dataArray]=\"nodes\">\n <ax-header>\n <ax-prefix>\n <ax-file-info></ax-file-info>\n </ax-prefix>\n <ax-suffix>\n <ax-fullscreen-button></ax-fullscreen-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"c.next()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"c.prev()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n</ax-content>\n<ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'close'\" (click)=\"onClose()\" />\n </ax-suffix>\n</ax-footer>\n", styles: ["ax-media-viewer-container{--ax-sys-border-radius:0 }\n"] }]
4336
5333
  }] });
@@ -4504,6 +5501,8 @@ const AXPDocumentExplorerViewModel = signalStore({ providedIn: 'root' }, withSta
4504
5501
  children: files,
4505
5502
  parentId: options?.parentId || null,
4506
5503
  size: 0,
5504
+ // TODO
5505
+ documentTypes: [],
4507
5506
  storageType: 'virtual',
4508
5507
  };
4509
5508
  patchState(store, {
@@ -5302,13 +6301,13 @@ class AXMDocumentExplorerComponent {
5302
6301
  this.showContextMenu = input(true, ...(ngDevMode ? [{ debugName: "showContextMenu" }] : []));
5303
6302
  this.view = signal(null, ...(ngDevMode ? [{ debugName: "view" }] : []));
5304
6303
  this.viewMap = {
5305
- list: async () => (await import('./acorex-modules-document-management-list-view.component-CWGGArxw.mjs')).AXMDocumentExplorerListViewComponent,
5306
- 'small-tiles': async () => (await import('./acorex-modules-document-management-small-tiles-view.component-C1E8RKYM.mjs')).AXMDocumentExplorerSmallTilesViewComponent,
5307
- 'large-tiles': async () => (await import('./acorex-modules-document-management-large-tiles-view.component-CQyiGE99.mjs')).AXMDocumentExplorerLargeTilesViewComponent,
5308
- details: async () => (await import('./acorex-modules-document-management-details-view.component-CzTg3hha.mjs')).AXMDocumentExplorerDetailsViewComponent,
5309
- 'large-icons': async () => (await import('./acorex-modules-document-management-large-icons-view.component-BeKFvgYU.mjs')).AXMDocumentExplorerLargeIconsViewComponent,
5310
- 'small-icons': async () => (await import('./acorex-modules-document-management-small-icons-view.component-DRVLlW1e.mjs')).AXMDocumentExplorerSmallIconsViewComponent,
5311
- 'attachment': async () => (await import('./acorex-modules-document-management-attachment-widget.component-C6pop0RM.mjs')).AXMDocumentExplorerAttachmentComponent,
6304
+ list: async () => (await import('./acorex-modules-document-management-list-view.component-C4VFnACA.mjs')).AXMDocumentExplorerListViewComponent,
6305
+ 'small-tiles': async () => (await import('./acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs')).AXMDocumentExplorerSmallTilesViewComponent,
6306
+ 'large-tiles': async () => (await import('./acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs')).AXMDocumentExplorerLargeTilesViewComponent,
6307
+ details: async () => (await import('./acorex-modules-document-management-details-view.component-CMI2Eokj.mjs')).AXMDocumentExplorerDetailsViewComponent,
6308
+ 'large-icons': async () => (await import('./acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs')).AXMDocumentExplorerLargeIconsViewComponent,
6309
+ 'small-icons': async () => (await import('./acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs')).AXMDocumentExplorerSmallIconsViewComponent,
6310
+ 'attachment': async () => (await import('./acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs')).AXMDocumentExplorerAttachmentComponent,
5312
6311
  };
5313
6312
  this.#effect = effect(() => {
5314
6313
  if (this.vm.loadingFolderId() == null) {
@@ -5368,10 +6367,10 @@ class AXMDocumentExplorerComponent {
5368
6367
  await this.vm.handleMenuItemClick(e.item.name, e.item.data);
5369
6368
  }
5370
6369
  }
5371
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentExplorerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5372
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMDocumentExplorerComponent, isStandalone: true, selector: "axm-document-explorer", inputs: { browseMode: { classPropertyName: "browseMode", publicName: "browseMode", isSignal: true, isRequired: false, transformFunction: null }, viewMode: { classPropertyName: "viewMode", publicName: "viewMode", isSignal: true, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: true, isRequired: false, transformFunction: null }, showContextMenu: { classPropertyName: "showContextMenu", publicName: "showContextMenu", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["itemsContextMenu"], descendants: true, isSignal: true }, { propertyName: "rootContextMenu", first: true, predicate: ["rootContextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<!-- Empty State -->\n<div class=\"view-container\">\n @if (vm.folders().length === 0 && vm.files().length === 0) {\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-py-16 ax-h-full\">\n <ax-icon icon=\"fa-light fa-folder-open\" class=\"ax-text-6xl ax-mb-4\"></ax-icon>\n <h3 class=\"ax-text-xl ax-font-medium ax-mb-2\">No Items Found</h3>\n <p class=\"\">This folder is empty. Add some files or folders to get started.</p>\n </div>\n } @else {\n <ng-container [ngComponentOutlet]=\"view()\"></ng-container>\n }\n</div>\n\n<!-- Context Menu -->\n@if (showContextMenu()) {\n<!-- Item Context Menu-->\n<ax-context-menu\n #itemsContextMenu\n [target]=\"'.__explorer-item'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n (onOpening)=\"handleContextMenuOnOpening($event)\"\n>\n</ax-context-menu>\n<!-- Root Context Menu-->\n<ax-context-menu\n #rootContextMenu\n [target]=\"'.view-container'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n (onOpening)=\"handleContextMenuRootOnOpening($event)\"\n>\n</ax-context-menu>\n}\n", styles: ["axm-document-explorer{display:flex;height:max-content;min-height:100%;width:100%;flex-direction:row;gap:1rem}axm-document-explorer>.view-container{display:flex;flex:1 1 0%;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;flex-direction:column;gap:1rem}axm-document-explorer .animation-duration-2s{--fa-animation-duration: 2s}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i3$3.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }], encapsulation: i0.ViewEncapsulation.None }); }
6370
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentExplorerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6371
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMDocumentExplorerComponent, isStandalone: true, selector: "axm-document-explorer", inputs: { browseMode: { classPropertyName: "browseMode", publicName: "browseMode", isSignal: true, isRequired: false, transformFunction: null }, viewMode: { classPropertyName: "viewMode", publicName: "viewMode", isSignal: true, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: true, isRequired: false, transformFunction: null }, showContextMenu: { classPropertyName: "showContextMenu", publicName: "showContextMenu", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["itemsContextMenu"], descendants: true, isSignal: true }, { propertyName: "rootContextMenu", first: true, predicate: ["rootContextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<!-- Empty State -->\n<div class=\"view-container\">\n @if (vm.folders().length === 0 && vm.files().length === 0) {\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-py-16 ax-h-full\">\n <ax-icon icon=\"fa-light fa-folder-open\" class=\"ax-text-6xl ax-mb-4\"></ax-icon>\n <h3 class=\"ax-text-xl ax-font-medium ax-mb-2\">No Items Found</h3>\n <p class=\"\">This folder is empty. Add some files or folders to get started.</p>\n </div>\n } @else {\n <ng-container [ngComponentOutlet]=\"view()\"></ng-container>\n }\n</div>\n\n<!-- Context Menu -->\n@if (showContextMenu()) {\n<!-- Item Context Menu-->\n<ax-context-menu\n #itemsContextMenu\n [target]=\"'.__explorer-item'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n (onOpening)=\"handleContextMenuOnOpening($event)\"\n>\n</ax-context-menu>\n<!-- Root Context Menu-->\n<ax-context-menu\n #rootContextMenu\n [target]=\"'.view-container'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n (onOpening)=\"handleContextMenuRootOnOpening($event)\"\n>\n</ax-context-menu>\n}\n", styles: ["axm-document-explorer{display:flex;height:max-content;min-height:100%;width:100%;flex-direction:row;gap:1rem}axm-document-explorer>.view-container{display:flex;flex:1 1 0%;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;flex-direction:column;gap:1rem}axm-document-explorer .animation-duration-2s{--fa-animation-duration: 2s}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i3$3.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }], encapsulation: i0.ViewEncapsulation.None }); }
5373
6372
  }
5374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentExplorerComponent, decorators: [{
6373
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentExplorerComponent, decorators: [{
5375
6374
  type: Component,
5376
6375
  args: [{ selector: 'axm-document-explorer', standalone: true, encapsulation: ViewEncapsulation.None, imports: [
5377
6376
  CommonModule,
@@ -5389,10 +6388,10 @@ class AXMFolderPathBreadcrumbsComponent {
5389
6388
  this.vm = inject(AXPDocumentExplorerViewModel);
5390
6389
  this.layout = inject(AXPLayoutThemeService);
5391
6390
  }
5392
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5393
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMFolderPathBreadcrumbsComponent, isStandalone: true, selector: "axm-folder-path-breadcrumbs", ngImport: i0, template: "<!-- Breadcrumbs Section -->\n<div class=\"__breadcrumb ax-xs\">\n <!-- Desktop Breadcrumb -->\n @for (item of vm.currentPath(); track item.id; let i = $index;let last = $last) {\n <!-- Navigation Button -->\n <ax-button look=\"blank\" (onClick)=\"vm.navigateToFolder(item.id)\" [text]=\"item.name\" [disabled]=\"last\">\n @if(i === 0) {\n <ax-icon icon=\"fa-light fa-cloud\"></ax-icon>\n }@else {\n <ax-icon icon=\"fa-light fa-folder-closed\"></ax-icon>\n }\n </ax-button>\n <!-- Separator -->\n @if(!last) {\n <i class=\"far fa-chevron-right rtl:ax-rotate-180 fa-fw fa-xs ax-me-2\"></i>\n }\n <!-- End Navigation Button -->\n }\n</div>\n", styles: [":host{display:flex;width:100%;align-items:center}:host .__nav{display:flex;flex-direction:row;align-items:center;gap:.25rem;border-inline-end-width:1px;padding-inline-start:.25rem;padding-inline-end:.5rem}:host .__breadcrumb{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;padding-inline-start:.5rem;padding-inline-end:.25rem}:host .__breadcrumb .ax-state-disabled button,:host .__breadcrumb .ax-state-loading button{cursor:default!important}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }] }); }
6391
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6392
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMFolderPathBreadcrumbsComponent, isStandalone: true, selector: "axm-folder-path-breadcrumbs", ngImport: i0, template: "<!-- Breadcrumbs Section -->\n<div class=\"__breadcrumb ax-xs\">\n <!-- Desktop Breadcrumb -->\n @for (item of vm.currentPath(); track item.id; let i = $index;let last = $last) {\n <!-- Navigation Button -->\n <ax-button look=\"blank\" (onClick)=\"vm.navigateToFolder(item.id)\" [text]=\"item.name\" [disabled]=\"last\">\n @if(i === 0) {\n <ax-icon icon=\"fa-light fa-cloud\"></ax-icon>\n }@else {\n <ax-icon icon=\"fa-light fa-folder-closed\"></ax-icon>\n }\n </ax-button>\n <!-- Separator -->\n @if(!last) {\n <i class=\"far fa-chevron-right rtl:ax-rotate-180 fa-fw fa-xs ax-me-2\"></i>\n }\n <!-- End Navigation Button -->\n }\n</div>\n", styles: [":host{display:flex;width:100%;align-items:center}:host .__nav{display:flex;flex-direction:row;align-items:center;gap:.25rem;border-inline-end-width:1px;padding-inline-start:.25rem;padding-inline-end:.5rem}:host .__breadcrumb{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;padding-inline-start:.5rem;padding-inline-end:.25rem}:host .__breadcrumb .ax-state-disabled button,:host .__breadcrumb .ax-state-loading button{cursor:default!important}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }] }); }
5394
6393
  }
5395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, decorators: [{
6394
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, decorators: [{
5396
6395
  type: Component,
5397
6396
  args: [{ selector: 'axm-folder-path-breadcrumbs', standalone: true, imports: [
5398
6397
  AXButtonModule,
@@ -5462,8 +6461,8 @@ class AXPFileUploaderWidgetExtensionComponent {
5462
6461
  }
5463
6462
  }
5464
6463
  }
5465
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPFileUploaderWidgetExtensionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5466
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXPFileUploaderWidgetExtensionComponent, isStandalone: true, selector: "axp-file-uploader-widget-extension", providers: [], ngImport: i0, template: `
6464
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXPFileUploaderWidgetExtensionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6465
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AXPFileUploaderWidgetExtensionComponent, isStandalone: true, selector: "axp-file-uploader-widget-extension", providers: [], ngImport: i0, template: `
5467
6466
  <ax-divider></ax-divider>
5468
6467
  <ax-button-item
5469
6468
  [text]="('@document-management:actions.choose-from-drive' | translate | async)!"
@@ -5479,7 +6478,7 @@ class AXPFileUploaderWidgetExtensionComponent {
5479
6478
  // ACoreX
5480
6479
  AXFormModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: AXCheckBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.AXTranslatorPipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
5481
6480
  }
5482
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPFileUploaderWidgetExtensionComponent, decorators: [{
6481
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXPFileUploaderWidgetExtensionComponent, decorators: [{
5483
6482
  type: Component,
5484
6483
  args: [{
5485
6484
  selector: 'axp-file-uploader-widget-extension',
@@ -5513,9 +6512,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
5513
6512
  }] });
5514
6513
 
5515
6514
  class AXMDriveChooseModule {
5516
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDriveChooseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
5517
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDriveChooseModule, imports: [i1$4.AXPComponentSlotModule] }); }
5518
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDriveChooseModule, imports: [AXPComponentSlotModule.forChild({
6515
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDriveChooseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6516
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDriveChooseModule, imports: [i1$4.AXPComponentSlotModule] }); }
6517
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDriveChooseModule, imports: [AXPComponentSlotModule.forChild({
5519
6518
  'file-uploader-widget-actions': [
5520
6519
  {
5521
6520
  name: 'primary-actions',
@@ -5524,7 +6523,7 @@ class AXMDriveChooseModule {
5524
6523
  ]
5525
6524
  })] }); }
5526
6525
  }
5527
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDriveChooseModule, decorators: [{
6526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDriveChooseModule, decorators: [{
5528
6527
  type: NgModule,
5529
6528
  args: [{
5530
6529
  imports: [
@@ -5556,8 +6555,8 @@ class AXMetaListItemComponent {
5556
6555
  handleEdit() {
5557
6556
  this.onEdit.emit();
5558
6557
  }
5559
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMetaListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5560
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMetaListItemComponent, isStandalone: true, selector: "axp-meta-list-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onRemove: "onRemove", onRevert: "onRevert", onEdit: "onEdit" }, ngImport: i0, template: `
6558
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMetaListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6559
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMetaListItemComponent, isStandalone: true, selector: "axp-meta-list-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onRemove: "onRemove", onRevert: "onRevert", onEdit: "onEdit" }, ngImport: i0, template: `
5561
6560
  <div class="axp-meta-list-item" [class.__deleted]="item().status === 'deleted'" *translate="let t">
5562
6561
  <div class="__content">
5563
6562
  <div class="__header">
@@ -5615,7 +6614,7 @@ class AXMetaListItemComponent {
5615
6614
  </div>
5616
6615
  `, isInline: true, styles: [".axp-meta-list-item{display:flex;align-items:center;justify-content:space-between;border-radius:.375rem;padding-left:.5rem;padding-right:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.axp-meta-list-item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.axp-meta-list-item.__deleted{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-danger-500),var(--tw-border-opacity, 1))}.axp-meta-list-item.__deleted{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-danger-50),var(--tw-bg-opacity, 1))}.axp-meta-list-item.__deleted .__content{opacity:.6}.axp-meta-list-item .__content{flex:1 1 0%}.axp-meta-list-item .__content .__header{display:flex}.axp-meta-list-item .__content .__header{align-items:center}.axp-meta-list-item .__content .__header{justify-content:space-between}.axp-meta-list-item .__content .__header .__info{flex:1 1 0%}.axp-meta-list-item .__content .__header .__info .__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axp-meta-list-item .__content .__header .__info .__title{text-align:start}.axp-meta-list-item .__content .__header .__info .__title{font-size:.875rem;line-height:1.25rem}.axp-meta-list-item .__content .__header .__info .__title{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{display:inline-flex}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{align-items:center}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{border-radius:9999px}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-left:.5rem;padding-right:.5rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-top:.25rem;padding-bottom:.25rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-size:.75rem;line-height:1rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.axp-meta-list-item .__actions{margin-left:auto}.axp-meta-list-item .__actions{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i3$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5617
6616
  }
5618
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMetaListItemComponent, decorators: [{
6617
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMetaListItemComponent, decorators: [{
5619
6618
  type: Component,
5620
6619
  args: [{ selector: 'axp-meta-list-item', template: `
5621
6620
  <div class="axp-meta-list-item" [class.__deleted]="item().status === 'deleted'" *translate="let t">
@@ -5697,8 +6696,8 @@ class AXMetaListComponent {
5697
6696
  handleEdit(item) {
5698
6697
  this.onEdit.emit(item);
5699
6698
  }
5700
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMetaListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5701
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMetaListComponent, isStandalone: true, selector: "axp-meta-list", inputs: { metaItems: { classPropertyName: "metaItems", publicName: "metaItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onRemove: "onRemove", onRevert: "onRevert", onEdit: "onEdit" }, ngImport: i0, template: `
6699
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMetaListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6700
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMetaListComponent, isStandalone: true, selector: "axp-meta-list", inputs: { metaItems: { classPropertyName: "metaItems", publicName: "metaItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onRemove: "onRemove", onRevert: "onRevert", onEdit: "onEdit" }, ngImport: i0, template: `
5702
6701
  <div class="axp-meta-list">
5703
6702
  @if (metaItems().length === 0) {
5704
6703
  <div class="__empty-state">
@@ -5720,7 +6719,7 @@ class AXMetaListComponent {
5720
6719
  </div>
5721
6720
  `, isInline: true, styles: [".axp-meta-list .__empty-state{display:flex}.axp-meta-list .__empty-state{align-items:center}.axp-meta-list .__empty-state{justify-content:center}.axp-meta-list .__empty-state{padding-top:.5rem;padding-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{margin-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{font-size:1.5rem;line-height:2rem}.axp-meta-list .__empty-state .__content .__message{font-size:.875rem;line-height:1.25rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXMetaListItemComponent, selector: "axp-meta-list-item", inputs: ["item"], outputs: ["onRemove", "onRevert", "onEdit"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5722
6721
  }
5723
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMetaListComponent, decorators: [{
6722
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMetaListComponent, decorators: [{
5724
6723
  type: Component,
5725
6724
  args: [{ selector: 'axp-meta-list', template: `
5726
6725
  <div class="axp-meta-list">
@@ -5780,7 +6779,7 @@ class AXPMetaSelectorWidgetEditComponent extends AXPValueWidgetComponent {
5780
6779
  * Handle adding new metadata items
5781
6780
  */
5782
6781
  async handleAddClick() {
5783
- const comp = (await import('./acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs')).AXPMetaChoosePopupComponent;
6782
+ const comp = (await import('./acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs')).AXPMetaChoosePopupComponent;
5784
6783
  const result = await this.popupService.open(comp, {
5785
6784
  title: 'Meta Selector',
5786
6785
  data: {
@@ -5808,7 +6807,7 @@ class AXPMetaSelectorWidgetEditComponent extends AXPValueWidgetComponent {
5808
6807
  * Handle editing a metadata item
5809
6808
  */
5810
6809
  async handleMetaEdit(item) {
5811
- const comp = (await import('./acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs')).AXPMetaChoosePopupComponent;
6810
+ const comp = (await import('./acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs')).AXPMetaChoosePopupComponent;
5812
6811
  const result = await this.popupService.open(comp, {
5813
6812
  title: 'Edit Meta Selector',
5814
6813
  data: {
@@ -5858,8 +6857,8 @@ class AXPMetaSelectorWidgetEditComponent extends AXPValueWidgetComponent {
5858
6857
  cls[`ax-flex-1`] = true;
5859
6858
  return cls;
5860
6859
  }
5861
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5862
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXPMetaSelectorWidgetEditComponent, isStandalone: true, selector: "axp-meta-selector-widget-edit", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
6860
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6861
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: AXPMetaSelectorWidgetEditComponent, isStandalone: true, selector: "axp-meta-selector-widget-edit", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
5863
6862
  <div class="axp-meta-selector-widget-edit" *translate="let t">
5864
6863
 
5865
6864
  <div class="__header">
@@ -5886,7 +6885,7 @@ class AXPMetaSelectorWidgetEditComponent extends AXPValueWidgetComponent {
5886
6885
  </div>
5887
6886
  `, isInline: true, styles: [".axp-meta-selector-widget-edit .__header{display:flex}.axp-meta-selector-widget-edit .__header{justify-content:flex-end}.axp-meta-selector-widget-edit .__header{border-bottom-width:1px}.axp-meta-selector-widget-edit .__header,.axp-meta-selector-widget-edit .__content{padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i3$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "component", type: AXMetaListComponent, selector: "axp-meta-list", inputs: ["metaItems"], outputs: ["onRemove", "onRevert", "onEdit"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5888
6887
  }
5889
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, decorators: [{
6888
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, decorators: [{
5890
6889
  type: Component,
5891
6890
  args: [{ selector: 'axp-meta-selector-widget-edit', template: `
5892
6891
  <div class="axp-meta-selector-widget-edit" *translate="let t">
@@ -5952,10 +6951,10 @@ const AXPMetaSelectorWidget = {
5952
6951
  ],
5953
6952
  components: {
5954
6953
  designer: {
5955
- component: () => import('./acorex-modules-document-management-meta-selector-widget-designer.component-By_NgUX6.mjs').then((c) => c.AXPMetaSelectorWidgetDesignerComponent),
6954
+ component: () => import('./acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs').then((c) => c.AXPMetaSelectorWidgetDesignerComponent),
5956
6955
  },
5957
6956
  view: {
5958
- component: () => import('./acorex-modules-document-management-meta-selector-widget-view.component-zwCw3v1w.mjs').then((c) => c.AXPMetaSelectorWidgetViewComponent),
6957
+ component: () => import('./acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs').then((c) => c.AXPMetaSelectorWidgetViewComponent),
5959
6958
  },
5960
6959
  edit: {
5961
6960
  component: () => Promise.resolve().then(function () { return metaSelectorWidgetEdit_component; }).then((c) => c.AXPMetaSelectorWidgetEditComponent),
@@ -5964,7 +6963,7 @@ const AXPMetaSelectorWidget = {
5964
6963
  component: () => Promise.resolve().then(function () { return metaSelectorWidgetEdit_component; }).then((c) => c.AXPMetaSelectorWidgetEditComponent),
5965
6964
  },
5966
6965
  column: {
5967
- component: () => import('./acorex-modules-document-management-meta-selector-widget-column.component-C_J1rPak.mjs').then((c) => c.AXPMetaSelectorWidgetColumnComponent),
6966
+ component: () => import('./acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs').then((c) => c.AXPMetaSelectorWidgetColumnComponent),
5968
6967
  },
5969
6968
  filter: {
5970
6969
  component: () => Promise.resolve().then(function () { return metaSelectorWidgetEdit_component; }).then((c) => c.AXPMetaSelectorWidgetEditComponent),
@@ -5985,11 +6984,11 @@ function routesFacory() {
5985
6984
  children: [
5986
6985
  {
5987
6986
  path: '',
5988
- loadComponent: () => import('./acorex-modules-document-management-drive.component-TzRLr7rb.mjs').then((c) => c.AXMDocumentDriveComponent),
6987
+ loadComponent: () => import('./acorex-modules-document-management-drive.component-DoGdTL3n.mjs').then((c) => c.AXMDocumentDriveComponent),
5989
6988
  },
5990
6989
  {
5991
6990
  path: ':id',
5992
- loadComponent: () => import('./acorex-modules-document-management-drive.component-TzRLr7rb.mjs').then((c) => c.AXMDocumentDriveComponent),
6991
+ loadComponent: () => import('./acorex-modules-document-management-drive.component-DoGdTL3n.mjs').then((c) => c.AXMDocumentDriveComponent),
5993
6992
  },
5994
6993
  ],
5995
6994
  },
@@ -5997,15 +6996,18 @@ function routesFacory() {
5997
6996
  return routes;
5998
6997
  }
5999
6998
  class AXMDocumentManagementModule {
6000
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6001
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementModule, imports: [AXMDriveChooseModule,
6999
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7000
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementModule, imports: [AXMDriveChooseModule,
6002
7001
  //
6003
7002
  AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,
6004
7003
  AXMDocumentManagementDocumentTypeMetaValueEntityModule,
6005
7004
  AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,
6006
7005
  AXMDocumentManagementDocumentTypeEntityModule,
6007
7006
  AXMDocumentManagementDocumentEntityModule, i6.AXPLayoutBuilderModule, AXMFileTypeModule, i3$2.AXMediaViewerModule, i3$4.AXPWorkflowModule] }); }
6008
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementModule, providers: [
7007
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementModule, providers: [{
7008
+ provide: AXMReviewService,
7009
+ useClass: AXMReviewServiceImpl,
7010
+ },
6009
7011
  {
6010
7012
  provide: AXMFolderService,
6011
7013
  useClass: AXMFolderServiceImpl,
@@ -6034,7 +7036,7 @@ class AXMDocumentManagementModule {
6034
7036
  provide: AXP_PERMISSION_DEFINITION_PROVIDER,
6035
7037
  useFactory: async () => {
6036
7038
  const injector = inject(Injector);
6037
- const provider = (await import('./acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs')).AXMPermissionDefinitionProvider;
7039
+ const provider = (await import('./acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs')).AXMPermissionDefinitionProvider;
6038
7040
  return new provider(injector);
6039
7041
  },
6040
7042
  multi: true,
@@ -6071,13 +7073,17 @@ class AXMDocumentManagementModule {
6071
7073
  AXMCheckDocumentTypeWorkflowAction,
6072
7074
  AXMChooseDocumentTypeWorkflowAction,
6073
7075
  AXMChooseFileWorkflowAction,
7076
+ AXMSendToReviewConfirmAction,
7077
+ AXMUpdateDocumentStatusAction,
6074
7078
  },
6075
7079
  workflows: {
6076
7080
  'upload-document': AXMUploadWorkflow,
7081
+ 'send-to-review': AXMSendToReviewWorkflow,
7082
+ 'submit-review': AXMSubmitReviewWorkflow,
6077
7083
  },
6078
7084
  })] }); }
6079
7085
  }
6080
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMDocumentManagementModule, decorators: [{
7086
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMDocumentManagementModule, decorators: [{
6081
7087
  type: NgModule,
6082
7088
  args: [{
6083
7089
  imports: [
@@ -6098,14 +7104,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
6098
7104
  AXMCheckDocumentTypeWorkflowAction,
6099
7105
  AXMChooseDocumentTypeWorkflowAction,
6100
7106
  AXMChooseFileWorkflowAction,
7107
+ AXMSendToReviewConfirmAction,
7108
+ AXMUpdateDocumentStatusAction,
6101
7109
  },
6102
7110
  workflows: {
6103
7111
  'upload-document': AXMUploadWorkflow,
7112
+ 'send-to-review': AXMSendToReviewWorkflow,
7113
+ 'submit-review': AXMSubmitReviewWorkflow,
6104
7114
  },
6105
7115
  }),
6106
7116
  ],
6107
7117
  exports: [],
6108
- providers: [
7118
+ providers: [{
7119
+ provide: AXMReviewService,
7120
+ useClass: AXMReviewServiceImpl,
7121
+ },
6109
7122
  {
6110
7123
  provide: AXMFolderService,
6111
7124
  useClass: AXMFolderServiceImpl,
@@ -6134,7 +7147,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
6134
7147
  provide: AXP_PERMISSION_DEFINITION_PROVIDER,
6135
7148
  useFactory: async () => {
6136
7149
  const injector = inject(Injector);
6137
- const provider = (await import('./acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs')).AXMPermissionDefinitionProvider;
7150
+ const provider = (await import('./acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs')).AXMPermissionDefinitionProvider;
6138
7151
  return new provider(injector);
6139
7152
  },
6140
7153
  multi: true,
@@ -6162,5 +7175,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
6162
7175
  * Generated bundle index. Do not edit.
6163
7176
  */
6164
7177
 
6165
- export { AXPDocumentExplorerViewModel as A, AXMFolderService as B, AXMFolderServiceImpl as C, AXMEntityProvider as D, AXMMenuProvider as E, AXMSearchCommandProvider as F, AXMSettingProvider as G, RootConfig as R, AXMDocumentManagerService as a, AXMDocumentExplorerComponent as b, AXMFolderPathBreadcrumbsComponent as c, AXMPermissionsKeys as d, AXMDocumentTypeService as e, AXMDocumentManagementModule as f, documentFactory as g, AXMDocumentManagementDocumentEntityModule as h, AXMDocumentService as i, AXMDocumentServiceImpl as j, documentTypeFactory as k, AXMDocumentManagementDocumentTypeEntityModule as l, AXMDocumentTypeServiceImpl as m, documentTypeMetaDefinitionfactory as n, AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule as o, AXMDocumentManagementDocumentTypeMetaDefinitionEntityService as p, AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl as q, documentTypeMetaValueFactory as r, AXMDocumentManagementDocumentTypeMetaValueEntityModule as s, AXMDocumentManagementDocumentTypeMetaValueEntityService as t, AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl as u, documentTypeStatusDefinitionFactory as v, AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule as w, AXMDocumentManagementDocumentTypeStatusDefinitionEntityService as x, AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl as y, folderFactory as z };
6166
- //# sourceMappingURL=acorex-modules-document-management-acorex-modules-document-management-C7ot6PfT.mjs.map
7178
+ export { AXPDocumentExplorerViewModel as A, AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl as B, folderFactory as C, AXMFolderService as D, AXMFolderServiceImpl as E, reviewFactory as F, AXMReviewService as G, AXMReviewServiceImpl as H, AXMEntityProvider as I, AXMMenuProvider as J, AXMSearchCommandProvider as K, AXMSettingProvider as L, RootConfig as R, AXMDocumentManagerService as a, AXMDocumentExplorerComponent as b, AXMFolderPathBreadcrumbsComponent as c, AXMPermissionsKeys as d, AXMDocumentTypeService as e, AXMDocumentManagementModule as f, documentFactory as g, AXMDocumentManagementDocumentEntityModule as h, AXMDocumentService as i, AXMDocumentServiceImpl as j, getNextStatus as k, canTransition as l, documentTypeFactory as m, AXMDocumentManagementDocumentTypeEntityModule as n, AXMDocumentTypeServiceImpl as o, documentTypeMetaDefinitionfactory as p, AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule as q, AXMDocumentManagementDocumentTypeMetaDefinitionEntityService as r, AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl as s, documentTypeMetaValueFactory as t, AXMDocumentManagementDocumentTypeMetaValueEntityModule as u, AXMDocumentManagementDocumentTypeMetaValueEntityService as v, AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl as w, documentTypeStatusDefinitionFactory as x, AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule as y, AXMDocumentManagementDocumentTypeStatusDefinitionEntityService as z };
7179
+ //# sourceMappingURL=acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs.map