@acorex/modules 21.0.0-next.65 → 21.0.0-next.67

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 (284) hide show
  1. package/ai-management/README.md +1 -1
  2. package/fesm2022/{acorex-modules-ai-management-agent.entity-X51GLTdi.mjs → acorex-modules-ai-management-agent.entity-C3uhOrld.mjs} +81 -1
  3. package/fesm2022/acorex-modules-ai-management-agent.entity-C3uhOrld.mjs.map +1 -0
  4. package/fesm2022/{acorex-modules-ai-management-assist.entity-2h5KE9UH.mjs → acorex-modules-ai-management-assist.entity-DRXYUOAf.mjs} +2 -2
  5. package/fesm2022/acorex-modules-ai-management-assist.entity-DRXYUOAf.mjs.map +1 -0
  6. package/fesm2022/acorex-modules-ai-management.mjs +175 -44
  7. package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
  8. package/fesm2022/acorex-modules-application-management.mjs +47 -2
  9. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  10. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-DqmJVJ0z.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-DHM3xrMh.mjs} +106 -88
  11. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-DHM3xrMh.mjs.map +1 -0
  12. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-DhVwPz0T.mjs → acorex-modules-assessment-management-assessment-case.entity-DLO1sfD4.mjs} +3 -2
  13. package/fesm2022/acorex-modules-assessment-management-assessment-case.entity-DLO1sfD4.mjs.map +1 -0
  14. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-CDAdDXDl.mjs +122 -0
  15. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-CDAdDXDl.mjs.map +1 -0
  16. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-BvV2Qgw1.mjs → acorex-modules-assessment-management-assessment-session.entity-FDgQPy0O.mjs} +2 -2
  17. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-BvV2Qgw1.mjs.map → acorex-modules-assessment-management-assessment-session.entity-FDgQPy0O.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-4fkaeAG-.mjs → acorex-modules-assessment-management-fill-assessment-session.command-CfcHl3L_.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-4fkaeAG-.mjs.map → acorex-modules-assessment-management-fill-assessment-session.command-CfcHl3L_.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-6IGOdVVZ.mjs → acorex-modules-assessment-management-preview-question.command-DsQ_LTMn.mjs} +2 -2
  21. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-6IGOdVVZ.mjs.map → acorex-modules-assessment-management-preview-question.command-DsQ_LTMn.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-CRDBe_BS.mjs → acorex-modules-assessment-management-preview-questionnaire.command-BKxRn8Ha.mjs} +7 -7
  23. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-BKxRn8Ha.mjs.map +1 -0
  24. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-B2ES-zcL.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-Dxhk9mD4.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-B2ES-zcL.mjs.map → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-Dxhk9mD4.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-Cw2WCdYK.mjs → acorex-modules-assessment-management-question-bank-item.entity-6H5NiAwi.mjs} +3 -2
  27. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-6H5NiAwi.mjs.map +1 -0
  28. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-D9I3S-ZT.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-B0ZKyWy5.mjs} +96 -7
  29. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-B0ZKyWy5.mjs.map +1 -0
  30. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-D9nHUmQB.mjs → acorex-modules-assessment-management-questionnaire.entity-BS1ohT8P.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-D9nHUmQB.mjs.map → acorex-modules-assessment-management-questionnaire.entity-BS1ohT8P.mjs.map} +1 -1
  32. package/fesm2022/acorex-modules-assessment-management-review-assessment-session.command-Dcopsdi4.mjs +228 -0
  33. package/fesm2022/acorex-modules-assessment-management-review-assessment-session.command-Dcopsdi4.mjs.map +1 -0
  34. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-BOeO3Dit.mjs → acorex-modules-assessment-management-view-session-answers.command-3UWzJPH6.mjs} +4 -74
  35. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-3UWzJPH6.mjs.map +1 -0
  36. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  37. package/fesm2022/{acorex-modules-asset-management-acorex-modules-asset-management-BtcY1UQy.mjs → acorex-modules-asset-management-acorex-modules-asset-management-BdiaXlkx.mjs} +12 -27
  38. package/fesm2022/acorex-modules-asset-management-acorex-modules-asset-management-BdiaXlkx.mjs.map +1 -0
  39. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-pKZoxsjk.mjs → acorex-modules-asset-management-asset-system-assignment.entity-Bf9nJTkD.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-pKZoxsjk.mjs.map → acorex-modules-asset-management-asset-system-assignment.entity-Bf9nJTkD.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-CXz2G5v1.mjs → acorex-modules-asset-management-asset-system-type.entity-Cbzu3bqC.mjs} +2 -2
  42. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-CXz2G5v1.mjs.map → acorex-modules-asset-management-asset-system-type.entity-Cbzu3bqC.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-C3zf6WVD.mjs → acorex-modules-asset-management-asset-system.entity-DA7dO3eE.mjs} +2 -2
  44. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-C3zf6WVD.mjs.map → acorex-modules-asset-management-asset-system.entity-DA7dO3eE.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-DTaeNNBW.mjs → acorex-modules-asset-management-asset-type-section-component.entity-C9B-TUQD.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-DTaeNNBW.mjs.map → acorex-modules-asset-management-asset-type-section-component.entity-C9B-TUQD.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-Bes5h7aJ.mjs → acorex-modules-asset-management-asset-type-section.entity-BNz1Zfox.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-Bes5h7aJ.mjs.map → acorex-modules-asset-management-asset-type-section.entity-BNz1Zfox.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-Ch8h0sph.mjs → acorex-modules-asset-management-asset-type.entity-D_bBxBKI.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-Ch8h0sph.mjs.map → acorex-modules-asset-management-asset-type.entity-D_bBxBKI.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-asset-management-asset.entity-DJ-A6lx1.mjs → acorex-modules-asset-management-asset.entity-Cf_H7edH.mjs} +74 -34
  52. package/fesm2022/acorex-modules-asset-management-asset.entity-Cf_H7edH.mjs.map +1 -0
  53. package/fesm2022/acorex-modules-asset-management.mjs +1 -1
  54. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-D4IBi_VD.mjs → acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs} +16 -14
  55. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs.map +1 -0
  56. package/fesm2022/{acorex-modules-auth-app-chooser.component-BEktaBWD.mjs → acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs} +2 -2
  57. package/fesm2022/{acorex-modules-auth-app-chooser.component-BEktaBWD.mjs.map → acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs.map} +1 -1
  58. package/fesm2022/{acorex-modules-auth-login.module-aAwHzXPj.mjs → acorex-modules-auth-login.module-D1-POhQk.mjs} +4 -4
  59. package/fesm2022/{acorex-modules-auth-login.module-aAwHzXPj.mjs.map → acorex-modules-auth-login.module-D1-POhQk.mjs.map} +1 -1
  60. package/fesm2022/{acorex-modules-auth-master.layout-BapDYFZ_.mjs → acorex-modules-auth-master.layout-DMP4RC6L.mjs} +2 -2
  61. package/fesm2022/{acorex-modules-auth-master.layout-BapDYFZ_.mjs.map → acorex-modules-auth-master.layout-DMP4RC6L.mjs.map} +1 -1
  62. package/fesm2022/{acorex-modules-auth-oauth-callback.component-Cyu2vqyK.mjs → acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs} +2 -2
  63. package/fesm2022/{acorex-modules-auth-oauth-callback.component-Cyu2vqyK.mjs.map → acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs.map} +1 -1
  64. package/fesm2022/{acorex-modules-auth-password.component-DB-ac0Rn.mjs → acorex-modules-auth-password.component-BMVSHYy7.mjs} +2 -2
  65. package/fesm2022/{acorex-modules-auth-password.component-DB-ac0Rn.mjs.map → acorex-modules-auth-password.component-BMVSHYy7.mjs.map} +1 -1
  66. package/fesm2022/{acorex-modules-auth-password.component-cPmwNpuq.mjs → acorex-modules-auth-password.component-Cm8DsDvu.mjs} +2 -2
  67. package/fesm2022/{acorex-modules-auth-password.component-cPmwNpuq.mjs.map → acorex-modules-auth-password.component-Cm8DsDvu.mjs.map} +1 -1
  68. package/fesm2022/{acorex-modules-auth-routes-r72zIRTa.mjs → acorex-modules-auth-routes-B85OzgW1.mjs} +2 -2
  69. package/fesm2022/{acorex-modules-auth-routes-r72zIRTa.mjs.map → acorex-modules-auth-routes-B85OzgW1.mjs.map} +1 -1
  70. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-AQA2o6Ty.mjs → acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs} +2 -2
  71. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-AQA2o6Ty.mjs.map → acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs.map} +1 -1
  72. package/fesm2022/{acorex-modules-auth-two-factor.module-Dx0CC5ic.mjs → acorex-modules-auth-two-factor.module-DfyDQIw-.mjs} +2 -2
  73. package/fesm2022/{acorex-modules-auth-two-factor.module-Dx0CC5ic.mjs.map → acorex-modules-auth-two-factor.module-DfyDQIw-.mjs.map} +1 -1
  74. package/fesm2022/{acorex-modules-auth-user-sessions.component-3Wr7DUDQ.mjs → acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs} +2 -2
  75. package/fesm2022/{acorex-modules-auth-user-sessions.component-3Wr7DUDQ.mjs.map → acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs.map} +1 -1
  76. package/fesm2022/acorex-modules-auth.mjs +1 -1
  77. package/fesm2022/acorex-modules-common.mjs +1 -201
  78. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  79. package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management-DMMKjUJP.mjs → acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs} +8 -41
  80. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs.map +1 -0
  81. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-B9RvUa2y.mjs → acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs} +2 -2
  82. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-B9RvUa2y.mjs.map → acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-BAuczQJ_.mjs → acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-BAuczQJ_.mjs.map → acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-BbAK7l89.mjs → acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs} +2 -2
  86. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-BbAK7l89.mjs.map → acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs.map} +1 -1
  87. package/fesm2022/acorex-modules-content-management.mjs +1 -1
  88. package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-CuaEuIdl.mjs → acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs} +43 -38
  89. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs.map +1 -0
  90. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs +329 -0
  91. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs.map +1 -0
  92. package/fesm2022/{acorex-modules-conversation-comments-page.component-zaGnoDs-.mjs → acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs} +2 -2
  93. package/fesm2022/{acorex-modules-conversation-comments-page.component-zaGnoDs-.mjs.map → acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs.map} +1 -1
  94. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-D2vjfYtY.mjs → acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs} +2 -2
  95. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-D2vjfYtY.mjs.map → acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs.map} +1 -1
  96. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-C2IEDIG9.mjs → acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs} +2 -2
  97. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-C2IEDIG9.mjs.map → acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs.map} +1 -1
  98. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  99. package/fesm2022/acorex-modules-data-management.mjs +78 -21
  100. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  101. package/fesm2022/acorex-modules-document-management.mjs +4 -4
  102. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  103. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-DVlO9JZw.mjs → acorex-modules-help-desk-acorex-modules-help-desk-IoBGIJ-Y.mjs} +5 -5
  104. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-IoBGIJ-Y.mjs.map +1 -0
  105. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-rNPehEf8.mjs → acorex-modules-help-desk-capture-screen.component-DnupDyZu.mjs} +2 -2
  106. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-rNPehEf8.mjs.map → acorex-modules-help-desk-capture-screen.component-DnupDyZu.mjs.map} +1 -1
  107. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  108. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-uRz1c5Km.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs} +20 -20
  109. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-uRz1c5Km.mjs.map → acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs.map} +1 -1
  110. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-23klKnTy.mjs → acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs} +2 -2
  111. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-23klKnTy.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs.map} +1 -1
  112. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-BJ8xUiR2.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs} +2 -2
  113. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-BJ8xUiR2.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs.map} +1 -1
  114. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-B3u1gXWI.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs} +2 -2
  115. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-B3u1gXWI.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs.map} +1 -1
  116. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-uhwOOw_y.mjs → acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs} +4 -10
  117. package/fesm2022/acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs.map +1 -0
  118. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BQe82rsr.mjs → acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs} +2 -2
  119. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BQe82rsr.mjs.map → acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs.map} +1 -1
  120. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-CE4hs4C8.mjs → acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs} +2 -2
  121. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-CE4hs4C8.mjs.map → acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs.map} +1 -1
  122. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DJ4EEUKg.mjs → acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs} +2 -2
  123. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DJ4EEUKg.mjs.map → acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs.map} +1 -1
  124. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event-type.entity-CB2hlyOP.mjs → acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs} +6 -3
  125. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs.map +1 -0
  126. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event.entity-DWonFZpU.mjs → acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs} +17 -5
  127. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs.map +1 -0
  128. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-o8PjggiT.mjs → acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs} +2 -2
  129. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-o8PjggiT.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs.map} +1 -1
  130. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-B6sr7oey.mjs → acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs} +2 -2
  131. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-B6sr7oey.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs.map} +1 -1
  132. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-aH7qTRnr.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs} +2 -2
  133. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-aH7qTRnr.mjs.map → acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs.map} +1 -1
  134. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B-VsXS4c.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-B-VsXS4c.mjs.map → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs.map} +1 -1
  136. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  137. package/fesm2022/acorex-modules-locale-management.mjs +68 -1
  138. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  139. package/fesm2022/acorex-modules-meeting-management.mjs +1 -1
  140. package/fesm2022/acorex-modules-meeting-management.mjs.map +1 -1
  141. package/fesm2022/{acorex-modules-notification-management-notification-page.component-B017YY1H.mjs → acorex-modules-notification-management-notification-page.component-6YOiGgKm.mjs} +2 -2
  142. package/fesm2022/{acorex-modules-notification-management-notification-page.component-B017YY1H.mjs.map → acorex-modules-notification-management-notification-page.component-6YOiGgKm.mjs.map} +1 -1
  143. package/fesm2022/acorex-modules-notification-management.mjs +2 -2
  144. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  145. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-BZtWfgmH.mjs → acorex-modules-organization-management-acorex-modules-organization-management-Iopv_G-d.mjs} +37 -37
  146. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-BZtWfgmH.mjs.map → acorex-modules-organization-management-acorex-modules-organization-management-Iopv_G-d.mjs.map} +1 -1
  147. package/fesm2022/{acorex-modules-organization-management-add-business-unit-to-business-unit.command-C-yO5On4.mjs → acorex-modules-organization-management-add-business-unit-to-business-unit.command-D7NChP_A.mjs} +2 -2
  148. package/fesm2022/{acorex-modules-organization-management-add-business-unit-to-business-unit.command-C-yO5On4.mjs.map → acorex-modules-organization-management-add-business-unit-to-business-unit.command-D7NChP_A.mjs.map} +1 -1
  149. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-BL5eWJ56.mjs → acorex-modules-organization-management-add-position-to-business-unit.command-PkeqXFt1.mjs} +2 -2
  150. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-BL5eWJ56.mjs.map → acorex-modules-organization-management-add-position-to-business-unit.command-PkeqXFt1.mjs.map} +1 -1
  151. package/fesm2022/{acorex-modules-organization-management-add-team-to-business-unit.command-l4N6g0Hc.mjs → acorex-modules-organization-management-add-team-to-business-unit.command-jalyX-F4.mjs} +2 -2
  152. package/fesm2022/{acorex-modules-organization-management-add-team-to-business-unit.command-l4N6g0Hc.mjs.map → acorex-modules-organization-management-add-team-to-business-unit.command-jalyX-F4.mjs.map} +1 -1
  153. package/fesm2022/{acorex-modules-organization-management-business-unit.entity-CONTwX52.mjs → acorex-modules-organization-management-business-unit.entity-CBjAC9Ip.mjs} +2 -2
  154. package/fesm2022/{acorex-modules-organization-management-business-unit.entity-CONTwX52.mjs.map → acorex-modules-organization-management-business-unit.entity-CBjAC9Ip.mjs.map} +1 -1
  155. package/fesm2022/{acorex-modules-organization-management-chart.entity-DeKPBfgx.mjs → acorex-modules-organization-management-chart.entity-CaY_5LGN.mjs} +2 -2
  156. package/fesm2022/{acorex-modules-organization-management-chart.entity-DeKPBfgx.mjs.map → acorex-modules-organization-management-chart.entity-CaY_5LGN.mjs.map} +1 -1
  157. package/fesm2022/{acorex-modules-organization-management-company.entity-BAlz8AfD.mjs → acorex-modules-organization-management-company.entity-BUBhqyCn.mjs} +2 -2
  158. package/fesm2022/{acorex-modules-organization-management-company.entity-BAlz8AfD.mjs.map → acorex-modules-organization-management-company.entity-BUBhqyCn.mjs.map} +1 -1
  159. package/fesm2022/{acorex-modules-organization-management-entity.provider-DjPSiqcX.mjs → acorex-modules-organization-management-entity.provider-BZsy_wi6.mjs} +15 -15
  160. package/fesm2022/{acorex-modules-organization-management-entity.provider-DjPSiqcX.mjs.map → acorex-modules-organization-management-entity.provider-BZsy_wi6.mjs.map} +1 -1
  161. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-BLmayeSc.mjs → acorex-modules-organization-management-feature-definition.provider-CEO1nSFP.mjs} +2 -2
  162. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-BLmayeSc.mjs.map → acorex-modules-organization-management-feature-definition.provider-CEO1nSFP.mjs.map} +1 -1
  163. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-HBi-EMRE.mjs → acorex-modules-organization-management-job-definition-pages-component.provider-ChRGp5ZI.mjs} +3 -3
  164. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-HBi-EMRE.mjs.map → acorex-modules-organization-management-job-definition-pages-component.provider-ChRGp5ZI.mjs.map} +1 -1
  165. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-CtIfsZ6x.mjs → acorex-modules-organization-management-job-definition-responsibilities-page.component-aWZO09Xw.mjs} +3 -3
  166. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-CtIfsZ6x.mjs.map → acorex-modules-organization-management-job-definition-responsibilities-page.component-aWZO09Xw.mjs.map} +1 -1
  167. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-C1vCQayM.mjs → acorex-modules-organization-management-job-definition-skills-page.component-DJcFhQM9.mjs} +2 -2
  168. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-C1vCQayM.mjs.map → acorex-modules-organization-management-job-definition-skills-page.component-DJcFhQM9.mjs.map} +1 -1
  169. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-Db5li0zL.mjs → acorex-modules-organization-management-job-definition.entity-BoM49wYi.mjs} +2 -2
  170. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-Db5li0zL.mjs.map → acorex-modules-organization-management-job-definition.entity-BoM49wYi.mjs.map} +1 -1
  171. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-BTRKW7nq.mjs → acorex-modules-organization-management-job-level.datasource-DbQG79uR.mjs} +2 -2
  172. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-BTRKW7nq.mjs.map → acorex-modules-organization-management-job-level.datasource-DbQG79uR.mjs.map} +1 -1
  173. package/fesm2022/{acorex-modules-organization-management-job-level.entity-Cn-91_r8.mjs → acorex-modules-organization-management-job-level.entity-XO-NsBG-.mjs} +2 -2
  174. package/fesm2022/{acorex-modules-organization-management-job-level.entity-Cn-91_r8.mjs.map → acorex-modules-organization-management-job-level.entity-XO-NsBG-.mjs.map} +1 -1
  175. package/fesm2022/{acorex-modules-organization-management-menu.provider-CVmV-hY5.mjs → acorex-modules-organization-management-menu.provider-DXW6aUIX.mjs} +2 -2
  176. package/fesm2022/{acorex-modules-organization-management-menu.provider-CVmV-hY5.mjs.map → acorex-modules-organization-management-menu.provider-DXW6aUIX.mjs.map} +1 -1
  177. package/fesm2022/{acorex-modules-organization-management-org-chart-default-node-contribution.provider-bdtNexEf.mjs → acorex-modules-organization-management-org-chart-default-node-contribution.provider-ClKr6K6Y.mjs} +2 -2
  178. package/fesm2022/{acorex-modules-organization-management-org-chart-default-node-contribution.provider-bdtNexEf.mjs.map → acorex-modules-organization-management-org-chart-default-node-contribution.provider-ClKr6K6Y.mjs.map} +1 -1
  179. package/fesm2022/{acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-B0aaFv5p.mjs → acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-BjIDzwXF.mjs} +2 -2
  180. package/fesm2022/{acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-B0aaFv5p.mjs.map → acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-BjIDzwXF.mjs.map} +1 -1
  181. package/fesm2022/{acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-Xe4nhY3j.mjs → acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DRAlUmIa.mjs} +2 -2
  182. package/fesm2022/{acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-Xe4nhY3j.mjs.map → acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DRAlUmIa.mjs.map} +1 -1
  183. package/fesm2022/{acorex-modules-organization-management-org-chart-ux-node-contribution.provider-CTprHwCi.mjs → acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DwSjov_Z.mjs} +2 -2
  184. package/fesm2022/{acorex-modules-organization-management-org-chart-ux-node-contribution.provider-CTprHwCi.mjs.map → acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DwSjov_Z.mjs.map} +1 -1
  185. package/fesm2022/{acorex-modules-organization-management-org-chart.page-ChXY8ncD.mjs → acorex-modules-organization-management-org-chart.page-CuPEM-_N.mjs} +3 -3
  186. package/fesm2022/{acorex-modules-organization-management-org-chart.page-ChXY8ncD.mjs.map → acorex-modules-organization-management-org-chart.page-CuPEM-_N.mjs.map} +1 -1
  187. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-8t2vBgtp.mjs → acorex-modules-organization-management-permission-definition.provider-BNthP0QV.mjs} +2 -2
  188. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-8t2vBgtp.mjs.map → acorex-modules-organization-management-permission-definition.provider-BNthP0QV.mjs.map} +1 -1
  189. package/fesm2022/{acorex-modules-organization-management-position.entity-BVWbTeks.mjs → acorex-modules-organization-management-position.entity-Cja3CYmL.mjs} +2 -2
  190. package/fesm2022/{acorex-modules-organization-management-position.entity-BVWbTeks.mjs.map → acorex-modules-organization-management-position.entity-Cja3CYmL.mjs.map} +1 -1
  191. package/fesm2022/{acorex-modules-organization-management-remove-position-from-business-unit.command-DWzFncr1.mjs → acorex-modules-organization-management-remove-position-from-business-unit.command-Dm1a6-uO.mjs} +2 -2
  192. package/fesm2022/{acorex-modules-organization-management-remove-position-from-business-unit.command-DWzFncr1.mjs.map → acorex-modules-organization-management-remove-position-from-business-unit.command-Dm1a6-uO.mjs.map} +1 -1
  193. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-CNa-CZOv.mjs → acorex-modules-organization-management-replace-position-assignee.command-BWtzQZyW.mjs} +2 -2
  194. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-CNa-CZOv.mjs.map → acorex-modules-organization-management-replace-position-assignee.command-BWtzQZyW.mjs.map} +1 -1
  195. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CTSCcyFv.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-C4W0VlL5.mjs} +2 -2
  196. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CTSCcyFv.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-C4W0VlL5.mjs.map} +1 -1
  197. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-C82TQFS-.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-CaPqjai7.mjs} +2 -2
  198. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-C82TQFS-.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-CaPqjai7.mjs.map} +1 -1
  199. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-DjVuISfE.mjs → acorex-modules-organization-management-responsibilities-matrix.component-nJuP6fA0.mjs} +2 -2
  200. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-DjVuISfE.mjs.map → acorex-modules-organization-management-responsibilities-matrix.component-nJuP6fA0.mjs.map} +1 -1
  201. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-BlENDhF6.mjs → acorex-modules-organization-management-responsibility-level.entity-CvvzIjvE.mjs} +2 -2
  202. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-BlENDhF6.mjs.map → acorex-modules-organization-management-responsibility-level.entity-CvvzIjvE.mjs.map} +1 -1
  203. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-DamPTQMp.mjs → acorex-modules-organization-management-responsibility.entity-Cc0Ou-hc.mjs} +2 -2
  204. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-DamPTQMp.mjs.map → acorex-modules-organization-management-responsibility.entity-Cc0Ou-hc.mjs.map} +1 -1
  205. package/fesm2022/{acorex-modules-organization-management-settings.provider-CtQo6YHj.mjs → acorex-modules-organization-management-settings.provider-C33ZatCD.mjs} +2 -2
  206. package/fesm2022/{acorex-modules-organization-management-settings.provider-CtQo6YHj.mjs.map → acorex-modules-organization-management-settings.provider-C33ZatCD.mjs.map} +1 -1
  207. package/fesm2022/{acorex-modules-organization-management-team-business-unit.entity-BfvqQb1K.mjs → acorex-modules-organization-management-team-business-unit.entity-DGuF5ux1.mjs} +2 -2
  208. package/fesm2022/{acorex-modules-organization-management-team-business-unit.entity-BfvqQb1K.mjs.map → acorex-modules-organization-management-team-business-unit.entity-DGuF5ux1.mjs.map} +1 -1
  209. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-wWoB56Il.mjs → acorex-modules-organization-management-team-member-role.entity-BMXkNavp.mjs} +2 -2
  210. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-wWoB56Il.mjs.map → acorex-modules-organization-management-team-member-role.entity-BMXkNavp.mjs.map} +1 -1
  211. package/fesm2022/{acorex-modules-organization-management-team-member.entity-COGrDN_G.mjs → acorex-modules-organization-management-team-member.entity-Deem7M3N.mjs} +2 -2
  212. package/fesm2022/{acorex-modules-organization-management-team-member.entity-COGrDN_G.mjs.map → acorex-modules-organization-management-team-member.entity-Deem7M3N.mjs.map} +1 -1
  213. package/fesm2022/{acorex-modules-organization-management-team.entity-DC_rqp9e.mjs → acorex-modules-organization-management-team.entity-CNmpaJ3F.mjs} +2 -2
  214. package/fesm2022/{acorex-modules-organization-management-team.entity-DC_rqp9e.mjs.map → acorex-modules-organization-management-team.entity-CNmpaJ3F.mjs.map} +1 -1
  215. package/fesm2022/acorex-modules-organization-management.mjs +1 -1
  216. package/fesm2022/{acorex-modules-product-catalog-product-sku.entity-BNJHLs-b.mjs → acorex-modules-product-catalog-product-sku.entity-C3ynevYI.mjs} +2 -2
  217. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-C3ynevYI.mjs.map +1 -0
  218. package/fesm2022/acorex-modules-product-catalog.mjs +1 -1
  219. package/fesm2022/acorex-modules-security-management.mjs +76 -2
  220. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  221. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-B4Ee8USF.mjs → acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs} +5 -5
  222. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-B4Ee8USF.mjs.map → acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs.map} +1 -1
  223. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-nNhEFyc-.mjs → acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs} +2 -2
  224. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-nNhEFyc-.mjs.map → acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs.map} +1 -1
  225. package/fesm2022/{acorex-modules-settings-management-setting-page.component-CEvWwS_a.mjs → acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs} +2 -2
  226. package/fesm2022/{acorex-modules-settings-management-setting-page.component-CEvWwS_a.mjs.map → acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs.map} +1 -1
  227. package/fesm2022/{acorex-modules-settings-management-setting-view.component-C6ftmjuK.mjs → acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs} +31 -4
  228. package/fesm2022/acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs.map +1 -0
  229. package/fesm2022/acorex-modules-settings-management.mjs +1 -1
  230. package/fesm2022/{acorex-modules-task-management-acorex-modules-task-management-DAh3IByo.mjs → acorex-modules-task-management-acorex-modules-task-management-BB7eeaYX.mjs} +7 -9
  231. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-BB7eeaYX.mjs.map +1 -0
  232. package/fesm2022/{acorex-modules-task-management-task-board.page-C2hB9JPM.mjs → acorex-modules-task-management-task-board.page-BmUIngWk.mjs} +7 -7
  233. package/fesm2022/{acorex-modules-task-management-task-board.page-C2hB9JPM.mjs.map → acorex-modules-task-management-task-board.page-BmUIngWk.mjs.map} +1 -1
  234. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  235. package/fesm2022/acorex-modules-tenant-management.mjs +46 -1
  236. package/fesm2022/acorex-modules-tenant-management.mjs.map +1 -1
  237. package/fesm2022/{acorex-modules-workflow-management-index-BhVZ1Bcw.mjs → acorex-modules-workflow-management-index-CdaVEEgn.mjs} +2 -2
  238. package/fesm2022/{acorex-modules-workflow-management-index-BhVZ1Bcw.mjs.map → acorex-modules-workflow-management-index-CdaVEEgn.mjs.map} +1 -1
  239. package/fesm2022/acorex-modules-workflow-management-index-CxheG2ry.mjs +307 -0
  240. package/fesm2022/acorex-modules-workflow-management-index-CxheG2ry.mjs.map +1 -0
  241. package/fesm2022/{acorex-modules-workflow-management-workflow-task-popover.component-DjYDwHWU.mjs → acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs} +3 -3
  242. package/fesm2022/{acorex-modules-workflow-management-workflow-task-popover.component-DjYDwHWU.mjs.map → acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs.map} +1 -1
  243. package/fesm2022/acorex-modules-workflow-management.mjs +634 -129
  244. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  245. package/fesm2022/acorex-modules-workplacesafety-management-hazard-status.provider-v1cFaa3q.mjs +70 -0
  246. package/fesm2022/acorex-modules-workplacesafety-management-hazard-status.provider-v1cFaa3q.mjs.map +1 -0
  247. package/fesm2022/acorex-modules-workplacesafety-management.mjs +826 -0
  248. package/fesm2022/acorex-modules-workplacesafety-management.mjs.map +1 -0
  249. package/package.json +6 -2
  250. package/types/acorex-modules-ai-management.d.ts +45 -22
  251. package/types/acorex-modules-assessment-management.d.ts +8 -0
  252. package/types/acorex-modules-asset-management.d.ts +6 -0
  253. package/types/acorex-modules-common.d.ts +3 -9
  254. package/types/acorex-modules-conversation.d.ts +1 -2
  255. package/types/acorex-modules-dashboard-management.d.ts +7 -0
  256. package/types/acorex-modules-data-management.d.ts +11 -3
  257. package/types/acorex-modules-document-management.d.ts +14 -0
  258. package/types/acorex-modules-report-management.d.ts +7 -0
  259. package/types/acorex-modules-workflow-management.d.ts +92 -58
  260. package/types/acorex-modules-workplacesafety-management.d.ts +143 -0
  261. package/fesm2022/acorex-modules-ai-management-agent.entity-X51GLTdi.mjs.map +0 -1
  262. package/fesm2022/acorex-modules-ai-management-assist.entity-2h5KE9UH.mjs.map +0 -1
  263. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-DqmJVJ0z.mjs.map +0 -1
  264. package/fesm2022/acorex-modules-assessment-management-assessment-case.entity-DhVwPz0T.mjs.map +0 -1
  265. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-CRDBe_BS.mjs.map +0 -1
  266. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-Cw2WCdYK.mjs.map +0 -1
  267. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-D9I3S-ZT.mjs.map +0 -1
  268. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-BOeO3Dit.mjs.map +0 -1
  269. package/fesm2022/acorex-modules-asset-management-acorex-modules-asset-management-BtcY1UQy.mjs.map +0 -1
  270. package/fesm2022/acorex-modules-asset-management-asset.entity-DJ-A6lx1.mjs.map +0 -1
  271. package/fesm2022/acorex-modules-auth-acorex-modules-auth-D4IBi_VD.mjs.map +0 -1
  272. package/fesm2022/acorex-modules-common-attachments-page.component-rc-wRjbZ.mjs +0 -92
  273. package/fesm2022/acorex-modules-common-attachments-page.component-rc-wRjbZ.mjs.map +0 -1
  274. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-DMMKjUJP.mjs.map +0 -1
  275. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-CuaEuIdl.mjs.map +0 -1
  276. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-E0e9YjO9.mjs +0 -288
  277. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-E0e9YjO9.mjs.map +0 -1
  278. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-DVlO9JZw.mjs.map +0 -1
  279. package/fesm2022/acorex-modules-human-capital-management-employee.entity-uhwOOw_y.mjs.map +0 -1
  280. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-CB2hlyOP.mjs.map +0 -1
  281. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-DWonFZpU.mjs.map +0 -1
  282. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-BNJHLs-b.mjs.map +0 -1
  283. package/fesm2022/acorex-modules-settings-management-setting-view.component-C6ftmjuK.mjs.map +0 -1
  284. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-DAh3IByo.mjs.map +0 -1
