@acorex/modules 21.0.0-next.70 → 21.0.0-next.72

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 (448) hide show
  1. package/fesm2022/acorex-modules-ai-management.mjs +108 -16
  2. package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
  3. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-IHgQ8RVH.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-D7bHX4-0.mjs} +665 -496
  4. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-D7bHX4-0.mjs.map +1 -0
  5. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-B95yBXgi.mjs → acorex-modules-assessment-management-assessment-case.entity-Cpbj5sCP.mjs} +2 -2
  6. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-B95yBXgi.mjs.map → acorex-modules-assessment-management-assessment-case.entity-Cpbj5sCP.mjs.map} +1 -1
  7. package/fesm2022/{acorex-modules-assessment-management-assessment-session-answers-view.util-Jhy94fgV.mjs → acorex-modules-assessment-management-assessment-session-answers-view.util-ALsxM0ww.mjs} +2 -2
  8. package/fesm2022/{acorex-modules-assessment-management-assessment-session-answers-view.util-Jhy94fgV.mjs.map → acorex-modules-assessment-management-assessment-session-answers-view.util-ALsxM0ww.mjs.map} +1 -1
  9. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-DBhBxqh1.mjs → acorex-modules-assessment-management-assessment-session.entity-CMW7wsoN.mjs} +2 -2
  10. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-DBhBxqh1.mjs.map → acorex-modules-assessment-management-assessment-session.entity-CMW7wsoN.mjs.map} +1 -1
  11. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-nkFpnKE2.mjs → acorex-modules-assessment-management-fill-assessment-session.command-C-dGKO7p.mjs} +3 -3
  12. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-C-dGKO7p.mjs.map +1 -0
  13. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-B29oj3WB.mjs → acorex-modules-assessment-management-preview-question.command-CBewUZSF.mjs} +2 -2
  14. package/fesm2022/{acorex-modules-assessment-management-preview-question.command-B29oj3WB.mjs.map → acorex-modules-assessment-management-preview-question.command-CBewUZSF.mjs.map} +1 -1
  15. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-Sd4gRHo5.mjs → acorex-modules-assessment-management-preview-questionnaire.command-DlwBZ7mO.mjs} +18 -9
  16. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-DlwBZ7mO.mjs.map +1 -0
  17. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BCtQO_j7.mjs → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BEhxeR8A.mjs} +2 -2
  18. package/fesm2022/{acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BCtQO_j7.mjs.map → acorex-modules-assessment-management-question-bank-interface-editor-widget-edit.component-BEhxeR8A.mjs.map} +1 -1
  19. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-RLIfWCzq.mjs → acorex-modules-assessment-management-question-bank-item.entity-CfCWKqN5.mjs} +3 -2
  20. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-CfCWKqN5.mjs.map +1 -0
  21. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-B8LMKqVO.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-C03wF6Oy.mjs} +19 -5
  22. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-C03wF6Oy.mjs.map +1 -0
  23. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-CZBnfCYE.mjs → acorex-modules-assessment-management-questionnaire.entity-CPMGkhGu.mjs} +4 -2
  24. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-CPMGkhGu.mjs.map +1 -0
  25. package/fesm2022/{acorex-modules-assessment-management-review-assessment-session.command-hB_LFUSE.mjs → acorex-modules-assessment-management-review-assessment-session.command-XK3IK3MH.mjs} +3 -3
  26. package/fesm2022/{acorex-modules-assessment-management-review-assessment-session.command-hB_LFUSE.mjs.map → acorex-modules-assessment-management-review-assessment-session.command-XK3IK3MH.mjs.map} +1 -1
  27. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-BN-nYHha.mjs → acorex-modules-assessment-management-view-session-answers.command-BPoF0v9C.mjs} +3 -3
  28. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-BN-nYHha.mjs.map → acorex-modules-assessment-management-view-session-answers.command-BPoF0v9C.mjs.map} +1 -1
  29. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  30. package/fesm2022/{acorex-modules-asset-management-acorex-modules-asset-management-BdiaXlkx.mjs → acorex-modules-asset-management-acorex-modules-asset-management-BCs0QS-r.mjs} +11 -8
  31. package/fesm2022/{acorex-modules-asset-management-acorex-modules-asset-management-BdiaXlkx.mjs.map → acorex-modules-asset-management-acorex-modules-asset-management-BCs0QS-r.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-Bf9nJTkD.mjs → acorex-modules-asset-management-asset-system-assignment.entity-B0sf4MzL.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-asset-management-asset-system-assignment.entity-Bf9nJTkD.mjs.map → acorex-modules-asset-management-asset-system-assignment.entity-B0sf4MzL.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-Cbzu3bqC.mjs → acorex-modules-asset-management-asset-system-type.entity-Cpcgr3KS.mjs} +2 -2
  35. package/fesm2022/{acorex-modules-asset-management-asset-system-type.entity-Cbzu3bqC.mjs.map → acorex-modules-asset-management-asset-system-type.entity-Cpcgr3KS.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-DA7dO3eE.mjs → acorex-modules-asset-management-asset-system.entity-CEuEjyuQ.mjs} +2 -2
  37. package/fesm2022/{acorex-modules-asset-management-asset-system.entity-DA7dO3eE.mjs.map → acorex-modules-asset-management-asset-system.entity-CEuEjyuQ.mjs.map} +1 -1
  38. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-C9B-TUQD.mjs → acorex-modules-asset-management-asset-type-section-component.entity-CwaPrUlk.mjs} +2 -2
  39. package/fesm2022/{acorex-modules-asset-management-asset-type-section-component.entity-C9B-TUQD.mjs.map → acorex-modules-asset-management-asset-type-section-component.entity-CwaPrUlk.mjs.map} +1 -1
  40. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-BNz1Zfox.mjs → acorex-modules-asset-management-asset-type-section.entity-CK0dAIU4.mjs} +2 -2
  41. package/fesm2022/{acorex-modules-asset-management-asset-type-section.entity-BNz1Zfox.mjs.map → acorex-modules-asset-management-asset-type-section.entity-CK0dAIU4.mjs.map} +1 -1
  42. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-D_bBxBKI.mjs → acorex-modules-asset-management-asset-type.entity-DexywYoA.mjs} +2 -2
  43. package/fesm2022/{acorex-modules-asset-management-asset-type.entity-D_bBxBKI.mjs.map → acorex-modules-asset-management-asset-type.entity-DexywYoA.mjs.map} +1 -1
  44. package/fesm2022/{acorex-modules-asset-management-asset.entity-Cf_H7edH.mjs → acorex-modules-asset-management-asset.entity-BNj3kuHC.mjs} +2 -2
  45. package/fesm2022/{acorex-modules-asset-management-asset.entity-Cf_H7edH.mjs.map → acorex-modules-asset-management-asset.entity-BNj3kuHC.mjs.map} +1 -1
  46. package/fesm2022/acorex-modules-asset-management.mjs +1 -1
  47. package/fesm2022/acorex-modules-auth-acorex-modules-auth-JEkso4J7.mjs +1580 -0
  48. package/fesm2022/acorex-modules-auth-acorex-modules-auth-JEkso4J7.mjs.map +1 -0
  49. package/fesm2022/{acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs → acorex-modules-auth-app-chooser.component-MjGWaBI0.mjs} +5 -6
  50. package/fesm2022/acorex-modules-auth-app-chooser.component-MjGWaBI0.mjs.map +1 -0
  51. package/fesm2022/acorex-modules-auth-change-password.command-Ctyw3WfE.mjs +32 -0
  52. package/fesm2022/acorex-modules-auth-change-password.command-Ctyw3WfE.mjs.map +1 -0
  53. package/fesm2022/acorex-modules-auth-change-photo.command-_vxTFH0X.mjs +32 -0
  54. package/fesm2022/acorex-modules-auth-change-photo.command-_vxTFH0X.mjs.map +1 -0
  55. package/fesm2022/acorex-modules-auth-edit-signature.command-CcTJJwAX.mjs +32 -0
  56. package/fesm2022/acorex-modules-auth-edit-signature.command-CcTJJwAX.mjs.map +1 -0
  57. package/fesm2022/{acorex-modules-auth-login.module-D1-POhQk.mjs → acorex-modules-auth-login.module-FJxkiTeX.mjs} +4 -4
  58. package/fesm2022/{acorex-modules-auth-login.module-D1-POhQk.mjs.map → acorex-modules-auth-login.module-FJxkiTeX.mjs.map} +1 -1
  59. package/fesm2022/acorex-modules-auth-master.layout-B4Vpqg2F.mjs +25 -0
  60. package/fesm2022/acorex-modules-auth-master.layout-B4Vpqg2F.mjs.map +1 -0
  61. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs → acorex-modules-auth-oauth-callback.component-It5tkYuf.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BhfFPeWT.mjs.map → acorex-modules-auth-oauth-callback.component-It5tkYuf.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs → acorex-modules-auth-open-sessions.command-Qik0eKUR.mjs} +32 -7
  64. package/fesm2022/acorex-modules-auth-open-sessions.command-Qik0eKUR.mjs.map +1 -0
  65. package/fesm2022/{acorex-modules-auth-password.component-BMVSHYy7.mjs → acorex-modules-auth-password.component-B2BIaXZ_.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-auth-password.component-BMVSHYy7.mjs.map → acorex-modules-auth-password.component-B2BIaXZ_.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-auth-password.component-Cm8DsDvu.mjs → acorex-modules-auth-password.component-BRnlp4j1.mjs} +6 -6
  68. package/fesm2022/{acorex-modules-auth-password.component-Cm8DsDvu.mjs.map → acorex-modules-auth-password.component-BRnlp4j1.mjs.map} +1 -1
  69. package/fesm2022/acorex-modules-auth-profile-activity-chart.component-CmtkTEI5.mjs +177 -0
  70. package/fesm2022/acorex-modules-auth-profile-activity-chart.component-CmtkTEI5.mjs.map +1 -0
  71. package/fesm2022/acorex-modules-auth-profile-coming-soon.command-DBbFbzAx.mjs +31 -0
  72. package/fesm2022/acorex-modules-auth-profile-coming-soon.command-DBbFbzAx.mjs.map +1 -0
  73. package/fesm2022/acorex-modules-auth-profile-delete-account-danger-zone.component-62K4A_lM.mjs +78 -0
  74. package/fesm2022/acorex-modules-auth-profile-delete-account-danger-zone.component-62K4A_lM.mjs.map +1 -0
  75. package/fesm2022/acorex-modules-auth-profile-page-component.provider-Dz9yFSnA.mjs +27 -0
  76. package/fesm2022/acorex-modules-auth-profile-page-component.provider-Dz9yFSnA.mjs.map +1 -0
  77. package/fesm2022/acorex-modules-auth-profile-page.component-BGkPr1_o.mjs +370 -0
  78. package/fesm2022/acorex-modules-auth-profile-page.component-BGkPr1_o.mjs.map +1 -0
  79. package/fesm2022/{acorex-modules-auth-routes-B85OzgW1.mjs → acorex-modules-auth-routes-D6PLdcTC.mjs} +2 -2
  80. package/fesm2022/{acorex-modules-auth-routes-B85OzgW1.mjs.map → acorex-modules-auth-routes-D6PLdcTC.mjs.map} +1 -1
  81. package/fesm2022/acorex-modules-auth-signout-command-IUSkq50M.mjs +24 -0
  82. package/fesm2022/acorex-modules-auth-signout-command-IUSkq50M.mjs.map +1 -0
  83. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs → acorex-modules-auth-tenant-chooser.component-qGfNSQ6H.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-D6_rL2WP.mjs.map → acorex-modules-auth-tenant-chooser.component-qGfNSQ6H.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-auth-two-factor.module-DfyDQIw-.mjs → acorex-modules-auth-two-factor.module-DcvqZOIq.mjs} +2 -2
  86. package/fesm2022/{acorex-modules-auth-two-factor.module-DfyDQIw-.mjs.map → acorex-modules-auth-two-factor.module-DcvqZOIq.mjs.map} +1 -1
  87. package/fesm2022/acorex-modules-auth.mjs +1 -1
  88. package/fesm2022/acorex-modules-business-core.mjs +2 -2
  89. package/fesm2022/acorex-modules-business-core.mjs.map +1 -1
  90. package/fesm2022/acorex-modules-calendar-management-datasource.provider-CnxTy81J.mjs +225 -0
  91. package/fesm2022/acorex-modules-calendar-management-datasource.provider-CnxTy81J.mjs.map +1 -0
  92. package/fesm2022/acorex-modules-calendar-management.mjs +481 -392
  93. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  94. package/fesm2022/acorex-modules-common.mjs +524 -30
  95. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  96. package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs → acorex-modules-content-management-acorex-modules-content-management-Bc_tCoHa.mjs} +6 -6
  97. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-Bc_tCoHa.mjs.map +1 -0
  98. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs → acorex-modules-content-management-permission-definition.provider-2-_i1Kxd.mjs} +2 -2
  99. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-D9woYm2m.mjs.map → acorex-modules-content-management-permission-definition.provider-2-_i1Kxd.mjs.map} +1 -1
  100. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs → acorex-modules-content-management-template-content-editor-widget-edit.component-BdNwhaJ8.mjs} +2 -2
  101. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-edit.component-CQa1h31v.mjs.map → acorex-modules-content-management-template-content-editor-widget-edit.component-BdNwhaJ8.mjs.map} +1 -1
  102. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs → acorex-modules-content-management-template-content-editor-widget-view.component-Cwnqyt0U.mjs} +2 -2
  103. package/fesm2022/{acorex-modules-content-management-template-content-editor-widget-view.component-DzM4oMNV.mjs.map → acorex-modules-content-management-template-content-editor-widget-view.component-Cwnqyt0U.mjs.map} +1 -1
  104. package/fesm2022/acorex-modules-content-management.mjs +1 -1
  105. package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs → acorex-modules-conversation-acorex-modules-conversation-BX09r8Xj.mjs} +801 -237
  106. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-BX09r8Xj.mjs.map +1 -0
  107. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-hMiSfvL2.mjs +329 -0
  108. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-hMiSfvL2.mjs.map +1 -0
  109. package/fesm2022/{acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs → acorex-modules-conversation-comments-page.component-BJu6CoNR.mjs} +18 -6
  110. package/fesm2022/acorex-modules-conversation-comments-page.component-BJu6CoNR.mjs.map +1 -0
  111. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs → acorex-modules-conversation-send-assist-chat-message.command-B471NQRh.mjs} +2 -2
  112. package/fesm2022/{acorex-modules-conversation-send-assist-chat-message.command-CuYYEqhb.mjs.map → acorex-modules-conversation-send-assist-chat-message.command-B471NQRh.mjs.map} +1 -1
  113. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs → acorex-modules-conversation-start-assist-chat.command-CasClVbR.mjs} +2 -2
  114. package/fesm2022/{acorex-modules-conversation-start-assist-chat.command-BKwrZJDs.mjs.map → acorex-modules-conversation-start-assist-chat.command-CasClVbR.mjs.map} +1 -1
  115. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  116. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-9MoalNjW.mjs} +53 -21
  117. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-9MoalNjW.mjs.map +1 -0
  118. package/fesm2022/{acorex-modules-dashboard-management-index-Bhm8mAON.mjs → acorex-modules-dashboard-management-index-Dsu3Yw8O.mjs} +2 -2
  119. package/fesm2022/{acorex-modules-dashboard-management-index-Bhm8mAON.mjs.map → acorex-modules-dashboard-management-index-Dsu3Yw8O.mjs.map} +1 -1
  120. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  121. package/fesm2022/{acorex-modules-data-management-index-DEm_BsbE.mjs → acorex-modules-data-management-index-CxVSgxTM.mjs} +4 -1
  122. package/fesm2022/acorex-modules-data-management-index-CxVSgxTM.mjs.map +1 -0
  123. package/fesm2022/acorex-modules-data-management.mjs +2 -2
  124. package/fesm2022/acorex-modules-document-management.mjs +7 -4
  125. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  126. package/fesm2022/acorex-modules-financial-core.mjs +7 -7
  127. package/fesm2022/acorex-modules-financial-core.mjs.map +1 -1
  128. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-Cb7_mEJt.mjs} +237 -52
  129. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-Cb7_mEJt.mjs.map +1 -0
  130. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs → acorex-modules-human-capital-management-approve-leave-request.command-wO2u1IKg.mjs} +2 -2
  131. package/fesm2022/{acorex-modules-human-capital-management-approve-leave-request.command-TavX6h7z.mjs.map → acorex-modules-human-capital-management-approve-leave-request.command-wO2u1IKg.mjs.map} +1 -1
  132. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs → acorex-modules-human-capital-management-assign-position-assignment.command-BDesaehJ.mjs} +2 -2
  133. package/fesm2022/{acorex-modules-human-capital-management-assign-position-assignment.command-ZEmi88vf.mjs.map → acorex-modules-human-capital-management-assign-position-assignment.command-BDesaehJ.mjs.map} +1 -1
  134. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs → acorex-modules-human-capital-management-cancel-leave-request.command-D8u45bHk.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-human-capital-management-cancel-leave-request.command-DzIMYIhe.mjs.map → acorex-modules-human-capital-management-cancel-leave-request.command-D8u45bHk.mjs.map} +1 -1
  136. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs → acorex-modules-human-capital-management-employee.entity-sq1G--OE.mjs} +22 -18
  137. package/fesm2022/acorex-modules-human-capital-management-employee.entity-sq1G--OE.mjs.map +1 -0
  138. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs → acorex-modules-human-capital-management-employment-type.entity-qgNm-AAZ.mjs} +2 -2
  139. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-BeiaEsNZ.mjs.map → acorex-modules-human-capital-management-employment-type.entity-qgNm-AAZ.mjs.map} +1 -1
  140. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs → acorex-modules-human-capital-management-leave-request.entity-DcdYnwyN.mjs} +19 -24
  141. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-DcdYnwyN.mjs.map +1 -0
  142. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs → acorex-modules-human-capital-management-leave-type.entity-Dr5YHs8p.mjs} +10 -4
  143. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-Dr5YHs8p.mjs.map +1 -0
  144. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs → acorex-modules-human-capital-management-lifecycle-event-type.entity-Bni4vgt5.mjs} +19 -74
  145. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-Bni4vgt5.mjs.map +1 -0
  146. package/fesm2022/{acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs → acorex-modules-human-capital-management-lifecycle-event.entity-ds4Iq82f.mjs} +6 -6
  147. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-ds4Iq82f.mjs.map +1 -0
  148. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs → acorex-modules-human-capital-management-position-assignment.entity-CalDJQrD.mjs} +2 -2
  149. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-Byxt921P.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-CalDJQrD.mjs.map} +1 -1
  150. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs → acorex-modules-human-capital-management-reject-leave-request.command-CshyWVLH.mjs} +2 -2
  151. package/fesm2022/{acorex-modules-human-capital-management-reject-leave-request.command-CAvjZTG9.mjs.map → acorex-modules-human-capital-management-reject-leave-request.command-CshyWVLH.mjs.map} +1 -1
  152. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs → acorex-modules-human-capital-management-revoke-position-assignment.command-BENxT4Qg.mjs} +2 -2
  153. package/fesm2022/{acorex-modules-human-capital-management-revoke-position-assignment.command-BeWrsQo8.mjs.map → acorex-modules-human-capital-management-revoke-position-assignment.command-BENxT4Qg.mjs.map} +1 -1
  154. package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-DjkzwxHN.mjs +242 -0
  155. package/fesm2022/acorex-modules-human-capital-management-start-leave-request-flow.command-DjkzwxHN.mjs.map +1 -0
  156. package/fesm2022/{acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs → acorex-modules-human-capital-management-start-lifecycle-event-flow.command-x8J2kneo.mjs} +9 -14
  157. package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-x8J2kneo.mjs.map +1 -0
  158. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  159. package/fesm2022/{acorex-modules-learning-management-course.entity-DUUgeikJ.mjs → acorex-modules-learning-management-course.entity-BG6TaQk4.mjs} +4 -4
  160. package/fesm2022/acorex-modules-learning-management-course.entity-BG6TaQk4.mjs.map +1 -0
  161. package/fesm2022/{acorex-modules-learning-management-enrollment.entity-CdJafrUh.mjs → acorex-modules-learning-management-enrollment.entity-DjpUDcLv.mjs} +5 -5
  162. package/fesm2022/acorex-modules-learning-management-enrollment.entity-DjpUDcLv.mjs.map +1 -0
  163. package/fesm2022/{acorex-modules-learning-management-learning-path.entity-Zo--bDto.mjs → acorex-modules-learning-management-learning-path.entity-C2S0VVeq.mjs} +2 -2
  164. package/fesm2022/acorex-modules-learning-management-learning-path.entity-C2S0VVeq.mjs.map +1 -0
  165. package/fesm2022/{acorex-modules-learning-management-skill.entity-VXkLbaD4.mjs → acorex-modules-learning-management-skill.entity-DAM-_nuT.mjs} +2 -2
  166. package/fesm2022/acorex-modules-learning-management-skill.entity-DAM-_nuT.mjs.map +1 -0
  167. package/fesm2022/{acorex-modules-learning-management-training.entity-C4KDv1uh.mjs → acorex-modules-learning-management-training.entity-THsY3DiM.mjs} +4 -4
  168. package/fesm2022/acorex-modules-learning-management-training.entity-THsY3DiM.mjs.map +1 -0
  169. package/fesm2022/acorex-modules-learning-management.mjs +5 -5
  170. package/fesm2022/{acorex-modules-locale-management-profiles-BOveGIcE.mjs → acorex-modules-locale-management-profiles-BYZa_Ti0.mjs} +23 -8
  171. package/fesm2022/acorex-modules-locale-management-profiles-BYZa_Ti0.mjs.map +1 -0
  172. package/fesm2022/acorex-modules-locale-management.mjs +31 -15
  173. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  174. package/fesm2022/acorex-modules-location-management.mjs +4 -4
  175. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  176. package/fesm2022/{acorex-modules-maintenance-management-acorex-modules-maintenance-management-DiM2aFgg.mjs → acorex-modules-maintenance-management-acorex-modules-maintenance-management-Xyu3jpEh.mjs} +14 -14
  177. package/fesm2022/acorex-modules-maintenance-management-acorex-modules-maintenance-management-Xyu3jpEh.mjs.map +1 -0
  178. package/fesm2022/{acorex-modules-maintenance-management-failure-effect.entity-BCMeHmxS.mjs → acorex-modules-maintenance-management-failure-effect.entity-CYQ3ExC3.mjs} +2 -2
  179. package/fesm2022/{acorex-modules-maintenance-management-failure-effect.entity-BCMeHmxS.mjs.map → acorex-modules-maintenance-management-failure-effect.entity-CYQ3ExC3.mjs.map} +1 -1
  180. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-asset-type.entity-ByBoVQ8D.mjs → acorex-modules-maintenance-management-failure-mode-asset-type.entity-Cz0tQkwZ.mjs} +2 -2
  181. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-asset-type.entity-ByBoVQ8D.mjs.map → acorex-modules-maintenance-management-failure-mode-asset-type.entity-Cz0tQkwZ.mjs.map} +1 -1
  182. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-mechanism.entity-BJs4KhkU.mjs → acorex-modules-maintenance-management-failure-mode-mechanism.entity-vqX88zIA.mjs} +2 -2
  183. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-mechanism.entity-BJs4KhkU.mjs.map → acorex-modules-maintenance-management-failure-mode-mechanism.entity-vqX88zIA.mjs.map} +1 -1
  184. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-solution.entity-rw24sQxb.mjs → acorex-modules-maintenance-management-failure-mode-solution.entity-CpefPKAY.mjs} +2 -2
  185. package/fesm2022/{acorex-modules-maintenance-management-failure-mode-solution.entity-rw24sQxb.mjs.map → acorex-modules-maintenance-management-failure-mode-solution.entity-CpefPKAY.mjs.map} +1 -1
  186. package/fesm2022/{acorex-modules-maintenance-management-failure-register-cause.entity-C_6sjW8z.mjs → acorex-modules-maintenance-management-failure-register-cause.entity-C1_4BQBR.mjs} +2 -2
  187. package/fesm2022/{acorex-modules-maintenance-management-failure-register-cause.entity-C_6sjW8z.mjs.map → acorex-modules-maintenance-management-failure-register-cause.entity-C1_4BQBR.mjs.map} +1 -1
  188. package/fesm2022/{acorex-modules-maintenance-management-failure-register-effect.entity-DCIAzSYQ.mjs → acorex-modules-maintenance-management-failure-register-effect.entity-BRssxEl6.mjs} +2 -2
  189. package/fesm2022/{acorex-modules-maintenance-management-failure-register-effect.entity-DCIAzSYQ.mjs.map → acorex-modules-maintenance-management-failure-register-effect.entity-BRssxEl6.mjs.map} +1 -1
  190. package/fesm2022/{acorex-modules-maintenance-management-failure-register-mechanism.entity-DlXr6A4i.mjs → acorex-modules-maintenance-management-failure-register-mechanism.entity-YyBWG00N.mjs} +2 -2
  191. package/fesm2022/{acorex-modules-maintenance-management-failure-register-mechanism.entity-DlXr6A4i.mjs.map → acorex-modules-maintenance-management-failure-register-mechanism.entity-YyBWG00N.mjs.map} +1 -1
  192. package/fesm2022/{acorex-modules-maintenance-management-failure-register.entity-C4J3um7j.mjs → acorex-modules-maintenance-management-failure-register.entity-CH-C6Q7m.mjs} +2 -2
  193. package/fesm2022/{acorex-modules-maintenance-management-failure-register.entity-C4J3um7j.mjs.map → acorex-modules-maintenance-management-failure-register.entity-CH-C6Q7m.mjs.map} +1 -1
  194. package/fesm2022/{acorex-modules-maintenance-management-failure-severity.entity-C-spQtYx.mjs → acorex-modules-maintenance-management-failure-severity.entity-BMoUEcVC.mjs} +2 -2
  195. package/fesm2022/{acorex-modules-maintenance-management-failure-severity.entity-C-spQtYx.mjs.map → acorex-modules-maintenance-management-failure-severity.entity-BMoUEcVC.mjs.map} +1 -1
  196. package/fesm2022/{acorex-modules-maintenance-management-maintenance-template.entity-Huahnjhd.mjs → acorex-modules-maintenance-management-maintenance-template.entity-CBayAtRD.mjs} +2 -2
  197. package/fesm2022/{acorex-modules-maintenance-management-maintenance-template.entity-Huahnjhd.mjs.map → acorex-modules-maintenance-management-maintenance-template.entity-CBayAtRD.mjs.map} +1 -1
  198. package/fesm2022/{acorex-modules-maintenance-management-work-order-list-command-1YsWctqu.mjs → acorex-modules-maintenance-management-work-order-list-command-mMZGiG3q.mjs} +2 -2
  199. package/fesm2022/{acorex-modules-maintenance-management-work-order-list-command-1YsWctqu.mjs.map → acorex-modules-maintenance-management-work-order-list-command-mMZGiG3q.mjs.map} +1 -1
  200. package/fesm2022/acorex-modules-maintenance-management.mjs +1 -1
  201. package/fesm2022/acorex-modules-measurement-core.mjs +4 -4
  202. package/fesm2022/acorex-modules-measurement-core.mjs.map +1 -1
  203. package/fesm2022/acorex-modules-notification-management-acorex-modules-notification-management-BSf1wd6j.mjs +3836 -0
  204. package/fesm2022/acorex-modules-notification-management-acorex-modules-notification-management-BSf1wd6j.mjs.map +1 -0
  205. package/fesm2022/acorex-modules-notification-management-notification-page.component-ATFOFL7C.mjs +548 -0
  206. package/fesm2022/acorex-modules-notification-management-notification-page.component-ATFOFL7C.mjs.map +1 -0
  207. package/fesm2022/acorex-modules-notification-management.mjs +1 -3590
  208. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  209. package/fesm2022/{acorex-modules-order-management-bulk-buy-order-item.entity-DGtHoqqj.mjs → acorex-modules-order-management-bulk-buy-order-item.entity-63BpszqL.mjs} +2 -2
  210. package/fesm2022/acorex-modules-order-management-bulk-buy-order-item.entity-63BpszqL.mjs.map +1 -0
  211. package/fesm2022/{acorex-modules-order-management-entity.provider-DVHBXOCD.mjs → acorex-modules-order-management-entity.provider-DGwVhM91.mjs} +3 -3
  212. package/fesm2022/{acorex-modules-order-management-entity.provider-DVHBXOCD.mjs.map → acorex-modules-order-management-entity.provider-DGwVhM91.mjs.map} +1 -1
  213. package/fesm2022/{acorex-modules-order-management-member-order-line.entity-DZJ90WHI.mjs → acorex-modules-order-management-member-order-line.entity-Czu7qE7i.mjs} +2 -2
  214. package/fesm2022/acorex-modules-order-management-member-order-line.entity-Czu7qE7i.mjs.map +1 -0
  215. package/fesm2022/acorex-modules-order-management.mjs +2 -2
  216. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-Iopv_G-d.mjs → acorex-modules-organization-management-acorex-modules-organization-management-smWojO0l.mjs} +40 -40
  217. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-Iopv_G-d.mjs.map → acorex-modules-organization-management-acorex-modules-organization-management-smWojO0l.mjs.map} +1 -1
  218. package/fesm2022/{acorex-modules-organization-management-add-business-unit-to-business-unit.command-D7NChP_A.mjs → acorex-modules-organization-management-add-business-unit-to-business-unit.command-BLifgeRF.mjs} +2 -2
  219. package/fesm2022/{acorex-modules-organization-management-add-business-unit-to-business-unit.command-D7NChP_A.mjs.map → acorex-modules-organization-management-add-business-unit-to-business-unit.command-BLifgeRF.mjs.map} +1 -1
  220. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-PkeqXFt1.mjs → acorex-modules-organization-management-add-position-to-business-unit.command-CKFqYBLD.mjs} +2 -2
  221. package/fesm2022/{acorex-modules-organization-management-add-position-to-business-unit.command-PkeqXFt1.mjs.map → acorex-modules-organization-management-add-position-to-business-unit.command-CKFqYBLD.mjs.map} +1 -1
  222. package/fesm2022/{acorex-modules-organization-management-add-team-to-business-unit.command-jalyX-F4.mjs → acorex-modules-organization-management-add-team-to-business-unit.command-DfaLXvTw.mjs} +2 -2
  223. package/fesm2022/{acorex-modules-organization-management-add-team-to-business-unit.command-jalyX-F4.mjs.map → acorex-modules-organization-management-add-team-to-business-unit.command-DfaLXvTw.mjs.map} +1 -1
  224. package/fesm2022/{acorex-modules-organization-management-business-unit.entity-CBjAC9Ip.mjs → acorex-modules-organization-management-business-unit.entity-BkeFPaIT.mjs} +2 -2
  225. package/fesm2022/{acorex-modules-organization-management-business-unit.entity-CBjAC9Ip.mjs.map → acorex-modules-organization-management-business-unit.entity-BkeFPaIT.mjs.map} +1 -1
  226. package/fesm2022/{acorex-modules-organization-management-chart.entity-CaY_5LGN.mjs → acorex-modules-organization-management-chart.entity-bWx4IFSv.mjs} +2 -2
  227. package/fesm2022/{acorex-modules-organization-management-chart.entity-CaY_5LGN.mjs.map → acorex-modules-organization-management-chart.entity-bWx4IFSv.mjs.map} +1 -1
  228. package/fesm2022/{acorex-modules-organization-management-company.entity-BUBhqyCn.mjs → acorex-modules-organization-management-company.entity-yPUVhIzy.mjs} +2 -2
  229. package/fesm2022/{acorex-modules-organization-management-company.entity-BUBhqyCn.mjs.map → acorex-modules-organization-management-company.entity-yPUVhIzy.mjs.map} +1 -1
  230. package/fesm2022/{acorex-modules-organization-management-entity.provider-BZsy_wi6.mjs → acorex-modules-organization-management-entity.provider-IhJwnzd-.mjs} +15 -15
  231. package/fesm2022/{acorex-modules-organization-management-entity.provider-BZsy_wi6.mjs.map → acorex-modules-organization-management-entity.provider-IhJwnzd-.mjs.map} +1 -1
  232. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-CEO1nSFP.mjs → acorex-modules-organization-management-feature-definition.provider-B5yqFa4Z.mjs} +2 -2
  233. package/fesm2022/{acorex-modules-organization-management-feature-definition.provider-CEO1nSFP.mjs.map → acorex-modules-organization-management-feature-definition.provider-B5yqFa4Z.mjs.map} +1 -1
  234. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-ChRGp5ZI.mjs → acorex-modules-organization-management-job-definition-pages-component.provider-C51sgWyG.mjs} +3 -3
  235. package/fesm2022/{acorex-modules-organization-management-job-definition-pages-component.provider-ChRGp5ZI.mjs.map → acorex-modules-organization-management-job-definition-pages-component.provider-C51sgWyG.mjs.map} +1 -1
  236. package/fesm2022/{acorex-modules-organization-management-job-definition-responsibilities-page.component-aWZO09Xw.mjs → acorex-modules-organization-management-job-definition-responsibilities-page.component-EEWB5VUq.mjs} +8 -3
  237. package/fesm2022/acorex-modules-organization-management-job-definition-responsibilities-page.component-EEWB5VUq.mjs.map +1 -0
  238. package/fesm2022/{acorex-modules-organization-management-job-definition-skills-page.component-DJcFhQM9.mjs → acorex-modules-organization-management-job-definition-skills-page.component-L2GmFRra.mjs} +7 -2
  239. package/fesm2022/acorex-modules-organization-management-job-definition-skills-page.component-L2GmFRra.mjs.map +1 -0
  240. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-BoM49wYi.mjs → acorex-modules-organization-management-job-definition.entity-CDXsJADe.mjs} +2 -2
  241. package/fesm2022/{acorex-modules-organization-management-job-definition.entity-BoM49wYi.mjs.map → acorex-modules-organization-management-job-definition.entity-CDXsJADe.mjs.map} +1 -1
  242. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-DbQG79uR.mjs → acorex-modules-organization-management-job-level.datasource-C84zFgVo.mjs} +2 -2
  243. package/fesm2022/{acorex-modules-organization-management-job-level.datasource-DbQG79uR.mjs.map → acorex-modules-organization-management-job-level.datasource-C84zFgVo.mjs.map} +1 -1
  244. package/fesm2022/{acorex-modules-organization-management-job-level.entity-XO-NsBG-.mjs → acorex-modules-organization-management-job-level.entity-BqjP04k-.mjs} +2 -2
  245. package/fesm2022/{acorex-modules-organization-management-job-level.entity-XO-NsBG-.mjs.map → acorex-modules-organization-management-job-level.entity-BqjP04k-.mjs.map} +1 -1
  246. package/fesm2022/{acorex-modules-organization-management-menu.provider-DXW6aUIX.mjs → acorex-modules-organization-management-menu.provider-ChR3Rh4W.mjs} +2 -2
  247. package/fesm2022/{acorex-modules-organization-management-menu.provider-DXW6aUIX.mjs.map → acorex-modules-organization-management-menu.provider-ChR3Rh4W.mjs.map} +1 -1
  248. package/fesm2022/{acorex-modules-organization-management-org-chart-default-node-contribution.provider-ClKr6K6Y.mjs → acorex-modules-organization-management-org-chart-default-node-contribution.provider-DFVts4Q2.mjs} +2 -2
  249. package/fesm2022/{acorex-modules-organization-management-org-chart-default-node-contribution.provider-ClKr6K6Y.mjs.map → acorex-modules-organization-management-org-chart-default-node-contribution.provider-DFVts4Q2.mjs.map} +1 -1
  250. package/fesm2022/{acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-BjIDzwXF.mjs → acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-D1r0YQbL.mjs} +2 -2
  251. package/fesm2022/{acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-BjIDzwXF.mjs.map → acorex-modules-organization-management-org-chart-employee-flyout-contribution.provider-D1r0YQbL.mjs.map} +1 -1
  252. package/fesm2022/{acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DRAlUmIa.mjs → acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-Df1x_VF0.mjs} +2 -2
  253. package/fesm2022/{acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-DRAlUmIa.mjs.map → acorex-modules-organization-management-org-chart-position-employee-node-contribution.provider-Df1x_VF0.mjs.map} +1 -1
  254. package/fesm2022/{acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DwSjov_Z.mjs → acorex-modules-organization-management-org-chart-ux-node-contribution.provider-BPWFJSx2.mjs} +2 -2
  255. package/fesm2022/{acorex-modules-organization-management-org-chart-ux-node-contribution.provider-DwSjov_Z.mjs.map → acorex-modules-organization-management-org-chart-ux-node-contribution.provider-BPWFJSx2.mjs.map} +1 -1
  256. package/fesm2022/{acorex-modules-organization-management-org-chart.page-CuPEM-_N.mjs → acorex-modules-organization-management-org-chart.page-BzKPjJwY.mjs} +2 -2
  257. package/fesm2022/{acorex-modules-organization-management-org-chart.page-CuPEM-_N.mjs.map → acorex-modules-organization-management-org-chart.page-BzKPjJwY.mjs.map} +1 -1
  258. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-BNthP0QV.mjs → acorex-modules-organization-management-permission-definition.provider-DShSa-Wp.mjs} +2 -2
  259. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-BNthP0QV.mjs.map → acorex-modules-organization-management-permission-definition.provider-DShSa-Wp.mjs.map} +1 -1
  260. package/fesm2022/{acorex-modules-organization-management-position.entity-Cja3CYmL.mjs → acorex-modules-organization-management-position.entity-DyF02saN.mjs} +2 -2
  261. package/fesm2022/{acorex-modules-organization-management-position.entity-Cja3CYmL.mjs.map → acorex-modules-organization-management-position.entity-DyF02saN.mjs.map} +1 -1
  262. package/fesm2022/{acorex-modules-organization-management-remove-position-from-business-unit.command-Dm1a6-uO.mjs → acorex-modules-organization-management-remove-position-from-business-unit.command-CGYBDMLJ.mjs} +2 -2
  263. package/fesm2022/{acorex-modules-organization-management-remove-position-from-business-unit.command-Dm1a6-uO.mjs.map → acorex-modules-organization-management-remove-position-from-business-unit.command-CGYBDMLJ.mjs.map} +1 -1
  264. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-BWtzQZyW.mjs → acorex-modules-organization-management-replace-position-assignee.command-DgR5-k3v.mjs} +2 -2
  265. package/fesm2022/{acorex-modules-organization-management-replace-position-assignee.command-BWtzQZyW.mjs.map → acorex-modules-organization-management-replace-position-assignee.command-DgR5-k3v.mjs.map} +1 -1
  266. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-C4W0VlL5.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-oqrqfc2t.mjs} +2 -2
  267. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-C4W0VlL5.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-edit.component-oqrqfc2t.mjs.map} +1 -1
  268. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-CaPqjai7.mjs → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BEZm8HRq.mjs} +2 -2
  269. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix-widget-view.component-CaPqjai7.mjs.map → acorex-modules-organization-management-responsibilities-matrix-widget-view.component-BEZm8HRq.mjs.map} +1 -1
  270. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-nJuP6fA0.mjs → acorex-modules-organization-management-responsibilities-matrix.component-CBfTsRx4.mjs} +2 -2
  271. package/fesm2022/{acorex-modules-organization-management-responsibilities-matrix.component-nJuP6fA0.mjs.map → acorex-modules-organization-management-responsibilities-matrix.component-CBfTsRx4.mjs.map} +1 -1
  272. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-CvvzIjvE.mjs → acorex-modules-organization-management-responsibility-level.entity-BAm1en5A.mjs} +2 -2
  273. package/fesm2022/{acorex-modules-organization-management-responsibility-level.entity-CvvzIjvE.mjs.map → acorex-modules-organization-management-responsibility-level.entity-BAm1en5A.mjs.map} +1 -1
  274. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-Cc0Ou-hc.mjs → acorex-modules-organization-management-responsibility.entity-DTCMbqNy.mjs} +2 -2
  275. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-Cc0Ou-hc.mjs.map → acorex-modules-organization-management-responsibility.entity-DTCMbqNy.mjs.map} +1 -1
  276. package/fesm2022/{acorex-modules-organization-management-settings.provider-C33ZatCD.mjs → acorex-modules-organization-management-settings.provider-C6op-yff.mjs} +2 -2
  277. package/fesm2022/{acorex-modules-organization-management-settings.provider-C33ZatCD.mjs.map → acorex-modules-organization-management-settings.provider-C6op-yff.mjs.map} +1 -1
  278. package/fesm2022/{acorex-modules-organization-management-team-business-unit.entity-DGuF5ux1.mjs → acorex-modules-organization-management-team-business-unit.entity-B4Wra1YB.mjs} +3 -3
  279. package/fesm2022/acorex-modules-organization-management-team-business-unit.entity-B4Wra1YB.mjs.map +1 -0
  280. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-BMXkNavp.mjs → acorex-modules-organization-management-team-member-role.entity-CVH2m8uw.mjs} +2 -2
  281. package/fesm2022/{acorex-modules-organization-management-team-member-role.entity-BMXkNavp.mjs.map → acorex-modules-organization-management-team-member-role.entity-CVH2m8uw.mjs.map} +1 -1
  282. package/fesm2022/{acorex-modules-organization-management-team-member.entity-Deem7M3N.mjs → acorex-modules-organization-management-team-member.entity-By97LISn.mjs} +3 -3
  283. package/fesm2022/acorex-modules-organization-management-team-member.entity-By97LISn.mjs.map +1 -0
  284. package/fesm2022/{acorex-modules-organization-management-team.entity-CNmpaJ3F.mjs → acorex-modules-organization-management-team.entity-Cezsw5Vq.mjs} +2 -2
  285. package/fesm2022/{acorex-modules-organization-management-team.entity-CNmpaJ3F.mjs.map → acorex-modules-organization-management-team.entity-Cezsw5Vq.mjs.map} +1 -1
  286. package/fesm2022/acorex-modules-organization-management.mjs +1 -1
  287. package/fesm2022/acorex-modules-person-core.mjs +1 -1
  288. package/fesm2022/acorex-modules-person-core.mjs.map +1 -1
  289. package/fesm2022/acorex-modules-platform-dev-tools.mjs +3 -3
  290. package/fesm2022/acorex-modules-platform-dev-tools.mjs.map +1 -1
  291. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-Cbf1rlEK.mjs → acorex-modules-platform-management-acorex-modules-platform-management-LJBIjN39.mjs} +5 -5
  292. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-LJBIjN39.mjs.map +1 -0
  293. package/fesm2022/{acorex-modules-platform-management-menu-list.component-DIf_-oaM.mjs → acorex-modules-platform-management-menu-list.component-SXuHsuj0.mjs} +3 -3
  294. package/fesm2022/{acorex-modules-platform-management-menu-list.component-DIf_-oaM.mjs.map → acorex-modules-platform-management-menu-list.component-SXuHsuj0.mjs.map} +1 -1
  295. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  296. package/fesm2022/acorex-modules-procurement-management.mjs +2 -2
  297. package/fesm2022/acorex-modules-procurement-management.mjs.map +1 -1
  298. package/fesm2022/{acorex-modules-product-catalog-product-sku.entity-C3ynevYI.mjs → acorex-modules-product-catalog-product-sku.entity-DNgCnDtL.mjs} +2 -2
  299. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-DNgCnDtL.mjs.map +1 -0
  300. package/fesm2022/{acorex-modules-product-catalog-product.entity-BbB7GAg7.mjs → acorex-modules-product-catalog-product.entity-CBwSFTL2.mjs} +2 -2
  301. package/fesm2022/acorex-modules-product-catalog-product.entity-CBwSFTL2.mjs.map +1 -0
  302. package/fesm2022/acorex-modules-product-catalog.mjs +2 -2
  303. package/fesm2022/acorex-modules-report-management.mjs +7 -7
  304. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  305. package/fesm2022/{acorex-modules-reservation-management-acorex-modules-reservation-management-BoUiTlmu.mjs → acorex-modules-reservation-management-acorex-modules-reservation-management-D7YtuAbZ.mjs} +7 -7
  306. package/fesm2022/{acorex-modules-reservation-management-acorex-modules-reservation-management-BoUiTlmu.mjs.map → acorex-modules-reservation-management-acorex-modules-reservation-management-D7YtuAbZ.mjs.map} +1 -1
  307. package/fesm2022/{acorex-modules-reservation-management-reservation-class-status.entity-D-ZdqKa8.mjs → acorex-modules-reservation-management-reservation-class-status.entity-D4insz8u.mjs} +2 -2
  308. package/fesm2022/{acorex-modules-reservation-management-reservation-class-status.entity-D-ZdqKa8.mjs.map → acorex-modules-reservation-management-reservation-class-status.entity-D4insz8u.mjs.map} +1 -1
  309. package/fesm2022/{acorex-modules-reservation-management-reservation-resource-type.entity-zPD-Psml.mjs → acorex-modules-reservation-management-reservation-resource-type.entity-Dn2CMqO9.mjs} +2 -2
  310. package/fesm2022/{acorex-modules-reservation-management-reservation-resource-type.entity-zPD-Psml.mjs.map → acorex-modules-reservation-management-reservation-resource-type.entity-Dn2CMqO9.mjs.map} +1 -1
  311. package/fesm2022/{acorex-modules-reservation-management-reservation-status-transition.entity-CQ85ZAGF.mjs → acorex-modules-reservation-management-reservation-status-transition.entity-CrwUrIrC.mjs} +2 -2
  312. package/fesm2022/{acorex-modules-reservation-management-reservation-status-transition.entity-CQ85ZAGF.mjs.map → acorex-modules-reservation-management-reservation-status-transition.entity-CrwUrIrC.mjs.map} +1 -1
  313. package/fesm2022/acorex-modules-reservation-management.mjs +1 -1
  314. package/fesm2022/acorex-modules-security-management.mjs +4 -4
  315. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  316. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs → acorex-modules-settings-management-acorex-modules-settings-management-O8kBegUF.mjs} +136 -65
  317. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-O8kBegUF.mjs.map +1 -0
  318. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs → acorex-modules-settings-management-permission-definition.provider-CU7SEx6v.mjs} +2 -2
  319. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-DpRn1jAo.mjs.map → acorex-modules-settings-management-permission-definition.provider-CU7SEx6v.mjs.map} +1 -1
  320. package/fesm2022/{acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs → acorex-modules-settings-management-setting-page.component-D8_cjOzW.mjs} +181 -19
  321. package/fesm2022/acorex-modules-settings-management-setting-page.component-D8_cjOzW.mjs.map +1 -0
  322. package/fesm2022/{acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs → acorex-modules-settings-management-setting-view.component-DIvERzMC.mjs} +65 -17
  323. package/fesm2022/acorex-modules-settings-management-setting-view.component-DIvERzMC.mjs.map +1 -0
  324. package/fesm2022/acorex-modules-settings-management.mjs +1 -1
  325. package/fesm2022/acorex-modules-subscription-management.mjs +2 -2
  326. package/fesm2022/acorex-modules-subscription-management.mjs.map +1 -1
  327. package/fesm2022/{acorex-modules-task-management-acorex-modules-task-management-BB7eeaYX.mjs → acorex-modules-task-management-acorex-modules-task-management-Bp-9vZdR.mjs} +939 -383
  328. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-Bp-9vZdR.mjs.map +1 -0
  329. package/fesm2022/acorex-modules-task-management-task-board.page-Brgg9wJa.mjs +3368 -0
  330. package/fesm2022/acorex-modules-task-management-task-board.page-Brgg9wJa.mjs.map +1 -0
  331. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  332. package/fesm2022/acorex-modules-tenant-management.mjs +2 -2
  333. package/fesm2022/acorex-modules-tenant-management.mjs.map +1 -1
  334. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-gXP-srRO.mjs +5600 -0
  335. package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-gXP-srRO.mjs.map +1 -0
  336. package/fesm2022/{acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-B4DLmioy.mjs → acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-BW6kK9Av.mjs} +3 -3
  337. package/fesm2022/{acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-B4DLmioy.mjs.map → acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-BW6kK9Av.mjs.map} +1 -1
  338. package/fesm2022/{acorex-modules-workflow-management-activity-definition.entity-B3DkgDQb.mjs → acorex-modules-workflow-management-activity-definition.entity-BlK-sL_3.mjs} +2 -2
  339. package/fesm2022/{acorex-modules-workflow-management-activity-definition.entity-B3DkgDQb.mjs.map → acorex-modules-workflow-management-activity-definition.entity-BlK-sL_3.mjs.map} +1 -1
  340. package/fesm2022/{acorex-modules-workflow-management-automation.entity-BigK8yE2.mjs → acorex-modules-workflow-management-automation.entity-C9q24TPu.mjs} +3 -3
  341. package/fesm2022/acorex-modules-workflow-management-automation.entity-C9q24TPu.mjs.map +1 -0
  342. package/fesm2022/{acorex-modules-workflow-management-index-1B7oRAKX.mjs → acorex-modules-workflow-management-index-BFdyFvcu.mjs} +8 -5
  343. package/fesm2022/acorex-modules-workflow-management-index-BFdyFvcu.mjs.map +1 -0
  344. package/fesm2022/{acorex-modules-workflow-management-index-DC_9M9dk.mjs → acorex-modules-workflow-management-index-BbVGViSE.mjs} +7 -163
  345. package/fesm2022/acorex-modules-workflow-management-index-BbVGViSE.mjs.map +1 -0
  346. package/fesm2022/{acorex-modules-workflow-management-index-34UZrsxw.mjs → acorex-modules-workflow-management-index-Bq5tBgif.mjs} +2 -2
  347. package/fesm2022/{acorex-modules-workflow-management-index-34UZrsxw.mjs.map → acorex-modules-workflow-management-index-Bq5tBgif.mjs.map} +1 -1
  348. package/fesm2022/{acorex-modules-workflow-management-index-CxheG2ry.mjs → acorex-modules-workflow-management-index-CIV7Abnc.mjs} +115 -7
  349. package/fesm2022/acorex-modules-workflow-management-index-CIV7Abnc.mjs.map +1 -0
  350. package/fesm2022/{acorex-modules-workflow-management-save-workflow-definition-activities.command-CGNwslcn.mjs → acorex-modules-workflow-management-save-workflow-definition-activities.command-B_tjSneV.mjs} +2 -2
  351. package/fesm2022/{acorex-modules-workflow-management-save-workflow-definition-activities.command-CGNwslcn.mjs.map → acorex-modules-workflow-management-save-workflow-definition-activities.command-B_tjSneV.mjs.map} +1 -1
  352. package/fesm2022/acorex-modules-workflow-management-workflow-activity-instance-rows.utils-L8W4ogSI.mjs +172 -0
  353. package/fesm2022/acorex-modules-workflow-management-workflow-activity-instance-rows.utils-L8W4ogSI.mjs.map +1 -0
  354. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-CPOQZxsq.mjs +79 -0
  355. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-column.component-CPOQZxsq.mjs.map +1 -0
  356. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-CqF3z8Xq.mjs +466 -0
  357. package/fesm2022/acorex-modules-workflow-management-workflow-configurator-widget-edit.component-CqF3z8Xq.mjs.map +1 -0
  358. package/fesm2022/{acorex-modules-workflow-management-workflow-definition.entity-DISpkWE4.mjs → acorex-modules-workflow-management-workflow-definition.entity-BbnGGXZs.mjs} +3 -2
  359. package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-BbnGGXZs.mjs.map +1 -0
  360. package/fesm2022/{acorex-modules-workflow-management-workflow-instance.entity-BnKT3Wgh.mjs → acorex-modules-workflow-management-workflow-instance.entity-Ci6c4VoI.mjs} +3 -3
  361. package/fesm2022/{acorex-modules-workflow-management-workflow-instance.entity-BnKT3Wgh.mjs.map → acorex-modules-workflow-management-workflow-instance.entity-Ci6c4VoI.mjs.map} +1 -1
  362. package/fesm2022/acorex-modules-workflow-management-workflow-run-history-popup.component-CJ0cRwUE.mjs +579 -0
  363. package/fesm2022/acorex-modules-workflow-management-workflow-run-history-popup.component-CJ0cRwUE.mjs.map +1 -0
  364. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-CHv2_W75.mjs +285 -0
  365. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-CHv2_W75.mjs.map +1 -0
  366. package/fesm2022/acorex-modules-workflow-management.mjs +1 -5212
  367. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  368. package/fesm2022/acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-D1a0CBhs.mjs +42 -0
  369. package/fesm2022/acorex-modules-workplacesafety-management-hazard-ppe-rule-status.provider-D1a0CBhs.mjs.map +1 -0
  370. package/fesm2022/acorex-modules-workplacesafety-management-ppe-item-status.provider-VH_Bp0l5.mjs +70 -0
  371. package/fesm2022/acorex-modules-workplacesafety-management-ppe-item-status.provider-VH_Bp0l5.mjs.map +1 -0
  372. package/fesm2022/acorex-modules-workplacesafety-management.mjs +1229 -67
  373. package/fesm2022/acorex-modules-workplacesafety-management.mjs.map +1 -1
  374. package/package.json +2 -2
  375. package/types/acorex-modules-ai-management.d.ts +23 -4
  376. package/types/acorex-modules-assessment-management.d.ts +214 -188
  377. package/types/acorex-modules-asset-management.d.ts +1 -0
  378. package/types/acorex-modules-calendar-management.d.ts +61 -33
  379. package/types/acorex-modules-common.d.ts +14 -4
  380. package/types/acorex-modules-conversation.d.ts +59 -14
  381. package/types/acorex-modules-dashboard-management.d.ts +14 -2
  382. package/types/acorex-modules-document-management.d.ts +8 -0
  383. package/types/acorex-modules-human-capital-management.d.ts +28 -14
  384. package/types/acorex-modules-notification-management.d.ts +32 -3
  385. package/types/acorex-modules-report-management.d.ts +3 -0
  386. package/types/acorex-modules-settings-management.d.ts +12 -2
  387. package/types/acorex-modules-task-management.d.ts +196 -47
  388. package/types/acorex-modules-workflow-management.d.ts +41 -39
  389. package/types/acorex-modules-workplacesafety-management.d.ts +124 -4
  390. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-IHgQ8RVH.mjs.map +0 -1
  391. package/fesm2022/acorex-modules-assessment-management-fill-assessment-session.command-nkFpnKE2.mjs.map +0 -1
  392. package/fesm2022/acorex-modules-assessment-management-preview-questionnaire.command-Sd4gRHo5.mjs.map +0 -1
  393. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-RLIfWCzq.mjs.map +0 -1
  394. package/fesm2022/acorex-modules-assessment-management-questionnaire-viewer-popup.component-B8LMKqVO.mjs.map +0 -1
  395. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-CZBnfCYE.mjs.map +0 -1
  396. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs +0 -803
  397. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BUuEzfsI.mjs.map +0 -1
  398. package/fesm2022/acorex-modules-auth-app-chooser.component-DnmLfX5x.mjs.map +0 -1
  399. package/fesm2022/acorex-modules-auth-master.layout-DMP4RC6L.mjs +0 -25
  400. package/fesm2022/acorex-modules-auth-master.layout-DMP4RC6L.mjs.map +0 -1
  401. package/fesm2022/acorex-modules-auth-user-sessions.component-gJSHI_eh.mjs.map +0 -1
  402. package/fesm2022/acorex-modules-calendar-management-datasource.provider-C_iazC89.mjs +0 -95
  403. package/fesm2022/acorex-modules-calendar-management-datasource.provider-C_iazC89.mjs.map +0 -1
  404. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-txpooXrE.mjs.map +0 -1
  405. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-DYW31fEm.mjs.map +0 -1
  406. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs +0 -329
  407. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DQlE8l4c.mjs.map +0 -1
  408. package/fesm2022/acorex-modules-conversation-comments-page.component-CNqL-HdS.mjs.map +0 -1
  409. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs.map +0 -1
  410. package/fesm2022/acorex-modules-data-management-index-DEm_BsbE.mjs.map +0 -1
  411. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-DrKulwY-.mjs.map +0 -1
  412. package/fesm2022/acorex-modules-human-capital-management-employee.entity-CrVU_3Jv.mjs.map +0 -1
  413. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-QeY6lcUY.mjs.map +0 -1
  414. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-D7B3adkZ.mjs.map +0 -1
  415. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event-type.entity-Dim-8hT7.mjs.map +0 -1
  416. package/fesm2022/acorex-modules-human-capital-management-lifecycle-event.entity-3HtYOKrY.mjs.map +0 -1
  417. package/fesm2022/acorex-modules-human-capital-management-start-lifecycle-event-flow.command-Bz2SZcmm.mjs.map +0 -1
  418. package/fesm2022/acorex-modules-learning-management-course.entity-DUUgeikJ.mjs.map +0 -1
  419. package/fesm2022/acorex-modules-learning-management-enrollment.entity-CdJafrUh.mjs.map +0 -1
  420. package/fesm2022/acorex-modules-learning-management-learning-path.entity-Zo--bDto.mjs.map +0 -1
  421. package/fesm2022/acorex-modules-learning-management-skill.entity-VXkLbaD4.mjs.map +0 -1
  422. package/fesm2022/acorex-modules-learning-management-training.entity-C4KDv1uh.mjs.map +0 -1
  423. package/fesm2022/acorex-modules-locale-management-profiles-BOveGIcE.mjs.map +0 -1
  424. package/fesm2022/acorex-modules-maintenance-management-acorex-modules-maintenance-management-DiM2aFgg.mjs.map +0 -1
  425. package/fesm2022/acorex-modules-notification-management-notification-page.component-6YOiGgKm.mjs +0 -858
  426. package/fesm2022/acorex-modules-notification-management-notification-page.component-6YOiGgKm.mjs.map +0 -1
  427. package/fesm2022/acorex-modules-order-management-bulk-buy-order-item.entity-DGtHoqqj.mjs.map +0 -1
  428. package/fesm2022/acorex-modules-order-management-member-order-line.entity-DZJ90WHI.mjs.map +0 -1
  429. package/fesm2022/acorex-modules-organization-management-job-definition-responsibilities-page.component-aWZO09Xw.mjs.map +0 -1
  430. package/fesm2022/acorex-modules-organization-management-job-definition-skills-page.component-DJcFhQM9.mjs.map +0 -1
  431. package/fesm2022/acorex-modules-organization-management-team-business-unit.entity-DGuF5ux1.mjs.map +0 -1
  432. package/fesm2022/acorex-modules-organization-management-team-member.entity-Deem7M3N.mjs.map +0 -1
  433. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-Cbf1rlEK.mjs.map +0 -1
  434. package/fesm2022/acorex-modules-product-catalog-product-sku.entity-C3ynevYI.mjs.map +0 -1
  435. package/fesm2022/acorex-modules-product-catalog-product.entity-BbB7GAg7.mjs.map +0 -1
  436. package/fesm2022/acorex-modules-settings-management-acorex-modules-settings-management-Dj9u0VEL.mjs.map +0 -1
  437. package/fesm2022/acorex-modules-settings-management-setting-page.component-C9wPgm_P.mjs.map +0 -1
  438. package/fesm2022/acorex-modules-settings-management-setting-view.component-BQ69Bx8C.mjs.map +0 -1
  439. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-BB7eeaYX.mjs.map +0 -1
  440. package/fesm2022/acorex-modules-task-management-task-board.page-BmUIngWk.mjs +0 -2284
  441. package/fesm2022/acorex-modules-task-management-task-board.page-BmUIngWk.mjs.map +0 -1
  442. package/fesm2022/acorex-modules-workflow-management-automation.entity-BigK8yE2.mjs.map +0 -1
  443. package/fesm2022/acorex-modules-workflow-management-index-1B7oRAKX.mjs.map +0 -1
  444. package/fesm2022/acorex-modules-workflow-management-index-CxheG2ry.mjs.map +0 -1
  445. package/fesm2022/acorex-modules-workflow-management-index-DC_9M9dk.mjs.map +0 -1
  446. package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-DISpkWE4.mjs.map +0 -1
  447. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs +0 -255
  448. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-B4hEv2-a.mjs.map +0 -1
