@acorex/modules 20.2.0-next.4 → 20.2.0

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 (229) hide show
  1. package/contact-management/index.d.ts +21 -163
  2. package/content-management/index.d.ts +59 -2
  3. package/conversation/index.d.ts +77 -68
  4. package/dashboard-management/index.d.ts +7 -4
  5. package/data-management/index.d.ts +66 -10
  6. package/document-management/index.d.ts +51 -2
  7. package/fesm2022/{acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs → acorex-modules-application-management-module-designer.component-BitSGI0F.mjs} +7 -7
  8. package/fesm2022/{acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs.map → acorex-modules-application-management-module-designer.component-BitSGI0F.mjs.map} +1 -1
  9. package/fesm2022/acorex-modules-application-management.mjs +41 -41
  10. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  11. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs → acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs} +47 -47
  12. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs.map → acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs.map} +1 -1
  13. package/fesm2022/{acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs → acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs} +5 -5
  14. package/fesm2022/{acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs.map → acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs.map} +1 -1
  15. package/fesm2022/{acorex-modules-auth-blank.layout-ZjroQcdq.mjs → acorex-modules-auth-blank.layout-D0KDl_qd.mjs} +4 -4
  16. package/fesm2022/{acorex-modules-auth-blank.layout-ZjroQcdq.mjs.map → acorex-modules-auth-blank.layout-D0KDl_qd.mjs.map} +1 -1
  17. package/fesm2022/{acorex-modules-auth-login.module-D1aa1F6G.mjs → acorex-modules-auth-login.module-BHRC357P.mjs} +8 -8
  18. package/fesm2022/{acorex-modules-auth-login.module-D1aa1F6G.mjs.map → acorex-modules-auth-login.module-BHRC357P.mjs.map} +1 -1
  19. package/fesm2022/{acorex-modules-auth-master.layout-CGQmSlGQ.mjs → acorex-modules-auth-master.layout-DAYMmpBW.mjs} +5 -5
  20. package/fesm2022/{acorex-modules-auth-master.layout-CGQmSlGQ.mjs.map → acorex-modules-auth-master.layout-DAYMmpBW.mjs.map} +1 -1
  21. package/fesm2022/{acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs → acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs} +5 -5
  22. package/fesm2022/{acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs.map → acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs.map} +1 -1
  23. package/fesm2022/{acorex-modules-auth-password.component-Cb3FJ1DZ.mjs → acorex-modules-auth-password.component-BJpxtJYh.mjs} +5 -5
  24. package/fesm2022/{acorex-modules-auth-password.component-Cb3FJ1DZ.mjs.map → acorex-modules-auth-password.component-BJpxtJYh.mjs.map} +1 -1
  25. package/fesm2022/{acorex-modules-auth-password.component-CiWdX7f_.mjs → acorex-modules-auth-password.component-NAY46d_2.mjs} +5 -5
  26. package/fesm2022/{acorex-modules-auth-password.component-CiWdX7f_.mjs.map → acorex-modules-auth-password.component-NAY46d_2.mjs.map} +1 -1
  27. package/fesm2022/{acorex-modules-auth-routes-pae8qpX9.mjs → acorex-modules-auth-routes-hvqL2dCH.mjs} +2 -2
  28. package/fesm2022/{acorex-modules-auth-routes-pae8qpX9.mjs.map → acorex-modules-auth-routes-hvqL2dCH.mjs.map} +1 -1
  29. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs → acorex-modules-auth-tenant-chooser.component-Cy94co3S.mjs} +4 -4
  30. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs.map → acorex-modules-auth-tenant-chooser.component-Cy94co3S.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs → acorex-modules-auth-two-factor-code.component-CAbntIoR.mjs} +4 -4
  32. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs.map → acorex-modules-auth-two-factor-code.component-CAbntIoR.mjs.map} +1 -1
  33. package/fesm2022/{acorex-modules-auth-two-factor.module-DtcoHPH4.mjs → acorex-modules-auth-two-factor.module-kPuT8yUw.mjs} +7 -7
  34. package/fesm2022/{acorex-modules-auth-two-factor.module-DtcoHPH4.mjs.map → acorex-modules-auth-two-factor.module-kPuT8yUw.mjs.map} +1 -1
  35. package/fesm2022/{acorex-modules-auth-user-sessions.component-sI6P2joA.mjs → acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs} +5 -5
  36. package/fesm2022/{acorex-modules-auth-user-sessions.component-sI6P2joA.mjs.map → acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs.map} +1 -1
  37. package/fesm2022/acorex-modules-auth.mjs +1 -1
  38. package/fesm2022/acorex-modules-calendar-management.mjs +22 -22
  39. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  40. package/fesm2022/{acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs → acorex-modules-common-search-popup.component-39U0-TIj.mjs} +4 -4
  41. package/fesm2022/{acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs.map → acorex-modules-common-search-popup.component-39U0-TIj.mjs.map} +1 -1
  42. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs → acorex-modules-common-timeline-version-history-popup.component-_KJd8oGw.mjs} +4 -4
  43. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs.map → acorex-modules-common-timeline-version-history-popup.component-_KJd8oGw.mjs.map} +1 -1
  44. package/fesm2022/acorex-modules-common.mjs +72 -49
  45. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  46. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-_Bxallkg.mjs +863 -0
  47. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-_Bxallkg.mjs.map +1 -0
  48. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs → acorex-modules-contact-management-contact-method.entity-CIeZtPSy.mjs} +2 -35
  49. package/fesm2022/acorex-modules-contact-management-contact-method.entity-CIeZtPSy.mjs.map +1 -0
  50. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs → acorex-modules-contact-management-emergency-contact-category.entity-B2DPfonq.mjs} +2 -2
  51. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs.map → acorex-modules-contact-management-emergency-contact-category.entity-B2DPfonq.mjs.map} +1 -1
  52. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs → acorex-modules-contact-management-emergency-contact.entity-CeIealVy.mjs} +2 -2
  53. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs.map → acorex-modules-contact-management-emergency-contact.entity-CeIealVy.mjs.map} +1 -1
  54. package/fesm2022/acorex-modules-contact-management.mjs +1 -1
  55. package/fesm2022/acorex-modules-content-management.mjs +823 -14
  56. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  57. package/fesm2022/acorex-modules-conversation.mjs +161 -99
  58. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  59. package/fesm2022/acorex-modules-dashboard-management.mjs +246 -142
  60. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  61. package/fesm2022/acorex-modules-data-management.mjs +516 -50
  62. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  63. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs → acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs} +1132 -191
  64. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs.map +1 -0
  65. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs → acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs} +5 -5
  66. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs.map → acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs → acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs} +5 -5
  68. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs.map → acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs.map} +1 -1
  69. package/fesm2022/{acorex-modules-document-management-details-view.component-CMI2Eokj.mjs → acorex-modules-document-management-details-view.component-v1VroVv-.mjs} +5 -5
  70. package/fesm2022/{acorex-modules-document-management-details-view.component-CMI2Eokj.mjs.map → acorex-modules-document-management-details-view.component-v1VroVv-.mjs.map} +1 -1
  71. package/fesm2022/acorex-modules-document-management-document-distribution-popup.component-DB4JJ3w7.mjs +123 -0
  72. package/fesm2022/acorex-modules-document-management-document-distribution-popup.component-DB4JJ3w7.mjs.map +1 -0
  73. package/fesm2022/acorex-modules-document-management-document-signature-popup.component-CK8MX49w.mjs +105 -0
  74. package/fesm2022/acorex-modules-document-management-document-signature-popup.component-CK8MX49w.mjs.map +1 -0
  75. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs → acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs} +5 -5
  76. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs.map → acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-document-management-drive.component-DoGdTL3n.mjs → acorex-modules-document-management-drive.component-D5OwpnAP.mjs} +40 -17
  78. package/fesm2022/acorex-modules-document-management-drive.component-D5OwpnAP.mjs.map +1 -0
  79. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs → acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs} +5 -5
  80. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs.map → acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs → acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs} +5 -5
  82. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs.map → acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs → acorex-modules-document-management-link-dialog.component-DKOod11R.mjs} +4 -4
  84. package/fesm2022/{acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs.map → acorex-modules-document-management-link-dialog.component-DKOod11R.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-document-management-list-view.component-C4VFnACA.mjs → acorex-modules-document-management-list-view.component-RaW67V7O.mjs} +5 -5
  86. package/fesm2022/{acorex-modules-document-management-list-view.component-C4VFnACA.mjs.map → acorex-modules-document-management-list-view.component-RaW67V7O.mjs.map} +1 -1
  87. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs → acorex-modules-document-management-meta-choose-popup.component-BZu8EbTh.mjs} +5 -5
  88. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-BZu8EbTh.mjs.map +1 -0
  89. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs → acorex-modules-document-management-meta-selector-widget-column.component-CBAE1KZM.mjs} +4 -4
  90. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-CBAE1KZM.mjs.map} +1 -1
  91. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-B9Eqa6j0.mjs} +4 -4
  92. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs.map → acorex-modules-document-management-meta-selector-widget-designer.component-B9Eqa6j0.mjs.map} +1 -1
  93. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs → acorex-modules-document-management-meta-selector-widget-view.component-BPBqDMwP.mjs} +4 -4
  94. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs.map → acorex-modules-document-management-meta-selector-widget-view.component-BPBqDMwP.mjs.map} +1 -1
  95. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs → acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs} +2 -2
  96. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs.map → acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs.map} +1 -1
  97. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs → acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs} +5 -5
  98. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs.map → acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs.map} +1 -1
  99. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs → acorex-modules-document-management-share-dialog.component-mBEu2KpG.mjs} +4 -4
  100. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs.map → acorex-modules-document-management-share-dialog.component-mBEu2KpG.mjs.map} +1 -1
  101. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs → acorex-modules-document-management-share-email-dialog.component-CI4SKdjk.mjs} +4 -4
  102. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs.map → acorex-modules-document-management-share-email-dialog.component-CI4SKdjk.mjs.map} +1 -1
  103. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs → acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs} +5 -5
  104. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs.map → acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs.map} +1 -1
  105. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs → acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs} +5 -5
  106. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs.map → acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs.map} +1 -1
  107. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  108. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-CeQnu6WW.mjs} +56 -56
  109. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs.map → acorex-modules-form-template-management-acorex-modules-form-template-management-CeQnu6WW.mjs.map} +1 -1
  110. package/fesm2022/{acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs → acorex-modules-form-template-management-category.entity-DmrE2Pfz.mjs} +2 -2
  111. package/fesm2022/{acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs.map → acorex-modules-form-template-management-category.entity-DmrE2Pfz.mjs.map} +1 -1
  112. package/fesm2022/{acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs → acorex-modules-form-template-management-designer.page-CarisHH5.mjs} +4 -4
  113. package/fesm2022/{acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs.map → acorex-modules-form-template-management-designer.page-CarisHH5.mjs.map} +1 -1
  114. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs → acorex-modules-form-template-management-permission-definition.provider-CfOa446m.mjs} +2 -2
  115. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs.map → acorex-modules-form-template-management-permission-definition.provider-CfOa446m.mjs.map} +1 -1
  116. package/fesm2022/{acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs → acorex-modules-form-template-management-settings.provider-hLlHnm-I.mjs} +2 -2
  117. package/fesm2022/{acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs.map → acorex-modules-form-template-management-settings.provider-hLlHnm-I.mjs.map} +1 -1
  118. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs → acorex-modules-form-template-management-template-picker.component-bxYZqmYR.mjs} +5 -5
  119. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs.map → acorex-modules-form-template-management-template-picker.component-bxYZqmYR.mjs.map} +1 -1
  120. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs → acorex-modules-form-template-management-template-widget-edit.component-D_Ys5kRT.mjs} +5 -5
  121. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-D_Ys5kRT.mjs.map} +1 -1
  122. package/fesm2022/{acorex-modules-form-template-management-template.entity-CQm29n5v.mjs → acorex-modules-form-template-management-template.entity-CvlwS8TY.mjs} +2 -2
  123. package/fesm2022/{acorex-modules-form-template-management-template.entity-CQm29n5v.mjs.map → acorex-modules-form-template-management-template.entity-CvlwS8TY.mjs.map} +1 -1
  124. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs → acorex-modules-form-template-management-viewer-popup.component-CE13nuke.mjs} +5 -5
  125. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs.map → acorex-modules-form-template-management-viewer-popup.component-CE13nuke.mjs.map} +1 -1
  126. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  127. package/fesm2022/acorex-modules-identifier-management.mjs +512 -0
  128. package/fesm2022/acorex-modules-identifier-management.mjs.map +1 -0
  129. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs → acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs} +36 -36
  130. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs.map → acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs.map} +1 -1
  131. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs → acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs} +5 -5
  132. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs.map → acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs.map} +1 -1
  133. package/fesm2022/acorex-modules-issue-management.mjs +1 -1
  134. package/fesm2022/{acorex-modules-locale-management-settings.provider-PKnqTses.mjs → acorex-modules-locale-management-settings.provider-ClVIqYIL.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-locale-management-settings.provider-PKnqTses.mjs.map → acorex-modules-locale-management-settings.provider-ClVIqYIL.mjs.map} +1 -1
  136. package/fesm2022/acorex-modules-locale-management.mjs +1974 -1
  137. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  138. package/fesm2022/acorex-modules-location-management.mjs +56 -43
  139. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  140. package/fesm2022/acorex-modules-log-management.mjs +198 -10
  141. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  142. package/fesm2022/acorex-modules-notification-management.mjs +158 -100
  143. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  144. package/fesm2022/{acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs → acorex-modules-organization-management-add-item.component-DkXcoyHa.mjs} +4 -4
  145. package/fesm2022/{acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs.map → acorex-modules-organization-management-add-item.component-DkXcoyHa.mjs.map} +1 -1
  146. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs → acorex-modules-organization-management-org-chart-configuration.page-kVFv0xZ0.mjs} +5 -5
  147. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-kVFv0xZ0.mjs.map} +1 -1
  148. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs → acorex-modules-organization-management-org-chart-configuration.service-7I15ZQGa.mjs} +4 -4
  149. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs.map → acorex-modules-organization-management-org-chart-configuration.service-7I15ZQGa.mjs.map} +1 -1
  150. package/fesm2022/{acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs → acorex-modules-organization-management-org-chart.page-DuyhYwnh.mjs} +12 -12
  151. package/fesm2022/{acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs.map → acorex-modules-organization-management-org-chart.page-DuyhYwnh.mjs.map} +1 -1
  152. package/fesm2022/acorex-modules-organization-management.mjs +265 -122
  153. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  154. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-B8X8tXFw.mjs +714 -0
  155. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-B8X8tXFw.mjs.map +1 -0
  156. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs → acorex-modules-party-management-party-identifier-type.entity-b8aNBCpT.mjs} +238 -136
  157. package/fesm2022/acorex-modules-party-management-party-identifier-type.entity-b8aNBCpT.mjs.map +1 -0
  158. package/fesm2022/acorex-modules-party-management-party-identifier.entity-B_5MSDF1.mjs +470 -0
  159. package/fesm2022/acorex-modules-party-management-party-identifier.entity-B_5MSDF1.mjs.map +1 -0
  160. package/fesm2022/{acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs → acorex-modules-party-management-party-relationship.entity-CLAAuCde.mjs} +174 -218
  161. package/fesm2022/acorex-modules-party-management-party-relationship.entity-CLAAuCde.mjs.map +1 -0
  162. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs → acorex-modules-party-management-party-role.entity-C5BeakjX.mjs} +157 -162
  163. package/fesm2022/acorex-modules-party-management-party-role.entity-C5BeakjX.mjs.map +1 -0
  164. package/fesm2022/acorex-modules-party-management-party.entity-Blwg8o3o.mjs +538 -0
  165. package/fesm2022/acorex-modules-party-management-party.entity-Blwg8o3o.mjs.map +1 -0
  166. package/fesm2022/acorex-modules-party-management-permission-definition.provider-DwMPgZkB.mjs +59 -0
  167. package/fesm2022/acorex-modules-party-management-permission-definition.provider-DwMPgZkB.mjs.map +1 -0
  168. package/fesm2022/acorex-modules-party-management.mjs +2 -0
  169. package/fesm2022/acorex-modules-party-management.mjs.map +1 -0
  170. package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs +93 -0
  171. package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs.map +1 -0
  172. package/fesm2022/{acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs → acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs} +4 -4
  173. package/fesm2022/{acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs.map → acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs.map} +1 -1
  174. package/fesm2022/acorex-modules-platform-management.mjs +483 -2129
  175. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  176. package/fesm2022/acorex-modules-project-management.mjs +43 -43
  177. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  178. package/fesm2022/{acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs → acorex-modules-report-management-report-create-root.component-CPR6H1R1.mjs} +4 -4
  179. package/fesm2022/{acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs.map → acorex-modules-report-management-report-create-root.component-CPR6H1R1.mjs.map} +1 -1
  180. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs → acorex-modules-report-management-report-runner-root-page.component-BIUto_c9.mjs} +8 -9
  181. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-BIUto_c9.mjs.map +1 -0
  182. package/fesm2022/acorex-modules-report-management.mjs +279 -35
  183. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  184. package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
  185. package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
  186. package/fesm2022/acorex-modules-security-management.mjs +60 -60
  187. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  188. package/fesm2022/{acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs → acorex-modules-settings-management-setting-page.component-BWXHxXwS.mjs} +4 -4
  189. package/fesm2022/{acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs.map → acorex-modules-settings-management-setting-page.component-BWXHxXwS.mjs.map} +1 -1
  190. package/fesm2022/{acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs → acorex-modules-settings-management-setting-view.component-D5pKY0Ag.mjs} +4 -4
  191. package/fesm2022/{acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs.map → acorex-modules-settings-management-setting-view.component-D5pKY0Ag.mjs.map} +1 -1
  192. package/fesm2022/acorex-modules-settings-management.mjs +6 -6
  193. package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
  194. package/fesm2022/acorex-modules-task-management.mjs +196 -153
  195. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  196. package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
  197. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  198. package/fesm2022/acorex-modules-training-management.mjs +44 -44
  199. package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
  200. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs → acorex-modules-workflow-management-acorex-modules-workflow-management-BfE17ZXY.mjs} +13 -13
  201. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs.map → acorex-modules-workflow-management-acorex-modules-workflow-management-BfE17ZXY.mjs.map} +1 -1
  202. package/fesm2022/{acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs → acorex-modules-workflow-management-task-board.page-2UTqXn3s.mjs} +20 -20
  203. package/fesm2022/{acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs.map → acorex-modules-workflow-management-task-board.page-2UTqXn3s.mjs.map} +1 -1
  204. package/fesm2022/acorex-modules-workflow-management.mjs +1 -1
  205. package/identifier-management/README.md +269 -0
  206. package/identifier-management/index.d.ts +271 -0
  207. package/locale-management/index.d.ts +22 -1
  208. package/location-management/index.d.ts +4 -1
  209. package/notification-management/index.d.ts +9 -5
  210. package/package.json +13 -5
  211. package/party-management/README.md +177 -0
  212. package/party-management/index.d.ts +86 -0
  213. package/platform-management/index.d.ts +2 -140
  214. package/report-management/index.d.ts +481 -35
  215. package/task-management/index.d.ts +4 -4
  216. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs +0 -2600
  217. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs.map +0 -1
  218. package/fesm2022/acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs.map +0 -1
  219. package/fesm2022/acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs +0 -781
  220. package/fesm2022/acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs.map +0 -1
  221. package/fesm2022/acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs.map +0 -1
  222. package/fesm2022/acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs.map +0 -1
  223. package/fesm2022/acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs.map +0 -1
  224. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs.map +0 -1
  225. package/fesm2022/acorex-modules-document-management-drive.component-DoGdTL3n.mjs.map +0 -1
  226. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs.map +0 -1
  227. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs +0 -1975
  228. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs.map +0 -1
  229. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs.map +0 -1