@@ -0,0 +1,307 @@
1
+ import { AXDialogService } from '@acorex/components/dialog';
2
+ import { AXToastService } from '@acorex/components/toast';
3
+ import { AXTranslationService } from '@acorex/core/translation';
4
+ import * as i0 from '@angular/core';
5
+ import { inject, Injectable } from '@angular/core';
6
+ import { AXPEntityService, getRecordWorkflowInstanceId } from '@acorex/platform/layout/entity';
7
+ import { AXP_WORKFLOW_ENGINE } from '@acorex/platform/workflow';
8
+ import { isString, get } from 'lodash-es';
9
+ import { AXPWorkflowInstanceHumanTaskService, createWorkflowInstanceBookmarkAccess } from './acorex-modules-workflow-management.mjs';
10
+
11
+ //#region ---- Imports ----
12
+ //#endregion
13
+ //#region ---- Service ----
14
+ /**
15
+ * Resolves workflow run operations for workflow-plugin list rows.
16
+ * Delegates resume/take-over to {@link AXPWorkflowInstanceHumanTaskService} (same as task board).
17
+ */
18
+ class AXPWorkflowRunActionService {
19
+ constructor() {
20
+ //#region ---- Services & Dependencies ----
21
+ this.entityService = inject(AXPEntityService);
22
+ this.humanTaskService = inject(AXPWorkflowInstanceHumanTaskService);
23
+ this.workflowEngine = inject(AXP_WORKFLOW_ENGINE, { optional: true });
24
+ this.bookmarkAccess = createWorkflowInstanceBookmarkAccess();
25
+ }
26
+ //#endregion
27
+ //#region ---- Instance resolution ----
28
+ /** Reads workflow instance id from a domain list row or command payload. */
29
+ resolveInstanceId(record) {
30
+ if (!record || typeof record !== 'object') {
31
+ return null;
32
+ }
33
+ return getRecordWorkflowInstanceId(record);
34
+ }
35
+ /**
36
+ * Finds the primary suspended human-task bookmark for continue / take-over.
37
+ * Prefers task-board human-task and cartable bookmarks.
38
+ */
39
+ async findPrimarySuspendedHumanTask(instanceId) {
40
+ const trimmed = instanceId?.trim();
41
+ if (!trimmed) {
42
+ return null;
43
+ }
44
+ const instance = await this.bookmarkAccess.loadInstanceForContinuation(trimmed);
45
+ if (!instance || instance.subStatus !== 'Suspended') {
46
+ return null;
47
+ }
48
+ const active = this.bookmarkAccess.getActiveBookmarks(instance);
49
+ for (const bookmark of active) {
50
+ const payload = this.bookmarkAccess.parseHumanTaskPayload(bookmark);
51
+ if (!payload?.taskToken || !this.isTaskBoardHumanPayload(payload)) {
52
+ continue;
53
+ }
54
+ return { instance, bookmark, payload };
55
+ }
56
+ return null;
57
+ }
58
+ //#endregion
59
+ //#region ---- Run operations ----
60
+ /** Runs the primary human-task action on the current suspended step (e.g. open questionnaire). */
61
+ async continueRun(instanceId) {
62
+ const task = await this.findPrimarySuspendedHumanTask(instanceId);
63
+ if (!task) {
64
+ return { success: false, error: 'NO_SUSPENDED_TASK' };
65
+ }
66
+ const result = await this.humanTaskService.executePrimaryHumanTaskAction(instanceId, task.bookmark.activityId, {
67
+ suppressContinuation: true,
68
+ notifyViews: true,
69
+ });
70
+ if (!result?.success) {
71
+ return {
72
+ success: false,
73
+ error: 'RESUME_FAILED',
74
+ message: result?.error,
75
+ };
76
+ }
77
+ return { success: true };
78
+ }
79
+ /** Take over the current suspended human-task bookmark without advancing the workflow. */
80
+ async takeOverRun(instanceId) {
81
+ const task = await this.findPrimarySuspendedHumanTask(instanceId);
82
+ if (!task) {
83
+ return { success: false, error: 'NO_SUSPENDED_TASK' };
84
+ }
85
+ const reassigned = await this.humanTaskService.reassignBookmarkToCurrentUserWithConfirm(instanceId, task.bookmark.id, task.bookmark.activityId);
86
+ if (!reassigned) {
87
+ return { success: false, error: 'REASSIGN_FAILED' };
88
+ }
89
+ this.humanTaskService.notifyWorkflowTaskViewsChanged();
90
+ return { success: true };
91
+ }
92
+ /** Cancels a workflow instance and optionally marks the linked domain row as cancelled. */
93
+ async cancelRun(params) {
94
+ const instanceId = params.instanceId?.trim();
95
+ if (!instanceId) {
96
+ return { success: false };
97
+ }
98
+ const engine = this.workflowEngine;
99
+ if (engine?.cancelInstance) {
100
+ await engine.cancelInstance(instanceId, params.reason?.trim() || 'cancelled-by-user');
101
+ }
102
+ else {
103
+ const now = new Date().toISOString();
104
+ await this.entityService.withEntity('WorkflowManagement', 'WorkflowInstance').data().update(instanceId, {
105
+ status: 'Finished',
106
+ subStatus: 'Cancelled',
107
+ finishedAt: now,
108
+ updatedAt: now,
109
+ });
110
+ }
111
+ const recordId = params.recordId?.trim();
112
+ const entitySource = params.entitySource?.trim();
113
+ if (recordId && entitySource) {
114
+ const [moduleName, entityName] = entitySource.split('.');
115
+ if (moduleName && entityName) {
116
+ const statusField = params.statusField?.trim() || 'statusId';
117
+ const cancelledStatus = params.cancelledStatusId?.trim() || 'cancelled';
118
+ await this.entityService.withEntity(moduleName, entityName).data().update(recordId, {
119
+ [statusField]: cancelledStatus,
120
+ ...(params.reason ? { notes: params.reason } : {}),
121
+ });
122
+ }
123
+ }
124
+ this.humanTaskService.notifyWorkflowTaskViewsChanged();
125
+ return { success: true };
126
+ }
127
+ //#endregion
128
+ //#region ---- Helpers ----
129
+ isTaskBoardHumanPayload(payload) {
130
+ const activityType = payload.activityType;
131
+ return activityType === 'workflow-activity:human-task' || activityType === 'workflow-activity:cartable';
132
+ }
133
+ /** Parses `Module.Entity` and record id from command context. */
134
+ parseCommandRecordContext(input) {
135
+ const ctx = input.__context__;
136
+ const data = ctx?.data;
137
+ const entitySource = ctx?.entityInfo?.source?.trim() ||
138
+ ctx?.entity?.trim() ||
139
+ (ctx?.entityInfo?.module && ctx?.entityInfo?.name
140
+ ? `${ctx.entityInfo.module}.${ctx.entityInfo.name}`
141
+ : null);
142
+ const recordId = data && typeof data === 'object' && isString(get(data, 'id'))
143
+ ? String(get(data, 'id')).trim()
144
+ : null;
145
+ return {
146
+ entitySource,
147
+ recordId,
148
+ instanceId: this.resolveInstanceId(data),
149
+ };
150
+ }
151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPWorkflowRunActionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
152
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPWorkflowRunActionService, providedIn: 'root' }); }
153
+ }
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPWorkflowRunActionService, decorators: [{
155
+ type: Injectable,
156
+ args: [{ providedIn: 'root' }]
157
+ }] });
158
+
159
+ //#region ---- Imports ----
160
+ //#endregion
161
+ //#region ---- Command ----
162
+ /** Cancels a workflow run and marks the linked domain row as cancelled when applicable. */
163
+ class CancelWorkflowRunCommand {
164
+ constructor() {
165
+ //#region ---- Services & Dependencies ----
166
+ this.runActionService = inject(AXPWorkflowRunActionService);
167
+ this.dialogService = inject(AXDialogService);
168
+ this.toastService = inject(AXToastService);
169
+ this.translationService = inject(AXTranslationService);
170
+ }
171
+ //#endregion
172
+ //#region ---- Command Implementation ----
173
+ async execute(input) {
174
+ const { instanceId, entitySource, recordId } = this.runActionService.parseCommandRecordContext(input);
175
+ if (!instanceId) {
176
+ return { success: false, message: { text: 'No workflow instance is linked to this record.' } };
177
+ }
178
+ const title = await this.translationService.translateAsync('@workflow-management:workflow-run.dialogs.cancel-run.title');
179
+ const message = await this.translationService.translateAsync('@workflow-management:workflow-run.dialogs.cancel-run.message');
180
+ const confirmed = await this.dialogService.confirm(title, message, 'warning', 'horizontal', false, 'cancel');
181
+ if (!confirmed.result) {
182
+ return { success: false };
183
+ }
184
+ const reason = await this.translationService.translateAsync('@workflow-management:workflow-run.messages.cancel-run-note');
185
+ const result = await this.runActionService.cancelRun({
186
+ instanceId,
187
+ entitySource: entitySource ?? undefined,
188
+ recordId: recordId ?? undefined,
189
+ reason,
190
+ });
191
+ if (!result.success) {
192
+ return { success: false, message: { text: 'Could not cancel the workflow run.' } };
193
+ }
194
+ this.toastService.show({
195
+ color: 'success',
196
+ title: await this.translationService.translateAsync('@general:messages.generic.success.title'),
197
+ content: await this.translationService.translateAsync('@workflow-management:workflow-run.messages.cancel-run-success'),
198
+ closeButton: true,
199
+ timeOut: 3000,
200
+ });
201
+ return { success: true };
202
+ }
203
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CancelWorkflowRunCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
204
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CancelWorkflowRunCommand, providedIn: 'root' }); }
205
+ }
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: CancelWorkflowRunCommand, decorators: [{
207
+ type: Injectable,
208
+ args: [{ providedIn: 'root' }]
209
+ }] });
210
+
211
+ //#region ---- Imports ----
212
+ //#endregion
213
+ //#region ---- Command ----
214
+ /** Continues the current suspended human-task step for a workflow-backed domain row. */
215
+ class ContinueWorkflowRunCommand {
216
+ constructor() {
217
+ //#region ---- Services & Dependencies ----
218
+ this.runActionService = inject(AXPWorkflowRunActionService);
219
+ this.toastService = inject(AXToastService);
220
+ this.translationService = inject(AXTranslationService);
221
+ }
222
+ //#endregion
223
+ //#region ---- Command Implementation ----
224
+ async execute(input) {
225
+ const { instanceId } = this.runActionService.parseCommandRecordContext(input);
226
+ if (!instanceId) {
227
+ return { success: false, message: { text: 'No workflow instance is linked to this record.' } };
228
+ }
229
+ const result = await this.runActionService.continueRun(instanceId);
230
+ if (result.success) {
231
+ return { success: true };
232
+ }
233
+ if (result.error === 'NO_SUSPENDED_TASK') {
234
+ const content = await this.translationService.translateAsync('@workflow-management:workflow-run.messages.no-pending-step');
235
+ this.toastService.show({
236
+ color: 'warning',
237
+ title: await this.translationService.translateAsync('@general:messages.generic.warning.title'),
238
+ content,
239
+ closeButton: true,
240
+ });
241
+ return { success: false };
242
+ }
243
+ if (result.message) {
244
+ this.toastService.show({
245
+ color: 'danger',
246
+ title: await this.translationService.translateAsync('@general:messages.generic.error.title'),
247
+ content: result.message,
248
+ closeButton: true,
249
+ });
250
+ }
251
+ return { success: false };
252
+ }
253
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ContinueWorkflowRunCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
254
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ContinueWorkflowRunCommand, providedIn: 'root' }); }
255
+ }
256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ContinueWorkflowRunCommand, decorators: [{
257
+ type: Injectable,
258
+ args: [{ providedIn: 'root' }]
259
+ }] });
260
+
261
+ //#region ---- Imports ----
262
+ //#endregion
263
+ //#region ---- Command ----
264
+ /** Reassigns the current suspended human-task to the current user (take over). */
265
+ class TakeOverWorkflowRunCommand {
266
+ constructor() {
267
+ //#region ---- Services & Dependencies ----
268
+ this.runActionService = inject(AXPWorkflowRunActionService);
269
+ this.toastService = inject(AXToastService);
270
+ this.translationService = inject(AXTranslationService);
271
+ }
272
+ //#endregion
273
+ //#region ---- Command Implementation ----
274
+ async execute(input) {
275
+ const { instanceId } = this.runActionService.parseCommandRecordContext(input);
276
+ if (!instanceId) {
277
+ return { success: false, message: { text: 'No workflow instance is linked to this record.' } };
278
+ }
279
+ const result = await this.runActionService.takeOverRun(instanceId);
280
+ if (result.success) {
281
+ return { success: true };
282
+ }
283
+ if (result.error === 'NO_SUSPENDED_TASK') {
284
+ const content = await this.translationService.translateAsync('@workflow-management:workflow-run.messages.no-pending-step');
285
+ this.toastService.show({
286
+ color: 'warning',
287
+ title: await this.translationService.translateAsync('@general:messages.generic.warning.title'),
288
+ content,
289
+ closeButton: true,
290
+ });
291
+ return { success: false };
292
+ }
293
+ return { success: false };
294
+ }
295
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TakeOverWorkflowRunCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
296
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TakeOverWorkflowRunCommand, providedIn: 'root' }); }
297
+ }
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: TakeOverWorkflowRunCommand, decorators: [{
299
+ type: Injectable,
300
+ args: [{ providedIn: 'root' }]
301
+ }] });
302
+
303
+ //#region ---- Exports ----
304
+ //#endregion
305
+
306
+ export { CancelWorkflowRunCommand, ContinueWorkflowRunCommand, TakeOverWorkflowRunCommand };
307
+ //# sourceMappingURL=acorex-modules-workflow-management-index-CxheG2ry.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-workflow-management-index-CxheG2ry.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/features/workflow-plugin/workflow-run-action.service.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-plugin/commands/cancel-workflow-run.command.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-plugin/commands/continue-workflow-run.command.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-plugin/commands/take-over-workflow-run.command.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-plugin/commands/index.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPEntityService, getRecordWorkflowInstanceId } from '@acorex/platform/layout/entity';\nimport { AXP_WORKFLOW_ENGINE, AXPWorkflowEngine } from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { get, isString } from 'lodash-es';\nimport { AXMWorkflowManagementWorkflowInstanceEntityModel } from '../../entities/workflow-instance/workflow-instance.types';\nimport {\n createWorkflowInstanceBookmarkAccess,\n HumanTaskBookmarkPayload,\n WorkflowInstanceBookmarkRow,\n} from '../task-provider/workflow-instance-bookmark.access';\nimport { AXPWorkflowInstanceHumanTaskService } from '../task-provider/workflow-instance-human-task.service';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface AXPWorkflowRunSuspendedHumanTask {\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel;\n bookmark: WorkflowInstanceBookmarkRow;\n payload: HumanTaskBookmarkPayload;\n}\n\nexport interface AXPWorkflowRunCancelParams {\n instanceId: string;\n entitySource?: string;\n recordId?: string;\n reason?: string;\n statusField?: string;\n cancelledStatusId?: string;\n}\n\n//#endregion\n\n//#region ---- Service ----\n\n/**\n * Resolves workflow run operations for workflow-plugin list rows.\n * Delegates resume/take-over to {@link AXPWorkflowInstanceHumanTaskService} (same as task board).\n */\n@Injectable({ providedIn: 'root' })\nexport class AXPWorkflowRunActionService {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly humanTaskService = inject(AXPWorkflowInstanceHumanTaskService);\n private readonly workflowEngine = inject(AXP_WORKFLOW_ENGINE, { optional: true }) as AXPWorkflowEngine | null;\n private readonly bookmarkAccess = createWorkflowInstanceBookmarkAccess();\n\n //#endregion\n\n //#region ---- Instance resolution ----\n\n /** Reads workflow instance id from a domain list row or command payload. */\n resolveInstanceId(record: unknown): string | null {\n if (!record || typeof record !== 'object') {\n return null;\n }\n return getRecordWorkflowInstanceId(record as { workflowInfo?: { instanceId?: string | null } });\n }\n\n /**\n * Finds the primary suspended human-task bookmark for continue / take-over.\n * Prefers task-board human-task and cartable bookmarks.\n */\n async findPrimarySuspendedHumanTask(instanceId: string): Promise<AXPWorkflowRunSuspendedHumanTask | null> {\n const trimmed = instanceId?.trim();\n if (!trimmed) {\n return null;\n }\n\n const instance = await this.bookmarkAccess.loadInstanceForContinuation(trimmed);\n if (!instance || instance.subStatus !== 'Suspended') {\n return null;\n }\n\n const active = this.bookmarkAccess.getActiveBookmarks(instance);\n for (const bookmark of active) {\n const payload = this.bookmarkAccess.parseHumanTaskPayload(bookmark);\n if (!payload?.taskToken || !this.isTaskBoardHumanPayload(payload)) {\n continue;\n }\n return { instance, bookmark, payload };\n }\n\n return null;\n }\n\n //#endregion\n\n //#region ---- Run operations ----\n\n /** Runs the primary human-task action on the current suspended step (e.g. open questionnaire). */\n async continueRun(instanceId: string) {\n const task = await this.findPrimarySuspendedHumanTask(instanceId);\n if (!task) {\n return { success: false as const, error: 'NO_SUSPENDED_TASK' as const };\n }\n\n const result = await this.humanTaskService.executePrimaryHumanTaskAction(instanceId, task.bookmark.activityId, {\n suppressContinuation: true,\n notifyViews: true,\n });\n\n if (!result?.success) {\n return {\n success: false as const,\n error: 'RESUME_FAILED' as const,\n message: result?.error,\n };\n }\n\n return { success: true as const };\n }\n\n /** Take over the current suspended human-task bookmark without advancing the workflow. */\n async takeOverRun(instanceId: string) {\n const task = await this.findPrimarySuspendedHumanTask(instanceId);\n if (!task) {\n return { success: false as const, error: 'NO_SUSPENDED_TASK' as const };\n }\n\n const reassigned = await this.humanTaskService.reassignBookmarkToCurrentUserWithConfirm(\n instanceId,\n task.bookmark.id,\n task.bookmark.activityId,\n );\n\n if (!reassigned) {\n return { success: false as const, error: 'REASSIGN_FAILED' as const };\n }\n\n this.humanTaskService.notifyWorkflowTaskViewsChanged();\n return { success: true as const };\n }\n\n /** Cancels a workflow instance and optionally marks the linked domain row as cancelled. */\n async cancelRun(params: AXPWorkflowRunCancelParams): Promise<{ success: boolean }> {\n const instanceId = params.instanceId?.trim();\n if (!instanceId) {\n return { success: false };\n }\n\n const engine = this.workflowEngine;\n if (engine?.cancelInstance) {\n await engine.cancelInstance(instanceId, params.reason?.trim() || 'cancelled-by-user');\n } else {\n const now = new Date().toISOString();\n await this.entityService.withEntity('WorkflowManagement', 'WorkflowInstance').data().update(instanceId, {\n status: 'Finished',\n subStatus: 'Cancelled',\n finishedAt: now,\n updatedAt: now,\n } as never);\n }\n\n const recordId = params.recordId?.trim();\n const entitySource = params.entitySource?.trim();\n if (recordId && entitySource) {\n const [moduleName, entityName] = entitySource.split('.');\n if (moduleName && entityName) {\n const statusField = params.statusField?.trim() || 'statusId';\n const cancelledStatus = params.cancelledStatusId?.trim() || 'cancelled';\n await this.entityService.withEntity(moduleName, entityName).data().update(recordId, {\n [statusField]: cancelledStatus,\n ...(params.reason ? { notes: params.reason } : {}),\n } as never);\n }\n }\n\n this.humanTaskService.notifyWorkflowTaskViewsChanged();\n return { success: true };\n }\n\n //#endregion\n\n //#region ---- Helpers ----\n\n private isTaskBoardHumanPayload(payload: HumanTaskBookmarkPayload): boolean {\n const activityType = payload.activityType;\n return activityType === 'workflow-activity:human-task' || activityType === 'workflow-activity:cartable';\n }\n\n /** Parses `Module.Entity` and record id from command context. */\n parseCommandRecordContext(input: {\n __context__?: {\n entity?: string;\n entityInfo?: { module?: string; name?: string; source?: string };\n data?: unknown;\n };\n }): { entitySource: string | null; recordId: string | null; instanceId: string | null } {\n const ctx = input.__context__;\n const data = ctx?.data;\n const entitySource =\n ctx?.entityInfo?.source?.trim() ||\n ctx?.entity?.trim() ||\n (ctx?.entityInfo?.module && ctx?.entityInfo?.name\n ? `${ctx.entityInfo.module}.${ctx.entityInfo.name}`\n : null);\n\n const recordId =\n data && typeof data === 'object' && isString(get(data, 'id'))\n ? String(get(data, 'id')).trim()\n : null;\n\n return {\n entitySource,\n recordId,\n instanceId: this.resolveInstanceId(data),\n };\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { AXPWorkflowRunActionService } from '../workflow-run-action.service';\n\n//#endregion\n\n//#region ---- Command ----\n\n/** Cancels a workflow run and marks the linked domain row as cancelled when applicable. */\n@Injectable({ providedIn: 'root' })\nexport class CancelWorkflowRunCommand implements AXPCommand<Record<string, unknown>, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly runActionService = inject(AXPWorkflowRunActionService);\n private readonly dialogService = inject(AXDialogService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(input: Record<string, unknown>): Promise<AXPExecuteCommandResult<void>> {\n const { instanceId, entitySource, recordId } = this.runActionService.parseCommandRecordContext(input);\n if (!instanceId) {\n return { success: false, message: { text: 'No workflow instance is linked to this record.' } };\n }\n\n const title = await this.translationService.translateAsync(\n '@workflow-management:workflow-run.dialogs.cancel-run.title',\n );\n const message = await this.translationService.translateAsync(\n '@workflow-management:workflow-run.dialogs.cancel-run.message',\n );\n const confirmed = await this.dialogService.confirm(title, message, 'warning', 'horizontal', false, 'cancel');\n if (!confirmed.result) {\n return { success: false };\n }\n\n const reason = await this.translationService.translateAsync(\n '@workflow-management:workflow-run.messages.cancel-run-note',\n );\n\n const result = await this.runActionService.cancelRun({\n instanceId,\n entitySource: entitySource ?? undefined,\n recordId: recordId ?? undefined,\n reason,\n });\n\n if (!result.success) {\n return { success: false, message: { text: 'Could not cancel the workflow run.' } };\n }\n\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync('@general:messages.generic.success.title'),\n content: await this.translationService.translateAsync(\n '@workflow-management:workflow-run.messages.cancel-run-success',\n ),\n closeButton: true,\n timeOut: 3000,\n });\n\n return { success: true };\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { AXPWorkflowRunActionService } from '../workflow-run-action.service';\n\n//#endregion\n\n//#region ---- Command ----\n\n/** Continues the current suspended human-task step for a workflow-backed domain row. */\n@Injectable({ providedIn: 'root' })\nexport class ContinueWorkflowRunCommand implements AXPCommand<Record<string, unknown>, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly runActionService = inject(AXPWorkflowRunActionService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(input: Record<string, unknown>): Promise<AXPExecuteCommandResult<void>> {\n const { instanceId } = this.runActionService.parseCommandRecordContext(input);\n if (!instanceId) {\n return { success: false, message: { text: 'No workflow instance is linked to this record.' } };\n }\n\n const result = await this.runActionService.continueRun(instanceId);\n if (result.success) {\n return { success: true };\n }\n\n if (result.error === 'NO_SUSPENDED_TASK') {\n const content = await this.translationService.translateAsync(\n '@workflow-management:workflow-run.messages.no-pending-step',\n );\n this.toastService.show({\n color: 'warning',\n title: await this.translationService.translateAsync('@general:messages.generic.warning.title'),\n content,\n closeButton: true,\n });\n return { success: false };\n }\n\n if (result.message) {\n this.toastService.show({\n color: 'danger',\n title: await this.translationService.translateAsync('@general:messages.generic.error.title'),\n content: result.message,\n closeButton: true,\n });\n }\n\n return { success: false };\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { AXPWorkflowRunActionService } from '../workflow-run-action.service';\n\n//#endregion\n\n//#region ---- Command ----\n\n/** Reassigns the current suspended human-task to the current user (take over). */\n@Injectable({ providedIn: 'root' })\nexport class TakeOverWorkflowRunCommand implements AXPCommand<Record<string, unknown>, void> {\n //#region ---- Services & Dependencies ----\n\n private readonly runActionService = inject(AXPWorkflowRunActionService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(input: Record<string, unknown>): Promise<AXPExecuteCommandResult<void>> {\n const { instanceId } = this.runActionService.parseCommandRecordContext(input);\n if (!instanceId) {\n return { success: false, message: { text: 'No workflow instance is linked to this record.' } };\n }\n\n const result = await this.runActionService.takeOverRun(instanceId);\n if (result.success) {\n return { success: true };\n }\n\n if (result.error === 'NO_SUSPENDED_TASK') {\n const content = await this.translationService.translateAsync(\n '@workflow-management:workflow-run.messages.no-pending-step',\n );\n this.toastService.show({\n color: 'warning',\n title: await this.translationService.translateAsync('@general:messages.generic.warning.title'),\n content,\n closeButton: true,\n });\n return { success: false };\n }\n\n return { success: false };\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Exports ----\n\nexport { CancelWorkflowRunCommand } from './cancel-workflow-run.command';\nexport { ContinueWorkflowRunCommand } from './continue-workflow-run.command';\nexport { TakeOverWorkflowRunCommand } from './take-over-workflow-run.command';\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -244,12 +244,12 @@ class AXMWorkflowTaskPopoverComponent extends AXPTaskPopoverComponent {
244
244
  }
