@acorex/modules 21.0.0-next.74 → 21.0.0-next.76

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 (725) hide show
  1. package/fesm2022/{acorex-modules-ai-management-model.entity-DiDaXVa3.mjs → acorex-modules-ai-management-index-1AKm3Wpv.mjs} +4 -7
  2. package/fesm2022/acorex-modules-ai-management-index-1AKm3Wpv.mjs.map +1 -0
  3. package/fesm2022/{acorex-modules-ai-management-rule.entity-CQNx4QEB.mjs → acorex-modules-ai-management-index-D-oYCWiP.mjs} +2 -5
  4. package/fesm2022/acorex-modules-ai-management-index-D-oYCWiP.mjs.map +1 -0
  5. package/fesm2022/{acorex-modules-ai-management-assist.entity-CeALRRoV.mjs → acorex-modules-ai-management-index-IOX4YfSO.mjs} +2 -5
  6. package/fesm2022/acorex-modules-ai-management-index-IOX4YfSO.mjs.map +1 -0
  7. package/fesm2022/{acorex-modules-ai-management-open-ai-endpoint.entity-CZLNKtl0.mjs → acorex-modules-ai-management-index-KMGY_nWq.mjs} +2 -5
  8. package/fesm2022/acorex-modules-ai-management-index-KMGY_nWq.mjs.map +1 -0
  9. package/fesm2022/{acorex-modules-ai-management-agent.entity-3ZBa5t2D.mjs → acorex-modules-ai-management-index-r6kkpdsP.mjs} +2 -5
  10. package/fesm2022/acorex-modules-ai-management-index-r6kkpdsP.mjs.map +1 -0
  11. package/fesm2022/acorex-modules-ai-management.mjs +92 -92
  12. package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
  13. package/fesm2022/{acorex-modules-application-management-application-status.provider-CGRoY79H.mjs → acorex-modules-application-management-application-status.provider-BmTGAssq.mjs} +2 -2
  14. package/fesm2022/acorex-modules-application-management-application-status.provider-BmTGAssq.mjs.map +1 -0
  15. package/fesm2022/acorex-modules-application-management-permission-definition.provider-DEO50hd3.mjs.map +1 -1
  16. package/fesm2022/acorex-modules-application-management.mjs +1143 -1146
  17. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  18. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-yboYQ8I-.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-CLXKpUoU.mjs} +85 -86
  19. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-CLXKpUoU.mjs.map +1 -0
  20. package/fesm2022/{acorex-modules-assessment-management-assessment-case-status.provider-B9sQAPwy.mjs → acorex-modules-assessment-management-assessment-case-status.provider-rAq2m3xt.mjs} +2 -2
  21. package/fesm2022/acorex-modules-assessment-management-assessment-case-status.provider-rAq2m3xt.mjs.map +1 -0
  22. package/fesm2022/{acorex-modules-assessment-management-assessment-session-answers-view.util-UCYBAHLk.mjs → acorex-modules-assessment-management-assessment-session-answers-view.util-DECCIZSO.mjs} +2 -2
  23. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-DECCIZSO.mjs.map +1 -0
  24. package/fesm2022/{acorex-modules-assessment-management-assessment-session-status.provider-Lee6Cwg8.mjs → acorex-modules-assessment-management-assessment-session-status.provider-B-0MdMq1.mjs} +2 -2
  25. package/fesm2022/acorex-modules-assessment-management-assessment-session-status.provider-B-0MdMq1.mjs.map +1 -0
  26. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-VivCLw2H.mjs → acorex-modules-assessment-management-fill-assessment-session.command-pLGZAFqT.mjs} +2 -2
  27. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-pLGZAFqT.mjs.map +1 -0
  28. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-Bp_dS1Js.mjs → acorex-modules-assessment-management-index-Cj5KtvVT.mjs} +6 -8
  29. package/fesm2022/acorex-modules-assessment-management-index-Cj5KtvVT.mjs.map +1 -0
  30. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-BbyNZvoc.mjs → acorex-modules-assessment-management-index-ClRMor3R.mjs} +8 -10
  31. package/fesm2022/acorex-modules-assessment-management-index-ClRMor3R.mjs.map +1 -0
  32. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-Sj-5woTX.mjs → acorex-modules-assessment-management-index-DDhc6vR7.mjs} +7 -9
  33. package/fesm2022/acorex-modules-assessment-management-index-DDhc6vR7.mjs.map +1 -0
  34. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-BBWeshSs.mjs → acorex-modules-assessment-management-index-VYBOM8GR.mjs} +6 -9
  35. package/fesm2022/acorex-modules-assessment-management-index-VYBOM8GR.mjs.map +1 -0
  36. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-CKF4BjCx.mjs → acorex-modules-assessment-management-preview-question.command-Bgqajt80.mjs} +2 -2
  37. package/fesm2022/acorex-modules-assessment-management-preview-question.command-Bgqajt80.mjs.map +1 -0
  38. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-B_2o4jC2.mjs → acorex-modules-assessment-management-preview-questionnaire.command-B84qnNRw.mjs} +2 -2
  39. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-B84qnNRw.mjs.map +1 -0
  40. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-s8KcR3D0.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-CyZGi_Zx.mjs} +2 -2
  41. package/fesm2022/acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-CyZGi_Zx.mjs.map +1 -0
  42. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-ClvQ18w6.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-CRQjv1Vz.mjs} +2 -2
  43. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-CRQjv1Vz.mjs.map +1 -0
  44. package/fesm2022/{acorex-modules-assessment-management-review-assessment-session.command-B2QViI9d.mjs → acorex-modules-assessment-management-review-assessment-session.command-Dgaf88SW.mjs} +3 -3
  45. package/fesm2022/acorex-modules-assessment-management-review-assessment-session.command-Dgaf88SW.mjs.map +1 -0
  46. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-CWdBtkn1.mjs → acorex-modules-assessment-management-view-session-answers.command-CocxFTxZ.mjs} +3 -3
  47. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-CocxFTxZ.mjs.map +1 -0
  48. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  49. package/fesm2022/{acorex-modules-asset-management-asset-rental-history-status.provider-BiWf2TwD.mjs → acorex-modules-asset-management-asset-rental-history-status.provider-_iNFw6nf.mjs} +4 -13
  50. package/fesm2022/acorex-modules-asset-management-asset-rental-history-status.provider-_iNFw6nf.mjs.map +1 -0
  51. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-ufjDJ-0D.mjs → acorex-modules-asset-management-index-BE9Pt9Yl.mjs} +4 -7
  52. package/fesm2022/acorex-modules-asset-management-index-BE9Pt9Yl.mjs.map +1 -0
  53. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-C6tA_OBh.mjs → acorex-modules-asset-management-index-BGnVFHyV.mjs} +4 -7
  54. package/fesm2022/acorex-modules-asset-management-index-BGnVFHyV.mjs.map +1 -0
  55. package/fesm2022/{acorex-modules-asset-management-asset.entity-D1HwzXL_.mjs → acorex-modules-asset-management-index-BNW-nI4M.mjs} +7 -12
  56. package/fesm2022/acorex-modules-asset-management-index-BNW-nI4M.mjs.map +1 -0
  57. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-0Fy7wSBh.mjs → acorex-modules-asset-management-index-BQRNWXnd.mjs} +4 -7
  58. package/fesm2022/acorex-modules-asset-management-index-BQRNWXnd.mjs.map +1 -0
  59. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-OsuWeo2l.mjs → acorex-modules-asset-management-index-BmydXxB7.mjs} +4 -7
  60. package/fesm2022/acorex-modules-asset-management-index-BmydXxB7.mjs.map +1 -0
  61. package/fesm2022/{acorex-modules-asset-management-asset-rental-history.entity-D7g3TSrr.mjs → acorex-modules-asset-management-index-Bza8Y2Qq.mjs} +6 -10
  62. package/fesm2022/acorex-modules-asset-management-index-Bza8Y2Qq.mjs.map +1 -0
  63. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-Cjy7Xetu.mjs → acorex-modules-asset-management-index-CBoHnVCB.mjs} +5 -9
  64. package/fesm2022/acorex-modules-asset-management-index-CBoHnVCB.mjs.map +1 -0
  65. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-DbeerQdD.mjs → acorex-modules-asset-management-index-DDyvfemO.mjs} +4 -7
  66. package/fesm2022/acorex-modules-asset-management-index-DDyvfemO.mjs.map +1 -0
  67. package/fesm2022/acorex-modules-asset-management.mjs +134 -119
  68. package/fesm2022/acorex-modules-asset-management.mjs.map +1 -1
  69. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CUpNfm_0.mjs → acorex-modules-auth-acorex-modules-auth-DBZfh3pH.mjs} +130 -129
  70. package/fesm2022/acorex-modules-auth-acorex-modules-auth-DBZfh3pH.mjs.map +1 -0
  71. package/fesm2022/{acorex-modules-auth-app-chooser.component-DLtnhyB9.mjs → acorex-modules-auth-app-chooser.component-DN75LxY3.mjs} +2 -2
  72. package/fesm2022/{acorex-modules-auth-app-chooser.component-DLtnhyB9.mjs.map → acorex-modules-auth-app-chooser.component-DN75LxY3.mjs.map} +1 -1
  73. package/fesm2022/{acorex-modules-auth-change-password.command-DcGeenns.mjs → acorex-modules-auth-change-password.command-DDH7PMLT.mjs} +2 -2
  74. package/fesm2022/{acorex-modules-auth-change-password.command-DcGeenns.mjs.map → acorex-modules-auth-change-password.command-DDH7PMLT.mjs.map} +1 -1
  75. package/fesm2022/{acorex-modules-auth-edit-account-info.command-BnPtwAxA.mjs → acorex-modules-auth-edit-account-info.command-BtzrBEGu.mjs} +2 -2
  76. package/fesm2022/{acorex-modules-auth-edit-account-info.command-BnPtwAxA.mjs.map → acorex-modules-auth-edit-account-info.command-BtzrBEGu.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-auth-lock-screen.command-Dh0Sgo3_.mjs → acorex-modules-auth-lock-screen.command-BIiErYnc.mjs} +2 -2
  78. package/fesm2022/{acorex-modules-auth-lock-screen.command-Dh0Sgo3_.mjs.map → acorex-modules-auth-lock-screen.command-BIiErYnc.mjs.map} +1 -1
  79. package/fesm2022/{acorex-modules-auth-login.module-C8psUPfq.mjs → acorex-modules-auth-login.module-CM6a_pvB.mjs} +4 -4
  80. package/fesm2022/{acorex-modules-auth-login.module-C8psUPfq.mjs.map → acorex-modules-auth-login.module-CM6a_pvB.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-auth-master.layout-KMxMqtt8.mjs → acorex-modules-auth-master.layout-D9al7lUX.mjs} +2 -2
  82. package/fesm2022/{acorex-modules-auth-master.layout-KMxMqtt8.mjs.map → acorex-modules-auth-master.layout-D9al7lUX.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BF_3fuuz.mjs → acorex-modules-auth-oauth-callback.component-CndekwOM.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BF_3fuuz.mjs.map → acorex-modules-auth-oauth-callback.component-CndekwOM.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-auth-open-sessions.command-vxmxqvOa.mjs → acorex-modules-auth-open-sessions.command-Bgk9TcH-.mjs} +2 -2
  86. package/fesm2022/{acorex-modules-auth-open-sessions.command-vxmxqvOa.mjs.map → acorex-modules-auth-open-sessions.command-Bgk9TcH-.mjs.map} +1 -1
  87. package/fesm2022/{acorex-modules-auth-password.component-BOoUt4Gn.mjs → acorex-modules-auth-password.component-BWEq8tpz.mjs} +2 -2
  88. package/fesm2022/{acorex-modules-auth-password.component-BOoUt4Gn.mjs.map → acorex-modules-auth-password.component-BWEq8tpz.mjs.map} +1 -1
  89. package/fesm2022/{acorex-modules-auth-password.component-Cpjc_S82.mjs → acorex-modules-auth-password.component-Z980dxkh.mjs} +2 -2
  90. package/fesm2022/{acorex-modules-auth-password.component-Cpjc_S82.mjs.map → acorex-modules-auth-password.component-Z980dxkh.mjs.map} +1 -1
  91. package/fesm2022/{acorex-modules-auth-profile-activity-chart.component-DfWYy7TN.mjs → acorex-modules-auth-profile-activity-chart.component-8uSUOk9s.mjs} +2 -2
  92. package/fesm2022/{acorex-modules-auth-profile-activity-chart.component-DfWYy7TN.mjs.map → acorex-modules-auth-profile-activity-chart.component-8uSUOk9s.mjs.map} +1 -1
  93. package/fesm2022/{acorex-modules-auth-profile-delete-account-danger-zone.component-DJcIyOxg.mjs → acorex-modules-auth-profile-delete-account-danger-zone.component-C-zoKWsQ.mjs} +2 -2
  94. package/fesm2022/{acorex-modules-auth-profile-delete-account-danger-zone.component-DJcIyOxg.mjs.map → acorex-modules-auth-profile-delete-account-danger-zone.component-C-zoKWsQ.mjs.map} +1 -1
  95. package/fesm2022/{acorex-modules-auth-profile-page-component.provider-DR2-c0_6.mjs → acorex-modules-auth-profile-page-component.provider-BoGC3tKI.mjs} +4 -4
  96. package/fesm2022/{acorex-modules-auth-profile-page-component.provider-DR2-c0_6.mjs.map → acorex-modules-auth-profile-page-component.provider-BoGC3tKI.mjs.map} +1 -1
  97. package/fesm2022/{acorex-modules-auth-profile-page.component-ChsI9B3Y.mjs → acorex-modules-auth-profile-page.component-B-qdKgOT.mjs} +11 -6
  98. package/fesm2022/acorex-modules-auth-profile-page.component-B-qdKgOT.mjs.map +1 -0
  99. package/fesm2022/{acorex-modules-auth-remove-pin-code.command-LFwvvyZ9.mjs → acorex-modules-auth-remove-pin-code.command-DnYc0CYG.mjs} +2 -2
  100. package/fesm2022/{acorex-modules-auth-remove-pin-code.command-LFwvvyZ9.mjs.map → acorex-modules-auth-remove-pin-code.command-DnYc0CYG.mjs.map} +1 -1
  101. package/fesm2022/{acorex-modules-auth-routes-CuY_v2GN.mjs → acorex-modules-auth-routes-Cg0xipUZ.mjs} +2 -2
  102. package/fesm2022/{acorex-modules-auth-routes-CuY_v2GN.mjs.map → acorex-modules-auth-routes-Cg0xipUZ.mjs.map} +1 -1
  103. package/fesm2022/{acorex-modules-auth-session-lock-overlay.component-CwNAumIp.mjs → acorex-modules-auth-session-lock-overlay.component-BkpYhoVc.mjs} +2 -2
  104. package/fesm2022/{acorex-modules-auth-session-lock-overlay.component-CwNAumIp.mjs.map → acorex-modules-auth-session-lock-overlay.component-BkpYhoVc.mjs.map} +1 -1
  105. package/fesm2022/{acorex-modules-auth-set-pin-code.command-CfIHBTiI.mjs → acorex-modules-auth-set-pin-code.command-9DY-hUvp.mjs} +2 -2
  106. package/fesm2022/{acorex-modules-auth-set-pin-code.command-CfIHBTiI.mjs.map → acorex-modules-auth-set-pin-code.command-9DY-hUvp.mjs.map} +1 -1
  107. package/fesm2022/{acorex-modules-auth-set-pin-code.component-CNZE8NXL.mjs → acorex-modules-auth-set-pin-code.component-QhO37PUy.mjs} +2 -2
  108. package/fesm2022/{acorex-modules-auth-set-pin-code.component-CNZE8NXL.mjs.map → acorex-modules-auth-set-pin-code.component-QhO37PUy.mjs.map} +1 -1
  109. package/fesm2022/{acorex-modules-auth-settings.provider-BMc1yFRY.mjs → acorex-modules-auth-settings.provider-DhaMQd28.mjs} +2 -2
  110. package/fesm2022/{acorex-modules-auth-settings.provider-BMc1yFRY.mjs.map → acorex-modules-auth-settings.provider-DhaMQd28.mjs.map} +1 -1
  111. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-OsTNt9lp.mjs → acorex-modules-auth-tenant-chooser.component-Hy_FsSVy.mjs} +2 -2
  112. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-OsTNt9lp.mjs.map → acorex-modules-auth-tenant-chooser.component-Hy_FsSVy.mjs.map} +1 -1
  113. package/fesm2022/{acorex-modules-auth-two-factor.module-CcKZ6dpb.mjs → acorex-modules-auth-two-factor.module-l0zICZtk.mjs} +2 -2
  114. package/fesm2022/{acorex-modules-auth-two-factor.module-CcKZ6dpb.mjs.map → acorex-modules-auth-two-factor.module-l0zICZtk.mjs.map} +1 -1
  115. package/fesm2022/{acorex-modules-auth-view-login-history.command-Crx7Dw2t.mjs → acorex-modules-auth-view-login-history.command-o2IzCKbr.mjs} +2 -2
  116. package/fesm2022/{acorex-modules-auth-view-login-history.command-Crx7Dw2t.mjs.map → acorex-modules-auth-view-login-history.command-o2IzCKbr.mjs.map} +1 -1
  117. package/fesm2022/acorex-modules-auth.mjs +1 -1
  118. package/fesm2022/acorex-modules-business-core.mjs +993 -313
  119. package/fesm2022/acorex-modules-business-core.mjs.map +1 -1
  120. package/fesm2022/acorex-modules-calendar-management-index-DIxSknUT.mjs +6 -0
  121. package/fesm2022/acorex-modules-calendar-management-index-DIxSknUT.mjs.map +1 -0
  122. package/fesm2022/acorex-modules-calendar-management-index-pvTUhYWL.mjs +6 -0
  123. package/fesm2022/acorex-modules-calendar-management-index-pvTUhYWL.mjs.map +1 -0
  124. package/fesm2022/acorex-modules-calendar-management-index-xkdBRrFw.mjs +6 -0
  125. package/fesm2022/acorex-modules-calendar-management-index-xkdBRrFw.mjs.map +1 -0
  126. package/fesm2022/acorex-modules-calendar-management.mjs +57 -73
  127. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  128. package/fesm2022/acorex-modules-common.mjs +136 -240
  129. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  130. package/fesm2022/acorex-modules-contact-core-acorex-modules-contact-core-D9-WvwGJ.mjs +425 -0
  131. package/fesm2022/acorex-modules-contact-core-acorex-modules-contact-core-D9-WvwGJ.mjs.map +1 -0
  132. package/fesm2022/acorex-modules-contact-core-entity.provider-Cl4zx8WX.mjs +35 -0
  133. package/fesm2022/acorex-modules-contact-core-entity.provider-Cl4zx8WX.mjs.map +1 -0
  134. package/fesm2022/acorex-modules-contact-core-menu.provider-DfUbrqFh.mjs +57 -0
  135. package/fesm2022/acorex-modules-contact-core-menu.provider-DfUbrqFh.mjs.map +1 -0
  136. package/fesm2022/acorex-modules-contact-core-permission-definition.provider-Dni6YOWm.mjs +24 -0
  137. package/fesm2022/acorex-modules-contact-core-permission-definition.provider-Dni6YOWm.mjs.map +1 -0
  138. package/fesm2022/acorex-modules-contact-core.mjs +2 -0
  139. package/fesm2022/acorex-modules-contact-core.mjs.map +1 -0
  140. package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management-B5zqb3b_.mjs → acorex-modules-content-management-acorex-modules-content-management-DSdJ2hZ-.mjs} +58 -138
  141. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-DSdJ2hZ-.mjs.map +1 -0
  142. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-DxI6NmP4.mjs → acorex-modules-content-management-permission-definition.provider-DRVW7Xxa.mjs} +2 -2
  143. package/fesm2022/acorex-modules-content-management-permission-definition.provider-DRVW7Xxa.mjs.map +1 -0
  144. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-ChmkpMy9.mjs → acorex-modules-content-management-template-content-editor-widget-edit.component-DwUqz7ZX.mjs} +2 -2
  145. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-ChmkpMy9.mjs.map → acorex-modules-content-management-template-content-editor-widget-edit.component-DwUqz7ZX.mjs.map} +1 -1
  146. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-LyoQmopL.mjs → acorex-modules-content-management-template-content-editor-widget-view.component-CnUc_fhC.mjs} +2 -2
  147. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-LyoQmopL.mjs.map → acorex-modules-content-management-template-content-editor-widget-view.component-CnUc_fhC.mjs.map} +1 -1
  148. package/fesm2022/acorex-modules-content-management.mjs +1 -1
  149. package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-lPw23AJc.mjs → acorex-modules-conversation-acorex-modules-conversation-DtFH9LbP.mjs} +192 -191
  150. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-DtFH9LbP.mjs.map +1 -0
  151. package/fesm2022/{acorex-modules-conversation-assist-delegated-agent-detail-popup.component-D0SGSQC8.mjs → acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Cpc1seYt.mjs} +2 -2
  152. package/fesm2022/{acorex-modules-conversation-assist-delegated-agent-detail-popup.component-D0SGSQC8.mjs.map → acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Cpc1seYt.mjs.map} +1 -1
  153. package/fesm2022/{acorex-modules-conversation-comments-page.component-Bqeplzuy.mjs → acorex-modules-conversation-comments-page.component-B1CmPB0U.mjs} +2 -2
  154. package/fesm2022/{acorex-modules-conversation-comments-page.component-Bqeplzuy.mjs.map → acorex-modules-conversation-comments-page.component-B1CmPB0U.mjs.map} +1 -1
  155. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CFwkUHCc.mjs → acorex-modules-conversation-send-assist-chat-message.command-BFFF5GTX.mjs} +2 -2
  156. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CFwkUHCc.mjs.map → acorex-modules-conversation-send-assist-chat-message.command-BFFF5GTX.mjs.map} +1 -1
  157. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-aEOnD6ax.mjs → acorex-modules-conversation-start-assist-chat.command-C-KVIK-L.mjs} +2 -2
  158. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-aEOnD6ax.mjs.map → acorex-modules-conversation-start-assist-chat.command-C-KVIK-L.mjs.map} +1 -1
  159. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  160. package/fesm2022/{acorex-modules-customer-management-lead.entity-CH7iga2T.mjs → acorex-modules-customer-management-index-7teVSkdT.mjs} +2 -5
  161. package/fesm2022/acorex-modules-customer-management-index-7teVSkdT.mjs.map +1 -0
  162. package/fesm2022/{acorex-modules-customer-management-opportunity-stage.entity-gXGyRjOR.mjs → acorex-modules-customer-management-index-B0wUbd2e.mjs} +2 -4
  163. package/fesm2022/acorex-modules-customer-management-index-B0wUbd2e.mjs.map +1 -0
  164. package/fesm2022/{acorex-modules-customer-management-customer.entity-Doc1f5gH.mjs → acorex-modules-customer-management-index-CQLsaDJ-.mjs} +3 -7
  165. package/fesm2022/acorex-modules-customer-management-index-CQLsaDJ-.mjs.map +1 -0
  166. package/fesm2022/{acorex-modules-customer-management-deal-contact-role.entity-BmDALoWz.mjs → acorex-modules-customer-management-index-CQWjFZ-D.mjs} +4 -7
  167. package/fesm2022/acorex-modules-customer-management-index-CQWjFZ-D.mjs.map +1 -0
  168. package/fesm2022/{acorex-modules-customer-management-sales-pipeline.entity-TN7eqaA1.mjs → acorex-modules-customer-management-index-DHaf2JAF.mjs} +2 -4
  169. package/fesm2022/acorex-modules-customer-management-index-DHaf2JAF.mjs.map +1 -0
  170. package/fesm2022/{acorex-modules-customer-management-activity.entity-BENCtWk0.mjs → acorex-modules-customer-management-index-Df-6hCzG.mjs} +2 -4
  171. package/fesm2022/acorex-modules-customer-management-index-Df-6hCzG.mjs.map +1 -0
  172. package/fesm2022/{acorex-modules-customer-management-opportunity.entity-BX1vocD3.mjs → acorex-modules-customer-management-index-DwPwxZI6.mjs} +3 -7
  173. package/fesm2022/acorex-modules-customer-management-index-DwPwxZI6.mjs.map +1 -0
  174. package/fesm2022/acorex-modules-customer-management.mjs +42 -28
  175. package/fesm2022/acorex-modules-customer-management.mjs.map +1 -1
  176. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-D2TrYnCW.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-d_3MEOVx.mjs} +49 -45
  177. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-d_3MEOVx.mjs.map +1 -0
  178. package/fesm2022/{acorex-modules-dashboard-management-index-DAQNEq43.mjs → acorex-modules-dashboard-management-index-0npgb7TY.mjs} +2 -2
  179. package/fesm2022/acorex-modules-dashboard-management-index-0npgb7TY.mjs.map +1 -0
  180. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  181. package/fesm2022/acorex-modules-data-management-contracts.mjs +351 -0
  182. package/fesm2022/acorex-modules-data-management-contracts.mjs.map +1 -0
  183. package/fesm2022/acorex-modules-data-management.mjs +903 -902
  184. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  185. package/fesm2022/acorex-modules-document-management-drive-choose.component-DyJoXajP.mjs.map +1 -1
  186. package/fesm2022/acorex-modules-document-management.mjs +109 -75
  187. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  188. package/fesm2022/acorex-modules-financial-core-data-source.provider-Do4rvgy4.mjs.map +1 -1
  189. package/fesm2022/acorex-modules-financial-core.mjs +608 -625
  190. package/fesm2022/acorex-modules-financial-core.mjs.map +1 -1
  191. package/fesm2022/acorex-modules-form-template-management-template-picker.component-CtTkFhXf.mjs.map +1 -1
  192. package/fesm2022/acorex-modules-form-template-management.mjs +442 -30
  193. package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
  194. package/fesm2022/acorex-modules-health-core-start-health-record-flow.command-BzGYbiw_.mjs +257 -0
  195. package/fesm2022/acorex-modules-health-core-start-health-record-flow.command-BzGYbiw_.mjs.map +1 -0
  196. package/fesm2022/acorex-modules-health-core.mjs +2408 -93
  197. package/fesm2022/acorex-modules-health-core.mjs.map +1 -1
  198. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-B8de7ifz.mjs → acorex-modules-help-desk-acorex-modules-help-desk-AWSV_TiH.mjs} +208 -204
  199. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-AWSV_TiH.mjs.map +1 -0
  200. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-O3qJdpnt.mjs → acorex-modules-help-desk-capture-screen.component-DjUG9lk7.mjs} +2 -2
  201. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-O3qJdpnt.mjs.map → acorex-modules-help-desk-capture-screen.component-DjUG9lk7.mjs.map} +1 -1
  202. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  203. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-CqROha3-.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-BQ7fkZVA.mjs} +1694 -196
  204. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-BQ7fkZVA.mjs.map +1 -0
  205. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-B0pyS4rY.mjs → acorex-modules-human-capital-management-approve-leave-request.command-8MwfTrgO.mjs} +3 -3
  206. package/fesm2022/acorex-modules-human-capital-management-approve-leave-request.command-8MwfTrgO.mjs.map +1 -0
  207. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-Dc0eoIAI.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-DJft6ua8.mjs} +2 -2
  208. package/fesm2022/acorex-modules-human-capital-management-assign-position-assignment.command-DJft6ua8.mjs.map +1 -0
  209. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-TjMXVKCB.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-r5zEA5Oa.mjs} +3 -3
  210. package/fesm2022/acorex-modules-human-capital-management-cancel-leave-request.command-r5zEA5Oa.mjs.map +1 -0
  211. package/fesm2022/{acorex-modules-human-capital-management-edit-personal-info.command-uCNZW1KF.mjs → acorex-modules-human-capital-management-edit-personal-info.command-CTQywAzz.mjs} +2 -2
  212. package/fesm2022/{acorex-modules-human-capital-management-edit-personal-info.command-uCNZW1KF.mjs.map → acorex-modules-human-capital-management-edit-personal-info.command-CTQywAzz.mjs.map} +1 -1
  213. package/fesm2022/{acorex-modules-human-capital-management-edit-signature.command-9psDoX-o.mjs → acorex-modules-human-capital-management-edit-signature.command-9XI2V0Yt.mjs} +2 -2
  214. package/fesm2022/acorex-modules-human-capital-management-edit-signature.command-9XI2V0Yt.mjs.map +1 -0
  215. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-DHqsjUdQ.mjs → acorex-modules-human-capital-management-reject-leave-request.command-Ba2f-i0A.mjs} +3 -3
  216. package/fesm2022/acorex-modules-human-capital-management-reject-leave-request.command-Ba2f-i0A.mjs.map +1 -0
  217. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-DQqsqBRM.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-g9p7YKJ1.mjs} +2 -2
  218. package/fesm2022/acorex-modules-human-capital-management-revoke-position-assignment.command-g9p7YKJ1.mjs.map +1 -0
  219. package/fesm2022/{acorex-modules-human-capital-management-start-leave-request-flow.command-nF6sDrFL.mjs → acorex-modules-human-capital-management-start-leave-request-flow.command-BPFrBjWG.mjs} +3 -3
  220. package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-BPFrBjWG.mjs.map +1 -0
  221. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bya_9T7H.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-C62jEjUD.mjs} +19 -7
  222. package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-C62jEjUD.mjs.map +1 -0
  223. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  224. package/fesm2022/acorex-modules-identifier-management.mjs +11 -1
  225. package/fesm2022/acorex-modules-identifier-management.mjs.map +1 -1
  226. package/fesm2022/acorex-modules-jira-management-index-BGnRJkkx.mjs +179 -0
  227. package/fesm2022/acorex-modules-jira-management-index-BGnRJkkx.mjs.map +1 -0
  228. package/fesm2022/acorex-modules-jira-management-index-BXgxorT1.mjs +155 -0
  229. package/fesm2022/acorex-modules-jira-management-index-BXgxorT1.mjs.map +1 -0
  230. package/fesm2022/acorex-modules-jira-management-index-Bw8ivjR_.mjs +177 -0
  231. package/fesm2022/acorex-modules-jira-management-index-Bw8ivjR_.mjs.map +1 -0
  232. package/fesm2022/acorex-modules-jira-management-index-CJNrjlaV.mjs +143 -0
  233. package/fesm2022/acorex-modules-jira-management-index-CJNrjlaV.mjs.map +1 -0
  234. package/fesm2022/acorex-modules-jira-management-index-CjgROlD2.mjs +399 -0
  235. package/fesm2022/acorex-modules-jira-management-index-CjgROlD2.mjs.map +1 -0
  236. package/fesm2022/acorex-modules-jira-management-index-D0vXHcrg.mjs +372 -0
  237. package/fesm2022/acorex-modules-jira-management-index-D0vXHcrg.mjs.map +1 -0
  238. package/fesm2022/acorex-modules-jira-management-index-D2wdvXoF.mjs +123 -0
  239. package/fesm2022/acorex-modules-jira-management-index-D2wdvXoF.mjs.map +1 -0
  240. package/fesm2022/acorex-modules-jira-management-index-DPRA7BCN.mjs +281 -0
  241. package/fesm2022/acorex-modules-jira-management-index-DPRA7BCN.mjs.map +1 -0
  242. package/fesm2022/acorex-modules-jira-management-index-DpCX35Ob.mjs +222 -0
  243. package/fesm2022/acorex-modules-jira-management-index-DpCX35Ob.mjs.map +1 -0
  244. package/fesm2022/acorex-modules-jira-management.mjs +479 -0
  245. package/fesm2022/acorex-modules-jira-management.mjs.map +1 -0
  246. package/fesm2022/{acorex-modules-learning-management-training-definition.entity-DPY0OQdW.mjs → acorex-modules-learning-management-index-9Sessbgl.mjs} +4 -7
  247. package/fesm2022/acorex-modules-learning-management-index-9Sessbgl.mjs.map +1 -0
  248. package/fesm2022/{acorex-modules-learning-management-training-type.entity-Bt37GacX.mjs → acorex-modules-learning-management-index-B2ZI7U9N.mjs} +4 -7
  249. package/fesm2022/acorex-modules-learning-management-index-B2ZI7U9N.mjs.map +1 -0
  250. package/fesm2022/{acorex-modules-learning-management-certificate-definition.entity-DzRELZ1L.mjs → acorex-modules-learning-management-index-Cb6YmwUo.mjs} +4 -7
  251. package/fesm2022/acorex-modules-learning-management-index-Cb6YmwUo.mjs.map +1 -0
  252. package/fesm2022/{acorex-modules-learning-management-attendance.entity-40THDVHu.mjs → acorex-modules-learning-management-index-CnBTaY0y.mjs} +4 -7
  253. package/fesm2022/acorex-modules-learning-management-index-CnBTaY0y.mjs.map +1 -0
  254. package/fesm2022/{acorex-modules-learning-management-learning-path.entity-C-FcZefB.mjs → acorex-modules-learning-management-index-CnXPymvw.mjs} +4 -7
  255. package/fesm2022/acorex-modules-learning-management-index-CnXPymvw.mjs.map +1 -0
  256. package/fesm2022/{acorex-modules-learning-management-mandatory-training-rule.entity-CxsoSJh-.mjs → acorex-modules-learning-management-index-CtfhNokr.mjs} +4 -7
  257. package/fesm2022/acorex-modules-learning-management-index-CtfhNokr.mjs.map +1 -0
  258. package/fesm2022/{acorex-modules-learning-management-training.entity-BkxK-rqz.mjs → acorex-modules-learning-management-index-D3O6qDpQ.mjs} +5 -8
  259. package/fesm2022/acorex-modules-learning-management-index-D3O6qDpQ.mjs.map +1 -0
  260. package/fesm2022/{acorex-modules-learning-management-skill-level.entity-CnAgJyuR.mjs → acorex-modules-learning-management-index-D4Yh8EmO.mjs} +4 -7
  261. package/fesm2022/acorex-modules-learning-management-index-D4Yh8EmO.mjs.map +1 -0
  262. package/fesm2022/{acorex-modules-learning-management-skill.entity-DmIjc2gw.mjs → acorex-modules-learning-management-index-DJ4H2IOW.mjs} +4 -7
  263. package/fesm2022/acorex-modules-learning-management-index-DJ4H2IOW.mjs.map +1 -0
  264. package/fesm2022/{acorex-modules-learning-management-enrollment.entity-D4j7oSWb.mjs → acorex-modules-learning-management-index-DPb7aOIM.mjs} +5 -8
  265. package/fesm2022/acorex-modules-learning-management-index-DPb7aOIM.mjs.map +1 -0
  266. package/fesm2022/{acorex-modules-learning-management-course.entity-HoC-FUPB.mjs → acorex-modules-learning-management-index-Da29yyOM.mjs} +4 -7
  267. package/fesm2022/acorex-modules-learning-management-index-Da29yyOM.mjs.map +1 -0
  268. package/fesm2022/{acorex-modules-learning-management-certificate.entity-DA882F-J.mjs → acorex-modules-learning-management-index-DdgLO2B8.mjs} +4 -7
  269. package/fesm2022/acorex-modules-learning-management-index-DdgLO2B8.mjs.map +1 -0
  270. package/fesm2022/{acorex-modules-learning-management-course-type.entity-DAc4cRbW.mjs → acorex-modules-learning-management-index-DnUv_C6e.mjs} +4 -7
  271. package/fesm2022/acorex-modules-learning-management-index-DnUv_C6e.mjs.map +1 -0
  272. package/fesm2022/{acorex-modules-learning-management-learning-path-course.entity-B0DurZqy.mjs → acorex-modules-learning-management-index-Dxutf3MN.mjs} +4 -7
  273. package/fesm2022/acorex-modules-learning-management-index-Dxutf3MN.mjs.map +1 -0
  274. package/fesm2022/{acorex-modules-learning-management-certificate-type.entity-Br35cJ-M.mjs → acorex-modules-learning-management-index-pWAVoZBF.mjs} +4 -7
  275. package/fesm2022/acorex-modules-learning-management-index-pWAVoZBF.mjs.map +1 -0
  276. package/fesm2022/acorex-modules-learning-management.mjs +153 -168
  277. package/fesm2022/acorex-modules-learning-management.mjs.map +1 -1
  278. package/fesm2022/acorex-modules-locale-management-contracts.mjs +77 -0
  279. package/fesm2022/acorex-modules-locale-management-contracts.mjs.map +1 -0
  280. package/fesm2022/acorex-modules-locale-management.mjs +62 -71
  281. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  282. package/fesm2022/acorex-modules-location-management.mjs +1207 -1208
  283. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  284. package/fesm2022/{acorex-modules-maintenance-management-failure-register-status.provider-B8-Snxbx.mjs → acorex-modules-maintenance-management-failure-register-status.provider-DM5m-VsU.mjs} +2 -2
  285. package/fesm2022/acorex-modules-maintenance-management-failure-register-status.provider-DM5m-VsU.mjs.map +1 -0
  286. package/fesm2022/acorex-modules-maintenance-management-work-order-list-command-BMsD_d6k.mjs.map +1 -1
  287. package/fesm2022/acorex-modules-maintenance-management-work-order-status.provider-BvnpsgY3.mjs +181 -0
  288. package/fesm2022/acorex-modules-maintenance-management-work-order-status.provider-BvnpsgY3.mjs.map +1 -0
  289. package/fesm2022/acorex-modules-maintenance-management.mjs +899 -629
  290. package/fesm2022/acorex-modules-maintenance-management.mjs.map +1 -1
  291. package/fesm2022/acorex-modules-measurement-core.mjs +898 -914
  292. package/fesm2022/acorex-modules-measurement-core.mjs.map +1 -1
  293. package/fesm2022/acorex-modules-meeting-management.mjs +278 -170
  294. package/fesm2022/acorex-modules-meeting-management.mjs.map +1 -1
  295. package/fesm2022/{acorex-modules-notification-management-acorex-modules-notification-management-ZgxwReDF.mjs → acorex-modules-notification-management-acorex-modules-notification-management-W0YINm5V.mjs} +583 -573
  296. package/fesm2022/acorex-modules-notification-management-acorex-modules-notification-management-W0YINm5V.mjs.map +1 -0
  297. package/fesm2022/{acorex-modules-notification-management-notification-page.component-DlFbwB9o.mjs → acorex-modules-notification-management-notification-page.component-BAQGDRTj.mjs} +2 -2
  298. package/fesm2022/{acorex-modules-notification-management-notification-page.component-DlFbwB9o.mjs.map → acorex-modules-notification-management-notification-page.component-BAQGDRTj.mjs.map} +1 -1
  299. package/fesm2022/acorex-modules-notification-management.mjs +1 -1
  300. package/fesm2022/{acorex-modules-order-management-bulk-buy-order-status.provider-CECieSZF.mjs → acorex-modules-order-management-bulk-buy-order-status.provider-C6HBZfQ_.mjs} +2 -2
  301. package/fesm2022/acorex-modules-order-management-bulk-buy-order-status.provider-C6HBZfQ_.mjs.map +1 -0
  302. package/fesm2022/{acorex-modules-order-management-entity.provider-ZaDnKtBk.mjs → acorex-modules-order-management-entity.provider-BVlBsDWW.mjs} +5 -5
  303. package/fesm2022/acorex-modules-order-management-entity.provider-BVlBsDWW.mjs.map +1 -0
  304. package/fesm2022/{acorex-modules-order-management-member-order.entity-BItj1CLq.mjs → acorex-modules-order-management-index-BeIiBPSs.mjs} +3 -8
  305. package/fesm2022/acorex-modules-order-management-index-BeIiBPSs.mjs.map +1 -0
  306. package/fesm2022/{acorex-modules-order-management-bulk-buy-order.entity-B9f4Tppc.mjs → acorex-modules-order-management-index-DUMuaQGE.mjs} +3 -8
  307. package/fesm2022/acorex-modules-order-management-index-DUMuaQGE.mjs.map +1 -0
  308. package/fesm2022/{acorex-modules-order-management-bulk-buy-order-item.entity-DsXE-kqT.mjs → acorex-modules-order-management-index-Du2PsO2f.mjs} +5 -11
  309. package/fesm2022/acorex-modules-order-management-index-Du2PsO2f.mjs.map +1 -0
  310. package/fesm2022/{acorex-modules-order-management-member-order-line.entity-BX3rQTJ1.mjs → acorex-modules-order-management-index-QHrmfhTE.mjs} +2 -6
  311. package/fesm2022/acorex-modules-order-management-index-QHrmfhTE.mjs.map +1 -0
  312. package/fesm2022/{acorex-modules-order-management-member-order-status.provider-Bkrzylqm.mjs → acorex-modules-order-management-member-order-status.provider-CKIrQc_7.mjs} +2 -2
  313. package/fesm2022/acorex-modules-order-management-member-order-status.provider-CKIrQc_7.mjs.map +1 -0
  314. package/fesm2022/acorex-modules-order-management-menu.provider-DeMKkRZa.mjs.map +1 -1
  315. package/fesm2022/acorex-modules-order-management-permission-definition.provider-B8ext6Sn.mjs.map +1 -1
  316. package/fesm2022/acorex-modules-order-management-settings.provider-BFOghuIS.mjs.map +1 -1
  317. package/fesm2022/acorex-modules-order-management.mjs +54 -54
  318. package/fesm2022/acorex-modules-order-management.mjs.map +1 -1
  319. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-BALTqTo-.mjs +4119 -0
  320. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-BALTqTo-.mjs.map +1 -0
  321. package/fesm2022/{acorex-modules-organization-management-add-business-unit-to-business-unit.command-BUOpdwIy.mjs → acorex-modules-organization-management-add-business-unit-to-business-unit.command-23eGqIxP.mjs} +2 -2
  322. package/fesm2022/acorex-modules-organization-management-add-business-unit-to-business-unit.command-23eGqIxP.mjs.map +1 -0
  323. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-CcoGv5J7.mjs → acorex-modules-organization-management-add-position-to-business-unit.command-B4C1jxs3.mjs} +2 -2
  324. package/fesm2022/acorex-modules-organization-management-add-position-to-business-unit.command-B4C1jxs3.mjs.map +1 -0
  325. package/fesm2022/{acorex-modules-organization-management-add-team-to-business-unit.command-n9FYDyKE.mjs → acorex-modules-organization-management-add-team-to-business-unit.command-B5vh3rwS.mjs} +2 -2
  326. package/fesm2022/acorex-modules-organization-management-add-team-to-business-unit.command-B5vh3rwS.mjs.map +1 -0
  327. package/fesm2022/{acorex-modules-organization-management-entity.provider-Dqn382Z2.mjs → acorex-modules-organization-management-entity.provider-3IL0cFTC.mjs} +15 -15
  328. package/fesm2022/acorex-modules-organization-management-entity.provider-3IL0cFTC.mjs.map +1 -0
  329. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-C7VhASKJ.mjs → acorex-modules-organization-management-feature-definition.provider-DsSdRjcX.mjs} +2 -2
  330. package/fesm2022/acorex-modules-organization-management-feature-definition.provider-DsSdRjcX.mjs.map +1 -0
  331. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-Bacrw4_J.mjs → acorex-modules-organization-management-job-definition-pages-component.provider-BRovo6NC.mjs} +4 -4
  332. package/fesm2022/acorex-modules-organization-management-job-definition-pages-component.provider-BRovo6NC.mjs.map +1 -0
  333. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-BJkc7c-G.mjs → acorex-modules-organization-management-job-definition-responsibilities-page.component-CNtaaDfp.mjs} +3 -3
  334. package/fesm2022/acorex-modules-organization-management-job-definition-responsibilities-page.component-CNtaaDfp.mjs.map +1 -0
  335. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-GuFiBC0r.mjs → acorex-modules-organization-management-job-definition-skills-page.component-D1ymUBeQ.mjs} +2 -2
  336. package/fesm2022/acorex-modules-organization-management-job-definition-skills-page.component-D1ymUBeQ.mjs.map +1 -0
  337. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-CCvVPEVM.mjs → acorex-modules-organization-management-job-level.datasource-_6F_fvTn.mjs} +2 -2
  338. package/fesm2022/acorex-modules-organization-management-job-level.datasource-_6F_fvTn.mjs.map +1 -0
  339. package/fesm2022/{acorex-modules-organization-management-menu.provider-BeCkTwia.mjs → acorex-modules-organization-management-menu.provider-Dt7bfM-4.mjs} +2 -2
  340. package/fesm2022/acorex-modules-organization-management-menu.provider-Dt7bfM-4.mjs.map +1 -0
  341. package/fesm2022/{acorex-modules-organization-management-org-chart-default-node-contribution.provider-DDY2Cgu6.mjs → acorex-modules-organization-management-org-chart-default-node-contribution.provider-Cf789vAr.mjs} +2 -2
  342. package/fesm2022/acorex-modules-organization-management-org-chart-default-node-contribution.provider-Cf789vAr.mjs.map +1 -0
  343. package/fesm2022/{acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-DbSxtEz6.mjs → acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-CL32hDBZ.mjs} +2 -2
  344. package/fesm2022/acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-CL32hDBZ.mjs.map +1 -0
  345. package/fesm2022/{acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-ByqjxY2S.mjs → acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-CpNTM-Ts.mjs} +2 -2
  346. package/fesm2022/acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-CpNTM-Ts.mjs.map +1 -0
  347. package/fesm2022/{acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DdyF5QS0.mjs → acorex-modules-organization-management-org-chart-ux-node-contribution.provider-D-qPXdfm.mjs} +2 -2
  348. package/fesm2022/acorex-modules-organization-management-org-chart-ux-node-contribution.provider-D-qPXdfm.mjs.map +1 -0
  349. package/fesm2022/{acorex-modules-organization-management-org-chart.page-DD1lvTXR.mjs → acorex-modules-organization-management-org-chart.page-BglvBI8J.mjs} +2 -2
  350. package/fesm2022/acorex-modules-organization-management-org-chart.page-BglvBI8J.mjs.map +1 -0
  351. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-CbXQwY_b.mjs → acorex-modules-organization-management-permission-definition.provider-BOz0kQKZ.mjs} +2 -2
  352. package/fesm2022/acorex-modules-organization-management-permission-definition.provider-BOz0kQKZ.mjs.map +1 -0
  353. package/fesm2022/{acorex-modules-organization-management-remove-position-from-business-unit.command-B1mrTFbI.mjs → acorex-modules-organization-management-remove-position-from-business-unit.command-CcfOkd7Z.mjs} +2 -2
  354. package/fesm2022/acorex-modules-organization-management-remove-position-from-business-unit.command-CcfOkd7Z.mjs.map +1 -0
  355. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-B3OVj92j.mjs → acorex-modules-organization-management-replace-position-assignee.command-nNGkuyKE.mjs} +2 -2
  356. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-B3OVj92j.mjs.map → acorex-modules-organization-management-replace-position-assignee.command-nNGkuyKE.mjs.map} +1 -1
  357. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-COCty9r1.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CymCi80F.mjs} +2 -2
  358. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-COCty9r1.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CymCi80F.mjs.map} +1 -1
  359. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BAC2jImJ.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-E46T_VO-.mjs} +2 -2
  360. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BAC2jImJ.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-E46T_VO-.mjs.map} +1 -1
  361. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-CQ1RKj2l.mjs → acorex-modules-organization-management-responsibilities-matrix.component-Bw22pUUE.mjs} +2 -2
  362. package/fesm2022/acorex-modules-organization-management-responsibilities-matrix.component-Bw22pUUE.mjs.map +1 -0
  363. package/fesm2022/{acorex-modules-organization-management-settings.provider-B4ijPkN_.mjs → acorex-modules-organization-management-settings.provider-BOMwSEpo.mjs} +2 -2
  364. package/fesm2022/{acorex-modules-organization-management-settings.provider-B4ijPkN_.mjs.map → acorex-modules-organization-management-settings.provider-BOMwSEpo.mjs.map} +1 -1
  365. package/fesm2022/acorex-modules-organization-management.mjs +1 -1
  366. package/fesm2022/acorex-modules-person-core.mjs +1076 -223
  367. package/fesm2022/acorex-modules-person-core.mjs.map +1 -1
  368. package/fesm2022/acorex-modules-platform-dev-tools-menu.provider-BYy7NCvH.mjs.map +1 -1
  369. package/fesm2022/acorex-modules-platform-dev-tools.mjs +27 -27
  370. package/fesm2022/acorex-modules-platform-dev-tools.mjs.map +1 -1
  371. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-ilmoyxAw.mjs → acorex-modules-platform-management-acorex-modules-platform-management-CdMzH5Qu.mjs} +47 -46
  372. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-CdMzH5Qu.mjs.map +1 -0
  373. package/fesm2022/{acorex-modules-platform-management-menu-list.component-MJCUVTho.mjs → acorex-modules-platform-management-menu-list.component-B8ZKMl1A.mjs} +2 -2
  374. package/fesm2022/{acorex-modules-platform-management-menu-list.component-MJCUVTho.mjs.map → acorex-modules-platform-management-menu-list.component-B8ZKMl1A.mjs.map} +1 -1
  375. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  376. package/fesm2022/acorex-modules-procurement-management.mjs +15 -16
  377. package/fesm2022/acorex-modules-procurement-management.mjs.map +1 -1
  378. package/fesm2022/acorex-modules-product-catalog.mjs +1545 -33
  379. package/fesm2022/acorex-modules-product-catalog.mjs.map +1 -1
  380. package/fesm2022/acorex-modules-project-management.mjs +234 -230
  381. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  382. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-Dum62tB8.mjs → acorex-modules-report-management-report-runner-root-page.component-DaPEmTm9.mjs} +2 -3
  383. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-DaPEmTm9.mjs.map +1 -0
  384. package/fesm2022/acorex-modules-report-management-settings.provider-CA7o3xKu.mjs.map +1 -1
  385. package/fesm2022/acorex-modules-report-management.mjs +4 -3
  386. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  387. package/fesm2022/{acorex-modules-reservation-management-reservation-resource-type.entity-DiEkzSO2.mjs → acorex-modules-reservation-management-index-DNLOtNNW.mjs} +2 -6
  388. package/fesm2022/acorex-modules-reservation-management-index-DNLOtNNW.mjs.map +1 -0
  389. package/fesm2022/{acorex-modules-reservation-management-reservation-status-transition.entity-CSj9-uAb.mjs → acorex-modules-reservation-management-index-DSDnPzHh.mjs} +2 -5
  390. package/fesm2022/acorex-modules-reservation-management-index-DSDnPzHh.mjs.map +1 -0
  391. package/fesm2022/{acorex-modules-reservation-management-reservation-class-status.entity-CsOec92Y.mjs → acorex-modules-reservation-management-index-DySHYsCz.mjs} +2 -6
  392. package/fesm2022/acorex-modules-reservation-management-index-DySHYsCz.mjs.map +1 -0
  393. package/fesm2022/acorex-modules-reservation-management.mjs +47 -52
  394. package/fesm2022/acorex-modules-reservation-management.mjs.map +1 -1
  395. package/fesm2022/acorex-modules-risk-management.mjs +122 -115
  396. package/fesm2022/acorex-modules-risk-management.mjs.map +1 -1
  397. package/fesm2022/acorex-modules-security-management-terminate-session.command-CRWFd-YW.mjs.map +1 -1
  398. package/fesm2022/acorex-modules-security-management.mjs +468 -335
  399. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  400. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-D5DqCfiz.mjs → acorex-modules-settings-management-permission-definition.provider-CfCLhvZi.mjs} +2 -2
  401. package/fesm2022/acorex-modules-settings-management-permission-definition.provider-CfCLhvZi.mjs.map +1 -0
  402. package/fesm2022/{acorex-modules-settings-management-setting-page.component-TxoOyBRc.mjs → acorex-modules-settings-management-setting-page.component-B7wP0i5k.mjs} +9 -6
  403. package/fesm2022/acorex-modules-settings-management-setting-page.component-B7wP0i5k.mjs.map +1 -0
  404. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CuDjGo2x.mjs → acorex-modules-settings-management-setting-view.component-CG-GW2yS.mjs} +2 -2
  405. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CuDjGo2x.mjs.map → acorex-modules-settings-management-setting-view.component-CG-GW2yS.mjs.map} +1 -1
  406. package/fesm2022/acorex-modules-settings-management.mjs +813 -1
  407. package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
  408. package/fesm2022/acorex-modules-subscription-management.mjs +47 -52
  409. package/fesm2022/acorex-modules-subscription-management.mjs.map +1 -1
  410. package/fesm2022/acorex-modules-supplier-management.mjs +34 -36
  411. package/fesm2022/acorex-modules-supplier-management.mjs.map +1 -1
  412. package/fesm2022/acorex-modules-system-insight.mjs +74 -61
  413. package/fesm2022/acorex-modules-system-insight.mjs.map +1 -1
  414. package/fesm2022/{acorex-modules-task-management-task-board.page-CfgeDnBx.mjs → acorex-modules-task-management-task-board.page-DhPzh72z.mjs} +5 -5
  415. package/fesm2022/acorex-modules-task-management-task-board.page-DhPzh72z.mjs.map +1 -0
  416. package/fesm2022/acorex-modules-task-management.mjs +7571 -1
  417. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  418. package/fesm2022/acorex-modules-tenant-management.mjs +42 -48
  419. package/fesm2022/acorex-modules-tenant-management.mjs.map +1 -1
  420. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-LJ8Bb-CT.mjs → acorex-modules-workflow-management-acorex-modules-workflow-management-AgY9tA7s.mjs} +1453 -143
  421. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-AgY9tA7s.mjs.map +1 -0
  422. package/fesm2022/acorex-modules-workflow-management-execute-workflow-with-input.command-DUYGWSu8.mjs +127 -0
  423. package/fesm2022/acorex-modules-workflow-management-execute-workflow-with-input.command-DUYGWSu8.mjs.map +1 -0
  424. package/fesm2022/acorex-modules-workflow-management-execute-workflow.command-DSgQNTtL.mjs +142 -0
  425. package/fesm2022/acorex-modules-workflow-management-execute-workflow.command-DSgQNTtL.mjs.map +1 -0
  426. package/fesm2022/{acorex-modules-workflow-management-index-DXIQw3Ao.mjs → acorex-modules-workflow-management-index-78oCkrbR.mjs} +3 -5
  427. package/fesm2022/acorex-modules-workflow-management-index-78oCkrbR.mjs.map +1 -0
  428. package/fesm2022/{acorex-modules-workflow-management-index-8gv17yqF.mjs → acorex-modules-workflow-management-index-CvPrfCTv.mjs} +3 -3
  429. package/fesm2022/{acorex-modules-workflow-management-index-8gv17yqF.mjs.map → acorex-modules-workflow-management-index-CvPrfCTv.mjs.map} +1 -1
  430. package/fesm2022/{acorex-modules-workflow-management-index--D61tV-f.mjs → acorex-modules-workflow-management-index-DmnrXTPk.mjs} +3 -4
  431. package/fesm2022/acorex-modules-workflow-management-index-DmnrXTPk.mjs.map +1 -0
  432. package/fesm2022/{acorex-modules-workflow-management-save-workflow-definition-activities.command-huamhFhc.mjs → acorex-modules-workflow-management-save-workflow-definition-activities.command-aLlfQxaT.mjs} +3 -3
  433. package/fesm2022/acorex-modules-workflow-management-save-workflow-definition-activities.command-aLlfQxaT.mjs.map +1 -0
  434. package/fesm2022/{acorex-modules-workflow-management-workflow-configurator-widget-column.component-B0f5IsoE.mjs → acorex-modules-workflow-management-workflow-configurator-widget-column.component-Ph_BjL_5.mjs} +2 -2
  435. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-Ph_BjL_5.mjs.map +1 -0
  436. package/fesm2022/{acorex-modules-workflow-management-workflow-configurator-widget-edit.component-DQ703kRI.mjs → acorex-modules-workflow-management-workflow-configurator-widget-edit.component-CfKTRKNQ.mjs} +5 -3
  437. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-CfKTRKNQ.mjs.map +1 -0
  438. package/fesm2022/{acorex-modules-workflow-management-workflow-run-history-popup.component-FLqOdI2t.mjs → acorex-modules-workflow-management-workflow-run-history-popup.component-D1A_EHNk.mjs} +6 -7
  439. package/fesm2022/acorex-modules-workflow-management-workflow-run-history-popup.component-D1A_EHNk.mjs.map +1 -0
  440. package/fesm2022/{acorex-modules-workflow-management-workflow-task-popover.component-Cvbzknxk.mjs → acorex-modules-workflow-management-workflow-task-popover.component-CHvHPHt9.mjs} +4 -4
  441. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-CHvHPHt9.mjs.map +1 -0
  442. package/fesm2022/acorex-modules-workflow-management.mjs +1 -1
  443. package/fesm2022/{acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-D1a0CBhs.mjs → acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-CsJpSfdA.mjs} +2 -2
  444. package/fesm2022/acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-CsJpSfdA.mjs.map +1 -0
  445. package/fesm2022/acorex-modules-workplacesafety-management-hazard-risk-status.provider-CdzRLBqN.mjs +42 -0
  446. package/fesm2022/acorex-modules-workplacesafety-management-hazard-risk-status.provider-CdzRLBqN.mjs.map +1 -0
  447. package/fesm2022/{acorex-modules-workplacesafety-management-hazard-status.provider-v1cFaa3q.mjs → acorex-modules-workplacesafety-management-hazard-status.provider-CmtTvpk0.mjs} +2 -2
  448. package/fesm2022/acorex-modules-workplacesafety-management-hazard-status.provider-CmtTvpk0.mjs.map +1 -0
  449. package/fesm2022/{acorex-modules-workplacesafety-management-ppe-item-status.provider-VH_Bp0l5.mjs → acorex-modules-workplacesafety-management-ppe-item-status.provider-Bx2yqUVH.mjs} +2 -2
  450. package/fesm2022/acorex-modules-workplacesafety-management-ppe-item-status.provider-Bx2yqUVH.mjs.map +1 -0
  451. package/fesm2022/acorex-modules-workplacesafety-management.mjs +1221 -555
  452. package/fesm2022/acorex-modules-workplacesafety-management.mjs.map +1 -1
  453. package/package.json +18 -2
  454. package/types/acorex-modules-ai-management.d.ts +35 -34
  455. package/types/acorex-modules-application-management.d.ts +23 -47
  456. package/types/acorex-modules-assessment-management.d.ts +517 -511
  457. package/types/acorex-modules-asset-management.d.ts +96 -79
  458. package/types/acorex-modules-auth.d.ts +2 -9
  459. package/types/acorex-modules-business-core.d.ts +72 -64
  460. package/types/acorex-modules-calendar-management.d.ts +4 -4
  461. package/types/acorex-modules-common.d.ts +11 -117
  462. package/types/acorex-modules-contact-core.d.ts +70 -0
  463. package/types/acorex-modules-content-management.d.ts +24 -31
  464. package/types/acorex-modules-conversation.d.ts +74 -73
  465. package/types/acorex-modules-customer-management.d.ts +69 -55
  466. package/types/acorex-modules-dashboard-management.d.ts +64 -66
  467. package/types/acorex-modules-data-management-contracts.d.ts +256 -0
  468. package/types/acorex-modules-data-management.d.ts +100 -22
  469. package/types/acorex-modules-document-management.d.ts +47 -40
  470. package/types/acorex-modules-financial-core.d.ts +69 -69
  471. package/types/acorex-modules-form-template-management.d.ts +4 -2
  472. package/types/acorex-modules-health-core.d.ts +241 -29
  473. package/types/acorex-modules-help-desk.d.ts +44 -38
  474. package/types/acorex-modules-human-capital-management.d.ts +67 -54
  475. package/types/acorex-modules-jira-management.d.ts +354 -0
  476. package/types/acorex-modules-learning-management.d.ts +2 -2
  477. package/types/acorex-modules-locale-management-contracts.d.ts +66 -0
  478. package/types/acorex-modules-locale-management.d.ts +4 -4
  479. package/types/acorex-modules-location-management.d.ts +67 -67
  480. package/types/acorex-modules-maintenance-management.d.ts +45 -43
  481. package/types/acorex-modules-measurement-core.d.ts +106 -106
  482. package/types/acorex-modules-meeting-management.d.ts +31 -23
  483. package/types/acorex-modules-notification-management.d.ts +19 -20
  484. package/types/acorex-modules-order-management.d.ts +39 -39
  485. package/types/acorex-modules-organization-management.d.ts +137 -109
  486. package/types/acorex-modules-person-core.d.ts +73 -52
  487. package/types/acorex-modules-platform-management.d.ts +1 -3
  488. package/types/acorex-modules-procurement-management.d.ts +1 -3
  489. package/types/acorex-modules-product-catalog.d.ts +13 -6
  490. package/types/acorex-modules-project-management.d.ts +16 -15
  491. package/types/acorex-modules-report-management.d.ts +3 -4
  492. package/types/acorex-modules-reservation-management.d.ts +3 -3
  493. package/types/acorex-modules-risk-management.d.ts +57 -54
  494. package/types/acorex-modules-security-management.d.ts +65 -63
  495. package/types/acorex-modules-settings-management.d.ts +15 -1
  496. package/types/acorex-modules-subscription-management.d.ts +4 -3
  497. package/types/acorex-modules-supplier-management.d.ts +4 -4
  498. package/types/acorex-modules-system-insight.d.ts +4 -3
  499. package/types/acorex-modules-task-management.d.ts +95 -70
  500. package/types/acorex-modules-tenant-management.d.ts +5 -4
  501. package/types/acorex-modules-workflow-management.d.ts +23 -4
  502. package/types/acorex-modules-workplacesafety-management.d.ts +153 -16
  503. package/fesm2022/acorex-modules-ai-management-agent.entity-3ZBa5t2D.mjs.map +0 -1
  504. package/fesm2022/acorex-modules-ai-management-assist.entity-CeALRRoV.mjs.map +0 -1
  505. package/fesm2022/acorex-modules-ai-management-model.entity-DiDaXVa3.mjs.map +0 -1
  506. package/fesm2022/acorex-modules-ai-management-open-ai-endpoint.entity-CZLNKtl0.mjs.map +0 -1
  507. package/fesm2022/acorex-modules-ai-management-rule.entity-CQNx4QEB.mjs.map +0 -1
  508. package/fesm2022/acorex-modules-application-management-application-status.provider-CGRoY79H.mjs.map +0 -1
  509. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-yboYQ8I-.mjs.map +0 -1
  510. package/fesm2022/acorex-modules-assessment-management-assessment-case-status.provider-B9sQAPwy.mjs.map +0 -1
  511. package/fesm2022/acorex-modules-assessment-management-assessment-case.entity-BBWeshSs.mjs.map +0 -1
  512. package/fesm2022/acorex-modules-assessment-management-assessment-session-answers-view.util-UCYBAHLk.mjs.map +0 -1
  513. package/fesm2022/acorex-modules-assessment-management-assessment-session-status.provider-Lee6Cwg8.mjs.map +0 -1
  514. package/fesm2022/acorex-modules-assessment-management-assessment-session.entity-Bp_dS1Js.mjs.map +0 -1
  515. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-VivCLw2H.mjs.map +0 -1
  516. package/fesm2022/acorex-modules-assessment-management-preview-question.command-CKF4BjCx.mjs.map +0 -1
  517. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-B_2o4jC2.mjs.map +0 -1
  518. package/fesm2022/acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-s8KcR3D0.mjs.map +0 -1
  519. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-Sj-5woTX.mjs.map +0 -1
  520. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-ClvQ18w6.mjs.map +0 -1
  521. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-BbyNZvoc.mjs.map +0 -1
  522. package/fesm2022/acorex-modules-assessment-management-review-assessment-session.command-B2QViI9d.mjs.map +0 -1
  523. package/fesm2022/acorex-modules-assessment-management-view-session-answers.command-CWdBtkn1.mjs.map +0 -1
  524. package/fesm2022/acorex-modules-asset-management-asset-rental-history-status.provider-BiWf2TwD.mjs.map +0 -1
  525. package/fesm2022/acorex-modules-asset-management-asset-rental-history.entity-D7g3TSrr.mjs.map +0 -1
  526. package/fesm2022/acorex-modules-asset-management-asset-system-assignment.entity-ufjDJ-0D.mjs.map +0 -1
  527. package/fesm2022/acorex-modules-asset-management-asset-system-type.entity-DbeerQdD.mjs.map +0 -1
  528. package/fesm2022/acorex-modules-asset-management-asset-system.entity-0Fy7wSBh.mjs.map +0 -1
  529. package/fesm2022/acorex-modules-asset-management-asset-type-section-component.entity-OsuWeo2l.mjs.map +0 -1
  530. package/fesm2022/acorex-modules-asset-management-asset-type-section.entity-C6tA_OBh.mjs.map +0 -1
  531. package/fesm2022/acorex-modules-asset-management-asset-type.entity-Cjy7Xetu.mjs.map +0 -1
  532. package/fesm2022/acorex-modules-asset-management-asset.entity-D1HwzXL_.mjs.map +0 -1
  533. package/fesm2022/acorex-modules-auth-acorex-modules-auth-CUpNfm_0.mjs.map +0 -1
  534. package/fesm2022/acorex-modules-auth-profile-page.component-ChsI9B3Y.mjs.map +0 -1
  535. package/fesm2022/acorex-modules-business-core-business-status.entity-BcfEL0kf.mjs +0 -139
  536. package/fesm2022/acorex-modules-business-core-business-status.entity-BcfEL0kf.mjs.map +0 -1
  537. package/fesm2022/acorex-modules-business-core-business-type.entity-BP5XZthY.mjs +0 -139
  538. package/fesm2022/acorex-modules-business-core-business-type.entity-BP5XZthY.mjs.map +0 -1
  539. package/fesm2022/acorex-modules-business-core-industry.entity-Byz8pFA7.mjs +0 -139
  540. package/fesm2022/acorex-modules-business-core-industry.entity-Byz8pFA7.mjs.map +0 -1
  541. package/fesm2022/acorex-modules-business-core-manufacturer.entity-CKzGz3Ix.mjs +0 -286
  542. package/fesm2022/acorex-modules-business-core-manufacturer.entity-CKzGz3Ix.mjs.map +0 -1
  543. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-B5zqb3b_.mjs.map +0 -1
  544. package/fesm2022/acorex-modules-content-management-permission-definition.provider-DxI6NmP4.mjs.map +0 -1
  545. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-lPw23AJc.mjs.map +0 -1
  546. package/fesm2022/acorex-modules-customer-management-activity.entity-BENCtWk0.mjs.map +0 -1
  547. package/fesm2022/acorex-modules-customer-management-customer.entity-Doc1f5gH.mjs.map +0 -1
  548. package/fesm2022/acorex-modules-customer-management-deal-contact-role.entity-BmDALoWz.mjs.map +0 -1
  549. package/fesm2022/acorex-modules-customer-management-lead.entity-CH7iga2T.mjs.map +0 -1
  550. package/fesm2022/acorex-modules-customer-management-opportunity-stage.entity-gXGyRjOR.mjs.map +0 -1
  551. package/fesm2022/acorex-modules-customer-management-opportunity.entity-BX1vocD3.mjs.map +0 -1
  552. package/fesm2022/acorex-modules-customer-management-sales-pipeline.entity-TN7eqaA1.mjs.map +0 -1
  553. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-D2TrYnCW.mjs.map +0 -1
  554. package/fesm2022/acorex-modules-dashboard-management-index-DAQNEq43.mjs.map +0 -1
  555. package/fesm2022/acorex-modules-document-management-document-shortcut.entity-D3BI4azq.mjs +0 -30
  556. package/fesm2022/acorex-modules-document-management-document-shortcut.entity-D3BI4azq.mjs.map +0 -1
  557. package/fesm2022/acorex-modules-form-template-management-template.entity-CNWAvD6Z.mjs +0 -412
  558. package/fesm2022/acorex-modules-form-template-management-template.entity-CNWAvD6Z.mjs.map +0 -1
  559. package/fesm2022/acorex-modules-health-core-allergy-type.entity-Ba06KigW.mjs +0 -68
  560. package/fesm2022/acorex-modules-health-core-allergy-type.entity-Ba06KigW.mjs.map +0 -1
  561. package/fesm2022/acorex-modules-health-core-blood-type.entity-165JDo8r.mjs +0 -121
  562. package/fesm2022/acorex-modules-health-core-blood-type.entity-165JDo8r.mjs.map +0 -1
  563. package/fesm2022/acorex-modules-health-core-body-part.entity-CGk798g1.mjs +0 -68
  564. package/fesm2022/acorex-modules-health-core-body-part.entity-CGk798g1.mjs.map +0 -1
  565. package/fesm2022/acorex-modules-health-core-chronic-condition-type.entity-CHeAJ1Mm.mjs +0 -68
  566. package/fesm2022/acorex-modules-health-core-chronic-condition-type.entity-CHeAJ1Mm.mjs.map +0 -1
  567. package/fesm2022/acorex-modules-health-core-disability-status.entity-DN5reubi.mjs +0 -121
  568. package/fesm2022/acorex-modules-health-core-disability-status.entity-DN5reubi.mjs.map +0 -1
  569. package/fesm2022/acorex-modules-health-core-injury-type.entity-x9bs6Zly.mjs +0 -68
  570. package/fesm2022/acorex-modules-health-core-injury-type.entity-x9bs6Zly.mjs.map +0 -1
  571. package/fesm2022/acorex-modules-health-core-vaccination-type.entity-DlQ4MQVm.mjs +0 -68
  572. package/fesm2022/acorex-modules-health-core-vaccination-type.entity-DlQ4MQVm.mjs.map +0 -1
  573. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-B8de7ifz.mjs.map +0 -1
  574. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-CqROha3-.mjs.map +0 -1
  575. package/fesm2022/acorex-modules-human-capital-management-approve-leave-request.command-B0pyS4rY.mjs.map +0 -1
  576. package/fesm2022/acorex-modules-human-capital-management-assign-position-assignment.command-Dc0eoIAI.mjs.map +0 -1
  577. package/fesm2022/acorex-modules-human-capital-management-cancel-leave-request.command-TjMXVKCB.mjs.map +0 -1
  578. package/fesm2022/acorex-modules-human-capital-management-edit-signature.command-9psDoX-o.mjs.map +0 -1
  579. package/fesm2022/acorex-modules-human-capital-management-employee.entity-BRkS6cY0.mjs +0 -416
  580. package/fesm2022/acorex-modules-human-capital-management-employee.entity-BRkS6cY0.mjs.map +0 -1
  581. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-BZ1vVzeJ.mjs +0 -99
  582. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-BZ1vVzeJ.mjs.map +0 -1
  583. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-C_hKrBJ1.mjs +0 -292
  584. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-C_hKrBJ1.mjs.map +0 -1
  585. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-1FFKAk-t.mjs +0 -95
  586. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-1FFKAk-t.mjs.map +0 -1
  587. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-3zBc21d1.mjs +0 -121
  588. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-3zBc21d1.mjs.map +0 -1
  589. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-CeE-5Dko.mjs +0 -226
  590. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-CeE-5Dko.mjs.map +0 -1
  591. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-BABjM2Mr.mjs +0 -267
  592. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-BABjM2Mr.mjs.map +0 -1
  593. package/fesm2022/acorex-modules-human-capital-management-reject-leave-request.command-DHqsjUdQ.mjs.map +0 -1
  594. package/fesm2022/acorex-modules-human-capital-management-revoke-position-assignment.command-DQqsqBRM.mjs.map +0 -1
  595. package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-nF6sDrFL.mjs.map +0 -1
  596. package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bya_9T7H.mjs.map +0 -1
  597. package/fesm2022/acorex-modules-learning-management-attendance.entity-40THDVHu.mjs.map +0 -1
  598. package/fesm2022/acorex-modules-learning-management-certificate-definition.entity-DzRELZ1L.mjs.map +0 -1
  599. package/fesm2022/acorex-modules-learning-management-certificate-type.entity-Br35cJ-M.mjs.map +0 -1
  600. package/fesm2022/acorex-modules-learning-management-certificate.entity-DA882F-J.mjs.map +0 -1
  601. package/fesm2022/acorex-modules-learning-management-course-type.entity-DAc4cRbW.mjs.map +0 -1
  602. package/fesm2022/acorex-modules-learning-management-course.entity-HoC-FUPB.mjs.map +0 -1
  603. package/fesm2022/acorex-modules-learning-management-enrollment.entity-D4j7oSWb.mjs.map +0 -1
  604. package/fesm2022/acorex-modules-learning-management-learning-path-course.entity-B0DurZqy.mjs.map +0 -1
  605. package/fesm2022/acorex-modules-learning-management-learning-path.entity-C-FcZefB.mjs.map +0 -1
  606. package/fesm2022/acorex-modules-learning-management-mandatory-training-rule.entity-CxsoSJh-.mjs.map +0 -1
  607. package/fesm2022/acorex-modules-learning-management-skill-level.entity-CnAgJyuR.mjs.map +0 -1
  608. package/fesm2022/acorex-modules-learning-management-skill.entity-DmIjc2gw.mjs.map +0 -1
  609. package/fesm2022/acorex-modules-learning-management-training-definition.entity-DPY0OQdW.mjs.map +0 -1
  610. package/fesm2022/acorex-modules-learning-management-training-type.entity-Bt37GacX.mjs.map +0 -1
  611. package/fesm2022/acorex-modules-learning-management-training.entity-BkxK-rqz.mjs.map +0 -1
  612. package/fesm2022/acorex-modules-maintenance-management-failure-register-status.provider-B8-Snxbx.mjs.map +0 -1
  613. package/fesm2022/acorex-modules-maintenance-management-maintenance-template.entity-B9Jp4r3m.mjs +0 -487
  614. package/fesm2022/acorex-modules-maintenance-management-maintenance-template.entity-B9Jp4r3m.mjs.map +0 -1
  615. package/fesm2022/acorex-modules-meeting-management-meeting-schedule.entity-BJGUKFuu.mjs +0 -107
  616. package/fesm2022/acorex-modules-meeting-management-meeting-schedule.entity-BJGUKFuu.mjs.map +0 -1
  617. package/fesm2022/acorex-modules-notification-management-acorex-modules-notification-management-ZgxwReDF.mjs.map +0 -1
  618. package/fesm2022/acorex-modules-order-management-bulk-buy-order-item.entity-DsXE-kqT.mjs.map +0 -1
  619. package/fesm2022/acorex-modules-order-management-bulk-buy-order-status.provider-CECieSZF.mjs.map +0 -1
  620. package/fesm2022/acorex-modules-order-management-bulk-buy-order.entity-B9f4Tppc.mjs.map +0 -1
  621. package/fesm2022/acorex-modules-order-management-entity.provider-ZaDnKtBk.mjs.map +0 -1
  622. package/fesm2022/acorex-modules-order-management-member-order-line.entity-BX3rQTJ1.mjs.map +0 -1
  623. package/fesm2022/acorex-modules-order-management-member-order-status.provider-Bkrzylqm.mjs.map +0 -1
  624. package/fesm2022/acorex-modules-order-management-member-order.entity-BItj1CLq.mjs.map +0 -1
  625. package/fesm2022/acorex-modules-organization-management-JOB_DEFINITION_SKILLS_PAGE_COMPONENT_KEY-BYfbGGOE.mjs +0 -8
  626. package/fesm2022/acorex-modules-organization-management-JOB_DEFINITION_SKILLS_PAGE_COMPONENT_KEY-BYfbGGOE.mjs.map +0 -1
  627. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-Cl-ecmKK.mjs +0 -917
  628. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-Cl-ecmKK.mjs.map +0 -1
  629. package/fesm2022/acorex-modules-organization-management-add-business-unit-to-business-unit.command-BUOpdwIy.mjs.map +0 -1
  630. package/fesm2022/acorex-modules-organization-management-add-position-to-business-unit.command-CcoGv5J7.mjs.map +0 -1
  631. package/fesm2022/acorex-modules-organization-management-add-team-to-business-unit.command-n9FYDyKE.mjs.map +0 -1
  632. package/fesm2022/acorex-modules-organization-management-business-unit.entity-LYKMuTLO.mjs +0 -404
  633. package/fesm2022/acorex-modules-organization-management-business-unit.entity-LYKMuTLO.mjs.map +0 -1
  634. package/fesm2022/acorex-modules-organization-management-chart.entity-BxAJonRP.mjs +0 -200
  635. package/fesm2022/acorex-modules-organization-management-chart.entity-BxAJonRP.mjs.map +0 -1
  636. package/fesm2022/acorex-modules-organization-management-company.entity-Cexgxajh.mjs +0 -136
  637. package/fesm2022/acorex-modules-organization-management-company.entity-Cexgxajh.mjs.map +0 -1
  638. package/fesm2022/acorex-modules-organization-management-entity.provider-Dqn382Z2.mjs.map +0 -1
  639. package/fesm2022/acorex-modules-organization-management-feature-definition.provider-C7VhASKJ.mjs.map +0 -1
  640. package/fesm2022/acorex-modules-organization-management-job-definition-pages-component.provider-Bacrw4_J.mjs.map +0 -1
  641. package/fesm2022/acorex-modules-organization-management-job-definition-responsibilities-page.component-BJkc7c-G.mjs.map +0 -1
  642. package/fesm2022/acorex-modules-organization-management-job-definition-skills-page.component-GuFiBC0r.mjs.map +0 -1
  643. package/fesm2022/acorex-modules-organization-management-job-definition.entity-DsdjfMCs.mjs +0 -321
  644. package/fesm2022/acorex-modules-organization-management-job-definition.entity-DsdjfMCs.mjs.map +0 -1
  645. package/fesm2022/acorex-modules-organization-management-job-level.datasource-CCvVPEVM.mjs.map +0 -1
  646. package/fesm2022/acorex-modules-organization-management-job-level.entity-BrBHqHqn.mjs +0 -271
  647. package/fesm2022/acorex-modules-organization-management-job-level.entity-BrBHqHqn.mjs.map +0 -1
  648. package/fesm2022/acorex-modules-organization-management-menu.provider-BeCkTwia.mjs.map +0 -1
  649. package/fesm2022/acorex-modules-organization-management-org-chart-default-node-contribution.provider-DDY2Cgu6.mjs.map +0 -1
  650. package/fesm2022/acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-DbSxtEz6.mjs.map +0 -1
  651. package/fesm2022/acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-ByqjxY2S.mjs.map +0 -1
  652. package/fesm2022/acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DdyF5QS0.mjs.map +0 -1
  653. package/fesm2022/acorex-modules-organization-management-org-chart.page-DD1lvTXR.mjs.map +0 -1
  654. package/fesm2022/acorex-modules-organization-management-permission-definition.provider-CbXQwY_b.mjs.map +0 -1
  655. package/fesm2022/acorex-modules-organization-management-position.entity-qwL31RSs.mjs +0 -543
  656. package/fesm2022/acorex-modules-organization-management-position.entity-qwL31RSs.mjs.map +0 -1
  657. package/fesm2022/acorex-modules-organization-management-remove-position-from-business-unit.command-B1mrTFbI.mjs.map +0 -1
  658. package/fesm2022/acorex-modules-organization-management-responsibilities-matrix.component-CQ1RKj2l.mjs.map +0 -1
  659. package/fesm2022/acorex-modules-organization-management-responsibility-level.entity-DwpUOhLh.mjs +0 -135
  660. package/fesm2022/acorex-modules-organization-management-responsibility-level.entity-DwpUOhLh.mjs.map +0 -1
  661. package/fesm2022/acorex-modules-organization-management-responsibility.entity-3d2Im-NE.mjs +0 -203
  662. package/fesm2022/acorex-modules-organization-management-responsibility.entity-3d2Im-NE.mjs.map +0 -1
  663. package/fesm2022/acorex-modules-organization-management-team-business-unit.entity-DdIc2pIC.mjs +0 -300
  664. package/fesm2022/acorex-modules-organization-management-team-business-unit.entity-DdIc2pIC.mjs.map +0 -1
  665. package/fesm2022/acorex-modules-organization-management-team-member-role.entity-UqmN5-zL.mjs +0 -150
  666. package/fesm2022/acorex-modules-organization-management-team-member-role.entity-UqmN5-zL.mjs.map +0 -1
  667. package/fesm2022/acorex-modules-organization-management-team-member.entity-BlsBC7oU.mjs +0 -251
  668. package/fesm2022/acorex-modules-organization-management-team-member.entity-BlsBC7oU.mjs.map +0 -1
  669. package/fesm2022/acorex-modules-organization-management-team.entity-rRp5rEKa.mjs +0 -307
  670. package/fesm2022/acorex-modules-organization-management-team.entity-rRp5rEKa.mjs.map +0 -1
  671. package/fesm2022/acorex-modules-person-core-education-level.entity-BudWedmZ.mjs +0 -121
  672. package/fesm2022/acorex-modules-person-core-education-level.entity-BudWedmZ.mjs.map +0 -1
  673. package/fesm2022/acorex-modules-person-core-gender.entity-BrnPFMd_.mjs +0 -121
  674. package/fesm2022/acorex-modules-person-core-gender.entity-BrnPFMd_.mjs.map +0 -1
  675. package/fesm2022/acorex-modules-person-core-marital-status.entity-JSXaOaKH.mjs +0 -121
  676. package/fesm2022/acorex-modules-person-core-marital-status.entity-JSXaOaKH.mjs.map +0 -1
  677. package/fesm2022/acorex-modules-person-core-person-identifier-type.entity-BwQ0fj61.mjs +0 -191
  678. package/fesm2022/acorex-modules-person-core-person-identifier-type.entity-BwQ0fj61.mjs.map +0 -1
  679. package/fesm2022/acorex-modules-person-core-person-title.entity-DPEl0HTw.mjs +0 -121
  680. package/fesm2022/acorex-modules-person-core-person-title.entity-DPEl0HTw.mjs.map +0 -1
  681. package/fesm2022/acorex-modules-person-core-religion.entity-DD1UG9on.mjs +0 -121
  682. package/fesm2022/acorex-modules-person-core-religion.entity-DD1UG9on.mjs.map +0 -1
  683. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-ilmoyxAw.mjs.map +0 -1
  684. package/fesm2022/acorex-modules-product-catalog-brand.entity-DLK1M-a5.mjs +0 -261
  685. package/fesm2022/acorex-modules-product-catalog-brand.entity-DLK1M-a5.mjs.map +0 -1
  686. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-Dd43Ph0b.mjs +0 -596
  687. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-Dd43Ph0b.mjs.map +0 -1
  688. package/fesm2022/acorex-modules-product-catalog-product.entity-CcLvq1uX.mjs +0 -668
  689. package/fesm2022/acorex-modules-product-catalog-product.entity-CcLvq1uX.mjs.map +0 -1
  690. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-Dum62tB8.mjs.map +0 -1
  691. package/fesm2022/acorex-modules-reservation-management-reservation-class-status.entity-CsOec92Y.mjs.map +0 -1
  692. package/fesm2022/acorex-modules-reservation-management-reservation-resource-type.entity-DiEkzSO2.mjs.map +0 -1
  693. package/fesm2022/acorex-modules-reservation-management-reservation-status-transition.entity-CSj9-uAb.mjs.map +0 -1
  694. package/fesm2022/acorex-modules-security-management-profile.entity-BSDeLsJ1.mjs +0 -168
  695. package/fesm2022/acorex-modules-security-management-profile.entity-BSDeLsJ1.mjs.map +0 -1
  696. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-e5asXiK4.mjs +0 -798
  697. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-e5asXiK4.mjs.map +0 -1
  698. package/fesm2022/acorex-modules-settings-management-permission-definition.provider-D5DqCfiz.mjs.map +0 -1
  699. package/fesm2022/acorex-modules-settings-management-setting-page.component-TxoOyBRc.mjs.map +0 -1
  700. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-Bv7Ye6d1.mjs +0 -7564
  701. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-Bv7Ye6d1.mjs.map +0 -1
  702. package/fesm2022/acorex-modules-task-management-task-board.page-CfgeDnBx.mjs.map +0 -1
  703. package/fesm2022/acorex-modules-workflow-management-WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY-D6q__Ewd.mjs +0 -5
  704. package/fesm2022/acorex-modules-workflow-management-WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY-D6q__Ewd.mjs.map +0 -1
  705. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-LJ8Bb-CT.mjs.map +0 -1
  706. package/fesm2022/acorex-modules-workflow-management-activity-definition.entity-Bhx1tC1u.mjs +0 -255
  707. package/fesm2022/acorex-modules-workflow-management-activity-definition.entity-Bhx1tC1u.mjs.map +0 -1
  708. package/fesm2022/acorex-modules-workflow-management-automation.entity-C_WRtcFX.mjs +0 -279
  709. package/fesm2022/acorex-modules-workflow-management-automation.entity-C_WRtcFX.mjs.map +0 -1
  710. package/fesm2022/acorex-modules-workflow-management-index--D61tV-f.mjs.map +0 -1
  711. package/fesm2022/acorex-modules-workflow-management-index-DXIQw3Ao.mjs.map +0 -1
  712. package/fesm2022/acorex-modules-workflow-management-index-OK7e-UOe.mjs +0 -264
  713. package/fesm2022/acorex-modules-workflow-management-index-OK7e-UOe.mjs.map +0 -1
  714. package/fesm2022/acorex-modules-workflow-management-save-workflow-definition-activities.command-huamhFhc.mjs.map +0 -1
  715. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-B0f5IsoE.mjs.map +0 -1
  716. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-DQ703kRI.mjs.map +0 -1
  717. package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-DFN7awRu.mjs +0 -313
  718. package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-DFN7awRu.mjs.map +0 -1
  719. package/fesm2022/acorex-modules-workflow-management-workflow-instance.entity-DcqLomn4.mjs +0 -256
  720. package/fesm2022/acorex-modules-workflow-management-workflow-instance.entity-DcqLomn4.mjs.map +0 -1
  721. package/fesm2022/acorex-modules-workflow-management-workflow-run-history-popup.component-FLqOdI2t.mjs.map +0 -1
  722. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-Cvbzknxk.mjs.map +0 -1
  723. package/fesm2022/acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-D1a0CBhs.mjs.map +0 -1
  724. package/fesm2022/acorex-modules-workplacesafety-management-hazard-status.provider-v1cFaa3q.mjs.map +0 -1
  725. package/fesm2022/acorex-modules-workplacesafety-management-ppe-item-status.provider-VH_Bp0l5.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-workflow-management-acorex-modules-workflow-management-AgY9tA7s.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/contracts/root.config.ts","../../../../libs/modules/workflow-management/src/lib/contracts/menu.keys.ts","../../../../libs/modules/workflow-management/src/lib/contracts/permission.keys.ts","../../../../libs/modules/workflow-management/src/lib/contracts/WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/workflow-management/src/lib/contracts/WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/workflow-management/src/lib/contracts/index.ts","../../../../libs/modules/workflow-management/src/lib/entity.provider.ts","../../../../libs/modules/workflow-management/src/lib/menu.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/workflow-dashboard-widget-category.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/workflow-dashboard-widget-subcategories.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/errors/workflow-errors-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/errors/workflow-errors-heatmap-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/failures/workflow-failed-processes-by-type-donut-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/failures/workflow-failed-processes-summary-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/failures/workflow-failed-processes-trend-line-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/failures/workflow-stuck-processes-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/sla/workflow-gauge-chart-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/sla/workflow-sla-risk-prediction-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/sla/workflow-sla-trend-line-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/sla/workflow-sla-violations-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/system-health/workflow-system-health-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/tasks/workflow-overdue-tasks-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/tasks/workflow-pending-tasks-by-age-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/throughput/workflow-line-chart-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/throughput/workflow-instance-conversion-funnel-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/throughput/workflow-throughput-daily-line-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/throughput/workflow-throughput-weekly-line-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-bottleneck-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-donut-chart-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-overloaded-users-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-workload-per-user-active-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-workload-per-user-avg-age-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/admin/workload/workflow-workload-per-user-overdue-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/kpi/workflow-kpi-details-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/kpi/workflow-kpi-progress-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/kpi/workflow-kpi-segmented-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/kpi/workflow-kpi-stat-card-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/user/workflow-bar-chart-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/user/workflow-tasks-near-deadline-bar-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/dashboard/widgets/workflow-dashboard-widgets.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/show-confirm-popup.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/show-layout-popup.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/human-task.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/cartable-task.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/show-toast.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/sign-off.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/rejection-reason.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/create-entity-form.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/workflow-activities-definition.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/activities/entiy.create.activity.ts","../../../../libs/modules/workflow-management/src/lib/features/automation-plugin/automation.plugin.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-run-plugin/commands.keys.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-run-plugin/workflow-run.plugin.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-selector-plugin/workflow-selector.plugin.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-run-plugin/workflow-plugins.module.ts","../../../../libs/modules/workflow-management/src/lib/features/activity-command-configurator/activity-command-configurator-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-configurator/workflow-configurator-widget.config.ts","../../../../libs/modules/workflow-management/src/lib/widget-definition.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/automation-evaluator-scope.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/category.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/workflow-task-provider.discovery.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/provider.task.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/workflows/workflow-category.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/engine/workflows/workflow-definition.provider.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-reassign-access.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-continuation.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-instance-bookmark.access.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-instance-human-task.service.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-continuation.service.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-definition-status.provider.ts","../../../../libs/modules/workflow-management/src/lib/manifest.ts","../../../../libs/modules/workflow-management/src/lib/permission-definition.provider.ts","../../../../libs/modules/workflow-management/src/lib/workflow-management.module.ts","../../../../libs/modules/workflow-management/src/lib/entities/activity-category/activity-category.entity.ts","../../../../libs/modules/workflow-management/src/lib/entities/activity-definition/activity-definition.entity.ts","../../../../libs/modules/workflow-management/src/lib/entities/automation/automation.entity.ts","../../../../libs/modules/workflow-management/src/lib/entities/automation/automation.types.ts","../../../../libs/modules/workflow-management/src/lib/entities/workflow-definition/workflow-definition.entity.ts","../../../../libs/modules/workflow-management/src/lib/entities/workflow-instance/workflow-instance.entity.ts","../../../../libs/modules/workflow-management/src/lib/entities/index.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-context.constants.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-translation.utils.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/workflow-task-input-rehydration.util.ts","../../../../libs/modules/workflow-management/src/lib/features/task-provider/generic-workflow-task.provider.ts","../../../../libs/modules/workflow-management/src/acorex-modules-workflow-management.ts"],"sourcesContent":["const config = {\n i18n: 'workflow-management',\n module: 'WorkflowManagement',\n};\n\n/** Builds extended dashboard widget type ids: `{module}:Widget:Dashboard:{Segment}`. */\nconst workflowDashboardWidgetId = (segment: string): string =>\n `${config.module}:Widget:Dashboard:${segment}`;\n\nexport const RootConfig = {\n config,\n module: {\n route: 'workflow-management',\n name: config.module,\n title: '@workflow-management:module.title',\n icon: 'fa-light fa-diagram-project',\n },\n /** Task-board suspend activity type ids (match activity definition keys). */\n activities: {\n humanTask: 'workflow-activity:human-task',\n cartable: 'workflow-activity:cartable',\n },\n entities: {\n workflowDefinition: {\n name: 'WorkflowDefinition',\n fullName: `${config.module}.WorkflowDefinition`,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.title',\n titlePlural: '@workflow-management:workflow-definitions.entities.workflow-definition.plural',\n icon: 'fa-light fa-diagram-project',\n },\n workflowInstance: {\n name: 'WorkflowInstance',\n fullName: `${config.module}.WorkflowInstance`,\n title: '@workflow-management:workflow-instances.entities.workflow-instance.title',\n titlePlural: '@workflow-management:workflow-instances.entities.workflow-instance.plural',\n icon: 'fa-light fa-play-circle',\n },\n activityDefinition: {\n name: 'ActivityDefinition',\n fullName: `${config.module}.ActivityDefinition`,\n title: '@workflow-management:activities.entities.activity-definition.title',\n titlePlural: '@workflow-management:activities.entities.activity-definition.plural',\n icon: 'fa-light fa-puzzle-piece',\n },\n automation: {\n name: 'Automation',\n fullName: `${config.module}.Automation`,\n title: '@workflow-management:automations.entities.automation.title',\n titlePlural: '@workflow-management:automations.entities.automation.plural',\n icon: 'fa-light fa-bolt',\n },\n // workflowCategory: {\n // name: 'WorkflowCategory',\n // fullName: `${config.module}.WorkflowCategory`,\n // title: '@workflow-management:workflows.entities.workflow-category.title',\n // titlePlural: '@workflow-management:workflows.entities.workflow-category.plural',\n // icon: 'fa-light fa-folder',\n // },\n },\n dataSources: {\n dashboardChart: {\n pendingApproval: `${config.module}:DataSource:PendingApproval`,\n workloadByProcess: `${config.module}:DataSource:WorkloadByProcess`,\n slaCompliance: `${config.module}:DataSource:SlaCompliance`,\n throughputLast8Weeks: `${config.module}:DataSource:ThroughputLast8Weeks`,\n systemHealthSummary: `${config.module}:DataSource:SystemHealthSummary`,\n throughputDaily: `${config.module}:DataSource:ThroughputDaily`,\n throughputWeekly: `${config.module}:DataSource:ThroughputWeekly`,\n slaViolationsAndDelay: `${config.module}:DataSource:SlaViolationsAndDelay`,\n slaComplianceTrend: `${config.module}:DataSource:SlaComplianceTrend`,\n pendingTasksByAge: `${config.module}:DataSource:PendingTasksByAge`,\n failedProcessesSummary: `${config.module}:DataSource:FailedProcessesSummary`,\n failedProcessFailureTrend: `${config.module}:DataSource:FailedProcessFailureTrend`,\n failedProcessesByType: `${config.module}:DataSource:FailedProcessesByType`,\n stuckProcesses: `${config.module}:DataSource:StuckProcesses`,\n overdueTasksByProcess: `${config.module}:DataSource:OverdueTasksByProcess`,\n tasksNearDeadline: `${config.module}:DataSource:TasksNearDeadline`,\n bottleneckActivities: `${config.module}:DataSource:BottleneckActivities`,\n errorsByCategory: `${config.module}:DataSource:ErrorsByCategory`,\n /** Workflow instance funnel: counts per stage (created -> completed). */\n instanceConversionFunnel: `${config.module}:DataSource:InstanceConversionFunnel`,\n /** Heatmap: errors by activity/stage and weekday (or day bucket). */\n errorsByActivityDayHeatmap: `${config.module}:DataSource:ErrorsByActivityDayHeatmap`,\n workloadPerUserActive: `${config.module}:DataSource:WorkloadPerUserActive`,\n workloadPerUserOverdue: `${config.module}:DataSource:WorkloadPerUserOverdue`,\n workloadPerUserAvgAgeHours: `${config.module}:DataSource:WorkloadPerUserAvgAgeHours`,\n workloadOverloadedUsers: `${config.module}:DataSource:WorkloadOverloadedUsers`,\n slaRiskPrediction: `${config.module}:DataSource:SlaRiskPrediction`,\n },\n dashboardKpi: {\n slaComplianceSnapshot: `${config.module}:DataSource:SlaComplianceSnapshot`,\n taskStatusBreakdown: `${config.module}:DataSource:TaskStatusBreakdown`,\n throughputOverview: `${config.module}:DataSource:ThroughputOverview`,\n kpiStatCard: `${config.module}:DataSource:KpiStatCard`,\n },\n },\n /** Extended dashboard widget type ids; used by workflow dashboard widget configs. */\n widgets: {\n barChart: workflowDashboardWidgetId('BarChart'),\n tasksNearDeadlineBar: workflowDashboardWidgetId('TasksNearDeadlineBar'),\n pendingTasksByAgeBar: workflowDashboardWidgetId('PendingTasksByAgeBar'),\n overdueTasksBar: workflowDashboardWidgetId('OverdueTasksBar'),\n bottleneckBar: workflowDashboardWidgetId('BottleneckBar'),\n workloadPerUserOverdueBar: workflowDashboardWidgetId('WorkloadPerUserOverdueBar'),\n stuckProcessesBar: workflowDashboardWidgetId('StuckProcessesBar'),\n slaRiskPredictionBar: workflowDashboardWidgetId('SlaRiskPredictionBar'),\n failedProcessesByTypeDonut: workflowDashboardWidgetId('FailedProcessesByTypeDonut'),\n failedProcessesTrendLine: workflowDashboardWidgetId('FailedProcessesTrendLine'),\n throughputDailyLine: workflowDashboardWidgetId('ThroughputDailyLine'),\n throughputWeeklyLine: workflowDashboardWidgetId('ThroughputWeeklyLine'),\n failedProcessesSummaryBar: workflowDashboardWidgetId('FailedProcessesSummaryBar'),\n workloadPerUserActiveBar: workflowDashboardWidgetId('WorkloadPerUserActiveBar'),\n workloadPerUserAvgAgeBar: workflowDashboardWidgetId('WorkloadPerUserAvgAgeBar'),\n overloadedUsersBar: workflowDashboardWidgetId('OverloadedUsersBar'),\n donutChart: workflowDashboardWidgetId('DonutChart'),\n slaViolationsBar: workflowDashboardWidgetId('SlaViolationsBar'),\n gaugeChart: workflowDashboardWidgetId('GaugeChart'),\n lineChart: workflowDashboardWidgetId('LineChart'),\n slaTrendLine: workflowDashboardWidgetId('SlaTrendLine'),\n errorsBar: workflowDashboardWidgetId('ErrorsBar'),\n instanceConversionFunnel: workflowDashboardWidgetId('InstanceConversionFunnel'),\n errorsHeatmap: workflowDashboardWidgetId('ErrorsHeatmap'),\n systemHealthBar: workflowDashboardWidgetId('SystemHealthBar'),\n kpiDetails: workflowDashboardWidgetId('KpiDetails'),\n kpiProgress: workflowDashboardWidgetId('KpiProgress'),\n kpiSegmented: workflowDashboardWidgetId('KpiSegmented'),\n kpiStatCard: workflowDashboardWidgetId('KpiStatCard'),\n },\n};\n","export const AXPWorkflowManagementMenuKeys = {\n Root: 'workflow-management:menu',\n Workflow: 'workflow-management:workflow',\n WorkflowDefinitions: 'workflow-management:workflow-definitions',\n WorkflowInstances: 'workflow-management:workflow-instances',\n Activities: 'workflow-management:activities',\n} as const;\n\n","export const AXMPermissionsKeys = {\n WorkflowManagement: {\n Management: 'WorkflowManagement:Permission:Management',\n },\n WorkflowInstance: {\n ReassignToSelf: 'WorkflowManagement:Permission:WorkflowInstance.ReassignToSelf',\n },\n} as const;\n","/** Component key for the Workflow Instance Activity instances tab. Register via AXP_PAGE_COMPONENT_PROVIDER. */\nexport const WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY =\n 'workflow-instance-activity-instances-page';\n","/** Registry key for the workflow definition Activities custom page (linear graph editor). */\nexport const WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY = 'workflow-definition-activities-page';\n","//#region ---- Contracts barrel ----\n\nexport * from './menu.keys';\nexport * from './permission.keys';\n\nexport * from './root.config';\n\nexport * from './WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY';\nexport * from './WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY';\n\n\n//#endregion","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from './contracts';\n\n@Injectable()\nexport class AXMWorkflowManagementModuleEntityProvider implements AXPEntityDefinitionLoader {\n public preload(): AXPEntityPreloadEntity[] {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity: any) => ({\n module: module,\n entity: entity.name,\n }));\n }\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n if (moduleName === RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.workflowDefinition.name:\n return (await import('./entities/workflow-definition')).factoryWorkflowDefinition();\n case RootConfig.entities.workflowInstance.name:\n return (await import('./entities/workflow-instance')).factoryWorkflowInstance();\n case RootConfig.entities.activityDefinition.name:\n return (await import('./entities/activity-definition')).factoryActivityDefinition();\n case RootConfig.entities.automation.name:\n return (await import('./entities/automation')).factoryAutomation();\n }\n }\n return null;\n }\n\n async list(): Promise<{ name: string; module: string }[]> {\n const m = RootConfig.module.name;\n return Promise.resolve(\n Object.values(RootConfig.entities).map((e) => ({ name: e.name, module: m }))\n );\n }\n}\n\n","import { AXPCommonMenuKeys } from '@acorex/modules/common';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { RootConfig } from './contracts';\nimport { AXPWorkflowManagementMenuKeys } from './contracts/menu.keys';\n\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n private sessionService = inject(AXPSessionService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const isAuthorized = await firstValueFrom(this.sessionService.isAuthorized$);\n if (!isAuthorized) {\n return;\n }\n\n const module = RootConfig.module;\n\n const workflowsMenu = context.find(AXPCommonMenuKeys.Workflows);\n if (!workflowsMenu.exists) {\n context.find(AXPCommonMenuKeys.Administration).addItems([\n {\n name: AXPCommonMenuKeys.Workflows,\n priority: 12,\n text: '@general:menus.workflows.title',\n icon: module.icon,\n type: 'menu',\n children: [],\n },\n ]);\n }\n\n context.find(AXPCommonMenuKeys.Workflows).addItems([\n {\n name: AXPWorkflowManagementMenuKeys.WorkflowDefinitions,\n text: '@workflow-management:workflow-definitions.menus.workflow-definitions.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.workflowDefinition.name),\n priority: 1,\n icon: RootConfig.entities.workflowDefinition.icon,\n policy: {\n features: [module.name],\n },\n },\n {\n name: AXPWorkflowManagementMenuKeys.WorkflowInstances,\n text: '@workflow-management:workflow-instances.menus.workflow-instances.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.workflowInstance.name),\n priority: 2,\n icon: RootConfig.entities.workflowInstance.icon,\n policy: {\n features: [module.name],\n },\n },\n ]);\n }\n}\n","import { AXPDefinitionCategory } from \"@acorex/platform/core\";\n\n/**\n * Single source of truth for the workflow tab in the widget picker.\n * All workflow dashboard extended widgets must use this so `uniqBy(name)` keeps a localized title.\n */\nexport const AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY: AXPDefinitionCategory = {\n name: 'workflow',\n order: 3,\n title: '@workflow-management:dashboard-widgets.widget-picker-category.workflow',\n};\n","import { AXPDefinitionCategory } from \"@acorex/platform/core\";\n\nconst SUB = '@workflow-management:dashboard-widgets.widget-picker-sub-categories';\n\n//#region ---- Workflow dashboard widget picker sub-categories ----\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_KPI: AXPDefinitionCategory = {\n name: 'workflow-kpi',\n order: 1,\n title: `${SUB}.kpi`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT: AXPDefinitionCategory = {\n name: 'workflow-throughput',\n order: 2,\n title: `${SUB}.throughput`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_FAILURES: AXPDefinitionCategory = {\n name: 'workflow-failures',\n order: 3,\n title: `${SUB}.failures`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_ERRORS: AXPDefinitionCategory = {\n name: 'workflow-errors',\n order: 4,\n title: `${SUB}.errors`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_SLA: AXPDefinitionCategory = {\n name: 'workflow-sla',\n order: 5,\n title: `${SUB}.sla`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD: AXPDefinitionCategory = {\n name: 'workflow-workload',\n order: 6,\n title: `${SUB}.workload`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_TASKS: AXPDefinitionCategory = {\n name: 'workflow-tasks',\n order: 7,\n title: `${SUB}.tasks`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_SYSTEM_HEALTH: AXPDefinitionCategory = {\n name: 'workflow-system-health',\n order: 8,\n title: `${SUB}.system-health`,\n};\n\nexport const AXP_WORKFLOW_DASHBOARD_SUB_USER: AXPDefinitionCategory = {\n name: 'workflow-user',\n order: 9,\n title: `${SUB}.user`,\n};\n\n//#endregion\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_ERRORS } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowErrorsBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.errorsBar,\n title: '@workflow-management:dashboard-widgets.workflow-errors-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-errors-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_ERRORS,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-errors-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-errors-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-errors-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.errorsByCategory,\n },\n },\n};\n","import { AXPHeatmapChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_ERRORS } from '../../workflow-dashboard-widget-subcategories';\n\n/**\n * Real-world use case:\n * Heatmap of workflow errors by activity/stage (Y) and day bucket (X).\n *\n * Typical interpretation:\n * - X: weekday (\"Mon\"..\"Sun\") or recent days (\"D-6\".. \"Today\")\n * - Y: activity name / step name (e.g. \"Approval\", \"Validation\", \"Notify\")\n * - value: error count\n * - label: optional preformatted tooltip value (e.g. \"12 errors\")\n *\n * DataSource contract (items):\n * - `{ x: string|number, y: string|number, value: number, label?: string }[]`\n */\nexport const AXMWorkflowErrorsHeatmapAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPHeatmapChartWidget.name,\n widget: {\n ...AXPHeatmapChartWidget,\n name: RootConfig.widgets.errorsHeatmap,\n title: '@workflow-management:dashboard-widgets.workflow-errors-heatmap.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-errors-heatmap.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_ERRORS,\n options: {\n showXAxis: true,\n showYAxis: true,\n showTooltip: true,\n // xAxisLabel: '@workflow-management:dashboard-widgets.workflow-errors-heatmap.x-axis-label',\n // yAxisLabel: '@workflow-management:dashboard-widgets.workflow-errors-heatmap.y-axis-label',\n cellPadding: 0.08,\n borderRadius: 3,\n animationEasing: 'cubic-out',\n animationDuration: 800,\n dataSource: RootConfig.dataSources.dashboardChart.errorsByActivityDayHeatmap,\n messages: {\n noData: '@workflow-management:dashboard-widgets.common.no-data',\n noDataHelp: '@workflow-management:dashboard-widgets.workflow-errors-heatmap.no-data-help',\n },\n },\n },\n};\n","import { AXPDonutChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_FAILURES } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowFailedProcessesByTypeDonutChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPDonutChartWidget.name,\n widget: {\n ...AXPDonutChartWidget,\n name: RootConfig.widgets.failedProcessesByTypeDonut,\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-by-type-donut.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-failed-processes-by-type-donut.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_FAILURES,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-by-type-donut.chart-title',\n dataSource: RootConfig.dataSources.dashboardChart.failedProcessesByType,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_FAILURES } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowFailedProcessesSummaryBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.failedProcessesSummaryBar,\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-summary-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-failed-processes-summary-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_FAILURES,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-summary-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-failed-processes-summary-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-failed-processes-summary-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.failedProcessesSummary,\n },\n },\n};\n","import { AXPLineChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_FAILURES } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowFailedProcessesTrendLineChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPLineChartWidget.name,\n widget: {\n ...AXPLineChartWidget,\n name: RootConfig.widgets.failedProcessesTrendLine,\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-trend-line.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-failed-processes-trend-line.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_FAILURES,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-failed-processes-trend-line.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-failed-processes-trend-line.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-failed-processes-trend-line.y-axis-label',\n fillArea: false,\n yAxisStartsAtZero: true,\n dataSource: RootConfig.dataSources.dashboardChart.failedProcessFailureTrend,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_FAILURES } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowStuckProcessesBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.stuckProcessesBar,\n title: '@workflow-management:dashboard-widgets.workflow-stuck-processes-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-stuck-processes-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_FAILURES,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-stuck-processes-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-stuck-processes-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-stuck-processes-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.stuckProcesses,\n },\n },\n};\n","import { AXPGaugeChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_SLA } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowGaugeChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPGaugeChartWidget.name,\n widget: {\n ...AXPGaugeChartWidget,\n name: RootConfig.widgets.gaugeChart,\n title: '@workflow-management:dashboard-widgets.workflow-gauge-chart.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-gauge-chart.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_SLA,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-gauge-chart.chart-title',\n label: '@workflow-management:dashboard-widgets.workflow-gauge-chart.gauge-label',\n dataSource: RootConfig.dataSources.dashboardChart.slaCompliance,\n minValue: 0,\n maxValue: 100,\n thresholds: [\n {\n value: 30,\n color: 'rgba(var(--ax-sys-color-danger-500))',\n label: '@workflow-management:dashboard-widgets.workflow-gauge-chart.threshold-low',\n },\n {\n value: 70,\n color: 'rgba(var(--ax-sys-color-warning-500))',\n label: '@workflow-management:dashboard-widgets.workflow-gauge-chart.threshold-medium',\n },\n {\n value: 100,\n color: 'rgba(var(--ax-sys-color-success-500))',\n label: '@workflow-management:dashboard-widgets.workflow-gauge-chart.threshold-high',\n },\n ],\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_SLA } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowSlaRiskPredictionBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.slaRiskPredictionBar,\n title: '@workflow-management:dashboard-widgets.workflow-sla-risk-prediction-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-sla-risk-prediction-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_SLA,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-sla-risk-prediction-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-risk-prediction-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-risk-prediction-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.slaRiskPrediction,\n },\n },\n};\n","import { AXPLineChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_SLA } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowSlaTrendLineChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPLineChartWidget.name,\n widget: {\n ...AXPLineChartWidget,\n name: RootConfig.widgets.slaTrendLine,\n title: '@workflow-management:dashboard-widgets.workflow-sla-trend-line.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-sla-trend-line.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_SLA,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-sla-trend-line.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-trend-line.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-trend-line.y-axis-label',\n fillArea: true,\n yAxisStartsAtZero: false,\n dataSource: RootConfig.dataSources.dashboardChart.slaComplianceTrend,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_SLA } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowSlaViolationsBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.slaViolationsBar,\n title: '@workflow-management:dashboard-widgets.workflow-sla-violations-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-sla-violations-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_SLA,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-sla-violations-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-violations-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-sla-violations-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.slaViolationsAndDelay,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_SYSTEM_HEALTH } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowSystemHealthBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.systemHealthBar,\n title: '@workflow-management:dashboard-widgets.workflow-system-health-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-system-health-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_SYSTEM_HEALTH,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-system-health-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-system-health-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-system-health-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.systemHealthSummary,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_TASKS } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowOverdueTasksBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.overdueTasksBar,\n title: '@workflow-management:dashboard-widgets.workflow-overdue-tasks-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-overdue-tasks-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_TASKS,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-overdue-tasks-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-overdue-tasks-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-overdue-tasks-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.overdueTasksByProcess,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_TASKS } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowPendingTasksByAgeBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.pendingTasksByAgeBar,\n title: '@workflow-management:dashboard-widgets.workflow-pending-tasks-by-age-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-pending-tasks-by-age-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_TASKS,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-pending-tasks-by-age-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-pending-tasks-by-age-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-pending-tasks-by-age-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.pendingTasksByAge,\n },\n },\n};\n","import { AXPLineChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowLineChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPLineChartWidget.name,\n widget: {\n ...AXPLineChartWidget,\n name: RootConfig.widgets.lineChart,\n title: '@workflow-management:dashboard-widgets.workflow-line-chart.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-line-chart.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-line-chart.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-line-chart.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-line-chart.y-axis-label',\n fillArea: false,\n /** Focus Y domain on the data range so the two series are readable (not squashed to the top band). */\n yAxisStartsAtZero: false,\n dataSource: RootConfig.dataSources.dashboardChart.throughputLast8Weeks,\n },\n },\n};\n","import { AXPFunnelChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT } from '../../workflow-dashboard-widget-subcategories';\n\n/**\n * Real-world use case:\n * A conversion funnel across workflow instance lifecycle stages (Created -> Assigned -> In progress -> Completed).\n *\n * DataSource contract (items):\n * - `{ name: string, value: number, color?: string }[]`\n */\nexport const AXMWorkflowInstanceConversionFunnelAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPFunnelChartWidget.name,\n widget: {\n ...AXPFunnelChartWidget,\n name: RootConfig.widgets.instanceConversionFunnel,\n title: '@workflow-management:dashboard-widgets.workflow-instance-conversion-funnel.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-instance-conversion-funnel.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT,\n options: {\n showLabels: true,\n showTooltip: true,\n neckWidth: 0.25,\n animationEasing: 'cubic-out',\n animationDuration: 800,\n margin: { top: 16, right: 16, bottom: 16, left: 16 },\n dataSource: RootConfig.dataSources.dashboardChart.instanceConversionFunnel,\n messages: {\n noData: '@workflow-management:dashboard-widgets.common.no-data',\n },\n },\n },\n};\n","import { AXPLineChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowThroughputDailyLineChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPLineChartWidget.name,\n widget: {\n ...AXPLineChartWidget,\n name: RootConfig.widgets.throughputDailyLine,\n title: '@workflow-management:dashboard-widgets.workflow-throughput-daily-line.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-throughput-daily-line.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-throughput-daily-line.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-throughput-daily-line.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-throughput-daily-line.y-axis-label',\n fillArea: false,\n yAxisStartsAtZero: false,\n dataSource: RootConfig.dataSources.dashboardChart.throughputDaily,\n },\n },\n};\n","import { AXPLineChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowThroughputWeeklyLineChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPLineChartWidget.name,\n widget: {\n ...AXPLineChartWidget,\n name: RootConfig.widgets.throughputWeeklyLine,\n title: '@workflow-management:dashboard-widgets.workflow-throughput-weekly-line.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-throughput-weekly-line.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_THROUGHPUT,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-throughput-weekly-line.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-throughput-weekly-line.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-throughput-weekly-line.y-axis-label',\n fillArea: false,\n yAxisStartsAtZero: false,\n dataSource: RootConfig.dataSources.dashboardChart.throughputWeekly,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowBottleneckBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.bottleneckBar,\n title: '@workflow-management:dashboard-widgets.workflow-bottleneck-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-bottleneck-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-bottleneck-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-bottleneck-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-bottleneck-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.bottleneckActivities,\n },\n },\n};\n","import { AXPDonutChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowDonutChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPDonutChartWidget.name,\n widget: {\n ...AXPDonutChartWidget,\n name: RootConfig.widgets.donutChart,\n title: '@workflow-management:dashboard-widgets.workflow-donut-chart.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-donut-chart.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-donut-chart.chart-title',\n dataSource: RootConfig.dataSources.dashboardChart.workloadByProcess,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowOverloadedUsersBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.overloadedUsersBar,\n title: '@workflow-management:dashboard-widgets.workflow-overloaded-users-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-overloaded-users-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-overloaded-users-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-overloaded-users-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-overloaded-users-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.workloadOverloadedUsers,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowWorkloadPerUserActiveBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.workloadPerUserActiveBar,\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-active-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-workload-per-user-active-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-active-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-active-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-active-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.workloadPerUserActive,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowWorkloadPerUserAvgAgeBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.workloadPerUserAvgAgeBar,\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-avg-age-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-workload-per-user-avg-age-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-avg-age-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-avg-age-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-avg-age-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.workloadPerUserAvgAgeHours,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD } from '../../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowWorkloadPerUserOverdueBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.workloadPerUserOverdueBar,\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-overdue-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-workload-per-user-overdue-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_WORKLOAD,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-workload-per-user-overdue-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-overdue-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-workload-per-user-overdue-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.workloadPerUserOverdue,\n },\n },\n};\n","import { AXPKpiDetailsWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_KPI } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowKpiDetailsAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPKpiDetailsWidget.name,\n widget: {\n ...AXPKpiDetailsWidget,\n name: RootConfig.widgets.kpiDetails,\n title: '@workflow-management:dashboard-widgets.workflow-kpi-details.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-kpi-details.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_KPI,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-kpi-details.options-title',\n subtitle: '@workflow-management:dashboard-widgets.workflow-kpi-details.options-subtitle',\n valueSuffix: '@workflow-management:dashboard-widgets.workflow-kpi-details.value-suffix',\n dataSource: RootConfig.dataSources.dashboardKpi.throughputOverview,\n },\n },\n};\n","import { AXPKpiProgressWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_KPI } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowKpiProgressAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPKpiProgressWidget.name,\n widget: {\n ...AXPKpiProgressWidget,\n name: RootConfig.widgets.kpiProgress,\n title: '@workflow-management:dashboard-widgets.workflow-kpi-progress.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-kpi-progress.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_KPI,\n options: {\n subtitle: '@workflow-management:dashboard-widgets.workflow-kpi-progress.options-subtitle',\n valueSuffix: '%',\n targetValue: 95,\n dataSource: RootConfig.dataSources.dashboardKpi.slaComplianceSnapshot,\n },\n },\n};\n","import { AXPKpiSegmentedWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_KPI } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowKpiSegmentedAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPKpiSegmentedWidget.name,\n widget: {\n ...AXPKpiSegmentedWidget,\n name: RootConfig.widgets.kpiSegmented,\n title: '@workflow-management:dashboard-widgets.workflow-kpi-segmented.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-kpi-segmented.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_KPI,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-kpi-segmented.options-title',\n dataSource: RootConfig.dataSources.dashboardKpi.taskStatusBreakdown,\n },\n },\n};\n","import { AXPKpiStatCardWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_KPI } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowKpiStatCardAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPKpiStatCardWidget.name,\n widget: {\n ...AXPKpiStatCardWidget,\n name: RootConfig.widgets.kpiStatCard,\n title: '@workflow-management:dashboard-widgets.workflow-kpi-stat-card.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-kpi-stat-card.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_KPI,\n options: {\n dataSource: RootConfig.dataSources.dashboardKpi.kpiStatCard,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_USER } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.barChart,\n title: '@workflow-management:dashboard-widgets.workflow-bar-chart.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-bar-chart.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_USER,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-bar-chart.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-bar-chart.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-bar-chart.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.pendingApproval,\n },\n },\n};\n","import { AXPBarChartWidget } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, type AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../../../contracts';\nimport { AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY } from '../workflow-dashboard-widget-category';\nimport { AXP_WORKFLOW_DASHBOARD_SUB_USER } from '../workflow-dashboard-widget-subcategories';\n\nexport const AXMWorkflowTasksNearDeadlineBarChartAXPExtendedWidget: AXPExtendedWidget = {\n parentName: AXPBarChartWidget.name,\n widget: {\n ...AXPBarChartWidget,\n name: RootConfig.widgets.tasksNearDeadlineBar,\n title: '@workflow-management:dashboard-widgets.workflow-tasks-near-deadline-bar.widget-title',\n description: '@workflow-management:dashboard-widgets.workflow-tasks-near-deadline-bar.widget-description',\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n categories: [AXP_WORKFLOW_DASHBOARD_WIDGET_CATEGORY],\n subCategory: AXP_WORKFLOW_DASHBOARD_SUB_USER,\n options: {\n title: '@workflow-management:dashboard-widgets.workflow-tasks-near-deadline-bar.chart-title',\n xAxisLabel: '@workflow-management:dashboard-widgets.workflow-tasks-near-deadline-bar.x-axis-label',\n yAxisLabel: '@workflow-management:dashboard-widgets.workflow-tasks-near-deadline-bar.y-axis-label',\n dataSource: RootConfig.dataSources.dashboardChart.tasksNearDeadline,\n },\n },\n};\n","//#region ---- Imports ----\n\nimport { AXPWidgetDefinitionProvider } from '@acorex/platform/layout/widget-core';\nimport type { AXPExtendedWidget } from '@acorex/platform/layout/widget-core';\nimport { Injectable } from '@angular/core';\nimport {\n AXMWorkflowBottleneckBarChartAXPExtendedWidget,\n AXMWorkflowDonutChartAXPExtendedWidget,\n AXMWorkflowErrorsBarChartAXPExtendedWidget,\n AXMWorkflowErrorsHeatmapAXPExtendedWidget,\n AXMWorkflowFailedProcessesByTypeDonutChartAXPExtendedWidget,\n AXMWorkflowFailedProcessesSummaryBarChartAXPExtendedWidget,\n AXMWorkflowFailedProcessesTrendLineChartAXPExtendedWidget,\n AXMWorkflowGaugeChartAXPExtendedWidget,\n AXMWorkflowInstanceConversionFunnelAXPExtendedWidget,\n AXMWorkflowLineChartAXPExtendedWidget,\n AXMWorkflowOverdueTasksBarChartAXPExtendedWidget,\n AXMWorkflowOverloadedUsersBarChartAXPExtendedWidget,\n AXMWorkflowPendingTasksByAgeBarChartAXPExtendedWidget,\n AXMWorkflowSlaRiskPredictionBarChartAXPExtendedWidget,\n AXMWorkflowSlaTrendLineChartAXPExtendedWidget,\n AXMWorkflowSlaViolationsBarChartAXPExtendedWidget,\n AXMWorkflowStuckProcessesBarChartAXPExtendedWidget,\n AXMWorkflowSystemHealthBarChartAXPExtendedWidget,\n AXMWorkflowThroughputDailyLineChartAXPExtendedWidget,\n AXMWorkflowThroughputWeeklyLineChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserActiveBarChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserAvgAgeBarChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserOverdueBarChartAXPExtendedWidget,\n} from './admin';\nimport {\n AXMWorkflowKpiDetailsAXPExtendedWidget,\n AXMWorkflowKpiProgressAXPExtendedWidget,\n AXMWorkflowKpiSegmentedAXPExtendedWidget,\n AXMWorkflowKpiStatCardAXPExtendedWidget,\n} from './kpi';\nimport { AXMWorkflowBarChartAXPExtendedWidget, AXMWorkflowTasksNearDeadlineBarChartAXPExtendedWidget } from './user';\n\n//#endregion\n\n//#region ---- Extended dashboard widgets ----\n\nconst WORKFLOW_DASHBOARD_EXTENDED_WIDGETS: AXPExtendedWidget[] = [\n AXMWorkflowBarChartAXPExtendedWidget,\n AXMWorkflowTasksNearDeadlineBarChartAXPExtendedWidget,\n AXMWorkflowSystemHealthBarChartAXPExtendedWidget,\n AXMWorkflowThroughputDailyLineChartAXPExtendedWidget,\n AXMWorkflowThroughputWeeklyLineChartAXPExtendedWidget,\n AXMWorkflowLineChartAXPExtendedWidget,\n AXMWorkflowGaugeChartAXPExtendedWidget,\n AXMWorkflowSlaViolationsBarChartAXPExtendedWidget,\n AXMWorkflowSlaTrendLineChartAXPExtendedWidget,\n AXMWorkflowSlaRiskPredictionBarChartAXPExtendedWidget,\n AXMWorkflowPendingTasksByAgeBarChartAXPExtendedWidget,\n AXMWorkflowOverdueTasksBarChartAXPExtendedWidget,\n AXMWorkflowDonutChartAXPExtendedWidget,\n AXMWorkflowBottleneckBarChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserActiveBarChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserOverdueBarChartAXPExtendedWidget,\n AXMWorkflowWorkloadPerUserAvgAgeBarChartAXPExtendedWidget,\n AXMWorkflowOverloadedUsersBarChartAXPExtendedWidget,\n AXMWorkflowFailedProcessesSummaryBarChartAXPExtendedWidget,\n AXMWorkflowFailedProcessesTrendLineChartAXPExtendedWidget,\n AXMWorkflowFailedProcessesByTypeDonutChartAXPExtendedWidget,\n AXMWorkflowStuckProcessesBarChartAXPExtendedWidget,\n AXMWorkflowErrorsBarChartAXPExtendedWidget,\n AXMWorkflowErrorsHeatmapAXPExtendedWidget,\n AXMWorkflowInstanceConversionFunnelAXPExtendedWidget,\n AXMWorkflowKpiProgressAXPExtendedWidget,\n AXMWorkflowKpiSegmentedAXPExtendedWidget,\n AXMWorkflowKpiDetailsAXPExtendedWidget,\n AXMWorkflowKpiStatCardAXPExtendedWidget,\n];\n\n//#endregion\n\n//#region ---- Provider ----\n\n/**\n * Registers workflow dashboard extended widgets (admin/user chart widgets).\n */\n@Injectable()\nexport class AXMWorkflowDashboardWidgetsProvider implements AXPWidgetDefinitionProvider {\n getWidgets() {\n return [];\n }\n\n getExtendedWidgets() {\n return WORKFLOW_DASHBOARD_EXTENDED_WIDGETS;\n }\n}\n\n//#endregion\n","import { Injectable, inject } from '@angular/core';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXStyleColorType } from '@acorex/cdk/common';\n\n//#region ---- Types ----\n\n/**\n * Input for ShowConfirmPopup activity.\n */\nexport interface ShowConfirmPopupInput {\n /**\n * Title of the confirmation dialog\n */\n title: string;\n\n /**\n * Message/content of the confirmation dialog\n */\n message: string;\n\n /**\n * Dialog type/color (e.g., 'warning', 'danger', 'info', 'success')\n */\n type?: AXStyleColorType;\n\n /**\n * Button layout direction ('horizontal' or 'vertical')\n */\n direction?: 'horizontal' | 'vertical';\n\n /**\n * Whether dialog is closable\n */\n closable?: boolean;\n\n /**\n * Default action button ('confirm' or 'cancel')\n */\n defaultAction?: 'confirm' | 'cancel';\n}\n\n/**\n * Output for ShowConfirmPopup activity.\n * Outcome is determined by the outcomes object (ok or cancel).\n */\nexport interface ShowConfirmPopupOutput {\n // No output data needed - outcome is determined by outcomes\n}\n\n//#endregion\n\n/**\n * ShowConfirmPopup Activity (Frontend)\n * \n * Shows a confirmation popup dialog with OK and Cancel buttons.\n * This activity runs on the frontend and requires user interaction.\n * \n * Execution Mode: frontend\n * Activity Type: workflow-activity:show-confirm-popup\n * \n * Outcomes:\n * - ok: User clicked OK button\n * - cancel: User clicked Cancel button or closed the dialog\n */\n@Injectable()\nexport class ShowConfirmPopupActivity implements AXPCommand<ShowConfirmPopupInput, ShowConfirmPopupOutput> {\n //#region ---- Services & Dependencies ----\n\n private readonly dialogService = inject(AXDialogService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- AXPCommand Implementation ----\n\n async execute(\n input: ShowConfirmPopupInput,\n ): Promise<AXPExecuteCommandResult<ShowConfirmPopupOutput>> {\n try {\n // Translate title and message if they are translation keys\n const title = await this.translationService.translateAsync(input.title);\n const message = await this.translationService.translateAsync(input.message);\n\n // Show confirmation dialog\n const dialogResult = await this.dialogService.confirm(\n title,\n message,\n input.type || 'warning',\n input.direction || 'horizontal',\n input.closable ?? false,\n input.defaultAction || 'cancel',\n );\n\n const confirmed = dialogResult.result === true;\n const outcome = confirmed ? 'ok' : 'cancel';\n\n console.log(`[ShowConfirmPopupActivity] User ${confirmed ? 'confirmed' : 'cancelled'} the dialog`);\n\n return {\n success: true,\n data: {} as ShowConfirmPopupOutput,\n metadata: {\n outcome,\n },\n };\n } catch (error: any) {\n console.error(`[ShowConfirmPopupActivity] Failed to show confirm popup:`, error);\n\n return {\n success: false,\n message: {\n text: error.message || 'Failed to show confirmation dialog',\n },\n data: {} as ShowConfirmPopupOutput,\n metadata: {\n outcome: 'cancel',\n },\n };\n }\n }\n\n //#endregion\n}\n\n","//#region ---- Imports ----\n\nimport { AXPopupService, AXPopupSizeType } from '@acorex/components/popup';\nimport { AXPActionMenuItem, AXPExecuteCommandResult } from '@acorex/platform/core';\nimport {\n AXPDialogRendererComponent,\n DialogRendererConfig,\n DialogRendererResult,\n} from '@acorex/platform/layout/builder';\nimport { AXPWidgetNode, AXPWidgetSerializationHelper } from '@acorex/platform/layout/widget-core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { Injectable, inject } from '@angular/core';\nimport { cloneDeep } from 'lodash-es';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Input for ShowLayoutPopup activity.\n */\nexport interface ShowLayoutPopupInput {\n /**\n * Layout definition as JSON string or AXPWidgetNode object\n */\n layout: string | AXPWidgetNode;\n\n /**\n * Dialog title\n */\n title?: string;\n\n /**\n * Dialog size\n */\n size?: AXPopupSizeType;\n\n /**\n * Whether to show close button\n */\n closeButton?: boolean;\n\n /**\n * Initial context data for the form\n */\n context?: Record<string, any>;\n\n /**\n * Dialog actions (buttons) to display in footer\n * Each action will create a corresponding outcome\n */\n actions?: {\n prefix?: AXPActionMenuItem[];\n suffix?: AXPActionMenuItem[];\n };\n}\n\n//#endregion\n\n/**\n * ShowLayoutPopup Activity (Frontend)\n *\n * Shows a popup dialog with a custom layout built using layout builder.\n * The layout can be provided as JSON string or AXPWidgetNode object.\n *\n * Execution Mode: frontend\n * Activity Type: workflow-activity:show-layout-popup\n *\n * Outcomes:\n * Outcomes are dynamically generated based on the actions provided in the input.\n * Each action creates a corresponding outcome with the action name (from command.name or action.name).\n * If no actions are provided, default actions (cancel, submit) are used.\n *\n * Examples:\n * - If action has command.name = 'save', outcome will be { save: true }\n * - If action has name = 'delete', outcome will be { delete: true }\n * - Default outcomes: { cancel: true } or { submit: true }\n */\n@Injectable()\nexport class ShowLayoutPopupActivity implements AXPCommand<ShowLayoutPopupInput, Record<string, any>> {\n //#region ---- Services & Dependencies ----\n\n private readonly popupService = inject(AXPopupService);\n\n //#endregion\n\n //#region ---- AXPCommand Implementation ----\n\n async execute(input: ShowLayoutPopupInput): Promise<AXPExecuteCommandResult<Record<string, any>>> {\n try {\n // Parse layout definition\n let layoutNode: AXPWidgetNode;\n\n if (typeof input.layout === 'string') {\n // If it's a JSON string, parse it\n try {\n layoutNode = AXPWidgetSerializationHelper.fromJson(input.layout);\n } catch (error: any) {\n throw new Error(`Invalid layout JSON: ${error.message}`);\n }\n } else {\n // If it's already an object, use it directly (clone to avoid mutations)\n layoutNode = cloneDeep(input.layout);\n }\n\n // Validate layout node\n if (!layoutNode || !layoutNode.type) {\n throw new Error('Invalid layout: missing type property');\n }\n\n // Build actions from input or use defaults\n const actions = input.actions || {\n suffix: [\n {\n title: '@general:actions.cancel.title',\n icon: 'fa-times',\n color: 'default',\n command: { name: 'cancel' },\n },\n {\n title: '@general:actions.submit.title',\n icon: 'fa-check',\n color: 'primary',\n command: { name: 'submit', options: { validate: true } },\n },\n ],\n };\n\n // Create dialog configuration\n const dialogConfig: DialogRendererConfig = {\n title: input.title || 'Dialog',\n context: input.context || {},\n definition: layoutNode,\n actions: {\n footer: {\n prefix: actions.prefix || [],\n suffix: actions.suffix || [],\n },\n },\n };\n\n // Show dialog using AXPDialogRendererComponent. Close dialog before resolving so UI is updated before workflow continues.\n const dialogResult = await new Promise<DialogRendererResult>((resolve) => {\n this.popupService.open(AXPDialogRendererComponent, {\n title: dialogConfig.title,\n size: input.size || 'md',\n closeButton: input.closeButton !== undefined ? input.closeButton : true,\n closeOnBackdropClick: false,\n draggable: false,\n data: {\n config: dialogConfig,\n callBack: (result: any) => {\n if (typeof result?.close === 'function') {\n result.close();\n }\n resolve({\n context: result?.context?.() ?? dialogConfig.context,\n action: result?.action ? result.action() : 'cancel',\n });\n },\n },\n });\n });\n\n // Extract result data and action\n const result = dialogResult?.context || {};\n let actionName = 'cancel'; // Default action\n\n const rawActionFromDialog = dialogResult?.action;\n let resolvedAction: string | { name?: string } | undefined;\n\n if (rawActionFromDialog) {\n resolvedAction = rawActionFromDialog;\n }\n\n if (typeof resolvedAction === 'string') {\n actionName = resolvedAction;\n } else if (typeof resolvedAction === 'object' && resolvedAction && 'name' in resolvedAction) {\n actionName = resolvedAction.name ?? 'cancel';\n }\n const action = actionName;\n\n console.log(`[ShowLayoutPopupActivity] Dialog closed with action: ${action}`, result);\n\n return {\n success: true,\n data: result,\n metadata: {\n outcome: action,\n },\n };\n } catch (error: any) {\n console.error(`[ShowLayoutPopupActivity] Failed to show layout popup:`, error);\n\n return {\n success: false,\n message: {\n text: error.message || 'Failed to show layout popup',\n },\n data: {},\n metadata: {\n outcome: 'cancel',\n },\n };\n }\n }\n\n //#endregion\n}\n","//#region ---- Imports ----\n\nimport { Injectable } from '@angular/core';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Input for Human Task activity.\n */\nexport interface HumanTaskInput {\n /**\n * Task title\n */\n title?: string;\n\n /**\n * Task description\n */\n description?: string;\n\n /**\n * Assigned user IDs (direct assignment)\n */\n assignedUserIds?: string[];\n\n /**\n * Candidate user IDs (users who can claim the task)\n */\n candidateUserIds?: string[];\n\n /**\n * Candidate role IDs (roles whose members can claim the task)\n */\n candidateRoleIds?: string[];\n\n /**\n * Task priority\n */\n priority?: 'Low' | 'Normal' | 'High' | 'Urgent';\n\n /**\n * Task due date (ISO date string or Date)\n */\n dueDate?: string | Date;\n\n /**\n * Initial context data for the form\n */\n context?: Record<string, any>;\n\n /**\n * Actions (buttons) for this task. Format: { prefix?: Array<Action>, suffix?: Array<Action> } (or JSON string).\n * Each action name becomes an outcome when the task is completed.\n */\n actions?: { prefix?: Array<{ name?: string; command?: { name?: string } }>; suffix?: Array<{ name?: string; command?: { name?: string } }> } | string;\n}\n\n/**\n * Output for Human Task activity.\n */\nexport interface HumanTaskOutput {\n /**\n * Result data from task completion (form values)\n */\n result: Record<string, any>;\n\n /**\n * Action that was clicked (e.g., 'approve', 'reject', 'cancel')\n */\n action: string;\n}\n\n//#endregion\n\n/**\n * Human Task Activity (Frontend)\n * \n * Generic human task activity that suspends workflow and waits for user interaction.\n * Supports assignment and actions (displayed inline). For dialog-style flow, use a follow-up activity.\n * \n * Execution Mode: frontend\n * Task Type: human-task\n * Activity Type: workflow-activity:human-task\n * \n * Outcomes:\n * Outcomes are dynamically generated based on the actions provided in the input.\n * Each action creates a corresponding outcome with the action name (from command.name or action.name).\n * If no actions are provided, default actions (cancel, submit) are used.\n * \n * Examples:\n * - If action has command.name = 'approve', outcome will be { approve: true }\n * - If action has name = 'reject', outcome will be { reject: true }\n * - Default outcomes: { cancel: true } or { submit: true }\n * \n * Assignment:\n * - assignedUserIds: Direct assignment to specific users\n * - candidateUserIds: Users who can claim the task\n * - candidateRoleIds: Roles whose members can claim the task\n * \n * Display Modes:\n * - 'dialog': Traditional modal dialog (default)\n * - 'inline': Actions displayed directly on page before resume\n */\n@Injectable()\nexport class HumanTaskActivity implements AXPCommand<HumanTaskInput, HumanTaskOutput> {\n //#region ---- Services & Dependencies ----\n\n // Note: This activity doesn't execute immediately - it suspends the workflow\n // The actual UI display is handled by the Generic Task Provider and Display Service\n\n //#endregion\n\n //#region ---- AXPCommand Implementation ----\n\n /**\n * Execute human task activity.\n * \n * This method doesn't actually show UI - it just validates input and returns success.\n * The workflow engine will suspend at this activity and create a bookmark.\n * The Generic Task Provider will handle displaying the task UI inline.\n */\n async execute(input: HumanTaskInput): Promise<AXPExecuteCommandResult<HumanTaskOutput>> {\n console.log('human task input', input.context?.['input'] ?? 'no input');\n\n try {\n // Validate required fields\n if (!input.title && !input.description) {\n console.warn('[HumanTaskActivity] No title or description provided');\n }\n\n // Build available outcomes from actions (dynamic) or default submit/cancel\n const availableOutcomes: string[] = [];\n const rawActions = input.actions;\n if (rawActions) {\n try {\n const actions = typeof rawActions === 'string' ? JSON.parse(rawActions) : rawActions;\n const prefix = actions?.prefix ?? [];\n const suffix = actions?.suffix ?? [];\n for (const item of [...prefix, ...suffix]) {\n const name = item?.command?.name ?? item?.name;\n if (name && typeof name === 'string') availableOutcomes.push(name);\n }\n } catch {\n // ignore parse error\n }\n }\n if (availableOutcomes.length === 0) {\n availableOutcomes.push('cancel', 'submit');\n }\n\n // This activity suspends the workflow - the actual result will come from resume\n // Return a placeholder result - the real result comes when user completes the task\n return {\n success: true,\n data: {\n result: input.context || {},\n action: 'pending', // Will be replaced when task is completed\n },\n metadata: {\n outcome: 'pending',\n },\n };\n } catch (error: any) {\n console.error(`[HumanTaskActivity] Failed to execute human task:`, error);\n\n return {\n success: false,\n message: {\n text: error.message || 'Failed to execute human task',\n },\n data: {\n result: {},\n action: 'cancel',\n },\n metadata: {\n outcome: 'cancel',\n },\n };\n }\n }\n\n //#endregion\n}\n","//#region ---- Imports ----\n\nimport { Injectable } from '@angular/core';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Input for Cartable (pooled) task activity.\n * Does not use direct assignment: only candidates may claim the task on the task board.\n */\nexport interface CartableTaskInput {\n title?: string;\n description?: string;\n candidateUserIds?: string[];\n candidateRoleIds?: string[];\n priority?: 'Low' | 'Normal' | 'High' | 'Urgent';\n dueDate?: string | Date;\n context?: Record<string, any>;\n actions?: { prefix?: Array<{ name?: string; command?: { name?: string } }>; suffix?: Array<{ name?: string; command?: { name?: string } }> } | string;\n}\n\nexport interface CartableTaskOutput {\n result: Record<string, any>;\n action: string;\n}\n\n//#endregion\n\n/**\n * Cartable task activity (frontend): suspends workflow with candidate users only.\n * Assignee is set when a candidate claims the task on the task board (bookmark update).\n *\n * Activity Type: workflow-activity:cartable\n */\n@Injectable()\nexport class CartableTaskActivity implements AXPCommand<CartableTaskInput, CartableTaskOutput> {\n //#region ---- AXPCommand Implementation ----\n\n async execute(input: CartableTaskInput): Promise<AXPExecuteCommandResult<CartableTaskOutput>> {\n console.log('[CartableTaskActivity] input', input.context?.['input'] ?? 'no input');\n\n try {\n if (!input.title && !input.description) {\n console.warn('[CartableTaskActivity] No title or description provided');\n }\n\n const availableOutcomes: string[] = [];\n const rawActions = input.actions;\n if (rawActions) {\n try {\n const actions = typeof rawActions === 'string' ? JSON.parse(rawActions) : rawActions;\n const prefix = actions?.prefix ?? [];\n const suffix = actions?.suffix ?? [];\n for (const item of [...prefix, ...suffix]) {\n const name = item?.command?.name ?? item?.name;\n if (name && typeof name === 'string') availableOutcomes.push(name);\n }\n } catch {\n // ignore parse error\n }\n }\n if (availableOutcomes.length === 0) {\n availableOutcomes.push('cancel', 'submit');\n }\n\n return {\n success: true,\n data: {\n result: input.context || {},\n action: 'pending',\n },\n metadata: {\n outcome: 'pending',\n },\n };\n } catch (error: unknown) {\n console.error(`[CartableTaskActivity] Failed to execute:`, error);\n\n return {\n success: false,\n message: {\n text: error instanceof Error ? error.message : 'Failed to execute cartable task',\n },\n data: {\n result: {},\n action: 'cancel',\n },\n metadata: {\n outcome: 'cancel',\n },\n };\n }\n }\n\n //#endregion\n}\n","import { Injectable, inject } from '@angular/core';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXStyleColorType } from '@acorex/cdk/common';\n\n//#region ---- Types ----\n\n/**\n * Input for ShowToast activity.\n */\nexport interface ShowToastInput {\n /**\n * Message/content of the toast\n */\n message: string;\n\n /**\n * Toast type/color (e.g., 'success', 'danger', 'info', 'warning')\n */\n type?: AXStyleColorType;\n\n /**\n * Toast title (optional)\n */\n title?: string;\n\n /**\n * Whether to show close button\n */\n closeButton?: boolean;\n\n /**\n * Timeout in milliseconds (0 = no timeout)\n */\n timeOut?: number;\n\n /**\n * Whether to show timeout progress\n */\n timeOutProgress?: boolean;\n}\n\n/**\n * Wrapper used when {@link ShowToastActivity} is invoked from entity/command dispatchers\n * (`__context__.options` mirrors toolbar `command.options`).\n */\nexport interface ShowToastEntityCommandEnvelope {\n __context__?: {\n options?: ShowToastInput;\n };\n options?: ShowToastInput;\n}\n\n/** Plain toast fields or entity-toolbar envelope — both are supported. */\nexport type ShowToastCommandInput = ShowToastInput | ShowToastEntityCommandEnvelope;\n\n/**\n * Output for ShowToast activity.\n */\nexport interface ShowToastOutput {\n // No output data needed - toast is just a notification\n}\n\n//#endregion\n\n/**\n * ShowToast Activity (Frontend)\n *\n * Shows a toast notification message to the user.\n * This activity runs on the frontend and displays a temporary notification.\n *\n * Execution Mode: frontend\n * Activity Type: workflow-activity:show-toast\n *\n * Outcomes:\n * - done: Toast was displayed successfully\n */\n@Injectable()\nexport class ShowToastActivity implements AXPCommand<ShowToastCommandInput, ShowToastOutput> {\n //#region ---- Services & Dependencies ----\n\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- AXPCommand Implementation ----\n\n async execute(input: ShowToastCommandInput): Promise<AXPExecuteCommandResult<ShowToastOutput>> {\n try {\n const toastInput = ShowToastActivity.resolvePayload(input);\n\n const message = await this.translationService.translateAsync(toastInput.message);\n const title = toastInput.title\n ? await this.translationService.translateAsync(toastInput.title)\n : undefined;\n\n this.toastService.show({\n color: toastInput.type || 'default',\n title: title,\n content: message,\n closeButton: toastInput.closeButton ?? true,\n timeOut: toastInput.timeOut ?? 3000,\n timeOutProgress: toastInput.timeOutProgress ?? false,\n });\n\n return {\n success: true,\n data: {} as ShowToastOutput,\n metadata: {\n outcome: 'done',\n },\n };\n } catch (error: any) {\n console.error(`[ShowToastActivity] Failed to show toast:`, error);\n\n return {\n success: false,\n message: {\n text: error.message || 'Failed to show toast notification',\n },\n data: {} as ShowToastOutput,\n metadata: {\n outcome: 'failed',\n },\n };\n }\n }\n\n /**\n * Resolves {@link ShowToastInput} from a direct workflow payload or entity command envelope.\n */\n private static resolvePayload(input: ShowToastCommandInput): ShowToastInput {\n const direct = ShowToastActivity.tryDirectPayload(input);\n if (direct !== null) {\n return direct;\n }\n\n const envelope = input as ShowToastEntityCommandEnvelope;\n const fromContext = envelope.__context__?.options;\n if (fromContext !== undefined && ShowToastActivity.tryDirectPayload(fromContext) !== null) {\n return fromContext;\n }\n const fromOptions = envelope.options;\n if (fromOptions !== undefined && ShowToastActivity.tryDirectPayload(fromOptions) !== null) {\n return fromOptions;\n }\n\n throw new Error(\n 'ShowToastActivity: expected ShowToastInput or envelope with __context__.options / options containing message.',\n );\n }\n\n private static tryDirectPayload(value: ShowToastCommandInput): ShowToastInput | null {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'message' in value &&\n typeof (value as ShowToastInput).message === 'string'\n ) {\n return value as ShowToastInput;\n }\n return null;\n }\n\n //#endregion\n}\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPLayoutBuilderService } from '@acorex/platform/layout/builder';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { Injectable, inject } from '@angular/core';\nimport { isEmpty, isString, trim } from 'lodash-es';\n\n//#endregion\n\n//#region ---- Types ----\n\n/** Input for the sign-off activity (approval with digital signature). */\nexport interface SignOffActivityInput {\n /** Optional dialog message; translated when it is an i18n key. */\n message?: string;\n /** Optional entity record id for workflow context. */\n refId?: string;\n /** Optional entity type key (`Module.Entity`). */\n refType?: string;\n}\n\n/** Output when the user completes or cancels sign-off. */\nexport interface SignOffActivityOutput {\n signature: string;\n note?: string;\n signedAt: string;\n}\n\n//#endregion\n\n//#region ---- Sign-Off Activity ----\n\n/**\n * Sign-off activity (frontend).\n *\n * Collects a required digital signature and optional note from the current user.\n * Use after review/approval paths in workflows that require an auditable sign-off.\n *\n * Activity type: `workflow-activity:sign-off`\n * Outcomes: `Signed` | `Cancelled`\n */\n@Injectable()\nexport class SignOffActivity implements AXPCommand<SignOffActivityInput, SignOffActivityOutput> {\n //#region ---- Services & Dependencies ----\n\n private readonly layoutBuilder = inject(AXPLayoutBuilderService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(input: SignOffActivityInput): Promise<AXPExecuteCommandResult<SignOffActivityOutput>> {\n try {\n const message = input.message\n ? await this.translationService.translateAsync(input.message)\n : await this.translationService.translateAsync(\n '@workflow-management:sign-off.activities.sign-off.default-message',\n );\n\n const dialogResult = await this.showSignOffDialog(message);\n\n if (dialogResult.cancelled) {\n return {\n success: true,\n data: {\n signature: '',\n signedAt: new Date().toISOString(),\n },\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n const signedAt = new Date().toISOString();\n\n return {\n success: true,\n data: {\n signature: dialogResult.signature,\n note: dialogResult.note,\n signedAt,\n },\n metadata: {\n outcome: 'Signed',\n },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to collect sign-off';\n\n return {\n success: false,\n message: {\n text: message,\n },\n data: {\n signature: '',\n signedAt: new Date().toISOString(),\n },\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n }\n\n //#endregion\n\n //#region ---- Dialog ----\n\n private async showSignOffDialog(\n message: string,\n ): Promise<{ signature: string; note?: string; cancelled: boolean }> {\n const result = await this.layoutBuilder\n .create()\n .dialog<{ signature: string; note?: string; cancelled: boolean }>((dialog) => {\n dialog\n .setTitle('@workflow-management:sign-off.activities.sign-off.dialog-title')\n .setMessage(message)\n .setContext({ signature: '', note: '' })\n .content((flex) => {\n flex\n .setDirection('column')\n .formField('@workflow-management:sign-off.activities.sign-off.note-label', (field) => {\n field.path('note');\n field.largeTextBox({\n placeholder: '@workflow-management:sign-off.activities.sign-off.note-placeholder',\n maxLength: 1000,\n });\n })\n .formField('@workflow-management:sign-off.activities.sign-off.signature-label', (field) => {\n field.path('signature');\n field.customWidget(AXPWidgetsList.Editors.SignatureBox, {\n validations: [\n {\n rule: 'required',\n options: {\n message: '@workflow-management:sign-off.activities.sign-off.signature-required',\n },\n },\n ],\n });\n });\n })\n .setActions((actions) => {\n actions\n .cancel('@general:actions.cancel.title')\n .submit('@workflow-management:sign-off.activities.sign-off.submit-text');\n })\n .onAction(async (dialogRef) => {\n const context = dialogRef.context();\n const action = dialogRef.action();\n if (!context || action === 'cancel') {\n return { signature: '', note: undefined, cancelled: true };\n }\n const formData = context as { signature?: string; note?: string };\n const signature = isString(formData.signature) ? trim(formData.signature) : '';\n if (isEmpty(signature)) {\n return { signature: '', note: undefined, cancelled: true };\n }\n return {\n signature,\n note: formData.note,\n cancelled: false,\n };\n });\n })\n .show();\n\n return result;\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPLayoutBuilderService } from '@acorex/platform/layout/builder';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { Injectable, inject } from '@angular/core';\nimport { defaultTo, isEmpty, isString, trim } from 'lodash-es';\n\n//#endregion\n\n//#region ---- Types ----\n\n/** Input for the rejection-reason activity. */\nexport interface RejectionReasonActivityInput {\n /** Optional dialog message; translated when it is an i18n key. */\n message?: string;\n /** When true, reason must be non-empty before submit (default: true). */\n requireReason?: boolean;\n}\n\n/** Output when the user submits or cancels the rejection dialog. */\nexport interface RejectionReasonActivityOutput {\n reason: string;\n note?: string;\n rejectedAt: string;\n}\n\n//#endregion\n\n//#region ---- Rejection Reason Activity ----\n\n/**\n * Rejection-reason activity (frontend).\n *\n * Shows a dialog to capture rejection reason and optional note.\n * Use on workflow reject branches instead of ad-hoc show-layout-popup layouts.\n *\n * Activity type: `workflow-activity:rejection-reason`\n * Outcomes: `Submitted` | `Cancelled`\n */\n@Injectable()\nexport class RejectionReasonActivity implements AXPCommand<\n RejectionReasonActivityInput,\n RejectionReasonActivityOutput\n> {\n //#region ---- Services & Dependencies ----\n\n private readonly layoutBuilder = inject(AXPLayoutBuilderService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(\n input: RejectionReasonActivityInput,\n ): Promise<AXPExecuteCommandResult<RejectionReasonActivityOutput>> {\n try {\n const requireReason = input.requireReason !== false;\n const message = input.message\n ? await this.translationService.translateAsync(input.message)\n : await this.translationService.translateAsync(\n '@workflow-management:sign-off.activities.rejection-reason.message',\n );\n\n const dialogResult = await this.showRejectionDialog(message, requireReason);\n\n if (dialogResult.cancelled) {\n return {\n success: true,\n data: {\n reason: '',\n rejectedAt: new Date().toISOString(),\n },\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n return {\n success: true,\n data: {\n reason: dialogResult.reason,\n note: dialogResult.note,\n rejectedAt: new Date().toISOString(),\n },\n metadata: {\n outcome: 'Submitted',\n },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to capture rejection reason';\n\n return {\n success: false,\n message: {\n text: message,\n },\n data: {\n reason: '',\n rejectedAt: new Date().toISOString(),\n },\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n }\n\n //#endregion\n\n //#region ---- Dialog ----\n\n private async showRejectionDialog(\n message: string,\n requireReason: boolean,\n ): Promise<{ reason: string; note?: string; cancelled: boolean }> {\n const reasonValidations = requireReason\n ? [\n {\n rule: 'required' as const,\n options: {\n message: '@workflow-management:sign-off.activities.rejection-reason.reason-required',\n },\n },\n ]\n : [];\n\n const result = await this.layoutBuilder\n .create()\n .dialog<{ reason: string; note?: string; cancelled: boolean }>((dialog) => {\n dialog\n .setTitle('@general:actions.reject.title')\n .setMessage(message)\n .setContext({ reason: '', note: '' })\n .content((flex) => {\n flex\n .setDirection('column')\n .formField('@workflow-management:sign-off.activities.rejection-reason.reason-label', (field) => {\n field.path('reason');\n field.largeTextBox({\n placeholder:\n '@workflow-management:sign-off.activities.rejection-reason.reason-placeholder',\n maxLength: 500,\n validations: reasonValidations,\n });\n })\n .formField('@workflow-management:sign-off.activities.rejection-reason.note-label', (field) => {\n field.path('note');\n field.largeTextBox({\n placeholder: '@workflow-management:sign-off.activities.rejection-reason.note-placeholder',\n maxLength: 1000,\n });\n });\n })\n .setActions((actions) => {\n actions\n .cancel('@general:actions.cancel.title')\n .submit('@general:actions.reject.title');\n })\n .onAction(async (dialogRef) => {\n const context = dialogRef.context();\n const action = dialogRef.action();\n if (!context || action === 'cancel') {\n return { reason: '', note: undefined, cancelled: true };\n }\n const formData = context as { reason?: string; note?: string };\n const reason = isString(formData.reason) ? trim(formData.reason) : '';\n if (requireReason && isEmpty(reason)) {\n return { reason: '', note: undefined, cancelled: true };\n }\n return {\n reason: defaultTo(reason, ''),\n note: formData.note,\n cancelled: false,\n };\n });\n })\n .show();\n\n return result;\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPEntityDefinitionRegistryService, AXPEntityFormBuilderService } from '@acorex/platform/layout/entity';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { merge } from 'lodash-es';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Input for Create Entity Form activity.\n */\nexport interface CreateEntityFormInput {\n /**\n * Module name (e.g. HumanCapitalManagement)\n */\n module: string;\n\n /**\n * Entity name (e.g. LeaveRequest)\n */\n entity: string;\n\n /**\n * If true, form only collects data and the next workflow step (e.g. entity-create) persists.\n * If false, entity create is executed on frontend and outcome is 'Done'.\n */\n persistInWorkflow?: boolean;\n\n /**\n * Property names to show. Only these properties are displayed. If both includes and excludes are set, only includes is applied.\n */\n includes?: string[];\n\n /**\n * Property names to hide. Ignored when includes is also set.\n */\n excludes?: string[];\n\n /**\n * Property names that should be displayed as readonly.\n */\n readonlys?: string[];\n\n /**\n * Default values for form properties. Keys are property names; filled values are applied as initial context.\n */\n data?: Record<string, any>;\n}\n\n/**\n * Output for Create Entity Form activity.\n */\nexport interface CreateEntityFormOutput {\n /**\n * Form data for the next workflow step (when persistInWorkflow is true).\n */\n result?: Record<string, any>;\n\n /**\n * Created entity ID (when persistInWorkflow is false and entity create succeeds).\n */\n id?: string;\n}\n\n//#endregion\n\n/**\n * Create Entity Form Activity (Frontend)\n *\n * Shows a create-entity form as an interactive dialog. When persistInWorkflow is true,\n * returns form data and outcome 'Submitted'/'Cancelled' so the workflow handles persistence.\n * When false, executes entity create on frontend and returns outcome 'Done'.\n *\n * Execution Mode: frontend\n * Task Type: human-task\n * Activity Type: workflow-activity:create-entity-form\n *\n * Outcomes:\n * - Submitted: User submitted form (persistInWorkflow true → next step persists)\n * - Cancelled: User cancelled the form\n * - Done: Entity was created on frontend (persistInWorkflow false)\n */\n@Injectable()\nexport class CreateEntityFormActivity implements AXPCommand<CreateEntityFormInput, CreateEntityFormOutput> {\n //#region ---- Services & Dependencies ----\n\n private readonly entityForm = inject(AXPEntityFormBuilderService);\n private readonly entityService = inject(AXPEntityDefinitionRegistryService);\n private readonly translationService = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Public Methods ----\n\n async execute(\n input: CreateEntityFormInput\n ): Promise<AXPExecuteCommandResult<CreateEntityFormOutput>> {\n const {\n module,\n entity,\n persistInWorkflow = false,\n includes,\n excludes,\n readonlys,\n data,\n } = input;\n\n if (!module || !entity) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-identifier'),\n },\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n try {\n const entityRef = await this.entityService.resolve(module, entity);\n\n const includeList = this.normalizePropertyList(includes);\n const excludeList = this.normalizePropertyList(excludes);\n const readonlyList = this.normalizePropertyList(readonlys);\n const initialData = this.normalizeData(data);\n\n let chain = this.entityForm.entity(`${module}.${entity}`).create(initialData);\n\n if (includeList.length > 0) {\n chain = chain.include(...includeList);\n } else if (excludeList.length > 0) {\n chain = chain.exclude(...excludeList);\n }\n\n if (readonlyList.length > 0) {\n chain = chain.readonlyProperties(...readonlyList);\n }\n\n chain.actions((actions) => {\n actions.cancel('@general:actions.cancel.title');\n actions.submit('@general:actions.create.title');\n });\n\n const result = await chain\n .onAction<AXPExecuteCommandResult<CreateEntityFormOutput>>(async (dialogRef) => {\n const action = dialogRef.action();\n\n if (action === 'cancel') {\n return {\n success: true,\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n if (action !== 'submit') {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-action'),\n },\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n const context = merge({}, initialData, dialogRef.context());\n\n if (persistInWorkflow) {\n return {\n success: true,\n data: { result: context ?? {} },\n metadata: {\n outcome: 'Submitted',\n },\n };\n }\n\n const createFn = entityRef.commands?.create?.execute as (\n payload: any,\n ) => Promise<{ id: string } | AXPExecuteCommandResult<any>>;\n\n if (!createFn) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.create-command-unavailable'),\n },\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n dialogRef.setLoading(true);\n try {\n const createResult = await createFn(context);\n\n const id =\n typeof createResult === 'object' && createResult !== null && 'id' in createResult\n ? (createResult as { id: string }).id\n : (createResult as AXPExecuteCommandResult<any>)?.data?.id ??\n (createResult as { data?: { item?: { id?: string } } })?.data?.item?.id;\n\n return {\n success: true,\n data: {\n id: id ?? '',\n result: context ?? {},\n },\n metadata: {\n outcome: 'Done',\n },\n message: {\n text: await this.translationService.translateAsync('@general:messages.generic.success.description'),\n },\n };\n } finally {\n dialogRef.setLoading(false);\n }\n })\n .show();\n\n return this.normalizeDialogShowResult(result);\n } catch (error: unknown) {\n console.error('[CreateEntityFormActivity] Failed:', error);\n\n return {\n success: false,\n message: {\n text:\n error instanceof Error\n ? error.message\n : await this.translationService.translateAsync('@general:messages.entity.create-failed'),\n },\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n }\n\n //#endregion\n\n //#region ---- Private Helpers ----\n\n /**\n * Maps dialog.show() result to activity output. Dismissal without a footer action resolves as { success: false }.\n */\n private normalizeDialogShowResult(\n result: unknown,\n ): AXPExecuteCommandResult<CreateEntityFormOutput> {\n if (\n result &&\n typeof result === 'object' &&\n 'metadata' in result &&\n (result as AXPExecuteCommandResult<CreateEntityFormOutput>).metadata?.['outcome']\n ) {\n return result as AXPExecuteCommandResult<CreateEntityFormOutput>;\n }\n\n return {\n success: true,\n data: {},\n metadata: {\n outcome: 'Cancelled',\n },\n };\n }\n\n /**\n * Normalizes property list input (array, JSON string, or expression result).\n */\n private normalizePropertyList(value: string[] | any): string[] {\n if (!value) return [];\n if (Array.isArray(value)) {\n return value.filter((v) => typeof v === 'string');\n }\n if (typeof value === 'string') {\n try {\n const parsed = JSON.parse(value);\n return Array.isArray(parsed) ? parsed.filter((v: any) => typeof v === 'string') : [];\n } catch {\n return [];\n }\n }\n return [];\n }\n\n /**\n * Normalizes data input (object or JSON string).\n */\n private normalizeData(value: Record<string, any> | any): Record<string, any> {\n if (!value) return {};\n if (typeof value === 'object' && !Array.isArray(value)) return value;\n if (typeof value === 'string') {\n try {\n const parsed = JSON.parse(value);\n return typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed) ? parsed : {};\n } catch {\n return {};\n }\n }\n return {};\n }\n\n //#endregion\n}\n","import { Injectable, inject } from '@angular/core';\nimport type { AXPActivityDefinition } from '@acorex/platform/contracts';\nimport { AXPActivityProvider } from '@acorex/platform/workflow';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../../contracts';\n\n/**\n * Workflow Activities Definition Provider\n * \n * Provides activity definitions (metadata only).\n * Activity definitions contain metadata for UI and tooling.\n * The `name` property is used as the command key for execution.\n * Reads from entity service (mock data).\n */\n@Injectable()\nexport class AXMWorkflowActivitiesDefinitionProvider implements AXPActivityProvider {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private activityDefinitionService = this.entityService.withEntity(\n RootConfig.module.name,\n RootConfig.entities.activityDefinition.name\n ).data<any, any>();\n\n //#endregion\n\n //#region ---- AXPActivityProvider Implementation ----\n\n async getList(categoryId: string): Promise<AXPActivityDefinition[]> {\n // Use 'equal' operator to filter by category field\n const result = await this.activityDefinitionService.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters: [{\n field: 'category',\n operator: {\n type: 'equal',\n },\n value: categoryId,\n }]\n }\n });\n return result.items as AXPActivityDefinition[];\n }\n\n async getById(name: string): Promise<AXPActivityDefinition | undefined> {\n // Try to find by name field first, then by type field\n const byName = await this.activityDefinitionService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [{\n field: 'name',\n operator: {\n type: 'equal',\n },\n value: name,\n }]\n }\n });\n \n if (byName.items && byName.items.length > 0) {\n return byName.items[0] as AXPActivityDefinition;\n }\n\n // Try by type field\n const byType = await this.activityDefinitionService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [{\n field: 'type',\n operator: {\n type: 'equal',\n },\n value: name,\n }]\n }\n });\n\n if (byType.items && byType.items.length > 0) {\n return byType.items[0] as AXPActivityDefinition;\n }\n\n return undefined;\n }\n\n //#endregion\n}\n\n","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPEntityDefinitionRegistryService, AXPEntityFormBuilderService } from '@acorex/platform/layout/entity';\nimport { AXPCommand } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\n\nexport interface CreateEnityInput {\n module: string;\n entity: string;\n}\n\nexport interface CreateEnityOutput {\n id: string;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXPCreateEntityActivity implements AXPCommand<CreateEnityInput, CreateEnityOutput> {\n private entityForm = inject(AXPEntityFormBuilderService);\n private entityService = inject(AXPEntityDefinitionRegistryService);\n private translationService = inject(AXTranslationService);\n\n async execute(input: CreateEnityInput): Promise<AXPExecuteCommandResult<CreateEnityOutput>> {\n const entityRef = await this.entityService.resolve(input.module, input.entity);\n\n try {\n const chain = this.entityForm.entity(`${input.module}.${input.entity}`).create({});\n chain.actions((actions) => {\n actions.cancel('@general:actions.cancel.title');\n actions.submit('@general:actions.create.title');\n });\n\n const result = await chain\n .onAction<AXPExecuteCommandResult<CreateEnityOutput>>(async (dialogRef) => {\n const action = dialogRef.action();\n\n if (action === 'cancel') {\n return {\n success: true,\n data: { id: '' },\n metadata: { outcome: 'cancel' },\n };\n }\n\n if (action !== 'submit') {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-action'),\n },\n data: { id: '' },\n };\n }\n\n const context = dialogRef.context();\n const createFn = entityRef.commands?.create?.execute as (payload: any) => Promise<{ id: string }>;\n\n if (!createFn) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.create-command-unavailable'),\n },\n data: { id: '' },\n };\n }\n\n dialogRef.setLoading(true);\n try {\n const createResult = await createFn(context);\n if (createResult) {\n return {\n success: true,\n data: {\n id: createResult.id,\n },\n metadata: {\n outcome: 'Submitted',\n },\n message: {\n text: await this.translationService.translateAsync('@general:messages.generic.success.description'),\n },\n };\n }\n\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.command-no-result'),\n },\n data: {\n id: '-1',\n },\n metadata: {\n outcome: 'Submitted',\n },\n };\n } finally {\n dialogRef.setLoading(false);\n }\n })\n .show();\n\n return this.normalizeDialogShowResult(result);\n } catch (error) {\n return {\n success: false,\n message: {\n text:\n error instanceof Error\n ? error.message\n : await this.translationService.translateAsync('@general:messages.entity.create-failed'),\n },\n data: { id: '' },\n };\n }\n }\n\n private normalizeDialogShowResult(\n result: unknown,\n ): AXPExecuteCommandResult<CreateEnityOutput> {\n if (result && typeof result === 'object' && 'data' in result) {\n return result as AXPExecuteCommandResult<CreateEnityOutput>;\n }\n\n return {\n success: true,\n data: { id: '' },\n metadata: { outcome: 'cancel' },\n };\n }\n}\n","//#region ---- Imports ----\n\nimport { AXPEntityAction, AXPEntityCommandScope } from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport {\n AXPEntityActionPlugin,\n entityDetailsCrudActions,\n} from '@acorex/platform/layout/entity';\n\n//#endregion\n\n//#region ---- Plugin options ----\n\nexport type AutomationLayoutType =\n | 'page-list'\n | 'tab-list'\n | 'page-detail'\n | 'tab-detail';\n\nexport interface AXMAutomationPluginOptions {\n /** Title (i18n key or label) for the automations block in the UI. */\n title?: string;\n /** Icon class (e.g. 'fa-light fa-bolt'). Default 'fa-light fa-bolt'. */\n icon?: string;\n /** How to display: page-list (default), tab-list, page-detail, tab-detail. */\n layoutType?: AutomationLayoutType;\n /** Position relative to main content: 'before' | 'after' | 'middle'. Default 'after'. */\n position?: 'before' | 'after' | 'middle';\n /** Order among related entities. Default 2. */\n order?: number;\n /** Column names to show in list view. Default ['name', 'title', 'description', 'command']. */\n columns?: string[];\n}\n\nconst DEFAULT_ICON = 'fa-light fa-bolt';\nconst AUTOMATION_ENTITY = 'WorkflowManagement.Automation';\n\n//#endregion\n\n//#region ---- Plugin ----\n\n/**\n * Automation entity plugin.\n * Adds a related entity (WorkflowManagement.Automation) bound to the current entity via refType/refId.\n * Any entity can enable it with: plugins: [{ name: 'automation', options: { title: '...', layoutType: 'page-list', ... } }].\n */\nexport const automationPlugin: AXPEntityActionPlugin = {\n name: 'automation',\n order: 50,\n apply: (ctx, options?: AXMAutomationPluginOptions) => {\n const opts = options ?? {};\n const refType = `${ctx.entity.module}.${ctx.entity.name}`;\n const title = opts.title?.trim()?.length ? opts.title : '@workflow-management:automations.terms.automations';\n const icon = opts.icon?.trim()?.length ? opts.icon : DEFAULT_ICON;\n const layoutType = opts.layoutType ?? 'page-list';\n const position = opts.position ?? 'after';\n const order = opts.order ?? 2;\n const columns = opts.columns ?? ['name', 'title', 'description', 'command'];\n\n const createAction: AXPEntityAction = {\n title: '@general:actions.create.title',\n command: {\n name: 'Entity:Create',\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: {\n refType,\n refId: '{{context.eval(\"id\")}}',\n },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n };\n\n const otherActions = entityDetailsCrudActions('refId', { create: false });\n\n ctx.relatedEntities.add({\n entity: AUTOMATION_ENTITY,\n title,\n icon,\n columns,\n conditions: [\n { name: 'refType', operator: { type: 'equal' }, value: refType },\n { name: 'refId', operator: { type: 'equal' }, value: '{{context.eval(\"id\")}}' },\n ],\n actions: [createAction, ...otherActions],\n layout: { type: layoutType, position, order },\n excludeProperties: ['refType', 'refId'],\n });\n },\n};\n\n//#endregion\n","//#region ---- Workflow run command keys ----\n\n/** Commands for workflow-backed domain list rows (continue, cancel, take over). */\nexport const AXMWorkflowManagementCommandKeys = {\n WorkflowRun: {\n Continue: 'WorkflowManagement.WorkflowRun:Continue',\n CancelRun: 'WorkflowManagement.WorkflowRun:CancelRun',\n TakeOver: 'WorkflowManagement.WorkflowRun:TakeOver',\n ShowHistory: 'WorkflowManagement.WorkflowRun:ShowHistory',\n },\n} as const;\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPEntityAction, AXPEntityCommandScope } from '@acorex/platform/common';\nimport { AXPEntityActionPlugin, actionExists, ensureListActions } from '@acorex/platform/layout/entity';\nimport { AXMWorkflowManagementCommandKeys } from './commands.keys';\nimport {\n AXPWorkflowRunPluginListOptions,\n AXPWorkflowRunPluginOptions,\n} from './workflow-run.plugin.types';\n\n//#endregion\n\n//#region ---- Constants ----\n\nconst CRUD_ROW_COMMANDS = new Set(['Entity:Update', 'delete-entity', 'show-file-uploader-popup', 'open-entity']);\n\n/** Hidden when the row has no linked instance or is in a terminal domain status. */\nconst WORKFLOW_RUN_ROW_ACTIONS_HIDDEN =\n '{{ !context.eval(\"workflowInfo.instanceId\") || context.eval(\"statusId\") === \"completed\" || context.eval(\"statusId\") === \"cancelled\" }}';\n\nconst WORKFLOW_RUN_VIEW_ACTION = 'workflow-run-view';\nconst WORKFLOW_RUN_CONTINUE_ACTION = 'workflow-run-continue';\n\n//#endregion\n\n//#region ---- Helpers ----\n\nfunction resolveListOptions(options?: AXPWorkflowRunPluginOptions): Required<AXPWorkflowRunPluginListOptions> & {\n mode: 'crud' | 'workflow-run';\n} {\n const list = options?.list ?? {};\n const mode = list.mode ?? 'crud';\n const isWorkflowRun = mode === 'workflow-run';\n const viewInReadonlyPopup = list.viewInReadonlyPopup ?? isWorkflowRun;\n\n return {\n mode,\n suppressCrudRowActions: list.suppressCrudRowActions ?? isWorkflowRun,\n suppressAttachmentListAction: list.suppressAttachmentListAction ?? isWorkflowRun,\n viewInReadonlyPopup,\n defaultRowAction: list.defaultRowAction ?? (viewInReadonlyPopup ? 'view' : 'continue'),\n };\n}\n\nfunction getActionCommandName(action: AXPEntityAction): string | undefined {\n if (typeof action.command === 'string') {\n return action.command;\n }\n return action.command?.name;\n}\n\nfunction shouldSuppressListAction(action: AXPEntityAction, listOptions: ReturnType<typeof resolveListOptions>): boolean {\n const commandName = getActionCommandName(action);\n if (!commandName) {\n return false;\n }\n\n if (listOptions.suppressCrudRowActions && CRUD_ROW_COMMANDS.has(commandName)) {\n return true;\n }\n\n if (listOptions.suppressAttachmentListAction) {\n if (commandName === 'show-file-uploader-popup' || action.type === 'upload') {\n return true;\n }\n if (action.name?.startsWith('attachments-')) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction applyWorkflowRunDefaultRowAction(\n actions: AXPEntityAction[],\n listOptions: ReturnType<typeof resolveListOptions>,\n): void {\n const preferView = listOptions.defaultRowAction === 'view';\n\n for (const action of actions) {\n if (action.name === WORKFLOW_RUN_VIEW_ACTION) {\n action.default = preferView;\n action.priority = preferView ? 'primary' : 'secondary';\n }\n if (action.name === WORKFLOW_RUN_CONTINUE_ACTION) {\n action.default = !preferView;\n action.priority = preferView ? 'secondary' : 'primary';\n }\n }\n}\n\nfunction registerWorkflowRunRowActions(\n ctx: Parameters<AXPEntityActionPlugin['apply']>[0],\n listOptions: ReturnType<typeof resolveListOptions>,\n): void {\n const entityKey = `${ctx.entity.module}.${ctx.entity.name}`;\n\n ctx.interfaces.update((interfaces) => {\n const list = (interfaces as { master?: { list?: { actions?: AXPEntityAction[] } } }).master?.list;\n const actions = list?.actions ?? [];\n\n if (listOptions.viewInReadonlyPopup && !actionExists(actions, 'Entity:View', WORKFLOW_RUN_VIEW_ACTION)) {\n actions.push({\n name: WORKFLOW_RUN_VIEW_ACTION,\n title: '@general:actions.view.title',\n icon: 'fa-light fa-eye',\n command: 'Entity:View',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n });\n }\n\n if (\n !actionExists(actions, AXMWorkflowManagementCommandKeys.WorkflowRun.Continue, WORKFLOW_RUN_CONTINUE_ACTION)\n ) {\n actions.push({\n name: WORKFLOW_RUN_CONTINUE_ACTION,\n title: '@workflow-management:workflow-run.actions.continue.title',\n icon: 'fa-light fa-play',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.Continue,\n options: {\n entitySource: entityKey,\n },\n },\n priority: 'primary',\n type: 'action',\n scope: AXPEntityCommandScope.Individual,\n hidden: WORKFLOW_RUN_ROW_ACTIONS_HIDDEN,\n });\n }\n\n if (!actionExists(actions, AXMWorkflowManagementCommandKeys.WorkflowRun.CancelRun, 'workflow-run-cancel')) {\n actions.push({\n name: 'workflow-run-cancel',\n title: '@workflow-management:workflow-run.actions.cancel-run.title',\n icon: 'fa-light fa-ban',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.CancelRun,\n options: {\n entitySource: entityKey,\n },\n },\n priority: 'secondary',\n type: 'action',\n scope: AXPEntityCommandScope.Individual,\n hidden: WORKFLOW_RUN_ROW_ACTIONS_HIDDEN,\n });\n }\n\n if (!actionExists(actions, AXMWorkflowManagementCommandKeys.WorkflowRun.TakeOver, 'workflow-run-take-over')) {\n actions.push({\n name: 'workflow-run-take-over',\n title: '@workflow-management:workflow-run.actions.take-over.title',\n icon: 'fa-light fa-user-check',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.TakeOver,\n options: {\n entitySource: entityKey,\n },\n },\n priority: 'secondary',\n type: 'action',\n scope: AXPEntityCommandScope.Individual,\n hidden: WORKFLOW_RUN_ROW_ACTIONS_HIDDEN,\n });\n }\n\n if (!actionExists(actions, AXMWorkflowManagementCommandKeys.WorkflowRun.ShowHistory, 'workflow-run-history')) {\n actions.push({\n name: 'workflow-run-history',\n title: '@workflow-management:workflow-run.actions.history.title',\n icon: 'fa-light fa-clock-rotate-left',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.ShowHistory,\n options: {\n entitySource: entityKey,\n },\n },\n priority: 'secondary',\n type: 'history',\n scope: AXPEntityCommandScope.Individual,\n hidden: '{{ !context.eval(\"workflowInfo.instanceId\") }}',\n });\n }\n\n return interfaces as never;\n });\n}\n\n//#endregion\n\n//#region ---- Plugin ----\n\n/**\n * Workflow run plugin — marks entities as workflow-capable and optionally configures\n * workflow-run list behavior (suppress CRUD row actions, inject continue/cancel/take-over).\n *\n * Domain rows link runs via `workflowInfo` on the entity model ({@link AXPRecordWorkflowInfo}).\n */\nexport const workflowRunPlugin: AXPEntityActionPlugin = {\n name: 'workflow-run',\n order: 50,\n apply: (ctx, options?: AXPWorkflowRunPluginOptions) => {\n const listOptions = resolveListOptions(options);\n const isWorkflowRun = listOptions.mode === 'workflow-run';\n\n const entityExt = ctx.entity as { extensions?: Record<string, unknown> };\n entityExt.extensions ??= {};\n entityExt.extensions['workflowRun'] = {\n enabled: true,\n list: listOptions,\n };\n\n if (!isWorkflowRun) {\n return;\n }\n\n ensureListActions(ctx);\n\n ctx.interfaces.update((interfaces) => {\n const master = (interfaces as { master?: { list?: { actions?: AXPEntityAction[] } } }).master;\n const list = master?.list;\n if (!list) {\n return interfaces as never;\n }\n\n list.actions = (list.actions ?? []).filter((action) => !shouldSuppressListAction(action, listOptions));\n\n for (const action of list.actions) {\n const commandName = getActionCommandName(action);\n if (commandName === 'open-entity' || commandName === 'Entity:Update') {\n action.default = false;\n }\n }\n\n return interfaces as never;\n });\n\n registerWorkflowRunRowActions(ctx, listOptions);\n\n ctx.interfaces.update((interfaces) => {\n const list = (interfaces as { master?: { list?: { actions?: AXPEntityAction[] } } }).master?.list;\n if (list?.actions?.length) {\n applyWorkflowRunDefaultRowAction(list.actions, listOptions);\n }\n return interfaces as never;\n });\n },\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport {\n AXPEntityActionPlugin,\n cloneLayoutArrays,\n ensureLayoutPropertyView,\n ensureLayoutSection,\n} from '@acorex/platform/layout/entity';\nimport type { AXMWorkflowSelectorPluginOptions } from './workflow-selector.plugin.types';\n\n//#endregion\n\n//#region ---- Constants ----\n\nconst DEFAULT_GROUP_ID = 'workflow-config';\nconst DEFAULT_PROPERTY_NAME = 'workflowConfig';\nconst DEFAULT_GROUP_TITLE = '@workflow-management:workflow-selector-plugin.group.title';\nconst DEFAULT_SECTION_ORDER = 2;\n\n//#endregion\n\n//#region ---- Plugin ----\n\n/**\n * Adds a workflow definition selector + template input configurator (`workflowConfig` by default)\n * in a dedicated \"Workflow Configuration\" section.\n */\nexport const workflowSelectorPlugin: AXPEntityActionPlugin = {\n name: 'workflow-selector',\n order: 48,\n apply: (ctx, options?: AXMWorkflowSelectorPluginOptions) => {\n const propertyName = options?.propertyName?.trim() || DEFAULT_PROPERTY_NAME;\n const groupId = options?.groupId?.trim() || DEFAULT_GROUP_ID;\n const groupTitle = options?.groupTitle?.trim() || DEFAULT_GROUP_TITLE;\n const sectionOrder = options?.sectionOrder ?? DEFAULT_SECTION_ORDER;\n const showInList = options?.showInList ?? true;\n\n const groups = ctx.groups.list() ?? [];\n if (!groups.some((g: { id?: string }) => g.id === groupId)) {\n ctx.groups.add({\n id: groupId,\n title: groupTitle,\n } as never);\n }\n\n const widgetOptions: Record<string, unknown> = {};\n if (options?.templateInputNames?.length) {\n widgetOptions['templateInputNames'] = options.templateInputNames;\n }\n if (options?.catalogScopeKeys?.length) {\n widgetOptions['catalogScopeKeys'] = options.catalogScopeKeys;\n }\n if (options?.catalogScopeFilter) {\n widgetOptions['catalogScopeFilter'] = options.catalogScopeFilter;\n }\n if (options?.templateInputFilters && Object.keys(options.templateInputFilters).length > 0) {\n widgetOptions['templateInputFilters'] = options.templateInputFilters;\n }\n\n const props = ctx.properties.list();\n if (!props.some((p: { name?: string }) => p.name === propertyName)) {\n ctx.properties.add({\n name: propertyName,\n title: '@workflow-management:workflow-selector-plugin.property.title',\n groupId,\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsList.Editors.WorkflowConfigurator,\n options: widgetOptions,\n },\n },\n } as never);\n }\n\n const columns = ctx.columns.list() ?? [];\n if (showInList && !columns.some((c: { name?: string }) => c.name === propertyName)) {\n ctx.columns.add({ name: propertyName } as never);\n }\n\n const applyLayoutPatch = (layout: { sections: { id: string }[]; properties?: { name: string }[] }) => {\n const next = cloneLayoutArrays(layout);\n ensureLayoutSection(next, { id: groupId, order: sectionOrder } as never);\n ensureLayoutPropertyView(next, {\n name: propertyName,\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n } as never);\n return next;\n };\n\n ctx.interfaces.master.create.update((create) =>\n applyLayoutPatch(create ?? { sections: [], properties: [] }),\n );\n ctx.interfaces.master.modify.update((modify) =>\n applyLayoutPatch(modify ?? { sections: [], properties: [] }),\n );\n ctx.interfaces.master.single.update((single) =>\n applyLayoutPatch(\n (single ?? { title: ctx.entity.title, sections: [], properties: [] }) as {\n sections: { id: string }[];\n properties?: { name: string }[];\n },\n ) as never,\n );\n\n const entityExt = ctx.entity as { extensions?: Record<string, unknown> };\n entityExt.extensions ??= {};\n entityExt.extensions['workflowSelector'] = {\n propertyName,\n groupId,\n templateInputNames: options?.templateInputNames,\n catalogScopeKeys: options?.catalogScopeKeys,\n templateInputFilters: options?.templateInputFilters,\n };\n },\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { NgModule } from '@angular/core';\nimport { AXP_ENTITY_ACTION_PLUGIN } from '@acorex/platform/layout/entity';\nimport { automationPlugin } from '../automation-plugin/automation.plugin';\nimport { workflowRunPlugin } from './workflow-run.plugin';\nimport { workflowSelectorPlugin } from '../workflow-selector-plugin/workflow-selector.plugin';\n\n//#endregion\n\n//#region ---- Module ----\n\n/**\n * Registers workflow-management entity plugins:\n * - workflow-run: workflow-capable entities and workflow-run list actions\n * - workflow-selector: workflow definition + template input configurator\n * - automation: related WorkflowManagement.Automation entity\n */\n@NgModule({\n providers: [\n {\n provide: AXP_ENTITY_ACTION_PLUGIN,\n useValue: workflowRunPlugin,\n multi: true,\n },\n {\n provide: AXP_ENTITY_ACTION_PLUGIN,\n useValue: workflowSelectorPlugin,\n multi: true,\n },\n {\n provide: AXP_ENTITY_ACTION_PLUGIN,\n useValue: automationPlugin,\n multi: true,\n },\n ],\n})\nexport class AXMWorkflowPluginsModule {}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/layout/widgets';\nimport { AXP_WIDGETS_EDITOR_CATEGORY, AXPWidgetConfig, AXPWidgetGroupEnum } from '@acorex/platform/layout/widget-core';\n\n//#endregion\n\n//#region ---- Config ----\n\nexport const AXMActivityCommandConfiguratorWidget: AXPWidgetConfig = {\n name: 'activity-command-configurator',\n title: 'Activity Command Configurator',\n icon: 'fa-light fa-bolt',\n description: 'Select an activity (command) and configure its parameters',\n categories: AXP_WIDGETS_EDITOR_CATEGORY,\n groups: [AXPWidgetGroupEnum.UtilityWidget],\n type: 'editor',\n defaultFilterWidgetName: 'string-filter',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'label',\n title: 'Label',\n visible: true,\n group: { name: 'general', title: 'General', order: 1 },\n schema: {\n dataType: 'string',\n interface: {\n path: 'label',\n type: 'text-box',\n options: {\n placeholder: 'Enter label',\n },\n },\n },\n },\n ],\n components: {\n edit: {\n component: () =>\n import('./activity-command-configurator-widget-edit.component').then(\n (c) => c.AXMActivityCommandConfiguratorWidgetEditComponent\n ),\n },\n designer: {\n component: () =>\n import('./activity-command-configurator-widget-edit.component').then(\n (c) => c.AXMActivityCommandConfiguratorWidgetEditComponent\n ),\n },\n column: {\n component: () =>\n import('./activity-command-configurator-widget-column.component').then(\n (c) => c.AXMActivityCommandConfiguratorWidgetColumnComponent\n ),\n },\n },\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/layout/widgets';\nimport { AXP_WIDGETS_EDITOR_CATEGORY, AXPWidgetConfig, AXPWidgetGroupEnum } from '@acorex/platform/layout/widget-core';\n\n//#endregion\n\n//#region ---- Config ----\n\nexport const AXMWorkflowConfiguratorWidget: AXPWidgetConfig = {\n name: 'workflow-configurator',\n title: '@workflow-management:workflow-configurator.widget.title',\n icon: 'fa-light fa-diagram-project',\n description: '@workflow-management:workflow-configurator.widget.description',\n categories: AXP_WIDGETS_EDITOR_CATEGORY,\n groups: [AXPWidgetGroupEnum.UtilityWidget],\n type: 'editor',\n defaultFilterWidgetName: 'string-filter',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'label',\n title: 'Label',\n visible: true,\n group: { name: 'general', title: 'General', order: 1 },\n schema: {\n dataType: 'string',\n interface: {\n path: 'label',\n type: 'text-box',\n options: {\n placeholder: 'Enter label',\n },\n },\n },\n },\n ],\n components: {\n edit: {\n component: () =>\n import('./workflow-configurator-widget-edit.component').then(\n (c) => c.AXMWorkflowConfiguratorWidgetEditComponent,\n ),\n },\n designer: {\n component: () =>\n import('./workflow-configurator-widget-edit.component').then(\n (c) => c.AXMWorkflowConfiguratorWidgetEditComponent,\n ),\n },\n column: {\n component: () =>\n import('./workflow-configurator-widget-column.component').then(\n (c) => c.AXMWorkflowConfiguratorWidgetColumnComponent,\n ),\n },\n },\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPWidgetDefinitionProvider } from '@acorex/platform/layout/widget-core';\nimport { Injectable } from '@angular/core';\nimport { AXMActivityCommandConfiguratorWidget } from './features/activity-command-configurator/activity-command-configurator-widget.config';\nimport { AXMWorkflowConfiguratorWidget } from './features/workflow-configurator/workflow-configurator-widget.config';\n\n//#endregion\n\n//#region ---- Workflow Management Widgets Provider ----\n\nconst WORKFLOW_WIDGETS = [AXMActivityCommandConfiguratorWidget, AXMWorkflowConfiguratorWidget];\n\n@Injectable()\nexport class AXMWorkflowManagementWidgetsProvider implements AXPWidgetDefinitionProvider {\n getWidgets() {\n return WORKFLOW_WIDGETS;\n }\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport {\n AXPExpressionEvaluatorScopeProvider,\n AXPExpressionEvaluatorScopeProviderContext,\n AXPFilterDefinition,\n} from '@acorex/platform/core';\n\n//#endregion\n\n//#region ---- Provider ----\n\n/**\n * Default automation evaluator scope.\n * Provides automation.rules(refType, refId) for ConditionBuilder filterDefinitions.\n * Returns empty array by default; modules (e.g. assessment-management) can register\n * their own scope with the same name to provide rules for specific refTypes.\n */\nexport class AXMAutomationEvaluatorScopeProvider implements AXPExpressionEvaluatorScopeProvider {\n async provide(context: AXPExpressionEvaluatorScopeProviderContext): Promise<void> {\n context.addScope('automation', {\n /** Returns filter definitions for automation condition builder. Override per refType in consuming modules. */\n rules: async (_refType: string, _refId: string): Promise<AXPFilterDefinition[]> => {\n return [];\n },\n });\n }\n}\n\n//#endregion\n","import type { AXPActivityCategory } from '@acorex/platform/contracts';\nimport { AXPActivityCategoryProvider } from '@acorex/platform/workflow';\nimport { Injectable, inject } from '@angular/core';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../contracts';\n\n/**\n * Provider for activity categories.\n * Reads categories from entity service (mock data).\n */\n@Injectable()\nexport class AXCCategoryProvider implements AXPActivityCategoryProvider {\n \n private readonly entityService = inject(AXPEntityService);\n /** Category entity is provided by category plugin (ActivityDefinition → ActivityDefinitionCategory). */\n private categoryService = this.entityService.withEntity(\n RootConfig.module.name,\n 'ActivityDefinitionCategory'\n ).data<any, any>();\n\n async getList(parentId?: string): Promise<AXPActivityCategory[]> {\n const list: AXPActivityCategory[] = [];\n \n if (parentId) {\n const result = await this.categoryService.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters: [{\n field: 'parentId',\n operator: {\n type: 'equal',\n },\n value: parentId,\n }]\n }\n });\n list.push(...result.items);\n } else {\n const result = await this.categoryService.query({\n skip: 0,\n take: 1000,\n });\n list.push(...result.items);\n }\n \n return list;\n }\n\n async getById(id: string): Promise<AXPActivityCategory | undefined> {\n return await this.categoryService.byKey(id);\n }\n}\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPWorkflowTaskProvider } from '@acorex/modules/task-management';\nimport type { AXPWorkflowTaskProviderResolveOptions } from '@acorex/modules/task-management';\nimport { AXPWorkflowDefinitionService } from '@acorex/platform/workflow';\nimport { Injector, runInInjectionContext } from '@angular/core';\nimport type { AXPGenericWorkflowTaskProviderConfig } from '../task-provider/generic-workflow-task.provider';\n\n//#endregion\n\n//#region ---- Lazy loader ----\n\nfunction loadGenericWorkflowTaskProviderClass() {\n return import('../task-provider/generic-workflow-task.provider').then((m) => m.AXPGenericWorkflowTaskProvider);\n}\n\n//#endregion\n\n//#region ---- Discovery ----\n\n/**\n * Discovers one workflow task provider per workflow definition.\n * Re-runs discovery when {@link AXPWorkflowTaskProviderResolveOptions.force} is set.\n */\nexport async function discoverWorkflowTaskProviders(\n injector: Injector,\n options?: AXPWorkflowTaskProviderResolveOptions,\n): Promise<AXPWorkflowTaskProvider[]> {\n if (options?.force) {\n injector.get(AXPWorkflowDefinitionService).clearAllCache();\n }\n\n const ProviderClass = await loadGenericWorkflowTaskProviderClass();\n const workflowDefinitionService = injector.get(AXPWorkflowDefinitionService);\n const multiLanguageResolver = injector.get(AXTranslationService);\n const categories = await workflowDefinitionService.getCategories();\n const providers: AXPWorkflowTaskProvider[] = [];\n const seenDefinitionNames = new Set<string>();\n\n for (const category of categories) {\n const workflows = await workflowDefinitionService.getWorkflowsByCategoryId(category.id);\n for (const workflow of workflows) {\n const key = workflow.name;\n if (!key || seenDefinitionNames.has(key)) {\n continue;\n }\n seenDefinitionNames.add(key);\n const config: AXPGenericWorkflowTaskProviderConfig = {\n name: workflow.name,\n title: multiLanguageResolver.resolve(workflow.title) ?? workflow.name,\n icon: 'fa-light fa-diagram-project',\n definitionId: workflow.name,\n };\n const provider = runInInjectionContext(injector, () => new ProviderClass(config));\n providers.push(provider);\n }\n }\n\n return providers;\n}\n\n//#endregion\n","import {\n AXP_WORKFLOW_TASK_PROVIDER,\n AXP_WORKFLOW_TASK_PROVIDER_RESOLVER,\n AXPWorkflowTaskProvider,\n} from '@acorex/modules/task-management';\nimport { EnvironmentProviders, Injector, makeEnvironmentProviders, runInInjectionContext } from '@angular/core';\nimport type { AXPGenericWorkflowTaskProviderConfig } from '../task-provider/generic-workflow-task.provider';\nimport { discoverWorkflowTaskProviders } from './workflow-task-provider.discovery';\n\n//#region ---- Lazy loader ----\n\n/** Code-split chunk for the generic workflow task provider implementation. */\nfunction loadGenericWorkflowTaskProviderClass() {\n return import('../task-provider/generic-workflow-task.provider').then((m) => m.AXPGenericWorkflowTaskProvider);\n}\n\n//#endregion\n\n//#region ---- Per-definition registration ----\n\n/**\n * Registers one workflow task provider for a single definition (lazy-loaded).\n * Use in feature modules that need a dedicated task-board entry per workflow.\n */\nexport function provideGenericWorkflowTaskProvider(config: AXPGenericWorkflowTaskProviderConfig) {\n return {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n multi: true,\n useFactory: (injector: Injector) =>\n loadGenericWorkflowTaskProviderClass().then((ProviderClass) =>\n runInInjectionContext(injector, () => new ProviderClass(config)),\n ),\n deps: [Injector],\n };\n}\n\n//#endregion\n\n//#region ---- Auto-discovery registration ----\n\n/**\n * Registers one task provider per workflow definition (lazy-loaded).\n * Discovers definitions via {@link AXPWorkflowDefinitionService} at first resolve.\n */\nexport function provideTaskWorkflow(): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER_RESOLVER,\n useFactory: (injector: Injector) => (options?: { force?: boolean }) =>\n discoverWorkflowTaskProviders(injector, options),\n deps: [Injector],\n },\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n multi: true,\n useFactory: (injector: Injector) => discoverWorkflowTaskProviders(injector),\n deps: [Injector],\n },\n ]);\n}\n\n//#endregion\n","import { Injectable, inject } from '@angular/core';\nimport { AXPWorkflowCategory } from '@acorex/platform/contracts';\nimport { AXPWorkflowCategoryProvider } from '@acorex/platform/workflow';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../../contracts';\n\n/**\n * Workflow Category Provider\n * \n * Provides workflow categories from entity service.\n * Reads from entity service (mock data or API).\n */\n@Injectable()\nexport class AXMWorkflowCategoryProvider implements AXPWorkflowCategoryProvider {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly categoryService = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name + 'Category')\n .data<any, any>();\n\n //#endregion\n\n //#region ---- AXPWorkflowCategoryProvider Implementation ----\n\n async getList(parentId?: string): Promise<AXPWorkflowCategory[]> {\n const filters: any[] = [];\n\n if (parentId === undefined) {\n // Root categories: parentId is null or undefined\n filters.push({\n field: 'parentId',\n operator: {\n type: 'isNull',\n },\n });\n } else {\n // Child categories: parentId matches\n filters.push({\n field: 'parentId',\n operator: {\n type: 'equal',\n },\n value: parentId,\n });\n }\n\n const result = await this.categoryService.query({\n skip: 0,\n take: 1000,\n filter: {\n logic: 'and',\n filters,\n },\n });\n\n return (result.items || []) as AXPWorkflowCategory[];\n }\n\n async getById(id: string): Promise<AXPWorkflowCategory | undefined> {\n const result = await this.categoryService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [{\n field: 'id',\n operator: {\n type: 'equal',\n },\n value: id,\n }],\n },\n });\n\n if (result.items && result.items.length > 0) {\n return result.items[0] as AXPWorkflowCategory;\n }\n\n return undefined;\n }\n\n //#endregion\n}\n\n","import { Injectable, inject } from '@angular/core';\nimport type { AXPWorkflowDefinition } from '@acorex/platform/contracts';\nimport { AXPWorkflowProvider } from '@acorex/platform/workflow';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../../contracts';\n\n/**\n * Workflow Definition Provider\n * \n * Provides workflow definitions for UI and tooling.\n * The `name` property is used as the workflow identifier.\n * Reads from entity service (mock data or API).\n */\n@Injectable()\nexport class AXMWorkflowDefinitionProvider implements AXPWorkflowProvider {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly workflowDefinitionService = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name)\n .data<any, any>();\n\n //#endregion\n\n //#region ---- AXPWorkflowProvider Implementation ----\n\n async getList(_categoryId: string): Promise<AXPWorkflowDefinition[]> {\n const result = await this.workflowDefinitionService.query({\n skip: 0,\n take: 1000,\n });\n\n // Convert entity data to workflow definition format\n return (result.items || []).map((item: any): AXPWorkflowDefinition => ({\n schemaVersion: item.schemaVersion || 'acorex-platform-workflow/v1',\n name: item.name || item.id || '',\n title: item.title || item.name || item.id || null,\n description: item.description || null,\n variables: item.variables || [],\n inputs: item.inputs || [],\n outputs: item.outputs || [],\n graph: item.graph,\n customProperties: item.customProperties || {},\n extensions: item.extensions || {},\n }));\n }\n\n async getByName(name: string): Promise<AXPWorkflowDefinition | null> {\n // Try to find by name field first, then by id field\n const byName = await this.workflowDefinitionService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [{\n field: 'name',\n operator: {\n type: 'equal',\n },\n value: name,\n }]\n }\n });\n \n if (byName.items && byName.items.length > 0) {\n const entity = byName.items[0];\n return {\n schemaVersion: entity.schemaVersion || 'acorex-platform-workflow/v1',\n name: entity.name,\n title: entity.title || null,\n description: entity.description || null,\n variables: entity.variables || [],\n inputs: entity.inputs || [],\n outputs: entity.outputs || [],\n graph: entity.graph,\n customProperties: entity.customProperties || {},\n extensions: entity.extensions || {},\n };\n }\n\n // Try by id field\n const byId = await this.workflowDefinitionService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [{\n field: 'id',\n operator: {\n type: 'equal',\n },\n value: name,\n }]\n }\n });\n\n if (byId.items && byId.items.length > 0) {\n const entity = byId.items[0];\n return {\n schemaVersion: entity.schemaVersion || 'acorex-platform-workflow/v1',\n name: entity.name,\n title: entity.title || null,\n description: entity.description || null,\n variables: entity.variables || [],\n inputs: entity.inputs || [],\n outputs: entity.outputs || [],\n graph: entity.graph,\n customProperties: entity.customProperties || {},\n extensions: entity.extensions || {},\n };\n }\n\n return null;\n }\n\n //#endregion\n}\n\n","//#region ---- Imports ----\n\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXMPermissionsKeys } from '../../contracts/permission.keys';\n\n//#endregion\n\n//#region ---- Permission Helpers ----\n\n/** Permission to reassign a human-task workflow bookmark to the current user. */\nexport const AXM_WORKFLOW_REASSIGN_TO_SELF_PERMISSION = AXMPermissionsKeys.WorkflowInstance.ReassignToSelf;\n\n/**\n * Returns whether the current session may reassign a human-task to themselves.\n */\nexport function canReassignWorkflowTaskToSelf(sessionService: AXPSessionService): boolean {\n return sessionService.authorize(AXM_WORKFLOW_REASSIGN_TO_SELF_PERMISSION);\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport type { AXPWorkflowContinuationStepContext, AXPWorkflowTask } from '@acorex/platform/workflow';\nimport {\n axpIsWorkflowInlineFrontendTask,\n axpResolveWorkflowContinuationBeforeInteractive,\n axpShouldOfferWorkflowContinuationAfterStep,\n axpShouldSkipBeforeInteractiveFromMetadata,\n} from '@acorex/platform/workflow';\nimport { AXMWorkflowManagementWorkflowInstanceEntityModel } from '../../entities/workflow-instance/workflow-instance.types';\nimport { canReassignWorkflowTaskToSelf } from './workflow-task-reassign-access';\n\n//#endregion\n\n//#region ---- Types ----\n\n/** Minimal bookmark payload shape for continuation eligibility checks. */\nexport interface WorkflowTaskContinuationPayload {\n activityType: string;\n assignedUserIds?: string[] | null;\n candidateUserIds?: string[] | null;\n}\n\n/** Bookmark row shape stored on WorkflowInstance.workflowInstance.bookmarks. */\nexport interface WorkflowTaskContinuationBookmark {\n id: string;\n activityId: string;\n type: string;\n payload?: Record<string, unknown> | null;\n payloadJson?: string;\n consumed?: boolean;\n isConsumed?: boolean;\n createdAt?: string;\n}\n\nexport interface WorkflowTaskContinuationContext {\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel;\n bookmark: WorkflowTaskContinuationBookmark;\n payload: WorkflowTaskContinuationPayload;\n sessionService: AXPSessionService;\n /** Bookmark id of the task that was just completed (excluded from next-step detection). */\n completedBookmarkId?: string;\n /** Activity id that was just completed (excluded from next-step detection). */\n completedActivityId?: string;\n}\n\n//#endregion\n\n//#region ---- User id helpers ----\n\n/** Normalizes platform user id lists on bookmark payloads. */\nexport function normalizeWorkflowTaskUserIds(value: string[] | null | undefined): string[] {\n if (!value || value.length === 0) {\n return [];\n }\n return value.map((id) => String(id)).filter((s) => s.length > 0);\n}\n\n/** Workflow instance creator (task-board \"started by\"). */\nexport function getWorkflowInstanceInitiatorUserId(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n): string | null {\n const id = instance.auditInfo?.created?.by?.id;\n return id != null && String(id).length > 0 ? String(id) : null;\n}\n\n//#endregion\n\n//#region ---- Bookmark payload helpers ----\n\n/** Bookmark types rendered on the workflow task board. */\nexport function isWorkflowTaskBoardBookmarkPayload(payload: WorkflowTaskContinuationPayload): boolean {\n const t = payload.activityType;\n return t === 'workflow-activity:human-task' || t === 'workflow-activity:cartable';\n}\n\n/** Pooled task that must be claimed before acting (no direct continuation offer). */\nexport function isWorkflowPooledClaimablePayload(payload: WorkflowTaskContinuationPayload): boolean {\n const assigned = normalizeWorkflowTaskUserIds(payload.assignedUserIds);\n const candidates = normalizeWorkflowTaskUserIds(payload.candidateUserIds);\n if (payload.activityType === 'workflow-activity:cartable') {\n return assigned.length === 0 && candidates.length > 0;\n }\n return payload.activityType === 'workflow-activity:human-task' && assigned.length === 0 && candidates.length > 0;\n}\n\n/** Human-task assigned to another user; may be taken over when permitted. */\nexport function isWorkflowReassignableHumanTaskPayload(payload: WorkflowTaskContinuationPayload): boolean {\n if (payload.activityType !== 'workflow-activity:human-task') {\n return false;\n }\n const assigned = normalizeWorkflowTaskUserIds(payload.assignedUserIds);\n if (assigned.length === 0) {\n return false;\n }\n return true;\n}\n\n/** Parses bookmark payload from entity storage. */\nexport function parseWorkflowTaskContinuationPayload(\n bookmark: WorkflowTaskContinuationBookmark,\n): WorkflowTaskContinuationPayload | null {\n try {\n const raw = bookmark.payload ?? (bookmark.payloadJson ? JSON.parse(bookmark.payloadJson) : null);\n if (typeof raw !== 'object' || raw === null) {\n return null;\n }\n return raw as WorkflowTaskContinuationPayload;\n } catch {\n return null;\n }\n}\n\n//#endregion\n\n//#region ---- Step advancement gate ----\n\n/**\n * Whether the workflow moved forward enough to prompt \"continue to next step\".\n * Skips draft save / cancel on questionnaire (same human-task bookmark remains).\n */\nexport function shouldOfferWorkflowContinuationAfterStep(\n context: AXPWorkflowContinuationStepContext,\n activeBookmarkActivityIds: string[],\n): boolean {\n return axpShouldOfferWorkflowContinuationAfterStep(context, activeBookmarkActivityIds);\n}\n\n//#endregion\n\n//#region ---- Human-task assignee lookup ----\n\n/**\n * Assignee of the first active human-task / cartable bookmark (used for interactive-step continuation).\n */\nexport function findActiveHumanTaskAssigneeId(\n bookmarks: WorkflowTaskContinuationBookmark[],\n): string | null {\n for (const bookmark of bookmarks) {\n const payload = parseWorkflowTaskContinuationPayload(bookmark);\n if (!payload || !isWorkflowTaskBoardBookmarkPayload(payload)) {\n continue;\n }\n const assigned = normalizeWorkflowTaskUserIds(payload.assignedUserIds);\n if (assigned[0]) {\n return assigned[0];\n }\n }\n return null;\n}\n\n/**\n * Assignee on a completed human-task activity (when inbox bookmarks are already consumed).\n */\nexport function findHumanTaskAssigneeIdForActivity(\n bookmarks: WorkflowTaskContinuationBookmark[],\n activityId: string,\n): string | null {\n for (const bookmark of bookmarks) {\n if (bookmark.activityId !== activityId) {\n continue;\n }\n const payload = parseWorkflowTaskContinuationPayload(bookmark);\n if (!payload || !isWorkflowTaskBoardBookmarkPayload(payload)) {\n continue;\n }\n const assigned = normalizeWorkflowTaskUserIds(payload.assignedUserIds);\n if (assigned[0]) {\n return assigned[0];\n }\n }\n return null;\n}\n\n/** Latest human-task assignee on the instance (active first, then any bookmark). */\nexport function resolveWorkflowHumanTaskAssigneeId(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n preferredActivityId?: string,\n): string | null {\n const wi = instance.workflowInstance as { bookmarks?: WorkflowTaskContinuationBookmark[] } | undefined;\n const all = wi?.bookmarks ?? [];\n const active = all.filter((b) => !b.isConsumed && !b.consumed);\n\n const fromActive = findActiveHumanTaskAssigneeId(active);\n if (fromActive) {\n return fromActive;\n }\n\n if (preferredActivityId) {\n const fromPreferred = findHumanTaskAssigneeIdForActivity(all, preferredActivityId);\n if (fromPreferred) {\n return fromPreferred;\n }\n }\n\n for (let i = all.length - 1; i >= 0; i--) {\n const payload = parseWorkflowTaskContinuationPayload(all[i]);\n if (!payload || !isWorkflowTaskBoardBookmarkPayload(payload)) {\n continue;\n }\n const assigned = normalizeWorkflowTaskUserIds(payload.assignedUserIds);\n if (assigned[0]) {\n return assigned[0];\n }\n }\n\n return null;\n}\n\n//#endregion\n\n//#region ---- Interactive step continuation ----\n\n/**\n * Whether a bookmark row (including consumed) was a task-board human-task / cartable step.\n */\nexport function wasWorkflowTaskBoardActivity(\n bookmarks: WorkflowTaskContinuationBookmark[],\n activityId: string,\n): boolean {\n for (const bookmark of bookmarks) {\n if (bookmark.activityId !== activityId) {\n continue;\n }\n const payload = parseWorkflowTaskContinuationPayload(bookmark);\n if (payload && isWorkflowTaskBoardBookmarkPayload(payload)) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Whether to show \"continue?\" before an inline interactive activity (sign-off, assessment, etc.).\n */\nexport function shouldOfferWorkflowInteractiveStepContinuation(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n sessionService: AXPSessionService,\n humanTaskAssigneeId: string | null,\n): boolean {\n const currentUserId = sessionService.user?.id;\n if (currentUserId == null) {\n return false;\n }\n const current = String(currentUserId);\n const initiatorId = getWorkflowInstanceInitiatorUserId(instance);\n const isInitiator = initiatorId != null && current === initiatorId;\n\n if (isInitiator) {\n return true;\n }\n if (canReassignWorkflowTaskToSelf(sessionService)) {\n return true;\n }\n if (humanTaskAssigneeId && current === humanTaskAssigneeId) {\n return true;\n }\n return false;\n}\n\n/**\n * Skips a redundant pre-interactive prompt when the next UI would run immediately anyway.\n */\nexport function shouldSkipContinuationBeforeInteractive(\n context: AXPWorkflowContinuationStepContext,\n nextTask: AXPWorkflowTask,\n sessionService: AXPSessionService,\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n bookmarks: WorkflowTaskContinuationBookmark[],\n humanTaskAssigneeId: string | null,\n): boolean {\n if (!axpIsWorkflowInlineFrontendTask(nextTask)) {\n return false;\n }\n\n const currentUserId = sessionService.user?.id;\n if (currentUserId == null) {\n return false;\n }\n const current = String(currentUserId);\n const completedActivityId = context.completedActivityId;\n // Resume consumes the human-task bookmark before the inline activity runs; search all bookmarks.\n const allBookmarks =\n (instance.workflowInstance as { bookmarks?: WorkflowTaskContinuationBookmark[] } | undefined)\n ?.bookmarks ?? bookmarks;\n const completedWasHumanTask =\n !!completedActivityId && wasWorkflowTaskBoardActivity(allBookmarks, completedActivityId);\n\n const beforeInteractive = axpResolveWorkflowContinuationBeforeInteractive(nextTask);\n if (axpShouldSkipBeforeInteractiveFromMetadata(beforeInteractive, completedWasHumanTask)) {\n return true;\n }\n\n if (beforeInteractive === 'skip-for-assignee' && humanTaskAssigneeId && current === humanTaskAssigneeId) {\n const initiatorId = getWorkflowInstanceInitiatorUserId(instance);\n if (initiatorId != null && current === initiatorId) {\n return false;\n }\n if (canReassignWorkflowTaskToSelf(sessionService)) {\n return false;\n }\n return true;\n }\n\n return false;\n}\n\n/** Take-over copy before interactive steps when a human-task is owned by someone else. */\nexport function needsTakeOverForWorkflowInteractiveContinuation(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n sessionService: AXPSessionService,\n humanTaskAssigneeId: string | null,\n): boolean {\n const currentUserId = sessionService.user?.id;\n if (currentUserId == null || !humanTaskAssigneeId) {\n return false;\n }\n const current = String(currentUserId);\n if (current === humanTaskAssigneeId) {\n return false;\n }\n return canReassignWorkflowTaskToSelf(sessionService);\n}\n\n//#endregion\n\n//#region ---- Continuation eligibility ----\n\n/**\n * Whether the UI should offer \"continue to next step\" after a successful resume.\n *\n * - Current user is the assignee (sequential tasks for the same person, e.g. line manager).\n * - Workflow initiator and assignee are the same person and that person is the current user.\n * - Current user may take over a human-task assigned to someone else.\n */\n/**\n * Resolves assignee id from bookmark payload, falling back to instance bookmarks / pending task input.\n */\nexport function resolveWorkflowTaskContinuationAssigneeId(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n payload: WorkflowTaskContinuationPayload,\n pendingActivityId?: string,\n): string | null {\n const fromPayload = normalizeWorkflowTaskUserIds(payload.assignedUserIds)[0] ?? null;\n if (fromPayload) {\n return fromPayload;\n }\n return resolveWorkflowHumanTaskAssigneeId(instance, pendingActivityId);\n}\n\nexport function shouldOfferWorkflowTaskContinuation(ctx: WorkflowTaskContinuationContext): boolean {\n const currentUserId = ctx.sessionService.user?.id;\n if (currentUserId == null) {\n return false;\n }\n const current = String(currentUserId);\n\n if (!isWorkflowTaskBoardBookmarkPayload(ctx.payload)) {\n return false;\n }\n if (isWorkflowPooledClaimablePayload(ctx.payload)) {\n return false;\n }\n\n const assigneeId = resolveWorkflowTaskContinuationAssigneeId(\n ctx.instance,\n ctx.payload,\n ctx.bookmark.activityId,\n );\n const initiatorId = getWorkflowInstanceInitiatorUserId(ctx.instance);\n const isInitiator = initiatorId != null && current === initiatorId;\n\n if (assigneeId && current === assigneeId) {\n return true;\n }\n\n if (initiatorId && assigneeId && initiatorId === assigneeId && current === initiatorId) {\n return true;\n }\n\n /** User who started the workflow may continue (take over when not assignee). */\n if (isInitiator && assigneeId && current !== assigneeId) {\n return true;\n }\n\n if (\n isInitiator &&\n canReassignWorkflowTaskToSelf(ctx.sessionService) &&\n isWorkflowReassignableHumanTaskPayload(ctx.payload)\n ) {\n return true;\n }\n\n if (!canReassignWorkflowTaskToSelf(ctx.sessionService)) {\n return false;\n }\n if (!isWorkflowReassignableHumanTaskPayload(ctx.payload)) {\n return false;\n }\n if (!assigneeId || current === assigneeId) {\n return false;\n }\n return true;\n}\n\n/** True when the user must take over the next bookmark before acting on it. */\nexport function needsTakeOverForWorkflowTaskContinuation(ctx: WorkflowTaskContinuationContext): boolean {\n const currentUserId = ctx.sessionService.user?.id;\n if (currentUserId == null) {\n return false;\n }\n const current = String(currentUserId);\n const assigneeId = resolveWorkflowTaskContinuationAssigneeId(\n ctx.instance,\n ctx.payload,\n ctx.bookmark.activityId,\n );\n if (!assigneeId || current === assigneeId) {\n return false;\n }\n return (\n canReassignWorkflowTaskToSelf(ctx.sessionService) && isWorkflowReassignableHumanTaskPayload(ctx.payload)\n );\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { AXMWorkflowManagementWorkflowInstanceEntityModel } from '../../entities/workflow-instance/workflow-instance.types';\nimport {\n parseWorkflowTaskContinuationPayload,\n type WorkflowTaskContinuationPayload,\n} from './workflow-task-continuation';\n\n//#endregion\n\n//#region ---- Types ----\n\n/** Bookmark row on WorkflowInstance.workflowInstance.bookmarks. */\nexport interface WorkflowInstanceBookmarkRow {\n id: string;\n activityId: string;\n type: string;\n payload?: Record<string, unknown> | null;\n payloadJson?: string;\n consumed?: boolean;\n isConsumed?: boolean;\n}\n\nexport interface HumanTaskBookmarkPayload extends WorkflowTaskContinuationPayload {\n activityType: string;\n activityName: string;\n taskToken: string;\n title?: string;\n description?: string;\n actions?: { prefix?: unknown[]; suffix?: unknown[] };\n context?: Record<string, unknown>;\n}\n\n//#endregion\n\n//#region ---- Access factory ----\n\nfunction getActiveBookmarks(instance: AXMWorkflowManagementWorkflowInstanceEntityModel): WorkflowInstanceBookmarkRow[] {\n const wi = instance.workflowInstance as { bookmarks?: WorkflowInstanceBookmarkRow[] } | undefined;\n const bookmarks = wi?.bookmarks ?? [];\n return bookmarks.filter((b) => !b.isConsumed && !b.consumed);\n}\n\n/**\n * Loads workflow instance entity rows (including embedded bookmarks).\n */\nexport function createWorkflowInstanceBookmarkAccess(entityService = inject(AXPEntityService)) {\n const workflowInstanceData = entityService\n .withEntity('WorkflowManagement', 'WorkflowInstance')\n .data<string, AXMWorkflowManagementWorkflowInstanceEntityModel>();\n\n return {\n async loadInstance(instanceId: string): Promise<AXMWorkflowManagementWorkflowInstanceEntityModel | null> {\n return this.loadInstanceForContinuation(instanceId);\n },\n\n /**\n * Reloads the instance until the expected human-task bookmark exists (post-submit race).\n */\n async loadInstanceForContinuation(\n instanceId: string,\n expectedPendingActivityId?: string,\n ): Promise<AXMWorkflowManagementWorkflowInstanceEntityModel | null> {\n const maxAttempts = 6;\n for (let attempt = 0; attempt < maxAttempts; attempt++) {\n const instance = await workflowInstanceData.byKey(instanceId);\n if (instance) {\n const active = getActiveBookmarks(instance);\n if (expectedPendingActivityId) {\n if (active.some((b) => b.activityId === expectedPendingActivityId)) {\n return instance;\n }\n } else if (active.length > 0) {\n return instance;\n }\n }\n if (attempt < maxAttempts - 1) {\n await new Promise((resolve) => setTimeout(resolve, 50 * (attempt + 1)));\n } else {\n return instance ?? null;\n }\n }\n return null;\n },\n\n getActiveBookmarks,\n\n async findActiveBookmark(\n instanceId: string,\n activityId: string,\n ): Promise<{ instance: AXMWorkflowManagementWorkflowInstanceEntityModel; bookmark: WorkflowInstanceBookmarkRow } | null> {\n const instance = await this.loadInstance(instanceId);\n if (!instance) {\n return null;\n }\n const bookmark = getActiveBookmarks(instance).find((b) => b.activityId === activityId);\n if (!bookmark) {\n return null;\n }\n return { instance, bookmark };\n },\n\n parseHumanTaskPayload(bookmark: WorkflowInstanceBookmarkRow): HumanTaskBookmarkPayload | null {\n const parsed = parseWorkflowTaskContinuationPayload(bookmark);\n if (!parsed) {\n return null;\n }\n return parsed as HumanTaskBookmarkPayload;\n },\n };\n}\n\nexport type WorkflowInstanceBookmarkAccess = ReturnType<typeof createWorkflowInstanceBookmarkAccess>;\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPActionMenuItem, AXPBroadcastEventService } from '@acorex/platform/core';\nimport {\n AXP_WORKFLOW_ENGINE,\n AXP_WORKFLOW_SUPPRESS_CONTINUATION_INPUT_KEY,\n AXP_WORKFLOW_ERROR_CODES,\n AXPWorkflowEngine,\n AXPWorkflowManager,\n WorkflowResumeResult,\n} from '@acorex/platform/workflow';\nimport { inject, Injectable, Injector } from '@angular/core';\nimport { canReassignWorkflowTaskToSelf } from './workflow-task-reassign-access';\nimport {\n createWorkflowInstanceBookmarkAccess,\n HumanTaskBookmarkPayload,\n} from './workflow-instance-bookmark.access';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface ResumeSuspendedHumanTaskRequest {\n instanceId: string;\n bookmarkId: string;\n activityId: string;\n taskToken: string;\n outcome: string;\n userInput?: Record<string, unknown>;\n /** When true, skips the post-resume \"continue to next step?\" prompt on this resume. */\n suppressContinuation?: boolean;\n}\n\n//#endregion\n\n//#region ---- Service ----\n\n/**\n * Workflow-instance human-task operations (resume, take-over, primary action).\n * Independent of task board / popover — task board delegates here for the same behavior.\n */\n@Injectable({ providedIn: 'root' })\nexport class AXPWorkflowInstanceHumanTaskService {\n //#region ---- Services & Dependencies ----\n\n private readonly injector = inject(Injector);\n private readonly sessionService = inject(AXPSessionService);\n private readonly translationService = inject(AXTranslationService);\n private readonly dialogService = inject(AXDialogService);\n private readonly toastService = inject(AXToastService);\n private readonly eventService = inject(AXPBroadcastEventService);\n private readonly workflowEngine = inject(AXP_WORKFLOW_ENGINE) as AXPWorkflowEngine;\n private readonly bookmarkAccess = createWorkflowInstanceBookmarkAccess();\n\n /** Resolved lazily to avoid DI cycle with {@link AXPWorkflowManager} continuation hook. */\n private get workflowManager(): AXPWorkflowManager {\n return this.injector.get(AXPWorkflowManager);\n }\n\n //#endregion\n\n //#region ---- Resume & take-over ----\n\n /**\n * Resumes a suspended human-task bookmark (runs interactive activities via the workflow manager).\n */\n async resumeSuspendedHumanTask(request: ResumeSuspendedHumanTaskRequest): Promise<WorkflowResumeResult> {\n const userInput: Record<string, unknown> = {\n ...(request.userInput ?? {}),\n bookmarkId: request.bookmarkId,\n };\n if (request.suppressContinuation) {\n userInput[AXP_WORKFLOW_SUPPRESS_CONTINUATION_INPUT_KEY] = true;\n }\n\n let result = await this.workflowManager.resume(\n request.instanceId,\n request.activityId,\n request.outcome,\n userInput,\n request.taskToken,\n );\n\n if (result.success || result.errorCode !== AXP_WORKFLOW_ERROR_CODES.TASK_NOT_ASSIGNEE || !this.canTakeOver()) {\n if (!result.success) {\n await this.showResumeError(result);\n }\n return result;\n }\n\n const confirmed = await this.confirmReassignToSelf();\n if (!confirmed) {\n return { success: false, instanceId: request.instanceId, error: result.error, errorCode: result.errorCode };\n }\n\n const reassigned = await this.reassignBookmarkToCurrentUser(\n request.instanceId,\n request.bookmarkId,\n request.activityId,\n );\n if (!reassigned) {\n return { success: false, instanceId: request.instanceId, error: result.error, errorCode: result.errorCode };\n }\n\n result = await this.workflowManager.resume(\n request.instanceId,\n request.activityId,\n request.outcome,\n userInput,\n request.taskToken,\n );\n if (!result.success) {\n await this.showResumeError(result);\n }\n return result;\n }\n\n /**\n * Runs the first configured action on a suspended human-task bookmark (e.g. start-fill → questionnaire).\n */\n async executePrimaryHumanTaskAction(\n instanceId: string,\n activityId: string,\n options?: { suppressContinuation?: boolean; notifyViews?: boolean },\n ): Promise<WorkflowResumeResult | null> {\n const found = await this.bookmarkAccess.findActiveBookmark(instanceId, activityId);\n if (!found) {\n return null;\n }\n\n const payload = this.bookmarkAccess.parseHumanTaskPayload(found.bookmark);\n if (!payload?.taskToken) {\n return null;\n }\n\n const outcome = this.resolvePrimaryTaskOutcome(payload);\n const result = await this.resumeSuspendedHumanTask({\n instanceId,\n bookmarkId: found.bookmark.id,\n activityId,\n taskToken: payload.taskToken,\n outcome,\n suppressContinuation: options?.suppressContinuation ?? true,\n });\n\n if (options?.notifyViews !== false) {\n this.notifyWorkflowTaskViewsChanged();\n }\n\n return result;\n }\n\n /**\n * Reassigns a human-task bookmark to the current user (take over) without advancing the workflow.\n */\n async reassignBookmarkToCurrentUser(\n instanceId: string,\n bookmarkId: string,\n activityId: string,\n ): Promise<boolean> {\n const reassign = this.workflowEngine.reassignTaskToSelf?.bind(this.workflowEngine);\n if (!reassign) {\n return false;\n }\n const result = await reassign({ instanceId, bookmarkId, stepId: activityId });\n if (!result.success) {\n await this.showToast('@workflow-management:tasks.errors.reassign-failed');\n return false;\n }\n return true;\n }\n\n /**\n * Take over with confirmation dialog (task board \"Take Over\" action).\n */\n async reassignBookmarkToCurrentUserWithConfirm(\n instanceId: string,\n bookmarkId: string,\n activityId: string,\n ): Promise<boolean> {\n if (!this.canTakeOver()) {\n await this.showToast('@workflow-management:tasks.errors.not-assignee');\n return false;\n }\n const confirmed = await this.confirmReassignToSelf();\n if (!confirmed) {\n return true;\n }\n return this.reassignBookmarkToCurrentUser(instanceId, bookmarkId, activityId);\n }\n\n //#endregion\n\n //#region ---- Outcome resolution ----\n\n /** First action command name on the human-task bookmark (e.g. start-fill, approve). */\n resolvePrimaryTaskOutcome(payload: HumanTaskBookmarkPayload): string {\n const actions = [...(payload.actions?.prefix ?? []), ...(payload.actions?.suffix ?? [])] as AXPActionMenuItem[];\n for (const action of actions) {\n const outcome = action.command?.name ?? action.name;\n if (outcome && outcome !== 'unknown') {\n return outcome;\n }\n }\n return 'submit';\n }\n\n //#endregion\n\n //#region ---- UI helpers ----\n\n private canTakeOver(): boolean {\n return canReassignWorkflowTaskToSelf(this.sessionService);\n }\n\n private async confirmReassignToSelf(): Promise<boolean> {\n const title = await this.translationService.translateAsync(\n '@workflow-management:tasks.dialogs.reassign-to-self.title',\n );\n const message = await this.translationService.translateAsync(\n '@workflow-management:tasks.dialogs.reassign-to-self.message',\n );\n const dialogResult = await this.dialogService.confirm(title, message, 'warning', 'horizontal', false, 'cancel');\n return dialogResult.result === true;\n }\n\n private async showResumeError(result: WorkflowResumeResult): Promise<void> {\n const toastKey =\n result.errorCode === AXP_WORKFLOW_ERROR_CODES.TASK_NOT_ASSIGNEE\n ? '@workflow-management:tasks.errors.not-assignee'\n : undefined;\n if (toastKey) {\n await this.showToast(toastKey);\n return;\n }\n if (result.error) {\n this.toastService.show({\n color: 'danger',\n title: await this.translationService.translateAsync('@general:messages.generic.error.title'),\n content: result.error,\n });\n }\n }\n\n private async showToast(contentKey: string, color: AXStyleColorType = 'danger'): Promise<void> {\n const title = await this.translationService.translateAsync('@general:messages.generic.error.title');\n const content = await this.translationService.translateAsync(contentKey);\n this.toastService.show({ color, title, content });\n }\n\n /** Optional broadcast so open task-board views refresh; does not require task-board module at runtime. */\n notifyWorkflowTaskViewsChanged(provider?: string): void {\n this.eventService.publish('task-board.refresh', { provider });\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport {\n AXPWorkflowContinuationHook,\n AXPWorkflowContinuationOfferResult,\n AXPWorkflowContinuationStepContext,\n axpIsWorkflowInlineFrontendTask,\n axpIsWorkflowTaskBoardActivityType,\n AXPWorkflowTask,\n} from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMWorkflowManagementWorkflowInstanceEntityModel } from '../../entities/workflow-instance/workflow-instance.types';\nimport {\n createWorkflowInstanceBookmarkAccess,\n HumanTaskBookmarkPayload,\n WorkflowInstanceBookmarkRow,\n} from './workflow-instance-bookmark.access';\nimport { AXPWorkflowInstanceHumanTaskService } from './workflow-instance-human-task.service';\nimport {\n needsTakeOverForWorkflowInteractiveContinuation,\n normalizeWorkflowTaskUserIds,\n resolveWorkflowHumanTaskAssigneeId,\n needsTakeOverForWorkflowTaskContinuation,\n parseWorkflowTaskContinuationPayload,\n type WorkflowTaskContinuationPayload,\n shouldOfferWorkflowContinuationAfterStep,\n shouldOfferWorkflowInteractiveStepContinuation,\n shouldOfferWorkflowTaskContinuation,\n shouldSkipContinuationBeforeInteractive,\n} from './workflow-task-continuation';\n\n//#endregion\n\n//#region ---- Service ----\n\n/**\n * Offers \"continue to next step\" / take-over after workflow start, resume, and interactive chains.\n * Uses {@link AXPWorkflowInstanceHumanTaskService} only — not task board or popover.\n */\n@Injectable({ providedIn: 'root' })\nexport class AXPWorkflowTaskContinuationService implements AXPWorkflowContinuationHook {\n //#region ---- Services & Dependencies ----\n\n private readonly sessionService = inject(AXPSessionService);\n private readonly translationService = inject(AXTranslationService);\n private readonly dialogService = inject(AXDialogService);\n private readonly humanTaskService = inject(AXPWorkflowInstanceHumanTaskService);\n private readonly bookmarkAccess = createWorkflowInstanceBookmarkAccess();\n\n //#endregion\n\n //#region ---- Hook ----\n\n async offerBeforeInteractiveFlow(\n context: AXPWorkflowContinuationStepContext,\n ): Promise<AXPWorkflowContinuationOfferResult> {\n try {\n // Resume from task board already means the user chose to act on this step.\n if (context.completedActivityId) {\n return 'not-offered';\n }\n\n const nextTask = context.pendingNextTask;\n if (!nextTask || !axpIsWorkflowInlineFrontendTask(nextTask)) {\n return 'not-offered';\n }\n\n const instance = await this.bookmarkAccess.loadInstanceForContinuation(context.instanceId);\n if (!instance) {\n return 'not-offered';\n }\n\n const bookmarks = this.bookmarkAccess.getActiveBookmarks(instance);\n const activeActivityIds = bookmarks.map((b) => b.activityId);\n if (!shouldOfferWorkflowContinuationAfterStep(context, activeActivityIds)) {\n return 'not-offered';\n }\n\n const humanTaskAssigneeId = resolveWorkflowHumanTaskAssigneeId(instance, context.completedActivityId);\n if (\n shouldSkipContinuationBeforeInteractive(\n context,\n nextTask,\n this.sessionService,\n instance,\n bookmarks,\n humanTaskAssigneeId,\n )\n ) {\n return 'not-offered';\n }\n\n if (!shouldOfferWorkflowInteractiveStepContinuation(instance, this.sessionService, humanTaskAssigneeId)) {\n return 'not-offered';\n }\n\n const takeOver = needsTakeOverForWorkflowInteractiveContinuation(\n instance,\n this.sessionService,\n humanTaskAssigneeId,\n );\n const confirmed = await this.confirmContinueToNextStep(takeOver);\n return confirmed ? 'confirmed' : 'declined';\n } catch (error) {\n console.warn('[AXPWorkflowTaskContinuationService] offerBeforeInteractiveFlow failed', error);\n return 'not-offered';\n }\n }\n\n async offerAfterWorkflowStep(\n context: AXPWorkflowContinuationStepContext,\n ): Promise<AXPWorkflowContinuationOfferResult> {\n try {\n const expectedActivityId = context.pendingNextTask?.activityId;\n const instance = await this.bookmarkAccess.loadInstanceForContinuation(\n context.instanceId,\n expectedActivityId,\n );\n if (!instance) {\n return 'not-offered';\n }\n\n const activeActivityIds = this.bookmarkAccess\n .getActiveBookmarks(instance)\n .map((b) => b.activityId);\n if (!shouldOfferWorkflowContinuationAfterStep(context, activeActivityIds)) {\n return 'not-offered';\n }\n\n if (\n context.pendingNextTask &&\n axpIsWorkflowTaskBoardActivityType(context.pendingNextTask.activityType)\n ) {\n const offered = await this.offerFromPendingNextTask(instance, context, context.pendingNextTask);\n if (offered !== 'not-offered') {\n return offered;\n }\n }\n\n return this.offerFromInstanceBookmarks(instance, context);\n } catch (error) {\n console.warn('[AXPWorkflowTaskContinuationService] offerAfterWorkflowStep failed', error);\n return 'not-offered';\n }\n }\n\n //#endregion\n\n //#region ---- Offer paths ----\n\n private async offerFromPendingNextTask(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n context: AXPWorkflowContinuationStepContext,\n nextTask: AXPWorkflowTask,\n ): Promise<AXPWorkflowContinuationOfferResult> {\n const payload = this.enrichPayloadFromInstance(\n instance,\n this.buildPayloadFromWorkflowTask(nextTask),\n nextTask.activityId,\n );\n const bookmark = this.bookmarkAccess\n .getActiveBookmarks(instance)\n .find((b) => b.activityId === nextTask.activityId);\n const continuationCtx = {\n instance,\n bookmark: bookmark ?? { id: '', activityId: nextTask.activityId, type: 'user-task' },\n payload,\n sessionService: this.sessionService,\n completedBookmarkId: context.completedBookmarkId,\n completedActivityId: context.completedActivityId,\n };\n\n if (!shouldOfferWorkflowTaskContinuation(continuationCtx)) {\n return 'not-offered';\n }\n\n return this.confirmAndAdvance(instance.id, continuationCtx, nextTask.activityId, bookmark?.id);\n }\n\n private async offerFromInstanceBookmarks(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n context: AXPWorkflowContinuationStepContext,\n ): Promise<AXPWorkflowContinuationOfferResult> {\n for (const bookmark of this.bookmarkAccess.getActiveBookmarks(instance)) {\n if (this.isCompletedBookmark(bookmark, context)) {\n continue;\n }\n\n const parsed = parseWorkflowTaskContinuationPayload(bookmark);\n if (!parsed) {\n continue;\n }\n const payload = this.enrichPayloadFromInstance(instance, parsed, bookmark.activityId);\n\n const continuationCtx = {\n instance,\n bookmark,\n payload,\n sessionService: this.sessionService,\n completedBookmarkId: context.completedBookmarkId,\n completedActivityId: context.completedActivityId,\n };\n\n if (!shouldOfferWorkflowTaskContinuation(continuationCtx)) {\n continue;\n }\n\n return this.confirmAndAdvance(instance.id, continuationCtx, bookmark.activityId, bookmark.id);\n }\n return 'not-offered';\n }\n\n private async confirmAndAdvance(\n instanceId: string,\n continuationCtx: Parameters<typeof shouldOfferWorkflowTaskContinuation>[0],\n nextActivityId: string,\n nextBookmarkId?: string,\n ): Promise<AXPWorkflowContinuationOfferResult> {\n const takeOver = needsTakeOverForWorkflowTaskContinuation(continuationCtx);\n const confirmed = await this.confirmContinueToNextStep(takeOver);\n if (!confirmed) {\n return 'declined';\n }\n\n if (takeOver) {\n let bookmarkIdToUse = nextBookmarkId;\n if (!bookmarkIdToUse) {\n const found = await this.bookmarkAccess.findActiveBookmark(instanceId, nextActivityId);\n bookmarkIdToUse = found?.bookmark.id;\n }\n if (!bookmarkIdToUse) {\n return 'confirmed';\n }\n const reassigned = await this.humanTaskService.reassignBookmarkToCurrentUser(\n instanceId,\n bookmarkIdToUse,\n nextActivityId,\n );\n if (!reassigned) {\n return 'confirmed';\n }\n }\n\n await this.humanTaskService.executePrimaryHumanTaskAction(instanceId, nextActivityId, {\n suppressContinuation: true,\n notifyViews: true,\n });\n return 'confirmed';\n }\n\n //#endregion\n\n //#region ---- Helpers ----\n\n private isCompletedBookmark(\n bookmark: WorkflowInstanceBookmarkRow,\n context: AXPWorkflowContinuationStepContext,\n ): boolean {\n if (context.completedBookmarkId && bookmark.id === context.completedBookmarkId) {\n return true;\n }\n if (context.completedActivityId && bookmark.activityId === context.completedActivityId) {\n return true;\n }\n return false;\n }\n\n private enrichPayloadFromInstance(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n payload: HumanTaskBookmarkPayload | WorkflowTaskContinuationPayload,\n activityId: string,\n ): HumanTaskBookmarkPayload {\n const assigneeId = resolveWorkflowHumanTaskAssigneeId(instance, activityId);\n if (assigneeId && normalizeWorkflowTaskUserIds(payload.assignedUserIds).length === 0) {\n return { ...(payload as HumanTaskBookmarkPayload), assignedUserIds: [assigneeId] };\n }\n return payload as HumanTaskBookmarkPayload;\n }\n\n private buildPayloadFromWorkflowTask(task: AXPWorkflowTask): HumanTaskBookmarkPayload {\n const input = task.input ?? {};\n const assigned = input['assignedUserIds'];\n const assignedUserIds = Array.isArray(assigned)\n ? assigned.map(String)\n : assigned != null && String(assigned).length > 0\n ? [String(assigned)]\n : null;\n\n return {\n activityType: task.activityType,\n activityName: task.activityName ?? task.activityType,\n taskToken: task.taskToken,\n assignedUserIds,\n candidateUserIds: input['candidateUserIds'] as string[] | null | undefined,\n title: input['title'] as string | undefined,\n description: input['description'] as string | undefined,\n actions: input['actions'] as HumanTaskBookmarkPayload['actions'],\n context: input['context'] as Record<string, unknown> | undefined,\n };\n }\n\n private async confirmContinueToNextStep(requiresTakeOver: boolean): Promise<boolean> {\n const title = await this.translationService.translateAsync(\n '@workflow-management:tasks.dialogs.continue-next-step.title',\n );\n const messageKey = requiresTakeOver\n ? '@workflow-management:tasks.dialogs.continue-next-step.take-over-message'\n : '@workflow-management:tasks.dialogs.continue-next-step.message';\n const message = await this.translationService.translateAsync(messageKey);\n const dialogResult = await this.dialogService.confirm(title, message, 'primary', 'horizontal', false, 'cancel');\n return dialogResult.result === true;\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPStatusProvider, AXPStatusTransition, AXPSystemStatusType, systemStatusToDefinition } from '@acorex/platform/contracts';\n\n//#endregion\n\n//#region ---- Workflow definition lifecycle status ----\n\n/**\n * Publication lifecycle for workflow definitions: draft, review, published, archived.\n */\nexport class AXMWorkflowDefinitionStatusProvider extends AXPStatusProvider {\n readonly key = 'workflow-management.status.workflow-definition';\n\n readonly defaultStatus = AXPSystemStatusType.Draft;\n\n readonly statuses = [\n systemStatusToDefinition(AXPSystemStatusType.Draft, {\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.PendingReview, {\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Published, {\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Archived, {\n generateView: false,\n }),\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXPSystemStatusType.Draft,\n to: AXPSystemStatusType.PendingReview,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.submit-review',\n },\n {\n from: AXPSystemStatusType.Draft,\n to: AXPSystemStatusType.Published,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.publish-direct',\n },\n {\n from: AXPSystemStatusType.PendingReview,\n to: AXPSystemStatusType.Published,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.publish',\n },\n {\n from: AXPSystemStatusType.PendingReview,\n to: AXPSystemStatusType.Draft,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.revise',\n },\n {\n from: AXPSystemStatusType.Published,\n to: AXPSystemStatusType.Draft,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.unpublish',\n },\n {\n from: AXPSystemStatusType.Published,\n to: AXPSystemStatusType.Archived,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.archive',\n },\n {\n from: AXPSystemStatusType.Draft,\n to: AXPSystemStatusType.Archived,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.status.transitions.archive',\n },\n ];\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex/platform/core';\nimport { RootConfig } from './contracts';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\n/**\n * Workflow Management Module Manifest.\n * Defines module metadata, features, and provider references.\n */\nexport const WorkflowManagementManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n\n // Module dependencies (optional)\n};\n\n//#endregion\n\n","import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex/platform/auth';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from './contracts';\nimport { AXMPermissionsKeys } from './contracts/permission.keys';\n\n@Injectable()\nexport class AXMPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {\n async define(context: AXPPermissionDefinitionProviderContext): Promise<void> {\n const keys = AXMPermissionsKeys;\n\n context\n .addGroup(\n RootConfig.module.name,\n '@workflow-management:module.permissions.title',\n '@workflow-management:module.permissions.description',\n )\n .addPermission(\n keys.WorkflowInstance.ReassignToSelf,\n '@workflow-management:workflow-instance.permissions.reassign-to-self.title',\n '@workflow-management:workflow-instance.permissions.reassign-to-self.description',\n )\n .endPermission()\n .endGroup();\n }\n}\n","import { RootConfig } from './contracts';\nimport { AXMCalendarManagementModule } from '@acorex/modules/calendar-management';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_PROTECTED_ROUTE_GUARDS, AXP_STATUS_PROVIDERS } from '@acorex/platform/common';\nimport {\n AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,\n AXP_MODULE_MANIFEST_PROVIDER,\n provideLazyProvider,\n} from '@acorex/platform/core';\nimport { AXPDomainModule } from '@acorex/platform/domain';\nimport { AXP_PAGE_COMPONENT_PROVIDER } from '@acorex/platform/layout/components';\nimport { AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXP_WIDGET_DEFINITION_PROVIDER, AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { provideCommandSetups } from '@acorex/platform/runtime';\nimport {\n AXP_ACTIVITY_CATEGORY_PROVIDER,\n AXP_ACTIVITY_PROVIDER,\n AXP_WORKFLOW_CATEGORY_PROVIDER,\n AXP_WORKFLOW_PROVIDER,\n} from '@acorex/platform/workflow';\nimport { inject, NgModule } from '@angular/core';\nimport { Routes, ROUTES } from '@angular/router';\nimport { AXMWorkflowManagementModuleEntityProvider } from './entity.provider';\nimport { AXMWorkflowDashboardWidgetsProvider } from './features/dashboard/widgets';\nimport {\n CartableTaskActivity,\n CreateEntityFormActivity,\n HumanTaskActivity,\n RejectionReasonActivity,\n ShowConfirmPopupActivity,\n ShowLayoutPopupActivity,\n ShowToastActivity,\n SignOffActivity,\n} from './features/engine/activities';\nimport { AXMWorkflowPluginsModule } from './features/workflow-run-plugin/workflow-plugins.module';\nimport { AXMWorkflowManagementWidgetsProvider } from './widget-definition.provider';\n\nimport { AXP_WORKFLOW_CONTINUATION_HOOK } from '@acorex/platform/workflow';\nimport { AXMAutomationEvaluatorScopeProvider } from './features/automation-evaluator-scope.provider';\nimport { AXMWorkflowActivitiesDefinitionProvider } from './features/engine/activities/workflow-activities-definition.provider';\nimport { AXCCategoryProvider } from './features/engine/category.provider';\nimport { provideTaskWorkflow } from './features/engine/provider.task';\nimport { AXMWorkflowCategoryProvider } from './features/engine/workflows/workflow-category.provider';\nimport { AXMWorkflowDefinitionProvider } from './features/engine/workflows/workflow-definition.provider';\nimport { AXPWorkflowTaskContinuationService } from './features/task-provider/workflow-task-continuation.service';\nimport { AXMWorkflowDefinitionStatusProvider } from './features/workflow-definition-status.provider';\nimport { WorkflowManagementManifest } from './manifest';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMPermissionDefinitionProvider } from './permission-definition.provider';\n\nfunction routesFactory() {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n const routes: Routes = [\n {\n path: ':app/workflow-management/studio',\n loadComponent: () => {\n return config.viewers.root();\n },\n canActivate: [...AXP_PROTECTED_ROUTE_GUARDS],\n data: { reuse: true },\n children: [\n // {\n // path: '',\n // loadComponent: () =>\n // import('./features/engine/studio/workflow-studio.component').then((c) => c.WorkflowStudioComponent),\n // },\n ],\n },\n ];\n return routes;\n}\n\n@NgModule({\n imports: [AXMCalendarManagementModule, AXPDomainModule, AXMWorkflowPluginsModule, AXPWidgetCoreModule],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n { provide: AXP_WIDGET_DEFINITION_PROVIDER, useClass: AXMWorkflowManagementWidgetsProvider, multi: true },\n { provide: AXP_WIDGET_DEFINITION_PROVIDER, useClass: AXMWorkflowDashboardWidgetsProvider, multi: true },\n provideCommandSetups([\n {\n key: 'WorkflowManagement.WorkflowDefinition:ExecuteWithInput',\n command: () => import('./features/entities/workflow-definition/commands/execute-workflow-with-input.command').then((c) => c.ExecuteWorkflowWithInputCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowDefinition:Execute',\n command: () => import('./features/entities/workflow-definition/commands/execute-workflow.command').then((c) => c.ExecuteWorkflowCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowDefinition:Activities:Save',\n command: () =>\n import('./features/entities/workflow-definition/commands/save-workflow-definition-activities.command').then(\n (c) => c.SaveWorkflowDefinitionActivitiesCommand,\n ),\n },\n {\n key: 'workflow-activity:show-toast',\n command: () => import('./features/engine/activities').then((c) => c.ShowToastActivity),\n },\n {\n key: 'workflow-activity:create-entity',\n command: () => import('./features/engine/activities').then((c) => c.AXPCreateEntityActivity),\n },\n {\n key: 'workflow-activity:show-confirm-popup',\n command: () => import('./features/engine/activities').then((c) => c.ShowConfirmPopupActivity),\n },\n {\n key: 'workflow-activity:show-layout-popup',\n command: () => import('./features/engine/activities').then((c) => c.ShowLayoutPopupActivity),\n },\n {\n key: 'workflow-activity:create-entity-form',\n command: () => import('./features/engine/activities').then((c) => c.CreateEntityFormActivity),\n },\n {\n key: 'workflow-activity:human-task',\n command: () => import('./features/engine/activities').then((c) => c.HumanTaskActivity),\n },\n {\n key: 'workflow-activity:cartable',\n command: () => import('./features/engine/activities').then((c) => c.CartableTaskActivity),\n },\n {\n key: 'workflow-activity:sign-off',\n command: () => import('./features/engine/activities').then((c) => c.SignOffActivity),\n },\n {\n key: 'workflow-activity:rejection-reason',\n command: () => import('./features/engine/activities').then((c) => c.RejectionReasonActivity),\n },\n {\n key: 'WorkflowManagement.WorkflowRun:Continue',\n command: () => import('./features/workflow-run-plugin/commands').then((c) => c.ContinueWorkflowRunCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowRun:CancelRun',\n command: () => import('./features/workflow-run-plugin/commands').then((c) => c.CancelWorkflowRunCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowRun:TakeOver',\n command: () => import('./features/workflow-run-plugin/commands').then((c) => c.TakeOverWorkflowRunCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowRun:ShowHistory',\n command: () =>\n import('./features/workflow-run-plugin/commands').then((c) => c.ShowWorkflowRunHistoryCommand),\n },\n {\n key: 'WorkflowManagement.WorkflowRun:ShowHistory',\n command: () =>\n import('./features/workflow-run-plugin/commands').then((c) => c.ShowWorkflowRunHistoryCommand),\n },\n ]),\n // provideEntity([RootConfig.entities.activityDefinition.fullName]),\n // Entity Definition Loader\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMWorkflowManagementModuleEntityProvider,\n multi: true,\n },\n provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () =>\n import('./features/workflow-instance-activity-instances-page').then(\n (m) => m.AXMWorkflowInstanceActivityInstancesPageComponentProvider,\n ),\n ),\n provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () =>\n import('./features/workflow-definition-activities-page').then(\n (m) => m.AXMWorkflowDefinitionActivitiesPageComponentProvider,\n ),\n ),\n // Automation condition builder: default automation.rules(refType, refId); modules override for their refTypes\n {\n provide: AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,\n useClass: AXMAutomationEvaluatorScopeProvider,\n multi: true,\n },\n // Menu Provider\n {\n provide: AXP_STATUS_PROVIDERS,\n useClass: AXMWorkflowDefinitionStatusProvider,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n // Permission Definition Provider\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: WorkflowManagementManifest,\n multi: true,\n },\n {\n provide: AXP_WORKFLOW_PROVIDER,\n useClass: AXMWorkflowDefinitionProvider,\n multi: true,\n },\n {\n provide: AXP_ACTIVITY_CATEGORY_PROVIDER,\n useClass: AXCCategoryProvider,\n multi: true,\n },\n {\n provide: AXP_ACTIVITY_PROVIDER,\n useClass: AXMWorkflowActivitiesDefinitionProvider,\n multi: true,\n },\n // Workflow Category Provider\n {\n provide: AXP_WORKFLOW_CATEGORY_PROVIDER,\n useClass: AXMWorkflowCategoryProvider,\n multi: true,\n },\n // Provide activity classes for dependency injection (only frontend activities)\n ShowConfirmPopupActivity,\n ShowLayoutPopupActivity,\n CreateEntityFormActivity,\n HumanTaskActivity,\n CartableTaskActivity,\n ShowToastActivity,\n RejectionReasonActivity,\n SignOffActivity,\n // Per-workflow task provider (lazy-loaded). Import provideGenericWorkflowTaskProvider from provider.task.ts:\n // provideGenericWorkflowTaskProvider({\n // name: 'leave-request',\n // title: 'Leave Request Tasks',\n // icon: 'fa-light fa-diagram-project',\n // definitionId: 'createLeaveRequest',\n // }),\n provideTaskWorkflow(),\n {\n provide: AXP_WORKFLOW_CONTINUATION_HOOK,\n useExisting: AXPWorkflowTaskContinuationService,\n },\n ],\n})\nexport class AXMWorkflowManagementModule {}\n","import {\n AXPEntity,\n AXPWidgetsCatalog,\n AXPWidgetsList,\n createAllQueryView,\n entityMasterCrudActions,\n entityMasterDeleteAction,\n entityMasterRecordActions,\n} from '@acorex/platform/contracts';\nimport { RootConfig } from '../../contracts';\n\n/** @deprecated Use category plugin (ActivityDefinitionCategory). This entity is no longer loaded by the module. */\nexport async function factoryActivityCategory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: 'ActivityCategory',\n title: '@workflow-management:activities.entities.activity-category.title',\n icon: 'fa-light fa-folder',\n parentKey: 'parentId',\n formats: {\n individual: '@workflow-management:activities.entities.activity-category.title',\n plural: '@workflow-management:activities.entities.activity-category.plural',\n searchResult: {\n title: '{{ title }}',\n description: '{{ description }}',\n },\n },\n plugins: [{ name: 'history' }],\n groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'parentId',\n title: '@general:terms.classification.parent',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.EntityCategory,\n options: {\n entity: `${RootConfig.module.name}.ActivityCategory`,\n multiple: true,\n textField: 'title',\n valueField: 'id',\n parentKey: 'parentId',\n },\n },\n },\n options: { filter: { advance: { enabled: true }, inline: { enabled: true } } },\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.largeText } },\n },\n {\n name: 'childrenCount',\n title: '@general:terms.classification.children',\n groupId: 'basic-info',\n schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },\n },\n {\n name: 'itemsCount',\n title: '@general:terms.classification.items',\n groupId: 'basic-info',\n schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },\n },\n ],\n columns: [{ name: 'title' }, { name: 'description' }, { name: 'childrenCount' }, { name: 'itemsCount' }],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },\n { name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },\n { name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },\n ],\n actions: [...entityMasterRecordActions(), entityMasterDeleteAction()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPWidgetsCatalog, AXPWidgetsList, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/contracts';\nimport { RootConfig } from '../../contracts';\n\nexport async function factoryActivityDefinition(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.activityDefinition.name,\n title: RootConfig.entities.activityDefinition.title,\n icon: RootConfig.entities.activityDefinition.icon,\n formats: {\n individual: RootConfig.entities.activityDefinition.title,\n plural: RootConfig.entities.activityDefinition.titlePlural,\n searchResult: {\n title: '{{ title || name }}',\n description: '{{ description }}',\n },\n },\n plugins: [\n { name: 'history' },\n { name: 'category', options: { appearance: { icon: true, color: true }, metaData: { enabled: true } } },\n { name: 'icon' },\n ],\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'configuration', title: '@general:terms.interface.configuration' },\n ],\n properties: [\n {\n name: 'name',\n title: '@general:terms.common.name',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n validations: [{ rule: 'required' }, { rule: 'unique' }],\n },\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'string', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'type',\n title: '@general:terms.common.type',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text, options: { multiLanguage: true } },\n },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.largeText, options: { rows: 3, multiLanguage: true } },\n },\n },\n {\n name: 'category',\n title: '@general:terms.classification.category',\n groupId: 'configuration',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.EntityCategory,\n options: {\n entity: `${RootConfig.module.name}.ActivityDefinitionCategory`,\n multiple: false,\n textField: 'title',\n valueField: 'id',\n parentKey: 'parentId',\n },\n },\n },\n options: { filter: { advance: { enabled: true }, inline: { enabled: true } } },\n },\n {\n name: 'executionMode',\n title: '@workflow-management:activities.entities.activity-definition.fields.execution-mode.title',\n groupId: 'configuration',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { value: 'frontend', text: 'Frontend' },\n { value: 'backend', text: 'Backend' },\n { value: 'both', text: 'Both' },\n ],\n },\n },\n },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'taskType',\n title: '@workflow-management:activities.entities.activity-definition.fields.task-type.title',\n groupId: 'configuration',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { value: 'human-task', text: 'Human Task' },\n { value: 'ui-activity', text: 'UI Activity' },\n { value: 'system-activity', text: 'System Activity' },\n ],\n },\n },\n },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'isBrowsable',\n title: '@workflow-management:activities.entities.activity-definition.fields.is-browsable.title',\n groupId: 'configuration',\n schema: { dataType: 'boolean', interface: { type: AXPWidgetsCatalog.toggle } },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'isContainer',\n title: '@workflow-management:activities.entities.activity-definition.fields.is-container.title',\n groupId: 'configuration',\n schema: { dataType: 'boolean', interface: { type: AXPWidgetsCatalog.toggle } },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'outcomes',\n title: '@workflow-management:activities.entities.activity-definition.fields.outcomes.title',\n groupId: 'configuration',\n schema: {\n dataType: 'array',\n interface: { type: AXPWidgetsList.Advanced.CodeEditor, options: { language: 'json' } },\n },\n },\n {\n name: 'inputs',\n title: '@workflow-management:activities.entities.activity-definition.fields.inputs.title',\n groupId: 'configuration',\n schema: {\n dataType: 'array',\n interface: { type: AXPWidgetsList.Advanced.CodeEditor, options: { language: 'json' } },\n },\n },\n {\n name: 'outputs',\n title: '@workflow-management:activities.entities.activity-definition.fields.outputs.title',\n groupId: 'configuration',\n schema: {\n dataType: 'array',\n interface: { type: AXPWidgetsList.Advanced.CodeEditor, options: { language: 'json' } },\n },\n },\n ],\n columns: [\n { name: 'title', title: '@general:terms.common.title', showAs: { type: AXPWidgetsCatalog.text } },\n { name: 'name', title: '@general:terms.common.name', showAs: { type: AXPWidgetsCatalog.text } },\n { name: 'type', title: '@general:terms.common.type', showAs: { type: AXPWidgetsCatalog.text } },\n { name: 'executionMode', title: '@workflow-management:activities.entities.activity-definition.fields.execution-mode.title' },\n { name: 'taskType', title: '@workflow-management:activities.entities.activity-definition.fields.task-type.title' },\n { name: 'category', title: '@general:terms.classification.category' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }, { id: 'configuration' }],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'category', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'executionMode', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'taskType', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBrowsable', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'isContainer', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'inputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outcomes', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }, { id: 'configuration' }],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'category', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'executionMode', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'taskType', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBrowsable', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'isContainer', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'inputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outcomes', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title || name }}',\n sections: [{ id: 'basic-info' }, { id: 'configuration' }],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'type', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'category', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'executionMode', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'taskType', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBrowsable', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'isContainer', layout: { positions: { lg: { colSpan: 3 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'inputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outputs', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'outcomes', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPWidgetsList, createAllQueryView, entityDetailsCrudActions, entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/contracts';\n//#region ---- Imports ----\nimport { RootConfig } from '../../contracts';\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\nexport async function factoryAutomation(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.automation.name,\n title: RootConfig.entities.automation.title,\n icon: RootConfig.entities.automation.icon,\n plugins: [\n { name: 'history' },\n { name: 'audit-info' },\n {\n name: 'unique-fields',\n options: { fields: 'name', scope: 'parent', parentField: 'refId' },\n },\n ],\n formats: {\n individual: RootConfig.entities.automation.title,\n plural: RootConfig.entities.automation.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ context.eval(\"refType\") + \" (\" + context.eval(\"refId\") + \")\" }}',\n },\n },\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'condition', title: '@workflow-management:automations.entities.automation.groups.condition' },\n { id: 'command', title: '@workflow-management:automations.entities.automation.groups.command' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'refType',\n title: '@workflow-management:automations.entities.automation.fields.ref-type.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder:\n '@workflow-management:automations.entities.automation.fields.ref-type.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'refId',\n title: '@workflow-management:automations.entities.automation.fields.ref-id.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder:\n '@workflow-management:automations.entities.automation.fields.ref-id.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'name',\n title: '@workflow-management:automations.entities.automation.fields.name.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder:\n '@workflow-management:automations.entities.automation.fields.name.placeholder',\n },\n },\n },\n validations: [\n { rule: 'required' },\n { rule: 'variable-name' },\n ],\n },\n {\n name: 'title',\n title: '@workflow-management:automations.entities.automation.fields.title.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder:\n '@workflow-management:automations.entities.automation.fields.title.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'description',\n title: '@workflow-management:automations.entities.automation.fields.description.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LargeTextBox,\n options: {\n rows: 3,\n placeholder:\n '@workflow-management:automations.entities.automation.fields.description.placeholder',\n },\n },\n },\n },\n {\n name: 'condition',\n title: '@workflow-management:automations.entities.automation.fields.condition.title',\n groupId: 'condition',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsList.ExpressionBuilders.ConditionBuilder,\n options: {\n filterDefinitions:\n \"{{ automation.rules(context.eval('refType'), context.eval('refId')) }}\",\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'command',\n title: '@workflow-management:automations.entities.automation.fields.command.title',\n groupId: 'command',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsList.Editors.ActivityCommandConfigurator,\n options: {},\n },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }, { name: 'description' }, { name: 'command' }],\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'condition', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'command', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'refType', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'refId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n {\n name: 'condition',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n {\n name: 'command',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'condition', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'command', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'refType', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'refId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n {\n name: 'condition',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n {\n name: 'command',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n { id: 'basic-info', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'condition', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'command', order: 3, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'refType', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'refId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n {\n name: 'condition',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n {\n name: 'command',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12 } },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n","import { AXPEntityModel, type AXPFilterClause } from '@acorex/platform/contracts';\n//#region ---- Imports ----\n//#endregion\n\n//#region ---- Automation Model ----\n\n/**\n * Reusable automation entity model.\n * refType + refId reference any parent entity (e.g. AssessmentManagement.Questionnaire, refId = questionnaire id).\n */\nexport interface AXMWorkflowManagementAutomationEntityModel extends AXPEntityModel<string> {\n /** Entity type of the parent record (e.g. \"AssessmentManagement.Questionnaire\"). */\n refType: string;\n /** Parent record id. */\n refId: string;\n name?: string;\n title?: string;\n description?: string;\n condition: AXPFilterClause;\n /** Activity/command key and parameters (from activity-command-configurator). */\n command: { commandKey: string; params?: Record<string, unknown> };\n}\n\n//#endregion\n","import { AXPEntity, AXPEntityCommandScope, AXPWidgetsCatalog, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/contracts';\nimport { RootConfig, WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY } from '../../contracts';\n\nexport async function factoryWorkflowDefinition(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.workflowDefinition.name,\n title: RootConfig.entities.workflowDefinition.title,\n icon: RootConfig.entities.workflowDefinition.icon,\n formats: {\n individual: RootConfig.entities.workflowDefinition.title,\n plural: RootConfig.entities.workflowDefinition.titlePlural,\n searchResult: {\n title: '{{ title || name }}',\n description: '{{ description }}',\n },\n },\n plugins: [\n { name: 'history' },\n { name: 'catalog-scope' },\n { name: 'lock' },\n { name: 'archive' },\n {\n name: 'status',\n options: {\n definition: 'workflow-management.status.workflow-definition',\n field: 'statusId',\n generate: { views: { enabled: true } },\n },\n },\n ],\n pages: [\n {\n componentKey: WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY,\n field: 'graph',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.pages.activities.title',\n icon: 'fa-light fa-list-ol',\n layout: { order: 1, position: 'after' },\n },\n ],\n groups: [\n {\n id: 'basicInfo',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.groups.basic-info',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basicInfo',\n schema: {\n dataType: 'uuid',\n visible: false,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'name',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.name.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'string',\n readonly: '{{context.id}}',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder:\n '@workflow-management:workflow-definitions.entities.workflow-definition.fields.name.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }, { rule: 'unique' }],\n },\n {\n name: 'title',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.title.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n multiLanguage: true,\n placeholder:\n '@workflow-management:workflow-definitions.entities.workflow-definition.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'description',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.description.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n options: {\n rows: 3,\n multiLanguage: true,\n placeholder:\n '@workflow-management:workflow-definitions.entities.workflow-definition.fields.description.placeholder',\n },\n },\n },\n },\n {\n name: 'version',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.version.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'number',\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.number,\n },\n readonly: true,\n },\n },\n {\n name: 'isLatest',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.is-latest.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'boolean',\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n readonly: true,\n },\n },\n {\n name: 'createdAt',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.created-at.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'date',\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n readonly: true,\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true } },\n },\n },\n {\n name: 'schemaVersion',\n title: 'Schema version',\n groupId: 'basicInfo',\n schema: {\n dataType: 'string',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'graph',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.graph.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'object',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'variables',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.variables.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'array',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'inputs',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.workflow-inputs.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'array',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'outputs',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.outputs.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'array',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'customProperties',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.custom-properties.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'object',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'extensions',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.extensions.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'object',\n visible: false,\n nullable: true,\n },\n },\n {\n name: 'bindings',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.bindings.title',\n groupId: 'basicInfo',\n schema: {\n dataType: 'array',\n visible: false,\n nullable: true,\n },\n },\n ],\n columns: [\n {\n name: 'title',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.title.title',\n showAs: { type: AXPWidgetsCatalog.text },\n },\n {\n name: 'name',\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.fields.name.title',\n showAs: { type: AXPWidgetsCatalog.text },\n },\n ],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basicInfo' }],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basicInfo' }],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'basicInfo', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@workflow-management:workflow-definitions.actions.execute.title',\n name: 'execute-workflow',\n command: {\n name: 'WorkflowManagement.WorkflowDefinition:ExecuteWithInput',\n options: {\n workflowId: '{{ context.eval(\"name\") }}',\n },\n },\n icon: 'fa-light fa-play',\n color: 'success',\n priority: 'primary',\n type: 'execute',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'createdAt', dir: 'desc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPWidgetsCatalog, AXPWidgetsList, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/contracts';\nimport { RootConfig ,WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY } from '../../contracts';\n\nexport async function factoryWorkflowInstance(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.workflowInstance.name,\n title: RootConfig.entities.workflowInstance.title,\n icon: RootConfig.entities.workflowInstance.icon,\n pages: [\n {\n componentKey: WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY,\n title: '@workflow-management:workflow-instances.entities.workflow-instance.pages.activity-instances.title',\n icon: 'fa-light fa-list-ol',\n layout: { order: 1, position: 'after' },\n },\n ],\n formats: {\n individual: RootConfig.entities.workflowInstance.title,\n plural: RootConfig.entities.workflowInstance.titlePlural,\n searchResult: {\n title: '{{ workflowTitle || name || definitionId }}',\n description: '{{ statusDisplay }}',\n },\n },\n plugins: [{ name: 'history' }],\n groups: [\n {\n id: 'overview',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.groups.overview',\n },\n {\n id: 'variables',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.groups.variables',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'overview',\n schema: {\n dataType: 'uuid',\n visible: false,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'workflowTitle',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.workflow-title.title',\n groupId: 'overview',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n readonly: true,\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: true } },\n },\n {\n name: 'statusDisplay',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.status-display.title',\n groupId: 'overview',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n readonly: true,\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: true } },\n },\n {\n name: 'startedAt',\n title: 'Start Date',\n groupId: 'overview',\n schema: {\n dataType: 'datetime',\n interface: { type: AXPWidgetsCatalog.dateTime ,\n options: { format: 'datetime' },\n },\n readonly: true,\n },\n options: { filter: { advance: { enabled: true }, inline: { enabled: false } }, sort: { enabled: true } },\n },\n {\n name: 'assignUser',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.assign-user-display.title',\n groupId: 'overview',\n schema: {\n dataType: 'object',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n expose: [\n { source: 'id', target: 'assignUserRef.id' },\n { source: 'displayName', target: 'assignUserRef.displayName' },\n ],\n },\n },\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: false } },\n },\n {\n name: 'currentActivityTitle',\n title: 'Current Activity',\n groupId: 'overview',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n readonly: true,\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: true } },\n },\n {\n name: 'nextActivityTitle',\n title: 'Next Activity',\n groupId: 'overview',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n readonly: true,\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: true } },\n },\n {\n name: 'progressPercentage',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.progress-percentage.title',\n groupId: 'overview',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsCatalog.progressBar,\n options: { total: 100, showText: true, textFormat: 'percentage' },\n },\n readonly: true,\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: false } },\n },\n {\n name: 'workflowVariablesTable',\n title: '',\n groupId: 'variables',\n schema: {\n dataType: 'array',\n readonly: true,\n interface: {\n type: AXPWidgetsList.Advanced.DataList,\n options: {\n disabled: true,\n paging: false,\n showIndex: true,\n showHeader: true,\n columns: [\n {\n name: 'name',\n title:\n '@workflow-management:workflow-instances.entities.workflow-instance.fields.workflow-variables.column-key',\n width: '180px',\n },\n {\n name: 'title',\n title:\n '@workflow-management:workflow-instances.entities.workflow-instance.fields.workflow-variables.column-title',\n width: '200px',\n },\n {\n name: 'value',\n title:\n '@workflow-management:workflow-instances.entities.workflow-instance.fields.workflow-variables.column-value',\n },\n ],\n },\n },\n },\n options: { filter: { advance: { enabled: false }, inline: { enabled: false } }, sort: { enabled: false } },\n },\n ],\n columns: [\n {\n name: 'workflowTitle',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.workflow-title.title',\n showAs: { type: AXPWidgetsCatalog.text },\n },\n {\n name: 'statusDisplay',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.status-display.title',\n showAs: { type: AXPWidgetsCatalog.text },\n options: { width: '180px' },\n },\n {\n name: 'startedAt',\n title: 'Start Date',\n showAs: { type: AXPWidgetsCatalog.text },\n options: { width: '170px' },\n },\n {\n name: 'assignUser',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.assign-user-display.title',\n options: { width: '220px', dataPath: 'assignUserRef.displayName' },\n },\n {\n name: 'currentActivityTitle',\n title: 'Current Activity',\n showAs: { type: AXPWidgetsCatalog.text },\n // options: { width: '220px' },\n },\n {\n name: 'progressPercentage',\n title: '@workflow-management:workflow-instances.entities.workflow-instance.fields.progress-percentage.title',\n showAs: { type: AXPWidgetsCatalog.progressBar },\n options: { width: '140px' },\n },\n {\n name: 'nextActivityTitle',\n title: 'Next Activity',\n showAs: { type: AXPWidgetsCatalog.text },\n // options: { width: '220px' },\n },\n ],\n interfaces: {\n master: {\n single: {\n title: '{{ workflowTitle || name || definitionId }}',\n sections: [\n { id: 'overview', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'variables', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'workflowTitle', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'statusDisplay', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'startedAt', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'assignUser', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'currentActivityTitle', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'nextActivityTitle', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'progressPercentage', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'workflowVariablesTable', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'createdAt', dir: 'desc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","// Entity exports - services and modules removed, handled by middleware\n// Exporting entity types for use in feature components\n\nexport * from './activity-category';\nexport * from './activity-definition';\nexport * from './automation';\nexport * from './workflow-definition';\nexport * from './workflow-instance';\n","//#region ---- Workflow task context (reserved keys) ----\n\n/**\n * Human-task / cartable `context` payload: technical ids at the root; display metadata under reserved keys.\n *\n * @example\n * ```json\n * {\n * \"leaveRequestId\": \"{{ variables.leaveRequestId }}\",\n * \"_taskI18n\": {\n * \"employeeDisplayName\": \"{{ variables.employeeDisplayName }}\",\n * \"leaveTypeTitle\": \"{{ variables.leaveTypeTitle }}\"\n * },\n * \"_taskTitleParts\": [\n * \"{{ variables.employeeDisplayName }}\",\n * \"{{ variables.leaveTypeTitle }}\"\n * ]\n * }\n * ```\n */\n\n/** Interpolation map for `@scope:key` task title and description strings. */\nexport const AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY = '_taskI18n';\n\n/** Ordered segments joined with \" — \" when bookmark title is still a generic activity label. */\nexport const AXP_WORKFLOW_TASK_CONTEXT_TITLE_PARTS_KEY = '_taskTitleParts';\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXFormatService } from '@acorex/core/format';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSettingsService } from '@acorex/platform/common';\nimport { AXPRegionalSetting, type AXPWorkflowState } from '@acorex/platform/contracts';\nimport { AXPExpressionEvaluatorService } from '@acorex/platform/core';\nimport { WorkflowExpressionScopeService } from '@acorex/platform/workflow';\nimport { AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY } from './workflow-task-context.constants';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface WorkflowTaskTranslationDeps {\n expressionScopeService: WorkflowExpressionScopeService;\n expressionEvaluator: AXPExpressionEvaluatorService;\n translationService: AXTranslationService;\n /** Rehydrates legacy frozen title strings on workflow input before task copy evaluation. */\n resolveWorkflowStateForTasks?: (\n workflowState: AXPWorkflowState | undefined,\n ) => Promise<AXPWorkflowState | undefined>;\n}\n\n//#endregion\n\n//#region ---- Expression scope ----\n\n/** Maps persisted {@link AXPWorkflowState} to the workflow expression evaluation scope. */\nexport function buildWorkflowTaskExpressionScope(\n workflowState: AXPWorkflowState | undefined,\n expressionScopeService: WorkflowExpressionScopeService,\n) {\n const properties = workflowState?.properties ?? {};\n const outputs: Record<string, unknown> = {};\n\n if (properties['__lastActivityOutput'] !== undefined) {\n outputs['last'] = properties['__lastActivityOutput'];\n }\n\n return expressionScopeService.buildScope({\n inputs: workflowState?.input ?? {},\n variables: properties,\n outputs,\n });\n}\n\n//#endregion\n\n//#region ---- Workflow state for tasks ----\n\nasync function resolveWorkflowStateForTaskCopy(\n workflowState: AXPWorkflowState | undefined,\n deps: WorkflowTaskTranslationDeps,\n): Promise<AXPWorkflowState | undefined> {\n if (!deps.resolveWorkflowStateForTasks) {\n return workflowState;\n }\n return deps.resolveWorkflowStateForTasks(workflowState);\n}\n\n//#endregion\n\n//#region ---- Param evaluation (_taskI18n) ----\n\n/**\n * Evaluates bookmark `context._taskI18n` entries via the workflow expression evaluator.\n * Keep MLS and raw dates in params; resolve and format at display time for locale reactivity.\n */\nexport async function buildWorkflowTaskI18nParams(\n context: Record<string, unknown> | undefined,\n workflowState: AXPWorkflowState | undefined,\n expressionScopeService: WorkflowExpressionScopeService,\n expressionEvaluator: AXPExpressionEvaluatorService,\n): Promise<Record<string, unknown>> {\n const params: Record<string, unknown> = {};\n const i18n = context?.[AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY];\n if (!i18n || typeof i18n !== 'object' || Array.isArray(i18n)) {\n return params;\n }\n\n const scope = buildWorkflowTaskExpressionScope(workflowState, expressionScopeService);\n\n for (const [key, value] of Object.entries(i18n as Record<string, unknown>)) {\n const evaluated = await expressionEvaluator.evaluate(value, scope);\n if (evaluated != null && evaluated !== '') {\n params[key] = evaluated;\n }\n }\n\n return params;\n}\n\n//#endregion\n\n//#region ---- Display normalization ----\n\nconst TASK_I18N_DATE_KEYS = new Set([\n 'startDate',\n 'endDate',\n 'effectiveDate',\n 'dueDate',\n 'occurredDate',\n]);\n\nfunction isDateLikeString(value: string): boolean {\n return /^\\d{4}-\\d{2}-\\d{2}(?:T|$)/.test(value.trim());\n}\n\nfunction parseDateOnlyString(value: string): Date | null {\n const match = /^(\\d{4})-(\\d{2})-(\\d{2})/.exec(value.trim());\n if (!match) {\n return null;\n }\n const year = Number(match[1]);\n const month = Number(match[2]);\n const day = Number(match[3]);\n if (!year || !month || !day) {\n return null;\n }\n return new Date(year, month - 1, day);\n}\n\n/** Coerces a workflow task param to a translate interpolation string. */\nexport function toTaskTranslationParam(translationService: AXTranslationService, value: unknown): string {\n if (value == null) {\n return '';\n }\n if (typeof value === 'string') {\n return value.trim();\n }\n if (typeof value === 'number' || typeof value === 'boolean') {\n return String(value);\n }\n if (value instanceof Date) {\n return value.toISOString();\n }\n if (typeof value === 'object') {\n const resolved = translationService.resolve(value as never);\n return resolved?.trim() ?? '';\n }\n return String(value).trim();\n}\n\n/** Locale-aware translate params from {@link buildWorkflowTaskI18nParams} output. */\nexport async function formatWorkflowTaskI18nParamsForDisplay(\n raw: Record<string, unknown> | undefined,\n translationService: AXTranslationService,\n formatService?: AXFormatService,\n settingsService?: AXPSettingsService,\n): Promise<Record<string, string>> {\n if (!raw) {\n return {};\n }\n\n const format =\n formatService && settingsService\n ? await settingsService.get(AXPRegionalSetting.ShortDate)\n : undefined;\n const params: Record<string, string> = {};\n\n for (const [key, value] of Object.entries(raw)) {\n if (value == null || value === '') {\n continue;\n }\n\n if (\n formatService &&\n format &&\n TASK_I18N_DATE_KEYS.has(key) &&\n (value instanceof Date || (typeof value === 'string' && isDateLikeString(value)))\n ) {\n const date =\n value instanceof Date ? value : parseDateOnlyString(value) ?? new Date(value);\n if (!Number.isNaN(date.getTime())) {\n const formatted = formatService.format(date, 'date', { format });\n const text = typeof formatted === 'string' ? formatted : String(formatted ?? '');\n if (text) {\n params[key] = text;\n }\n }\n continue;\n }\n\n if (typeof value === 'string' && value.trim()) {\n params[key] = value.trim();\n continue;\n }\n\n const text = toTaskTranslationParam(translationService, value);\n if (text) {\n params[key] = text;\n }\n }\n\n return params;\n}\n\n//#endregion\n\n//#region ---- Title / description keys ----\n\nfunction isTranslationKey(value: string | undefined): boolean {\n return !!value?.trim().startsWith('@');\n}\n\n/** Resolves bookmark title/description i18n keys and `_taskI18n` params. */\nexport async function resolveWorkflowTaskCopyKeys(\n payload: {\n title?: string;\n description?: string;\n activityName?: string;\n context?: Record<string, unknown>;\n workflowState?: AXPWorkflowState;\n },\n deps: WorkflowTaskTranslationDeps,\n): Promise<{\n title: string;\n titleKey?: string;\n description?: string;\n descriptionKey?: string;\n taskI18nParams: Record<string, unknown>;\n}> {\n const taskI18nParams = await buildWorkflowTaskI18nParams(\n payload.context,\n await resolveWorkflowStateForTaskCopy(payload.workflowState, deps),\n deps.expressionScopeService,\n deps.expressionEvaluator,\n );\n\n const rawTitle = payload.title?.trim();\n let titleKey: string | undefined;\n let title = rawTitle || payload.activityName?.trim() || 'Workflow Task';\n\n if (rawTitle && isTranslationKey(rawTitle)) {\n titleKey = rawTitle;\n title = rawTitle;\n }\n\n const rawDescription = payload.description?.trim();\n let descriptionKey: string | undefined;\n let description = rawDescription || (payload.activityName ? `Action required: ${payload.activityName}` : undefined);\n\n if (isTranslationKey(rawDescription)) {\n descriptionKey = rawDescription;\n description = rawDescription;\n }\n\n return {\n title,\n ...(titleKey ? { titleKey } : {}),\n ...(description ? { description } : {}),\n ...(descriptionKey ? { descriptionKey } : {}),\n taskI18nParams,\n };\n}\n\n/** Builds locale-aware interpolation params for workflow human-task copy. */\nexport async function buildWorkflowTaskDisplayParams(\n context: Record<string, unknown> | undefined,\n workflowState: AXPWorkflowState | undefined,\n deps: WorkflowTaskTranslationDeps,\n formatService?: AXFormatService,\n settingsService?: AXPSettingsService,\n): Promise<Record<string, string>> {\n const resolvedWorkflowState = await resolveWorkflowStateForTaskCopy(workflowState, deps);\n const raw = await buildWorkflowTaskI18nParams(\n context,\n resolvedWorkflowState,\n deps.expressionScopeService,\n deps.expressionEvaluator,\n );\n return formatWorkflowTaskI18nParamsForDisplay(raw, deps.translationService, formatService, settingsService);\n}\n\nfunction isWorkflowAuditPropertyKey(key: string): boolean {\n return (\n key.endsWith('_outcome') ||\n key.endsWith('_completedByUserId') ||\n key.endsWith('_completedByLabel') ||\n key.endsWith('_activityOutput') ||\n key.endsWith('_assignedUserIds') ||\n key.endsWith('_candidateUserIds') ||\n key.endsWith('_reassignedToSelf') ||\n key === 'taskReassignHistory' ||\n key === '__lastActivityOutput'\n );\n}\n\n/** Display params from workflow input/properties when no bookmark `_taskI18n` is available. */\nexport async function buildWorkflowTaskDisplayParamsFromWorkflowState(\n workflowState: AXPWorkflowState | undefined,\n deps: WorkflowTaskTranslationDeps,\n formatService?: AXFormatService,\n settingsService?: AXPSettingsService,\n): Promise<Record<string, string>> {\n const resolvedWorkflowState = await resolveWorkflowStateForTaskCopy(workflowState, deps);\n const raw: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(resolvedWorkflowState?.input ?? {})) {\n if (value != null && value !== '') {\n raw[key] = value;\n }\n }\n for (const [key, value] of Object.entries(resolvedWorkflowState?.properties ?? {})) {\n if (isWorkflowAuditPropertyKey(key)) {\n continue;\n }\n if (value != null && value !== '' && !(key in raw)) {\n raw[key] = value;\n }\n }\n return formatWorkflowTaskI18nParamsForDisplay(raw, deps.translationService, formatService, settingsService);\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPWorkflowState } from '@acorex/platform/contracts';\nimport { get, isString } from 'lodash-es';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface WorkflowTitleRehydrationRule {\n titleKey: string;\n idKey: string;\n entity: string;\n titleField?: string;\n}\n\nexport type WorkflowEntityByKeyFetcher = (\n entity: string,\n id: string,\n) => Promise<Record<string, unknown> | null | undefined>;\n\n//#endregion\n\n//#region ---- Rules ----\n\n/**\n * Maps frozen workflow input title strings to their source entity for MLS rehydration.\n * Used for suspended instances started before start-flow commands preserved MLS on input.\n */\nexport const WORKFLOW_TASK_TITLE_REHYDRATION_RULES: WorkflowTitleRehydrationRule[] = [\n {\n titleKey: 'eventTypeTitle',\n idKey: 'eventTypeId',\n entity: 'HumanCapitalManagement.LifecycleEventType',\n },\n {\n titleKey: 'leaveTypeTitle',\n idKey: 'leaveTypeId',\n entity: 'HumanCapitalManagement.LeaveType',\n },\n {\n titleKey: 'recordTypeTitle',\n idKey: 'recordTypeId',\n entity: 'HealthCore.HealthRecordType',\n },\n];\n\n//#endregion\n\n//#region ---- Rehydration ----\n\nfunction needsTitleRehydration(\n titleValue: unknown,\n translationService: AXTranslationService,\n): boolean {\n if (titleValue == null || titleValue === '') {\n return false;\n }\n if (translationService.isValidMultiLanguageObject(titleValue)) {\n return false;\n }\n return isString(titleValue) && titleValue.trim().length > 0;\n}\n\n/**\n * Replaces frozen plain-string workflow input titles with MLS from the referenced entity row.\n * Does not mutate or persist the original workflow state.\n */\nexport async function rehydrateWorkflowStateInputTitles(\n workflowState: AXPWorkflowState | undefined,\n translationService: AXTranslationService,\n fetchByKey: WorkflowEntityByKeyFetcher,\n): Promise<AXPWorkflowState | undefined> {\n if (!workflowState?.input || typeof workflowState.input !== 'object') {\n return workflowState;\n }\n\n const input = workflowState.input as Record<string, unknown>;\n const nextInput = { ...input };\n let patched = false;\n\n await Promise.all(\n WORKFLOW_TASK_TITLE_REHYDRATION_RULES.map(async (rule) => {\n const titleValue = input[rule.titleKey];\n if (!needsTitleRehydration(titleValue, translationService)) {\n return;\n }\n\n const idRaw = input[rule.idKey];\n const id = idRaw != null && idRaw !== '' ? String(idRaw).trim() : '';\n if (!id) {\n return;\n }\n\n try {\n const row = await fetchByKey(rule.entity, id);\n const titleField = rule.titleField ?? 'title';\n const resolvedTitle = get(row, titleField);\n if (resolvedTitle == null || resolvedTitle === '') {\n return;\n }\n if (\n translationService.isValidMultiLanguageObject(resolvedTitle) ||\n (isString(resolvedTitle) && resolvedTitle.trim())\n ) {\n nextInput[rule.titleKey] = resolvedTitle;\n patched = true;\n }\n } catch {\n // Keep the frozen title when lookup fails.\n }\n }),\n );\n\n if (!patched) {\n return workflowState;\n }\n\n return {\n ...workflowState,\n input: nextInput,\n };\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXDataSourceFilterOption } from '@acorex/cdk/common';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXFormatService } from '@acorex/core/format';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n AXPEntity,\n AXPSettingsService,\n AXPStatusDefinitionProviderService,\n} from '@acorex/platform/common';\nimport { AXPRegionalSetting } from '@acorex/platform/contracts';\nimport {\n AXPStatusDefinition,\n AXPStatusProvider,\n AXPSystemStatuses,\n} from '@acorex/platform/contracts';\nimport {\n AXPExtraField,\n AXPTask,\n AXPTaskActionMenuItem,\n AXPTaskFilter,\n AXPTaskPopoverComponent,\n AXPTaskPopoverMetadata,\n AXPTaskPopoverMetadataField,\n AXPTaskStatus,\n AXPWorkflowTaskProvider,\n filterTasksOverlappingRange,\n mapEntityStatusColorForBadge,\n matchesTaskBoardAssigneeUserIdsFilter,\n matchesTaskDueStatusFilter,\n matchesTaskPriorityFilter,\n normalizeTaskPriority,\n AXPDueStatusProviderService,\n} from '@acorex/modules/task-management';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPActionMenuItem, AXPExecuteCommand, AXPExecuteCommandResult, AXPExpressionEvaluatorService, AXPUserReference } from '@acorex/platform/core';\nimport { AXPCommandService } from '@acorex/platform/runtime';\nimport {\n AXP_RECORD_WORKFLOW_INFO_INSTANCE_ID_FIELD,\n AXPEntityDefinitionRegistryService,\n AXPEntityService,\n} from '@acorex/platform/layout/entity';\nimport type { AXPWorkflowState } from '@acorex/platform/contracts';\nimport { AXPWorkflowDefinitionService, AXPWorkflowManager, WorkflowExpressionScopeService } from '@acorex/platform/workflow';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPWorkflowInstanceHumanTaskService } from './workflow-instance-human-task.service';\nimport { Inject, inject, Injectable, InjectionToken, Type } from '@angular/core';\nimport { AXMWorkflowManagementWorkflowInstanceEntityModel } from '../../entities/workflow-instance/workflow-instance.types';\nimport { canReassignWorkflowTaskToSelf } from './workflow-task-reassign-access';\nimport {\n AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY,\n} from './workflow-task-context.constants';\nimport {\n resolveWorkflowTaskCopyKeys,\n type WorkflowTaskTranslationDeps,\n} from './workflow-task-translation.utils';\nimport { rehydrateWorkflowStateInputTitles } from './workflow-task-input-rehydration.util';\nimport { AXMWorkflowManagementCommandKeys } from '../workflow-run-plugin/commands.keys';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Configuration for a workflow-specific task provider.\n * One provider per workflow definition – pass definitionId to scope tasks to that definition only.\n */\nexport interface AXPGenericWorkflowTaskProviderConfig {\n /** Unique provider name (e.g. 'leave-request-workflow-tasks', 'document-review-workflow-tasks'). */\n name: string;\n /** Display title in task board type selector. */\n title: string;\n /** Optional icon (default: 'fa-light fa-diagram-project'). */\n icon?: string;\n /**\n * When set, only workflow instances for this definition are shown.\n * One provider = one definition. Omit to show all suspended workflow tasks (single generic provider).\n */\n definitionId?: string;\n}\n\n/**\n * Injection token for provider config. Use when registering via DI (provide token + useFactory with deps).\n * Prefer {@link provideGenericWorkflowTaskProvider} (dynamic import) instead of a static class import in NgModule providers.\n */\nexport const AXP_GENERIC_WORKFLOW_TASK_PROVIDER_CONFIG = new InjectionToken<AXPGenericWorkflowTaskProviderConfig>(\n 'AXP_GENERIC_WORKFLOW_TASK_PROVIDER_CONFIG',\n);\n\n/**\n * Bookmark as stored in WorkflowInstance entity (workflowInstance.bookmarks).\n * Read from entity service; no direct DB access.\n */\ninterface WorkflowInstanceBookmark {\n id: string;\n activityId: string;\n type: string;\n payload?: Record<string, any> | null;\n payloadJson?: string;\n consumed?: boolean;\n isConsumed?: boolean;\n createdAt?: string;\n}\n\n/** Shape used when entity storage stores workflowInstance with bookmarks at root level. */\ninterface WorkflowInstanceWithBookmarks {\n bookmarks?: WorkflowInstanceBookmark[];\n}\n\n/**\n * Bookmark payload structure for human-task activities.\n */\ninterface HumanTaskBookmarkPayload {\n activityType: string;\n activityName: string;\n taskToken: string;\n taskType: 'human-task' | 'ui-activity' | 'system-activity';\n assignedUserIds?: string[] | null;\n candidateUserIds?: string[] | null;\n candidateRoleIds?: string[] | null;\n title?: string;\n description?: string;\n priority?: 'Low' | 'Normal' | 'High' | 'Urgent';\n dueDate?: string | Date | null;\n layout?: string | any;\n actions?: {\n prefix?: AXPActionMenuItem[];\n suffix?: AXPActionMenuItem[];\n };\n context?: Record<string, any>;\n}\n\n//#endregion\n\n//#region ---- Provider Class ----\n\n/**\n * Generic Workflow Task Provider\n *\n * Provides tasks from Workflow Instances directly (no Work Items).\n * Queries suspended workflow instances and extracts tasks from bookmarks.\n *\n * Create one provider per workflow definition by passing a config (name, title, definitionId).\n * E.g. leave request: { name: 'leave-request-workflow-tasks', title: 'Leave Request', definitionId: 'LeaveRequestWorkflow' }\n *\n * Architecture:\n * - Queries Workflow Instances with subStatus = 'Suspended'\n * - Filters by config.definitionId when set (one provider = one definition)\n * - Extracts active bookmarks for each instance\n * - Parses bookmark payload for assignment/actions\n * - Maps to task board format\n */\n@Injectable()\nexport class AXPGenericWorkflowTaskProvider extends AXPWorkflowTaskProvider<Record<string, any>> {\n //#region ---- Config ----\n\n private readonly config: AXPGenericWorkflowTaskProviderConfig;\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly workflowInstanceData = this.entityService\n .withEntity('WorkflowManagement', 'WorkflowInstance')\n .data<string, AXMWorkflowManagementWorkflowInstanceEntityModel>();\n private readonly userEntityData = this.entityService.withEntity('SecurityManagement', 'User').data<string>();\n private readonly translationService = inject(AXTranslationService);\n private readonly formatService = inject(AXFormatService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly statusDefinitionService = inject(AXPStatusDefinitionProviderService);\n private readonly workflowDefinitionService = inject(AXPWorkflowDefinitionService);\n private readonly workflowManager = inject(AXPWorkflowManager);\n private readonly humanTaskService = inject(AXPWorkflowInstanceHumanTaskService);\n private readonly sessionService = inject(AXPSessionService);\n private readonly toastService = inject(AXToastService);\n private readonly commandService = inject(AXPCommandService);\n private readonly dueStatusProviderService = inject(AXPDueStatusProviderService);\n private readonly expressionScopeService = inject(WorkflowExpressionScopeService);\n private readonly expressionEvaluator = inject(AXPExpressionEvaluatorService);\n\n //#endregion\n\n //#region ---- Cache State ----\n\n /** Primary entity type (with status plugin) inferred from the workflow definition. */\n private primaryEntityTypeWithStatus: string | null | undefined;\n\n /** Per-provider caches (one instance per workflow definition). */\n private readonly entityDefinitionCache = new Map<string, Promise<AXPEntity | null>>();\n private readonly statusDefinitionKeyByEntityType = new Map<string, string | null>();\n private readonly statusProviderByDefinitionKey = new Map<string, Promise<AXPStatusProvider | undefined>>();\n private readonly userReferenceCache = new Map<string, Promise<AXPUserReference>>();\n private readonly entityStatusIdCache = new Map<string, Promise<string | null>>();\n\n //#endregion\n\n //#region ---- Constructor ----\n\n constructor(@Inject(AXP_GENERIC_WORKFLOW_TASK_PROVIDER_CONFIG) config: AXPGenericWorkflowTaskProviderConfig) {\n super();\n this.config = config;\n }\n\n //#endregion\n\n //#region ---- Provider Metadata ----\n\n get name(): string {\n return this.config.name;\n }\n\n get title(): string {\n return this.config.title;\n }\n\n get icon(): string {\n return this.config.icon ?? 'fa-light fa-diagram-project';\n }\n\n //#endregion\n\n //#region ---- Bookmark Helpers ----\n\n /** Bookmark types shown on the workflow task board. */\n private isTaskBoardBookmarkPayload(payload: HumanTaskBookmarkPayload): boolean {\n const t = payload.activityType;\n return t === 'workflow-activity:human-task' || t === 'workflow-activity:cartable';\n }\n\n /** Pooled task: must be claimed before submit/cancel (cartable, or human-task with candidates only). */\n private isPooledClaimablePayload(payload: HumanTaskBookmarkPayload): boolean {\n const assigned = this.normalizeUserIdList(payload.assignedUserIds);\n const candidates = this.normalizeUserIdList(payload.candidateUserIds);\n if (payload.activityType === 'workflow-activity:cartable') {\n return assigned.length === 0 && candidates.length > 0;\n }\n return payload.activityType === 'workflow-activity:human-task' && assigned.length === 0 && candidates.length > 0;\n }\n\n private normalizeUserIdList(value: string[] | null | undefined): string[] {\n if (!value || value.length === 0) return [];\n return value.map((id) => String(id)).filter((s) => s.length > 0);\n }\n\n /** Human-task assigned to another user; current user may take over when permitted. */\n private isReassignableHumanTaskPayload(payload: HumanTaskBookmarkPayload): boolean {\n if (payload.activityType !== 'workflow-activity:human-task') {\n return false;\n }\n const assigned = this.normalizeUserIdList(payload.assignedUserIds);\n if (assigned.length === 0) {\n return false;\n }\n const currentUserId = this.sessionService.user?.id;\n if (currentUserId == null) {\n return false;\n }\n return !assigned.includes(String(currentUserId));\n }\n\n private canTakeOverTask(): boolean {\n return canReassignWorkflowTaskToSelf(this.sessionService);\n }\n\n private isWorkflowRunCommand(commandName: string): boolean {\n return (Object.values(AXMWorkflowManagementCommandKeys.WorkflowRun) as string[]).includes(commandName);\n }\n\n /**\n * Secondary popover menu: workflow run utilities (history, take over).\n */\n private appendWorkflowMoreMenuActions(\n actions: AXPTaskActionMenuItem[],\n taskData: Record<string, unknown> | undefined,\n payload: HumanTaskBookmarkPayload | undefined,\n ): void {\n const instanceId = taskData?.['instanceId'];\n if (typeof instanceId !== 'string' || !instanceId.trim()) {\n return;\n }\n\n actions.push({\n name: 'workflow-run-history',\n title: '@workflow-management:workflow-run.actions.history.title',\n icon: 'fa-light fa-clock-rotate-left',\n color: 'default',\n priority: 'secondary',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.ShowHistory,\n options: { instanceId },\n },\n });\n\n if (payload && this.isReassignableHumanTaskPayload(payload) && this.canTakeOverTask()) {\n actions.push({\n name: 'workflow-run-take-over',\n title: '@workflow-management:workflow-run.actions.take-over.title',\n icon: 'fa-light fa-user-check',\n color: 'default',\n priority: 'secondary',\n command: {\n name: AXMWorkflowManagementCommandKeys.WorkflowRun.TakeOver,\n options: { instanceId },\n },\n });\n }\n }\n\n //#endregion\n\n //#region ---- Task Retrieval ----\n\n /**\n * Get tasks from suspended workflow instances.\n *\n * Queries workflow instances filtered by:\n * - subStatus = 'Suspended'\n * - entityRefType (if provided in filter)\n * - definitionId (if provided in filter)\n * - assignee/claimant (if filter provided)\n *\n * Then extracts active bookmarks and maps to task board format.\n */\n async getTasks(options: AXPTaskFilter): Promise<{ items: AXPTask<Record<string, any>>[]; total: number }> {\n // Build filter for workflow instances\n const baseFilter: AXDataSourceFilterOption = { logic: 'and', filters: [] };\n\n // Filter by subStatus = 'Suspended' (only suspended workflows have pending tasks)\n baseFilter.filters?.push({\n field: 'subStatus',\n operator: { type: 'equal' },\n value: 'Suspended',\n });\n\n // Scope this provider to one workflow definition\n if (this.config.definitionId) {\n baseFilter.filters?.push({\n field: 'definitionId',\n operator: { type: 'equal' },\n value: this.config.definitionId,\n });\n }\n\n // Date range is applied after mapping bookmarks (task start/end overlap), not on instance createdAt.\n\n // Query workflow instances\n const { items: instances } = await this.workflowInstanceData.query({\n skip: options?.skip ?? 0,\n take: options?.take ?? 5000,\n filter: baseFilter,\n });\n\n // Extract tasks from bookmarks for each instance\n const tasks: AXPTask<Record<string, any>>[] = [];\n\n for (const instance of instances) {\n try {\n // Get active bookmarks from instance entity (workflowInstance.bookmarks)\n const bookmarks = this.getActiveBookmarksFromInstance(instance);\n\n // Process each bookmark (typically one per suspended activity)\n for (const bookmark of bookmarks) {\n try {\n // Get payload from entity (payload object or parse payloadJson)\n let payload: HumanTaskBookmarkPayload;\n try {\n const raw = bookmark.payload ?? (bookmark.payloadJson ? JSON.parse(bookmark.payloadJson) : null);\n payload =\n typeof raw === 'object' && raw !== null\n ? (raw as HumanTaskBookmarkPayload)\n : ({} as HumanTaskBookmarkPayload);\n } catch {\n continue;\n }\n\n // Task board: human-task and cartable (pooled); exclude other suspended UI bookmarks\n if (!this.isTaskBoardBookmarkPayload(payload)) {\n continue;\n }\n\n // Check assignment filter if provided\n if (options?.assigneeIds && options.assigneeIds.length > 0) {\n const assignedIds = payload.assignedUserIds || [];\n const candidateIds = payload.candidateUserIds || [];\n const allUserIds = [...assignedIds, ...candidateIds].map(String);\n\n // TODO: Also check candidateRoleIds by resolving role members\n\n if (!matchesTaskBoardAssigneeUserIdsFilter(allUserIds, options.assigneeIds)) {\n continue;\n }\n }\n\n // Map bookmark to task\n const task = await this.mapBookmarkToTask(instance, bookmark, payload);\n tasks.push(task);\n } catch {\n // Skip this bookmark and continue\n }\n }\n } catch {\n // Skip this instance and continue\n }\n }\n\n const rangeFiltered = filterTasksOverlappingRange(tasks, options?.range);\n const priorityFiltered =\n options?.priorities && options.priorities.length > 0\n ? rangeFiltered.filter((task) => matchesTaskPriorityFilter(task, options.priorities!))\n : rangeFiltered;\n const dueStatusFiltered =\n options?.dueStatusKeys && options.dueStatusKeys.length > 0\n ? priorityFiltered.filter((task) => matchesTaskDueStatusFilter(task, options.dueStatusKeys!))\n : priorityFiltered;\n const total = dueStatusFiltered.length;\n const skip = options?.skip ?? 0;\n const take = options?.take ?? total;\n const items = dueStatusFiltered.slice(skip, skip + take);\n\n return { items, total };\n }\n\n /**\n * Get active (non-consumed) bookmarks from workflow instance entity.\n * Reads from instance.workflowInstance?.bookmarks — no direct DB access.\n */\n private getActiveBookmarksFromInstance(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n ): WorkflowInstanceBookmark[] {\n const wi = instance?.workflowInstance as WorkflowInstanceWithBookmarks | undefined;\n const bookmarks = wi?.bookmarks ?? [];\n const active = bookmarks.filter(\n (b: WorkflowInstanceBookmark) => !b.isConsumed && !b.consumed,\n ) as WorkflowInstanceBookmark[];\n return active;\n }\n\n //#endregion\n\n //#region ---- Task Display & Translation ----\n\n /** Task-board \"started by\": workflow instance creator (initiator), not the current viewer. */\n private buildStartedByFromInstance(instance: AXMWorkflowManagementWorkflowInstanceEntityModel): AXPUserReference {\n const audit = instance.auditInfo?.created?.by;\n if (audit?.id) {\n return {\n id: audit.id,\n type: 'user',\n fullName: audit.fullName?.trim() || audit.id,\n };\n }\n const sessionUser = this.sessionService.user;\n if (sessionUser?.id) {\n const label = sessionUser.title?.trim() || sessionUser.name?.trim() || sessionUser.id;\n return { id: sessionUser.id, type: 'user', fullName: label };\n }\n return { id: '', type: 'user', fullName: '' };\n }\n\n private getWorkflowStateFromInstance(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n ): AXPWorkflowState | undefined {\n const wi = instance?.workflowInstance as { workflowState?: AXPWorkflowState } | undefined;\n return wi?.workflowState;\n }\n\n /**\n * Formats dates for task popover metadata using regional short-date settings.\n */\n private async formatDateForTaskDisplay(value: Date | string): Promise<string> {\n const date =\n value instanceof Date\n ? value\n : this.parseDateOnlyString(value) ?? this.parseIsoDateString(value);\n if (!date || Number.isNaN(date.getTime())) {\n return typeof value === 'string' ? value.trim() : '';\n }\n const format = await this.settingsService.get(AXPRegionalSetting.ShortDate);\n const formatted = this.formatService.format(date, 'date', { format });\n return typeof formatted === 'string' ? formatted : String(formatted ?? '');\n }\n\n private parseIsoDateString(value: string): Date | null {\n const parsed = new Date(value);\n return Number.isNaN(parsed.getTime()) ? null : parsed;\n }\n\n private parseBookmarkDueDate(value: string | Date | null | undefined): Date | null {\n if (value == null || value === '') {\n return null;\n }\n const date = value instanceof Date ? value : new Date(value);\n return Number.isNaN(date.getTime()) ? null : date;\n }\n\n //#endregion\n\n //#region ---- User Resolution ----\n\n /** Resolve platform user id to a display label for the task board grid. */\n private async resolveAssigneeReference(userId: string | undefined): Promise<AXPUserReference | undefined> {\n const id = userId?.trim();\n if (!id) {\n return undefined;\n }\n const cached = this.userReferenceCache.get(id);\n if (cached) {\n return cached;\n }\n const load = this.loadUserReference(id);\n this.userReferenceCache.set(id, load);\n return load;\n }\n\n private async loadUserReference(id: string): Promise<AXPUserReference> {\n try {\n const row = await this.userEntityData.byKey(id);\n if (!row || typeof row !== 'object') {\n return { id, type: 'user', fullName: id };\n }\n const displayName =\n 'displayName' in row ? String((row as { displayName?: unknown }).displayName ?? '').trim() : '';\n const username = 'username' in row ? String((row as { username?: unknown }).username ?? '').trim() : '';\n const fullName = displayName || username || id;\n const ref: AXPUserReference = { id, type: 'user', fullName };\n if (username) {\n ref.username = username;\n }\n return ref;\n } catch {\n return { id, type: 'user', fullName: id };\n }\n }\n\n //#endregion\n\n //#region ---- Task translation deps ----\n\n /** Task copy evaluation with legacy workflow input title rehydration. */\n private buildTaskTranslationDeps(): WorkflowTaskTranslationDeps {\n return {\n expressionScopeService: this.expressionScopeService,\n expressionEvaluator: this.expressionEvaluator,\n translationService: this.translationService,\n resolveWorkflowStateForTasks: (workflowState) =>\n rehydrateWorkflowStateInputTitles(\n workflowState,\n this.translationService,\n async (entity, id) => {\n const row = await this.entityService.withEntity(entity).data().byKey(id as never);\n return row && typeof row === 'object' ? (row as unknown as Record<string, unknown>) : null;\n },\n ),\n };\n }\n\n //#endregion\n\n //#region ---- Task Mapping ----\n\n /** Map bookmark to task board task format. */\n private async mapBookmarkToTask(\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n bookmark: WorkflowInstanceBookmark,\n payload: HumanTaskBookmarkPayload,\n ): Promise<AXPTask<Record<string, any>>> {\n const dueDateParsed = this.parseBookmarkDueDate(payload.dueDate);\n const hasExplicitDueDate = dueDateParsed != null;\n\n const instanceCreatedAt = instance.createdAt ? new Date(instance.createdAt) : new Date();\n // Due date may precede suspension time (e.g. leave approval due day before leave start).\n const startDate = hasExplicitDueDate ? dueDateParsed : instanceCreatedAt;\n const endDate = hasExplicitDueDate ? dueDateParsed : instanceCreatedAt;\n\n const priority = normalizeTaskPriority(payload.priority ?? 'Normal');\n\n const workflowState = this.getWorkflowStateFromInstance(instance);\n const copy = await resolveWorkflowTaskCopyKeys(\n {\n title: payload.title,\n description: payload.description,\n activityName: payload.activityName,\n context: payload.context,\n workflowState,\n },\n this.buildTaskTranslationDeps(),\n );\n\n const assigneeId = payload.assignedUserIds?.[0];\n const assignee = await this.resolveAssigneeReference(assigneeId);\n const resolvedStatus = await this.resolveTaskStatus(payload, instance);\n const bookmarkConsumed = Boolean(bookmark.isConsumed || bookmark.consumed);\n\n const baseTask: AXPTask<Record<string, any>> = {\n id: bookmark.id, // Use bookmark ID as task ID\n title: copy.title,\n description: copy.description,\n startDate,\n endDate,\n allDay: false,\n assignee,\n index: 2,\n createdAt: instanceCreatedAt,\n updatedAt: instance.updatedAt ? new Date(instance.updatedAt) : instanceCreatedAt,\n status: {\n id: resolvedStatus.id,\n title: resolvedStatus.title,\n color: mapEntityStatusColorForBadge(resolvedStatus.color, resolvedStatus.id),\n },\n priority,\n reporter: this.buildStartedByFromInstance(instance),\n data: {\n // Store workflow instance and bookmark metadata\n instanceId: instance.id,\n bookmarkId: bookmark.id,\n activityId: bookmark.activityId,\n activityType: payload.activityType,\n activityName: payload.activityName,\n taskToken: payload.taskToken,\n entityRefId: instance.entityRefId,\n entityRefType: instance.entityRefType,\n definitionId: instance.definitionId,\n statusColor: resolvedStatus.color,\n entityStatusDefinition: resolvedStatus.definition,\n entityStatusDefinitionKey: resolvedStatus.definitionKey,\n hasExplicitDueDate,\n bookmarkConsumed,\n ...(copy.titleKey ? { titleKey: copy.titleKey } : {}),\n ...(copy.descriptionKey ? { descriptionKey: copy.descriptionKey } : {}),\n taskI18nParams: copy.taskI18nParams,\n payload: payload,\n } as any,\n };\n\n return this.dueStatusProviderService.attachDueStatusToTask(baseTask, {\n workflowDefinitionId: instance.definitionId,\n activityType: payload.activityType,\n });\n }\n\n /** @deprecated Use normalizeTaskPriority from task-management instead. */\n private mapPriorityToTaskPriority(\n priority: 'Low' | 'Normal' | 'High' | 'Urgent',\n ): 'urgent' | 'high' | 'normal' | 'low' {\n return normalizeTaskPriority(priority);\n }\n\n //#endregion\n\n //#region ---- Task Updates ----\n\n /**\n * Update tasks (not applicable for workflow instances - they are read-only from task provider perspective).\n */\n async updateTasks(tasksToUpdate: AXPTask<Record<string, any>>[]): Promise<AXPTask<Record<string, any>>[]> {\n // Workflow instances are managed by workflow engine\n // Task updates should be done through workflow resume, not direct updates\n return tasksToUpdate;\n }\n\n //#endregion\n\n //#region ---- Command Execution ----\n\n /**\n * Execute commands on tasks.\n *\n * Supports:\n * - Workflow resume commands (Complete, Cancel)\n */\n async executeCommand(command: AXPExecuteCommand): Promise<AXPExecuteCommandResult> {\n if (!command?.name) return { success: true };\n\n const taskData = command.options?.['data'] as any;\n const instanceId = taskData?.instanceId ?? command.options?.['instanceId'] ?? '';\n const bookmarkId = taskData?.bookmarkId ?? command.options?.['bookmarkId'] ?? '';\n const taskToken = taskData?.taskToken ?? command.options?.['taskToken'] ?? '';\n const activityId = taskData?.activityId ?? command.options?.['activityId'] ?? command.options?.['stepId'] ?? '';\n const outcome = command.options?.['outcome'] ?? 'Done';\n const userInput = command.options?.['userInput'] ?? {};\n\n if (command.name === 'WorkflowManagement.WorkflowInstance:ClaimTask') {\n if (!instanceId || !bookmarkId || !activityId) {\n return {\n success: false,\n message: {\n text: 'Missing required parameters: instanceId, bookmarkId, activityId',\n },\n };\n }\n const claimResult = await this.workflowManager.claimTask(instanceId, bookmarkId, activityId);\n if (!claimResult.success && claimResult.error) {\n this.toastService.show({\n color: 'danger',\n title: await this.translationService.translateAsync('@general:messages.generic.error.title'),\n content: claimResult.error,\n });\n }\n return {\n success: claimResult.success,\n message: claimResult.error\n ? {\n text: claimResult.error,\n }\n : undefined,\n };\n }\n\n if (command.name === 'WorkflowManagement.WorkflowInstance:ReassignToSelf') {\n if (!instanceId || !bookmarkId || !activityId) {\n return {\n success: false,\n message: {\n text: 'Missing required parameters: instanceId, bookmarkId, activityId',\n },\n };\n }\n const reassigned = await this.humanTaskService.reassignBookmarkToCurrentUserWithConfirm(\n instanceId,\n bookmarkId,\n activityId,\n );\n return { success: reassigned };\n }\n\n // Handle workflow resume commands\n if (command.name === 'WorkflowManagement.WorkflowInstance:Resume' || command.name === 'resume-workflow') {\n if (!instanceId || !taskToken || !activityId) {\n return {\n success: false,\n message: {\n text: 'Missing required parameters: instanceId, taskToken, activityId',\n },\n };\n }\n\n const result = await this.humanTaskService.resumeSuspendedHumanTask({\n instanceId,\n bookmarkId,\n activityId,\n taskToken,\n outcome,\n userInput: { ...(userInput as Record<string, unknown>), bookmarkId },\n });\n\n if (result.success) {\n this.refresh();\n }\n\n return {\n success: result.success,\n message: result.error\n ? {\n text: result.error,\n }\n : undefined,\n };\n }\n\n if (this.isWorkflowRunCommand(command.name)) {\n if (!instanceId) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync(\n '@workflow-management:workflow-run.history.messages.no-instance',\n ),\n },\n };\n }\n const runResult = await this.commandService.execute(command.name, {\n __context__: {\n data: { workflowInfo: { instanceId: String(instanceId) } },\n },\n ...command.options,\n });\n return runResult ?? { success: false };\n }\n\n return { success: true };\n }\n\n //#endregion\n\n //#region ---- Actions & Statuses ----\n\n /** Keeps workflow action labels as i18n keys for the popover translate pipe. */\n private resolveWorkflowActionTitle(title: unknown, fallback: string): string {\n const raw = typeof title === 'string' ? title.trim() : '';\n if (raw.startsWith('@')) {\n return raw;\n }\n return raw || fallback;\n }\n\n /**\n * Get available actions for a task.\n *\n * Extracts actions from bookmark payload.\n */\n async getActions(task?: AXPTask<Record<string, any>>): Promise<AXPTaskActionMenuItem[]> {\n const actions: AXPTaskActionMenuItem[] = [];\n\n if (!task) return actions;\n\n const taskData = task.data as any;\n const payload = taskData?.payload as HumanTaskBookmarkPayload | undefined;\n\n if (!payload) return actions;\n\n if (this.isPooledClaimablePayload(payload)) {\n actions.push({\n name: 'claim',\n title: this.translationService.translateSync('@workflow-management:tasks.actions.claim.title'),\n icon: 'fa-light fa-hand',\n color: 'primary',\n priority: 'primary',\n command: {\n name: 'WorkflowManagement.WorkflowInstance:ClaimTask',\n options: {\n instanceId: taskData.instanceId,\n bookmarkId: taskData.bookmarkId,\n activityId: taskData.activityId,\n },\n },\n });\n this.appendWorkflowMoreMenuActions(actions, taskData, payload);\n return actions;\n }\n\n // Extract actions from payload\n if (payload.actions) {\n const allActions = [...(payload.actions.prefix || []), ...(payload.actions.suffix || [])];\n\n for (const action of allActions) {\n const actionName = action.command?.name || action.name || 'unknown';\n\n actions.push({\n name: actionName,\n title: this.resolveWorkflowActionTitle(action.title, actionName),\n icon: action.icon,\n color: action.color,\n priority: 'primary',\n command: {\n name: 'WorkflowManagement.WorkflowInstance:Resume',\n options: {\n instanceId: taskData.instanceId,\n bookmarkId: taskData.bookmarkId,\n activityId: taskData.activityId,\n taskToken: taskData.taskToken,\n outcome: actionName,\n userInput: {},\n },\n },\n });\n }\n } else {\n // Default actions if none provided\n actions.push({\n name: 'submit',\n title: this.translationService.translateSync('@general:actions.submit.title'),\n icon: 'fa-light fa-check',\n color: 'primary',\n priority: 'primary',\n command: {\n name: 'WorkflowManagement.WorkflowInstance:Resume',\n options: {\n instanceId: taskData.instanceId,\n bookmarkId: taskData.bookmarkId,\n activityId: taskData.activityId,\n taskToken: taskData.taskToken,\n outcome: 'submit',\n userInput: {},\n },\n },\n });\n\n actions.push({\n name: 'cancel',\n title: this.translationService.translateSync('@general:actions.cancel.title'),\n icon: 'fa-light fa-times',\n color: 'default',\n priority: 'secondary',\n command: {\n name: 'WorkflowManagement.WorkflowInstance:Resume',\n options: {\n instanceId: taskData.instanceId,\n bookmarkId: taskData.bookmarkId,\n activityId: taskData.activityId,\n taskToken: taskData.taskToken,\n outcome: 'cancel',\n userInput: {},\n },\n },\n });\n }\n\n this.appendWorkflowMoreMenuActions(actions, taskData, payload);\n return actions;\n }\n\n async getExtraFields(): Promise<AXPExtraField[]> {\n return [];\n }\n\n async getStatuses(): Promise<AXPTaskStatus[]> {\n const entityType = await this.resolvePrimaryEntityTypeForProvider();\n if (entityType) {\n const provider = await this.getEntityStatusProvider(entityType);\n if (provider) {\n return this.mapStatusProviderToTaskStatuses(provider);\n }\n }\n return this.getWorkflowTaskStatuses();\n }\n\n //#endregion\n\n //#region ---- Entity Status Resolution ----\n\n /** Resolves task status from bookmark context `statusId` and entity status plugin; falls back to workflow Pending. */\n private async resolveTaskStatus(\n payload: HumanTaskBookmarkPayload,\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n ): Promise<{\n id: string;\n title: string;\n color?: string;\n definition?: AXPStatusDefinition;\n definitionKey?: string;\n }> {\n const context = payload.context;\n const entityType = await this.resolveEntityTypeForTask(context, instance);\n\n if (!entityType) {\n return this.getWorkflowPendingStatus();\n }\n\n const definitionKey = this.getStatusDefinitionKeyForEntityType(entityType);\n if (!definitionKey) {\n return this.getWorkflowPendingStatus();\n }\n\n const provider = await this.getStatusProviderByDefinitionKey(definitionKey);\n if (!provider) {\n return this.getWorkflowPendingStatus();\n }\n\n let statusId = this.readContextString(context, 'statusId');\n if (this.isUnresolvedWorkflowExpression(statusId)) {\n statusId = null;\n }\n\n if (!statusId) {\n statusId = await this.loadEntityStatusIdFromContext(context, entityType, instance);\n }\n\n if (!statusId) {\n statusId = await this.loadEntityStatusIdByWorkflowInstance(entityType, instance.id);\n }\n\n if (!statusId) {\n const defaultStatus = provider.defaultStatus;\n statusId = typeof defaultStatus === 'string' && defaultStatus.trim().length > 0 ? defaultStatus.trim() : null;\n }\n\n if (statusId) {\n const definition = provider.statuses.find((status) => status.name === statusId);\n if (definition) {\n return {\n id: definition.name,\n title: await this.translateStatusTitle(definition.title),\n color: definition.color,\n definition,\n definitionKey,\n };\n }\n }\n\n return this.getWorkflowPendingStatus();\n }\n\n private async resolveEntityTypeForTask(\n context: Record<string, unknown> | undefined,\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n ): Promise<string | null> {\n const fromContext = this.readContextString(context, 'entityType');\n if (fromContext && (await this.entityTypeHasStatusPlugin(fromContext))) {\n return fromContext;\n }\n const refType = instance.entityRefType?.trim();\n if (refType && (await this.entityTypeHasStatusPlugin(refType))) {\n return refType;\n }\n return this.resolvePrimaryEntityTypeForProvider();\n }\n\n /** True when a bookmark value was stored without expression evaluation. */\n private isUnresolvedWorkflowExpression(value: string | null): boolean {\n if (!value) {\n return false;\n }\n return /\\{\\{/.test(value) || /\\}\\}/.test(value);\n }\n\n /**\n * Loads `statusId` from the linked entity row when bookmark context omits or stale-fails it.\n */\n private async loadEntityStatusIdFromContext(\n context: Record<string, unknown> | undefined,\n entityType: string,\n instance: AXMWorkflowManagementWorkflowInstanceEntityModel,\n ): Promise<string | null> {\n const contextEntityId = this.readContextString(context, 'lifecycleEventId');\n const refType = instance.entityRefType?.trim();\n const refId = instance.entityRefId?.trim();\n const entityId =\n contextEntityId ??\n (refType === entityType && refId ? refId : null);\n\n if (!entityId) {\n return null;\n }\n\n return this.loadEntityStatusId(entityType, entityId);\n }\n\n /**\n * Finds a row of `entityType` linked to this workflow instance (e.g. LifecycleEvent.workflowInfo.instanceId).\n */\n private async loadEntityStatusIdByWorkflowInstance(\n entityType: string,\n workflowInstanceId: string | undefined,\n ): Promise<string | null> {\n const instanceId = workflowInstanceId?.trim();\n if (!instanceId) {\n return null;\n }\n\n const cacheKey = `${entityType}::wi::${instanceId}`;\n const cached = this.entityStatusIdCache.get(cacheKey);\n if (cached) {\n return cached;\n }\n\n const load = this.fetchEntityStatusIdByWorkflowInstance(entityType, instanceId);\n this.entityStatusIdCache.set(cacheKey, load);\n return load;\n }\n\n private async fetchEntityStatusIdByWorkflowInstance(\n entityType: string,\n instanceId: string,\n ): Promise<string | null> {\n const parsed = this.parseQualifiedEntityType(entityType);\n if (!parsed) {\n return null;\n }\n\n try {\n const { items } = await this.entityService.withEntity(parsed.module, parsed.name).data().query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: AXP_RECORD_WORKFLOW_INFO_INSTANCE_ID_FIELD, operator: { type: 'equal' }, value: instanceId },\n ],\n },\n });\n\n const row = items?.[0];\n if (!row || typeof row !== 'object') {\n return null;\n }\n const raw = (row as { statusId?: unknown }).statusId;\n if (raw == null) {\n return null;\n }\n const text = String(raw).trim();\n return text.length > 0 ? text : null;\n } catch {\n return null;\n }\n }\n\n private async loadEntityStatusId(entityType: string, entityId: string): Promise<string | null> {\n const cacheKey = `${entityType}::${entityId}`;\n const cached = this.entityStatusIdCache.get(cacheKey);\n if (cached) {\n return cached;\n }\n const load = this.fetchEntityStatusIdByKey(entityType, entityId);\n this.entityStatusIdCache.set(cacheKey, load);\n return load;\n }\n\n private async fetchEntityStatusIdByKey(entityType: string, entityId: string): Promise<string | null> {\n const parsed = this.parseQualifiedEntityType(entityType);\n if (!parsed) {\n return null;\n }\n try {\n const row = await this.entityService.withEntity(parsed.module, parsed.name).data<string>().byKey(entityId);\n if (!row || typeof row !== 'object') {\n return null;\n }\n const raw = (row as { statusId?: unknown }).statusId;\n if (raw == null) {\n return null;\n }\n const text = String(raw).trim();\n return text.length > 0 ? text : null;\n } catch {\n return null;\n }\n }\n\n //#endregion\n\n //#region ---- Task Board Status Labels ----\n\n /** Fallback workflow task-board status when no entity status plugin applies. */\n private getWorkflowPendingStatus(): { id: string; title: string; color: string } {\n return {\n id: AXPSystemStatuses.Pending.name,\n title: this.translationService.translateSync('@workflow-management:tasks.states.pending'),\n color: 'warning',\n };\n }\n\n private async getWorkflowTaskStatuses(): Promise<AXPTaskStatus[]> {\n const pending = this.getWorkflowPendingStatus();\n return [\n {\n index: 0,\n key: pending.id,\n title: pending.title,\n color: pending.color,\n },\n ];\n }\n\n private async mapStatusProviderToTaskStatuses(provider: AXPStatusProvider): Promise<AXPTaskStatus[]> {\n const sorted = [...provider.statuses].sort((a, b) => (a.order ?? 0) - (b.order ?? 0));\n const statuses: AXPTaskStatus[] = [];\n for (let index = 0; index < sorted.length; index++) {\n const status = sorted[index];\n statuses.push({\n index,\n key: status.name,\n title: await this.translateStatusTitle(status.title),\n color: status.color,\n });\n }\n return statuses;\n }\n\n private async translateStatusTitle(title: string): Promise<string> {\n const raw = title?.trim();\n if (!raw) {\n return '';\n }\n if (raw.startsWith('@')) {\n return this.translationService.translateAsync(raw);\n }\n return raw;\n }\n\n //#endregion\n\n //#region ---- Entity Status Cache & Registry ----\n\n private readContextString(context: Record<string, unknown> | undefined, key: string): string | null {\n const value = context?.[key];\n if (value == null) {\n return null;\n }\n const text = String(value).trim();\n return text.length > 0 ? text : null;\n }\n\n private parseQualifiedEntityType(entityType: string): { module: string; name: string } | null {\n const trimmed = entityType.trim();\n const dot = trimmed.indexOf('.');\n if (dot <= 0 || dot >= trimmed.length - 1) {\n return null;\n }\n return { module: trimmed.slice(0, dot), name: trimmed.slice(dot + 1) };\n }\n\n private async resolveEntityDefinition(entityType: string): Promise<AXPEntity | null> {\n const key = entityType.trim();\n if (!key) {\n return null;\n }\n const existing = this.entityDefinitionCache.get(key);\n if (existing) {\n return existing;\n }\n const load = this.fetchEntityDefinition(key);\n this.entityDefinitionCache.set(key, load);\n return load;\n }\n\n private async fetchEntityDefinition(entityType: string): Promise<AXPEntity | null> {\n const parsed = this.parseQualifiedEntityType(entityType);\n if (!parsed) {\n return null;\n }\n try {\n return await this.entityRegistry.resolve(parsed.module, parsed.name);\n } catch {\n return null;\n }\n }\n\n private getStatusPluginDefinitionKey(entity: AXPEntity): string | null {\n const plugin = entity.plugins?.find((p) => p.name === 'status');\n const definition = plugin?.options?.['definition'];\n return typeof definition === 'string' && definition.trim().length > 0 ? definition.trim() : null;\n }\n\n private async entityTypeHasStatusPlugin(entityType: string | null | undefined): Promise<boolean> {\n if (!entityType?.trim()) {\n return false;\n }\n await this.warmStatusDefinitionKeyCache(entityType);\n return this.getStatusDefinitionKeyForEntityType(entityType) != null;\n }\n\n private getStatusDefinitionKeyForEntityType(entityType: string): string | null {\n const key = entityType.trim();\n if (!key) {\n return null;\n }\n if (this.statusDefinitionKeyByEntityType.has(key)) {\n return this.statusDefinitionKeyByEntityType.get(key) ?? null;\n }\n return null;\n }\n\n /**\n * Warms status-definition-key cache for an entity type (call after resolveEntityDefinition).\n */\n private rememberStatusDefinitionKeyForEntityType(entityType: string, entity: AXPEntity | null): void {\n const key = entityType.trim();\n if (!key || this.statusDefinitionKeyByEntityType.has(key)) {\n return;\n }\n const definitionKey = entity ? this.getStatusPluginDefinitionKey(entity) : null;\n this.statusDefinitionKeyByEntityType.set(key, definitionKey);\n }\n\n private async getEntityStatusProvider(entityType: string): Promise<AXPStatusProvider | undefined> {\n let definitionKey = this.getStatusDefinitionKeyForEntityType(entityType);\n if (!definitionKey) {\n const entity = await this.resolveEntityDefinition(entityType);\n this.rememberStatusDefinitionKeyForEntityType(entityType, entity);\n definitionKey = this.getStatusDefinitionKeyForEntityType(entityType);\n }\n if (!definitionKey) {\n return undefined;\n }\n return this.getStatusProviderByDefinitionKey(definitionKey);\n }\n\n private getStatusProviderByDefinitionKey(\n definitionKey: string,\n ): Promise<AXPStatusProvider | undefined> {\n const key = definitionKey.trim();\n const existing = this.statusProviderByDefinitionKey.get(key);\n if (existing) {\n return existing;\n }\n const load = this.statusDefinitionService.getStatus(key);\n this.statusProviderByDefinitionKey.set(key, load);\n return load;\n }\n\n //#endregion\n\n //#region ---- Entity Status Presentation ----\n\n private async findStatusDefinition(\n entityType: string,\n statusId: string,\n ): Promise<AXPStatusDefinition | undefined> {\n const provider = await this.getEntityStatusProvider(entityType);\n return provider?.statuses.find((status) => status.name === statusId);\n }\n\n private async warmStatusDefinitionKeyCache(entityType: string): Promise<void> {\n if (this.statusDefinitionKeyByEntityType.has(entityType.trim())) {\n return;\n }\n const entity = await this.resolveEntityDefinition(entityType);\n this.rememberStatusDefinitionKeyForEntityType(entityType, entity);\n }\n\n /**\n * First `entity-create` target in this workflow whose entity has a status plugin (cached per provider).\n */\n private async resolvePrimaryEntityTypeForProvider(): Promise<string | null> {\n if (this.primaryEntityTypeWithStatus !== undefined) {\n return this.primaryEntityTypeWithStatus;\n }\n\n let resolved: string | null = null;\n const definitionId = this.config.definitionId?.trim();\n if (definitionId) {\n const definition = await this.workflowDefinitionService.getWorkflowByName(definitionId);\n for (const activity of definition?.graph?.activities ?? []) {\n if (activity.name !== 'workflow-activity:entity-create') {\n continue;\n }\n const entity = activity.inputs?.['entity'];\n if (typeof entity !== 'string' || !entity.trim()) {\n continue;\n }\n const entityType = entity.trim();\n await this.warmStatusDefinitionKeyCache(entityType);\n if (this.getStatusDefinitionKeyForEntityType(entityType)) {\n resolved = entityType;\n break;\n }\n }\n }\n\n this.primaryEntityTypeWithStatus = resolved;\n return resolved;\n }\n\n //#endregion\n\n //#region ---- Popover Metadata ----\n\n override async getPopoverMetadata(task: AXPTask<Record<string, unknown>>): Promise<AXPTaskPopoverMetadata> {\n return this.buildPopoverMetadata(task);\n }\n\n /**\n * Builds label/value metadata rows for the workflow task popover (view-mode widgets).\n */\n private async buildPopoverMetadata(task: AXPTask<Record<string, unknown>>): Promise<AXPTaskPopoverMetadata> {\n const context: Record<string, unknown> = {};\n const fields: AXPTaskPopoverMetadataField[] = [];\n const payload = (task.data as { payload?: HumanTaskBookmarkPayload } | undefined)?.payload;\n\n const pushField = (\n name: string,\n title: string,\n widgetType: string,\n value: unknown,\n options: Record<string, unknown> = {},\n allowEmpty = false,\n ): void => {\n if (!allowEmpty && !this.hasMeaningfulPopoverValue(value)) {\n return;\n }\n context[name] = value;\n fields.push({\n name,\n title,\n node: {\n type: widgetType,\n name,\n path: name,\n mode: 'view',\n options,\n },\n });\n };\n\n if (task.status?.id != null && String(task.status.id).trim()) {\n const taskData = task.data as {\n entityStatusDefinition?: AXPStatusDefinition;\n entityStatusDefinitionKey?: string;\n };\n const statusId = String(task.status.id);\n const statusDefinition = taskData?.entityStatusDefinition;\n const statusDefinitionKey = taskData?.entityStatusDefinitionKey;\n\n if (statusDefinitionKey && statusDefinition) {\n // Pass the full status definition so the chip renders before async provider load completes.\n pushField(\n 'status',\n '@general:terms.status.title',\n AXPWidgetsList.Advanced.Status,\n statusDefinition,\n {\n definitionKey: statusDefinitionKey,\n readonly: true,\n },\n );\n } else {\n const statusColor = mapEntityStatusColorForBadge(\n statusDefinition?.color ??\n (task.data as { statusColor?: string } | undefined)?.statusColor,\n task.status.id,\n );\n pushField(\n 'status',\n '@general:terms.status.title',\n AXPWidgetsList.Layouts.BadgeLayout,\n {\n text: task.status.title,\n color: statusColor,\n icon: statusDefinition?.icon ?? 'fa-light fa-flag',\n },\n { look: 'twotone' },\n );\n }\n }\n\n pushField(\n 'assignee',\n '@workflow-management:tasks.popover.assignee',\n AXPWidgetsCatalog.text,\n this.formatUserReferenceLabel(task.assignee),\n {},\n true,\n );\n\n pushField(\n 'startedBy',\n '@workflow-management:tasks.popover.started-by',\n AXPWidgetsCatalog.text,\n this.formatUserReferenceLabel(task.reporter),\n {},\n true,\n );\n\n const createdAt = task.createdAt ?? task.startDate;\n if (createdAt) {\n pushField('createdAt', '@workflow-management:tasks.popover.created', AXPWidgetsCatalog.dateTime, createdAt, {\n showTime: false,\n });\n }\n\n const hasExplicitDueDate = (task.data as { hasExplicitDueDate?: boolean } | undefined)?.hasExplicitDueDate === true;\n const dueDate = hasExplicitDueDate ? this.resolveDueDate(payload?.dueDate ?? task.endDate) : null;\n if (dueDate) {\n const taskWithDueStatus = this.dueStatusProviderService.attachDueStatusToTask(task, {\n workflowDefinitionId: (task.data as { definitionId?: string } | undefined)?.definitionId,\n activityType: payload?.activityType,\n });\n const dueStatus = (taskWithDueStatus.data as { dueStatus?: { color?: string; icon?: string } } | undefined)\n ?.dueStatus;\n const formattedDueDate = await this.formatDateForTaskDisplay(dueDate);\n\n pushField(\n 'dueDate',\n '@workflow-management:tasks.popover.due',\n AXPWidgetsList.Layouts.BadgeLayout,\n {\n text: formattedDueDate,\n color: dueStatus?.color ?? 'secondary',\n icon: dueStatus?.icon ?? 'fa-light fa-calendar',\n },\n { look: 'twotone' },\n );\n }\n\n const effectiveDate = this.resolveEffectiveDateValue(payload?.context);\n if (effectiveDate.kind === 'date') {\n pushField(\n 'effectiveDate',\n '@workflow-management:tasks.popover.effective-date',\n AXPWidgetsCatalog.dateTime,\n effectiveDate.value,\n { showTime: false },\n );\n } else if (effectiveDate.kind === 'text') {\n pushField(\n 'effectiveDate',\n '@workflow-management:tasks.popover.effective-date',\n AXPWidgetsCatalog.text,\n effectiveDate.value,\n );\n }\n\n if (task.priority) {\n pushField(\n 'priority',\n '@workflow-management:tasks.popover.priority',\n AXPWidgetsList.Layouts.BadgeLayout,\n {\n text: task.priority.charAt(0).toUpperCase() + task.priority.slice(1),\n color: this.resolveTaskPriorityColor(task.priority),\n icon: 'fa-light fa-exclamation-circle',\n },\n { look: 'twotone' },\n );\n }\n\n return { context, fields };\n }\n\n //#endregion\n\n //#region ---- Popover Helpers ----\n\n private hasMeaningfulPopoverValue(value: unknown): boolean {\n if (value === null || value === undefined) {\n return false;\n }\n if (typeof value === 'string') {\n const trimmed = value.trim();\n return trimmed.length > 0 && trimmed !== '—';\n }\n if (value instanceof Date) {\n return !Number.isNaN(value.getTime());\n }\n return true;\n }\n\n private formatUserReferenceLabel(user: AXPUserReference | undefined): string {\n return user?.fullName?.trim() || user?.username?.trim() || '—';\n }\n\n private resolveDueDate(raw: string | Date | null | undefined): Date | null {\n if (raw == null || raw === '') {\n return null;\n }\n const date = typeof raw === 'string' ? new Date(raw) : raw;\n return Number.isNaN(date.getTime()) ? null : date;\n }\n\n private resolveEffectiveDateValue(\n context?: Record<string, unknown>,\n ): { kind: 'none' } | { kind: 'date'; value: Date } | { kind: 'text'; value: string } {\n if (!context || typeof context !== 'object') {\n return { kind: 'none' };\n }\n const i18n = context[AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY];\n const rawFromI18n =\n i18n && typeof i18n === 'object' && !Array.isArray(i18n)\n ? (i18n as Record<string, unknown>)['effectiveDate']\n : undefined;\n const raw =\n rawFromI18n ??\n context['effectiveDate'] ??\n (context['result'] && typeof context['result'] === 'object' && !Array.isArray(context['result'])\n ? (context['result'] as Record<string, unknown>)['effectiveDate']\n : undefined);\n\n if (raw instanceof Date) {\n return Number.isNaN(raw.getTime()) ? { kind: 'none' } : { kind: 'date', value: raw };\n }\n\n if (typeof raw !== 'string' || !raw.trim()) {\n return { kind: 'none' };\n }\n\n const trimmed = raw.trim();\n const parsed = this.parseDateOnlyString(trimmed);\n if (parsed) {\n return { kind: 'date', value: parsed };\n }\n return { kind: 'text', value: trimmed };\n }\n\n /** Parses `yyyy-mm-dd` (and ISO date prefixes) in local time to avoid UTC day shifts in the date widget. */\n private parseDateOnlyString(value: string): Date | null {\n const dateOnlyMatch = /^(\\d{4})-(\\d{2})-(\\d{2})/.exec(value.trim());\n if (!dateOnlyMatch) {\n return null;\n }\n const year = Number(dateOnlyMatch[1]);\n const month = Number(dateOnlyMatch[2]);\n const day = Number(dateOnlyMatch[3]);\n if (!year || month < 1 || month > 12 || day < 1 || day > 31) {\n return null;\n }\n const local = new Date(year, month - 1, day);\n return Number.isNaN(local.getTime()) ? null : local;\n }\n\n private resolveTaskPriorityColor(priority: NonNullable<AXPTask['priority']>): string {\n switch (normalizeTaskPriority(priority)) {\n case 'urgent':\n return 'danger';\n case 'high':\n return 'warning';\n case 'normal':\n return 'secondary';\n case 'low':\n return 'neutral';\n default:\n return 'primary';\n }\n }\n\n //#endregion\n\n //#region ---- Component ----\n\n override getComponent(): (() => Promise<Type<AXPTaskPopoverComponent>>) | Type<AXPTaskPopoverComponent> | null {\n return () => import('./workflow-task-popover.component').then((m) => m.AXMWorkflowTaskPopoverComponent);\n }\n\n //#endregion\n\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["loadGenericWorkflowTaskProviderClass","AXPWidgetsList","AXPEntityCommandScope","AXPWidgetsCatalog"],"mappings":"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"}