@acorex/modules 21.0.0-next.42 → 21.0.0-next.44

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 (376) hide show
  1. package/fesm2022/acorex-modules-ai-management-agent-registry-tool-configurator-widget-column.component-D0ruV6aJ.mjs.map +1 -1
  2. package/fesm2022/{acorex-modules-ai-management-agent-registry-tool-configurator-widget-edit.component-C7TQMwX4.mjs → acorex-modules-ai-management-agent-registry-tool-configurator-widget-edit.component-C-XsPEIg.mjs} +2 -2
  3. package/fesm2022/acorex-modules-ai-management-agent-registry-tool-configurator-widget-edit.component-C-XsPEIg.mjs.map +1 -0
  4. package/fesm2022/{acorex-modules-ai-management-agent.entity-DwPIKib2.mjs → acorex-modules-ai-management-agent.entity-D6-0_Ms3.mjs} +2 -2
  5. package/fesm2022/acorex-modules-ai-management-agent.entity-D6-0_Ms3.mjs.map +1 -0
  6. package/fesm2022/acorex-modules-ai-management-assist-delegated-agent-configurator-widget-column.component-DSC48iD0.mjs.map +1 -1
  7. package/fesm2022/{acorex-modules-ai-management-assist-delegated-agent-configurator-widget-edit.component-BozVAuLO.mjs → acorex-modules-ai-management-assist-delegated-agent-configurator-widget-edit.component-u1hZ4P5s.mjs} +2 -2
  8. package/fesm2022/acorex-modules-ai-management-assist-delegated-agent-configurator-widget-edit.component-u1hZ4P5s.mjs.map +1 -0
  9. package/fesm2022/{acorex-modules-ai-management-assist.entity-CuToMDS_.mjs → acorex-modules-ai-management-assist.entity-DfW-FFCt.mjs} +2 -2
  10. package/fesm2022/{acorex-modules-ai-management-assist.entity-CuToMDS_.mjs.map → acorex-modules-ai-management-assist.entity-DfW-FFCt.mjs.map} +1 -1
  11. package/fesm2022/{acorex-modules-ai-management-model.entity-vUNlioDw.mjs → acorex-modules-ai-management-model.entity-DiDaXVa3.mjs} +2 -2
  12. package/fesm2022/{acorex-modules-ai-management-model.entity-vUNlioDw.mjs.map → acorex-modules-ai-management-model.entity-DiDaXVa3.mjs.map} +1 -1
  13. package/fesm2022/{acorex-modules-ai-management-open-ai-endpoint.entity-BpxRR5ir.mjs → acorex-modules-ai-management-open-ai-endpoint.entity-CZLNKtl0.mjs} +2 -2
  14. package/fesm2022/{acorex-modules-ai-management-open-ai-endpoint.entity-BpxRR5ir.mjs.map → acorex-modules-ai-management-open-ai-endpoint.entity-CZLNKtl0.mjs.map} +1 -1
  15. package/fesm2022/acorex-modules-ai-management.mjs +4442 -1
  16. package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
  17. package/fesm2022/{acorex-modules-application-management-features-widget-view.component-DlfkfOay.mjs → acorex-modules-application-management-features-widget-view.component-uc8eGA-k.mjs} +2 -2
  18. package/fesm2022/{acorex-modules-application-management-features-widget-view.component-DlfkfOay.mjs.map → acorex-modules-application-management-features-widget-view.component-uc8eGA-k.mjs.map} +1 -1
  19. package/fesm2022/acorex-modules-application-management.mjs +22 -77
  20. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  21. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-CMS2WJDu.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-c8OrTwDw.mjs} +26 -26
  22. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-CMS2WJDu.mjs.map → acorex-modules-assessment-management-acorex-modules-assessment-management-c8OrTwDw.mjs.map} +1 -1
  23. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-C-Q4hu8o.mjs → acorex-modules-assessment-management-assessment-case.entity-DEsJE7x3.mjs} +2 -2
  24. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-C-Q4hu8o.mjs.map → acorex-modules-assessment-management-assessment-case.entity-DEsJE7x3.mjs.map} +1 -1
  25. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-CQI_FpUd.mjs → acorex-modules-assessment-management-assessment-session.entity-eNFfu-Jq.mjs} +2 -2
  26. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-CQI_FpUd.mjs.map → acorex-modules-assessment-management-assessment-session.entity-eNFfu-Jq.mjs.map} +1 -1
  27. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-Bpvco5iD.mjs → acorex-modules-assessment-management-fill-assessment-session.command-BeSUBkI9.mjs} +2 -2
  28. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-Bpvco5iD.mjs.map → acorex-modules-assessment-management-fill-assessment-session.command-BeSUBkI9.mjs.map} +1 -1
  29. package/fesm2022/{acorex-modules-assessment-management-index-_fPuBQeK.mjs → acorex-modules-assessment-management-index-3GB9Xkyv.mjs} +4 -4
  30. package/fesm2022/{acorex-modules-assessment-management-index-_fPuBQeK.mjs.map → acorex-modules-assessment-management-index-3GB9Xkyv.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-drR6nq76.mjs → acorex-modules-assessment-management-preview-question.command-QinKZtTz.mjs} +2 -2
  32. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-drR6nq76.mjs.map → acorex-modules-assessment-management-preview-question.command-QinKZtTz.mjs.map} +1 -1
  33. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-CY8tZWdG.mjs → acorex-modules-assessment-management-preview-questionnaire.command-CKZYSyOv.mjs} +2 -2
  34. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-CY8tZWdG.mjs.map → acorex-modules-assessment-management-preview-questionnaire.command-CKZYSyOv.mjs.map} +1 -1
  35. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-DV9irFZ0.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-qZXANgNr.mjs} +2 -2
  36. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-DV9irFZ0.mjs.map → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-qZXANgNr.mjs.map} +1 -1
  37. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-DO4bTKKo.mjs → acorex-modules-assessment-management-question-bank-item.entity-Dp4eYR3O.mjs} +2 -2
  38. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-DO4bTKKo.mjs.map → acorex-modules-assessment-management-question-bank-item.entity-Dp4eYR3O.mjs.map} +1 -1
  39. package/fesm2022/{acorex-modules-assessment-management-questionnaire-calculation.entity-B-N0v4zs.mjs → acorex-modules-assessment-management-questionnaire-calculation.entity-BMB9IEIv.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-assessment-management-questionnaire-calculation.entity-B-N0v4zs.mjs.map → acorex-modules-assessment-management-questionnaire-calculation.entity-BMB9IEIv.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-Cc-o6qmY.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-DgC1xuH9.mjs} +2 -2
  42. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-Cc-o6qmY.mjs.map → acorex-modules-assessment-management-questionnaire-viewer-popup.component-DgC1xuH9.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-CJWNlaJs.mjs → acorex-modules-assessment-management-questionnaire.entity-ChUNq9Bc.mjs} +3 -3
  44. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-CJWNlaJs.mjs.map → acorex-modules-assessment-management-questionnaire.entity-ChUNq9Bc.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-assessment-management-save-questionnaire-questions.command-C3gOkZa5.mjs → acorex-modules-assessment-management-save-questionnaire-questions.command-sji05ut4.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-assessment-management-save-questionnaire-questions.command-C3gOkZa5.mjs.map → acorex-modules-assessment-management-save-questionnaire-questions.command-sji05ut4.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-AvTbWvGE.mjs → acorex-modules-assessment-management-view-session-answers.command-BIpotfIE.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-AvTbWvGE.mjs.map → acorex-modules-assessment-management-view-session-answers.command-BIpotfIE.mjs.map} +1 -1
  49. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  50. package/fesm2022/{acorex-modules-asset-management-acorex-modules-asset-management-DrIhRaZ6.mjs → acorex-modules-asset-management-acorex-modules-asset-management-fQ0rp8vu.mjs} +765 -131
  51. package/fesm2022/acorex-modules-asset-management-acorex-modules-asset-management-fQ0rp8vu.mjs.map +1 -0
  52. package/fesm2022/acorex-modules-asset-management-asset-rental-history-status.provider-BiWf2TwD.mjs +118 -0
  53. package/fesm2022/acorex-modules-asset-management-asset-rental-history-status.provider-BiWf2TwD.mjs.map +1 -0
  54. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-HqZtfJpe.mjs → acorex-modules-asset-management-asset-system-assignment.entity-DuFgujR6.mjs} +2 -2
  55. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-HqZtfJpe.mjs.map → acorex-modules-asset-management-asset-system-assignment.entity-DuFgujR6.mjs.map} +1 -1
  56. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-fvrbyjXb.mjs → acorex-modules-asset-management-asset-system-type.entity-sszGMFny.mjs} +2 -2
  57. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-fvrbyjXb.mjs.map → acorex-modules-asset-management-asset-system-type.entity-sszGMFny.mjs.map} +1 -1
  58. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-DVAaXNWx.mjs → acorex-modules-asset-management-asset-system.entity-tWUPNYQq.mjs} +2 -2
  59. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-DVAaXNWx.mjs.map → acorex-modules-asset-management-asset-system.entity-tWUPNYQq.mjs.map} +1 -1
  60. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-n-bxBcGz.mjs → acorex-modules-asset-management-asset-type-section-component.entity-l3xXMo2l.mjs} +32 -31
  61. package/fesm2022/acorex-modules-asset-management-asset-type-section-component.entity-l3xXMo2l.mjs.map +1 -0
  62. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-BF7N699p.mjs → acorex-modules-asset-management-asset-type-section.entity-CldvQBUW.mjs} +2 -2
  63. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-BF7N699p.mjs.map → acorex-modules-asset-management-asset-type-section.entity-CldvQBUW.mjs.map} +1 -1
  64. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-Dt61Rs4F.mjs → acorex-modules-asset-management-asset-type.entity-CP0dryvp.mjs} +108 -28
  65. package/fesm2022/acorex-modules-asset-management-asset-type.entity-CP0dryvp.mjs.map +1 -0
  66. package/fesm2022/{acorex-modules-asset-management-asset.entity-BzlsaEwC.mjs → acorex-modules-asset-management-asset.entity-Du_fWe9V.mjs} +21 -230
  67. package/fesm2022/acorex-modules-asset-management-asset.entity-Du_fWe9V.mjs.map +1 -0
  68. package/fesm2022/acorex-modules-asset-management.mjs +1 -1
  69. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BUtk_RQC.mjs → acorex-modules-auth-acorex-modules-auth-CGiDe3e-.mjs} +13 -13
  70. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BUtk_RQC.mjs.map → acorex-modules-auth-acorex-modules-auth-CGiDe3e-.mjs.map} +1 -1
  71. package/fesm2022/{acorex-modules-auth-app-chooser.component-DnVYLE4q.mjs → acorex-modules-auth-app-chooser.component-Dt_2eXel.mjs} +2 -2
  72. package/fesm2022/{acorex-modules-auth-app-chooser.component-DnVYLE4q.mjs.map → acorex-modules-auth-app-chooser.component-Dt_2eXel.mjs.map} +1 -1
  73. package/fesm2022/{acorex-modules-auth-login.module-Be-fhX-L.mjs → acorex-modules-auth-login.module-Bl8pAhHc.mjs} +4 -4
  74. package/fesm2022/{acorex-modules-auth-login.module-Be-fhX-L.mjs.map → acorex-modules-auth-login.module-Bl8pAhHc.mjs.map} +1 -1
  75. package/fesm2022/{acorex-modules-auth-master.layout-6n06jHF4.mjs → acorex-modules-auth-master.layout-B8GSev0J.mjs} +2 -2
  76. package/fesm2022/{acorex-modules-auth-master.layout-6n06jHF4.mjs.map → acorex-modules-auth-master.layout-B8GSev0J.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-auth-oauth-callback.component-B_u8aKEs.mjs → acorex-modules-auth-oauth-callback.component-DleQ24IP.mjs} +3 -3
  78. package/fesm2022/{acorex-modules-auth-oauth-callback.component-B_u8aKEs.mjs.map → acorex-modules-auth-oauth-callback.component-DleQ24IP.mjs.map} +1 -1
  79. package/fesm2022/{acorex-modules-auth-password.component-Bz6qjJ_G.mjs → acorex-modules-auth-password.component-C1GbARlM.mjs} +2 -2
  80. package/fesm2022/{acorex-modules-auth-password.component-Bz6qjJ_G.mjs.map → acorex-modules-auth-password.component-C1GbARlM.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-auth-password.component-w9qdHuT5.mjs → acorex-modules-auth-password.component-D6ALMoO4.mjs} +2 -2
  82. package/fesm2022/{acorex-modules-auth-password.component-w9qdHuT5.mjs.map → acorex-modules-auth-password.component-D6ALMoO4.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-auth-routes-CUbjrK-J.mjs → acorex-modules-auth-routes-FDp1SEZA.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-auth-routes-CUbjrK-J.mjs.map → acorex-modules-auth-routes-FDp1SEZA.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-auth-settings.provider-DkhbuDBO.mjs → acorex-modules-auth-settings.provider-CN7Lb38l.mjs} +26 -31
  86. package/fesm2022/acorex-modules-auth-settings.provider-CN7Lb38l.mjs.map +1 -0
  87. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D_cV-RUp.mjs → acorex-modules-auth-tenant-chooser.component-o55sauLG.mjs} +2 -2
  88. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D_cV-RUp.mjs.map → acorex-modules-auth-tenant-chooser.component-o55sauLG.mjs.map} +1 -1
  89. package/fesm2022/{acorex-modules-auth-two-factor.module-ok-nT2VM.mjs → acorex-modules-auth-two-factor.module-CVrYPw5D.mjs} +2 -2
  90. package/fesm2022/{acorex-modules-auth-two-factor.module-ok-nT2VM.mjs.map → acorex-modules-auth-two-factor.module-CVrYPw5D.mjs.map} +1 -1
  91. package/fesm2022/{acorex-modules-auth-user-sessions.component-Cmrx3_vM.mjs → acorex-modules-auth-user-sessions.component-BVglZAnc.mjs} +2 -2
  92. package/fesm2022/{acorex-modules-auth-user-sessions.component-Cmrx3_vM.mjs.map → acorex-modules-auth-user-sessions.component-BVglZAnc.mjs.map} +1 -1
  93. package/fesm2022/acorex-modules-auth.mjs +1 -1
  94. package/fesm2022/{acorex-modules-common-search-popup.component-UIz5Bphx.mjs → acorex-modules-common-search-popup.component-BbRyjGia.mjs} +2 -2
  95. package/fesm2022/{acorex-modules-common-search-popup.component-UIz5Bphx.mjs.map → acorex-modules-common-search-popup.component-BbRyjGia.mjs.map} +1 -1
  96. package/fesm2022/acorex-modules-common.mjs +10 -35
  97. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  98. package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management-of3UnjxP.mjs → acorex-modules-content-management-acorex-modules-content-management-CO8lZb34.mjs} +40 -6
  99. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-CO8lZb34.mjs.map +1 -0
  100. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-DnjtPg6f.mjs → acorex-modules-content-management-permission-definition.provider-Bcq5uOVH.mjs} +2 -2
  101. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-DnjtPg6f.mjs.map → acorex-modules-content-management-permission-definition.provider-Bcq5uOVH.mjs.map} +1 -1
  102. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-BKHvQiql.mjs → acorex-modules-content-management-template-content-editor-widget-edit.component-D_q_xWeI.mjs} +59 -16
  103. package/fesm2022/acorex-modules-content-management-template-content-editor-widget-edit.component-D_q_xWeI.mjs.map +1 -0
  104. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-q1Se62Hd.mjs → acorex-modules-content-management-template-content-editor-widget-view.component-DU5y6UxK.mjs} +15 -5
  105. package/fesm2022/acorex-modules-content-management-template-content-editor-widget-view.component-DU5y6UxK.mjs.map +1 -0
  106. package/fesm2022/acorex-modules-content-management.mjs +1 -1
  107. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-BJU2_R9O.mjs +6155 -0
  108. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-BJU2_R9O.mjs.map +1 -0
  109. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DX2JPckF.mjs +324 -0
  110. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DX2JPckF.mjs.map +1 -0
  111. package/fesm2022/{acorex-modules-conversation-comments-page.component-DnAbpVxZ.mjs → acorex-modules-conversation-comments-page.component-Bg6m7UTG.mjs} +2 -2
  112. package/fesm2022/{acorex-modules-conversation-comments-page.component-DnAbpVxZ.mjs.map → acorex-modules-conversation-comments-page.component-Bg6m7UTG.mjs.map} +1 -1
  113. package/fesm2022/acorex-modules-conversation.mjs +1 -7353
  114. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  115. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-DLndkp6w.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-D11VudG8.mjs} +6 -7
  116. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-D11VudG8.mjs.map +1 -0
  117. package/fesm2022/{acorex-modules-dashboard-management-index-c8QzHHtG.mjs → acorex-modules-dashboard-management-index-DB3Uh1wL.mjs} +2 -2
  118. package/fesm2022/{acorex-modules-dashboard-management-index-c8QzHHtG.mjs.map → acorex-modules-dashboard-management-index-DB3Uh1wL.mjs.map} +1 -1
  119. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  120. package/fesm2022/acorex-modules-data-management.mjs +4 -4
  121. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  122. package/fesm2022/acorex-modules-document-management-large-tiles-view.component-BZWN7WCX.mjs +24 -0
  123. package/fesm2022/acorex-modules-document-management-large-tiles-view.component-BZWN7WCX.mjs.map +1 -0
  124. package/fesm2022/acorex-modules-document-management-small-tiles-view.component-DI6QQ2St.mjs +24 -0
  125. package/fesm2022/acorex-modules-document-management-small-tiles-view.component-DI6QQ2St.mjs.map +1 -0
  126. package/fesm2022/acorex-modules-document-management.mjs +209 -397
  127. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  128. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-GHXF4eT3.mjs → acorex-modules-form-template-management-template-picker.component-CtTkFhXf.mjs} +2 -2
  129. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-GHXF4eT3.mjs.map → acorex-modules-form-template-management-template-picker.component-CtTkFhXf.mjs.map} +1 -1
  130. package/fesm2022/acorex-modules-form-template-management.mjs +14 -18
  131. package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
  132. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-Bgsi3FHG.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-hImDhzkB.mjs} +90 -82
  133. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-hImDhzkB.mjs.map +1 -0
  134. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-CxpTmb-1.mjs → acorex-modules-human-capital-management-approve-leave-request.command-DujyJOvo.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-CxpTmb-1.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-DujyJOvo.mjs.map} +1 -1
  136. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-jLGe49dJ.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-BPB9vaCn.mjs} +2 -2
  137. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-jLGe49dJ.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-BPB9vaCn.mjs.map} +1 -1
  138. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-ChNGu90e.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-BdPUdhbU.mjs} +2 -2
  139. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-ChNGu90e.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-BdPUdhbU.mjs.map} +1 -1
  140. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-4k7F7_ON.mjs → acorex-modules-human-capital-management-employee.entity-CgmF-WPf.mjs} +4 -2
  141. package/fesm2022/acorex-modules-human-capital-management-employee.entity-CgmF-WPf.mjs.map +1 -0
  142. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-Jo2fB9R3.mjs → acorex-modules-human-capital-management-employment-type.entity-Chio_E9S.mjs} +2 -2
  143. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-Jo2fB9R3.mjs.map → acorex-modules-human-capital-management-employment-type.entity-Chio_E9S.mjs.map} +1 -1
  144. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-DhLUXnJu.mjs → acorex-modules-human-capital-management-leave-request.entity--9iGu0H7.mjs} +2 -2
  145. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-DhLUXnJu.mjs.map → acorex-modules-human-capital-management-leave-request.entity--9iGu0H7.mjs.map} +1 -1
  146. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-C-lN2bb0.mjs → acorex-modules-human-capital-management-leave-type.entity-O0j4P2oU.mjs} +2 -2
  147. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-C-lN2bb0.mjs.map → acorex-modules-human-capital-management-leave-type.entity-O0j4P2oU.mjs.map} +1 -1
  148. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-BD1jN4Mx.mjs → acorex-modules-human-capital-management-position-assignment.entity-Bg6omEy_.mjs} +2 -2
  149. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-BD1jN4Mx.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-Bg6omEy_.mjs.map} +1 -1
  150. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-D0G6UrqI.mjs → acorex-modules-human-capital-management-reject-leave-request.command-ZNGufyB1.mjs} +2 -2
  151. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-D0G6UrqI.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-ZNGufyB1.mjs.map} +1 -1
  152. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-CYzqQXja.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-C8pwJExa.mjs} +28 -17
  153. package/fesm2022/acorex-modules-human-capital-management-revoke-position-assignment.command-C8pwJExa.mjs.map +1 -0
  154. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  155. package/fesm2022/acorex-modules-locale-management.mjs +72 -70
  156. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  157. package/fesm2022/acorex-modules-location-management.mjs +20 -10
  158. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  159. package/fesm2022/{acorex-modules-maintenance-management-acorex-modules-maintenance-management-B5wf4zMI.mjs → acorex-modules-maintenance-management-acorex-modules-maintenance-management-C0LLBxMR.mjs} +40 -38
  160. package/fesm2022/acorex-modules-maintenance-management-acorex-modules-maintenance-management-C0LLBxMR.mjs.map +1 -0
  161. package/fesm2022/{acorex-modules-maintenance-management-failure-effect.entity-Cv5KnboB.mjs → acorex-modules-maintenance-management-failure-effect.entity-D8yOqKWQ.mjs} +2 -2
  162. package/fesm2022/{acorex-modules-maintenance-management-failure-effect.entity-Cv5KnboB.mjs.map → acorex-modules-maintenance-management-failure-effect.entity-D8yOqKWQ.mjs.map} +1 -1
  163. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-asset-type.entity-BBL3-hfv.mjs → acorex-modules-maintenance-management-failure-mode-asset-type.entity-CHXkbEHG.mjs} +2 -2
  164. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-asset-type.entity-BBL3-hfv.mjs.map → acorex-modules-maintenance-management-failure-mode-asset-type.entity-CHXkbEHG.mjs.map} +1 -1
  165. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-mechanism.entity-nxOdHZxu.mjs → acorex-modules-maintenance-management-failure-mode-mechanism.entity-yR11e9TU.mjs} +2 -2
  166. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-mechanism.entity-nxOdHZxu.mjs.map → acorex-modules-maintenance-management-failure-mode-mechanism.entity-yR11e9TU.mjs.map} +1 -1
  167. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-solution.entity-ApD80Scc.mjs → acorex-modules-maintenance-management-failure-mode-solution.entity-BD4Uz6G-.mjs} +2 -2
  168. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-solution.entity-ApD80Scc.mjs.map → acorex-modules-maintenance-management-failure-mode-solution.entity-BD4Uz6G-.mjs.map} +1 -1
  169. package/fesm2022/{acorex-modules-maintenance-management-failure-register-cause.entity-CibfwJLG.mjs → acorex-modules-maintenance-management-failure-register-cause.entity-CZFgl-t4.mjs} +2 -2
  170. package/fesm2022/{acorex-modules-maintenance-management-failure-register-cause.entity-CibfwJLG.mjs.map → acorex-modules-maintenance-management-failure-register-cause.entity-CZFgl-t4.mjs.map} +1 -1
  171. package/fesm2022/{acorex-modules-maintenance-management-failure-register-effect.entity-DpoqULBf.mjs → acorex-modules-maintenance-management-failure-register-effect.entity-DQE5nqiN.mjs} +2 -2
  172. package/fesm2022/{acorex-modules-maintenance-management-failure-register-effect.entity-DpoqULBf.mjs.map → acorex-modules-maintenance-management-failure-register-effect.entity-DQE5nqiN.mjs.map} +1 -1
  173. package/fesm2022/{acorex-modules-maintenance-management-failure-register-mechanism.entity-0-J2Hkmn.mjs → acorex-modules-maintenance-management-failure-register-mechanism.entity-C6mhbWzU.mjs} +2 -2
  174. package/fesm2022/{acorex-modules-maintenance-management-failure-register-mechanism.entity-0-J2Hkmn.mjs.map → acorex-modules-maintenance-management-failure-register-mechanism.entity-C6mhbWzU.mjs.map} +1 -1
  175. package/fesm2022/{acorex-modules-maintenance-management-failure-register.entity-C4Az4Rr9.mjs → acorex-modules-maintenance-management-failure-register.entity-DSnrVaWI.mjs} +2 -2
  176. package/fesm2022/{acorex-modules-maintenance-management-failure-register.entity-C4Az4Rr9.mjs.map → acorex-modules-maintenance-management-failure-register.entity-DSnrVaWI.mjs.map} +1 -1
  177. package/fesm2022/{acorex-modules-maintenance-management-failure-severity.entity-BZo6UUun.mjs → acorex-modules-maintenance-management-failure-severity.entity-DZoMhgW7.mjs} +2 -2
  178. package/fesm2022/{acorex-modules-maintenance-management-failure-severity.entity-BZo6UUun.mjs.map → acorex-modules-maintenance-management-failure-severity.entity-DZoMhgW7.mjs.map} +1 -1
  179. package/fesm2022/{acorex-modules-maintenance-management-maintenance-template.entity-DxYY0hpG.mjs → acorex-modules-maintenance-management-maintenance-template.entity-qf2WNKB_.mjs} +2 -2
  180. package/fesm2022/{acorex-modules-maintenance-management-maintenance-template.entity-DxYY0hpG.mjs.map → acorex-modules-maintenance-management-maintenance-template.entity-qf2WNKB_.mjs.map} +1 -1
  181. package/fesm2022/acorex-modules-maintenance-management.mjs +1 -1
  182. package/fesm2022/{acorex-modules-notification-management-notification-page.component-D0we6H1f.mjs → acorex-modules-notification-management-notification-page.component-B017YY1H.mjs} +2 -2
  183. package/fesm2022/{acorex-modules-notification-management-notification-page.component-D0we6H1f.mjs.map → acorex-modules-notification-management-notification-page.component-B017YY1H.mjs.map} +1 -1
  184. package/fesm2022/acorex-modules-notification-management.mjs +369 -45
  185. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  186. package/fesm2022/{acorex-modules-order-management-settings.provider-BzNJIZCu.mjs → acorex-modules-order-management-settings.provider-DF8JQ1PZ.mjs} +6 -11
  187. package/fesm2022/acorex-modules-order-management-settings.provider-DF8JQ1PZ.mjs.map +1 -0
  188. package/fesm2022/acorex-modules-order-management.mjs +2 -2
  189. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-Bu8fRj_5.mjs → acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs} +256 -303
  190. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs.map +1 -0
  191. package/fesm2022/acorex-modules-organization-management-add-business-unit-to-business-unit.command-BEJyfR3P.mjs +165 -0
  192. package/fesm2022/acorex-modules-organization-management-add-business-unit-to-business-unit.command-BEJyfR3P.mjs.map +1 -0
  193. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-Qej_boIY.mjs → acorex-modules-organization-management-add-position-to-business-unit.command-DKgxg9q5.mjs} +32 -2
  194. package/fesm2022/acorex-modules-organization-management-add-position-to-business-unit.command-DKgxg9q5.mjs.map +1 -0
  195. package/fesm2022/acorex-modules-organization-management-add-team-to-business-unit.command-DJJT7BXT.mjs +130 -0
  196. package/fesm2022/acorex-modules-organization-management-add-team-to-business-unit.command-DJJT7BXT.mjs.map +1 -0
  197. package/fesm2022/{acorex-modules-organization-management-business-unit.entity-BfQ_7JAq.mjs → acorex-modules-organization-management-business-unit.entity-BAp38sib.mjs} +38 -5
  198. package/fesm2022/acorex-modules-organization-management-business-unit.entity-BAp38sib.mjs.map +1 -0
  199. package/fesm2022/{acorex-modules-organization-management-chart.entity-CNQGGfHV.mjs → acorex-modules-organization-management-chart.entity-WfmpWj8R.mjs} +2 -2
  200. package/fesm2022/{acorex-modules-organization-management-chart.entity-CNQGGfHV.mjs.map → acorex-modules-organization-management-chart.entity-WfmpWj8R.mjs.map} +1 -1
  201. package/fesm2022/{acorex-modules-organization-management-company.entity-D_nTKLzu.mjs → acorex-modules-organization-management-company.entity-BUVLrwjq.mjs} +2 -2
  202. package/fesm2022/{acorex-modules-organization-management-company.entity-D_nTKLzu.mjs.map → acorex-modules-organization-management-company.entity-BUVLrwjq.mjs.map} +1 -1
  203. package/fesm2022/{acorex-modules-organization-management-entity.provider-B4uYixLQ.mjs → acorex-modules-organization-management-entity.provider-DH3eUGTu.mjs} +15 -15
  204. package/fesm2022/{acorex-modules-organization-management-entity.provider-B4uYixLQ.mjs.map → acorex-modules-organization-management-entity.provider-DH3eUGTu.mjs.map} +1 -1
  205. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-COjc6knz.mjs → acorex-modules-organization-management-feature-definition.provider-DuScrBze.mjs} +2 -2
  206. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-COjc6knz.mjs.map → acorex-modules-organization-management-feature-definition.provider-DuScrBze.mjs.map} +1 -1
  207. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-gDpII9TZ.mjs → acorex-modules-organization-management-job-definition-pages-component.provider-D-J9JCsU.mjs} +3 -3
  208. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-gDpII9TZ.mjs.map → acorex-modules-organization-management-job-definition-pages-component.provider-D-J9JCsU.mjs.map} +1 -1
  209. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-CjXV4wrM.mjs → acorex-modules-organization-management-job-definition-responsibilities-page.component-Dsy5rFGw.mjs} +3 -3
  210. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-CjXV4wrM.mjs.map → acorex-modules-organization-management-job-definition-responsibilities-page.component-Dsy5rFGw.mjs.map} +1 -1
  211. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-2XBgMms-.mjs → acorex-modules-organization-management-job-definition-skills-page.component-B73wLPby.mjs} +2 -2
  212. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-2XBgMms-.mjs.map → acorex-modules-organization-management-job-definition-skills-page.component-B73wLPby.mjs.map} +1 -1
  213. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-f0JnkdjP.mjs → acorex-modules-organization-management-job-definition.entity-B7mWKYqb.mjs} +2 -2
  214. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-f0JnkdjP.mjs.map → acorex-modules-organization-management-job-definition.entity-B7mWKYqb.mjs.map} +1 -1
  215. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-ByHluGvc.mjs → acorex-modules-organization-management-job-level.datasource-DibRoKXR.mjs} +2 -2
  216. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-ByHluGvc.mjs.map → acorex-modules-organization-management-job-level.datasource-DibRoKXR.mjs.map} +1 -1
  217. package/fesm2022/{acorex-modules-organization-management-job-level.entity-BJJJQxCp.mjs → acorex-modules-organization-management-job-level.entity-C_MzeTw5.mjs} +2 -2
  218. package/fesm2022/{acorex-modules-organization-management-job-level.entity-BJJJQxCp.mjs.map → acorex-modules-organization-management-job-level.entity-C_MzeTw5.mjs.map} +1 -1
  219. package/fesm2022/{acorex-modules-organization-management-menu.provider-Dd_Z58sY.mjs → acorex-modules-organization-management-menu.provider-CQeJINzl.mjs} +3 -2
  220. package/fesm2022/{acorex-modules-organization-management-menu.provider-Dd_Z58sY.mjs.map → acorex-modules-organization-management-menu.provider-CQeJINzl.mjs.map} +1 -1
  221. package/fesm2022/acorex-modules-organization-management-org-chart-default-node-contribution.provider-D3hCHSr_.mjs +228 -0
  222. package/fesm2022/acorex-modules-organization-management-org-chart-default-node-contribution.provider-D3hCHSr_.mjs.map +1 -0
  223. package/fesm2022/acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-Bv0I-45L.mjs +182 -0
  224. package/fesm2022/acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-Bv0I-45L.mjs.map +1 -0
  225. package/fesm2022/acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DbfYza8q.mjs +170 -0
  226. package/fesm2022/acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DbfYza8q.mjs.map +1 -0
  227. package/fesm2022/acorex-modules-organization-management-org-chart-ux-node-contribution.provider-C9APxguL.mjs +334 -0
  228. package/fesm2022/acorex-modules-organization-management-org-chart-ux-node-contribution.provider-C9APxguL.mjs.map +1 -0
  229. package/fesm2022/{acorex-modules-organization-management-org-chart.page-fudrNddI.mjs → acorex-modules-organization-management-org-chart.page-BcHO5kKP.mjs} +135 -63
  230. package/fesm2022/acorex-modules-organization-management-org-chart.page-BcHO5kKP.mjs.map +1 -0
  231. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-CoB_RGSa.mjs → acorex-modules-organization-management-permission-definition.provider-BcIRJpBt.mjs} +3 -2
  232. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-CoB_RGSa.mjs.map → acorex-modules-organization-management-permission-definition.provider-BcIRJpBt.mjs.map} +1 -1
  233. package/fesm2022/acorex-modules-organization-management-permission.keys-DwZNBc12.mjs +56 -0
  234. package/fesm2022/acorex-modules-organization-management-permission.keys-DwZNBc12.mjs.map +1 -0
  235. package/fesm2022/{acorex-modules-organization-management-position.entity-T1DY1fZn.mjs → acorex-modules-organization-management-position.entity-DBOpLtSI.mjs} +6 -2
  236. package/fesm2022/acorex-modules-organization-management-position.entity-DBOpLtSI.mjs.map +1 -0
  237. package/fesm2022/acorex-modules-organization-management-remove-position-from-business-unit.command-TqYgfnsy.mjs +92 -0
  238. package/fesm2022/acorex-modules-organization-management-remove-position-from-business-unit.command-TqYgfnsy.mjs.map +1 -0
  239. package/fesm2022/acorex-modules-organization-management-replace-position-assignee.command-BJ2gn0-A.mjs +66 -0
  240. package/fesm2022/acorex-modules-organization-management-replace-position-assignee.command-BJ2gn0-A.mjs.map +1 -0
  241. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CIPzMi3d.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CZdMLIL-.mjs} +2 -2
  242. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CIPzMi3d.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-CZdMLIL-.mjs.map} +1 -1
  243. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-DzdTNVP6.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BBo97rDN.mjs} +2 -2
  244. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-DzdTNVP6.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BBo97rDN.mjs.map} +1 -1
  245. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-C850Dz47.mjs → acorex-modules-organization-management-responsibilities-matrix.component-D9oH_Fbb.mjs} +2 -2
  246. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-C850Dz47.mjs.map → acorex-modules-organization-management-responsibilities-matrix.component-D9oH_Fbb.mjs.map} +1 -1
  247. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-CVxWva5x.mjs → acorex-modules-organization-management-responsibility-level.entity-D6IG9Zc7.mjs} +2 -2
  248. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-CVxWva5x.mjs.map → acorex-modules-organization-management-responsibility-level.entity-D6IG9Zc7.mjs.map} +1 -1
  249. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-BmDZhqNl.mjs → acorex-modules-organization-management-responsibility.entity-BosNxYjW.mjs} +2 -2
  250. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-BmDZhqNl.mjs.map → acorex-modules-organization-management-responsibility.entity-BosNxYjW.mjs.map} +1 -1
  251. package/fesm2022/{acorex-modules-organization-management-settings.provider-wwGKyBrV.mjs → acorex-modules-organization-management-settings.provider-CL9C9UXA.mjs} +21 -24
  252. package/fesm2022/acorex-modules-organization-management-settings.provider-CL9C9UXA.mjs.map +1 -0
  253. package/fesm2022/{acorex-modules-organization-management-team-business-unit.entity-BmXLb4RI.mjs → acorex-modules-organization-management-team-business-unit.entity-CYFGTcHe.mjs} +2 -2
  254. package/fesm2022/{acorex-modules-organization-management-team-business-unit.entity-BmXLb4RI.mjs.map → acorex-modules-organization-management-team-business-unit.entity-CYFGTcHe.mjs.map} +1 -1
  255. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-C4DGSm2r.mjs → acorex-modules-organization-management-team-member-role.entity-B5vNDne0.mjs} +2 -2
  256. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-C4DGSm2r.mjs.map → acorex-modules-organization-management-team-member-role.entity-B5vNDne0.mjs.map} +1 -1
  257. package/fesm2022/{acorex-modules-organization-management-team-member.entity-CvVHEzIU.mjs → acorex-modules-organization-management-team-member.entity-DsKuxCRB.mjs} +14 -2
  258. package/fesm2022/acorex-modules-organization-management-team-member.entity-DsKuxCRB.mjs.map +1 -0
  259. package/fesm2022/{acorex-modules-organization-management-team.entity-urjULfNp.mjs → acorex-modules-organization-management-team.entity-Cg30cho_.mjs} +3 -2
  260. package/fesm2022/acorex-modules-organization-management-team.entity-Cg30cho_.mjs.map +1 -0
  261. package/fesm2022/acorex-modules-organization-management.mjs +1 -1
  262. package/fesm2022/acorex-modules-person-core-gender.entity-DQVC2nR1.mjs +121 -0
  263. package/fesm2022/acorex-modules-person-core-gender.entity-DQVC2nR1.mjs.map +1 -0
  264. package/fesm2022/acorex-modules-person-core-marital-status.entity-Bcrni-xU.mjs +121 -0
  265. package/fesm2022/acorex-modules-person-core-marital-status.entity-Bcrni-xU.mjs.map +1 -0
  266. package/fesm2022/acorex-modules-person-core-person-title.entity-h53llLF9.mjs +121 -0
  267. package/fesm2022/acorex-modules-person-core-person-title.entity-h53llLF9.mjs.map +1 -0
  268. package/fesm2022/acorex-modules-person-core.mjs +151 -295
  269. package/fesm2022/acorex-modules-person-core.mjs.map +1 -1
  270. package/fesm2022/{acorex-modules-platform-dev-tools-settings.provider-CGyf-4eq.mjs → acorex-modules-platform-dev-tools-settings.provider-DKmgBUYt.mjs} +2 -2
  271. package/fesm2022/acorex-modules-platform-dev-tools-settings.provider-DKmgBUYt.mjs.map +1 -0
  272. package/fesm2022/acorex-modules-platform-dev-tools.mjs +2 -2
  273. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-CZMqG3Eq.mjs → acorex-modules-platform-management-acorex-modules-platform-management-DkOzj2Oy.mjs} +12 -4
  274. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-DkOzj2Oy.mjs.map +1 -0
  275. package/fesm2022/acorex-modules-platform-management-entity-master-actions-for-ai.util-OCk5eqQz.mjs +56 -0
  276. package/fesm2022/acorex-modules-platform-management-entity-master-actions-for-ai.util-OCk5eqQz.mjs.map +1 -0
  277. package/fesm2022/acorex-modules-platform-management-list-platform-navigation-for-ai.query-C3-eBMwF.mjs +198 -0
  278. package/fesm2022/acorex-modules-platform-management-list-platform-navigation-for-ai.query-C3-eBMwF.mjs.map +1 -0
  279. package/fesm2022/{acorex-modules-platform-management-list-registered-entities.query-B6-zV_Ml.mjs → acorex-modules-platform-management-list-registered-entities.query-BZVD9YPU.mjs} +26 -4
  280. package/fesm2022/acorex-modules-platform-management-list-registered-entities.query-BZVD9YPU.mjs.map +1 -0
  281. package/fesm2022/{acorex-modules-platform-management-menu-list.component-BRA7Q50z.mjs → acorex-modules-platform-management-menu-list.component-agWZWchQ.mjs} +3 -3
  282. package/fesm2022/{acorex-modules-platform-management-menu-list.component-BRA7Q50z.mjs.map → acorex-modules-platform-management-menu-list.component-agWZWchQ.mjs.map} +1 -1
  283. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  284. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-BjKrHoBg.mjs → acorex-modules-report-management-report-runner-root-page.component-B-NoGoOJ.mjs} +2 -2
  285. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-BjKrHoBg.mjs.map → acorex-modules-report-management-report-runner-root-page.component-B-NoGoOJ.mjs.map} +1 -1
  286. package/fesm2022/acorex-modules-report-management.mjs +7 -7
  287. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  288. package/fesm2022/acorex-modules-security-management.mjs +1 -1
  289. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  290. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-BaDnebTm.mjs → acorex-modules-settings-management-acorex-modules-settings-management-oArHHeSx.mjs} +88 -13
  291. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-oArHHeSx.mjs.map +1 -0
  292. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-cuuhKUJ1.mjs → acorex-modules-settings-management-permission-definition.provider-BsFyZ-gS.mjs} +2 -2
  293. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-cuuhKUJ1.mjs.map → acorex-modules-settings-management-permission-definition.provider-BsFyZ-gS.mjs.map} +1 -1
  294. package/fesm2022/{acorex-modules-settings-management-setting-page.component-CWIs93_1.mjs → acorex-modules-settings-management-setting-page.component-BftWms4f.mjs} +5 -4
  295. package/fesm2022/acorex-modules-settings-management-setting-page.component-BftWms4f.mjs.map +1 -0
  296. package/fesm2022/{acorex-modules-settings-management-setting-view.component-BTexlmU1.mjs → acorex-modules-settings-management-setting-view.component-paKdiSEr.mjs} +2 -2
  297. package/fesm2022/{acorex-modules-settings-management-setting-view.component-BTexlmU1.mjs.map → acorex-modules-settings-management-setting-view.component-paKdiSEr.mjs.map} +1 -1
  298. package/fesm2022/acorex-modules-settings-management.mjs +1 -1
  299. package/fesm2022/{acorex-modules-task-management-acorex-modules-task-management-it-Lf0L_.mjs → acorex-modules-task-management-acorex-modules-task-management-DDUq9FpA.mjs} +202 -41
  300. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-DDUq9FpA.mjs.map +1 -0
  301. package/fesm2022/{acorex-modules-task-management-task-board.page-DF4XWz_0.mjs → acorex-modules-task-management-task-board.page-C6j-_aSD.mjs} +107 -69
  302. package/fesm2022/acorex-modules-task-management-task-board.page-C6j-_aSD.mjs.map +1 -0
  303. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  304. package/fesm2022/acorex-modules-tenant-management.mjs +3 -7
  305. package/fesm2022/acorex-modules-tenant-management.mjs.map +1 -1
  306. package/organization-management/README.md +1 -1
  307. package/package.json +2 -2
  308. package/platform-management/README.md +4 -0
  309. package/types/acorex-modules-ai-management.d.ts +158 -577
  310. package/types/acorex-modules-application-management.d.ts +5 -2
  311. package/types/acorex-modules-asset-management.d.ts +19 -87
  312. package/types/acorex-modules-common.d.ts +3 -6
  313. package/types/acorex-modules-content-management.d.ts +22 -5
  314. package/types/acorex-modules-conversation.d.ts +60 -4
  315. package/types/acorex-modules-document-management.d.ts +53 -22
  316. package/types/acorex-modules-human-capital-management.d.ts +15 -10
  317. package/types/acorex-modules-location-management.d.ts +9 -1
  318. package/types/acorex-modules-maintenance-management.d.ts +0 -2
  319. package/types/acorex-modules-notification-management.d.ts +68 -6
  320. package/types/acorex-modules-organization-management.d.ts +145 -44
  321. package/types/acorex-modules-person-core.d.ts +61 -4
  322. package/types/acorex-modules-settings-management.d.ts +3 -0
  323. package/types/acorex-modules-task-management.d.ts +12 -2
  324. package/types/acorex-modules-tenant-management.d.ts +0 -1
  325. package/fesm2022/acorex-modules-ai-management-acorex-modules-ai-management-D7_4LOGV.mjs +0 -8666
  326. package/fesm2022/acorex-modules-ai-management-acorex-modules-ai-management-D7_4LOGV.mjs.map +0 -1
  327. package/fesm2022/acorex-modules-ai-management-agent-registry-tool-configurator-widget-edit.component-C7TQMwX4.mjs.map +0 -1
  328. package/fesm2022/acorex-modules-ai-management-agent.entity-DwPIKib2.mjs.map +0 -1
  329. package/fesm2022/acorex-modules-ai-management-ai-delegated-agent-transcript-popup.component-D2GJ5qD1.mjs +0 -1254
  330. package/fesm2022/acorex-modules-ai-management-ai-delegated-agent-transcript-popup.component-D2GJ5qD1.mjs.map +0 -1
  331. package/fesm2022/acorex-modules-ai-management-assist-delegated-agent-configurator-widget-edit.component-BozVAuLO.mjs.map +0 -1
  332. package/fesm2022/acorex-modules-ai-management-index-DaGJVOFw.mjs +0 -2
  333. package/fesm2022/acorex-modules-ai-management-index-DaGJVOFw.mjs.map +0 -1
  334. package/fesm2022/acorex-modules-asset-management-acorex-modules-asset-management-DrIhRaZ6.mjs.map +0 -1
  335. package/fesm2022/acorex-modules-asset-management-asset-rental-history.entity-95NBXoex.mjs +0 -302
  336. package/fesm2022/acorex-modules-asset-management-asset-rental-history.entity-95NBXoex.mjs.map +0 -1
  337. package/fesm2022/acorex-modules-asset-management-asset-state-history.entity-C-z103la.mjs +0 -258
  338. package/fesm2022/acorex-modules-asset-management-asset-state-history.entity-C-z103la.mjs.map +0 -1
  339. package/fesm2022/acorex-modules-asset-management-asset-status.rules-B7KwWQEe.mjs +0 -98
  340. package/fesm2022/acorex-modules-asset-management-asset-status.rules-B7KwWQEe.mjs.map +0 -1
  341. package/fesm2022/acorex-modules-asset-management-asset-type-section-component.entity-n-bxBcGz.mjs.map +0 -1
  342. package/fesm2022/acorex-modules-asset-management-asset-type.entity-Dt61Rs4F.mjs.map +0 -1
  343. package/fesm2022/acorex-modules-asset-management-asset.entity-BzlsaEwC.mjs.map +0 -1
  344. package/fesm2022/acorex-modules-asset-management-assetLifecycle-state.provider-DZ5r2zx7.mjs +0 -192
  345. package/fesm2022/acorex-modules-asset-management-assetLifecycle-state.provider-DZ5r2zx7.mjs.map +0 -1
  346. package/fesm2022/acorex-modules-asset-management-status.provider-C41t4e2U.mjs +0 -363
  347. package/fesm2022/acorex-modules-asset-management-status.provider-C41t4e2U.mjs.map +0 -1
  348. package/fesm2022/acorex-modules-auth-settings.provider-DkhbuDBO.mjs.map +0 -1
  349. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-of3UnjxP.mjs.map +0 -1
  350. package/fesm2022/acorex-modules-content-management-template-content-editor-widget-edit.component-BKHvQiql.mjs.map +0 -1
  351. package/fesm2022/acorex-modules-content-management-template-content-editor-widget-view.component-q1Se62Hd.mjs.map +0 -1
  352. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-DLndkp6w.mjs.map +0 -1
  353. package/fesm2022/acorex-modules-document-management-large-tiles-view.component-CSHUgcLx.mjs +0 -24
  354. package/fesm2022/acorex-modules-document-management-large-tiles-view.component-CSHUgcLx.mjs.map +0 -1
  355. package/fesm2022/acorex-modules-document-management-small-tiles-view.component-BQSgUw6o.mjs +0 -24
  356. package/fesm2022/acorex-modules-document-management-small-tiles-view.component-BQSgUw6o.mjs.map +0 -1
  357. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-Bgsi3FHG.mjs.map +0 -1
  358. package/fesm2022/acorex-modules-human-capital-management-employee.entity-4k7F7_ON.mjs.map +0 -1
  359. package/fesm2022/acorex-modules-human-capital-management-revoke-position-assignment.command-CYzqQXja.mjs.map +0 -1
  360. package/fesm2022/acorex-modules-maintenance-management-acorex-modules-maintenance-management-B5wf4zMI.mjs.map +0 -1
  361. package/fesm2022/acorex-modules-order-management-settings.provider-BzNJIZCu.mjs.map +0 -1
  362. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-Bu8fRj_5.mjs.map +0 -1
  363. package/fesm2022/acorex-modules-organization-management-add-position-to-business-unit.command-Qej_boIY.mjs.map +0 -1
  364. package/fesm2022/acorex-modules-organization-management-business-unit.entity-BfQ_7JAq.mjs.map +0 -1
  365. package/fesm2022/acorex-modules-organization-management-org-chart.page-fudrNddI.mjs.map +0 -1
  366. package/fesm2022/acorex-modules-organization-management-position.entity-T1DY1fZn.mjs.map +0 -1
  367. package/fesm2022/acorex-modules-organization-management-settings.provider-wwGKyBrV.mjs.map +0 -1
  368. package/fesm2022/acorex-modules-organization-management-team-member.entity-CvVHEzIU.mjs.map +0 -1
  369. package/fesm2022/acorex-modules-organization-management-team.entity-urjULfNp.mjs.map +0 -1
  370. package/fesm2022/acorex-modules-platform-dev-tools-settings.provider-CGyf-4eq.mjs.map +0 -1
  371. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-CZMqG3Eq.mjs.map +0 -1
  372. package/fesm2022/acorex-modules-platform-management-list-registered-entities.query-B6-zV_Ml.mjs.map +0 -1
  373. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-BaDnebTm.mjs.map +0 -1
  374. package/fesm2022/acorex-modules-settings-management-setting-page.component-CWIs93_1.mjs.map +0 -1
  375. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-it-Lf0L_.mjs.map +0 -1
  376. package/fesm2022/acorex-modules-task-management-task-board.page-DF4XWz_0.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs","sources":["../../../../libs/modules/organization-management/src/lib/const.ts","../../../../libs/modules/organization-management/src/lib/entities/chart/chart.types.ts","../../../../libs/modules/organization-management/src/lib/entities/business-unit-type/business-unit-type.entity.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/model/org-chart.type.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/utils/org-chart-resolve-flyout-employee-id.util.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/constants/org-chart-employee-submenu.const.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/constants/org-chart-layout-submenu.const.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/constants/org-chart-communication-submenu.const.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/tokens/org-chart-node-contribution.token.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/model/org-chart-structure-refresh.hub.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/tokens/org-chart-host.token.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/views/detail-panel/org-chart-detail-panel.component.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/views/detail-panel/org-chart-detail-panel.component.html","../../../../libs/modules/organization-management/src/lib/settings.keys.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/ui/org-chart-user-ui.helper.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/ui/org-chart-ui.resolver.ts","../../../../libs/modules/organization-management/src/lib/manifest.ts","../../../../libs/modules/organization-management/src/lib/features/responsibilities-matrix/responsibilities-matrix-widget.config.ts","../../../../libs/modules/organization-management/src/lib/widget-definition.provider.ts","../../../../libs/modules/organization-management/src/lib/commands.keys.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/organization-chart.module.ts","../../../../libs/modules/organization-management/src/lib/organization-management.module.ts","../../../../libs/modules/organization-management/src/acorex-modules-organization-management.ts"],"sourcesContent":["const config = {\n i18n: 'organization-management',\n module: 'OrganizationManagement',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'organization-management',\n name: config.module,\n title: '@organization-management:module.title',\n icon: 'fa-light fa-sitemap',\n },\n entities: {\n responsibility: {\n name: 'Responsibility',\n title: '@organization-management:responsibilities.entities.responsibility.title',\n source: `${config.module}.Responsibility`,\n icon: 'fa-light fa-tasks',\n },\n jobDefinition: {\n name: 'JobDefinition',\n title: '@organization-management:job-definitions.entities.job-definition.title',\n source: `${config.module}.JobDefinition`,\n icon: 'fa-light fa-user-tie',\n },\n jobLevel: {\n name: 'JobLevel',\n title: '@organization-management:job-levels.entities.job-level.title',\n source: `${config.module}.JobLevel`,\n icon: 'fa-light fa-layer-group',\n },\n responsibilityLevel: {\n name: 'ResponsibilityLevel',\n title: '@organization-management:responsibility-levels.entities.responsibility-level.title',\n titlePlural: '@organization-management:responsibility-levels.entities.responsibility-level.plural',\n source: `${config.module}.ResponsibilityLevel`,\n icon: 'fa-light fa-layer-group',\n },\n company: {\n name: 'Company',\n source: `${config.module}.Company`,\n title: '@organization-management:companies.entities.company.title',\n icon: 'fa-light fa-building',\n },\n team: {\n name: 'Team',\n source: `${config.module}.Team`,\n title: '@organization-management:teams.entities.team.title',\n icon: 'fa-light fa-people-group',\n },\n teamMemberRole: {\n name: 'TeamMemberRole',\n source: `${config.module}.TeamMemberRole`,\n title: '@organization-management:team-member-roles.entities.team-member-role.title',\n icon: 'fa-light fa-user-tag',\n },\n teamMember: {\n name: 'TeamMember',\n source: `${config.module}.TeamMember`,\n title: '@organization-management:team-members.entities.team-member.title',\n icon: 'fa-light fa-users',\n },\n teamBusinessUnit: {\n name: 'TeamBusinessUnit',\n source: `${config.module}.TeamBusinessUnit`,\n title: '@organization-management:team-business-units.entities.team-business-unit.title',\n icon: 'fa-light fa-link',\n },\n position: {\n name: 'Position',\n source: `${config.module}.Position`,\n title: '@organization-management:positions.entities.position.title',\n icon: 'fa-light fa-briefcase',\n },\n businessUnitType: {\n name: 'BusinessUnitType',\n source: `${config.module}.BusinessUnitType`,\n title: '@organization-management:business-unit-types.entities.business-unit-type.title',\n icon: 'fa-light fa-tag',\n },\n businessUnit: {\n name: 'BusinessUnit',\n source: `${config.module}.BusinessUnit`,\n title: '@organization-management:business-units.entities.business-unit.title',\n icon: 'fa-light fa-sitemap',\n },\n\n structure: {\n name: 'ChartStructure',\n source: `${config.module}.ChartStructure`,\n title: '@organization-management:chart-configuration.components.chart-configuration.title',\n menu: {\n title: '@organization-management:chart-configuration.menus.chart-configuration.title',\n },\n icon: 'fa-light fa-gear',\n },\n chart: {\n name: 'Chart',\n source: `${config.module}.Chart`,\n title: '@organization-management:organization-chart.components.chart.title',\n menu: {\n title: '@organization-management:organization-chart.menus.chart.title',\n },\n icon: 'fa-light fa-chart-diagram',\n },\n },\n};\n","import type { AXPEntityReference, AXPMultiLanguageString } from '@acorex/platform/core';\nimport type { AXPEntityModel } from '@acorex/platform/layout/entity';\n\n/** Persisted org-chart JSON: all chart modes in one row (`structure` column). */\nexport const AXM_ORG_CHART_STRUCTURE_SCHEMA_VERSION = 1 as const;\n\nexport interface AXMOrgChartStructurePayload {\n schemaVersion: typeof AXM_ORG_CHART_STRUCTURE_SCHEMA_VERSION;\n modes: {\n structure: AXMOrganizationManagementChartNodeEntityModel;\n location: AXMOrganizationManagementChartNodeEntityModel;\n reporting: AXMOrganizationManagementChartNodeEntityModel;\n positionHierarchy: AXMOrganizationManagementChartNodeEntityModel;\n };\n}\n\nexport interface AXMOrganizationManagementChartEntityModel extends AXPEntityModel<string> {\n version: string;\n structure: AXMOrgChartStructurePayload;\n}\n\nexport interface AXMOrganizationManagementChartNodeEntityModel extends AXPEntityModel<string> {\n id: string; // Unique identifier for the node\n title: AXPMultiLanguageString;\n subtitle?: AXPMultiLanguageString;\n description?: AXPMultiLanguageString;\n isExpanded?: boolean; // Add this property\n children?: AXMOrganizationManagementChartNodeEntityModel[];\n icon?: string;\n type?: string; // Type of the node\n parentId?: string | null; // ID of the parent node (null for root)\n entity?: AXPEntityReference;\n metadata?: Record<string, any>; // Additional metadata (e.g., roles, counts, etc.)\n}\n","import { AXPEntity, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { Injector } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXPWidgetsList } from '@acorex/modules/common';\n\nexport async function factory(injector: Injector): Promise<AXPEntity | null> {\n const i18n = RootConfig.config.i18n;\n const entityName = 'business-unit-type';\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.businessUnitType.name,\n title: '@organization-management:business-unit-types.entities.business-unit-type.title',\n icon: 'fa-light fa-tags',\n formats: {\n individual: '@organization-management:business-unit-types.entities.business-unit-type.title',\n plural: '@organization-management:business-unit-types.entities.business-unit-type.plural',\n searchResult: { title: '{{ title }}', description: RootConfig.module.title },\n },\n groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],\n plugins: [{ name: 'color' }, { name: 'icon' }],\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: {\n dataType: 'string',\n interface: { type: AXPWidgetsList.Editors.TextBox },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'name',\n title: '@general:terms.common.name',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsList.Editors.TextBox } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'isLocationBased',\n title:\n '@organization-management:business-unit-types.entities.business-unit-type.fields.is-location-based.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n options: {\n trulyText: '@general:terms.common.yes-no.yes',\n falsyText: '@general:terms.common.yes-no.no',\n },\n },\n defaultValue: false,\n },\n },\n {\n name: 'allowsDirectPositions',\n title:\n '@organization-management:business-unit-types.entities.business-unit-type.fields.allows-direct-positions.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n options: {\n trulyText: '@general:terms.common.yes-no.yes',\n falsyText: '@general:terms.common.yes-no.no',\n },\n },\n defaultValue: true,\n },\n },\n ],\n columns: [\n { name: 'name' },\n { name: 'title' },\n { name: 'isLocationBased' },\n { name: 'allowsDirectPositions' },\n { name: 'color' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }],\n properties: [\n {\n name: 'title',\n layout: {\n order: 1,\n positions: {\n sm: { colSpan: 12, order: 1 },\n md: { colSpan: 8, order: 1 },\n lg: { colSpan: 8, order: 1 },\n },\n },\n },\n {\n name: 'name',\n layout: {\n order: 2,\n positions: {\n sm: { colSpan: 12, order: 2 },\n md: { colSpan: 4, order: 2 },\n lg: { colSpan: 4, order: 2 },\n },\n },\n },\n {\n name: 'isLocationBased',\n layout: {\n order: 3,\n positions: {\n sm: { colSpan: 12, order: 3 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n {\n name: 'allowsDirectPositions',\n layout: {\n order: 4,\n positions: {\n sm: { colSpan: 12, order: 4 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }],\n properties: [\n {\n name: 'title',\n layout: {\n order: 1,\n positions: {\n sm: { colSpan: 12, order: 1 },\n md: { colSpan: 8, order: 1 },\n lg: { colSpan: 8, order: 1 },\n },\n },\n },\n {\n name: 'name',\n layout: {\n order: 2,\n positions: {\n sm: { colSpan: 12, order: 2 },\n md: { colSpan: 4, order: 2 },\n lg: { colSpan: 4, order: 2 },\n },\n },\n },\n {\n name: 'isLocationBased',\n layout: {\n order: 3,\n positions: {\n sm: { colSpan: 12, order: 3 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n {\n name: 'allowsDirectPositions',\n layout: {\n order: 4,\n positions: {\n sm: { colSpan: 12, order: 4 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [{ id: 'basic-info' }],\n properties: [\n {\n name: 'title',\n layout: {\n order: 1,\n positions: {\n sm: { colSpan: 12, order: 1 },\n md: { colSpan: 8, order: 1 },\n lg: { colSpan: 8, order: 1 },\n },\n },\n },\n {\n name: 'name',\n layout: {\n order: 2,\n positions: {\n sm: { colSpan: 12, order: 2 },\n md: { colSpan: 4, order: 2 },\n lg: { colSpan: 4, order: 2 },\n },\n },\n },\n {\n name: 'isLocationBased',\n layout: {\n order: 3,\n positions: {\n sm: { colSpan: 12, order: 3 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n {\n name: 'allowsDirectPositions',\n layout: {\n order: 4,\n positions: {\n sm: { colSpan: 12, order: 4 },\n md: { colSpan: 6, order: 3 },\n lg: { colSpan: 6, order: 3 },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","/**\n * Chart node data types for organization chart.\n */\nimport type { AXPEntityReference, AXPMultiLanguageString } from '@acorex/platform/core';\n\n/**\n * Chart nodes use {@link AXPMultiLanguageString} for every user-visible string on the card\n * (`title`, `subtitle`, `description`) so stored chart JSON and the UI respect locale.\n *\n * - Prefer **locale maps** `{ 'en-US': '…', 'fa-IR': '…' }` (see `createMultiLanguageString` in platform core).\n * - A **plain string** is allowed as a narrow fallback; the resolver treats it as the value for any locale.\n * - **`metadata`** fields that are shown in templates must also be `AXPMultiLanguageString` (or plain string\n * with the same rules), not English-only literals baked into feature code.\n */\nexport enum AXMOrgChartNodeType {\n Company = 'Company',\n BusinessUnit = 'BusinessUnit',\n Position = 'Position',\n Employee = 'Employee',\n}\n\n/** Card layout for organizational (and compatible geographic) charts — see README merging strategy. */\nexport type AXMOrgChartCardTemplate =\n | 'merged-executive'\n | 'merged-unit'\n | 'merged-manager'\n | 'position-ic'\n | 'employee-card'\n | 'compact';\n\n/** Structured head / CEO block for merged cards; `positionTitle` is always localized. */\nexport interface AXMOrgChartMergedRoleBlock {\n positionTitle: AXPMultiLanguageString;\n positionId?: string;\n employeeName?: string;\n employeeId?: string;\n vacant: boolean;\n}\n\n// Minimal high-level categories for rendering/legend only\nexport enum AXMOrgChartCategory {\n Company = 'Company',\n BusinessUnit = 'BusinessUnit',\n Position = 'Position',\n Employee = 'Employee',\n}\n\n/** User-selectable hierarchy chart view in the organization chart page. */\nexport type OrgChartMode = 'location' | 'structure' | 'reporting' | 'positionHierarchy';\n\nexport interface AXMOrganizationNode {\n id: string; // Unique identifier for the node\n /** Primary label; must be multi-language when content is not a proper name. */\n title: AXPMultiLanguageString;\n /** Secondary line (e.g. head summary); use locale map when mixing labels and entity titles. */\n subtitle?: AXPMultiLanguageString;\n /** Body / mission text. */\n description?: AXPMultiLanguageString;\n isExpanded?: boolean; // Add this property\n children?: AXMOrganizationNode[];\n icon?: string;\n type?: AXMOrgChartNodeType; // Type of the node\n parentId?: string | null; // ID of the parent node (null for root)\n entity?: AXPEntityReference;\n /** Rich card data; any **display** field here should use `AXPMultiLanguageString` like the core node fields. */\n metadata?: Record<string, any>;\n}\n\n/**\n * Pill badge on org chart node cards (icon + label). {@link title} is translated in the template.\n */\nexport interface AXMOrgChartNodeBadgeItem {\n /** Font Awesome class segment (e.g. `fa-light fa-building`). */\n icon: string;\n title: AXPMultiLanguageString;\n}\n\n/**\n * Footer metric cell: icon, numeric or short value, and translated label.\n */\nexport interface AXMOrgChartNodeFooterMetric {\n icon: string;\n /** Plain display value (formatted number or short text). */\n value: string;\n title: AXPMultiLanguageString;\n}\n","//#region ---- Imports ----\n\nimport { AXMOrgChartNodeContributionContext } from '../tokens/org-chart-node-contribution.token';\n\n//#endregion\n\nconst HCM_EMPLOYEE_SOURCE = 'HumanCapitalManagement.Employee';\n\n//#region ---- Resolve flyout employee ----\n\n/**\n * Employee id for org chart **Employee** flyout actions: card occupant, unit head, top role, or an `employee` node.\n * Returns undefined when the seat is vacant or no person is linked.\n */\nexport function axmResolveOrgChartFlyoutEmployeeId(\n context: AXMOrgChartNodeContributionContext,\n): string | undefined {\n if (context.nodeKind === 'employee') {\n const entity = context.node.entity;\n if (entity?.id != null && axmIsEmployeeEntityType(entity.type)) {\n const id = String(entity.id).trim();\n return id.length > 0 ? id : undefined;\n }\n return undefined;\n }\n\n if (context.nodeKind === 'company-root') {\n const topRole = context.node.metadata?.['topRole'] as Record<string, unknown> | undefined;\n if (!topRole || topRole['vacant'] === true) {\n return undefined;\n }\n const raw = topRole['employeeId'];\n return typeof raw === 'string' && raw.trim().length > 0 ? raw.trim() : undefined;\n }\n\n if (context.nodeKind === 'business-unit') {\n const unitHead = context.node.metadata?.['unitHead'] as Record<string, unknown> | undefined;\n if (!unitHead || unitHead['vacant'] === true) {\n return undefined;\n }\n const raw = unitHead['employeeId'];\n return typeof raw === 'string' && raw.trim().length > 0 ? raw.trim() : undefined;\n }\n\n if (context.nodeKind === 'position') {\n if (context.node.metadata?.['vacant'] === true) {\n return undefined;\n }\n const occ = context.node.metadata?.['occupant'] as Record<string, unknown> | undefined;\n const raw = occ?.['employeeId'];\n return typeof raw === 'string' && raw.trim().length > 0 ? raw.trim() : undefined;\n }\n\n return undefined;\n}\n\nfunction axmIsEmployeeEntityType(entityType: string | undefined): boolean {\n if (!entityType || typeof entityType !== 'string') {\n return false;\n }\n return entityType === HCM_EMPLOYEE_SOURCE || entityType.endsWith('.Employee');\n}\n\n//#endregion\n","//#region ---- Org chart: employee flyout (assigned person + employee nodes) ----\n\n/**\n * Stable {@link AXMOrgChartNodeMenuAction.submenuGroupId} for actions that target the person on a card\n * (chief executive, unit head, seat occupant) or the {@link AXMOrgChartNodeKind} `employee` node itself.\n * Private chat/email move here from the Communication group.\n */\nexport const AXM_ORG_CHART_EMPLOYEE_SUBMENU_GROUP_ID =\n 'organization-management.org-chart.employee-submenu' as const;\n\n/**\n * i18n key: `organization-chart.employee-submenu.title` in `organization-management` assets.\n */\nexport const AXM_ORG_CHART_EMPLOYEE_SUBMENU_TITLE_I18N_KEY =\n '@organization-management:organization-chart.employee-submenu.title' as const;\n\nexport const AXM_ORG_CHART_EMPLOYEE_SUBMENU_ICON = 'fa-light fa-user' as const;\n\n//#endregion\n","//#region ---- Org chart: view / layout flyout ----\n\n/**\n * Stable {@link AXMOrgChartNodeMenuAction.submenuGroupId} for panel toggle and branch expand/collapse.\n */\nexport const AXM_ORG_CHART_LAYOUT_SUBMENU_GROUP_ID =\n 'organization-management.org-chart.layout-submenu' as const;\n\n/**\n * i18n key: `organization-chart.layout-submenu.title` in `organization-management` assets.\n */\nexport const AXM_ORG_CHART_LAYOUT_SUBMENU_TITLE_I18N_KEY =\n '@organization-management:organization-chart.layout-submenu.title' as const;\n\nexport const AXM_ORG_CHART_LAYOUT_SUBMENU_ICON = 'fa-light fa-sidebar' as const;\n\n//#endregion\n","//#region ---- Org chart: shared communication flyout ----\n\n/**\n * Stable {@link AXMOrgChartNodeMenuAction.submenuGroupId} so chat and email extensions merge\n * their org-chart context actions under one parent flyout.\n */\nexport const AXM_ORG_CHART_COMMUNICATION_SUBMENU_GROUP_ID =\n 'organization-management.org-chart.communication-submenu' as const;\n\n/**\n * i18n key for the flyout parent label (`apps/.../organization-management.json`:\n * `organization-chart.communication-submenu.title`).\n */\nexport const AXM_ORG_CHART_COMMUNICATION_SUBMENU_TITLE_I18N_KEY =\n '@organization-management:organization-chart.communication-submenu.title' as const;\n\n/** Parent row icon when actions from multiple modules supply the same group id. */\nexport const AXM_ORG_CHART_COMMUNICATION_SUBMENU_ICON = 'fa-light fa-comments' as const;\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXPMultiLanguageString } from '@acorex/platform/core';\nimport { InjectionToken } from '@angular/core';\nimport type { AXMOrgChartHostApi } from './org-chart-host.token';\nimport { AXMOrganizationNode } from '../model/org-chart.type';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport type AXMOrgChartNodeKind = 'company-root' | 'business-unit' | 'position' | 'employee' | 'other';\n\n/** Section separator for org chart context menu rows built from {@link AXMOrgChartNodeMenuAction}. */\nexport type AXMOrgChartNodeMenuBreak = 'before' | 'after' | 'both';\n\nexport interface AXMOrgChartNodeContributionContext {\n node: AXMOrganizationNode;\n nodeKind: AXMOrgChartNodeKind;\n selectedMode: 'location' | 'structure' | 'reporting' | 'positionHierarchy';\n refreshChart: () => Promise<void>;\n /** Page host (detail panel, branch expand/collapse, selection). */\n host: AXMOrgChartHostApi;\n}\n\nexport interface AXMOrgChartNodeMenuAction {\n id: string;\n /** i18n key (`@scope:...`) or {@link AXPMultiLanguageString} locale map (`ax-menu-item` pipes `translate` without forwarding params — use maps for interpolated copy). */\n title: string | AXPMultiLanguageString;\n /** Interpolation helper for contributors; the org chart host does not pipe params into menu `translate` (use `title` maps). */\n titleParams?: Record<string, string | number>;\n icon?: string;\n color?: AXStyleColorType;\n order?: number;\n disabled?: boolean;\n /**\n * Section separator for this row (and for `submenuGroupId` buckets: `before` / `after` / `both` also move the\n * parent flyout's separator relative to siblings). `before` is implemented by setting `AXMenuItem.break` on the\n * **previous** sibling at the same level (no-op when first).\n */\n break?: AXMOrgChartNodeMenuBreak;\n /**\n * Adds a separator after this row. Applies at any menu level (including root when a `submenuGroupId` flyout is\n * flattened, e.g. Employee actions on an employee node). Does not set the parent bucket's trailing break; use\n * {@link break} `after` / `both` on a member when the parent flyout row should also end a section.\n */\n submenuSectionBreak?: boolean;\n /**\n * When true, nested under the chart **Add …** submenu (business unit kinds, add position, and similar).\n */\n nestedInAddFlyout?: boolean;\n /**\n * Optional flyout: actions that share the same `submenuGroupId` render as children of one parent row.\n * Use the same `submenuGroupTitle` for every member; `submenuGroupIcon` may be set on any member (first wins).\n * On grouped members: {@link break} `after` / `both` adds a line inside the flyout below that child and sets the\n * parent row's section break after the flyout; `before` / `both` on any member adds a line before the parent row\n * (previous top-level sibling gets `break`). Use {@link submenuSectionBreak} for a separator after that child\n * without affecting the parent bucket's trailing break.\n * Cross-module chat + email on the org chart should use the communication constants in\n * `org-chart-communication-submenu.const.ts` (`AXM_ORG_CHART_COMMUNICATION_SUBMENU_GROUP_ID`, title key, icon).\n */\n submenuGroupId?: string;\n submenuGroupTitle?: string | AXPMultiLanguageString;\n submenuGroupIcon?: string;\n execute: (context: AXMOrgChartNodeContributionContext) => Promise<void>;\n}\n\nexport interface AXMOrgChartNodeInfoContribution {\n id: string;\n title: AXPMultiLanguageString;\n order?: number;\n load: (context: AXMOrgChartNodeContributionContext) => Promise<unknown>;\n}\n\nexport interface AXMOrgChartNodeContributionProvider {\n getMenuActions(context: AXMOrgChartNodeContributionContext): Promise<AXMOrgChartNodeMenuAction[]>;\n getInfoContributions?(context: AXMOrgChartNodeContributionContext): Promise<AXMOrgChartNodeInfoContribution[]>;\n}\n\n/**\n * One multi-provider slot: an eager instance or a promise from a lazy provider factory (`provideLazyProvider`).\n */\nexport type AXMOrgChartNodeContributorRef =\n | AXMOrgChartNodeContributionProvider\n | Promise<AXMOrgChartNodeContributionProvider>;\n\n//#endregion\n\n//#region ---- Tokens ----\n\nexport const AXM_ORG_CHART_NODE_CONTRIBUTOR = new InjectionToken<AXMOrgChartNodeContributorRef>(\n 'AXM_ORG_CHART_NODE_CONTRIBUTOR',\n);\n\n//#endregion\n","import { Injectable, signal } from '@angular/core';\n\n/**\n * Broadcasts when persisted org chart structure was rebuilt (e.g. mock listener after related entity changes).\n * The chart page reloads from storage when {@link structureDataRevision} increments.\n */\n@Injectable({ providedIn: 'root' })\nexport class AXMOrgChartStructureRefreshHub {\n private readonly revision = signal(0);\n\n readonly structureDataRevision = this.revision.asReadonly();\n\n notifyStructureRebuilt(): void {\n this.revision.update((v) => v + 1);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { AXPMultiLanguageString } from '@acorex/platform/core';\nimport { AXMOrganizationNode } from '../model/org-chart.type';\n\n/**\n * Injected by org chart node components to access colors, i18n labels, and expand/collapse.\n */\nexport interface AXMOrgChartHostApi {\n getNodeColors(color: string): Record<string, string>;\n isNodeSelected(data: AXMOrganizationNode): boolean;\n selectNode(data: AXMOrganizationNode): void;\n openNodeContextMenuFromMore(event: unknown, data: AXMOrganizationNode): void;\n readonly chartML: {\n vacant: AXPMultiLanguageString;\n directReports: AXPMultiLanguageString;\n teams: AXPMultiLanguageString;\n people: AXPMultiLanguageString;\n positions: AXPMultiLanguageString;\n chiefExecutive: AXPMultiLanguageString;\n /** Business unit detail rows: unit head display name and role title from `metadata.unitHead`. */\n buHead: AXPMultiLanguageString;\n buPosition: AXPMultiLanguageString;\n unitType: AXPMultiLanguageString;\n businessUnit: AXPMultiLanguageString;\n location: AXPMultiLanguageString;\n code: AXPMultiLanguageString;\n capacity: AXPMultiLanguageString;\n level: AXPMultiLanguageString;\n email: AXPMultiLanguageString;\n phone: AXPMultiLanguageString;\n employmentType: AXPMultiLanguageString;\n workMode: AXPMultiLanguageString;\n /** i18n key for the node “more” control (translate pipe). */\n more: string;\n /** i18n key when the context menu has no runnable actions. */\n noActionsAvailable: string;\n };\n getTeamsMembershipCount(data: AXMOrganizationNode): number | null;\n /** When the card body already shows the assignee (merged unit / manager seat), hide `subtitle` so it is not duplicated. */\n shouldShowOrgCardSubtitle(data: AXMOrganizationNode): boolean;\n /** Subtree / seat strip: BU & company snapshot stats, or `position-ic` seats (1 position; people from vacant state or subtree). */\n getSubtreeRosterCounts(data: AXMOrganizationNode): { people: number; positions: number } | null;\n /** Key-value rows for the side detail panel only (not rendered on node cards). */\n getNodeInfoItems(data: AXMOrganizationNode): Array<{ label: AXPMultiLanguageString; value: string }>;\n toggleNode(data: AXMOrganizationNode, el?: HTMLDivElement | null): void;\n /** Shows or hides the chart detail panel. */\n toggleDetailPanel(): void;\n /**\n * Sets explicit expand/collapse for a branch and redraws the chart.\n * @param expanded When false, children are hidden on the next layout (`isExpanded === false`).\n */\n setNodeBranchExpanded(data: AXMOrganizationNode, expanded: boolean): void;\n}\n\nexport const AXM_ORG_CHART_HOST = new InjectionToken<AXMOrgChartHostApi>('AXM_ORG_CHART_HOST');\n","//#region ---- Imports ----\n\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n input,\n output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXM_ORG_CHART_HOST, type AXMOrgChartHostApi } from '../../tokens/org-chart-host.token';\nimport { AXMOrganizationNode, AXMOrgChartNodeType } from '../../model/org-chart.type';\n\n//#endregion\n\n//#region ---- Component ----\n\n/**\n * Side panel for the organization chart: mirrors document explorer detail-panel layout/styling for node summary and metadata rows.\n */\n@Component({\n selector: 'axm-org-chart-detail-panel',\n templateUrl: './org-chart-detail-panel.component.html',\n styleUrls: ['./org-chart-detail-panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [CommonModule, AXDecoratorModule, AXButtonModule, AXTranslationModule],\n})\nexport class AXMOrgChartDetailPanelComponent {\n //#region ---- Services & Dependencies ----\n\n protected readonly host: AXMOrgChartHostApi = inject(AXM_ORG_CHART_HOST);\n protected readonly OrgChartNodeType = AXMOrgChartNodeType;\n\n //#endregion\n\n //#region ---- Inputs / Outputs ----\n\n /** Selected tree node, or `null` when nothing is selected. */\n readonly node = input<AXMOrganizationNode | null>(null);\n\n /** Emitted when the user closes the panel (matches explorer close control). */\n readonly panelClose = output<void>();\n\n //#endregion\n\n //#region ---- Node surface (icon chip) ----\n\n /**\n * CSS custom properties for {@link AXMOrgChartHostApi.getNodeColors}. Use per-property `[style.--*]` bindings;\n * a plain `[style]` map does not reliably apply `--node-*` variables in all Angular versions.\n */\n protected surfaceVarsForNode(node: AXMOrganizationNode): Record<string, string> {\n return this.host.getNodeColors(this.nodeColorKey(node));\n }\n\n protected surfaceVarsForPrimary(): Record<string, string> {\n return this.host.getNodeColors('primary');\n }\n\n /**\n * Color argument for {@link AXMOrgChartHostApi.getNodeColors}: semantic token or `metadata.unitTypeColor` (hex/rgb) for business units.\n */\n protected nodeColorKey(node: AXMOrganizationNode): string {\n if (node.type === AXMOrgChartNodeType.Company) {\n return 'primary';\n }\n if (node.type === AXMOrgChartNodeType.BusinessUnit) {\n const typeColor = node.metadata?.['unitTypeColor'];\n if (typeof typeColor === 'string' && typeColor.trim().length > 0) {\n return typeColor.trim();\n }\n return node.metadata?.['isRegional'] === true ? 'accent1' : 'accent2';\n }\n if (node.type === AXMOrgChartNodeType.Position || node.type === AXMOrgChartNodeType.Employee) {\n return 'accent3';\n }\n return 'primary';\n }\n\n //#endregion\n\n //#region ---- UI Handlers ----\n\n protected onClose(): void {\n this.panelClose.emit();\n }\n\n protected nodeIconClass(node: AXMOrganizationNode): string {\n const raw = node.icon?.trim() ?? '';\n const withoutWeight = raw\n .replace(/\\bfa-(solid|light|regular|thin|duotone)\\b/gi, '')\n .trim()\n .replace(/\\s+/g, ' ');\n const glyph = withoutWeight.length > 0 ? withoutWeight : 'fa-sitemap';\n return `fa-solid fa-lg fa-fw ${glyph}`;\n }\n\n //#endregion\n}\n\n//#endregion\n","@let n = node();\n@if (n) {\n @let sv = surfaceVarsForNode(n);\n <div class=\"__header\">\n <div class=\"__title\">\n <span\n class=\"detail-panel-icon\"\n [style.--node-bg-color]=\"sv['--node-bg-color']\"\n >\n <i [class]=\"nodeIconClass(n)\"></i>\n </span>\n <div class=\"ax-flex ax-flex-col ax-min-w-0 ax-flex-1\">\n <span class=\"__heading-primary\">{{ n.title | translate | async }}</span>\n @if (n.type === OrgChartNodeType.BusinessUnit) {\n @if (n.description) {\n <span class=\"ax-text-xs ax-opacity-80 ax-truncate\">{{ n.description | translate | async }}</span>\n } @else if (n.subtitle) {\n <span class=\"ax-text-xs ax-opacity-80 ax-truncate\">{{ n.subtitle | translate | async }}</span>\n }\n } @else if (n.subtitle) {\n <span class=\"ax-text-xs ax-opacity-80 ax-truncate\">{{ n.subtitle | translate | async }}</span>\n }\n </div>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"onClose()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n </div>\n <div class=\"__content\">\n @if (host.getNodeInfoItems(n).length > 0) {\n <div class=\"__section\">\n <div class=\"__title\">\n <span>{{\n '@organization-management:organization-chart.components.chart.detail-panel.details-section'\n | translate\n | async\n }}</span>\n </div>\n <div class=\"__content\">\n @for (item of host.getNodeInfoItems(n); track item.value + '-' + $index) {\n <div class=\"__row\">\n <div class=\"__title\">\n <span>{{ item.label | translate | async }}</span>\n </div>\n <div class=\"__content\">\n <span>{{ item.value }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n } @else {\n <div class=\"__section\">\n <div class=\"__content\">\n <span class=\"ax-opacity-70 ax-text-sm\">{{\n '@organization-management:organization-chart.components.chart.detail-panel.no-rows'\n | translate\n | async\n }}</span>\n </div>\n </div>\n }\n </div>\n} @else {\n @let pv = surfaceVarsForPrimary();\n <div class=\"__header\">\n <div class=\"__title\">\n <span\n class=\"detail-panel-icon\"\n [style.--node-bg-color]=\"pv['--node-bg-color']\"\n >\n <i class=\"fa-solid fa-lg fa-fw fa-diagram-project\"></i>\n </span>\n <span class=\"__heading-primary\">{{\n '@organization-management:organization-chart.components.chart.detail-panel.title' | translate | async\n }}</span>\n </div>\n <ax-button [look]=\"'blank'\" class=\"ax-sm ax-rounded-full\" (onClick)=\"onClose()\">\n <ax-icon icon=\"fa-solid fa-xmark\"></ax-icon>\n </ax-button>\n </div>\n <div class=\"__content\">\n <div class=\"__section\">\n <div class=\"__content\">\n <span class=\"ax-opacity-70 ax-text-sm\">{{\n '@organization-management:organization-chart.components.chart.detail-panel.empty' | translate | async\n }}</span>\n </div>\n </div>\n </div>\n}\n","export enum AXPOrganizationManagementSettings {\n OrganizationName = 'OrganizationManagement:Setting:Organization.OrganizationName',\n OrganizationID = 'OrganizationManagement:Setting:Organization.OrganizationID',\n ContactEmail = 'OrganizationManagement:Setting:Organization.ContactEmail',\n ContactPhone = 'OrganizationManagement:Setting:Organization.ContactPhone',\n OrganizationAddress = 'OrganizationManagement:Setting:Organization.OrganizationAddress',\n OrganizationCity = 'OrganizationManagement:Setting:Organization.OrganizationCity',\n OrganizationCountry = 'OrganizationManagement:Setting:Organization.OrganizationCountry',\n BrandingColor = 'OrganizationManagement:Setting:Organization.Branding.Color',\n BrandingLogo = 'OrganizationManagement:Setting:Organization.Branding.Logo',\n CopyrightText = 'OrganizationManagement:Setting:Organization.CopyrightText',\n ApplicationHeaderTitle = 'OrganizationManagement:Setting:Organization.ApplicationHeaderTitle',\n SupportEmail = 'OrganizationManagement:Setting:Organization.SupportEmail',\n InfoEmail = 'OrganizationManagement:Setting:Organization.InfoEmail',\n FaxNumber = 'OrganizationManagement:Setting:Organization.FaxNumber',\n Relations = 'OrganizationManagement:Setting:Organization.Relations',\n\n /** User preference: organization hierarchy chart mode (`structure` | `location` | `reporting` | `positionHierarchy`). */\n HierarchyChartMode = 'OrganizationManagement:Setting:User.HierarchyChart.Mode',\n /** User preference: show vacant leaf seats (structure / geographic modes). */\n HierarchyChartShowVacantLeafSeats = 'OrganizationManagement:Setting:User.HierarchyChart.ShowVacantLeafSeats',\n}\n","import type { OrgChartMode } from '../model/org-chart.type';\n\n/**\n * Chart mode + vacant-seat visibility restored from user settings (route resolver or post-load hydrate).\n */\nexport interface OrgChartHydratedUiPrefs {\n selectedMode?: OrgChartMode;\n showVacantLeafSeats?: boolean;\n}\n\nexport function parseOrgChartMode(value: unknown): OrgChartMode | undefined {\n if (\n value === 'structure' ||\n value === 'location' ||\n value === 'reporting' ||\n value === 'positionHierarchy'\n ) {\n return value;\n }\n return undefined;\n}\n\n/**\n * Normalizes vacant-toggle values from persisted settings or UI widgets (some paths use strings).\n */\nexport function normalizeVacantLeafSeatsSetting(value: unknown): boolean | undefined {\n if (value === true || value === 1) {\n return true;\n }\n if (value === false || value === 0) {\n return false;\n }\n if (typeof value === 'string') {\n const s = value.trim().toLowerCase();\n if (s === 'true' || s === '1' || s === 'yes' || s === 'on') {\n return true;\n }\n if (s === 'false' || s === '0' || s === 'no' || s === 'off') {\n return false;\n }\n }\n return undefined;\n}\n","import { inject } from '@angular/core';\nimport { ResolveFn } from '@angular/router';\nimport { AXPSettingsService } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nimport { AXPOrganizationManagementSettings } from '../../../settings.keys';\nimport {\n normalizeVacantLeafSeatsSetting,\n type OrgChartHydratedUiPrefs,\n parseOrgChartMode,\n} from './org-chart-user-ui.helper';\n\n/**\n * Loads user chart UI preferences before {@link AXMOrgChartPage} is created so the first render matches saved state.\n */\nexport const orgChartUiPrefsResolver: ResolveFn<OrgChartHydratedUiPrefs> = async () => {\n const settingsService = inject(AXPSettingsService);\n await settingsService.load();\n\n const userScope = settingsService.scope(AXPPlatformScope.User);\n const modeRaw = await userScope.get<string | undefined>(\n AXPOrganizationManagementSettings.HierarchyChartMode,\n );\n const vacantRaw = await userScope.get<unknown>(\n AXPOrganizationManagementSettings.HierarchyChartShowVacantLeafSeats,\n );\n\n const prefs: OrgChartHydratedUiPrefs = {};\n const mode = parseOrgChartMode(modeRaw);\n if (mode !== undefined) {\n prefs.selectedMode = mode;\n }\n const vacant = normalizeVacantLeafSeatsSetting(vacantRaw);\n if (vacant !== undefined) {\n prefs.showVacantLeafSeats = vacant;\n }\n return prefs;\n};\n","//#region ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex/platform/core';\nimport { RootConfig } from './const';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\n/**\n * Organization Management Module Manifest.\n * Defines module metadata, features, and provider references.\n */\nexport const OrganizationManagementManifest: 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\n dependencies: ['LearningManagement'],\n};\n\n//#endregion\n\n","import { AXP_WIDGETS_EDITOR_CATEGORY, AXPWidgetConfig, AXPWidgetGroupEnum } from '@acorex/platform/layout/widget-core';\nimport { AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_LABEL_PROPERTY, AXP_NAME_PROPERTY, AXP_READONLY_PROPERTY } from '@acorex/platform/layout/widgets';\n\nexport const AXMResponsibilitiesMatrixWidget: AXPWidgetConfig<AXMResponsibilitiesMatrixWidgetConfigType> = {\n name: 'responsibilities-matrix-editor',\n title: 'Responsibilities Matrix',\n categories: AXP_WIDGETS_EDITOR_CATEGORY,\n groups: [AXPWidgetGroupEnum.UtilityWidget],\n description: 'Matrix widget for managing responsibility levels',\n icon: 'fa-light fa-table',\n type: 'editor',\n options: {\n needLabel: false,\n },\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./responsibilities-matrix-widget-view.component').then((c) => c.AXMResponsibilitiesMatrixWidgetViewComponent),\n },\n edit: {\n component: () => import('./responsibilities-matrix-widget-edit.component').then((c) => c.AXMResponsibilitiesMatrixWidgetEditComponent),\n },\n },\n};\n\nexport type AXMResponsibilitiesMatrixWidgetConfigType = {\n type: 'editor';\n};\n\n","//#region ---- Imports ----\n\nimport { AXPWidgetDefinitionProvider } from '@acorex/platform/layout/widget-core';\nimport { Injectable } from '@angular/core';\nimport { AXMResponsibilitiesMatrixWidget } from './features/responsibilities-matrix/responsibilities-matrix-widget.config';\n\n//#endregion\n\n//#region ---- Organization Management Widgets Provider ----\n\n@Injectable()\nexport class AXMOrganizationManagementWidgetsProvider implements AXPWidgetDefinitionProvider {\n getWidgets() {\n return [AXMResponsibilitiesMatrixWidget];\n }\n}\n\n//#endregion\n","export const AXMOrganizationManagementCommandKeys = {\n OrganizationChart: {\n AddPositionToBusinessUnit: 'OrganizationManagement.OrgChart:AddPositionToBusinessUnit',\n AddBusinessUnitToBusinessUnit: 'OrganizationManagement.OrgChart:AddBusinessUnitToBusinessUnit',\n AddTeamToBusinessUnit: 'OrganizationManagement.OrgChart:AddTeamToBusinessUnit',\n RemovePositionFromBusinessUnit: 'OrganizationManagement.OrgChart:RemovePositionFromBusinessUnit',\n ReplacePositionAssignee: 'OrganizationManagement.OrgChart:ReplacePositionAssignee',\n },\n} as const;\n\n/** HCM command key (string only; avoid importing HCM from org-management). */\nexport const AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND =\n 'HumanCapitalManagement.PositionAssignment:Assign' as const;\n\n/** HCM command key (string only; avoid importing HCM from org-management). */\nexport const AXM_HCM_POSITION_ASSIGNMENT_REVOKE_COMMAND =\n 'HumanCapitalManagement.PositionAssignment:Revoke' as const;\n","//#region ---- Imports ----\n\nimport { provideLazyProvider } from '@acorex/platform/core';\nimport { provideCommand } from '@acorex/platform/runtime';\nimport { NgModule } from '@angular/core';\nimport { AXMOrganizationManagementCommandKeys } from '../../commands.keys';\nimport { AXM_ORG_CHART_NODE_CONTRIBUTOR } from './tokens/org-chart-node-contribution.token';\n\n//#endregion\n\n//#region ---- NgModule ----\n\n/**\n * Registers organization chart node contributors and chart-scoped commands for Organization Management.\n */\n@NgModule({\n providers: [\n provideLazyProvider(AXM_ORG_CHART_NODE_CONTRIBUTOR, () =>\n import('./contributions/org-chart-default-node-contribution.provider').then(\n (m) => m.AXMOrgChartDefaultNodeContributionProvider,\n ),\n ),\n provideLazyProvider(AXM_ORG_CHART_NODE_CONTRIBUTOR, () =>\n import('./contributions/org-chart-position-employee-node-contribution.provider').then(\n (m) => m.AXMOrgChartPositionEmployeeNodeContributionProvider,\n ),\n ),\n provideLazyProvider(AXM_ORG_CHART_NODE_CONTRIBUTOR, () =>\n import('./contributions/org-chart-employee-flyout-contribution.provider').then(\n (m) => m.AXMOrgChartEmployeeFlyoutContributionProvider,\n ),\n ),\n provideLazyProvider(AXM_ORG_CHART_NODE_CONTRIBUTOR, () =>\n import('./contributions/org-chart-ux-node-contribution.provider').then(\n (m) => m.AXMOrgChartUxNodeContributionProvider,\n ),\n ),\n provideCommand(AXMOrganizationManagementCommandKeys.OrganizationChart.AddPositionToBusinessUnit, () =>\n import('./commands/add-position-to-business-unit.command').then((m) => m.AXMAddPositionToBusinessUnitCommand),\n ),\n provideCommand(AXMOrganizationManagementCommandKeys.OrganizationChart.AddBusinessUnitToBusinessUnit, () =>\n import('./commands/add-business-unit-to-business-unit.command').then(\n (m) => m.AXMAddBusinessUnitToBusinessUnitCommand,\n ),\n ),\n provideCommand(AXMOrganizationManagementCommandKeys.OrganizationChart.AddTeamToBusinessUnit, () =>\n import('./commands/add-team-to-business-unit.command').then((m) => m.AXMAddTeamToBusinessUnitCommand),\n ),\n provideCommand(AXMOrganizationManagementCommandKeys.OrganizationChart.RemovePositionFromBusinessUnit, () =>\n import('./commands/remove-position-from-business-unit.command').then(\n (m) => m.AXMRemovePositionFromBusinessUnitCommand,\n ),\n ),\n provideCommand(AXMOrganizationManagementCommandKeys.OrganizationChart.ReplacePositionAssignee, () =>\n import('./commands/replace-position-assignee.command').then((m) => m.AXMReplacePositionAssigneeCommand),\n ),\n ],\n})\nexport class AXMOrganizationChartModule {}\n\n//#endregion\n","import { AXPAuthGuard } from '@acorex/platform/auth';\nimport { AXP_IDENTIFIER_RULES } from '@acorex/modules/identifier-management';\nimport { AXP_HOME_PAGES, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport {\n AXP_MODULE_MANIFEST_PROVIDER,\n AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,\n AXP_DATASOURCE_DEFINITION_PROVIDER,\n AXP_FEATURE_DEFINITION_PROVIDER,\n provideLazyProvider,\n} from '@acorex/platform/core';\nimport { orgChartUiPrefsResolver } from './features/organization-chart/ui/org-chart-ui.resolver';\nimport { OrganizationManagementManifest } from './manifest';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_PAGE_COMPONENT_PROVIDER } from '@acorex/platform/layout/components';\nimport { AXP_WIDGET_DEFINITION_PROVIDER, AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { CommonModule } from '@angular/common';\nimport { inject, NgModule } from '@angular/core';\nimport { Route, Routes, ROUTES } from '@angular/router';\nimport { AXMOrganizationManagementWidgetsProvider } from './widget-definition.provider';\nimport { AXMOrganizationChartModule } from './features/organization-chart/organization-chart.module';\n\nfunction routesFacory() {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n const routes: Routes = [\n {\n loadComponent: () => {\n return config.viewers.root();\n },\n path: ':app/organization',\n canActivate: [AXPAuthGuard],\n children: [\n {\n path: 'chart',\n resolve: { orgChartUi: orgChartUiPrefsResolver },\n loadComponent: () => import('./features/organization-chart/page/org-chart.page').then((c) => c.AXMOrgChartPage),\n },\n ],\n },\n ];\n return routes;\n}\n\nfunction routesFactory(): Route {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n return {\n path: ':app/organization',\n loadComponent: () => {\n return config.viewers.root();\n },\n children: [\n {\n path: 'chart',\n resolve: { orgChartUi: orgChartUiPrefsResolver },\n loadComponent: () => import('./features/organization-chart/page/org-chart.page').then((c) => c.AXMOrgChartPage),\n },\n ],\n };\n}\n\n@NgModule({\n imports: [\n CommonModule,\n AXPWidgetCoreModule,\n AXMOrganizationChartModule,\n ],\n providers: [\n provideLazyProvider(AXP_IDENTIFIER_RULES, () =>\n import('./features/identifiers/organization-code-identifier-rules.provider').then(\n (m) => m.AXMOrganizationBusinessUnitCodeIdentifierRule,\n ),\n ),\n provideLazyProvider(AXP_IDENTIFIER_RULES, () =>\n import('./features/identifiers/organization-code-identifier-rules.provider').then(\n (m) => m.AXMOrganizationTeamCodeIdentifierRule,\n ),\n ),\n provideLazyProvider(AXP_IDENTIFIER_RULES, () =>\n import('./features/identifiers/organization-code-identifier-rules.provider').then(\n (m) => m.AXMOrganizationPositionCodeIdentifierRule,\n ),\n ),\n // Module-specific providers (not part of manifest system)\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n\n provideLazyProvider(AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, () =>\n import('./features/shared/data-source-evaluator-scope.provider').then(\n (m) => m.AXMOrganizationManagementDataSourceEvaluatorScopeProvider,\n ),\n ),\n provideLazyProvider(AXP_DATASOURCE_DEFINITION_PROVIDER, () =>\n import('./features/shared/datasources/job-level.datasource').then((m) => m.AXMJobLevelDataSourceDefinition),\n ),\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: OrganizationManagementManifest,\n multi: true,\n },\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () =>\n import('./permission-definition.provider').then((m) => m.AXMPermissionDefinitionProvider),\n ),\n provideLazyProvider(AXP_MENU_PROVIDER, () => import('./menu.provider').then((m) => m.AXMMenuProvider)),\n provideLazyProvider(AXP_ENTITY_DEFINITION_LOADER, () =>\n import('./entity.provider').then((m) => m.AXMOrganizationModuleEntityProvider),\n ),\n provideLazyProvider(AXP_FEATURE_DEFINITION_PROVIDER, () =>\n import('./feature-definition.provider').then((m) => m.AXPOrganizationManagementFeatureDefinitionProvider),\n ),\n provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () =>\n import('./features/job-definition-pages/job-definition-pages-component.provider').then(\n (m) => m.AXMJobDefinitionPagesComponentProvider,\n ),\n ),\n provideLazyProvider(\n AXP_SETTING_DEFINITION_PROVIDER,\n () => import('./settings.provider').then((m) => m.AXMSettingProvider),\n ),\n // Widgets must register eagerly: lazy registration can resolve after entity forms bind,\n // so module editors like responsibilities-matrix-editor would not be found (blank UI).\n {\n provide: AXP_WIDGET_DEFINITION_PROVIDER,\n useClass: AXMOrganizationManagementWidgetsProvider,\n multi: true,\n },\n ],\n})\nexport class AXMOrganizationManagementModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4"],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ import { AXDialogService } from '@acorex/components/dialog';
2
+ import { AXToastService } from '@acorex/components/toast';
3
+ import { AXTranslationService } from '@acorex/core/translation';
4
+ import { AXPSessionService } from '@acorex/platform/auth';
5
+ import { AXPEntityService } from '@acorex/platform/layout/entity';
6
+ import { AXPCommandService } from '@acorex/platform/runtime';
7
+ import * as i0 from '@angular/core';
8
+ import { inject, Injectable } from '@angular/core';
9
+ import { R as RootConfig, i as AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND } from './acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs';
10
+
11
+ //#region ---- Imports ----
12
+ class AXMAddBusinessUnitToBusinessUnitCommand {
13
+ constructor() {
14
+ //#region ---- Services & Dependencies ----
15
+ this.commandService = inject(AXPCommandService);
16
+ this.entityService = inject(AXPEntityService);
17
+ this.translationService = inject(AXTranslationService);
18
+ this.dialogService = inject(AXDialogService);
19
+ this.toastService = inject(AXToastService);
20
+ this.sessionService = inject(AXPSessionService);
21
+ this.positionAssignmentCreatePermission = 'HumanCapitalManagement:Permission:PositionAssignment.Create';
22
+ }
23
+ //#endregion
24
+ //#region ---- Command ----
25
+ async execute(input) {
26
+ const typeId = input?.typeId?.trim() ?? '';
27
+ if (!typeId) {
28
+ return { success: false };
29
+ }
30
+ const parentId = this.normalizeOptionalId(input?.parentBusinessUnitId);
31
+ const createResult = await this.commandService.execute('Entity:Create', {
32
+ __context__: {
33
+ entity: RootConfig.entities.businessUnit.source,
34
+ entityInfo: {
35
+ module: RootConfig.module.name,
36
+ name: RootConfig.entities.businessUnit.name,
37
+ title: RootConfig.entities.businessUnit.title,
38
+ parentKey: 'parentId',
39
+ },
40
+ data: {
41
+ ...(parentId ? { parentId } : {}),
42
+ typeId,
43
+ },
44
+ options: {
45
+ process: {
46
+ redirect: false,
47
+ },
48
+ },
49
+ },
50
+ });
51
+ if (!createResult?.success) {
52
+ return { success: false };
53
+ }
54
+ const childBusinessUnitId = this.extractCreatedEntityId(createResult.data);
55
+ if (!childBusinessUnitId) {
56
+ return { success: true };
57
+ }
58
+ if (!(await this.typeAllowsDirectPositions(typeId))) {
59
+ return { success: true, data: { childBusinessUnitId } };
60
+ }
61
+ if (!this.sessionService.authorize(this.positionAssignmentCreatePermission)) {
62
+ return { success: true, data: { childBusinessUnitId } };
63
+ }
64
+ if (!(await this.confirmAssignHeadNow())) {
65
+ return { success: true, data: { childBusinessUnitId } };
66
+ }
67
+ const headPositionId = await this.resolveHeadPositionId(childBusinessUnitId);
68
+ if (!headPositionId) {
69
+ await this.showMissingHeadPositionHint();
70
+ return { success: true, data: { childBusinessUnitId } };
71
+ }
72
+ const assignResult = await this.commandService.execute(AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND, {
73
+ data: {
74
+ businessUnitId: childBusinessUnitId,
75
+ positionId: headPositionId,
76
+ isPrimary: true,
77
+ },
78
+ });
79
+ return {
80
+ success: true,
81
+ data: {
82
+ childBusinessUnitId,
83
+ headAssignCompleted: assignResult?.success === true,
84
+ },
85
+ };
86
+ }
87
+ //#endregion
88
+ //#region ---- Helpers ----
89
+ /**
90
+ * When false, the business unit type cannot hold direct positions (no head-assignment prompt after create).
91
+ */
92
+ async typeAllowsDirectPositions(businessUnitTypeId) {
93
+ const id = businessUnitTypeId.trim();
94
+ if (!id) {
95
+ return true;
96
+ }
97
+ try {
98
+ const row = await this.entityService
99
+ .withEntity(RootConfig.module.name, RootConfig.entities.businessUnitType.name)
100
+ .data()
101
+ .byKey(id);
102
+ return row?.allowsDirectPositions !== false;
103
+ }
104
+ catch {
105
+ return true;
106
+ }
107
+ }
108
+ normalizeOptionalId(value) {
109
+ if (value == null) {
110
+ return undefined;
111
+ }
112
+ const s = String(value).trim();
113
+ return s.length > 0 ? s : undefined;
114
+ }
115
+ extractCreatedEntityId(data) {
116
+ if (data == null || typeof data !== 'object') {
117
+ return '';
118
+ }
119
+ const record = data;
120
+ const item = record['item'] ?? data;
121
+ if (item == null || typeof item !== 'object') {
122
+ return '';
123
+ }
124
+ const id = item['id'];
125
+ if (typeof id === 'string') {
126
+ return id.trim();
127
+ }
128
+ if (typeof id === 'number' && Number.isFinite(id)) {
129
+ return String(id);
130
+ }
131
+ return '';
132
+ }
133
+ async confirmAssignHeadNow() {
134
+ const title = await this.translationService.translateAsync('@organization-management:organization-chart.node-actions.assign-head-after-bu-create.title');
135
+ const message = await this.translationService.translateAsync('@organization-management:organization-chart.node-actions.assign-head-after-bu-create.message');
136
+ const result = await this.dialogService.confirm(title, message, 'primary', 'horizontal', false, 'cancel');
137
+ return result.result === true;
138
+ }
139
+ async resolveHeadPositionId(businessUnitId) {
140
+ const buData = this.entityService
141
+ .withEntity(RootConfig.module.name, RootConfig.entities.businessUnit.name)
142
+ .data();
143
+ const row = await buData.byKey(businessUnitId);
144
+ const raw = row?.headPositionId;
145
+ if (typeof raw === 'string') {
146
+ const id = raw.trim();
147
+ return id.length > 0 ? id : '';
148
+ }
149
+ return '';
150
+ }
151
+ async showMissingHeadPositionHint() {
152
+ const title = await this.translationService.translateAsync('@organization-management:organization-chart.node-actions.assign-head-missing-head-position.title');
153
+ const content = await this.translationService.translateAsync('@organization-management:organization-chart.node-actions.assign-head-missing-head-position.message');
154
+ this.toastService.show({ color: 'warning', title, content });
155
+ }
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddBusinessUnitToBusinessUnitCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
157
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddBusinessUnitToBusinessUnitCommand, providedIn: 'root' }); }
158
+ }
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddBusinessUnitToBusinessUnitCommand, decorators: [{
160
+ type: Injectable,
161
+ args: [{ providedIn: 'root' }]
162
+ }] });
163
+
164
+ export { AXMAddBusinessUnitToBusinessUnitCommand };
165
+ //# sourceMappingURL=acorex-modules-organization-management-add-business-unit-to-business-unit.command-BEJyfR3P.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-organization-management-add-business-unit-to-business-unit.command-BEJyfR3P.mjs","sources":["../../../../libs/modules/organization-management/src/lib/features/organization-chart/commands/add-business-unit-to-business-unit.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\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 { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { AXPCommand, AXPCommandService } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND } from '../../../commands.keys';\nimport { RootConfig } from '../../../const';\nimport type { AXMOrganizationManagementBusinessUnitEntityModel } from '../../../entities/business-unit/business-unit.types';\n\n//#endregion\n\nexport interface AXMAddBusinessUnitToBusinessUnitInput {\n /** Parent BU when adding under a business unit; omit or empty from company root. */\n parentBusinessUnitId?: string | null;\n typeId: string;\n}\n\nexport interface AXMAddBusinessUnitToBusinessUnitResult {\n childBusinessUnitId: string;\n /** True when HCM position assignment for the unit head completed successfully. */\n headAssignCompleted?: boolean;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMAddBusinessUnitToBusinessUnitCommand\n implements AXPCommand<AXMAddBusinessUnitToBusinessUnitInput, AXMAddBusinessUnitToBusinessUnitResult>\n{\n //#region ---- Services & Dependencies ----\n\n private readonly commandService = inject(AXPCommandService);\n private readonly entityService = inject(AXPEntityService);\n private readonly translationService = inject(AXTranslationService);\n private readonly dialogService = inject(AXDialogService);\n private readonly toastService = inject(AXToastService);\n private readonly sessionService = inject(AXPSessionService);\n\n private readonly positionAssignmentCreatePermission =\n 'HumanCapitalManagement:Permission:PositionAssignment.Create';\n\n //#endregion\n\n //#region ---- Command ----\n\n async execute(\n input: AXMAddBusinessUnitToBusinessUnitInput,\n ): Promise<AXPExecuteCommandResult<AXMAddBusinessUnitToBusinessUnitResult>> {\n const typeId = input?.typeId?.trim() ?? '';\n if (!typeId) {\n return { success: false };\n }\n\n const parentId = this.normalizeOptionalId(input?.parentBusinessUnitId);\n\n const createResult = await this.commandService.execute('Entity:Create', {\n __context__: {\n entity: RootConfig.entities.businessUnit.source,\n entityInfo: {\n module: RootConfig.module.name,\n name: RootConfig.entities.businessUnit.name,\n title: RootConfig.entities.businessUnit.title,\n parentKey: 'parentId',\n },\n data: {\n ...(parentId ? { parentId } : {}),\n typeId,\n },\n options: {\n process: {\n redirect: false,\n },\n },\n },\n });\n\n if (!createResult?.success) {\n return { success: false };\n }\n\n const childBusinessUnitId = this.extractCreatedEntityId(createResult.data);\n if (!childBusinessUnitId) {\n return { success: true };\n }\n\n if (!(await this.typeAllowsDirectPositions(typeId))) {\n return { success: true, data: { childBusinessUnitId } };\n }\n\n if (!this.sessionService.authorize(this.positionAssignmentCreatePermission)) {\n return { success: true, data: { childBusinessUnitId } };\n }\n\n if (!(await this.confirmAssignHeadNow())) {\n return { success: true, data: { childBusinessUnitId } };\n }\n\n const headPositionId = await this.resolveHeadPositionId(childBusinessUnitId);\n if (!headPositionId) {\n await this.showMissingHeadPositionHint();\n return { success: true, data: { childBusinessUnitId } };\n }\n\n const assignResult = await this.commandService.execute(AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND, {\n data: {\n businessUnitId: childBusinessUnitId,\n positionId: headPositionId,\n isPrimary: true,\n },\n });\n\n return {\n success: true,\n data: {\n childBusinessUnitId,\n headAssignCompleted: assignResult?.success === true,\n },\n };\n }\n\n //#endregion\n\n //#region ---- Helpers ----\n\n /**\n * When false, the business unit type cannot hold direct positions (no head-assignment prompt after create).\n */\n private async typeAllowsDirectPositions(businessUnitTypeId: string): Promise<boolean> {\n const id = businessUnitTypeId.trim();\n if (!id) {\n return true;\n }\n try {\n const row = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.businessUnitType.name)\n .data()\n .byKey(id);\n return (row as { allowsDirectPositions?: boolean } | null)?.allowsDirectPositions !== false;\n } catch {\n return true;\n }\n }\n\n private normalizeOptionalId(value: unknown): string | undefined {\n if (value == null) {\n return undefined;\n }\n const s = String(value).trim();\n return s.length > 0 ? s : undefined;\n }\n\n private extractCreatedEntityId(data: unknown): string {\n if (data == null || typeof data !== 'object') {\n return '';\n }\n const record = data as Record<string, unknown>;\n const item = record['item'] ?? data;\n if (item == null || typeof item !== 'object') {\n return '';\n }\n const id = (item as Record<string, unknown>)['id'];\n if (typeof id === 'string') {\n return id.trim();\n }\n if (typeof id === 'number' && Number.isFinite(id)) {\n return String(id);\n }\n return '';\n }\n\n private async confirmAssignHeadNow(): Promise<boolean> {\n const title = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-head-after-bu-create.title',\n );\n const message = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-head-after-bu-create.message',\n );\n const result = await this.dialogService.confirm(title, message, 'primary', 'horizontal', false, 'cancel');\n return result.result === true;\n }\n\n private async resolveHeadPositionId(businessUnitId: string): Promise<string> {\n const buData = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.businessUnit.name)\n .data<string, AXMOrganizationManagementBusinessUnitEntityModel>();\n const row = await buData.byKey(businessUnitId);\n const raw = row?.headPositionId;\n if (typeof raw === 'string') {\n const id = raw.trim();\n return id.length > 0 ? id : '';\n }\n return '';\n }\n\n private async showMissingHeadPositionHint(): Promise<void> {\n const title = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-head-missing-head-position.title',\n );\n const content = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-head-missing-head-position.message',\n );\n this.toastService.show({ color: 'warning', title, content });\n }\n\n //#endregion\n}\n"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { AXPEntityService, AXPEntityDefinitionRegistryService, AXPEntityDataSele
5
5
  import { AXPCommandService } from '@acorex/platform/runtime';