245
245
  }
246
246
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowTaskPopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
247
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMWorkflowTaskPopoverComponent, isStandalone: true, selector: "axm-workflow-task-popover", inputs: { task: { classPropertyName: "task", publicName: "task", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>", styles: [".task-popover{background:rgba(var(--ax-sys-color-lightest-surface));border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.task-popover__header{padding:20px 20px 16px;border-bottom:1px solid var(--ax-sys-color-border);background:linear-gradient(to bottom,var(--ax-sys-color-lightest-surface),var(--ax-sys-color-lighter-surface))}.task-popover__title-section{display:flex;flex-direction:column;gap:8px}.task-popover__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-popover__title{font-size:18px;font-weight:600;line-height:1.4;color:var(--ax-sys-color-text-primary);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-popover__close-btn{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ax-sys-color-text-neutral-600);transition:color .2s ease;border-radius:4px}.task-popover__close-btn:hover{color:var(--ax-sys-color-text-primary);background:var(--ax-sys-color-lighter-surface)}.task-popover__close-btn:active{background:var(--ax-sys-color-light-surface)}.task-popover__close-btn ax-icon{display:block;width:16px;height:16px}.task-popover__body{display:flex;flex-direction:column}.task-popover__description{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-secondary);margin:0;padding:0 20px 12px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.task-popover__content{padding:16px 20px;display:flex;flex-direction:column;gap:12px;flex:1}.task-popover__info-item{display:flex;align-items:flex-start;gap:12px;min-height:24px}.task-popover__icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;color:var(--ax-sys-color-text-neutral-600);font-size:14px}.task-popover__icon i{display:block}.task-popover__icon--priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__icon--priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__icon--priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__icon--priority[data-priority=low],.task-popover__icon--priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-500)}.task-popover__info-content{flex:1;min-width:0;display:flex;align-items:center}.task-popover__info-text{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-primary);word-wrap:break-word}.task-popover__priority{text-transform:capitalize;font-weight:500}.task-popover__priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__priority[data-priority=low],.task-popover__priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-600)}.task-popover__actions{padding:12px 20px 16px;border-top:1px solid var(--ax-sys-color-border);display:flex;flex-direction:column;gap:8px;background:var(--ax-sys-color-lighter-surface)}.task-popover__actions-group{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}\n", ".workflow-task-popover{display:flex;flex-direction:column;min-width:280px;max-width:420px}.workflow-task-popover__metadata{padding:1rem 1.25rem .75rem;font-size:.875rem;line-height:1.25rem}.workflow-task-popover__metadata .__row{display:grid;align-items:center;column-gap:1.25rem;row-gap:.25rem;grid-template-columns:minmax(7rem,35%) 1fr}.workflow-task-popover__metadata .__row--loading{align-items:flex-start;column-gap:1rem}.workflow-task-popover__metadata .__row__label{flex-shrink:0;padding-inline-end:.25rem;font-weight:700}.workflow-task-popover__metadata .__row__value{display:flex;min-width:0px;align-items:center}.workflow-task-popover__metadata .__skeleton-label{height:1rem;border-radius:.25rem;width:66.666667%}.workflow-task-popover__metadata .__skeleton-value{height:1rem;width:100%;border-radius:.25rem}.workflow-task-popover__content{min-height:0px}.workflow-task-popover__content:not(:has(.workflow-task-popover__fallback)){padding:1rem 1.25rem}.workflow-task-popover__fallback{padding-left:1.25rem;padding-right:1.25rem;padding-bottom:1rem}.workflow-task-popover__fallback .task-popover__description{margin:0;padding:0;font-size:.875rem;line-height:1.25rem;line-height:1.375}.workflow-task-popover__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;border-top-width:1px;padding:.75rem 1.25rem;--ax-sys-size-base: 2rem }\n"], dependencies: [{ kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i1.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i3.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i4.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
247
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMWorkflowTaskPopoverComponent, isStandalone: true, selector: "axm-workflow-task-popover", inputs: { task: { classPropertyName: "task", publicName: "task", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>", styles: [".task-popover{background:rgba(var(--ax-sys-color-lightest-surface));border-radius:12px;min-width:280px;max-width:420px;overflow:hidden;display:flex;flex-direction:column}.task-popover__header{padding:20px 20px 16px;border-bottom:1px solid var(--ax-sys-color-border);background:linear-gradient(to bottom,var(--ax-sys-color-lightest-surface),var(--ax-sys-color-lighter-surface))}.task-popover__title-section{display:flex;flex-direction:column;gap:8px}.task-popover__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-popover__title{font-size:18px;font-weight:600;line-height:1.4;color:var(--ax-sys-color-text-primary);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-popover__close-btn{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ax-sys-color-text-neutral-600);transition:color .2s ease;border-radius:4px}.task-popover__close-btn:hover{color:var(--ax-sys-color-text-primary);background:var(--ax-sys-color-lighter-surface)}.task-popover__close-btn:active{background:var(--ax-sys-color-light-surface)}.task-popover__close-btn ax-icon{display:block;width:16px;height:16px}.task-popover__body{display:flex;flex-direction:column}.task-popover__description{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-secondary);margin:0;padding:0 20px 12px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.task-popover__content{padding:16px 20px;display:flex;flex-direction:column;gap:12px;flex:1}.task-popover__info-item{display:flex;align-items:flex-start;gap:12px;min-height:24px}.task-popover__icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;color:var(--ax-sys-color-text-neutral-600);font-size:14px}.task-popover__icon i{display:block}.task-popover__icon--priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__icon--priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__icon--priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__icon--priority[data-priority=low],.task-popover__icon--priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-500)}.task-popover__info-content{flex:1;min-width:0;display:flex;align-items:center}.task-popover__info-text{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-primary);word-wrap:break-word}.task-popover__priority{text-transform:capitalize;font-weight:500}.task-popover__priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__priority[data-priority=low],.task-popover__priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-600)}.task-popover__actions{padding:12px 20px 16px;border-top:1px solid var(--ax-sys-color-border);display:flex;flex-direction:column;gap:8px;background:var(--ax-sys-color-lighter-surface)}.task-popover__actions-group{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}\n", ".workflow-task-popover{display:flex;flex-direction:column}.workflow-task-popover__metadata{padding:1rem 1.25rem .75rem;font-size:.875rem;line-height:1.25rem}.workflow-task-popover__metadata .__row{display:grid;align-items:center;column-gap:1.25rem;row-gap:.25rem;grid-template-columns:minmax(7rem,35%) 1fr}.workflow-task-popover__metadata .__row--loading{align-items:flex-start;column-gap:1rem}.workflow-task-popover__metadata .__row__label{flex-shrink:0;padding-inline-end:.25rem;font-weight:700}.workflow-task-popover__metadata .__row__value{display:flex;min-width:0px;align-items:center}.workflow-task-popover__metadata .__skeleton-label{height:1rem;border-radius:.25rem;width:66.666667%}.workflow-task-popover__metadata .__skeleton-value{height:1rem;width:100%;border-radius:.25rem}.workflow-task-popover__content{min-height:0px}.workflow-task-popover__content:not(:has(.workflow-task-popover__fallback)){padding:1rem 1.25rem}.workflow-task-popover__fallback{padding-left:1.25rem;padding-right:1.25rem;padding-bottom:1rem}.workflow-task-popover__fallback .task-popover__description{margin:0;padding:0;font-size:.875rem;line-height:1.25rem;line-height:1.375}.workflow-task-popover__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;border-top-width:1px;padding:.75rem 1.25rem;--ax-sys-size-base: 2rem }\n"], dependencies: [{ kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i1.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged", "onLoad"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i3.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i4.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
248
248
  }
