@acorex/modules 20.2.4-next.8 → 20.3.0-next.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 (204) hide show
  1. package/application-management/index.d.ts +49 -1
  2. package/calendar-management/index.d.ts +19 -1
  3. package/common/index.d.ts +50 -0
  4. package/contact-management/index.d.ts +40 -4
  5. package/content-management/index.d.ts +20 -2
  6. package/conversation/index.d.ts +34 -16
  7. package/dashboard-management/index.d.ts +11 -4
  8. package/data-management/index.d.ts +20 -2
  9. package/document-management/index.d.ts +36 -6
  10. package/fesm2022/acorex-modules-application-management.mjs +483 -286
  11. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  12. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BbO_ea5W.mjs → acorex-modules-auth-acorex-modules-auth-BTi7qTvr.mjs} +29 -12
  13. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BTi7qTvr.mjs.map +1 -0
  14. package/fesm2022/{acorex-modules-auth-app-chooser.component-y0HLrwJM.mjs → acorex-modules-auth-app-chooser.component-s4LYKAc7.mjs} +2 -2
  15. package/fesm2022/{acorex-modules-auth-app-chooser.component-y0HLrwJM.mjs.map → acorex-modules-auth-app-chooser.component-s4LYKAc7.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-login.module-1U_5UgDs.mjs → acorex-modules-auth-login.module-DetWdAgo.mjs} +4 -4
  17. package/fesm2022/{acorex-modules-auth-login.module-1U_5UgDs.mjs.map → acorex-modules-auth-login.module-DetWdAgo.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-auth-master.layout-DGsAGhOH.mjs → acorex-modules-auth-master.layout-BJRB1Vns.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-auth-master.layout-DGsAGhOH.mjs.map → acorex-modules-auth-master.layout-BJRB1Vns.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-auth-oauth-callback.component-CPHBV5bA.mjs → acorex-modules-auth-oauth-callback.component-DKHJoF3X.mjs} +2 -2
  21. package/fesm2022/{acorex-modules-auth-oauth-callback.component-CPHBV5bA.mjs.map → acorex-modules-auth-oauth-callback.component-DKHJoF3X.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-auth-password.component-CF3ReHyw.mjs → acorex-modules-auth-password.component-B_vA7-vu.mjs} +2 -2
  23. package/fesm2022/{acorex-modules-auth-password.component-CF3ReHyw.mjs.map → acorex-modules-auth-password.component-B_vA7-vu.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-auth-password.component-C85NgQxA.mjs → acorex-modules-auth-password.component-WUrm5Y6i.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-auth-password.component-C85NgQxA.mjs.map → acorex-modules-auth-password.component-WUrm5Y6i.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-auth-routes-BJh0Fwpy.mjs → acorex-modules-auth-routes-CYf17elA.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-auth-routes-BJh0Fwpy.mjs.map → acorex-modules-auth-routes-CYf17elA.mjs.map} +1 -1
  28. package/fesm2022/acorex-modules-auth-show-profile-command-DjvX7n9K.mjs +53 -0
  29. package/fesm2022/acorex-modules-auth-show-profile-command-DjvX7n9K.mjs.map +1 -0
  30. package/fesm2022/{acorex-modules-auth-two-factor.module-Bsh2_A5L.mjs → acorex-modules-auth-two-factor.module-CeJGeuid.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-auth-two-factor.module-Bsh2_A5L.mjs.map → acorex-modules-auth-two-factor.module-CeJGeuid.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-auth-user-sessions.component-ChMkstLg.mjs → acorex-modules-auth-user-sessions.component-D0jQEJcC.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-auth-user-sessions.component-ChMkstLg.mjs.map → acorex-modules-auth-user-sessions.component-D0jQEJcC.mjs.map} +1 -1
  34. package/fesm2022/acorex-modules-auth.mjs +1 -1
  35. package/fesm2022/acorex-modules-calendar-management.mjs +92 -29
  36. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  37. package/fesm2022/{acorex-modules-common-manage-extra-properties.command-DqdhTfLD.mjs → acorex-modules-common-manage-extra-properties.command-7prqQhV5.mjs} +15 -12
  38. package/fesm2022/acorex-modules-common-manage-extra-properties.command-7prqQhV5.mjs.map +1 -0
  39. package/fesm2022/acorex-modules-common.mjs +106 -8
  40. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  41. package/fesm2022/acorex-modules-contact-management.mjs +280 -122
  42. package/fesm2022/acorex-modules-contact-management.mjs.map +1 -1
  43. package/fesm2022/acorex-modules-content-management.mjs +555 -490
  44. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  45. package/fesm2022/acorex-modules-conversation.mjs +315 -252
  46. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  47. package/fesm2022/{acorex-modules-customer-management-acorex-modules-customer-management-DZBixdOT.mjs → acorex-modules-customer-management-acorex-modules-customer-management-BHs4rrB8.mjs} +12 -12
  48. package/fesm2022/{acorex-modules-customer-management-acorex-modules-customer-management-DZBixdOT.mjs.map → acorex-modules-customer-management-acorex-modules-customer-management-BHs4rrB8.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-customer-management-activity.entity-By32mnXN.mjs → acorex-modules-customer-management-activity.entity-D_9Nut_6.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-customer-management-activity.entity-By32mnXN.mjs.map → acorex-modules-customer-management-activity.entity-D_9Nut_6.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-customer-management-customer-segment.entity-CjFYqTMc.mjs → acorex-modules-customer-management-customer-segment.entity-swBR8-dJ.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-customer-management-customer-segment.entity-CjFYqTMc.mjs.map → acorex-modules-customer-management-customer-segment.entity-swBR8-dJ.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-customer-management-customer-type.entity-Bk_Ng_DS.mjs → acorex-modules-customer-management-customer-type.entity-GmfdE2Ex.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-customer-management-customer-type.entity-Bk_Ng_DS.mjs.map → acorex-modules-customer-management-customer-type.entity-GmfdE2Ex.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-customer-management-customer.entity-rUNC9glL.mjs → acorex-modules-customer-management-customer.entity-Bld5nRai.mjs} +23 -23
  56. package/fesm2022/acorex-modules-customer-management-customer.entity-Bld5nRai.mjs.map +1 -0
  57. package/fesm2022/{acorex-modules-customer-management-deal-contact-role.entity-BWX44lzi.mjs → acorex-modules-customer-management-deal-contact-role.entity-Ci_ymO_w.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-customer-management-deal-contact-role.entity-BWX44lzi.mjs.map → acorex-modules-customer-management-deal-contact-role.entity-Ci_ymO_w.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-customer-management-lead.entity-B3gv0YnT.mjs → acorex-modules-customer-management-lead.entity-BcQvYHnL.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-customer-management-lead.entity-B3gv0YnT.mjs.map → acorex-modules-customer-management-lead.entity-BcQvYHnL.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-customer-management-lifecycle-stage.entity-cs1hb_Ro.mjs → acorex-modules-customer-management-lifecycle-stage.entity-DSZyAv5_.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-customer-management-lifecycle-stage.entity-cs1hb_Ro.mjs.map → acorex-modules-customer-management-lifecycle-stage.entity-DSZyAv5_.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-customer-management-opportunity-stage.entity-C-opdmDW.mjs → acorex-modules-customer-management-opportunity-stage.entity-BpwLN_fw.mjs} +2 -2
  64. package/fesm2022/{acorex-modules-customer-management-opportunity-stage.entity-C-opdmDW.mjs.map → acorex-modules-customer-management-opportunity-stage.entity-BpwLN_fw.mjs.map} +1 -1
  65. package/fesm2022/{acorex-modules-customer-management-opportunity.entity-D5n_4xgK.mjs → acorex-modules-customer-management-opportunity.entity-DaiL4951.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-customer-management-opportunity.entity-D5n_4xgK.mjs.map → acorex-modules-customer-management-opportunity.entity-DaiL4951.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-customer-management-sales-pipeline.entity-AeLhcil2.mjs → acorex-modules-customer-management-sales-pipeline.entity-DP_w8V9E.mjs} +2 -2
  68. package/fesm2022/{acorex-modules-customer-management-sales-pipeline.entity-AeLhcil2.mjs.map → acorex-modules-customer-management-sales-pipeline.entity-DP_w8V9E.mjs.map} +1 -1
  69. package/fesm2022/{acorex-modules-customer-management-sales-territory.entity-uK9N7p_k.mjs → acorex-modules-customer-management-sales-territory.entity-BJNrmMO3.mjs} +2 -2
  70. package/fesm2022/{acorex-modules-customer-management-sales-territory.entity-uK9N7p_k.mjs.map → acorex-modules-customer-management-sales-territory.entity-BJNrmMO3.mjs.map} +1 -1
  71. package/fesm2022/acorex-modules-customer-management.mjs +1 -1
  72. package/fesm2022/acorex-modules-dashboard-management.mjs +182 -54
  73. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  74. package/fesm2022/acorex-modules-data-management.mjs +93 -28
  75. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  76. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-CiVbcZ81.mjs → acorex-modules-document-management-acorex-modules-document-management-BV6piYsz.mjs} +1037 -926
  77. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-BV6piYsz.mjs.map +1 -0
  78. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-iRZU056o.mjs → acorex-modules-document-management-attachment-widget.component-DVXmIiQt.mjs} +2 -2
  79. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-iRZU056o.mjs.map → acorex-modules-document-management-attachment-widget.component-DVXmIiQt.mjs.map} +1 -1
  80. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-DCoD73F7.mjs → acorex-modules-document-management-create-folder-dialog.component-CiT3wteQ.mjs} +2 -2
  81. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-DCoD73F7.mjs.map → acorex-modules-document-management-create-folder-dialog.component-CiT3wteQ.mjs.map} +1 -1
  82. package/fesm2022/{acorex-modules-document-management-details-view.component-D0JuVG8v.mjs → acorex-modules-document-management-details-view.component-BXUpaDZO.mjs} +2 -2
  83. package/fesm2022/{acorex-modules-document-management-details-view.component-D0JuVG8v.mjs.map → acorex-modules-document-management-details-view.component-BXUpaDZO.mjs.map} +1 -1
  84. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-B-VnHqr3.mjs → acorex-modules-document-management-document-signature-popup.component-D3GahdPn.mjs} +2 -2
  85. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-B-VnHqr3.mjs.map → acorex-modules-document-management-document-signature-popup.component-D3GahdPn.mjs.map} +1 -1
  86. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BdIU8PXg.mjs → acorex-modules-document-management-drive-choose.component-Bbms4LAS.mjs} +2 -2
  87. package/fesm2022/{acorex-modules-document-management-drive-choose.component-BdIU8PXg.mjs.map → acorex-modules-document-management-drive-choose.component-Bbms4LAS.mjs.map} +1 -1
  88. package/fesm2022/{acorex-modules-document-management-drive.component-DGQD1adR.mjs → acorex-modules-document-management-drive.component-DfHDC5o7.mjs} +2 -2
  89. package/fesm2022/{acorex-modules-document-management-drive.component-DGQD1adR.mjs.map → acorex-modules-document-management-drive.component-DfHDC5o7.mjs.map} +1 -1
  90. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-Ch9CAOwx.mjs → acorex-modules-document-management-large-icons-view.component-BPmfNI3J.mjs} +2 -2
  91. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-Ch9CAOwx.mjs.map → acorex-modules-document-management-large-icons-view.component-BPmfNI3J.mjs.map} +1 -1
  92. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-DgGef-W5.mjs → acorex-modules-document-management-large-tiles-view.component-6fjTzrwf.mjs} +2 -2
  93. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-DgGef-W5.mjs.map → acorex-modules-document-management-large-tiles-view.component-6fjTzrwf.mjs.map} +1 -1
  94. package/fesm2022/{acorex-modules-document-management-list-view.component-DK6IZdC0.mjs → acorex-modules-document-management-list-view.component-DeBNY8Aj.mjs} +2 -2
  95. package/fesm2022/{acorex-modules-document-management-list-view.component-DK6IZdC0.mjs.map → acorex-modules-document-management-list-view.component-DeBNY8Aj.mjs.map} +1 -1
  96. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-BV7PYxuz.mjs → acorex-modules-document-management-permission-definition.provider-Bn-umdXX.mjs} +2 -2
  97. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-BV7PYxuz.mjs.map → acorex-modules-document-management-permission-definition.provider-Bn-umdXX.mjs.map} +1 -1
  98. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-C37tOs99.mjs → acorex-modules-document-management-rename-node-dialog.component-LRFo58Xg.mjs} +2 -2
  99. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-C37tOs99.mjs.map → acorex-modules-document-management-rename-node-dialog.component-LRFo58Xg.mjs.map} +1 -1
  100. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-D0NHNq4W.mjs → acorex-modules-document-management-small-icons-view.component-BlQ3EhiJ.mjs} +2 -2
  101. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-D0NHNq4W.mjs.map → acorex-modules-document-management-small-icons-view.component-BlQ3EhiJ.mjs.map} +1 -1
  102. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DLNbw_y5.mjs → acorex-modules-document-management-small-tiles-view.component-BM2Uj_Wz.mjs} +2 -2
  103. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DLNbw_y5.mjs.map → acorex-modules-document-management-small-tiles-view.component-BM2Uj_Wz.mjs.map} +1 -1
  104. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  105. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-BvDYd3fI.mjs → acorex-modules-help-desk-acorex-modules-help-desk-C4s1EVQy.mjs} +123 -49
  106. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-C4s1EVQy.mjs.map +1 -0
  107. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-DH_FG8iE.mjs → acorex-modules-help-desk-capture-screen.component-BLZbJmw1.mjs} +2 -2
  108. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-DH_FG8iE.mjs.map → acorex-modules-help-desk-capture-screen.component-BLZbJmw1.mjs.map} +1 -1
  109. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  110. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-By3qopAk.mjs +1519 -0
  111. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-By3qopAk.mjs.map +1 -0
  112. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-DfVvf8Fg.mjs → acorex-modules-human-capital-management-employee-skill.entity-DRUHGUnT.mjs} +17 -17
  113. package/fesm2022/acorex-modules-human-capital-management-employee-skill.entity-DRUHGUnT.mjs.map +1 -0
  114. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-ByBqfKiF.mjs → acorex-modules-human-capital-management-employee.entity-Cn9GnmJE.mjs} +37 -15
  115. package/fesm2022/acorex-modules-human-capital-management-employee.entity-Cn9GnmJE.mjs.map +1 -0
  116. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-DZ8ubvD6.mjs → acorex-modules-human-capital-management-employment-type.entity-BveY2th_.mjs} +11 -10
  117. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-BveY2th_.mjs.map +1 -0
  118. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CIm3XrTb.mjs +267 -0
  119. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CIm3XrTb.mjs.map +1 -0
  120. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-COan6Cnw.mjs +95 -0
  121. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-COan6Cnw.mjs.map +1 -0
  122. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-BtIVnv-C.mjs → acorex-modules-human-capital-management-position-assignment.entity-BJw9jR1o.mjs} +14 -14
  123. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-BJw9jR1o.mjs.map +1 -0
  124. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-DFCE3zcH.mjs → acorex-modules-human-capital-management-skill-level.entity-CZe8y_hA.mjs} +10 -10
  125. package/fesm2022/acorex-modules-human-capital-management-skill-level.entity-CZe8y_hA.mjs.map +1 -0
  126. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-DPeTwYH4.mjs → acorex-modules-human-capital-management-skill.entity-CDXB7zyy.mjs} +8 -8
  127. package/fesm2022/acorex-modules-human-capital-management-skill.entity-CDXB7zyy.mjs.map +1 -0
  128. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  129. package/fesm2022/acorex-modules-locale-management.mjs +120 -13
  130. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  131. package/fesm2022/acorex-modules-location-management.mjs +125 -57
  132. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  133. package/fesm2022/acorex-modules-log-management.mjs +440 -164
  134. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  135. package/fesm2022/acorex-modules-meeting-management-meeting-schedule.entity-D-RQ-D3d.mjs +155 -0
  136. package/fesm2022/acorex-modules-meeting-management-meeting-schedule.entity-D-RQ-D3d.mjs.map +1 -0
  137. package/fesm2022/acorex-modules-meeting-management.mjs +654 -620
  138. package/fesm2022/acorex-modules-meeting-management.mjs.map +1 -1
  139. package/fesm2022/acorex-modules-notification-management.mjs +835 -795
  140. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  141. package/fesm2022/{acorex-modules-party-management-acorex-modules-party-management-BshJoI7_.mjs → acorex-modules-party-management-acorex-modules-party-management-DzhGLAZb.mjs} +373 -230
  142. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-DzhGLAZb.mjs.map +1 -0
  143. package/fesm2022/{acorex-modules-party-management-industry.entity-CoMI4imz.mjs → acorex-modules-party-management-industry.entity-sLrAmADa.mjs} +2 -2
  144. package/fesm2022/{acorex-modules-party-management-industry.entity-CoMI4imz.mjs.map → acorex-modules-party-management-industry.entity-sLrAmADa.mjs.map} +1 -1
  145. package/fesm2022/{acorex-modules-party-management-party-identifier-type.entity-D-VpvXeU.mjs → acorex-modules-party-management-party-identifier-type.entity-WL-tJlK7.mjs} +2 -2
  146. package/fesm2022/{acorex-modules-party-management-party-identifier-type.entity-D-VpvXeU.mjs.map → acorex-modules-party-management-party-identifier-type.entity-WL-tJlK7.mjs.map} +1 -1
  147. package/fesm2022/{acorex-modules-party-management-party-identifier.entity-BcXi9BM0.mjs → acorex-modules-party-management-party-identifier.entity-BGJdllN8.mjs} +2 -2
  148. package/fesm2022/{acorex-modules-party-management-party-identifier.entity-BcXi9BM0.mjs.map → acorex-modules-party-management-party-identifier.entity-BGJdllN8.mjs.map} +1 -1
  149. package/fesm2022/{acorex-modules-party-management-party-relationship.entity-B-gMK84C.mjs → acorex-modules-party-management-party-relationship.entity-Bhqgy4-Y.mjs} +2 -2
  150. package/fesm2022/{acorex-modules-party-management-party-relationship.entity-B-gMK84C.mjs.map → acorex-modules-party-management-party-relationship.entity-Bhqgy4-Y.mjs.map} +1 -1
  151. package/fesm2022/{acorex-modules-party-management-party-role.entity-OV4XUnfD.mjs → acorex-modules-party-management-party-role.entity-BpPCL3GG.mjs} +2 -2
  152. package/fesm2022/{acorex-modules-party-management-party-role.entity-OV4XUnfD.mjs.map → acorex-modules-party-management-party-role.entity-BpPCL3GG.mjs.map} +1 -1
  153. package/fesm2022/{acorex-modules-party-management-party.entity-Cwd9EqB4.mjs → acorex-modules-party-management-party.entity-v-YrPNOP.mjs} +2 -2
  154. package/fesm2022/{acorex-modules-party-management-party.entity-Cwd9EqB4.mjs.map → acorex-modules-party-management-party.entity-v-YrPNOP.mjs.map} +1 -1
  155. package/fesm2022/acorex-modules-party-management.mjs +1 -1
  156. package/fesm2022/acorex-modules-platform-management.mjs +444 -397
  157. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  158. package/fesm2022/acorex-modules-project-management-email-jsa.command-DC3Zbfdn.mjs +115 -0
  159. package/fesm2022/acorex-modules-project-management-email-jsa.command-DC3Zbfdn.mjs.map +1 -0
  160. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-CJKR5FZw.mjs +113 -0
  161. package/fesm2022/acorex-modules-project-management-reassign-jsa.command-CJKR5FZw.mjs.map +1 -0
  162. package/fesm2022/acorex-modules-project-management-setup-jsa.command-Cztc8TDy.mjs +94 -0
  163. package/fesm2022/acorex-modules-project-management-setup-jsa.command-Cztc8TDy.mjs.map +1 -0
  164. package/fesm2022/acorex-modules-project-management-sign-jsa.command-b28tr2kE.mjs +77 -0
  165. package/fesm2022/acorex-modules-project-management-sign-jsa.command-b28tr2kE.mjs.map +1 -0
  166. package/fesm2022/acorex-modules-project-management.mjs +1416 -279
  167. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  168. package/fesm2022/acorex-modules-report-management.mjs +83 -15
  169. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  170. package/fesm2022/acorex-modules-security-management.mjs +4 -1
  171. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  172. package/fesm2022/{acorex-modules-task-management-task-board.page-Je2Y8X62.mjs → acorex-modules-task-management-task-board.page-CaypEYjP.mjs} +3 -1
  173. package/fesm2022/{acorex-modules-task-management-task-board.page-Je2Y8X62.mjs.map → acorex-modules-task-management-task-board.page-CaypEYjP.mjs.map} +1 -1
  174. package/fesm2022/acorex-modules-task-management.mjs +3254 -3069
  175. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  176. package/fesm2022/acorex-modules-training-management.mjs +1 -1
  177. package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
  178. package/help-desk/index.d.ts +32 -14
  179. package/human-capital-management/index.d.ts +150 -2
  180. package/locale-management/index.d.ts +27 -3
  181. package/location-management/index.d.ts +20 -2
  182. package/log-management/index.d.ts +8 -1
  183. package/meeting-management/index.d.ts +47 -20
  184. package/notification-management/index.d.ts +48 -36
  185. package/package.json +13 -13
  186. package/party-management/index.d.ts +43 -1
  187. package/platform-management/index.d.ts +33 -21
  188. package/project-management/index.d.ts +156 -3
  189. package/report-management/index.d.ts +14 -2
  190. package/task-management/index.d.ts +56 -2
  191. package/fesm2022/acorex-modules-auth-acorex-modules-auth-BbO_ea5W.mjs.map +0 -1
  192. package/fesm2022/acorex-modules-common-manage-extra-properties.command-DqdhTfLD.mjs.map +0 -1
  193. package/fesm2022/acorex-modules-customer-management-customer.entity-rUNC9glL.mjs.map +0 -1
  194. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-CiVbcZ81.mjs.map +0 -1
  195. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-BvDYd3fI.mjs.map +0 -1
  196. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-D4A3ZYFq.mjs +0 -723
  197. package/fesm2022/acorex-modules-human-capital-management-acorex-modules-human-capital-management-D4A3ZYFq.mjs.map +0 -1
  198. package/fesm2022/acorex-modules-human-capital-management-employee-skill.entity-DfVvf8Fg.mjs.map +0 -1
  199. package/fesm2022/acorex-modules-human-capital-management-employee.entity-ByBqfKiF.mjs.map +0 -1
  200. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-DZ8ubvD6.mjs.map +0 -1
  201. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-BtIVnv-C.mjs.map +0 -1
  202. package/fesm2022/acorex-modules-human-capital-management-skill-level.entity-DFCE3zcH.mjs.map +0 -1
  203. package/fesm2022/acorex-modules-human-capital-management-skill.entity-DPeTwYH4.mjs.map +0 -1
  204. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-BshJoI7_.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-contact-management.mjs","sources":["../tmp-esm2022/contact-management/lib/const.js","../tmp-esm2022/contact-management/lib/entity.provider.js","../tmp-esm2022/contact-management/lib/menu.provider.js","../tmp-esm2022/contact-management/lib/search-command.provider.js","../tmp-esm2022/contact-management/lib/entities/contact-method-type/contact-method-type.service.js","../tmp-esm2022/contact-management/lib/entities/contact-method-type/contact-method-type.entity.js","../tmp-esm2022/contact-management/lib/entities/contact-method/contact-method.service.js","../tmp-esm2022/contact-management/lib/entities/contact-method/index.js","../tmp-esm2022/contact-management/lib/entities/emergency-contact/emergency-contact.service.js","../tmp-esm2022/contact-management/lib/contact-management.module.js","../tmp-esm2022/contact-management/lib/permission.keys.js","../tmp-esm2022/contact-management/lib/permission-definition.provider.js","../tmp-esm2022/contact-management/lib/features/emergency-contacts/emergency-contacts-page.component.js","../tmp-esm2022/contact-management/acorex-modules-contact-management.js"],"sourcesContent":["const config = {\n i18n: 'contact-management',\n};\nexport const RootConfig = {\n config,\n module: {\n name: 'ContactManagement',\n title: '@contact-management:module-name',\n icon: 'fa-light fa-address-book',\n },\n entities: {\n contactMethodType: {\n name: 'ContactMethodType',\n title: '@contact-management:contact-method-type.individual-title',\n titlePlural: '@contact-management:contact-method-type.plural-title',\n icon: 'fa-light fa-list',\n },\n contactMethod: {\n name: 'ContactMethod',\n title: '@contact-management:contact-method.individual-title',\n titlePlural: '@contact-management:contact-method.plural-title',\n icon: 'fa-light fa-phone',\n },\n emergencyContact: {\n name: 'EmergencyContact',\n title: '@contact-management:emergency-contact.individual-title',\n titlePlural: '@contact-management:emergency-contact.plural-title',\n icon: 'fa-light fa-siren',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxNQUFNLEdBQUc7SUFDYixJQUFJLEVBQUUsb0JBQW9CO0NBQzNCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxtQkFBbUI7UUFDekIsS0FBSyxFQUFFLGlDQUFpQztRQUN4QyxJQUFJLEVBQUUsMEJBQTBCO0tBQ2pDO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsaUJBQWlCLEVBQUU7WUFDakIsSUFBSSxFQUFFLG1CQUFtQjtZQUN6QixLQUFLLEVBQUUsMERBQTBEO1lBQ2pFLFdBQVcsRUFBRSxzREFBc0Q7WUFDbkUsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELGFBQWEsRUFBRTtZQUNiLElBQUksRUFBRSxlQUFlO1lBQ3JCLEtBQUssRUFBRSxxREFBcUQ7WUFDNUQsV0FBVyxFQUFFLGlEQUFpRDtZQUM5RCxJQUFJLEVBQUUsbUJBQW1CO1NBQzFCO1FBQ0QsZ0JBQWdCLEVBQUU7WUFDaEIsSUFBSSxFQUFFLGtCQUFrQjtZQUN4QixLQUFLLEVBQUUsd0RBQXdEO1lBQy9ELFdBQVcsRUFBRSxvREFBb0Q7WUFDakUsSUFBSSxFQUFFLG1CQUFtQjtTQUMxQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ2NvbnRhY3QtbWFuYWdlbWVudCcsXG59O1xuXG5leHBvcnQgY29uc3QgUm9vdENvbmZpZyA9IHtcbiAgY29uZmlnLFxuICBtb2R1bGU6IHtcbiAgICBuYW1lOiAnQ29udGFjdE1hbmFnZW1lbnQnLFxuICAgIHRpdGxlOiAnQGNvbnRhY3QtbWFuYWdlbWVudDptb2R1bGUtbmFtZScsXG4gICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWFkZHJlc3MtYm9vaycsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgY29udGFjdE1ldGhvZFR5cGU6IHtcbiAgICAgIG5hbWU6ICdDb250YWN0TWV0aG9kVHlwZScsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QtdHlwZS5pbmRpdmlkdWFsLXRpdGxlJyxcbiAgICAgIHRpdGxlUGx1cmFsOiAnQGNvbnRhY3QtbWFuYWdlbWVudDpjb250YWN0LW1ldGhvZC10eXBlLnBsdXJhbC10aXRsZScsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbGlzdCcsXG4gICAgfSxcbiAgICBjb250YWN0TWV0aG9kOiB7XG4gICAgICBuYW1lOiAnQ29udGFjdE1ldGhvZCcsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QuaW5kaXZpZHVhbC10aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QucGx1cmFsLXRpdGxlJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1waG9uZScsXG4gICAgfSxcbiAgICBlbWVyZ2VuY3lDb250YWN0OiB7XG4gICAgICBuYW1lOiAnRW1lcmdlbmN5Q29udGFjdCcsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QuaW5kaXZpZHVhbC10aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QucGx1cmFsLXRpdGxlJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1zaXJlbicsXG4gICAgfSxcbiAgfSxcbn07ICJdfQ==","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactManagementEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.contactMethodType.name:\n return (await import('./entities/contact-method-type/contact-method-type.entity')).contactMethodTypeFactory(this.injector);\n case RootConfig.entities.contactMethod.name:\n return (await import('./entities/contact-method/contact-method.entity')).contactMethodFactory(this.injector);\n case RootConfig.entities.emergencyContact.name:\n return (await import('./entities/emergency-contact/emergency-contact.entity')).emergencyContactFactory(this.injector);\n }\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0eS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHckMsTUFBTSxPQUFPLGtDQUFrQztJQUQvQztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0F1QnJDO0lBckJRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsUUFBUSxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUk7b0JBQzdDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQywyREFBMkQsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUM3SCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUk7b0JBQ3pDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyxpREFBaUQsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvRyxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtvQkFDNUMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHVEQUF1RCxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUgsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBdkJVLGtDQUFrQztrSEFBbEMsa0NBQWtDOzsyRkFBbEMsa0NBQWtDO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUNvbnRhY3RNYW5hZ2VtZW50RW50aXR5UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBFbnRpdHlEZWZpbml0aW9uTG9hZGVyLCBBWFBFbnRpdHlEZWZpbml0aW9uUHJlbG9hZGVyIHtcbiAgcHJpdmF0ZSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHVibGljIHByZWxvYWQoKTogQVhQRW50aXR5UHJlbG9hZEVudGl0eVtdIHtcbiAgICBjb25zdCBtb2R1bGUgPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBBcnJheS5mcm9tKE9iamVjdC52YWx1ZXMoUm9vdENvbmZpZy5lbnRpdGllcykpLm1hcCgoZW50aXR5OiBhbnkpID0+ICh7XG4gICAgICBtb2R1bGU6IG1vZHVsZSxcbiAgICAgIGVudGl0eTogZW50aXR5Lm5hbWUsXG4gICAgfSkpO1xuICB9XG5cbiAgYXN5bmMgZ2V0KG1vZHVsZU5hbWU6IHN0cmluZywgZW50aXR5TmFtZTogc3RyaW5nKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gICAgaWYgKG1vZHVsZU5hbWUgPT0gUm9vdENvbmZpZy5tb2R1bGUubmFtZSkge1xuICAgICAgc3dpdGNoIChlbnRpdHlOYW1lKSB7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kLXR5cGUvY29udGFjdC1tZXRob2QtdHlwZS5lbnRpdHknKSkuY29udGFjdE1ldGhvZFR5cGVGYWN0b3J5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuY29udGFjdE1ldGhvZC5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kL2NvbnRhY3QtbWV0aG9kLmVudGl0eScpKS5jb250YWN0TWV0aG9kRmFjdG9yeSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC5lbnRpdHknKSkuZW1lcmdlbmN5Q29udGFjdEZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59ICJdfQ==","import { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXPSessionService } from '@acorex/platform/auth';\nexport class AXMContactManagementMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n this.sessionService = inject(AXPSessionService);\n }\n async provide(context) {\n const module = RootConfig.module;\n context.addItems([\n {\n priority: 9002,\n text: '@contact-management:root-menu',\n icon: module.icon,\n children: [\n {\n text: '@contact-management:contact-method-type.plural-title',\n path: this.entityService.createPath(module.name, RootConfig.entities.contactMethodType.name),\n icon: RootConfig.entities.contactMethodType.icon,\n priority: 5,\n },\n {\n text: ``,\n type: 'break',\n priority: 10,\n },\n {\n text: '@contact-management:emergency-contact.plural-title',\n path: this.entityService.createPath(module.name, RootConfig.entities.emergencyContact.name),\n icon: RootConfig.entities.emergencyContact.icon,\n priority: 12,\n },\n {\n text: '@contact-management:emergency-contact.page.title',\n path: `${this.sessionService.application?.name}/emergency-contacts`,\n icon: 'fa-light fa-phone-rotary',\n priority: 13,\n },\n ],\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxNQUFNLE9BQU8sZ0NBQWdDO0lBQTdDO1FBQ1Usa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBc0NyRCxDQUFDO0lBcENDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBK0I7UUFDM0MsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUVqQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ2Y7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsSUFBSSxFQUFFLCtCQUErQjtnQkFDckMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixRQUFRLEVBQUU7b0JBQ1I7d0JBQ0UsSUFBSSxFQUFFLHNEQUFzRDt3QkFDNUQsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7d0JBQzVGLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUk7d0JBQ2hELFFBQVEsRUFBRSxDQUFDO3FCQUNaO29CQUNEO3dCQUNFLElBQUksRUFBRSxFQUFFO3dCQUNSLElBQUksRUFBRSxPQUFPO3dCQUNiLFFBQVEsRUFBRSxFQUFFO3FCQUNiO29CQUNEO3dCQUNFLElBQUksRUFBRSxvREFBb0Q7d0JBQzFELElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO3dCQUMzRixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO3dCQUMvQyxRQUFRLEVBQUUsRUFBRTtxQkFDYjtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsa0RBQWtEO3dCQUN4RCxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxJQUFJLHFCQUFxQjt3QkFDbkUsSUFBSSxFQUFFLDBCQUEwQjt3QkFDaEMsUUFBUSxFQUFFLEVBQUU7cUJBQ2I7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUE1lbnVQcm92aWRlciwgQVhQTWVudVByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1Db250YWN0TWFuYWdlbWVudE1lbnVQcm92aWRlciBpbXBsZW1lbnRzIEFYUE1lbnVQcm92aWRlciB7XG4gIHByaXZhdGUgZW50aXR5U2VydmljZSA9IGluamVjdChBWFBFbnRpdHlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZXNzaW9uU2VydmljZSA9IGluamVjdChBWFBTZXNzaW9uU2VydmljZSk7XG5cbiAgYXN5bmMgcHJvdmlkZShjb250ZXh0OiBBWFBNZW51UHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGU7XG5cbiAgICBjb250ZXh0LmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgcHJpb3JpdHk6IDkwMDIsXG4gICAgICAgIHRleHQ6ICdAY29udGFjdC1tYW5hZ2VtZW50OnJvb3QtbWVudScsXG4gICAgICAgIGljb246IG1vZHVsZS5pY29uLFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6ICdAY29udGFjdC1tYW5hZ2VtZW50OmNvbnRhY3QtbWV0aG9kLXR5cGUucGx1cmFsLXRpdGxlJyxcbiAgICAgICAgICAgIHBhdGg6IHRoaXMuZW50aXR5U2VydmljZS5jcmVhdGVQYXRoKG1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLm5hbWUpLFxuICAgICAgICAgICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5pY29uLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiBgYCxcbiAgICAgICAgICAgIHR5cGU6ICdicmVhaycsXG4gICAgICAgICAgICBwcmlvcml0eTogMTAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiAnQGNvbnRhY3QtbWFuYWdlbWVudDplbWVyZ2VuY3ktY29udGFjdC5wbHVyYWwtdGl0bGUnLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgobW9kdWxlLm5hbWUsIFJvb3RDb25maWcuZW50aXRpZXMuZW1lcmdlbmN5Q29udGFjdC5uYW1lKSxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMuZW1lcmdlbmN5Q29udGFjdC5pY29uLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDEyLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdGV4dDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QucGFnZS50aXRsZScsXG4gICAgICAgICAgICBwYXRoOiBgJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lfS9lbWVyZ2VuY3ktY29udGFjdHNgLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXBob25lLXJvdGFyeScsXG4gICAgICAgICAgICBwcmlvcml0eTogMTMsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cbn0gIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMContactManagementSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // Commands will be added here following the correct pattern\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvc2VhcmNoLWNvbW1hbmQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSx3QkFBd0I7SUFBdkY7O1FBQ0UsYUFBUSxHQUFzQjtRQUM1Qiw0REFBNEQ7U0FDN0QsQ0FBQztJQUNKLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciwgQVhQU2VhcmNoUmVzdWx0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1hbmFnZW1lbnRTZWFyY2hDb21tYW5kUHJvdmlkZXIgZXh0ZW5kcyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIge1xuICBjb21tYW5kczogQVhQU2VhcmNoUmVzdWx0W10gPSBbXG4gICAgLy8gQ29tbWFuZHMgd2lsbCBiZSBhZGRlZCBoZXJlIGZvbGxvd2luZyB0aGUgY29ycmVjdCBwYXR0ZXJuXG4gIF07XG59ICJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodTypeService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMContactMethodTypeServiceImpl extends AXMContactMethodTypeService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.contactMethodType.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QtdHlwZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kLXR5cGUvY29udGFjdC1tZXRob2QtdHlwZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQiwyQkFBNEIsU0FBUSx3QkFHekQ7Q0FBSTtBQUdMLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSwyQkFBMkI7SUFDNUU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDckYsQ0FBQzs4R0FIUSwrQkFBK0I7a0hBQS9CLCtCQUErQjs7MkZBQS9CLCtCQUErQjtrQkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kVHlwZUVudGl0eU1vZGVsIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC10eXBlLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgICBzdHJpbmcsXG4gICAgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kVHlwZUVudGl0eU1vZGVsXG4+IHsgfVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5uYW1lfWApO1xuICAgIH1cbn0gIl19","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMContactMethodTypeService } from './contact-method-type.service';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nexport async function contactMethodTypeFactory(injector) {\n const dataService = injector.get(AXMContactMethodTypeService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.contactMethodType.name,\n source: '',\n title: RootConfig.entities.contactMethodType.title,\n formats: {\n individual: RootConfig.entities.contactMethodType.title,\n plural: RootConfig.entities.contactMethodType.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n plugins: [\n { name: 'history' },\n { name: 'lock' },\n { name: 'compare' },\n ],\n groups: [\n {\n id: 'basic-info',\n title: '@general:terms.basic-info',\n },\n {\n id: 'validation',\n title: '@general:terms.validation',\n },\n {\n id: 'settings',\n title: '@general:terms.settings',\n },\n ],\n properties: [\n {\n name: 'title',\n title: '@general:terms.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'validationRegex',\n title: '@general:terms.validation-regex',\n groupId: 'validation',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$'\n }\n },\n },\n },\n {\n name: 'placeholder',\n title: '@general:terms.placeholder',\n groupId: 'validation',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 'user@example.com'\n }\n },\n },\n },\n {\n name: 'isActive',\n title: '@general:terms.status.options.active',\n groupId: 'settings',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'boolean',\n interface: { type: AXPWidgetsCatalog.toggle },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'validationRegex' },\n { name: 'placeholder' },\n { name: 'isActive' }\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n actions: [\n ...entityMasterRecordActions()\n ],\n },\n list: {\n actions: [\n ...entityMasterCrudActions()\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QtdHlwZS5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY29udGFjdC1tZXRob2QtdHlwZS9jb250YWN0LW1ldGhvZC10eXBlLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQTRCLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFOUgsTUFBTSxDQUFDLEtBQUssVUFBVSx3QkFBd0IsQ0FBQyxRQUFrQjtJQUMvRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDOUQsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO1FBQ2hELE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsS0FBSztRQUNsRCxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLO1lBQ3ZELE1BQU0sRUFBRSxV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d0JBQ1YsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTt3QkFDMUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNwRixFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNoRixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3FCQUM5RTtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyx5QkFBeUIsRUFBRTtxQkFDL0I7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3FCQUM3QjtvQkFDRCxLQUFLLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3hFO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC10eXBlLnNlcnZpY2UnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlckRlbGV0ZUFjdGlvbiwgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb250YWN0TWV0aG9kVHlwZUZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS50aXRsZSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcGx1Z2luczogW1xuICAgICAgeyBuYW1lOiAnaGlzdG9yeScgfSxcbiAgICAgIHsgbmFtZTogJ2xvY2snIH0sXG4gICAgICB7IG5hbWU6ICdjb21wYXJlJyB9LFxuICAgIF0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYmFzaWMtaW5mbycsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuYmFzaWMtaW5mbycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLnZhbGlkYXRpb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZXR0aW5ncycsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuc2V0dGluZ3MnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7IHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndmFsaWRhdGlvblJlZ2V4JyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy52YWxpZGF0aW9uLXJlZ2V4JyxcbiAgICAgICAgZ3JvdXBJZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sIGlubGluZTogeyBlbmFibGVkOiBmYWxzZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rXFxcXC5bYS16QS1aXXsyLH0kJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGxhY2Vob2xkZXInLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLnBsYWNlaG9sZGVyJyxcbiAgICAgICAgZ3JvdXBJZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sIGlubGluZTogeyBlbmFibGVkOiBmYWxzZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAndXNlckBleGFtcGxlLmNvbSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lzQWN0aXZlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5zdGF0dXMub3B0aW9ucy5hY3RpdmUnLFxuICAgICAgICBncm91cElkOiAnc2V0dGluZ3MnLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7IHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgIHsgbmFtZTogJ3RpdGxlJyB9LFxuICAgICAgeyBuYW1lOiAndmFsaWRhdGlvblJlZ2V4JyB9LFxuICAgICAgeyBuYW1lOiAncGxhY2Vob2xkZXInIH0sXG4gICAgICB7IG5hbWU6ICdpc0FjdGl2ZScgfVxuICAgIF0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAgeyBpZDogJ2Jhc2ljLWluZm8nIH0sXG4gICAgICAgICAgICB7IGlkOiAndmFsaWRhdGlvbicgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdzZXR0aW5ncycgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYsIG9yZGVyOiAxIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd2YWxpZGF0aW9uUmVnZXgnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYsIG9yZGVyOiAyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdwbGFjZWhvbGRlcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDMgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQWN0aXZlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAzLCBvcmRlcjogNCB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnYmFzaWMtaW5mbycgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd2YWxpZGF0aW9uJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3NldHRpbmdzJyB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDEgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkYXRpb25SZWdleCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3BsYWNlaG9sZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2LCBvcmRlcjogMyB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnaXNBY3RpdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDMsIG9yZGVyOiA0IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnYmFzaWMtaW5mbycgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd2YWxpZGF0aW9uJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3NldHRpbmdzJyB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDEgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkYXRpb25SZWdleCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3BsYWNlaG9sZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2LCBvcmRlcjogMyB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnaXNBY3RpdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDMsIG9yZGVyOiA0IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAuLi5lbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zKClcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgLi4uZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMoKVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtjcmVhdGVBbGxRdWVyeVZpZXcoeyBzb3J0czogW3sgbmFtZTogJ3RpdGxlJywgZGlyOiAnYXNjJyB9XSB9KV0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn0gIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMContactMethodServiceImpl extends AXMContactMethodService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.contactMethod.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jb250YWN0LW1ldGhvZC9jb250YWN0LW1ldGhvZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQix1QkFBd0IsU0FBUSx3QkFHckQ7Q0FBSTtBQUdMLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx1QkFBdUI7SUFDcEU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7OEdBSFEsMkJBQTJCO2tIQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUNvbnRhY3RNYW5hZ2VtZW50Q29udGFjdE1ldGhvZEVudGl0eU1vZGVsIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Db250YWN0TWV0aG9kU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgICBzdHJpbmcsXG4gICAgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kRW50aXR5TW9kZWxcbj4geyB9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1Db250YWN0TWV0aG9kU2VydmljZUltcGwgZXh0ZW5kcyBBWE1Db250YWN0TWV0aG9kU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kLm5hbWV9YCk7XG4gICAgfVxufSAiXX0=","export * from './contact-method.service';\nexport * from './contact-method.types';\n// Note: contact-method.entity.ts will reference contactMethodType lookup \n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY29udGFjdC1tZXRob2QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLDBFQUEwRSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1tZXRob2Quc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRhY3QtbWV0aG9kLnR5cGVzJztcbi8vIE5vdGU6IGNvbnRhY3QtbWV0aG9kLmVudGl0eS50cyB3aWxsIHJlZmVyZW5jZSBjb250YWN0TWV0aG9kVHlwZSBsb29rdXAgIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEmergencyContactService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMEmergencyContactServiceImpl extends AXMEmergencyContactService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.emergencyContact.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQiwwQkFBMkIsU0FBUSx3QkFHeEQ7Q0FBSTtBQUdMLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSwwQkFBMEI7SUFDMUU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDcEYsQ0FBQzs4R0FIUSw4QkFBOEI7a0hBQTlCLDhCQUE4Qjs7MkZBQTlCLDhCQUE4QjtrQkFEMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwgfSBmcm9tICcuL2VtZXJnZW5jeS1jb250YWN0LnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICAgIHN0cmluZyxcbiAgICBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbFxuPiB7IH1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QubmFtZX1gKTtcbiAgICB9XG59ICJdfQ==","import { inject, Injector, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\n// Entity Providers\nimport { AXMContactManagementEntityProvider } from './entity.provider';\nimport { AXMContactManagementMenuProvider } from './menu.provider';\nimport { AXMContactManagementSearchCommandProvider } from './search-command.provider';\n// Services\nimport { AXMContactMethodTypeService, AXMContactMethodTypeServiceImpl } from './entities/contact-method-type';\nimport { AXMContactMethodService, AXMContactMethodServiceImpl } from './entities/contact-method';\nimport { AXMEmergencyContactService, AXMEmergencyContactServiceImpl } from './entities/emergency-contact';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutComponent } from '@acorex/platform/themes/default';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/router\";\nexport class AXMContactManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, imports: [CommonModule, i1.RouterModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, providers: [\n // Entity Provider\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMContactManagementEntityProvider,\n multi: true,\n },\n // Menu Provider\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMContactManagementMenuProvider,\n multi: true,\n },\n // Search Command Provider\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMContactManagementSearchCommandProvider,\n multi: true,\n },\n // Permission Provider\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n // Entity Services\n {\n provide: AXMContactMethodTypeService,\n useClass: AXMContactMethodTypeServiceImpl,\n },\n {\n provide: AXMContactMethodService,\n useClass: AXMContactMethodServiceImpl,\n },\n {\n provide: AXMEmergencyContactService,\n useClass: AXMEmergencyContactServiceImpl,\n },\n ], imports: [CommonModule,\n RouterModule.forChild([{\n path: ':app/emergency-contacts',\n component: AXPRootLayoutComponent,\n children: [\n {\n path: '',\n loadComponent: () => import('./features/emergency-contacts/emergency-contacts-page.component').then(m => m.AXMEmergencyContactsPageComponent)\n }\n ]\n }\n ])] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n CommonModule,\n RouterModule.forChild([{\n path: ':app/emergency-contacts',\n component: AXPRootLayoutComponent,\n children: [\n {\n path: '',\n loadComponent: () => import('./features/emergency-contacts/emergency-contacts-page.component').then(m => m.AXMEmergencyContactsPageComponent)\n }\n ]\n }\n ]),\n ],\n providers: [\n // Entity Provider\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMContactManagementEntityProvider,\n multi: true,\n },\n // Menu Provider\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMContactManagementMenuProvider,\n multi: true,\n },\n // Search Command Provider\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMContactManagementSearchCommandProvider,\n multi: true,\n },\n // Permission Provider\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n // Entity Services\n {\n provide: AXMContactMethodTypeService,\n useClass: AXMContactMethodTypeServiceImpl,\n },\n {\n provide: AXMContactMethodService,\n useClass: AXMContactMethodServiceImpl,\n },\n {\n provide: AXMEmergencyContactService,\n useClass: AXMEmergencyContactServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9jb250YWN0LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUNILGlCQUFpQixFQUNqQixtQkFBbUIsR0FDdEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU5RSxtQkFBbUI7QUFDbkIsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlDQUF5QyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHdEYsV0FBVztBQUNYLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBa0V6RSxNQUFNLE9BQU8sMEJBQTBCOzhHQUExQiwwQkFBMEI7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LFFBQVEsQ0FBQyxDQUFDO2dDQUNsQyxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQztnQ0FDcEcsT0FBTyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQzs0QkFDbEMsQ0FBQzs0QkFDRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDt3QkFDRCxrQkFBa0I7d0JBQ2xCOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzVDO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSx1QkFBdUI7NEJBQ2hDLFFBQVEsRUFBRSwyQkFBMkI7eUJBQ3hDO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwwQkFBMEI7NEJBQ25DLFFBQVEsRUFBRSw4QkFBOEI7eUJBQzNDO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RvciwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7XG4gICAgQVhQX01FTlVfUFJPVklERVIsXG4gICAgQVhQX1NFQVJDSF9QUk9WSURFUixcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5cbi8vIEVudGl0eSBQcm92aWRlcnNcbmltcG9ydCB7IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW50aXR5UHJvdmlkZXIgfSBmcm9tICcuL2VudGl0eS5wcm92aWRlcic7XG5pbXBvcnQgeyBBWE1Db250YWN0TWFuYWdlbWVudE1lbnVQcm92aWRlciB9IGZyb20gJy4vbWVudS5wcm92aWRlcic7XG5pbXBvcnQgeyBBWE1Db250YWN0TWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlciB9IGZyb20gJy4vc2VhcmNoLWNvbW1hbmQucHJvdmlkZXInO1xuXG5cbi8vIFNlcnZpY2VzXG5pbXBvcnQgeyBBWE1Db250YWN0TWV0aG9kVHlwZVNlcnZpY2UsIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZUltcGwgfSBmcm9tICcuL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kLXR5cGUnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1ldGhvZFNlcnZpY2UsIEFYTUNvbnRhY3RNZXRob2RTZXJ2aWNlSW1wbCB9IGZyb20gJy4vZW50aXRpZXMvY29udGFjdC1tZXRob2QnO1xuaW1wb3J0IHsgQVhNRW1lcmdlbmN5Q29udGFjdFNlcnZpY2UsIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlSW1wbCB9IGZyb20gJy4vZW50aXRpZXMvZW1lcmdlbmN5LWNvbnRhY3QnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0JztcblxuXG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZS5mb3JDaGlsZChbe1xuICAgICAgICAgICAgcGF0aDogJzphcHAvZW1lcmdlbmN5LWNvbnRhY3RzJyxcbiAgICAgICAgICAgIGNvbXBvbmVudDogQVhQUm9vdExheW91dENvbXBvbmVudCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2ZlYXR1cmVzL2VtZXJnZW5jeS1jb250YWN0cy9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQnKS50aGVuKG0gPT4gbS5BWE1FbWVyZ2VuY3lDb250YWN0c1BhZ2VDb21wb25lbnQpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICAgIF0pLFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC8vIEVudGl0eSBQcm92aWRlclxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW50aXR5UHJvdmlkZXIsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcblxuICAgICAgICAvLyBNZW51IFByb3ZpZGVyXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9NRU5VX1BST1ZJREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvbnRhY3RNYW5hZ2VtZW50TWVudVByb3ZpZGVyLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG5cbiAgICAgICAgLy8gU2VhcmNoIENvbW1hbmQgUHJvdmlkZXJcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhQX1NFQVJDSF9QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Db250YWN0TWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuXG4gICAgICAgIC8vIFBlcm1pc3Npb24gUHJvdmlkZXJcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhQX1BFUk1JU1NJT05fREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJvdmlkZXIgPSAoYXdhaXQgaW1wb3J0KCcuL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlcicpKS5BWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyO1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgcHJvdmlkZXIoaW5qZWN0b3IpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICAvLyBFbnRpdHkgU2VydmljZXNcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYTUNvbnRhY3RNZXRob2RTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvbnRhY3RNZXRob2RTZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNRW1lcmdlbmN5Q29udGFjdFNlcnZpY2UsXG4gICAgICAgICAgICB1c2VDbGFzczogQVhNRW1lcmdlbmN5Q29udGFjdFNlcnZpY2VJbXBsLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUNvbnRhY3RNYW5hZ2VtZW50TW9kdWxlIHsgfSAiXX0=","import { AXPSystemActionType } from \"@acorex/platform/core\";\nimport { RootConfig } from \"./const\";\nconst moduleKey = RootConfig.module.name;\nconst entitiesKey = RootConfig.entities;\nconst manageKey = AXPSystemActionType.Manage;\nconst viewKey = AXPSystemActionType.View;\nconst updateKey = AXPSystemActionType.Update;\nconst deleteKey = AXPSystemActionType.Delete;\nconst createKey = AXPSystemActionType.Create;\nexport const AXMPermissionsKeys = {\n ContactManagement: {\n Management: `${moduleKey}:${manageKey}`,\n ContactMethodTypes: {\n Management: `${moduleKey}:${entitiesKey.contactMethodType.name}:${manageKey}`,\n View: `${moduleKey}:${entitiesKey.contactMethodType.name}:${viewKey}`,\n Edit: `${moduleKey}:${entitiesKey.contactMethodType.name}:${updateKey}`,\n Delete: `${moduleKey}:${entitiesKey.contactMethodType.name}:${deleteKey}`,\n Create: `${moduleKey}:${entitiesKey.contactMethodType.name}:${createKey}`,\n },\n EmergencyContacts: {\n Management: `${moduleKey}:${entitiesKey.emergencyContact.name}:${manageKey}`,\n View: `${moduleKey}:${entitiesKey.emergencyContact.name}:${viewKey}`,\n Edit: `${moduleKey}:${entitiesKey.emergencyContact.name}:${updateKey}`,\n Delete: `${moduleKey}:${entitiesKey.emergencyContact.name}:${deleteKey}`,\n Create: `${moduleKey}:${entitiesKey.emergencyContact.name}:${createKey}`,\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24ua2V5cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0FBQ3pDLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7QUFDeEMsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0FBQzdDLE1BQU0sT0FBTyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQztBQUN6QyxNQUFNLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7QUFDN0MsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0FBQzdDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQztBQUc3QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUM5QixpQkFBaUIsRUFBRTtRQUNmLFVBQVUsRUFBRSxHQUFHLFNBQVMsSUFBSSxTQUFTLEVBQUU7UUFFdkMsa0JBQWtCLEVBQUU7WUFDaEIsVUFBVSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQzdFLElBQUksRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLE9BQU8sRUFBRTtZQUNyRSxJQUFJLEVBQUUsR0FBRyxTQUFTLElBQUksV0FBVyxDQUFDLGlCQUFpQixDQUFDLElBQUksSUFBSSxTQUFTLEVBQUU7WUFDdkUsTUFBTSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQ3pFLE1BQU0sRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLFNBQVMsRUFBRTtTQUM1RTtRQUVELGlCQUFpQixFQUFFO1lBQ2YsVUFBVSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQzVFLElBQUksRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLE9BQU8sRUFBRTtZQUNwRSxJQUFJLEVBQUUsR0FBRyxTQUFTLElBQUksV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksSUFBSSxTQUFTLEVBQUU7WUFDdEUsTUFBTSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQ3hFLE1BQU0sRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLFNBQVMsRUFBRTtTQUMzRTtLQUVKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFN5c3RlbUFjdGlvblR5cGUgfSBmcm9tIFwiQGFjb3JleC9wbGF0Zm9ybS9jb3JlXCI7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSBcIi4vY29uc3RcIjtcblxuY29uc3QgbW9kdWxlS2V5ID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbmNvbnN0IGVudGl0aWVzS2V5ID0gUm9vdENvbmZpZy5lbnRpdGllcztcbmNvbnN0IG1hbmFnZUtleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuTWFuYWdlO1xuY29uc3Qgdmlld0tleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuVmlldztcbmNvbnN0IHVwZGF0ZUtleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuVXBkYXRlO1xuY29uc3QgZGVsZXRlS2V5ID0gQVhQU3lzdGVtQWN0aW9uVHlwZS5EZWxldGU7XG5jb25zdCBjcmVhdGVLZXkgPSBBWFBTeXN0ZW1BY3Rpb25UeXBlLkNyZWF0ZTtcblxuXG5leHBvcnQgY29uc3QgQVhNUGVybWlzc2lvbnNLZXlzID0ge1xuICAgIENvbnRhY3RNYW5hZ2VtZW50OiB7XG4gICAgICAgIE1hbmFnZW1lbnQ6IGAke21vZHVsZUtleX06JHttYW5hZ2VLZXl9YCxcblxuICAgICAgICBDb250YWN0TWV0aG9kVHlwZXM6IHtcbiAgICAgICAgICAgIE1hbmFnZW1lbnQ6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5jb250YWN0TWV0aG9kVHlwZS5uYW1lfToke21hbmFnZUtleX1gLFxuICAgICAgICAgICAgVmlldzogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmNvbnRhY3RNZXRob2RUeXBlLm5hbWV9OiR7dmlld0tleX1gLFxuICAgICAgICAgICAgRWRpdDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmNvbnRhY3RNZXRob2RUeXBlLm5hbWV9OiR7dXBkYXRlS2V5fWAsXG4gICAgICAgICAgICBEZWxldGU6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5jb250YWN0TWV0aG9kVHlwZS5uYW1lfToke2RlbGV0ZUtleX1gLFxuICAgICAgICAgICAgQ3JlYXRlOiBgJHttb2R1bGVLZXl9OiR7ZW50aXRpZXNLZXkuY29udGFjdE1ldGhvZFR5cGUubmFtZX06JHtjcmVhdGVLZXl9YCxcbiAgICAgICAgfSxcblxuICAgICAgICBFbWVyZ2VuY3lDb250YWN0czoge1xuICAgICAgICAgICAgTWFuYWdlbWVudDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHttYW5hZ2VLZXl9YCxcbiAgICAgICAgICAgIFZpZXc6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5lbWVyZ2VuY3lDb250YWN0Lm5hbWV9OiR7dmlld0tleX1gLFxuICAgICAgICAgICAgRWRpdDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHt1cGRhdGVLZXl9YCxcbiAgICAgICAgICAgIERlbGV0ZTogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHtkZWxldGVLZXl9YCxcbiAgICAgICAgICAgIENyZWF0ZTogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHtjcmVhdGVLZXl9YCxcbiAgICAgICAgfSxcblxuICAgIH0sXG59OyAiXX0=","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXMPermissionsKeys } from './permission.keys';\nimport { RootConfig } from './const';\nexport class AXMPermissionDefinitionProvider {\n constructor(injector) {\n this.injector = injector;\n this.translateService = this.injector.get(AXTranslationService);\n }\n async define(context) {\n const trans = async (key) => await this.translateService.translateAsync(key);\n const keys = AXMPermissionsKeys.ContactManagement;\n context.addGroup(keys.Management, await trans(RootConfig.module.title))\n // Contact Method Types Management\n .addPermission(keys.ContactMethodTypes.Management, await trans(RootConfig.entities.contactMethodType.title))\n .addChild(keys.ContactMethodTypes.View, await trans('@general:actions.view.permission'))\n .addChild(keys.ContactMethodTypes.Edit, await trans('@general:actions.edit.permission'))\n .addChild(keys.ContactMethodTypes.Delete, await trans('@general:actions.delete.permission'))\n .addChild(keys.ContactMethodTypes.Create, await trans('@general:actions.create.permission'))\n .endPermission()\n // Emergency Contacts Management\n .addPermission(keys.EmergencyContacts.Management, await trans(RootConfig.entities.emergencyContact.title))\n .addChild(keys.EmergencyContacts.View, await trans('@general:actions.view.permission'))\n .addChild(keys.EmergencyContacts.Edit, await trans('@general:actions.edit.permission'))\n .addChild(keys.EmergencyContacts.Delete, await trans('@general:actions.delete.permission'))\n .addChild(keys.EmergencyContacts.Create, await trans('@general:actions.create.permission'))\n .endPermission()\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sT0FBTywrQkFBK0I7SUFHeEMsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUZyQixxQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRzVFLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQStDO1FBQ3hELE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVyRixNQUFNLElBQUksR0FBRyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQztRQUVsRCxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRSxrQ0FBa0M7YUFDakMsYUFBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMzRyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO2FBQ3ZGLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLE1BQU0sS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7YUFDdkYsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQzthQUMzRixRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2FBQzNGLGFBQWEsRUFBRTtZQUNoQixnQ0FBZ0M7YUFDL0IsYUFBYSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN6RyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO2FBQ3RGLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE1BQU0sS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7YUFDdEYsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQzthQUMxRixRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2FBQzFGLGFBQWEsRUFBRTthQUNmLFFBQVEsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIsIEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1QZXJtaXNzaW9uc0tleXMgfSBmcm9tICcuL3Blcm1pc3Npb24ua2V5cyc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIGltcGxlbWVudHMgQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB9XG5cbiAgICBhc3luYyBkZWZpbmUoY29udGV4dDogQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgdHJhbnMgPSBhc3luYyAoa2V5OiBzdHJpbmcpID0+IGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhrZXkpO1xuXG4gICAgICAgIGNvbnN0IGtleXMgPSBBWE1QZXJtaXNzaW9uc0tleXMuQ29udGFjdE1hbmFnZW1lbnQ7XG5cbiAgICAgICAgY29udGV4dC5hZGRHcm91cChrZXlzLk1hbmFnZW1lbnQsIGF3YWl0IHRyYW5zKFJvb3RDb25maWcubW9kdWxlLnRpdGxlKSlcbiAgICAgICAgICAgIC8vIENvbnRhY3QgTWV0aG9kIFR5cGVzIE1hbmFnZW1lbnRcbiAgICAgICAgICAgIC5hZGRQZXJtaXNzaW9uKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLk1hbmFnZW1lbnQsIGF3YWl0IHRyYW5zKFJvb3RDb25maWcuZW50aXRpZXMuY29udGFjdE1ldGhvZFR5cGUudGl0bGUpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLlZpZXcsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLnZpZXcucGVybWlzc2lvbicpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLkVkaXQsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLmVkaXQucGVybWlzc2lvbicpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLkRlbGV0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuZGVsZXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkNvbnRhY3RNZXRob2RUeXBlcy5DcmVhdGUsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLmNyZWF0ZS5wZXJtaXNzaW9uJykpXG4gICAgICAgICAgICAuZW5kUGVybWlzc2lvbigpXG4gICAgICAgICAgICAvLyBFbWVyZ2VuY3kgQ29udGFjdHMgTWFuYWdlbWVudFxuICAgICAgICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5FbWVyZ2VuY3lDb250YWN0cy5NYW5hZ2VtZW50LCBhd2FpdCB0cmFucyhSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QudGl0bGUpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuRW1lcmdlbmN5Q29udGFjdHMuVmlldywgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMudmlldy5wZXJtaXNzaW9uJykpXG4gICAgICAgICAgICAuYWRkQ2hpbGQoa2V5cy5FbWVyZ2VuY3lDb250YWN0cy5FZGl0LCBhd2FpdCB0cmFucygnQGdlbmVyYWw6YWN0aW9ucy5lZGl0LnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkVtZXJnZW5jeUNvbnRhY3RzLkRlbGV0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuZGVsZXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkVtZXJnZW5jeUNvbnRhY3RzLkNyZWF0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuY3JlYXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5lbmRQZXJtaXNzaW9uKClcbiAgICAgICAgICAgIC5lbmRHcm91cCgpO1xuICAgIH1cbn0gIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPPageLayoutBase, AXPPageLayoutBaseComponent, AXPPageLayoutComponent } from '@acorex/platform/layout/views';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\nimport { AXPThemeLayoutBlockComponent } from '@acorex/platform/layout/components';\nimport { AXMEmergencyContactService } from '../../entities/emergency-contact/emergency-contact.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/components/loading\";\nimport * as i4 from \"@acorex/core/translation\";\nimport * as i5 from \"@angular/common\";\nexport class AXMEmergencyContactsPageComponent extends AXPPageLayoutBaseComponent {\n constructor() {\n super(...arguments);\n //#region ---- Services & Dependencies ----\n this.emergencyContactService = inject(AXMEmergencyContactService);\n //#endregion\n //#region ---- Class Properties ----\n this.allContacts = signal([], ...(ngDevMode ? [{ debugName: \"allContacts\" }] : []));\n this.loading = signal(false, ...(ngDevMode ? [{ debugName: \"loading\" }] : []));\n this.isLargeScreen = signal(true, ...(ngDevMode ? [{ debugName: \"isLargeScreen\" }] : []));\n this.expandedContactIds = signal(new Set(), ...(ngDevMode ? [{ debugName: \"expandedContactIds\" }] : []));\n //#endregion\n //#region ---- Computed Properties ----\n this.quickDialContacts = computed(() => this.allContacts()\n .filter((contact) => contact.isQuickDial && contact.isActive)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"quickDialContacts\" }] : []));\n this.dashboardContacts = computed(() => this.allContacts()\n .filter((contact) => contact.showOnDashboard && contact.isActive && !contact.isQuickDial)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"dashboardContacts\" }] : []));\n this.allActiveContacts = computed(() => this.allContacts()\n .filter((contact) => contact.isActive)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"allActiveContacts\" }] : []));\n // Fallback: show all contacts if filtered lists are empty\n this.displayContacts = computed(() => {\n const allContacts = this.allContacts();\n // If we have contacts but none are marked as active, show all\n if (allContacts.length > 0 && this.allActiveContacts().length === 0) {\n return allContacts.sort((a, b) => (a.priority || 0) - (b.priority || 0));\n }\n return this.allActiveContacts();\n }, ...(ngDevMode ? [{ debugName: \"displayContacts\" }] : []));\n }\n //#endregion\n onResize() {\n this.checkScreenSize();\n }\n checkScreenSize() {\n this.isLargeScreen.set(window.innerWidth >= 768);\n }\n //#region ---- Lifecycle Methods ----\n async ngOnInit() {\n super.ngOnInit();\n this.checkScreenSize();\n await this.loadEmergencyContacts();\n }\n //#endregion\n //#region ---- Data Loading ----\n async loadEmergencyContacts() {\n this.loading.set(true);\n try {\n const result = await this.emergencyContactService.query({\n skip: 0,\n take: 1000,\n sort: [{ field: 'priority', dir: 'asc' }],\n });\n this.allContacts.set(result.items);\n }\n catch (error) {\n console.error('Failed to load emergency contacts:', error);\n }\n finally {\n this.loading.set(false);\n }\n }\n //#endregion\n //#region ---- UI Handlers ----\n toggleExpanded(contactId) {\n this.expandedContactIds.update((current) => {\n const next = new Set(current);\n if (next.has(contactId)) {\n next.delete(contactId);\n }\n else {\n next.add(contactId);\n }\n return next;\n });\n }\n isExpanded(contactId) {\n return this.expandedContactIds().has(contactId);\n }\n handleCallContact(contact) {\n if (contact.phoneNumber) {\n window.open(`tel:${contact.phoneNumber}`, '_self');\n }\n }\n handleTextContact(contact) {\n const textNumber = contact.textNumber || contact.phoneNumber;\n if (textNumber) {\n window.open(`sms:${textNumber}`, '_self');\n }\n }\n handleVisitWebsite(contact) {\n if (contact.website) {\n window.open(contact.website, '_blank');\n }\n }\n async handleCopyNumber(contact) {\n if (contact.phoneNumber && navigator.clipboard) {\n try {\n await navigator.clipboard.writeText(contact.phoneNumber);\n // You could add a toast notification here\n }\n catch (error) {\n console.error('Failed to copy number:', error);\n }\n }\n }\n handleRefresh() {\n this.loadEmergencyContacts();\n }\n getPrimaryAction(contact) {\n if (contact.isTextCapable && !!contact.textNumber && !contact.requiresConfirmation) {\n return 'text';\n }\n return 'call';\n }\n performPrimaryAction(contact) {\n const action = this.getPrimaryAction(contact);\n if (action === 'text') {\n this.handleTextContact(contact);\n }\n else {\n this.handleCallContact(contact);\n }\n }\n getPrimaryActionLabel(contact) {\n return this.getPrimaryAction(contact) === 'text' ? 'Text Now' : 'Call Now';\n }\n getPrimaryActionColor(contact) {\n return this.getPrimaryAction(contact) === 'text' ? 'primary' : 'danger';\n }\n //#endregion\n //#region ---- Utility Methods ----\n getCoverageText(contact) {\n const coverage = [];\n if (contact.isNational)\n coverage.push('National');\n if (contact.isRegional)\n coverage.push('Regional');\n if (contact.isLocal)\n coverage.push('Local');\n return coverage.join(', ') || 'Unknown';\n }\n getCapabilitiesText(contact) {\n const capabilities = [];\n if (contact.isTextCapable)\n capabilities.push('Text');\n if (contact.isVideoCallCapable)\n capabilities.push('Video');\n return capabilities.join(', ') || 'Voice Only';\n }\n getPriorityColor(priority) {\n if (priority <= 1)\n return 'danger';\n if (priority <= 3)\n return 'warning';\n if (priority <= 5)\n return 'primary';\n return 'secondary';\n }\n //#endregion\n //#region ---- Page Metadata Overrides ----\n async getPageTitle() {\n return 'Emergency Contacts & Quick Dial';\n }\n async getPageDescription() {\n return 'Access emergency contacts and important numbers quickly';\n }\n async getPageBreadcrumbs() {\n return [\n {\n title: 'Contact Management',\n },\n ];\n }\n async getSecondaryMenuItems() {\n return [\n {\n title: 'Refresh',\n icon: 'fa-light fa-refresh',\n color: 'secondary',\n command: {\n name: 'refresh',\n },\n },\n ];\n }\n async execute(command) {\n if (command.name === 'refresh') {\n this.handleRefresh();\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.6\", type: AXMEmergencyContactsPageComponent, isStandalone: true, selector: \"axm-emergency-contacts-page\", host: { listeners: { \"window:resize\": \"onResize()\" } }, providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEmergencyContactsPageComponent,\n },\n ], 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 [style.--priority-color]=\\\"'var(--ax-sys-color-' + getPriorityColor(contact.priority) + ')' + ''\\\"\\n >\\n <!-- Compact Header with Primary Action -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-gap-3\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [size]=\\\"'small'\\\"\\n [look]=\\\"'filled'\\\"\\n [text]=\\\"getPrimaryActionLabel(contact)\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible Details -->\\n @if (isExpanded(contact.id)) {\\n <div class=\\\"ax-pt-3 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 <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 <!-- 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\\n @if (contact.requiresConfirmation) {\\n <div class=\\\"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 }\\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 <!-- Compact header -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-mb-3 ax-gap-3\\\">\\n <div class=\\\"ax-flex-1 ax-min-w-0\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [look]=\\\"'filled'\\\"\\n [size]=\\\"'small'\\\"\\n [text]=\\\"getPrimaryActionLabel(contact)\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible Details -->\\n @if (isExpanded(contact.id)) {\\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 @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 <!-- Secondary actions and meta -->\\n <div class=\\\"ax-flex ax-flex-col ax-gap-3\\\">\\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 }\\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 <!-- Compact header -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-mb-3 ax-gap-3\\\">\\n <div class=\\\"ax-flex-1 ax-min-w-0\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [look]=\\\"'filled'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n {{ getPrimaryActionLabel(contact) }}\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible details -->\\n @if (isExpanded(contact.id)) {\\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 @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 <!-- 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 }\\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:1200px;margin:0 auto;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){axm-emergency-contacts-page .ax-space-y-6.ax-p-4{padding-left:1.5rem;padding-right:1.5rem}}axm-emergency-contacts-page h2{margin-bottom:1.25rem;color:var(--ax-sys-color-primary);border-bottom:1px solid var(--ax-sys-color-border);padding-bottom:.5rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.5rem}@media (min-width: 768px){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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant);min-height:140px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(--priority-color, var(--ax-sys-color-primary))}axm-emergency-contacts-page .emergency-contact-quick-dial h3{color:var(--ax-sys-color-on-surface);margin-bottom:.125rem;font-size:1rem;line-height:1.5rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial h3{font-size:1.125rem;line-height:1.75rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{min-height:30px}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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(-1px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{color:var(--ax-sys-color-on-surface);font-size:1.125rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem}}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: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"ngmodule\", type: AXLoadingModule }, { kind: \"component\", type: i3.AXLoadingComponent, selector: \"ax-loading\", inputs: [\"visible\", \"type\", \"context\"], outputs: [\"visibleChange\"] }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i4.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: i5.DatePipe, name: \"date\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactsPageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-emergency-contacts-page', imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBadgeModule,\n AXTranslationModule,\n AXFormatModule,\n AXPPageLayoutComponent,\n AXPThemeLayoutBlockComponent,\n ], host: {\n '(window:resize)': 'onResize()'\n }, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEmergencyContactsPageComponent,\n },\n ], 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 [style.--priority-color]=\\\"'var(--ax-sys-color-' + getPriorityColor(contact.priority) + ')' + ''\\\"\\n >\\n <!-- Compact Header with Primary Action -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-gap-3\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [size]=\\\"'small'\\\"\\n [look]=\\\"'filled'\\\"\\n [text]=\\\"getPrimaryActionLabel(contact)\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible Details -->\\n @if (isExpanded(contact.id)) {\\n <div class=\\\"ax-pt-3 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 <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 <!-- 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\\n @if (contact.requiresConfirmation) {\\n <div class=\\\"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 }\\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 <!-- Compact header -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-mb-3 ax-gap-3\\\">\\n <div class=\\\"ax-flex-1 ax-min-w-0\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [look]=\\\"'filled'\\\"\\n [size]=\\\"'small'\\\"\\n [text]=\\\"getPrimaryActionLabel(contact)\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible Details -->\\n @if (isExpanded(contact.id)) {\\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 @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 <!-- Secondary actions and meta -->\\n <div class=\\\"ax-flex ax-flex-col ax-gap-3\\\">\\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 }\\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 <!-- Compact header -->\\n <div class=\\\"ax-flex ax-items-start ax-justify-between ax-mb-3 ax-gap-3\\\">\\n <div class=\\\"ax-flex-1 ax-min-w-0\\\">\\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 <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button\\n [color]=\\\"getPrimaryActionColor(contact)\\\"\\n [look]=\\\"'filled'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"performPrimaryAction(contact)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"getPrimaryAction(contact) === 'text' ? 'fa-light fa-message' : 'fa-light fa-phone'\\\"\\n ></ax-icon>\\n {{ getPrimaryActionLabel(contact) }}\\n </ax-button>\\n <ax-button\\n [color]=\\\"'secondary'\\\"\\n [look]=\\\"'ghost'\\\"\\n [size]=\\\"'small'\\\"\\n (onClick)=\\\"toggleExpanded(contact.id)\\\"\\n >\\n <ax-icon\\n [icon]=\\\"isExpanded(contact.id) ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"\\n ></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Collapsible details -->\\n @if (isExpanded(contact.id)) {\\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 @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 <!-- 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 }\\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:1200px;margin:0 auto;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){axm-emergency-contacts-page .ax-space-y-6.ax-p-4{padding-left:1.5rem;padding-right:1.5rem}}axm-emergency-contacts-page h2{margin-bottom:1.25rem;color:var(--ax-sys-color-primary);border-bottom:1px solid var(--ax-sys-color-border);padding-bottom:.5rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.5rem}@media (min-width: 768px){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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant);min-height:140px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(--priority-color, var(--ax-sys-color-primary))}axm-emergency-contacts-page .emergency-contact-quick-dial h3{color:var(--ax-sys-color-on-surface);margin-bottom:.125rem;font-size:1rem;line-height:1.5rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial h3{font-size:1.125rem;line-height:1.75rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{min-height:30px}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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(-1px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{color:var(--ax-sys-color-on-surface);font-size:1.125rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem}}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\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3RzLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2VtZXJnZW5jeS1jb250YWN0cy9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZW1lcmdlbmN5LWNvbnRhY3RzL2VtZXJnZW5jeS1jb250YWN0cy1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsMEJBQTBCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc3RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsMEJBQTBCLEVB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Qy9DO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBQYWdlTGF5b3V0QmFzZSwgQVhQUGFnZUxheW91dEJhc2VDb21wb25lbnQsIEFYUFBhZ2VMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC92aWV3cyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFYUEFjdGlvbk1lbnVJdGVtLCBBWFBCcmVhZGNydW1iSXRlbSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBUaGVtZUxheW91dEJsb2NrQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWE1FbWVyZ2VuY3lDb250YWN0U2VydmljZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzL2VtZXJnZW5jeS1jb250YWN0L2VtZXJnZW5jeS1jb250YWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwgfSBmcm9tICcuLi8uLi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4bS1lbWVyZ2VuY3ktY29udGFjdHMtcGFnZScsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYQmFkZ2VNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgICBBWFBQYWdlTGF5b3V0Q29tcG9uZW50LFxuICAgIEFYUFRoZW1lTGF5b3V0QmxvY2tDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQuc2NzcycsXG4gIGhvc3Q6IHtcbiAgICAnKHdpbmRvdzpyZXNpemUpJzogJ29uUmVzaXplKCknXG4gIH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBQYWdlTGF5b3V0QmFzZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBBWE1FbWVyZ2VuY3lDb250YWN0c1BhZ2VDb21wb25lbnQsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRW1lcmdlbmN5Q29udGFjdHNQYWdlQ29tcG9uZW50IGV4dGVuZHMgQVhQUGFnZUxheW91dEJhc2VDb21wb25lbnQge1xuICAvLyNyZWdpb24gLS0tLSAgIFNlcnZpY2VzICYgRGVwZW5kZW5jaWVzICAgLS0tLVxuXG4gIHByaXZhdGUgZW1lcmdlbmN5Q29udGFjdFNlcnZpY2UgPSBpbmplY3QoQVhNRW1lcmdlbmN5Q29udGFjdFNlcnZpY2UpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgQ2xhc3MgUHJvcGVydGllcyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgYWxsQ29udGFjdHMgPSBzaWduYWw8QVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWxbXT4oW10pO1xuICBwcm90ZWN0ZWQgbG9hZGluZyA9IHNpZ25hbChmYWxzZSk7XG4gIHByb3RlY3RlZCBpc0xhcmdlU2NyZWVuID0gc2lnbmFsKHRydWUpO1xuICBwcm90ZWN0ZWQgZXhwYW5kZWRDb250YWN0SWRzID0gc2lnbmFsPFNldDxzdHJpbmc+PihuZXcgU2V0KCkpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgQ29tcHV0ZWQgUHJvcGVydGllcyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgcXVpY2tEaWFsQ29udGFjdHMgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuYWxsQ29udGFjdHMoKVxuICAgICAgLmZpbHRlcigoY29udGFjdCkgPT4gY29udGFjdC5pc1F1aWNrRGlhbCAmJiBjb250YWN0LmlzQWN0aXZlKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5IHx8IDApIC0gKGIucHJpb3JpdHkgfHwgMCkpLFxuICApO1xuXG4gIHByb3RlY3RlZCBkYXNoYm9hcmRDb250YWN0cyA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5hbGxDb250YWN0cygpXG4gICAgICAuZmlsdGVyKChjb250YWN0KSA9PiBjb250YWN0LnNob3dPbkRhc2hib2FyZCAmJiBjb250YWN0LmlzQWN0aXZlICYmICFjb250YWN0LmlzUXVpY2tEaWFsKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5IHx8IDApIC0gKGIucHJpb3JpdHkgfHwgMCkpLFxuICApO1xuXG4gIHByb3RlY3RlZCBhbGxBY3RpdmVDb250YWN0cyA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5hbGxDb250YWN0cygpXG4gICAgICAuZmlsdGVyKChjb250YWN0KSA9PiBjb250YWN0LmlzQWN0aXZlKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5IHx8IDApIC0gKGIucHJpb3JpdHkgfHwgMCkpLFxuICApO1xuXG4gIC8vIEZhbGxiYWNrOiBzaG93IGFsbCBjb250YWN0cyBpZiBmaWx0ZXJlZCBsaXN0cyBhcmUgZW1wdHlcbiAgcHJvdGVjdGVkIGRpc3BsYXlDb250YWN0cyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBhbGxDb250YWN0cyA9IHRoaXMuYWxsQ29udGFjdHMoKTtcblxuICAgIC8vIElmIHdlIGhhdmUgY29udGFjdHMgYnV0IG5vbmUgYXJlIG1hcmtlZCBhcyBhY3RpdmUsIHNob3cgYWxsXG4gICAgaWYgKGFsbENvbnRhY3RzLmxlbmd0aCA+IDAgJiYgdGhpcy5hbGxBY3RpdmVDb250YWN0cygpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGFsbENvbnRhY3RzLnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5IHx8IDApIC0gKGIucHJpb3JpdHkgfHwgMCkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFsbEFjdGl2ZUNvbnRhY3RzKCk7XG4gIH0pO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIG9uUmVzaXplKCkge1xuICAgIHRoaXMuY2hlY2tTY3JlZW5TaXplKCk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrU2NyZWVuU2l6ZSgpIHtcbiAgICB0aGlzLmlzTGFyZ2VTY3JlZW4uc2V0KHdpbmRvdy5pbm5lcldpZHRoID49IDc2OCk7XG4gIH1cblxuICAvLyNyZWdpb24gLS0tLSAgIExpZmVjeWNsZSBNZXRob2RzICAgLS0tLVxuXG4gIG92ZXJyaWRlIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5jaGVja1NjcmVlblNpemUoKTtcbiAgICBhd2FpdCB0aGlzLmxvYWRFbWVyZ2VuY3lDb250YWN0cygpO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBEYXRhIExvYWRpbmcgICAtLS0tXG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkRW1lcmdlbmN5Q29udGFjdHMoKSB7XG4gICAgdGhpcy5sb2FkaW5nLnNldCh0cnVlKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5lbWVyZ2VuY3lDb250YWN0U2VydmljZS5xdWVyeSh7XG4gICAgICAgIHNraXA6IDAsXG4gICAgICAgIHRha2U6IDEwMDAsXG4gICAgICAgIHNvcnQ6IFt7IGZpZWxkOiAncHJpb3JpdHknLCBkaXI6ICdhc2MnIH1dLFxuICAgICAgfSk7XG4gICAgICB0aGlzLmFsbENvbnRhY3RzLnNldChyZXN1bHQuaXRlbXMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBlbWVyZ2VuY3kgY29udGFjdHM6JywgZXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmcuc2V0KGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFVJIEhhbmRsZXJzICAgLS0tLVxuXG4gIHByb3RlY3RlZCB0b2dnbGVFeHBhbmRlZChjb250YWN0SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWRDb250YWN0SWRzLnVwZGF0ZSgoY3VycmVudCkgPT4ge1xuICAgICAgY29uc3QgbmV4dCA9IG5ldyBTZXQoY3VycmVudCk7XG4gICAgICBpZiAobmV4dC5oYXMoY29udGFjdElkKSkge1xuICAgICAgICBuZXh0LmRlbGV0ZShjb250YWN0SWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV4dC5hZGQoY29udGFjdElkKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzRXhwYW5kZWQoY29udGFjdElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRlZENvbnRhY3RJZHMoKS5oYXMoY29udGFjdElkKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVDYWxsQ29udGFjdChjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCkge1xuICAgIGlmIChjb250YWN0LnBob25lTnVtYmVyKSB7XG4gICAgICB3aW5kb3cub3BlbihgdGVsOiR7Y29udGFjdC5waG9uZU51bWJlcn1gLCAnX3NlbGYnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlVGV4dENvbnRhY3QoY29udGFjdDogQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwpIHtcbiAgICBjb25zdCB0ZXh0TnVtYmVyID0gY29udGFjdC50ZXh0TnVtYmVyIHx8IGNvbnRhY3QucGhvbmVOdW1iZXI7XG4gICAgaWYgKHRleHROdW1iZXIpIHtcbiAgICAgIHdpbmRvdy5vcGVuKGBzbXM6JHt0ZXh0TnVtYmVyfWAsICdfc2VsZicpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVWaXNpdFdlYnNpdGUoY29udGFjdDogQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwpIHtcbiAgICBpZiAoY29udGFjdC53ZWJzaXRlKSB7XG4gICAgICB3aW5kb3cub3Blbihjb250YWN0LndlYnNpdGUsICdfYmxhbmsnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlQ29weU51bWJlcihjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCkge1xuICAgIGlmIChjb250YWN0LnBob25lTnVtYmVyICYmIG5hdmlnYXRvci5jbGlwYm9hcmQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGNvbnRhY3QucGhvbmVOdW1iZXIpO1xuICAgICAgICAvLyBZb3UgY291bGQgYWRkIGEgdG9hc3Qgbm90aWZpY2F0aW9uIGhlcmVcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5IG51bWJlcjonLCBlcnJvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVJlZnJlc2goKSB7XG4gICAgdGhpcy5sb2FkRW1lcmdlbmN5Q29udGFjdHMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQcmltYXJ5QWN0aW9uKGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogJ2NhbGwnIHwgJ3RleHQnIHtcbiAgICBpZiAoY29udGFjdC5pc1RleHRDYXBhYmxlICYmICEhY29udGFjdC50ZXh0TnVtYmVyICYmICFjb250YWN0LnJlcXVpcmVzQ29uZmlybWF0aW9uKSB7XG4gICAgICByZXR1cm4gJ3RleHQnO1xuICAgIH1cbiAgICByZXR1cm4gJ2NhbGwnO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBlcmZvcm1QcmltYXJ5QWN0aW9uKGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aW9uID0gdGhpcy5nZXRQcmltYXJ5QWN0aW9uKGNvbnRhY3QpO1xuICAgIGlmIChhY3Rpb24gPT09ICd0ZXh0Jykge1xuICAgICAgdGhpcy5oYW5kbGVUZXh0Q29udGFjdChjb250YWN0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oYW5kbGVDYWxsQ29udGFjdChjb250YWN0KTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UHJpbWFyeUFjdGlvbkxhYmVsKGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5nZXRQcmltYXJ5QWN0aW9uKGNvbnRhY3QpID09PSAndGV4dCcgPyAnVGV4dCBOb3cnIDogJ0NhbGwgTm93JztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQcmltYXJ5QWN0aW9uQ29sb3IoY29udGFjdDogQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwpOiAncHJpbWFyeScgfCAnZGFuZ2VyJyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJpbWFyeUFjdGlvbihjb250YWN0KSA9PT0gJ3RleHQnID8gJ3ByaW1hcnknIDogJ2Rhbmdlcic7XG4gIH1cblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFV0aWxpdHkgTWV0aG9kcyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgZ2V0Q292ZXJhZ2VUZXh0KGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb3ZlcmFnZSA9IFtdO1xuICAgIGlmIChjb250YWN0LmlzTmF0aW9uYWwpIGNvdmVyYWdlLnB1c2goJ05hdGlvbmFsJyk7XG4gICAgaWYgKGNvbnRhY3QuaXNSZWdpb25hbCkgY292ZXJhZ2UucHVzaCgnUmVnaW9uYWwnKTtcbiAgICBpZiAoY29udGFjdC5pc0xvY2FsKSBjb3ZlcmFnZS5wdXNoKCdMb2NhbCcpO1xuICAgIHJldHVybiBjb3ZlcmFnZS5qb2luKCcsICcpIHx8ICdVbmtub3duJztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDYXBhYmlsaXRpZXNUZXh0KGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogc3RyaW5nIHtcbiAgICBjb25zdCBjYXBhYmlsaXRpZXMgPSBbXTtcbiAgICBpZiAoY29udGFjdC5pc1RleHRDYXBhYmxlKSBjYXBhYmlsaXRpZXMucHVzaCgnVGV4dCcpO1xuICAgIGlmIChjb250YWN0LmlzVmlkZW9DYWxsQ2FwYWJsZSkgY2FwYWJpbGl0aWVzLnB1c2goJ1ZpZGVvJyk7XG4gICAgcmV0dXJuIGNhcGFiaWxpdGllcy5qb2luKCcsICcpIHx8ICdWb2ljZSBPbmx5JztcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQcmlvcml0eUNvbG9yKHByaW9yaXR5OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmIChwcmlvcml0eSA8PSAxKSByZXR1cm4gJ2Rhbmdlcic7XG4gICAgaWYgKHByaW9yaXR5IDw9IDMpIHJldHVybiAnd2FybmluZyc7XG4gICAgaWYgKHByaW9yaXR5IDw9IDUpIHJldHVybiAncHJpbWFyeSc7XG4gICAgcmV0dXJuICdzZWNvbmRhcnknO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBQYWdlIE1ldGFkYXRhIE92ZXJyaWRlcyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgZ2V0UGFnZVRpdGxlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuICdFbWVyZ2VuY3kgQ29udGFjdHMgJiBRdWljayBEaWFsJztcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBnZXRQYWdlRGVzY3JpcHRpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gJ0FjY2VzcyBlbWVyZ2VuY3kgY29udGFjdHMgYW5kIGltcG9ydGFudCBudW1iZXJzIHF1aWNrbHknO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZ2V0UGFnZUJyZWFkY3J1bWJzKCk6IFByb21pc2U8QVhQQnJlYWRjcnVtYkl0ZW1bXT4ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRpdGxlOiAnQ29udGFjdCBNYW5hZ2VtZW50JyxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGdldFNlY29uZGFyeU1lbnVJdGVtcygpOiBQcm9taXNlPEFYUEFjdGlvbk1lbnVJdGVtW10+IHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICB0aXRsZTogJ1JlZnJlc2gnLFxuICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtcmVmcmVzaCcsXG4gICAgICAgIGNvbG9yOiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgIG5hbWU6ICdyZWZyZXNoJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGV4ZWN1dGUoY29tbWFuZDogYW55KSB7XG4gICAgaWYgKGNvbW1hbmQubmFtZSA9PT0gJ3JlZnJlc2gnKSB7XG4gICAgICB0aGlzLmhhbmRsZVJlZnJlc2goKTtcbiAgICB9XG4gIH1cblxuICAvLyNlbmRyZWdpb25cbn1cbiIsIjxheHAtcGFnZS1sYXlvdXQgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gIDxheHAtcGFnZS1jb250ZW50PlxuICAgIDwhLS0gTG9hZGluZyBTdGF0ZSAtLT5cbiAgICBAaWYgKGxvYWRpbmcoKSkge1xuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LXB5LThcIj5cbiAgICAgICAgPGF4LWxvYWRpbmc+TG9hZGluZyBlbWVyZ2VuY3kgY29udGFjdHMuLi48L2F4LWxvYWRpbmc+XG4gICAgICA8L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1zcGFjZS15LTYgYXgtcC00XCI+XG4gICAgICAgIDwhLS0gUXVpY2sgRGlhbCBTZWN0aW9uIC0tPlxuICAgICAgICBAaWYgKHF1aWNrRGlhbENvbnRhY3RzKCkubGVuZ3RoID4gMCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1tYi04XCI+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJheC10ZXh0LTJ4bCBheC1mb250LXNlbWlib2xkIGF4LW1iLTQgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXBob25lLXJvdGFyeVwiIGNsYXNzPVwiYXgtdGV4dC1kYW5nZXJcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgIFF1aWNrIERpYWxcbiAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZ3JpZCBheC1ncmlkLWNvbHMtMSBzbTpheC1ncmlkLWNvbHMtMiBsZzpheC1ncmlkLWNvbHMtMyB4bDpheC1ncmlkLWNvbHMtNCBheC1nYXAtNFwiPlxuICAgICAgICAgICAgICBAZm9yIChjb250YWN0IG9mIHF1aWNrRGlhbENvbnRhY3RzKCk7IHRyYWNrIGNvbnRhY3QuaWQpIHtcbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImVtZXJnZW5jeS1jb250YWN0LXF1aWNrLWRpYWwgYXgtcC00IGF4LXJvdW5kZWQtbGcgYXgtYm9yZGVyIGF4LWJnLWxpZ2h0XCJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS4tLXByaW9yaXR5LWNvbG9yXT1cIid2YXIoLS1heC1zeXMtY29sb3ItJyArIGdldFByaW9yaXR5Q29sb3IoY29udGFjdC5wcmlvcml0eSkgKyAnKScgKyAnJ1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPCEtLSBDb21wYWN0IEhlYWRlciB3aXRoIFByaW1hcnkgQWN0aW9uIC0tPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtc3RhcnQgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LWdhcC0zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtbWluLXctMFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImF4LXRleHQtbGcgYXgtZm9udC1zZW1pYm9sZCBheC10cnVuY2F0ZSBheC10ZXh0LWRlZmF1bHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbnRhY3QubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LnNob3J0TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWQgYXgtdHJ1bmNhdGVcIj57eyBjb250YWN0LnNob3J0TmFtZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZ2V0UHJpbWFyeUFjdGlvbkNvbG9yKGNvbnRhY3QpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xvb2tdPVwiJ2ZpbGxlZCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiZ2V0UHJpbWFyeUFjdGlvbkxhYmVsKGNvbnRhY3QpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cInBlcmZvcm1QcmltYXJ5QWN0aW9uKGNvbnRhY3QpXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJnZXRQcmltYXJ5QWN0aW9uKGNvbnRhY3QpID09PSAndGV4dCcgPyAnZmEtbGlnaHQgZmEtbWVzc2FnZScgOiAnZmEtbGlnaHQgZmEtcGhvbmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIidzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsb29rXT1cIidnaG9zdCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJ0b2dnbGVFeHBhbmRlZChjb250YWN0LmlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiaXNFeHBhbmRlZChjb250YWN0LmlkKSA/ICdmYS1saWdodCBmYS1jaGV2cm9uLXVwJyA6ICdmYS1saWdodCBmYS1jaGV2cm9uLWRvd24nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgIDwhLS0gQ29sbGFwc2libGUgRGV0YWlscyAtLT5cbiAgICAgICAgICAgICAgICAgIEBpZiAoaXNFeHBhbmRlZChjb250YWN0LmlkKSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcHQtMyBheC1zcGFjZS15LTNcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1hcnkgUGhvbmUgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtcGhvbmVcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeSBheC13LTRcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvbnRhY3QtaW5mby10ZXh0IGF4LXRleHQtc20gYXgtZm9udC1tb25vIGF4LWZsZXgtMVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhY3QucGhvbmVOdW1iZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiJ3NlY29uZGFyeSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvb2tdPVwiJ2dob3N0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvcHlOdW1iZXIoY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY29weVwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSBDYXBhYmlsaXRpZXMgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhY3QtaW5mby10ZXh0IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yIGF4LXRleHQteHMgYXgtdGV4dC1tdXRlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWluZm8tY2lyY2xlXCIgY2xhc3M9XCJheC13LTRcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBnZXRDYXBhYmlsaXRpZXNUZXh0KGNvbnRhY3QpIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSBBdmFpbGFiaWxpdHkgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LmF2YWlsYWJpbGl0eSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhY3QtaW5mby10ZXh0IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yIGF4LXRleHQteHMgYXgtdGV4dC1tdXRlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY2xvY2tcIiBjbGFzcz1cImF4LXctNFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC10cnVuY2F0ZVwiPnt7IGNvbnRhY3QuYXZhaWxhYmlsaXR5IH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LnJlcXVpcmVzQ29uZmlybWF0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcC0yIGF4LXJvdW5kZWQgYXgtYmctd2FybmluZy01MCBheC1ib3JkZXIgYXgtYm9yZGVyLXdhcm5pbmctMjAwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC14cyBheC10ZXh0LXdhcm5pbmctODAwIGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgY29udGFjdCByZXF1aXJlcyBjb25maXJtYXRpb24gYmVmb3JlIGNhbGxpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICA8IS0tIERhc2hib2FyZCBDb250YWN0cyBTZWN0aW9uIC0tPlxuICAgICAgICBAaWYgKGRhc2hib2FyZENvbnRhY3RzKCkubGVuZ3RoID4gMCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1tYi04XCI+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJheC10ZXh0LTJ4bCBheC1mb250LXNlbWlib2xkIGF4LW1iLTQgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXRhY2hvbWV0ZXItYWx0XCIgY2xhc3M9XCJheC10ZXh0LXByaW1hcnlcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgIEFsbCBFbWVyZ2VuY3kgQ29udGFjdHNcbiAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtc3BhY2UteS00XCI+XG4gICAgICAgICAgICAgICAgQGZvciAoY29udGFjdCBvZiBkYXNoYm9hcmRDb250YWN0cygpOyB0cmFjayBjb250YWN0LmlkKSB7XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW1lcmdlbmN5LWNvbnRhY3QtZGV0YWlsZWQgYXgtcC00IGF4LXJvdW5kZWQtbGcgYXgtYm9yZGVyIGF4LWJnLWxpZ2h0XCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcGFjdCBoZWFkZXIgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLXN0YXJ0IGF4LWp1c3RpZnktYmV0d2VlbiBheC1tYi0zIGF4LWdhcC0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXgtMSBheC1taW4tdy0wXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJheC10ZXh0LXhsIGF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1kZWZhdWx0XCI+e3sgY29udGFjdC5uYW1lIH19PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29udGFjdC5zaG9ydE5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJheC10ZXh0LW11dGVkXCI+e3sgY29udGFjdC5zaG9ydE5hbWUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJnZXRQcmltYXJ5QWN0aW9uQ29sb3IoY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9va109XCInZmlsbGVkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJnZXRQcmltYXJ5QWN0aW9uTGFiZWwoY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJwZXJmb3JtUHJpbWFyeUFjdGlvbihjb250YWN0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiZ2V0UHJpbWFyeUFjdGlvbihjb250YWN0KSA9PT0gJ3RleHQnID8gJ2ZhLWxpZ2h0IGZhLW1lc3NhZ2UnIDogJ2ZhLWxpZ2h0IGZhLXBob25lJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIidzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvb2tdPVwiJ2dob3N0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJ0b2dnbGVFeHBhbmRlZChjb250YWN0LmlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwiaXNFeHBhbmRlZChjb250YWN0LmlkKSA/ICdmYS1saWdodCBmYS1jaGV2cm9uLXVwJyA6ICdmYS1saWdodCBmYS1jaGV2cm9uLWRvd24nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIENvbGxhcHNpYmxlIERldGFpbHMgLS0+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoaXNFeHBhbmRlZChjb250YWN0LmlkKSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xIGxnOmF4LWdyaWQtY29scy0zIGF4LWdhcC00IGF4LWl0ZW1zLXN0YXJ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbnRhY3QgSW5mbyAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZzpheC1jb2wtc3Bhbi0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29udGFjdC5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1tdXRlZCBheC1tYi00XCI+e3sgY29udGFjdC5kZXNjcmlwdGlvbiB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29udGFjdCBNZXRob2RzIEdyaWQgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xIHNtOmF4LWdyaWQtY29scy0yIGF4LWdhcC0zIGF4LW1iLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFBob25lIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXBob25lXCIgY2xhc3M9XCJheC10ZXh0LXByaW1hcnlcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtbW9ub1wiPnt7IGNvbnRhY3QucGhvbmVOdW1iZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRleHQgTnVtYmVyIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29udGFjdC50ZXh0TnVtYmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLW1lc3NhZ2VcIiBjbGFzcz1cImF4LXRleHQtc2Vjb25kYXJ5XCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtbW9ub1wiPnt7IGNvbnRhY3QudGV4dE51bWJlciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRW1haWwgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LmVtYWlsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWVudmVsb3BlXCIgY2xhc3M9XCJheC10ZXh0LWluZm9cIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGNvbnRhY3QuZW1haWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFdlYnNpdGUgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LndlYnNpdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZ2xvYmVcIiBjbGFzcz1cImF4LXRleHQtYWNjZW50XCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBbaHJlZl09XCJjb250YWN0LndlYnNpdGVcIiB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cImF4LXRleHQtYWNjZW50IGF4LWhvdmVyOnVuZGVybGluZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYnNpdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvdmVyYWdlICYgQ2FwYWJpbGl0aWVzIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZ3JpZCBheC1ncmlkLWNvbHMtMSBzbTpheC1ncmlkLWNvbHMtMyBheC1nYXAtMyBheC10ZXh0LXNtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJheC10ZXh0LW11dGVkXCI+Q292ZXJhZ2U6PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyBnZXRDb3ZlcmFnZVRleHQoY29udGFjdCkgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJheC10ZXh0LW11dGVkXCI+Q2FwYWJpbGl0aWVzOjwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgZ2V0Q2FwYWJpbGl0aWVzVGV4dChjb250YWN0KSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGNvbnRhY3QuYXZhaWxhYmlsaXR5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiYXgtdGV4dC1tdXRlZFwiPkF2YWlsYWJpbGl0eTo8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgY29udGFjdC5hdmFpbGFiaWxpdHkgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gU2Vjb25kYXJ5IGFjdGlvbnMgYW5kIG1ldGEgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFNlY29uZGFyeSBBY3Rpb25zIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29udGFjdC53ZWJzaXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCInc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsb29rXT1cIidnaG9zdCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJheC1mbGV4LTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJoYW5kbGVWaXNpdFdlYnNpdGUoY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZXh0ZXJuYWwtbGlua1wiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCInc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9va109XCInZ2hvc3QnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJheC1mbGV4LTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlQ29weU51bWJlcihjb250YWN0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWNvcHlcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gV2FybmluZ3MgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29udGFjdC5yZXF1aXJlc0NvbmZpcm1hdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1wLTMgYXgtcm91bmRlZCBheC1iZy13YXJuaW5nLTUwIGF4LWJvcmRlciBheC1ib3JkZXItd2FybmluZy0yMDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC14cyBheC10ZXh0LXdhcm5pbmctODAwIGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS10cmlhbmdsZS1leGNsYW1hdGlvblwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyBjb250YWN0IHJlcXVpcmVzIGNvbmZpcm1hdGlvbiBiZWZvcmUgY2FsbGluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0Lmxhc3RWZXJpZmllZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXhzIGF4LXRleHQtbXV0ZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+TGFzdCBWZXJpZmllZDo8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7IGNvbnRhY3QubGFzdFZlcmlmaWVkIHwgZGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gRmFsbGJhY2s6IFNob3cgYWxsIGNvbnRhY3RzIGlmIG5vIGZpbHRlcmVkIGNvbnRhY3RzIGFyZSBhdmFpbGFibGUgLS0+XG4gICAgICAgIEBpZiAocXVpY2tEaWFsQ29udGFjdHMoKS5sZW5ndGggPT09IDAgJiYgZGFzaGJvYXJkQ29udGFjdHMoKS5sZW5ndGggPT09IDAgJiYgZGlzcGxheUNvbnRhY3RzKCkubGVuZ3RoID4gMCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1tYi04XCI+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJheC10ZXh0LTJ4bCBheC1mb250LXNlbWlib2xkIGF4LW1iLTQgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWxpc3RcIiBjbGFzcz1cImF4LXRleHQtaW5mb1wiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgQWxsIEVtZXJnZW5jeSBDb250YWN0c1xuICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1zcGFjZS15LTRcIj5cbiAgICAgICAgICAgICAgQGZvciAoY29udGFjdCBvZiBkaXNwbGF5Q29udGFjdHMoKTsgdHJhY2sgY29udGFjdC5pZCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbWVyZ2VuY3ktY29udGFjdC1kZXRhaWxlZCBheC1wLTQgYXgtcm91bmRlZC1sZyBheC1ib3JkZXIgYXgtYmctbGlnaHRcIj5cbiAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcGFjdCBoZWFkZXIgLS0+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1zdGFydCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtbWItMyBheC1nYXAtM1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LW1pbi13LTBcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJheC10ZXh0LXhsIGF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1kZWZhdWx0XCI+e3sgY29udGFjdC5uYW1lIH19PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgICBAaWYgKGNvbnRhY3Quc2hvcnROYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImF4LXRleHQtbXV0ZWRcIj57eyBjb250YWN0LnNob3J0TmFtZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZ2V0UHJpbWFyeUFjdGlvbkNvbG9yKGNvbnRhY3QpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsb29rXT1cIidmaWxsZWQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwicGVyZm9ybVByaW1hcnlBY3Rpb24oY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImdldFByaW1hcnlBY3Rpb24oY29udGFjdCkgPT09ICd0ZXh0JyA/ICdmYS1saWdodCBmYS1tZXNzYWdlJyA6ICdmYS1saWdodCBmYS1waG9uZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdldFByaW1hcnlBY3Rpb25MYWJlbChjb250YWN0KSB9fVxuICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCInc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbG9va109XCInZ2hvc3QnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwidG9nZ2xlRXhwYW5kZWQoY29udGFjdC5pZClcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImlzRXhwYW5kZWQoY29udGFjdC5pZCkgPyAnZmEtbGlnaHQgZmEtY2hldnJvbi11cCcgOiAnZmEtbGlnaHQgZmEtY2hldnJvbi1kb3duJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICA8IS0tIENvbGxhcHNpYmxlIGRldGFpbHMgLS0+XG4gICAgICAgICAgICAgICAgICBAaWYgKGlzRXhwYW5kZWQoY29udGFjdC5pZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTEgbGc6YXgtZ3JpZC1jb2xzLTMgYXgtZ2FwLTQgYXgtaXRlbXMtc3RhcnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbnRhY3QgSW5mbyAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGc6YXgtY29sLXNwYW4tMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1tdXRlZCBheC1tYi00XCI+e3sgY29udGFjdC5kZXNjcmlwdGlvbiB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb250YWN0IE1ldGhvZHMgR3JpZCAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xIHNtOmF4LWdyaWQtY29scy0yIGF4LWdhcC0zIGF4LW1iLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQaG9uZSAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXBob25lXCIgY2xhc3M9XCJheC10ZXh0LXByaW1hcnlcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1mb250LW1vbm9cIj57eyBjb250YWN0LnBob25lTnVtYmVyIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVtYWlsIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGNvbnRhY3QuZW1haWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1lbnZlbG9wZVwiIGNsYXNzPVwiYXgtdGV4dC1pbmZvXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgY29udGFjdC5lbWFpbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gV2Vic2l0ZSAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LndlYnNpdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1nbG9iZVwiIGNsYXNzPVwiYXgtdGV4dC1hY2NlbnRcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBbaHJlZl09XCJjb250YWN0LndlYnNpdGVcIiB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cImF4LXRleHQtYWNjZW50IGF4LWhvdmVyOnVuZGVybGluZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJzaXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFN0YXR1cyBJbmZvIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTEgc206YXgtZ3JpZC1jb2xzLTMgYXgtZ2FwLTMgYXgtdGV4dC1zbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJheC10ZXh0LW11dGVkXCI+Q292ZXJhZ2U6PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgZ2V0Q292ZXJhZ2VUZXh0KGNvbnRhY3QpIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiYXgtdGV4dC1tdXRlZFwiPkNhcGFiaWxpdGllczo8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyBnZXRDYXBhYmlsaXRpZXNUZXh0KGNvbnRhY3QpIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiYXgtdGV4dC1tdXRlZFwiPlN0YXR1czo8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiY29udGFjdC5pc0FjdGl2ZSA/ICdheC10ZXh0LXN1Y2Nlc3MnIDogJ2F4LXRleHQtZGFuZ2VyJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb250YWN0LmlzQWN0aXZlID8gJ0FjdGl2ZScgOiAnSW5hY3RpdmUnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGNvbnRhY3QuaXNWZXJpZmllZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY2hlY2stY2lyY2xlXCIgY2xhc3M9XCJheC10ZXh0LXN1Y2Nlc3NcIj48L2F4LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSBTZWNvbmRhcnkgQWN0aW9ucyAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb250YWN0LndlYnNpdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCInc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvb2tdPVwiJ2dob3N0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJheC1mbGV4LTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZVZpc2l0V2Vic2l0ZShjb250YWN0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZXh0ZXJuYWwtbGlua1wiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIidzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvb2tdPVwiJ2dob3N0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF4LWZsZXgtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvcHlOdW1iZXIoY29udGFjdClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY29weVwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICA8IS0tIE5vIENvbnRhY3RzIFN0YXRlIC0tPlxuICAgICAgICBAaWYgKGFsbENvbnRhY3RzKCkubGVuZ3RoID09PSAwICYmICFsb2FkaW5nKCkpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1jZW50ZXIgYXgtcHktMTJcIj5cbiAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1waG9uZS1zbGFzaFwiIGNsYXNzPVwiYXgtdGV4dC02eGwgYXgtdGV4dC1tdXRlZCBheC1tYi00XCI+PC9heC1pY29uPlxuICAgICAgICAgICAgPGgzIGNsYXNzPVwiYXgtdGV4dC14bCBheC1mb250LW1lZGl1bSBheC10ZXh0LW11dGVkIGF4LW1iLTJcIj5ObyBlbWVyZ2VuY3kgY29udGFjdHMgYXZhaWxhYmxlPC9oMz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2F4cC1wYWdlLWNvbnRlbnQ+XG48L2F4cC1wYWdlLWxheW91dD5cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtY29udGFjdC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvYWNvcmV4LW1vZHVsZXMtY29udGFjdC1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-modules-contact-management.mjs","sources":["../tmp-esm2022/contact-management/lib/const.js","../tmp-esm2022/contact-management/lib/entities/contact-method-type/contact-method-type.service.js","../tmp-esm2022/contact-management/lib/entities/contact-method-type/contact-method-type.entity.js","../tmp-esm2022/contact-management/lib/entities/contact-method/contact-method.service.js","../tmp-esm2022/contact-management/lib/entities/contact-method/index.js","../tmp-esm2022/contact-management/lib/entities/emergency-contact/emergency-contact.service.js","../tmp-esm2022/contact-management/lib/entities/contact-method-type/contact-method-type.module.js","../tmp-esm2022/contact-management/lib/entities/contact-method/contact-method.module.js","../tmp-esm2022/contact-management/lib/entities/emergency-contact/emergency-contact.module.js","../tmp-esm2022/contact-management/lib/entities/index.js","../tmp-esm2022/contact-management/lib/entity.provider.js","../tmp-esm2022/contact-management/lib/menu.provider.js","../tmp-esm2022/contact-management/lib/search-command.provider.js","../tmp-esm2022/contact-management/lib/contact-management.module.js","../tmp-esm2022/contact-management/lib/permission.keys.js","../tmp-esm2022/contact-management/lib/permission-definition.provider.js","../tmp-esm2022/contact-management/lib/features/emergency-contacts/util/emergency-contact-item.component.js","../tmp-esm2022/contact-management/lib/features/emergency-contacts/emergency-contacts-page.component.js","../tmp-esm2022/contact-management/acorex-modules-contact-management.js"],"sourcesContent":["const config = {\n i18n: 'contact-management',\n};\nexport const RootConfig = {\n config,\n module: {\n name: 'ContactManagement',\n title: '@contact-management:module-name',\n icon: 'fa-light fa-address-book',\n },\n entities: {\n contactMethodType: {\n name: 'ContactMethodType',\n title: '@contact-management:contact-method-type.individual-title',\n titlePlural: '@contact-management:contact-method-type.plural-title',\n icon: 'fa-light fa-list',\n },\n contactMethod: {\n name: 'ContactMethod',\n title: '@contact-management:contact-method.individual-title',\n titlePlural: '@contact-management:contact-method.plural-title',\n icon: 'fa-light fa-phone',\n },\n emergencyContact: {\n name: 'EmergencyContact',\n title: '@contact-management:emergency-contact.individual-title',\n titlePlural: '@contact-management:emergency-contact.plural-title',\n icon: 'fa-light fa-siren',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxNQUFNLEdBQUc7SUFDYixJQUFJLEVBQUUsb0JBQW9CO0NBQzNCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxtQkFBbUI7UUFDekIsS0FBSyxFQUFFLGlDQUFpQztRQUN4QyxJQUFJLEVBQUUsMEJBQTBCO0tBQ2pDO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsaUJBQWlCLEVBQUU7WUFDakIsSUFBSSxFQUFFLG1CQUFtQjtZQUN6QixLQUFLLEVBQUUsMERBQTBEO1lBQ2pFLFdBQVcsRUFBRSxzREFBc0Q7WUFDbkUsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELGFBQWEsRUFBRTtZQUNiLElBQUksRUFBRSxlQUFlO1lBQ3JCLEtBQUssRUFBRSxxREFBcUQ7WUFDNUQsV0FBVyxFQUFFLGlEQUFpRDtZQUM5RCxJQUFJLEVBQUUsbUJBQW1CO1NBQzFCO1FBQ0QsZ0JBQWdCLEVBQUU7WUFDaEIsSUFBSSxFQUFFLGtCQUFrQjtZQUN4QixLQUFLLEVBQUUsd0RBQXdEO1lBQy9ELFdBQVcsRUFBRSxvREFBb0Q7WUFDakUsSUFBSSxFQUFFLG1CQUFtQjtTQUMxQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ2NvbnRhY3QtbWFuYWdlbWVudCcsXG59O1xuXG5leHBvcnQgY29uc3QgUm9vdENvbmZpZyA9IHtcbiAgY29uZmlnLFxuICBtb2R1bGU6IHtcbiAgICBuYW1lOiAnQ29udGFjdE1hbmFnZW1lbnQnLFxuICAgIHRpdGxlOiAnQGNvbnRhY3QtbWFuYWdlbWVudDptb2R1bGUtbmFtZScsXG4gICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWFkZHJlc3MtYm9vaycsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgY29udGFjdE1ldGhvZFR5cGU6IHtcbiAgICAgIG5hbWU6ICdDb250YWN0TWV0aG9kVHlwZScsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QtdHlwZS5pbmRpdmlkdWFsLXRpdGxlJyxcbiAgICAgIHRpdGxlUGx1cmFsOiAnQGNvbnRhY3QtbWFuYWdlbWVudDpjb250YWN0LW1ldGhvZC10eXBlLnBsdXJhbC10aXRsZScsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbGlzdCcsXG4gICAgfSxcbiAgICBjb250YWN0TWV0aG9kOiB7XG4gICAgICBuYW1lOiAnQ29udGFjdE1ldGhvZCcsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QuaW5kaXZpZHVhbC10aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6Y29udGFjdC1tZXRob2QucGx1cmFsLXRpdGxlJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1waG9uZScsXG4gICAgfSxcbiAgICBlbWVyZ2VuY3lDb250YWN0OiB7XG4gICAgICBuYW1lOiAnRW1lcmdlbmN5Q29udGFjdCcsXG4gICAgICB0aXRsZTogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QuaW5kaXZpZHVhbC10aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QucGx1cmFsLXRpdGxlJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1zaXJlbicsXG4gICAgfSxcbiAgfSxcbn07ICJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodTypeService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMContactMethodTypeServiceImpl extends AXMContactMethodTypeService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.contactMethodType.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QtdHlwZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kLXR5cGUvY29udGFjdC1tZXRob2QtdHlwZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQiwyQkFBNEIsU0FBUSx3QkFHekQ7Q0FBSTtBQUdMLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSwyQkFBMkI7SUFDNUU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDckYsQ0FBQzs4R0FIUSwrQkFBK0I7a0hBQS9CLCtCQUErQjs7MkZBQS9CLCtCQUErQjtrQkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kVHlwZUVudGl0eU1vZGVsIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC10eXBlLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgICBzdHJpbmcsXG4gICAgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kVHlwZUVudGl0eU1vZGVsXG4+IHsgfVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5uYW1lfWApO1xuICAgIH1cbn0gIl19","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMContactMethodTypeService } from './contact-method-type.service';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nexport async function contactMethodTypeFactory(injector) {\n const dataService = injector.get(AXMContactMethodTypeService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.contactMethodType.name,\n source: '',\n title: RootConfig.entities.contactMethodType.title,\n formats: {\n individual: RootConfig.entities.contactMethodType.title,\n plural: RootConfig.entities.contactMethodType.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n plugins: [\n { name: 'history' },\n { name: 'lock' },\n { name: 'compare' },\n ],\n groups: [\n {\n id: 'basic-info',\n title: '@general:terms.basic-info',\n },\n {\n id: 'validation',\n title: '@general:terms.validation',\n },\n {\n id: 'settings',\n title: '@general:terms.settings',\n },\n ],\n properties: [\n {\n name: 'title',\n title: '@general:terms.title',\n groupId: 'basic-info',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsCatalog.text },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'validationRegex',\n title: '@general:terms.validation-regex',\n groupId: 'validation',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$'\n }\n },\n },\n },\n {\n name: 'placeholder',\n title: '@general:terms.placeholder',\n groupId: 'validation',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 'user@example.com'\n }\n },\n },\n },\n {\n name: 'isActive',\n title: '@general:terms.status.options.active',\n groupId: 'settings',\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n schema: {\n dataType: 'boolean',\n interface: { type: AXPWidgetsCatalog.toggle },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'validationRegex' },\n { name: 'placeholder' },\n { name: 'isActive' }\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n { id: 'basic-info' },\n { id: 'validation' },\n { id: 'settings' }\n ],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'validationRegex', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'placeholder', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },\n { name: 'isActive', layout: { positions: { lg: { colSpan: 3, order: 4 } } } },\n ],\n actions: [\n ...entityMasterRecordActions()\n ],\n },\n list: {\n actions: [\n ...entityMasterCrudActions()\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QtdHlwZS5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY29udGFjdC1tZXRob2QtdHlwZS9jb250YWN0LW1ldGhvZC10eXBlLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQTRCLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFOUgsTUFBTSxDQUFDLEtBQUssVUFBVSx3QkFBd0IsQ0FBQyxRQUFrQjtJQUMvRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDOUQsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO1FBQ2hELE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsS0FBSztRQUNsRCxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLO1lBQ3ZELE1BQU0sRUFBRSxV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d0JBQ1YsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTt3QkFDMUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNwRixFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNoRixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3FCQUM5RTtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyx5QkFBeUIsRUFBRTtxQkFDL0I7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3FCQUM3QjtvQkFDRCxLQUFLLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3hFO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC10eXBlLnNlcnZpY2UnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlckRlbGV0ZUFjdGlvbiwgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb250YWN0TWV0aG9kVHlwZUZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS50aXRsZSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcGx1Z2luczogW1xuICAgICAgeyBuYW1lOiAnaGlzdG9yeScgfSxcbiAgICAgIHsgbmFtZTogJ2xvY2snIH0sXG4gICAgICB7IG5hbWU6ICdjb21wYXJlJyB9LFxuICAgIF0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYmFzaWMtaW5mbycsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuYmFzaWMtaW5mbycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLnZhbGlkYXRpb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZXR0aW5ncycsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuc2V0dGluZ3MnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7IHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndmFsaWRhdGlvblJlZ2V4JyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy52YWxpZGF0aW9uLXJlZ2V4JyxcbiAgICAgICAgZ3JvdXBJZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sIGlubGluZTogeyBlbmFibGVkOiBmYWxzZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rXFxcXC5bYS16QS1aXXsyLH0kJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGxhY2Vob2xkZXInLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLnBsYWNlaG9sZGVyJyxcbiAgICAgICAgZ3JvdXBJZDogJ3ZhbGlkYXRpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sIGlubGluZTogeyBlbmFibGVkOiBmYWxzZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAndXNlckBleGFtcGxlLmNvbSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lzQWN0aXZlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5zdGF0dXMub3B0aW9ucy5hY3RpdmUnLFxuICAgICAgICBncm91cElkOiAnc2V0dGluZ3MnLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7IHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgIHsgbmFtZTogJ3RpdGxlJyB9LFxuICAgICAgeyBuYW1lOiAndmFsaWRhdGlvblJlZ2V4JyB9LFxuICAgICAgeyBuYW1lOiAncGxhY2Vob2xkZXInIH0sXG4gICAgICB7IG5hbWU6ICdpc0FjdGl2ZScgfVxuICAgIF0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAgeyBpZDogJ2Jhc2ljLWluZm8nIH0sXG4gICAgICAgICAgICB7IGlkOiAndmFsaWRhdGlvbicgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdzZXR0aW5ncycgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYsIG9yZGVyOiAxIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd2YWxpZGF0aW9uUmVnZXgnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYsIG9yZGVyOiAyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdwbGFjZWhvbGRlcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDMgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQWN0aXZlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAzLCBvcmRlcjogNCB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnYmFzaWMtaW5mbycgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd2YWxpZGF0aW9uJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3NldHRpbmdzJyB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDEgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkYXRpb25SZWdleCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3BsYWNlaG9sZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2LCBvcmRlcjogMyB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnaXNBY3RpdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDMsIG9yZGVyOiA0IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnYmFzaWMtaW5mbycgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd2YWxpZGF0aW9uJyB9LFxuICAgICAgICAgICAgeyBpZDogJ3NldHRpbmdzJyB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDEgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkYXRpb25SZWdleCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiwgb3JkZXI6IDIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3BsYWNlaG9sZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2LCBvcmRlcjogMyB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnaXNBY3RpdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDMsIG9yZGVyOiA0IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAuLi5lbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zKClcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgLi4uZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMoKVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtjcmVhdGVBbGxRdWVyeVZpZXcoeyBzb3J0czogW3sgbmFtZTogJ3RpdGxlJywgZGlyOiAnYXNjJyB9XSB9KV0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn0gIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMContactMethodServiceImpl extends AXMContactMethodService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.contactMethod.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jb250YWN0LW1ldGhvZC9jb250YWN0LW1ldGhvZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQix1QkFBd0IsU0FBUSx3QkFHckQ7Q0FBSTtBQUdMLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx1QkFBdUI7SUFDcEU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7OEdBSFEsMkJBQTJCO2tIQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUNvbnRhY3RNYW5hZ2VtZW50Q29udGFjdE1ldGhvZEVudGl0eU1vZGVsIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Db250YWN0TWV0aG9kU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgICBzdHJpbmcsXG4gICAgQVhNQ29udGFjdE1hbmFnZW1lbnRDb250YWN0TWV0aG9kRW50aXR5TW9kZWxcbj4geyB9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1Db250YWN0TWV0aG9kU2VydmljZUltcGwgZXh0ZW5kcyBBWE1Db250YWN0TWV0aG9kU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kLm5hbWV9YCk7XG4gICAgfVxufSAiXX0=","export * from './contact-method.service';\nexport * from './contact-method.types';\n// Note: contact-method.entity.ts will reference contactMethodType lookup \n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY29udGFjdC1tZXRob2QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLDBFQUEwRSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1tZXRob2Quc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRhY3QtbWV0aG9kLnR5cGVzJztcbi8vIE5vdGU6IGNvbnRhY3QtbWV0aG9kLmVudGl0eS50cyB3aWxsIHJlZmVyZW5jZSBjb250YWN0TWV0aG9kVHlwZSBsb29rdXAgIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEmergencyContactService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMEmergencyContactServiceImpl extends AXMEmergencyContactService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.emergencyContact.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQiwwQkFBMkIsU0FBUSx3QkFHeEQ7Q0FBSTtBQUdMLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSwwQkFBMEI7SUFDMUU7UUFDSSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDcEYsQ0FBQzs4R0FIUSw4QkFBOEI7a0hBQTlCLDhCQUE4Qjs7MkZBQTlCLDhCQUE4QjtrQkFEMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwgfSBmcm9tICcuL2VtZXJnZW5jeS1jb250YWN0LnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICAgIHN0cmluZyxcbiAgICBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbFxuPiB7IH1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QubmFtZX1gKTtcbiAgICB9XG59ICJdfQ==","import { NgModule } from '@angular/core';\nimport { AXMContactMethodTypeService, AXMContactMethodTypeServiceImpl } from './contact-method-type.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodTypeEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeEntityModule, providers: [\n {\n provide: AXMContactMethodTypeService,\n useClass: AXMContactMethodTypeServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodTypeEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMContactMethodTypeService,\n useClass: AXMContactMethodTypeServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QtdHlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY29udGFjdC1tZXRob2QtdHlwZS9jb250YWN0LW1ldGhvZC10eXBlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQWE3RyxNQUFNLE9BQU8sZ0NBQWdDOzhHQUFoQyxnQ0FBZ0M7K0dBQWhDLGdDQUFnQzsrR0FBaEMsZ0NBQWdDLGFBUDlCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsUUFBUSxFQUFFLCtCQUErQjthQUM1QztTQUNKOzsyRkFFUSxnQ0FBZ0M7a0JBWDVDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxRQUFRLEVBQUUsK0JBQStCO3lCQUM1QztxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Db250YWN0TWV0aG9kVHlwZVNlcnZpY2UsIEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZUltcGwgfSBmcm9tICcuL2NvbnRhY3QtbWV0aG9kLXR5cGUuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW10sXG4gICAgZXhwb3J0czogW10sXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNQ29udGFjdE1ldGhvZFR5cGVTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvbnRhY3RNZXRob2RUeXBlU2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1ldGhvZFR5cGVFbnRpdHlNb2R1bGUgeyB9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXMContactMethodService, AXMContactMethodServiceImpl } from './contact-method.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactMethodEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodEntityModule, providers: [\n {\n provide: AXMContactMethodService,\n useClass: AXMContactMethodServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactMethodEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMContactMethodService,\n useClass: AXMContactMethodServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tZXRob2QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kL2NvbnRhY3QtbWV0aG9kLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQWFoRyxNQUFNLE9BQU8sNEJBQTRCOzhHQUE1Qiw0QkFBNEI7K0dBQTVCLDRCQUE0QjsrR0FBNUIsNEJBQTRCLGFBUDFCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLHVCQUF1QjtnQkFDaEMsUUFBUSxFQUFFLDJCQUEyQjthQUN4QztTQUNKOzsyRkFFUSw0QkFBNEI7a0JBWHhDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxRQUFRLEVBQUUsMkJBQTJCO3lCQUN4QztxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Db250YWN0TWV0aG9kU2VydmljZSwgQVhNQ29udGFjdE1ldGhvZFNlcnZpY2VJbXBsIH0gZnJvbSAnLi9jb250YWN0LW1ldGhvZC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1Db250YWN0TWV0aG9kU2VydmljZSxcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Db250YWN0TWV0aG9kU2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1ldGhvZEVudGl0eU1vZHVsZSB7IH1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AXMEmergencyContactService, AXMEmergencyContactServiceImpl } from './emergency-contact.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMEmergencyContactEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactEntityModule, providers: [\n {\n provide: AXMEmergencyContactService,\n useClass: AXMEmergencyContactServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMEmergencyContactService,\n useClass: AXMEmergencyContactServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2VtZXJnZW5jeS1jb250YWN0L2VtZXJnZW5jeS1jb250YWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQWF6RyxNQUFNLE9BQU8sK0JBQStCOzhHQUEvQiwrQkFBK0I7K0dBQS9CLCtCQUErQjsrR0FBL0IsK0JBQStCLGFBUDdCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLDBCQUEwQjtnQkFDbkMsUUFBUSxFQUFFLDhCQUE4QjthQUMzQztTQUNKOzsyRkFFUSwrQkFBK0I7a0JBWDNDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsMEJBQTBCOzRCQUNuQyxRQUFRLEVBQUUsOEJBQThCO3lCQUMzQztxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1FbWVyZ2VuY3lDb250YWN0U2VydmljZSwgQVhNRW1lcmdlbmN5Q29udGFjdFNlcnZpY2VJbXBsIH0gZnJvbSAnLi9lbWVyZ2VuY3ktY29udGFjdC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1FbWVyZ2VuY3lDb250YWN0U2VydmljZSxcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1FbWVyZ2VuY3lDb250YWN0U2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZHVsZSB7IH1cbiJdfQ==","// Entity Services\nexport * from './contact-method-type';\nexport * from './contact-method';\nexport * from './emergency-contact';\n// Entity Modules\nexport * from './contact-method-type/contact-method-type.module';\nexport * from './contact-method/contact-method.module';\nexport * from './emergency-contact/emergency-contact.module';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0JBQWtCO0FBQ2xCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGlCQUFpQjtBQUNqQixjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4Q0FBOEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEVudGl0eSBTZXJ2aWNlc1xuZXhwb3J0ICogZnJvbSAnLi9jb250YWN0LW1ldGhvZC10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1tZXRob2QnO1xuZXhwb3J0ICogZnJvbSAnLi9lbWVyZ2VuY3ktY29udGFjdCc7XG5cbi8vIEVudGl0eSBNb2R1bGVzXG5leHBvcnQgKiBmcm9tICcuL2NvbnRhY3QtbWV0aG9kLXR5cGUvY29udGFjdC1tZXRob2QtdHlwZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250YWN0LW1ldGhvZC9jb250YWN0LW1ldGhvZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC5tb2R1bGUnOyJdfQ==","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMContactManagementEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.contactMethodType.name:\n return (await import('./entities/contact-method-type/contact-method-type.entity')).contactMethodTypeFactory(this.injector);\n case RootConfig.entities.contactMethod.name:\n return (await import('./entities/contact-method/contact-method.entity')).contactMethodFactory(this.injector);\n case RootConfig.entities.emergencyContact.name:\n return (await import('./entities/emergency-contact/emergency-contact.entity')).emergencyContactFactory(this.injector);\n }\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0eS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHckMsTUFBTSxPQUFPLGtDQUFrQztJQUQvQztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0F1QnJDO0lBckJRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsUUFBUSxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUk7b0JBQzdDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQywyREFBMkQsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUM3SCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUk7b0JBQ3pDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyxpREFBaUQsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvRyxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtvQkFDNUMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHVEQUF1RCxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUgsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBdkJVLGtDQUFrQztrSEFBbEMsa0NBQWtDOzsyRkFBbEMsa0NBQWtDO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUNvbnRhY3RNYW5hZ2VtZW50RW50aXR5UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBFbnRpdHlEZWZpbml0aW9uTG9hZGVyLCBBWFBFbnRpdHlEZWZpbml0aW9uUHJlbG9hZGVyIHtcbiAgcHJpdmF0ZSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHVibGljIHByZWxvYWQoKTogQVhQRW50aXR5UHJlbG9hZEVudGl0eVtdIHtcbiAgICBjb25zdCBtb2R1bGUgPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBBcnJheS5mcm9tKE9iamVjdC52YWx1ZXMoUm9vdENvbmZpZy5lbnRpdGllcykpLm1hcCgoZW50aXR5OiBhbnkpID0+ICh7XG4gICAgICBtb2R1bGU6IG1vZHVsZSxcbiAgICAgIGVudGl0eTogZW50aXR5Lm5hbWUsXG4gICAgfSkpO1xuICB9XG5cbiAgYXN5bmMgZ2V0KG1vZHVsZU5hbWU6IHN0cmluZywgZW50aXR5TmFtZTogc3RyaW5nKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gICAgaWYgKG1vZHVsZU5hbWUgPT0gUm9vdENvbmZpZy5tb2R1bGUubmFtZSkge1xuICAgICAgc3dpdGNoIChlbnRpdHlOYW1lKSB7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kLXR5cGUvY29udGFjdC1tZXRob2QtdHlwZS5lbnRpdHknKSkuY29udGFjdE1ldGhvZFR5cGVGYWN0b3J5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuY29udGFjdE1ldGhvZC5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL2NvbnRhY3QtbWV0aG9kL2NvbnRhY3QtbWV0aG9kLmVudGl0eScpKS5jb250YWN0TWV0aG9kRmFjdG9yeSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC5lbnRpdHknKSkuZW1lcmdlbmN5Q29udGFjdEZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59ICJdfQ==","import { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXPSessionService } from '@acorex/platform/auth';\nexport class AXMContactManagementMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n this.sessionService = inject(AXPSessionService);\n }\n async provide(context) {\n const module = RootConfig.module;\n context.addItems([\n {\n priority: 9002,\n text: '@contact-management:root-menu',\n icon: module.icon,\n children: [\n {\n text: '@contact-management:contact-method-type.plural-title',\n path: this.entityService.createPath(module.name, RootConfig.entities.contactMethodType.name),\n icon: RootConfig.entities.contactMethodType.icon,\n priority: 5,\n },\n {\n text: ``,\n type: 'break',\n priority: 10,\n },\n {\n text: '@contact-management:emergency-contact.plural-title',\n path: this.entityService.createPath(module.name, RootConfig.entities.emergencyContact.name),\n icon: RootConfig.entities.emergencyContact.icon,\n priority: 12,\n },\n {\n text: '@contact-management:emergency-contact.page.title',\n path: `${this.sessionService.application?.name}/emergency-contacts`,\n icon: 'fa-light fa-phone-rotary',\n priority: 13,\n },\n ],\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxNQUFNLE9BQU8sZ0NBQWdDO0lBQTdDO1FBQ1Usa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBc0NyRCxDQUFDO0lBcENDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBK0I7UUFDM0MsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUVqQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ2Y7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsSUFBSSxFQUFFLCtCQUErQjtnQkFDckMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixRQUFRLEVBQUU7b0JBQ1I7d0JBQ0UsSUFBSSxFQUFFLHNEQUFzRDt3QkFDNUQsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7d0JBQzVGLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUk7d0JBQ2hELFFBQVEsRUFBRSxDQUFDO3FCQUNaO29CQUNEO3dCQUNFLElBQUksRUFBRSxFQUFFO3dCQUNSLElBQUksRUFBRSxPQUFPO3dCQUNiLFFBQVEsRUFBRSxFQUFFO3FCQUNiO29CQUNEO3dCQUNFLElBQUksRUFBRSxvREFBb0Q7d0JBQzFELElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO3dCQUMzRixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO3dCQUMvQyxRQUFRLEVBQUUsRUFBRTtxQkFDYjtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsa0RBQWtEO3dCQUN4RCxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxJQUFJLHFCQUFxQjt3QkFDbkUsSUFBSSxFQUFFLDBCQUEwQjt3QkFDaEMsUUFBUSxFQUFFLEVBQUU7cUJBQ2I7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUE1lbnVQcm92aWRlciwgQVhQTWVudVByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1Db250YWN0TWFuYWdlbWVudE1lbnVQcm92aWRlciBpbXBsZW1lbnRzIEFYUE1lbnVQcm92aWRlciB7XG4gIHByaXZhdGUgZW50aXR5U2VydmljZSA9IGluamVjdChBWFBFbnRpdHlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZXNzaW9uU2VydmljZSA9IGluamVjdChBWFBTZXNzaW9uU2VydmljZSk7XG5cbiAgYXN5bmMgcHJvdmlkZShjb250ZXh0OiBBWFBNZW51UHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGU7XG5cbiAgICBjb250ZXh0LmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgcHJpb3JpdHk6IDkwMDIsXG4gICAgICAgIHRleHQ6ICdAY29udGFjdC1tYW5hZ2VtZW50OnJvb3QtbWVudScsXG4gICAgICAgIGljb246IG1vZHVsZS5pY29uLFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6ICdAY29udGFjdC1tYW5hZ2VtZW50OmNvbnRhY3QtbWV0aG9kLXR5cGUucGx1cmFsLXRpdGxlJyxcbiAgICAgICAgICAgIHBhdGg6IHRoaXMuZW50aXR5U2VydmljZS5jcmVhdGVQYXRoKG1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLmNvbnRhY3RNZXRob2RUeXBlLm5hbWUpLFxuICAgICAgICAgICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy5jb250YWN0TWV0aG9kVHlwZS5pY29uLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiBgYCxcbiAgICAgICAgICAgIHR5cGU6ICdicmVhaycsXG4gICAgICAgICAgICBwcmlvcml0eTogMTAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiAnQGNvbnRhY3QtbWFuYWdlbWVudDplbWVyZ2VuY3ktY29udGFjdC5wbHVyYWwtdGl0bGUnLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgobW9kdWxlLm5hbWUsIFJvb3RDb25maWcuZW50aXRpZXMuZW1lcmdlbmN5Q29udGFjdC5uYW1lKSxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMuZW1lcmdlbmN5Q29udGFjdC5pY29uLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDEyLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdGV4dDogJ0Bjb250YWN0LW1hbmFnZW1lbnQ6ZW1lcmdlbmN5LWNvbnRhY3QucGFnZS50aXRsZScsXG4gICAgICAgICAgICBwYXRoOiBgJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lfS9lbWVyZ2VuY3ktY29udGFjdHNgLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXBob25lLXJvdGFyeScsXG4gICAgICAgICAgICBwcmlvcml0eTogMTMsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cbn0gIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMContactManagementSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // Commands will be added here following the correct pattern\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvc2VhcmNoLWNvbW1hbmQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSx3QkFBd0I7SUFBdkY7O1FBQ0UsYUFBUSxHQUFzQjtRQUM1Qiw0REFBNEQ7U0FDN0QsQ0FBQztJQUNKLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciwgQVhQU2VhcmNoUmVzdWx0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNQ29udGFjdE1hbmFnZW1lbnRTZWFyY2hDb21tYW5kUHJvdmlkZXIgZXh0ZW5kcyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIge1xuICBjb21tYW5kczogQVhQU2VhcmNoUmVzdWx0W10gPSBbXG4gICAgLy8gQ29tbWFuZHMgd2lsbCBiZSBhZGRlZCBoZXJlIGZvbGxvd2luZyB0aGUgY29ycmVjdCBwYXR0ZXJuXG4gIF07XG59ICJdfQ==","import { inject, Injector, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\n// Entity Modules\nimport { AXMContactMethodTypeEntityModule, AXMContactMethodEntityModule, AXMEmergencyContactEntityModule, } from './entities';\n// Entity Providers\nimport { AXMContactManagementEntityProvider } from './entity.provider';\nimport { AXMContactManagementMenuProvider } from './menu.provider';\nimport { AXMContactManagementSearchCommandProvider } from './search-command.provider';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutComponent } from '@acorex/platform/themes/default';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/router\";\nexport class AXMContactManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, imports: [CommonModule,\n // Entity Modules\n AXMContactMethodTypeEntityModule,\n AXMContactMethodEntityModule,\n AXMEmergencyContactEntityModule, i1.RouterModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, providers: [\n // Entity Provider\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMContactManagementEntityProvider,\n multi: true,\n },\n // Menu Provider\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMContactManagementMenuProvider,\n multi: true,\n },\n // Search Command Provider\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMContactManagementSearchCommandProvider,\n multi: true,\n },\n // Permission Provider\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n ], imports: [CommonModule,\n // Entity Modules\n AXMContactMethodTypeEntityModule,\n AXMContactMethodEntityModule,\n AXMEmergencyContactEntityModule,\n RouterModule.forChild([{\n path: ':app/emergency-contacts',\n component: AXPRootLayoutComponent,\n children: [\n {\n path: '',\n loadComponent: () => import('./features/emergency-contacts/emergency-contacts-page.component').then(m => m.AXMEmergencyContactsPageComponent)\n }\n ]\n }\n ])] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContactManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n CommonModule,\n // Entity Modules\n AXMContactMethodTypeEntityModule,\n AXMContactMethodEntityModule,\n AXMEmergencyContactEntityModule,\n RouterModule.forChild([{\n path: ':app/emergency-contacts',\n component: AXPRootLayoutComponent,\n children: [\n {\n path: '',\n loadComponent: () => import('./features/emergency-contacts/emergency-contacts-page.component').then(m => m.AXMEmergencyContactsPageComponent)\n }\n ]\n }\n ]),\n ],\n providers: [\n // Entity Provider\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMContactManagementEntityProvider,\n multi: true,\n },\n // Menu Provider\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMContactManagementMenuProvider,\n multi: true,\n },\n // Search Command Provider\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMContactManagementSearchCommandProvider,\n multi: true,\n },\n // Permission Provider\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250YWN0LW1hbmFnZW1lbnQvc3JjL2xpYi9jb250YWN0LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUNILGlCQUFpQixFQUNqQixtQkFBbUIsR0FDdEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU5RSxpQkFBaUI7QUFDakIsT0FBTyxFQUNILGdDQUFnQyxFQUNoQyw0QkFBNEIsRUFDNUIsK0JBQStCLEdBQ2xDLE1BQU0sWUFBWSxDQUFDO0FBRXBCLG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7OztBQXVEekUsTUFBTSxPQUFPLDBCQUEwQjs4R0FBMUIsMEJBQTBCOytHQUExQiwwQkFBMEIsWUFuRC9CLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsZ0NBQWdDO1lBQ2hDLDRCQUE0QjtZQUM1QiwrQkFBK0I7K0dBK0MxQiwwQkFBMEIsYUFsQ3hC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QUFDLENBQUM7NEJBQ2xDLENBQUM7NEJBQ0QsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdG9yLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHtcbiAgICBBWFBfTUVOVV9QUk9WSURFUixcbiAgICBBWFBfU0VBUkNIX1BST1ZJREVSLFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcblxuLy8gRW50aXR5IE1vZHVsZXNcbmltcG9ydCB7XG4gICAgQVhNQ29udGFjdE1ldGhvZFR5cGVFbnRpdHlNb2R1bGUsXG4gICAgQVhNQ29udGFjdE1ldGhvZEVudGl0eU1vZHVsZSxcbiAgICBBWE1FbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kdWxlLFxufSBmcm9tICcuL2VudGl0aWVzJztcblxuLy8gRW50aXR5IFByb3ZpZGVyc1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRFbnRpdHlQcm92aWRlciB9IGZyb20gJy4vZW50aXR5LnByb3ZpZGVyJztcbmltcG9ydCB7IEFYTUNvbnRhY3RNYW5hZ2VtZW50TWVudVByb3ZpZGVyIH0gZnJvbSAnLi9tZW51LnByb3ZpZGVyJztcbmltcG9ydCB7IEFYTUNvbnRhY3RNYW5hZ2VtZW50U2VhcmNoQ29tbWFuZFByb3ZpZGVyIH0gZnJvbSAnLi9zZWFyY2gtY29tbWFuZC5wcm92aWRlcic7XG5cbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBWFBSb290TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIC8vIEVudGl0eSBNb2R1bGVzXG4gICAgICAgIEFYTUNvbnRhY3RNZXRob2RUeXBlRW50aXR5TW9kdWxlLFxuICAgICAgICBBWE1Db250YWN0TWV0aG9kRW50aXR5TW9kdWxlLFxuICAgICAgICBBWE1FbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQoW3tcbiAgICAgICAgICAgIHBhdGg6ICc6YXBwL2VtZXJnZW5jeS1jb250YWN0cycsXG4gICAgICAgICAgICBjb21wb25lbnQ6IEFYUFJvb3RMYXlvdXRDb21wb25lbnQsXG4gICAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgICAgICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9mZWF0dXJlcy9lbWVyZ2VuY3ktY29udGFjdHMvZW1lcmdlbmN5LWNvbnRhY3RzLXBhZ2UuY29tcG9uZW50JykudGhlbihtID0+IG0uQVhNRW1lcmdlbmN5Q29udGFjdHNQYWdlQ29tcG9uZW50KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgICBdKSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICAvLyBFbnRpdHkgUHJvdmlkZXJcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Db250YWN0TWFuYWdlbWVudEVudGl0eVByb3ZpZGVyLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG5cbiAgICAgICAgLy8gTWVudSBQcm92aWRlclxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWFBfTUVOVV9QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Db250YWN0TWFuYWdlbWVudE1lbnVQcm92aWRlcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuXG4gICAgICAgIC8vIFNlYXJjaCBDb21tYW5kIFByb3ZpZGVyXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9TRUFSQ0hfUFJPVklERVIsXG4gICAgICAgICAgICB1c2VDbGFzczogQVhNQ29udGFjdE1hbmFnZW1lbnRTZWFyY2hDb21tYW5kUHJvdmlkZXIsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcblxuICAgICAgICAvLyBQZXJtaXNzaW9uIFByb3ZpZGVyXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHByb3ZpZGVyID0gKGF3YWl0IGltcG9ydCgnLi9wZXJtaXNzaW9uLWRlZmluaXRpb24ucHJvdmlkZXInKSkuQVhNUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlcjtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IHByb3ZpZGVyKGluamVjdG9yKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Db250YWN0TWFuYWdlbWVudE1vZHVsZSB7IH0gIl19","import { AXPSystemActionType } from \"@acorex/platform/core\";\nimport { RootConfig } from \"./const\";\nconst moduleKey = RootConfig.module.name;\nconst entitiesKey = RootConfig.entities;\nconst manageKey = AXPSystemActionType.Manage;\nconst viewKey = AXPSystemActionType.View;\nconst updateKey = AXPSystemActionType.Update;\nconst deleteKey = AXPSystemActionType.Delete;\nconst createKey = AXPSystemActionType.Create;\nexport const AXMPermissionsKeys = {\n ContactManagement: {\n Management: `${moduleKey}:${manageKey}`,\n ContactMethodTypes: {\n Management: `${moduleKey}:${entitiesKey.contactMethodType.name}:${manageKey}`,\n View: `${moduleKey}:${entitiesKey.contactMethodType.name}:${viewKey}`,\n Edit: `${moduleKey}:${entitiesKey.contactMethodType.name}:${updateKey}`,\n Delete: `${moduleKey}:${entitiesKey.contactMethodType.name}:${deleteKey}`,\n Create: `${moduleKey}:${entitiesKey.contactMethodType.name}:${createKey}`,\n },\n EmergencyContacts: {\n Management: `${moduleKey}:${entitiesKey.emergencyContact.name}:${manageKey}`,\n View: `${moduleKey}:${entitiesKey.emergencyContact.name}:${viewKey}`,\n Edit: `${moduleKey}:${entitiesKey.emergencyContact.name}:${updateKey}`,\n Delete: `${moduleKey}:${entitiesKey.emergencyContact.name}:${deleteKey}`,\n Create: `${moduleKey}:${entitiesKey.emergencyContact.name}:${createKey}`,\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24ua2V5cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0FBQ3pDLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7QUFDeEMsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0FBQzdDLE1BQU0sT0FBTyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQztBQUN6QyxNQUFNLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7QUFDN0MsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO0FBQzdDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQztBQUc3QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUM5QixpQkFBaUIsRUFBRTtRQUNmLFVBQVUsRUFBRSxHQUFHLFNBQVMsSUFBSSxTQUFTLEVBQUU7UUFFdkMsa0JBQWtCLEVBQUU7WUFDaEIsVUFBVSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQzdFLElBQUksRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLE9BQU8sRUFBRTtZQUNyRSxJQUFJLEVBQUUsR0FBRyxTQUFTLElBQUksV0FBVyxDQUFDLGlCQUFpQixDQUFDLElBQUksSUFBSSxTQUFTLEVBQUU7WUFDdkUsTUFBTSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQ3pFLE1BQU0sRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLFNBQVMsRUFBRTtTQUM1RTtRQUVELGlCQUFpQixFQUFFO1lBQ2YsVUFBVSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQzVFLElBQUksRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLE9BQU8sRUFBRTtZQUNwRSxJQUFJLEVBQUUsR0FBRyxTQUFTLElBQUksV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksSUFBSSxTQUFTLEVBQUU7WUFDdEUsTUFBTSxFQUFFLEdBQUcsU0FBUyxJQUFJLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksU0FBUyxFQUFFO1lBQ3hFLE1BQU0sRUFBRSxHQUFHLFNBQVMsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLFNBQVMsRUFBRTtTQUMzRTtLQUVKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFN5c3RlbUFjdGlvblR5cGUgfSBmcm9tIFwiQGFjb3JleC9wbGF0Zm9ybS9jb3JlXCI7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSBcIi4vY29uc3RcIjtcblxuY29uc3QgbW9kdWxlS2V5ID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbmNvbnN0IGVudGl0aWVzS2V5ID0gUm9vdENvbmZpZy5lbnRpdGllcztcbmNvbnN0IG1hbmFnZUtleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuTWFuYWdlO1xuY29uc3Qgdmlld0tleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuVmlldztcbmNvbnN0IHVwZGF0ZUtleSA9IEFYUFN5c3RlbUFjdGlvblR5cGUuVXBkYXRlO1xuY29uc3QgZGVsZXRlS2V5ID0gQVhQU3lzdGVtQWN0aW9uVHlwZS5EZWxldGU7XG5jb25zdCBjcmVhdGVLZXkgPSBBWFBTeXN0ZW1BY3Rpb25UeXBlLkNyZWF0ZTtcblxuXG5leHBvcnQgY29uc3QgQVhNUGVybWlzc2lvbnNLZXlzID0ge1xuICAgIENvbnRhY3RNYW5hZ2VtZW50OiB7XG4gICAgICAgIE1hbmFnZW1lbnQ6IGAke21vZHVsZUtleX06JHttYW5hZ2VLZXl9YCxcblxuICAgICAgICBDb250YWN0TWV0aG9kVHlwZXM6IHtcbiAgICAgICAgICAgIE1hbmFnZW1lbnQ6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5jb250YWN0TWV0aG9kVHlwZS5uYW1lfToke21hbmFnZUtleX1gLFxuICAgICAgICAgICAgVmlldzogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmNvbnRhY3RNZXRob2RUeXBlLm5hbWV9OiR7dmlld0tleX1gLFxuICAgICAgICAgICAgRWRpdDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmNvbnRhY3RNZXRob2RUeXBlLm5hbWV9OiR7dXBkYXRlS2V5fWAsXG4gICAgICAgICAgICBEZWxldGU6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5jb250YWN0TWV0aG9kVHlwZS5uYW1lfToke2RlbGV0ZUtleX1gLFxuICAgICAgICAgICAgQ3JlYXRlOiBgJHttb2R1bGVLZXl9OiR7ZW50aXRpZXNLZXkuY29udGFjdE1ldGhvZFR5cGUubmFtZX06JHtjcmVhdGVLZXl9YCxcbiAgICAgICAgfSxcblxuICAgICAgICBFbWVyZ2VuY3lDb250YWN0czoge1xuICAgICAgICAgICAgTWFuYWdlbWVudDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHttYW5hZ2VLZXl9YCxcbiAgICAgICAgICAgIFZpZXc6IGAke21vZHVsZUtleX06JHtlbnRpdGllc0tleS5lbWVyZ2VuY3lDb250YWN0Lm5hbWV9OiR7dmlld0tleX1gLFxuICAgICAgICAgICAgRWRpdDogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHt1cGRhdGVLZXl9YCxcbiAgICAgICAgICAgIERlbGV0ZTogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHtkZWxldGVLZXl9YCxcbiAgICAgICAgICAgIENyZWF0ZTogYCR7bW9kdWxlS2V5fToke2VudGl0aWVzS2V5LmVtZXJnZW5jeUNvbnRhY3QubmFtZX06JHtjcmVhdGVLZXl9YCxcbiAgICAgICAgfSxcblxuICAgIH0sXG59OyAiXX0=","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXMPermissionsKeys } from './permission.keys';\nimport { RootConfig } from './const';\nexport class AXMPermissionDefinitionProvider {\n constructor(injector) {\n this.injector = injector;\n this.translateService = this.injector.get(AXTranslationService);\n }\n async define(context) {\n const trans = async (key) => await this.translateService.translateAsync(key);\n const keys = AXMPermissionsKeys.ContactManagement;\n context.addGroup(keys.Management, await trans(RootConfig.module.title))\n // Contact Method Types Management\n .addPermission(keys.ContactMethodTypes.Management, await trans(RootConfig.entities.contactMethodType.title))\n .addChild(keys.ContactMethodTypes.View, await trans('@general:actions.view.permission'))\n .addChild(keys.ContactMethodTypes.Edit, await trans('@general:actions.edit.permission'))\n .addChild(keys.ContactMethodTypes.Delete, await trans('@general:actions.delete.permission'))\n .addChild(keys.ContactMethodTypes.Create, await trans('@general:actions.create.permission'))\n .endPermission()\n // Emergency Contacts Management\n .addPermission(keys.EmergencyContacts.Management, await trans(RootConfig.entities.emergencyContact.title))\n .addChild(keys.EmergencyContacts.View, await trans('@general:actions.view.permission'))\n .addChild(keys.EmergencyContacts.Edit, await trans('@general:actions.edit.permission'))\n .addChild(keys.EmergencyContacts.Delete, await trans('@general:actions.delete.permission'))\n .addChild(keys.EmergencyContacts.Create, await trans('@general:actions.create.permission'))\n .endPermission()\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sT0FBTywrQkFBK0I7SUFHeEMsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUZyQixxQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRzVFLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQStDO1FBQ3hELE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVyRixNQUFNLElBQUksR0FBRyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQztRQUVsRCxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRSxrQ0FBa0M7YUFDakMsYUFBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMzRyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO2FBQ3ZGLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLE1BQU0sS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7YUFDdkYsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQzthQUMzRixRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2FBQzNGLGFBQWEsRUFBRTtZQUNoQixnQ0FBZ0M7YUFDL0IsYUFBYSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN6RyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO2FBQ3RGLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE1BQU0sS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7YUFDdEYsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQzthQUMxRixRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2FBQzFGLGFBQWEsRUFBRTthQUNmLFFBQVEsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIsIEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1QZXJtaXNzaW9uc0tleXMgfSBmcm9tICcuL3Blcm1pc3Npb24ua2V5cyc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIGltcGxlbWVudHMgQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB9XG5cbiAgICBhc3luYyBkZWZpbmUoY29udGV4dDogQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgdHJhbnMgPSBhc3luYyAoa2V5OiBzdHJpbmcpID0+IGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhrZXkpO1xuXG4gICAgICAgIGNvbnN0IGtleXMgPSBBWE1QZXJtaXNzaW9uc0tleXMuQ29udGFjdE1hbmFnZW1lbnQ7XG5cbiAgICAgICAgY29udGV4dC5hZGRHcm91cChrZXlzLk1hbmFnZW1lbnQsIGF3YWl0IHRyYW5zKFJvb3RDb25maWcubW9kdWxlLnRpdGxlKSlcbiAgICAgICAgICAgIC8vIENvbnRhY3QgTWV0aG9kIFR5cGVzIE1hbmFnZW1lbnRcbiAgICAgICAgICAgIC5hZGRQZXJtaXNzaW9uKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLk1hbmFnZW1lbnQsIGF3YWl0IHRyYW5zKFJvb3RDb25maWcuZW50aXRpZXMuY29udGFjdE1ldGhvZFR5cGUudGl0bGUpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLlZpZXcsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLnZpZXcucGVybWlzc2lvbicpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLkVkaXQsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLmVkaXQucGVybWlzc2lvbicpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuQ29udGFjdE1ldGhvZFR5cGVzLkRlbGV0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuZGVsZXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkNvbnRhY3RNZXRob2RUeXBlcy5DcmVhdGUsIGF3YWl0IHRyYW5zKCdAZ2VuZXJhbDphY3Rpb25zLmNyZWF0ZS5wZXJtaXNzaW9uJykpXG4gICAgICAgICAgICAuZW5kUGVybWlzc2lvbigpXG4gICAgICAgICAgICAvLyBFbWVyZ2VuY3kgQ29udGFjdHMgTWFuYWdlbWVudFxuICAgICAgICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5FbWVyZ2VuY3lDb250YWN0cy5NYW5hZ2VtZW50LCBhd2FpdCB0cmFucyhSb290Q29uZmlnLmVudGl0aWVzLmVtZXJnZW5jeUNvbnRhY3QudGl0bGUpKVxuICAgICAgICAgICAgLmFkZENoaWxkKGtleXMuRW1lcmdlbmN5Q29udGFjdHMuVmlldywgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMudmlldy5wZXJtaXNzaW9uJykpXG4gICAgICAgICAgICAuYWRkQ2hpbGQoa2V5cy5FbWVyZ2VuY3lDb250YWN0cy5FZGl0LCBhd2FpdCB0cmFucygnQGdlbmVyYWw6YWN0aW9ucy5lZGl0LnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkVtZXJnZW5jeUNvbnRhY3RzLkRlbGV0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuZGVsZXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5hZGRDaGlsZChrZXlzLkVtZXJnZW5jeUNvbnRhY3RzLkNyZWF0ZSwgYXdhaXQgdHJhbnMoJ0BnZW5lcmFsOmFjdGlvbnMuY3JlYXRlLnBlcm1pc3Npb24nKSlcbiAgICAgICAgICAgIC5lbmRQZXJtaXNzaW9uKClcbiAgICAgICAgICAgIC5lbmRHcm91cCgpO1xuICAgIH1cbn0gIl19","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, input, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nexport class AXMEmergencyContactItemComponent {\n constructor() {\n this.contact = input.required(...(ngDevMode ? [{ debugName: \"contact\" }] : []));\n this.expanded = signal(false, ...(ngDevMode ? [{ debugName: \"expanded\" }] : []));\n this.categoryIcon = computed(() => {\n const c = this.contact()?.categories?.[0];\n return c?.icon ?? 'fa-light fa-circle-info';\n }, ...(ngDevMode ? [{ debugName: \"categoryIcon\" }] : []));\n this.categoryColor = computed(() => {\n const c = this.contact()?.categories?.[0];\n return c?.color ?? 'fa-light fa-circle-info';\n }, ...(ngDevMode ? [{ debugName: \"categoryColor\" }] : []));\n this.messageDisabled = computed(() => {\n const c = this.contact();\n const smsNumber = c.textNumber || c.phoneNumber;\n return !(c.isTextCapable && !!smsNumber);\n }, ...(ngDevMode ? [{ debugName: \"messageDisabled\" }] : []));\n this.callDisabled = computed(() => !this.contact().phoneNumber, ...(ngDevMode ? [{ debugName: \"callDisabled\" }] : []));\n this.coverageText = computed(() => {\n const c = this.contact();\n const coverage = [];\n if (c.isNational)\n coverage.push('National');\n if (c.isRegional)\n coverage.push('Regional');\n if (c.isLocal)\n coverage.push('Local');\n return coverage.join(', ');\n }, ...(ngDevMode ? [{ debugName: \"coverageText\" }] : []));\n this.capabilitiesText = computed(() => {\n const c = this.contact();\n const caps = [];\n if (c.isTextCapable)\n caps.push('Text');\n if (c.isVideoCallCapable)\n caps.push('Video');\n if (!caps.length)\n return 'Voice Only';\n return caps.join(' ');\n }, ...(ngDevMode ? [{ debugName: \"capabilitiesText\" }] : []));\n }\n toggleExpanded() {\n this.expanded.update((v) => !v);\n }\n handleCall() {\n const number = this.contact().phoneNumber;\n if (number) {\n window.open(`tel:${number}`, '_self');\n }\n }\n handleText() {\n const c = this.contact();\n const smsNumber = c.textNumber || c.phoneNumber;\n if (c.isTextCapable && smsNumber) {\n window.open(`sms:${smsNumber}`, '_self');\n }\n }\n visitWebsite() {\n const url = this.contact().website;\n if (url) {\n window.open(url, '_blank');\n }\n }\n async copyInfo() {\n const c = this.contact();\n const info = {\n name: c.name,\n phone: c.phoneNumber,\n text: c.textNumber,\n email: c.email,\n website: c.website,\n availability: c.availability,\n coverage: this.coverageText(),\n capabilities: this.capabilitiesText(),\n };\n try {\n if (navigator?.clipboard) {\n await navigator.clipboard.writeText(JSON.stringify(info, null, 2));\n }\n }\n catch {\n // ignore\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.6\", type: AXMEmergencyContactItemComponent, isStandalone: true, selector: \"axm-emergency-contact-item\", inputs: { contact: { classPropertyName: \"contact\", publicName: \"contact\", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { \"class\": \"\\\"ax-block ax-rounded-lg ax-border ax-lightest-surface dark:ax-darker-surface ax-shadow-sm\\\"\" } }, ngImport: i0, template: \"<div class=\\\"ax-space-y-3 ax-py-4\\\">\\n <!-- Header -->\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-3 ax-flex-col\\\">\\n <div class=\\\"ax-flex ax-items-start ax-gap-3 ax-min-w-0 ax-px-4 ax-w-full\\\">\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-justify-center ax-w-10 ax-h-10 ax-rounded-md ax-lighter-surface dark:ax-surface\\\"\\n >\\n <ax-icon [icon]=\\\"categoryIcon()\\\" [style.color]=\\\"categoryColor()\\\"></ax-icon>\\n </div>\\n <div class=\\\"ax-min-w-0\\\">\\n <div class=\\\"ax-text-lg ax-font-semibold ax-text-default ax-truncate\\\">{{ contact().name }}</div>\\n @if (contact().shortName) {\\n <div class=\\\"ax-text-sm ax-text-muted ax-truncate\\\">{{ contact().shortName }}</div>\\n }\\n </div>\\n </div>\\n <div class=\\\"ax-w-full ax-border-t ax-border-lighter dark:ax-border-darker\\\"></div>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-sm ax-w-full ax-px-4\\\">\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"handleText()\\\" [disabled]=\\\"messageDisabled()\\\">\\n <ax-icon icon=\\\"fa-light fa-message\\\" class=\\\"ax-text-primary\\\"></ax-icon>\\n </ax-button>\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"handleCall()\\\" [disabled]=\\\"callDisabled()\\\">\\n <ax-icon icon=\\\"fa-light fa-phone\\\" class=\\\"ax-text-primary\\\"></ax-icon>\\n </ax-button>\\n </div>\\n <ax-button [look]=\\\"'blank'\\\" [text]=\\\"'More details'\\\" (onClick)=\\\"toggleExpanded()\\\">\\n <ax-icon [icon]=\\\"expanded() ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Details -->\\n @if (expanded()) {\\n <div class=\\\"ax-px-6 ax-border-t ax-space-y-4 ax-pt-4 ax-border-lighter dark:ax-border-darker\\\">\\n <!-- Rowed details; only render when data exists -->\\n <div class=\\\"ax-grid ax-grid-cols-1 ax-gap-3\\\">\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\" *ngIf=\\\"true\\\">\\n <ax-icon icon=\\\"fa-light fa-building\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Company Name</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().name }}</div>\\n </div>\\n\\n @if (contact().phoneNumber || contact().shortName) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-phone\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Phone</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">\\n {{ contact().shortName || contact().phoneNumber }}\\n </div>\\n </div>\\n }\\n\\n @if (contact().email) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-envelope\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Email</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().email }}</div>\\n </div>\\n }\\n\\n @if (contact().website) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-globe\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Website</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-right\\\">\\n <a class=\\\"ax-text-accent ax-hover:underline\\\" [href]=\\\"contact().website\\\" target=\\\"_blank\\\">{{\\n contact().website\\n }}</a>\\n </div>\\n </div>\\n }\\n\\n @if (coverageText()) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-location-dot\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Coverage</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ coverageText() }}</div>\\n </div>\\n }\\n\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-wand-magic-sparkles\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Capabilities</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ capabilitiesText() }}</div>\\n </div>\\n\\n @if (contact().availability) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-clock\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Availability</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().availability }}</div>\\n </div>\\n }\\n\\n @if (contact().lastVerified) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-badge-check\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Last Verified</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">\\n {{ contact().lastVerified | date }}\\n </div>\\n </div>\\n }\\n </div>\\n\\n <!-- Footer actions -->\\n <div class=\\\"ax-flex ax-justify-end ax-gap-2\\\">\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"copyInfo()\\\" [text]=\\\"'Copy Info'\\\">\\n <ax-icon icon=\\\"fa-light fa-copy\\\"></ax-icon>\\n </ax-button>\\n @if (contact().website) {\\n <ax-button [look]=\\\"'blank'\\\" [text]=\\\"'Check Website'\\\" (onClick)=\\\"visitWebsite()\\\">\\n <ax-icon icon=\\\"fa-light fa-arrow-up-right-from-square\\\"></ax-icon>\\n </ax-button>\\n }\\n </div>\\n </div>\\n }\\n</div>\\n\", dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { 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: \"pipe\", type: i1.DatePipe, name: \"date\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-emergency-contact-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, AXButtonModule, AXDecoratorModule], host: {\n '[class]': '\"ax-block ax-rounded-lg ax-border ax-lightest-surface dark:ax-darker-surface ax-shadow-sm\"',\n }, template: \"<div class=\\\"ax-space-y-3 ax-py-4\\\">\\n <!-- Header -->\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-3 ax-flex-col\\\">\\n <div class=\\\"ax-flex ax-items-start ax-gap-3 ax-min-w-0 ax-px-4 ax-w-full\\\">\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-justify-center ax-w-10 ax-h-10 ax-rounded-md ax-lighter-surface dark:ax-surface\\\"\\n >\\n <ax-icon [icon]=\\\"categoryIcon()\\\" [style.color]=\\\"categoryColor()\\\"></ax-icon>\\n </div>\\n <div class=\\\"ax-min-w-0\\\">\\n <div class=\\\"ax-text-lg ax-font-semibold ax-text-default ax-truncate\\\">{{ contact().name }}</div>\\n @if (contact().shortName) {\\n <div class=\\\"ax-text-sm ax-text-muted ax-truncate\\\">{{ contact().shortName }}</div>\\n }\\n </div>\\n </div>\\n <div class=\\\"ax-w-full ax-border-t ax-border-lighter dark:ax-border-darker\\\"></div>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-sm ax-w-full ax-px-4\\\">\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"handleText()\\\" [disabled]=\\\"messageDisabled()\\\">\\n <ax-icon icon=\\\"fa-light fa-message\\\" class=\\\"ax-text-primary\\\"></ax-icon>\\n </ax-button>\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"handleCall()\\\" [disabled]=\\\"callDisabled()\\\">\\n <ax-icon icon=\\\"fa-light fa-phone\\\" class=\\\"ax-text-primary\\\"></ax-icon>\\n </ax-button>\\n </div>\\n <ax-button [look]=\\\"'blank'\\\" [text]=\\\"'More details'\\\" (onClick)=\\\"toggleExpanded()\\\">\\n <ax-icon [icon]=\\\"expanded() ? 'fa-light fa-chevron-up' : 'fa-light fa-chevron-down'\\\"></ax-icon>\\n </ax-button>\\n </div>\\n </div>\\n\\n <!-- Details -->\\n @if (expanded()) {\\n <div class=\\\"ax-px-6 ax-border-t ax-space-y-4 ax-pt-4 ax-border-lighter dark:ax-border-darker\\\">\\n <!-- Rowed details; only render when data exists -->\\n <div class=\\\"ax-grid ax-grid-cols-1 ax-gap-3\\\">\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\" *ngIf=\\\"true\\\">\\n <ax-icon icon=\\\"fa-light fa-building\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Company Name</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().name }}</div>\\n </div>\\n\\n @if (contact().phoneNumber || contact().shortName) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-phone\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Phone</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">\\n {{ contact().shortName || contact().phoneNumber }}\\n </div>\\n </div>\\n }\\n\\n @if (contact().email) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-envelope\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Email</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().email }}</div>\\n </div>\\n }\\n\\n @if (contact().website) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-globe\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Website</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-right\\\">\\n <a class=\\\"ax-text-accent ax-hover:underline\\\" [href]=\\\"contact().website\\\" target=\\\"_blank\\\">{{\\n contact().website\\n }}</a>\\n </div>\\n </div>\\n }\\n\\n @if (coverageText()) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-location-dot\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Coverage</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ coverageText() }}</div>\\n </div>\\n }\\n\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-wand-magic-sparkles\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Capabilities</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ capabilitiesText() }}</div>\\n </div>\\n\\n @if (contact().availability) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-clock\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Availability</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">{{ contact().availability }}</div>\\n </div>\\n }\\n\\n @if (contact().lastVerified) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\n <ax-icon icon=\\\"fa-light fa-badge-check\\\"></ax-icon>\\n <div class=\\\"ax-text-sm ax-text-muted\\\">Last Verified</div>\\n <div class=\\\"ax-flex-1 ax-text-sm ax-text-default ax-text-right\\\">\\n {{ contact().lastVerified | date }}\\n </div>\\n </div>\\n }\\n </div>\\n\\n <!-- Footer actions -->\\n <div class=\\\"ax-flex ax-justify-end ax-gap-2\\\">\\n <ax-button [look]=\\\"'blank'\\\" (onClick)=\\\"copyInfo()\\\" [text]=\\\"'Copy Info'\\\">\\n <ax-icon icon=\\\"fa-light fa-copy\\\"></ax-icon>\\n </ax-button>\\n @if (contact().website) {\\n <ax-button [look]=\\\"'blank'\\\" [text]=\\\"'Check Website'\\\" (onClick)=\\\"visitWebsite()\\\">\\n <ax-icon icon=\\\"fa-light fa-arrow-up-right-from-square\\\"></ax-icon>\\n </ax-button>\\n }\\n </div>\\n </div>\\n }\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3QtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZW1lcmdlbmN5LWNvbnRhY3RzL3V0aWwvZW1lcmdlbmN5LWNvbnRhY3QtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZW1lcmdlbmN5LWNvbnRhY3RzL3V0aWwvZW1lcmdlbmN5LWNvbnRhY3QtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBWTVGLE1BQU0sT0FBTyxnQ0FBZ0M7SUFUN0M7UUFVRSxZQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsa0RBQW1ELENBQUM7UUFFbEUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLG9EQUFDLENBQUM7UUFFekIsaUJBQVksR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFO1lBQzdDLE1BQU0sQ0FBQyxHQUFJLElBQUksQ0FBQyxPQUFPLEVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRCxPQUFPLENBQUMsRUFBRSxJQUFJLElBQUkseUJBQXlCLENBQUM7UUFDOUMsQ0FBQyx3REFBQyxDQUFDO1FBQ08s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QUNKLFNBQVMsRUFBRSw0RkFBNEY7cUJBQ3hHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhtLWVtZXJnZW5jeS1jb250YWN0LWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGVVcmw6ICcuL2VtZXJnZW5jeS1jb250YWN0LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBWEJ1dHRvbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzc10nOiAnXCJheC1ibG9jayBheC1yb3VuZGVkLWxnIGF4LWJvcmRlciBheC1saWdodGVzdC1zdXJmYWNlIGRhcms6YXgtZGFya2VyLXN1cmZhY2UgYXgtc2hhZG93LXNtXCInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBBWE1FbWVyZ2VuY3lDb250YWN0SXRlbUNvbXBvbmVudCB7XG4gIGNvbnRhY3QgPSBpbnB1dC5yZXF1aXJlZDxBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbD4oKTtcblxuICBwcm90ZWN0ZWQgZXhwYW5kZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBjYXRlZ29yeUljb24gPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IHtcbiAgICBjb25zdCBjID0gKHRoaXMuY29udGFjdCgpIGFzIGFueSk/LmNhdGVnb3JpZXM/LlswXTtcbiAgICByZXR1cm4gYz8uaWNvbiA/PyAnZmEtbGlnaHQgZmEtY2lyY2xlLWluZm8nO1xuICB9KTtcbiAgcHJvdGVjdGVkIGNhdGVnb3J5Q29sb3IgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IHtcbiAgICBjb25zdCBjID0gKHRoaXMuY29udGFjdCgpIGFzIGFueSk/LmNhdGVnb3JpZXM/LlswXTtcbiAgICByZXR1cm4gYz8uY29sb3IgPz8gJ2ZhLWxpZ2h0IGZhLWNpcmNsZS1pbmZvJztcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG1lc3NhZ2VEaXNhYmxlZCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHtcbiAgICBjb25zdCBjID0gdGhpcy5jb250YWN0KCk7XG4gICAgY29uc3Qgc21zTnVtYmVyID0gYy50ZXh0TnVtYmVyIHx8IGMucGhvbmVOdW1iZXI7XG4gICAgcmV0dXJuICEoYy5pc1RleHRDYXBhYmxlICYmICEhc21zTnVtYmVyKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGNhbGxEaXNhYmxlZCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+ICF0aGlzLmNvbnRhY3QoKS5waG9uZU51bWJlcik7XG5cbiAgcHJvdGVjdGVkIGNvdmVyYWdlVGV4dCA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4ge1xuICAgIGNvbnN0IGMgPSB0aGlzLmNvbnRhY3QoKTtcbiAgICBjb25zdCBjb3ZlcmFnZTogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoYy5pc05hdGlvbmFsKSBjb3ZlcmFnZS5wdXNoKCdOYXRpb25hbCcpO1xuICAgIGlmIChjLmlzUmVnaW9uYWwpIGNvdmVyYWdlLnB1c2goJ1JlZ2lvbmFsJyk7XG4gICAgaWYgKGMuaXNMb2NhbCkgY292ZXJhZ2UucHVzaCgnTG9jYWwnKTtcbiAgICByZXR1cm4gY292ZXJhZ2Uuam9pbignLCAnKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGNhcGFiaWxpdGllc1RleHQgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IHtcbiAgICBjb25zdCBjID0gdGhpcy5jb250YWN0KCk7XG4gICAgY29uc3QgY2Fwczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoYy5pc1RleHRDYXBhYmxlKSBjYXBzLnB1c2goJ1RleHQnKTtcbiAgICBpZiAoYy5pc1ZpZGVvQ2FsbENhcGFibGUpIGNhcHMucHVzaCgnVmlkZW8nKTtcbiAgICBpZiAoIWNhcHMubGVuZ3RoKSByZXR1cm4gJ1ZvaWNlIE9ubHknO1xuICAgIHJldHVybiBjYXBzLmpvaW4oJyAnKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHRvZ2dsZUV4cGFuZGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQudXBkYXRlKCh2KSA9PiAhdik7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ2FsbCgpOiB2b2lkIHtcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLmNvbnRhY3QoKS5waG9uZU51bWJlcjtcbiAgICBpZiAobnVtYmVyKSB7XG4gICAgICB3aW5kb3cub3BlbihgdGVsOiR7bnVtYmVyfWAsICdfc2VsZicpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVUZXh0KCk6IHZvaWQge1xuICAgIGNvbnN0IGMgPSB0aGlzLmNvbnRhY3QoKTtcbiAgICBjb25zdCBzbXNOdW1iZXIgPSBjLnRleHROdW1iZXIgfHwgYy5waG9uZU51bWJlcjtcbiAgICBpZiAoYy5pc1RleHRDYXBhYmxlICYmIHNtc051bWJlcikge1xuICAgICAgd2luZG93Lm9wZW4oYHNtczoke3Ntc051bWJlcn1gLCAnX3NlbGYnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmlzaXRXZWJzaXRlKCk6IHZvaWQge1xuICAgIGNvbnN0IHVybCA9IHRoaXMuY29udGFjdCgpLndlYnNpdGU7XG4gICAgaWYgKHVybCkge1xuICAgICAgd2luZG93Lm9wZW4odXJsLCAnX2JsYW5rJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGNvcHlJbmZvKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGMgPSB0aGlzLmNvbnRhY3QoKTtcbiAgICBjb25zdCBpbmZvID0ge1xuICAgICAgbmFtZTogYy5uYW1lLFxuICAgICAgcGhvbmU6IGMucGhvbmVOdW1iZXIsXG4gICAgICB0ZXh0OiBjLnRleHROdW1iZXIsXG4gICAgICBlbWFpbDogYy5lbWFpbCxcbiAgICAgIHdlYnNpdGU6IGMud2Vic2l0ZSxcbiAgICAgIGF2YWlsYWJpbGl0eTogYy5hdmFpbGFiaWxpdHksXG4gICAgICBjb3ZlcmFnZTogdGhpcy5jb3ZlcmFnZVRleHQoKSxcbiAgICAgIGNhcGFiaWxpdGllczogdGhpcy5jYXBhYmlsaXRpZXNUZXh0KCksXG4gICAgfTtcbiAgICB0cnkge1xuICAgICAgaWYgKG5hdmlnYXRvcj8uY2xpcGJvYXJkKSB7XG4gICAgICAgIGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KEpTT04uc3RyaW5naWZ5KGluZm8sIG51bGwsIDIpKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIGlnbm9yZVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXNwYWNlLXktMyBheC1weS00XCI+XG4gIDwhLS0gSGVhZGVyIC0tPlxuICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtZ2FwLTMgYXgtZmxleC1jb2xcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1zdGFydCBheC1nYXAtMyBheC1taW4tdy0wIGF4LXB4LTQgYXgtdy1mdWxsXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1ib3JkZXIgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LXctMTAgYXgtaC0xMCBheC1yb3VuZGVkLW1kIGF4LWxpZ2h0ZXItc3VyZmFjZSBkYXJrOmF4LXN1cmZhY2VcIlxuICAgICAgPlxuICAgICAgICA8YXgtaWNvbiBbaWNvbl09XCJjYXRlZ29yeUljb24oKVwiIFtzdHlsZS5jb2xvcl09XCJjYXRlZ29yeUNvbG9yKClcIj48L2F4LWljb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1taW4tdy0wXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LWxnIGF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1kZWZhdWx0IGF4LXRydW5jYXRlXCI+e3sgY29udGFjdCgpLm5hbWUgfX08L2Rpdj5cbiAgICAgICAgQGlmIChjb250YWN0KCkuc2hvcnROYW1lKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQtc20gYXgtdGV4dC1tdXRlZCBheC10cnVuY2F0ZVwiPnt7IGNvbnRhY3QoKS5zaG9ydE5hbWUgfX08L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LXctZnVsbCBheC1ib3JkZXItdCBheC1ib3JkZXItbGlnaHRlciBkYXJrOmF4LWJvcmRlci1kYXJrZXJcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LXNtIGF4LXctZnVsbCBheC1weC00XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiBbbG9va109XCInYmxhbmsnXCIgKG9uQ2xpY2spPVwiaGFuZGxlVGV4dCgpXCIgW2Rpc2FibGVkXT1cIm1lc3NhZ2VEaXNhYmxlZCgpXCI+XG4gICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLW1lc3NhZ2VcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeVwiPjwvYXgtaWNvbj5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIDxheC1idXR0b24gW2xvb2tdPVwiJ2JsYW5rJ1wiIChvbkNsaWNrKT1cImhhbmRsZUNhbGwoKVwiIFtkaXNhYmxlZF09XCJjYWxsRGlzYWJsZWQoKVwiPlxuICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1waG9uZVwiIGNsYXNzPVwiYXgtdGV4dC1wcmltYXJ5XCI+PC9heC1pY29uPlxuICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGF4LWJ1dHRvbiBbbG9va109XCInYmxhbmsnXCIgW3RleHRdPVwiJ01vcmUgZGV0YWlscydcIiAob25DbGljayk9XCJ0b2dnbGVFeHBhbmRlZCgpXCI+XG4gICAgICAgIDxheC1pY29uIFtpY29uXT1cImV4cGFuZGVkKCkgPyAnZmEtbGlnaHQgZmEtY2hldnJvbi11cCcgOiAnZmEtbGlnaHQgZmEtY2hldnJvbi1kb3duJ1wiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIERldGFpbHMgLS0+XG4gIEBpZiAoZXhwYW5kZWQoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJheC1weC02IGF4LWJvcmRlci10IGF4LXNwYWNlLXktNCBheC1wdC00IGF4LWJvcmRlci1saWdodGVyIGRhcms6YXgtYm9yZGVyLWRhcmtlclwiPlxuICAgICAgPCEtLSBSb3dlZCBkZXRhaWxzOyBvbmx5IHJlbmRlciB3aGVuIGRhdGEgZXhpc3RzIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTEgYXgtZ2FwLTNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCIgKm5nSWY9XCJ0cnVlXCI+XG4gICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWJ1aWxkaW5nXCI+PC9heC1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWRcIj5Db21wYW55IE5hbWU8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1kZWZhdWx0IGF4LXRleHQtcmlnaHRcIj57eyBjb250YWN0KCkubmFtZSB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAaWYgKGNvbnRhY3QoKS5waG9uZU51bWJlciB8fCBjb250YWN0KCkuc2hvcnROYW1lKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtcGhvbmVcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1zbSBheC10ZXh0LW11dGVkXCI+UGhvbmU8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtdGV4dC1zbSBheC10ZXh0LWRlZmF1bHQgYXgtdGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgICB7eyBjb250YWN0KCkuc2hvcnROYW1lIHx8IGNvbnRhY3QoKS5waG9uZU51bWJlciB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGNvbnRhY3QoKS5lbWFpbCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWVudmVsb3BlXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQtc20gYXgtdGV4dC1tdXRlZFwiPkVtYWlsPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1kZWZhdWx0IGF4LXRleHQtcmlnaHRcIj57eyBjb250YWN0KCkuZW1haWwgfX08L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoY29udGFjdCgpLndlYnNpdGUpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1nbG9iZVwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWRcIj5XZWJzaXRlPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cImF4LXRleHQtYWNjZW50IGF4LWhvdmVyOnVuZGVybGluZVwiIFtocmVmXT1cImNvbnRhY3QoKS53ZWJzaXRlXCIgdGFyZ2V0PVwiX2JsYW5rXCI+e3tcbiAgICAgICAgICAgICAgICBjb250YWN0KCkud2Vic2l0ZVxuICAgICAgICAgICAgICB9fTwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChjb3ZlcmFnZVRleHQoKSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLWxvY2F0aW9uLWRvdFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWRcIj5Db3ZlcmFnZTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXgtMSBheC10ZXh0LXNtIGF4LXRleHQtZGVmYXVsdCBheC10ZXh0LXJpZ2h0XCI+e3sgY292ZXJhZ2VUZXh0KCkgfX08L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS13YW5kLW1hZ2ljLXNwYXJrbGVzXCI+PC9heC1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWRcIj5DYXBhYmlsaXRpZXM8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1kZWZhdWx0IGF4LXRleHQtcmlnaHRcIj57eyBjYXBhYmlsaXRpZXNUZXh0KCkgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgQGlmIChjb250YWN0KCkuYXZhaWxhYmlsaXR5KSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY2xvY2tcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1zbSBheC10ZXh0LW11dGVkXCI+QXZhaWxhYmlsaXR5PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1kZWZhdWx0IGF4LXRleHQtcmlnaHRcIj57eyBjb250YWN0KCkuYXZhaWxhYmlsaXR5IH19PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGNvbnRhY3QoKS5sYXN0VmVyaWZpZWQpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1iYWRnZS1jaGVja1wiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWRcIj5MYXN0IFZlcmlmaWVkPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LXRleHQtc20gYXgtdGV4dC1kZWZhdWx0IGF4LXRleHQtcmlnaHRcIj5cbiAgICAgICAgICAgICAge3sgY29udGFjdCgpLmxhc3RWZXJpZmllZCB8IGRhdGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLSBGb290ZXIgYWN0aW9ucyAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWp1c3RpZnktZW5kIGF4LWdhcC0yXCI+XG4gICAgICAgIDxheC1idXR0b24gW2xvb2tdPVwiJ2JsYW5rJ1wiIChvbkNsaWNrKT1cImNvcHlJbmZvKClcIiBbdGV4dF09XCInQ29weSBJbmZvJ1wiPlxuICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1jb3B5XCI+PC9heC1pY29uPlxuICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgQGlmIChjb250YWN0KCkud2Vic2l0ZSkge1xuICAgICAgICAgIDxheC1idXR0b24gW2xvb2tdPVwiJ2JsYW5rJ1wiIFt0ZXh0XT1cIidDaGVjayBXZWJzaXRlJ1wiIChvbkNsaWNrKT1cInZpc2l0V2Vic2l0ZSgpXCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtYXJyb3ctdXAtcmlnaHQtZnJvbS1zcXVhcmVcIj48L2F4LWljb24+XG4gICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPThemeLayoutBlockComponent } from '@acorex/platform/layout/components';\nimport { AXPPageLayoutBase, AXPPageLayoutBaseComponent, AXPPageLayoutComponent } from '@acorex/platform/layout/views';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\nimport { AXMEmergencyContactService } from '../../entities/emergency-contact/emergency-contact.service';\nimport { AXMEmergencyContactItemComponent } from './util/emergency-contact-item.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/decorators\";\nimport * as i2 from \"@acorex/components/loading\";\nimport * as i3 from \"@acorex/core/translation\";\nexport class AXMEmergencyContactsPageComponent extends AXPPageLayoutBaseComponent {\n constructor() {\n super(...arguments);\n //#region ---- Services & Dependencies ----\n this.emergencyContactService = inject(AXMEmergencyContactService);\n //#endregion\n //#region ---- Class Properties ----\n this.allContacts = signal([], ...(ngDevMode ? [{ debugName: \"allContacts\" }] : []));\n this.loading = signal(false, ...(ngDevMode ? [{ debugName: \"loading\" }] : []));\n this.isLargeScreen = signal(true, ...(ngDevMode ? [{ debugName: \"isLargeScreen\" }] : []));\n this.expandedContactIds = signal(new Set(), ...(ngDevMode ? [{ debugName: \"expandedContactIds\" }] : []));\n //#endregion\n //#region ---- Computed Properties ----\n this.quickDialContacts = computed(() => this.allContacts()\n .filter((contact) => contact.isQuickDial && contact.isActive)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"quickDialContacts\" }] : []));\n this.dashboardContacts = computed(() => this.allContacts()\n .filter((contact) => contact.showOnDashboard && contact.isActive && !contact.isQuickDial)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"dashboardContacts\" }] : []));\n this.allActiveContacts = computed(() => this.allContacts()\n .filter((contact) => contact.isActive)\n .sort((a, b) => (a.priority || 0) - (b.priority || 0)), ...(ngDevMode ? [{ debugName: \"allActiveContacts\" }] : []));\n // Fallback: show all contacts if filtered lists are empty\n this.displayContacts = computed(() => {\n const allContacts = this.allContacts();\n // If we have contacts but none are marked as active, show all\n if (allContacts.length > 0 && this.allActiveContacts().length === 0) {\n return allContacts.sort((a, b) => (a.priority || 0) - (b.priority || 0));\n }\n return this.allActiveContacts();\n }, ...(ngDevMode ? [{ debugName: \"displayContacts\" }] : []));\n }\n //#endregion\n onResize() {\n this.checkScreenSize();\n }\n checkScreenSize() {\n this.isLargeScreen.set(window.innerWidth >= 768);\n }\n //#region ---- Lifecycle Methods ----\n async ngOnInit() {\n super.ngOnInit();\n this.checkScreenSize();\n await this.loadEmergencyContacts();\n }\n //#endregion\n //#region ---- Data Loading ----\n async loadEmergencyContacts() {\n this.loading.set(true);\n try {\n const result = await this.emergencyContactService.query({\n skip: 0,\n take: 1000,\n sort: [{ field: 'priority', dir: 'asc' }],\n });\n this.allContacts.set(result.items);\n }\n catch (error) {\n console.error('Failed to load emergency contacts:', error);\n }\n finally {\n this.loading.set(false);\n }\n }\n //#endregion\n //#region ---- UI Handlers ----\n toggleExpanded(contactId) {\n this.expandedContactIds.update((current) => {\n const next = new Set(current);\n if (next.has(contactId)) {\n next.delete(contactId);\n }\n else {\n next.add(contactId);\n }\n return next;\n });\n }\n isExpanded(contactId) {\n return this.expandedContactIds().has(contactId);\n }\n handleCallContact(contact) {\n if (contact.phoneNumber) {\n window.open(`tel:${contact.phoneNumber}`, '_self');\n }\n }\n handleTextContact(contact) {\n const textNumber = contact.textNumber || contact.phoneNumber;\n if (textNumber) {\n window.open(`sms:${textNumber}`, '_self');\n }\n }\n handleVisitWebsite(contact) {\n if (contact.website) {\n window.open(contact.website, '_blank');\n }\n }\n async handleCopyNumber(contact) {\n if (contact.phoneNumber && navigator.clipboard) {\n try {\n await navigator.clipboard.writeText(contact.phoneNumber);\n // You could add a toast notification here\n }\n catch (error) {\n console.error('Failed to copy number:', error);\n }\n }\n }\n handleRefresh() {\n this.loadEmergencyContacts();\n }\n getPrimaryAction(contact) {\n if (contact.isTextCapable && !!contact.textNumber && !contact.requiresConfirmation) {\n return 'text';\n }\n return 'call';\n }\n performPrimaryAction(contact) {\n const action = this.getPrimaryAction(contact);\n if (action === 'text') {\n this.handleTextContact(contact);\n }\n else {\n this.handleCallContact(contact);\n }\n }\n getPrimaryActionLabel(contact) {\n return this.getPrimaryAction(contact) === 'text' ? 'Text Now' : 'Call Now';\n }\n getPrimaryActionColor(contact) {\n return this.getPrimaryAction(contact) === 'text' ? 'primary' : 'danger';\n }\n //#endregion\n //#region ---- Utility Methods ----\n getCoverageText(contact) {\n const coverage = [];\n if (contact.isNational)\n coverage.push('National');\n if (contact.isRegional)\n coverage.push('Regional');\n if (contact.isLocal)\n coverage.push('Local');\n return coverage.join(', ') || 'Unknown';\n }\n getCapabilitiesText(contact) {\n const capabilities = [];\n if (contact.isTextCapable)\n capabilities.push('Text');\n if (contact.isVideoCallCapable)\n capabilities.push('Video');\n return capabilities.join(', ') || 'Voice Only';\n }\n getPriorityColor(priority) {\n if (priority <= 1)\n return 'danger';\n if (priority <= 3)\n return 'warning';\n if (priority <= 5)\n return 'primary';\n return 'secondary';\n }\n //#endregion\n //#region ---- Page Metadata Overrides ----\n async getPageTitle() {\n return 'Emergency Contacts & Quick Dial';\n }\n async getPageDescription() {\n return 'Access emergency contacts and important numbers quickly';\n }\n async getPageBreadcrumbs() {\n return [\n {\n title: 'Contact Management',\n },\n ];\n }\n async getSecondaryMenuItems() {\n return [\n {\n title: 'Refresh',\n icon: 'fa-light fa-refresh',\n color: 'secondary',\n command: {\n name: 'refresh',\n },\n },\n ];\n }\n async execute(command) {\n if (command.name === 'refresh') {\n this.handleRefresh();\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.6\", type: AXMEmergencyContactsPageComponent, isStandalone: true, selector: \"axm-emergency-contacts-page\", host: { listeners: { \"window:resize\": \"onResize()\" } }, providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEmergencyContactsPageComponent,\n },\n ], 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 <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\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 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 dashboardContacts(); track contact.id) {\\n <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\n }\\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-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 displayContacts(); track contact.id) {\\n <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\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:1200px;margin:0 auto;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){axm-emergency-contacts-page .ax-space-y-6.ax-p-4{padding-left:1.5rem;padding-right:1.5rem}}axm-emergency-contacts-page h2{margin-bottom:1.25rem;color:var(--ax-sys-color-primary);border-bottom:1px solid var(--ax-sys-color-border);padding-bottom:.5rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.5rem}@media (min-width: 768px){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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant);min-height:140px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(--priority-color, var(--ax-sys-color-primary))}axm-emergency-contacts-page .emergency-contact-quick-dial h3{color:var(--ax-sys-color-on-surface);margin-bottom:.125rem;font-size:1rem;line-height:1.5rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial h3{font-size:1.125rem;line-height:1.75rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{min-height:30px}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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(-1px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{color:var(--ax-sys-color-on-surface);font-size:1.125rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem}}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: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i1.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"ngmodule\", type: AXLoadingModule }, { kind: \"component\", type: i2.AXLoadingComponent, selector: \"ax-loading\", inputs: [\"visible\", \"type\", \"context\"], outputs: [\"visibleChange\"] }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i3.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: \"component\", type: AXMEmergencyContactItemComponent, selector: \"axm-emergency-contact-item\", inputs: [\"contact\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEmergencyContactsPageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-emergency-contacts-page', imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBadgeModule,\n AXTranslationModule,\n AXFormatModule,\n AXPPageLayoutComponent,\n AXPThemeLayoutBlockComponent,\n AXMEmergencyContactItemComponent,\n ], host: {\n '(window:resize)': 'onResize()',\n }, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEmergencyContactsPageComponent,\n },\n ], 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 <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\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 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 dashboardContacts(); track contact.id) {\\n <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\n }\\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-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 displayContacts(); track contact.id) {\\n <axm-emergency-contact-item [contact]=\\\"contact\\\"></axm-emergency-contact-item>\\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:1200px;margin:0 auto;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){axm-emergency-contacts-page .ax-space-y-6.ax-p-4{padding-left:1.5rem;padding-right:1.5rem}}axm-emergency-contacts-page h2{margin-bottom:1.25rem;color:var(--ax-sys-color-primary);border-bottom:1px solid var(--ax-sys-color-border);padding-bottom:.5rem}axm-emergency-contacts-page h2 ax-icon{margin-right:.5rem}@media (min-width: 768px){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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant);min-height:140px}axm-emergency-contacts-page .emergency-contact-quick-dial:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(--priority-color, var(--ax-sys-color-primary))}axm-emergency-contacts-page .emergency-contact-quick-dial h3{color:var(--ax-sys-color-on-surface);margin-bottom:.125rem;font-size:1rem;line-height:1.5rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial h3{font-size:1.125rem;line-height:1.75rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.75rem;line-height:1rem;font-weight:500}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{font-size:.875rem;line-height:1.25rem}}axm-emergency-contacts-page .emergency-contact-quick-dial .ax-button{min-height:30px}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:.2s;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));animation-duration:.2s;border:1px solid var(--ax-sys-color-outline-variant)}axm-emergency-contacts-page .emergency-contact-detailed:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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(-1px);border-color:var(--ax-sys-color-primary)}axm-emergency-contacts-page .emergency-contact-detailed h3{color:var(--ax-sys-color-on-surface);font-size:1.125rem;line-height:1.75rem;font-weight:600}@media (min-width: 768px){axm-emergency-contacts-page .emergency-contact-detailed h3{font-size:1.25rem;line-height:1.75rem}}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\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1lcmdlbmN5LWNvbnRhY3RzLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2VtZXJnZW5jeS1jb250YWN0cy9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGFjdC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZW1lcmdlbmN5LWNvbnRhY3RzL2VtZXJnZW5jeS1jb250YWN0cy1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsMEJBQTBCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUV4RyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7QUE2QjNGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSwwQkFBMEI7SUEzQmpGOztRQTRCRSwrQ0FBK0M7UUFFdkMsNEJBQXVCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFFckUsWUFBWTtRQUVaLHdDQUF3QztRQUU5QixnQkFBVyxHQUFHLE1BQU0sQ0FBb0QsRUFBRSx1REFBQyxDQUFDO1FBQzVFLFlBQU8sR0FBRyxNQUFNLENBQUMsS0FBSyxtREFBQyxDQUFDO1FBQ3hCLGtCQUFhLEdBQUcsTUFBTSxDQUFDLElBQUkseURBQUMsQ0FBQztRQUM3Qix1QkFBa0IsR0FBRyxNQUFNLENBQWMsSUFBSSxHQUFHLEVBQUUsOERBQUMsQ0FBQztRQUU5RCxZQUFZO1FBRVosMkNBQTJDO1FBRWpDLHNCQUFpQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLFdBQVcsRUFBRTthQUNmLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDO2FBQzVELElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsNkRBQ3pELENBQUM7UUFFUSxzQkFBaUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQzFDLElBQUksQ0FBQyxXQUFXLEVBQUU7YUFDZixNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxlQUFlLElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7YUFDeEYsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsQ0FBQyw2REFDekQsQ0FBQztRQUVRLHNCQUFpQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLFdBQVcsRUFBRTthQUNmLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQzthQUNyQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLDZEQUN6RCxDQUFDO1FBRUYsMERBQTBEO1FBQ2hELG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN4QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFFdkMsOERBQThEO1lBQzlELElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNwRSxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0UsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDbEMsQ0FBQywyREFBQyxDQUFDO0tBd0xKO0lBdExDLFlBQVk7SUFFWixRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELHlDQUF5QztJQUVoQyxLQUFLLENBQUMsUUFBUTtRQUNyQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELFlBQVk7SUFFWixvQ0FBb0M7SUFFNUIsS0FBSyxDQUFDLHFCQUFxQjtRQUNqQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUM7Z0JBQ3RELElBQUksRUFBRSxDQUFDO2dCQUNQLElBQUksRUFBRSxJQUFJO2dCQUNWLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7YUFDMUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVk7SUFFWixtQ0FBbUM7SUFFekIsY0FBYyxDQUFDLFNBQWlCO1FBQ3hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN6QyxNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN6QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QixDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxVQUFVLENBQUMsU0FBaUI7UUFDcEMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVTLGlCQUFpQixDQUFDLE9BQXdEO1FBQ2xGLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxPQUFPLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDckQsQ0FBQztJQUNILENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxPQUF3RDtRQUNsRixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDN0QsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxVQUFVLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0gsQ0FBQztJQUVTLGtCQUFrQixDQUFDLE9BQXdEO1FBQ25GLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVTLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxPQUF3RDtRQUN2RixJQUFJLE9BQU8sQ0FBQyxXQUFXLElBQUksU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQztnQkFDSCxNQUFNLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDekQsMENBQTBDO1lBQzVDLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDakQsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRVMsYUFBYTtRQUNyQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRVMsZ0JBQWdCLENBQUMsT0FBd0Q7UUFDakYsSUFBSSxPQUFPLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDbkYsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFUyxvQkFBb0IsQ0FBQyxPQUF3RDtRQUNyRixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRVMscUJBQXFCLENBQUMsT0FBd0Q7UUFDdEYsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUM3RSxDQUFDO0lBRVMscUJBQXFCLENBQUMsT0FBd0Q7UUFDdEYsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUMxRSxDQUFDO0lBRUQsWUFBWTtJQUVaLHVDQUF1QztJQUU3QixlQUFlLENBQUMsT0FBd0Q7UUFDaEYsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksT0FBTyxDQUFDLFVBQVU7WUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksT0FBTyxDQUFDLFVBQVU7WUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksT0FBTyxDQUFDLE9BQU87WUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUVTLG1CQUFtQixDQUFDLE9BQXdEO1FBQ3BGLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLE9BQU8sQ0FBQyxhQUFhO1lBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRCxJQUFJLE9BQU8sQ0FBQyxrQkFBa0I7WUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNELE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUM7SUFDakQsQ0FBQztJQUVTLGdCQUFnQixDQUFDLFFBQWdCO1FBQ3pDLElBQUksUUFBUSxJQUFJLENBQUM7WUFBRSxPQUFPLFFBQVEsQ0FBQztRQUNuQyxJQUFJLFFBQVEsSUFBSSxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDcEMsSUFBSSxRQUFRLElBQUksQ0FBQztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQ3BDLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxZQUFZO0lBRVosK0NBQStDO0lBRTVCLEtBQUssQ0FBQyxZQUFZO1FBQ25DLE9BQU8saUNBQWlDLENBQUM7SUFDM0MsQ0FBQztJQUVrQixLQUFLLENBQUMsa0JBQWtCO1FBQ3pDLE9BQU8seURBQXlELENBQUM7SUFDbkUsQ0FBQztJQUVRLEtBQUssQ0FBQyxrQkFBa0I7UUFDL0IsT0FBTztZQUNMO2dCQUNFLEtBQUssRUFBRSxvQkFBb0I7YUFDNUI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVRLEtBQUssQ0FBQyxxQkFBcUI7UUFDbEMsT0FBTztZQUNMO2dCQUNFLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUscUJBQXFCO2dCQUMzQixLQUFLLEVBQUUsV0FBVztnQkFDbEIsT0FBTyxFQUFFO29CQUNQLElBQUksRUFBRSxTQUFTO2lCQUNoQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFUSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQVk7UUFDakMsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQzs4R0FuT1UsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsa0lBUGpDO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLGlDQUFpQzthQUMvQztTQUNGLGlEQ3hDSCw4K0ZBaUVBLDRqUkQvQ0ksWUFBWSw4QkFDWixjQUFjLDhCQUNkLGlCQUFpQiwrSEFDakIsZUFBZSw4S0FDZixhQUFhLDhCQUNiLG1CQUFtQiw4R0FDbkIsY0FBYywrQkFDZCxzQkFBc0IsNERBQ3RCLDRCQUE0QixnaUJBQzVCLGdDQUFnQzs7MkZBZXZCLGlDQUFpQztrQkEzQjdDLFNBQVM7K0JBQ0UsNkJBQTZCLFdBQzlCO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0Qiw0QkFBNEI7d0JBQzVCLGdDQUFnQztxQkFDakMsUUFHSzt3QkFDSixpQkFBaUIsRUFBRSxZQUFZO3FCQUNoQyxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLG1DQUFtQzt5QkFDL0M7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYTG9hZGluZ01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sb2FkaW5nJztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUEFjdGlvbk1lbnVJdGVtLCBBWFBCcmVhZGNydW1iSXRlbSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBUaGVtZUxheW91dEJsb2NrQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBQYWdlTGF5b3V0QmFzZSwgQVhQUGFnZUxheW91dEJhc2VDb21wb25lbnQsIEFYUFBhZ2VMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC92aWV3cyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1FbWVyZ2VuY3lDb250YWN0U2VydmljZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzL2VtZXJnZW5jeS1jb250YWN0L2VtZXJnZW5jeS1jb250YWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwgfSBmcm9tICcuLi8uLi9lbnRpdGllcy9lbWVyZ2VuY3ktY29udGFjdC9lbWVyZ2VuY3ktY29udGFjdC50eXBlcyc7XG5pbXBvcnQgeyBBWE1FbWVyZ2VuY3lDb250YWN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdXRpbC9lbWVyZ2VuY3ktY29udGFjdC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4bS1lbWVyZ2VuY3ktY29udGFjdHMtcGFnZScsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYQmFkZ2VNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgICBBWFBQYWdlTGF5b3V0Q29tcG9uZW50LFxuICAgIEFYUFRoZW1lTGF5b3V0QmxvY2tDb21wb25lbnQsXG4gICAgQVhNRW1lcmdlbmN5Q29udGFjdEl0ZW1Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9lbWVyZ2VuY3ktY29udGFjdHMtcGFnZS5jb21wb25lbnQuc2NzcycsXG4gIGhvc3Q6IHtcbiAgICAnKHdpbmRvdzpyZXNpemUpJzogJ29uUmVzaXplKCknLFxuICB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQUGFnZUxheW91dEJhc2UsXG4gICAgICB1c2VFeGlzdGluZzogQVhNRW1lcmdlbmN5Q29udGFjdHNQYWdlQ29tcG9uZW50LFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUVtZXJnZW5jeUNvbnRhY3RzUGFnZUNvbXBvbmVudCBleHRlbmRzIEFYUFBhZ2VMYXlvdXRCYXNlQ29tcG9uZW50IHtcbiAgLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlcyAmIERlcGVuZGVuY2llcyAgIC0tLS1cblxuICBwcml2YXRlIGVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlID0gaW5qZWN0KEFYTUVtZXJnZW5jeUNvbnRhY3RTZXJ2aWNlKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIENsYXNzIFByb3BlcnRpZXMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIGFsbENvbnRhY3RzID0gc2lnbmFsPEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsW10+KFtdKTtcbiAgcHJvdGVjdGVkIGxvYWRpbmcgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgaXNMYXJnZVNjcmVlbiA9IHNpZ25hbCh0cnVlKTtcbiAgcHJvdGVjdGVkIGV4cGFuZGVkQ29udGFjdElkcyA9IHNpZ25hbDxTZXQ8c3RyaW5nPj4obmV3IFNldCgpKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIENvbXB1dGVkIFByb3BlcnRpZXMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIHF1aWNrRGlhbENvbnRhY3RzID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLmFsbENvbnRhY3RzKClcbiAgICAgIC5maWx0ZXIoKGNvbnRhY3QpID0+IGNvbnRhY3QuaXNRdWlja0RpYWwgJiYgY29udGFjdC5pc0FjdGl2ZSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiAoYS5wcmlvcml0eSB8fCAwKSAtIChiLnByaW9yaXR5IHx8IDApKSxcbiAgKTtcblxuICBwcm90ZWN0ZWQgZGFzaGJvYXJkQ29udGFjdHMgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuYWxsQ29udGFjdHMoKVxuICAgICAgLmZpbHRlcigoY29udGFjdCkgPT4gY29udGFjdC5zaG93T25EYXNoYm9hcmQgJiYgY29udGFjdC5pc0FjdGl2ZSAmJiAhY29udGFjdC5pc1F1aWNrRGlhbClcbiAgICAgIC5zb3J0KChhLCBiKSA9PiAoYS5wcmlvcml0eSB8fCAwKSAtIChiLnByaW9yaXR5IHx8IDApKSxcbiAgKTtcblxuICBwcm90ZWN0ZWQgYWxsQWN0aXZlQ29udGFjdHMgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuYWxsQ29udGFjdHMoKVxuICAgICAgLmZpbHRlcigoY29udGFjdCkgPT4gY29udGFjdC5pc0FjdGl2ZSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiAoYS5wcmlvcml0eSB8fCAwKSAtIChiLnByaW9yaXR5IHx8IDApKSxcbiAgKTtcblxuICAvLyBGYWxsYmFjazogc2hvdyBhbGwgY29udGFjdHMgaWYgZmlsdGVyZWQgbGlzdHMgYXJlIGVtcHR5XG4gIHByb3RlY3RlZCBkaXNwbGF5Q29udGFjdHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYWxsQ29udGFjdHMgPSB0aGlzLmFsbENvbnRhY3RzKCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGNvbnRhY3RzIGJ1dCBub25lIGFyZSBtYXJrZWQgYXMgYWN0aXZlLCBzaG93IGFsbFxuICAgIGlmIChhbGxDb250YWN0cy5sZW5ndGggPiAwICYmIHRoaXMuYWxsQWN0aXZlQ29udGFjdHMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBhbGxDb250YWN0cy5zb3J0KChhLCBiKSA9PiAoYS5wcmlvcml0eSB8fCAwKSAtIChiLnByaW9yaXR5IHx8IDApKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5hbGxBY3RpdmVDb250YWN0cygpO1xuICB9KTtcblxuICAvLyNlbmRyZWdpb25cblxuICBvblJlc2l6ZSgpIHtcbiAgICB0aGlzLmNoZWNrU2NyZWVuU2l6ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1NjcmVlblNpemUoKSB7XG4gICAgdGhpcy5pc0xhcmdlU2NyZWVuLnNldCh3aW5kb3cuaW5uZXJXaWR0aCA+PSA3NjgpO1xuICB9XG5cbiAgLy8jcmVnaW9uIC0tLS0gICBMaWZlY3ljbGUgTWV0aG9kcyAgIC0tLS1cblxuICBvdmVycmlkZSBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuY2hlY2tTY3JlZW5TaXplKCk7XG4gICAgYXdhaXQgdGhpcy5sb2FkRW1lcmdlbmN5Q29udGFjdHMoKTtcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgRGF0YSBMb2FkaW5nICAgLS0tLVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZEVtZXJnZW5jeUNvbnRhY3RzKCkge1xuICAgIHRoaXMubG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZW1lcmdlbmN5Q29udGFjdFNlcnZpY2UucXVlcnkoe1xuICAgICAgICBza2lwOiAwLFxuICAgICAgICB0YWtlOiAxMDAwLFxuICAgICAgICBzb3J0OiBbeyBmaWVsZDogJ3ByaW9yaXR5JywgZGlyOiAnYXNjJyB9XSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5hbGxDb250YWN0cy5zZXQocmVzdWx0Lml0ZW1zKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgZW1lcmdlbmN5IGNvbnRhY3RzOicsIGVycm9yKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5sb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBVSSBIYW5kbGVycyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgdG9nZ2xlRXhwYW5kZWQoY29udGFjdElkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmV4cGFuZGVkQ29udGFjdElkcy51cGRhdGUoKGN1cnJlbnQpID0+IHtcbiAgICAgIGNvbnN0IG5leHQgPSBuZXcgU2V0KGN1cnJlbnQpO1xuICAgICAgaWYgKG5leHQuaGFzKGNvbnRhY3RJZCkpIHtcbiAgICAgICAgbmV4dC5kZWxldGUoY29udGFjdElkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5leHQuYWRkKGNvbnRhY3RJZCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc0V4cGFuZGVkKGNvbnRhY3RJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZXhwYW5kZWRDb250YWN0SWRzKCkuaGFzKGNvbnRhY3RJZCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ2FsbENvbnRhY3QoY29udGFjdDogQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwpIHtcbiAgICBpZiAoY29udGFjdC5waG9uZU51bWJlcikge1xuICAgICAgd2luZG93Lm9wZW4oYHRlbDoke2NvbnRhY3QucGhvbmVOdW1iZXJ9YCwgJ19zZWxmJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVRleHRDb250YWN0KGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKSB7XG4gICAgY29uc3QgdGV4dE51bWJlciA9IGNvbnRhY3QudGV4dE51bWJlciB8fCBjb250YWN0LnBob25lTnVtYmVyO1xuICAgIGlmICh0ZXh0TnVtYmVyKSB7XG4gICAgICB3aW5kb3cub3Blbihgc21zOiR7dGV4dE51bWJlcn1gLCAnX3NlbGYnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlVmlzaXRXZWJzaXRlKGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKSB7XG4gICAgaWYgKGNvbnRhY3Qud2Vic2l0ZSkge1xuICAgICAgd2luZG93Lm9wZW4oY29udGFjdC53ZWJzaXRlLCAnX2JsYW5rJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZUNvcHlOdW1iZXIoY29udGFjdDogQVhNQ29udGFjdE1hbmFnZW1lbnRFbWVyZ2VuY3lDb250YWN0RW50aXR5TW9kZWwpIHtcbiAgICBpZiAoY29udGFjdC5waG9uZU51bWJlciAmJiBuYXZpZ2F0b3IuY2xpcGJvYXJkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChjb250YWN0LnBob25lTnVtYmVyKTtcbiAgICAgICAgLy8gWW91IGNvdWxkIGFkZCBhIHRvYXN0IG5vdGlmaWNhdGlvbiBoZXJlXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBudW1iZXI6JywgZXJyb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVSZWZyZXNoKCkge1xuICAgIHRoaXMubG9hZEVtZXJnZW5jeUNvbnRhY3RzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UHJpbWFyeUFjdGlvbihjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCk6ICdjYWxsJyB8ICd0ZXh0JyB7XG4gICAgaWYgKGNvbnRhY3QuaXNUZXh0Q2FwYWJsZSAmJiAhIWNvbnRhY3QudGV4dE51bWJlciAmJiAhY29udGFjdC5yZXF1aXJlc0NvbmZpcm1hdGlvbikge1xuICAgICAgcmV0dXJuICd0ZXh0JztcbiAgICB9XG4gICAgcmV0dXJuICdjYWxsJztcbiAgfVxuXG4gIHByb3RlY3RlZCBwZXJmb3JtUHJpbWFyeUFjdGlvbihjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCk6IHZvaWQge1xuICAgIGNvbnN0IGFjdGlvbiA9IHRoaXMuZ2V0UHJpbWFyeUFjdGlvbihjb250YWN0KTtcbiAgICBpZiAoYWN0aW9uID09PSAndGV4dCcpIHtcbiAgICAgIHRoaXMuaGFuZGxlVGV4dENvbnRhY3QoY29udGFjdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGFuZGxlQ2FsbENvbnRhY3QoY29udGFjdCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldFByaW1hcnlBY3Rpb25MYWJlbChjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJpbWFyeUFjdGlvbihjb250YWN0KSA9PT0gJ3RleHQnID8gJ1RleHQgTm93JyA6ICdDYWxsIE5vdyc7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UHJpbWFyeUFjdGlvbkNvbG9yKGNvbnRhY3Q6IEFYTUNvbnRhY3RNYW5hZ2VtZW50RW1lcmdlbmN5Q29udGFjdEVudGl0eU1vZGVsKTogJ3ByaW1hcnknIHwgJ2Rhbmdlcicge1xuICAgIHJldHVybiB0aGlzLmdldFByaW1hcnlBY3Rpb24oY29udGFjdCkgPT09ICd0ZXh0JyA/ICdwcmltYXJ5JyA6ICdkYW5nZXInO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBVdGlsaXR5IE1ldGhvZHMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIGdldENvdmVyYWdlVGV4dChjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCk6IHN0cmluZyB7XG4gICAgY29uc3QgY292ZXJhZ2UgPSBbXTtcbiAgICBpZiAoY29udGFjdC5pc05hdGlvbmFsKSBjb3ZlcmFnZS5wdXNoKCdOYXRpb25hbCcpO1xuICAgIGlmIChjb250YWN0LmlzUmVnaW9uYWwpIGNvdmVyYWdlLnB1c2goJ1JlZ2lvbmFsJyk7XG4gICAgaWYgKGNvbnRhY3QuaXNMb2NhbCkgY292ZXJhZ2UucHVzaCgnTG9jYWwnKTtcbiAgICByZXR1cm4gY292ZXJhZ2Uuam9pbignLCAnKSB8fCAnVW5rbm93bic7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Q2FwYWJpbGl0aWVzVGV4dChjb250YWN0OiBBWE1Db250YWN0TWFuYWdlbWVudEVtZXJnZW5jeUNvbnRhY3RFbnRpdHlNb2RlbCk6IHN0cmluZyB7XG4gICAgY29uc3QgY2FwYWJpbGl0aWVzID0gW107XG4gICAgaWYgKGNvbnRhY3QuaXNUZXh0Q2FwYWJsZSkgY2FwYWJpbGl0aWVzLnB1c2goJ1RleHQnKTtcbiAgICBpZiAoY29udGFjdC5pc1ZpZGVvQ2FsbENhcGFibGUpIGNhcGFiaWxpdGllcy5wdXNoKCdWaWRlbycpO1xuICAgIHJldHVybiBjYXBhYmlsaXRpZXMuam9pbignLCAnKSB8fCAnVm9pY2UgT25seSc7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UHJpb3JpdHlDb2xvcihwcmlvcml0eTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAocHJpb3JpdHkgPD0gMSkgcmV0dXJuICdkYW5nZXInO1xuICAgIGlmIChwcmlvcml0eSA8PSAzKSByZXR1cm4gJ3dhcm5pbmcnO1xuICAgIGlmIChwcmlvcml0eSA8PSA1KSByZXR1cm4gJ3ByaW1hcnknO1xuICAgIHJldHVybiAnc2Vjb25kYXJ5JztcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgUGFnZSBNZXRhZGF0YSBPdmVycmlkZXMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGdldFBhZ2VUaXRsZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAnRW1lcmdlbmN5IENvbnRhY3RzICYgUXVpY2sgRGlhbCc7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgZ2V0UGFnZURlc2NyaXB0aW9uKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuICdBY2Nlc3MgZW1lcmdlbmN5IGNvbnRhY3RzIGFuZCBpbXBvcnRhbnQgbnVtYmVycyBxdWlja2x5JztcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGdldFBhZ2VCcmVhZGNydW1icygpOiBQcm9taXNlPEFYUEJyZWFkY3J1bWJJdGVtW10+IHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICB0aXRsZTogJ0NvbnRhY3QgTWFuYWdlbWVudCcsXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBnZXRTZWNvbmRhcnlNZW51SXRlbXMoKTogUHJvbWlzZTxBWFBBY3Rpb25NZW51SXRlbVtdPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgdGl0bGU6ICdSZWZyZXNoJyxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXJlZnJlc2gnLFxuICAgICAgICBjb2xvcjogJ3NlY29uZGFyeScsXG4gICAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgICBuYW1lOiAncmVmcmVzaCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IGFueSkge1xuICAgIGlmIChjb21tYW5kLm5hbWUgPT09ICdyZWZyZXNoJykge1xuICAgICAgdGhpcy5oYW5kbGVSZWZyZXNoKCk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG59XG4iLCI8YXhwLXBhZ2UtbGF5b3V0ICp0cmFuc2xhdGU9XCJsZXQgdFwiPlxuICA8YXhwLXBhZ2UtY29udGVudD5cbiAgICA8IS0tIExvYWRpbmcgU3RhdGUgLS0+XG4gICAgQGlmIChsb2FkaW5nKCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1weS04XCI+XG4gICAgICAgIDxheC1sb2FkaW5nPkxvYWRpbmcgZW1lcmdlbmN5IGNvbnRhY3RzLi4uPC9heC1sb2FkaW5nPlxuICAgICAgPC9kaXY+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtc3BhY2UteS02IGF4LXAtNFwiPlxuICAgICAgICA8IS0tIFF1aWNrIERpYWwgU2VjdGlvbiAtLT5cbiAgICAgICAgQGlmIChxdWlja0RpYWxDb250YWN0cygpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtbWItOFwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiYXgtdGV4dC0yeGwgYXgtZm9udC1zZW1pYm9sZCBheC1tYi00IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1waG9uZS1yb3RhcnlcIiBjbGFzcz1cImF4LXRleHQtZGFuZ2VyXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICBRdWljayBEaWFsXG4gICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTEgc206YXgtZ3JpZC1jb2xzLTIgbGc6YXgtZ3JpZC1jb2xzLTMgeGw6YXgtZ3JpZC1jb2xzLTQgYXgtZ2FwLTRcIj5cbiAgICAgICAgICAgICAgQGZvciAoY29udGFjdCBvZiBxdWlja0RpYWxDb250YWN0cygpOyB0cmFjayBjb250YWN0LmlkKSB7XG4gICAgICAgICAgICAgICAgPGF4bS1lbWVyZ2VuY3ktY29udGFjdC1pdGVtIFtjb250YWN0XT1cImNvbnRhY3RcIj48L2F4bS1lbWVyZ2VuY3ktY29udGFjdC1pdGVtPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gRGFzaGJvYXJkIENvbnRhY3RzIFNlY3Rpb24gLS0+XG4gICAgICAgIEBpZiAoZGFzaGJvYXJkQ29udGFjdHMoKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LW1iLThcIj5cbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImF4LXRleHQtMnhsIGF4LWZvbnQtc2VtaWJvbGQgYXgtbWItNCBheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtdGFjaG9tZXRlci1hbHRcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeVwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgQWxsIEVtZXJnZW5jeSBDb250YWN0c1xuICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xIHNtOmF4LWdyaWQtY29scy0yIGxnOmF4LWdyaWQtY29scy0zIHhsOmF4LWdyaWQtY29scy00IGF4LWdhcC00XCI+XG4gICAgICAgICAgICAgIEBmb3IgKGNvbnRhY3Qgb2YgZGFzaGJvYXJkQ29udGFjdHMoKTsgdHJhY2sgY29udGFjdC5pZCkge1xuICAgICAgICAgICAgICAgIDxheG0tZW1lcmdlbmN5LWNvbnRhY3QtaXRlbSBbY29udGFjdF09XCJjb250YWN0XCI+PC9heG0tZW1lcmdlbmN5LWNvbnRhY3QtaXRlbT5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICA8IS0tIEZhbGxiYWNrOiBTaG93IGFsbCBjb250YWN0cyBpZiBubyBmaWx0ZXJlZCBjb250YWN0cyBhcmUgYXZhaWxhYmxlIC0tPlxuICAgICAgICBAaWYgKHF1aWNrRGlhbENvbnRhY3RzKCkubGVuZ3RoID09PSAwICYmIGRhc2hib2FyZENvbnRhY3RzKCkubGVuZ3RoID09PSAwICYmIGRpc3BsYXlDb250YWN0cygpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtbWItOFwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiYXgtdGV4dC0yeGwgYXgtZm9udC1zZW1pYm9sZCBheC1tYi00IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1saXN0XCIgY2xhc3M9XCJheC10ZXh0LWluZm9cIj48L2F4LWljb24+XG4gICAgICAgICAgICAgIEFsbCBFbWVyZ2VuY3kgQ29udGFjdHNcbiAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZ3JpZCBheC1ncmlkLWNvbHMtMSBzbTpheC1ncmlkLWNvbHMtMiBsZzpheC1ncmlkLWNvbHMtMyB4bDpheC1ncmlkLWNvbHMtNCBheC1nYXAtNFwiPlxuICAgICAgICAgICAgICBAZm9yIChjb250YWN0IG9mIGRpc3BsYXlDb250YWN0cygpOyB0cmFjayBjb250YWN0LmlkKSB7XG4gICAgICAgICAgICAgICAgPGF4bS1lbWVyZ2VuY3ktY29udGFjdC1pdGVtIFtjb250YWN0XT1cImNvbnRhY3RcIj48L2F4bS1lbWVyZ2VuY3ktY29udGFjdC1pdGVtPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gTm8gQ29udGFjdHMgU3RhdGUgLS0+XG4gICAgICAgIEBpZiAoYWxsQ29udGFjdHMoKS5sZW5ndGggPT09IDAgJiYgIWxvYWRpbmcoKSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LWNlbnRlciBheC1weS0xMlwiPlxuICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXBob25lLXNsYXNoXCIgY2xhc3M9XCJheC10ZXh0LTZ4bCBheC10ZXh0LW11dGVkIGF4LW1iLTRcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJheC10ZXh0LXhsIGF4LWZvbnQtbWVkaXVtIGF4LXRleHQtbXV0ZWQgYXgtbWItMlwiPk5vIGVtZXJnZW5jeSBjb250YWN0cyBhdmFpbGFibGU8L2gzPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvYXhwLXBhZ2UtY29udGVudD5cbjwvYXhwLXBhZ2UtbGF5b3V0PlxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtY29udGFjdC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRhY3QtbWFuYWdlbWVudC9zcmMvYWNvcmV4LW1vZHVsZXMtY29udGFjdC1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1","i2","i3"],"mappings":"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"}