@@ -0,0 +1,1580 @@
1
+ import { AXPUnauthorizedError, AXPUnauthenticatedError, AXPSessionService, AXPAuthStrategyRegistryService, AXPAuthGuard } from '@acorex/platform/auth';
2
+ import { AXPLayoutThemeService, AXPMenuVerticalMode } from '@acorex/platform/themes/shared';
3
+ import * as i1$2 from '@angular/common/http';
4
+ import { HttpErrorResponse } from '@angular/common/http';
5
+ import * as i0 from '@angular/core';
6
+ import { inject, isDevMode, Injectable, InjectionToken, input, output, viewChild, viewChildren, signal, computed, effect, ChangeDetectionStrategy, Component, DestroyRef, ViewEncapsulation, ViewChild, NgModule } from '@angular/core';
7
+ import * as i1$5 from '@angular/router';
8
+ import { Router, RouterModule, ROUTES } from '@angular/router';
9
+ import * as i1$4 from '@acorex/platform/common';
10
+ import { AXPHomePageService, AXPDataProvider, AXP_ROOT_CONFIG_TOKEN, AXPSettingsService, AXP_PROTECTED_ROUTE_GUARDS, AXPCommonModule, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';
11
+ import { AXPLogoComponent, AXPUserAvatarComponent, AXP_PAGE_COMPONENT_PROVIDER } from '@acorex/platform/layout/components';
12
+ import * as i1$3 from '@acorex/platform/core';
13
+ import { AXPIconLogoConfig, AXPHookService, AXPKeyboardShortcutRegistry, chordToKbdItemKeys, getPrimaryKeyboardShortcutChord, normalizeKeyboardShortcuts, AXPKeyboardShortcutPriority, AXPDeviceService, AXPPlatformScope, AXPComponentSlotModule, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, provideLazyProvider } from '@acorex/platform/core';
14
+ import { AXPCommandService, provideCommandSetups } from '@acorex/platform/runtime';
15
+ import { AXPRootLayoutComponent } from '@acorex/platform/themes/default';
16
+ import * as i4$1 from '@angular/common';
17
+ import { CommonModule, AsyncPipe } from '@angular/common';
18
+ import * as i1 from '@acorex/components/button';
19
+ import { AXButtonModule } from '@acorex/components/button';
20
+ import * as i3$1 from '@acorex/components/decorators';
21
+ import { AXDecoratorModule } from '@acorex/components/decorators';
22
+ import * as i2$2 from '@acorex/components/popover';
23
+ import { AXPopoverModule } from '@acorex/components/popover';
24
+ import * as i5 from '@acorex/cdk/list-navigation';
25
+ import { AXListNavigationDirective, AXListNavigationItemDirective, AXListNavigationModule } from '@acorex/cdk/list-navigation';
26
+ import * as i4 from '@acorex/components/search-box';
27
+ import { AXSearchBoxModule } from '@acorex/components/search-box';
28
+ import * as i3 from '@acorex/components/select-box';
29
+ import { AXSelectBoxModule } from '@acorex/components/select-box';
30
+ import * as i2 from '@acorex/components/skeleton';
31
+ import { AXSkeletonModule } from '@acorex/components/skeleton';
32
+ import * as i2$1 from '@acorex/core/translation';
33
+ import { AXTranslationModule } from '@acorex/core/translation';
34
+ import { AXMApplicationService } from '@acorex/modules/application-management';
35
+ import { first, Subject, timer, map, firstValueFrom } from 'rxjs';
36
+ import { AXAvatarModule } from '@acorex/components/avatar';
37
+ import { AXImageModule } from '@acorex/components/image';
38
+ import { AXLoadingModule } from '@acorex/components/loading';
39
+ import { toSignal } from '@angular/core/rxjs-interop';
40
+ import { AXPWorkflowService } from '@acorex/platform/workflow';
41
+ import * as i1$1 from '@angular/forms';
42
+ import { FormsModule } from '@angular/forms';
43
+ import { startWith, switchMap, tap } from 'rxjs/operators';
44
+ import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';
45
+
46
+ class AXMAuthErrorHandler {
47
+ constructor() {
48
+ this.router = inject(Router);
49
+ this.layoutService = inject(AXPLayoutThemeService);
50
+ }
51
+ handleError(error, next) {
52
+ if (error instanceof HttpErrorResponse) {
53
+ // if (error.status == 401) {
54
+ // this.router.navigate(['/auth/login']);
55
+ // }
56
+ // else if (error.status == 404) {
57
+ // this.router.navigate(['/404']);
58
+ // }
59
+ }
60
+ else if (error instanceof AXPUnauthorizedError) {
61
+ const redirectUrl = error.data?.redirectUrl;
62
+ console.error(error.message);
63
+ this.router.navigate(['/401'], { queryParams: redirectUrl ? { redirectUrl: redirectUrl } : null });
64
+ }
65
+ else if (error instanceof AXPUnauthenticatedError) {
66
+ console.error(error.message);
67
+ const redirectUrl = error.data?.redirectUrl;
68
+ this.router.navigate(['/auth/login'], { queryParams: redirectUrl ? { redirectUrl: redirectUrl } : null });
69
+ }
70
+ else {
71
+ if (isDevMode()) {
72
+ next(error); // Pass the error to the next handler
73
+ }
74
+ else {
75
+ next(error); // maybe we need a error page
76
+ }
77
+ }
78
+ this.layoutService.setNavigationLoading(false);
79
+ }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthErrorHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
81
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthErrorHandler }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthErrorHandler, decorators: [{
84
+ type: Injectable
85
+ }] });
86
+
87
+ /**
88
+ * Guard for login page that redirects authenticated users to home page.
89
+ * This guard prevents authenticated users from accessing the login page.
90
+ */
91
+ const canActivateLogin = async (route, state) => {
92
+ // If not authenticated, allow access to login page
93
+ return true;
94
+ };
95
+
96
+ var AXMAuthenticationTypes;
97
+ (function (AXMAuthenticationTypes) {
98
+ AXMAuthenticationTypes[AXMAuthenticationTypes["UsernamePassword"] = 0] = "UsernamePassword";
99
+ AXMAuthenticationTypes[AXMAuthenticationTypes["UsernameEmailPassword"] = 1] = "UsernameEmailPassword";
100
+ AXMAuthenticationTypes[AXMAuthenticationTypes["EmailPassword"] = 2] = "EmailPassword";
101
+ AXMAuthenticationTypes[AXMAuthenticationTypes["MobilePassword"] = 3] = "MobilePassword";
102
+ AXMAuthenticationTypes[AXMAuthenticationTypes["EmailCode"] = 4] = "EmailCode";
103
+ AXMAuthenticationTypes[AXMAuthenticationTypes["MobileCode"] = 5] = "MobileCode";
104
+ })(AXMAuthenticationTypes || (AXMAuthenticationTypes = {}));
105
+ const AXM_AUTH_CONFIG_TOKEN = new InjectionToken('app-module-auth-config', {
106
+ providedIn: 'root',
107
+ factory: () => {
108
+ return AXMDefaultAuthConfigs;
109
+ },
110
+ });
111
+ const AXMDefaultAuthConfigs = {
112
+ type: AXMAuthenticationTypes.UsernamePassword,
113
+ // defaultStrategyName:'oidc',
114
+ // حذف authConfig از اینجا چون از environment خوانده می‌شود
115
+ defaultStrategyName: 'user-pass',
116
+ };
117
+ function configAuthModule(config = AXMDefaultAuthConfigs) {
118
+ return { ...AXMDefaultAuthConfigs, ...config };
119
+ }
120
+ /**
121
+ * Injection token for login page guard.
122
+ * Apps can provide their own custom guard by providing this token.
123
+ * If not provided, the default guard (canActivateLogin) will be used.
124
+ */
125
+ const AXM_LOGIN_GUARD_TOKEN = new InjectionToken('AXM_LOGIN_GUARD_TOKEN', {
126
+ providedIn: 'root',
127
+ factory: () => canActivateLogin,
128
+ });
129
+ //#endregion
130
+
131
+ const routes = [
132
+ {
133
+ path: 'auth',
134
+ children: [
135
+ {
136
+ path: '',
137
+ pathMatch: 'full',
138
+ redirectTo: 'login',
139
+ },
140
+ {
141
+ path: '',
142
+ loadComponent: () => import('./acorex-modules-auth-master.layout-B4Vpqg2F.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
143
+ loadChildren: () => import('./acorex-modules-auth-login.module-FJxkiTeX.mjs').then((c) => c.AXPSignInModule),
144
+ },
145
+ {
146
+ path: '',
147
+ loadComponent: () => import('./acorex-modules-auth-master.layout-B4Vpqg2F.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
148
+ loadChildren: () => import('./acorex-modules-auth-two-factor.module-DcvqZOIq.mjs').then((c) => c.AXPTwoFactorModule),
149
+ },
150
+ {
151
+ path: '',
152
+ loadComponent: () => import('./acorex-modules-auth-master.layout-B4Vpqg2F.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
153
+ loadChildren: () => import('./acorex-modules-auth-routes-D6PLdcTC.mjs').then((c) => c),
154
+ },
155
+ {
156
+ path: 'axp-oauth-callback',
157
+ loadComponent: () => import('./acorex-modules-auth-oauth-callback.component-It5tkYuf.mjs').then((c) => c.AXPOAuthCallbackComponent),
158
+ },
159
+ {
160
+ path: 'account',
161
+ loadComponent: () => import('./acorex-modules-auth-blank.layout-BRGgntib.mjs').then((c) => c.AXPAuthBlankLayoutComponent),
162
+ loadChildren: () => Promise.resolve().then(function () { return account_module; }).then((c) => c.AXPAccountModule),
163
+ },
164
+ // {
165
+ // path: 'signincallback',
166
+ // loadComponent: () =>
167
+ // import('./pages/callback/oauth-callback.component').then((c) => c.AXPOAuthCallbackComponent),
168
+ // },
169
+ // {
170
+ // path: '',
171
+ // loadComponent: () =>
172
+ // import('./shared/layouts/master/master.layout').then((c) => c.AXPAuthMasterLayoutComponent),
173
+ // loadChildren: () => import('./register/register.module').then((c) => c.AXPRegisterModule),
174
+ // },
175
+ ],
176
+ },
177
+ ];
178
+
179
+ class AXPAppChooserListComponent {
180
+ //#endregion
181
+ //#region ---- Computed Properties ----
182
+ isApplicationSelected(application) {
183
+ return application.id === this.sessionService.application?.id;
184
+ }
185
+ //#endregion
186
+ //#region ---- Constructor ----
187
+ constructor() {
188
+ //#region ---- Services & Dependencies ----
189
+ this.sessionService = inject(AXPSessionService);
190
+ this.homePageService = inject(AXPHomePageService);
191
+ this.authStrategyRegistry = inject(AXPAuthStrategyRegistryService);
192
+ this.applicationService = inject(AXMApplicationService);
193
+ this.strategyName = this.sessionService.getSessionData()?.strategy;
194
+ this.strategy = this.authStrategyRegistry.get(this.strategyName);
195
+ //#endregion
196
+ //#region ---- Inputs & Outputs ----
197
+ this.simple = input(false, ...(ngDevMode ? [{ debugName: "simple" }] : /* istanbul ignore next */ []));
198
+ this.applicationChosen = output();
199
+ //#endregion
200
+ //#region ---- View References ----
201
+ this.listNav = viewChild(AXListNavigationDirective, ...(ngDevMode ? [{ debugName: "listNav" }] : /* istanbul ignore next */ []));
202
+ this.listItems = viewChildren(AXListNavigationItemDirective, ...(ngDevMode ? [{ debugName: "listItems" }] : /* istanbul ignore next */ []));
203
+ //#endregion
204
+ //#region ---- State ----
205
+ this.isLoading = signal(true, ...(ngDevMode ? [{ debugName: "isLoading" }] : /* istanbul ignore next */ []));
206
+ this.allApplications = signal([], ...(ngDevMode ? [{ debugName: "allApplications" }] : /* istanbul ignore next */ []));
207
+ this.useSelectBox = computed(() => this.allApplications().length > 3, ...(ngDevMode ? [{ debugName: "useSelectBox" }] : /* istanbul ignore next */ []));
208
+ this.selectedApplication = signal(null, ...(ngDevMode ? [{ debugName: "selectedApplication" }] : /* istanbul ignore next */ []));
209
+ this.isSelectBoxOpen = signal(false, ...(ngDevMode ? [{ debugName: "isSelectBoxOpen" }] : /* istanbul ignore next */ []));
210
+ this.canApply = computed(() => !!this.selectedApplication(), ...(ngDevMode ? [{ debugName: "canApply" }] : /* istanbul ignore next */ []));
211
+ this.skeletonItems = [1, 2, 3];
212
+ effect(() => {
213
+ if (!this.isLoading() && !this.useSelectBox() && this.allApplications().length > 0) {
214
+ queueMicrotask(() => this.focusFirstListItem());
215
+ }
216
+ });
217
+ }
218
+ //#endregion
219
+ //#region ---- Lifecycle Methods ----
220
+ ngOnInit() {
221
+ this.sessionService.applications$.pipe(first()).subscribe((applications) => {
222
+ this.allApplications.set(applications);
223
+ if (applications.length > 0) {
224
+ this.selectedApplication.set(applications[0]);
225
+ }
226
+ this.isLoading.set(false);
227
+ });
228
+ }
229
+ //#endregion
230
+ //#region ---- UI Handlers ----
231
+ handleApplicationSelect(event) {
232
+ if (!event.isUserInteraction) {
233
+ return;
234
+ }
235
+ this.selectedApplication.set(event.component.selectedItems[0] ?? null);
236
+ }
237
+ handleListItemKeyDown(event, application) {
238
+ if (event.key === 'Enter' || event.key === ' ') {
239
+ event.preventDefault();
240
+ void this.chooseApplication(application);
241
+ }
242
+ }
243
+ handleSelectBoxKeyDown(event) {
244
+ if (!(event instanceof KeyboardEvent)) {
245
+ return;
246
+ }
247
+ if (event.key !== 'Enter' && event.key !== 'NumpadEnter') {
248
+ return;
249
+ }
250
+ if (this.isSelectBoxOpen()) {
251
+ return;
252
+ }
253
+ event.preventDefault();
254
+ event.stopPropagation();
255
+ if (this.canApply()) {
256
+ this.applySelection();
257
+ }
258
+ }
259
+ applySelection() {
260
+ const application = this.selectedApplication();
261
+ if (application) {
262
+ void this.chooseApplication(application);
263
+ }
264
+ }
265
+ async chooseApplication(item) {
266
+ const tenantId = this.sessionService.tenant?.id || '';
267
+ if (!tenantId) {
268
+ throw new Error('Tenant ID is missing. Cannot choose application.');
269
+ }
270
+ const fullApplication = await this.applicationService.getOne(item.id);
271
+ if (!fullApplication) {
272
+ throw new Error(`Application not found: ${item.id}`);
273
+ }
274
+ let selectedEdition = item.edition;
275
+ if (!selectedEdition && fullApplication.editions && fullApplication.editions.length > 0) {
276
+ selectedEdition = {
277
+ id: fullApplication.editions[0].id,
278
+ title: fullApplication.editions[0].title,
279
+ description: fullApplication.editions[0].description,
280
+ };
281
+ }
282
+ const applicationWithEdition = {
283
+ ...item,
284
+ version: fullApplication.version || item.version,
285
+ edition: selectedEdition,
286
+ };
287
+ if (this.strategy && typeof this.strategy.updateToken === 'function') {
288
+ const updateContext = {
289
+ application: applicationWithEdition,
290
+ user: this.sessionService.user,
291
+ tenant: this.sessionService.tenant,
292
+ };
293
+ await this.sessionService.updateToken(updateContext);
294
+ }
295
+ this.applicationChosen.emit();
296
+ await this.homePageService.navigateTo();
297
+ }
298
+ //#endregion
299
+ //#region ---- Utility Methods ----
300
+ focusFirstListItem() {
301
+ const nav = this.listNav();
302
+ const items = this.listItems();
303
+ const applications = this.allApplications();
304
+ const currentIndex = applications.findIndex((application) => this.isApplicationSelected(application));
305
+ if (nav && items.length > 0) {
306
+ nav.navigateTo(items[currentIndex >= 0 ? currentIndex : 0]);
307
+ }
308
+ }
309
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppChooserListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
310
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPAppChooserListComponent, isStandalone: true, selector: "axp-app-chooser-list", inputs: { simple: { classPropertyName: "simple", publicName: "simple", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { applicationChosen: "applicationChosen" }, viewQueries: [{ propertyName: "listNav", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "listItems", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], ngImport: i0, template: "@if (isLoading()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-3\">\n @for (item of skeletonItems; track item) {\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-12 ax-h-12 ax-rounded-full ax-shrink-0\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-flex-1 ax-h-6 ax-rounded-md\"></ax-skeleton>\n </div>\n }\n </div>\n} @else if (useSelectBox()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-4\" (keydown.capture)=\"handleSelectBoxKeyDown($event)\">\n <ax-select-box\n class=\"ax-w-full\"\n [dataSource]=\"allApplications()\"\n textField=\"title\"\n valueField=\"id\"\n [itemHeight]=\"56\"\n [value]=\"selectedApplication()\"\n [placeholder]=\"('@auth:application-chooser.select-placeholder' | translate | async) ?? ''\"\n [itemTemplate]=\"applicationItemTemplate\"\n (onOpened)=\"isSelectBoxOpen.set(true)\"\n (onClosed)=\"isSelectBoxOpen.set(false)\"\n (onValueChanged)=\"handleApplicationSelect($event)\"\n >\n <ax-search-box look=\"fill\"></ax-search-box>\n </ax-select-box>\n <ax-button\n class=\"ax-w-full\"\n color=\"primary\"\n [disabled]=\"!canApply()\"\n [text]=\"('@general:actions.apply.title' | translate | async) ?? ''\"\n (onClick)=\"applySelection()\"\n ></ax-button>\n </div>\n} @else {\n <div\n axListNavigation\n #listNav=\"axListNavigation\"\n class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-flex ax-flex-col ax-gap-1\"\n role=\"listbox\"\n >\n @for (application of allApplications(); track application.id) {\n <div\n axListNavigationItem\n #navItem=\"axListNavigationItem\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-selected]=\"isApplicationSelected(application)\"\n class=\"ax-flex ax-gap-2 ax-items-center ax-p-2 ax-cursor-pointer ax-rounded-md ax-transition-colors ax-outline-none hover:ax-bg-primary-lightest hover:dark:ax-bg-primary-dark\"\n [class.ax-bg-primary-lighter]=\"isApplicationSelected(application)\"\n [class.dark:ax-bg-primary-darker]=\"isApplicationSelected(application)\"\n [class.ax-text-primary-on-lighter]=\"isApplicationSelected(application)\"\n [class.dark:ax-text-primary-on-darker]=\"isApplicationSelected(application)\"\n [class.ax-ring-2]=\"navItem.isActive()\"\n [class.ax-ring-primary]=\"navItem.isActive()\"\n (click)=\"chooseApplication(application)\"\n (keydown)=\"handleListItemKeyDown($event, application)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-min-w-0\">\n <div\n class=\"ax-shrink-0 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100\"\n [class.ax-w-10]=\"simple()\"\n [class.ax-h-10]=\"simple()\"\n [class.ax-w-12]=\"!simple()\"\n [class.ax-h-12]=\"!simple()\"\n >\n <axp-logo\n [source]=\"application.logo\"\n [attr.alt]=\"application.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-bg-neutral-200 dark:ax-bg-neutral-800 ax-rounded-full\"\n [class.ax-w-8]=\"simple()\"\n [class.ax-h-8]=\"simple()\"\n [class.ax-w-10]=\"!simple()\"\n [class.ax-h-10]=\"!simple()\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-truncate ax-text-start md:ax-text-base ax-text-sm\">{{ application.title }}</span>\n @if (application.edition?.title) {\n <span class=\"ax-text-muted ax-text-xs ax-shrink-0\">{{ application.edition?.title }}</span>\n }\n </div>\n </div>\n }\n </div>\n}\n\n<ng-template #applicationItemTemplate let-item>\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <div\n class=\"ax-w-10 ax-h-10 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-shrink-0\"\n >\n <axp-logo\n [source]=\"item.data.logo\"\n [attr.alt]=\"item.data.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-w-8 ax-h-8 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ item.data.title }}</span>\n @if (item.data.edition?.title) {\n <span class=\"ax-text-muted ax-text-xs\">{{ item.data.edition.title }}</span>\n }\n </div>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i2.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i4.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i5.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i5.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "pipe", type: i4$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
311
+ }
312
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppChooserListComponent, decorators: [{
313
+ type: Component,
314
+ args: [{ selector: 'axp-app-chooser-list', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
315
+ CommonModule,
316
+ AXButtonModule,
317
+ AXDecoratorModule,
318
+ AXSkeletonModule,
319
+ AXSelectBoxModule,
320
+ AXSearchBoxModule,
321
+ AXListNavigationModule,
322
+ AXTranslationModule,
323
+ AXPLogoComponent,
324
+ ], template: "@if (isLoading()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-3\">\n @for (item of skeletonItems; track item) {\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-12 ax-h-12 ax-rounded-full ax-shrink-0\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-flex-1 ax-h-6 ax-rounded-md\"></ax-skeleton>\n </div>\n }\n </div>\n} @else if (useSelectBox()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-4\" (keydown.capture)=\"handleSelectBoxKeyDown($event)\">\n <ax-select-box\n class=\"ax-w-full\"\n [dataSource]=\"allApplications()\"\n textField=\"title\"\n valueField=\"id\"\n [itemHeight]=\"56\"\n [value]=\"selectedApplication()\"\n [placeholder]=\"('@auth:application-chooser.select-placeholder' | translate | async) ?? ''\"\n [itemTemplate]=\"applicationItemTemplate\"\n (onOpened)=\"isSelectBoxOpen.set(true)\"\n (onClosed)=\"isSelectBoxOpen.set(false)\"\n (onValueChanged)=\"handleApplicationSelect($event)\"\n >\n <ax-search-box look=\"fill\"></ax-search-box>\n </ax-select-box>\n <ax-button\n class=\"ax-w-full\"\n color=\"primary\"\n [disabled]=\"!canApply()\"\n [text]=\"('@general:actions.apply.title' | translate | async) ?? ''\"\n (onClick)=\"applySelection()\"\n ></ax-button>\n </div>\n} @else {\n <div\n axListNavigation\n #listNav=\"axListNavigation\"\n class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-flex ax-flex-col ax-gap-1\"\n role=\"listbox\"\n >\n @for (application of allApplications(); track application.id) {\n <div\n axListNavigationItem\n #navItem=\"axListNavigationItem\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-selected]=\"isApplicationSelected(application)\"\n class=\"ax-flex ax-gap-2 ax-items-center ax-p-2 ax-cursor-pointer ax-rounded-md ax-transition-colors ax-outline-none hover:ax-bg-primary-lightest hover:dark:ax-bg-primary-dark\"\n [class.ax-bg-primary-lighter]=\"isApplicationSelected(application)\"\n [class.dark:ax-bg-primary-darker]=\"isApplicationSelected(application)\"\n [class.ax-text-primary-on-lighter]=\"isApplicationSelected(application)\"\n [class.dark:ax-text-primary-on-darker]=\"isApplicationSelected(application)\"\n [class.ax-ring-2]=\"navItem.isActive()\"\n [class.ax-ring-primary]=\"navItem.isActive()\"\n (click)=\"chooseApplication(application)\"\n (keydown)=\"handleListItemKeyDown($event, application)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-min-w-0\">\n <div\n class=\"ax-shrink-0 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100\"\n [class.ax-w-10]=\"simple()\"\n [class.ax-h-10]=\"simple()\"\n [class.ax-w-12]=\"!simple()\"\n [class.ax-h-12]=\"!simple()\"\n >\n <axp-logo\n [source]=\"application.logo\"\n [attr.alt]=\"application.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-bg-neutral-200 dark:ax-bg-neutral-800 ax-rounded-full\"\n [class.ax-w-8]=\"simple()\"\n [class.ax-h-8]=\"simple()\"\n [class.ax-w-10]=\"!simple()\"\n [class.ax-h-10]=\"!simple()\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-truncate ax-text-start md:ax-text-base ax-text-sm\">{{ application.title }}</span>\n @if (application.edition?.title) {\n <span class=\"ax-text-muted ax-text-xs ax-shrink-0\">{{ application.edition?.title }}</span>\n }\n </div>\n </div>\n }\n </div>\n}\n\n<ng-template #applicationItemTemplate let-item>\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <div\n class=\"ax-w-10 ax-h-10 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-shrink-0\"\n >\n <axp-logo\n [source]=\"item.data.logo\"\n [attr.alt]=\"item.data.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-w-8 ax-h-8 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ item.data.title }}</span>\n @if (item.data.edition?.title) {\n <span class=\"ax-text-muted ax-text-xs\">{{ item.data.edition.title }}</span>\n }\n </div>\n</ng-template>\n" }]
325
+ }], ctorParameters: () => [], propDecorators: { simple: [{ type: i0.Input, args: [{ isSignal: true, alias: "simple", required: false }] }], applicationChosen: [{ type: i0.Output, args: ["applicationChosen"] }], listNav: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXListNavigationDirective), { isSignal: true }] }], listItems: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => AXListNavigationItemDirective), { isSignal: true }] }] } });
326
+
327
+ class AXMAppChooserSlotComponent {
328
+ constructor() {
329
+ this.sessionService = inject(AXPSessionService);
330
+ this.applications$ = this.sessionService.applications$;
331
+ this.appPopover = viewChild('appPopover', ...(ngDevMode ? [{ debugName: "appPopover" }] : /* istanbul ignore next */ []));
332
+ }
333
+ closePopover() {
334
+ this.appPopover()?.close();
335
+ }
336
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAppChooserSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
337
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMAppChooserSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "appPopover", first: true, predicate: ["appPopover"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (((applications$ | async)?.length ?? 0) > 1) {\n <ax-button color=\"primary\" #appChooser>\n <ax-icon class=\"fa-regular fa-grid-2\"> </ax-icon>\n </ax-button>\n <ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" #appPopover>\n <div class=\"ax-bg-lightest ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-1\">\n <axp-app-chooser-list [simple]=\"true\" (applicationChosen)=\"closePopover()\"></axp-app-chooser-list>\n </div>\n </ax-popover>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i2$2.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disablePanelClass", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "closeOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPAppChooserListComponent, selector: "axp-app-chooser-list", inputs: ["simple"], outputs: ["applicationChosen"] }, { kind: "pipe", type: i4$1.AsyncPipe, name: "async" }] }); }
338
+ }
339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAppChooserSlotComponent, decorators: [{
340
+ type: Component,
341
+ args: [{ imports: [CommonModule, AXButtonModule, AXPopoverModule, AXDecoratorModule, AXPAppChooserListComponent], template: "@if (((applications$ | async)?.length ?? 0) > 1) {\n <ax-button color=\"primary\" #appChooser>\n <ax-icon class=\"fa-regular fa-grid-2\"> </ax-icon>\n </ax-button>\n <ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" #appPopover>\n <div class=\"ax-bg-lightest ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-1\">\n <axp-app-chooser-list [simple]=\"true\" (applicationChosen)=\"closePopover()\"></axp-app-chooser-list>\n </div>\n </ax-popover>\n}\n" }]
342
+ }], propDecorators: { appPopover: [{ type: i0.ViewChild, args: ['appPopover', { isSignal: true }] }] } });
343
+
344
+ class AXPTenantChooserListComponent {
345
+ //#endregion
346
+ //#region ---- Computed Properties ----
347
+ isTenantSelected(tenant) {
348
+ return tenant.id === this.sessionService.tenant?.id;
349
+ }
350
+ //#endregion
351
+ //#region ---- Constructor ----
352
+ constructor() {
353
+ //#region ---- Services & Dependencies ----
354
+ this.sessionService = inject(AXPSessionService);
355
+ this.authStrategyRegistry = inject(AXPAuthStrategyRegistryService);
356
+ this.router = inject(Router);
357
+ this.strategyName = this.sessionService.getSessionData()?.strategy;
358
+ this.strategy = this.authStrategyRegistry.get(this.strategyName);
359
+ //#endregion
360
+ //#region ---- Inputs & Outputs ----
361
+ this.simple = input(false, ...(ngDevMode ? [{ debugName: "simple" }] : /* istanbul ignore next */ []));
362
+ this.tenantChosen = output();
363
+ //#endregion
364
+ //#region ---- View References ----
365
+ this.listNav = viewChild(AXListNavigationDirective, ...(ngDevMode ? [{ debugName: "listNav" }] : /* istanbul ignore next */ []));
366
+ this.listItems = viewChildren(AXListNavigationItemDirective, ...(ngDevMode ? [{ debugName: "listItems" }] : /* istanbul ignore next */ []));
367
+ //#endregion
368
+ //#region ---- State ----
369
+ this.defaultLogo = new AXPIconLogoConfig('fa-solid fa-building', 'neutral-500');
370
+ this.isLoading = signal(true, ...(ngDevMode ? [{ debugName: "isLoading" }] : /* istanbul ignore next */ []));
371
+ this.allTenants = signal([], ...(ngDevMode ? [{ debugName: "allTenants" }] : /* istanbul ignore next */ []));
372
+ this.searchValue = signal('', ...(ngDevMode ? [{ debugName: "searchValue" }] : /* istanbul ignore next */ []));
373
+ this.showAll = signal(false, ...(ngDevMode ? [{ debugName: "showAll" }] : /* istanbul ignore next */ []));
374
+ this.useSelectBox = computed(() => this.allTenants().length > 3, ...(ngDevMode ? [{ debugName: "useSelectBox" }] : /* istanbul ignore next */ []));
375
+ this.selectedTenant = signal(null, ...(ngDevMode ? [{ debugName: "selectedTenant" }] : /* istanbul ignore next */ []));
376
+ this.isSelectBoxOpen = signal(false, ...(ngDevMode ? [{ debugName: "isSelectBoxOpen" }] : /* istanbul ignore next */ []));
377
+ this.canApply = computed(() => !!this.selectedTenant(), ...(ngDevMode ? [{ debugName: "canApply" }] : /* istanbul ignore next */ []));
378
+ this.skeletonItems = [1, 2, 3];
379
+ /** Tenants shown in the list (respects search and view-all toggle). */
380
+ this.displayedTenants = computed(() => {
381
+ const tenants = this.filterTenants(this.allTenants());
382
+ if (this.showAll() || tenants.length <= 4) {
383
+ return tenants;
384
+ }
385
+ return tenants.slice(0, 4);
386
+ }, ...(ngDevMode ? [{ debugName: "displayedTenants" }] : /* istanbul ignore next */ []));
387
+ this.showSearchAndViewAll = computed(() => this.allTenants().length > 4, ...(ngDevMode ? [{ debugName: "showSearchAndViewAll" }] : /* istanbul ignore next */ []));
388
+ effect(() => {
389
+ if (!this.isLoading() && !this.useSelectBox() && !this.simple() && this.allTenants().length > 0) {
390
+ queueMicrotask(() => this.focusFirstListItem());
391
+ }
392
+ });
393
+ }
394
+ //#endregion
395
+ //#region ---- Lifecycle Methods ----
396
+ ngOnInit() {
397
+ this.sessionService.tenants$.pipe(first()).subscribe((tenants) => {
398
+ this.allTenants.set(tenants);
399
+ if (tenants.length > 0) {
400
+ this.selectedTenant.set(tenants[0]);
401
+ }
402
+ this.isLoading.set(false);
403
+ });
404
+ }
405
+ //#endregion
406
+ //#region ---- UI Handlers ----
407
+ filterTenants(tenants) {
408
+ const query = this.searchValue().toLowerCase();
409
+ return tenants.filter((tenant) => tenant.title.toLowerCase().includes(query));
410
+ }
411
+ handleSearch(event) {
412
+ if (event !== undefined) {
413
+ this.searchValue.set(event);
414
+ }
415
+ }
416
+ showAllTenants() {
417
+ this.showAll.update((value) => !value);
418
+ }
419
+ handleTenantSelect(event) {
420
+ if (!event.isUserInteraction) {
421
+ return;
422
+ }
423
+ this.selectedTenant.set(event.component.selectedItems[0] ?? null);
424
+ }
425
+ handleListItemKeyDown(event, tenant) {
426
+ if (event.key === 'Enter' || event.key === ' ') {
427
+ event.preventDefault();
428
+ void this.chooseTenant(tenant);
429
+ }
430
+ }
431
+ handleSelectBoxKeyDown(event) {
432
+ if (!(event instanceof KeyboardEvent)) {
433
+ return;
434
+ }
435
+ if (event.key !== 'Enter' && event.key !== 'NumpadEnter') {
436
+ return;
437
+ }
438
+ if (this.isSelectBoxOpen()) {
439
+ return;
440
+ }
441
+ event.preventDefault();
442
+ event.stopPropagation();
443
+ if (this.canApply()) {
444
+ this.applySelection();
445
+ }
446
+ }
447
+ applySelection() {
448
+ const tenant = this.selectedTenant();
449
+ if (tenant) {
450
+ void this.chooseTenant(tenant);
451
+ }
452
+ }
453
+ async chooseTenant(item) {
454
+ if (this.strategy) {
455
+ const updateContext = {
456
+ tenant: item,
457
+ user: this.sessionService.user,
458
+ };
459
+ await this.sessionService.updateToken(updateContext);
460
+ }
461
+ this.tenantChosen.emit();
462
+ return this.router.navigate(['/auth/account/app-chooser']);
463
+ }
464
+ //#endregion
465
+ //#region ---- Utility Methods ----
466
+ focusFirstListItem() {
467
+ const nav = this.listNav();
468
+ const items = this.listItems();
469
+ const tenants = this.allTenants();
470
+ const currentIndex = tenants.findIndex((tenant) => this.isTenantSelected(tenant));
471
+ if (nav && items.length > 0) {
472
+ nav.navigateTo(items[currentIndex >= 0 ? currentIndex : 0]);
473
+ }
474
+ }
475
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTenantChooserListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
476
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPTenantChooserListComponent, isStandalone: true, selector: "axp-tenant-chooser-list", inputs: { simple: { classPropertyName: "simple", publicName: "simple", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tenantChosen: "tenantChosen" }, viewQueries: [{ propertyName: "listNav", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "listItems", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], ngImport: i0, template: "@if (isLoading()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-3\">\n @for (item of skeletonItems; track item) {\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-12 ax-h-12 ax-rounded-full ax-shrink-0\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-flex-1 ax-h-6 ax-rounded-md\"></ax-skeleton>\n </div>\n }\n </div>\n} @else if (simple()) {\n <div class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n @for (tenant of allTenants(); track tenant.id) {\n <div\n class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-start ax-cursor-pointer\"\n (click)=\"chooseTenant(tenant)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-font-medium\">\n <div\n class=\"ax-w-12 ax-h-12 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-m-auto\"\n >\n <axp-logo\n [source]=\"tenant.logo ?? defaultLogo\"\n [attr.alt]=\"tenant.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-mx-auto ax-w-10 ax-h-10 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n </div>\n }\n </div>\n} @else if (useSelectBox()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-4\" (keydown.capture)=\"handleSelectBoxKeyDown($event)\">\n <ax-select-box\n class=\"ax-w-full\"\n [dataSource]=\"allTenants()\"\n textField=\"title\"\n valueField=\"id\"\n [value]=\"selectedTenant()\"\n [itemHeight]=\"56\"\n [placeholder]=\"('@auth:tenant-chooser.select-placeholder' | translate | async) ?? ''\"\n [itemTemplate]=\"tenantItemTemplate\"\n (onOpened)=\"isSelectBoxOpen.set(true)\"\n (onClosed)=\"isSelectBoxOpen.set(false)\"\n (onValueChanged)=\"handleTenantSelect($event)\"\n >\n <ax-search-box look=\"fill\"></ax-search-box>\n </ax-select-box>\n <ax-button\n class=\"ax-w-full\"\n color=\"primary\"\n [disabled]=\"!canApply()\"\n [text]=\"('@general:actions.apply.title' | translate | async) ?? ''\"\n (onClick)=\"applySelection()\"\n ></ax-button>\n </div>\n} @else {\n @if (showSearchAndViewAll()) {\n <ax-search-box\n [placeholder]=\"'@general:search.title' | translate | async\"\n [ngModel]=\"searchValue()\"\n (ngModelChange)=\"handleSearch($event)\"\n class=\"ax-w-full\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n }\n <div\n axListNavigation\n #listNav=\"axListNavigation\"\n class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-flex ax-flex-col ax-gap-1\"\n role=\"listbox\"\n >\n @for (tenant of displayedTenants(); track tenant.id) {\n <div\n axListNavigationItem\n #navItem=\"axListNavigationItem\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-selected]=\"isTenantSelected(tenant)\"\n class=\"ax-flex ax-gap-2 ax-items-center ax-p-2 ax-cursor-pointer ax-rounded-md ax-transition-colors ax-outline-none hover:ax-bg-primary-lightest hover:dark:ax-bg-primary-dark\"\n [class.ax-bg-primary-lighter]=\"isTenantSelected(tenant)\"\n [class.dark:ax-bg-primary-darker]=\"isTenantSelected(tenant)\"\n [class.ax-text-primary-on-lighter]=\"isTenantSelected(tenant)\"\n [class.dark:ax-text-primary-on-darker]=\"isTenantSelected(tenant)\"\n [class.ax-ring-2]=\"navItem.isActive()\"\n [class.ax-ring-primary]=\"navItem.isActive()\"\n (click)=\"chooseTenant(tenant)\"\n (keydown)=\"handleListItemKeyDown($event, tenant)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-min-w-0\">\n <div\n class=\"ax-shrink-0 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100\"\n [class.ax-w-10]=\"simple()\"\n [class.ax-h-10]=\"simple()\"\n [class.ax-w-12]=\"!simple()\"\n [class.ax-h-12]=\"!simple()\"\n >\n <axp-logo\n [source]=\"tenant.logo ?? defaultLogo\"\n [attr.alt]=\"tenant.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-bg-neutral-200 dark:ax-bg-neutral-800 ax-rounded-full\"\n [class.ax-w-8]=\"simple()\"\n [class.ax-h-8]=\"simple()\"\n [class.ax-w-10]=\"!simple()\"\n [class.ax-h-10]=\"!simple()\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-truncate ax-text-start md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n </div>\n }\n </div>\n @if (showSearchAndViewAll()) {\n <div class=\"ax-mt-6 ax-w-full ax-flex ax-justify-center\">\n <ax-button\n (onClick)=\"showAllTenants()\"\n class=\"ax-w-full\"\n look=\"outline\"\n [text]=\"\n showAll()\n ? ('@general:actions.view-less.title' | translate | async)\n : ('@general:actions.view-all.title' | translate | async)\n \"\n ></ax-button>\n </div>\n }\n}\n\n<ng-template #tenantItemTemplate let-item>\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <div\n class=\"ax-w-10 ax-h-10 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-shrink-0\"\n >\n <axp-logo\n [source]=\"item.data.logo ?? defaultLogo\"\n [attr.alt]=\"item.data.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-w-8 ax-h-8 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-text-start md:ax-text-base ax-text-sm\">{{ item.data.title }}</span>\n </div>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i2.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i4.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i5.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i5.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "pipe", type: i4$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
477
+ }
478
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTenantChooserListComponent, decorators: [{
479
+ type: Component,
480
+ args: [{ selector: 'axp-tenant-chooser-list', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
481
+ CommonModule,
482
+ FormsModule,
483
+ AXTranslationModule,
484
+ AXButtonModule,
485
+ AXDecoratorModule,
486
+ AXSkeletonModule,
487
+ AXSelectBoxModule,
488
+ AXSearchBoxModule,
489
+ AXListNavigationModule,
490
+ AXPLogoComponent,
491
+ ], template: "@if (isLoading()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-3\">\n @for (item of skeletonItems; track item) {\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-12 ax-h-12 ax-rounded-full ax-shrink-0\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-flex-1 ax-h-6 ax-rounded-md\"></ax-skeleton>\n </div>\n }\n </div>\n} @else if (simple()) {\n <div class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n @for (tenant of allTenants(); track tenant.id) {\n <div\n class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-start ax-cursor-pointer\"\n (click)=\"chooseTenant(tenant)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-font-medium\">\n <div\n class=\"ax-w-12 ax-h-12 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-m-auto\"\n >\n <axp-logo\n [source]=\"tenant.logo ?? defaultLogo\"\n [attr.alt]=\"tenant.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-mx-auto ax-w-10 ax-h-10 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n </div>\n }\n </div>\n} @else if (useSelectBox()) {\n <div class=\"ax-w-full ax-flex ax-flex-col ax-gap-4\" (keydown.capture)=\"handleSelectBoxKeyDown($event)\">\n <ax-select-box\n class=\"ax-w-full\"\n [dataSource]=\"allTenants()\"\n textField=\"title\"\n valueField=\"id\"\n [value]=\"selectedTenant()\"\n [itemHeight]=\"56\"\n [placeholder]=\"('@auth:tenant-chooser.select-placeholder' | translate | async) ?? ''\"\n [itemTemplate]=\"tenantItemTemplate\"\n (onOpened)=\"isSelectBoxOpen.set(true)\"\n (onClosed)=\"isSelectBoxOpen.set(false)\"\n (onValueChanged)=\"handleTenantSelect($event)\"\n >\n <ax-search-box look=\"fill\"></ax-search-box>\n </ax-select-box>\n <ax-button\n class=\"ax-w-full\"\n color=\"primary\"\n [disabled]=\"!canApply()\"\n [text]=\"('@general:actions.apply.title' | translate | async) ?? ''\"\n (onClick)=\"applySelection()\"\n ></ax-button>\n </div>\n} @else {\n @if (showSearchAndViewAll()) {\n <ax-search-box\n [placeholder]=\"'@general:search.title' | translate | async\"\n [ngModel]=\"searchValue()\"\n (ngModelChange)=\"handleSearch($event)\"\n class=\"ax-w-full\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n }\n <div\n axListNavigation\n #listNav=\"axListNavigation\"\n class=\"ax-w-full ax-overflow-auto ax-max-h-[300px] ax-flex ax-flex-col ax-gap-1\"\n role=\"listbox\"\n >\n @for (tenant of displayedTenants(); track tenant.id) {\n <div\n axListNavigationItem\n #navItem=\"axListNavigationItem\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-selected]=\"isTenantSelected(tenant)\"\n class=\"ax-flex ax-gap-2 ax-items-center ax-p-2 ax-cursor-pointer ax-rounded-md ax-transition-colors ax-outline-none hover:ax-bg-primary-lightest hover:dark:ax-bg-primary-dark\"\n [class.ax-bg-primary-lighter]=\"isTenantSelected(tenant)\"\n [class.dark:ax-bg-primary-darker]=\"isTenantSelected(tenant)\"\n [class.ax-text-primary-on-lighter]=\"isTenantSelected(tenant)\"\n [class.dark:ax-text-primary-on-darker]=\"isTenantSelected(tenant)\"\n [class.ax-ring-2]=\"navItem.isActive()\"\n [class.ax-ring-primary]=\"navItem.isActive()\"\n (click)=\"chooseTenant(tenant)\"\n (keydown)=\"handleListItemKeyDown($event, tenant)\"\n >\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-min-w-0\">\n <div\n class=\"ax-shrink-0 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100\"\n [class.ax-w-10]=\"simple()\"\n [class.ax-h-10]=\"simple()\"\n [class.ax-w-12]=\"!simple()\"\n [class.ax-h-12]=\"!simple()\"\n >\n <axp-logo\n [source]=\"tenant.logo ?? defaultLogo\"\n [attr.alt]=\"tenant.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-bg-neutral-200 dark:ax-bg-neutral-800 ax-rounded-full\"\n [class.ax-w-8]=\"simple()\"\n [class.ax-h-8]=\"simple()\"\n [class.ax-w-10]=\"!simple()\"\n [class.ax-h-10]=\"!simple()\"\n ></axp-logo>\n </div>\n <span class=\"ax-flex-1 ax-truncate ax-text-start md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n </div>\n }\n </div>\n @if (showSearchAndViewAll()) {\n <div class=\"ax-mt-6 ax-w-full ax-flex ax-justify-center\">\n <ax-button\n (onClick)=\"showAllTenants()\"\n class=\"ax-w-full\"\n look=\"outline\"\n [text]=\"\n showAll()\n ? ('@general:actions.view-less.title' | translate | async)\n : ('@general:actions.view-all.title' | translate | async)\n \"\n ></ax-button>\n </div>\n }\n}\n\n<ng-template #tenantItemTemplate let-item>\n <div class=\"ax-flex ax-gap-2 ax-items-center ax-p-2\">\n <div\n class=\"ax-w-10 ax-h-10 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-shrink-0\"\n >\n <axp-logo\n [source]=\"item.data.logo ?? defaultLogo\"\n [attr.alt]=\"item.data.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-w-8 ax-h-8 ax-bg-neutral-200 ax-rounded-full\"\n ></axp-logo>\n </div>\n <span class=\"ax-text-start md:ax-text-base ax-text-sm\">{{ item.data.title }}</span>\n </div>\n</ng-template>\n" }]
492
+ }], ctorParameters: () => [], propDecorators: { simple: [{ type: i0.Input, args: [{ isSignal: true, alias: "simple", required: false }] }], tenantChosen: [{ type: i0.Output, args: ["tenantChosen"] }], listNav: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXListNavigationDirective), { isSignal: true }] }], listItems: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => AXListNavigationItemDirective), { isSignal: true }] }] } });
493
+
494
+ class AXPTenantChooserDropdownComponent {
495
+ constructor() {
496
+ this.sessionService = inject(AXPSessionService);
497
+ this.tenants$ = this.sessionService.tenants$;
498
+ this.tenant = this.sessionService.tenant;
499
+ this.tenantPopover = viewChild('tenantPopover', ...(ngDevMode ? [{ debugName: "tenantPopover" }] : /* istanbul ignore next */ []));
500
+ }
501
+ closePopover() {
502
+ this.tenantPopover()?.close();
503
+ }
504
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTenantChooserDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
505
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPTenantChooserDropdownComponent, isStandalone: true, selector: "axp-tenant-chooser-dropdown", viewQueries: [{ propertyName: "tenantPopover", first: true, predicate: ["tenantPopover"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (tenants$ | async; as tenants) {\n@if (tenants.length > 1) {\n<ax-button [text]=\"tenant?.title ?? ''\" class=\"ax-xs\" look=\"blank\" #tenantChooser>\n <ax-suffix>\n <ax-icon class=\"fa-solid fa-caret-down\"></ax-icon>\n </ax-suffix>\n</ax-button>\n<ax-popover [target]=\"tenantChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\"\n #tenantPopover>\n <div class=\"ax-bg-lightest ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-1\">\n <axp-tenant-chooser-list [simple]=\"true\" (tenantChosen)=\"closePopover()\"></axp-tenant-chooser-list>\n </div>\n</ax-popover>\n} @else {\n<ax-button [text]=\"tenant?.title ?? ''\" class=\"ax-xs\" look=\"blank\"></ax-button>\n}\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i2$2.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disablePanelClass", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "closeOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXPTenantChooserListComponent, selector: "axp-tenant-chooser-list", inputs: ["simple"], outputs: ["tenantChosen"] }, { kind: "pipe", type: i4$1.AsyncPipe, name: "async" }] }); }
506
+ }
507
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTenantChooserDropdownComponent, decorators: [{
508
+ type: Component,
509
+ args: [{ selector: 'axp-tenant-chooser-dropdown', imports: [CommonModule, AXButtonModule, AXPopoverModule, AXDecoratorModule, AXPTenantChooserListComponent], template: "@if (tenants$ | async; as tenants) {\n@if (tenants.length > 1) {\n<ax-button [text]=\"tenant?.title ?? ''\" class=\"ax-xs\" look=\"blank\" #tenantChooser>\n <ax-suffix>\n <ax-icon class=\"fa-solid fa-caret-down\"></ax-icon>\n </ax-suffix>\n</ax-button>\n<ax-popover [target]=\"tenantChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\"\n #tenantPopover>\n <div class=\"ax-bg-lightest ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-1\">\n <axp-tenant-chooser-list [simple]=\"true\" (tenantChosen)=\"closePopover()\"></axp-tenant-chooser-list>\n </div>\n</ax-popover>\n} @else {\n<ax-button [text]=\"tenant?.title ?? ''\" class=\"ax-xs\" look=\"blank\"></ax-button>\n}\n}" }]
510
+ }], propDecorators: { tenantPopover: [{ type: i0.ViewChild, args: ['tenantPopover', { isSignal: true }] }] } });
511
+
512
+ //#region ---- Profile slot menu hook ----
513
+ const PROFILE_SLOT_MENU_ITEMS_HOOK = 'profile-slot.menu-items';
514
+ //#endregion
515
+
516
+ class AXMAuthProfileSlotComponent {
517
+ constructor() {
518
+ //#region ---- Services & Dependencies ----
519
+ this.router = inject(Router);
520
+ this.sessionService = inject(AXPSessionService);
521
+ this.themeService = inject(AXPLayoutThemeService);
522
+ this.hooks = inject(AXPHookService);
523
+ this.workflow = inject(AXPWorkflowService);
524
+ this.commandService = inject(AXPCommandService);
525
+ this.shortcutRegistry = inject(AXPKeyboardShortcutRegistry);
526
+ this.destroyRef = inject(DestroyRef);
527
+ //#endregion
528
+ //#region ---- State ----
529
+ this.isDarkMode = this.themeService.isDarkMode;
530
+ this.user$ = this.sessionService.user$;
531
+ this.tenant$ = this.sessionService.tenant$;
532
+ this.isAuthenticated$ = this.sessionService.isAuthenticated$;
533
+ this.isAuthenticated = toSignal(this.sessionService.isAuthenticated$, { initialValue: false });
534
+ this.menuItems = signal([], ...(ngDevMode ? [{ debugName: "menuItems" }] : /* istanbul ignore next */ []));
535
+ //#endregion
536
+ //#region ---- UI Handlers ----
537
+ this.appName = () => this.sessionService.application?.name;
538
+ }
539
+ //#endregion
540
+ //#region ---- Lifecycle Methods ----
541
+ async ngOnInit() {
542
+ await this.loadMenuItems();
543
+ }
544
+ menuItemClass(item) {
545
+ return {
546
+ 'ax-text-danger-500': item.color === 'danger',
547
+ };
548
+ }
549
+ shortcutKeys(chord) {
550
+ return chordToKbdItemKeys(chord);
551
+ }
552
+ primaryShortcut(item) {
553
+ return getPrimaryKeyboardShortcutChord(item.shortcuts);
554
+ }
555
+ async handleMenuItemClick(item, popover) {
556
+ popover.close();
557
+ if (item.command) {
558
+ await this.executeCommand(item.command);
559
+ }
560
+ }
561
+ handleSignIn() {
562
+ this.router.navigate(['/auth/login']);
563
+ }
564
+ //#endregion
565
+ //#region ---- Private Methods ----
566
+ async loadMenuItems() {
567
+ const payload = await this.hooks.runAsync(PROFILE_SLOT_MENU_ITEMS_HOOK, {
568
+ items: [],
569
+ });
570
+ const items = payload.items ?? [];
571
+ this.menuItems.set(items);
572
+ this.registerMenuShortcuts(items);
573
+ }
574
+ registerMenuShortcuts(items) {
575
+ const shortcuts = [];
576
+ for (const item of items) {
577
+ if (item.visible === false || !item.command || !item.shortcuts?.length) {
578
+ continue;
579
+ }
580
+ const command = item.command;
581
+ for (const shortcut of normalizeKeyboardShortcuts(item.shortcuts)) {
582
+ for (const chord of shortcut.keys) {
583
+ shortcuts.push({
584
+ keys: [chord],
585
+ title: item.title,
586
+ group: '@general:keyboard-shortcuts.groups.global',
587
+ allowInEditableFields: shortcut.allowInEditableFields,
588
+ directionBehavior: shortcut.directionBehavior,
589
+ when: () => this.isAuthenticated() && (shortcut.when?.() ?? true),
590
+ handler: () => {
591
+ void this.executeCommand(command);
592
+ },
593
+ });
594
+ }
595
+ }
596
+ }
597
+ if (shortcuts.length === 0) {
598
+ return;
599
+ }
600
+ this.shortcutRegistry.register({
601
+ owner: this.destroyRef,
602
+ id: 'profile-slot-menu',
603
+ priority: AXPKeyboardShortcutPriority.Global,
604
+ group: '@general:keyboard-shortcuts.groups.global',
605
+ when: () => this.isAuthenticated(),
606
+ shortcuts,
607
+ });
608
+ }
609
+ async executeCommand(command) {
610
+ if (command.name === 'navigate') {
611
+ const path = this.resolveNavigatePath(command.options);
612
+ if (!path) {
613
+ return;
614
+ }
615
+ await this.workflow.execute('navigate', {
616
+ type: 'router',
617
+ options: { path },
618
+ });
619
+ return;
620
+ }
621
+ if (this.commandService.exists(command.name)) {
622
+ await this.commandService.execute(command.name, command.options ?? {});
623
+ }
624
+ }
625
+ resolveNavigatePath(options) {
626
+ if (!options) {
627
+ return undefined;
628
+ }
629
+ if (typeof options['path'] === 'string') {
630
+ return options['path'];
631
+ }
632
+ const routerOptions = options['router'];
633
+ if (typeof routerOptions?.path === 'string') {
634
+ return routerOptions.path;
635
+ }
636
+ const nestedOptions = options['options'];
637
+ return nestedOptions?.path;
638
+ }
639
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthProfileSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
640
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "@if (isAuthenticated$ | async) {\n<div class=\"ax-size-fit\">\n <div #avatar>\n <axp-user-avatar [size]=\"36\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n </div>\n\n <ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" #p>\n <div class=\"ax-bg-lightest ax-border ax-border-lightest ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <axp-user-avatar [size]=\"64\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"axp-profile-slot-menus\">\n <ul>\n @for (item of menuItems(); track item.name ?? item.title) {\n @if (item.visible != false) {\n <li [class]=\"menuItemClass(item)\">\n <a (click)=\"handleMenuItemClick(item, p)\">\n <i [class]=\"item.icon\"></i>\n <span class=\"ax-flex-1\">{{ item.title | translate | async }}</span>\n <!-- @if (primaryShortcut(item); as shortcut) {\n <ax-kbd class=\"look-text ax-ms-auto ax-shrink-0\">\n <ax-kbd-item [keys]=\"shortcutKeys(shortcut)\"></ax-kbd-item>\n </ax-kbd>\n } -->\n </a>\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </ax-popover>\n</div>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}", styles: [".axp-profile-slot-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity, 1));padding-left:.5rem;padding-right:.5rem}.axp-profile-slot-menus ul:last-child{border-width:0px}.axp-profile-slot-menus ul li{display:flex;cursor:pointer;border-radius:.375rem}.axp-profile-slot-menus ul li:last-child{margin-bottom:.5rem}.axp-profile-slot-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-dark-surface),var(--tw-bg-opacity, 1))}.axp-profile-slot-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}.axp-profile-slot-menus ul li a{display:flex;height:100%;width:100%;align-items:center;gap:.5rem;padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type:
641
+ //
642
+ AXImageModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i2$2.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disablePanelClass", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "closeOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type:
643
+ // AXKBDComponent,
644
+ // AXKBDItemComponent,
645
+ AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXPUserAvatarComponent, selector: "axp-user-avatar", inputs: ["size", "userId"] }, { kind: "component", type:
646
+ //
647
+ AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "pipe", type: i4$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
648
+ }
649
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthProfileSlotComponent, decorators: [{
650
+ type: Component,
651
+ args: [{ imports: [
652
+ CommonModule,
653
+ RouterModule,
654
+ //
655
+ AXImageModule,
656
+ AXAvatarModule,
657
+ AXPopoverModule,
658
+ AXButtonModule,
659
+ AXDecoratorModule,
660
+ // AXKBDComponent,
661
+ // AXKBDItemComponent,
662
+ AXLoadingModule,
663
+ AXTranslationModule,
664
+ AXPUserAvatarComponent,
665
+ //
666
+ AXPTenantChooserDropdownComponent,
667
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (isAuthenticated$ | async) {\n<div class=\"ax-size-fit\">\n <div #avatar>\n <axp-user-avatar [size]=\"36\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n </div>\n\n <ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" #p>\n <div class=\"ax-bg-lightest ax-border ax-border-lightest ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <axp-user-avatar [size]=\"64\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"axp-profile-slot-menus\">\n <ul>\n @for (item of menuItems(); track item.name ?? item.title) {\n @if (item.visible != false) {\n <li [class]=\"menuItemClass(item)\">\n <a (click)=\"handleMenuItemClick(item, p)\">\n <i [class]=\"item.icon\"></i>\n <span class=\"ax-flex-1\">{{ item.title | translate | async }}</span>\n <!-- @if (primaryShortcut(item); as shortcut) {\n <ax-kbd class=\"look-text ax-ms-auto ax-shrink-0\">\n <ax-kbd-item [keys]=\"shortcutKeys(shortcut)\"></ax-kbd-item>\n </ax-kbd>\n } -->\n </a>\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </ax-popover>\n</div>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}", styles: [".axp-profile-slot-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity, 1));padding-left:.5rem;padding-right:.5rem}.axp-profile-slot-menus ul:last-child{border-width:0px}.axp-profile-slot-menus ul li{display:flex;cursor:pointer;border-radius:.375rem}.axp-profile-slot-menus ul li:last-child{margin-bottom:.5rem}.axp-profile-slot-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-dark-surface),var(--tw-bg-opacity, 1))}.axp-profile-slot-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}.axp-profile-slot-menus ul li a{display:flex;height:100%;width:100%;align-items:center;gap:.5rem;padding:.5rem}\n"] }]
668
+ }] });
669
+
670
+ class AXMUserProfileCardSlotComponent {
671
+ constructor() {
672
+ this.router = inject(Router);
673
+ this.sessionService = inject(AXPSessionService);
674
+ this.dataService = inject(AXPDataProvider, { optional: true });
675
+ this.themeStore = inject(AXPLayoutThemeService);
676
+ this.deviceService = inject(AXPDeviceService);
677
+ this.isCompactMode = computed(() => {
678
+ this.deviceService.screenSize();
679
+ return this.themeStore.effectiveMenuVerticalMode() === AXPMenuVerticalMode.Compact;
680
+ }, ...(ngDevMode ? [{ debugName: "isCompactMode" }] : /* istanbul ignore next */ []));
681
+ this.hasPicture = signal(true, ...(ngDevMode ? [{ debugName: "hasPicture" }] : /* istanbul ignore next */ []));
682
+ this.avatarText = signal('', ...(ngDevMode ? [{ debugName: "avatarText" }] : /* istanbul ignore next */ []));
683
+ this.user$ = this.sessionService.user$;
684
+ this.tenant$ = this.sessionService.tenant$;
685
+ this.isAuthenticated$ = this.sessionService.isAuthenticated$;
686
+ this.appName = () => this.sessionService.application?.name;
687
+ this.getAvatarText = () => {
688
+ this.user$.pipe(first()).subscribe((user) => {
689
+ const names = user?.title.split(' ');
690
+ if (names?.length && names?.length > 1) {
691
+ this.avatarText.set(`${names[0][0].toUpperCase()}${names[names.length - 1][0].toUpperCase()}`);
692
+ }
693
+ else
694
+ return this.avatarText.set('AC');
695
+ });
696
+ };
697
+ this.loadImage();
698
+ this.getAvatarText();
699
+ }
700
+ editProfile() {
701
+ this.router.navigate([`/${this.appName()}/m/securityManagement/e/profile/0/view`]);
702
+ }
703
+ async logOut() {
704
+ await this.sessionService.signout();
705
+ }
706
+ toggleProfileMenu() {
707
+ this.profilePopover.open();
708
+ }
709
+ handleSignIn() {
710
+ this.router.navigate(['/auth/login']);
711
+ }
712
+ onImageError(event) {
713
+ this.hasPicture.set(false);
714
+ }
715
+ async loadImage() {
716
+ try {
717
+ const url = this.sessionService.user?.avatar;
718
+ if (url?.toLowerCase().startsWith('http')) {
719
+ this.src = url;
720
+ }
721
+ else if (this.sessionService.user?.avatar != 'null' && this.dataService) {
722
+ const blob = await this.dataService.viewFile(url, '');
723
+ this.src = URL.createObjectURL(blob);
724
+ }
725
+ else {
726
+ //this.src = this.mockerService.avatar();
727
+ }
728
+ }
729
+ catch (error) {
730
+ this.hasPicture.set(false);
731
+ console.error('Failed to load image by ID:', error);
732
+ this.src = '';
733
+ }
734
+ }
735
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMUserProfileCardSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
736
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXMUserProfileCardSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<div class=\"ax-p-3 ax-flex ax-items-center ax-gap-1 ax-border-b ax-border-lighter\" [class.ax-justify-center]=\"isCompactMode()\">\n <div #avatar>\n <axp-user-avatar [size]=\"48\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n </div>\n @if (!isCompactMode()) {\n <div class=\"ax-flex ax-flex-col\">\n <ax-title class=\"ax-text-sm ax-font-medium ax-px-3\">{{ (user$ | async)?.title }}</ax-title>\n <axp-tenant-chooser-dropdown />\n </div>\n }\n</div>\n}\n", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type:
737
+ //
738
+ AXImageModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type:
739
+ //
740
+ AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "component", type: AXPUserAvatarComponent, selector: "axp-user-avatar", inputs: ["size", "userId"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
741
+ }
742
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMUserProfileCardSlotComponent, decorators: [{
743
+ type: Component,
744
+ args: [{ imports: [
745
+ RouterModule,
746
+ //
747
+ AXImageModule,
748
+ AXAvatarModule,
749
+ AXPopoverModule,
750
+ AXButtonModule,
751
+ AXDecoratorModule,
752
+ AXLoadingModule,
753
+ AXTranslationModule,
754
+ //
755
+ AXPTenantChooserDropdownComponent,
756
+ AsyncPipe,
757
+ AXPUserAvatarComponent,
758
+ ], template: "@if((isAuthenticated$ | async)) {\n<div class=\"ax-p-3 ax-flex ax-items-center ax-gap-1 ax-border-b ax-border-lighter\" [class.ax-justify-center]=\"isCompactMode()\">\n <div #avatar>\n <axp-user-avatar [size]=\"48\" [userId]=\"(user$ | async)?.id!\"></axp-user-avatar>\n </div>\n @if (!isCompactMode()) {\n <div class=\"ax-flex ax-flex-col\">\n <ax-title class=\"ax-text-sm ax-font-medium ax-px-3\">{{ (user$ | async)?.title }}</ax-title>\n <axp-tenant-chooser-dropdown />\n </div>\n }\n</div>\n}\n" }]
759
+ }], ctorParameters: () => [], propDecorators: { profilePopover: [{
760
+ type: ViewChild,
761
+ args: ['profilePopover']
762
+ }] } });
763
+
764
+ class AXPIdleService {
765
+ constructor() {
766
+ this.configs = inject(AXM_AUTH_CONFIG_TOKEN);
767
+ this.idle$ = new Subject();
768
+ this.timeoutDuration = this.configs.idleTimeout ?? 10 * 60 * 1000;
769
+ this.userActivity$ = new Subject();
770
+ this.idleSubscription = null;
771
+ this.setupActivityListeners();
772
+ }
773
+ get idleState$() {
774
+ return this.idle$.asObservable();
775
+ }
776
+ setupActivityListeners() {
777
+ const activityEvents = ['mousemove', 'keydown', 'wheel'];
778
+ activityEvents.forEach(event => document.addEventListener(event, () => this.resetTimer()));
779
+ }
780
+ startWatching() {
781
+ this.stopWatching(); // Stop any existing subscription
782
+ this.idleSubscription = this.userActivity$.pipe(startWith(null), switchMap(() => timer(this.timeoutDuration)), tap(() => this.idle$.next())).subscribe();
783
+ }
784
+ resetTimer() {
785
+ this.userActivity$.next();
786
+ }
787
+ stopWatching() {
788
+ if (this.idleSubscription) {
789
+ this.idleSubscription.unsubscribe();
790
+ this.idleSubscription = null;
791
+ }
792
+ }
793
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPIdleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
794
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPIdleService, providedIn: 'root' }); }
795
+ }
796
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPIdleService, decorators: [{
797
+ type: Injectable,
798
+ args: [{ providedIn: 'root' }]
799
+ }], ctorParameters: () => [] });
800
+
801
+ class AXMDeviceSessionsService extends AXMEntityCrudServiceImpl {
802
+ }
803
+ class AXMDeviceSessionsServiceImpl extends AXMDeviceSessionsService {
804
+ constructor(http) {
805
+ super('SecurityManagement.DeviceSessions'); // Fixed: Use correct entity name format
806
+ this.http = http;
807
+ // private aXMAuthConfigs: AXMAuthConfigs = inject(AXM_AUTH_CONFIG_TOKEN);
808
+ this.configs = inject(AXP_ROOT_CONFIG_TOKEN);
809
+ }
810
+ terminate(id) {
811
+ throw new Error('Method not implemented.');
812
+ }
813
+ async terminateAllCurrentUserSessions() {
814
+ return (this.http
815
+ .post(this.configs.baseUrl + '/security-management/device-sessions/Terminate-All', {})
816
+ .pipe(map((t) => (t === undefined ? false : t)))
817
+ .toPromise() ?? false);
818
+ }
819
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMDeviceSessionsServiceImpl, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
820
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMDeviceSessionsServiceImpl }); }
821
+ }
822
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMDeviceSessionsServiceImpl, decorators: [{
823
+ type: Injectable
824
+ }], ctorParameters: () => [{ type: i1$2.HttpClient }] });
825
+
826
+ class AXMUserDeviceSessionsService {
827
+ }
828
+ class AXMUserDeviceSessionsServiceImp extends AXMUserDeviceSessionsService {
829
+ constructor() {
830
+ super(); // Call the base class constructor (good practice)
831
+ this.sessionService = inject(AXPSessionService);
832
+ this.deviceSessionsService = inject(AXMDeviceSessionsService);
833
+ this.settingsService = inject(AXPSettingsService);
834
+ }
835
+ async getSessions() {
836
+ const userId = this.sessionService.user?.id;
837
+ if (!userId) {
838
+ return [];
839
+ }
840
+ const response = await this.deviceSessionsService.query();
841
+ const items = response.items.filter((item) => item.userId === userId && String(item.status).toLowerCase() === 'active' && !item.isActiveSession);
842
+ return items;
843
+ }
844
+ async getCurrentActiveSessions() {
845
+ const userId = this.sessionService.user?.id;
846
+ if (!userId) {
847
+ throw new Error('No user found in session');
848
+ }
849
+ const response = await this.deviceSessionsService.query();
850
+ const activeSession = response.items.find((item) => item.userId === userId && String(item.status).toLowerCase() === 'active' && item.isActiveSession);
851
+ return activeSession;
852
+ }
853
+ async terminateSession(sessionId) {
854
+ await this.deviceSessionsService.updateOne(sessionId, { status: 'revoked' });
855
+ }
856
+ async terminateAllSession() {
857
+ await this.deviceSessionsService.terminateAllCurrentUserSessions();
858
+ }
859
+ async setTokenLifetimeMinutes(value) {
860
+ await this.settingsService.scope(AXPPlatformScope.User).set('session-timeout', value);
861
+ let s2 = await this.settingsService.scope(AXPPlatformScope.User).get('session-timeout');
862
+ }
863
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMUserDeviceSessionsServiceImp, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
864
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMUserDeviceSessionsServiceImp }); }
865
+ }
866
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMUserDeviceSessionsServiceImp, decorators: [{
867
+ type: Injectable
868
+ }], ctorParameters: () => [] });
869
+
870
+ const canActivateTenantChooser = async (route, state) => {
871
+ const sessionService = inject(AXPSessionService);
872
+ const authStrategyRegistry = inject(AXPAuthStrategyRegistryService);
873
+ const router = inject(Router);
874
+ const strategyName = sessionService.getSessionData()?.strategy;
875
+ const strategy = authStrategyRegistry.get(strategyName);
876
+ if (!sessionService.user?.id) {
877
+ return router.createUrlTree(['/auth/login']);
878
+ }
879
+ const tenants = await firstValueFrom(sessionService.tenants$);
880
+ if (tenants.length === 0) {
881
+ window.alert('You do not have any tenant assigned to your account and cannot use the site. Please contact your administrator.');
882
+ return router.createUrlTree(['/auth/login']);
883
+ }
884
+ if (tenants.length === 1) {
885
+ if (strategy && typeof strategy.updateToken === 'function') {
886
+ const updateContext = {
887
+ user: sessionService.user,
888
+ tenant: tenants[0],
889
+ };
890
+ await sessionService.updateToken(updateContext);
891
+ return router.createUrlTree(['/auth/account/app-chooser']);
892
+ }
893
+ return false;
894
+ }
895
+ return true;
896
+ };
897
+
898
+ const canActivateAppChooser = async (route, state) => {
899
+ const sessionService = inject(AXPSessionService);
900
+ const authStrategyRegistry = inject(AXPAuthStrategyRegistryService);
901
+ const homePageService = inject(AXPHomePageService);
902
+ const router = inject(Router);
903
+ const strategyName = sessionService.getSessionData()?.strategy;
904
+ const strategy = authStrategyRegistry.get(strategyName);
905
+ const apps = await firstValueFrom(sessionService.applications$);
906
+ if (apps.length === 0) {
907
+ await router.navigate(['/auth/login']);
908
+ return false;
909
+ }
910
+ if (apps.length === 1) {
911
+ const tenantId = sessionService.tenant?.id;
912
+ if (!tenantId) {
913
+ throw new Error('Tenant ID is missing. Please contact support.');
914
+ }
915
+ if (strategy && typeof strategy.updateToken === 'function') {
916
+ const updateContext = {
917
+ user: sessionService.user,
918
+ tenant: sessionService.tenant,
919
+ application: apps[0],
920
+ };
921
+ await sessionService.updateToken(updateContext);
922
+ return router.createUrlTree([homePageService.getCurrent().path]);
923
+ }
924
+ return false;
925
+ }
926
+ return true;
927
+ };
928
+
929
+ function routesFacory() {
930
+ let routes = [];
931
+ routes = [
932
+ {
933
+ path: 'tenant-chooser',
934
+ loadComponent: () => import('./acorex-modules-auth-tenant-chooser.component-qGfNSQ6H.mjs').then((c) => c.AXPAuthTenantChooserComponent),
935
+ canActivate: [AXPAuthGuard, canActivateTenantChooser],
936
+ },
937
+ {
938
+ path: 'app-chooser',
939
+ loadComponent: () => import('./acorex-modules-auth-app-chooser.component-MjGWaBI0.mjs').then((c) => c.AXPAuthAppChooserComponent),
940
+ canActivate: [AXPAuthGuard, canActivateAppChooser],
941
+ },
942
+ ];
943
+ return routes;
944
+ }
945
+ class AXPAccountModule {
946
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAccountModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
947
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPAccountModule, imports: [RouterModule, i1$3.AXPComponentSlotModule] }); }
948
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAccountModule, providers: [
949
+ {
950
+ provide: ROUTES,
951
+ multi: true,
952
+ useFactory: routesFacory,
953
+ },
954
+ {
955
+ provide: AXMUserDeviceSessionsService,
956
+ useClass: AXMUserDeviceSessionsServiceImp,
957
+ },
958
+ ], imports: [RouterModule,
959
+ //
960
+ AXPComponentSlotModule.forChild({
961
+ 'root-side-menu-header': [
962
+ {
963
+ priority: 1,
964
+ name: 'user-card',
965
+ component: AXMUserProfileCardSlotComponent,
966
+ },
967
+ ],
968
+ 'root-header-end': [
969
+ {
970
+ priority: 98,
971
+ name: 'app-choser',
972
+ component: AXMAppChooserSlotComponent,
973
+ },
974
+ {
975
+ priority: 99,
976
+ name: 'profile',
977
+ component: AXMAuthProfileSlotComponent,
978
+ },
979
+ ],
980
+ })] }); }
981
+ }
982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAccountModule, decorators: [{
983
+ type: NgModule,
984
+ args: [{
985
+ declarations: [],
986
+ imports: [
987
+ RouterModule,
988
+ //
989
+ AXPComponentSlotModule.forChild({
990
+ 'root-side-menu-header': [
991
+ {
992
+ priority: 1,
993
+ name: 'user-card',
994
+ component: AXMUserProfileCardSlotComponent,
995
+ },
996
+ ],
997
+ 'root-header-end': [
998
+ {
999
+ priority: 98,
1000
+ name: 'app-choser',
1001
+ component: AXMAppChooserSlotComponent,
1002
+ },
1003
+ {
1004
+ priority: 99,
1005
+ name: 'profile',
1006
+ component: AXMAuthProfileSlotComponent,
1007
+ },
1008
+ ],
1009
+ }),
1010
+ ],
1011
+ exports: [],
1012
+ providers: [
1013
+ {
1014
+ provide: ROUTES,
1015
+ multi: true,
1016
+ useFactory: routesFacory,
1017
+ },
1018
+ {
1019
+ provide: AXMUserDeviceSessionsService,
1020
+ useClass: AXMUserDeviceSessionsServiceImp,
1021
+ },
1022
+ ],
1023
+ }]
1024
+ }] });
1025
+
1026
+ var account_module = /*#__PURE__*/Object.freeze({
1027
+ __proto__: null,
1028
+ AXPAccountModule: AXPAccountModule
1029
+ });
1030
+
1031
+ //#region ---- Hook keys ----
1032
+ const PROFILE_PAGE_GROUPS_HOOK = 'profile-page.groups';
1033
+ const PROFILE_PAGE_SECTIONS_HOOK = 'profile-page.sections';
1034
+ const PROFILE_PAGE_HEADER_META_HOOK = 'profile-page.header-meta';
1035
+ //#endregion
1036
+ //#region ---- Helpers ----
1037
+ /** Resolves section content; top-level `actions` imply card mode. */
1038
+ function resolveUserProfileSectionContent(section) {
1039
+ if (section.content) {
1040
+ return section.content;
1041
+ }
1042
+ return { mode: 'card', actions: section.actions ?? [] };
1043
+ }
1044
+ /** Whether the group renders a full-tab component instead of sections. */
1045
+ function isUserProfileGroupComponent(group) {
1046
+ return group.content?.mode === 'component';
1047
+ }
1048
+ //#endregion
1049
+
1050
+ //#region ---- Profile page component keys ----
1051
+ /** Full-tab activity heatmap on the profile Activity group. */
1052
+ const PROFILE_ACTIVITY_CHART_COMPONENT_KEY = 'auth.profile-activity-chart';
1053
+ /** Danger-zone block for the delete-account profile section. */
1054
+ const PROFILE_DELETE_ACCOUNT_DANGER_ZONE_COMPONENT_KEY = 'auth.profile-delete-account-danger-zone';
1055
+ //#endregion
1056
+
1057
+ //#region ---- Helpers ----
1058
+ const comingSoon = (messageKey) => ({
1059
+ name: 'auth:profile-coming-soon',
1060
+ options: { messageKey },
1061
+ });
1062
+ //#endregion
1063
+ //#region ---- Core profile groups ----
1064
+ /** Registers built-in profile page tab groups. */
1065
+ const CoreProfileGroupsHookProvider = {
1066
+ key: PROFILE_PAGE_GROUPS_HOOK,
1067
+ priority: 0,
1068
+ execute: (payload) => ({
1069
+ ...payload,
1070
+ groups: [
1071
+ ...payload.groups,
1072
+ {
1073
+ id: 'account',
1074
+ title: '@auth:profile-page.groups.account.title',
1075
+ icon: 'fa-light fa-user',
1076
+ priority: 10,
1077
+ },
1078
+ {
1079
+ id: 'security',
1080
+ title: '@auth:profile-page.groups.security.title',
1081
+ icon: 'fa-light fa-shield-halved',
1082
+ priority: 20,
1083
+ },
1084
+ {
1085
+ id: 'requests',
1086
+ title: '@auth:profile-page.groups.requests.title',
1087
+ icon: 'fa-light fa-inbox',
1088
+ priority: 30,
1089
+ },
1090
+ {
1091
+ id: 'activity',
1092
+ title: '@auth:profile-page.groups.activity.title',
1093
+ icon: 'fa-light fa-clock-rotate-left',
1094
+ priority: 40,
1095
+ content: {
1096
+ mode: 'component',
1097
+ componentKey: PROFILE_ACTIVITY_CHART_COMPONENT_KEY,
1098
+ },
1099
+ },
1100
+ {
1101
+ id: 'privacy',
1102
+ title: '@auth:profile-page.groups.privacy.title',
1103
+ icon: 'fa-light fa-user-shield',
1104
+ priority: 50,
1105
+ },
1106
+ ],
1107
+ }),
1108
+ };
1109
+ //#endregion
1110
+ //#region ---- Core profile sections ----
1111
+ /** Registers built-in profile hub section cards and actions. */
1112
+ const CoreProfileSectionsHookProvider = {
1113
+ key: PROFILE_PAGE_SECTIONS_HOOK,
1114
+ priority: 0,
1115
+ execute: (payload) => {
1116
+ const sessionService = inject(AXPSessionService);
1117
+ const appName = sessionService.application?.name;
1118
+ return {
1119
+ ...payload,
1120
+ sections: [
1121
+ ...payload.sections,
1122
+ {
1123
+ id: 'basic-info',
1124
+ groupId: 'account',
1125
+ title: '@auth:profile-page.sections.basic-info.title',
1126
+ description: '@auth:profile-page.sections.basic-info.description',
1127
+ icon: 'fa-light fa-address-card',
1128
+ priority: 10,
1129
+ layout: { colSpan: 6 },
1130
+ actions: [
1131
+ {
1132
+ name: 'edit-basic-info',
1133
+ title: '@auth:profile-page.sections.basic-info.actions.edit',
1134
+ icon: 'fa-light fa-pen',
1135
+ command: appName
1136
+ ? {
1137
+ name: 'navigate',
1138
+ options: { path: `/${appName}/m/securityManagement/e/profile/0/view` },
1139
+ }
1140
+ : { name: 'auth:edit-basic-info' },
1141
+ },
1142
+ ],
1143
+ },
1144
+ {
1145
+ id: 'signature',
1146
+ groupId: 'account',
1147
+ title: '@auth:profile-page.sections.signature.title',
1148
+ description: '@auth:profile-page.sections.signature.description',
1149
+ icon: 'fa-light fa-signature',
1150
+ priority: 20,
1151
+ layout: { colSpan: 6 },
1152
+ actions: [
1153
+ {
1154
+ name: 'edit-signature',
1155
+ title: '@auth:profile-page.sections.signature.actions.manage',
1156
+ icon: 'fa-light fa-pen',
1157
+ command: { name: 'auth:edit-signature' },
1158
+ },
1159
+ ],
1160
+ },
1161
+ {
1162
+ id: 'change-password',
1163
+ groupId: 'security',
1164
+ title: '@auth:profile-page.sections.change-password.title',
1165
+ description: '@auth:profile-page.sections.change-password.description',
1166
+ icon: 'fa-light fa-key',
1167
+ priority: 10,
1168
+ layout: { colSpan: 6 },
1169
+ actions: [
1170
+ {
1171
+ name: 'change-password',
1172
+ title: '@auth:profile-page.sections.change-password.actions.manage',
1173
+ icon: 'fa-light fa-pen',
1174
+ command: { name: 'auth:change-password' },
1175
+ },
1176
+ ],
1177
+ },
1178
+ {
1179
+ id: 'active-sessions',
1180
+ groupId: 'security',
1181
+ title: '@auth:profile-page.sections.active-sessions.title',
1182
+ description: '@auth:profile-page.sections.active-sessions.description',
1183
+ icon: 'fa-light fa-laptop-mobile',
1184
+ priority: 20,
1185
+ layout: { colSpan: 6 },
1186
+ actions: [
1187
+ {
1188
+ name: 'active-sessions',
1189
+ title: '@auth:profile-page.sections.active-sessions.actions.manage',
1190
+ icon: 'fa-light fa-arrow-right',
1191
+ command: { name: 'auth:open-sessions' },
1192
+ },
1193
+ ],
1194
+ },
1195
+ {
1196
+ id: 'two-factor',
1197
+ groupId: 'security',
1198
+ title: '@auth:profile-page.sections.two-factor.title',
1199
+ description: '@auth:profile-page.sections.two-factor.description',
1200
+ icon: 'fa-light fa-shield-keyhole',
1201
+ priority: 30,
1202
+ layout: { colSpan: 6 },
1203
+ actions: [
1204
+ {
1205
+ name: 'manage-two-factor',
1206
+ title: '@auth:profile-page.sections.two-factor.actions.manage',
1207
+ icon: 'fa-light fa-pen',
1208
+ command: comingSoon('@auth:profile-page.commands.manage-two-factor.coming-soon'),
1209
+ },
1210
+ ],
1211
+ },
1212
+ {
1213
+ id: 'login-history',
1214
+ groupId: 'security',
1215
+ title: '@auth:profile-page.sections.login-history.title',
1216
+ description: '@auth:profile-page.sections.login-history.description',
1217
+ icon: 'fa-light fa-right-to-bracket',
1218
+ priority: 40,
1219
+ layout: { colSpan: 6 },
1220
+ actions: [
1221
+ {
1222
+ name: 'view-login-history',
1223
+ title: '@auth:profile-page.sections.login-history.actions.manage',
1224
+ icon: 'fa-light fa-arrow-right',
1225
+ command: comingSoon('@auth:profile-page.commands.view-login-history.coming-soon'),
1226
+ },
1227
+ ],
1228
+ },
1229
+ {
1230
+ id: 'my-tickets',
1231
+ groupId: 'requests',
1232
+ title: '@auth:profile-page.sections.my-tickets.title',
1233
+ description: '@auth:profile-page.sections.my-tickets.description',
1234
+ icon: 'fa-light fa-ticket',
1235
+ priority: 10,
1236
+ layout: { colSpan: 6 },
1237
+ actions: [
1238
+ {
1239
+ name: 'view-my-tickets',
1240
+ title: '@auth:profile-page.sections.my-tickets.actions.manage',
1241
+ icon: 'fa-light fa-arrow-right',
1242
+ command: comingSoon('@auth:profile-page.commands.view-my-tickets.coming-soon'),
1243
+ },
1244
+ ],
1245
+ },
1246
+ {
1247
+ id: 'my-leave-requests',
1248
+ groupId: 'requests',
1249
+ title: '@auth:profile-page.sections.my-leave-requests.title',
1250
+ description: '@auth:profile-page.sections.my-leave-requests.description',
1251
+ icon: 'fa-light fa-calendar-days',
1252
+ priority: 20,
1253
+ layout: { colSpan: 6 },
1254
+ actions: [
1255
+ {
1256
+ name: 'view-my-leave-requests',
1257
+ title: '@auth:profile-page.sections.my-leave-requests.actions.manage',
1258
+ icon: 'fa-light fa-arrow-right',
1259
+ command: comingSoon('@auth:profile-page.commands.view-my-leave-requests.coming-soon'),
1260
+ },
1261
+ ],
1262
+ },
1263
+ {
1264
+ id: 'my-orders',
1265
+ groupId: 'requests',
1266
+ title: '@auth:profile-page.sections.my-orders.title',
1267
+ description: '@auth:profile-page.sections.my-orders.description',
1268
+ icon: 'fa-light fa-cart-shopping',
1269
+ priority: 30,
1270
+ layout: { colSpan: 6 },
1271
+ actions: [
1272
+ {
1273
+ name: 'view-my-orders',
1274
+ title: '@auth:profile-page.sections.my-orders.actions.manage',
1275
+ icon: 'fa-light fa-arrow-right',
1276
+ command: comingSoon('@auth:profile-page.commands.view-my-orders.coming-soon'),
1277
+ },
1278
+ ],
1279
+ },
1280
+ {
1281
+ id: 'privacy-settings',
1282
+ groupId: 'privacy',
1283
+ title: '@auth:profile-page.sections.privacy-settings.title',
1284
+ description: '@auth:profile-page.sections.privacy-settings.description',
1285
+ icon: 'fa-light fa-eye-slash',
1286
+ priority: 10,
1287
+ layout: { colSpan: 6 },
1288
+ actions: [
1289
+ {
1290
+ name: 'manage-privacy-settings',
1291
+ title: '@auth:profile-page.sections.privacy-settings.actions.manage',
1292
+ icon: 'fa-light fa-pen',
1293
+ command: comingSoon('@auth:profile-page.commands.manage-privacy-settings.coming-soon'),
1294
+ },
1295
+ ],
1296
+ },
1297
+ {
1298
+ id: 'export-data',
1299
+ groupId: 'privacy',
1300
+ title: '@auth:profile-page.sections.export-data.title',
1301
+ description: '@auth:profile-page.sections.export-data.description',
1302
+ icon: 'fa-light fa-file-export',
1303
+ priority: 20,
1304
+ layout: { colSpan: 6 },
1305
+ actions: [
1306
+ {
1307
+ name: 'export-my-data',
1308
+ title: '@auth:profile-page.sections.export-data.actions.manage',
1309
+ icon: 'fa-light fa-download',
1310
+ command: comingSoon('@auth:profile-page.commands.export-my-data.coming-soon'),
1311
+ },
1312
+ ],
1313
+ },
1314
+ {
1315
+ id: 'all-preferences',
1316
+ groupId: 'privacy',
1317
+ title: '@auth:profile-page.sections.all-preferences.title',
1318
+ description: '@auth:profile-page.sections.all-preferences.description',
1319
+ icon: 'fa-light fa-sliders',
1320
+ priority: 30,
1321
+ layout: { colSpan: 12 },
1322
+ actions: appName
1323
+ ? [
1324
+ {
1325
+ name: 'view-all-preferences',
1326
+ title: '@auth:profile-page.sections.all-preferences.actions.manage',
1327
+ icon: 'fa-light fa-arrow-right',
1328
+ command: {
1329
+ name: 'navigate',
1330
+ options: { path: `/${appName}/settings/user` },
1331
+ },
1332
+ },
1333
+ ]
1334
+ : [],
1335
+ },
1336
+ {
1337
+ id: 'delete-account',
1338
+ groupId: 'privacy',
1339
+ content: {
1340
+ mode: 'component',
1341
+ componentKey: PROFILE_DELETE_ACCOUNT_DANGER_ZONE_COMPONENT_KEY,
1342
+ },
1343
+ layout: { colSpan: 12 },
1344
+ },
1345
+ ],
1346
+ };
1347
+ },
1348
+ };
1349
+ //#endregion
1350
+
1351
+ //#region ---- Profile slot logout menu hook ----
1352
+ /** Registers the sign-out entry in the profile dropdown. */
1353
+ const ProfileSlotLogoutMenuHookProvider = {
1354
+ key: PROFILE_SLOT_MENU_ITEMS_HOOK,
1355
+ priority: 100,
1356
+ execute: (payload) => ({
1357
+ ...payload,
1358
+ items: [
1359
+ ...payload.items,
1360
+ {
1361
+ name: 'logout',
1362
+ title: '@auth:profile.logout',
1363
+ icon: 'fa-light fa-arrow-right-from-bracket',
1364
+ color: 'danger',
1365
+ shortcuts: [{ keys: 'ctrl+shift+q', allowInEditableFields: true }],
1366
+ command: { name: 'auth:signout' },
1367
+ },
1368
+ ],
1369
+ }),
1370
+ };
1371
+ //#endregion
1372
+
1373
+ //#region ---- Profile slot my profile menu hook ----
1374
+ /** Registers the My Profile entry in the profile dropdown. */
1375
+ const ProfileSlotMyProfileMenuHookProvider = {
1376
+ key: PROFILE_SLOT_MENU_ITEMS_HOOK,
1377
+ priority: -10,
1378
+ execute: (payload) => {
1379
+ const sessionService = inject(AXPSessionService);
1380
+ const appName = sessionService.application?.name;
1381
+ if (!appName) {
1382
+ return payload;
1383
+ }
1384
+ return {
1385
+ ...payload,
1386
+ items: [
1387
+ ...payload.items,
1388
+ {
1389
+ name: 'my-profile',
1390
+ title: '@auth:profile-page.profile-slot.my-profile',
1391
+ icon: 'fa-light fa-user',
1392
+ shortcuts: [{ keys: 'ctrl+shift+p', allowInEditableFields: true }],
1393
+ command: {
1394
+ name: 'navigate',
1395
+ options: {
1396
+ path: `/${appName}/profile/account`,
1397
+ },
1398
+ },
1399
+ },
1400
+ ],
1401
+ };
1402
+ },
1403
+ };
1404
+ //#endregion
1405
+
1406
+ function profileRoutesFactory() {
1407
+ return [
1408
+ {
1409
+ path: ':app/profile',
1410
+ canActivate: [...AXP_PROTECTED_ROUTE_GUARDS],
1411
+ loadComponent: () => AXPRootLayoutComponent,
1412
+ children: [
1413
+ {
1414
+ path: '',
1415
+ redirectTo: 'account',
1416
+ pathMatch: 'full',
1417
+ },
1418
+ {
1419
+ path: ':groupId',
1420
+ loadComponent: () => import('./acorex-modules-auth-profile-page.component-BGkPr1_o.mjs').then((c) => c.AXMUserProfilePageComponent),
1421
+ data: { reuse: true },
1422
+ },
1423
+ ],
1424
+ },
1425
+ ];
1426
+ }
1427
+ class AXMAuthModule {
1428
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1429
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthModule, imports: [CommonModule, i1$4.AXPCommonModule, i1$5.RouterModule, AXPAccountModule] }); }
1430
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthModule, providers: [
1431
+ AXMAuthErrorHandler,
1432
+ provideLazyProvider(AXP_MENU_PROVIDER, () => import('./acorex-modules-auth-menu.provider-CBNyM4Ax.mjs').then(m => m.AXMSecurityManagementModuleMenuProvider)),
1433
+ provideLazyProvider(AXP_SETTING_DEFINITION_PROVIDER, () => import('./acorex-modules-auth-settings.provider-C_3D-9ia.mjs').then(m => m.AXMSettingProvider)),
1434
+ provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () => import('./acorex-modules-auth-profile-page-component.provider-Dz9yFSnA.mjs').then((module) => module.AXMProfilePageComponentProvider)),
1435
+ {
1436
+ provide: ROUTES,
1437
+ multi: true,
1438
+ useFactory: profileRoutesFactory,
1439
+ },
1440
+ provideCommandSetups([
1441
+ {
1442
+ key: 'auth:profile',
1443
+ command: () => import('./acorex-modules-auth-show-profile-command-CQViXb2b.mjs').then((c) => c.AXPShowProfileCommand),
1444
+ },
1445
+ {
1446
+ key: 'auth:signout',
1447
+ command: () => import('./acorex-modules-auth-signout-command-IUSkq50M.mjs').then((c) => c.AXPSignoutCommand),
1448
+ },
1449
+ {
1450
+ key: 'auth:open-sessions',
1451
+ command: () => import('./acorex-modules-auth-open-sessions.command-Qik0eKUR.mjs').then((c) => c.AXPOpenSessionsCommand),
1452
+ },
1453
+ {
1454
+ key: 'auth:change-photo',
1455
+ command: () => import('./acorex-modules-auth-change-photo.command-_vxTFH0X.mjs').then((c) => c.AXPChangePhotoCommand),
1456
+ },
1457
+ {
1458
+ key: 'auth:change-password',
1459
+ command: () => import('./acorex-modules-auth-change-password.command-Ctyw3WfE.mjs').then((c) => c.AXPChangePasswordCommand),
1460
+ },
1461
+ {
1462
+ key: 'auth:edit-signature',
1463
+ command: () => import('./acorex-modules-auth-edit-signature.command-CcTJJwAX.mjs').then((c) => c.AXPEditSignatureCommand),
1464
+ },
1465
+ {
1466
+ key: 'auth:profile-coming-soon',
1467
+ command: () => import('./acorex-modules-auth-profile-coming-soon.command-DBbFbzAx.mjs').then((c) => c.AXPProfileComingSoonCommand),
1468
+ },
1469
+ ]),
1470
+ {
1471
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1472
+ useValue: ProfileSlotLogoutMenuHookProvider,
1473
+ multi: true,
1474
+ },
1475
+ {
1476
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1477
+ useValue: ProfileSlotMyProfileMenuHookProvider,
1478
+ multi: true,
1479
+ },
1480
+ {
1481
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1482
+ useValue: CoreProfileGroupsHookProvider,
1483
+ multi: true,
1484
+ },
1485
+ {
1486
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1487
+ useValue: CoreProfileSectionsHookProvider,
1488
+ multi: true,
1489
+ },
1490
+ ], imports: [CommonModule,
1491
+ AXPCommonModule.forChild({ errorHandlers: [AXMAuthErrorHandler] }),
1492
+ RouterModule.forChild(routes),
1493
+ AXPAccountModule] }); }
1494
+ }
1495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXMAuthModule, decorators: [{
1496
+ type: NgModule,
1497
+ args: [{
1498
+ imports: [
1499
+ CommonModule,
1500
+ AXPCommonModule.forChild({ errorHandlers: [AXMAuthErrorHandler] }),
1501
+ RouterModule.forChild(routes),
1502
+ AXPAccountModule,
1503
+ ],
1504
+ providers: [
1505
+ AXMAuthErrorHandler,
1506
+ provideLazyProvider(AXP_MENU_PROVIDER, () => import('./acorex-modules-auth-menu.provider-CBNyM4Ax.mjs').then(m => m.AXMSecurityManagementModuleMenuProvider)),
1507
+ provideLazyProvider(AXP_SETTING_DEFINITION_PROVIDER, () => import('./acorex-modules-auth-settings.provider-C_3D-9ia.mjs').then(m => m.AXMSettingProvider)),
1508
+ provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () => import('./acorex-modules-auth-profile-page-component.provider-Dz9yFSnA.mjs').then((module) => module.AXMProfilePageComponentProvider)),
1509
+ {
1510
+ provide: ROUTES,
1511
+ multi: true,
1512
+ useFactory: profileRoutesFactory,
1513
+ },
1514
+ provideCommandSetups([
1515
+ {
1516
+ key: 'auth:profile',
1517
+ command: () => import('./acorex-modules-auth-show-profile-command-CQViXb2b.mjs').then((c) => c.AXPShowProfileCommand),
1518
+ },
1519
+ {
1520
+ key: 'auth:signout',
1521
+ command: () => import('./acorex-modules-auth-signout-command-IUSkq50M.mjs').then((c) => c.AXPSignoutCommand),
1522
+ },
1523
+ {
1524
+ key: 'auth:open-sessions',
1525
+ command: () => import('./acorex-modules-auth-open-sessions.command-Qik0eKUR.mjs').then((c) => c.AXPOpenSessionsCommand),
1526
+ },
1527
+ {
1528
+ key: 'auth:change-photo',
1529
+ command: () => import('./acorex-modules-auth-change-photo.command-_vxTFH0X.mjs').then((c) => c.AXPChangePhotoCommand),
1530
+ },
1531
+ {
1532
+ key: 'auth:change-password',
1533
+ command: () => import('./acorex-modules-auth-change-password.command-Ctyw3WfE.mjs').then((c) => c.AXPChangePasswordCommand),
1534
+ },
1535
+ {
1536
+ key: 'auth:edit-signature',
1537
+ command: () => import('./acorex-modules-auth-edit-signature.command-CcTJJwAX.mjs').then((c) => c.AXPEditSignatureCommand),
1538
+ },
1539
+ {
1540
+ key: 'auth:profile-coming-soon',
1541
+ command: () => import('./acorex-modules-auth-profile-coming-soon.command-DBbFbzAx.mjs').then((c) => c.AXPProfileComingSoonCommand),
1542
+ },
1543
+ ]),
1544
+ {
1545
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1546
+ useValue: ProfileSlotLogoutMenuHookProvider,
1547
+ multi: true,
1548
+ },
1549
+ {
1550
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1551
+ useValue: ProfileSlotMyProfileMenuHookProvider,
1552
+ multi: true,
1553
+ },
1554
+ {
1555
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1556
+ useValue: CoreProfileGroupsHookProvider,
1557
+ multi: true,
1558
+ },
1559
+ {
1560
+ provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1561
+ useValue: CoreProfileSectionsHookProvider,
1562
+ multi: true,
1563
+ },
1564
+ ],
1565
+ }]
1566
+ }] });
1567
+
1568
+ var AXMSessionStatusTypes;
1569
+ (function (AXMSessionStatusTypes) {
1570
+ AXMSessionStatusTypes["revoked"] = "revoked";
1571
+ AXMSessionStatusTypes["expired"] = "expired";
1572
+ AXMSessionStatusTypes["active"] = "active";
1573
+ })(AXMSessionStatusTypes || (AXMSessionStatusTypes = {}));
1574
+
1575
+ /**
1576
+ * Generated bundle index. Do not edit.
1577
+ */
1578
+
1579
+ export { AXMUserDeviceSessionsService as A, PROFILE_PAGE_GROUPS_HOOK as P, PROFILE_PAGE_SECTIONS_HOOK as a, PROFILE_PAGE_HEADER_META_HOOK as b, PROFILE_ACTIVITY_CHART_COMPONENT_KEY as c, PROFILE_DELETE_ACCOUNT_DANGER_ZONE_COMPONENT_KEY as d, AXM_AUTH_CONFIG_TOKEN as e, AXM_LOGIN_GUARD_TOKEN as f, AXMAuthenticationTypes as g, AXPTenantChooserListComponent as h, AXPTenantChooserDropdownComponent as i, AXPAppChooserListComponent as j, AXMAuthErrorHandler as k, AXMAuthModule as l, AXMDefaultAuthConfigs as m, AXMDeviceSessionsService as n, AXMDeviceSessionsServiceImpl as o, AXMSessionStatusTypes as p, AXPIdleService as q, resolveUserProfileSectionContent as r, canActivateLogin as s, configAuthModule as t };
1580
+ //# sourceMappingURL=acorex-modules-auth-acorex-modules-auth-JEkso4J7.mjs.map