249
249
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowTaskPopoverComponent, decorators: [{
250
250
  type: Component,
251
- args: [{ selector: 'axm-workflow-task-popover', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [AXPWidgetCoreModule, AXButtonModule, AXDropdownModule, AXSkeletonModule, CommonModule, AXTranslationModule], template: "<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>", styles: [".task-popover{background:rgba(var(--ax-sys-color-lightest-surface));border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.task-popover__header{padding:20px 20px 16px;border-bottom:1px solid var(--ax-sys-color-border);background:linear-gradient(to bottom,var(--ax-sys-color-lightest-surface),var(--ax-sys-color-lighter-surface))}.task-popover__title-section{display:flex;flex-direction:column;gap:8px}.task-popover__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-popover__title{font-size:18px;font-weight:600;line-height:1.4;color:var(--ax-sys-color-text-primary);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-popover__close-btn{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ax-sys-color-text-neutral-600);transition:color .2s ease;border-radius:4px}.task-popover__close-btn:hover{color:var(--ax-sys-color-text-primary);background:var(--ax-sys-color-lighter-surface)}.task-popover__close-btn:active{background:var(--ax-sys-color-light-surface)}.task-popover__close-btn ax-icon{display:block;width:16px;height:16px}.task-popover__body{display:flex;flex-direction:column}.task-popover__description{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-secondary);margin:0;padding:0 20px 12px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.task-popover__content{padding:16px 20px;display:flex;flex-direction:column;gap:12px;flex:1}.task-popover__info-item{display:flex;align-items:flex-start;gap:12px;min-height:24px}.task-popover__icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;color:var(--ax-sys-color-text-neutral-600);font-size:14px}.task-popover__icon i{display:block}.task-popover__icon--priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__icon--priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__icon--priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__icon--priority[data-priority=low],.task-popover__icon--priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-500)}.task-popover__info-content{flex:1;min-width:0;display:flex;align-items:center}.task-popover__info-text{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-primary);word-wrap:break-word}.task-popover__priority{text-transform:capitalize;font-weight:500}.task-popover__priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__priority[data-priority=low],.task-popover__priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-600)}.task-popover__actions{padding:12px 20px 16px;border-top:1px solid var(--ax-sys-color-border);display:flex;flex-direction:column;gap:8px;background:var(--ax-sys-color-lighter-surface)}.task-popover__actions-group{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}\n", ".workflow-task-popover{display:flex;flex-direction:column;min-width:280px;max-width:420px}.workflow-task-popover__metadata{padding:1rem 1.25rem .75rem;font-size:.875rem;line-height:1.25rem}.workflow-task-popover__metadata .__row{display:grid;align-items:center;column-gap:1.25rem;row-gap:.25rem;grid-template-columns:minmax(7rem,35%) 1fr}.workflow-task-popover__metadata .__row--loading{align-items:flex-start;column-gap:1rem}.workflow-task-popover__metadata .__row__label{flex-shrink:0;padding-inline-end:.25rem;font-weight:700}.workflow-task-popover__metadata .__row__value{display:flex;min-width:0px;align-items:center}.workflow-task-popover__metadata .__skeleton-label{height:1rem;border-radius:.25rem;width:66.666667%}.workflow-task-popover__metadata .__skeleton-value{height:1rem;width:100%;border-radius:.25rem}.workflow-task-popover__content{min-height:0px}.workflow-task-popover__content:not(:has(.workflow-task-popover__fallback)){padding:1rem 1.25rem}.workflow-task-popover__fallback{padding-left:1.25rem;padding-right:1.25rem;padding-bottom:1rem}.workflow-task-popover__fallback .task-popover__description{margin:0;padding:0;font-size:.875rem;line-height:1.25rem;line-height:1.375}.workflow-task-popover__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;border-top-width:1px;padding:.75rem 1.25rem;--ax-sys-size-base: 2rem }\n"] }]
251
+ args: [{ selector: 'axm-workflow-task-popover', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [AXPWidgetCoreModule, AXButtonModule, AXDropdownModule, AXSkeletonModule, CommonModule, AXTranslationModule], template: "<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>", styles: [".task-popover{background:rgba(var(--ax-sys-color-lightest-surface));border-radius:12px;min-width:280px;max-width:420px;overflow:hidden;display:flex;flex-direction:column}.task-popover__header{padding:20px 20px 16px;border-bottom:1px solid var(--ax-sys-color-border);background:linear-gradient(to bottom,var(--ax-sys-color-lightest-surface),var(--ax-sys-color-lighter-surface))}.task-popover__title-section{display:flex;flex-direction:column;gap:8px}.task-popover__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-popover__title{font-size:18px;font-weight:600;line-height:1.4;color:var(--ax-sys-color-text-primary);margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-popover__close-btn{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ax-sys-color-text-neutral-600);transition:color .2s ease;border-radius:4px}.task-popover__close-btn:hover{color:var(--ax-sys-color-text-primary);background:var(--ax-sys-color-lighter-surface)}.task-popover__close-btn:active{background:var(--ax-sys-color-light-surface)}.task-popover__close-btn ax-icon{display:block;width:16px;height:16px}.task-popover__body{display:flex;flex-direction:column}.task-popover__description{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-secondary);margin:0;padding:0 20px 12px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.task-popover__content{padding:16px 20px;display:flex;flex-direction:column;gap:12px;flex:1}.task-popover__info-item{display:flex;align-items:flex-start;gap:12px;min-height:24px}.task-popover__icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;color:var(--ax-sys-color-text-neutral-600);font-size:14px}.task-popover__icon i{display:block}.task-popover__icon--priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__icon--priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__icon--priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__icon--priority[data-priority=low],.task-popover__icon--priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-500)}.task-popover__info-content{flex:1;min-width:0;display:flex;align-items:center}.task-popover__info-text{font-size:14px;line-height:1.5;color:var(--ax-sys-color-text-primary);word-wrap:break-word}.task-popover__priority{text-transform:capitalize;font-weight:500}.task-popover__priority[data-priority=highest]{color:var(--ax-sys-color-danger)}.task-popover__priority[data-priority=high]{color:var(--ax-sys-color-warning)}.task-popover__priority[data-priority=medium]{color:var(--ax-sys-color-info)}.task-popover__priority[data-priority=low],.task-popover__priority[data-priority=lowest]{color:var(--ax-sys-color-text-neutral-600)}.task-popover__actions{padding:12px 20px 16px;border-top:1px solid var(--ax-sys-color-border);display:flex;flex-direction:column;gap:8px;background:var(--ax-sys-color-lighter-surface)}.task-popover__actions-group{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}\n", ".workflow-task-popover{display:flex;flex-direction:column}.workflow-task-popover__metadata{padding:1rem 1.25rem .75rem;font-size:.875rem;line-height:1.25rem}.workflow-task-popover__metadata .__row{display:grid;align-items:center;column-gap:1.25rem;row-gap:.25rem;grid-template-columns:minmax(7rem,35%) 1fr}.workflow-task-popover__metadata .__row--loading{align-items:flex-start;column-gap:1rem}.workflow-task-popover__metadata .__row__label{flex-shrink:0;padding-inline-end:.25rem;font-weight:700}.workflow-task-popover__metadata .__row__value{display:flex;min-width:0px;align-items:center}.workflow-task-popover__metadata .__skeleton-label{height:1rem;border-radius:.25rem;width:66.666667%}.workflow-task-popover__metadata .__skeleton-value{height:1rem;width:100%;border-radius:.25rem}.workflow-task-popover__content{min-height:0px}.workflow-task-popover__content:not(:has(.workflow-task-popover__fallback)){padding:1rem 1.25rem}.workflow-task-popover__fallback{padding-left:1.25rem;padding-right:1.25rem;padding-bottom:1rem}.workflow-task-popover__fallback .task-popover__description{margin:0;padding:0;font-size:.875rem;line-height:1.25rem;line-height:1.375}.workflow-task-popover__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;border-top-width:1px;padding:.75rem 1.25rem;--ax-sys-size-base: 2rem }\n"] }]
252
252
  }], ctorParameters: () => [], propDecorators: { task: [{ type: i0.Input, args: [{ isSignal: true, alias: "task", required: true }] }] } });
