@acorex/modules 21.0.0-next.70 → 21.0.0-next.71
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.
- package/fesm2022/acorex-modules-ai-management.mjs +7 -11
- package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-IHgQ8RVH.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-BnfSTevp.mjs} +654 -496
- package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-BnfSTevp.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-B95yBXgi.mjs → acorex-modules-assessment-management-assessment-case.entity-BWMbcZFT.mjs} +2 -2
- package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-B95yBXgi.mjs.map → acorex-modules-assessment-management-assessment-case.entity-BWMbcZFT.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-assessment-session-answers-view.util-Jhy94fgV.mjs → acorex-modules-assessment-management-assessment-session-answers-view.util-B42XNJUV.mjs} +2 -2
- package/fesm2022/{acorex-modules-assessment-management-assessment-session-answers-view.util-Jhy94fgV.mjs.map → acorex-modules-assessment-management-assessment-session-answers-view.util-B42XNJUV.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-DBhBxqh1.mjs → acorex-modules-assessment-management-assessment-session.entity-osEWRiw1.mjs} +2 -2
- package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-DBhBxqh1.mjs.map → acorex-modules-assessment-management-assessment-session.entity-osEWRiw1.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-nkFpnKE2.mjs → acorex-modules-assessment-management-fill-assessment-session.command-DIUV6Az-.mjs} +3 -3
- package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-DIUV6Az-.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-preview-question.command-B29oj3WB.mjs → acorex-modules-assessment-management-preview-question.command-B0kZz-BV.mjs} +2 -2
- package/fesm2022/{acorex-modules-assessment-management-preview-question.command-B29oj3WB.mjs.map → acorex-modules-assessment-management-preview-question.command-B0kZz-BV.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-Sd4gRHo5.mjs → acorex-modules-assessment-management-preview-questionnaire.command-BUUnlr7g.mjs} +18 -9
- package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-BUUnlr7g.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BCtQO_j7.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BvqEePUh.mjs} +2 -2
- package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BCtQO_j7.mjs.map → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BvqEePUh.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-RLIfWCzq.mjs → acorex-modules-assessment-management-question-bank-item.entity-DZBQOgAg.mjs} +3 -2
- package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-DZBQOgAg.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-B8LMKqVO.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-BMv-XkZk.mjs} +19 -5
- package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-BMv-XkZk.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-CZBnfCYE.mjs → acorex-modules-assessment-management-questionnaire.entity-BGkWU83k.mjs} +4 -2
- package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-BGkWU83k.mjs.map +1 -0
- package/fesm2022/{acorex-modules-assessment-management-review-assessment-session.command-hB_LFUSE.mjs → acorex-modules-assessment-management-review-assessment-session.command-Bqi7YO0X.mjs} +3 -3
- package/fesm2022/{acorex-modules-assessment-management-review-assessment-session.command-hB_LFUSE.mjs.map → acorex-modules-assessment-management-review-assessment-session.command-Bqi7YO0X.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-BN-nYHha.mjs → acorex-modules-assessment-management-view-session-answers.command-2LB7JKZx.mjs} +3 -3
- package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-BN-nYHha.mjs.map → acorex-modules-assessment-management-view-session-answers.command-2LB7JKZx.mjs.map} +1 -1
- package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs → acorex-modules-auth-acorex-modules-auth-BKMD5v6t.mjs} +17 -13
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BKMD5v6t.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs → acorex-modules-auth-app-chooser.component-DTlzE1Rd.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs.map → acorex-modules-auth-app-chooser.component-DTlzE1Rd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-D1-POhQk.mjs → acorex-modules-auth-login.module-DSQfhKUZ.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-D1-POhQk.mjs.map → acorex-modules-auth-login.module-DSQfhKUZ.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-master.layout-BDM5XtcM.mjs +25 -0
- package/fesm2022/acorex-modules-auth-master.layout-BDM5XtcM.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs → acorex-modules-auth-oauth-callback.component-C4Q78fuo.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs.map → acorex-modules-auth-oauth-callback.component-C4Q78fuo.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-BMVSHYy7.mjs → acorex-modules-auth-password.component-C_55t9er.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-BMVSHYy7.mjs.map → acorex-modules-auth-password.component-C_55t9er.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-Cm8DsDvu.mjs → acorex-modules-auth-password.component-VwEsbfR1.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-Cm8DsDvu.mjs.map → acorex-modules-auth-password.component-VwEsbfR1.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-B85OzgW1.mjs → acorex-modules-auth-routes-prPiMAL6.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-B85OzgW1.mjs.map → acorex-modules-auth-routes-prPiMAL6.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs → acorex-modules-auth-tenant-chooser.component-DVyI9cGU.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs.map → acorex-modules-auth-tenant-chooser.component-DVyI9cGU.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-DfyDQIw-.mjs → acorex-modules-auth-two-factor.module-C7vZrBHK.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-two-factor.module-DfyDQIw-.mjs.map → acorex-modules-auth-two-factor.module-C7vZrBHK.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs → acorex-modules-auth-user-sessions.component-ChF8OYdd.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs.map → acorex-modules-auth-user-sessions.component-ChF8OYdd.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-common.mjs +462 -5
- package/fesm2022/acorex-modules-common.mjs.map +1 -1
- package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs → acorex-modules-content-management-acorex-modules-content-management-Bc_tCoHa.mjs} +6 -6
- package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-Bc_tCoHa.mjs.map +1 -0
- package/fesm2022/{acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs → acorex-modules-content-management-permission-definition.provider-2-_i1Kxd.mjs} +2 -2
- package/fesm2022/{acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs.map → acorex-modules-content-management-permission-definition.provider-2-_i1Kxd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs → acorex-modules-content-management-template-content-editor-widget-edit.component-BdNwhaJ8.mjs} +2 -2
- package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs.map → acorex-modules-content-management-template-content-editor-widget-edit.component-BdNwhaJ8.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs → acorex-modules-content-management-template-content-editor-widget-view.component-Cwnqyt0U.mjs} +2 -2
- package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs.map → acorex-modules-content-management-template-content-editor-widget-view.component-Cwnqyt0U.mjs.map} +1 -1
- package/fesm2022/acorex-modules-content-management.mjs +1 -1
- package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs → acorex-modules-conversation-acorex-modules-conversation-B1ijk48q.mjs} +640 -219
- package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-B1ijk48q.mjs.map +1 -0
- package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Mlan0ADR.mjs +329 -0
- package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-Mlan0ADR.mjs.map +1 -0
- package/fesm2022/{acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs → acorex-modules-conversation-comments-page.component--Q5RxEyI.mjs} +2 -2
- package/fesm2022/{acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs.map → acorex-modules-conversation-comments-page.component--Q5RxEyI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs → acorex-modules-conversation-send-assist-chat-message.command--_hCn9Et.mjs} +2 -2
- package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs.map → acorex-modules-conversation-send-assist-chat-message.command--_hCn9Et.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs → acorex-modules-conversation-start-assist-chat.command-BE1BPjj2.mjs} +2 -2
- package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs.map → acorex-modules-conversation-start-assist-chat.command-BE1BPjj2.mjs.map} +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +1 -1
- package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-DJMJFziT.mjs} +50 -18
- package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-DJMJFziT.mjs.map +1 -0
- package/fesm2022/{acorex-modules-dashboard-management-index-Bhm8mAON.mjs → acorex-modules-dashboard-management-index-DoTVg9ro.mjs} +2 -2
- package/fesm2022/{acorex-modules-dashboard-management-index-Bhm8mAON.mjs.map → acorex-modules-dashboard-management-index-DoTVg9ro.mjs.map} +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-C1lNgBrC.mjs} +189 -49
- package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-C1lNgBrC.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs → acorex-modules-human-capital-management-approve-leave-request.command-CDBhDXr8.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-CDBhDXr8.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-pz0IOxa3.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-pz0IOxa3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-Czwdu-nH.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-Czwdu-nH.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs → acorex-modules-human-capital-management-employee.entity-ZTRqQfRv.mjs} +21 -17
- package/fesm2022/acorex-modules-human-capital-management-employee.entity-ZTRqQfRv.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs → acorex-modules-human-capital-management-employment-type.entity-BIIc7EpP.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs.map → acorex-modules-human-capital-management-employment-type.entity-BIIc7EpP.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs → acorex-modules-human-capital-management-leave-request.entity-Bmv7oLAr.mjs} +19 -24
- package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-Bmv7oLAr.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs → acorex-modules-human-capital-management-leave-type.entity-OwdxjYKk.mjs} +10 -4
- package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-OwdxjYKk.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs → acorex-modules-human-capital-management-lifecycle-event-type.entity-C_XVrmZt.mjs} +19 -74
- package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-C_XVrmZt.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs → acorex-modules-human-capital-management-lifecycle-event.entity-BwLAEtqA.mjs} +3 -3
- package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-BwLAEtqA.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs → acorex-modules-human-capital-management-position-assignment.entity-DdMmiGbn.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-DdMmiGbn.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs → acorex-modules-human-capital-management-reject-leave-request.command-Bdwwkcs3.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-Bdwwkcs3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-Cq-aA79w.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs.map → acorex-modules-human-capital-management-revoke-position-assignment.command-Cq-aA79w.mjs.map} +1 -1
- package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-Cx9TRMlY.mjs +230 -0
- package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-Cx9TRMlY.mjs.map +1 -0
- package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-DjepuAcu.mjs} +9 -14
- package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-DjepuAcu.mjs.map +1 -0
- package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
- package/fesm2022/acorex-modules-report-management.mjs +2 -2
- package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs → acorex-modules-settings-management-acorex-modules-settings-management-BfbVV7di.mjs} +5 -5
- package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs.map → acorex-modules-settings-management-acorex-modules-settings-management-BfbVV7di.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs → acorex-modules-settings-management-permission-definition.provider-BBb5hqkc.mjs} +2 -2
- package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs.map → acorex-modules-settings-management-permission-definition.provider-BBb5hqkc.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs → acorex-modules-settings-management-setting-page.component-Dn8CYgux.mjs} +4 -4
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs.map → acorex-modules-settings-management-setting-page.component-Dn8CYgux.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs → acorex-modules-settings-management-setting-view.component-B5jpPo9k.mjs} +2 -2
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs.map → acorex-modules-settings-management-setting-view.component-B5jpPo9k.mjs.map} +1 -1
- package/fesm2022/acorex-modules-settings-management.mjs +1 -1
- package/fesm2022/{acorex-modules-workflow-management-index-CxheG2ry.mjs → acorex-modules-workflow-management-index-CztICioV.mjs} +64 -4
- package/fesm2022/acorex-modules-workflow-management-index-CztICioV.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-Cpi0Pq3n.mjs +79 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-Cpi0Pq3n.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-RbwX6Nd_.mjs +466 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-RbwX6Nd_.mjs.map +1 -0
- package/fesm2022/{acorex-modules-workflow-management-workflow-definition.entity-DISpkWE4.mjs → acorex-modules-workflow-management-workflow-definition.entity-BfACGpo4.mjs} +2 -1
- package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-BfACGpo4.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management.mjs +175 -29
- package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
- package/package.json +2 -2
- package/types/acorex-modules-ai-management.d.ts +2 -2
- package/types/acorex-modules-assessment-management.d.ts +214 -188
- package/types/acorex-modules-common.d.ts +13 -3
- package/types/acorex-modules-conversation.d.ts +22 -11
- package/types/acorex-modules-dashboard-management.d.ts +14 -2
- package/types/acorex-modules-document-management.d.ts +6 -0
- package/types/acorex-modules-human-capital-management.d.ts +28 -14
- package/types/acorex-modules-report-management.d.ts +3 -0
- package/types/acorex-modules-workflow-management.d.ts +18 -11
- package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-IHgQ8RVH.mjs.map +0 -1
- package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-nkFpnKE2.mjs.map +0 -1
- package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-Sd4gRHo5.mjs.map +0 -1
- package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-RLIfWCzq.mjs.map +0 -1
- package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-B8LMKqVO.mjs.map +0 -1
- package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-CZBnfCYE.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-master.layout-DMP4RC6L.mjs +0 -25
- package/fesm2022/acorex-modules-auth-master.layout-DMP4RC6L.mjs.map +0 -1
- package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs.map +0 -1
- package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs.map +0 -1
- package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs +0 -329
- package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs.map +0 -1
- package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-index-CxheG2ry.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-DISpkWE4.mjs.map +0 -1
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
import { mapAXPPropertyToWidgetProperty, AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { model, input, inject, signal, computed, effect, untracked, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
4
|
+
import { isString, castArray, get, isEqual } from 'lodash-es';
|
|
5
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
6
|
+
import { AXPItemConfiguratorComponent } from '@acorex/platform/layout/components';
|
|
7
|
+
import { AXPEntityService } from '@acorex/platform/layout/entity';
|
|
8
|
+
import { RootConfig } from './acorex-modules-workflow-management.mjs';
|
|
9
|
+
import { AXPSystemStatusType } from '@acorex/platform/common';
|
|
10
|
+
|
|
11
|
+
//#region ---- Imports ----
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region ---- Constants ----
|
|
14
|
+
/** Workflow inputs normally supplied when a run is started from runtime context, not on the template. */
|
|
15
|
+
const WORKFLOW_CONFIGURATOR_RUNTIME_INPUT_NAMES = new Set([
|
|
16
|
+
'employeeId',
|
|
17
|
+
'employeeDisplayName',
|
|
18
|
+
'eventTypeId',
|
|
19
|
+
'eventTypeTitle',
|
|
20
|
+
'effectiveDate',
|
|
21
|
+
'assessmentCaseTitle',
|
|
22
|
+
'targetEmployeeStatusId',
|
|
23
|
+
]);
|
|
24
|
+
/**
|
|
25
|
+
* Resolves catalog scope keys from persisted row shape (keys or enriched scopes).
|
|
26
|
+
*/
|
|
27
|
+
function resolveWorkflowCatalogScopeKeys(row) {
|
|
28
|
+
const keys = new Set();
|
|
29
|
+
for (const key of row.catalogScopeKeys ?? []) {
|
|
30
|
+
if (isString(key) && key.trim()) {
|
|
31
|
+
keys.add(key.trim());
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
for (const scope of row.catalogScopes ?? []) {
|
|
35
|
+
const name = scope?.name?.trim();
|
|
36
|
+
if (name) {
|
|
37
|
+
keys.add(name);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return [...keys];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Builds a workflow list filter from registered scope key names.
|
|
44
|
+
*/
|
|
45
|
+
function workflowConfiguratorCatalogScopeFilterFromKeys(catalogScopeKeys) {
|
|
46
|
+
const anyOf = castArray(catalogScopeKeys ?? [])
|
|
47
|
+
.filter((k) => isString(k) && k.trim().length > 0)
|
|
48
|
+
.map((k) => k.trim());
|
|
49
|
+
return anyOf.length > 0 ? { anyOf } : undefined;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Query filter for published workflow definitions, optionally restricted by catalog scope keys.
|
|
53
|
+
*/
|
|
54
|
+
function buildWorkflowConfiguratorListQueryFilter(scopeFilter) {
|
|
55
|
+
const publishedFilter = {
|
|
56
|
+
field: 'statusId',
|
|
57
|
+
operator: { type: 'equal' },
|
|
58
|
+
value: AXPSystemStatusType.Published,
|
|
59
|
+
};
|
|
60
|
+
const anyOf = scopeFilter?.anyOf?.map((k) => k.trim()).filter(Boolean) ?? [];
|
|
61
|
+
if (anyOf.length === 0) {
|
|
62
|
+
return publishedFilter;
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
logic: 'and',
|
|
66
|
+
filters: [
|
|
67
|
+
publishedFilter,
|
|
68
|
+
{
|
|
69
|
+
logic: 'or',
|
|
70
|
+
filters: anyOf.map((scopeKey) => ({
|
|
71
|
+
field: 'catalogScopeKeys',
|
|
72
|
+
operator: { type: 'contains' },
|
|
73
|
+
value: scopeKey,
|
|
74
|
+
})),
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Returns true when the row's catalog scope keys satisfy the configurator filter.
|
|
81
|
+
*/
|
|
82
|
+
function matchesWorkflowConfiguratorCatalogScopeFilter(catalogScopeKeys, filter) {
|
|
83
|
+
if (!filter) {
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
const keys = (catalogScopeKeys ?? []).filter((k) => isString(k) && k.trim().length > 0);
|
|
87
|
+
if (filter.keyPrefix?.trim()) {
|
|
88
|
+
const prefix = filter.keyPrefix.trim();
|
|
89
|
+
if (!keys.some((k) => k.startsWith(prefix))) {
|
|
90
|
+
return false;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const anyOf = filter.anyOf?.map((k) => k.trim()).filter(Boolean) ?? [];
|
|
94
|
+
if (anyOf.length > 0 && !anyOf.some((scope) => keys.includes(scope))) {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
const allOf = filter.allOf?.map((k) => k.trim()).filter(Boolean) ?? [];
|
|
98
|
+
if (allOf.length > 0 && !allOf.every((scope) => keys.includes(scope))) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
function mergeTemplateInputCatalogScopeFilter(property, templateInputFilters) {
|
|
104
|
+
const name = property.name?.trim();
|
|
105
|
+
if (!name || !templateInputFilters) {
|
|
106
|
+
return property;
|
|
107
|
+
}
|
|
108
|
+
const scopeFilter = templateInputFilters[name]?.catalogScopeKeys;
|
|
109
|
+
if (!scopeFilter) {
|
|
110
|
+
return property;
|
|
111
|
+
}
|
|
112
|
+
const values = castArray(scopeFilter).filter((v) => isString(v) && v.trim().length > 0);
|
|
113
|
+
if (values.length === 0) {
|
|
114
|
+
return property;
|
|
115
|
+
}
|
|
116
|
+
const iface = property.interface;
|
|
117
|
+
if (!iface?.options) {
|
|
118
|
+
return property;
|
|
119
|
+
}
|
|
120
|
+
const existingFilter = get(iface.options, 'filter');
|
|
121
|
+
const scopeConditions = values.map((value) => ({
|
|
122
|
+
field: 'catalogScopeKeys',
|
|
123
|
+
operator: { type: 'contains' },
|
|
124
|
+
value,
|
|
125
|
+
}));
|
|
126
|
+
const mergedFilter = scopeConditions.length === 1
|
|
127
|
+
? scopeConditions[0]
|
|
128
|
+
: { logic: 'or', filters: scopeConditions };
|
|
129
|
+
return {
|
|
130
|
+
...property,
|
|
131
|
+
interface: {
|
|
132
|
+
...iface,
|
|
133
|
+
options: {
|
|
134
|
+
...iface.options,
|
|
135
|
+
filter: existingFilter
|
|
136
|
+
? { logic: 'and', filters: [existingFilter, mergedFilter] }
|
|
137
|
+
: mergedFilter,
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
//#endregion
|
|
143
|
+
//#region ---- Mapping ----
|
|
144
|
+
/**
|
|
145
|
+
* Maps workflow definition `inputs` to property viewer rows for {@link AXPItemConfiguratorComponent}.
|
|
146
|
+
*/
|
|
147
|
+
function mapWorkflowInputsToWidgetProperties(inputs, translation, templateInputNames, templateInputFilters) {
|
|
148
|
+
const list = inputs ?? [];
|
|
149
|
+
const allowSet = templateInputNames && templateInputNames.length > 0
|
|
150
|
+
? new Set(templateInputNames)
|
|
151
|
+
: null;
|
|
152
|
+
const group = {
|
|
153
|
+
name: 'workflow-template-inputs',
|
|
154
|
+
title: '@workflow-management:workflow-configurator.configure.group-title',
|
|
155
|
+
order: 0,
|
|
156
|
+
};
|
|
157
|
+
const filtered = list.filter((property) => {
|
|
158
|
+
const name = property.name?.trim();
|
|
159
|
+
if (!name) {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
if (allowSet) {
|
|
163
|
+
return allowSet.has(name);
|
|
164
|
+
}
|
|
165
|
+
return !WORKFLOW_CONFIGURATOR_RUNTIME_INPUT_NAMES.has(name);
|
|
166
|
+
});
|
|
167
|
+
return filtered.map((property, index) => mapAXPPropertyToWidgetProperty(mergeTemplateInputCatalogScopeFilter(property, templateInputFilters), {
|
|
168
|
+
group,
|
|
169
|
+
order: index,
|
|
170
|
+
valuePathPrefix: 'options',
|
|
171
|
+
resolveTitle: (prop) => typeof prop.title === 'string'
|
|
172
|
+
? prop.title
|
|
173
|
+
: (translation.resolve(prop.title) ?? prop.name),
|
|
174
|
+
resolveDescription: (prop) => prop.description === undefined
|
|
175
|
+
? undefined
|
|
176
|
+
: typeof prop.description === 'string'
|
|
177
|
+
? prop.description
|
|
178
|
+
: translation.resolve(prop.description),
|
|
179
|
+
}));
|
|
180
|
+
}
|
|
181
|
+
//#endregion
|
|
182
|
+
|
|
183
|
+
//#region ---- Imports ----
|
|
184
|
+
//#endregion
|
|
185
|
+
//#region ---- Component ----
|
|
186
|
+
/**
|
|
187
|
+
* Select a workflow definition and configure template-time inputs via {@link AXPItemConfiguratorComponent}.
|
|
188
|
+
*/
|
|
189
|
+
class AXMWorkflowConfiguratorComponent {
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region ---- Lifecycle ----
|
|
192
|
+
constructor() {
|
|
193
|
+
//#region ---- Inputs ----
|
|
194
|
+
this.value = model({
|
|
195
|
+
workflowDefinitionId: '',
|
|
196
|
+
workflowName: '',
|
|
197
|
+
defaultInput: {},
|
|
198
|
+
}, ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
199
|
+
this.label = input('@workflow-management:workflow-configurator.label', ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
200
|
+
this.readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : /* istanbul ignore next */ []));
|
|
201
|
+
/**
|
|
202
|
+
* When set, only these workflow input names are configurable; otherwise runtime inputs are excluded by default.
|
|
203
|
+
*/
|
|
204
|
+
this.templateInputNames = input(undefined, ...(ngDevMode ? [{ debugName: "templateInputNames" }] : /* istanbul ignore next */ []));
|
|
205
|
+
/**
|
|
206
|
+
* Limits workflow definitions to rows whose {@link catalogScopeKeys} match (e.g. HR lifecycle).
|
|
207
|
+
*/
|
|
208
|
+
this.catalogScopeFilter = input(undefined, ...(ngDevMode ? [{ debugName: "catalogScopeFilter" }] : /* istanbul ignore next */ []));
|
|
209
|
+
/**
|
|
210
|
+
* Per template input lookup filters (e.g. `questionnaireId` → HR catalog scopes).
|
|
211
|
+
*/
|
|
212
|
+
this.templateInputFilters = input(undefined, ...(ngDevMode ? [{ debugName: "templateInputFilters" }] : /* istanbul ignore next */ []));
|
|
213
|
+
//#endregion
|
|
214
|
+
//#region ---- Services & Dependencies ----
|
|
215
|
+
this.entityService = inject(AXPEntityService);
|
|
216
|
+
this.translation = inject(AXTranslationService);
|
|
217
|
+
//#endregion
|
|
218
|
+
//#region ---- Class Properties ----
|
|
219
|
+
this.selectedWorkflowIdModel = model('', ...(ngDevMode ? [{ debugName: "selectedWorkflowIdModel" }] : /* istanbul ignore next */ []));
|
|
220
|
+
this.defaultInputModel = model({}, ...(ngDevMode ? [{ debugName: "defaultInputModel" }] : /* istanbul ignore next */ []));
|
|
221
|
+
this.workflows = signal([], ...(ngDevMode ? [{ debugName: "workflows" }] : /* istanbul ignore next */ []));
|
|
222
|
+
this.configuratorItems = computed(() => {
|
|
223
|
+
const names = this.templateInputNames();
|
|
224
|
+
const inputFilters = this.templateInputFilters();
|
|
225
|
+
return this.workflows().map((row) => ({
|
|
226
|
+
id: row.id,
|
|
227
|
+
title: (row.title ?? row.name),
|
|
228
|
+
icon: 'fa-light fa-diagram-project',
|
|
229
|
+
description: row.description,
|
|
230
|
+
propertyDefinitions: mapWorkflowInputsToWidgetProperties(row.inputs, this.translation, names, inputFilters),
|
|
231
|
+
}));
|
|
232
|
+
}, ...(ngDevMode ? [{ debugName: "configuratorItems" }] : /* istanbul ignore next */ []));
|
|
233
|
+
effect(() => {
|
|
234
|
+
this.catalogScopeFilter();
|
|
235
|
+
untracked(() => {
|
|
236
|
+
void this.loadWorkflowDefinitions();
|
|
237
|
+
});
|
|
238
|
+
});
|
|
239
|
+
effect(() => {
|
|
240
|
+
const v = this.value();
|
|
241
|
+
const id = v?.workflowDefinitionId?.trim() ?? '';
|
|
242
|
+
const defaults = v?.defaultInput ?? {};
|
|
243
|
+
if (this.selectedWorkflowIdModel() !== id) {
|
|
244
|
+
untracked(() => this.selectedWorkflowIdModel.set(id));
|
|
245
|
+
}
|
|
246
|
+
if (!isEqual(this.defaultInputModel(), defaults)) {
|
|
247
|
+
untracked(() => this.defaultInputModel.set({ ...defaults }));
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
effect(() => {
|
|
251
|
+
const id = this.selectedWorkflowIdModel();
|
|
252
|
+
const defaults = this.defaultInputModel();
|
|
253
|
+
const row = this.workflows().find((w) => w.id === id);
|
|
254
|
+
const current = untracked(() => this.value());
|
|
255
|
+
const next = {
|
|
256
|
+
workflowDefinitionId: id,
|
|
257
|
+
workflowName: row?.name?.trim() ??
|
|
258
|
+
(current.workflowDefinitionId === id ? (current.workflowName?.trim() ?? '') : ''),
|
|
259
|
+
defaultInput: { ...defaults },
|
|
260
|
+
};
|
|
261
|
+
const normalizedCurrent = {
|
|
262
|
+
workflowDefinitionId: current.workflowDefinitionId?.trim() ?? '',
|
|
263
|
+
workflowName: current.workflowName?.trim() ?? '',
|
|
264
|
+
defaultInput: current.defaultInput ?? {},
|
|
265
|
+
};
|
|
266
|
+
if (!isEqual(next, normalizedCurrent)) {
|
|
267
|
+
untracked(() => this.value.set(next));
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
//#endregion
|
|
272
|
+
//#region ---- Data loading ----
|
|
273
|
+
async loadWorkflowDefinitions() {
|
|
274
|
+
try {
|
|
275
|
+
const scopeFilter = this.catalogScopeFilter();
|
|
276
|
+
const page = await this.entityService
|
|
277
|
+
.withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name)
|
|
278
|
+
.data()
|
|
279
|
+
.query({
|
|
280
|
+
skip: 0,
|
|
281
|
+
take: 500,
|
|
282
|
+
filter: buildWorkflowConfiguratorListQueryFilter(scopeFilter),
|
|
283
|
+
});
|
|
284
|
+
const rows = (page.items ?? []);
|
|
285
|
+
const pinnedId = this.value()?.workflowDefinitionId?.trim();
|
|
286
|
+
const filtered = rows
|
|
287
|
+
.filter((r) => !!r.id?.trim() && !!r.name?.trim())
|
|
288
|
+
.filter((r) => {
|
|
289
|
+
if (!scopeFilter) {
|
|
290
|
+
return true;
|
|
291
|
+
}
|
|
292
|
+
if (pinnedId && r.id === pinnedId) {
|
|
293
|
+
return true;
|
|
294
|
+
}
|
|
295
|
+
const keys = resolveWorkflowCatalogScopeKeys(r);
|
|
296
|
+
return matchesWorkflowConfiguratorCatalogScopeFilter(keys, scopeFilter);
|
|
297
|
+
})
|
|
298
|
+
.sort((a, b) => {
|
|
299
|
+
const ta = this.translation.resolve(a.title).trim() || a.name;
|
|
300
|
+
const tb = this.translation.resolve(b.title).trim() || b.name;
|
|
301
|
+
return ta.localeCompare(tb, this.translation.getActiveLang(), { sensitivity: 'base' });
|
|
302
|
+
});
|
|
303
|
+
if (pinnedId && !filtered.some((r) => r.id === pinnedId)) {
|
|
304
|
+
try {
|
|
305
|
+
const pinned = (await this.entityService
|
|
306
|
+
.withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name)
|
|
307
|
+
.data()
|
|
308
|
+
.byKey(pinnedId));
|
|
309
|
+
if (pinned?.id) {
|
|
310
|
+
filtered.unshift(pinned);
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
catch {
|
|
314
|
+
/* keep list as filtered */
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
this.workflows.set(filtered);
|
|
318
|
+
}
|
|
319
|
+
catch {
|
|
320
|
+
this.workflows.set([]);
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowConfiguratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
324
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXMWorkflowConfiguratorComponent, isStandalone: true, selector: "axm-workflow-configurator", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, templateInputNames: { classPropertyName: "templateInputNames", publicName: "templateInputNames", isSignal: true, isRequired: false, transformFunction: null }, catalogScopeFilter: { classPropertyName: "catalogScopeFilter", publicName: "catalogScopeFilter", isSignal: true, isRequired: false, transformFunction: null }, templateInputFilters: { classPropertyName: "templateInputFilters", publicName: "templateInputFilters", isSignal: true, isRequired: false, transformFunction: null }, selectedWorkflowIdModel: { classPropertyName: "selectedWorkflowIdModel", publicName: "selectedWorkflowIdModel", isSignal: true, isRequired: false, transformFunction: null }, defaultInputModel: { classPropertyName: "defaultInputModel", publicName: "defaultInputModel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", selectedWorkflowIdModel: "selectedWorkflowIdModelChange", defaultInputModel: "defaultInputModelChange" }, host: { properties: { "attr.readonly": "readonly() ? \"\" : null" }, classAttribute: "ax-flex ax-flex-col" }, ngImport: i0, template: `
|
|
325
|
+
<axp-item-configurator
|
|
326
|
+
[(selectedItemId)]="selectedWorkflowIdModel"
|
|
327
|
+
[(values)]="defaultInputModel"
|
|
328
|
+
[label]="label()"
|
|
329
|
+
[readonly]="readonly()"
|
|
330
|
+
[items]="configuratorItems()"
|
|
331
|
+
/>
|
|
332
|
+
`, isInline: true, styles: [":host([readonly]){pointer-events:none;opacity:.7}\n"], dependencies: [{ kind: "component", type: AXPItemConfiguratorComponent, selector: "axp-item-configurator", inputs: ["selectedItemId", "values", "label", "readonly", "items", "headerActions"], outputs: ["selectedItemIdChange", "valuesChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
333
|
+
}
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowConfiguratorComponent, decorators: [{
|
|
335
|
+
type: Component,
|
|
336
|
+
args: [{ selector: 'axm-workflow-configurator', template: `
|
|
337
|
+
<axp-item-configurator
|
|
338
|
+
[(selectedItemId)]="selectedWorkflowIdModel"
|
|
339
|
+
[(values)]="defaultInputModel"
|
|
340
|
+
[label]="label()"
|
|
341
|
+
[readonly]="readonly()"
|
|
342
|
+
[items]="configuratorItems()"
|
|
343
|
+
/>
|
|
344
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
345
|
+
class: 'ax-flex ax-flex-col',
|
|
346
|
+
'[attr.readonly]': 'readonly() ? "" : null',
|
|
347
|
+
}, imports: [AXPItemConfiguratorComponent], styles: [":host([readonly]){pointer-events:none;opacity:.7}\n"] }]
|
|
348
|
+
}], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], templateInputNames: [{ type: i0.Input, args: [{ isSignal: true, alias: "templateInputNames", required: false }] }], catalogScopeFilter: [{ type: i0.Input, args: [{ isSignal: true, alias: "catalogScopeFilter", required: false }] }], templateInputFilters: [{ type: i0.Input, args: [{ isSignal: true, alias: "templateInputFilters", required: false }] }], selectedWorkflowIdModel: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedWorkflowIdModel", required: false }] }, { type: i0.Output, args: ["selectedWorkflowIdModelChange"] }], defaultInputModel: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultInputModel", required: false }] }, { type: i0.Output, args: ["defaultInputModelChange"] }] } });
|
|
349
|
+
|
|
350
|
+
//#region ---- Imports ----
|
|
351
|
+
//#endregion
|
|
352
|
+
//#region ---- Component ----
|
|
353
|
+
class AXMWorkflowConfiguratorWidgetEditComponent extends AXPValueWidgetComponent {
|
|
354
|
+
constructor() {
|
|
355
|
+
super(...arguments);
|
|
356
|
+
//#region ---- Computed Properties ----
|
|
357
|
+
this.readonly = computed(() => this.options()['readonly'] ?? false, ...(ngDevMode ? [{ debugName: "readonly" }] : /* istanbul ignore next */ []));
|
|
358
|
+
this.label = computed(() => this.options()['label'] || '@workflow-management:workflow-configurator.label', ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
359
|
+
this.templateInputNames = computed(() => {
|
|
360
|
+
const raw = this.options()['templateInputNames'];
|
|
361
|
+
return Array.isArray(raw) ? raw : undefined;
|
|
362
|
+
}, ...(ngDevMode ? [{ debugName: "templateInputNames" }] : /* istanbul ignore next */ []));
|
|
363
|
+
this.catalogScopeFilter = computed(() => {
|
|
364
|
+
const fromKeys = workflowConfiguratorCatalogScopeFilterFromKeys(this.options()['catalogScopeKeys']);
|
|
365
|
+
if (fromKeys) {
|
|
366
|
+
return fromKeys;
|
|
367
|
+
}
|
|
368
|
+
const raw = this.options()['catalogScopeFilter'];
|
|
369
|
+
return raw && typeof raw === 'object' ? raw : undefined;
|
|
370
|
+
}, ...(ngDevMode ? [{ debugName: "catalogScopeFilter" }] : /* istanbul ignore next */ []));
|
|
371
|
+
this.templateInputFilters = computed(() => {
|
|
372
|
+
const raw = this.options()['templateInputFilters'];
|
|
373
|
+
return raw && typeof raw === 'object'
|
|
374
|
+
? raw
|
|
375
|
+
: undefined;
|
|
376
|
+
}, ...(ngDevMode ? [{ debugName: "templateInputFilters" }] : /* istanbul ignore next */ []));
|
|
377
|
+
//#endregion
|
|
378
|
+
//#region ---- State Signals ----
|
|
379
|
+
this.isInitialized = signal(false, ...(ngDevMode ? [{ debugName: "isInitialized" }] : /* istanbul ignore next */ []));
|
|
380
|
+
//#endregion
|
|
381
|
+
//#region ---- Models ----
|
|
382
|
+
this.valueModel = model({
|
|
383
|
+
workflowDefinitionId: '',
|
|
384
|
+
workflowName: '',
|
|
385
|
+
defaultInput: {},
|
|
386
|
+
}, ...(ngDevMode ? [{ debugName: "valueModel" }] : /* istanbul ignore next */ []));
|
|
387
|
+
//#endregion
|
|
388
|
+
//#region ---- Effects ----
|
|
389
|
+
this.syncValueToConfigurator = effect(() => {
|
|
390
|
+
const value = this.getValue();
|
|
391
|
+
const normalized = value && typeof value === 'object' && 'workflowDefinitionId' in value
|
|
392
|
+
? {
|
|
393
|
+
workflowDefinitionId: value.workflowDefinitionId ?? '',
|
|
394
|
+
workflowName: value.workflowName ?? '',
|
|
395
|
+
defaultInput: value.defaultInput ?? {},
|
|
396
|
+
}
|
|
397
|
+
: { workflowDefinitionId: '', workflowName: '', defaultInput: {} };
|
|
398
|
+
const currentModel = untracked(() => this.valueModel());
|
|
399
|
+
if (!isEqual(normalized, currentModel)) {
|
|
400
|
+
untracked(() => {
|
|
401
|
+
this.valueModel.set(normalized);
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
untracked(() => {
|
|
405
|
+
if (!this.isInitialized()) {
|
|
406
|
+
this.isInitialized.set(true);
|
|
407
|
+
}
|
|
408
|
+
});
|
|
409
|
+
}, ...(ngDevMode ? [{ debugName: "syncValueToConfigurator" }] : /* istanbul ignore next */ []));
|
|
410
|
+
this.syncConfiguratorToValue = effect(() => {
|
|
411
|
+
const modelValue = this.valueModel();
|
|
412
|
+
if (!untracked(() => this.isInitialized())) {
|
|
413
|
+
return;
|
|
414
|
+
}
|
|
415
|
+
const currentValue = untracked(() => this.getValue());
|
|
416
|
+
const normalizedCurrent = currentValue && typeof currentValue === 'object' && 'workflowDefinitionId' in currentValue
|
|
417
|
+
? {
|
|
418
|
+
workflowDefinitionId: currentValue.workflowDefinitionId ?? '',
|
|
419
|
+
workflowName: currentValue.workflowName ?? '',
|
|
420
|
+
defaultInput: currentValue.defaultInput ?? {},
|
|
421
|
+
}
|
|
422
|
+
: { workflowDefinitionId: '', workflowName: '', defaultInput: {} };
|
|
423
|
+
if (!isEqual(modelValue, normalizedCurrent)) {
|
|
424
|
+
untracked(() => {
|
|
425
|
+
this.setValue(modelValue ?? { workflowDefinitionId: '', workflowName: '', defaultInput: {} });
|
|
426
|
+
});
|
|
427
|
+
}
|
|
428
|
+
}, ...(ngDevMode ? [{ debugName: "syncConfiguratorToValue" }] : /* istanbul ignore next */ []));
|
|
429
|
+
}
|
|
430
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowConfiguratorWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
431
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMWorkflowConfiguratorWidgetEditComponent, isStandalone: true, selector: "axm-workflow-configurator-widget-edit", inputs: { valueModel: { classPropertyName: "valueModel", publicName: "valueModel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueModel: "valueModelChange" }, usesInheritance: true, ngImport: i0, template: `
|
|
432
|
+
@if (isInitialized()) {
|
|
433
|
+
<axm-workflow-configurator
|
|
434
|
+
[(value)]="valueModel"
|
|
435
|
+
[label]="label()"
|
|
436
|
+
[readonly]="readonly()"
|
|
437
|
+
[templateInputNames]="templateInputNames()"
|
|
438
|
+
[catalogScopeFilter]="catalogScopeFilter()"
|
|
439
|
+
[templateInputFilters]="templateInputFilters()"
|
|
440
|
+
/>
|
|
441
|
+
}
|
|
442
|
+
`, isInline: true, dependencies: [{ kind: "component", type: AXMWorkflowConfiguratorComponent, selector: "axm-workflow-configurator", inputs: ["value", "label", "readonly", "templateInputNames", "catalogScopeFilter", "templateInputFilters", "selectedWorkflowIdModel", "defaultInputModel"], outputs: ["valueChange", "selectedWorkflowIdModelChange", "defaultInputModelChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
443
|
+
}
|
|
444
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMWorkflowConfiguratorWidgetEditComponent, decorators: [{
|
|
445
|
+
type: Component,
|
|
446
|
+
args: [{
|
|
447
|
+
selector: 'axm-workflow-configurator-widget-edit',
|
|
448
|
+
template: `
|
|
449
|
+
@if (isInitialized()) {
|
|
450
|
+
<axm-workflow-configurator
|
|
451
|
+
[(value)]="valueModel"
|
|
452
|
+
[label]="label()"
|
|
453
|
+
[readonly]="readonly()"
|
|
454
|
+
[templateInputNames]="templateInputNames()"
|
|
455
|
+
[catalogScopeFilter]="catalogScopeFilter()"
|
|
456
|
+
[templateInputFilters]="templateInputFilters()"
|
|
457
|
+
/>
|
|
458
|
+
}
|
|
459
|
+
`,
|
|
460
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
461
|
+
imports: [AXMWorkflowConfiguratorComponent],
|
|
462
|
+
}]
|
|
463
|
+
}], propDecorators: { valueModel: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueModel", required: false }] }, { type: i0.Output, args: ["valueModelChange"] }] } });
|
|
464
|
+
|
|
465
|
+
export { AXMWorkflowConfiguratorWidgetEditComponent };
|
|
466
|
+
//# sourceMappingURL=acorex-modules-workflow-management-workflow-configurator-widget-edit.component-RbwX6Nd_.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-modules-workflow-management-workflow-configurator-widget-edit.component-RbwX6Nd_.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/features/workflow-configurator/workflow-configurator.utils.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-configurator/workflow-configurator.component.ts","../../../../libs/modules/workflow-management/src/lib/features/workflow-configurator/workflow-configurator-widget-edit.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPProperty } from '@acorex/platform/core';\nimport {\n mapAXPPropertyToWidgetProperty,\n type AXPWidgetProperty,\n type AXPWidgetPropertyGroup,\n} from '@acorex/platform/layout/widget-core';\nimport { AXDataSourceFilterOption } from '@acorex/cdk/common';\nimport { AXPSystemStatusType } from '@acorex/platform/common';\nimport { castArray, get, isString } from 'lodash-es';\nimport type {\n WorkflowConfiguratorCatalogScopeFilter,\n WorkflowConfiguratorTemplateInputFilter,\n} from './workflow-configurator.types';\n\n//#endregion\n\n//#region ---- Constants ----\n\n/** Workflow inputs normally supplied when a run is started from runtime context, not on the template. */\nexport const WORKFLOW_CONFIGURATOR_RUNTIME_INPUT_NAMES = new Set([\n 'employeeId',\n 'employeeDisplayName',\n 'eventTypeId',\n 'eventTypeTitle',\n 'effectiveDate',\n 'assessmentCaseTitle',\n 'targetEmployeeStatusId',\n]);\n\n//#endregion\n\n//#region ---- Catalog scope matching ----\n\nexport interface WorkflowConfiguratorCatalogScopeRow {\n name?: string;\n catalogScopeKeys?: string[];\n catalogScopes?: Array<{ name?: string }>;\n}\n\n/**\n * Resolves catalog scope keys from persisted row shape (keys or enriched scopes).\n */\nexport function resolveWorkflowCatalogScopeKeys(row: WorkflowConfiguratorCatalogScopeRow): string[] {\n const keys = new Set<string>();\n\n for (const key of row.catalogScopeKeys ?? []) {\n if (isString(key) && key.trim()) {\n keys.add(key.trim());\n }\n }\n\n for (const scope of row.catalogScopes ?? []) {\n const name = scope?.name?.trim();\n if (name) {\n keys.add(name);\n }\n }\n\n return [...keys];\n}\n\n/**\n * Builds a workflow list filter from registered scope key names.\n */\nexport function workflowConfiguratorCatalogScopeFilterFromKeys(\n catalogScopeKeys: string | string[] | undefined,\n): WorkflowConfiguratorCatalogScopeFilter | undefined {\n const anyOf = castArray(catalogScopeKeys ?? [])\n .filter((k) => isString(k) && k.trim().length > 0)\n .map((k) => k.trim());\n\n return anyOf.length > 0 ? { anyOf } : undefined;\n}\n\n/**\n * Query filter for published workflow definitions, optionally restricted by catalog scope keys.\n */\nexport function buildWorkflowConfiguratorListQueryFilter(\n scopeFilter: WorkflowConfiguratorCatalogScopeFilter | undefined,\n): AXDataSourceFilterOption {\n const publishedFilter: AXDataSourceFilterOption = {\n field: 'statusId',\n operator: { type: 'equal' },\n value: AXPSystemStatusType.Published,\n };\n\n const anyOf = scopeFilter?.anyOf?.map((k) => k.trim()).filter(Boolean) ?? [];\n if (anyOf.length === 0) {\n return publishedFilter;\n }\n\n return {\n logic: 'and',\n filters: [\n publishedFilter,\n {\n logic: 'or',\n filters: anyOf.map((scopeKey) => ({\n field: 'catalogScopeKeys',\n operator: { type: 'contains' },\n value: scopeKey,\n })),\n },\n ],\n };\n}\n\n/**\n * Returns true when the row's catalog scope keys satisfy the configurator filter.\n */\nexport function matchesWorkflowConfiguratorCatalogScopeFilter(\n catalogScopeKeys: string[] | undefined,\n filter: WorkflowConfiguratorCatalogScopeFilter | undefined,\n): boolean {\n if (!filter) {\n return true;\n }\n\n const keys = (catalogScopeKeys ?? []).filter((k) => isString(k) && k.trim().length > 0);\n if (filter.keyPrefix?.trim()) {\n const prefix = filter.keyPrefix.trim();\n if (!keys.some((k) => k.startsWith(prefix))) {\n return false;\n }\n }\n\n const anyOf = filter.anyOf?.map((k) => k.trim()).filter(Boolean) ?? [];\n if (anyOf.length > 0 && !anyOf.some((scope) => keys.includes(scope))) {\n return false;\n }\n\n const allOf = filter.allOf?.map((k) => k.trim()).filter(Boolean) ?? [];\n if (allOf.length > 0 && !allOf.every((scope) => keys.includes(scope))) {\n return false;\n }\n\n return true;\n}\n\nfunction mergeTemplateInputCatalogScopeFilter(\n property: AXPProperty,\n templateInputFilters?: Record<string, WorkflowConfiguratorTemplateInputFilter>,\n): AXPProperty {\n const name = property.name?.trim();\n if (!name || !templateInputFilters) {\n return property;\n }\n\n const scopeFilter = templateInputFilters[name]?.catalogScopeKeys;\n if (!scopeFilter) {\n return property;\n }\n\n const values = castArray(scopeFilter).filter((v) => isString(v) && v.trim().length > 0);\n if (values.length === 0) {\n return property;\n }\n\n const iface = property.interface;\n if (!iface?.options) {\n return property;\n }\n\n const existingFilter = get(iface.options, 'filter');\n const scopeConditions = values.map((value) => ({\n field: 'catalogScopeKeys',\n operator: { type: 'contains' as const },\n value,\n }));\n\n const mergedFilter =\n scopeConditions.length === 1\n ? scopeConditions[0]\n : { logic: 'or' as const, filters: scopeConditions };\n\n return {\n ...property,\n interface: {\n ...iface,\n options: {\n ...iface.options,\n filter: existingFilter\n ? { logic: 'and', filters: [existingFilter, mergedFilter] }\n : mergedFilter,\n },\n },\n };\n}\n\n//#endregion\n\n//#region ---- Mapping ----\n\n/**\n * Maps workflow definition `inputs` to property viewer rows for {@link AXPItemConfiguratorComponent}.\n */\nexport function mapWorkflowInputsToWidgetProperties(\n inputs: AXPProperty[] | undefined,\n translation: AXTranslationService,\n templateInputNames?: string[],\n templateInputFilters?: Record<string, WorkflowConfiguratorTemplateInputFilter>,\n): AXPWidgetProperty[] {\n const list = inputs ?? [];\n const allowSet =\n templateInputNames && templateInputNames.length > 0\n ? new Set(templateInputNames)\n : null;\n\n const group: AXPWidgetPropertyGroup = {\n name: 'workflow-template-inputs',\n title: '@workflow-management:workflow-configurator.configure.group-title',\n order: 0,\n };\n\n const filtered = list.filter((property) => {\n const name = property.name?.trim();\n if (!name) {\n return false;\n }\n if (allowSet) {\n return allowSet.has(name);\n }\n return !WORKFLOW_CONFIGURATOR_RUNTIME_INPUT_NAMES.has(name);\n });\n\n return filtered.map((property, index) =>\n mapAXPPropertyToWidgetProperty(\n mergeTemplateInputCatalogScopeFilter(property, templateInputFilters),\n {\n group,\n order: index,\n valuePathPrefix: 'options',\n resolveTitle: (prop) =>\n typeof prop.title === 'string'\n ? prop.title\n : (translation.resolve(prop.title) ?? prop.name),\n resolveDescription: (prop) =>\n prop.description === undefined\n ? undefined\n : typeof prop.description === 'string'\n ? prop.description\n : translation.resolve(prop.description),\n },\n ),\n );\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPItemConfiguratorComponent, ItemConfiguratorListItem } from '@acorex/platform/layout/components';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n model,\n signal,\n untracked,\n} from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport type { AXMWorkflowManagementWorkflowDefinitionEntityModel } from '../../entities/workflow-definition/workflow-definition.types';\nimport { RootConfig } from '../../const';\nimport type {\n WorkflowConfiguratorCatalogScopeFilter,\n WorkflowConfiguratorTemplateInputFilter,\n WorkflowConfiguratorValue,\n} from './workflow-configurator.types';\nimport {\n buildWorkflowConfiguratorListQueryFilter,\n mapWorkflowInputsToWidgetProperties,\n matchesWorkflowConfiguratorCatalogScopeFilter,\n resolveWorkflowCatalogScopeKeys,\n type WorkflowConfiguratorCatalogScopeRow,\n} from './workflow-configurator.utils';\n\n//#endregion\n\n//#region ---- Types ----\n\ntype WorkflowDefinitionListRow = Pick<\n AXMWorkflowManagementWorkflowDefinitionEntityModel,\n 'id' | 'name' | 'title' | 'description' | 'inputs' | 'catalogScopeKeys' | 'catalogScopes'\n>;\n\n//#endregion\n\n//#region ---- Component ----\n\n/**\n * Select a workflow definition and configure template-time inputs via {@link AXPItemConfiguratorComponent}.\n */\n@Component({\n selector: 'axm-workflow-configurator',\n template: `\n <axp-item-configurator\n [(selectedItemId)]=\"selectedWorkflowIdModel\"\n [(values)]=\"defaultInputModel\"\n [label]=\"label()\"\n [readonly]=\"readonly()\"\n [items]=\"configuratorItems()\"\n />\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ax-flex ax-flex-col',\n '[attr.readonly]': 'readonly() ? \"\" : null',\n },\n styles: [\n `\n :host([readonly]) {\n pointer-events: none;\n opacity: 0.7;\n }\n `,\n ],\n imports: [AXPItemConfiguratorComponent],\n})\nexport class AXMWorkflowConfiguratorComponent {\n //#region ---- Inputs ----\n\n value = model<WorkflowConfiguratorValue>({\n workflowDefinitionId: '',\n workflowName: '',\n defaultInput: {},\n });\n\n label = input<string>('@workflow-management:workflow-configurator.label');\n\n readonly = input<boolean>(false);\n\n /**\n * When set, only these workflow input names are configurable; otherwise runtime inputs are excluded by default.\n */\n templateInputNames = input<string[] | undefined>(undefined);\n\n /**\n * Limits workflow definitions to rows whose {@link catalogScopeKeys} match (e.g. HR lifecycle).\n */\n catalogScopeFilter = input<WorkflowConfiguratorCatalogScopeFilter | undefined>(undefined);\n\n /**\n * Per template input lookup filters (e.g. `questionnaireId` → HR catalog scopes).\n */\n templateInputFilters = input<Record<string, WorkflowConfiguratorTemplateInputFilter> | undefined>(\n undefined,\n );\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly translation = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- Class Properties ----\n\n protected selectedWorkflowIdModel = model<string>('');\n\n protected defaultInputModel = model<Record<string, unknown>>({});\n\n protected workflows = signal<WorkflowDefinitionListRow[]>([]);\n\n protected configuratorItems = computed<ItemConfiguratorListItem[]>(() => {\n const names = this.templateInputNames();\n const inputFilters = this.templateInputFilters();\n return this.workflows().map((row) => ({\n id: row.id,\n title: (row.title ?? row.name) as ItemConfiguratorListItem['title'],\n icon: 'fa-light fa-diagram-project',\n description: row.description as ItemConfiguratorListItem['description'],\n propertyDefinitions: mapWorkflowInputsToWidgetProperties(\n row.inputs,\n this.translation,\n names,\n inputFilters,\n ),\n }));\n });\n\n //#endregion\n\n //#region ---- Lifecycle ----\n\n constructor() {\n effect(() => {\n this.catalogScopeFilter();\n untracked(() => {\n void this.loadWorkflowDefinitions();\n });\n });\n\n effect(() => {\n const v = this.value();\n const id = v?.workflowDefinitionId?.trim() ?? '';\n const defaults = v?.defaultInput ?? {};\n\n if (this.selectedWorkflowIdModel() !== id) {\n untracked(() => this.selectedWorkflowIdModel.set(id));\n }\n if (!isEqual(this.defaultInputModel(), defaults)) {\n untracked(() => this.defaultInputModel.set({ ...defaults }));\n }\n });\n\n effect(() => {\n const id = this.selectedWorkflowIdModel();\n const defaults = this.defaultInputModel();\n const row = this.workflows().find((w) => w.id === id);\n const current = untracked(() => this.value());\n\n const next: WorkflowConfiguratorValue = {\n workflowDefinitionId: id,\n workflowName:\n row?.name?.trim() ??\n (current.workflowDefinitionId === id ? (current.workflowName?.trim() ?? '') : ''),\n defaultInput: { ...defaults },\n };\n\n const normalizedCurrent: WorkflowConfiguratorValue = {\n workflowDefinitionId: current.workflowDefinitionId?.trim() ?? '',\n workflowName: current.workflowName?.trim() ?? '',\n defaultInput: current.defaultInput ?? {},\n };\n\n if (!isEqual(next, normalizedCurrent)) {\n untracked(() => this.value.set(next));\n }\n });\n }\n\n //#endregion\n\n //#region ---- Data loading ----\n\n private async loadWorkflowDefinitions(): Promise<void> {\n try {\n const scopeFilter = this.catalogScopeFilter();\n const page = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name)\n .data()\n .query({\n skip: 0,\n take: 500,\n filter: buildWorkflowConfiguratorListQueryFilter(scopeFilter),\n });\n\n const rows = (page.items ?? []) as WorkflowDefinitionListRow[];\n const pinnedId = this.value()?.workflowDefinitionId?.trim();\n\n const filtered = rows\n .filter((r) => !!r.id?.trim() && !!r.name?.trim())\n .filter((r) => {\n if (!scopeFilter) {\n return true;\n }\n if (pinnedId && r.id === pinnedId) {\n return true;\n }\n const keys = resolveWorkflowCatalogScopeKeys(r as WorkflowConfiguratorCatalogScopeRow);\n return matchesWorkflowConfiguratorCatalogScopeFilter(keys, scopeFilter);\n })\n .sort((a, b) => {\n const ta = this.translation.resolve(a.title).trim() || a.name;\n const tb = this.translation.resolve(b.title).trim() || b.name;\n return ta.localeCompare(tb, this.translation.getActiveLang(), { sensitivity: 'base' });\n });\n\n if (pinnedId && !filtered.some((r) => r.id === pinnedId)) {\n try {\n const pinned = (await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.workflowDefinition.name)\n .data()\n .byKey(pinnedId)) as WorkflowDefinitionListRow | null;\n if (pinned?.id) {\n filtered.unshift(pinned);\n }\n } catch {\n /* keep list as filtered */\n }\n }\n\n this.workflows.set(filtered);\n } catch {\n this.workflows.set([]);\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';\nimport { ChangeDetectionStrategy, Component, computed, effect, model, signal, untracked } from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport { AXMWorkflowConfiguratorComponent } from './workflow-configurator.component';\nimport type {\n WorkflowConfiguratorCatalogScopeFilter,\n WorkflowConfiguratorTemplateInputFilter,\n WorkflowConfiguratorValue,\n} from './workflow-configurator.types';\nimport { workflowConfiguratorCatalogScopeFilterFromKeys } from './workflow-configurator.utils';\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-workflow-configurator-widget-edit',\n template: `\n @if (isInitialized()) {\n <axm-workflow-configurator\n [(value)]=\"valueModel\"\n [label]=\"label()\"\n [readonly]=\"readonly()\"\n [templateInputNames]=\"templateInputNames()\"\n [catalogScopeFilter]=\"catalogScopeFilter()\"\n [templateInputFilters]=\"templateInputFilters()\"\n />\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXMWorkflowConfiguratorComponent],\n})\nexport class AXMWorkflowConfiguratorWidgetEditComponent extends AXPValueWidgetComponent<WorkflowConfiguratorValue> {\n //#region ---- Computed Properties ----\n\n protected readonly readonly = computed<boolean>(() => (this.options()['readonly'] as boolean) ?? false);\n\n protected label = computed<string>(\n () => (this.options()['label'] as string) || '@workflow-management:workflow-configurator.label',\n );\n\n protected templateInputNames = computed<string[] | undefined>(() => {\n const raw = this.options()['templateInputNames'];\n return Array.isArray(raw) ? (raw as string[]) : undefined;\n });\n\n protected catalogScopeFilter = computed<WorkflowConfiguratorCatalogScopeFilter | undefined>(() => {\n const fromKeys = workflowConfiguratorCatalogScopeFilterFromKeys(\n this.options()['catalogScopeKeys'] as string | string[] | undefined,\n );\n if (fromKeys) {\n return fromKeys;\n }\n\n const raw = this.options()['catalogScopeFilter'];\n return raw && typeof raw === 'object' ? (raw as WorkflowConfiguratorCatalogScopeFilter) : undefined;\n });\n\n protected templateInputFilters = computed<\n Record<string, WorkflowConfiguratorTemplateInputFilter> | undefined\n >(() => {\n const raw = this.options()['templateInputFilters'];\n return raw && typeof raw === 'object'\n ? (raw as Record<string, WorkflowConfiguratorTemplateInputFilter>)\n : undefined;\n });\n\n //#endregion\n\n //#region ---- State Signals ----\n\n protected isInitialized = signal(false);\n\n //#endregion\n\n //#region ---- Models ----\n\n protected valueModel = model<WorkflowConfiguratorValue>({\n workflowDefinitionId: '',\n workflowName: '',\n defaultInput: {},\n });\n\n //#endregion\n\n //#region ---- Effects ----\n\n private syncValueToConfigurator = effect(() => {\n const value = this.getValue();\n\n const normalized: WorkflowConfiguratorValue =\n value && typeof value === 'object' && 'workflowDefinitionId' in value\n ? {\n workflowDefinitionId: (value as WorkflowConfiguratorValue).workflowDefinitionId ?? '',\n workflowName: (value as WorkflowConfiguratorValue).workflowName ?? '',\n defaultInput: (value as WorkflowConfiguratorValue).defaultInput ?? {},\n }\n : { workflowDefinitionId: '', workflowName: '', defaultInput: {} };\n\n const currentModel = untracked(() => this.valueModel());\n\n if (!isEqual(normalized, currentModel)) {\n untracked(() => {\n this.valueModel.set(normalized);\n });\n }\n\n untracked(() => {\n if (!this.isInitialized()) {\n this.isInitialized.set(true);\n }\n });\n });\n\n private syncConfiguratorToValue = effect(() => {\n const modelValue = this.valueModel();\n\n if (!untracked(() => this.isInitialized())) {\n return;\n }\n\n const currentValue = untracked(() => this.getValue());\n const normalizedCurrent: WorkflowConfiguratorValue =\n currentValue && typeof currentValue === 'object' && 'workflowDefinitionId' in currentValue\n ? {\n workflowDefinitionId: (currentValue as WorkflowConfiguratorValue).workflowDefinitionId ?? '',\n workflowName: (currentValue as WorkflowConfiguratorValue).workflowName ?? '',\n defaultInput: (currentValue as WorkflowConfiguratorValue).defaultInput ?? {},\n }\n : { workflowDefinitionId: '', workflowName: '', defaultInput: {} };\n\n if (!isEqual(modelValue, normalizedCurrent)) {\n untracked(() => {\n this.setValue(modelValue ?? { workflowDefinitionId: '', workflowName: '', defaultInput: {} });\n });\n }\n });\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ async function factory() {
|
|
|
21
21
|
},
|
|
22
22
|
plugins: [
|
|
23
23
|
{ name: 'history' },
|
|
24
|
+
{ name: 'catalog-scope' },
|
|
24
25
|
{ name: 'lock' },
|
|
25
26
|
{ name: 'archive' },
|
|
26
27
|
{
|
|
@@ -309,4 +310,4 @@ async function factory() {
|
|
|
309
310
|
}
|
|
310
311
|
|
|
311
312
|
export { factory };
|
|
312
|
-
//# sourceMappingURL=acorex-modules-workflow-management-workflow-definition.entity-
|
|
313
|
+
//# sourceMappingURL=acorex-modules-workflow-management-workflow-definition.entity-BfACGpo4.mjs.map
|
package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-BfACGpo4.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-modules-workflow-management-workflow-definition.entity-BfACGpo4.mjs","sources":["../../../../libs/modules/workflow-management/src/lib/entities/workflow-definition/workflow-definition.entity.ts"],"sourcesContent":["import { statusPlugin } from '@acorex/modules/common';\nimport { AXPEntity, AXPEntityCommandScope, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY } from '../../features/workflow-definition-activities-page/WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY';\nimport { RootConfig } from '../../const';\n\nexport async function factory(): 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 ...statusPlugin,\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"],"names":[],"mappings":";;;;;;;AAOO,eAAe,OAAO,GAAA;AAC3B,IAAA,MAAM,SAAS,GAAc;AAC3B,QAAA,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC9B,QAAA,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI;AACjD,QAAA,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK;AACnD,QAAA,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI;AACjD,QAAA,OAAO,EAAE;AACP,YAAA,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK;AACxD,YAAA,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW;AAC1D,YAAA,YAAY,EAAE;AACZ,gBAAA,KAAK,EAAE,qBAAqB;AAC5B,gBAAA,WAAW,EAAE,mBAAmB;AACjC,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,SAAS,EAAE;YACnB,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,MAAM,EAAE;YAChB,EAAE,IAAI,EAAE,SAAS,EAAE;AACnB,YAAA;AACE,gBAAA,GAAG,YAAY;AACf,gBAAA,OAAO,EAAE;AACP,oBAAA,UAAU,EAAE,gDAAgD;AAC5D,oBAAA,KAAK,EAAE,UAAU;oBACjB,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AACvC,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,KAAK,EAAE;AACL,YAAA;AACE,gBAAA,YAAY,EAAE,iDAAiD;AAC/D,gBAAA,KAAK,EAAE,OAAO;AACd,gBAAA,KAAK,EAAE,+FAA+F;AACtG,gBAAA,IAAI,EAAE,qBAAqB;gBAC3B,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxC,aAAA;AACF,SAAA;AACD,QAAA,MAAM,EAAE;AACN,YAAA;AACE,gBAAA,EAAE,EAAE,WAAW;AACf,gBAAA,KAAK,EAAE,0FAA0F;AAClG,aAAA;AACF,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA;AACE,gBAAA,IAAI,EAAE,IAAI;AACV,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,MAAM;AAChB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AAC1B,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,KAAK,EAAE,0FAA0F;AACjG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC5B,wBAAA,OAAO,EAAE;AACP,4BAAA,WAAW,EACT,gGAAgG;AACnG,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AACvB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AAClE,iBAAA;AACD,gBAAA,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACxD,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,KAAK,EAAE,2FAA2F;AAClG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC5B,wBAAA,OAAO,EAAE;AACP,4BAAA,aAAa,EAAE,IAAI;AACnB,4BAAA,WAAW,EACT,iGAAiG;AACpG,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AACvB,oBAAA,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AAClE,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,KAAK,EAAE,iGAAiG;AACxG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,SAAS;AACjC,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE,CAAC;AACP,4BAAA,aAAa,EAAE,IAAI;AACnB,4BAAA,WAAW,EACT,uGAAuG;AAC1G,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,KAAK,EAAE,6FAA6F;AACpG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,MAAM;AAC/B,qBAAA;AACD,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,UAAU;AAChB,gBAAA,KAAK,EAAE,+FAA+F;AACtG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,SAAS;AACnB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,MAAM;AAC/B,qBAAA;AACD,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,KAAK,EAAE,gGAAgG;AACvG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,MAAM;AAChB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,SAAS,EAAE;wBACT,IAAI,EAAE,iBAAiB,CAAC,QAAQ;AACjC,qBAAA;AACD,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACD,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;oBACvB,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;AACvC,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,eAAe;AACrB,gBAAA,KAAK,EAAE,gBAAgB;AACvB,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,KAAK,EAAE,2FAA2F;AAClG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,KAAK,EAAE,+FAA+F;AACtG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,KAAK,EAAE,qGAAqG;AAC5G,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,KAAK,EAAE,6FAA6F;AACpG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,kBAAkB;AACxB,gBAAA,KAAK,EAAE,uGAAuG;AAC9G,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,KAAK,EAAE,gGAAgG;AACvG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,UAAU;AAChB,gBAAA,KAAK,EAAE,8FAA8F;AACrG,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,QAAQ,EAAE,IAAI;AACf,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA;AACE,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,KAAK,EAAE,2FAA2F;AAClG,gBAAA,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE;AACzC,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,KAAK,EAAE,0FAA0F;AACjG,gBAAA,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE;AACzC,aAAA;AACF,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,MAAM,EAAE;AACN,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;AAC/B,oBAAA,UAAU,EAAE;AACV,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAC/D,wBAAA,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAChE,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACxE,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;AAC/B,oBAAA,UAAU,EAAE;AACV,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAC/D,wBAAA,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAChE,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACxE,qBAAA;AACF,iBAAA;AACD,gBAAA,MAAM,EAAE;AACN,oBAAA,KAAK,EAAE,aAAa;AACpB,oBAAA,QAAQ,EAAE;wBACR,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9E,qBAAA;AACD,oBAAA,UAAU,EAAE;AACV,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAC/D,wBAAA,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AAChE,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACxE,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,GAAG,yBAAyB,EAAE,CAAC;AAC1C,iBAAA;AACD,gBAAA,IAAI,EAAE;AACJ,oBAAA,OAAO,EAAE;AACP,wBAAA,GAAG,uBAAuB,EAAE;AAC5B,wBAAA;AACE,4BAAA,KAAK,EAAE,iEAAiE;AACxE,4BAAA,IAAI,EAAE,kBAAkB;AACxB,4BAAA,OAAO,EAAE;AACP,gCAAA,IAAI,EAAE,wDAAwD;AAC9D,gCAAA,OAAO,EAAE;AACP,oCAAA,UAAU,EAAE,4BAA4B;AACzC,iCAAA;AACF,6BAAA;AACD,4BAAA,IAAI,EAAE,kBAAkB;AACxB,4BAAA,KAAK,EAAE,SAAS;AAChB,4BAAA,QAAQ,EAAE,SAAS;AACnB,4BAAA,IAAI,EAAE,SAAS;4BACf,KAAK,EAAE,qBAAqB,CAAC,UAAU;AACxC,yBAAA;AACF,qBAAA;oBACD,KAAK,EAAE,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAC7E,iBAAA;AACF,aAAA;AACF,SAAA;KACF;AAED,IAAA,OAAO,SAAS;AAClB;;;;"}
|