@@ -1,2600 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, Injector, Injectable, NgModule, signal, computed, HostListener, Component } from '@angular/core';
3
- import * as i1$1 from '@angular/common';
4
- import { CommonModule } from '@angular/common';
5
- import { AXPSessionService, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
6
- import { AXPSearchCommandProvider, createAllQueryView, AXPEntityCommandScope, AXPEntityQueryType, AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';
7
- import { AXPEntityService, AXMEntityCrudServiceImpl, entityDetailsCreateActions, entityDetailsSimpleCondition, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
8
- import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
9
- import * as i1 from '@angular/router';
10
- import { RouterModule } from '@angular/router';
11
- import { AXPRootLayoutComponent } from '@acorex/platform/themes/default';
12
- import * as i6 from '@acorex/core/translation';
13
- import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
14
- import { AXPSystemActionType } from '@acorex/platform/core';
15
- import * as i5 from '@acorex/components/badge';
16
- import { AXBadgeModule } from '@acorex/components/badge';
17
- import * as i2 from '@acorex/components/button';
18
- import { AXButtonModule } from '@acorex/components/button';
19
- import * as i3 from '@acorex/components/decorators';
20
- import { AXDecoratorModule } from '@acorex/components/decorators';
21
- import * as i4 from '@acorex/components/loading';
22
- import { AXLoadingModule } from '@acorex/components/loading';
23
- import { AXFormatModule } from '@acorex/core/format';
24
- import { AXPPageLayoutBaseComponent, AXPPageLayoutComponent, AXPPageLayoutBase } from '@acorex/platform/layout/views';
25
- import { AXPThemeLayoutBlockComponent } from '@acorex/platform/layout/components';
26
-
27
- const config = {
28
- i18n: 'contact-management',
29
- };
30
- const RootConfig = {
31
- config,
32
- module: {
33
- name: 'ContactManagement',
34
- title: '@contact-management:module-name',
35
- icon: 'fa-light fa-address-book',
36
- },
37
- entities: {
38
- contact: {
39
- name: 'Contact',
40
- title: '@contact-management:contact.individual-title',
41
- titlePlural: '@contact-management:contact.plural-title',
42
- icon: 'fa-light fa-user',
43
- },
44
- contactType: {
45
- name: 'ContactType',
46
- title: '@contact-management:contact-type.individual-title',
47
- titlePlural: '@contact-management:contact-type.plural-title',
48
- icon: 'fa-light fa-tags',
49
- },
50
- contactSource: {
51
- name: 'ContactSource',
52
- title: '@contact-management:contact-source.individual-title',
53
- titlePlural: '@contact-management:contact-source.plural-title',
54
- icon: 'fa-light fa-bullseye',
55
- },
56
- contactMethodType: {
57
- name: 'ContactMethodType',
58
- title: '@contact-management:contact-method-type.individual-title',
59
- titlePlural: '@contact-management:contact-method-type.plural-title',
60
- icon: 'fa-light fa-list',
61
- },
62
- contactMethod: {
63
- name: 'ContactMethod',
64
- title: '@contact-management:contact-method.individual-title',
65
- titlePlural: '@contact-management:contact-method.plural-title',
66
- icon: 'fa-light fa-phone',
67
- },
68
- addressType: {
69
- name: 'AddressType',
70
- title: '@contact-management:address-type.individual-title',
71
- titlePlural: '@contact-management:address-type.plural-title',
72
- icon: 'fa-light fa-map-marker',
73
- },
74
- contactAddress: {
75
- name: 'ContactAddress',
76
- title: '@contact-management:contact-address.individual-title',
77
- titlePlural: '@contact-management:contact-address.plural-title',
78
- icon: 'fa-light fa-map',
79
- },
80
- contactRelationship: {
81
- name: 'ContactRelationship',
82
- title: '@contact-management:contact-relationship.individual-title',
83
- titlePlural: '@contact-management:contact-relationship.plural-title',
84
- icon: 'fa-light fa-link',
85
- },
86
- emergencyContactCategory: {
87
- name: 'EmergencyContactCategory',
88
- title: '@contact-management:emergency-contact-category.individual-title',
89
- titlePlural: '@contact-management:emergency-contact-category.plural-title',
90
- icon: 'fa-light fa-shield-halved',
91
- },
92
- emergencyContact: {
93
- name: 'EmergencyContact',
94
- title: '@contact-management:emergency-contact.individual-title',
95
- titlePlural: '@contact-management:emergency-contact.plural-title',
96
- icon: 'fa-light fa-siren',
97
- },
98
- },
99
- };
100
-
101
- class AXMContactManagementEntityProvider {
102
- constructor() {
103
- this.injector = inject(Injector);
104
- }
105
- preload() {
106
- const module = RootConfig.module.name;
107
- return Array.from(Object.values(RootConfig.entities)).map((entity) => ({
108
- module: module,
109
- entity: entity.name,
110
- }));
111
- }
112
- async get(moduleName, entityName) {
113
- if (moduleName == RootConfig.module.name) {
114
- switch (entityName) {
115
- case RootConfig.entities.contact.name:
116
- return (await Promise.resolve().then(function () { return contact_entity; })).contactFactory(this.injector);
117
- case RootConfig.entities.contactType.name:
118
- return (await Promise.resolve().then(function () { return contactType_entity; })).contactTypeFactory(this.injector);
119
- case RootConfig.entities.contactSource.name:
120
- return (await import('./acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs')).contactSourceFactory(this.injector);
121
- case RootConfig.entities.contactMethodType.name:
122
- return (await Promise.resolve().then(function () { return contactMethodType_entity; })).contactMethodTypeFactory(this.injector);
123
- case RootConfig.entities.contactMethod.name:
124
- return (await import('./acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs')).contactMethodFactory(this.injector);
125
- case RootConfig.entities.addressType.name:
126
- return (await import('./acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs')).addressTypeFactory(this.injector);
127
- case RootConfig.entities.contactAddress.name:
128
- return (await import('./acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs')).contactAddressFactory(this.injector);
129
- case RootConfig.entities.contactRelationship.name:
130
- return (await import('./acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs')).contactRelationshipFactory(this.injector);
131
- case RootConfig.entities.emergencyContactCategory.name:
132
- return (await import('./acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs')).emergencyContactCategoryFactory(this.injector);
133
- case RootConfig.entities.emergencyContact.name:
134
- return (await import('./acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs')).emergencyContactFactory(this.injector);
135
- }
136
- }
137
- return null;
138
- }
139
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
140
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementEntityProvider }); }
141
- }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementEntityProvider, decorators: [{
143
- type: Injectable
144
- }] });
145
-
146
- class AXMContactManagementMenuProvider {
147
- constructor() {
148
- this.entityService = inject(AXPEntityService);
149
- this.sessionService = inject(AXPSessionService);
150
- }
151
- async provide(context) {
152
- const module = RootConfig.module;
153
- context.addItems([
154
- {
155
- priority: 9002,
156
- text: '@contact-management:root-menu',
157
- icon: module.icon,
158
- children: [
159
- {
160
- text: '@contact-management:contact.plural-title',
161
- path: this.entityService.createPath(module.name, RootConfig.entities.contact.name),
162
- icon: RootConfig.entities.contact.icon,
163
- priority: 1,
164
- },
165
- {
166
- text: ``,
167
- type: 'break',
168
- priority: 2,
169
- },
170
- {
171
- text: '@contact-management:contact-type.plural-title',
172
- path: this.entityService.createPath(module.name, RootConfig.entities.contactType.name),
173
- icon: RootConfig.entities.contactType.icon,
174
- priority: 3,
175
- },
176
- {
177
- text: '@contact-management:contact-source.plural-title',
178
- path: this.entityService.createPath(module.name, RootConfig.entities.contactSource.name),
179
- icon: RootConfig.entities.contactSource.icon,
180
- priority: 4,
181
- },
182
- {
183
- text: '@contact-management:contact-method-type.plural-title',
184
- path: this.entityService.createPath(module.name, RootConfig.entities.contactMethodType.name),
185
- icon: RootConfig.entities.contactMethodType.icon,
186
- priority: 5,
187
- },
188
- {
189
- text: '@contact-management:address-type.plural-title',
190
- path: this.entityService.createPath(module.name, RootConfig.entities.addressType.name),
191
- icon: RootConfig.entities.addressType.icon,
192
- priority: 6,
193
- },
194
- {
195
- text: ``,
196
- type: 'break',
197
- priority: 10,
198
- },
199
- {
200
- text: '@contact-management:emergency-contact-category.plural-title',
201
- path: this.entityService.createPath(module.name, RootConfig.entities.emergencyContactCategory.name),
202
- icon: RootConfig.entities.emergencyContactCategory.icon,
203
- priority: 11,
204
- },
205
- {
206
- text: '@contact-management:emergency-contact.plural-title',
207
- path: this.entityService.createPath(module.name, RootConfig.entities.emergencyContact.name),
208
- icon: RootConfig.entities.emergencyContact.icon,
209
- priority: 12,
210
- },
211
- {
212
- text: '@contact-management:emergency-contact.page.title',
213
- path: `${this.sessionService.application?.name}/emergency-contacts`,
214
- icon: 'fa-light fa-phone-rotary',
215
- priority: 13,
216
- },
217
- ],
218
- },
219
- ]);
220
- }
221
- }
222
-
223
- class AXMContactManagementSearchCommandProvider extends AXPSearchCommandProvider {
224
- constructor() {
225
- super(...arguments);
226
- this.commands = [
227
- // Commands will be added here following the correct pattern
228
- ];
229
- }
230
- }
231
-
232
- class AXMContactService extends AXMEntityCrudServiceImpl {
233
- }
234
- class AXMContactServiceImpl extends AXMContactService {
235
- constructor() {
236
- super(`${RootConfig.module.name}.${RootConfig.entities.contact.name}`);
237
- }
238
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
239
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactServiceImpl }); }
240
- }
241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactServiceImpl, decorators: [{
242
- type: Injectable
243
- }], ctorParameters: () => [] });
244
-
245
- async function contactFactory(injector) {
246
- const dataService = injector.get(AXMContactService);
247
- const i18n = RootConfig.config.i18n;
248
- const entityDef = {
249
- module: RootConfig.module.name,
250
- name: RootConfig.entities.contact.name,
251
- source: '',
252
- title: RootConfig.entities.contact.title,
253
- formats: {
254
- individual: RootConfig.entities.contact.title,
255
- plural: RootConfig.entities.contact.titlePlural,
256
- searchResult: {
257
- title: '{{ displayName }}',
258
- description: RootConfig.module.title,
259
- },
260
- },
261
- relatedEntities: [
262
- {
263
- entity: `${RootConfig.module.name}.${RootConfig.entities.contactMethod.name}`,
264
- title: RootConfig.entities.contactMethod.title,
265
- columns: ['methodTypeId', 'value', 'isPrimary', 'isVerified', 'notes'],
266
- conditions: [
267
- entityDetailsSimpleCondition('contactId')
268
- ],
269
- actions: [
270
- entityDetailsCreateActions('contactId'),
271
- ],
272
- },
273
- {
274
- entity: `LocationManagement.Location`,
275
- title: 'Addresses',
276
- columns: ['locationType.title', 'street1', 'city', 'isPrimary'],
277
- conditions: [
278
- entityDetailsSimpleCondition('contactId')
279
- ],
280
- actions: [
281
- entityDetailsCreateActions('contactId'),
282
- ],
283
- },
284
- {
285
- entity: `${RootConfig.module.name}.${RootConfig.entities.contactRelationship.name}`,
286
- title: RootConfig.entities.contactRelationship.title,
287
- columns: ['relatedContactId', 'relationshipType', 'description'],
288
- conditions: [
289
- entityDetailsSimpleCondition('contactId')
290
- ],
291
- actions: [
292
- entityDetailsCreateActions('contactId'),
293
- ],
294
- },
295
- ],
296
- groups: [
297
- {
298
- id: 'basic',
299
- title: '@contact-management:contact.personal-information',
300
- },
301
- {
302
- id: 'classification',
303
- title: '@contact-management:contact.contact-details',
304
- },
305
- {
306
- id: 'metadata',
307
- title: '@general:terms.metadata',
308
- },
309
- ],
310
- properties: [
311
- {
312
- name: 'displayName',
313
- title: '@general:terms.display-name',
314
- groupId: 'basic',
315
- options: {
316
- sort: {
317
- enabled: true,
318
- },
319
- filter: {
320
- advance: {
321
- enabled: true,
322
- },
323
- inline: {
324
- enabled: true,
325
- },
326
- },
327
- },
328
- schema: {
329
- dataType: 'string',
330
- interface: {
331
- type: AXPWidgetsCatalog.text,
332
- },
333
- },
334
- validations: [
335
- {
336
- rule: 'required',
337
- },
338
- ],
339
- },
340
- {
341
- name: 'firstName',
342
- title: '@general:terms.first-name',
343
- groupId: 'basic',
344
- options: {
345
- sort: {
346
- enabled: true,
347
- },
348
- filter: {
349
- advance: {
350
- enabled: true,
351
- },
352
- inline: {
353
- enabled: true,
354
- },
355
- },
356
- },
357
- schema: {
358
- dataType: 'string',
359
- interface: {
360
- type: AXPWidgetsCatalog.text,
361
- },
362
- },
363
- },
364
- {
365
- name: 'lastName',
366
- title: '@general:terms.last-name',
367
- groupId: 'basic',
368
- options: {
369
- sort: {
370
- enabled: true,
371
- },
372
- filter: {
373
- advance: {
374
- enabled: true,
375
- },
376
- inline: {
377
- enabled: true,
378
- },
379
- },
380
- },
381
- schema: {
382
- dataType: 'string',
383
- interface: {
384
- type: AXPWidgetsCatalog.text,
385
- },
386
- },
387
- },
388
- {
389
- name: 'title',
390
- title: '@general:terms.title',
391
- groupId: 'basic',
392
- options: {
393
- sort: {
394
- enabled: false,
395
- },
396
- filter: {
397
- advance: {
398
- enabled: true,
399
- },
400
- inline: {
401
- enabled: false,
402
- },
403
- },
404
- },
405
- schema: {
406
- dataType: 'string',
407
- interface: {
408
- type: AXPWidgetsCatalog.select,
409
- options: {
410
- valueField: 'id',
411
- textField: 'title',
412
- dataSource: [
413
- { title: 'Mr.', id: 'Mr' },
414
- { title: 'Ms.', id: 'Ms' },
415
- { title: 'Mrs.', id: 'Mrs' },
416
- { title: 'Dr.', id: 'Dr' },
417
- { title: 'Prof.', id: 'Prof' },
418
- ],
419
- direction: 'horizontal',
420
- multiple: false,
421
- },
422
- },
423
- },
424
- },
425
- {
426
- name: 'jobTitle',
427
- title: '@contact-management:contact.job-title',
428
- groupId: 'basic',
429
- options: {
430
- sort: {
431
- enabled: true,
432
- },
433
- filter: {
434
- advance: {
435
- enabled: true,
436
- },
437
- inline: {
438
- enabled: false,
439
- },
440
- },
441
- },
442
- schema: {
443
- dataType: 'string',
444
- interface: {
445
- type: AXPWidgetsCatalog.text,
446
- },
447
- },
448
- },
449
- {
450
- name: 'company',
451
- title: '@general:terms.company',
452
- groupId: 'basic',
453
- options: {
454
- sort: {
455
- enabled: true,
456
- },
457
- filter: {
458
- advance: {
459
- enabled: true,
460
- },
461
- inline: {
462
- enabled: true,
463
- },
464
- },
465
- },
466
- schema: {
467
- dataType: 'string',
468
- interface: {
469
- type: AXPWidgetsCatalog.text,
470
- },
471
- },
472
- },
473
- {
474
- name: 'contactTypeId',
475
- title: '@contact-management:contact-type.individual-title',
476
- groupId: 'classification',
477
- options: {
478
- sort: {
479
- enabled: true,
480
- },
481
- filter: {
482
- advance: {
483
- enabled: true,
484
- },
485
- inline: {
486
- enabled: true,
487
- },
488
- },
489
- },
490
- schema: {
491
- dataType: 'object',
492
- interface: {
493
- type: AXPWidgetsCatalog.lookup,
494
- options: {
495
- look: 'select',
496
- entity: `${RootConfig.module.name}.${RootConfig.entities.contactType.name}`,
497
- expose: [
498
- { source: 'id', target: 'contactType.id' },
499
- { source: 'title', target: 'contactType.title' },
500
- ],
501
- },
502
- },
503
- },
504
- validations: [
505
- {
506
- rule: 'required',
507
- },
508
- ],
509
- },
510
- {
511
- name: 'contactSourceId',
512
- title: '@contact-management:contact-source.individual-title',
513
- groupId: 'classification',
514
- options: {
515
- sort: {
516
- enabled: true,
517
- },
518
- filter: {
519
- advance: {
520
- enabled: true,
521
- },
522
- inline: {
523
- enabled: true,
524
- },
525
- },
526
- },
527
- schema: {
528
- dataType: 'object',
529
- interface: {
530
- type: AXPWidgetsCatalog.lookup,
531
- options: {
532
- look: 'select',
533
- entity: `${RootConfig.module.name}.${RootConfig.entities.contactSource.name}`,
534
- expose: [
535
- { source: 'id', target: 'contactSource.id' },
536
- { source: 'title', target: 'contactSource.title' },
537
- ],
538
- }
539
- },
540
- },
541
- },
542
- {
543
- name: 'status',
544
- title: '@general:terms.status.title',
545
- groupId: 'classification',
546
- options: {
547
- sort: {
548
- enabled: true,
549
- },
550
- filter: {
551
- advance: {
552
- enabled: true,
553
- },
554
- inline: {
555
- enabled: true,
556
- },
557
- },
558
- },
559
- schema: {
560
- dataType: 'string',
561
- interface: {
562
- type: AXPWidgetsCatalog.select,
563
- options: {
564
- valueField: 'id',
565
- textField: 'title',
566
- dataSource: [
567
- { title: 'Active', id: 'Active' },
568
- { title: 'Inactive', id: 'Inactive' },
569
- { title: 'Blocked', id: 'Blocked' },
570
- ],
571
- direction: 'horizontal',
572
- multiple: false,
573
- },
574
- },
575
- },
576
- validations: [
577
- {
578
- rule: 'required',
579
- },
580
- ],
581
- },
582
- {
583
- name: 'isVip',
584
- title: '@contact-management:contact.is-vip',
585
- groupId: 'classification',
586
- options: {
587
- sort: {
588
- enabled: true,
589
- },
590
- filter: {
591
- advance: {
592
- enabled: true,
593
- },
594
- inline: {
595
- enabled: false,
596
- },
597
- },
598
- },
599
- schema: {
600
- dataType: 'boolean',
601
- interface: {
602
- type: AXPWidgetsCatalog.toggle,
603
- },
604
- },
605
- },
606
- {
607
- name: 'notes',
608
- title: '@general:terms.notes',
609
- groupId: 'metadata',
610
- options: {
611
- sort: {
612
- enabled: false,
613
- },
614
- filter: {
615
- advance: {
616
- enabled: false,
617
- },
618
- inline: {
619
- enabled: false,
620
- },
621
- },
622
- },
623
- schema: {
624
- dataType: 'string',
625
- interface: {
626
- type: AXPWidgetsCatalog.largeText,
627
- options: {
628
- rows: 4,
629
- },
630
- },
631
- },
632
- },
633
- {
634
- name: 'lastContactDate',
635
- title: '@contact-management:contact.last-contact-date',
636
- groupId: 'metadata',
637
- options: {
638
- sort: {
639
- enabled: true,
640
- },
641
- filter: {
642
- advance: {
643
- enabled: true,
644
- },
645
- inline: {
646
- enabled: true,
647
- },
648
- },
649
- },
650
- schema: {
651
- dataType: 'date',
652
- interface: {
653
- type: AXPWidgetsCatalog.dateTime,
654
- },
655
- },
656
- },
657
- ],
658
- columns: [
659
- { name: 'displayName' },
660
- { name: 'firstName' },
661
- { name: 'lastName' },
662
- { name: 'company' },
663
- { name: 'contactTypeId', options: { dataPath: 'contactType' } },
664
- { name: 'priority' },
665
- { name: 'status' },
666
- { name: 'isVip' },
667
- { name: 'lastContactDate' }
668
- ],
669
- commands: {
670
- create: {
671
- execute: async (data) => {
672
- const res = await dataService.insertOne(data);
673
- return { id: res };
674
- },
675
- },
676
- delete: {
677
- execute: async (id) => {
678
- return await dataService.deleteOne(id);
679
- },
680
- },
681
- update: {
682
- execute: async (data) => {
683
- return await dataService.updateOne(data.id, data);
684
- },
685
- },
686
- },
687
- queries: {
688
- byKey: {
689
- execute: async (id) => {
690
- return await dataService.getOne(id);
691
- },
692
- type: AXPEntityQueryType.Single,
693
- },
694
- list: {
695
- execute: async (e) => {
696
- return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
697
- },
698
- type: AXPEntityQueryType.List,
699
- },
700
- },
701
- interfaces: {
702
- master: {
703
- create: {
704
- sections: [
705
- {
706
- id: 'basic',
707
- },
708
- {
709
- id: 'classification',
710
- },
711
- {
712
- id: 'metadata',
713
- },
714
- ],
715
- properties: [
716
- {
717
- name: 'displayName',
718
- layout: {
719
- positions: {
720
- lg: {
721
- colSpan: 6,
722
- order: 1,
723
- },
724
- },
725
- },
726
- },
727
- {
728
- name: 'firstName',
729
- layout: {
730
- positions: {
731
- lg: {
732
- colSpan: 3,
733
- order: 2,
734
- },
735
- },
736
- },
737
- },
738
- {
739
- name: 'lastName',
740
- layout: {
741
- positions: {
742
- lg: {
743
- colSpan: 3,
744
- order: 3,
745
- },
746
- },
747
- },
748
- },
749
- {
750
- name: 'title',
751
- layout: {
752
- positions: {
753
- lg: {
754
- colSpan: 3,
755
- order: 4,
756
- },
757
- },
758
- },
759
- },
760
- {
761
- name: 'jobTitle',
762
- layout: {
763
- positions: {
764
- lg: {
765
- colSpan: 3,
766
- order: 5,
767
- },
768
- },
769
- },
770
- },
771
- {
772
- name: 'company',
773
- layout: {
774
- positions: {
775
- lg: {
776
- colSpan: 6,
777
- order: 6,
778
- },
779
- },
780
- },
781
- },
782
- {
783
- name: 'contactTypeId',
784
- layout: {
785
- positions: {
786
- lg: {
787
- colSpan: 4,
788
- order: 7,
789
- },
790
- },
791
- },
792
- },
793
- {
794
- name: 'contactSourceId',
795
- layout: {
796
- positions: {
797
- lg: {
798
- colSpan: 4,
799
- order: 8,
800
- },
801
- },
802
- },
803
- },
804
- {
805
- name: 'priority',
806
- layout: {
807
- positions: {
808
- lg: {
809
- colSpan: 2,
810
- order: 9,
811
- },
812
- },
813
- },
814
- },
815
- {
816
- name: 'status',
817
- layout: {
818
- positions: {
819
- lg: {
820
- colSpan: 2,
821
- order: 10,
822
- },
823
- },
824
- },
825
- },
826
- {
827
- name: 'isVip',
828
- layout: {
829
- positions: {
830
- lg: {
831
- colSpan: 2,
832
- order: 11,
833
- },
834
- },
835
- },
836
- },
837
- {
838
- name: 'notes',
839
- layout: {
840
- positions: {
841
- lg: {
842
- colSpan: 12,
843
- order: 12,
844
- },
845
- },
846
- },
847
- },
848
- {
849
- name: 'lastContactDate',
850
- layout: {
851
- positions: {
852
- lg: {
853
- colSpan: 6,
854
- order: 13,
855
- },
856
- },
857
- },
858
- },
859
- ],
860
- },
861
- update: {
862
- sections: [
863
- {
864
- id: 'basic',
865
- },
866
- {
867
- id: 'classification',
868
- },
869
- {
870
- id: 'metadata',
871
- },
872
- ],
873
- properties: [
874
- {
875
- name: 'displayName',
876
- layout: {
877
- positions: {
878
- lg: {
879
- colSpan: 6,
880
- order: 1,
881
- },
882
- },
883
- },
884
- },
885
- {
886
- name: 'firstName',
887
- layout: {
888
- positions: {
889
- lg: {
890
- colSpan: 3,
891
- order: 2,
892
- },
893
- },
894
- },
895
- },
896
- {
897
- name: 'lastName',
898
- layout: {
899
- positions: {
900
- lg: {
901
- colSpan: 3,
902
- order: 3,
903
- },
904
- },
905
- },
906
- },
907
- {
908
- name: 'title',
909
- layout: {
910
- positions: {
911
- lg: {
912
- colSpan: 3,
913
- order: 4,
914
- },
915
- },
916
- },
917
- },
918
- {
919
- name: 'jobTitle',
920
- layout: {
921
- positions: {
922
- lg: {
923
- colSpan: 3,
924
- order: 5,
925
- },
926
- },
927
- },
928
- },
929
- {
930
- name: 'company',
931
- layout: {
932
- positions: {
933
- lg: {
934
- colSpan: 6,
935
- order: 6,
936
- },
937
- },
938
- },
939
- },
940
- {
941
- name: 'contactTypeId',
942
- dataPath: 'contactType',
943
- layout: {
944
- positions: {
945
- lg: {
946
- colSpan: 4,
947
- order: 7,
948
- },
949
- },
950
- },
951
- },
952
- {
953
- name: 'contactSourceId',
954
- dataPath: 'contactSource',
955
- layout: {
956
- positions: {
957
- lg: {
958
- colSpan: 4,
959
- order: 8,
960
- },
961
- },
962
- },
963
- },
964
- {
965
- name: 'priority',
966
- layout: {
967
- positions: {
968
- lg: {
969
- colSpan: 2,
970
- order: 9,
971
- },
972
- },
973
- },
974
- },
975
- {
976
- name: 'status',
977
- layout: {
978
- positions: {
979
- lg: {
980
- colSpan: 2,
981
- order: 10,
982
- },
983
- },
984
- },
985
- },
986
- {
987
- name: 'isVip',
988
- layout: {
989
- positions: {
990
- lg: {
991
- colSpan: 2,
992
- order: 11,
993
- },
994
- },
995
- },
996
- },
997
- {
998
- name: 'notes',
999
- layout: {
1000
- positions: {
1001
- lg: {
1002
- colSpan: 12,
1003
- order: 12,
1004
- },
1005
- },
1006
- },
1007
- },
1008
- {
1009
- name: 'lastContactDate',
1010
- layout: {
1011
- positions: {
1012
- lg: {
1013
- colSpan: 6,
1014
- order: 13,
1015
- },
1016
- },
1017
- },
1018
- },
1019
- ],
1020
- },
1021
- single: {
1022
- title: '{{displayName}}',
1023
- sections: [
1024
- {
1025
- id: 'basic',
1026
- layout: {
1027
- positions: {
1028
- lg: {
1029
- colSpan: 6,
1030
- },
1031
- },
1032
- },
1033
- },
1034
- {
1035
- id: 'classification',
1036
- layout: {
1037
- positions: {
1038
- lg: {
1039
- colSpan: 6,
1040
- },
1041
- },
1042
- },
1043
- },
1044
- {
1045
- id: 'metadata',
1046
- layout: {
1047
- positions: {
1048
- lg: {
1049
- colSpan: 12,
1050
- },
1051
- },
1052
- },
1053
- },
1054
- ],
1055
- properties: [
1056
- {
1057
- name: 'displayName',
1058
- layout: {
1059
- positions: {
1060
- lg: {
1061
- colSpan: 12,
1062
- order: 1,
1063
- },
1064
- },
1065
- },
1066
- },
1067
- {
1068
- name: 'firstName',
1069
- layout: {
1070
- positions: {
1071
- lg: {
1072
- colSpan: 6,
1073
- order: 2,
1074
- },
1075
- },
1076
- },
1077
- },
1078
- {
1079
- name: 'lastName',
1080
- layout: {
1081
- positions: {
1082
- lg: {
1083
- colSpan: 6,
1084
- order: 3,
1085
- },
1086
- },
1087
- },
1088
- },
1089
- {
1090
- name: 'title',
1091
- layout: {
1092
- positions: {
1093
- lg: {
1094
- colSpan: 6,
1095
- order: 4,
1096
- },
1097
- },
1098
- },
1099
- },
1100
- {
1101
- name: 'jobTitle',
1102
- layout: {
1103
- positions: {
1104
- lg: {
1105
- colSpan: 6,
1106
- order: 5,
1107
- },
1108
- },
1109
- },
1110
- },
1111
- {
1112
- name: 'company',
1113
- layout: {
1114
- positions: {
1115
- lg: {
1116
- colSpan: 12,
1117
- order: 6,
1118
- },
1119
- },
1120
- },
1121
- },
1122
- {
1123
- name: 'contactTypeId',
1124
- layout: {
1125
- positions: {
1126
- lg: {
1127
- colSpan: 6,
1128
- order: 7,
1129
- },
1130
- },
1131
- },
1132
- },
1133
- {
1134
- name: 'contactSourceId',
1135
- layout: {
1136
- positions: {
1137
- lg: {
1138
- colSpan: 6,
1139
- order: 8,
1140
- },
1141
- },
1142
- },
1143
- },
1144
- {
1145
- name: 'priority',
1146
- layout: {
1147
- positions: {
1148
- lg: {
1149
- colSpan: 4,
1150
- order: 9,
1151
- },
1152
- },
1153
- },
1154
- },
1155
- {
1156
- name: 'status',
1157
- layout: {
1158
- positions: {
1159
- lg: {
1160
- colSpan: 4,
1161
- order: 10,
1162
- },
1163
- },
1164
- },
1165
- },
1166
- {
1167
- name: 'isVip',
1168
- layout: {
1169
- positions: {
1170
- lg: {
1171
- colSpan: 4,
1172
- order: 11,
1173
- },
1174
- },
1175
- },
1176
- },
1177
- {
1178
- name: 'notes',
1179
- layout: {
1180
- positions: {
1181
- lg: {
1182
- colSpan: 12,
1183
- order: 12,
1184
- },
1185
- },
1186
- },
1187
- },
1188
- {
1189
- name: 'lastContactDate',
1190
- layout: {
1191
- positions: {
1192
- lg: {
1193
- colSpan: 12,
1194
- order: 13,
1195
- },
1196
- },
1197
- },
1198
- },
1199
- ],
1200
- actions: [
1201
- {
1202
- title: '@general:actions.delete.title',
1203
- command: 'delete-entity',
1204
- priority: 'secondary',
1205
- type: 'delete',
1206
- scope: AXPEntityCommandScope.Individual,
1207
- },
1208
- ],
1209
- },
1210
- list: {
1211
- actions: [
1212
- {
1213
- title: '@general:actions.create.title',
1214
- command: 'create-entity',
1215
- priority: 'primary',
1216
- type: 'create',
1217
- scope: AXPEntityCommandScope.TypeLevel,
1218
- },
1219
- {
1220
- title: '@general:actions.delete-items.title',
1221
- command: 'delete-entity',
1222
- priority: 'primary',
1223
- type: 'delete',
1224
- scope: AXPEntityCommandScope.Selected,
1225
- },
1226
- {
1227
- title: '@general:actions.detail.title',
1228
- command: 'open-entity',
1229
- priority: 'secondary',
1230
- type: 'view',
1231
- scope: AXPEntityCommandScope.Individual,
1232
- },
1233
- {
1234
- title: '@general:actions.delete.title',
1235
- command: 'delete-entity',
1236
- priority: 'secondary',
1237
- type: 'delete',
1238
- scope: AXPEntityCommandScope.Individual,
1239
- },
1240
- ],
1241
- views: [
1242
- createAllQueryView({
1243
- sorts: [{ name: 'displayName', dir: 'asc' }]
1244
- }),
1245
- ],
1246
- },
1247
- },
1248
- },
1249
- };
1250
- return entityDef;
1251
- }
1252
-
1253
- var contact_entity = /*#__PURE__*/Object.freeze({
1254
- __proto__: null,
1255
- contactFactory: contactFactory
1256
- });
1257
-
1258
- class AXMContactTypeService extends AXMEntityCrudServiceImpl {
1259
- }
1260
- class AXMContactTypeServiceImpl extends AXMContactTypeService {
1261
- constructor() {
1262
- super(`${RootConfig.module.name}.${RootConfig.entities.contactType.name}`);
1263
- }
1264
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1265
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactTypeServiceImpl }); }
1266
- }
1267
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactTypeServiceImpl, decorators: [{
1268
- type: Injectable
1269
- }], ctorParameters: () => [] });
1270
-
1271
- async function contactTypeFactory(injector) {
1272
- const dataService = injector.get(AXMContactTypeService);
1273
- const i18n = RootConfig.config.i18n;
1274
- const entityDef = {
1275
- module: RootConfig.module.name,
1276
- name: RootConfig.entities.contactType.name,
1277
- source: '',
1278
- title: RootConfig.entities.contactType.title,
1279
- formats: {
1280
- individual: RootConfig.entities.contactType.title,
1281
- plural: RootConfig.entities.contactType.titlePlural,
1282
- searchResult: {
1283
- title: '{{ title }}',
1284
- description: RootConfig.module.title,
1285
- },
1286
- },
1287
- groups: [
1288
- {
1289
- id: 'basic-info',
1290
- title: '@general:terms.basic-info',
1291
- },
1292
- {
1293
- id: 'appearance',
1294
- title: '@general:terms.appearance',
1295
- },
1296
- {
1297
- id: 'settings',
1298
- title: '@general:terms.settings',
1299
- },
1300
- ],
1301
- properties: [
1302
- {
1303
- name: 'title',
1304
- title: '@general:terms.title',
1305
- groupId: 'basic-info',
1306
- options: {
1307
- sort: {
1308
- enabled: true,
1309
- },
1310
- filter: {
1311
- advance: {
1312
- enabled: true,
1313
- },
1314
- inline: {
1315
- enabled: true,
1316
- },
1317
- },
1318
- },
1319
- schema: {
1320
- dataType: 'string',
1321
- interface: {
1322
- type: AXPWidgetsCatalog.text,
1323
- },
1324
- },
1325
- validations: [
1326
- {
1327
- rule: 'required',
1328
- },
1329
- ],
1330
- },
1331
- {
1332
- name: 'description',
1333
- title: '@general:terms.description',
1334
- groupId: 'basic-info',
1335
- options: {
1336
- sort: {
1337
- enabled: false,
1338
- },
1339
- filter: {
1340
- advance: {
1341
- enabled: true,
1342
- },
1343
- inline: {
1344
- enabled: false,
1345
- },
1346
- },
1347
- },
1348
- schema: {
1349
- dataType: 'string',
1350
- interface: {
1351
- type: AXPWidgetsCatalog.text,
1352
- },
1353
- },
1354
- },
1355
- {
1356
- name: 'icon',
1357
- title: '@general:terms.icon',
1358
- groupId: 'appearance',
1359
- options: {
1360
- sort: {
1361
- enabled: false,
1362
- },
1363
- filter: {
1364
- advance: {
1365
- enabled: false,
1366
- },
1367
- inline: {
1368
- enabled: false,
1369
- },
1370
- },
1371
- },
1372
- schema: {
1373
- dataType: 'string',
1374
- interface: {
1375
- type: AXPWidgetsCatalog.text,
1376
- options: {
1377
- placeholder: 'fa-light fa-user'
1378
- },
1379
- },
1380
- },
1381
- },
1382
- {
1383
- name: 'isDefault',
1384
- title: '@general:terms.is-default',
1385
- groupId: 'settings',
1386
- options: {
1387
- sort: {
1388
- enabled: true,
1389
- },
1390
- filter: {
1391
- advance: {
1392
- enabled: true,
1393
- },
1394
- inline: {
1395
- enabled: false,
1396
- },
1397
- },
1398
- },
1399
- schema: {
1400
- dataType: 'boolean',
1401
- interface: {
1402
- type: AXPWidgetsCatalog.checkbox,
1403
- },
1404
- },
1405
- },
1406
- {
1407
- name: 'isActive',
1408
- title: '@general:terms.status.options.active',
1409
- groupId: 'settings',
1410
- options: {
1411
- sort: {
1412
- enabled: true,
1413
- },
1414
- filter: {
1415
- advance: {
1416
- enabled: true,
1417
- },
1418
- inline: {
1419
- enabled: true,
1420
- },
1421
- },
1422
- },
1423
- schema: {
1424
- dataType: 'boolean',
1425
- interface: {
1426
- type: AXPWidgetsCatalog.checkbox,
1427
- },
1428
- },
1429
- },
1430
- {
1431
- name: 'order',
1432
- title: '@general:terms.order',
1433
- groupId: 'settings',
1434
- options: {
1435
- sort: {
1436
- enabled: true,
1437
- },
1438
- filter: {
1439
- advance: {
1440
- enabled: false,
1441
- },
1442
- inline: {
1443
- enabled: false,
1444
- },
1445
- },
1446
- },
1447
- schema: {
1448
- dataType: 'number',
1449
- interface: {
1450
- type: AXPWidgetsCatalog.number,
1451
- options: {
1452
- minValue: 1
1453
- },
1454
- },
1455
- },
1456
- validations: [
1457
- {
1458
- rule: 'required',
1459
- },
1460
- ],
1461
- },
1462
- ],
1463
- columns: [
1464
- { name: 'title' },
1465
- { name: 'description' },
1466
- { name: 'isDefault' },
1467
- { name: 'isActive' },
1468
- { name: 'order' }
1469
- ],
1470
- commands: {
1471
- create: {
1472
- execute: async (data) => {
1473
- const res = await dataService.insertOne(data);
1474
- return { id: res };
1475
- },
1476
- },
1477
- delete: {
1478
- execute: async (id) => {
1479
- return await dataService.deleteOne(id);
1480
- },
1481
- },
1482
- update: {
1483
- execute: async (data) => {
1484
- return await dataService.updateOne(data.id, data);
1485
- },
1486
- },
1487
- },
1488
- queries: {
1489
- byKey: {
1490
- execute: async (id) => {
1491
- return await dataService.getOne(id);
1492
- },
1493
- type: AXPEntityQueryType.Single,
1494
- },
1495
- list: {
1496
- execute: async (e) => {
1497
- return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
1498
- },
1499
- type: AXPEntityQueryType.List,
1500
- },
1501
- },
1502
- interfaces: {
1503
- master: {
1504
- create: {
1505
- sections: [
1506
- {
1507
- id: 'basic-info',
1508
- },
1509
- {
1510
- id: 'appearance',
1511
- },
1512
- {
1513
- id: 'settings',
1514
- },
1515
- ],
1516
- properties: [
1517
- {
1518
- name: 'title',
1519
- layout: {
1520
- positions: {
1521
- lg: {
1522
- colSpan: 6,
1523
- order: 1,
1524
- },
1525
- },
1526
- },
1527
- },
1528
- {
1529
- name: 'description',
1530
- layout: {
1531
- positions: {
1532
- lg: {
1533
- colSpan: 6,
1534
- order: 2,
1535
- },
1536
- },
1537
- },
1538
- },
1539
- {
1540
- name: 'icon',
1541
- layout: {
1542
- positions: {
1543
- lg: {
1544
- colSpan: 6,
1545
- order: 3,
1546
- },
1547
- },
1548
- },
1549
- },
1550
- {
1551
- name: 'order',
1552
- layout: {
1553
- positions: {
1554
- lg: {
1555
- colSpan: 3,
1556
- order: 4,
1557
- },
1558
- },
1559
- },
1560
- },
1561
- {
1562
- name: 'isDefault',
1563
- layout: {
1564
- positions: {
1565
- lg: {
1566
- colSpan: 3,
1567
- order: 5,
1568
- },
1569
- },
1570
- },
1571
- },
1572
- {
1573
- name: 'isActive',
1574
- layout: {
1575
- positions: {
1576
- lg: {
1577
- colSpan: 3,
1578
- order: 6,
1579
- },
1580
- },
1581
- },
1582
- },
1583
- ],
1584
- },
1585
- update: {
1586
- sections: [
1587
- {
1588
- id: 'basic-info',
1589
- },
1590
- {
1591
- id: 'appearance',
1592
- },
1593
- {
1594
- id: 'settings',
1595
- },
1596
- ],
1597
- properties: [
1598
- {
1599
- name: 'title',
1600
- layout: {
1601
- positions: {
1602
- lg: {
1603
- colSpan: 6,
1604
- order: 1,
1605
- },
1606
- },
1607
- },
1608
- },
1609
- {
1610
- name: 'description',
1611
- layout: {
1612
- positions: {
1613
- lg: {
1614
- colSpan: 6,
1615
- order: 2,
1616
- },
1617
- },
1618
- },
1619
- },
1620
- {
1621
- name: 'icon',
1622
- layout: {
1623
- positions: {
1624
- lg: {
1625
- colSpan: 6,
1626
- order: 3,
1627
- },
1628
- },
1629
- },
1630
- },
1631
- {
1632
- name: 'order',
1633
- layout: {
1634
- positions: {
1635
- lg: {
1636
- colSpan: 3,
1637
- order: 4,
1638
- },
1639
- },
1640
- },
1641
- },
1642
- {
1643
- name: 'isDefault',
1644
- layout: {
1645
- positions: {
1646
- lg: {
1647
- colSpan: 3,
1648
- order: 5,
1649
- },
1650
- },
1651
- },
1652
- },
1653
- {
1654
- name: 'isActive',
1655
- layout: {
1656
- positions: {
1657
- lg: {
1658
- colSpan: 3,
1659
- order: 6,
1660
- },
1661
- },
1662
- },
1663
- },
1664
- ],
1665
- },
1666
- single: {
1667
- title: '{{title}}',
1668
- sections: [
1669
- {
1670
- id: 'basic-info',
1671
- },
1672
- {
1673
- id: 'appearance',
1674
- },
1675
- {
1676
- id: 'settings',
1677
- },
1678
- ],
1679
- properties: [
1680
- {
1681
- name: 'title',
1682
- layout: {
1683
- positions: {
1684
- lg: {
1685
- colSpan: 6,
1686
- order: 1,
1687
- },
1688
- },
1689
- },
1690
- },
1691
- {
1692
- name: 'description',
1693
- layout: {
1694
- positions: {
1695
- lg: {
1696
- colSpan: 6,
1697
- order: 2,
1698
- },
1699
- },
1700
- },
1701
- },
1702
- {
1703
- name: 'icon',
1704
- layout: {
1705
- positions: {
1706
- lg: {
1707
- colSpan: 6,
1708
- order: 3,
1709
- },
1710
- },
1711
- },
1712
- },
1713
- {
1714
- name: 'order',
1715
- layout: {
1716
- positions: {
1717
- lg: {
1718
- colSpan: 3,
1719
- order: 4,
1720
- },
1721
- },
1722
- },
1723
- },
1724
- {
1725
- name: 'isDefault',
1726
- layout: {
1727
- positions: {
1728
- lg: {
1729
- colSpan: 3,
1730
- order: 5,
1731
- },
1732
- },
1733
- },
1734
- },
1735
- {
1736
- name: 'isActive',
1737
- layout: {
1738
- positions: {
1739
- lg: {
1740
- colSpan: 3,
1741
- order: 6,
1742
- },
1743
- },
1744
- },
1745
- },
1746
- ],
1747
- actions: [
1748
- {
1749
- title: '@general:actions.delete.title',
1750
- command: 'delete-entity',
1751
- priority: 'secondary',
1752
- type: 'delete',
1753
- scope: AXPEntityCommandScope.Individual,
1754
- },
1755
- ],
1756
- },
1757
- list: {
1758
- actions: [
1759
- {
1760
- title: '@general:actions.create.title',
1761
- command: 'create-entity',
1762
- priority: 'primary',
1763
- type: 'create',
1764
- scope: AXPEntityCommandScope.TypeLevel,
1765
- },
1766
- {
1767
- title: '@general:actions.delete-items.title',
1768
- command: 'delete-entity',
1769
- priority: 'primary',
1770
- type: 'delete',
1771
- scope: AXPEntityCommandScope.Selected,
1772
- },
1773
- {
1774
- title: '@general:actions.view.title',
1775
- command: 'open-entity',
1776
- priority: 'secondary',
1777
- type: 'view',
1778
- scope: AXPEntityCommandScope.Individual,
1779
- },
1780
- {
1781
- title: '@general:actions.delete.title',
1782
- command: 'delete-entity',
1783
- priority: 'secondary',
1784
- type: 'delete',
1785
- scope: AXPEntityCommandScope.Individual,
1786
- },
1787
- ],
1788
- views: [
1789
- createAllQueryView({
1790
- sorts: [{ name: 'order', dir: 'asc' }]
1791
- }),
1792
- ],
1793
- },
1794
- },
1795
- },
1796
- };
1797
- return entityDef;
1798
- }
1799
-
1800
- var contactType_entity = /*#__PURE__*/Object.freeze({
1801
- __proto__: null,
1802
- contactTypeFactory: contactTypeFactory
1803
- });
1804
-
1805
- class AXMContactSourceService extends AXMEntityCrudServiceImpl {
1806
- }
1807
- class AXMContactSourceServiceImpl extends AXMContactSourceService {
1808
- constructor() {
1809
- super(`${RootConfig.module.name}.${RootConfig.entities.contactSource.name}`);
1810
- }
1811
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactSourceServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1812
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactSourceServiceImpl }); }
1813
- }
1814
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactSourceServiceImpl, decorators: [{
1815
- type: Injectable
1816
- }], ctorParameters: () => [] });
1817
-
1818
- // Note: contact-source.entity.ts will be similar to contact-type.entity.ts
1819
-
1820
- class AXMContactMethodTypeService extends AXMEntityCrudServiceImpl {
1821
- }
1822
- class AXMContactMethodTypeServiceImpl extends AXMContactMethodTypeService {
1823
- constructor() {
1824
- super(`${RootConfig.module.name}.${RootConfig.entities.contactMethodType.name}`);
1825
- }
1826
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1827
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodTypeServiceImpl }); }
1828
- }
1829
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodTypeServiceImpl, decorators: [{
1830
- type: Injectable
1831
- }], ctorParameters: () => [] });
1832
-
1833
- async function contactMethodTypeFactory(injector) {
1834
- const dataService = injector.get(AXMContactMethodTypeService);
1835
- const i18n = RootConfig.config.i18n;
1836
- const entityDef = {
1837
- module: RootConfig.module.name,
1838
- name: RootConfig.entities.contactMethodType.name,
1839
- source: '',
1840
- title: RootConfig.entities.contactMethodType.title,
1841
- formats: {
1842
- individual: RootConfig.entities.contactMethodType.title,
1843
- plural: RootConfig.entities.contactMethodType.titlePlural,
1844
- searchResult: {
1845
- title: '{{ title }}',
1846
- description: RootConfig.module.title,
1847
- },
1848
- },
1849
- groups: [
1850
- {
1851
- id: 'basic-info',
1852
- title: '@general:terms.basic-info',
1853
- },
1854
- {
1855
- id: 'validation',
1856
- title: '@general:terms.validation',
1857
- },
1858
- {
1859
- id: 'settings',
1860
- title: '@general:terms.settings',
1861
- },
1862
- ],
1863
- properties: [
1864
- {
1865
- name: 'title',
1866
- title: '@general:terms.title',
1867
- groupId: 'basic-info',
1868
- options: {
1869
- sort: { enabled: true },
1870
- filter: { advance: { enabled: true }, inline: { enabled: true } },
1871
- },
1872
- schema: {
1873
- dataType: 'string',
1874
- interface: { type: AXPWidgetsCatalog.text },
1875
- },
1876
- validations: [{ rule: 'required' }],
1877
- },
1878
- {
1879
- name: 'validationRegex',
1880
- title: '@general:terms.validation-regex',
1881
- groupId: 'validation',
1882
- options: {
1883
- sort: { enabled: false },
1884
- filter: { advance: { enabled: false }, inline: { enabled: false } },
1885
- },
1886
- schema: {
1887
- dataType: 'string',
1888
- interface: {
1889
- type: AXPWidgetsCatalog.text,
1890
- options: {
1891
- placeholder: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$'
1892
- }
1893
- },
1894
- },
1895
- },
1896
- {
1897
- name: 'placeholder',
1898
- title: '@general:terms.placeholder',
1899
- groupId: 'validation',
1900
- options: {
1901
- sort: { enabled: false },
1902
- filter: { advance: { enabled: false }, inline: { enabled: false } },
1903
- },
1904
- schema: {
1905
- dataType: 'string',
1906
- interface: {
1907
- type: AXPWidgetsCatalog.text,
1908
- options: {
1909
- placeholder: 'user@example.com'
1910
- }
1911
- },
1912
- },
1913
- },
1914
- {
1915
- name: 'isActive',
1916
- title: '@general:terms.status.options.active',
1917
- groupId: 'settings',
1918
- options: {
1919
- sort: { enabled: true },
1920
- filter: { advance: { enabled: true }, inline: { enabled: true } },
1921
- },
1922
- schema: {
1923
- dataType: 'boolean',
1924
- interface: { type: AXPWidgetsCatalog.toggle },
1925
- },
1926
- },
1927
- ],
1928
- columns: [
1929
- { name: 'title' },
1930
- { name: 'validationRegex' },
1931
- { name: 'placeholder' },
1932
- { name: 'isActive' }
1933
- ],
1934
- commands: {
1935
- create: {
1936
- execute: async (data) => {
1937
- const res = await dataService.insertOne(data);
1938
- return { id: res };
1939
- },
1940
- },
1941
- delete: {
1942
- execute: async (id) => {
1943
- return await dataService.deleteOne(id);
1944
- },
1945
- },
1946
- update: {
1947
- execute: async (data) => {
1948
- return await dataService.updateOne(data.id, data);
1949
- },
1950
- },
1951
- },
1952
- queries: {
1953
- byKey: {
1954
- execute: async (id) => {
1955
- return await dataService.getOne(id);
1956
- },
1957
- type: AXPEntityQueryType.Single,
1958
- },
1959
- list: {
1960
- execute: async (e) => {
1961
- return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
1962
- },
1963
- type: AXPEntityQueryType.List,
1964
- },
1965
- },
1966
- interfaces: {
1967
- master: {
1968
- create: {
1969
- sections: [
1970
- { id: 'basic-info' },
1971
- { id: 'validation' },
1972
- { id: 'settings' }
1973
- ],
1974
- properties: [
1975
- { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
1976
- { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
1977
- { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },
1978
- { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },
1979
- ],
1980
- },
1981
- update: {
1982
- sections: [
1983
- { id: 'basic-info' },
1984
- { id: 'validation' },
1985
- { id: 'settings' }
1986
- ],
1987
- properties: [
1988
- { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
1989
- { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
1990
- { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },
1991
- { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },
1992
- ],
1993
- },
1994
- single: {
1995
- title: '{{title}}',
1996
- sections: [
1997
- { id: 'basic-info' },
1998
- { id: 'validation' },
1999
- { id: 'settings' }
2000
- ],
2001
- properties: [
2002
- { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
2003
- { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
2004
- { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },
2005
- { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },
2006
- ],
2007
- actions: [],
2008
- },
2009
- list: {
2010
- actions: [
2011
- {
2012
- title: '@general:actions.create.title',
2013
- command: 'create-entity',
2014
- priority: 'primary',
2015
- type: 'create',
2016
- scope: AXPEntityCommandScope.TypeLevel,
2017
- },
2018
- {
2019
- title: '@general:actions.delete-items.title',
2020
- command: 'delete-entity',
2021
- priority: 'primary',
2022
- type: 'delete',
2023
- scope: AXPEntityCommandScope.Selected,
2024
- },
2025
- {
2026
- title: '@general:actions.view.title',
2027
- command: 'open-entity',
2028
- priority: 'secondary',
2029
- type: 'view',
2030
- scope: AXPEntityCommandScope.Individual,
2031
- },
2032
- {
2033
- title: '@general:actions.delete.title',
2034
- command: 'delete-entity',
2035
- priority: 'secondary',
2036
- type: 'delete',
2037
- scope: AXPEntityCommandScope.Individual,
2038
- },
2039
- ],
2040
- views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
2041
- },
2042
- },
2043
- },
2044
- };
2045
- return entityDef;
2046
- }
2047
-
2048
- var contactMethodType_entity = /*#__PURE__*/Object.freeze({
2049
- __proto__: null,
2050
- contactMethodTypeFactory: contactMethodTypeFactory
2051
- });
2052
-
2053
- class AXMContactMethodService extends AXMEntityCrudServiceImpl {
2054
- }
2055
- class AXMContactMethodServiceImpl extends AXMContactMethodService {
2056
- constructor() {
2057
- super(`${RootConfig.module.name}.${RootConfig.entities.contactMethod.name}`);
2058
- }
2059
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2060
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodServiceImpl }); }
2061
- }
2062
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactMethodServiceImpl, decorators: [{
2063
- type: Injectable
2064
- }], ctorParameters: () => [] });
2065
-
2066
- // Note: contact-method.entity.ts will reference contactMethodType lookup
2067
-
2068
- class AXMAddressTypeService extends AXMEntityCrudServiceImpl {
2069
- }
2070
- class AXMAddressTypeServiceImpl extends AXMAddressTypeService {
2071
- constructor() {
2072
- super(`${RootConfig.module.name}.${RootConfig.entities.addressType.name}`);
2073
- }
2074
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMAddressTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2075
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMAddressTypeServiceImpl }); }
2076
- }
2077
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMAddressTypeServiceImpl, decorators: [{
2078
- type: Injectable
2079
- }], ctorParameters: () => [] });
2080
-
2081
- // Note: address-type.entity.ts will be similar to contact-type.entity.ts
2082
-
2083
- class AXMContactAddressService extends AXMEntityCrudServiceImpl {
2084
- }
2085
- class AXMContactAddressServiceImpl extends AXMContactAddressService {
2086
- constructor() {
2087
- super(`${RootConfig.module.name}.${RootConfig.entities.contactAddress.name}`);
2088
- }
2089
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactAddressServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2090
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactAddressServiceImpl }); }
2091
- }
2092
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactAddressServiceImpl, decorators: [{
2093
- type: Injectable
2094
- }], ctorParameters: () => [] });
2095
-
2096
- // Note: contact-address.entity.ts will include map widget and structured address fields
2097
-
2098
- class AXMContactRelationshipService extends AXMEntityCrudServiceImpl {
2099
- }
2100
- class AXMContactRelationshipServiceImpl extends AXMContactRelationshipService {
2101
- constructor() {
2102
- super(`${RootConfig.module.name}.${RootConfig.entities.contactRelationship.name}`);
2103
- }
2104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactRelationshipServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2105
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactRelationshipServiceImpl }); }
2106
- }
2107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactRelationshipServiceImpl, decorators: [{
2108
- type: Injectable
2109
- }], ctorParameters: () => [] });
2110
-
2111
- // Note: contact-relationship.entity.ts will enable relationships between contacts
2112
-
2113
- class AXMEmergencyContactCategoryService extends AXMEntityCrudServiceImpl {
2114
- }
2115
- class AXMEmergencyContactCategoryServiceImpl extends AXMEmergencyContactCategoryService {
2116
- constructor() {
2117
- super(`${RootConfig.module.name}.${RootConfig.entities.emergencyContactCategory.name}`);
2118
- }
2119
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactCategoryServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2120
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactCategoryServiceImpl }); }
2121
- }
2122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactCategoryServiceImpl, decorators: [{
2123
- type: Injectable
2124
- }], ctorParameters: () => [] });
2125
-
2126
- class AXMEmergencyContactService extends AXMEntityCrudServiceImpl {
2127
- }
2128
- class AXMEmergencyContactServiceImpl extends AXMEmergencyContactService {
2129
- constructor() {
2130
- super(`${RootConfig.module.name}.${RootConfig.entities.emergencyContact.name}`);
2131
- }
2132
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2133
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactServiceImpl }); }
2134
- }
2135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactServiceImpl, decorators: [{
2136
- type: Injectable
2137
- }], ctorParameters: () => [] });
2138
-
2139
- class AXMContactManagementModule {
2140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2141
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementModule, imports: [CommonModule, i1.RouterModule] }); }
2142
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementModule, providers: [
2143
- // Entity Provider
2144
- {
2145
- provide: AXP_ENTITY_DEFINITION_LOADER,
2146
- useClass: AXMContactManagementEntityProvider,
2147
- multi: true,
2148
- },
2149
- // Menu Provider
2150
- {
2151
- provide: AXP_MENU_PROVIDER,
2152
- useClass: AXMContactManagementMenuProvider,
2153
- multi: true,
2154
- },
2155
- // Search Command Provider
2156
- {
2157
- provide: AXP_SEARCH_PROVIDER,
2158
- useClass: AXMContactManagementSearchCommandProvider,
2159
- multi: true,
2160
- },
2161
- // Permission Provider
2162
- {
2163
- provide: AXP_PERMISSION_DEFINITION_PROVIDER,
2164
- useFactory: async () => {
2165
- const injector = inject(Injector);
2166
- const provider = (await Promise.resolve().then(function () { return permissionDefinition_provider; })).AXMPermissionDefinitionProvider;
2167
- return new provider(injector);
2168
- },
2169
- multi: true,
2170
- },
2171
- // Entity Services
2172
- {
2173
- provide: AXMContactService,
2174
- useClass: AXMContactServiceImpl,
2175
- },
2176
- {
2177
- provide: AXMContactTypeService,
2178
- useClass: AXMContactTypeServiceImpl,
2179
- },
2180
- {
2181
- provide: AXMContactSourceService,
2182
- useClass: AXMContactSourceServiceImpl,
2183
- },
2184
- {
2185
- provide: AXMContactMethodTypeService,
2186
- useClass: AXMContactMethodTypeServiceImpl,
2187
- },
2188
- {
2189
- provide: AXMContactMethodService,
2190
- useClass: AXMContactMethodServiceImpl,
2191
- },
2192
- {
2193
- provide: AXMAddressTypeService,
2194
- useClass: AXMAddressTypeServiceImpl,
2195
- },
2196
- {
2197
- provide: AXMContactAddressService,
2198
- useClass: AXMContactAddressServiceImpl,
2199
- },
2200
- {
2201
- provide: AXMContactRelationshipService,
2202
- useClass: AXMContactRelationshipServiceImpl,
2203
- },
2204
- {
2205
- provide: AXMEmergencyContactCategoryService,
2206
- useClass: AXMEmergencyContactCategoryServiceImpl,
2207
- },
2208
- {
2209
- provide: AXMEmergencyContactService,
2210
- useClass: AXMEmergencyContactServiceImpl,
2211
- },
2212
- ], imports: [CommonModule,
2213
- RouterModule.forChild([{
2214
- path: ':app/emergency-contacts',
2215
- component: AXPRootLayoutComponent,
2216
- children: [
2217
- {
2218
- path: '',
2219
- loadComponent: () => Promise.resolve().then(function () { return emergencyContactsPage_component; }).then(m => m.AXMEmergencyContactsPageComponent)
2220
- }
2221
- ]
2222
- }
2223
- ])] }); }
2224
- }
2225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMContactManagementModule, decorators: [{
2226
- type: NgModule,
2227
- args: [{
2228
- imports: [
2229
- CommonModule,
2230
- RouterModule.forChild([{
2231
- path: ':app/emergency-contacts',
2232
- component: AXPRootLayoutComponent,
2233
- children: [
2234
- {
2235
- path: '',
2236
- loadComponent: () => Promise.resolve().then(function () { return emergencyContactsPage_component; }).then(m => m.AXMEmergencyContactsPageComponent)
2237
- }
2238
- ]
2239
- }
2240
- ]),
2241
- ],
2242
- providers: [
2243
- // Entity Provider
2244
- {
2245
- provide: AXP_ENTITY_DEFINITION_LOADER,
2246
- useClass: AXMContactManagementEntityProvider,
2247
- multi: true,
2248
- },
2249
- // Menu Provider
2250
- {
2251
- provide: AXP_MENU_PROVIDER,
2252
- useClass: AXMContactManagementMenuProvider,
2253
- multi: true,
2254
- },
2255
- // Search Command Provider
2256
- {
2257
- provide: AXP_SEARCH_PROVIDER,
2258
- useClass: AXMContactManagementSearchCommandProvider,
2259
- multi: true,
2260
- },
2261
- // Permission Provider
2262
- {
2263
- provide: AXP_PERMISSION_DEFINITION_PROVIDER,
2264
- useFactory: async () => {
2265
- const injector = inject(Injector);
2266
- const provider = (await Promise.resolve().then(function () { return permissionDefinition_provider; })).AXMPermissionDefinitionProvider;
2267
- return new provider(injector);
2268
- },
2269
- multi: true,
2270
- },
2271
- // Entity Services
2272
- {
2273
- provide: AXMContactService,
2274
- useClass: AXMContactServiceImpl,
2275
- },
2276
- {
2277
- provide: AXMContactTypeService,
2278
- useClass: AXMContactTypeServiceImpl,
2279
- },
2280
- {
2281
- provide: AXMContactSourceService,
2282
- useClass: AXMContactSourceServiceImpl,
2283
- },
2284
- {
2285
- provide: AXMContactMethodTypeService,
2286
- useClass: AXMContactMethodTypeServiceImpl,
2287
- },
2288
- {
2289
- provide: AXMContactMethodService,
2290
- useClass: AXMContactMethodServiceImpl,
2291
- },
2292
- {
2293
- provide: AXMAddressTypeService,
2294
- useClass: AXMAddressTypeServiceImpl,
2295
- },
2296
- {
2297
- provide: AXMContactAddressService,
2298
- useClass: AXMContactAddressServiceImpl,
2299
- },
2300
- {
2301
- provide: AXMContactRelationshipService,
2302
- useClass: AXMContactRelationshipServiceImpl,
2303
- },
2304
- {
2305
- provide: AXMEmergencyContactCategoryService,
2306
- useClass: AXMEmergencyContactCategoryServiceImpl,
2307
- },
2308
- {
2309
- provide: AXMEmergencyContactService,
2310
- useClass: AXMEmergencyContactServiceImpl,
2311
- },
2312
- ],
2313
- }]
2314
- }] });
2315
-
2316
- const moduleKey = RootConfig.module.name;
2317
- const entitiesKey = RootConfig.entities;
2318
- const manageKey = AXPSystemActionType.Manage;
2319
- const viewKey = AXPSystemActionType.View;
2320
- const updateKey = AXPSystemActionType.Update;
2321
- const deleteKey = AXPSystemActionType.Delete;
2322
- const createKey = AXPSystemActionType.Create;
2323
- const AXMPermissionsKeys = {
2324
- ContactManagement: {
2325
- Management: `${moduleKey}:${manageKey}`,
2326
- Contacts: {
2327
- Management: `${moduleKey}:${entitiesKey.contact.name}:${manageKey}`,
2328
- View: `${moduleKey}:${entitiesKey.contact.name}:${viewKey}`,
2329
- Edit: `${moduleKey}:${entitiesKey.contact.name}:${updateKey}`,
2330
- Delete: `${moduleKey}:${entitiesKey.contact.name}:${deleteKey}`,
2331
- Create: `${moduleKey}:${entitiesKey.contact.name}:${createKey}`,
2332
- },
2333
- ContactTypes: {
2334
- Management: `${moduleKey}:${entitiesKey.contactType.name}:${manageKey}`,
2335
- View: `${moduleKey}:${entitiesKey.contactType.name}:${viewKey}`,
2336
- Edit: `${moduleKey}:${entitiesKey.contactType.name}:${updateKey}`,
2337
- Delete: `${moduleKey}:${entitiesKey.contactType.name}:${deleteKey}`,
2338
- Create: `${moduleKey}:${entitiesKey.contactType.name}:${createKey}`,
2339
- },
2340
- ContactMethodTypes: {
2341
- Management: `${moduleKey}:${entitiesKey.contactMethodType.name}:${manageKey}`,
2342
- View: `${moduleKey}:${entitiesKey.contactMethodType.name}:${viewKey}`,
2343
- Edit: `${moduleKey}:${entitiesKey.contactMethodType.name}:${updateKey}`,
2344
- Delete: `${moduleKey}:${entitiesKey.contactMethodType.name}:${deleteKey}`,
2345
- Create: `${moduleKey}:${entitiesKey.contactMethodType.name}:${createKey}`,
2346
- },
2347
- EmergencyContactCategories: {
2348
- Management: `${moduleKey}:${entitiesKey.emergencyContactCategory.name}:${manageKey}`,
2349
- View: `${moduleKey}:${entitiesKey.emergencyContactCategory.name}:${viewKey}`,
2350
- Edit: `${moduleKey}:${entitiesKey.emergencyContactCategory.name}:${updateKey}`,
2351
- Delete: `${moduleKey}:${entitiesKey.emergencyContactCategory.name}:${deleteKey}`,
2352
- Create: `${moduleKey}:${entitiesKey.emergencyContactCategory.name}:${createKey}`,
2353
- },
2354
- EmergencyContacts: {
2355
- Management: `${moduleKey}:${entitiesKey.emergencyContact.name}:${manageKey}`,
2356
- View: `${moduleKey}:${entitiesKey.emergencyContact.name}:${viewKey}`,
2357
- Edit: `${moduleKey}:${entitiesKey.emergencyContact.name}:${updateKey}`,
2358
- Delete: `${moduleKey}:${entitiesKey.emergencyContact.name}:${deleteKey}`,
2359
- Create: `${moduleKey}:${entitiesKey.emergencyContact.name}:${createKey}`,
2360
- },
2361
- },
2362
- };
2363
-
2364
- class AXMPermissionDefinitionProvider {
2365
- constructor(injector) {
2366
- this.injector = injector;
2367
- this.translateService = this.injector.get(AXTranslationService);
2368
- }
2369
- async define(context) {
2370
- const trans = async (key) => await this.translateService.translateAsync(key);
2371
- const keys = AXMPermissionsKeys.ContactManagement;
2372
- context.addGroup(keys.Management, await trans(RootConfig.module.title))
2373
- // Contacts Management
2374
- .addPermission(keys.Contacts.Management, await trans(RootConfig.entities.contact.title))
2375
- .addChild(keys.Contacts.View, await trans('@general:actions.view.permission'))
2376
- .addChild(keys.Contacts.Edit, await trans('@general:actions.edit.permission'))
2377
- .addChild(keys.Contacts.Delete, await trans('@general:actions.delete.permission'))
2378
- .addChild(keys.Contacts.Create, await trans('@general:actions.create.permission'))
2379
- .endPermission()
2380
- // Contact Types Management
2381
- .addPermission(keys.ContactTypes.Management, await trans(RootConfig.entities.contactType.title))
2382
- .addChild(keys.ContactTypes.View, await trans('@general:actions.view.permission'))
2383
- .addChild(keys.ContactTypes.Edit, await trans('@general:actions.edit.permission'))
2384
- .addChild(keys.ContactTypes.Delete, await trans('@general:actions.delete.permission'))
2385
- .addChild(keys.ContactTypes.Create, await trans('@general:actions.create.permission'))
2386
- .endPermission()
2387
- // Contact Method Types Management
2388
- .addPermission(keys.ContactMethodTypes.Management, await trans(RootConfig.entities.contactMethodType.title))
2389
- .addChild(keys.ContactMethodTypes.View, await trans('@general:actions.view.permission'))
2390
- .addChild(keys.ContactMethodTypes.Edit, await trans('@general:actions.edit.permission'))
2391
- .addChild(keys.ContactMethodTypes.Delete, await trans('@general:actions.delete.permission'))
2392
- .addChild(keys.ContactMethodTypes.Create, await trans('@general:actions.create.permission'))
2393
- .endPermission()
2394
- // Emergency Contact Categories Management
2395
- .addPermission(keys.EmergencyContactCategories.Management, await trans(RootConfig.entities.emergencyContactCategory.title))
2396
- .addChild(keys.EmergencyContactCategories.View, await trans('@general:actions.view.permission'))
2397
- .addChild(keys.EmergencyContactCategories.Edit, await trans('@general:actions.edit.permission'))
2398
- .addChild(keys.EmergencyContactCategories.Delete, await trans('@general:actions.delete.permission'))
2399
- .addChild(keys.EmergencyContactCategories.Create, await trans('@general:actions.create.permission'))
2400
- .endPermission()
2401
- // Emergency Contacts Management
2402
- .addPermission(keys.EmergencyContacts.Management, await trans(RootConfig.entities.emergencyContact.title))
2403
- .addChild(keys.EmergencyContacts.View, await trans('@general:actions.view.permission'))
2404
- .addChild(keys.EmergencyContacts.Edit, await trans('@general:actions.edit.permission'))
2405
- .addChild(keys.EmergencyContacts.Delete, await trans('@general:actions.delete.permission'))
2406
- .addChild(keys.EmergencyContacts.Create, await trans('@general:actions.create.permission'))
2407
- .endPermission()
2408
- .endGroup();
2409
- }
2410
- }
2411
-
2412
- var permissionDefinition_provider = /*#__PURE__*/Object.freeze({
2413
- __proto__: null,
2414
- AXMPermissionDefinitionProvider: AXMPermissionDefinitionProvider
2415
- });
2416
-
2417
- class AXMEmergencyContactsPageComponent extends AXPPageLayoutBaseComponent {
2418
- constructor() {
2419
- super(...arguments);
2420
- this.emergencyContactService = inject(AXMEmergencyContactService);
2421
- this.allContacts = signal([], ...(ngDevMode ? [{ debugName: "allContacts" }] : []));
2422
- this.loading = signal(false, ...(ngDevMode ? [{ debugName: "loading" }] : []));
2423
- this.isLargeScreen = signal(true, ...(ngDevMode ? [{ debugName: "isLargeScreen" }] : []));
2424
- // Computed properties for organizing contacts
2425
- this.quickDialContacts = computed(() => this.allContacts()
2426
- .filter((contact) => contact.isQuickDial && contact.isActive)
2427
- .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: "quickDialContacts" }] : []));
2428
- this.dashboardContacts = computed(() => this.allContacts()
2429
- .filter((contact) => contact.showOnDashboard && contact.isActive && !contact.isQuickDial)
2430
- .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: "dashboardContacts" }] : []));
2431
- this.allActiveContacts = computed(() => this.allContacts()
2432
- .filter((contact) => contact.isActive)
2433
- .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: "allActiveContacts" }] : []));
2434
- // Fallback: show all contacts if filtered lists are empty
2435
- this.displayContacts = computed(() => {
2436
- const allContacts = this.allContacts();
2437
- // If we have contacts but none are marked as active, show all
2438
- if (allContacts.length > 0 && this.allActiveContacts().length === 0) {
2439
- return allContacts.sort((a, b) => (a.priority || 0) - (b.priority || 0));
2440
- }
2441
- return this.allActiveContacts();
2442
- }, ...(ngDevMode ? [{ debugName: "displayContacts" }] : []));
2443
- }
2444
- onResize() {
2445
- this.checkScreenSize();
2446
- }
2447
- checkScreenSize() {
2448
- this.isLargeScreen.set(window.innerWidth >= 768);
2449
- }
2450
- async ngOnInit() {
2451
- super.ngOnInit();
2452
- this.checkScreenSize();
2453
- await this.loadEmergencyContacts();
2454
- }
2455
- async loadEmergencyContacts() {
2456
- this.loading.set(true);
2457
- try {
2458
- const result = await this.emergencyContactService.query({
2459
- skip: 0,
2460
- take: 1000,
2461
- sort: [{ field: 'priority', dir: 'asc' }],
2462
- });
2463
- this.allContacts.set(result.items);
2464
- }
2465
- catch (error) {
2466
- console.error('Failed to load emergency contacts:', error);
2467
- }
2468
- finally {
2469
- this.loading.set(false);
2470
- }
2471
- }
2472
- handleCallContact(contact) {
2473
- if (contact.phoneNumber) {
2474
- window.open(`tel:${contact.phoneNumber}`, '_self');
2475
- }
2476
- }
2477
- handleTextContact(contact) {
2478
- const textNumber = contact.textNumber || contact.phoneNumber;
2479
- if (textNumber) {
2480
- window.open(`sms:${textNumber}`, '_self');
2481
- }
2482
- }
2483
- handleVisitWebsite(contact) {
2484
- if (contact.website) {
2485
- window.open(contact.website, '_blank');
2486
- }
2487
- }
2488
- async handleCopyNumber(contact) {
2489
- if (contact.phoneNumber && navigator.clipboard) {
2490
- try {
2491
- await navigator.clipboard.writeText(contact.phoneNumber);
2492
- // You could add a toast notification here
2493
- }
2494
- catch (error) {
2495
- console.error('Failed to copy number:', error);
2496
- }
2497
- }
2498
- }
2499
- handleRefresh() {
2500
- this.loadEmergencyContacts();
2501
- }
2502
- getCoverageText(contact) {
2503
- const coverage = [];
2504
- if (contact.isNational)
2505
- coverage.push('National');
2506
- if (contact.isRegional)
2507
- coverage.push('Regional');
2508
- if (contact.isLocal)
2509
- coverage.push('Local');
2510
- return coverage.join(', ') || 'Unknown';
2511
- }
2512
- getCapabilitiesText(contact) {
2513
- const capabilities = [];
2514
- if (contact.isTextCapable)
2515
- capabilities.push('Text');
2516
- if (contact.isVideoCallCapable)
2517
- capabilities.push('Video');
2518
- return capabilities.join(', ') || 'Voice Only';
2519
- }
2520
- getPriorityColor(priority) {
2521
- if (priority <= 1)
2522
- return 'danger';
2523
- if (priority <= 3)
2524
- return 'warning';
2525
- if (priority <= 5)
2526
- return 'primary';
2527
- return 'secondary';
2528
- }
2529
- async getPageTitle() {
2530
- return 'Emergency Contacts & Quick Dial';
2531
- }
2532
- async getPageDescription() {
2533
- return 'Access emergency contacts and important numbers quickly';
2534
- }
2535
- async getPageBreadcrumbs() {
2536
- return [
2537
- {
2538
- title: 'Contact Management',
2539
- },
2540
- ];
2541
- }
2542
- async getSecondaryMenuItems() {
2543
- return [
2544
- {
2545
- title: 'Refresh',
2546
- icon: 'fa-light fa-refresh',
2547
- color: 'secondary',
2548
- command: {
2549
- name: 'refresh',
2550
- },
2551
- },
2552
- ];
2553
- }
2554
- async execute(command) {
2555
- if (command.name === 'refresh') {
2556
- this.handleRefresh();
2557
- }
2558
- }
2559
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2560
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: AXMEmergencyContactsPageComponent, isStandalone: true, selector: "axm-emergency-contacts-page", host: { listeners: { "window:resize": "onResize()" } }, providers: [
2561
- {
2562
- provide: AXPPageLayoutBase,
2563
- useExisting: AXMEmergencyContactsPageComponent,
2564
- },
2565
- ], usesInheritance: true, ngImport: i0, template: "<axp-page-layout *translate=\"let t\">\n <axp-page-content>\n <!-- Loading State -->\n @if (loading()) {\n <div class=\"ax-flex ax-items-center ax-justify-center ax-py-8\">\n <ax-loading>Loading emergency contacts...</ax-loading>\n </div>\n } @else {\n <div class=\"ax-space-y-6 ax-p-4\">\n <!-- Quick Dial Section -->\n @if (quickDialContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone-rotary\" class=\"ax-text-danger\"></ax-icon>\n Quick Dial\n </h2>\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 lg:ax-grid-cols-3 xl:ax-grid-cols-4 ax-gap-4\">\n @for (contact of quickDialContacts(); track contact.id) {\n <div\n class=\"emergency-contact-quick-dial ax-p-4 ax-rounded-lg ax-border ax-bg-light\"\n [ngStyle]=\"{ '--priority-color': 'var(--ax-sys-color-' + getPriorityColor(contact.priority) + ')' }\"\n >\n <!-- Quick Dial Card Header -->\n <div class=\"ax-pb-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between\">\n <div class=\"ax-flex-1 ax-min-w-0\">\n <h3 class=\"ax-text-lg ax-font-semibold ax-truncate ax-text-default\">\n {{ contact.name }}\n </h3>\n @if (contact.shortName) {\n <p class=\"ax-text-sm ax-text-muted ax-truncate\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n {{ contact.priority }}\n </ax-badge>\n </div>\n </div>\n\n <!-- Contact Actions -->\n <div class=\"ax-py-2\">\n <div class=\"ax-space-y-3\">\n <!-- Primary Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary ax-w-4\"></ax-icon>\n <span class=\"contact-info-text ax-text-sm ax-font-mono ax-flex-1\">{{\n contact.phoneNumber\n }}</span>\n </div>\n\n <!-- Capabilities -->\n <div class=\"contact-info-text ax-flex ax-items-center ax-gap-2 ax-text-xs ax-text-muted\">\n <ax-icon icon=\"fa-light fa-info-circle\" class=\"ax-w-4\"></ax-icon>\n <span>{{ getCapabilitiesText(contact) }}</span>\n </div>\n\n <!-- Availability -->\n @if (contact.availability) {\n <div class=\"contact-info-text ax-flex ax-items-center ax-gap-2 ax-text-xs ax-text-muted\">\n <ax-icon icon=\"fa-light fa-clock\" class=\"ax-w-4\"></ax-icon>\n <span class=\"ax-truncate\">{{ contact.availability }}</span>\n </div>\n }\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"ax-pt-2\">\n <div class=\"ax-flex ax-gap-2\">\n <ax-button\n [color]=\"'danger'\"\n [size]=\"'small'\"\n [look]=\"'filled'\"\n [class]=\"'ax-flex-1'\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [size]=\"'small'\"\n [look]=\"'ghost'\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [size]=\"'small'\"\n [look]=\"'ghost'\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n\n @if (contact.requiresConfirmation) {\n <div class=\"ax-mt-2 ax-p-2 ax-rounded ax-bg-warning-50 ax-border ax-border-warning-200\">\n <p class=\"ax-text-xs ax-text-warning-800 ax-flex ax-items-center ax-gap-1\">\n <ax-icon icon=\"fa-light fa-triangle-exclamation\"></ax-icon>\n This contact requires confirmation before calling\n </p>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- Dashboard Contacts Section -->\n @if (dashboardContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-tachometer-alt\" class=\"ax-text-primary\"></ax-icon>\n All Emergency Contacts\n </h2>\n <div>\n <div class=\"ax-space-y-4\">\n @for (contact of dashboardContacts(); track contact.id) {\n <div class=\"emergency-contact-detailed ax-p-4 ax-rounded-lg ax-border ax-bg-light\">\n <div class=\"ax-grid ax-grid-cols-1 lg:ax-grid-cols-3 ax-gap-4 ax-items-start\">\n <!-- Contact Info -->\n <div class=\"lg:ax-col-span-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between ax-mb-3\">\n <div>\n <h3 class=\"ax-text-xl ax-font-semibold ax-text-default\">{{ contact.name }}</h3>\n @if (contact.shortName) {\n <p class=\"ax-text-muted\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n Priority: {{ contact.priority }}\n </ax-badge>\n </div>\n\n @if (contact.description) {\n <p class=\"ax-text-muted ax-mb-4\">{{ contact.description }}</p>\n }\n\n <!-- Contact Methods Grid -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 ax-gap-3 ax-mb-4\">\n <!-- Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.phoneNumber }}</span>\n </div>\n\n <!-- Text Number -->\n @if (contact.textNumber) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-message\" class=\"ax-text-secondary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.textNumber }}</span>\n </div>\n }\n\n <!-- Email -->\n @if (contact.email) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-envelope\" class=\"ax-text-info\"></ax-icon>\n <span>{{ contact.email }}</span>\n </div>\n }\n\n <!-- Website -->\n @if (contact.website) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-globe\" class=\"ax-text-accent\"></ax-icon>\n <a [href]=\"contact.website\" target=\"_blank\" class=\"ax-text-accent ax-hover:underline\">\n Website\n </a>\n </div>\n }\n </div>\n\n <!-- Coverage & Capabilities -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-3 ax-gap-3 ax-text-sm\">\n <div>\n <strong class=\"ax-text-muted\">Coverage:</strong>\n <p>{{ getCoverageText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Capabilities:</strong>\n <p>{{ getCapabilitiesText(contact) }}</p>\n </div>\n @if (contact.availability) {\n <div>\n <strong class=\"ax-text-muted\">Availability:</strong>\n <p>{{ contact.availability }}</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Action Panel -->\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n <!-- Primary Actions -->\n <div class=\"ax-space-y-2\">\n <ax-button\n [color]=\"'danger'\"\n [look]=\"'filled'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [look]=\"'outlined'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n Send Text\n </ax-button>\n }\n </div>\n\n <!-- Secondary Actions -->\n <div class=\"ax-flex ax-gap-2\">\n @if (contact.website) {\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleVisitWebsite(contact)\"\n >\n <ax-icon icon=\"fa-light fa-external-link\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n\n <!-- Warnings -->\n @if (contact.requiresConfirmation) {\n <div class=\"ax-p-3 ax-rounded ax-bg-warning-50 ax-border ax-border-warning-200\">\n <p class=\"ax-text-xs ax-text-warning-800 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-triangle-exclamation\"></ax-icon>\n This contact requires confirmation before calling\n </p>\n </div>\n }\n\n @if (contact.lastVerified) {\n <div class=\"ax-text-xs ax-text-muted\">\n <strong>Last Verified:</strong>\n <p>{{ contact.lastVerified | date }}</p>\n </div>\n }\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n }\n\n <!-- Fallback: Show all contacts if no filtered contacts are available -->\n @if (quickDialContacts().length === 0 && dashboardContacts().length === 0 && displayContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-list\" class=\"ax-text-info\"></ax-icon>\n All Emergency Contacts\n </h2>\n <div class=\"ax-space-y-4\">\n @for (contact of displayContacts(); track contact.id) {\n <div class=\"emergency-contact-detailed ax-p-4 ax-rounded-lg ax-border ax-bg-light\">\n <div class=\"ax-grid ax-grid-cols-1 lg:ax-grid-cols-3 ax-gap-4 ax-items-start\">\n <!-- Contact Info -->\n <div class=\"lg:ax-col-span-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between ax-mb-3\">\n <div>\n <h3 class=\"ax-text-xl ax-font-semibold ax-text-default\">{{ contact.name }}</h3>\n @if (contact.shortName) {\n <p class=\"ax-text-muted\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n Priority: {{ contact.priority }}\n </ax-badge>\n </div>\n\n @if (contact.description) {\n <p class=\"ax-text-muted ax-mb-4\">{{ contact.description }}</p>\n }\n\n <!-- Contact Methods Grid -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 ax-gap-3 ax-mb-4\">\n <!-- Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.phoneNumber }}</span>\n </div>\n\n <!-- Email -->\n @if (contact.email) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-envelope\" class=\"ax-text-info\"></ax-icon>\n <span>{{ contact.email }}</span>\n </div>\n }\n\n <!-- Website -->\n @if (contact.website) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-globe\" class=\"ax-text-accent\"></ax-icon>\n <a [href]=\"contact.website\" target=\"_blank\" class=\"ax-text-accent ax-hover:underline\">\n Website\n </a>\n </div>\n }\n </div>\n\n <!-- Status Info -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-3 ax-gap-3 ax-text-sm\">\n <div>\n <strong class=\"ax-text-muted\">Coverage:</strong>\n <p>{{ getCoverageText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Capabilities:</strong>\n <p>{{ getCapabilitiesText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Status:</strong>\n <p class=\"ax-flex ax-items-center ax-gap-1\">\n <span [class]=\"contact.isActive ? 'ax-text-success' : 'ax-text-danger'\">\n {{ contact.isActive ? 'Active' : 'Inactive' }}\n </span>\n @if (contact.isVerified) {\n <ax-icon icon=\"fa-light fa-check-circle\" class=\"ax-text-success\"></ax-icon>\n }\n </p>\n </div>\n </div>\n </div>\n\n <!-- Action Panel -->\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n <!-- Primary Actions -->\n <div class=\"ax-space-y-2\">\n <ax-button\n [color]=\"'danger'\"\n [look]=\"'filled'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [look]=\"'outlined'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n Send Text\n </ax-button>\n }\n </div>\n\n <!-- Secondary Actions -->\n <div class=\"ax-flex ax-gap-2\">\n @if (contact.website) {\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleVisitWebsite(contact)\"\n >\n <ax-icon icon=\"fa-light fa-external-link\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- No Contacts State -->\n @if (allContacts().length === 0 && !loading()) {\n <div class=\"ax-text-center ax-py-12\">\n <ax-icon icon=\"fa-light fa-phone-slash\" class=\"ax-text-6xl ax-text-muted ax-mb-4\"></ax-icon>\n <h3 class=\"ax-text-xl ax-font-medium ax-text-muted ax-mb-2\">No emergency contacts available</h3>\n </div>\n }\n </div>\n }\n </axp-page-content>\n</axp-page-layout>\n", styles: ["axm-emergency-contacts-page{display:block;width:100%;height:100%}axm-emergency-contacts-page .ax-space-y-6.ax-p-4{max-width:1400px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}axm-emergency-contacts-page h2{margin-bottom:1.5rem;--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1));border-bottom:2px solid var(--ax-sys-color-border);padding-bottom:.75rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.75rem}axm-emergency-contacts-page .emergency-contact-quick-dial{position:relative;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:linear-gradient(135deg,var(--ax-sys-color-surface) 0%,var(--ax-sys-color-surface-variant) 100%);border:1px solid var(--ax-sys-color-outline-variant);min-height:200px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transform:translateY(-3px) scale(1.02);border-color:var(--priority-color, var(--ax-sys-color-primary));box-shadow:0 10px 30px rgba(0,0,0,.15)}axm-emergency-contacts-page .emergency-contact-quick-dial:before{content:\"\";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--priority-color, var(--ax-sys-color-primary)) 0%,color-mix(in srgb,var(--priority-color, var(--ax-sys-color-primary)) 70%,white) 100%);border-radius:var(--ax-border-radius-md) var(--ax-border-radius-md) 0 0}axm-emergency-contacts-page .emergency-contact-quick-dial h3{margin-bottom:.25rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--ax-sys-color-on-surface)}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500;min-height:32px}@media (min-width: 640px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem;min-height:36px}}axm-emergency-contacts-page .emergency-contact-detailed{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:linear-gradient(135deg,var(--ax-sys-color-surface) 0%,var(--ax-sys-color-surface-variant) 100%);border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transform:translateY(-2px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--ax-sys-color-on-surface)}axm-emergency-contacts-page .emergency-contact-detailed ax-icon{flex-shrink:0}@media (min-width: 640px){axm-emergency-contacts-page .emergency-contact-detailed .ax-grid-cols-1.sm\\\\:ax-grid-cols-2>div{min-width:0px}}@media (min-width: 1024px){axm-emergency-contacts-page .emergency-contact-detailed .ax-flex.ax-flex-col.ax-gap-3{position:-webkit-sticky;position:sticky;top:1rem}}axm-emergency-contacts-page ax-loading{margin-left:auto;margin-right:auto}axm-emergency-contacts-page .ax-text-center.ax-py-12 ax-icon{margin-left:auto;margin-right:auto;display:block}axm-emergency-contacts-page ax-badge[data-color=danger]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-danger-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-danger-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=warning]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-warning-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-warning-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-warning-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=primary]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-primary-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-primary-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=secondary]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-secondary-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-secondary-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-secondary-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page .ax-bg-warning-50 ax-icon{flex-shrink:0}axm-emergency-contacts-page .ax-font-mono{letter-spacing:.025em}@media (min-width: 640px){axm-emergency-contacts-page axp-layout-content .ax-gap-4{gap:1.5rem}}axm-emergency-contacts-page ax-button{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}axm-emergency-contacts-page ax-button:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}axm-emergency-contacts-page ax-button:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}axm-emergency-contacts-page ax-button[data-color=danger]{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-button[data-color=danger]:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-icon.ax-w-4{height:1rem}axm-emergency-contacts-page ax-icon.ax-text-6xl{height:6rem;width:6rem}@media (max-width: 640px){axm-emergency-contacts-page .ax-grid-cols-1 .ax-gap-3{gap:.5rem}axm-emergency-contacts-page .emergency-contact-quick-dial .contact-info-text{font-size:.75rem;line-height:1rem}}@media print{axm-emergency-contacts-page .emergency-contact-quick-dial,axm-emergency-contacts-page .emergency-contact-detailed{break-inside:avoid;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-button{display:none}axm-emergency-contacts-page .ax-bg-warning-50{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}}@media (prefers-contrast: high){axm-emergency-contacts-page .emergency-contact-quick-dial,axm-emergency-contacts-page .emergency-contact-detailed{border-width:2px}axm-emergency-contacts-page ax-badge{border-width:2px}}@media (prefers-reduced-motion: reduce){axm-emergency-contacts-page *{transition-property:none}axm-emergency-contacts-page ax-button:hover,axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i4.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i5.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXFormatModule }, { kind: "component", type: AXPPageLayoutComponent, selector: "axp-page-layout" }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }] }); }
2566
- }
2567
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: AXMEmergencyContactsPageComponent, decorators: [{
2568
- type: Component,
2569
- args: [{ selector: 'axm-emergency-contacts-page', imports: [
2570
- CommonModule,
2571
- AXButtonModule,
2572
- AXDecoratorModule,
2573
- AXLoadingModule,
2574
- AXBadgeModule,
2575
- AXTranslationModule,
2576
- AXFormatModule,
2577
- AXPPageLayoutComponent,
2578
- AXPThemeLayoutBlockComponent,
2579
- ], providers: [
2580
- {
2581
- provide: AXPPageLayoutBase,
2582
- useExisting: AXMEmergencyContactsPageComponent,
2583
- },
2584
- ], template: "<axp-page-layout *translate=\"let t\">\n <axp-page-content>\n <!-- Loading State -->\n @if (loading()) {\n <div class=\"ax-flex ax-items-center ax-justify-center ax-py-8\">\n <ax-loading>Loading emergency contacts...</ax-loading>\n </div>\n } @else {\n <div class=\"ax-space-y-6 ax-p-4\">\n <!-- Quick Dial Section -->\n @if (quickDialContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone-rotary\" class=\"ax-text-danger\"></ax-icon>\n Quick Dial\n </h2>\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 lg:ax-grid-cols-3 xl:ax-grid-cols-4 ax-gap-4\">\n @for (contact of quickDialContacts(); track contact.id) {\n <div\n class=\"emergency-contact-quick-dial ax-p-4 ax-rounded-lg ax-border ax-bg-light\"\n [ngStyle]=\"{ '--priority-color': 'var(--ax-sys-color-' + getPriorityColor(contact.priority) + ')' }\"\n >\n <!-- Quick Dial Card Header -->\n <div class=\"ax-pb-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between\">\n <div class=\"ax-flex-1 ax-min-w-0\">\n <h3 class=\"ax-text-lg ax-font-semibold ax-truncate ax-text-default\">\n {{ contact.name }}\n </h3>\n @if (contact.shortName) {\n <p class=\"ax-text-sm ax-text-muted ax-truncate\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n {{ contact.priority }}\n </ax-badge>\n </div>\n </div>\n\n <!-- Contact Actions -->\n <div class=\"ax-py-2\">\n <div class=\"ax-space-y-3\">\n <!-- Primary Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary ax-w-4\"></ax-icon>\n <span class=\"contact-info-text ax-text-sm ax-font-mono ax-flex-1\">{{\n contact.phoneNumber\n }}</span>\n </div>\n\n <!-- Capabilities -->\n <div class=\"contact-info-text ax-flex ax-items-center ax-gap-2 ax-text-xs ax-text-muted\">\n <ax-icon icon=\"fa-light fa-info-circle\" class=\"ax-w-4\"></ax-icon>\n <span>{{ getCapabilitiesText(contact) }}</span>\n </div>\n\n <!-- Availability -->\n @if (contact.availability) {\n <div class=\"contact-info-text ax-flex ax-items-center ax-gap-2 ax-text-xs ax-text-muted\">\n <ax-icon icon=\"fa-light fa-clock\" class=\"ax-w-4\"></ax-icon>\n <span class=\"ax-truncate\">{{ contact.availability }}</span>\n </div>\n }\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"ax-pt-2\">\n <div class=\"ax-flex ax-gap-2\">\n <ax-button\n [color]=\"'danger'\"\n [size]=\"'small'\"\n [look]=\"'filled'\"\n [class]=\"'ax-flex-1'\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [size]=\"'small'\"\n [look]=\"'ghost'\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [size]=\"'small'\"\n [look]=\"'ghost'\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n\n @if (contact.requiresConfirmation) {\n <div class=\"ax-mt-2 ax-p-2 ax-rounded ax-bg-warning-50 ax-border ax-border-warning-200\">\n <p class=\"ax-text-xs ax-text-warning-800 ax-flex ax-items-center ax-gap-1\">\n <ax-icon icon=\"fa-light fa-triangle-exclamation\"></ax-icon>\n This contact requires confirmation before calling\n </p>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- Dashboard Contacts Section -->\n @if (dashboardContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-tachometer-alt\" class=\"ax-text-primary\"></ax-icon>\n All Emergency Contacts\n </h2>\n <div>\n <div class=\"ax-space-y-4\">\n @for (contact of dashboardContacts(); track contact.id) {\n <div class=\"emergency-contact-detailed ax-p-4 ax-rounded-lg ax-border ax-bg-light\">\n <div class=\"ax-grid ax-grid-cols-1 lg:ax-grid-cols-3 ax-gap-4 ax-items-start\">\n <!-- Contact Info -->\n <div class=\"lg:ax-col-span-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between ax-mb-3\">\n <div>\n <h3 class=\"ax-text-xl ax-font-semibold ax-text-default\">{{ contact.name }}</h3>\n @if (contact.shortName) {\n <p class=\"ax-text-muted\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n Priority: {{ contact.priority }}\n </ax-badge>\n </div>\n\n @if (contact.description) {\n <p class=\"ax-text-muted ax-mb-4\">{{ contact.description }}</p>\n }\n\n <!-- Contact Methods Grid -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 ax-gap-3 ax-mb-4\">\n <!-- Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.phoneNumber }}</span>\n </div>\n\n <!-- Text Number -->\n @if (contact.textNumber) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-message\" class=\"ax-text-secondary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.textNumber }}</span>\n </div>\n }\n\n <!-- Email -->\n @if (contact.email) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-envelope\" class=\"ax-text-info\"></ax-icon>\n <span>{{ contact.email }}</span>\n </div>\n }\n\n <!-- Website -->\n @if (contact.website) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-globe\" class=\"ax-text-accent\"></ax-icon>\n <a [href]=\"contact.website\" target=\"_blank\" class=\"ax-text-accent ax-hover:underline\">\n Website\n </a>\n </div>\n }\n </div>\n\n <!-- Coverage & Capabilities -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-3 ax-gap-3 ax-text-sm\">\n <div>\n <strong class=\"ax-text-muted\">Coverage:</strong>\n <p>{{ getCoverageText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Capabilities:</strong>\n <p>{{ getCapabilitiesText(contact) }}</p>\n </div>\n @if (contact.availability) {\n <div>\n <strong class=\"ax-text-muted\">Availability:</strong>\n <p>{{ contact.availability }}</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Action Panel -->\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n <!-- Primary Actions -->\n <div class=\"ax-space-y-2\">\n <ax-button\n [color]=\"'danger'\"\n [look]=\"'filled'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [look]=\"'outlined'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n Send Text\n </ax-button>\n }\n </div>\n\n <!-- Secondary Actions -->\n <div class=\"ax-flex ax-gap-2\">\n @if (contact.website) {\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleVisitWebsite(contact)\"\n >\n <ax-icon icon=\"fa-light fa-external-link\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n\n <!-- Warnings -->\n @if (contact.requiresConfirmation) {\n <div class=\"ax-p-3 ax-rounded ax-bg-warning-50 ax-border ax-border-warning-200\">\n <p class=\"ax-text-xs ax-text-warning-800 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-triangle-exclamation\"></ax-icon>\n This contact requires confirmation before calling\n </p>\n </div>\n }\n\n @if (contact.lastVerified) {\n <div class=\"ax-text-xs ax-text-muted\">\n <strong>Last Verified:</strong>\n <p>{{ contact.lastVerified | date }}</p>\n </div>\n }\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n }\n\n <!-- Fallback: Show all contacts if no filtered contacts are available -->\n @if (quickDialContacts().length === 0 && dashboardContacts().length === 0 && displayContacts().length > 0) {\n <div class=\"ax-mb-8\">\n <h2 class=\"ax-text-2xl ax-font-semibold ax-mb-4 ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-list\" class=\"ax-text-info\"></ax-icon>\n All Emergency Contacts\n </h2>\n <div class=\"ax-space-y-4\">\n @for (contact of displayContacts(); track contact.id) {\n <div class=\"emergency-contact-detailed ax-p-4 ax-rounded-lg ax-border ax-bg-light\">\n <div class=\"ax-grid ax-grid-cols-1 lg:ax-grid-cols-3 ax-gap-4 ax-items-start\">\n <!-- Contact Info -->\n <div class=\"lg:ax-col-span-2\">\n <div class=\"ax-flex ax-items-start ax-justify-between ax-mb-3\">\n <div>\n <h3 class=\"ax-text-xl ax-font-semibold ax-text-default\">{{ contact.name }}</h3>\n @if (contact.shortName) {\n <p class=\"ax-text-muted\">{{ contact.shortName }}</p>\n }\n </div>\n <ax-badge [color]=\"getPriorityColor(contact.priority)\">\n Priority: {{ contact.priority }}\n </ax-badge>\n </div>\n\n @if (contact.description) {\n <p class=\"ax-text-muted ax-mb-4\">{{ contact.description }}</p>\n }\n\n <!-- Contact Methods Grid -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-2 ax-gap-3 ax-mb-4\">\n <!-- Phone -->\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-phone\" class=\"ax-text-primary\"></ax-icon>\n <span class=\"ax-font-mono\">{{ contact.phoneNumber }}</span>\n </div>\n\n <!-- Email -->\n @if (contact.email) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-envelope\" class=\"ax-text-info\"></ax-icon>\n <span>{{ contact.email }}</span>\n </div>\n }\n\n <!-- Website -->\n @if (contact.website) {\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <ax-icon icon=\"fa-light fa-globe\" class=\"ax-text-accent\"></ax-icon>\n <a [href]=\"contact.website\" target=\"_blank\" class=\"ax-text-accent ax-hover:underline\">\n Website\n </a>\n </div>\n }\n </div>\n\n <!-- Status Info -->\n <div class=\"ax-grid ax-grid-cols-1 sm:ax-grid-cols-3 ax-gap-3 ax-text-sm\">\n <div>\n <strong class=\"ax-text-muted\">Coverage:</strong>\n <p>{{ getCoverageText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Capabilities:</strong>\n <p>{{ getCapabilitiesText(contact) }}</p>\n </div>\n <div>\n <strong class=\"ax-text-muted\">Status:</strong>\n <p class=\"ax-flex ax-items-center ax-gap-1\">\n <span [class]=\"contact.isActive ? 'ax-text-success' : 'ax-text-danger'\">\n {{ contact.isActive ? 'Active' : 'Inactive' }}\n </span>\n @if (contact.isVerified) {\n <ax-icon icon=\"fa-light fa-check-circle\" class=\"ax-text-success\"></ax-icon>\n }\n </p>\n </div>\n </div>\n </div>\n\n <!-- Action Panel -->\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n <!-- Primary Actions -->\n <div class=\"ax-space-y-2\">\n <ax-button\n [color]=\"'danger'\"\n [look]=\"'filled'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleCallContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-phone\"></ax-icon>\n Call Now\n </ax-button>\n\n @if (contact.isTextCapable) {\n <ax-button\n [color]=\"'primary'\"\n [look]=\"'outlined'\"\n [size]=\"'medium'\"\n class=\"ax-w-full\"\n (onClick)=\"handleTextContact(contact)\"\n >\n <ax-icon icon=\"fa-light fa-message\"></ax-icon>\n Send Text\n </ax-button>\n }\n </div>\n\n <!-- Secondary Actions -->\n <div class=\"ax-flex ax-gap-2\">\n @if (contact.website) {\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleVisitWebsite(contact)\"\n >\n <ax-icon icon=\"fa-light fa-external-link\"></ax-icon>\n </ax-button>\n }\n\n <ax-button\n [color]=\"'secondary'\"\n [look]=\"'ghost'\"\n [size]=\"'small'\"\n class=\"ax-flex-1\"\n (onClick)=\"handleCopyNumber(contact)\"\n >\n <ax-icon icon=\"fa-light fa-copy\"></ax-icon>\n </ax-button>\n </div>\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- No Contacts State -->\n @if (allContacts().length === 0 && !loading()) {\n <div class=\"ax-text-center ax-py-12\">\n <ax-icon icon=\"fa-light fa-phone-slash\" class=\"ax-text-6xl ax-text-muted ax-mb-4\"></ax-icon>\n <h3 class=\"ax-text-xl ax-font-medium ax-text-muted ax-mb-2\">No emergency contacts available</h3>\n </div>\n }\n </div>\n }\n </axp-page-content>\n</axp-page-layout>\n", styles: ["axm-emergency-contacts-page{display:block;width:100%;height:100%}axm-emergency-contacts-page .ax-space-y-6.ax-p-4{max-width:1400px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}axm-emergency-contacts-page h2{margin-bottom:1.5rem;--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1));border-bottom:2px solid var(--ax-sys-color-border);padding-bottom:.75rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.75rem}axm-emergency-contacts-page .emergency-contact-quick-dial{position:relative;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:linear-gradient(135deg,var(--ax-sys-color-surface) 0%,var(--ax-sys-color-surface-variant) 100%);border:1px solid var(--ax-sys-color-outline-variant);min-height:200px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transform:translateY(-3px) scale(1.02);border-color:var(--priority-color, var(--ax-sys-color-primary));box-shadow:0 10px 30px rgba(0,0,0,.15)}axm-emergency-contacts-page .emergency-contact-quick-dial:before{content:\"\";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--priority-color, var(--ax-sys-color-primary)) 0%,color-mix(in srgb,var(--priority-color, var(--ax-sys-color-primary)) 70%,white) 100%);border-radius:var(--ax-border-radius-md) var(--ax-border-radius-md) 0 0}axm-emergency-contacts-page .emergency-contact-quick-dial h3{margin-bottom:.25rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--ax-sys-color-on-surface)}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500;min-height:32px}@media (min-width: 640px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem;min-height:36px}}axm-emergency-contacts-page .emergency-contact-detailed{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:linear-gradient(135deg,var(--ax-sys-color-surface) 0%,var(--ax-sys-color-surface-variant) 100%);border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transform:translateY(-2px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--ax-sys-color-on-surface)}axm-emergency-contacts-page .emergency-contact-detailed ax-icon{flex-shrink:0}@media (min-width: 640px){axm-emergency-contacts-page .emergency-contact-detailed .ax-grid-cols-1.sm\\\\:ax-grid-cols-2>div{min-width:0px}}@media (min-width: 1024px){axm-emergency-contacts-page .emergency-contact-detailed .ax-flex.ax-flex-col.ax-gap-3{position:-webkit-sticky;position:sticky;top:1rem}}axm-emergency-contacts-page ax-loading{margin-left:auto;margin-right:auto}axm-emergency-contacts-page .ax-text-center.ax-py-12 ax-icon{margin-left:auto;margin-right:auto;display:block}axm-emergency-contacts-page ax-badge[data-color=danger]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-danger-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-danger-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=warning]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-warning-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-warning-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-warning-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=primary]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-primary-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-primary-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page ax-badge[data-color=secondary]{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-secondary-200),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-secondary-100),var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-secondary-800),var(--tw-text-opacity, 1))}axm-emergency-contacts-page .ax-bg-warning-50 ax-icon{flex-shrink:0}axm-emergency-contacts-page .ax-font-mono{letter-spacing:.025em}@media (min-width: 640px){axm-emergency-contacts-page axp-layout-content .ax-gap-4{gap:1.5rem}}axm-emergency-contacts-page ax-button{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}axm-emergency-contacts-page ax-button:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}axm-emergency-contacts-page ax-button:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}axm-emergency-contacts-page ax-button[data-color=danger]{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-button[data-color=danger]:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-icon.ax-w-4{height:1rem}axm-emergency-contacts-page ax-icon.ax-text-6xl{height:6rem;width:6rem}@media (max-width: 640px){axm-emergency-contacts-page .ax-grid-cols-1 .ax-gap-3{gap:.5rem}axm-emergency-contacts-page .emergency-contact-quick-dial .contact-info-text{font-size:.75rem;line-height:1rem}}@media print{axm-emergency-contacts-page .emergency-contact-quick-dial,axm-emergency-contacts-page .emergency-contact-detailed{break-inside:avoid;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}axm-emergency-contacts-page ax-button{display:none}axm-emergency-contacts-page .ax-bg-warning-50{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}}@media (prefers-contrast: high){axm-emergency-contacts-page .emergency-contact-quick-dial,axm-emergency-contacts-page .emergency-contact-detailed{border-width:2px}axm-emergency-contacts-page ax-badge{border-width:2px}}@media (prefers-reduced-motion: reduce){axm-emergency-contacts-page *{transition-property:none}axm-emergency-contacts-page ax-button:hover,axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}\n"] }]
2585
- }], propDecorators: { onResize: [{
2586
- type: HostListener,
2587
- args: ['window:resize']
2588
- }] } });
2589
-
2590
- var emergencyContactsPage_component = /*#__PURE__*/Object.freeze({
2591
- __proto__: null,
2592
- AXMEmergencyContactsPageComponent: AXMEmergencyContactsPageComponent
2593
- });
2594
-
2595
- /**
2596
- * Generated bundle index. Do not edit.
2597
- */
2598
-
2599
- export { AXMContactSourceService as A, RootConfig as R, AXMContactMethodService as a, AXMAddressTypeService as b, AXMContactAddressService as c, AXMContactRelationshipService as d, AXMEmergencyContactCategoryService as e, AXMEmergencyContactService as f, AXMContactManagementModule as g, AXMContactManagementEntityProvider as h, AXMContactManagementMenuProvider as i, AXMContactManagementSearchCommandProvider as j, AXMPermissionDefinitionProvider as k, contactFactory as l, AXMContactService as m, AXMContactServiceImpl as n, contactTypeFactory as o, AXMContactTypeService as p, AXMContactTypeServiceImpl as q, AXMContactSourceServiceImpl as r, contactMethodTypeFactory as s, AXMContactMethodTypeService as t, AXMContactMethodTypeServiceImpl as u, AXMContactMethodServiceImpl as v, AXMAddressTypeServiceImpl as w, AXMContactAddressServiceImpl as x, AXMContactRelationshipServiceImpl as y, AXMEmergencyContactsPageComponent as z };
2600
- //# sourceMappingURL=acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs.map