6
6
  import * as i0 from '@angular/core';
7
7
  import { inject, Injectable } from '@angular/core';
8
- import { R as RootConfig, g as AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND } from './acorex-modules-organization-management-acorex-modules-organization-management-Bu8fRj_5.mjs';
8
+ import { R as RootConfig, i as AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND } from './acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs';
9
9
 
10
10
  //#region ---- Imports ----
11
11
  class AXMAddPositionToBusinessUnitCommand {
@@ -34,6 +34,10 @@ class AXMAddPositionToBusinessUnitCommand {
34
34
  if (!businessUnit?.id) {
35
35
  return { success: false };
36
36
  }
37
+ if (!(await this.businessUnitTypeAllowsDirectPositions(businessUnit))) {
38
+ const text = await this.translationService.translateAsync('@organization-management:organization-chart.commands.add-position.type-not-allowed');
39
+ return { success: false, message: { text } };
40
+ }
37
41
  const existingIds = this.normalizePositionIds(businessUnit.positionIds);
38
42
  const positionEntity = await this.entityRegistry.resolve(RootConfig.module.name, RootConfig.entities.position.name);
39
43
  if (!positionEntity) {
@@ -76,6 +80,32 @@ class AXMAddPositionToBusinessUnitCommand {
76
80
  }
77
81
  //#endregion
78
82
  //#region ---- Helpers ----
83
+ /**
84
+ * Returns false when the business unit type explicitly disallows direct positions; true otherwise.
85
+ */
86
+ async businessUnitTypeAllowsDirectPositions(bu) {
87
+ const nested = bu.type?.allowsDirectPositions;
88
+ if (nested === false) {
89
+ return false;
90
+ }
91
+ if (nested === true) {
92
+ return true;
93
+ }
94
+ const typeId = bu.typeId?.trim();
95
+ if (!typeId) {
96
+ return true;
97
+ }
98
+ try {
99
+ const row = await this.entityService
100
+ .withEntity(RootConfig.module.name, RootConfig.entities.businessUnitType.name)
101
+ .data()
102
+ .byKey(typeId);
103
+ return row?.allowsDirectPositions !== false;
104
+ }
105
+ catch {
106
+ return true;
107
+ }
108
+ }
79
109
  normalizePositionIds(value) {
80
110
  if (value == null) {
81
111
  return [];
@@ -106,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
106
136
  }] });
107
137
 
108
138
  export { AXMAddPositionToBusinessUnitCommand };
109
- //# sourceMappingURL=acorex-modules-organization-management-add-position-to-business-unit.command-Qej_boIY.mjs.map
139
+ //# sourceMappingURL=acorex-modules-organization-management-add-position-to-business-unit.command-DKgxg9q5.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-organization-management-add-position-to-business-unit.command-DKgxg9q5.mjs","sources":["../../../../libs/modules/organization-management/src/lib/features/organization-chart/commands/add-position-to-business-unit.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPExecuteCommandResult } from '@acorex/platform/core';\nimport {\n AXPEntityDataSelectorService,\n AXPEntityDefinitionRegistryService,\n AXPEntityService,\n} from '@acorex/platform/layout/entity';\nimport { AXPCommand, AXPCommandService } from '@acorex/platform/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND } from '../../../commands.keys';\nimport { RootConfig } from '../../../const';\nimport type { AXMOrganizationManagementBusinessUnitEntityModel } from '../../../entities/business-unit/business-unit.types';\n\n//#endregion\n\nexport interface AXMAddPositionToBusinessUnitInput {\n businessUnitId: string;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMAddPositionToBusinessUnitCommand\n implements AXPCommand<AXMAddPositionToBusinessUnitInput, { businessUnitId: string; positionId: string }>\n{\n //#region ---- Services & Dependencies ----\n\n private readonly commandService = inject(AXPCommandService);\n private readonly entityService = inject(AXPEntityService);\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly entitySelector = inject(AXPEntityDataSelectorService);\n private readonly translationService = inject(AXTranslationService);\n private readonly dialogService = inject(AXDialogService);\n private readonly sessionService = inject(AXPSessionService);\n\n private readonly positionAssignmentCreatePermission =\n 'HumanCapitalManagement:Permission:PositionAssignment.Create';\n\n //#endregion\n\n //#region ---- Command ----\n\n async execute(\n input: AXMAddPositionToBusinessUnitInput,\n ): Promise<AXPExecuteCommandResult<{ businessUnitId: string; positionId: string }>> {\n const businessUnitId = input?.businessUnitId?.trim() ?? '';\n if (!businessUnitId) {\n return { success: false };\n }\n\n const buData = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.businessUnit.name)\n .data<string, AXMOrganizationManagementBusinessUnitEntityModel>();\n\n const businessUnit = await buData.byKey(businessUnitId);\n if (!businessUnit?.id) {\n return { success: false };\n }\n\n if (!(await this.businessUnitTypeAllowsDirectPositions(businessUnit))) {\n const text = await this.translationService.translateAsync(\n '@organization-management:organization-chart.commands.add-position.type-not-allowed',\n );\n return { success: false, message: { text } };\n }\n\n const existingIds = this.normalizePositionIds(businessUnit.positionIds);\n const positionEntity = await this.entityRegistry.resolve(\n RootConfig.module.name,\n RootConfig.entities.position.name,\n );\n if (!positionEntity) {\n return { success: false };\n }\n\n const selectTitle = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.select-position',\n );\n\n const selectorResult = await this.entitySelector.open({\n entity: positionEntity,\n title: selectTitle,\n allowMultiple: false,\n columns: ['code', 'title'],\n });\n\n const selected = selectorResult?.items?.[0];\n const rawPositionId = selected?.['id'] ?? selected?.['_id'];\n const positionId = typeof rawPositionId === 'string' && rawPositionId.trim().length > 0 ? rawPositionId : '';\n if (!positionId) {\n return { success: false };\n }\n\n if (existingIds.includes(positionId)) {\n return { success: true, data: { businessUnitId, positionId } };\n }\n\n const nextPositionIds = [...existingIds, positionId];\n\n try {\n await buData.update(businessUnitId, { positionIds: nextPositionIds });\n } catch {\n return { success: false };\n }\n\n const canAssign = this.sessionService.authorize(this.positionAssignmentCreatePermission);\n if (canAssign && (await this.confirmAssignEmployee())) {\n await this.commandService.execute(AXM_HCM_POSITION_ASSIGNMENT_ASSIGN_COMMAND, {\n data: {\n businessUnitId,\n positionId,\n isPrimary: false,\n },\n });\n }\n\n return { success: true, data: { businessUnitId, positionId } };\n }\n\n //#endregion\n\n //#region ---- Helpers ----\n\n /**\n * Returns false when the business unit type explicitly disallows direct positions; true otherwise.\n */\n private async businessUnitTypeAllowsDirectPositions(\n bu: AXMOrganizationManagementBusinessUnitEntityModel,\n ): Promise<boolean> {\n const nested = bu.type?.allowsDirectPositions;\n if (nested === false) {\n return false;\n }\n if (nested === true) {\n return true;\n }\n const typeId = bu.typeId?.trim();\n if (!typeId) {\n return true;\n }\n try {\n const row = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.businessUnitType.name)\n .data()\n .byKey(typeId);\n return (row as { allowsDirectPositions?: boolean } | null)?.allowsDirectPositions !== false;\n } catch {\n return true;\n }\n }\n\n private normalizePositionIds(value: unknown): string[] {\n if (value == null) {\n return [];\n }\n if (Array.isArray(value)) {\n return value.map((v) => String(v ?? '').trim()).filter((id) => id.length > 0);\n }\n if (typeof value === 'string') {\n return value\n .split(',')\n .map((id) => id.trim())\n .filter((id) => id.length > 0);\n }\n return [];\n }\n\n private async confirmAssignEmployee(): Promise<boolean> {\n const title = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-employee-confirm.title',\n );\n const message = await this.translationService.translateAsync(\n '@organization-management:organization-chart.node-actions.assign-employee-confirm.message',\n );\n const result = await this.dialogService.confirm(title, message, 'primary', 'horizontal', false, 'cancel');\n return result.result === true;\n }\n\n //#endregion\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ import { AXDialogService } from '@acorex/components/dialog';
2
+ import { AXToastService } from '@acorex/components/toast';
3
+ import { AXTranslationService } from '@acorex/core/translation';
4
+ import { AXPEntityService } from '@acorex/platform/layout/entity';
5
+ import { AXPCommandService } from '@acorex/platform/runtime';
6
+ import * as i0 from '@angular/core';
7
+ import { inject, Injectable } from '@angular/core';
8
+ import { R as RootConfig } from './acorex-modules-organization-management-acorex-modules-organization-management-CGzZcKEy.mjs';
9
+
10
+ //#region ---- Imports ----
11
+ /**
12
+ * Opens **Team** create (`Entity:Create`), then links the new team to the given business unit via **TeamBusinessUnit**
13
+ * (`isPrimary: true`, `effectiveFrom` = today) and optionally navigates to the team record.
14
+ */
15
+ class AXMAddTeamToBusinessUnitCommand {
16
+ constructor() {
17
+ //#region ---- Services & Dependencies ----
18
+ this.commandService = inject(AXPCommandService);
19
+ this.entityService = inject(AXPEntityService);
20
+ this.dialogService = inject(AXDialogService);
21
+ this.toastService = inject(AXToastService);
22
+ this.translationService = inject(AXTranslationService);
23
+ }
24
+ //#endregion
25
+ //#region ---- AXPCommand ----
26
+ async execute(input) {
27
+ const businessUnitId = input?.businessUnitId?.trim() ?? '';
28
+ if (!businessUnitId) {
29
+ return { success: false };
30
+ }
31
+ const createResult = await this.commandService.execute('Entity:Create', {
32
+ __context__: {
33
+ entity: RootConfig.entities.team.source,
34
+ entityInfo: {
35
+ module: RootConfig.module.name,
36
+ name: RootConfig.entities.team.name,
37
+ title: RootConfig.entities.team.title,
38
+ },
39
+ data: {},
40
+ options: {
41
+ process: {
42
+ redirect: false,
43
+ },
44
+ },
45
+ },
46
+ });
47
+ if (!createResult?.success) {
48
+ return { success: false };
49
+ }
50
+ const teamId = this.extractCreatedEntityId(createResult.data);
51
+ if (!teamId) {
52
+ return { success: false };
53
+ }
54
+ let linkSucceeded = false;
55
+ try {
56
+ await this.entityService
57
+ .withEntity(RootConfig.module.name, RootConfig.entities.teamBusinessUnit.name)
58
+ .data()
59
+ .create({
60
+ teamId,
61
+ businessUnitId,
62
+ isPrimary: true,
63
+ effectiveFrom: this.todayLocalDateOnly(),
64
+ });
65
+ linkSucceeded = true;
66
+ }
67
+ catch (e) {
68
+ const content = e instanceof Error
69
+ ? e.message
70
+ : await this.translationService.translateAsync('@general:messages.generic.error.description');
71
+ const title = await this.translationService.translateAsync('@general:messages.generic.error.title');
72
+ this.toastService.show({ color: 'warning', title, content });
73
+ }
74
+ if (await this.confirmOpenTeamDetails(linkSucceeded)) {
75
+ await this.commandService.execute('Entity:OpenDetails', {
76
+ entity: RootConfig.entities.team.source,
77
+ data: { id: teamId },
78
+ });
79
+ }
80
+ return { success: true, data: { teamId } };
81
+ }
82
+ //#endregion
83
+ //#region ---- Helpers ----
84
+ /**
85
+ * Local calendar date as `YYYY-MM-DD` for {@link AXMOrganizationManagementTeamBusinessUnitEntityModel.effectiveFrom}.
86
+ */
87
+ todayLocalDateOnly() {
88
+ const d = new Date();
89
+ const y = d.getFullYear();
90
+ const m = String(d.getMonth() + 1).padStart(2, '0');
91
+ const day = String(d.getDate()).padStart(2, '0');
92
+ return `${y}-${m}-${day}`;
93
+ }
94
+ async confirmOpenTeamDetails(linkSucceeded) {
95
+ const title = await this.translationService.translateAsync('@organization-management:organization-chart.node-actions.navigate-to-team-after-create.title');
96
+ const messageKey = linkSucceeded
97
+ ? '@organization-management:organization-chart.node-actions.navigate-to-team-after-create.message'
98
+ : '@organization-management:organization-chart.node-actions.navigate-to-team-after-create.message-link-failed';
99
+ const message = await this.translationService.translateAsync(messageKey);
100
+ const result = await this.dialogService.confirm(title, message, 'primary', 'horizontal', false, 'cancel');
101
+ return result.result === true;
102
+ }
103
+ extractCreatedEntityId(data) {
104
+ if (data == null || typeof data !== 'object') {
105
+ return '';
106
+ }
107
+ const record = data;
108
+ const item = record['item'] ?? data;
109
+ if (item == null || typeof item !== 'object') {
110
+ return '';
111
+ }
112
+ const id = item['id'];
113
+ if (typeof id === 'string') {
114
+ return id.trim();
115
+ }
116
+ if (typeof id === 'number' && Number.isFinite(id)) {
117
+ return String(id);
118
+ }
119
+ return '';
120
+ }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddTeamToBusinessUnitCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
122
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddTeamToBusinessUnitCommand, providedIn: 'root' }); }
123
+ }
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAddTeamToBusinessUnitCommand, decorators: [{
125
+ type: Injectable,
126
+ args: [{ providedIn: 'root' }]
127
+ }] });
128
+
129
+ export { AXMAddTeamToBusinessUnitCommand };
130
+ //# sourceMappingURL=acorex-modules-organization-management-add-team-to-business-unit.command-DJJT7BXT.mjs.map