253
253
 
254
254
  export { AXMWorkflowTaskPopoverComponent };
255
- //# sourceMappingURL=acorex-modules-workflow-management-workflow-task-popover.component-DjYDwHWU.mjs.map
255
+ //# sourceMappingURL=acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-workflow-management-workflow-task-popover.component-DjYDwHWU.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-popover.component.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-popover.component.html"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport {\n AXPTask,\n AXPTaskActionMenuItem,\n AXPTaskBoardService,\n AXPTaskPopoverComponent,\n AXPTaskPopoverMetadata,\n} from '@acorex/modules/task-management';\nimport { AXPWidgetCoreModule, AXPWidgetNode, AXPWidgetSerializationHelper } from '@acorex/platform/layout/widget-core';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPContextChangeEvent } from '@acorex/platform/core';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n CUSTOM_ELEMENTS_SCHEMA,\n effect,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Field definition for workflow task form (from payload.context._fields).\n */\ninterface WorkflowTaskFormField {\n name: string;\n label?: string;\n type?: 'string' | 'number' | 'date' | 'boolean' | 'text';\n value?: unknown;\n placeholder?: string;\n}\n\n/**\n * Payload shape for human-task bookmark (context, actions, optional layout).\n */\ninterface HumanTaskPayload {\n activityName?: string;\n dueDate?: string | Date | null;\n context?: Record<string, unknown> & { _fields?: WorkflowTaskFormField[] };\n actions?: { prefix?: unknown[]; suffix?: unknown[] };\n layout?: string;\n}\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-workflow-task-popover',\n templateUrl: './workflow-task-popover.component.html',\n styleUrls: [\n '../../../../../task-management/src/lib/features/task-board/task-board-default-task-popover.component.scss',\n './workflow-task-popover.component.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [AXPWidgetCoreModule, AXButtonModule, AXDropdownModule, AXSkeletonModule, CommonModule, AXTranslationModule],\n})\nexport class AXMWorkflowTaskPopoverComponent extends AXPTaskPopoverComponent {\n //#region ---- Inputs ----\n\n task = input.required<AXPTask>();\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly taskBoardService = inject(AXPTaskBoardService);\n\n //#endregion\n\n //#region ---- Popover metadata (from provider) ----\n\n protected readonly isLoadingMetadata = signal(false);\n protected readonly popoverMetadata = signal<AXPTaskPopoverMetadata | null>(null);\n\n /** Placeholder rows for the metadata loading skeleton. */\n protected readonly loadingSkeletonRows = [1, 2, 3, 4, 5, 6] as const;\n\n protected readonly metadataFields = computed(() => this.popoverMetadata()?.fields ?? []);\n protected readonly metadataContext = computed(() => this.popoverMetadata()?.context ?? {});\n\n //#endregion\n\n //#region ---- Payload ----\n\n protected readonly bookmarkPayload = computed((): HumanTaskPayload | null => {\n const data = this.task()?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = data?.payload;\n return payload && typeof payload === 'object' ? payload : null;\n });\n\n //#endregion\n\n //#region ---- Form context (for userInput on resume) ----\n\n /** Current form values; passed as userInput when executing an action. */\n protected readonly formValues = signal<Record<string, unknown>>({});\n\n protected onFormContextChanged(event: AXPContextChangeEvent): void {\n const data = event?.data;\n if (data && typeof data === 'object') {\n const filtered: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (key !== 'task' && key !== '_fields') filtered[key] = value;\n }\n this.formValues.set(filtered);\n }\n }\n\n //#endregion\n\n //#region ---- Content node from payload.layout or payload.context ----\n\n protected readonly contentNode = computed<AXPWidgetNode | null>(() => {\n const t = this.task();\n const taskData = t?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = taskData?.payload;\n const layoutStr = payload?.layout;\n if (typeof layoutStr === 'string' && layoutStr.trim().length > 0) {\n try {\n return AXPWidgetSerializationHelper.fromJson(layoutStr);\n } catch {\n return null;\n }\n }\n const context = payload?.context;\n const fields =\n context && typeof context === 'object' && Array.isArray((context as { _fields?: unknown })._fields)\n ? ((context as { _fields: WorkflowTaskFormField[] })._fields)\n : null;\n\n if (!fields || fields.length === 0) return null;\n\n const children: AXPWidgetNode[] = fields.map((f) => ({\n type: 'grid-item-layout',\n name: f.name,\n options: { colSpan: 12 },\n children: [\n {\n type: 'form-field',\n options: {\n label: f.label ?? f.name,\n showLabel: true,\n },\n children: [this.buildWidgetNode(f)],\n },\n ],\n }));\n\n return {\n type: 'grid-layout',\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 'repeat(12, 1fr)',\n rows: 'repeat(1, 1fr)',\n gap: '12px',\n },\n },\n },\n children,\n };\n });\n\n private buildWidgetNode(f: WorkflowTaskFormField): AXPWidgetNode {\n const type = (f.type ?? 'string').toLowerCase();\n const path = f.name;\n const defaultValue = f.value;\n\n switch (type) {\n case 'number':\n return {\n type: AXPWidgetsList.Editors.NumberBox,\n path,\n name: path,\n defaultValue,\n options: {},\n };\n case 'date':\n return {\n type: AXPWidgetsList.Editors.DateTimeBox,\n path,\n name: path,\n defaultValue,\n options: { showTime: true },\n };\n case 'boolean':\n return {\n type: AXPWidgetsList.Editors.CheckBox,\n path,\n name: path,\n defaultValue: Boolean(defaultValue),\n options: {},\n };\n case 'text':\n return {\n type: AXPWidgetsList.Editors.LargeTextBox,\n path,\n name: path,\n defaultValue,\n options: { rows: 3, placeholder: f.placeholder },\n };\n default:\n return {\n type: AXPWidgetsList.Editors.TextBox,\n path,\n name: path,\n defaultValue,\n options: { placeholder: f.placeholder },\n };\n }\n }\n\n protected readonly popoverContext = computed<Record<string, unknown>>(() => {\n const t = this.task();\n const payload = (t?.data as { payload?: HumanTaskPayload })?.payload;\n const ctx = payload?.context;\n const base: Record<string, unknown> = ctx && typeof ctx === 'object' ? { ...ctx } : {};\n base['task'] = t;\n const fields = Array.isArray(base['_fields']) ? (base['_fields'] as WorkflowTaskFormField[]) : [];\n for (const f of fields) {\n if (f.name && !(f.name in base)) base[f.name] = f.value;\n }\n return base;\n });\n\n //#endregion\n\n //#region ---- Actions ----\n\n protected readonly taskActions = signal<AXPTaskActionMenuItem[]>([]);\n\n protected readonly primaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'primary'),\n );\n\n protected readonly secondaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'secondary'),\n );\n\n constructor() {\n super();\n effect((onCleanup) => {\n const t = this.task();\n if (!t?.provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n const provider = this.taskBoardService.getProvider(t.provider);\n if (!provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n let cancelled = false;\n onCleanup(() => {\n cancelled = true;\n });\n\n if (typeof provider.getPopoverMetadata === 'function') {\n this.isLoadingMetadata.set(true);\n this.popoverMetadata.set(null);\n void provider.getPopoverMetadata(t).then(\n (metadata) => {\n if (!cancelled) {\n this.popoverMetadata.set(metadata);\n this.isLoadingMetadata.set(false);\n }\n },\n () => {\n if (!cancelled) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n },\n );\n } else {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n\n void provider.getActions(t).then((actions) => {\n if (!cancelled) {\n this.taskActions.set(actions);\n }\n });\n });\n }\n\n protected getActionColor(action: AXPTaskActionMenuItem): string | null {\n return (action.color as string) ?? null;\n }\n\n protected async executeAction(action: AXPTaskActionMenuItem): Promise<void> {\n const t = this.task();\n if (!t || !action.command || !t.provider) return;\n const userInput = this.formValues();\n const command = {\n ...action.command,\n options: {\n ...action.command.options,\n userInput:\n userInput && Object.keys(userInput).length > 0 ? userInput : (action.command.options?.['userInput'] ?? {}),\n },\n };\n try {\n await this.taskBoardService.executeCommand(command, t.provider);\n } catch (error) {\n console.error('[WorkflowTaskPopover] executeAction failed:', error);\n } finally {\n this.refreshPopover();\n this.closePopover();\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>"],"names":["i5","i6"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-popover.component.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-popover.component.html"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport {\n AXPTask,\n AXPTaskActionMenuItem,\n AXPTaskBoardService,\n AXPTaskPopoverComponent,\n AXPTaskPopoverMetadata,\n} from '@acorex/modules/task-management';\nimport { AXPWidgetCoreModule, AXPWidgetNode, AXPWidgetSerializationHelper } from '@acorex/platform/layout/widget-core';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPContextChangeEvent } from '@acorex/platform/core';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n CUSTOM_ELEMENTS_SCHEMA,\n effect,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Field definition for workflow task form (from payload.context._fields).\n */\ninterface WorkflowTaskFormField {\n name: string;\n label?: string;\n type?: 'string' | 'number' | 'date' | 'boolean' | 'text';\n value?: unknown;\n placeholder?: string;\n}\n\n/**\n * Payload shape for human-task bookmark (context, actions, optional layout).\n */\ninterface HumanTaskPayload {\n activityName?: string;\n dueDate?: string | Date | null;\n context?: Record<string, unknown> & { _fields?: WorkflowTaskFormField[] };\n actions?: { prefix?: unknown[]; suffix?: unknown[] };\n layout?: string;\n}\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-workflow-task-popover',\n templateUrl: './workflow-task-popover.component.html',\n styleUrls: [\n '../../../../../task-management/src/lib/features/task-board/task-board-default-task-popover.component.scss',\n './workflow-task-popover.component.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [AXPWidgetCoreModule, AXButtonModule, AXDropdownModule, AXSkeletonModule, CommonModule, AXTranslationModule],\n})\nexport class AXMWorkflowTaskPopoverComponent extends AXPTaskPopoverComponent {\n //#region ---- Inputs ----\n\n task = input.required<AXPTask>();\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly taskBoardService = inject(AXPTaskBoardService);\n\n //#endregion\n\n //#region ---- Popover metadata (from provider) ----\n\n protected readonly isLoadingMetadata = signal(false);\n protected readonly popoverMetadata = signal<AXPTaskPopoverMetadata | null>(null);\n\n /** Placeholder rows for the metadata loading skeleton. */\n protected readonly loadingSkeletonRows = [1, 2, 3, 4, 5, 6] as const;\n\n protected readonly metadataFields = computed(() => this.popoverMetadata()?.fields ?? []);\n protected readonly metadataContext = computed(() => this.popoverMetadata()?.context ?? {});\n\n //#endregion\n\n //#region ---- Payload ----\n\n protected readonly bookmarkPayload = computed((): HumanTaskPayload | null => {\n const data = this.task()?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = data?.payload;\n return payload && typeof payload === 'object' ? payload : null;\n });\n\n //#endregion\n\n //#region ---- Form context (for userInput on resume) ----\n\n /** Current form values; passed as userInput when executing an action. */\n protected readonly formValues = signal<Record<string, unknown>>({});\n\n protected onFormContextChanged(event: AXPContextChangeEvent): void {\n const data = event?.data;\n if (data && typeof data === 'object') {\n const filtered: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (key !== 'task' && key !== '_fields') filtered[key] = value;\n }\n this.formValues.set(filtered);\n }\n }\n\n //#endregion\n\n //#region ---- Content node from payload.layout or payload.context ----\n\n protected readonly contentNode = computed<AXPWidgetNode | null>(() => {\n const t = this.task();\n const taskData = t?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = taskData?.payload;\n const layoutStr = payload?.layout;\n if (typeof layoutStr === 'string' && layoutStr.trim().length > 0) {\n try {\n return AXPWidgetSerializationHelper.fromJson(layoutStr);\n } catch {\n return null;\n }\n }\n const context = payload?.context;\n const fields =\n context && typeof context === 'object' && Array.isArray((context as { _fields?: unknown })._fields)\n ? ((context as { _fields: WorkflowTaskFormField[] })._fields)\n : null;\n\n if (!fields || fields.length === 0) return null;\n\n const children: AXPWidgetNode[] = fields.map((f) => ({\n type: 'grid-item-layout',\n name: f.name,\n options: { colSpan: 12 },\n children: [\n {\n type: 'form-field',\n options: {\n label: f.label ?? f.name,\n showLabel: true,\n },\n children: [this.buildWidgetNode(f)],\n },\n ],\n }));\n\n return {\n type: 'grid-layout',\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 'repeat(12, 1fr)',\n rows: 'repeat(1, 1fr)',\n gap: '12px',\n },\n },\n },\n children,\n };\n });\n\n private buildWidgetNode(f: WorkflowTaskFormField): AXPWidgetNode {\n const type = (f.type ?? 'string').toLowerCase();\n const path = f.name;\n const defaultValue = f.value;\n\n switch (type) {\n case 'number':\n return {\n type: AXPWidgetsList.Editors.NumberBox,\n path,\n name: path,\n defaultValue,\n options: {},\n };\n case 'date':\n return {\n type: AXPWidgetsList.Editors.DateTimeBox,\n path,\n name: path,\n defaultValue,\n options: { showTime: true },\n };\n case 'boolean':\n return {\n type: AXPWidgetsList.Editors.CheckBox,\n path,\n name: path,\n defaultValue: Boolean(defaultValue),\n options: {},\n };\n case 'text':\n return {\n type: AXPWidgetsList.Editors.LargeTextBox,\n path,\n name: path,\n defaultValue,\n options: { rows: 3, placeholder: f.placeholder },\n };\n default:\n return {\n type: AXPWidgetsList.Editors.TextBox,\n path,\n name: path,\n defaultValue,\n options: { placeholder: f.placeholder },\n };\n }\n }\n\n protected readonly popoverContext = computed<Record<string, unknown>>(() => {\n const t = this.task();\n const payload = (t?.data as { payload?: HumanTaskPayload })?.payload;\n const ctx = payload?.context;\n const base: Record<string, unknown> = ctx && typeof ctx === 'object' ? { ...ctx } : {};\n base['task'] = t;\n const fields = Array.isArray(base['_fields']) ? (base['_fields'] as WorkflowTaskFormField[]) : [];\n for (const f of fields) {\n if (f.name && !(f.name in base)) base[f.name] = f.value;\n }\n return base;\n });\n\n //#endregion\n\n //#region ---- Actions ----\n\n protected readonly taskActions = signal<AXPTaskActionMenuItem[]>([]);\n\n protected readonly primaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'primary'),\n );\n\n protected readonly secondaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'secondary'),\n );\n\n constructor() {\n super();\n effect((onCleanup) => {\n const t = this.task();\n if (!t?.provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n const provider = this.taskBoardService.getProvider(t.provider);\n if (!provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n let cancelled = false;\n onCleanup(() => {\n cancelled = true;\n });\n\n if (typeof provider.getPopoverMetadata === 'function') {\n this.isLoadingMetadata.set(true);\n this.popoverMetadata.set(null);\n void provider.getPopoverMetadata(t).then(\n (metadata) => {\n if (!cancelled) {\n this.popoverMetadata.set(metadata);\n this.isLoadingMetadata.set(false);\n }\n },\n () => {\n if (!cancelled) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n },\n );\n } else {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n\n void provider.getActions(t).then((actions) => {\n if (!cancelled) {\n this.taskActions.set(actions);\n }\n });\n });\n }\n\n protected getActionColor(action: AXPTaskActionMenuItem): string | null {\n return (action.color as string) ?? null;\n }\n\n protected async executeAction(action: AXPTaskActionMenuItem): Promise<void> {\n const t = this.task();\n if (!t || !action.command || !t.provider) return;\n const userInput = this.formValues();\n const command = {\n ...action.command,\n options: {\n ...action.command.options,\n userInput:\n userInput && Object.keys(userInput).length > 0 ? userInput : (action.command.options?.['userInput'] ?? {}),\n },\n };\n try {\n await this.taskBoardService.executeCommand(command, t.provider);\n } catch (error) {\n console.error('[WorkflowTaskPopover] executeAction failed:', error);\n } finally {\n this.refreshPopover();\n this.closePopover();\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>"],"names":["i5","i6"],"mappings":"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"}