@acorex/modules 20.6.0-next.19 → 20.6.0-next.20

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 (287) hide show
  1. package/fesm2022/{acorex-modules-assessment-management-collaborator.entity-DpV98osl.mjs → acorex-modules-assessment-management-collaborator.entity-DtEzEgEB.mjs} +23 -8
  2. package/fesm2022/acorex-modules-assessment-management-collaborator.entity-DtEzEgEB.mjs.map +1 -0
  3. package/fesm2022/{acorex-modules-assessment-management-publication.entity-DnLUKNiz.mjs → acorex-modules-assessment-management-publication.entity-DDN_bzx9.mjs} +51 -15
  4. package/fesm2022/acorex-modules-assessment-management-publication.entity-DDN_bzx9.mjs.map +1 -0
  5. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-BPwy0fsh.mjs → acorex-modules-assessment-management-question-bank-item.entity-QgddRN3o.mjs} +35 -11
  6. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-QgddRN3o.mjs.map +1 -0
  7. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-JRC8y5A-.mjs → acorex-modules-assessment-management-questionnaire.entity-Wvnejt9E.mjs} +40 -18
  8. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-Wvnejt9E.mjs.map +1 -0
  9. package/fesm2022/{acorex-modules-assessment-management-response-entry.entity-PjiBql_T.mjs → acorex-modules-assessment-management-response-entry.entity-BYdInV5t.mjs} +15 -6
  10. package/fesm2022/acorex-modules-assessment-management-response-entry.entity-BYdInV5t.mjs.map +1 -0
  11. package/fesm2022/{acorex-modules-assessment-management-response-session.entity-CsAtlsZE.mjs → acorex-modules-assessment-management-response-session.entity-Bms5-ik8.mjs} +27 -9
  12. package/fesm2022/acorex-modules-assessment-management-response-session.entity-Bms5-ik8.mjs.map +1 -0
  13. package/fesm2022/acorex-modules-assessment-management.mjs +6 -6
  14. package/fesm2022/{acorex-modules-asset-management-asset-status.entity-7IQGhMLK.mjs → acorex-modules-asset-management-asset-status.entity-CD8VnnHG.mjs} +5 -12
  15. package/fesm2022/acorex-modules-asset-management-asset-status.entity-CD8VnnHG.mjs.map +1 -0
  16. package/fesm2022/{acorex-modules-asset-management-asset.entity-BQgzan6X.mjs → acorex-modules-asset-management-asset.entity-CsnpQE4P.mjs} +3 -3
  17. package/fesm2022/acorex-modules-asset-management-asset.entity-CsnpQE4P.mjs.map +1 -0
  18. package/fesm2022/acorex-modules-asset-management.mjs +2 -2
  19. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CRmoDyqg.mjs → acorex-modules-auth-acorex-modules-auth-BDgtGHcw.mjs} +12 -12
  20. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CRmoDyqg.mjs.map → acorex-modules-auth-acorex-modules-auth-BDgtGHcw.mjs.map} +1 -1
  21. package/fesm2022/{acorex-modules-auth-app-chooser.component-BeLfKO6l.mjs → acorex-modules-auth-app-chooser.component-D43Ysfx3.mjs} +2 -2
  22. package/fesm2022/{acorex-modules-auth-app-chooser.component-BeLfKO6l.mjs.map → acorex-modules-auth-app-chooser.component-D43Ysfx3.mjs.map} +1 -1
  23. package/fesm2022/{acorex-modules-auth-login.module-Cr_IXE0z.mjs → acorex-modules-auth-login.module-C1AE4unG.mjs} +4 -4
  24. package/fesm2022/{acorex-modules-auth-login.module-Cr_IXE0z.mjs.map → acorex-modules-auth-login.module-C1AE4unG.mjs.map} +1 -1
  25. package/fesm2022/{acorex-modules-auth-master.layout-CL3rgDKC.mjs → acorex-modules-auth-master.layout-h-RCEiJz.mjs} +2 -2
  26. package/fesm2022/{acorex-modules-auth-master.layout-CL3rgDKC.mjs.map → acorex-modules-auth-master.layout-h-RCEiJz.mjs.map} +1 -1
  27. package/fesm2022/{acorex-modules-auth-oauth-callback.component-Da_a3-4p.mjs → acorex-modules-auth-oauth-callback.component-DaKIbZ1p.mjs} +2 -2
  28. package/fesm2022/{acorex-modules-auth-oauth-callback.component-Da_a3-4p.mjs.map → acorex-modules-auth-oauth-callback.component-DaKIbZ1p.mjs.map} +1 -1
  29. package/fesm2022/{acorex-modules-auth-password.component-BSk8-gd3.mjs → acorex-modules-auth-password.component-DkqB8Q6b.mjs} +2 -2
  30. package/fesm2022/{acorex-modules-auth-password.component-BSk8-gd3.mjs.map → acorex-modules-auth-password.component-DkqB8Q6b.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-auth-password.component-zSSGhx3N.mjs → acorex-modules-auth-password.component-hNmn0U4C.mjs} +2 -2
  32. package/fesm2022/{acorex-modules-auth-password.component-zSSGhx3N.mjs.map → acorex-modules-auth-password.component-hNmn0U4C.mjs.map} +1 -1
  33. package/fesm2022/{acorex-modules-auth-routes-SbNyF-bU.mjs → acorex-modules-auth-routes-D2aKrFgC.mjs} +2 -2
  34. package/fesm2022/{acorex-modules-auth-routes-SbNyF-bU.mjs.map → acorex-modules-auth-routes-D2aKrFgC.mjs.map} +1 -1
  35. package/fesm2022/{acorex-modules-auth-show-profile-command-F3qc26vh.mjs → acorex-modules-auth-show-profile-command-D1q8CYD3.mjs} +2 -2
  36. package/fesm2022/acorex-modules-auth-show-profile-command-D1q8CYD3.mjs.map +1 -0
  37. package/fesm2022/{acorex-modules-auth-two-factor.module-D_a0ZLfP.mjs → acorex-modules-auth-two-factor.module-D5wIFLzk.mjs} +2 -2
  38. package/fesm2022/{acorex-modules-auth-two-factor.module-D_a0ZLfP.mjs.map → acorex-modules-auth-two-factor.module-D5wIFLzk.mjs.map} +1 -1
  39. package/fesm2022/{acorex-modules-auth-user-sessions.component-1n_j84JE.mjs → acorex-modules-auth-user-sessions.component-DPVcLAUS.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-auth-user-sessions.component-1n_j84JE.mjs.map → acorex-modules-auth-user-sessions.component-DPVcLAUS.mjs.map} +1 -1
  41. package/fesm2022/acorex-modules-auth.mjs +1 -1
  42. package/fesm2022/{acorex-modules-common-manage-extra-properties.command-Cl7ANDKN.mjs → acorex-modules-common-manage-extra-properties.command-C4jE3MPJ.mjs} +3 -3
  43. package/fesm2022/acorex-modules-common-manage-extra-properties.command-C4jE3MPJ.mjs.map +1 -0
  44. package/fesm2022/acorex-modules-common.mjs +139 -265
  45. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  46. package/fesm2022/{acorex-modules-content-management-acorex-modules-content-management--Pn1KLlN.mjs → acorex-modules-content-management-acorex-modules-content-management-BvpwgY8-.mjs} +14 -9
  47. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management-BvpwgY8-.mjs.map +1 -0
  48. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-yUaeVc5p.mjs → acorex-modules-content-management-permission-definition.provider-BpBMhZVd.mjs} +2 -2
  49. package/fesm2022/{acorex-modules-content-management-permission-definition.provider-yUaeVc5p.mjs.map → acorex-modules-content-management-permission-definition.provider-BpBMhZVd.mjs.map} +1 -1
  50. package/fesm2022/acorex-modules-content-management.mjs +1 -1
  51. package/fesm2022/{acorex-modules-customer-management-acorex-modules-customer-management-CHdUUJz3.mjs → acorex-modules-customer-management-acorex-modules-customer-management-CXWyTfm_.mjs} +12 -12
  52. package/fesm2022/{acorex-modules-customer-management-acorex-modules-customer-management-CHdUUJz3.mjs.map → acorex-modules-customer-management-acorex-modules-customer-management-CXWyTfm_.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-customer-management-activity.entity-CLEBK5_A.mjs → acorex-modules-customer-management-activity.entity-B37EX1zO.mjs} +83 -18
  54. package/fesm2022/acorex-modules-customer-management-activity.entity-B37EX1zO.mjs.map +1 -0
  55. package/fesm2022/{acorex-modules-customer-management-customer-segment.entity-CLpbTU_U.mjs → acorex-modules-customer-management-customer-segment.entity-D57uzi2s.mjs} +2 -2
  56. package/fesm2022/{acorex-modules-customer-management-customer-segment.entity-CLpbTU_U.mjs.map → acorex-modules-customer-management-customer-segment.entity-D57uzi2s.mjs.map} +1 -1
  57. package/fesm2022/{acorex-modules-customer-management-customer-type.entity-DovxS4XY.mjs → acorex-modules-customer-management-customer-type.entity-DILWYgc1.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-customer-management-customer-type.entity-DovxS4XY.mjs.map → acorex-modules-customer-management-customer-type.entity-DILWYgc1.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-customer-management-customer.entity-CZDCpwiX.mjs → acorex-modules-customer-management-customer.entity-pLpwk-8-.mjs} +4 -4
  60. package/fesm2022/acorex-modules-customer-management-customer.entity-pLpwk-8-.mjs.map +1 -0
  61. package/fesm2022/{acorex-modules-customer-management-deal-contact-role.entity-DehxqNb6.mjs → acorex-modules-customer-management-deal-contact-role.entity-D9EIQCBf.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-customer-management-deal-contact-role.entity-DehxqNb6.mjs.map → acorex-modules-customer-management-deal-contact-role.entity-D9EIQCBf.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-customer-management-lead.entity-jD60WE5x.mjs → acorex-modules-customer-management-lead.entity-CFBLN84R.mjs} +2 -2
  64. package/fesm2022/{acorex-modules-customer-management-lead.entity-jD60WE5x.mjs.map → acorex-modules-customer-management-lead.entity-CFBLN84R.mjs.map} +1 -1
  65. package/fesm2022/{acorex-modules-customer-management-lifecycle-stage.entity-eXaKF1wF.mjs → acorex-modules-customer-management-lifecycle-stage.entity-CVlaNJnV.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-customer-management-lifecycle-stage.entity-eXaKF1wF.mjs.map → acorex-modules-customer-management-lifecycle-stage.entity-CVlaNJnV.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-customer-management-opportunity-stage.entity-D2AWoXkh.mjs → acorex-modules-customer-management-opportunity-stage.entity--G53TNA9.mjs} +2 -2
  68. package/fesm2022/{acorex-modules-customer-management-opportunity-stage.entity-D2AWoXkh.mjs.map → acorex-modules-customer-management-opportunity-stage.entity--G53TNA9.mjs.map} +1 -1
  69. package/fesm2022/{acorex-modules-customer-management-opportunity.entity-D0sLFYoF.mjs → acorex-modules-customer-management-opportunity.entity-slARn9VJ.mjs} +2 -2
  70. package/fesm2022/{acorex-modules-customer-management-opportunity.entity-D0sLFYoF.mjs.map → acorex-modules-customer-management-opportunity.entity-slARn9VJ.mjs.map} +1 -1
  71. package/fesm2022/{acorex-modules-customer-management-sales-pipeline.entity-BooPlprb.mjs → acorex-modules-customer-management-sales-pipeline.entity-7jyj1scm.mjs} +2 -2
  72. package/fesm2022/{acorex-modules-customer-management-sales-pipeline.entity-BooPlprb.mjs.map → acorex-modules-customer-management-sales-pipeline.entity-7jyj1scm.mjs.map} +1 -1
  73. package/fesm2022/{acorex-modules-customer-management-sales-territory.entity-DclL_tgK.mjs → acorex-modules-customer-management-sales-territory.entity-bsjw5Gp8.mjs} +2 -2
  74. package/fesm2022/{acorex-modules-customer-management-sales-territory.entity-DclL_tgK.mjs.map → acorex-modules-customer-management-sales-territory.entity-bsjw5Gp8.mjs.map} +1 -1
  75. package/fesm2022/acorex-modules-customer-management.mjs +1 -1
  76. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-DxvJ5FUP.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-Dyt_5pDQ.mjs} +11 -11
  77. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-DxvJ5FUP.mjs.map → acorex-modules-dashboard-management-acorex-modules-dashboard-management-Dyt_5pDQ.mjs.map} +1 -1
  78. package/fesm2022/{acorex-modules-dashboard-management-permission-definition.provider-tvIEsms4.mjs → acorex-modules-dashboard-management-permission-definition.provider-D4uIodsb.mjs} +2 -2
  79. package/fesm2022/{acorex-modules-dashboard-management-permission-definition.provider-tvIEsms4.mjs.map → acorex-modules-dashboard-management-permission-definition.provider-D4uIodsb.mjs.map} +1 -1
  80. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  81. package/fesm2022/{acorex-modules-data-management-acorex-modules-data-management-DjySg-9e.mjs → acorex-modules-data-management-acorex-modules-data-management-CRtYFDPP.mjs} +15 -22
  82. package/fesm2022/{acorex-modules-data-management-acorex-modules-data-management-DjySg-9e.mjs.map → acorex-modules-data-management-acorex-modules-data-management-CRtYFDPP.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-data-management-permission-definition.provider-D6tcKzyf.mjs → acorex-modules-data-management-permission-definition.provider-Cz9tC2gl.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-data-management-permission-definition.provider-D6tcKzyf.mjs.map → acorex-modules-data-management-permission-definition.provider-Cz9tC2gl.mjs.map} +1 -1
  85. package/fesm2022/acorex-modules-data-management.mjs +1 -1
  86. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-rrUIN74I.mjs → acorex-modules-document-management-acorex-modules-document-management-Dg8SVY4R.mjs} +39 -65
  87. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-rrUIN74I.mjs.map → acorex-modules-document-management-acorex-modules-document-management-Dg8SVY4R.mjs.map} +1 -1
  88. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-2Y5zJBJh.mjs → acorex-modules-document-management-attachment-widget.component-zFZApYr5.mjs} +2 -2
  89. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-2Y5zJBJh.mjs.map → acorex-modules-document-management-attachment-widget.component-zFZApYr5.mjs.map} +1 -1
  90. package/fesm2022/{acorex-modules-document-management-details-view.component-C7zknKa3.mjs → acorex-modules-document-management-details-view.component-CBmWHsVg.mjs} +2 -2
  91. package/fesm2022/{acorex-modules-document-management-details-view.component-C7zknKa3.mjs.map → acorex-modules-document-management-details-view.component-CBmWHsVg.mjs.map} +1 -1
  92. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-b5DKAAec.mjs → acorex-modules-document-management-document-signature-popup.component-0C1OmnNz.mjs} +2 -2
  93. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-b5DKAAec.mjs.map → acorex-modules-document-management-document-signature-popup.component-0C1OmnNz.mjs.map} +1 -1
  94. package/fesm2022/{acorex-modules-document-management-drive-choose.component-Czct3RIU.mjs → acorex-modules-document-management-drive-choose.component-Cgi4gVUo.mjs} +2 -2
  95. package/fesm2022/{acorex-modules-document-management-drive-choose.component-Czct3RIU.mjs.map → acorex-modules-document-management-drive-choose.component-Cgi4gVUo.mjs.map} +1 -1
  96. package/fesm2022/{acorex-modules-document-management-drive.component-ixWQTGk_.mjs → acorex-modules-document-management-drive.component-qqJtfLVN.mjs} +2 -2
  97. package/fesm2022/{acorex-modules-document-management-drive.component-ixWQTGk_.mjs.map → acorex-modules-document-management-drive.component-qqJtfLVN.mjs.map} +1 -1
  98. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-urlBOoAQ.mjs → acorex-modules-document-management-large-icons-view.component-CiTXhe9q.mjs} +2 -2
  99. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-urlBOoAQ.mjs.map → acorex-modules-document-management-large-icons-view.component-CiTXhe9q.mjs.map} +1 -1
  100. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-7z2Y_FrQ.mjs → acorex-modules-document-management-large-tiles-view.component-C-xJAD2U.mjs} +2 -2
  101. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-7z2Y_FrQ.mjs.map → acorex-modules-document-management-large-tiles-view.component-C-xJAD2U.mjs.map} +1 -1
  102. package/fesm2022/{acorex-modules-document-management-list-view.component-DElB-v57.mjs → acorex-modules-document-management-list-view.component-CALsnuCI.mjs} +2 -2
  103. package/fesm2022/{acorex-modules-document-management-list-view.component-DElB-v57.mjs.map → acorex-modules-document-management-list-view.component-CALsnuCI.mjs.map} +1 -1
  104. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Beu0lmdq.mjs → acorex-modules-document-management-permission-definition.provider-7NpKb9FT.mjs} +2 -2
  105. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Beu0lmdq.mjs.map → acorex-modules-document-management-permission-definition.provider-7NpKb9FT.mjs.map} +1 -1
  106. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-DiH7q3-O.mjs → acorex-modules-document-management-small-icons-view.component-Cx7ON87O.mjs} +2 -2
  107. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-DiH7q3-O.mjs.map → acorex-modules-document-management-small-icons-view.component-Cx7ON87O.mjs.map} +1 -1
  108. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-BJRR3JpH.mjs → acorex-modules-document-management-small-tiles-view.component-DXLfLnZh.mjs} +2 -2
  109. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-BJRR3JpH.mjs.map → acorex-modules-document-management-small-tiles-view.component-DXLfLnZh.mjs.map} +1 -1
  110. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  111. package/fesm2022/acorex-modules-financial-core.mjs +108 -67
  112. package/fesm2022/acorex-modules-financial-core.mjs.map +1 -1
  113. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-CxFD0OVD.mjs → acorex-modules-help-desk-acorex-modules-help-desk-2KBoCpT3.mjs} +6 -6
  114. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-2KBoCpT3.mjs.map +1 -0
  115. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-CCAHpgIx.mjs → acorex-modules-help-desk-capture-screen.component-D-reMqrQ.mjs} +2 -2
  116. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-CCAHpgIx.mjs.map → acorex-modules-help-desk-capture-screen.component-D-reMqrQ.mjs.map} +1 -1
  117. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  118. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-CHcGjia2.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-crtjPRx2.mjs} +11 -11
  119. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-CHcGjia2.mjs.map → acorex-modules-human-capital-management-acorex-modules-human-capital-management-crtjPRx2.mjs.map} +1 -1
  120. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-DKvFxffl.mjs → acorex-modules-human-capital-management-employee-skill.entity-B_gM9TMj.mjs} +2 -2
  121. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-DKvFxffl.mjs.map → acorex-modules-human-capital-management-employee-skill.entity-B_gM9TMj.mjs.map} +1 -1
  122. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-BGMXoqyv.mjs → acorex-modules-human-capital-management-employee.entity-B6ndmf52.mjs} +3 -24
  123. package/fesm2022/acorex-modules-human-capital-management-employee.entity-B6ndmf52.mjs.map +1 -0
  124. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-CMEY-M1P.mjs → acorex-modules-human-capital-management-employment-type.entity-BJVwmQEY.mjs} +14 -6
  125. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-BJVwmQEY.mjs.map +1 -0
  126. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-ItVzChs-.mjs → acorex-modules-human-capital-management-leave-request.entity-BA95ET48.mjs} +22 -15
  127. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-BA95ET48.mjs.map +1 -0
  128. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-BqmzR9Zs.mjs → acorex-modules-human-capital-management-leave-type.entity-CJOejYZs.mjs} +5 -7
  129. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-CJOejYZs.mjs.map +1 -0
  130. package/fesm2022/{acorex-modules-human-capital-management-permission-definition.provider-mMq-vrLs.mjs → acorex-modules-human-capital-management-permission-definition.provider-CwVtMZMg.mjs} +2 -2
  131. package/fesm2022/{acorex-modules-human-capital-management-permission-definition.provider-mMq-vrLs.mjs.map → acorex-modules-human-capital-management-permission-definition.provider-CwVtMZMg.mjs.map} +1 -1
  132. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-oW70mkOZ.mjs → acorex-modules-human-capital-management-position-assignment.entity-Yk21sgeU.mjs} +50 -19
  133. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-Yk21sgeU.mjs.map +1 -0
  134. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-B-5M3oRa.mjs → acorex-modules-human-capital-management-skill-level.entity-BX_Vc6L1.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-B-5M3oRa.mjs.map → acorex-modules-human-capital-management-skill-level.entity-BX_Vc6L1.mjs.map} +1 -1
  136. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-DRqAWnO-.mjs → acorex-modules-human-capital-management-skill.entity-BIo0x54G.mjs} +2 -2
  137. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-DRqAWnO-.mjs.map → acorex-modules-human-capital-management-skill.entity-BIo0x54G.mjs.map} +1 -1
  138. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  139. package/fesm2022/{acorex-modules-learning-management-attendance.entity-DL79CMSt.mjs → acorex-modules-learning-management-attendance.entity-B2yFTuvc.mjs} +21 -26
  140. package/fesm2022/acorex-modules-learning-management-attendance.entity-B2yFTuvc.mjs.map +1 -0
  141. package/fesm2022/{acorex-modules-learning-management-certificate-definition.entity-DKbzA7Hj.mjs → acorex-modules-learning-management-certificate-definition.entity-CuldbLYd.mjs} +9 -14
  142. package/fesm2022/acorex-modules-learning-management-certificate-definition.entity-CuldbLYd.mjs.map +1 -0
  143. package/fesm2022/{acorex-modules-learning-management-certificate-type.entity-B0qXC4g5.mjs → acorex-modules-learning-management-certificate-type.entity-C-IWRNcp.mjs} +6 -16
  144. package/fesm2022/acorex-modules-learning-management-certificate-type.entity-C-IWRNcp.mjs.map +1 -0
  145. package/fesm2022/{acorex-modules-learning-management-certificate.entity-COjlnLIm.mjs → acorex-modules-learning-management-certificate.entity-8p9CZXL4.mjs} +5 -13
  146. package/fesm2022/acorex-modules-learning-management-certificate.entity-8p9CZXL4.mjs.map +1 -0
  147. package/fesm2022/{acorex-modules-learning-management-course-type.entity-B_JTtF_9.mjs → acorex-modules-learning-management-course-type.entity-Hpt_3UTG.mjs} +22 -31
  148. package/fesm2022/acorex-modules-learning-management-course-type.entity-Hpt_3UTG.mjs.map +1 -0
  149. package/fesm2022/{acorex-modules-learning-management-course.entity-CT75daKU.mjs → acorex-modules-learning-management-course.entity-CtdD7L8S.mjs} +4 -6
  150. package/fesm2022/acorex-modules-learning-management-course.entity-CtdD7L8S.mjs.map +1 -0
  151. package/fesm2022/{acorex-modules-learning-management-employee-skill.entity-D1C-C3Kq.mjs → acorex-modules-learning-management-employee-skill.entity-DsLOnCQw.mjs} +17 -15
  152. package/fesm2022/acorex-modules-learning-management-employee-skill.entity-DsLOnCQw.mjs.map +1 -0
  153. package/fesm2022/{acorex-modules-learning-management-enrollment.entity-omA4kcHi.mjs → acorex-modules-learning-management-enrollment.entity-Dly0ECHB.mjs} +29 -18
  154. package/fesm2022/acorex-modules-learning-management-enrollment.entity-Dly0ECHB.mjs.map +1 -0
  155. package/fesm2022/{acorex-modules-learning-management-learning-path-course.entity-BBqk5EtV.mjs → acorex-modules-learning-management-learning-path-course.entity-8fV8gRtX.mjs} +13 -25
  156. package/fesm2022/acorex-modules-learning-management-learning-path-course.entity-8fV8gRtX.mjs.map +1 -0
  157. package/fesm2022/{acorex-modules-learning-management-learning-path.entity-D1Y38NZ_.mjs → acorex-modules-learning-management-learning-path.entity-CyC0-o7k.mjs} +5 -11
  158. package/fesm2022/acorex-modules-learning-management-learning-path.entity-CyC0-o7k.mjs.map +1 -0
  159. package/fesm2022/{acorex-modules-learning-management-mandatory-training-rule.entity-0GglrBiH.mjs → acorex-modules-learning-management-mandatory-training-rule.entity-BArvgFlh.mjs} +5 -12
  160. package/fesm2022/acorex-modules-learning-management-mandatory-training-rule.entity-BArvgFlh.mjs.map +1 -0
  161. package/fesm2022/{acorex-modules-learning-management-skill-category.entity-92TfxM23.mjs → acorex-modules-learning-management-skill-category.entity-Bl99KTQK.mjs} +10 -29
  162. package/fesm2022/acorex-modules-learning-management-skill-category.entity-Bl99KTQK.mjs.map +1 -0
  163. package/fesm2022/{acorex-modules-learning-management-skill-level.entity-Cb6wMKZs.mjs → acorex-modules-learning-management-skill-level.entity-Dw3XFqs5.mjs} +10 -28
  164. package/fesm2022/acorex-modules-learning-management-skill-level.entity-Dw3XFqs5.mjs.map +1 -0
  165. package/fesm2022/{acorex-modules-learning-management-skill.entity-ScYBjXbd.mjs → acorex-modules-learning-management-skill.entity-S7dr4tKK.mjs} +4 -6
  166. package/fesm2022/acorex-modules-learning-management-skill.entity-S7dr4tKK.mjs.map +1 -0
  167. package/fesm2022/{acorex-modules-learning-management-training-definition.entity-Bghb3axm.mjs → acorex-modules-learning-management-training-definition.entity-CsQP1x1i.mjs} +5 -13
  168. package/fesm2022/acorex-modules-learning-management-training-definition.entity-CsQP1x1i.mjs.map +1 -0
  169. package/fesm2022/{acorex-modules-learning-management-training-type.entity-nbu0TG39.mjs → acorex-modules-learning-management-training-type.entity-DNIg2By9.mjs} +10 -27
  170. package/fesm2022/acorex-modules-learning-management-training-type.entity-DNIg2By9.mjs.map +1 -0
  171. package/fesm2022/{acorex-modules-learning-management-training.entity-COAMDASs.mjs → acorex-modules-learning-management-training.entity-hK9795ut.mjs} +17 -9
  172. package/fesm2022/acorex-modules-learning-management-training.entity-hK9795ut.mjs.map +1 -0
  173. package/fesm2022/acorex-modules-learning-management.mjs +17 -17
  174. package/fesm2022/acorex-modules-location-management.mjs +3 -5
  175. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  176. package/fesm2022/acorex-modules-measurement-core.mjs +54 -63
  177. package/fesm2022/acorex-modules-measurement-core.mjs.map +1 -1
  178. package/fesm2022/acorex-modules-meeting-management.mjs +3 -3
  179. package/fesm2022/acorex-modules-meeting-management.mjs.map +1 -1
  180. package/fesm2022/acorex-modules-notification-management.mjs +1 -1
  181. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  182. package/fesm2022/{acorex-modules-organization-management-acorex-modules-organization-management-B9bK-Ioq.mjs → acorex-modules-organization-management-acorex-modules-organization-management-C_l-eSXZ.mjs} +219 -50
  183. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-C_l-eSXZ.mjs.map +1 -0
  184. package/fesm2022/{acorex-modules-organization-management-chart.entity-BsgpFmy7.mjs → acorex-modules-organization-management-chart.entity-D1LjhXpO.mjs} +2 -2
  185. package/fesm2022/{acorex-modules-organization-management-chart.entity-BsgpFmy7.mjs.map → acorex-modules-organization-management-chart.entity-D1LjhXpO.mjs.map} +1 -1
  186. package/fesm2022/{acorex-modules-organization-management-company.entity-BVbZ2GQG.mjs → acorex-modules-organization-management-company.entity-Bh3VtHCa.mjs} +2 -2
  187. package/fesm2022/{acorex-modules-organization-management-company.entity-BVbZ2GQG.mjs.map → acorex-modules-organization-management-company.entity-Bh3VtHCa.mjs.map} +1 -1
  188. package/fesm2022/{acorex-modules-organization-management-org-chart.page-Bnv2h0FH.mjs → acorex-modules-organization-management-org-chart.page-iFH7kDtM.mjs} +2 -2
  189. package/fesm2022/{acorex-modules-organization-management-org-chart.page-Bnv2h0FH.mjs.map → acorex-modules-organization-management-org-chart.page-iFH7kDtM.mjs.map} +1 -1
  190. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-BtQRDXmY.mjs → acorex-modules-organization-management-permission-definition.provider-CuRjOjVT.mjs} +2 -2
  191. package/fesm2022/{acorex-modules-organization-management-permission-definition.provider-BtQRDXmY.mjs.map → acorex-modules-organization-management-permission-definition.provider-CuRjOjVT.mjs.map} +1 -1
  192. package/fesm2022/{acorex-modules-organization-management-position.entity-DnHKGwF0.mjs → acorex-modules-organization-management-position.entity-ClFvPjVV.mjs} +8 -21
  193. package/fesm2022/acorex-modules-organization-management-position.entity-ClFvPjVV.mjs.map +1 -0
  194. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-gcsjYnAb.mjs → acorex-modules-organization-management-responsibility.entity-BV6KD1yF.mjs} +7 -16
  195. package/fesm2022/acorex-modules-organization-management-responsibility.entity-BV6KD1yF.mjs.map +1 -0
  196. package/fesm2022/{acorex-modules-organization-management-role.entity-cYqwqNQH.mjs → acorex-modules-organization-management-role.entity-CJEfiAlV.mjs} +7 -16
  197. package/fesm2022/acorex-modules-organization-management-role.entity-CJEfiAlV.mjs.map +1 -0
  198. package/fesm2022/{acorex-modules-organization-management-team.entity-CBhPoYrF.mjs → acorex-modules-organization-management-team.entity-BhBRlXTD.mjs} +6 -15
  199. package/fesm2022/acorex-modules-organization-management-team.entity-BhBRlXTD.mjs.map +1 -0
  200. package/fesm2022/acorex-modules-organization-management.mjs +1 -1
  201. package/fesm2022/{acorex-modules-party-management-acorex-modules-party-management-DB3H-49E.mjs → acorex-modules-party-management-acorex-modules-party-management-C0LcUFf1.mjs} +7 -7
  202. package/fesm2022/{acorex-modules-party-management-acorex-modules-party-management-DB3H-49E.mjs.map → acorex-modules-party-management-acorex-modules-party-management-C0LcUFf1.mjs.map} +1 -1
  203. package/fesm2022/{acorex-modules-party-management-industry.entity-E0RPqKYR.mjs → acorex-modules-party-management-industry.entity-DPXtRIyd.mjs} +2 -2
  204. package/fesm2022/{acorex-modules-party-management-industry.entity-E0RPqKYR.mjs.map → acorex-modules-party-management-industry.entity-DPXtRIyd.mjs.map} +1 -1
  205. package/fesm2022/{acorex-modules-party-management-party-identifier-type.entity-COMURXUX.mjs → acorex-modules-party-management-party-identifier-type.entity-DLQRkdEw.mjs} +2 -2
  206. package/fesm2022/{acorex-modules-party-management-party-identifier-type.entity-COMURXUX.mjs.map → acorex-modules-party-management-party-identifier-type.entity-DLQRkdEw.mjs.map} +1 -1
  207. package/fesm2022/{acorex-modules-party-management-party-identifier.entity-C6b-Vrgs.mjs → acorex-modules-party-management-party-identifier.entity-DA7S6hFJ.mjs} +2 -2
  208. package/fesm2022/{acorex-modules-party-management-party-identifier.entity-C6b-Vrgs.mjs.map → acorex-modules-party-management-party-identifier.entity-DA7S6hFJ.mjs.map} +1 -1
  209. package/fesm2022/{acorex-modules-party-management-party-relationship.entity-rZHjByaY.mjs → acorex-modules-party-management-party-relationship.entity-5u6NElSk.mjs} +2 -2
  210. package/fesm2022/{acorex-modules-party-management-party-relationship.entity-rZHjByaY.mjs.map → acorex-modules-party-management-party-relationship.entity-5u6NElSk.mjs.map} +1 -1
  211. package/fesm2022/{acorex-modules-party-management-party-role.entity-B_fesIiR.mjs → acorex-modules-party-management-party-role.entity-DRFwlDry.mjs} +2 -2
  212. package/fesm2022/{acorex-modules-party-management-party-role.entity-B_fesIiR.mjs.map → acorex-modules-party-management-party-role.entity-DRFwlDry.mjs.map} +1 -1
  213. package/fesm2022/{acorex-modules-party-management-party.entity-Czvx5O4_.mjs → acorex-modules-party-management-party.entity-DGeVLzra.mjs} +5 -5
  214. package/fesm2022/acorex-modules-party-management-party.entity-DGeVLzra.mjs.map +1 -0
  215. package/fesm2022/acorex-modules-party-management.mjs +1 -1
  216. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-D3eLYk5B.mjs → acorex-modules-platform-management-acorex-modules-platform-management-BBHPVHzg.mjs} +5 -5
  217. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-D3eLYk5B.mjs.map → acorex-modules-platform-management-acorex-modules-platform-management-BBHPVHzg.mjs.map} +1 -1
  218. package/fesm2022/{acorex-modules-platform-management-list-version.component-DR6JzLzV.mjs → acorex-modules-platform-management-list-version.component-n5JOzU2Y.mjs} +2 -2
  219. package/fesm2022/{acorex-modules-platform-management-list-version.component-DR6JzLzV.mjs.map → acorex-modules-platform-management-list-version.component-n5JOzU2Y.mjs.map} +1 -1
  220. package/fesm2022/{acorex-modules-platform-management-menu-list.component-zjY38r5l.mjs → acorex-modules-platform-management-menu-list.component-CDLDkiW8.mjs} +3 -3
  221. package/fesm2022/acorex-modules-platform-management-menu-list.component-CDLDkiW8.mjs.map +1 -0
  222. package/fesm2022/{acorex-modules-platform-management-permission-definition.provider-BRZXzDNj.mjs → acorex-modules-platform-management-permission-definition.provider-Cc8ZV1K1.mjs} +2 -2
  223. package/fesm2022/{acorex-modules-platform-management-permission-definition.provider-BRZXzDNj.mjs.map → acorex-modules-platform-management-permission-definition.provider-Cc8ZV1K1.mjs.map} +1 -1
  224. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  225. package/fesm2022/acorex-modules-project-management.mjs +90 -49
  226. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  227. package/fesm2022/acorex-modules-report-management.mjs +1 -1
  228. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  229. package/fesm2022/{acorex-modules-security-management-acorex-modules-security-management-e7BjwLZm.mjs → acorex-modules-security-management-acorex-modules-security-management-DiOEecno.mjs} +5 -11
  230. package/fesm2022/acorex-modules-security-management-acorex-modules-security-management-DiOEecno.mjs.map +1 -0
  231. package/fesm2022/{acorex-modules-security-management-permission-definition.provider-DWx476Wy.mjs → acorex-modules-security-management-permission-definition.provider-BiZVWF3y.mjs} +2 -2
  232. package/fesm2022/{acorex-modules-security-management-permission-definition.provider-DWx476Wy.mjs.map → acorex-modules-security-management-permission-definition.provider-BiZVWF3y.mjs.map} +1 -1
  233. package/fesm2022/acorex-modules-security-management.mjs +1 -1
  234. package/fesm2022/{acorex-modules-task-management-task-board.page-DdDfDHhk.mjs → acorex-modules-task-management-task-board.page-BVf2enGZ.mjs} +3 -3
  235. package/fesm2022/acorex-modules-task-management-task-board.page-BVf2enGZ.mjs.map +1 -0
  236. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  237. package/fesm2022/{acorex-modules-workflow-management-overview.command-BTAESad0.mjs → acorex-modules-workflow-management-overview.command-Dl04E1qj.mjs} +3 -3
  238. package/fesm2022/acorex-modules-workflow-management-overview.command-Dl04E1qj.mjs.map +1 -0
  239. package/fesm2022/acorex-modules-workflow-management.mjs +4 -8
  240. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  241. package/package.json +19 -19
  242. package/fesm2022/acorex-modules-assessment-management-collaborator.entity-DpV98osl.mjs.map +0 -1
  243. package/fesm2022/acorex-modules-assessment-management-publication.entity-DnLUKNiz.mjs.map +0 -1
  244. package/fesm2022/acorex-modules-assessment-management-question-bank-item.entity-BPwy0fsh.mjs.map +0 -1
  245. package/fesm2022/acorex-modules-assessment-management-questionnaire.entity-JRC8y5A-.mjs.map +0 -1
  246. package/fesm2022/acorex-modules-assessment-management-response-entry.entity-PjiBql_T.mjs.map +0 -1
  247. package/fesm2022/acorex-modules-assessment-management-response-session.entity-CsAtlsZE.mjs.map +0 -1
  248. package/fesm2022/acorex-modules-asset-management-asset-status.entity-7IQGhMLK.mjs.map +0 -1
  249. package/fesm2022/acorex-modules-asset-management-asset.entity-BQgzan6X.mjs.map +0 -1
  250. package/fesm2022/acorex-modules-auth-show-profile-command-F3qc26vh.mjs.map +0 -1
  251. package/fesm2022/acorex-modules-common-manage-extra-properties.command-Cl7ANDKN.mjs.map +0 -1
  252. package/fesm2022/acorex-modules-content-management-acorex-modules-content-management--Pn1KLlN.mjs.map +0 -1
  253. package/fesm2022/acorex-modules-customer-management-activity.entity-CLEBK5_A.mjs.map +0 -1
  254. package/fesm2022/acorex-modules-customer-management-customer.entity-CZDCpwiX.mjs.map +0 -1
  255. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-CxFD0OVD.mjs.map +0 -1
  256. package/fesm2022/acorex-modules-human-capital-management-employee.entity-BGMXoqyv.mjs.map +0 -1
  257. package/fesm2022/acorex-modules-human-capital-management-employment-type.entity-CMEY-M1P.mjs.map +0 -1
  258. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-ItVzChs-.mjs.map +0 -1
  259. package/fesm2022/acorex-modules-human-capital-management-leave-type.entity-BqmzR9Zs.mjs.map +0 -1
  260. package/fesm2022/acorex-modules-human-capital-management-position-assignment.entity-oW70mkOZ.mjs.map +0 -1
  261. package/fesm2022/acorex-modules-learning-management-attendance.entity-DL79CMSt.mjs.map +0 -1
  262. package/fesm2022/acorex-modules-learning-management-certificate-definition.entity-DKbzA7Hj.mjs.map +0 -1
  263. package/fesm2022/acorex-modules-learning-management-certificate-type.entity-B0qXC4g5.mjs.map +0 -1
  264. package/fesm2022/acorex-modules-learning-management-certificate.entity-COjlnLIm.mjs.map +0 -1
  265. package/fesm2022/acorex-modules-learning-management-course-type.entity-B_JTtF_9.mjs.map +0 -1
  266. package/fesm2022/acorex-modules-learning-management-course.entity-CT75daKU.mjs.map +0 -1
  267. package/fesm2022/acorex-modules-learning-management-employee-skill.entity-D1C-C3Kq.mjs.map +0 -1
  268. package/fesm2022/acorex-modules-learning-management-enrollment.entity-omA4kcHi.mjs.map +0 -1
  269. package/fesm2022/acorex-modules-learning-management-learning-path-course.entity-BBqk5EtV.mjs.map +0 -1
  270. package/fesm2022/acorex-modules-learning-management-learning-path.entity-D1Y38NZ_.mjs.map +0 -1
  271. package/fesm2022/acorex-modules-learning-management-mandatory-training-rule.entity-0GglrBiH.mjs.map +0 -1
  272. package/fesm2022/acorex-modules-learning-management-skill-category.entity-92TfxM23.mjs.map +0 -1
  273. package/fesm2022/acorex-modules-learning-management-skill-level.entity-Cb6wMKZs.mjs.map +0 -1
  274. package/fesm2022/acorex-modules-learning-management-skill.entity-ScYBjXbd.mjs.map +0 -1
  275. package/fesm2022/acorex-modules-learning-management-training-definition.entity-Bghb3axm.mjs.map +0 -1
  276. package/fesm2022/acorex-modules-learning-management-training-type.entity-nbu0TG39.mjs.map +0 -1
  277. package/fesm2022/acorex-modules-learning-management-training.entity-COAMDASs.mjs.map +0 -1
  278. package/fesm2022/acorex-modules-organization-management-acorex-modules-organization-management-B9bK-Ioq.mjs.map +0 -1
  279. package/fesm2022/acorex-modules-organization-management-position.entity-DnHKGwF0.mjs.map +0 -1
  280. package/fesm2022/acorex-modules-organization-management-responsibility.entity-gcsjYnAb.mjs.map +0 -1
  281. package/fesm2022/acorex-modules-organization-management-role.entity-cYqwqNQH.mjs.map +0 -1
  282. package/fesm2022/acorex-modules-organization-management-team.entity-CBhPoYrF.mjs.map +0 -1
  283. package/fesm2022/acorex-modules-party-management-party.entity-Czvx5O4_.mjs.map +0 -1
  284. package/fesm2022/acorex-modules-platform-management-menu-list.component-zjY38r5l.mjs.map +0 -1
  285. package/fesm2022/acorex-modules-security-management-acorex-modules-security-management-e7BjwLZm.mjs.map +0 -1
  286. package/fesm2022/acorex-modules-task-management-task-board.page-DdDfDHhk.mjs.map +0 -1
  287. package/fesm2022/acorex-modules-workflow-management-overview.command-BTAESad0.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-notification-management.mjs","sources":["../tmp-esm2022/notification-management/lib/const.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.service.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.entity.js","../tmp-esm2022/notification-management/lib/entities/template/template.service.js","../tmp-esm2022/notification-management/lib/entities/template/template.entity.js","../tmp-esm2022/notification-management/lib/entities/template/template.module.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.service.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.entity.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.module.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.module.js","../tmp-esm2022/notification-management/lib/entities/index.js","../tmp-esm2022/notification-management/lib/menu.keys.js","../tmp-esm2022/notification-management/lib/menu.provider.js","../tmp-esm2022/notification-management/lib/features/shared/os-notification.service.js","../tmp-esm2022/notification-management/lib/features/shared/notification-management.service.js","../tmp-esm2022/notification-management/lib/badge.provider.js","../tmp-esm2022/notification-management/lib/entity.provider.js","../tmp-esm2022/notification-management/lib/features/shared/notification-definition.service.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-item/admin-notification-item.component.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-panel/admin-notification-panel.component.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-slot/admin-notification-slot.component.js","../tmp-esm2022/notification-management/lib/features/dashboard/widgets/my-notification/notification-widget.component.js","../tmp-esm2022/notification-management/lib/features/dashboard/widgets/my-notification/notification-widget.config.js","../tmp-esm2022/notification-management/lib/notification-management.module.js","../tmp-esm2022/notification-management/lib/settings.keys.js","../tmp-esm2022/notification-management/lib/settings.provider.js","../tmp-esm2022/notification-management/lib/entities/my-notification.js","../tmp-esm2022/notification-management/lib/entities/notification-log.entity.js","../tmp-esm2022/notification-management/acorex-modules-notification-management.js"],"sourcesContent":["const config = {\n i18n: 'notification-management',\n route: 'notifications',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'notification-management',\n name: 'NotificationManagement',\n title: `t('module-name', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-bell',\n },\n entities: {\n channel: {\n name: 'Channels',\n title: `t(\"channel\", {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-list',\n },\n template: {\n name: 'Templates',\n title: `t(\"template\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-code',\n },\n notification: {\n name: 'Notifications',\n title: `t(\"notification\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-code',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE1BQU0sR0FBRztJQUNiLElBQUksRUFBRSx5QkFBeUI7SUFDL0IsS0FBSyxFQUFFLGVBQWU7Q0FDdkIsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixNQUFNO0lBQ04sTUFBTSxFQUFFO1FBQ04sS0FBSyxFQUFFLHlCQUF5QjtRQUNoQyxJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksS0FBSztRQUNuRCxJQUFJLEVBQUUsa0JBQWtCO0tBQ3pCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsT0FBTyxFQUFFO1lBQ1AsSUFBSSxFQUFFLFVBQVU7WUFDaEIsS0FBSyxFQUFFLHdCQUF3QixNQUFNLENBQUMsSUFBSSxLQUFLO1lBQy9DLElBQUksRUFBRSxrQkFBa0I7U0FDekI7UUFDRCxRQUFRLEVBQUU7WUFDUixJQUFJLEVBQUUsV0FBVztZQUNqQixLQUFLLEVBQUUsd0JBQXdCLE1BQU0sQ0FBQyxJQUFJLEtBQUs7WUFDL0MsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QjtRQUNELFlBQVksRUFBRTtZQUNaLElBQUksRUFBRSxlQUFlO1lBQ3JCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksS0FBSztZQUNuRCxJQUFJLEVBQUUsdUJBQXVCO1NBQzlCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY29uZmlnID0ge1xuICBpMThuOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICByb3V0ZTogJ25vdGlmaWNhdGlvbnMnLFxufTtcbmV4cG9ydCBjb25zdCBSb290Q29uZmlnID0ge1xuICBjb25maWcsXG4gIG1vZHVsZToge1xuICAgIHJvdXRlOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdOb3RpZmljYXRpb25NYW5hZ2VtZW50JyxcbiAgICB0aXRsZTogYHQoJ21vZHVsZS1uYW1lJywge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICBpY29uOiAnZmEtbGlnaHQgZmEtYmVsbCcsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgY2hhbm5lbDoge1xuICAgICAgbmFtZTogJ0NoYW5uZWxzJyxcbiAgICAgIHRpdGxlOiBgdChcImNoYW5uZWxcIiwge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1saXN0JyxcbiAgICB9LFxuICAgIHRlbXBsYXRlOiB7XG4gICAgICBuYW1lOiAnVGVtcGxhdGVzJyxcbiAgICAgIHRpdGxlOiBgdChcInRlbXBsYXRlXCIse3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWNvZGUnLFxuICAgIH0sXG4gICAgbm90aWZpY2F0aW9uOiB7XG4gICAgICBuYW1lOiAnTm90aWZpY2F0aW9ucycsXG4gICAgICB0aXRsZTogYHQoXCJub3RpZmljYXRpb25cIix7c2NvcGU6XCIke2NvbmZpZy5pMThufVwifSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZScsXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationEntityServiceImpl extends AXMNotificationEntityService {\n getList() {\n throw new Error('Method not implemented.');\n }\n markAsRead(payload) {\n throw new Error('Method not implemented.');\n }\n markAllAsRead() {\n throw new Error('Method not implemented.');\n }\n create(payload) {\n throw new Error('Method not implemented.');\n }\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.notification.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQVF6QyxNQUFNLE9BQWdCLDRCQUE2QixTQUFRLHdCQUkxRDtDQUtBO0FBR0QsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLDRCQUE0QjtJQUN2RSxPQUFPO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDUSxVQUFVLENBQUMsT0FBMEM7UUFDNUQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDUSxhQUFhO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ1EsTUFBTSxDQUFDLE9BQTZCO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0Q7UUFDRSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7K0dBZlUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0M7OzRGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7XG4gIEFYTU5vdGlmaWNhdGlvbkl0ZW0sXG4gIEFYTU5vdGlmaWNhdGlvbk1hcmtBc1JlYWRSZXF1ZXN0LFxuICBBWE1Ob3RpZmljYXRpb25SZXNwb25zZSxcbn0gZnJvbSAnLi4vLi4vZmVhdHVyZXMvc2hhcmVkL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE5vdGlmaWNhdGlvbkVudGl0eU1vZGVsIH0gZnJvbSAnLi9ub3RpZmljYXRpb24udHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Tm90aWZpY2F0aW9uRW50aXR5TW9kZWwsXG4gIEFYTU5vdGlmaWNhdGlvbkl0ZW1cbj4ge1xuICBhYnN0cmFjdCBnZXRMaXN0KCk6IFByb21pc2U8QVhNTm90aWZpY2F0aW9uUmVzcG9uc2U+O1xuICBhYnN0cmFjdCBtYXJrQXNSZWFkKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25NYXJrQXNSZWFkUmVxdWVzdCk6IFByb21pc2U8dm9pZD47XG4gIGFic3RyYWN0IG1hcmtBbGxBc1JlYWQoKTogUHJvbWlzZTx2b2lkPjtcbiAgYWJzdHJhY3QgY3JlYXRlKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25JdGVtPjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSB7XG4gIG92ZXJyaWRlIGdldExpc3QoKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25SZXNwb25zZT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBtYXJrQXNSZWFkKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25NYXJrQXNSZWFkUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBtYXJrQWxsQXNSZWFkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBjcmVhdGUocGF5bG9hZD86IEFYTU5vdGlmaWNhdGlvbkl0ZW0pOiBQcm9taXNlPEFYTU5vdGlmaWNhdGlvbkl0ZW0+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationEntityService } from './notification.service';\nexport async function notificationEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.notification.name,\n title: RootConfig.entities.notification.title,\n icon: RootConfig.entities.notification.icon,\n formats: {\n individual: `t(\"notifications\",{scope: \"${i18n}\"})`,\n plural: `t(\"notifications\",{scope: \"notification-management\"})`,\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationLog',\n columns: ['title', 'status'],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: `t(\"name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'body',\n title: `t(\"body\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'channel',\n title: `t(\"channel\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'user.name',\n title: `t(\"user.name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.getOne(id);\n resolve(entity);\n }, 500);\n });\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 single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView()],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0Msa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE1BQU0sQ0FBQyxLQUFLLFVBQVUseUJBQXlCLENBQUMsUUFBa0I7SUFDaEUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUk7UUFDM0MsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7UUFDN0MsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUk7UUFDM0MsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLDhCQUE4QixJQUFJLEtBQUs7WUFDbkQsTUFBTSxFQUFFLHVEQUF1RDtTQUNo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Q0FDTixTQUFTLEVBQUU7b0NBQ1QsRUFBRSxFQUFFO3dDQUNGLE9BQU8sRUFBRSxDQUFDO3FDQUNYO2lDQUNGOzZCQUNGO3lCQUNGO3FCQUNGO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDdkMsS0FBSyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztpQkFDOUI7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eUNvbW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IGVudGl0eU1hc3RlckNydWRBY3Rpb25zLCBlbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSB9IGZyb20gJy4vbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5pY29uLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IGB0KFwibm90aWZpY2F0aW9uc1wiLHtzY29wZTogXCIke2kxOG59XCJ9KWAsXG4gICAgICBwbHVyYWw6IGB0KFwibm90aWZpY2F0aW9uc1wiLHtzY29wZTogXCJub3RpZmljYXRpb24tbWFuYWdlbWVudFwifSlgLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGVudGl0eTogJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50Lm5vdGlmaWNhdGlvbkxvZycsXG4gICAgICAgIGNvbHVtbnM6IFsndGl0bGUnLCAnc3RhdHVzJ10sXG4gICAgICB9LFxuICAgIF0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgdGl0bGU6ICdOb3RpZmljYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0aXRsZTogYHQoXCJuYW1lXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ0aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICB0aXRsZTogYHQoXCJib2R5XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnJpY2hUZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogYHQoXCJjaGFubmVsXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd1c2VyLm5hbWUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ1c2VyLm5hbWVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAnYm9keScgfSwgeyBuYW1lOiAndXNlci5uYW1lJyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3VzZXIubmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5VmlldygpXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationManagementTemplateEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationManagementTemplateEntityServiceImpl extends AXMNotificationManagementTemplateEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.template.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3RlbXBsYXRlL3RlbXBsYXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxNQUFNLE9BQWdCLDhDQUErQyxTQUFRLHdCQUc1RTtDQUFHO0FBR0osTUFBTSxPQUFPLGtEQUFtRCxTQUFRLDhDQUE4QztJQUNwSDtRQUNFLEtBQUssQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQzsrR0FIVSxrREFBa0Q7bUhBQWxELGtEQUFrRDs7NEZBQWxELGtEQUFrRDtrQkFEOUQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5TW9kZWwgfSBmcm9tICcuL3RlbXBsYXRlLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationManagementTemplateEntityService } from './template.service';\nexport async function notificationTemplateEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementTemplateEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.template.name,\n title: RootConfig.entities.template.title,\n icon: RootConfig.entities.template.icon,\n formats: {\n individual: 't(\"template\",{scope: \"notification-management\"})',\n plural: 't(\"template\",{scope: \"notification-management\"})',\n },\n relatedEntities: [\n {\n entity: `${RootConfig.module.name}.${RootConfig.entities.channel.name}`,\n columns: ['title', 'body', 'channel'],\n conditions: [\n {\n name: 'notificationId',\n operator: {\n type: 'equal',\n },\n value: 'id',\n },\n ],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: '@general:terms.common.title',\n },\n ],\n properties: [\n {\n name: 'name',\n title: '@general:terms.common.name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\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 {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView()],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvdGVtcGxhdGUvdGVtcGxhdGUuZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0Msa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBGLE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUNBQWlDLENBQUMsUUFBa0I7SUFDeEUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO0lBQ2pGLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDdkMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDekMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDdkMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLGtEQUFrRDtZQUM5RCxNQUFNLEVBQUUsa0RBQWtEO1NBQzNEO1FBQ0QsZUFBZSxFQUFFO1lBQ2Y7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Q0FBQyxrQkFBa0IsRUFBRSxDQUFDO2lCQUM5QjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50VGVtcGxhdGVFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi90ZW1wbGF0ZS5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5U2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnRlbXBsYXRlLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUudGl0bGUsXG4gICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5pY29uLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6ICd0KFwidGVtcGxhdGVcIix7c2NvcGU6IFwibm90aWZpY2F0aW9uLW1hbmFnZW1lbnRcIn0pJyxcbiAgICAgIHBsdXJhbDogJ3QoXCJ0ZW1wbGF0ZVwiLHtzY29wZTogXCJub3RpZmljYXRpb24tbWFuYWdlbWVudFwifSknLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmNoYW5uZWwubmFtZX1gLFxuICAgICAgICBjb2x1bW5zOiBbJ3RpdGxlJywgJ2JvZHknLCAnY2hhbm5lbCddLFxuICAgICAgICBjb25kaXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ25vdGlmaWNhdGlvbklkJyxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmFsdWU6ICdpZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi50aXRsZScsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLm5hbWUnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi5kZXNjcmlwdGlvbicsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdkZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5VmlldygpXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMNotificationManagementTemplateEntityService, AXMNotificationManagementTemplateEntityServiceImpl } from './template.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationTemplateEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, providers: [\n {\n provide: AXMNotificationManagementTemplateEntityService,\n useClass: AXMNotificationManagementTemplateEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationManagementTemplateEntityService,\n useClass: AXMNotificationManagementTemplateEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvdGVtcGxhdGUvdGVtcGxhdGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLGtEQUFrRCxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBYXhJLE1BQU0sT0FBTyxtQ0FBbUM7K0dBQW5DLG1DQUFtQztnSEFBbkMsbUNBQW1DO2dIQUFuQyxtQ0FBbUMsYUFQbkM7WUFDVDtnQkFDRSxPQUFPLEVBQUUsOENBQThDO2dCQUN2RCxRQUFRLEVBQUUsa0RBQWtEO2FBQzdEO1NBQ0Y7OzRGQUVVLG1DQUFtQztrQkFYL0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4Q0FBOEM7NEJBQ3ZELFFBQVEsRUFBRSxrREFBa0Q7eUJBQzdEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2UsIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsIH0gZnJvbSAnLi90ZW1wbGF0ZS5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50VGVtcGxhdGVFbnRpdHlTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5TW9kdWxlIHsgfVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationManagementChannelEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationManagementChannelEntityServiceImpl extends AXMNotificationManagementChannelEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.channel.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY2hhbm5lbC9jaGFubmVsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxNQUFNLE9BQWdCLDZDQUE4QyxTQUFRLHdCQUczRTtDQUFHO0FBR0osTUFBTSxPQUFPLGlEQUFrRCxTQUFRLDZDQUE2QztJQUNsSDtRQUNFLEtBQUssQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQzsrR0FIVSxpREFBaUQ7bUhBQWpELGlEQUFpRDs7NEZBQWpELGlEQUFpRDtrQkFEN0QsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlNb2RlbCB9IGZyb20gJy4vY2hhbm5lbC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","import { AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel.service';\nexport async function notificationChannelEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.channel.name,\n title: RootConfig.entities.channel.title,\n icon: RootConfig.entities.channel.icon,\n formats: {\n individual: `@${i18n}:channel`,\n plural: `@${i18n}:channels`,\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notificationChannel',\n title: 'Notification Channel',\n },\n {\n id: 'in-app',\n title: 'In App',\n },\n ],\n properties: [\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'template',\n title: `@${i18n}:template`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'body',\n title: `@${i18n}:body`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'imageId',\n title: `@${i18n}:body`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n multiple: false,\n },\n },\n },\n },\n {\n name: 'channel',\n title: `@${i18n}:channel`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'SMS', name: 'sms' },\n { title: 'Email', name: 'email' },\n { title: 'In App', name: 'inApp' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: `@${i18n}:type`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Notification', name: 'notification' },\n { title: 'Promotion', name: 'promotion' },\n { title: 'PopUp', name: 'popup' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n },\n {\n name: 'contentType',\n title: `@${i18n}:contentType`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Media', name: 'media' },\n { title: 'Text', name: 'text' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'shape',\n title: `@${i18n}:shape`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Circle', name: 'circle' },\n { title: 'Square', name: 'square' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'placement',\n title: `t(\"placement\", { scope: \"${i18n}\" })`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Side Menu Footer', name: 'side-menu-footer' },\n { title: 'Side Menu Header', name: 'side-menu-header' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'pin',\n title: `t(\"pin\", { scope: \"${i18n}\" })`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'trigger',\n title: `t(\"trigger\", { scope: \"${i18n}\" })`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.cronJob,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'channel' }],\n commands: {\n create: {\n execute: async (data) => {\n console.log(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 {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n {\n name: 'all',\n title: '@general:terms.interface.selection.all-items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jaGFubmVsL2NoYW5uZWwuZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEYsTUFBTSxDQUFDLEtBQUssVUFBVSxnQ0FBZ0MsQ0FBQyxRQUFrQjtJQUN2RSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7SUFDaEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSTtRQUN0QyxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSztRQUN4QyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSTtRQUN0QyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsSUFBSSxJQUFJLFVBQVU7WUFDOUIsTUFBTSxFQUFFLElBQUksSUFBSSxXQUFXO1NBQzVCO1FBQ0QsZUFBZSxFQUFFLEVBQUU7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QUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjtxQkFDRjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLHlCQUF5QixFQUFFLENBQUM7aUJBQzFDO2dCQUNELElBQUksRUFBRTtvQkFDSixPQUFPLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixFQUFFLENBQUM7b0JBQ3ZDLEtBQUssRUFBRTt3QkFDTDs0QkFDRSxJQUFJLEVBQUUsS0FBSzs0QkFDWCxLQUFLLEVBQUUsOENBQThDOzRCQUNyRCxLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsRUFBRTs0QkFDWCxVQUFVLEVBQUUsRUFBRTs0QkFDZCxLQUFLLEVBQUUsRUFBRTt5QkFDVjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5UXVlcnlUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB9IGZyb20gJy4vY2hhbm5lbC5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5vdGlmaWNhdGlvbkNoYW5uZWxFbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuY2hhbm5lbC50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmNoYW5uZWwuaWNvbixcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBgQCR7aTE4bn06Y2hhbm5lbGAsXG4gICAgICBwbHVyYWw6IGBAJHtpMThufTpjaGFubmVsc2AsXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICB0aXRsZTogJ05vdGlmaWNhdGlvbiBDaGFubmVsJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgdGl0bGU6ICdJbiBBcHAnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5jb21tb24udGl0bGUnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OnRlbXBsYXRlYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmJvZHlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnJpY2hUZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2ltYWdlSWQnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmJvZHlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmZpbGVVcGxvYWRlcixcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmNoYW5uZWxgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnU01TJywgbmFtZTogJ3NtcycgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnRW1haWwnLCBuYW1lOiAnZW1haWwnIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ0luIEFwcCcsIG5hbWU6ICdpbkFwcCcgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcsXG4gICAgICAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndHlwZScsXG4gICAgICAgIHRpdGxlOiBgQCR7aTE4bn06dHlwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ05vdGlmaWNhdGlvbicsIG5hbWU6ICdub3RpZmljYXRpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1Byb21vdGlvbicsIG5hbWU6ICdwcm9tb3Rpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1BvcFVwJywgbmFtZTogJ3BvcHVwJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlJyxcbiAgICAgICAgdGl0bGU6IGBAJHtpMThufTpjb250ZW50VHlwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ01lZGlhJywgbmFtZTogJ21lZGlhJyB9LFxuICAgICAgICAgICAgICAgIHsgdGl0bGU6ICdUZXh0JywgbmFtZTogJ3RleHQnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgdGl0bGU6IGBAJHtpMThufTpzaGFwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ0NpcmNsZScsIG5hbWU6ICdjaXJjbGUnIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1NxdWFyZScsIG5hbWU6ICdzcXVhcmUnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3BsYWNlbWVudCcsXG4gICAgICAgIHRpdGxlOiBgdChcInBsYWNlbWVudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1NpZGUgTWVudSBGb290ZXInLCBuYW1lOiAnc2lkZS1tZW51LWZvb3RlcicgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnU2lkZSBNZW51IEhlYWRlcicsIG5hbWU6ICdzaWRlLW1lbnUtaGVhZGVyJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwaW4nLFxuICAgICAgICB0aXRsZTogYHQoXCJwaW5cIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnaW4tYXBwJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuY2hlY2tib3gsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndHJpZ2dlcicsXG4gICAgICAgIHRpdGxlOiBgdChcInRyaWdnZXJcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmNyb25Kb2IsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdib2R5JyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTtcblxuICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2luLWFwcCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWxsJyxcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5pbnRlcmZhY2Uuc2VsZWN0aW9uLmFsbC1pdGVtcycsXG4gICAgICAgICAgICAgIGZpeGVkOiB0cnVlLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbXSxcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgICAgICAgIHNvcnRzOiBbXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMNotificationEntityService, AXMNotificationEntityServiceImpl } from './notification.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, providers: [\n {\n provide: AXMNotificationEntityService,\n useClass: AXMNotificationEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationEntityService,\n useClass: AXMNotificationEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBYXhHLE1BQU0sT0FBTywyQkFBMkI7K0dBQTNCLDJCQUEyQjtnSEFBM0IsMkJBQTJCO2dIQUEzQiwyQkFBMkIsYUFQekI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxRQUFRLEVBQUUsZ0NBQWdDO2FBQzdDO1NBQ0o7OzRGQUVRLDJCQUEyQjtrQkFYdkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFFBQVEsRUFBRSxnQ0FBZ0M7eUJBQzdDO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2UsIEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2VJbXBsIH0gZnJvbSAnLi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW10sXG4gICAgZXhwb3J0czogW10sXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSxcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUgeyB9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXMNotificationManagementChannelEntityService, AXMNotificationManagementChannelEntityServiceImpl } from './channel.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationChannelEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, providers: [\n {\n provide: AXMNotificationManagementChannelEntityService,\n useClass: AXMNotificationManagementChannelEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationManagementChannelEntityService,\n useClass: AXMNotificationManagementChannelEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jaGFubmVsL2NoYW5uZWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLGlEQUFpRCxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBYXJJLE1BQU0sT0FBTyxrQ0FBa0M7K0dBQWxDLGtDQUFrQztnSEFBbEMsa0NBQWtDO2dIQUFsQyxrQ0FBa0MsYUFQaEM7WUFDUDtnQkFDSSxPQUFPLEVBQUUsNkNBQTZDO2dCQUN0RCxRQUFRLEVBQUUsaURBQWlEO2FBQzlEO1NBQ0o7OzRGQUVRLGtDQUFrQztrQkFYOUMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw2Q0FBNkM7NEJBQ3RELFFBQVEsRUFBRSxpREFBaUQ7eUJBQzlEO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSwgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCB9IGZyb20gJy4vY2hhbm5lbC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UsXG4gICAgICAgICAgICB1c2VDbGFzczogQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Ob3RpZmljYXRpb25DaGFubmVsRW50aXR5TW9kdWxlIHsgfVxuIl19","// Entity Services\nexport * from './notification';\nexport * from './template';\nexport * from './channel';\n// Entity Modules\nexport * from './notification/notification.module';\nexport * from './template/template.module';\nexport * from './channel/channel.module';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrQkFBa0I7QUFDbEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFdBQVcsQ0FBQztBQUUxQixpQkFBaUI7QUFDakIsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFbnRpdHkgU2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFubmVsJztcblxuLy8gRW50aXR5IE1vZHVsZXNcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZS90ZW1wbGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFubmVsL2NoYW5uZWwubW9kdWxlJztcbiJdfQ==","export const AXPNotificationManagementMenuKeys = {\n UserNotifications: 'user:notifications',\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbWVudS5rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHO0lBQzdDLGlCQUFpQixFQUFFLG9CQUFvQjtDQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYUE5vdGlmaWNhdGlvbk1hbmFnZW1lbnRNZW51S2V5cyA9IHtcbiAgICBVc2VyTm90aWZpY2F0aW9uczogJ3VzZXI6bm90aWZpY2F0aW9ucycsXG59IGFzIGNvbnN0O1xuXG4iXX0=","import { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { RootConfig } from './const';\nimport { AXPNotificationManagementMenuKeys } from './menu.keys';\nexport class AXMMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n this.sessionService = inject(AXPSessionService);\n }\n async provide(context) {\n const isAuthorized = await firstValueFrom(this.sessionService.isAuthorized$);\n if (!isAuthorized) {\n return;\n }\n const scope = RootConfig.config.i18n;\n const moduleName = RootConfig.module.name;\n context.find('user:profile').addItems([\n {\n name: AXPNotificationManagementMenuKeys.UserNotifications,\n text: `t('my', {scope: \"${scope}\"})`,\n icon: 'fa-light fa-bell',\n path: `${this.sessionService.application?.name}/${RootConfig.config.route}`,\n badgeKey: 'badge-notification',\n // data: {\n // requiredPermission: '',\n // },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21lbnUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRWhFLE1BQU0sT0FBTyxlQUFlO0lBQTVCO1FBQ1Usa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBd0JyRCxDQUFDO0lBdEJDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBK0I7UUFDM0MsTUFBTSxZQUFZLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNyQyxNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUUxQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUNwQztnQkFDRSxJQUFJLEVBQUUsaUNBQWlDLENBQUMsaUJBQWlCO2dCQUN6RCxJQUFJLEVBQUUsb0JBQW9CLEtBQUssS0FBSztnQkFDcEMsSUFBSSxFQUFFLGtCQUFrQjtnQkFDeEIsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFO2dCQUMzRSxRQUFRLEVBQUUsb0JBQW9CO2dCQUM5QixVQUFVO2dCQUNWLDZCQUE2QjtnQkFDN0IsS0FBSzthQUNOO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQTWVudVByb3ZpZGVyLCBBWFBNZW51UHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBOb3RpZmljYXRpb25NYW5hZ2VtZW50TWVudUtleXMgfSBmcm9tICcuL21lbnUua2V5cyc7XG5cbmV4cG9ydCBjbGFzcyBBWE1NZW51UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBNZW51UHJvdmlkZXIge1xuICBwcml2YXRlIGVudGl0eVNlcnZpY2UgPSBpbmplY3QoQVhQRW50aXR5U2VydmljZSk7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQTWVudVByb3ZpZGVyQ29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGlzQXV0aG9yaXplZCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2Vzc2lvblNlcnZpY2UuaXNBdXRob3JpemVkJCk7XG4gICAgaWYgKCFpc0F1dGhvcml6ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzY29wZSA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG4gICAgY29uc3QgbW9kdWxlTmFtZSA9IFJvb3RDb25maWcubW9kdWxlLm5hbWU7XG5cbiAgICBjb250ZXh0LmZpbmQoJ3VzZXI6cHJvZmlsZScpLmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogQVhQTm90aWZpY2F0aW9uTWFuYWdlbWVudE1lbnVLZXlzLlVzZXJOb3RpZmljYXRpb25zLFxuICAgICAgICB0ZXh0OiBgdCgnbXknLCB7c2NvcGU6IFwiJHtzY29wZX1cIn0pYCxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWJlbGwnLFxuICAgICAgICBwYXRoOiBgJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lfS8ke1Jvb3RDb25maWcuY29uZmlnLnJvdXRlfWAsXG4gICAgICAgIGJhZGdlS2V5OiAnYmFkZ2Utbm90aWZpY2F0aW9uJyxcbiAgICAgICAgLy8gZGF0YToge1xuICAgICAgICAvLyAgICByZXF1aXJlZFBlcm1pc3Npb246ICcnLFxuICAgICAgICAvLyB9LFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19","//#region ---- Core Imports ----\nimport { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\n/**\n * Service to display OS-level notifications using the browser's Notification API.\n */\nexport class AXMOsNotificationService {\n constructor() {\n this.isSupported = signal(false, ...(ngDevMode ? [{ debugName: \"isSupported\" }] : []));\n this.permission = signal(false, ...(ngDevMode ? [{ debugName: \"permission\" }] : []));\n this.isSupported.set('Notification' in window);\n }\n /**\n * Requests permission from the user to display desktop notifications.\n * @returns A promise that resolves to true if permission is granted, false otherwise.\n */\n async requestPermission() {\n if (!this.isSupported()) {\n console.warn('This browser does not support desktop notifications.');\n return false;\n }\n switch (Notification.permission) {\n case 'granted':\n this.permission.set(true);\n return true;\n case 'default':\n const permission = await Notification.requestPermission();\n this.permission.set(permission === 'granted');\n return this.permission();\n default:\n this.permission.set(false);\n return false;\n }\n }\n /**\n * Shows a desktop notification.\n * This method should be called after ensuring permission has been granted via requestPermission().\n *\n * @param title The title of the notification.\n * @param options Optional notification options including an onClick handler and window focusing.\n * @returns The Notification object if displayed, otherwise null.\n */\n show(title, options) {\n if (!this.isSupported()) {\n console.warn('This browser does not support desktop notifications.');\n return null;\n }\n if (!this.permission()) {\n console.warn(`Notification permission is ${Notification.permission}. Call requestPermission() first.`);\n return null;\n }\n const notification = new Notification(title, options);\n if (options?.onClick) {\n notification.onclick = () => {\n if (options.activeWindow) {\n window.focus();\n }\n options.onClick();\n };\n }\n return notification;\n }\n /**\n * Dismisses all active notifications or a specific one.\n * @param notification Optional. Pass a specific notification to close it; otherwise closes all.\n */\n dismiss(notification) {\n if (notification) {\n notification.close();\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Mtbm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvb3Mtbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVduRDs7R0FFRztBQUlILE1BQU0sT0FBTyx3QkFBd0I7SUFJbkM7UUFIZ0IsZ0JBQVcsR0FBRyxNQUFNLENBQVUsS0FBSyx1REFBQyxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxNQUFNLENBQVUsS0FBSyxzREFBQyxDQUFDO1FBR2xELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsSUFBSSxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLGlCQUFpQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELFFBQVEsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLEtBQUssU0FBUztnQkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDMUIsT0FBTyxJQUFJLENBQUM7WUFFZCxLQUFLLFNBQVM7Z0JBQ1osTUFBTSxVQUFVLEdBQUcsTUFBTSxZQUFZLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUM5QyxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUUzQjtnQkFDRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0IsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksSUFBSSxDQUFDLEtBQWEsRUFBRSxPQUFrQztRQUMzRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLDhCQUE4QixZQUFZLENBQUMsVUFBVSxtQ0FBbUMsQ0FBQyxDQUFDO1lBQ3ZHLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUV0RCxJQUFJLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUNyQixZQUFZLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRTtnQkFDMUIsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQ3pCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsQ0FBQztnQkFDRCxPQUFPLENBQUMsT0FBUSxFQUFFLENBQUM7WUFDckIsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxPQUFPLENBQUMsWUFBMkI7UUFDeEMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7K0dBM0VVLHdCQUF3QjttSEFBeEIsd0JBQXdCLGNBRnZCLE1BQU07OzRGQUVQLHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIENvcmUgSW1wb3J0cyAgIC0tLS1cbmltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8jZW5kcmVnaW9uXG5cbi8qKlxuICogRXh0ZW5kcyBzdGFuZGFyZCBOb3RpZmljYXRpb25PcHRpb25zIHRvIGluY2x1ZGUgYSBjbGljayBoYW5kbGVyIGFuZCB3aW5kb3cgZm9jdXNpbmcgYmVoYXZpb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQVhNT3NOb3RpZmljYXRpb25PcHRpb25zIGV4dGVuZHMgTm90aWZpY2F0aW9uT3B0aW9ucyB7XG4gIG9uQ2xpY2s/OiAoKSA9PiB2b2lkO1xuICBhY3RpdmVXaW5kb3c/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFNlcnZpY2UgdG8gZGlzcGxheSBPUy1sZXZlbCBub3RpZmljYXRpb25zIHVzaW5nIHRoZSBicm93c2VyJ3MgTm90aWZpY2F0aW9uIEFQSS5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYTU9zTm90aWZpY2F0aW9uU2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBpc1N1cHBvcnRlZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBwZXJtaXNzaW9uID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmlzU3VwcG9ydGVkLnNldCgnTm90aWZpY2F0aW9uJyBpbiB3aW5kb3cpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlcXVlc3RzIHBlcm1pc3Npb24gZnJvbSB0aGUgdXNlciB0byBkaXNwbGF5IGRlc2t0b3Agbm90aWZpY2F0aW9ucy5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBpZiBwZXJtaXNzaW9uIGlzIGdyYW50ZWQsIGZhbHNlIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyByZXF1ZXN0UGVybWlzc2lvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAoIXRoaXMuaXNTdXBwb3J0ZWQoKSkge1xuICAgICAgY29uc29sZS53YXJuKCdUaGlzIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBkZXNrdG9wIG5vdGlmaWNhdGlvbnMuJyk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgc3dpdGNoIChOb3RpZmljYXRpb24ucGVybWlzc2lvbikge1xuICAgICAgY2FzZSAnZ3JhbnRlZCc6XG4gICAgICAgIHRoaXMucGVybWlzc2lvbi5zZXQodHJ1ZSk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuXG4gICAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgICAgY29uc3QgcGVybWlzc2lvbiA9IGF3YWl0IE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpO1xuICAgICAgICB0aGlzLnBlcm1pc3Npb24uc2V0KHBlcm1pc3Npb24gPT09ICdncmFudGVkJyk7XG4gICAgICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb24oKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9uLnNldChmYWxzZSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2hvd3MgYSBkZXNrdG9wIG5vdGlmaWNhdGlvbi5cbiAgICogVGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBhZnRlciBlbnN1cmluZyBwZXJtaXNzaW9uIGhhcyBiZWVuIGdyYW50ZWQgdmlhIHJlcXVlc3RQZXJtaXNzaW9uKCkuXG4gICAqXG4gICAqIEBwYXJhbSB0aXRsZSBUaGUgdGl0bGUgb2YgdGhlIG5vdGlmaWNhdGlvbi5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9uYWwgbm90aWZpY2F0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIGFuIG9uQ2xpY2sgaGFuZGxlciBhbmQgd2luZG93IGZvY3VzaW5nLlxuICAgKiBAcmV0dXJucyBUaGUgTm90aWZpY2F0aW9uIG9iamVjdCBpZiBkaXNwbGF5ZWQsIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHNob3codGl0bGU6IHN0cmluZywgb3B0aW9ucz86IEFYTU9zTm90aWZpY2F0aW9uT3B0aW9ucyk6IE5vdGlmaWNhdGlvbiB8IG51bGwge1xuICAgIGlmICghdGhpcy5pc1N1cHBvcnRlZCgpKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1RoaXMgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IGRlc2t0b3Agbm90aWZpY2F0aW9ucy4nKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wZXJtaXNzaW9uKCkpIHtcbiAgICAgIGNvbnNvbGUud2FybihgTm90aWZpY2F0aW9uIHBlcm1pc3Npb24gaXMgJHtOb3RpZmljYXRpb24ucGVybWlzc2lvbn0uIENhbGwgcmVxdWVzdFBlcm1pc3Npb24oKSBmaXJzdC5gKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IG5ldyBOb3RpZmljYXRpb24odGl0bGUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKG9wdGlvbnM/Lm9uQ2xpY2spIHtcbiAgICAgIG5vdGlmaWNhdGlvbi5vbmNsaWNrID0gKCkgPT4ge1xuICAgICAgICBpZiAob3B0aW9ucy5hY3RpdmVXaW5kb3cpIHtcbiAgICAgICAgICB3aW5kb3cuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBvcHRpb25zLm9uQ2xpY2shKCk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBub3RpZmljYXRpb247XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzc2VzIGFsbCBhY3RpdmUgbm90aWZpY2F0aW9ucyBvciBhIHNwZWNpZmljIG9uZS5cbiAgICogQHBhcmFtIG5vdGlmaWNhdGlvbiBPcHRpb25hbC4gUGFzcyBhIHNwZWNpZmljIG5vdGlmaWNhdGlvbiB0byBjbG9zZSBpdDsgb3RoZXJ3aXNlIGNsb3NlcyBhbGwuXG4gICAqL1xuICBwdWJsaWMgZGlzbWlzcyhub3RpZmljYXRpb24/OiBOb3RpZmljYXRpb24pOiB2b2lkIHtcbiAgICBpZiAobm90aWZpY2F0aW9uKSB7XG4gICAgICBub3RpZmljYXRpb24uY2xvc2UoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { computed, effect, inject, Injectable, signal } from '@angular/core';\nimport { AXMNotificationEntityService } from '../../entities/notification';\nimport { AXMOsNotificationService } from './os-notification.service';\nimport * as i0 from \"@angular/core\";\n/**\n * Signal store that provides a reactive interface for notification-related operations\n * Acts as a layer between notification components and the entity service\n */\nexport class AXMNotificationConnectorService {\n // Effects\n constructor() {\n this.notificationService = inject(AXMNotificationEntityService);\n this.osNotificationService = inject(AXMOsNotificationService);\n // State signals\n this.isLoading = signal(false, ...(ngDevMode ? [{ debugName: \"isLoading\" }] : []));\n this.error = signal(null, ...(ngDevMode ? [{ debugName: \"error\" }] : []));\n this.notifications = signal([], ...(ngDevMode ? [{ debugName: \"notifications\" }] : []));\n this.totalCount = signal(0, ...(ngDevMode ? [{ debugName: \"totalCount\" }] : []));\n // Public computed signals\n this.loading = computed(() => this.isLoading(), ...(ngDevMode ? [{ debugName: \"loading\" }] : []));\n this.errorMessage = computed(() => this.error(), ...(ngDevMode ? [{ debugName: \"errorMessage\" }] : []));\n this.notificationList = computed(() => this.notifications(), ...(ngDevMode ? [{ debugName: \"notificationList\" }] : []));\n this.total = computed(() => this.totalCount(), ...(ngDevMode ? [{ debugName: \"total\" }] : []));\n this.unreadCount = computed(() => this.notifications().filter((notification) => notification.readAt === null).length, ...(ngDevMode ? [{ debugName: \"unreadCount\" }] : []));\n // Auto-fetch notifications when service is initialized\n effect(() => {\n this.getList();\n });\n }\n // Methods from entity service with additional state management\n /**\n * Get list of notifications\n */\n async getList() {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const response = await this.notificationService.getList();\n // Sort notifications by createAt date in descending order (newest first)\n const sortedItems = [...response.items].sort((a, b) => {\n const dateA = new Date(a.createAt).getTime();\n const dateB = new Date(b.createAt).getTime();\n return dateB - dateA;\n });\n this.notifications.set(sortedItems);\n this.totalCount.set(response.total);\n return {\n ...response,\n items: sortedItems,\n };\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to fetch notifications');\n return { total: 0, items: [] };\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Mark notifications as read\n * If no specific IDs are provided, mark all unread notifications as read\n * If specific IDs are provided, set readAt only when it is currently null (no toggling)\n */\n async markAsRead(payload = { id: [] }) {\n try {\n // this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.markAsRead(payload);\n // Update local state to reflect read status without toggling\n if (payload?.id?.length) {\n // Set readAt for specific notifications only if currently unread\n this.notifications.update((notifications) => notifications.map((notification) => {\n if (payload.id.includes(notification.id)) {\n // Only set readAt when it is null (no toggling to unread)\n return notification.readAt === null ? { ...notification, readAt: new Date() } : notification;\n }\n return notification;\n }));\n }\n else {\n // If no specific IDs are provided, mark all unread notifications as read\n this.notifications.update((notifications) => notifications.map((notification) => notification.readAt ? notification : { ...notification, readAt: new Date() }));\n }\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to mark notifications as read');\n }\n finally {\n // this.isLoading.set(false);\n }\n }\n async markAllAsRead() {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.markAllAsRead();\n this.notifications.update((notifications) => notifications.map((notification) => ({ ...notification, readAt: new Date() })));\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to mark all notifications as read');\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Create a new notification\n */\n async create(payload, options) {\n this.isLoading.set(true);\n this.error.set(null);\n //send os notification\n const isPermissionGranted = await this.osNotificationService.requestPermission();\n if (payload && isPermissionGranted) {\n this.osNotificationService.show(payload.title || 'Notification', {\n body: payload.body || 'No body',\n ...options,\n });\n }\n const createdNotification = await this.notificationService.create(payload);\n // Refresh list after creating a notification\n this.notifications.update((notifications) => {\n const newNotifications = [createdNotification, ...notifications];\n return newNotifications.sort((a, b) => new Date(b.createAt).getTime() - new Date(a.createAt).getTime());\n });\n this.totalCount.update((count) => count + 1);\n await this.getList();\n this.isLoading.set(false);\n }\n // Methods from AXMEntityCrudServiceImpl\n /**\n * Insert one notification\n */\n async insertOne(request) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const id = await this.notificationService.insertOne(request);\n // Refresh list after inserting\n await this.getList();\n return id;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to insert notification');\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Get one notification by id\n */\n async getOne(id) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n return await this.notificationService.getOne(id);\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to get notification with id ${id}`);\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Delete one notification\n */\n async deleteOne(id) {\n try {\n // this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.deleteOne(id);\n // Update local state to remove deleted notification\n this.notifications.update((notifications) => notifications.filter((notification) => notification.id !== id));\n // Update total count\n this.totalCount.update((count) => count - 1);\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to delete notification with id ${id}`);\n throw err;\n }\n finally {\n // this.isLoading.set(false);\n }\n }\n /**\n * Update one notification\n */\n async updateOne(id, values) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const updated = await this.notificationService.updateOne(id, values);\n // Update local state to reflect changes\n this.notifications.update((notifications) => notifications.map((notification) => notification.id === id ? { ...notification, ...values } : notification));\n return updated;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to update notification with id ${id}`);\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Query notifications\n */\n async query(request = { skip: 0, take: 100 }) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const result = await this.notificationService.query(request);\n // Update local state with query results\n this.notifications.set(result.items);\n this.totalCount.set(result.total);\n return result;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to query notifications');\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTzNFLE9BQU8sRUFBNEIsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFL0Y7OztHQUdHO0FBSUgsTUFBTSxPQUFPLCtCQUErQjtJQW1CMUMsVUFBVTtJQUNWO1FBbkJpQix3QkFBbUIsR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUMzRCwwQkFBcUIsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUUxRSxnQkFBZ0I7UUFDQyxjQUFTLEdBQUcsTUFBTSxDQUFVLEtBQUsscURBQUMsQ0FBQztRQUNuQyxVQUFLLEdBQUcsTUFBTSxDQUFnQixJQUFJLGlEQUFDLENBQUM7UUFDcEMsa0JBQWEsR0FBRyxNQUFNLENBQXdCLEVBQUUseURBQUMsQ0FBQztRQUNsRCxlQUFVLEdBQUcsTUFBTSxDQUFTLENBQUMsc0RBQUMsQ0FBQztRQUVoRCwwQkFBMEI7UUFDakIsWUFBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLG1EQUFDLENBQUM7UUFDM0MsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSx3REFBQyxDQUFDO1FBQzVDLHFCQUFnQixH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QyxPQUFPLENBQUMsQ0FBQyxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDckYsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQzsrR0FuUVUsK0JBQStCO21IQUEvQiwrQkFBK0IsY0FGOUIsTUFBTTs7NEZBRVAsK0JBQStCO2tCQUgzQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFBhZ2VkTGlzdFJlc3VsdCwgQVhQUXVlcnlSZXF1ZXN0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24udHlwZXMnO1xuaW1wb3J0IHtcbiAgQVhNTm90aWZpY2F0aW9uSXRlbSxcbiAgQVhNTm90aWZpY2F0aW9uTWFya0FzUmVhZFJlcXVlc3QsXG4gIEFYTU5vdGlmaWNhdGlvblJlc3BvbnNlLFxufSBmcm9tICcuL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuaW1wb3J0IHsgQVhNT3NOb3RpZmljYXRpb25PcHRpb25zLCBBWE1Pc05vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL29zLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBTaWduYWwgc3RvcmUgdGhhdCBwcm92aWRlcyBhIHJlYWN0aXZlIGludGVyZmFjZSBmb3Igbm90aWZpY2F0aW9uLXJlbGF0ZWQgb3BlcmF0aW9uc1xuICogQWN0cyBhcyBhIGxheWVyIGJldHdlZW4gbm90aWZpY2F0aW9uIGNvbXBvbmVudHMgYW5kIHRoZSBlbnRpdHkgc2VydmljZVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uQ29ubmVjdG9yU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uU2VydmljZSA9IGluamVjdChBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvc05vdGlmaWNhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhNT3NOb3RpZmljYXRpb25TZXJ2aWNlKTtcblxuICAvLyBTdGF0ZSBzaWduYWxzXG4gIHByaXZhdGUgcmVhZG9ubHkgaXNMb2FkaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvciA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb25zID0gc2lnbmFsPEFYTU5vdGlmaWNhdGlvbkl0ZW1bXT4oW10pO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvdGFsQ291bnQgPSBzaWduYWw8bnVtYmVyPigwKTtcblxuICAvLyBQdWJsaWMgY29tcHV0ZWQgc2lnbmFsc1xuICByZWFkb25seSBsb2FkaW5nID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pc0xvYWRpbmcoKSk7XG4gIHJlYWRvbmx5IGVycm9yTWVzc2FnZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZXJyb3IoKSk7XG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkxpc3QgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm5vdGlmaWNhdGlvbnMoKSk7XG4gIHJlYWRvbmx5IHRvdGFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50b3RhbENvdW50KCkpO1xuICByZWFkb25seSB1bnJlYWRDb3VudCA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMubm90aWZpY2F0aW9ucygpLmZpbHRlcigobm90aWZpY2F0aW9uKSA9PiBub3RpZmljYXRpb24ucmVhZEF0ID09PSBudWxsKS5sZW5ndGgsXG4gICk7XG5cbiAgLy8gRWZmZWN0c1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBBdXRvLWZldGNoIG5vdGlmaWNhdGlvbnMgd2hlbiBzZXJ2aWNlIGlzIGluaXRpYWxpemVkXG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuZ2V0TGlzdCgpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gTWV0aG9kcyBmcm9tIGVudGl0eSBzZXJ2aWNlIHdpdGggYWRkaXRpb25hbCBzdGF0ZSBtYW5hZ2VtZW50XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIGFzeW5jIGdldExpc3QoKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25SZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZ2V0TGlzdCgpO1xuXG4gICAgICAvLyBTb3J0IG5vdGlmaWNhdGlvbnMgYnkgY3JlYXRlQXQgZGF0ZSBpbiBkZXNjZW5kaW5nIG9yZGVyIChuZXdlc3QgZmlyc3QpXG4gICAgICBjb25zdCBzb3J0ZWRJdGVtcyA9IFsuLi5yZXNwb25zZS5pdGVtc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBjb25zdCBkYXRlQSA9IG5ldyBEYXRlKGEuY3JlYXRlQXQpLmdldFRpbWUoKTtcbiAgICAgICAgY29uc3QgZGF0ZUIgPSBuZXcgRGF0ZShiLmNyZWF0ZUF0KS5nZXRUaW1lKCk7XG4gICAgICAgIHJldHVybiBkYXRlQiAtIGRhdGVBO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5zZXQoc29ydGVkSXRlbXMpO1xuICAgICAgdGhpcy50b3RhbENvdW50LnNldChyZXNwb25zZS50b3RhbCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJlc3BvbnNlLFxuICAgICAgICBpdGVtczogc29ydGVkSXRlbXMsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gZmV0Y2ggbm90aWZpY2F0aW9ucycpO1xuICAgICAgcmV0dXJuIHsgdG90YWw6IDAsIGl0ZW1zOiBbXSB9O1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIG5vdGlmaWNhdGlvbnMgYXMgcmVhZFxuICAgKiBJZiBubyBzcGVjaWZpYyBJRHMgYXJlIHByb3ZpZGVkLCBtYXJrIGFsbCB1bnJlYWQgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqIElmIHNwZWNpZmljIElEcyBhcmUgcHJvdmlkZWQsIHNldCByZWFkQXQgb25seSB3aGVuIGl0IGlzIGN1cnJlbnRseSBudWxsIChubyB0b2dnbGluZylcbiAgICovXG4gIGFzeW5jIG1hcmtBc1JlYWQocGF5bG9hZDogQVhNTm90aWZpY2F0aW9uTWFya0FzUmVhZFJlcXVlc3QgPSB7IGlkOiBbXSB9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UubWFya0FzUmVhZChwYXlsb2FkKTtcblxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlIHRvIHJlZmxlY3QgcmVhZCBzdGF0dXMgd2l0aG91dCB0b2dnbGluZ1xuICAgICAgaWYgKHBheWxvYWQ/LmlkPy5sZW5ndGgpIHtcbiAgICAgICAgLy8gU2V0IHJlYWRBdCBmb3Igc3BlY2lmaWMgbm90aWZpY2F0aW9ucyBvbmx5IGlmIGN1cnJlbnRseSB1bnJlYWRcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVwZGF0ZSgobm90aWZpY2F0aW9ucykgPT5cbiAgICAgICAgICBub3RpZmljYXRpb25zLm1hcCgobm90aWZpY2F0aW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAocGF5bG9hZC5pZC5pbmNsdWRlcyhub3RpZmljYXRpb24uaWQpKSB7XG4gICAgICAgICAgICAgIC8vIE9ubHkgc2V0IHJlYWRBdCB3aGVuIGl0IGlzIG51bGwgKG5vIHRvZ2dsaW5nIHRvIHVucmVhZClcbiAgICAgICAgICAgICAgcmV0dXJuIG5vdGlmaWNhdGlvbi5yZWFkQXQgPT09IG51bGwgPyB7IC4uLm5vdGlmaWNhdGlvbiwgcmVhZEF0OiBuZXcgRGF0ZSgpIH0gOiBub3RpZmljYXRpb247XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbm90aWZpY2F0aW9uO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gSWYgbm8gc3BlY2lmaWMgSURzIGFyZSBwcm92aWRlZCwgbWFyayBhbGwgdW5yZWFkIG5vdGlmaWNhdGlvbnMgYXMgcmVhZFxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudXBkYXRlKChub3RpZmljYXRpb25zKSA9PlxuICAgICAgICAgIG5vdGlmaWNhdGlvbnMubWFwKChub3RpZmljYXRpb24pID0+XG4gICAgICAgICAgICBub3RpZmljYXRpb24ucmVhZEF0ID8gbm90aWZpY2F0aW9uIDogeyAuLi5ub3RpZmljYXRpb24sIHJlYWRBdDogbmV3IERhdGUoKSB9LFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmVycm9yLnNldChlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBtYXJrIG5vdGlmaWNhdGlvbnMgYXMgcmVhZCcpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIG1hcmtBbGxBc1JlYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UubWFya0FsbEFzUmVhZCgpO1xuXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudXBkYXRlKChub3RpZmljYXRpb25zKSA9PlxuICAgICAgICBub3RpZmljYXRpb25zLm1hcCgobm90aWZpY2F0aW9uKSA9PiAoeyAuLi5ub3RpZmljYXRpb24sIHJlYWRBdDogbmV3IERhdGUoKSB9KSksXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gbWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkJyk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBub3RpZmljYXRpb25cbiAgICovXG4gIGFzeW5jIGNyZWF0ZShwYXlsb2FkPzogQVhNTm90aWZpY2F0aW9uSXRlbSwgb3B0aW9ucz86IEFYTU9zTm90aWZpY2F0aW9uT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgIC8vc2VuZCBvcyBub3RpZmljYXRpb25cbiAgICBjb25zdCBpc1Blcm1pc3Npb25HcmFudGVkID0gYXdhaXQgdGhpcy5vc05vdGlmaWNhdGlvblNlcnZpY2UucmVxdWVzdFBlcm1pc3Npb24oKTtcbiAgICBpZiAocGF5bG9hZCAmJiBpc1Blcm1pc3Npb25HcmFudGVkKSB7XG4gICAgICB0aGlzLm9zTm90aWZpY2F0aW9uU2VydmljZS5zaG93KHBheWxvYWQudGl0bGUgfHwgJ05vdGlmaWNhdGlvbicsIHtcbiAgICAgICAgYm9keTogcGF5bG9hZC5ib2R5IHx8ICdObyBib2R5JyxcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBjcmVhdGVkTm90aWZpY2F0aW9uID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmNyZWF0ZShwYXlsb2FkKTtcblxuICAgIC8vIFJlZnJlc2ggbGlzdCBhZnRlciBjcmVhdGluZyBhIG5vdGlmaWNhdGlvblxuICAgIHRoaXMubm90aWZpY2F0aW9ucy51cGRhdGUoKG5vdGlmaWNhdGlvbnMpID0+IHtcbiAgICAgIGNvbnN0IG5ld05vdGlmaWNhdGlvbnMgPSBbY3JlYXRlZE5vdGlmaWNhdGlvbiwgLi4ubm90aWZpY2F0aW9uc107XG4gICAgICByZXR1cm4gbmV3Tm90aWZpY2F0aW9ucy5zb3J0KChhLCBiKSA9PiBuZXcgRGF0ZShiLmNyZWF0ZUF0KS5nZXRUaW1lKCkgLSBuZXcgRGF0ZShhLmNyZWF0ZUF0KS5nZXRUaW1lKCkpO1xuICAgIH0pO1xuICAgIHRoaXMudG90YWxDb3VudC51cGRhdGUoKGNvdW50KSA9PiBjb3VudCArIDEpO1xuICAgIGF3YWl0IHRoaXMuZ2V0TGlzdCgpO1xuXG4gICAgdGhpcy5pc0xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgfVxuXG4gIC8vIE1ldGhvZHMgZnJvbSBBWE1FbnRpdHlDcnVkU2VydmljZUltcGxcblxuICAvKipcbiAgICogSW5zZXJ0IG9uZSBub3RpZmljYXRpb25cbiAgICovXG4gIGFzeW5jIGluc2VydE9uZShyZXF1ZXN0OiBPbWl0PEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbCwgJ2lkJz4pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgaWQgPSBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuaW5zZXJ0T25lKHJlcXVlc3QpO1xuXG4gICAgICAvLyBSZWZyZXNoIGxpc3QgYWZ0ZXIgaW5zZXJ0aW5nXG4gICAgICBhd2FpdCB0aGlzLmdldExpc3QoKTtcblxuICAgICAgcmV0dXJuIGlkO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gaW5zZXJ0IG5vdGlmaWNhdGlvbicpO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgb25lIG5vdGlmaWNhdGlvbiBieSBpZFxuICAgKi9cbiAgYXN5bmMgZ2V0T25lKGlkOiBzdHJpbmcpOiBQcm9taXNlPEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5nZXRPbmUoaWQpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IGBGYWlsZWQgdG8gZ2V0IG5vdGlmaWNhdGlvbiB3aXRoIGlkICR7aWR9YCk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBvbmUgbm90aWZpY2F0aW9uXG4gICAqL1xuICBhc3luYyBkZWxldGVPbmUoaWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG5cbiAgICAgIC8vIFVwZGF0ZSBsb2NhbCBzdGF0ZSB0byByZW1vdmUgZGVsZXRlZCBub3RpZmljYXRpb25cbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy51cGRhdGUoKG5vdGlmaWNhdGlvbnMpID0+IG5vdGlmaWNhdGlvbnMuZmlsdGVyKChub3RpZmljYXRpb24pID0+IG5vdGlmaWNhdGlvbi5pZCAhPT0gaWQpKTtcblxuICAgICAgLy8gVXBkYXRlIHRvdGFsIGNvdW50XG4gICAgICB0aGlzLnRvdGFsQ291bnQudXBkYXRlKChjb3VudCkgPT4gY291bnQgLSAxKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBgRmFpbGVkIHRvIGRlbGV0ZSBub3RpZmljYXRpb24gd2l0aCBpZCAke2lkfWApO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgb25lIG5vdGlmaWNhdGlvblxuICAgKi9cbiAgYXN5bmMgdXBkYXRlT25lKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBQYXJ0aWFsPEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbD4sXG4gICk6IFByb21pc2U8QVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE5vdGlmaWNhdGlvbkVudGl0eU1vZGVsPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBjb25zdCB1cGRhdGVkID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnVwZGF0ZU9uZShpZCwgdmFsdWVzKTtcblxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlIHRvIHJlZmxlY3QgY2hhbmdlc1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVwZGF0ZSgobm90aWZpY2F0aW9ucykgPT5cbiAgICAgICAgbm90aWZpY2F0aW9ucy5tYXAoKG5vdGlmaWNhdGlvbikgPT5cbiAgICAgICAgICBub3RpZmljYXRpb24uaWQgPT09IGlkID8gKHsgLi4ubm90aWZpY2F0aW9uLCAuLi52YWx1ZXMgfSBhcyBBWE1Ob3RpZmljYXRpb25JdGVtKSA6IG5vdGlmaWNhdGlvbixcbiAgICAgICAgKSxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiB1cGRhdGVkO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IGBGYWlsZWQgdG8gdXBkYXRlIG5vdGlmaWNhdGlvbiB3aXRoIGlkICR7aWR9YCk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFF1ZXJ5IG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIGFzeW5jIHF1ZXJ5KHJlcXVlc3Q6IEFYUFF1ZXJ5UmVxdWVzdCA9IHsgc2tpcDogMCwgdGFrZTogMTAwIH0pOiBQcm9taXNlPEFYUFBhZ2VkTGlzdFJlc3VsdDxBWE1Ob3RpZmljYXRpb25JdGVtPj4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnF1ZXJ5KHJlcXVlc3QpO1xuXG4gICAgICAvLyBVcGRhdGUgbG9jYWwgc3RhdGUgd2l0aCBxdWVyeSByZXN1bHRzXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMuc2V0KHJlc3VsdC5pdGVtcyBhcyB1bmtub3duIGFzIEFYTU5vdGlmaWNhdGlvbkl0ZW1bXSk7XG4gICAgICB0aGlzLnRvdGFsQ291bnQuc2V0KHJlc3VsdC50b3RhbCk7XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmVycm9yLnNldChlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBxdWVyeSBub3RpZmljYXRpb25zJyk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iXX0=","import { computed, inject, Injectable } from '@angular/core';\nimport { AXMNotificationConnectorService } from './features/shared/notification-management.service';\nimport * as i0 from \"@angular/core\";\n// Provides a live unread notifications count for header/task badges\nexport class AXMNotificationBadgeProvider {\n constructor() {\n this.notificationService = inject(AXMNotificationConnectorService);\n this.key = 'badge-notification';\n this.count = computed(() => this.notificationService.unreadCount(), ...(ngDevMode ? [{ debugName: \"count\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9iYWRnZS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbURBQW1ELENBQUM7O0FBRXBHLG9FQUFvRTtBQUVwRSxNQUFNLE9BQU8sNEJBQTRCO0lBRHpDO1FBRW1CLHdCQUFtQixHQUFHLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ3RFLFFBQUcsR0FBRyxvQkFBb0IsQ0FBQztRQUMzQixVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsaURBQUMsQ0FBQztLQUN6RTsrR0FKWSw0QkFBNEI7bUhBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFRhc2tCYWRnZVByb3ZpZGVyIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25Db25uZWN0b3JTZXJ2aWNlIH0gZnJvbSAnLi9mZWF0dXJlcy9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5cbi8vIFByb3ZpZGVzIGEgbGl2ZSB1bnJlYWQgbm90aWZpY2F0aW9ucyBjb3VudCBmb3IgaGVhZGVyL3Rhc2sgYmFkZ2VzXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uQmFkZ2VQcm92aWRlciBpbXBsZW1lbnRzIEFYUFRhc2tCYWRnZVByb3ZpZGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICByZWFkb25seSBrZXkgPSAnYmFkZ2Utbm90aWZpY2F0aW9uJztcbiAgcmVhZG9ubHkgY291bnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudW5yZWFkQ291bnQoKSk7XG59XG4iXX0=","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEntityLoader {\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 return new Promise(async (resolve) => {\n switch (entityName) {\n case RootConfig.entities.template.name: {\n const entity = (await import('./entities/template/template.entity')).notificationTemplateEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case RootConfig.entities.channel.name: {\n const entity = (await import('./entities/channel/channel.entity')).notificationChannelEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n //TODO: Add your custom entity here\n case 'my-notification': {\n const entity = (await import('./entities/my-notification')).myNotificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case RootConfig.entities.notification.name: {\n const entity = (await import('./entities/notification/notification.entity')).notificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n default:\n resolve(null);\n }\n });\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXR5LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUdyQyxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQVNVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0FrQ3JDO0lBekNDLE9BQU87UUFDTCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBR0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7Z0JBQ25DLFFBQVEsVUFBVSxFQUFFLENBQUM7b0JBQ25CLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzt3QkFDdkMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUMsaUNBQWlDLENBQUM7d0JBQ3ZHLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLE1BQU07b0JBQ1IsQ0FBQztvQkFDRCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7d0JBQ3RDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDO3dCQUNwRyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUMvQixNQUFNO29CQUNSLENBQUM7b0JBQ0QsbUNBQW1DO29CQUNuQyxLQUFLLGlCQUFpQixDQUFDLENBQUMsQ0FBQzt3QkFDdkIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUM7d0JBQ3hGLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLE1BQU07b0JBQ1IsQ0FBQztvQkFDRCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7d0JBQzNDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDO3dCQUN2RyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUMvQixNQUFNO29CQUNSLENBQUM7b0JBQ0Q7d0JBQ0UsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsQixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOytHQXpDVSxlQUFlO21IQUFmLGVBQWU7OzRGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHkgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQge1xuICBBWFBFbnRpdHlEZWZpbml0aW9uTG9hZGVyLFxuICBBWFBFbnRpdHlEZWZpbml0aW9uUHJlbG9hZGVyLFxuICBBWFBFbnRpdHlQcmVsb2FkRW50aXR5LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRW50aXR5TG9hZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByZWxvYWQoKTogQVhQRW50aXR5UHJlbG9hZEVudGl0eVtdIHtcbiAgICBjb25zdCBtb2R1bGUgPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBBcnJheS5mcm9tKE9iamVjdC52YWx1ZXMoUm9vdENvbmZpZy5lbnRpdGllcykpLm1hcCgoZW50aXR5OiBhbnkpID0+ICh7XG4gICAgICBtb2R1bGU6IG1vZHVsZSxcbiAgICAgIGVudGl0eTogZW50aXR5Lm5hbWUsXG4gICAgfSkpO1xuICB9XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKGVudGl0eU5hbWUpIHtcbiAgICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUubmFtZToge1xuICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy90ZW1wbGF0ZS90ZW1wbGF0ZS5lbnRpdHknKSkubm90aWZpY2F0aW9uVGVtcGxhdGVFbnRpdHlGYWN0b3J5O1xuICAgICAgICAgICAgcmVzb2x2ZShlbnRpdHkodGhpcy5pbmplY3RvcikpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWU6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvY2hhbm5lbC9jaGFubmVsLmVudGl0eScpKS5ub3RpZmljYXRpb25DaGFubmVsRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvL1RPRE86IEFkZCB5b3VyIGN1c3RvbSBlbnRpdHkgaGVyZVxuICAgICAgICAgIGNhc2UgJ215LW5vdGlmaWNhdGlvbic6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvbXktbm90aWZpY2F0aW9uJykpLm15Tm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMubm90aWZpY2F0aW9uLm5hbWU6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5lbnRpdHknKSkubm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=","import { inject, Injectable, InjectionToken } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXPNotificationDefinitionProvider {\n}\nconst DEFAULT_NOTIFICATION_DEFINITION = [\n// {\n// name: 'File',\n// title: 'Email',\n// icon: 'fa-solid fa-envelope',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for email', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Chat',\n// title: 'SMS',\n// icon: 'fa-solid fa-comment-sms',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for sms', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Comment',\n// title: 'Comment',\n// icon: 'fa-solid fa-comment'\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for comment', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Log',\n// title: 'Log',\n// icon: 'fa-solid fa-file-lines',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for log', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n];\nexport class AXPNotificationDefinitionProviderDefault extends AXPNotificationDefinitionProvider {\n async provide() {\n return DEFAULT_NOTIFICATION_DEFINITION;\n }\n}\nexport const AXP_NOTIFICATION_DEFINITION_PROVIDER = new InjectionToken('AXP_NOTIFICATION_DEFINITION_PROVIDER');\nexport class AXPNotificationDefinitionService {\n constructor() {\n this.providers = inject(AXP_NOTIFICATION_DEFINITION_PROVIDER, { optional: true });\n }\n getProviders() {\n return this.providers?.flat() ?? [];\n }\n resolve(name) {\n return this.getProviders()?.find((p) => p.name === name) ?? null;\n }\n execute(command, item) {\n const provider = this.getProviders()?.find((p) => p.name === item.type);\n if (!provider) {\n throw new Error('Notification provider not found');\n }\n provider.execute(command, item);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlZmluaXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9ub3RpZmljYXRpb24tZGVmaW5pdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBdUMsTUFBTSxlQUFlLENBQUM7O0FBY3hHLE1BQU0sT0FBZ0IsaUNBQWlDO0NBT3REO0FBRUQsTUFBTSwrQkFBK0IsR0FBd0M7QUFDM0UsSUFBSTtBQUNKLGtCQUFrQjtBQUNsQixvQkFBb0I7QUFDcEIsa0NBQWtDO0FBQ2xDLDBGQUEwRjtBQUMxRiw4Q0FBOEM7QUFDOUMsK0RBQStEO0FBQy9ELGdDQUFnQztBQUNoQyxPQUFPO0FBQ1AsS0FBSztBQUNMLElBQUk7QUFDSixrQkFBa0I7QUFDbEIsa0JBQWtCO0FBQ2xCLHFDQUFxQztBQUNyQywwRkFBMEY7QUFDMUYsNENBQTRDO0FBQzVDLCtEQUErRDtBQUMvRCxnQ0FBZ0M7QUFDaEMsT0FBTztBQUNQLEtBQUs7QUFDTCxJQUFJO0FBQ0oscUJBQXFCO0FBQ3JCLHNCQUFzQjtBQUN0QixnQ0FBZ0M7QUFDaEMsMEZBQTBGO0FBQzFGLGdEQUFnRDtBQUNoRCwrREFBK0Q7QUFDL0QsZ0NBQWdDO0FBQ2hDLE9BQU87QUFDUCxLQUFLO0FBQ0wsSUFBSTtBQUNKLGlCQUFpQjtBQUNqQixrQkFBa0I7QUFDbEIsb0NBQW9DO0FBQ3BDLDBGQUEwRjtBQUMxRiw0Q0FBNEM7QUFDNUMsK0RBQStEO0FBQy9ELGdDQUFnQztBQUNoQyxPQUFPO0FBQ1AsS0FBSztDQUNOLENBQUM7QUFFRixNQUFNLE9BQU8sd0NBQXlDLFNBQVEsaUNBQWlDO0lBQzdGLEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTywrQkFBK0IsQ0FBQztJQUN6QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxJQUFJLGNBQWMsQ0FDcEUsc0NBQXNDLENBQ3ZDLENBQUM7QUFHRixNQUFNLE9BQU8sZ0NBQWdDO0lBRDdDO1FBRVUsY0FBUyxHQUFHLE1BQU0sQ0FBQyxvQ0FBb0MsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBaUJ0RjtJQWZDLFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPLENBQUMsT0FBMEIsRUFBRSxJQUF5QjtRQUMzRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7K0dBakJVLGdDQUFnQzttSEFBaEMsZ0NBQWdDLGNBRG5CLE1BQU07OzRGQUNuQixnQ0FBZ0M7a0JBRDVDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRXhlY3V0ZUNvbW1hbmQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXRTaWduYWwsIE91dHB1dEVtaXR0ZXJSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkl0ZW0gfSBmcm9tICcuL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuXG5leHBvcnQgdHlwZSBBWE1Ob3RpZmljYXRpb25UeXBlID0gJ0ZpbGUnIHwgJ0NoYXQnIHwgJ0NvbW1lbnQnIHwgJ0xvZyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBkeW5hbWljIG5vdGlmaWNhdGlvbiBjb250ZW50IGNvbXBvbmVudHMuXG4gKiBFbnN1cmVzIHRoYXQgYW55IGNvbXBvbmVudCB1c2VkIGZvciBub3RpZmljYXRpb24gY29udGVudCBoYXMgYSBjb25zaXN0ZW50IEFQSS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBWFBOb3RpZmljYXRpb25Db250ZW50IHtcbiAgaXRlbTogSW5wdXRTaWduYWw8QVhNTm90aWZpY2F0aW9uSXRlbSB8IHVuZGVmaW5lZD47XG4gIGV4ZWN1dGU6IE91dHB1dEVtaXR0ZXJSZWY8QVhQRXhlY3V0ZUNvbW1hbmQ+O1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgbmFtZTogQVhNTm90aWZpY2F0aW9uVHlwZTtcbiAgdGl0bGU6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICAvLyBhY3Rpb25zPzogQVhQQWN0aW9uTWVudUl0ZW1bXTtcbiAgY29udGVudD86ICgpID0+IFByb21pc2U8VHlwZTxBWFBOb3RpZmljYXRpb25Db250ZW50Pj47XG4gIGV4ZWN1dGU6IChjb21tYW5kOiBBWFBFeGVjdXRlQ29tbWFuZCwgaXRlbTogQVhNTm90aWZpY2F0aW9uSXRlbSkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuY29uc3QgREVGQVVMVF9OT1RJRklDQVRJT05fREVGSU5JVElPTjogQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyW10gPSBbXG4gIC8vIHtcbiAgLy8gICBuYW1lOiAnRmlsZScsXG4gIC8vICAgdGl0bGU6ICdFbWFpbCcsXG4gIC8vICAgaWNvbjogJ2ZhLXNvbGlkIGZhLWVudmVsb3BlJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgZW1haWwnLCBpdGVtKTtcbiAgLy8gICAgIC8vIEluIGEgcmVhbCBpbXBsZW1lbnRhdGlvbiwgeW91IHdvdWxkIHBlcmZvcm0gYW4gYWN0aW9uXG4gIC8vICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gIC8vICAgfSxcbiAgLy8gfSxcbiAgLy8ge1xuICAvLyAgIG5hbWU6ICdDaGF0JyxcbiAgLy8gICB0aXRsZTogJ1NNUycsXG4gIC8vICAgaWNvbjogJ2ZhLXNvbGlkIGZhLWNvbW1lbnQtc21zJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3Igc21zJywgaXRlbSk7XG4gIC8vICAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24sIHlvdSB3b3VsZCBwZXJmb3JtIGFuIGFjdGlvblxuICAvLyAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAvLyAgIH0sXG4gIC8vIH0sXG4gIC8vIHtcbiAgLy8gICBuYW1lOiAnQ29tbWVudCcsXG4gIC8vICAgdGl0bGU6ICdDb21tZW50JyxcbiAgLy8gICBpY29uOiAnZmEtc29saWQgZmEtY29tbWVudCdcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgY29tbWVudCcsIGl0ZW0pO1xuICAvLyAgICAgLy8gSW4gYSByZWFsIGltcGxlbWVudGF0aW9uLCB5b3Ugd291bGQgcGVyZm9ybSBhbiBhY3Rpb25cbiAgLy8gICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgLy8gICB9LFxuICAvLyB9LFxuICAvLyB7XG4gIC8vICAgbmFtZTogJ0xvZycsXG4gIC8vICAgdGl0bGU6ICdMb2cnLFxuICAvLyAgIGljb246ICdmYS1zb2xpZCBmYS1maWxlLWxpbmVzJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgbG9nJywgaXRlbSk7XG4gIC8vICAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24sIHlvdSB3b3VsZCBwZXJmb3JtIGFuIGFjdGlvblxuICAvLyAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAvLyAgIH0sXG4gIC8vIH0sXG5dO1xuXG5leHBvcnQgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyRGVmYXVsdCBleHRlbmRzIEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25Qcm92aWRlciB7XG4gIGFzeW5jIHByb3ZpZGUoKTogUHJvbWlzZTxBWFBOb3RpZmljYXRpb25EZWZpbml0aW9uUHJvdmlkZXJbXT4ge1xuICAgIHJldHVybiBERUZBVUxUX05PVElGSUNBVElPTl9ERUZJTklUSU9OO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBBWFBfTk9USUZJQ0FUSU9OX0RFRklOSVRJT05fUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48QVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyW10+KFxuICAnQVhQX05PVElGSUNBVElPTl9ERUZJTklUSU9OX1BST1ZJREVSJyxcbik7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHByb3ZpZGVycyA9IGluamVjdChBWFBfTk9USUZJQ0FUSU9OX0RFRklOSVRJT05fUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgZ2V0UHJvdmlkZXJzKCk6IEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25Qcm92aWRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5wcm92aWRlcnM/LmZsYXQoKSA/PyBbXTtcbiAgfVxuXG4gIHJlc29sdmUobmFtZTogc3RyaW5nKTogQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJvdmlkZXJzKCk/LmZpbmQoKHApID0+IHAubmFtZSA9PT0gbmFtZSkgPz8gbnVsbDtcbiAgfVxuXG4gIGV4ZWN1dGUoY29tbWFuZDogQVhQRXhlY3V0ZUNvbW1hbmQsIGl0ZW06IEFYTU5vdGlmaWNhdGlvbkl0ZW0pIHtcbiAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuZ2V0UHJvdmlkZXJzKCk/LmZpbmQoKHApID0+IHAubmFtZSA9PT0gaXRlbS50eXBlKTtcbiAgICBpZiAoIXByb3ZpZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdGlmaWNhdGlvbiBwcm92aWRlciBub3QgZm91bmQnKTtcbiAgICB9XG4gICAgcHJvdmlkZXIuZXhlY3V0ZShjb21tYW5kLCBpdGVtKTtcbiAgfVxufVxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPUserAvatarComponent } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { afterNextRender, ChangeDetectionStrategy, Component, inject, input, inputBinding, output, outputBinding, viewChild, ViewContainerRef, } from '@angular/core';\nimport { AXPNotificationDefinitionService } from '../../shared/notification-definition.service';\nimport { AXMAdminNotificationSlotComponent } from '../admin-notification-slot/admin-notification-slot.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/format\";\nexport class AXMAdminNotificationItemComponent {\n constructor() {\n this.notificationDefinitionService = inject(AXPNotificationDefinitionService);\n this.div = viewChild('component', ...(ngDevMode ? [{ debugName: \"div\", read: ViewContainerRef }] : [{ read: ViewContainerRef }]));\n this.adminSlot = inject(AXMAdminNotificationSlotComponent, {\n optional: true,\n });\n this.data = input.required(...(ngDevMode ? [{ debugName: \"data\" }] : []));\n this.onPressNotificationItem = output();\n this.#af = afterNextRender(() => this.renderComponent());\n }\n pressNotificationItem(id) {\n this.onPressNotificationItem.emit(id);\n this.getNotificationProvider()?.execute({ name: 'click' }, this.data());\n this.adminSlot?.popover()?.close();\n }\n getNotificationProvider() {\n return this.notificationDefinitionService.resolve(this.data().type);\n }\n getNotificationContent() {\n const provider = this.getNotificationProvider();\n return provider?.content?.();\n }\n onAction(command) {\n this.getNotificationProvider()?.execute(command, this.data());\n this.adminSlot?.popover()?.close();\n }\n async renderComponent() {\n if (this.getNotificationContent() && this.getNotificationProvider()) {\n const component = await this.getNotificationContent();\n if (component) {\n this.div()?.createComponent(component, {\n bindings: [\n inputBinding('item', this.data),\n outputBinding('execute', (e) => this.onAction(e)),\n ],\n });\n }\n }\n }\n #af;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationItemComponent, isStandalone: true, selector: \"axp-master-notification-item\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onPressNotificationItem: \"onPressNotificationItem\" }, viewQueries: [{ propertyName: \"div\", first: true, predicate: [\"component\"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: \"<div\\n class=\\\"notification-item ax-text-start\\\"\\n [id]=\\\"data().id\\\"\\n (click)=\\\"pressNotificationItem(data().id)\\\"\\n [class]=\\\"[data().template.prority, data().readAt ? 'read' : 'unread']\\\"\\n>\\n <div class=\\\"notification-avatar\\\">\\n <axp-user-avatar [size]=\\\"48\\\" [userId]=\\\"data().sender.id\\\"></axp-user-avatar>\\n @if (!data().readAt) {\\n <!-- <div class=\\\"unread-badge\\\"></div> -->\\n }\\n </div>\\n\\n <div class=\\\"notification-content\\\">\\n <div class=\\\"notification-header\\\">\\n <div class=\\\"notification-title\\\">{{ data().sender.fullName || data().title }}</div>\\n <div class=\\\"notification-meta\\\">\\n <!-- @if (data().template.isPinned) {\\n <div class=\\\"pin-notification\\\">\\n <ax-icon>\\n <i class=\\\"fa-solid fa-thumbtack\\\"></i>\\n </ax-icon>\\n </div>\\n } -->\\n <div class=\\\"notification-time\\\">{{ data().createAt | format: 'timeleft' | async }}</div>\\n </div>\\n </div>\\n @if (this.getNotificationContent() && this.getNotificationProvider()) {\\n <div #component></div>\\n } @else {\\n <div class=\\\"notification-body\\\">{{ data().body }}</div>\\n }\\n </div>\\n</div>\\n\", styles: [\".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;backdrop-filter:blur(8px)}.notification-item.read{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))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\\\"\\\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-align:start;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;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: AXPUserAvatarComponent, selector: \"axp-user-avatar\", inputs: [\"size\", \"userId\"] }, { kind: \"ngmodule\", type: AXImageModule }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"ngmodule\", type: AXFormatModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i2.AXFormatPipe, name: \"format\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-master-notification-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXPUserAvatarComponent,\n AXImageModule,\n AXBadgeModule,\n AXFormatModule,\n ], template: \"<div\\n class=\\\"notification-item ax-text-start\\\"\\n [id]=\\\"data().id\\\"\\n (click)=\\\"pressNotificationItem(data().id)\\\"\\n [class]=\\\"[data().template.prority, data().readAt ? 'read' : 'unread']\\\"\\n>\\n <div class=\\\"notification-avatar\\\">\\n <axp-user-avatar [size]=\\\"48\\\" [userId]=\\\"data().sender.id\\\"></axp-user-avatar>\\n @if (!data().readAt) {\\n <!-- <div class=\\\"unread-badge\\\"></div> -->\\n }\\n </div>\\n\\n <div class=\\\"notification-content\\\">\\n <div class=\\\"notification-header\\\">\\n <div class=\\\"notification-title\\\">{{ data().sender.fullName || data().title }}</div>\\n <div class=\\\"notification-meta\\\">\\n <!-- @if (data().template.isPinned) {\\n <div class=\\\"pin-notification\\\">\\n <ax-icon>\\n <i class=\\\"fa-solid fa-thumbtack\\\"></i>\\n </ax-icon>\\n </div>\\n } -->\\n <div class=\\\"notification-time\\\">{{ data().createAt | format: 'timeleft' | async }}</div>\\n </div>\\n </div>\\n @if (this.getNotificationContent() && this.getNotificationProvider()) {\\n <div #component></div>\\n } @else {\\n <div class=\\\"notification-body\\\">{{ data().body }}</div>\\n }\\n </div>\\n</div>\\n\", styles: [\".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;backdrop-filter:blur(8px)}.notification-item.read{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))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\\\"\\\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-align:start;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;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 }], propDecorators: { div: [{ type: i0.ViewChild, args: ['component', { ...{ read: ViewContainerRef }, isSignal: true }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: \"data\", required: true }] }], onPressNotificationItem: [{ type: i0.Output, args: [\"onPressNotificationItem\"] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvY29tcG9uZW50cy9hZG1pbi1ub3RpZmljYXRpb24taXRlbS9hZG1pbi1ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsWUFBWSxFQUNaLE1BQU0sRUFDTixhQUFhLEVBQ2IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4Q0FB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YTt3QkFDYixhQUFhO3dCQUNiLGNBQWM7cUJBQ2Y7aUVBSWUsV0FBVyxPQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFBFeGVjdXRlQ29tbWFuZCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBVc2VyQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBpbnB1dEJpbmRpbmcsXG4gIG91dHB1dCxcbiAgb3V0cHV0QmluZGluZyxcbiAgdmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL25vdGlmaWNhdGlvbi1kZWZpbml0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC50eXBlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZG1pbi1ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFBVc2VyQXZhdGFyQ29tcG9uZW50LFxuICAgIEFYSW1hZ2VNb2R1bGUsXG4gICAgQVhCYWRnZU1vZHVsZSxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25JdGVtQ29tcG9uZW50IHtcbiAgbm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UgPSBpbmplY3QoQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UpO1xuICBkaXYgPSB2aWV3Q2hpbGQoJ2NvbXBvbmVudCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KTtcbiAgYWRtaW5TbG90ID0gaW5qZWN0KEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCwge1xuICAgIG9wdGlvbmFsOiB0cnVlLFxuICB9KTtcblxuICBkYXRhID0gaW5wdXQucmVxdWlyZWQ8QVhNTm90aWZpY2F0aW9uSXRlbT4oKTtcbiAgb25QcmVzc05vdGlmaWNhdGlvbkl0ZW0gPSBvdXRwdXQ8c3RyaW5nPigpO1xuXG4gIHByZXNzTm90aWZpY2F0aW9uSXRlbShpZDogc3RyaW5nKSB7XG4gICAgdGhpcy5vblByZXNzTm90aWZpY2F0aW9uSXRlbS5lbWl0KGlkKTtcbiAgICB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCk/LmV4ZWN1dGUoeyBuYW1lOiAnY2xpY2snIH0sIHRoaXMuZGF0YSgpKTtcbiAgICB0aGlzLmFkbWluU2xvdD8ucG9wb3ZlcigpPy5jbG9zZSgpO1xuICB9XG5cbiAgZ2V0Tm90aWZpY2F0aW9uUHJvdmlkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UucmVzb2x2ZSh0aGlzLmRhdGEoKS50eXBlKTtcbiAgfVxuXG4gIGdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCk7XG4gICAgcmV0dXJuIHByb3ZpZGVyPy5jb250ZW50Py4oKTtcbiAgfVxuXG4gIG9uQWN0aW9uKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kKSB7XG4gICAgdGhpcy5nZXROb3RpZmljYXRpb25Qcm92aWRlcigpPy5leGVjdXRlKGNvbW1hbmQsIHRoaXMuZGF0YSgpKTtcbiAgICB0aGlzLmFkbWluU2xvdD8ucG9wb3ZlcigpPy5jbG9zZSgpO1xuICB9XG5cbiAgYXN5bmMgcmVuZGVyQ29tcG9uZW50KCkge1xuICAgIGlmICh0aGlzLmdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSAmJiB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCkpIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGF3YWl0IHRoaXMuZ2V0Tm90aWZpY2F0aW9uQ29udGVudCgpO1xuICAgICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgICB0aGlzLmRpdigpPy5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50LCB7XG4gICAgICAgICAgYmluZGluZ3M6IFtcbiAgICAgICAgICAgIGlucHV0QmluZGluZygnaXRlbScsIHRoaXMuZGF0YSksXG4gICAgICAgICAgICBvdXRwdXRCaW5kaW5nKCdleGVjdXRlJywgKGU6IEFYUEV4ZWN1dGVDb21tYW5kKSA9PiB0aGlzLm9uQWN0aW9uKGUpKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYWYgPSBhZnRlck5leHRSZW5kZXIoKCkgPT4gdGhpcy5yZW5kZXJDb21wb25lbnQoKSk7XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW0gYXgtdGV4dC1zdGFydFwiXG4gIFtpZF09XCJkYXRhKCkuaWRcIlxuICAoY2xpY2spPVwicHJlc3NOb3RpZmljYXRpb25JdGVtKGRhdGEoKS5pZClcIlxuICBbY2xhc3NdPVwiW2RhdGEoKS50ZW1wbGF0ZS5wcm9yaXR5LCBkYXRhKCkucmVhZEF0ID8gJ3JlYWQnIDogJ3VucmVhZCddXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1hdmF0YXJcIj5cbiAgICA8YXhwLXVzZXItYXZhdGFyIFtzaXplXT1cIjQ4XCIgW3VzZXJJZF09XCJkYXRhKCkuc2VuZGVyLmlkXCI+PC9heHAtdXNlci1hdmF0YXI+XG4gICAgQGlmICghZGF0YSgpLnJlYWRBdCkge1xuICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwidW5yZWFkLWJhZGdlXCI+PC9kaXY+IC0tPlxuICAgIH1cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1oZWFkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb24tdGl0bGVcIj57eyBkYXRhKCkuc2VuZGVyLmZ1bGxOYW1lIHx8IGRhdGEoKS50aXRsZSB9fTwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1tZXRhXCI+XG4gICAgICAgIDwhLS0gQGlmIChkYXRhKCkudGVtcGxhdGUuaXNQaW5uZWQpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGluLW5vdGlmaWNhdGlvblwiPlxuICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtdGh1bWJ0YWNrXCI+PC9pPlxuICAgICAgICAgICAgPC9heC1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLXRpbWVcIj57eyBkYXRhKCkuY3JlYXRlQXQgfCBmb3JtYXQ6ICd0aW1lbGVmdCcgfCBhc3luYyB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGlmICh0aGlzLmdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSAmJiB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCkpIHtcbiAgICAgIDxkaXYgI2NvbXBvbmVudD48L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb24tYm9keVwiPnt7IGRhdGEoKS5ib2R5IH19PC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, input, output, signal, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { AXMNotificationConnectorService } from '../../shared/notification-management.service';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/tabs\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/badge\";\nexport class AXMAdminNotificationPanelComponent {\n constructor() {\n //#region ---- Outputs ----\n this.onNewNotfication = output();\n //#endregion\n //#region ---- Services & Dependencies ----\n this.notificationConnector = inject(AXMNotificationConnectorService);\n this.toastService = inject(AXToastService);\n this.router = inject(Router);\n this.sessionService = inject(AXPSessionService);\n //#endregion\n //#region ---- Signals & Inputs ----\n /**\n * Tabs provided by the parent (custom categories). The component will prepend\n * \"Unread\" and \"All\" before these tabs.\n */\n this.providedTabs = input([], ...(ngDevMode ? [{ debugName: \"providedTabs\" }] : []));\n // Use store's signals directly\n this.notifications = this.notificationConnector.notificationList;\n this.totalNotifications = this.notificationConnector.total;\n this.isLoading = this.notificationConnector.loading;\n this.errorMessage = this.notificationConnector.errorMessage;\n // Default active tab is Unread\n this.activeTab = signal('Unread', ...(ngDevMode ? [{ debugName: \"activeTab\" }] : []));\n //#endregion\n //#region ---- Computed Properties ----\n this.tabItems = computed(() => this.getTabItems(this.notifications(), this.providedTabs()), ...(ngDevMode ? [{ debugName: \"tabItems\", equal: (a, b) => JSON.stringify(a) === JSON.stringify(b) }] : [{\n equal: (a, b) => JSON.stringify(a) === JSON.stringify(b),\n }]));\n this.NewNotification = computed(() => this.getNewNotification(this.tabItems()), ...(ngDevMode ? [{ debugName: \"NewNotification\" }] : []));\n this.NewNotificationEffect = effect(() => this.onNewNotfication.emit(this.NewNotification()), ...(ngDevMode ? [{ debugName: \"NewNotificationEffect\" }] : []));\n }\n changeActiveTab(tab) {\n this.activeTab.set(tab);\n }\n //#endregion\n ngOnInit() {\n this.loadNotification();\n }\n async loadNotification() {\n try {\n await this.notificationConnector.getList();\n }\n catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n //#region ---- Utility Methods ----\n getTabItems(notifications, userTabs) {\n // Base when no notifications loaded yet\n if (!notifications) {\n const base = [\n { text: 'Unread', count: 0 },\n { text: 'All', count: 0 },\n ];\n return base.concat((userTabs ?? []).map((t) => ({ text: t, count: 0 })));\n }\n // Count unread by category\n const unreadCountByCategory = new Map();\n for (const notification of notifications) {\n const category = notification.template.category;\n if (!unreadCountByCategory.has(category)) {\n unreadCountByCategory.set(category, 0);\n }\n if (!notification.readAt) {\n unreadCountByCategory.set(category, (unreadCountByCategory.get(category) ?? 0) + 1);\n }\n }\n const unreadTotal = Array.from(unreadCountByCategory.values()).reduce((a, b) => a + b, 0);\n // Keep previous behavior: 'All' badge shows total UNREAD across all categories\n const allTotal = unreadTotal;\n // Determine which tabs to show after Unread and All\n let finalUserTabs = userTabs ?? [];\n if (finalUserTabs.length === 0) {\n // Fallback to discovered categories if parent has not provided tabs\n finalUserTabs = Array.from(unreadCountByCategory.keys());\n }\n // Ensure uniqueness and preserve provided order\n const seen = new Set(['Unread', 'All']);\n const userCategoryTabs = finalUserTabs.filter((t) => {\n if (seen.has(t))\n return false;\n seen.add(t);\n return true;\n });\n const result = [\n { text: 'Unread', count: unreadTotal },\n { text: 'All', count: allTotal },\n ...userCategoryTabs.map((category) => ({\n text: category,\n count: unreadCountByCategory.get(category) ?? 0,\n })),\n ];\n return result;\n }\n getNewNotification(data) {\n // Use the Unread tab as the single source of truth for new notifications\n return data.find((tab) => tab.text === 'Unread')?.count ?? 0;\n }\n getNotificationItems(category) {\n const list = this.notifications();\n if (!list)\n return [];\n if (category === 'All') {\n return list;\n }\n if (category === 'Unread') {\n return list.filter((item) => !item.readAt);\n }\n return list.filter((item) => item.template.category === category);\n }\n /**\n * Mark a notification as read or unread (toggle read status)\n */\n async markAsRead(id) {\n try {\n await this.notificationConnector.markAsRead({ id: [id] });\n }\n catch (error) {\n console.error('Failed to toggle notification read status:', error);\n }\n }\n /**\n * Mark all unread notifications as read\n */\n async markAllAsRead() {\n try {\n await this.notificationConnector.markAllAsRead();\n }\n catch (error) {\n console.error('Failed to mark all notifications as read:', error);\n }\n }\n viewAllNotifications() {\n this.router.navigate([`${this.sessionService.application?.name}/notifications`]);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationPanelComponent, isStandalone: true, selector: \"axm-admin-notification-panel\", inputs: { providedTabs: { classPropertyName: \"providedTabs\", publicName: \"providedTabs\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onNewNotfication: \"onNewNotfication\" }, ngImport: i0, template: \"<div class=\\\"ax-p-4 ax-flex ax-justify-between ax-items-center\\\">\\n <span class=\\\"ax-text-xl\\\">Notifications</span>\\n <ax-button color=\\\"default\\\" look=\\\"blank\\\">\\n <ax-icon>\\n <i class=\\\"fa-regular fa-gear fa-lg\\\"></i>\\n </ax-icon>\\n </ax-button>\\n</div>\\n<ax-tabs [content]=\\\"cons\\\" look=\\\"with-line\\\" location=\\\"bottom\\\">\\n @for (tab of tabItems(); track tab.text) {\\n <ax-tab-item [text]=\\\"tab.text\\\" [active]=\\\"activeTab() === tab.text\\\" (activeChange)=\\\"changeActiveTab(tab.text)\\\">\\n <ax-suffix>\\n @if (tab.count && tab.text === 'Unread') {\\n <ax-badge [color]=\\\"activeTab() === tab.text ? 'primary' : 'ghost'\\\" [text]=\\\"tab.count.toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n <ax-content>\\n <div class=\\\"ax-max-h-[50vh] md:ax-w-[32rem] ax-overflow-y-auto\\\">\\n @if (getNotificationItems(tab.text).length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-gap-2 ax-p-6\\\">\\n <i class=\\\"fa-regular fa-bell-slash ax-text-2xl\\\"></i>\\n <div class=\\\"ax-text-sm\\\">No notifications</div>\\n </div>\\n } @else {\\n @for (notif of getNotificationItems(tab.text); track notif.id) {\\n <axp-master-notification-item\\n [data]=\\\"notif\\\"\\n (onPressNotificationItem)=\\\"markAsRead($event)\\\"\\n ></axp-master-notification-item>\\n }\\n }\\n </div>\\n <div class=\\\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\\\">\\n <ax-button\\n [disabled]=\\\"NewNotification() === 0\\\"\\n [color]=\\\"'default'\\\"\\n text=\\\"Mark all as read\\\"\\n (onClick)=\\\"markAllAsRead()\\\"\\n ></ax-button>\\n <ax-button color=\\\"primary\\\" text=\\\"View all notifications\\\" (onClick)=\\\"viewAllNotifications()\\\"></ax-button>\\n </div>\\n </ax-content>\\n </ax-tab-item>\\n }\\n</ax-tabs>\\n\\n<ng-template [axTabContent] #cons=\\\"axTabContent\\\"></ng-template>\\n\", dependencies: [{ 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: AXTabsModule }, { kind: \"component\", type: i2.AXTabsComponent, selector: \"ax-tabs\", inputs: [\"look\", \"location\", \"fitParent\", \"minWidth\", \"content\"], outputs: [\"onActiveTabChanged\"] }, { kind: \"component\", type: i2.AXTabItemComponent, selector: \"ax-tab-item\", inputs: [\"disabled\", \"text\", \"key\", \"headerTemplate\", \"active\"], outputs: [\"disabledChange\", \"onClick\", \"onBlur\", \"onFocus\", \"activeChange\"] }, { kind: \"directive\", type: i2.AXTabContentDirective, selector: \"[axTabContent]\", inputs: [\"axTabContent\"], exportAs: [\"axTabContent\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i4.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXPopoverModule }, { kind: \"component\", type: AXMAdminNotificationItemComponent, selector: \"axp-master-notification-item\", inputs: [\"data\"], outputs: [\"onPressNotificationItem\"] }, { kind: \"ngmodule\", type: AXFormatModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationPanelComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-admin-notification-panel', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n AXButtonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXFormatModule,\n ], template: \"<div class=\\\"ax-p-4 ax-flex ax-justify-between ax-items-center\\\">\\n <span class=\\\"ax-text-xl\\\">Notifications</span>\\n <ax-button color=\\\"default\\\" look=\\\"blank\\\">\\n <ax-icon>\\n <i class=\\\"fa-regular fa-gear fa-lg\\\"></i>\\n </ax-icon>\\n </ax-button>\\n</div>\\n<ax-tabs [content]=\\\"cons\\\" look=\\\"with-line\\\" location=\\\"bottom\\\">\\n @for (tab of tabItems(); track tab.text) {\\n <ax-tab-item [text]=\\\"tab.text\\\" [active]=\\\"activeTab() === tab.text\\\" (activeChange)=\\\"changeActiveTab(tab.text)\\\">\\n <ax-suffix>\\n @if (tab.count && tab.text === 'Unread') {\\n <ax-badge [color]=\\\"activeTab() === tab.text ? 'primary' : 'ghost'\\\" [text]=\\\"tab.count.toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n <ax-content>\\n <div class=\\\"ax-max-h-[50vh] md:ax-w-[32rem] ax-overflow-y-auto\\\">\\n @if (getNotificationItems(tab.text).length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-gap-2 ax-p-6\\\">\\n <i class=\\\"fa-regular fa-bell-slash ax-text-2xl\\\"></i>\\n <div class=\\\"ax-text-sm\\\">No notifications</div>\\n </div>\\n } @else {\\n @for (notif of getNotificationItems(tab.text); track notif.id) {\\n <axp-master-notification-item\\n [data]=\\\"notif\\\"\\n (onPressNotificationItem)=\\\"markAsRead($event)\\\"\\n ></axp-master-notification-item>\\n }\\n }\\n </div>\\n <div class=\\\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\\\">\\n <ax-button\\n [disabled]=\\\"NewNotification() === 0\\\"\\n [color]=\\\"'default'\\\"\\n text=\\\"Mark all as read\\\"\\n (onClick)=\\\"markAllAsRead()\\\"\\n ></ax-button>\\n <ax-button color=\\\"primary\\\" text=\\\"View all notifications\\\" (onClick)=\\\"viewAllNotifications()\\\"></ax-button>\\n </div>\\n </ax-content>\\n </ax-tab-item>\\n }\\n</ax-tabs>\\n\\n<ng-template [axTabContent] #cons=\\\"axTabContent\\\"></ng-template>\\n\" }]\n }], propDecorators: { onNewNotfication: [{ type: i0.Output, args: [\"onNewNotfication\"] }], providedTabs: [{ type: i0.Input, args: [{ isSignal: true, alias: \"providedTabs\", required: false }] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC9hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxF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Q0FBQyw0Q0FBNEMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRSxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ08sS0FBSyxDQUFDLGFBQWE7UUFDM0IsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbkQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDJDQUEyQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BFLENBQUM7SUFDSCxDQUFDO0lBRVMsb0JBQW9CO1FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDOytHQXhLVSxrQ0FBa0M7bUdBQWxDLGtDQUFrQyxvU0N0Qy9DLCtnRUErQ0EsMkNEbEJJLGNBQWMsNlhBQ2QsWUFBWSwyaUJBQ1osaUJBQWlCLHNWQUNqQixhQUFhLHlJQUNiLGVBQWUsK0JBQ2YsaUNBQWlDLGdJQUNqQyxjQUFjOzs0RkFHTCxrQ0FBa0M7a0JBZDlDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUV2Qix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixpQ0FBaUM7d0JBQ2pDLGNBQWM7cUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RvYXN0JztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeSwgQVhNTm90aWZpY2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC50eXBlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheG0tYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUYWJzTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYQmFkZ2VNb2R1bGUsXG4gICAgQVhQb3BvdmVyTW9kdWxlLFxuICAgIEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25QYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vI3JlZ2lvbiAtLS0tICAgT3V0cHV0cyAgIC0tLS1cblxuICBvbk5ld05vdGZpY2F0aW9uID0gb3V0cHV0PG51bWJlcj4oKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFNlcnZpY2VzICYgRGVwZW5kZW5jaWVzICAgLS0tLVxuXG4gIHByaXZhdGUgbm90aWZpY2F0aW9uQ29ubmVjdG9yID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICBwcml2YXRlIHRvYXN0U2VydmljZSA9IGluamVjdChBWFRvYXN0U2VydmljZSk7XG4gIHByaXZhdGUgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU2lnbmFscyAmIElucHV0cyAgIC0tLS1cblxuICAvKipcbiAgICogVGFicyBwcm92aWRlZCBieSB0aGUgcGFyZW50IChjdXN0b20gY2F0ZWdvcmllcykuIFRoZSBjb21wb25lbnQgd2lsbCBwcmVwZW5kXG4gICAqIFwiVW5yZWFkXCIgYW5kIFwiQWxsXCIgYmVmb3JlIHRoZXNlIHRhYnMuXG4gICAqL1xuICBwcm92aWRlZFRhYnMgPSBpbnB1dDxBWE1Ob3RpZmljYXRpb25DYXRlZ29yeVtdPihbXSk7XG5cbiAgLy8gVXNlIHN0b3JlJ3Mgc2lnbmFscyBkaXJlY3RseVxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm90aWZpY2F0aW9ucyA9IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLm5vdGlmaWNhdGlvbkxpc3Q7XG4gIHByb3RlY3RlZCByZWFkb25seSB0b3RhbE5vdGlmaWNhdGlvbnMgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci50b3RhbDtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzTG9hZGluZyA9IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmxvYWRpbmc7XG4gIHByb3RlY3RlZCByZWFkb25seSBlcnJvck1lc3NhZ2UgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5lcnJvck1lc3NhZ2U7XG5cbiAgLy8gRGVmYXVsdCBhY3RpdmUgdGFiIGlzIFVucmVhZFxuICBhY3RpdmVUYWIgPSBzaWduYWw8QVhNVGFiRGF0YVRleHQ+KCdVbnJlYWQnKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIENvbXB1dGVkIFByb3BlcnRpZXMgICAtLS0tXG5cbiAgdGFiSXRlbXMgPSBjb21wdXRlZDxBWFRhYkRhdGFbXT4oKCkgPT4gdGhpcy5nZXRUYWJJdGVtcyh0aGlzLm5vdGlmaWNhdGlvbnMoKSwgdGhpcy5wcm92aWRlZFRhYnMoKSksIHtcbiAgICBlcXVhbDogKGEsIGIpID0+IEpTT04uc3RyaW5naWZ5KGEpID09PSBKU09OLnN0cmluZ2lmeShiKSxcbiAgfSk7XG5cbiAgY2hhbmdlQWN0aXZlVGFiKHRhYjogQVhNVGFiRGF0YVRleHQpIHtcbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiKTtcbiAgfVxuXG4gIE5ld05vdGlmaWNhdGlvbiA9IGNvbXB1dGVkPG51bWJlcj4oKCkgPT4gdGhpcy5nZXROZXdOb3RpZmljYXRpb24odGhpcy50YWJJdGVtcygpKSk7XG4gIE5ld05vdGlmaWNhdGlvbkVmZmVjdCA9IGVmZmVjdCgoKSA9PiB0aGlzLm9uTmV3Tm90ZmljYXRpb24uZW1pdCh0aGlzLk5ld05vdGlmaWNhdGlvbigpKSk7XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkTm90aWZpY2F0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWROb3RpZmljYXRpb24oKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmdldExpc3QoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6ICdGYWlsZWQgdG8gbG9hZCBub3RpZmljYXRpb25zIScsXG4gICAgICAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgIHRpbWVPdXQ6IDMwMDAsXG4gICAgICAgIHRpbWVPdXRQcm9ncmVzczogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgVXRpbGl0eSBNZXRob2RzICAgLS0tLVxuXG4gIHByaXZhdGUgZ2V0VGFiSXRlbXMoXG4gICAgbm90aWZpY2F0aW9uczogQVhNTm90aWZpY2F0aW9uSXRlbVtdIHwgdW5kZWZpbmVkLFxuICAgIHVzZXJUYWJzOiBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeVtdLFxuICApOiBBWFRhYkRhdGFbXSB7XG4gICAgLy8gQmFzZSB3aGVuIG5vIG5vdGlmaWNhdGlvbnMgbG9hZGVkIHlldFxuICAgIGlmICghbm90aWZpY2F0aW9ucykge1xuICAgICAgY29uc3QgYmFzZTogQVhUYWJEYXRhW10gPSBbXG4gICAgICAgIHsgdGV4dDogJ1VucmVhZCcsIGNvdW50OiAwIH0sXG4gICAgICAgIHsgdGV4dDogJ0FsbCcsIGNvdW50OiAwIH0sXG4gICAgICBdO1xuICAgICAgcmV0dXJuIGJhc2UuY29uY2F0KCh1c2VyVGFicyA/PyBbXSkubWFwKCh0KSA9PiAoeyB0ZXh0OiB0LCBjb3VudDogMCB9KSkpO1xuICAgIH1cblxuICAgIC8vIENvdW50IHVucmVhZCBieSBjYXRlZ29yeVxuICAgIGNvbnN0IHVucmVhZENvdW50QnlDYXRlZ29yeSA9IG5ldyBNYXA8QVhNTm90aWZpY2F0aW9uQ2F0ZWdvcnksIG51bWJlcj4oKTtcbiAgICBmb3IgKGNvbnN0IG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25zKSB7XG4gICAgICBjb25zdCBjYXRlZ29yeSA9IG5vdGlmaWNhdGlvbi50ZW1wbGF0ZS5jYXRlZ29yeTtcbiAgICAgIGlmICghdW5yZWFkQ291bnRCeUNhdGVnb3J5LmhhcyhjYXRlZ29yeSkpIHtcbiAgICAgICAgdW5yZWFkQ291bnRCeUNhdGVnb3J5LnNldChjYXRlZ29yeSwgMCk7XG4gICAgICB9XG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5yZWFkQXQpIHtcbiAgICAgICAgdW5yZWFkQ291bnRCeUNhdGVnb3J5LnNldChjYXRlZ29yeSwgKHVucmVhZENvdW50QnlDYXRlZ29yeS5nZXQoY2F0ZWdvcnkpID8/IDApICsgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgdW5yZWFkVG90YWwgPSBBcnJheS5mcm9tKHVucmVhZENvdW50QnlDYXRlZ29yeS52YWx1ZXMoKSkucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7XG4gICAgLy8gS2VlcCBwcmV2aW91cyBiZWhhdmlvcjogJ0FsbCcgYmFkZ2Ugc2hvd3MgdG90YWwgVU5SRUFEIGFjcm9zcyBhbGwgY2F0ZWdvcmllc1xuICAgIGNvbnN0IGFsbFRvdGFsID0gdW5yZWFkVG90YWw7XG5cbiAgICAvLyBEZXRlcm1pbmUgd2hpY2ggdGFicyB0byBzaG93IGFmdGVyIFVucmVhZCBhbmQgQWxsXG4gICAgbGV0IGZpbmFsVXNlclRhYnMgPSB1c2VyVGFicyA/PyBbXTtcbiAgICBpZiAoZmluYWxVc2VyVGFicy5sZW5ndGggPT09IDApIHtcbiAgICAgIC8vIEZhbGxiYWNrIHRvIGRpc2NvdmVyZWQgY2F0ZWdvcmllcyBpZiBwYXJlbnQgaGFzIG5vdCBwcm92aWRlZCB0YWJzXG4gICAgICBmaW5hbFVzZXJUYWJzID0gQXJyYXkuZnJvbSh1bnJlYWRDb3VudEJ5Q2F0ZWdvcnkua2V5cygpKTtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgdW5pcXVlbmVzcyBhbmQgcHJlc2VydmUgcHJvdmlkZWQgb3JkZXJcbiAgICBjb25zdCBzZWVuID0gbmV3IFNldDxzdHJpbmc+KFsnVW5yZWFkJywgJ0FsbCddKTtcbiAgICBjb25zdCB1c2VyQ2F0ZWdvcnlUYWJzID0gZmluYWxVc2VyVGFicy5maWx0ZXIoKHQpID0+IHtcbiAgICAgIGlmIChzZWVuLmhhcyh0KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgc2Vlbi5hZGQodCk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc3VsdDogQVhUYWJEYXRhW10gPSBbXG4gICAgICB7IHRleHQ6ICdVbnJlYWQnLCBjb3VudDogdW5yZWFkVG90YWwgfSxcbiAgICAgIHsgdGV4dDogJ0FsbCcsIGNvdW50OiBhbGxUb3RhbCB9LFxuICAgICAgLi4udXNlckNhdGVnb3J5VGFicy5tYXAoKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICB0ZXh0OiBjYXRlZ29yeSBhcyBBWE1UYWJEYXRhVGV4dCxcbiAgICAgICAgY291bnQ6IHVucmVhZENvdW50QnlDYXRlZ29yeS5nZXQoY2F0ZWdvcnkpID8/IDAsXG4gICAgICB9KSksXG4gICAgXTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldE5ld05vdGlmaWNhdGlvbihkYXRhOiBBWFRhYkRhdGFbXSk6IG51bWJlciB7XG4gICAgLy8gVXNlIHRoZSBVbnJlYWQgdGFiIGFzIHRoZSBzaW5nbGUgc291cmNlIG9mIHRydXRoIGZvciBuZXcgbm90aWZpY2F0aW9uc1xuICAgIHJldHVybiBkYXRhLmZpbmQoKHRhYikgPT4gdGFiLnRleHQgPT09ICdVbnJlYWQnKT8uY291bnQgPz8gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXROb3RpZmljYXRpb25JdGVtcyhjYXRlZ29yeTogQVhNVGFiRGF0YVRleHQpOiBBWE1Ob3RpZmljYXRpb25JdGVtW10ge1xuICAgIGNvbnN0IGxpc3QgPSB0aGlzLm5vdGlmaWNhdGlvbnMoKTtcbiAgICBpZiAoIWxpc3QpIHJldHVybiBbXTtcbiAgICBpZiAoY2F0ZWdvcnkgPT09ICdBbGwnKSB7XG4gICAgICByZXR1cm4gbGlzdDtcbiAgICB9XG4gICAgaWYgKGNhdGVnb3J5ID09PSAnVW5yZWFkJykge1xuICAgICAgcmV0dXJuIGxpc3QuZmlsdGVyKChpdGVtKSA9PiAhaXRlbS5yZWFkQXQpO1xuICAgIH1cbiAgICByZXR1cm4gbGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0udGVtcGxhdGUuY2F0ZWdvcnkgPT09IGNhdGVnb3J5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIGEgbm90aWZpY2F0aW9uIGFzIHJlYWQgb3IgdW5yZWFkICh0b2dnbGUgcmVhZCBzdGF0dXMpXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FzUmVhZChpZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLm1hcmtBc1JlYWQoeyBpZDogW2lkXSB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHRvZ2dsZSBub3RpZmljYXRpb24gcmVhZCBzdGF0dXM6JywgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIGFsbCB1bnJlYWQgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FsbEFzUmVhZCgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IubWFya0FsbEFzUmVhZCgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmlld0FsbE5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuc2Vzc2lvblNlcnZpY2UuYXBwbGljYXRpb24/Lm5hbWV9L25vdGlmaWNhdGlvbnNgXSk7XG4gIH1cbn1cblxuaW50ZXJmYWNlIEFYVGFiRGF0YSB7XG4gIHRleHQ6IEFYTVRhYkRhdGFUZXh0O1xuICBjb3VudDogbnVtYmVyO1xufVxudHlwZSBBWE1UYWJEYXRhVGV4dCA9ICdVbnJlYWQnIHwgJ0FsbCcgfCBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeTtcbiIsIjxkaXYgY2xhc3M9XCJheC1wLTQgYXgtZmxleCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtaXRlbXMtY2VudGVyXCI+XG4gIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC14bFwiPk5vdGlmaWNhdGlvbnM8L3NwYW4+XG4gIDxheC1idXR0b24gY29sb3I9XCJkZWZhdWx0XCIgbG9vaz1cImJsYW5rXCI+XG4gICAgPGF4LWljb24+XG4gICAgICA8aSBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtZ2VhciBmYS1sZ1wiPjwvaT5cbiAgICA8L2F4LWljb24+XG4gIDwvYXgtYnV0dG9uPlxuPC9kaXY+XG48YXgtdGFicyBbY29udGVudF09XCJjb25zXCIgbG9vaz1cIndpdGgtbGluZVwiIGxvY2F0aW9uPVwiYm90dG9tXCI+XG4gIEBmb3IgKHRhYiBvZiB0YWJJdGVtcygpOyB0cmFjayB0YWIudGV4dCkge1xuICAgIDxheC10YWItaXRlbSBbdGV4dF09XCJ0YWIudGV4dFwiIFthY3RpdmVdPVwiYWN0aXZlVGFiKCkgPT09IHRhYi50ZXh0XCIgKGFjdGl2ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmVUYWIodGFiLnRleHQpXCI+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICBAaWYgKHRhYi5jb3VudCAmJiB0YWIudGV4dCA9PT0gJ1VucmVhZCcpIHtcbiAgICAgICAgICA8YXgtYmFkZ2UgW2NvbG9yXT1cImFjdGl2ZVRhYigpID09PSB0YWIudGV4dCA/ICdwcmltYXJ5JyA6ICdnaG9zdCdcIiBbdGV4dF09XCJ0YWIuY291bnQudG9TdHJpbmcoKVwiPjwvYXgtYmFkZ2U+XG4gICAgICAgIH1cbiAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgPGF4LWNvbnRlbnQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1tYXgtaC1bNTB2aF0gbWQ6YXgtdy1bMzJyZW1dIGF4LW92ZXJmbG93LXktYXV0b1wiPlxuICAgICAgICAgIEBpZiAoZ2V0Tm90aWZpY2F0aW9uSXRlbXModGFiLnRleHQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWdhcC0yIGF4LXAtNlwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtYmVsbC1zbGFzaCBheC10ZXh0LTJ4bFwiPjwvaT5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQtc21cIj5ObyBub3RpZmljYXRpb25zPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBmb3IgKG5vdGlmIG9mIGdldE5vdGlmaWNhdGlvbkl0ZW1zKHRhYi50ZXh0KTsgdHJhY2sgbm90aWYuaWQpIHtcbiAgICAgICAgICAgICAgPGF4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW1cbiAgICAgICAgICAgICAgICBbZGF0YV09XCJub3RpZlwiXG4gICAgICAgICAgICAgICAgKG9uUHJlc3NOb3RpZmljYXRpb25JdGVtKT1cIm1hcmtBc1JlYWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgID48L2F4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW0+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTQgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LXAtNCBheC1ib3JkZXItdCBheC1ib3JkZXItZGVmYXVsdFwiPlxuICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJOZXdOb3RpZmljYXRpb24oKSA9PT0gMFwiXG4gICAgICAgICAgICBbY29sb3JdPVwiJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgIHRleHQ9XCJNYXJrIGFsbCBhcyByZWFkXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cIm1hcmtBbGxBc1JlYWQoKVwiXG4gICAgICAgICAgPjwvYXgtYnV0dG9uPlxuICAgICAgICAgIDxheC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgdGV4dD1cIlZpZXcgYWxsIG5vdGlmaWNhdGlvbnNcIiAob25DbGljayk9XCJ2aWV3QWxsTm90aWZpY2F0aW9ucygpXCI+PC9heC1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1jb250ZW50PlxuICAgIDwvYXgtdGFiLWl0ZW0+XG4gIH1cbjwvYXgtdGFicz5cblxuPG5nLXRlbXBsYXRlIFtheFRhYkNvbnRlbnRdICNjb25zPVwiYXhUYWJDb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiJdfQ==","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport { ChangeDetectionStrategy, Component, signal, viewChild } from '@angular/core';\nimport { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\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/badge\";\nimport * as i4 from \"@acorex/components/popover\";\nexport class AXMAdminNotificationSlotComponent {\n constructor() {\n this.totalNewNotification = signal(0, ...(ngDevMode ? [{ debugName: \"totalNewNotification\" }] : []));\n this.popover = viewChild(AXPopoverComponent, ...(ngDevMode ? [{ debugName: \"popover\" }] : []));\n }\n setTotalNewNotification(value) {\n this.totalNewNotification.set(value);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationSlotComponent, isStandalone: true, selector: \"ng-component\", viewQueries: [{ propertyName: \"popover\", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], ngImport: i0, template: \"<ax-button class=\\\"ax-relative\\\" color=\\\"primary\\\" #notification>\\n <ax-icon>\\n <i class=\\\"fa-regular fa-bell\\\"></i>\\n </ax-icon>\\n <ax-suffix class=\\\"ax-absolute ax-top-0 ax-left-1/2\\\">\\n @if (totalNewNotification()) {\\n <ax-badge color=\\\"success\\\" [text]=\\\"totalNewNotification().toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n</ax-button>\\n<ax-popover [target]=\\\"notification\\\" [openOn]=\\\"'toggle'\\\" [closeOn]=\\\"'clickOut'\\\" [adaptivityEnabled]=\\\"true\\\">\\n <div class=\\\"ax-bg-lightest ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\\\">\\n <axm-admin-notification-panel (onNewNotfication)=\\\"setTotalNewNotification($event)\\\"> </axm-admin-notification-panel>\\n </div>\\n</ax-popover>\\n\", dependencies: [{ 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: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i3.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXPopoverModule }, { kind: \"component\", type: i4.AXPopoverComponent, selector: \"ax-popover\", inputs: [\"width\", \"disabled\", \"offsetX\", \"offsetY\", \"target\", \"placement\", \"content\", \"openOn\", \"closeOn\", \"hasBackdrop\", \"openAfter\", \"closeAfter\", \"backdropClass\", \"panelClass\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"component\", type: AXMAdminNotificationPanelComponent, selector: \"axm-admin-notification-panel\", inputs: [\"providedTabs\"], outputs: [\"onNewNotfication\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationSlotComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonModule, AXDecoratorModule, AXBadgeModule, AXPopoverModule, AXMAdminNotificationPanelComponent], template: \"<ax-button class=\\\"ax-relative\\\" color=\\\"primary\\\" #notification>\\n <ax-icon>\\n <i class=\\\"fa-regular fa-bell\\\"></i>\\n </ax-icon>\\n <ax-suffix class=\\\"ax-absolute ax-top-0 ax-left-1/2\\\">\\n @if (totalNewNotification()) {\\n <ax-badge color=\\\"success\\\" [text]=\\\"totalNewNotification().toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n</ax-button>\\n<ax-popover [target]=\\\"notification\\\" [openOn]=\\\"'toggle'\\\" [closeOn]=\\\"'clickOut'\\\" [adaptivityEnabled]=\\\"true\\\">\\n <div class=\\\"ax-bg-lightest ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\\\">\\n <axm-admin-notification-panel (onNewNotfication)=\\\"setTotalNewNotification($event)\\\"> </axm-admin-notification-panel>\\n </div>\\n</ax-popover>\\n\" }]\n }], propDecorators: { popover: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXPopoverComponent), { isSignal: true }] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvY29tcG9uZW50cy9hZG1pbi1ub3RpZmljYXRpb24tc2xvdC9hZG1pbi1ub3RpZmljYXRpb24tc2xvdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWpGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7Ozs7O0FBTXBILE1BQU0sT0FBTyxpQ0FBaUM7SUFMOUM7UUFNRSx5QkFBb0IsR0FBRyxNQUFNLENBQVMsQ0FBQyxnRUFBQyxDQUFDO1FBS3pDLFlBQU8sR0FBRyxTQUFTLENBQUMsa0JBQWtCLG1EQUFDLENBQUM7S0FDekM7SUFMQyx1QkFBdUIsQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FKVSxpQ0FBaUM7bUdBQWpDLGlDQUFpQyxpSEFNeEIsa0JBQWtCLGdFQ2xCeEMsb3RCQWVBLDJDRExZLGNBQWMsNlhBQUUsaUJBQWlCLHNWQUFFLGFBQWEseUlBQUUsZUFBZSx3VkFBRSxrQ0FBa0M7OzRGQUVwRyxpQ0FBaUM7a0JBTDdDLFNBQVM7c0NBRVMsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGtDQUFrQyxDQUFDO3lGQVE1RixrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUG9wb3ZlckNvbXBvbmVudCwgQVhQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBzaWduYWwsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQWRtaW5Ob3RpZmljYXRpb25QYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC9hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwuY29tcG9uZW50JztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0FYQnV0dG9uTW9kdWxlLCBBWERlY29yYXRvck1vZHVsZSwgQVhCYWRnZU1vZHVsZSwgQVhQb3BvdmVyTW9kdWxlLCBBWE1BZG1pbk5vdGlmaWNhdGlvblBhbmVsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50IHtcbiAgdG90YWxOZXdOb3RpZmljYXRpb24gPSBzaWduYWw8bnVtYmVyPigwKTtcbiAgc2V0VG90YWxOZXdOb3RpZmljYXRpb24odmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudG90YWxOZXdOb3RpZmljYXRpb24uc2V0KHZhbHVlKTtcbiAgfVxuXG4gIHBvcG92ZXIgPSB2aWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50KTtcbn1cbiIsIjxheC1idXR0b24gY2xhc3M9XCJheC1yZWxhdGl2ZVwiIGNvbG9yPVwicHJpbWFyeVwiICNub3RpZmljYXRpb24+XG4gIDxheC1pY29uPlxuICAgIDxpIGNsYXNzPVwiZmEtcmVndWxhciBmYS1iZWxsXCI+PC9pPlxuICA8L2F4LWljb24+XG4gIDxheC1zdWZmaXggY2xhc3M9XCJheC1hYnNvbHV0ZSBheC10b3AtMCBheC1sZWZ0LTEvMlwiPlxuICAgIEBpZiAodG90YWxOZXdOb3RpZmljYXRpb24oKSkge1xuICAgICAgPGF4LWJhZGdlIGNvbG9yPVwic3VjY2Vzc1wiIFt0ZXh0XT1cInRvdGFsTmV3Tm90aWZpY2F0aW9uKCkudG9TdHJpbmcoKVwiPjwvYXgtYmFkZ2U+XG4gICAgfVxuICA8L2F4LXN1ZmZpeD5cbjwvYXgtYnV0dG9uPlxuPGF4LXBvcG92ZXIgW3RhcmdldF09XCJub3RpZmljYXRpb25cIiBbb3Blbk9uXT1cIid0b2dnbGUnXCIgW2Nsb3NlT25dPVwiJ2NsaWNrT3V0J1wiIFthZGFwdGl2aXR5RW5hYmxlZF09XCJ0cnVlXCI+XG4gIDxkaXYgY2xhc3M9XCJheC1iZy1saWdodGVzdCBheC1ib3JkZXIgYXgtYm9yZGVyLWRlZmF1bHQgYXgtcm91bmRlZC1tZCBheC1zaGFkb3ctbWQgYXgtdy1mdWxsXCI+XG4gICAgPGF4bS1hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwgKG9uTmV3Tm90ZmljYXRpb24pPVwic2V0VG90YWxOZXdOb3RpZmljYXRpb24oJGV2ZW50KVwiPiA8L2F4bS1hZG1pbi1ub3RpZmljYXRpb24tcGFuZWw+XG4gIDwvZGl2PlxuPC9heC1wb3BvdmVyPlxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPStateMessageComponent } from '@acorex/platform/layout/components';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, computed, effect, inject, output, signal, } from '@angular/core';\nimport { AXMAdminNotificationItemComponent } from '../../../components/admin-notification-item/admin-notification-item.component';\nimport { AXMAdminNotificationSlotComponent } from '../../../components/admin-notification-slot/admin-notification-slot.component';\nimport { AXMNotificationConnectorService } from '../../../shared/notification-management.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/tabs\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/components/badge\";\nimport * as i4 from \"@angular/common\";\nimport * as i5 from \"@acorex/core/translation\";\n/**\n * Notification Widget Component\n * Displays notifications in a card with tabs\n */\nexport class AXPNotificationWidgetViewComponent extends AXPValueWidgetComponent {\n constructor() {\n super();\n // Outputs\n this.notificationClick = output();\n this.markAsRead = output();\n // Dependencies\n this.cdr = inject(ChangeDetectorRef);\n this.datePipe = inject(DatePipe);\n this.notificationConnector = inject(AXMNotificationConnectorService);\n this.toastService = inject(AXToastService);\n // State\n this.activeTab = signal('unread', ...(ngDevMode ? [{ debugName: \"activeTab\" }] : []));\n this.refreshTimerId = null;\n // Configuration\n this.maxItems = computed(() => this.options()?.['maxItems'] ?? 10, ...(ngDevMode ? [{ debugName: \"maxItems\" }] : []));\n this.showAvatar = computed(() => this.options()?.['showAvatar'] ?? true, ...(ngDevMode ? [{ debugName: \"showAvatar\" }] : []));\n this.showDate = computed(() => this.options()?.['showDate'] ?? true, ...(ngDevMode ? [{ debugName: \"showDate\" }] : []));\n this.autoRefresh = computed(() => this.options()?.['autoRefresh'] ?? true, ...(ngDevMode ? [{ debugName: \"autoRefresh\" }] : []));\n this.refreshInterval = computed(() => (this.options()?.['refreshInterval'] ?? 60) * 1000, ...(ngDevMode ? [{ debugName: \"refreshInterval\" }] : [])); // Convert to milliseconds\n // Use store's signals directly\n this.notifications = this.notificationConnector.notificationList;\n this.totalNotifications = this.notificationConnector.total;\n this.isLoading = this.notificationConnector.loading;\n // Computed data\n this.notificationItems = computed(() => {\n const items = this.notifications();\n if (!items?.length)\n return [];\n // Sort by pinned status and date\n const sortedItems = [...items].sort((a, b) => {\n if (a.template.isPinned === b.template.isPinned) {\n return new Date(b.createAt).getTime() - new Date(a.createAt).getTime();\n }\n return a.template.isPinned ? -1 : 1;\n });\n // Filter by active tab\n const filtered = this.activeTab() === 'unread' ? sortedItems.filter((n) => !n.readAt) : sortedItems;\n return filtered.slice(0, this.maxItems());\n }, ...(ngDevMode ? [{ debugName: \"notificationItems\" }] : []));\n /**\n * Bridge click from admin item (emits notification id)\n */\n this.onAdminItemClick = (id) => {\n return;\n // const item = this.notifications().find((n) => n.id === id);\n // if (!item) return;\n // this.onNotificationClick(item);\n };\n // Watch for changes to auto-refresh settings\n effect(() => {\n this.setupAutoRefresh();\n });\n }\n ngOnInit() {\n this.loadNotifications();\n }\n ngOnDestroy() {\n this.clearRefreshTimer();\n }\n /**\n * Set up auto-refresh timer based on configuration\n */\n setupAutoRefresh() {\n this.clearRefreshTimer();\n if (this.autoRefresh()) {\n const interval = this.refreshInterval();\n this.refreshTimerId = setInterval(() => {\n this.loadNotifications();\n }, interval);\n }\n }\n /**\n * Clear the refresh timer if it exists\n */\n clearRefreshTimer() {\n if (this.refreshTimerId !== null) {\n clearInterval(this.refreshTimerId);\n this.refreshTimerId = null;\n }\n }\n /**\n * Load notifications data from service\n */\n async loadNotifications() {\n try {\n await this.notificationConnector.getList();\n this.cdr.detectChanges();\n }\n catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n /**\n * Manually refresh notifications\n */\n refreshNotifications() {\n this.loadNotifications();\n }\n /**\n * Get the count of new messages for the badge\n */\n getNewMessageCount() {\n const items = this.notifications();\n if (!items?.length)\n return 0;\n return items.filter((n) => !n.readAt).length;\n }\n /**\n * Handle tab change event from ax-tabs component\n * @param data The tab change event data\n */\n handleTabChange(data) {\n const index = data.index;\n // Map index to tab name: 0 = 'unread', 1 = 'all'\n const tabName = index === 0 ? 'unread' : 'all';\n this.onTabChange(tabName);\n }\n /**\n * Mark all notifications as read\n */\n async markAllAsRead() {\n try {\n await this.notificationConnector.markAsRead({ id: [] });\n this.cdr.detectChanges();\n }\n catch (error) {\n this.toastService.show({\n content: 'Failed to mark notifications as read',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n });\n }\n }\n /**\n * Change the active tab\n */\n onTabChange(tabName) {\n this.activeTab.set(tabName);\n this.cdr.detectChanges();\n }\n /**\n * Handle notification click event\n */\n onNotificationClick(notification) {\n this.markAsReadIfNeeded(notification);\n this.notificationClick.emit(notification);\n }\n /**\n * Format the timestamp in a user-friendly way\n */\n formatTime(date) {\n if (!date)\n return '';\n const dateObj = typeof date === 'string' ? new Date(date) : date;\n const diffDays = this.getDaysDifference(dateObj);\n // Format based on how recent the date is\n if (diffDays === 0)\n return this.datePipe.transform(dateObj, 'h:mm a') || ''; // Today\n if (diffDays === 1)\n return 'Yesterday';\n if (diffDays < 7)\n return this.datePipe.transform(dateObj, 'EEE') || ''; // Day of week\n return this.datePipe.transform(dateObj, 'MM/DD/YYYY') || ''; // Older date\n }\n /**\n * Mark notification as read if needed\n */\n async markAsReadIfNeeded(notification) {\n try {\n // Always mark as read on click if unread, but don't toggle back to unread\n if (notification.readAt)\n return;\n await this.notificationConnector.markAsRead({ id: [notification.id] });\n // Emit the updated notification with readAt set\n // It will be read now because we only call this for unread notifications\n const updatedNotification = {\n ...notification,\n readAt: new Date(),\n };\n this.markAsRead.emit(updatedNotification);\n this.cdr.detectChanges();\n }\n catch (error) {\n console.error('Failed to mark notification as read:', error);\n }\n }\n /**\n * Calculate days difference from now\n */\n getDaysDifference(date) {\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n return Math.floor(diffMs / (1000 * 60 * 60 * 24));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationWidgetViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXPNotificationWidgetViewComponent, isStandalone: true, selector: \"ng-component\", outputs: { notificationClick: \"notificationClick\", markAsRead: \"markAsRead\" }, providers: [\n DatePipe,\n // Provide a lightweight stub for AXMAdminNotificationSlotComponent so the admin item can inject it\n {\n provide: AXMAdminNotificationSlotComponent,\n useValue: {\n popover: () => ({ close: () => { } }),\n },\n },\n ], usesInheritance: true, ngImport: i0, template: \"<div class=\\\"ax-p-2 ax-size-full ax-flex ax-flex-col ax-gap-2\\\">\\n <ax-tabs\\n class=\\\"ax-bg-light-start ax-border-b ax-border-default ax-shrink-0\\\"\\n [fitParent]=\\\"true\\\"\\n location=\\\"bottom\\\"\\n (onActiveTabChanged)=\\\"handleTabChange($event)\\\"\\n >\\n <ax-tab-item [text]=\\\"('@notification-management:unread' | translate | async) ?? 'Unread'\\\" class=\\\"ax-font-medium\\\">\\n <ax-suffix>\\n @if (getNewMessageCount() > 0) {\\n <ax-badge color=\\\"primary\\\" [text]=\\\"getNewMessageCount().toString()\\\" size=\\\"sm\\\" class=\\\"ax-ml-1\\\"></ax-badge>\\n }\\n </ax-suffix>\\n </ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"('@notification-management:all' | translate | async) ?? 'All'\\\"\\n class=\\\"ax-font-medium\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n <div class=\\\"ax-space-y-1 ax-overflow-auto\\\">\\n @for (item of notificationItems(); track item.id) {\\n <axp-master-notification-item [data]=\\\"item\\\" (onPressNotificationItem)=\\\"onAdminItemClick($event)\\\" />\\n } @empty {\\n <axp-state-message\\n icon=\\\"fa-light fa-bell-slash\\\"\\n [title]=\\\"'@notification-management:no-notifications.title'\\\"\\n [description]=\\\"'@notification-management:no-notifications.description'\\\"\\n >\\n </axp-state-message>\\n }\\n </div>\\n</div>\\n\", styles: [\":host{display:block;width:100%;height:100%}.notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:1rem;padding:.5rem;text-align:start;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}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXTabsModule }, { kind: \"component\", type: i1.AXTabsComponent, selector: \"ax-tabs\", inputs: [\"look\", \"location\", \"fitParent\", \"minWidth\", \"content\"], outputs: [\"onActiveTabChanged\"] }, { kind: \"component\", type: i1.AXTabItemComponent, selector: \"ax-tab-item\", inputs: [\"disabled\", \"text\", \"key\", \"headerTemplate\", \"active\"], outputs: [\"disabledChange\", \"onClick\", \"onBlur\", \"onFocus\", \"activeChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i3.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"component\", type: AXMAdminNotificationItemComponent, selector: \"axp-master-notification-item\", inputs: [\"data\"], outputs: [\"onPressNotificationItem\"] }, { kind: \"component\", type: AXPStateMessageComponent, selector: \"axp-state-message\", inputs: [\"mode\", \"icon\", \"title\", \"description\", \"variant\"] }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationWidgetViewComponent, decorators: [{\n type: Component,\n args: [{ standalone: true, imports: [\n CommonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXButtonModule,\n AXBadgeModule,\n AXTranslationModule,\n AXMAdminNotificationItemComponent,\n AXPStateMessageComponent,\n ], providers: [\n DatePipe,\n // Provide a lightweight stub for AXMAdminNotificationSlotComponent so the admin item can inject it\n {\n provide: AXMAdminNotificationSlotComponent,\n useValue: {\n popover: () => ({ close: () => { } }),\n },\n },\n ], changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div class=\\\"ax-p-2 ax-size-full ax-flex ax-flex-col ax-gap-2\\\">\\n <ax-tabs\\n class=\\\"ax-bg-light-start ax-border-b ax-border-default ax-shrink-0\\\"\\n [fitParent]=\\\"true\\\"\\n location=\\\"bottom\\\"\\n (onActiveTabChanged)=\\\"handleTabChange($event)\\\"\\n >\\n <ax-tab-item [text]=\\\"('@notification-management:unread' | translate | async) ?? 'Unread'\\\" class=\\\"ax-font-medium\\\">\\n <ax-suffix>\\n @if (getNewMessageCount() > 0) {\\n <ax-badge color=\\\"primary\\\" [text]=\\\"getNewMessageCount().toString()\\\" size=\\\"sm\\\" class=\\\"ax-ml-1\\\"></ax-badge>\\n }\\n </ax-suffix>\\n </ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"('@notification-management:all' | translate | async) ?? 'All'\\\"\\n class=\\\"ax-font-medium\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n <div class=\\\"ax-space-y-1 ax-overflow-auto\\\">\\n @for (item of notificationItems(); track item.id) {\\n <axp-master-notification-item [data]=\\\"item\\\" (onPressNotificationItem)=\\\"onAdminItemClick($event)\\\" />\\n } @empty {\\n <axp-state-message\\n icon=\\\"fa-light fa-bell-slash\\\"\\n [title]=\\\"'@notification-management:no-notifications.title'\\\"\\n [description]=\\\"'@notification-management:no-notifications.description'\\\"\\n >\\n </axp-state-message>\\n }\\n </div>\\n</div>\\n\", styles: [\":host{display:block;width:100%;height:100%}.notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:1rem;padding:.5rem;text-align:start;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}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}\\n\"] }]\n }], ctorParameters: () => [], propDecorators: { notificationClick: [{ type: i0.Output, args: [\"notificationClick\"] }], markAsRead: [{ type: i0.Output, args: [\"markAsRead\"] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQTBCLE1BQU0seUJBQXlCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUdO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ZCxhQUFhO3dCQUNiLG1CQUFtQjt3QkFDbkIsaUNBQWlDO3dCQUNqQyx3QkFBd0I7cUJBQ3pCLGFBQ1U7d0JBQ1QsUUFBUTt3QkFDUixtR0FBbUc7d0JBQ25HOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRTtnQ0FDUixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQzs2QkFDUTt5QkFDaEQ7cUJBQ0YsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSwgQVhUYWJTdHJpcENoYW5nZWRFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RvYXN0JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU3RhdGVNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0vYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QvYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuXG4vKipcbiAqIE5vdGlmaWNhdGlvbiBXaWRnZXQgQ29tcG9uZW50XG4gKiBEaXNwbGF5cyBub3RpZmljYXRpb25zIGluIGEgY2FyZCB3aXRoIHRhYnNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb24td2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFYVGFic01vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWEJhZGdlTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gICAgQVhNQWRtaW5Ob3RpZmljYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEFYUFN0YXRlTWVzc2FnZUNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRGF0ZVBpcGUsXG4gICAgLy8gUHJvdmlkZSBhIGxpZ2h0d2VpZ2h0IHN0dWIgZm9yIEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCBzbyB0aGUgYWRtaW4gaXRlbSBjYW4gaW5qZWN0IGl0XG4gICAge1xuICAgICAgcHJvdmlkZTogQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50LFxuICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgcG9wb3ZlcjogKCkgPT4gKHsgY2xvc2U6ICgpID0+IHsgfSB9KSxcbiAgICAgIH0gYXMgUGFydGlhbDxBWE1BZG1pbk5vdGlmaWNhdGlvblNsb3RDb21wb25lbnQ+LFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBOb3RpZmljYXRpb25XaWRnZXRWaWV3Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gT3V0cHV0c1xuICBub3RpZmljYXRpb25DbGljayA9IG91dHB1dDxBWE1Ob3RpZmljYXRpb25JdGVtPigpO1xuICBtYXJrQXNSZWFkID0gb3V0cHV0PEFYTU5vdGlmaWNhdGlvbkl0ZW0+KCk7XG5cbiAgLy8gRGVwZW5kZW5jaWVzXG4gIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkYXRlUGlwZSA9IGluamVjdChEYXRlUGlwZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uQ29ubmVjdG9yID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0U2VydmljZSA9IGluamVjdChBWFRvYXN0U2VydmljZSk7XG5cbiAgLy8gU3RhdGVcbiAgcHJvdGVjdGVkIGFjdGl2ZVRhYiA9IHNpZ25hbDwndW5yZWFkJyB8ICdhbGwnPigndW5yZWFkJyk7XG4gIHByaXZhdGUgcmVmcmVzaFRpbWVySWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIC8vIENvbmZpZ3VyYXRpb25cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG1heEl0ZW1zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcHRpb25zKCk/LlsnbWF4SXRlbXMnXSA/PyAxMCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBzaG93QXZhdGFyID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcHRpb25zKCk/Llsnc2hvd0F2YXRhciddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2hvd0RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKT8uWydzaG93RGF0ZSddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXV0b1JlZnJlc2ggPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKT8uWydhdXRvUmVmcmVzaCddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVmcmVzaEludGVydmFsID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMub3B0aW9ucygpPy5bJ3JlZnJlc2hJbnRlcnZhbCddID8/IDYwKSAqIDEwMDApOyAvLyBDb252ZXJ0IHRvIG1pbGxpc2Vjb25kc1xuXG4gIC8vIFVzZSBzdG9yZSdzIHNpZ25hbHMgZGlyZWN0bHlcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnMgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5ub3RpZmljYXRpb25MaXN0O1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG90YWxOb3RpZmljYXRpb25zID0gdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IudG90YWw7XG4gIHByb3RlY3RlZCByZWFkb25seSBpc0xvYWRpbmcgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5sb2FkaW5nO1xuXG4gIC8vIENvbXB1dGVkIGRhdGFcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkl0ZW1zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5ub3RpZmljYXRpb25zKCk7XG4gICAgaWYgKCFpdGVtcz8ubGVuZ3RoKSByZXR1cm4gW107XG5cbiAgICAvLyBTb3J0IGJ5IHBpbm5lZCBzdGF0dXMgYW5kIGRhdGVcbiAgICBjb25zdCBzb3J0ZWRJdGVtcyA9IFsuLi5pdGVtc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgaWYgKGEudGVtcGxhdGUuaXNQaW5uZWQgPT09IGIudGVtcGxhdGUuaXNQaW5uZWQpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGIuY3JlYXRlQXQpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGEuY3JlYXRlQXQpLmdldFRpbWUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhLnRlbXBsYXRlLmlzUGlubmVkID8gLTEgOiAxO1xuICAgIH0pO1xuXG4gICAgLy8gRmlsdGVyIGJ5IGFjdGl2ZSB0YWJcbiAgICBjb25zdCBmaWx0ZXJlZCA9IHRoaXMuYWN0aXZlVGFiKCkgPT09ICd1bnJlYWQnID8gc29ydGVkSXRlbXMuZmlsdGVyKChuKSA9PiAhbi5yZWFkQXQpIDogc29ydGVkSXRlbXM7XG5cbiAgICByZXR1cm4gZmlsdGVyZWQuc2xpY2UoMCwgdGhpcy5tYXhJdGVtcygpKTtcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIC8vIFdhdGNoIGZvciBjaGFuZ2VzIHRvIGF1dG8tcmVmcmVzaCBzZXR0aW5nc1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLnNldHVwQXV0b1JlZnJlc2goKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZE5vdGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJSZWZyZXNoVGltZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdXAgYXV0by1yZWZyZXNoIHRpbWVyIGJhc2VkIG9uIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHByaXZhdGUgc2V0dXBBdXRvUmVmcmVzaCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyUmVmcmVzaFRpbWVyKCk7XG5cbiAgICBpZiAodGhpcy5hdXRvUmVmcmVzaCgpKSB7XG4gICAgICBjb25zdCBpbnRlcnZhbCA9IHRoaXMucmVmcmVzaEludGVydmFsKCk7XG4gICAgICB0aGlzLnJlZnJlc2hUaW1lcklkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XG4gICAgICB9LCBpbnRlcnZhbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSByZWZyZXNoIHRpbWVyIGlmIGl0IGV4aXN0c1xuICAgKi9cbiAgcHJpdmF0ZSBjbGVhclJlZnJlc2hUaW1lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXJJZCAhPT0gbnVsbCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnJlZnJlc2hUaW1lcklkKTtcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVySWQgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIG5vdGlmaWNhdGlvbnMgZGF0YSBmcm9tIHNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgbG9hZE5vdGlmaWNhdGlvbnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmdldExpc3QoKTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6ICdGYWlsZWQgdG8gbG9hZCBub3RpZmljYXRpb25zIScsXG4gICAgICAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgIHRpbWVPdXQ6IDMwMDAsXG4gICAgICAgIHRpbWVPdXRQcm9ncmVzczogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYW51YWxseSByZWZyZXNoIG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCByZWZyZXNoTm90aWZpY2F0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjb3VudCBvZiBuZXcgbWVzc2FnZXMgZm9yIHRoZSBiYWRnZVxuICAgKi9cbiAgcHJvdGVjdGVkIGdldE5ld01lc3NhZ2VDb3VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5ub3RpZmljYXRpb25zKCk7XG4gICAgaWYgKCFpdGVtcz8ubGVuZ3RoKSByZXR1cm4gMDtcblxuICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKG4pID0+ICFuLnJlYWRBdCkubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSB0YWIgY2hhbmdlIGV2ZW50IGZyb20gYXgtdGFicyBjb21wb25lbnRcbiAgICogQHBhcmFtIGRhdGEgVGhlIHRhYiBjaGFuZ2UgZXZlbnQgZGF0YVxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVRhYkNoYW5nZShkYXRhOiBBWFRhYlN0cmlwQ2hhbmdlZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5kZXggPSBkYXRhLmluZGV4O1xuICAgIC8vIE1hcCBpbmRleCB0byB0YWIgbmFtZTogMCA9ICd1bnJlYWQnLCAxID0gJ2FsbCdcbiAgICBjb25zdCB0YWJOYW1lID0gaW5kZXggPT09IDAgPyAndW5yZWFkJyA6ICdhbGwnO1xuICAgIHRoaXMub25UYWJDaGFuZ2UodGFiTmFtZSk7XG4gIH1cblxuICAvKipcbiAgICogTWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FsbEFzUmVhZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IubWFya0FzUmVhZCh7IGlkOiBbXSB9KTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6ICdGYWlsZWQgdG8gbWFyayBub3RpZmljYXRpb25zIGFzIHJlYWQnLFxuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgIGxvY2F0aW9uOiAnYm90dG9tLWNlbnRlcicsXG4gICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICB0aW1lT3V0OiAzMDAwLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0aGUgYWN0aXZlIHRhYlxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVGFiQ2hhbmdlKHRhYk5hbWU6ICd1bnJlYWQnIHwgJ2FsbCcpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiTmFtZSk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSBub3RpZmljYXRpb24gY2xpY2sgZXZlbnRcbiAgICovXG4gIHByb3RlY3RlZCBvbk5vdGlmaWNhdGlvbkNsaWNrKG5vdGlmaWNhdGlvbjogQVhNTm90aWZpY2F0aW9uSXRlbSk6IHZvaWQge1xuICAgIHRoaXMubWFya0FzUmVhZElmTmVlZGVkKG5vdGlmaWNhdGlvbik7XG4gICAgdGhpcy5ub3RpZmljYXRpb25DbGljay5lbWl0KG5vdGlmaWNhdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogQnJpZGdlIGNsaWNrIGZyb20gYWRtaW4gaXRlbSAoZW1pdHMgbm90aWZpY2F0aW9uIGlkKVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uQWRtaW5JdGVtQ2xpY2sgPSAoaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgIHJldHVybjtcbiAgICAvLyBjb25zdCBpdGVtID0gdGhpcy5ub3RpZmljYXRpb25zKCkuZmluZCgobikgPT4gbi5pZCA9PT0gaWQpO1xuICAgIC8vIGlmICghaXRlbSkgcmV0dXJuO1xuICAgIC8vIHRoaXMub25Ob3RpZmljYXRpb25DbGljayhpdGVtKTtcbiAgfTtcblxuICAvKipcbiAgICogRm9ybWF0IHRoZSB0aW1lc3RhbXAgaW4gYSB1c2VyLWZyaWVuZGx5IHdheVxuICAgKi9cbiAgcHJvdGVjdGVkIGZvcm1hdFRpbWUoZGF0ZTogRGF0ZSB8IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgaWYgKCFkYXRlKSByZXR1cm4gJyc7XG5cbiAgICBjb25zdCBkYXRlT2JqID0gdHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnID8gbmV3IERhdGUoZGF0ZSkgOiBkYXRlO1xuICAgIGNvbnN0IGRpZmZEYXlzID0gdGhpcy5nZXREYXlzRGlmZmVyZW5jZShkYXRlT2JqKTtcblxuICAgIC8vIEZvcm1hdCBiYXNlZCBvbiBob3cgcmVjZW50IHRoZSBkYXRlIGlzXG4gICAgaWYgKGRpZmZEYXlzID09PSAwKSByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZU9iaiwgJ2g6bW0gYScpIHx8ICcnOyAvLyBUb2RheVxuICAgIGlmIChkaWZmRGF5cyA9PT0gMSkgcmV0dXJuICdZZXN0ZXJkYXknO1xuICAgIGlmIChkaWZmRGF5cyA8IDcpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlT2JqLCAnRUVFJykgfHwgJyc7IC8vIERheSBvZiB3ZWVrXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGVPYmosICdNTS9ERC9ZWVlZJykgfHwgJyc7IC8vIE9sZGVyIGRhdGVcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIG5vdGlmaWNhdGlvbiBhcyByZWFkIGlmIG5lZWRlZFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBtYXJrQXNSZWFkSWZOZWVkZWQobm90aWZpY2F0aW9uOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIEFsd2F5cyBtYXJrIGFzIHJlYWQgb24gY2xpY2sgaWYgdW5yZWFkLCBidXQgZG9uJ3QgdG9nZ2xlIGJhY2sgdG8gdW5yZWFkXG4gICAgICBpZiAobm90aWZpY2F0aW9uLnJlYWRBdCkgcmV0dXJuO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5tYXJrQXNSZWFkKHsgaWQ6IFtub3RpZmljYXRpb24uaWRdIH0pO1xuXG4gICAgICAvLyBFbWl0IHRoZSB1cGRhdGVkIG5vdGlmaWNhdGlvbiB3aXRoIHJlYWRBdCBzZXRcbiAgICAgIC8vIEl0IHdpbGwgYmUgcmVhZCBub3cgYmVjYXVzZSB3ZSBvbmx5IGNhbGwgdGhpcyBmb3IgdW5yZWFkIG5vdGlmaWNhdGlvbnNcbiAgICAgIGNvbnN0IHVwZGF0ZWROb3RpZmljYXRpb24gPSB7XG4gICAgICAgIC4uLm5vdGlmaWNhdGlvbixcbiAgICAgICAgcmVhZEF0OiBuZXcgRGF0ZSgpLFxuICAgICAgfTtcbiAgICAgIHRoaXMubWFya0FzUmVhZC5lbWl0KHVwZGF0ZWROb3RpZmljYXRpb24pO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbWFyayBub3RpZmljYXRpb24gYXMgcmVhZDonLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSBkYXlzIGRpZmZlcmVuY2UgZnJvbSBub3dcbiAgICovXG4gIHByaXZhdGUgZ2V0RGF5c0RpZmZlcmVuY2UoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkaWZmTXMgPSBub3cuZ2V0VGltZSgpIC0gZGF0ZS5nZXRUaW1lKCk7XG4gICAgcmV0dXJuIE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXAtMiBheC1zaXplLWZ1bGwgYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMlwiPlxuICA8YXgtdGFic1xuICAgIGNsYXNzPVwiYXgtYmctbGlnaHQtc3RhcnQgYXgtYm9yZGVyLWIgYXgtYm9yZGVyLWRlZmF1bHQgYXgtc2hyaW5rLTBcIlxuICAgIFtmaXRQYXJlbnRdPVwidHJ1ZVwiXG4gICAgbG9jYXRpb249XCJib3R0b21cIlxuICAgIChvbkFjdGl2ZVRhYkNoYW5nZWQpPVwiaGFuZGxlVGFiQ2hhbmdlKCRldmVudClcIlxuICA+XG4gICAgPGF4LXRhYi1pdGVtIFt0ZXh0XT1cIignQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OnVucmVhZCcgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ1VucmVhZCdcIiBjbGFzcz1cImF4LWZvbnQtbWVkaXVtXCI+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICBAaWYgKGdldE5ld01lc3NhZ2VDb3VudCgpID4gMCkge1xuICAgICAgICAgIDxheC1iYWRnZSBjb2xvcj1cInByaW1hcnlcIiBbdGV4dF09XCJnZXROZXdNZXNzYWdlQ291bnQoKS50b1N0cmluZygpXCIgc2l6ZT1cInNtXCIgY2xhc3M9XCJheC1tbC0xXCI+PC9heC1iYWRnZT5cbiAgICAgICAgfVxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC10YWItaXRlbT5cbiAgICA8YXgtdGFiLWl0ZW1cbiAgICAgIFt0ZXh0XT1cIignQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OmFsbCcgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ0FsbCdcIlxuICAgICAgY2xhc3M9XCJheC1mb250LW1lZGl1bVwiXG4gICAgPjwvYXgtdGFiLWl0ZW0+XG4gIDwvYXgtdGFicz5cbiAgPGRpdiBjbGFzcz1cImF4LXNwYWNlLXktMSBheC1vdmVyZmxvdy1hdXRvXCI+XG4gICAgQGZvciAoaXRlbSBvZiBub3RpZmljYXRpb25JdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XG4gICAgICA8YXhwLW1hc3Rlci1ub3RpZmljYXRpb24taXRlbSBbZGF0YV09XCJpdGVtXCIgKG9uUHJlc3NOb3RpZmljYXRpb25JdGVtKT1cIm9uQWRtaW5JdGVtQ2xpY2soJGV2ZW50KVwiIC8+XG4gICAgfSBAZW1wdHkge1xuICAgICAgPGF4cC1zdGF0ZS1tZXNzYWdlXG4gICAgICAgIGljb249XCJmYS1saWdodCBmYS1iZWxsLXNsYXNoXCJcbiAgICAgICAgW3RpdGxlXT1cIidAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6bm8tbm90aWZpY2F0aW9ucy50aXRsZSdcIlxuICAgICAgICBbZGVzY3JpcHRpb25dPVwiJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpuby1ub3RpZmljYXRpb25zLmRlc2NyaXB0aW9uJ1wiXG4gICAgICA+XG4gICAgICA8L2F4cC1zdGF0ZS1tZXNzYWdlPlxuICAgIH1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { AXP_WIDGETS_UTILITY_CATEGORY } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, AXPWidgetsCatalog, cloneProperty } from '@acorex/platform/layout/widget-core';\nimport { AXP_APPEARANCE_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_STYLING_PROPERTY_GROUP, } from '@acorex/platform/layout/widgets';\n/**\n * Configuration for the Notification Widget\n */\nexport const AXPMyNotificationDashboardWidget = {\n name: 'my-notification-dashboard',\n title: 'My Notification Widget',\n categories: [AXP_WIDGETS_UTILITY_CATEGORY],\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n type: 'dashboard',\n description: 'Displays notifications in a widget format',\n icon: 'fa-regular fa-bell',\n properties: [\n cloneProperty(AXP_DATA_PATH_PROPERTY, { visible: false }),\n // ====== Title ======\n {\n name: 'title',\n title: '@notification-management:widgets.my-notification-dashboard.chart-title',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: '',\n dataType: 'string',\n interface: {\n name: 'title',\n path: 'options.title',\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 'Enter chart title',\n },\n },\n },\n visible: true,\n },\n {\n name: 'maxItems',\n title: '@notification-management:widgets.my-notification-dashboard.max-items',\n description: 'Maximum number of notification items to display',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n defaultValue: 10,\n dataType: 'number',\n interface: {\n name: 'maxItems',\n path: 'options.maxItems',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 100,\n },\n },\n },\n visible: true,\n },\n {\n name: 'showAvatar',\n title: '@notification-management:widgets.my-notification-dashboard.show-avatar',\n description: 'Whether to show avatars in notifications',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'showAvatar',\n path: 'options.showAvatar',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'showDate',\n title: '@notification-management:widgets.my-notification-dashboard.show-date',\n description: 'Whether to show date in notifications',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'showDate',\n path: 'options.showDate',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'autoRefresh',\n title: '@notification-management:widgets.my-notification-dashboard.auto-refresh',\n description: 'Automatically refresh notifications at regular intervals',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'autoRefresh',\n path: 'options.autoRefresh',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'refreshInterval',\n title: '@notification-management:widgets.my-notification-dashboard.refresh-interval',\n description: 'Interval in seconds between automatic refreshes',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: 60,\n dataType: 'number',\n interface: {\n name: 'refreshInterval',\n path: 'options.refreshInterval',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 10,\n maxValue: 3600,\n },\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./notification-widget.component').then((c) => c.AXPNotificationWidgetViewComponent),\n },\n },\n meta: {\n dimensions: {\n width: 3,\n height: 5,\n minWidth: 2,\n minHeight: 4,\n maxWidth: 4,\n maxHeight: 7,\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEYsT0FBTyxFQUFtQixrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1SCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLHNCQUFzQixFQUN0QiwwQkFBMEIsR0FDM0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFvQjtJQUMvRCxJQUFJLEVBQUUsMkJBQTJCO0lBQ2pDLEtBQUssRUFBRSx3QkFBd0I7SUFDL0IsVUFBVSxFQUFFLENBQUMsNEJBQTRCLENBQUM7SUFDMUMsTUFBTSxFQUFFLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDO0lBQzVDLElBQUksRUFBRSxXQUFXO0lBQ2pCLFdBQVcsRUFBRSwyQ0FBMkM7SUFDeEQsSUFBSSxFQUFFLG9CQUFvQjtJQUMxQixVQUFVLEVBQUU7UUFDVixhQUFhLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekQsc0JBQXNCO1FBQ3RCO1lBQ0UsSUFBSSxFQUFFLE9BQU87WUFDYixLQUFLLEVBQUUsd0VBQXdFO1lBQy9FLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsTUFBTSxFQUFFO2dCQUNOLFlBQVksRUFBRSxFQUFFO2dCQUNoQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsU0FBUyxF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aUNBQWlDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUM3RztLQUNGO0lBQ0QsSUFBSSxFQUFFO1FBQ0osVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLENBQUM7WUFDUixNQUFNLEVBQUUsQ0FBQztZQUNULFFBQVEsRUFBRSxDQUFDO1lBQ1gsU0FBUyxFQUFFLENBQUM7WUFDWixRQUFRLEVBQUUsQ0FBQztZQUNYLFNBQVMsRUFBRSxDQUFDO1NBQ2I7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBfV0lER0VUU19VVElMSVRZX0NBVEVHT1JZIH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2Rhc2hib2FyZC1tYW5hZ2VtZW50JztcbmltcG9ydCB7IEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0R3JvdXBFbnVtLCBBWFBXaWRnZXRzQ2F0YWxvZywgY2xvbmVQcm9wZXJ0eSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7XG4gIEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICBBWFBfU1RZTElOR19QUk9QRVJUWV9HUk9VUCxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0cyc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIE5vdGlmaWNhdGlvbiBXaWRnZXRcbiAqL1xuZXhwb3J0IGNvbnN0IEFYUE15Tm90aWZpY2F0aW9uRGFzaGJvYXJkV2lkZ2V0OiBBWFBXaWRnZXRDb25maWcgPSB7XG4gIG5hbWU6ICdteS1ub3RpZmljYXRpb24tZGFzaGJvYXJkJyxcbiAgdGl0bGU6ICdNeSBOb3RpZmljYXRpb24gV2lkZ2V0JyxcbiAgY2F0ZWdvcmllczogW0FYUF9XSURHRVRTX1VUSUxJVFlfQ0FURUdPUlldLFxuICBncm91cHM6IFtBWFBXaWRnZXRHcm91cEVudW0uRGFzaGJvYXJkV2lkZ2V0XSxcbiAgdHlwZTogJ2Rhc2hib2FyZCcsXG4gIGRlc2NyaXB0aW9uOiAnRGlzcGxheXMgbm90aWZpY2F0aW9ucyBpbiBhIHdpZGdldCBmb3JtYXQnLFxuICBpY29uOiAnZmEtcmVndWxhciBmYS1iZWxsJyxcbiAgcHJvcGVydGllczogW1xuICAgIGNsb25lUHJvcGVydHkoQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgeyB2aXNpYmxlOiBmYWxzZSB9KSxcbiAgICAvLyA9PT09PT0gVGl0bGUgPT09PT09XG4gICAge1xuICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OndpZGdldHMubXktbm90aWZpY2F0aW9uLWRhc2hib2FyZC5jaGFydC10aXRsZScsXG4gICAgICBncm91cDogQVhQX0FQUEVBUkFOQ0VfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBzY2hlbWE6IHtcbiAgICAgICAgZGVmYXVsdFZhbHVlOiAnJyxcbiAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLnRpdGxlJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnRW50ZXIgY2hhcnQgdGl0bGUnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdtYXhJdGVtcycsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQubWF4LWl0ZW1zJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnTWF4aW11bSBudW1iZXIgb2Ygbm90aWZpY2F0aW9uIGl0ZW1zIHRvIGRpc3BsYXknLFxuICAgICAgZ3JvdXA6IEFYUF9TVFlMSU5HX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogMTAsXG4gICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ21heEl0ZW1zJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5tYXhJdGVtcycsXG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubnVtYmVyLFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDEwMCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHZpc2libGU6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnc2hvd0F2YXRhcicsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuc2hvdy1hdmF0YXInLFxuICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIHNob3cgYXZhdGFycyBpbiBub3RpZmljYXRpb25zJyxcbiAgICAgIGdyb3VwOiBBWFBfQVBQRUFSQU5DRV9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIHNjaGVtYToge1xuICAgICAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgIG5hbWU6ICdzaG93QXZhdGFyJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5zaG93QXZhdGFyJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG93RGF0ZScsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuc2hvdy1kYXRlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0byBzaG93IGRhdGUgaW4gbm90aWZpY2F0aW9ucycsXG4gICAgICBncm91cDogQVhQX0FQUEVBUkFOQ0VfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBzY2hlbWE6IHtcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICBuYW1lOiAnc2hvd0RhdGUnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLnNob3dEYXRlJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdhdXRvUmVmcmVzaCcsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuYXV0by1yZWZyZXNoJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQXV0b21hdGljYWxseSByZWZyZXNoIG5vdGlmaWNhdGlvbnMgYXQgcmVndWxhciBpbnRlcnZhbHMnLFxuICAgICAgZ3JvdXA6IEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSxcbiAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ2F1dG9SZWZyZXNoJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5hdXRvUmVmcmVzaCcsXG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudG9nZ2xlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHZpc2libGU6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAncmVmcmVzaEludGVydmFsJyxcbiAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OndpZGdldHMubXktbm90aWZpY2F0aW9uLWRhc2hib2FyZC5yZWZyZXNoLWludGVydmFsJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnSW50ZXJ2YWwgaW4gc2Vjb25kcyBiZXR3ZWVuIGF1dG9tYXRpYyByZWZyZXNoZXMnLFxuICAgICAgZ3JvdXA6IEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogNjAsXG4gICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ3JlZnJlc2hJbnRlcnZhbCcsXG4gICAgICAgICAgcGF0aDogJ29wdGlvbnMucmVmcmVzaEludGVydmFsJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5udW1iZXIsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgbWluVmFsdWU6IDEwLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDM2MDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB2aXNpYmxlOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICB2aWV3OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9ub3RpZmljYXRpb24td2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTm90aWZpY2F0aW9uV2lkZ2V0Vmlld0NvbXBvbmVudCksXG4gICAgfSxcbiAgfSxcbiAgbWV0YToge1xuICAgIGRpbWVuc2lvbnM6IHtcbiAgICAgIHdpZHRoOiAzLFxuICAgICAgaGVpZ2h0OiA1LFxuICAgICAgbWluV2lkdGg6IDIsXG4gICAgICBtaW5IZWlnaHQ6IDQsXG4gICAgICBtYXhXaWR0aDogNCxcbiAgICAgIG1heEhlaWdodDogNyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==","import { AXPAuthGuard, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { AXP_TASK_BADGE_PROVIDERS, AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXPRootLayoutComponent } from '@acorex/platform/themes/default';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { ROUTES } from '@angular/router';\nimport { AXMNotificationBadgeProvider } from './badge.provider';\n// Entity Modules\nimport { AXMNotificationEntityModule, AXMNotificationTemplateEntityModule, AXMNotificationChannelEntityModule, } from './entities';\nimport { AXMEntityLoader } from './entity.provider';\nimport { AXMAdminNotificationSlotComponent } from './features/components/admin-notification-slot/admin-notification-slot.component';\nimport { AXPMyNotificationDashboardWidget } from './features/dashboard/widgets/my-notification';\nimport { AXMMenuProvider } from './menu.provider';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/components\";\nimport * as i2 from \"@acorex/platform/layout/widget-core\";\nfunction routesFactory() {\n const routes = [\n {\n path: ':app/notifications',\n canActivate: [AXPAuthGuard],\n loadComponent: () => {\n return AXPRootLayoutComponent;\n },\n title: 'Notifications',\n children: [\n {\n path: '',\n loadComponent: () => import('./features/components/notification-page/notification-page.component').then((c) => c.AXMNotificationPageComponent),\n data: { reuse: true },\n },\n ],\n },\n ];\n return routes;\n}\nexport class AXMNotificationManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, imports: [i1.AXPComponentSlotModule, i2.AXPWidgetCoreModule, \n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXMSettingProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMNotificationBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider();\n },\n multi: true,\n },\n ], imports: [AXPComponentSlotModule.forChild({\n 'root-header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n AXPWidgetCoreModule.forChild({\n widgets: [AXPMyNotificationDashboardWidget],\n }),\n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forChild({\n 'root-header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n AXPWidgetCoreModule.forChild({\n widgets: [AXPMyNotificationDashboardWidget],\n }),\n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule,\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXMSettingProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMNotificationBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider();\n },\n multi: true,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFVLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhFLGlCQUFpQjtBQUNqQixPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLG1DQUFtQyxFQUNuQyxrQ0FBa0MsR0FDbkMsTUFBTSxZQUFZLENBQUM7QUFFcEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGlGQUFpRixDQUFDO0FBQ3BJLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxlQUFlLEVBQUUs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RyxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7NEJBQ3hCLENBQUM7NEJBQ0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBBdXRoR3VhcmQsIEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQX01FTlVfUFJPVklERVIsIEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRDb3JlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgQVhQX1RBU0tfQkFER0VfUFJPVklERVJTLCBBWFBDb21wb25lbnRTbG90TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0b3IsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJPVVRFUyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25CYWRnZVByb3ZpZGVyIH0gZnJvbSAnLi9iYWRnZS5wcm92aWRlcic7XG5cbi8vIEVudGl0eSBNb2R1bGVzXG5pbXBvcnQge1xuICBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUsXG4gIEFYTU5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5TW9kdWxlLFxuICBBWE1Ob3RpZmljYXRpb25DaGFubmVsRW50aXR5TW9kdWxlLFxufSBmcm9tICcuL2VudGl0aWVzJztcblxuaW1wb3J0IHsgQVhNRW50aXR5TG9hZGVyIH0gZnJvbSAnLi9lbnRpdHkucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50IH0gZnJvbSAnLi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFBNeU5vdGlmaWNhdGlvbkRhc2hib2FyZFdpZGdldCB9IGZyb20gJy4vZmVhdHVyZXMvZGFzaGJvYXJkL3dpZGdldHMvbXktbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IEFYTU1lbnVQcm92aWRlciB9IGZyb20gJy4vbWVudS5wcm92aWRlcic7XG5cbmZ1bmN0aW9uIHJvdXRlc0ZhY3RvcnkoKTogUm91dGVzIHtcbiAgY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gICAge1xuICAgICAgcGF0aDogJzphcHAvbm90aWZpY2F0aW9ucycsXG4gICAgICBjYW5BY3RpdmF0ZTogW0FYUEF1dGhHdWFyZF0sXG4gICAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBBWFBSb290TGF5b3V0Q29tcG9uZW50O1xuICAgICAgfSxcbiAgICAgIHRpdGxlOiAnTm90aWZpY2F0aW9ucycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgbG9hZENvbXBvbmVudDogKCkgPT5cbiAgICAgICAgICAgIGltcG9ydCgnLi9mZWF0dXJlcy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1wYWdlL25vdGlmaWNhdGlvbi1wYWdlLmNvbXBvbmVudCcpLnRoZW4oXG4gICAgICAgICAgICAgIChjKSA9PiBjLkFYTU5vdGlmaWNhdGlvblBhZ2VDb21wb25lbnQsXG4gICAgICAgICAgICApLFxuICAgICAgICAgIGRhdGE6IHsgcmV1c2U6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXTtcbiAgcmV0dXJuIHJvdXRlcztcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEFYUENvbXBvbmVudFNsb3RNb2R1bGUuZm9yQ2hpbGQoe1xuICAgICAgJ3Jvb3QtaGVhZGVyLWVuZCc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdub3RpZmljYXRpb24nLFxuICAgICAgICAgIGNvbXBvbmVudDogQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KSxcbiAgICBBWFBXaWRnZXRDb3JlTW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHdpZGdldHM6IFtBWFBNeU5vdGlmaWNhdGlvbkRhc2hib2FyZFdpZGdldF0sXG4gICAgfSksXG4gICAgLy8gRW50aXR5IE1vZHVsZXNcbiAgICBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUsXG4gICAgQVhNTm90aWZpY2F0aW9uVGVtcGxhdGVFbnRpdHlNb2R1bGUsXG4gICAgQVhNTm90aWZpY2F0aW9uQ2hhbm5lbEVudGl0eU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW10sXG4gIGRlY2xhcmF0aW9uczogW10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJPVVRFUyxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgdXNlRmFjdG9yeTogcm91dGVzRmFjdG9yeSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9FTlRJVFlfREVGSU5JVElPTl9MT0FERVIsXG4gICAgICB1c2VDbGFzczogQVhNRW50aXR5TG9hZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfTUVOVV9QUk9WSURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1NZW51UHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICB1c2VGYWN0b3J5OiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICAgICAgY29uc3QgcHJvdmlkZXIgPSAoYXdhaXQgaW1wb3J0KCcuL3NldHRpbmdzLnByb3ZpZGVyJykpLkFYTVNldHRpbmdQcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIG5ldyBwcm92aWRlcihpbmplY3Rvcik7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfVEFTS19CQURHRV9QUk9WSURFUlMsXG4gICAgICB1c2VDbGFzczogQVhNTm90aWZpY2F0aW9uQmFkZ2VQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX1BFUk1JU1NJT05fREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJvdmlkZXIgPSAoYXdhaXQgaW1wb3J0KCcuL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlcicpKS5BWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyO1xuICAgICAgICByZXR1cm4gbmV3IHByb3ZpZGVyKCk7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE1vZHVsZSB7IH1cbiJdfQ==","export var AXPSettingKeys;\n(function (AXPSettingKeys) {\n // SMTP Settings\n AXPSettingKeys[\"Server\"] = \"notification:email:server\";\n AXPSettingKeys[\"Port\"] = \"notification:email:port\";\n AXPSettingKeys[\"Username\"] = \"notification:email:username\";\n AXPSettingKeys[\"Password\"] = \"notification:email:password\";\n AXPSettingKeys[\"FromAddress\"] = \"notification:email:fromAddress\";\n AXPSettingKeys[\"UseSSL\"] = \"notification:email:useSSL\";\n AXPSettingKeys[\"UseTLS\"] = \"notification:email:useTLS\";\n // Telegram Settings\n AXPSettingKeys[\"TelegramToken\"] = \"notification:telegram:token\";\n AXPSettingKeys[\"TelegramChatId\"] = \"notification:telegram:chatId\";\n // WhatsApp Settings\n AXPSettingKeys[\"WhatsAppApiUrl\"] = \"notification:whatsapp:apiUrl\";\n AXPSettingKeys[\"WhatsAppAuthToken\"] = \"notification:whatsapp:authToken\";\n // Firebase Settings\n AXPSettingKeys[\"FirebaseApiKey\"] = \"notification:firebase:apiKey\";\n AXPSettingKeys[\"FirebaseProjectId\"] = \"notification:firebase:projectId\";\n AXPSettingKeys[\"FirebaseSenderId\"] = \"notification:firebase:senderId\";\n AXPSettingKeys[\"FirebaseAppId\"] = \"notification:firebase:appId\";\n})(AXPSettingKeys || (AXPSettingKeys = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mua2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3NldHRpbmdzLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0F1Qlg7QUF2QkQsV0FBWSxjQUFjO0lBQ3RCLGdCQUFnQjtJQUNoQixzREFBb0MsQ0FBQTtJQUNwQyxrREFBZ0MsQ0FBQTtJQUNoQywwREFBd0MsQ0FBQTtJQUN4QywwREFBd0MsQ0FBQTtJQUN4QyxnRUFBOEMsQ0FBQTtJQUM5QyxzREFBb0MsQ0FBQTtJQUNwQyxzREFBb0MsQ0FBQTtJQUVwQyxvQkFBb0I7SUFDcEIsK0RBQTZDLENBQUE7SUFDN0MsaUVBQStDLENBQUE7SUFFL0Msb0JBQW9CO0lBQ3BCLGlFQUErQyxDQUFBO0lBQy9DLHVFQUFxRCxDQUFBO0lBRXJELG9CQUFvQjtJQUNwQixpRUFBK0MsQ0FBQTtJQUMvQyx1RUFBcUQsQ0FBQTtJQUNyRCxxRUFBbUQsQ0FBQTtJQUNuRCwrREFBNkMsQ0FBQTtBQUNqRCxDQUFDLEVBdkJXLGNBQWMsS0FBZCxjQUFjLFFBdUJ6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFYUFNldHRpbmdLZXlzIHtcbiAgICAvLyBTTVRQIFNldHRpbmdzXG4gICAgU2VydmVyID0gJ25vdGlmaWNhdGlvbjplbWFpbDpzZXJ2ZXInLFxuICAgIFBvcnQgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnBvcnQnLFxuICAgIFVzZXJuYW1lID0gJ25vdGlmaWNhdGlvbjplbWFpbDp1c2VybmFtZScsXG4gICAgUGFzc3dvcmQgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnBhc3N3b3JkJyxcbiAgICBGcm9tQWRkcmVzcyA9ICdub3RpZmljYXRpb246ZW1haWw6ZnJvbUFkZHJlc3MnLFxuICAgIFVzZVNTTCA9ICdub3RpZmljYXRpb246ZW1haWw6dXNlU1NMJyxcbiAgICBVc2VUTFMgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnVzZVRMUycsXG5cbiAgICAvLyBUZWxlZ3JhbSBTZXR0aW5nc1xuICAgIFRlbGVncmFtVG9rZW4gPSAnbm90aWZpY2F0aW9uOnRlbGVncmFtOnRva2VuJyxcbiAgICBUZWxlZ3JhbUNoYXRJZCA9ICdub3RpZmljYXRpb246dGVsZWdyYW06Y2hhdElkJyxcblxuICAgIC8vIFdoYXRzQXBwIFNldHRpbmdzXG4gICAgV2hhdHNBcHBBcGlVcmwgPSAnbm90aWZpY2F0aW9uOndoYXRzYXBwOmFwaVVybCcsXG4gICAgV2hhdHNBcHBBdXRoVG9rZW4gPSAnbm90aWZpY2F0aW9uOndoYXRzYXBwOmF1dGhUb2tlbicsXG5cbiAgICAvLyBGaXJlYmFzZSBTZXR0aW5nc1xuICAgIEZpcmViYXNlQXBpS2V5ID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTphcGlLZXknLFxuICAgIEZpcmViYXNlUHJvamVjdElkID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTpwcm9qZWN0SWQnLFxuICAgIEZpcmViYXNlU2VuZGVySWQgPSAnbm90aWZpY2F0aW9uOmZpcmViYXNlOnNlbmRlcklkJyxcbiAgICBGaXJlYmFzZUFwcElkID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTphcHBJZCcsXG59XG4iXX0=","import { RootConfig } from '@acorex/modules/form-template-management';\nimport { AXPSettingKeys } from './settings.keys';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nexport class AXMSettingProvider {\n constructor(injector) {\n this.injector = injector;\n this.translateService = this.injector.get(AXTranslationService);\n }\n async provide(context) {\n const trans = async (key) => await this.translateService.translateAsync(`settings.notification-settings.${key}`, { scope: 'notification-management' });\n context\n // Add Notification Settings Group\n .addGroup('notification-settings', await trans('title'), await trans('description'), RootConfig.module.icon)\n // SMTP Settings Section\n .addSection('smtp-settings', await trans('smtp.title'), await trans('smtp.description'))\n .addSetting({\n key: AXPSettingKeys.Server,\n title: await trans('smtp.server.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('smtp.server.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Port,\n title: await trans('smtp.port.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: 587,\n widget: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: {\n minValue: 1,\n maxValue: 65535,\n },\n },\n description: await trans('smtp.port.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Username,\n title: await trans('smtp.username.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('smtp.username.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Password,\n title: await trans('smtp.password.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.PasswordBox,\n },\n description: await trans('smtp.password.description'),\n })\n .addSetting({\n key: AXPSettingKeys.UseSSL,\n title: await trans('smtp.ssl.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n description: await trans('smtp.ssl.description'),\n })\n .addSetting({\n key: AXPSettingKeys.UseTLS,\n title: await trans('smtp.tls.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: true,\n widget: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n description: await trans('smtp.tls.description'),\n })\n .endSection()\n // Telegram Settings Section\n .addSection('telegram-settings', await trans('telegram.title'), await trans('telegram.description'))\n .addSetting({\n key: AXPSettingKeys.TelegramToken,\n title: await trans('telegram.token.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('telegram.token.description'),\n })\n .addSetting({\n key: AXPSettingKeys.TelegramChatId,\n title: await trans('telegram.chat-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('telegram.chat-id.description'),\n })\n .endSection()\n // WhatsApp Settings Section\n .addSection('whatsapp-settings', await trans('whatsapp.title'), await trans('whatsapp.description'))\n .addSetting({\n key: AXPSettingKeys.WhatsAppApiUrl,\n title: await trans('whatsapp.api-url.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('whatsapp.api-url.description'),\n })\n .addSetting({\n key: AXPSettingKeys.WhatsAppAuthToken,\n title: await trans('whatsapp.auth-token.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.PasswordBox,\n },\n description: await trans('whatsapp.auth-token.description'),\n })\n .endSection()\n // Firebase Settings Section\n .addSection('firebase-settings', await trans('firebase.title'), await trans('firebase.description'))\n .addSetting({\n key: AXPSettingKeys.FirebaseApiKey,\n title: await trans('firebase.api-key.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.api-key.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseProjectId,\n title: await trans('firebase.project-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.project-id.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseSenderId,\n title: await trans('firebase.sender-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.sender-id.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseAppId,\n title: await trans('firebase.app-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.app-id.description'),\n })\n .endSection()\n // End Notification Settings Group\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9zZXR0aW5ncy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV4RCxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGckIscUJBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUVsQyxDQUFDO0lBRTNDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBNEM7UUFDeEQsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLGtDQUFrQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7UUFFL0osT0FBTztZQUNMLGtDQUFrQzthQUNqQyxRQUFRLENBQ1AsdUJBQXVCLEVBQ3ZCLE1BQU0sS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUNwQixNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFDMUIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCO1lBRUQsd0JBQXdCO2FBQ3ZCLFVBQVUsQ0FBQyxlQUFlLEVBQUUsTUFBTSxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUUsTUFBTSxLQUFLLENB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QUFFLE1BQU0sS0FBSyxDQUFDLGlDQUFpQyxDQUFDO1NBQzVELENBQUM7YUFDRCxVQUFVLENBQUM7WUFDVixHQUFHLEVBQUUsY0FBYyxDQUFDLGdCQUFnQjtZQUNwQyxLQUFLLEVBQUUsTUFBTSxLQUFLLENBQUMsMEJBQTBCLENBQUM7WUFDOUMsS0FBSyxFQUFFLEdBQUc7WUFDVixXQUFXLEVBQUUsSUFBSTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLGNBQWMsQ0FBQyxPQUFPLENBQUMsT0FBTzthQUNyQztZQUNELFdBQVcsRUFBRSxNQUFNLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztTQUMzRCxDQUFDO2FBQ0QsVUFBVSxDQUFDO1lBQ1YsR0FBRyxFQUFFLGNBQWMsQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztZQUMzQyxLQUFLLEVBQUUsR0FBRztZQUNWLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPO2FBQ3JDO1lBQ0QsV0FBVyxFQUFFLE1BQU0sS0FBSyxDQUFDLDZCQUE2QixDQUFDO1NBQ3hELENBQUM7YUFDRCxVQUFVLEVBQUU7WUFFYixrQ0FBa0M7YUFDakMsUUFBUSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9mb3JtLXRlbXBsYXRlLW1hbmFnZW1lbnQnO1xuaW1wb3J0IHsgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlciwgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBTZXR0aW5nS2V5cyB9IGZyb20gJy4vc2V0dGluZ3Mua2V5cyc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNldHRpbmdQcm92aWRlciBpbXBsZW1lbnRzIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHsgfVxuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB0cmFucyA9IGFzeW5jIChrZXk6IHN0cmluZykgPT4gYXdhaXQgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKGBzZXR0aW5ncy5ub3RpZmljYXRpb24tc2V0dGluZ3MuJHtrZXl9YCwgeyBzY29wZTogJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50JyB9KTtcblxuICAgIGNvbnRleHRcbiAgICAgIC8vIEFkZCBOb3RpZmljYXRpb24gU2V0dGluZ3MgR3JvdXBcbiAgICAgIC5hZGRHcm91cChcbiAgICAgICAgJ25vdGlmaWNhdGlvbi1zZXR0aW5ncycsXG4gICAgICAgIGF3YWl0IHRyYW5zKCd0aXRsZScpLFxuICAgICAgICBhd2FpdCB0cmFucygnZGVzY3JpcHRpb24nKSxcbiAgICAgICAgUm9vdENvbmZpZy5tb2R1bGUuaWNvblxuICAgICAgKVxuXG4gICAgICAvLyBTTVRQIFNldHRpbmdzIFNlY3Rpb25cbiAgICAgIC5hZGRTZWN0aW9uKCdzbXRwLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3NtdHAudGl0bGUnKSwgYXdhaXQgdHJhbnMoJ3NtdHAuZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5TZXJ2ZXIsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnc210cC5zZXJ2ZXIudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnNlcnZlci5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5Qb3J0LFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAucG9ydC50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1QnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiA1ODcsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTnVtYmVyQm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDY1NTM1LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnc210cC5wb3J0LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlVzZXJuYW1lLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAudXNlcm5hbWUudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnVzZXJuYW1lLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlBhc3N3b3JkLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAucGFzc3dvcmQudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuUGFzc3dvcmRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnc210cC5wYXNzd29yZC5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5Vc2VTU0wsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnc210cC5zc2wudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVG9nZ2xlU3dpdGNoLFxuICAgICAgICB9LFxuICAgICAgICBkZXNjcmlwdGlvbjogYXdhaXQgdHJhbnMoJ3NtdHAuc3NsLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlVzZVRMUyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdzbXRwLnRscy50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1QnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRvZ2dsZVN3aXRjaCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnRscy5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gVGVsZWdyYW0gU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ3RlbGVncmFtLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3RlbGVncmFtLnRpdGxlJyksIGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlRlbGVncmFtVG9rZW4sXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygndGVsZWdyYW0udG9rZW4udGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS50b2tlbi5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5UZWxlZ3JhbUNoYXRJZCxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS5jaGF0LWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygndGVsZWdyYW0uY2hhdC1pZC5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gV2hhdHNBcHAgU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ3doYXRzYXBwLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3doYXRzYXBwLnRpdGxlJyksIGF3YWl0IHRyYW5zKCd3aGF0c2FwcC5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLldoYXRzQXBwQXBpVXJsLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3doYXRzYXBwLmFwaS11cmwudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd3aGF0c2FwcC5hcGktdXJsLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLldoYXRzQXBwQXV0aFRva2VuLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3doYXRzYXBwLmF1dGgtdG9rZW4udGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuUGFzc3dvcmRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnd2hhdHNhcHAuYXV0aC10b2tlbi5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gRmlyZWJhc2UgU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ2ZpcmViYXNlLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLnRpdGxlJyksIGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlQXBpS2V5LFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLmFwaS1rZXkudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5hcGkta2V5LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlUHJvamVjdElkLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLnByb2plY3QtaWQudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5wcm9qZWN0LWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlU2VuZGVySWQsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnZmlyZWJhc2Uuc2VuZGVyLWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnZmlyZWJhc2Uuc2VuZGVyLWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlQXBwSWQsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnZmlyZWJhc2UuYXBwLWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnZmlyZWJhc2UuYXBwLWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmVuZFNlY3Rpb24oKVxuXG4gICAgICAvLyBFbmQgTm90aWZpY2F0aW9uIFNldHRpbmdzIEdyb3VwXG4gICAgICAuZW5kR3JvdXAoKTtcbiAgfVxufVxuIl19","import { AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPDataGenerator } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { AXPEntityDataProviderImpl, AXPEntityStorageService } from '@acorex/platform/layout/entity';\nexport async function myNotificationEntityFactory(injector) {\n const storageService = injector.get(AXPEntityStorageService);\n const dataProvider = new AXPEntityDataProviderImpl(storageService, 'notifications');\n const moduleName = 'notification-management';\n const scope = `#${moduleName}`;\n const entityDef = {\n module: moduleName,\n name: 'notification',\n title: '@notification-management:my',\n formats: {\n individual: '@notification-management:my',\n plural: '@notification-management:my',\n },\n groups: [\n { id: 'data', title: 'Data' },\n { id: 'content', title: 'Content' },\n { id: 'action', title: 'Action' },\n { id: 'user', title: 'User' },\n { id: 'template', title: 'Template' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'data',\n schema: {\n dataType: 'string',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: '@general:terms.body',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n },\n },\n },\n {\n name: 'channel',\n title: '@notification-management:channel',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['InApp', 'Email', 'SMS'], multiple: false },\n },\n },\n },\n {\n name: 'content.type',\n title: '@notification-management:content.type',\n groupId: 'content',\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'action.type',\n title: '@general:terms.workflow.action.type',\n groupId: 'action',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Link', 'Entity', 'Popup'], multiple: false },\n },\n },\n },\n {\n name: 'User.name',\n title: '@general:terms.people.user',\n groupId: 'user',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'template.category',\n title: '@notification-management:template.category',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Inbox', 'Archive'], multiple: false },\n },\n },\n },\n {\n name: 'template.prority',\n title: '@notification-management:template.priority',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Warning', 'Danger', 'Notice'], multiple: false },\n },\n },\n },\n {\n name: 'template.isPinned',\n title: '@notification-management:template.isPinned',\n groupId: 'template',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n options: {\n label: 'Is Pinned',\n },\n },\n },\n },\n {\n name: 'readAt',\n title: '@notification-management:readAt',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n {\n name: 'createAt',\n title: '@notification-management:createAt',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'body' },\n { name: 'channel' },\n { name: 'user.name' },\n { name: 'template.category' },\n { name: 'template.prority' },\n { name: 'createAt' },\n { name: 'readAt' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n await dataProvider.insertOne(entity);\n return entity;\n },\n },\n delete: {\n execute: async (id) => {\n await dataProvider.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n await dataProvider.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataProvider.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const list = await dataProvider.getAll();\n return {\n total: list.length,\n items: list.slice(e.skip, e.skip + e.take),\n };\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n list: {\n actions: [\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n ],\n views: [{ name: 'all', title: 'All Notifications', fixed: true, columns: [], conditions: [], sorts: [] }],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktbm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvbXktbm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BHLE1BQU0sQ0FBQyxLQUFLLFVBQVUsMkJBQTJCLENBQUMsUUFBa0I7SUFDbEUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzdELE1BQU0sWUFBWSxHQUFHLElBQUkseUJBQXlCLENBQU0sY0FBYyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3pGLE1BQU0sVUFBVSxHQUFHLHlCQUF5QixDQUFDO0lBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7SUFFL0IsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVU7UUFDbEIsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLDZCQUE2QjtRQUNwQyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsNkJBQTZCO1lBQ3pDLE1BQU0sRUFBRSw2QkFBNkI7U0FDdEM7UUFDRCxNQUFNLEVBQUU7WUFDTixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUM3QixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNuQyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNqQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUM3QixFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtTQUN0QztRQUNELFVBQVUsRUFBRTtZQUNWO2dCQUNFLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxJQUFJO2dCQUNYLE9BQU8sRUFBRSxNQUFNO2dCQUNmLE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsTUFBTSxFQUFFLElBQUk7b0JBQ1osUUFBUSxFQUFFLEtBQUs7b0JBQ2YsUUFBUSxFQUFFLElBQUk7b0JBQ2QsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtpQkFDMUI7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxPQUFPO2dCQUNiLEtBQUssRUFBRSw2QkFBNkI7Z0JBQ3BDLE9BQU8sRUFBRSxNQUFNO2dCQUNmLE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFO3dCQUNULElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3FCQUM3QjtpQkFDRjthQUNGO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osS0FBSyxFQUFFLHFCQUFxQjtnQkFDNUIsT0FBTyxFQUFFLE1BQU07Z0JBQ2YsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFNBQVM7cUJBQ2xDO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxJQUFJLEVBQUUsU0FBUztnQkFDZixLQUFLLEVBQUUsa0NBQWtDO2dCQUN6QyxPQUFPLEVBQUUsTUFBTTtnQkFDZixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsTUFBTTt3QkFDOUIsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO3FCQUNwRTtpQkFDRjthQUNGO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLEtBQUssRUFBRSx1Q0FBdUM7Z0JBQzlDLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsUUFBUTtxQkFDakM7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxhQUFhO2dCQUNuQixLQUFLLEVBQUUscUNBQXFDO2dCQUM1QyxPQUFPLEVBQUUsUUFBUTtnQkFDakIsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLE1BQU07d0JBQzlCLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtxQkFDdEU7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxXQUFXO2dCQUNqQixLQUFLLEVBQUUsNEJBQTRCO2dCQUNuQyxPQUFPLEVBQUUsTUFBTTtnQkFDZixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtxQkFDN0I7aUJBQ0Y7YUFDRjtZQUVEO2dCQUNFLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLEtBQUssRUFBRSw0Q0FBNEM7Z0JBQ25ELE9BQU8sRUFBRSxVQUFVO2dCQUNuQixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsTUFBTTt3QkFDOUIsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7cUJBQy9EO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxJQUFJLEVBQUUsa0JBQWtCO2dCQUN4QixLQUFLLEVBQUUsNENBQTRDO2dCQUNuRCxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLE1BQU07d0JBQzlCLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtxQkFDMUU7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLEtBQUssRUFBRSw0Q0FBNEM7Z0JBQ25ELE9BQU8sRUFBRSxVQUFVO2dCQUNuQixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsUUFBUTt3QkFDaEMsT0FBTyxFQUFFOzRCQUNQLEtBQUssRUFBRSxXQUFXO3lCQUNuQjtxQkFDRjtpQkFDRjthQUNGO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsS0FBSyxFQUFFLGlDQUFpQztnQkFDeEMsT0FBTyxFQUFFLE1BQU07Z0JBQ2YsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxVQUFVO29CQUNwQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFFBQVE7d0JBQ2hDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUU7cUJBQzVCO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLG1DQUFtQztnQkFDMUMsT0FBTyxFQUFFLE1BQU07Z0JBQ2YsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxVQUFVO29CQUNwQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFFBQVE7d0JBQ2hDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUU7cUJBQzVCO2lCQUNGO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRTtZQUNqQixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDaEIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ25CLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUNyQixFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRTtZQUM3QixFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRTtZQUM1QixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDcEIsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO1NBQ25CO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLEVBQUU7b0JBQzNCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLGdCQUFnQixDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDcEUsTUFBTSxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUNyQyxPQUFPLE1BQU0sQ0FBQztnQkFDaEIsQ0FBQzthQUNGO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBTyxFQUFFLEVBQUU7b0JBQ3pCLE1BQU0sWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbkMsQ0FBQzthQUNGO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLEVBQUU7b0JBQzNCLE1BQU0sWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QyxDQUFDO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLEtBQUssRUFBRTtnQkFDTCxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQVUsRUFBRSxFQUFFO29CQUM1QixPQUFPLE1BQU0sWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkMsQ0FBQztnQkFDRCxJQUFJLEVBQUUsa0JBQWtCLENBQUMsTUFBTTthQUNoQztZQUNELElBQUksRUFBRTtnQkFDSixPQUFPLEVBQUUsS0FBSyxFQUFFLENBQU0sRUFBRSxFQUFFO29CQUN4QixNQUFNLElBQUksR0FBRyxNQUFNLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDekMsT0FBTzt3QkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU07d0JBQ2xCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO3FCQUMzQyxDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQixDQUFDLElBQUk7YUFDOUI7U0FDRjtRQUNELFVBQVUsRUFBRTtZQUNWLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUU7b0JBQ0osT0FBTyxFQUFFO3dCQUNQOzRCQUNFLEtBQUssRUFBRSxRQUFROzRCQUNmLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsU0FBUzs0QkFDbkIsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsS0FBSyxFQUFFLHFCQUFxQixDQUFDLFFBQVE7eUJBQ3RDO3FCQUNGO29CQUNELEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDO2lCQUMxRzthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBEYXRhR2VuZXJhdG9yIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbCwgQVhQRW50aXR5U3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG15Tm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3Qgc3RvcmFnZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQRW50aXR5U3RvcmFnZVNlcnZpY2UpO1xuICBjb25zdCBkYXRhUHJvdmlkZXIgPSBuZXcgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbDxhbnk+KHN0b3JhZ2VTZXJ2aWNlLCAnbm90aWZpY2F0aW9ucycpO1xuICBjb25zdCBtb2R1bGVOYW1lID0gJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50JztcbiAgY29uc3Qgc2NvcGUgPSBgIyR7bW9kdWxlTmFtZX1gO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogbW9kdWxlTmFtZSxcbiAgICBuYW1lOiAnbm90aWZpY2F0aW9uJyxcbiAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpteScsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpteScsXG4gICAgICBwbHVyYWw6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6bXknLFxuICAgIH0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7IGlkOiAnZGF0YScsIHRpdGxlOiAnRGF0YScgfSxcbiAgICAgIHsgaWQ6ICdjb250ZW50JywgdGl0bGU6ICdDb250ZW50JyB9LFxuICAgICAgeyBpZDogJ2FjdGlvbicsIHRpdGxlOiAnQWN0aW9uJyB9LFxuICAgICAgeyBpZDogJ3VzZXInLCB0aXRsZTogJ1VzZXInIH0sXG4gICAgICB7IGlkOiAndGVtcGxhdGUnLCB0aXRsZTogJ1RlbXBsYXRlJyB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICB0aXRsZTogJ0lEJyxcbiAgICAgICAgZ3JvdXBJZDogJ2RhdGEnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaGlkZGVuOiB0cnVlLFxuICAgICAgICAgIG51bGxhYmxlOiBmYWxzZSxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICB1bmlxdWU6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5jb21tb24udGl0bGUnLFxuICAgICAgICBncm91cElkOiAnZGF0YScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdib2R5JyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5ib2R5JyxcbiAgICAgICAgZ3JvdXBJZDogJ2RhdGEnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sYXJnZVRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjaGFubmVsJyxcbiAgICAgICAgdGl0bGU6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6Y2hhbm5lbCcsXG4gICAgICAgIGdyb3VwSWQ6ICdkYXRhJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczogeyBkYXRhU291cmNlOiBbJ0luQXBwJywgJ0VtYWlsJywgJ1NNUyddLCBtdWx0aXBsZTogZmFsc2UgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnQudHlwZScsXG4gICAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OmNvbnRlbnQudHlwZScsXG4gICAgICAgIGdyb3VwSWQ6ICdjb250ZW50JyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cucmljaFRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhY3Rpb24udHlwZScsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMud29ya2Zsb3cuYWN0aW9uLnR5cGUnLFxuICAgICAgICBncm91cElkOiAnYWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczogeyBkYXRhU291cmNlOiBbJ0xpbmsnLCAnRW50aXR5JywgJ1BvcHVwJ10sIG11bHRpcGxlOiBmYWxzZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnVXNlci5uYW1lJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5wZW9wbGUudXNlcicsXG4gICAgICAgIGdyb3VwSWQ6ICd1c2VyJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcblxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUuY2F0ZWdvcnknLFxuICAgICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp0ZW1wbGF0ZS5jYXRlZ29yeScsXG4gICAgICAgIGdyb3VwSWQ6ICd0ZW1wbGF0ZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHsgZGF0YVNvdXJjZTogWydJbmJveCcsICdBcmNoaXZlJ10sIG11bHRpcGxlOiBmYWxzZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUucHJvcml0eScsXG4gICAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OnRlbXBsYXRlLnByaW9yaXR5JyxcbiAgICAgICAgZ3JvdXBJZDogJ3RlbXBsYXRlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczogeyBkYXRhU291cmNlOiBbJ1dhcm5pbmcnLCAnRGFuZ2VyJywgJ05vdGljZSddLCBtdWx0aXBsZTogZmFsc2UgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RlbXBsYXRlLmlzUGlubmVkJyxcbiAgICAgICAgdGl0bGU6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6dGVtcGxhdGUuaXNQaW5uZWQnLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGUnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuY2hlY2tib3gsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiAnSXMgUGlubmVkJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZWFkQXQnLFxuICAgICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpyZWFkQXQnLFxuICAgICAgICBncm91cElkOiAnZGF0YScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuZGF0ZVRpbWUsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGZvcm1hdDogJ2RhdGUnIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjcmVhdGVBdCcsXG4gICAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OmNyZWF0ZUF0JyxcbiAgICAgICAgZ3JvdXBJZDogJ2RhdGEnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2RhdGV0aW1lJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmRhdGVUaW1lLFxuICAgICAgICAgICAgb3B0aW9uczogeyBmb3JtYXQ6ICdkYXRlJyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW1xuICAgICAgeyBuYW1lOiAndGl0bGUnIH0sXG4gICAgICB7IG5hbWU6ICdib2R5JyB9LFxuICAgICAgeyBuYW1lOiAnY2hhbm5lbCcgfSxcbiAgICAgIHsgbmFtZTogJ3VzZXIubmFtZScgfSxcbiAgICAgIHsgbmFtZTogJ3RlbXBsYXRlLmNhdGVnb3J5JyB9LFxuICAgICAgeyBuYW1lOiAndGVtcGxhdGUucHJvcml0eScgfSxcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZUF0JyB9LFxuICAgICAgeyBuYW1lOiAncmVhZEF0JyB9LFxuICAgIF0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgZW50aXR5ID0gT2JqZWN0LmFzc2lnbihkYXRhLCB7IGlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSB9KTtcbiAgICAgICAgICBhd2FpdCBkYXRhUHJvdmlkZXIuaW5zZXJ0T25lKGVudGl0eSk7XG4gICAgICAgICAgcmV0dXJuIGVudGl0eTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICBhd2FpdCBkYXRhUHJvdmlkZXIuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGF3YWl0IGRhdGFQcm92aWRlci51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVByb3ZpZGVyLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgbGlzdCA9IGF3YWl0IGRhdGFQcm92aWRlci5nZXRBbGwoKTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG90YWw6IGxpc3QubGVuZ3RoLFxuICAgICAgICAgICAgaXRlbXM6IGxpc3Quc2xpY2UoZS5za2lwLCBlLnNraXAgKyBlLnRha2UpLFxuICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFt7IG5hbWU6ICdhbGwnLCB0aXRsZTogJ0FsbCBOb3RpZmljYXRpb25zJywgZml4ZWQ6IHRydWUsIGNvbHVtbnM6IFtdLCBjb25kaXRpb25zOiBbXSwgc29ydHM6IFtdIH1dLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel/channel.service';\nexport async function notificationLogEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: 'notification-management',\n name: 'notification',\n title: 'Notification',\n formats: {\n individual: 'NotificationLog',\n plural: 'NotificationLogs',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: `t(\"name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'status',\n title: `t(\"status\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.getOne(id);\n resolve(entity);\n }, 500);\n });\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 single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: '@general:actions.detail.title',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: '@general:terms.interface.selection.all-items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWxvZy5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9ub3RpZmljYXRpb24tbG9nLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFGLE1BQU0sQ0FBQyxLQUFLLFVBQVUsNEJBQTRCLENBQUMsUUFBa0I7SUFDbkUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ2hGLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSx5QkFBeUI7UUFDakMsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLGNBQWM7UUFDckIsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLGlCQUFpQjtZQUM3QixNQUFNLEVBQUUsa0JBQWtCO1NBQzNCO1FBQ0QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsTUFBTSxFQUFFO1lBQ047Z0JBQ0UsRUFBRSxFQUFFLGNBQWM7Z0JBQ2xCLEtBQUssRUFBRSxjQUFjO2FBQ3RCO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsdUJBQXVCLElBQUksTUFBTTtnQkFDeEMsT0FBTyxFQUFFLGNBQWM7Z0JBQ3ZCLE1BQU0s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RTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLEVBQUU7cUNBQ1o7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFNBQVM7NEJBQ2YsTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLENBQUM7cUNBQ1g7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7aUJBQ1o7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxLQUFLLEVBQUUsK0JBQStCOzRCQUN0QyxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxNQUFNOzRCQUNaLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0w7NEJBQ0UsSUFBSSxFQUFFLEtBQUs7NEJBQ1gsS0FBSyxFQUFFLDhDQUE4Qzs0QkFDckQsS0FBSyxFQUFFLElBQUk7NEJBQ1gsT0FBTyxFQUFFLEVBQUU7NEJBQ1gsVUFBVSxFQUFFLEVBQUU7NEJBQ2QsS0FBSyxFQUFFLEVBQUU7eUJBQ1Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eUNvbW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB9IGZyb20gJy4vY2hhbm5lbC9jaGFubmVsLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm90aWZpY2F0aW9uTG9nRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdub3RpZmljYXRpb24nLFxuICAgIHRpdGxlOiAnTm90aWZpY2F0aW9uJyxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiAnTm90aWZpY2F0aW9uTG9nJyxcbiAgICAgIHBsdXJhbDogJ05vdGlmaWNhdGlvbkxvZ3MnLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICB0aXRsZTogJ05vdGlmaWNhdGlvbicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiBgdChcIm5hbWVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3N0YXR1cycsXG4gICAgICAgIHRpdGxlOiBgdChcInN0YXR1c1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAnYm9keScgfSwgeyBuYW1lOiAndXNlci5uYW1lJyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3VzZXIubmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDphY3Rpb25zLmRldGFpbC50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdvcGVuLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdhbGwnLFxuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmludGVyZmFjZS5zZWxlY3Rpb24uYWxsLWl0ZW1zJyxcbiAgICAgICAgICAgICAgZml4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFtdLFxuICAgICAgICAgICAgICBjb25kaXRpb25zOiBbXSxcbiAgICAgICAgICAgICAgc29ydHM6IFtdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2Fjb3JleC1tb2R1bGVzLW5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1","i2","i3","i4","RootConfig"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-modules-notification-management.mjs","sources":["../tmp-esm2022/notification-management/lib/const.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.service.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.entity.js","../tmp-esm2022/notification-management/lib/entities/template/template.service.js","../tmp-esm2022/notification-management/lib/entities/template/template.entity.js","../tmp-esm2022/notification-management/lib/entities/template/template.module.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.service.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.entity.js","../tmp-esm2022/notification-management/lib/entities/notification/notification.module.js","../tmp-esm2022/notification-management/lib/entities/channel/channel.module.js","../tmp-esm2022/notification-management/lib/entities/index.js","../tmp-esm2022/notification-management/lib/menu.keys.js","../tmp-esm2022/notification-management/lib/menu.provider.js","../tmp-esm2022/notification-management/lib/features/shared/os-notification.service.js","../tmp-esm2022/notification-management/lib/features/shared/notification-management.service.js","../tmp-esm2022/notification-management/lib/badge.provider.js","../tmp-esm2022/notification-management/lib/entity.provider.js","../tmp-esm2022/notification-management/lib/features/shared/notification-definition.service.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-item/admin-notification-item.component.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-panel/admin-notification-panel.component.js","../tmp-esm2022/notification-management/lib/features/components/admin-notification-slot/admin-notification-slot.component.js","../tmp-esm2022/notification-management/lib/features/dashboard/widgets/my-notification/notification-widget.component.js","../tmp-esm2022/notification-management/lib/features/dashboard/widgets/my-notification/notification-widget.config.js","../tmp-esm2022/notification-management/lib/notification-management.module.js","../tmp-esm2022/notification-management/lib/settings.keys.js","../tmp-esm2022/notification-management/lib/settings.provider.js","../tmp-esm2022/notification-management/lib/entities/my-notification.js","../tmp-esm2022/notification-management/lib/entities/notification-log.entity.js","../tmp-esm2022/notification-management/acorex-modules-notification-management.js"],"sourcesContent":["const config = {\n i18n: 'notification-management',\n route: 'notifications',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'notification-management',\n name: 'NotificationManagement',\n title: `t('module-name', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-bell',\n },\n entities: {\n channel: {\n name: 'Channels',\n title: `t(\"channel\", {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-list',\n },\n template: {\n name: 'Templates',\n title: `t(\"template\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-code',\n },\n notification: {\n name: 'Notifications',\n title: `t(\"notification\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-code',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE1BQU0sR0FBRztJQUNiLElBQUksRUFBRSx5QkFBeUI7SUFDL0IsS0FBSyxFQUFFLGVBQWU7Q0FDdkIsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixNQUFNO0lBQ04sTUFBTSxFQUFFO1FBQ04sS0FBSyxFQUFFLHlCQUF5QjtRQUNoQyxJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksS0FBSztRQUNuRCxJQUFJLEVBQUUsa0JBQWtCO0tBQ3pCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsT0FBTyxFQUFFO1lBQ1AsSUFBSSxFQUFFLFVBQVU7WUFDaEIsS0FBSyxFQUFFLHdCQUF3QixNQUFNLENBQUMsSUFBSSxLQUFLO1lBQy9DLElBQUksRUFBRSxrQkFBa0I7U0FDekI7UUFDRCxRQUFRLEVBQUU7WUFDUixJQUFJLEVBQUUsV0FBVztZQUNqQixLQUFLLEVBQUUsd0JBQXdCLE1BQU0sQ0FBQyxJQUFJLEtBQUs7WUFDL0MsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QjtRQUNELFlBQVksRUFBRTtZQUNaLElBQUksRUFBRSxlQUFlO1lBQ3JCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksS0FBSztZQUNuRCxJQUFJLEVBQUUsdUJBQXVCO1NBQzlCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY29uZmlnID0ge1xuICBpMThuOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICByb3V0ZTogJ25vdGlmaWNhdGlvbnMnLFxufTtcbmV4cG9ydCBjb25zdCBSb290Q29uZmlnID0ge1xuICBjb25maWcsXG4gIG1vZHVsZToge1xuICAgIHJvdXRlOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdOb3RpZmljYXRpb25NYW5hZ2VtZW50JyxcbiAgICB0aXRsZTogYHQoJ21vZHVsZS1uYW1lJywge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICBpY29uOiAnZmEtbGlnaHQgZmEtYmVsbCcsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgY2hhbm5lbDoge1xuICAgICAgbmFtZTogJ0NoYW5uZWxzJyxcbiAgICAgIHRpdGxlOiBgdChcImNoYW5uZWxcIiwge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1saXN0JyxcbiAgICB9LFxuICAgIHRlbXBsYXRlOiB7XG4gICAgICBuYW1lOiAnVGVtcGxhdGVzJyxcbiAgICAgIHRpdGxlOiBgdChcInRlbXBsYXRlXCIse3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWNvZGUnLFxuICAgIH0sXG4gICAgbm90aWZpY2F0aW9uOiB7XG4gICAgICBuYW1lOiAnTm90aWZpY2F0aW9ucycsXG4gICAgICB0aXRsZTogYHQoXCJub3RpZmljYXRpb25cIix7c2NvcGU6XCIke2NvbmZpZy5pMThufVwifSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZScsXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationEntityServiceImpl extends AXMNotificationEntityService {\n getList() {\n throw new Error('Method not implemented.');\n }\n markAsRead(payload) {\n throw new Error('Method not implemented.');\n }\n markAllAsRead() {\n throw new Error('Method not implemented.');\n }\n create(payload) {\n throw new Error('Method not implemented.');\n }\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.notification.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQVF6QyxNQUFNLE9BQWdCLDRCQUE2QixTQUFRLHdCQUkxRDtDQUtBO0FBR0QsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLDRCQUE0QjtJQUN2RSxPQUFPO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDUSxVQUFVLENBQUMsT0FBMEM7UUFDNUQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDUSxhQUFhO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ1EsTUFBTSxDQUFDLE9BQTZCO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0Q7UUFDRSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7K0dBZlUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0M7OzRGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7XG4gIEFYTU5vdGlmaWNhdGlvbkl0ZW0sXG4gIEFYTU5vdGlmaWNhdGlvbk1hcmtBc1JlYWRSZXF1ZXN0LFxuICBBWE1Ob3RpZmljYXRpb25SZXNwb25zZSxcbn0gZnJvbSAnLi4vLi4vZmVhdHVyZXMvc2hhcmVkL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE5vdGlmaWNhdGlvbkVudGl0eU1vZGVsIH0gZnJvbSAnLi9ub3RpZmljYXRpb24udHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Tm90aWZpY2F0aW9uRW50aXR5TW9kZWwsXG4gIEFYTU5vdGlmaWNhdGlvbkl0ZW1cbj4ge1xuICBhYnN0cmFjdCBnZXRMaXN0KCk6IFByb21pc2U8QVhNTm90aWZpY2F0aW9uUmVzcG9uc2U+O1xuICBhYnN0cmFjdCBtYXJrQXNSZWFkKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25NYXJrQXNSZWFkUmVxdWVzdCk6IFByb21pc2U8dm9pZD47XG4gIGFic3RyYWN0IG1hcmtBbGxBc1JlYWQoKTogUHJvbWlzZTx2b2lkPjtcbiAgYWJzdHJhY3QgY3JlYXRlKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25JdGVtPjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSB7XG4gIG92ZXJyaWRlIGdldExpc3QoKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25SZXNwb25zZT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBtYXJrQXNSZWFkKHBheWxvYWQ/OiBBWE1Ob3RpZmljYXRpb25NYXJrQXNSZWFkUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBtYXJrQWxsQXNSZWFkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBvdmVycmlkZSBjcmVhdGUocGF5bG9hZD86IEFYTU5vdGlmaWNhdGlvbkl0ZW0pOiBQcm9taXNlPEFYTU5vdGlmaWNhdGlvbkl0ZW0+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationEntityService } from './notification.service';\nexport async function notificationEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.notification.name,\n title: RootConfig.entities.notification.title,\n icon: RootConfig.entities.notification.icon,\n formats: {\n individual: `t(\"notifications\",{scope: \"${i18n}\"})`,\n plural: `t(\"notifications\",{scope: \"notification-management\"})`,\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationLog',\n columns: ['title', 'status'],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: `t(\"name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'body',\n title: `t(\"body\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'channel',\n title: `t(\"channel\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'user.name',\n title: `t(\"user.name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.getOne(id);\n resolve(entity);\n }, 500);\n });\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 single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView()],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0Msa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE1BQU0sQ0FBQyxLQUFLLFVBQVUseUJBQXlCLENBQUMsUUFBa0I7SUFDaEUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUk7UUFDM0MsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7UUFDN0MsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUk7UUFDM0MsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLDhCQUE4QixJQUFJLEtBQUs7WUFDbkQsTUFBTSxFQUFFLHVEQUF1RDtTQUNo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Q0FDTixTQUFTLEVBQUU7b0NBQ1QsRUFBRSxFQUFFO3dDQUNGLE9BQU8sRUFBRSxDQUFDO3FDQUNYO2lDQUNGOzZCQUNGO3lCQUNGO3FCQUNGO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDdkMsS0FBSyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztpQkFDOUI7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eUNvbW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IGVudGl0eU1hc3RlckNydWRBY3Rpb25zLCBlbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSB9IGZyb20gJy4vbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLm5vdGlmaWNhdGlvbi5pY29uLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IGB0KFwibm90aWZpY2F0aW9uc1wiLHtzY29wZTogXCIke2kxOG59XCJ9KWAsXG4gICAgICBwbHVyYWw6IGB0KFwibm90aWZpY2F0aW9uc1wiLHtzY29wZTogXCJub3RpZmljYXRpb24tbWFuYWdlbWVudFwifSlgLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGVudGl0eTogJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50Lm5vdGlmaWNhdGlvbkxvZycsXG4gICAgICAgIGNvbHVtbnM6IFsndGl0bGUnLCAnc3RhdHVzJ10sXG4gICAgICB9LFxuICAgIF0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgdGl0bGU6ICdOb3RpZmljYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0aXRsZTogYHQoXCJuYW1lXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ0aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICB0aXRsZTogYHQoXCJib2R5XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnJpY2hUZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogYHQoXCJjaGFubmVsXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd1c2VyLm5hbWUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ1c2VyLm5hbWVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAnYm9keScgfSwgeyBuYW1lOiAndXNlci5uYW1lJyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3VzZXIubmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5VmlldygpXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationManagementTemplateEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationManagementTemplateEntityServiceImpl extends AXMNotificationManagementTemplateEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.template.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3RlbXBsYXRlL3RlbXBsYXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxNQUFNLE9BQWdCLDhDQUErQyxTQUFRLHdCQUc1RTtDQUFHO0FBR0osTUFBTSxPQUFPLGtEQUFtRCxTQUFRLDhDQUE4QztJQUNwSDtRQUNFLEtBQUssQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQzsrR0FIVSxrREFBa0Q7bUhBQWxELGtEQUFrRDs7NEZBQWxELGtEQUFrRDtrQkFEOUQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5TW9kZWwgfSBmcm9tICcuL3RlbXBsYXRlLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationManagementTemplateEntityService } from './template.service';\nexport async function notificationTemplateEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementTemplateEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.template.name,\n title: RootConfig.entities.template.title,\n icon: RootConfig.entities.template.icon,\n formats: {\n individual: 't(\"template\",{scope: \"notification-management\"})',\n plural: 't(\"template\",{scope: \"notification-management\"})',\n },\n relatedEntities: [\n {\n entity: `${RootConfig.module.name}.${RootConfig.entities.channel.name}`,\n columns: ['title', 'body', 'channel'],\n conditions: [\n {\n name: 'notificationId',\n operator: {\n type: 'equal',\n },\n value: 'id',\n },\n ],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: '@general:terms.common.title',\n },\n ],\n properties: [\n {\n name: 'name',\n title: '@general:terms.common.name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\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 {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView()],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvdGVtcGxhdGUvdGVtcGxhdGUuZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0Msa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBGLE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUNBQWlDLENBQUMsUUFBa0I7SUFDeEUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO0lBQ2pGLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDdkMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDekMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDdkMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLGtEQUFrRDtZQUM5RCxNQUFNLEVBQUUsa0RBQWtEO1NBQzNEO1FBQ0QsZUFBZSxFQUFFO1lBQ2Y7Z0JBQ0UsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFO2dCQUN2RSxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztnQkFDckMsVUFBVSxFQUFFO29CQUNWO3dCQUNFLElBQUksRUFBRSxnQkFBZ0I7d0JBQ3RCLFFBQVEsRUFBRTs0QkFDUixJQUFJLEVBQUUsT0FBTzt5QkFDZDt3QkFDRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjthQUNGO1NBQ0Y7UUFDRCxNQUFNLEVBQUU7WUFDTjtnQkFDRSxFQUFFLEVBQUUsY0FBYztnQkFDbEIsS0FBSyxFQUFFLDZCQUE2QjthQUNyQztTQUNGO1FBQ0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osS0FBSyxFQUFFLDRCQUE0QjtnQkFDbkMsT0FBTyxFQUFFLGNBQWM7Z0JBQ3ZCLE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFO3dCQUNULElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3FCQUM3QjtpQkFDRjtnQkFDRCxXQUFXLEVBQUU7b0JBQ1g7d0JBQ0UsSUFBSSxFQUFFLFVBQVU7cUJBQ2pCO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxJQUFJLEVBQUUsT0FBTztnQkFDYixLQUFLLEVBQUUsNkJBQTZCO2dCQUNwQyxPQUFPLEVBQUUsY0FBYztnQkFDdkIsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLElBQUk7cUJBQzdCO2lCQUNGO2dCQUNELFdBQVcsRUFBRTtvQkFDWDt3QkFDRSxJQUFJLEVBQUUsVUFBVTtxQkFDakI7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxhQUFhO2dCQUNuQixLQUFLLEVBQUUsbUNBQW1DO2dCQUMxQyxPQUFPLEVBQUUsY0FBYztnQkFDdkIsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFLGlCQUFpQixDQUFDLElBQUk7cUJBQzdCO2lCQUNGO2dCQUNELFdBQVcsRUFBRTtvQkFDWDt3QkFDRSxJQUFJLEVBQUUsVUFBVTtxQkFDakI7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDOUMsUUFBUSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLEVBQUU7b0JBQzNCLE1BQU0sR0FBRyxHQUFHLE1BQU0sV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDOUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQztnQkFDckIsQ0FBQzthQUNGO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBTyxFQUFFLEVBQUU7b0JBQ3pCLE9BQU8sTUFBTSxXQUFXLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN6QyxDQUFDO2FBQ0Y7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFTLEVBQUUsRUFBRTtvQkFDM0IsT0FBTyxNQUFNLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDcEQsQ0FBQzthQUNGO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxLQUFLLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFVLEVBQUUsRUFBRTtvQkFDNUIsT0FBTyxNQUFNLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQixDQUFDLE1BQU07YUFDaEM7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFNLEVBQUUsRUFBRTtvQkFDeEIsT0FBTyxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BDLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQixDQUFDLElBQUk7YUFDOUI7U0FDRjtRQUNELFVBQVUsRUFBRTtZQUNWLE1BQU0sRUFBRTtnQkFDTixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFO3dCQUNSOzRCQUNFLEVBQUUsRUFBRSxjQUFjO3lCQUNuQjtxQkFDRjtvQkFDRCxVQUFVLEVBQUU7d0JBQ1Y7NEJBQ0UsSUFBSSxFQUFFLE1BQU07NEJBQ1osTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLENBQUM7cUNBQ1g7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLE9BQU87NEJBQ2IsTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLENBQUM7cUNBQ1g7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLGFBQWE7NEJBQ25CLE1BQU0sRUFBRTtnQ0FDTixTQUFTLEVBQUU7b0NBQ1QsRUFBRSxFQUFFO3dDQUNGLE9BQU8sRUFBRSxFQUFFO3FDQUNaO2lDQUNGOzZCQUNGO3lCQUNGO3FCQUNGO2lCQUNGO2dCQUNELE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUU7d0JBQ1I7NEJBQ0UsRUFBRSxFQUFFLGNBQWM7eUJBQ25CO3FCQUNGO29CQUNELFVBQVUsRUFBRTt3QkFDVjs0QkFDRSxJQUFJLEVBQUUsTUFBTTs0QkFDWixNQUFNLEVBQUU7Z0NBQ04sU0FBUyxFQUFFO29DQUNULEVBQUUsRUFBRTt3Q0FDRixPQUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsT0FBTzs0QkFDYixNQUFNLEVBQUU7Z0NBQ04sU0FBUyxFQUFFO29DQUNULEVBQUUsRUFBRTt3Q0FDRixPQUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsYUFBYTs0QkFDbkIsTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLEVBQUU7cUNBQ1o7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsTUFBTSxFQUFFO29CQUNOLEtBQUssRUFBRSxXQUFXO29CQUNsQixRQUFRLEVBQUU7d0JBQ1I7NEJBQ0UsRUFBRSxFQUFFLGNBQWM7NEJBQ2xCLE1BQU0sRUFBRTtnQ0FDTixTQUFTLEVBQUU7b0NBQ1QsRUFBRSxFQUFFO3dDQUNGLE9BQU8sRUFBRSxFQUFFO3FDQUNaO2lDQUNGOzZCQUNGO3lCQUNGO3FCQUNGO29CQUNELFVBQVUsRUFBRTt3QkFDVjs0QkFDRSxJQUFJLEVBQUUsTUFBTTs0QkFDWixNQUFNLEVBQUU7Z0NBQ04sU0FBUyxFQUFFO29DQUNULEVBQUUsRUFBRTt3Q0FDRixPQUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsT0FBTzs0QkFDYixNQUFNLEVBQUU7Z0NBQ04sU0FBUyxFQUFFO29DQUNULEVBQUUsRUFBRTt3Q0FDRixPQUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsYUFBYTs0QkFDbkIsTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLEVBQUU7cUNBQ1o7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyx5QkFBeUIsRUFBRSxDQUFDO2lCQUMxQztnQkFDRCxJQUFJLEVBQUU7b0JBQ0osT0FBTyxFQUFFLENBQUMsR0FBRyx1QkFBdUIsRUFBRSxDQUFDO29CQUN2QyxLQUFLLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2lCQUM5QjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50VGVtcGxhdGVFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi90ZW1wbGF0ZS5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudFRlbXBsYXRlRW50aXR5U2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnRlbXBsYXRlLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUudGl0bGUsXG4gICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5pY29uLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6ICd0KFwidGVtcGxhdGVcIix7c2NvcGU6IFwibm90aWZpY2F0aW9uLW1hbmFnZW1lbnRcIn0pJyxcbiAgICAgIHBsdXJhbDogJ3QoXCJ0ZW1wbGF0ZVwiLHtzY29wZTogXCJub3RpZmljYXRpb24tbWFuYWdlbWVudFwifSknLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmNoYW5uZWwubmFtZX1gLFxuICAgICAgICBjb2x1bW5zOiBbJ3RpdGxlJywgJ2JvZHknLCAnY2hhbm5lbCddLFxuICAgICAgICBjb25kaXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ25vdGlmaWNhdGlvbklkJyxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmFsdWU6ICdpZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi50aXRsZScsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLm5hbWUnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi5kZXNjcmlwdGlvbicsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ25vdGlmaWNhdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdkZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5VmlldygpXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMNotificationManagementTemplateEntityService, AXMNotificationManagementTemplateEntityServiceImpl } from './template.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationTemplateEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, providers: [\n {\n provide: AXMNotificationManagementTemplateEntityService,\n useClass: AXMNotificationManagementTemplateEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationTemplateEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationManagementTemplateEntityService,\n useClass: AXMNotificationManagementTemplateEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvdGVtcGxhdGUvdGVtcGxhdGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLGtEQUFrRCxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBYXhJLE1BQU0sT0FBTyxtQ0FBbUM7K0dBQW5DLG1DQUFtQztnSEFBbkMsbUNBQW1DO2dIQUFuQyxtQ0FBbUMsYUFQbkM7WUFDVDtnQkFDRSxPQUFPLEVBQUUsOENBQThDO2dCQUN2RCxRQUFRLEVBQUUsa0RBQWtEO2FBQzdEO1NBQ0Y7OzRGQUVVLG1DQUFtQztrQkFYL0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4Q0FBOEM7NEJBQ3ZELFFBQVEsRUFBRSxrREFBa0Q7eUJBQzdEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2UsIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsIH0gZnJvbSAnLi90ZW1wbGF0ZS5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50VGVtcGxhdGVFbnRpdHlTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRUZW1wbGF0ZUVudGl0eVNlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTU5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5TW9kdWxlIHsgfVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationManagementChannelEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMNotificationManagementChannelEntityServiceImpl extends AXMNotificationManagementChannelEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.channel.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvY2hhbm5lbC9jaGFubmVsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxNQUFNLE9BQWdCLDZDQUE4QyxTQUFRLHdCQUczRTtDQUFHO0FBR0osTUFBTSxPQUFPLGlEQUFrRCxTQUFRLDZDQUE2QztJQUNsSDtRQUNFLEtBQUssQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQzsrR0FIVSxpREFBaUQ7bUhBQWpELGlEQUFpRDs7NEZBQWpELGlEQUFpRDtrQkFEN0QsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlNb2RlbCB9IGZyb20gJy4vY2hhbm5lbC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","import { AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel.service';\nexport async function notificationChannelEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.channel.name,\n title: RootConfig.entities.channel.title,\n icon: RootConfig.entities.channel.icon,\n formats: {\n individual: `@${i18n}:channel`,\n plural: `@${i18n}:channels`,\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notificationChannel',\n title: 'Notification Channel',\n },\n {\n id: 'in-app',\n title: 'In App',\n },\n ],\n properties: [\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'template',\n title: `@${i18n}:template`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'body',\n title: `@${i18n}:body`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'imageId',\n title: `@${i18n}:body`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n multiple: false,\n },\n },\n },\n },\n {\n name: 'channel',\n title: `@${i18n}:channel`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'SMS', name: 'sms' },\n { title: 'Email', name: 'email' },\n { title: 'In App', name: 'inApp' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: `@${i18n}:type`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Notification', name: 'notification' },\n { title: 'Promotion', name: 'promotion' },\n { title: 'PopUp', name: 'popup' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n },\n {\n name: 'contentType',\n title: `@${i18n}:contentType`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Media', name: 'media' },\n { title: 'Text', name: 'text' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'shape',\n title: `@${i18n}:shape`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Circle', name: 'circle' },\n { title: 'Square', name: 'square' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'placement',\n title: `t(\"placement\", { scope: \"${i18n}\" })`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'Side Menu Footer', name: 'side-menu-footer' },\n { title: 'Side Menu Header', name: 'side-menu-header' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'pin',\n title: `t(\"pin\", { scope: \"${i18n}\" })`,\n groupId: 'in-app',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'trigger',\n title: `t(\"trigger\", { scope: \"${i18n}\" })`,\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.cronJob,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'channel' }],\n commands: {\n create: {\n execute: async (data) => {\n console.log(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 {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notificationChannel',\n },\n {\n id: 'in-app',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'trigger',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 6,\n },\n },\n },\n },\n {\n name: 'pin',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n {\n name: 'all',\n title: '@general:terms.interface.selection.all-items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jaGFubmVsL2NoYW5uZWwuZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEYsTUFBTSxDQUFDLEtBQUssVUFBVSxnQ0FBZ0MsQ0FBQyxRQUFrQjtJQUN2RSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7SUFDaEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSTtRQUN0QyxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSztRQUN4QyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSTtRQUN0QyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsSUFBSSxJQUFJLFVBQVU7WUFDOUIsTUFBTSxFQUFFLElBQUksSUFBSSxXQUFXO1NBQzVCO1FBQ0QsZUFBZSxFQUFFLEVBQUU7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QUFPLEVBQUUsQ0FBQztxQ0FDWDtpQ0FDRjs2QkFDRjt5QkFDRjtxQkFDRjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLHlCQUF5QixFQUFFLENBQUM7aUJBQzFDO2dCQUNELElBQUksRUFBRTtvQkFDSixPQUFPLEVBQUUsQ0FBQyxHQUFHLHVCQUF1QixFQUFFLENBQUM7b0JBQ3ZDLEtBQUssRUFBRTt3QkFDTDs0QkFDRSxJQUFJLEVBQUUsS0FBSzs0QkFDWCxLQUFLLEVBQUUsOENBQThDOzRCQUNyRCxLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsRUFBRTs0QkFDWCxVQUFVLEVBQUUsRUFBRTs0QkFDZCxLQUFLLEVBQUUsRUFBRTt5QkFDVjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5UXVlcnlUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB9IGZyb20gJy4vY2hhbm5lbC5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5vdGlmaWNhdGlvbkNoYW5uZWxFbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuY2hhbm5lbC50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmNoYW5uZWwuaWNvbixcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBgQCR7aTE4bn06Y2hhbm5lbGAsXG4gICAgICBwbHVyYWw6IGBAJHtpMThufTpjaGFubmVsc2AsXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICB0aXRsZTogJ05vdGlmaWNhdGlvbiBDaGFubmVsJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgdGl0bGU6ICdJbiBBcHAnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5jb21tb24udGl0bGUnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OnRlbXBsYXRlYCxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmJvZHlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnJpY2hUZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2ltYWdlSWQnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmJvZHlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmZpbGVVcGxvYWRlcixcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogYEAke2kxOG59OmNoYW5uZWxgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnU01TJywgbmFtZTogJ3NtcycgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnRW1haWwnLCBuYW1lOiAnZW1haWwnIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ0luIEFwcCcsIG5hbWU6ICdpbkFwcCcgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcsXG4gICAgICAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndHlwZScsXG4gICAgICAgIHRpdGxlOiBgQCR7aTE4bn06dHlwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ05vdGlmaWNhdGlvbicsIG5hbWU6ICdub3RpZmljYXRpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1Byb21vdGlvbicsIG5hbWU6ICdwcm9tb3Rpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1BvcFVwJywgbmFtZTogJ3BvcHVwJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlJyxcbiAgICAgICAgdGl0bGU6IGBAJHtpMThufTpjb250ZW50VHlwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ01lZGlhJywgbmFtZTogJ21lZGlhJyB9LFxuICAgICAgICAgICAgICAgIHsgdGl0bGU6ICdUZXh0JywgbmFtZTogJ3RleHQnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgdGl0bGU6IGBAJHtpMThufTpzaGFwZWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ0NpcmNsZScsIG5hbWU6ICdjaXJjbGUnIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1NxdWFyZScsIG5hbWU6ICdzcXVhcmUnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3BsYWNlbWVudCcsXG4gICAgICAgIHRpdGxlOiBgdChcInBsYWNlbWVudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdpbi1hcHAnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICduYW1lJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ1NpZGUgTWVudSBGb290ZXInLCBuYW1lOiAnc2lkZS1tZW51LWZvb3RlcicgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnU2lkZSBNZW51IEhlYWRlcicsIG5hbWU6ICdzaWRlLW1lbnUtaGVhZGVyJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwaW4nLFxuICAgICAgICB0aXRsZTogYHQoXCJwaW5cIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnaW4tYXBwJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuY2hlY2tib3gsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndHJpZ2dlcicsXG4gICAgICAgIHRpdGxlOiBgdChcInRyaWdnZXJcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmNyb25Kb2IsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdib2R5JyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTtcblxuICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnaW4tYXBwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2luLWFwcCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyaWdnZXInLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BpbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucygpXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWxsJyxcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5pbnRlcmZhY2Uuc2VsZWN0aW9uLmFsbC1pdGVtcycsXG4gICAgICAgICAgICAgIGZpeGVkOiB0cnVlLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbXSxcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgICAgICAgIHNvcnRzOiBbXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMNotificationEntityService, AXMNotificationEntityServiceImpl } from './notification.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, providers: [\n {\n provide: AXMNotificationEntityService,\n useClass: AXMNotificationEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationEntityService,\n useClass: AXMNotificationEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBYXhHLE1BQU0sT0FBTywyQkFBMkI7K0dBQTNCLDJCQUEyQjtnSEFBM0IsMkJBQTJCO2dIQUEzQiwyQkFBMkIsYUFQekI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxRQUFRLEVBQUUsZ0NBQWdDO2FBQzdDO1NBQ0o7OzRGQUVRLDJCQUEyQjtrQkFYdkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFFBQVEsRUFBRSxnQ0FBZ0M7eUJBQzdDO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2UsIEFYTU5vdGlmaWNhdGlvbkVudGl0eVNlcnZpY2VJbXBsIH0gZnJvbSAnLi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW10sXG4gICAgZXhwb3J0czogW10sXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNTm90aWZpY2F0aW9uRW50aXR5U2VydmljZSxcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUgeyB9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXMNotificationManagementChannelEntityService, AXMNotificationManagementChannelEntityServiceImpl } from './channel.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMNotificationChannelEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, providers: [\n {\n provide: AXMNotificationManagementChannelEntityService,\n useClass: AXMNotificationManagementChannelEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationChannelEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMNotificationManagementChannelEntityService,\n useClass: AXMNotificationManagementChannelEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9jaGFubmVsL2NoYW5uZWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLGlEQUFpRCxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBYXJJLE1BQU0sT0FBTyxrQ0FBa0M7K0dBQWxDLGtDQUFrQztnSEFBbEMsa0NBQWtDO2dIQUFsQyxrQ0FBa0MsYUFQaEM7WUFDUDtnQkFDSSxPQUFPLEVBQUUsNkNBQTZDO2dCQUN0RCxRQUFRLEVBQUUsaURBQWlEO2FBQzlEO1NBQ0o7OzRGQUVRLGtDQUFrQztrQkFYOUMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw2Q0FBNkM7NEJBQ3RELFFBQVEsRUFBRSxpREFBaUQ7eUJBQzlEO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSwgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCB9IGZyb20gJy4vY2hhbm5lbC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1Ob3RpZmljYXRpb25NYW5hZ2VtZW50Q2hhbm5lbEVudGl0eVNlcnZpY2UsXG4gICAgICAgICAgICB1c2VDbGFzczogQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Ob3RpZmljYXRpb25DaGFubmVsRW50aXR5TW9kdWxlIHsgfVxuIl19","// Entity Services\nexport * from './notification';\nexport * from './template';\nexport * from './channel';\n// Entity Modules\nexport * from './notification/notification.module';\nexport * from './template/template.module';\nexport * from './channel/channel.module';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrQkFBa0I7QUFDbEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFdBQVcsQ0FBQztBQUUxQixpQkFBaUI7QUFDakIsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFbnRpdHkgU2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFubmVsJztcblxuLy8gRW50aXR5IE1vZHVsZXNcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZS90ZW1wbGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFubmVsL2NoYW5uZWwubW9kdWxlJztcbiJdfQ==","export const AXPNotificationManagementMenuKeys = {\n UserNotifications: 'user:notifications',\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbWVudS5rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHO0lBQzdDLGlCQUFpQixFQUFFLG9CQUFvQjtDQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYUE5vdGlmaWNhdGlvbk1hbmFnZW1lbnRNZW51S2V5cyA9IHtcbiAgICBVc2VyTm90aWZpY2F0aW9uczogJ3VzZXI6bm90aWZpY2F0aW9ucycsXG59IGFzIGNvbnN0O1xuXG4iXX0=","import { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { RootConfig } from './const';\nimport { AXPNotificationManagementMenuKeys } from './menu.keys';\nexport class AXMMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n this.sessionService = inject(AXPSessionService);\n }\n async provide(context) {\n const isAuthorized = await firstValueFrom(this.sessionService.isAuthorized$);\n if (!isAuthorized) {\n return;\n }\n const scope = RootConfig.config.i18n;\n const moduleName = RootConfig.module.name;\n context.find('user:profile').addItems([\n {\n name: AXPNotificationManagementMenuKeys.UserNotifications,\n text: `t('my', {scope: \"${scope}\"})`,\n icon: 'fa-light fa-bell',\n path: `${this.sessionService.application?.name}/${RootConfig.config.route}`,\n badgeKey: 'badge-notification',\n // data: {\n // requiredPermission: '',\n // },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21lbnUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRWhFLE1BQU0sT0FBTyxlQUFlO0lBQTVCO1FBQ1Usa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBd0JyRCxDQUFDO0lBdEJDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBK0I7UUFDM0MsTUFBTSxZQUFZLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNyQyxNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUUxQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUNwQztnQkFDRSxJQUFJLEVBQUUsaUNBQWlDLENBQUMsaUJBQWlCO2dCQUN6RCxJQUFJLEVBQUUsb0JBQW9CLEtBQUssS0FBSztnQkFDcEMsSUFBSSxFQUFFLGtCQUFrQjtnQkFDeEIsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFO2dCQUMzRSxRQUFRLEVBQUUsb0JBQW9CO2dCQUM5QixVQUFVO2dCQUNWLDZCQUE2QjtnQkFDN0IsS0FBSzthQUNOO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQTWVudVByb3ZpZGVyLCBBWFBNZW51UHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBOb3RpZmljYXRpb25NYW5hZ2VtZW50TWVudUtleXMgfSBmcm9tICcuL21lbnUua2V5cyc7XG5cbmV4cG9ydCBjbGFzcyBBWE1NZW51UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBNZW51UHJvdmlkZXIge1xuICBwcml2YXRlIGVudGl0eVNlcnZpY2UgPSBpbmplY3QoQVhQRW50aXR5U2VydmljZSk7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQTWVudVByb3ZpZGVyQ29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGlzQXV0aG9yaXplZCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2Vzc2lvblNlcnZpY2UuaXNBdXRob3JpemVkJCk7XG4gICAgaWYgKCFpc0F1dGhvcml6ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzY29wZSA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG4gICAgY29uc3QgbW9kdWxlTmFtZSA9IFJvb3RDb25maWcubW9kdWxlLm5hbWU7XG5cbiAgICBjb250ZXh0LmZpbmQoJ3VzZXI6cHJvZmlsZScpLmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogQVhQTm90aWZpY2F0aW9uTWFuYWdlbWVudE1lbnVLZXlzLlVzZXJOb3RpZmljYXRpb25zLFxuICAgICAgICB0ZXh0OiBgdCgnbXknLCB7c2NvcGU6IFwiJHtzY29wZX1cIn0pYCxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWJlbGwnLFxuICAgICAgICBwYXRoOiBgJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lfS8ke1Jvb3RDb25maWcuY29uZmlnLnJvdXRlfWAsXG4gICAgICAgIGJhZGdlS2V5OiAnYmFkZ2Utbm90aWZpY2F0aW9uJyxcbiAgICAgICAgLy8gZGF0YToge1xuICAgICAgICAvLyAgICByZXF1aXJlZFBlcm1pc3Npb246ICcnLFxuICAgICAgICAvLyB9LFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19","//#region ---- Core Imports ----\nimport { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\n/**\n * Service to display OS-level notifications using the browser's Notification API.\n */\nexport class AXMOsNotificationService {\n constructor() {\n this.isSupported = signal(false, ...(ngDevMode ? [{ debugName: \"isSupported\" }] : []));\n this.permission = signal(false, ...(ngDevMode ? [{ debugName: \"permission\" }] : []));\n this.isSupported.set('Notification' in window);\n }\n /**\n * Requests permission from the user to display desktop notifications.\n * @returns A promise that resolves to true if permission is granted, false otherwise.\n */\n async requestPermission() {\n if (!this.isSupported()) {\n console.warn('This browser does not support desktop notifications.');\n return false;\n }\n switch (Notification.permission) {\n case 'granted':\n this.permission.set(true);\n return true;\n case 'default':\n const permission = await Notification.requestPermission();\n this.permission.set(permission === 'granted');\n return this.permission();\n default:\n this.permission.set(false);\n return false;\n }\n }\n /**\n * Shows a desktop notification.\n * This method should be called after ensuring permission has been granted via requestPermission().\n *\n * @param title The title of the notification.\n * @param options Optional notification options including an onClick handler and window focusing.\n * @returns The Notification object if displayed, otherwise null.\n */\n show(title, options) {\n if (!this.isSupported()) {\n console.warn('This browser does not support desktop notifications.');\n return null;\n }\n if (!this.permission()) {\n console.warn(`Notification permission is ${Notification.permission}. Call requestPermission() first.`);\n return null;\n }\n const notification = new Notification(title, options);\n if (options?.onClick) {\n notification.onclick = () => {\n if (options.activeWindow) {\n window.focus();\n }\n options.onClick();\n };\n }\n return notification;\n }\n /**\n * Dismisses all active notifications or a specific one.\n * @param notification Optional. Pass a specific notification to close it; otherwise closes all.\n */\n dismiss(notification) {\n if (notification) {\n notification.close();\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMOsNotificationService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Mtbm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvb3Mtbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVduRDs7R0FFRztBQUlILE1BQU0sT0FBTyx3QkFBd0I7SUFJbkM7UUFIZ0IsZ0JBQVcsR0FBRyxNQUFNLENBQVUsS0FBSyx1REFBQyxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxNQUFNLENBQVUsS0FBSyxzREFBQyxDQUFDO1FBR2xELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsSUFBSSxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLGlCQUFpQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELFFBQVEsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLEtBQUssU0FBUztnQkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDMUIsT0FBTyxJQUFJLENBQUM7WUFFZCxLQUFLLFNBQVM7Z0JBQ1osTUFBTSxVQUFVLEdBQUcsTUFBTSxZQUFZLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUM5QyxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUUzQjtnQkFDRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0IsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksSUFBSSxDQUFDLEtBQWEsRUFBRSxPQUFrQztRQUMzRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1lBQ3JFLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLDhCQUE4QixZQUFZLENBQUMsVUFBVSxtQ0FBbUMsQ0FBQyxDQUFDO1lBQ3ZHLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUV0RCxJQUFJLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUNyQixZQUFZLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRTtnQkFDMUIsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQ3pCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsQ0FBQztnQkFDRCxPQUFPLENBQUMsT0FBUSxFQUFFLENBQUM7WUFDckIsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxPQUFPLENBQUMsWUFBMkI7UUFDeEMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7K0dBM0VVLHdCQUF3QjttSEFBeEIsd0JBQXdCLGNBRnZCLE1BQU07OzRGQUVQLHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIENvcmUgSW1wb3J0cyAgIC0tLS1cbmltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8jZW5kcmVnaW9uXG5cbi8qKlxuICogRXh0ZW5kcyBzdGFuZGFyZCBOb3RpZmljYXRpb25PcHRpb25zIHRvIGluY2x1ZGUgYSBjbGljayBoYW5kbGVyIGFuZCB3aW5kb3cgZm9jdXNpbmcgYmVoYXZpb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQVhNT3NOb3RpZmljYXRpb25PcHRpb25zIGV4dGVuZHMgTm90aWZpY2F0aW9uT3B0aW9ucyB7XG4gIG9uQ2xpY2s/OiAoKSA9PiB2b2lkO1xuICBhY3RpdmVXaW5kb3c/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFNlcnZpY2UgdG8gZGlzcGxheSBPUy1sZXZlbCBub3RpZmljYXRpb25zIHVzaW5nIHRoZSBicm93c2VyJ3MgTm90aWZpY2F0aW9uIEFQSS5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYTU9zTm90aWZpY2F0aW9uU2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBpc1N1cHBvcnRlZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBwZXJtaXNzaW9uID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmlzU3VwcG9ydGVkLnNldCgnTm90aWZpY2F0aW9uJyBpbiB3aW5kb3cpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlcXVlc3RzIHBlcm1pc3Npb24gZnJvbSB0aGUgdXNlciB0byBkaXNwbGF5IGRlc2t0b3Agbm90aWZpY2F0aW9ucy5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBpZiBwZXJtaXNzaW9uIGlzIGdyYW50ZWQsIGZhbHNlIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyByZXF1ZXN0UGVybWlzc2lvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAoIXRoaXMuaXNTdXBwb3J0ZWQoKSkge1xuICAgICAgY29uc29sZS53YXJuKCdUaGlzIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBkZXNrdG9wIG5vdGlmaWNhdGlvbnMuJyk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgc3dpdGNoIChOb3RpZmljYXRpb24ucGVybWlzc2lvbikge1xuICAgICAgY2FzZSAnZ3JhbnRlZCc6XG4gICAgICAgIHRoaXMucGVybWlzc2lvbi5zZXQodHJ1ZSk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuXG4gICAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgICAgY29uc3QgcGVybWlzc2lvbiA9IGF3YWl0IE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpO1xuICAgICAgICB0aGlzLnBlcm1pc3Npb24uc2V0KHBlcm1pc3Npb24gPT09ICdncmFudGVkJyk7XG4gICAgICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb24oKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9uLnNldChmYWxzZSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2hvd3MgYSBkZXNrdG9wIG5vdGlmaWNhdGlvbi5cbiAgICogVGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBhZnRlciBlbnN1cmluZyBwZXJtaXNzaW9uIGhhcyBiZWVuIGdyYW50ZWQgdmlhIHJlcXVlc3RQZXJtaXNzaW9uKCkuXG4gICAqXG4gICAqIEBwYXJhbSB0aXRsZSBUaGUgdGl0bGUgb2YgdGhlIG5vdGlmaWNhdGlvbi5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9uYWwgbm90aWZpY2F0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIGFuIG9uQ2xpY2sgaGFuZGxlciBhbmQgd2luZG93IGZvY3VzaW5nLlxuICAgKiBAcmV0dXJucyBUaGUgTm90aWZpY2F0aW9uIG9iamVjdCBpZiBkaXNwbGF5ZWQsIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHNob3codGl0bGU6IHN0cmluZywgb3B0aW9ucz86IEFYTU9zTm90aWZpY2F0aW9uT3B0aW9ucyk6IE5vdGlmaWNhdGlvbiB8IG51bGwge1xuICAgIGlmICghdGhpcy5pc1N1cHBvcnRlZCgpKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1RoaXMgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IGRlc2t0b3Agbm90aWZpY2F0aW9ucy4nKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wZXJtaXNzaW9uKCkpIHtcbiAgICAgIGNvbnNvbGUud2FybihgTm90aWZpY2F0aW9uIHBlcm1pc3Npb24gaXMgJHtOb3RpZmljYXRpb24ucGVybWlzc2lvbn0uIENhbGwgcmVxdWVzdFBlcm1pc3Npb24oKSBmaXJzdC5gKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IG5ldyBOb3RpZmljYXRpb24odGl0bGUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKG9wdGlvbnM/Lm9uQ2xpY2spIHtcbiAgICAgIG5vdGlmaWNhdGlvbi5vbmNsaWNrID0gKCkgPT4ge1xuICAgICAgICBpZiAob3B0aW9ucy5hY3RpdmVXaW5kb3cpIHtcbiAgICAgICAgICB3aW5kb3cuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBvcHRpb25zLm9uQ2xpY2shKCk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBub3RpZmljYXRpb247XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzc2VzIGFsbCBhY3RpdmUgbm90aWZpY2F0aW9ucyBvciBhIHNwZWNpZmljIG9uZS5cbiAgICogQHBhcmFtIG5vdGlmaWNhdGlvbiBPcHRpb25hbC4gUGFzcyBhIHNwZWNpZmljIG5vdGlmaWNhdGlvbiB0byBjbG9zZSBpdDsgb3RoZXJ3aXNlIGNsb3NlcyBhbGwuXG4gICAqL1xuICBwdWJsaWMgZGlzbWlzcyhub3RpZmljYXRpb24/OiBOb3RpZmljYXRpb24pOiB2b2lkIHtcbiAgICBpZiAobm90aWZpY2F0aW9uKSB7XG4gICAgICBub3RpZmljYXRpb24uY2xvc2UoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { computed, effect, inject, Injectable, signal } from '@angular/core';\nimport { AXMNotificationEntityService } from '../../entities/notification';\nimport { AXMOsNotificationService } from './os-notification.service';\nimport * as i0 from \"@angular/core\";\n/**\n * Signal store that provides a reactive interface for notification-related operations\n * Acts as a layer between notification components and the entity service\n */\nexport class AXMNotificationConnectorService {\n // Effects\n constructor() {\n this.notificationService = inject(AXMNotificationEntityService);\n this.osNotificationService = inject(AXMOsNotificationService);\n // State signals\n this.isLoading = signal(false, ...(ngDevMode ? [{ debugName: \"isLoading\" }] : []));\n this.error = signal(null, ...(ngDevMode ? [{ debugName: \"error\" }] : []));\n this.notifications = signal([], ...(ngDevMode ? [{ debugName: \"notifications\" }] : []));\n this.totalCount = signal(0, ...(ngDevMode ? [{ debugName: \"totalCount\" }] : []));\n // Public computed signals\n this.loading = computed(() => this.isLoading(), ...(ngDevMode ? [{ debugName: \"loading\" }] : []));\n this.errorMessage = computed(() => this.error(), ...(ngDevMode ? [{ debugName: \"errorMessage\" }] : []));\n this.notificationList = computed(() => this.notifications(), ...(ngDevMode ? [{ debugName: \"notificationList\" }] : []));\n this.total = computed(() => this.totalCount(), ...(ngDevMode ? [{ debugName: \"total\" }] : []));\n this.unreadCount = computed(() => this.notifications().filter((notification) => notification.readAt === null).length, ...(ngDevMode ? [{ debugName: \"unreadCount\" }] : []));\n // Auto-fetch notifications when service is initialized\n effect(() => {\n this.getList();\n });\n }\n // Methods from entity service with additional state management\n /**\n * Get list of notifications\n */\n async getList() {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const response = await this.notificationService.getList();\n // Sort notifications by createAt date in descending order (newest first)\n const sortedItems = [...response.items].sort((a, b) => {\n const dateA = new Date(a.createAt).getTime();\n const dateB = new Date(b.createAt).getTime();\n return dateB - dateA;\n });\n this.notifications.set(sortedItems);\n this.totalCount.set(response.total);\n return {\n ...response,\n items: sortedItems,\n };\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to fetch notifications');\n return { total: 0, items: [] };\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Mark notifications as read\n * If no specific IDs are provided, mark all unread notifications as read\n * If specific IDs are provided, set readAt only when it is currently null (no toggling)\n */\n async markAsRead(payload = { id: [] }) {\n try {\n // this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.markAsRead(payload);\n // Update local state to reflect read status without toggling\n if (payload?.id?.length) {\n // Set readAt for specific notifications only if currently unread\n this.notifications.update((notifications) => notifications.map((notification) => {\n if (payload.id.includes(notification.id)) {\n // Only set readAt when it is null (no toggling to unread)\n return notification.readAt === null ? { ...notification, readAt: new Date() } : notification;\n }\n return notification;\n }));\n }\n else {\n // If no specific IDs are provided, mark all unread notifications as read\n this.notifications.update((notifications) => notifications.map((notification) => notification.readAt ? notification : { ...notification, readAt: new Date() }));\n }\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to mark notifications as read');\n }\n finally {\n // this.isLoading.set(false);\n }\n }\n async markAllAsRead() {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.markAllAsRead();\n this.notifications.update((notifications) => notifications.map((notification) => ({ ...notification, readAt: new Date() })));\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to mark all notifications as read');\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Create a new notification\n */\n async create(payload, options) {\n this.isLoading.set(true);\n this.error.set(null);\n //send os notification\n const isPermissionGranted = await this.osNotificationService.requestPermission();\n if (payload && isPermissionGranted) {\n this.osNotificationService.show(payload.title || 'Notification', {\n body: payload.body || 'No body',\n ...options,\n });\n }\n const createdNotification = await this.notificationService.create(payload);\n // Refresh list after creating a notification\n this.notifications.update((notifications) => {\n const newNotifications = [createdNotification, ...notifications];\n return newNotifications.sort((a, b) => new Date(b.createAt).getTime() - new Date(a.createAt).getTime());\n });\n this.totalCount.update((count) => count + 1);\n await this.getList();\n this.isLoading.set(false);\n }\n // Methods from AXMEntityCrudServiceImpl\n /**\n * Insert one notification\n */\n async insertOne(request) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const id = await this.notificationService.insertOne(request);\n // Refresh list after inserting\n await this.getList();\n return id;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to insert notification');\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Get one notification by id\n */\n async getOne(id) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n return await this.notificationService.getOne(id);\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to get notification with id ${id}`);\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Delete one notification\n */\n async deleteOne(id) {\n try {\n // this.isLoading.set(true);\n this.error.set(null);\n await this.notificationService.deleteOne(id);\n // Update local state to remove deleted notification\n this.notifications.update((notifications) => notifications.filter((notification) => notification.id !== id));\n // Update total count\n this.totalCount.update((count) => count - 1);\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to delete notification with id ${id}`);\n throw err;\n }\n finally {\n // this.isLoading.set(false);\n }\n }\n /**\n * Update one notification\n */\n async updateOne(id, values) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const updated = await this.notificationService.updateOne(id, values);\n // Update local state to reflect changes\n this.notifications.update((notifications) => notifications.map((notification) => notification.id === id ? { ...notification, ...values } : notification));\n return updated;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : `Failed to update notification with id ${id}`);\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n /**\n * Query notifications\n */\n async query(request = { skip: 0, take: 100 }) {\n try {\n this.isLoading.set(true);\n this.error.set(null);\n const result = await this.notificationService.query(request);\n // Update local state with query results\n this.notifications.set(result.items);\n this.totalCount.set(result.total);\n return result;\n }\n catch (err) {\n this.error.set(err instanceof Error ? err.message : 'Failed to query notifications');\n throw err;\n }\n finally {\n this.isLoading.set(false);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationConnectorService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTzNFLE9BQU8sRUFBNEIsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFL0Y7OztHQUdHO0FBSUgsTUFBTSxPQUFPLCtCQUErQjtJQW1CMUMsVUFBVTtJQUNWO1FBbkJpQix3QkFBbUIsR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUMzRCwwQkFBcUIsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUUxRSxnQkFBZ0I7UUFDQyxjQUFTLEdBQUcsTUFBTSxDQUFVLEtBQUsscURBQUMsQ0FBQztRQUNuQyxVQUFLLEdBQUcsTUFBTSxDQUFnQixJQUFJLGlEQUFDLENBQUM7UUFDcEMsa0JBQWEsR0FBRyxNQUFNLENBQXdCLEVBQUUseURBQUMsQ0FBQztRQUNsRCxlQUFVLEdBQUcsTUFBTSxDQUFTLENBQUMsc0RBQUMsQ0FBQztRQUVoRCwwQkFBMEI7UUFDakIsWUFBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLG1EQUFDLENBQUM7UUFDM0MsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSx3REFBQyxDQUFDO1FBQzVDLHFCQUFnQixH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QyxPQUFPLENBQUMsQ0FBQyxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDckYsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQzsrR0FuUVUsK0JBQStCO21IQUEvQiwrQkFBK0IsY0FGOUIsTUFBTTs7NEZBRVAsK0JBQStCO2tCQUgzQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFBhZ2VkTGlzdFJlc3VsdCwgQVhQUXVlcnlSZXF1ZXN0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uL2VudGl0aWVzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24udHlwZXMnO1xuaW1wb3J0IHtcbiAgQVhNTm90aWZpY2F0aW9uSXRlbSxcbiAgQVhNTm90aWZpY2F0aW9uTWFya0FzUmVhZFJlcXVlc3QsXG4gIEFYTU5vdGlmaWNhdGlvblJlc3BvbnNlLFxufSBmcm9tICcuL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuaW1wb3J0IHsgQVhNT3NOb3RpZmljYXRpb25PcHRpb25zLCBBWE1Pc05vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL29zLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBTaWduYWwgc3RvcmUgdGhhdCBwcm92aWRlcyBhIHJlYWN0aXZlIGludGVyZmFjZSBmb3Igbm90aWZpY2F0aW9uLXJlbGF0ZWQgb3BlcmF0aW9uc1xuICogQWN0cyBhcyBhIGxheWVyIGJldHdlZW4gbm90aWZpY2F0aW9uIGNvbXBvbmVudHMgYW5kIHRoZSBlbnRpdHkgc2VydmljZVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uQ29ubmVjdG9yU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uU2VydmljZSA9IGluamVjdChBWE1Ob3RpZmljYXRpb25FbnRpdHlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvc05vdGlmaWNhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhNT3NOb3RpZmljYXRpb25TZXJ2aWNlKTtcblxuICAvLyBTdGF0ZSBzaWduYWxzXG4gIHByaXZhdGUgcmVhZG9ubHkgaXNMb2FkaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvciA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb25zID0gc2lnbmFsPEFYTU5vdGlmaWNhdGlvbkl0ZW1bXT4oW10pO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvdGFsQ291bnQgPSBzaWduYWw8bnVtYmVyPigwKTtcblxuICAvLyBQdWJsaWMgY29tcHV0ZWQgc2lnbmFsc1xuICByZWFkb25seSBsb2FkaW5nID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pc0xvYWRpbmcoKSk7XG4gIHJlYWRvbmx5IGVycm9yTWVzc2FnZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZXJyb3IoKSk7XG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkxpc3QgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm5vdGlmaWNhdGlvbnMoKSk7XG4gIHJlYWRvbmx5IHRvdGFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50b3RhbENvdW50KCkpO1xuICByZWFkb25seSB1bnJlYWRDb3VudCA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMubm90aWZpY2F0aW9ucygpLmZpbHRlcigobm90aWZpY2F0aW9uKSA9PiBub3RpZmljYXRpb24ucmVhZEF0ID09PSBudWxsKS5sZW5ndGgsXG4gICk7XG5cbiAgLy8gRWZmZWN0c1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBBdXRvLWZldGNoIG5vdGlmaWNhdGlvbnMgd2hlbiBzZXJ2aWNlIGlzIGluaXRpYWxpemVkXG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuZ2V0TGlzdCgpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gTWV0aG9kcyBmcm9tIGVudGl0eSBzZXJ2aWNlIHdpdGggYWRkaXRpb25hbCBzdGF0ZSBtYW5hZ2VtZW50XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIGFzeW5jIGdldExpc3QoKTogUHJvbWlzZTxBWE1Ob3RpZmljYXRpb25SZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZ2V0TGlzdCgpO1xuXG4gICAgICAvLyBTb3J0IG5vdGlmaWNhdGlvbnMgYnkgY3JlYXRlQXQgZGF0ZSBpbiBkZXNjZW5kaW5nIG9yZGVyIChuZXdlc3QgZmlyc3QpXG4gICAgICBjb25zdCBzb3J0ZWRJdGVtcyA9IFsuLi5yZXNwb25zZS5pdGVtc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBjb25zdCBkYXRlQSA9IG5ldyBEYXRlKGEuY3JlYXRlQXQpLmdldFRpbWUoKTtcbiAgICAgICAgY29uc3QgZGF0ZUIgPSBuZXcgRGF0ZShiLmNyZWF0ZUF0KS5nZXRUaW1lKCk7XG4gICAgICAgIHJldHVybiBkYXRlQiAtIGRhdGVBO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5zZXQoc29ydGVkSXRlbXMpO1xuICAgICAgdGhpcy50b3RhbENvdW50LnNldChyZXNwb25zZS50b3RhbCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJlc3BvbnNlLFxuICAgICAgICBpdGVtczogc29ydGVkSXRlbXMsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gZmV0Y2ggbm90aWZpY2F0aW9ucycpO1xuICAgICAgcmV0dXJuIHsgdG90YWw6IDAsIGl0ZW1zOiBbXSB9O1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIG5vdGlmaWNhdGlvbnMgYXMgcmVhZFxuICAgKiBJZiBubyBzcGVjaWZpYyBJRHMgYXJlIHByb3ZpZGVkLCBtYXJrIGFsbCB1bnJlYWQgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqIElmIHNwZWNpZmljIElEcyBhcmUgcHJvdmlkZWQsIHNldCByZWFkQXQgb25seSB3aGVuIGl0IGlzIGN1cnJlbnRseSBudWxsIChubyB0b2dnbGluZylcbiAgICovXG4gIGFzeW5jIG1hcmtBc1JlYWQocGF5bG9hZDogQVhNTm90aWZpY2F0aW9uTWFya0FzUmVhZFJlcXVlc3QgPSB7IGlkOiBbXSB9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UubWFya0FzUmVhZChwYXlsb2FkKTtcblxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlIHRvIHJlZmxlY3QgcmVhZCBzdGF0dXMgd2l0aG91dCB0b2dnbGluZ1xuICAgICAgaWYgKHBheWxvYWQ/LmlkPy5sZW5ndGgpIHtcbiAgICAgICAgLy8gU2V0IHJlYWRBdCBmb3Igc3BlY2lmaWMgbm90aWZpY2F0aW9ucyBvbmx5IGlmIGN1cnJlbnRseSB1bnJlYWRcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVwZGF0ZSgobm90aWZpY2F0aW9ucykgPT5cbiAgICAgICAgICBub3RpZmljYXRpb25zLm1hcCgobm90aWZpY2F0aW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAocGF5bG9hZC5pZC5pbmNsdWRlcyhub3RpZmljYXRpb24uaWQpKSB7XG4gICAgICAgICAgICAgIC8vIE9ubHkgc2V0IHJlYWRBdCB3aGVuIGl0IGlzIG51bGwgKG5vIHRvZ2dsaW5nIHRvIHVucmVhZClcbiAgICAgICAgICAgICAgcmV0dXJuIG5vdGlmaWNhdGlvbi5yZWFkQXQgPT09IG51bGwgPyB7IC4uLm5vdGlmaWNhdGlvbiwgcmVhZEF0OiBuZXcgRGF0ZSgpIH0gOiBub3RpZmljYXRpb247XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbm90aWZpY2F0aW9uO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gSWYgbm8gc3BlY2lmaWMgSURzIGFyZSBwcm92aWRlZCwgbWFyayBhbGwgdW5yZWFkIG5vdGlmaWNhdGlvbnMgYXMgcmVhZFxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudXBkYXRlKChub3RpZmljYXRpb25zKSA9PlxuICAgICAgICAgIG5vdGlmaWNhdGlvbnMubWFwKChub3RpZmljYXRpb24pID0+XG4gICAgICAgICAgICBub3RpZmljYXRpb24ucmVhZEF0ID8gbm90aWZpY2F0aW9uIDogeyAuLi5ub3RpZmljYXRpb24sIHJlYWRBdDogbmV3IERhdGUoKSB9LFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmVycm9yLnNldChlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBtYXJrIG5vdGlmaWNhdGlvbnMgYXMgcmVhZCcpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIG1hcmtBbGxBc1JlYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UubWFya0FsbEFzUmVhZCgpO1xuXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudXBkYXRlKChub3RpZmljYXRpb25zKSA9PlxuICAgICAgICBub3RpZmljYXRpb25zLm1hcCgobm90aWZpY2F0aW9uKSA9PiAoeyAuLi5ub3RpZmljYXRpb24sIHJlYWRBdDogbmV3IERhdGUoKSB9KSksXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gbWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkJyk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBub3RpZmljYXRpb25cbiAgICovXG4gIGFzeW5jIGNyZWF0ZShwYXlsb2FkPzogQVhNTm90aWZpY2F0aW9uSXRlbSwgb3B0aW9ucz86IEFYTU9zTm90aWZpY2F0aW9uT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgIC8vc2VuZCBvcyBub3RpZmljYXRpb25cbiAgICBjb25zdCBpc1Blcm1pc3Npb25HcmFudGVkID0gYXdhaXQgdGhpcy5vc05vdGlmaWNhdGlvblNlcnZpY2UucmVxdWVzdFBlcm1pc3Npb24oKTtcbiAgICBpZiAocGF5bG9hZCAmJiBpc1Blcm1pc3Npb25HcmFudGVkKSB7XG4gICAgICB0aGlzLm9zTm90aWZpY2F0aW9uU2VydmljZS5zaG93KHBheWxvYWQudGl0bGUgfHwgJ05vdGlmaWNhdGlvbicsIHtcbiAgICAgICAgYm9keTogcGF5bG9hZC5ib2R5IHx8ICdObyBib2R5JyxcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBjcmVhdGVkTm90aWZpY2F0aW9uID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmNyZWF0ZShwYXlsb2FkKTtcblxuICAgIC8vIFJlZnJlc2ggbGlzdCBhZnRlciBjcmVhdGluZyBhIG5vdGlmaWNhdGlvblxuICAgIHRoaXMubm90aWZpY2F0aW9ucy51cGRhdGUoKG5vdGlmaWNhdGlvbnMpID0+IHtcbiAgICAgIGNvbnN0IG5ld05vdGlmaWNhdGlvbnMgPSBbY3JlYXRlZE5vdGlmaWNhdGlvbiwgLi4ubm90aWZpY2F0aW9uc107XG4gICAgICByZXR1cm4gbmV3Tm90aWZpY2F0aW9ucy5zb3J0KChhLCBiKSA9PiBuZXcgRGF0ZShiLmNyZWF0ZUF0KS5nZXRUaW1lKCkgLSBuZXcgRGF0ZShhLmNyZWF0ZUF0KS5nZXRUaW1lKCkpO1xuICAgIH0pO1xuICAgIHRoaXMudG90YWxDb3VudC51cGRhdGUoKGNvdW50KSA9PiBjb3VudCArIDEpO1xuICAgIGF3YWl0IHRoaXMuZ2V0TGlzdCgpO1xuXG4gICAgdGhpcy5pc0xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgfVxuXG4gIC8vIE1ldGhvZHMgZnJvbSBBWE1FbnRpdHlDcnVkU2VydmljZUltcGxcblxuICAvKipcbiAgICogSW5zZXJ0IG9uZSBub3RpZmljYXRpb25cbiAgICovXG4gIGFzeW5jIGluc2VydE9uZShyZXF1ZXN0OiBPbWl0PEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbCwgJ2lkJz4pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgaWQgPSBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuaW5zZXJ0T25lKHJlcXVlc3QpO1xuXG4gICAgICAvLyBSZWZyZXNoIGxpc3QgYWZ0ZXIgaW5zZXJ0aW5nXG4gICAgICBhd2FpdCB0aGlzLmdldExpc3QoKTtcblxuICAgICAgcmV0dXJuIGlkO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdGYWlsZWQgdG8gaW5zZXJ0IG5vdGlmaWNhdGlvbicpO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgb25lIG5vdGlmaWNhdGlvbiBieSBpZFxuICAgKi9cbiAgYXN5bmMgZ2V0T25lKGlkOiBzdHJpbmcpOiBQcm9taXNlPEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5nZXRPbmUoaWQpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IGBGYWlsZWQgdG8gZ2V0IG5vdGlmaWNhdGlvbiB3aXRoIGlkICR7aWR9YCk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBvbmUgbm90aWZpY2F0aW9uXG4gICAqL1xuICBhc3luYyBkZWxldGVPbmUoaWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG5cbiAgICAgIC8vIFVwZGF0ZSBsb2NhbCBzdGF0ZSB0byByZW1vdmUgZGVsZXRlZCBub3RpZmljYXRpb25cbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy51cGRhdGUoKG5vdGlmaWNhdGlvbnMpID0+IG5vdGlmaWNhdGlvbnMuZmlsdGVyKChub3RpZmljYXRpb24pID0+IG5vdGlmaWNhdGlvbi5pZCAhPT0gaWQpKTtcblxuICAgICAgLy8gVXBkYXRlIHRvdGFsIGNvdW50XG4gICAgICB0aGlzLnRvdGFsQ291bnQudXBkYXRlKChjb3VudCkgPT4gY291bnQgLSAxKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBgRmFpbGVkIHRvIGRlbGV0ZSBub3RpZmljYXRpb24gd2l0aCBpZCAke2lkfWApO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgb25lIG5vdGlmaWNhdGlvblxuICAgKi9cbiAgYXN5bmMgdXBkYXRlT25lKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBQYXJ0aWFsPEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnROb3RpZmljYXRpb25FbnRpdHlNb2RlbD4sXG4gICk6IFByb21pc2U8QVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE5vdGlmaWNhdGlvbkVudGl0eU1vZGVsPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgIHRoaXMuZXJyb3Iuc2V0KG51bGwpO1xuXG4gICAgICBjb25zdCB1cGRhdGVkID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnVwZGF0ZU9uZShpZCwgdmFsdWVzKTtcblxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlIHRvIHJlZmxlY3QgY2hhbmdlc1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVwZGF0ZSgobm90aWZpY2F0aW9ucykgPT5cbiAgICAgICAgbm90aWZpY2F0aW9ucy5tYXAoKG5vdGlmaWNhdGlvbikgPT5cbiAgICAgICAgICBub3RpZmljYXRpb24uaWQgPT09IGlkID8gKHsgLi4ubm90aWZpY2F0aW9uLCAuLi52YWx1ZXMgfSBhcyBBWE1Ob3RpZmljYXRpb25JdGVtKSA6IG5vdGlmaWNhdGlvbixcbiAgICAgICAgKSxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiB1cGRhdGVkO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5lcnJvci5zZXQoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IGBGYWlsZWQgdG8gdXBkYXRlIG5vdGlmaWNhdGlvbiB3aXRoIGlkICR7aWR9YCk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFF1ZXJ5IG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIGFzeW5jIHF1ZXJ5KHJlcXVlc3Q6IEFYUFF1ZXJ5UmVxdWVzdCA9IHsgc2tpcDogMCwgdGFrZTogMTAwIH0pOiBQcm9taXNlPEFYUFBhZ2VkTGlzdFJlc3VsdDxBWE1Ob3RpZmljYXRpb25JdGVtPj4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLmVycm9yLnNldChudWxsKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnF1ZXJ5KHJlcXVlc3QpO1xuXG4gICAgICAvLyBVcGRhdGUgbG9jYWwgc3RhdGUgd2l0aCBxdWVyeSByZXN1bHRzXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMuc2V0KHJlc3VsdC5pdGVtcyBhcyB1bmtub3duIGFzIEFYTU5vdGlmaWNhdGlvbkl0ZW1bXSk7XG4gICAgICB0aGlzLnRvdGFsQ291bnQuc2V0KHJlc3VsdC50b3RhbCk7XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmVycm9yLnNldChlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBxdWVyeSBub3RpZmljYXRpb25zJyk7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iXX0=","import { computed, inject, Injectable } from '@angular/core';\nimport { AXMNotificationConnectorService } from './features/shared/notification-management.service';\nimport * as i0 from \"@angular/core\";\n// Provides a live unread notifications count for header/task badges\nexport class AXMNotificationBadgeProvider {\n constructor() {\n this.notificationService = inject(AXMNotificationConnectorService);\n this.key = 'badge-notification';\n this.count = computed(() => this.notificationService.unreadCount(), ...(ngDevMode ? [{ debugName: \"count\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationBadgeProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9iYWRnZS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbURBQW1ELENBQUM7O0FBRXBHLG9FQUFvRTtBQUVwRSxNQUFNLE9BQU8sNEJBQTRCO0lBRHpDO1FBRW1CLHdCQUFtQixHQUFHLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ3RFLFFBQUcsR0FBRyxvQkFBb0IsQ0FBQztRQUMzQixVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsaURBQUMsQ0FBQztLQUN6RTsrR0FKWSw0QkFBNEI7bUhBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFRhc2tCYWRnZVByb3ZpZGVyIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25Db25uZWN0b3JTZXJ2aWNlIH0gZnJvbSAnLi9mZWF0dXJlcy9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5cbi8vIFByb3ZpZGVzIGEgbGl2ZSB1bnJlYWQgbm90aWZpY2F0aW9ucyBjb3VudCBmb3IgaGVhZGVyL3Rhc2sgYmFkZ2VzXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uQmFkZ2VQcm92aWRlciBpbXBsZW1lbnRzIEFYUFRhc2tCYWRnZVByb3ZpZGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICByZWFkb25seSBrZXkgPSAnYmFkZ2Utbm90aWZpY2F0aW9uJztcbiAgcmVhZG9ubHkgY291bnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudW5yZWFkQ291bnQoKSk7XG59XG4iXX0=","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEntityLoader {\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 return new Promise(async (resolve) => {\n switch (entityName) {\n case RootConfig.entities.template.name: {\n const entity = (await import('./entities/template/template.entity')).notificationTemplateEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case RootConfig.entities.channel.name: {\n const entity = (await import('./entities/channel/channel.entity')).notificationChannelEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n //TODO: Add your custom entity here\n case 'my-notification': {\n const entity = (await import('./entities/my-notification')).myNotificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case RootConfig.entities.notification.name: {\n const entity = (await import('./entities/notification/notification.entity')).notificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n default:\n resolve(null);\n }\n });\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMEntityLoader, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXR5LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUdyQyxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQVNVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0FrQ3JDO0lBekNDLE9BQU87UUFDTCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBR0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7Z0JBQ25DLFFBQVEsVUFBVSxFQUFFLENBQUM7b0JBQ25CLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzt3QkFDdkMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUMsaUNBQWlDLENBQUM7d0JBQ3ZHLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLE1BQU07b0JBQ1IsQ0FBQztvQkFDRCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7d0JBQ3RDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDO3dCQUNwRyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUMvQixNQUFNO29CQUNSLENBQUM7b0JBQ0QsbUNBQW1DO29CQUNuQyxLQUFLLGlCQUFpQixDQUFDLENBQUMsQ0FBQzt3QkFDdkIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUM7d0JBQ3hGLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLE1BQU07b0JBQ1IsQ0FBQztvQkFDRCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7d0JBQzNDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDO3dCQUN2RyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUMvQixNQUFNO29CQUNSLENBQUM7b0JBQ0Q7d0JBQ0UsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsQixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOytHQXpDVSxlQUFlO21IQUFmLGVBQWU7OzRGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHkgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQge1xuICBBWFBFbnRpdHlEZWZpbml0aW9uTG9hZGVyLFxuICBBWFBFbnRpdHlEZWZpbml0aW9uUHJlbG9hZGVyLFxuICBBWFBFbnRpdHlQcmVsb2FkRW50aXR5LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRW50aXR5TG9hZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByZWxvYWQoKTogQVhQRW50aXR5UHJlbG9hZEVudGl0eVtdIHtcbiAgICBjb25zdCBtb2R1bGUgPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBBcnJheS5mcm9tKE9iamVjdC52YWx1ZXMoUm9vdENvbmZpZy5lbnRpdGllcykpLm1hcCgoZW50aXR5OiBhbnkpID0+ICh7XG4gICAgICBtb2R1bGU6IG1vZHVsZSxcbiAgICAgIGVudGl0eTogZW50aXR5Lm5hbWUsXG4gICAgfSkpO1xuICB9XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKGVudGl0eU5hbWUpIHtcbiAgICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUubmFtZToge1xuICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy90ZW1wbGF0ZS90ZW1wbGF0ZS5lbnRpdHknKSkubm90aWZpY2F0aW9uVGVtcGxhdGVFbnRpdHlGYWN0b3J5O1xuICAgICAgICAgICAgcmVzb2x2ZShlbnRpdHkodGhpcy5pbmplY3RvcikpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5jaGFubmVsLm5hbWU6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvY2hhbm5lbC9jaGFubmVsLmVudGl0eScpKS5ub3RpZmljYXRpb25DaGFubmVsRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvL1RPRE86IEFkZCB5b3VyIGN1c3RvbSBlbnRpdHkgaGVyZVxuICAgICAgICAgIGNhc2UgJ215LW5vdGlmaWNhdGlvbic6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvbXktbm90aWZpY2F0aW9uJykpLm15Tm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMubm90aWZpY2F0aW9uLm5hbWU6IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5lbnRpdHknKSkubm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KHRoaXMuaW5qZWN0b3IpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=","import { inject, Injectable, InjectionToken } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXPNotificationDefinitionProvider {\n}\nconst DEFAULT_NOTIFICATION_DEFINITION = [\n// {\n// name: 'File',\n// title: 'Email',\n// icon: 'fa-solid fa-envelope',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for email', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Chat',\n// title: 'SMS',\n// icon: 'fa-solid fa-comment-sms',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for sms', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Comment',\n// title: 'Comment',\n// icon: 'fa-solid fa-comment'\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for comment', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n// {\n// name: 'Log',\n// title: 'Log',\n// icon: 'fa-solid fa-file-lines',\n// async execute(command: AXPExecuteCommand, item: AXMNotificationItem): Promise<void> {\n// console.log('Execute for log', item);\n// // In a real implementation, you would perform an action\n// return Promise.resolve();\n// },\n// },\n];\nexport class AXPNotificationDefinitionProviderDefault extends AXPNotificationDefinitionProvider {\n async provide() {\n return DEFAULT_NOTIFICATION_DEFINITION;\n }\n}\nexport const AXP_NOTIFICATION_DEFINITION_PROVIDER = new InjectionToken('AXP_NOTIFICATION_DEFINITION_PROVIDER');\nexport class AXPNotificationDefinitionService {\n constructor() {\n this.providers = inject(AXP_NOTIFICATION_DEFINITION_PROVIDER, { optional: true });\n }\n getProviders() {\n return this.providers?.flat() ?? [];\n }\n resolve(name) {\n return this.getProviders()?.find((p) => p.name === name) ?? null;\n }\n execute(command, item) {\n const provider = this.getProviders()?.find((p) => p.name === item.type);\n if (!provider) {\n throw new Error('Notification provider not found');\n }\n provider.execute(command, item);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationDefinitionService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlZmluaXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9ub3RpZmljYXRpb24tZGVmaW5pdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBdUMsTUFBTSxlQUFlLENBQUM7O0FBY3hHLE1BQU0sT0FBZ0IsaUNBQWlDO0NBT3REO0FBRUQsTUFBTSwrQkFBK0IsR0FBd0M7QUFDM0UsSUFBSTtBQUNKLGtCQUFrQjtBQUNsQixvQkFBb0I7QUFDcEIsa0NBQWtDO0FBQ2xDLDBGQUEwRjtBQUMxRiw4Q0FBOEM7QUFDOUMsK0RBQStEO0FBQy9ELGdDQUFnQztBQUNoQyxPQUFPO0FBQ1AsS0FBSztBQUNMLElBQUk7QUFDSixrQkFBa0I7QUFDbEIsa0JBQWtCO0FBQ2xCLHFDQUFxQztBQUNyQywwRkFBMEY7QUFDMUYsNENBQTRDO0FBQzVDLCtEQUErRDtBQUMvRCxnQ0FBZ0M7QUFDaEMsT0FBTztBQUNQLEtBQUs7QUFDTCxJQUFJO0FBQ0oscUJBQXFCO0FBQ3JCLHNCQUFzQjtBQUN0QixnQ0FBZ0M7QUFDaEMsMEZBQTBGO0FBQzFGLGdEQUFnRDtBQUNoRCwrREFBK0Q7QUFDL0QsZ0NBQWdDO0FBQ2hDLE9BQU87QUFDUCxLQUFLO0FBQ0wsSUFBSTtBQUNKLGlCQUFpQjtBQUNqQixrQkFBa0I7QUFDbEIsb0NBQW9DO0FBQ3BDLDBGQUEwRjtBQUMxRiw0Q0FBNEM7QUFDNUMsK0RBQStEO0FBQy9ELGdDQUFnQztBQUNoQyxPQUFPO0FBQ1AsS0FBSztDQUNOLENBQUM7QUFFRixNQUFNLE9BQU8sd0NBQXlDLFNBQVEsaUNBQWlDO0lBQzdGLEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTywrQkFBK0IsQ0FBQztJQUN6QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxJQUFJLGNBQWMsQ0FDcEUsc0NBQXNDLENBQ3ZDLENBQUM7QUFHRixNQUFNLE9BQU8sZ0NBQWdDO0lBRDdDO1FBRVUsY0FBUyxHQUFHLE1BQU0sQ0FBQyxvQ0FBb0MsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBaUJ0RjtJQWZDLFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPLENBQUMsT0FBMEIsRUFBRSxJQUF5QjtRQUMzRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7K0dBakJVLGdDQUFnQzttSEFBaEMsZ0NBQWdDLGNBRG5CLE1BQU07OzRGQUNuQixnQ0FBZ0M7a0JBRDVDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRXhlY3V0ZUNvbW1hbmQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXRTaWduYWwsIE91dHB1dEVtaXR0ZXJSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkl0ZW0gfSBmcm9tICcuL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuXG5leHBvcnQgdHlwZSBBWE1Ob3RpZmljYXRpb25UeXBlID0gJ0ZpbGUnIHwgJ0NoYXQnIHwgJ0NvbW1lbnQnIHwgJ0xvZyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBkeW5hbWljIG5vdGlmaWNhdGlvbiBjb250ZW50IGNvbXBvbmVudHMuXG4gKiBFbnN1cmVzIHRoYXQgYW55IGNvbXBvbmVudCB1c2VkIGZvciBub3RpZmljYXRpb24gY29udGVudCBoYXMgYSBjb25zaXN0ZW50IEFQSS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBWFBOb3RpZmljYXRpb25Db250ZW50IHtcbiAgaXRlbTogSW5wdXRTaWduYWw8QVhNTm90aWZpY2F0aW9uSXRlbSB8IHVuZGVmaW5lZD47XG4gIGV4ZWN1dGU6IE91dHB1dEVtaXR0ZXJSZWY8QVhQRXhlY3V0ZUNvbW1hbmQ+O1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgbmFtZTogQVhNTm90aWZpY2F0aW9uVHlwZTtcbiAgdGl0bGU6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICAvLyBhY3Rpb25zPzogQVhQQWN0aW9uTWVudUl0ZW1bXTtcbiAgY29udGVudD86ICgpID0+IFByb21pc2U8VHlwZTxBWFBOb3RpZmljYXRpb25Db250ZW50Pj47XG4gIGV4ZWN1dGU6IChjb21tYW5kOiBBWFBFeGVjdXRlQ29tbWFuZCwgaXRlbTogQVhNTm90aWZpY2F0aW9uSXRlbSkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuY29uc3QgREVGQVVMVF9OT1RJRklDQVRJT05fREVGSU5JVElPTjogQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyW10gPSBbXG4gIC8vIHtcbiAgLy8gICBuYW1lOiAnRmlsZScsXG4gIC8vICAgdGl0bGU6ICdFbWFpbCcsXG4gIC8vICAgaWNvbjogJ2ZhLXNvbGlkIGZhLWVudmVsb3BlJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgZW1haWwnLCBpdGVtKTtcbiAgLy8gICAgIC8vIEluIGEgcmVhbCBpbXBsZW1lbnRhdGlvbiwgeW91IHdvdWxkIHBlcmZvcm0gYW4gYWN0aW9uXG4gIC8vICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gIC8vICAgfSxcbiAgLy8gfSxcbiAgLy8ge1xuICAvLyAgIG5hbWU6ICdDaGF0JyxcbiAgLy8gICB0aXRsZTogJ1NNUycsXG4gIC8vICAgaWNvbjogJ2ZhLXNvbGlkIGZhLWNvbW1lbnQtc21zJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3Igc21zJywgaXRlbSk7XG4gIC8vICAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24sIHlvdSB3b3VsZCBwZXJmb3JtIGFuIGFjdGlvblxuICAvLyAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAvLyAgIH0sXG4gIC8vIH0sXG4gIC8vIHtcbiAgLy8gICBuYW1lOiAnQ29tbWVudCcsXG4gIC8vICAgdGl0bGU6ICdDb21tZW50JyxcbiAgLy8gICBpY29uOiAnZmEtc29saWQgZmEtY29tbWVudCdcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgY29tbWVudCcsIGl0ZW0pO1xuICAvLyAgICAgLy8gSW4gYSByZWFsIGltcGxlbWVudGF0aW9uLCB5b3Ugd291bGQgcGVyZm9ybSBhbiBhY3Rpb25cbiAgLy8gICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgLy8gICB9LFxuICAvLyB9LFxuICAvLyB7XG4gIC8vICAgbmFtZTogJ0xvZycsXG4gIC8vICAgdGl0bGU6ICdMb2cnLFxuICAvLyAgIGljb246ICdmYS1zb2xpZCBmYS1maWxlLWxpbmVzJyxcbiAgLy8gICBhc3luYyBleGVjdXRlKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kLCBpdGVtOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICBjb25zb2xlLmxvZygnRXhlY3V0ZSBmb3IgbG9nJywgaXRlbSk7XG4gIC8vICAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24sIHlvdSB3b3VsZCBwZXJmb3JtIGFuIGFjdGlvblxuICAvLyAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAvLyAgIH0sXG4gIC8vIH0sXG5dO1xuXG5leHBvcnQgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyRGVmYXVsdCBleHRlbmRzIEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25Qcm92aWRlciB7XG4gIGFzeW5jIHByb3ZpZGUoKTogUHJvbWlzZTxBWFBOb3RpZmljYXRpb25EZWZpbml0aW9uUHJvdmlkZXJbXT4ge1xuICAgIHJldHVybiBERUZBVUxUX05PVElGSUNBVElPTl9ERUZJTklUSU9OO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBBWFBfTk9USUZJQ0FUSU9OX0RFRklOSVRJT05fUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48QVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyW10+KFxuICAnQVhQX05PVElGSUNBVElPTl9ERUZJTklUSU9OX1BST1ZJREVSJyxcbik7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHByb3ZpZGVycyA9IGluamVjdChBWFBfTk9USUZJQ0FUSU9OX0RFRklOSVRJT05fUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgZ2V0UHJvdmlkZXJzKCk6IEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25Qcm92aWRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5wcm92aWRlcnM/LmZsYXQoKSA/PyBbXTtcbiAgfVxuXG4gIHJlc29sdmUobmFtZTogc3RyaW5nKTogQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblByb3ZpZGVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJvdmlkZXJzKCk/LmZpbmQoKHApID0+IHAubmFtZSA9PT0gbmFtZSkgPz8gbnVsbDtcbiAgfVxuXG4gIGV4ZWN1dGUoY29tbWFuZDogQVhQRXhlY3V0ZUNvbW1hbmQsIGl0ZW06IEFYTU5vdGlmaWNhdGlvbkl0ZW0pIHtcbiAgICBjb25zdCBwcm92aWRlciA9IHRoaXMuZ2V0UHJvdmlkZXJzKCk/LmZpbmQoKHApID0+IHAubmFtZSA9PT0gaXRlbS50eXBlKTtcbiAgICBpZiAoIXByb3ZpZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdGlmaWNhdGlvbiBwcm92aWRlciBub3QgZm91bmQnKTtcbiAgICB9XG4gICAgcHJvdmlkZXIuZXhlY3V0ZShjb21tYW5kLCBpdGVtKTtcbiAgfVxufVxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPUserAvatarComponent } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { afterNextRender, ChangeDetectionStrategy, Component, inject, input, inputBinding, output, outputBinding, viewChild, ViewContainerRef, } from '@angular/core';\nimport { AXPNotificationDefinitionService } from '../../shared/notification-definition.service';\nimport { AXMAdminNotificationSlotComponent } from '../admin-notification-slot/admin-notification-slot.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/format\";\nexport class AXMAdminNotificationItemComponent {\n constructor() {\n this.notificationDefinitionService = inject(AXPNotificationDefinitionService);\n this.div = viewChild('component', ...(ngDevMode ? [{ debugName: \"div\", read: ViewContainerRef }] : [{ read: ViewContainerRef }]));\n this.adminSlot = inject(AXMAdminNotificationSlotComponent, {\n optional: true,\n });\n this.data = input.required(...(ngDevMode ? [{ debugName: \"data\" }] : []));\n this.onPressNotificationItem = output();\n this.#af = afterNextRender(() => this.renderComponent());\n }\n pressNotificationItem(id) {\n this.onPressNotificationItem.emit(id);\n this.getNotificationProvider()?.execute({ name: 'click' }, this.data());\n this.adminSlot?.popover()?.close();\n }\n getNotificationProvider() {\n return this.notificationDefinitionService.resolve(this.data().type);\n }\n getNotificationContent() {\n const provider = this.getNotificationProvider();\n return provider?.content?.();\n }\n onAction(command) {\n this.getNotificationProvider()?.execute(command, this.data());\n this.adminSlot?.popover()?.close();\n }\n async renderComponent() {\n if (this.getNotificationContent() && this.getNotificationProvider()) {\n const component = await this.getNotificationContent();\n if (component) {\n this.div()?.createComponent(component, {\n bindings: [\n inputBinding('item', this.data),\n outputBinding('execute', (e) => this.onAction(e)),\n ],\n });\n }\n }\n }\n #af;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationItemComponent, isStandalone: true, selector: \"axp-master-notification-item\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onPressNotificationItem: \"onPressNotificationItem\" }, viewQueries: [{ propertyName: \"div\", first: true, predicate: [\"component\"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: \"<div\\n class=\\\"notification-item ax-text-start\\\"\\n [id]=\\\"data().id\\\"\\n (click)=\\\"pressNotificationItem(data().id)\\\"\\n [class]=\\\"[data().template.prority, data().readAt ? 'read' : 'unread']\\\"\\n>\\n <div class=\\\"notification-avatar\\\">\\n <axp-user-avatar [size]=\\\"48\\\" [userId]=\\\"data().sender.id\\\"></axp-user-avatar>\\n @if (!data().readAt) {\\n <!-- <div class=\\\"unread-badge\\\"></div> -->\\n }\\n </div>\\n\\n <div class=\\\"notification-content\\\">\\n <div class=\\\"notification-header\\\">\\n <div class=\\\"notification-title\\\">{{ data().sender.fullName || data().title }}</div>\\n <div class=\\\"notification-meta\\\">\\n <!-- @if (data().template.isPinned) {\\n <div class=\\\"pin-notification\\\">\\n <ax-icon>\\n <i class=\\\"fa-solid fa-thumbtack\\\"></i>\\n </ax-icon>\\n </div>\\n } -->\\n <div class=\\\"notification-time\\\">{{ data().createAt | format: 'timeleft' | async }}</div>\\n </div>\\n </div>\\n @if (this.getNotificationContent() && this.getNotificationProvider()) {\\n <div #component></div>\\n } @else {\\n <div class=\\\"notification-body\\\">{{ data().body }}</div>\\n }\\n </div>\\n</div>\\n\", styles: [\".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;backdrop-filter:blur(8px)}.notification-item.read{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))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\\\"\\\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-align:start;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;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: AXPUserAvatarComponent, selector: \"axp-user-avatar\", inputs: [\"size\", \"userId\"] }, { kind: \"ngmodule\", type: AXImageModule }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"ngmodule\", type: AXFormatModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i2.AXFormatPipe, name: \"format\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-master-notification-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXPUserAvatarComponent,\n AXImageModule,\n AXBadgeModule,\n AXFormatModule,\n ], template: \"<div\\n class=\\\"notification-item ax-text-start\\\"\\n [id]=\\\"data().id\\\"\\n (click)=\\\"pressNotificationItem(data().id)\\\"\\n [class]=\\\"[data().template.prority, data().readAt ? 'read' : 'unread']\\\"\\n>\\n <div class=\\\"notification-avatar\\\">\\n <axp-user-avatar [size]=\\\"48\\\" [userId]=\\\"data().sender.id\\\"></axp-user-avatar>\\n @if (!data().readAt) {\\n <!-- <div class=\\\"unread-badge\\\"></div> -->\\n }\\n </div>\\n\\n <div class=\\\"notification-content\\\">\\n <div class=\\\"notification-header\\\">\\n <div class=\\\"notification-title\\\">{{ data().sender.fullName || data().title }}</div>\\n <div class=\\\"notification-meta\\\">\\n <!-- @if (data().template.isPinned) {\\n <div class=\\\"pin-notification\\\">\\n <ax-icon>\\n <i class=\\\"fa-solid fa-thumbtack\\\"></i>\\n </ax-icon>\\n </div>\\n } -->\\n <div class=\\\"notification-time\\\">{{ data().createAt | format: 'timeleft' | async }}</div>\\n </div>\\n </div>\\n @if (this.getNotificationContent() && this.getNotificationProvider()) {\\n <div #component></div>\\n } @else {\\n <div class=\\\"notification-body\\\">{{ data().body }}</div>\\n }\\n </div>\\n</div>\\n\", styles: [\".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;backdrop-filter:blur(8px)}.notification-item.read{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))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\\\"\\\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-align:start;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;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 }], propDecorators: { div: [{ type: i0.ViewChild, args: ['component', { ...{ read: ViewContainerRef }, isSignal: true }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: \"data\", required: true }] }], onPressNotificationItem: [{ type: i0.Output, args: [\"onPressNotificationItem\"] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvY29tcG9uZW50cy9hZG1pbi1ub3RpZmljYXRpb24taXRlbS9hZG1pbi1ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsWUFBWSxFQUNaLE1BQU0sRUFDTixhQUFhLEVBQ2IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4Q0FB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YTt3QkFDYixhQUFhO3dCQUNiLGNBQWM7cUJBQ2Y7aUVBSWUsV0FBVyxPQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFBFeGVjdXRlQ29tbWFuZCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBVc2VyQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBpbnB1dEJpbmRpbmcsXG4gIG91dHB1dCxcbiAgb3V0cHV0QmluZGluZyxcbiAgdmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUE5vdGlmaWNhdGlvbkRlZmluaXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL25vdGlmaWNhdGlvbi1kZWZpbml0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhNTm90aWZpY2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC50eXBlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZG1pbi1ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFBVc2VyQXZhdGFyQ29tcG9uZW50LFxuICAgIEFYSW1hZ2VNb2R1bGUsXG4gICAgQVhCYWRnZU1vZHVsZSxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25JdGVtQ29tcG9uZW50IHtcbiAgbm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UgPSBpbmplY3QoQVhQTm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UpO1xuICBkaXYgPSB2aWV3Q2hpbGQoJ2NvbXBvbmVudCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KTtcbiAgYWRtaW5TbG90ID0gaW5qZWN0KEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCwge1xuICAgIG9wdGlvbmFsOiB0cnVlLFxuICB9KTtcblxuICBkYXRhID0gaW5wdXQucmVxdWlyZWQ8QVhNTm90aWZpY2F0aW9uSXRlbT4oKTtcbiAgb25QcmVzc05vdGlmaWNhdGlvbkl0ZW0gPSBvdXRwdXQ8c3RyaW5nPigpO1xuXG4gIHByZXNzTm90aWZpY2F0aW9uSXRlbShpZDogc3RyaW5nKSB7XG4gICAgdGhpcy5vblByZXNzTm90aWZpY2F0aW9uSXRlbS5lbWl0KGlkKTtcbiAgICB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCk/LmV4ZWN1dGUoeyBuYW1lOiAnY2xpY2snIH0sIHRoaXMuZGF0YSgpKTtcbiAgICB0aGlzLmFkbWluU2xvdD8ucG9wb3ZlcigpPy5jbG9zZSgpO1xuICB9XG5cbiAgZ2V0Tm90aWZpY2F0aW9uUHJvdmlkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uRGVmaW5pdGlvblNlcnZpY2UucmVzb2x2ZSh0aGlzLmRhdGEoKS50eXBlKTtcbiAgfVxuXG4gIGdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCk7XG4gICAgcmV0dXJuIHByb3ZpZGVyPy5jb250ZW50Py4oKTtcbiAgfVxuXG4gIG9uQWN0aW9uKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kKSB7XG4gICAgdGhpcy5nZXROb3RpZmljYXRpb25Qcm92aWRlcigpPy5leGVjdXRlKGNvbW1hbmQsIHRoaXMuZGF0YSgpKTtcbiAgICB0aGlzLmFkbWluU2xvdD8ucG9wb3ZlcigpPy5jbG9zZSgpO1xuICB9XG5cbiAgYXN5bmMgcmVuZGVyQ29tcG9uZW50KCkge1xuICAgIGlmICh0aGlzLmdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSAmJiB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCkpIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGF3YWl0IHRoaXMuZ2V0Tm90aWZpY2F0aW9uQ29udGVudCgpO1xuICAgICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgICB0aGlzLmRpdigpPy5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50LCB7XG4gICAgICAgICAgYmluZGluZ3M6IFtcbiAgICAgICAgICAgIGlucHV0QmluZGluZygnaXRlbScsIHRoaXMuZGF0YSksXG4gICAgICAgICAgICBvdXRwdXRCaW5kaW5nKCdleGVjdXRlJywgKGU6IEFYUEV4ZWN1dGVDb21tYW5kKSA9PiB0aGlzLm9uQWN0aW9uKGUpKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYWYgPSBhZnRlck5leHRSZW5kZXIoKCkgPT4gdGhpcy5yZW5kZXJDb21wb25lbnQoKSk7XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW0gYXgtdGV4dC1zdGFydFwiXG4gIFtpZF09XCJkYXRhKCkuaWRcIlxuICAoY2xpY2spPVwicHJlc3NOb3RpZmljYXRpb25JdGVtKGRhdGEoKS5pZClcIlxuICBbY2xhc3NdPVwiW2RhdGEoKS50ZW1wbGF0ZS5wcm9yaXR5LCBkYXRhKCkucmVhZEF0ID8gJ3JlYWQnIDogJ3VucmVhZCddXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1hdmF0YXJcIj5cbiAgICA8YXhwLXVzZXItYXZhdGFyIFtzaXplXT1cIjQ4XCIgW3VzZXJJZF09XCJkYXRhKCkuc2VuZGVyLmlkXCI+PC9heHAtdXNlci1hdmF0YXI+XG4gICAgQGlmICghZGF0YSgpLnJlYWRBdCkge1xuICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwidW5yZWFkLWJhZGdlXCI+PC9kaXY+IC0tPlxuICAgIH1cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1oZWFkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb24tdGl0bGVcIj57eyBkYXRhKCkuc2VuZGVyLmZ1bGxOYW1lIHx8IGRhdGEoKS50aXRsZSB9fTwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1tZXRhXCI+XG4gICAgICAgIDwhLS0gQGlmIChkYXRhKCkudGVtcGxhdGUuaXNQaW5uZWQpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGluLW5vdGlmaWNhdGlvblwiPlxuICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtdGh1bWJ0YWNrXCI+PC9pPlxuICAgICAgICAgICAgPC9heC1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLXRpbWVcIj57eyBkYXRhKCkuY3JlYXRlQXQgfCBmb3JtYXQ6ICd0aW1lbGVmdCcgfCBhc3luYyB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGlmICh0aGlzLmdldE5vdGlmaWNhdGlvbkNvbnRlbnQoKSAmJiB0aGlzLmdldE5vdGlmaWNhdGlvblByb3ZpZGVyKCkpIHtcbiAgICAgIDxkaXYgI2NvbXBvbmVudD48L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb24tYm9keVwiPnt7IGRhdGEoKS5ib2R5IH19PC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, input, output, signal, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { AXMNotificationConnectorService } from '../../shared/notification-management.service';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/tabs\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/badge\";\nexport class AXMAdminNotificationPanelComponent {\n constructor() {\n //#region ---- Outputs ----\n this.onNewNotfication = output();\n //#endregion\n //#region ---- Services & Dependencies ----\n this.notificationConnector = inject(AXMNotificationConnectorService);\n this.toastService = inject(AXToastService);\n this.router = inject(Router);\n this.sessionService = inject(AXPSessionService);\n //#endregion\n //#region ---- Signals & Inputs ----\n /**\n * Tabs provided by the parent (custom categories). The component will prepend\n * \"Unread\" and \"All\" before these tabs.\n */\n this.providedTabs = input([], ...(ngDevMode ? [{ debugName: \"providedTabs\" }] : []));\n // Use store's signals directly\n this.notifications = this.notificationConnector.notificationList;\n this.totalNotifications = this.notificationConnector.total;\n this.isLoading = this.notificationConnector.loading;\n this.errorMessage = this.notificationConnector.errorMessage;\n // Default active tab is Unread\n this.activeTab = signal('Unread', ...(ngDevMode ? [{ debugName: \"activeTab\" }] : []));\n //#endregion\n //#region ---- Computed Properties ----\n this.tabItems = computed(() => this.getTabItems(this.notifications(), this.providedTabs()), ...(ngDevMode ? [{ debugName: \"tabItems\", equal: (a, b) => JSON.stringify(a) === JSON.stringify(b) }] : [{\n equal: (a, b) => JSON.stringify(a) === JSON.stringify(b),\n }]));\n this.NewNotification = computed(() => this.getNewNotification(this.tabItems()), ...(ngDevMode ? [{ debugName: \"NewNotification\" }] : []));\n this.NewNotificationEffect = effect(() => this.onNewNotfication.emit(this.NewNotification()), ...(ngDevMode ? [{ debugName: \"NewNotificationEffect\" }] : []));\n }\n changeActiveTab(tab) {\n this.activeTab.set(tab);\n }\n //#endregion\n ngOnInit() {\n this.loadNotification();\n }\n async loadNotification() {\n try {\n await this.notificationConnector.getList();\n }\n catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n //#region ---- Utility Methods ----\n getTabItems(notifications, userTabs) {\n // Base when no notifications loaded yet\n if (!notifications) {\n const base = [\n { text: 'Unread', count: 0 },\n { text: 'All', count: 0 },\n ];\n return base.concat((userTabs ?? []).map((t) => ({ text: t, count: 0 })));\n }\n // Count unread by category\n const unreadCountByCategory = new Map();\n for (const notification of notifications) {\n const category = notification.template.category;\n if (!unreadCountByCategory.has(category)) {\n unreadCountByCategory.set(category, 0);\n }\n if (!notification.readAt) {\n unreadCountByCategory.set(category, (unreadCountByCategory.get(category) ?? 0) + 1);\n }\n }\n const unreadTotal = Array.from(unreadCountByCategory.values()).reduce((a, b) => a + b, 0);\n // Keep previous behavior: 'All' badge shows total UNREAD across all categories\n const allTotal = unreadTotal;\n // Determine which tabs to show after Unread and All\n let finalUserTabs = userTabs ?? [];\n if (finalUserTabs.length === 0) {\n // Fallback to discovered categories if parent has not provided tabs\n finalUserTabs = Array.from(unreadCountByCategory.keys());\n }\n // Ensure uniqueness and preserve provided order\n const seen = new Set(['Unread', 'All']);\n const userCategoryTabs = finalUserTabs.filter((t) => {\n if (seen.has(t))\n return false;\n seen.add(t);\n return true;\n });\n const result = [\n { text: 'Unread', count: unreadTotal },\n { text: 'All', count: allTotal },\n ...userCategoryTabs.map((category) => ({\n text: category,\n count: unreadCountByCategory.get(category) ?? 0,\n })),\n ];\n return result;\n }\n getNewNotification(data) {\n // Use the Unread tab as the single source of truth for new notifications\n return data.find((tab) => tab.text === 'Unread')?.count ?? 0;\n }\n getNotificationItems(category) {\n const list = this.notifications();\n if (!list)\n return [];\n if (category === 'All') {\n return list;\n }\n if (category === 'Unread') {\n return list.filter((item) => !item.readAt);\n }\n return list.filter((item) => item.template.category === category);\n }\n /**\n * Mark a notification as read or unread (toggle read status)\n */\n async markAsRead(id) {\n try {\n await this.notificationConnector.markAsRead({ id: [id] });\n }\n catch (error) {\n console.error('Failed to toggle notification read status:', error);\n }\n }\n /**\n * Mark all unread notifications as read\n */\n async markAllAsRead() {\n try {\n await this.notificationConnector.markAllAsRead();\n }\n catch (error) {\n console.error('Failed to mark all notifications as read:', error);\n }\n }\n viewAllNotifications() {\n this.router.navigate([`${this.sessionService.application?.name}/notifications`]);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationPanelComponent, isStandalone: true, selector: \"axm-admin-notification-panel\", inputs: { providedTabs: { classPropertyName: \"providedTabs\", publicName: \"providedTabs\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onNewNotfication: \"onNewNotfication\" }, ngImport: i0, template: \"<div class=\\\"ax-p-4 ax-flex ax-justify-between ax-items-center\\\">\\n <span class=\\\"ax-text-xl\\\">Notifications</span>\\n <ax-button color=\\\"default\\\" look=\\\"blank\\\">\\n <ax-icon>\\n <i class=\\\"fa-regular fa-gear fa-lg\\\"></i>\\n </ax-icon>\\n </ax-button>\\n</div>\\n<ax-tabs [content]=\\\"cons\\\" look=\\\"with-line\\\" location=\\\"bottom\\\">\\n @for (tab of tabItems(); track tab.text) {\\n <ax-tab-item [text]=\\\"tab.text\\\" [active]=\\\"activeTab() === tab.text\\\" (activeChange)=\\\"changeActiveTab(tab.text)\\\">\\n <ax-suffix>\\n @if (tab.count && tab.text === 'Unread') {\\n <ax-badge [color]=\\\"activeTab() === tab.text ? 'primary' : 'ghost'\\\" [text]=\\\"tab.count.toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n <ax-content>\\n <div class=\\\"ax-max-h-[50vh] md:ax-w-[32rem] ax-overflow-y-auto\\\">\\n @if (getNotificationItems(tab.text).length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-gap-2 ax-p-6\\\">\\n <i class=\\\"fa-regular fa-bell-slash ax-text-2xl\\\"></i>\\n <div class=\\\"ax-text-sm\\\">No notifications</div>\\n </div>\\n } @else {\\n @for (notif of getNotificationItems(tab.text); track notif.id) {\\n <axp-master-notification-item\\n [data]=\\\"notif\\\"\\n (onPressNotificationItem)=\\\"markAsRead($event)\\\"\\n ></axp-master-notification-item>\\n }\\n }\\n </div>\\n <div class=\\\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\\\">\\n <ax-button\\n [disabled]=\\\"NewNotification() === 0\\\"\\n [color]=\\\"'default'\\\"\\n text=\\\"Mark all as read\\\"\\n (onClick)=\\\"markAllAsRead()\\\"\\n ></ax-button>\\n <ax-button color=\\\"primary\\\" text=\\\"View all notifications\\\" (onClick)=\\\"viewAllNotifications()\\\"></ax-button>\\n </div>\\n </ax-content>\\n </ax-tab-item>\\n }\\n</ax-tabs>\\n\\n<ng-template [axTabContent] #cons=\\\"axTabContent\\\"></ng-template>\\n\", dependencies: [{ 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: AXTabsModule }, { kind: \"component\", type: i2.AXTabsComponent, selector: \"ax-tabs\", inputs: [\"look\", \"location\", \"fitParent\", \"minWidth\", \"content\"], outputs: [\"onActiveTabChanged\"] }, { kind: \"component\", type: i2.AXTabItemComponent, selector: \"ax-tab-item\", inputs: [\"disabled\", \"text\", \"key\", \"headerTemplate\", \"active\"], outputs: [\"disabledChange\", \"onClick\", \"onBlur\", \"onFocus\", \"activeChange\"] }, { kind: \"directive\", type: i2.AXTabContentDirective, selector: \"[axTabContent]\", inputs: [\"axTabContent\"], exportAs: [\"axTabContent\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i4.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXPopoverModule }, { kind: \"component\", type: AXMAdminNotificationItemComponent, selector: \"axp-master-notification-item\", inputs: [\"data\"], outputs: [\"onPressNotificationItem\"] }, { kind: \"ngmodule\", type: AXFormatModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationPanelComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-admin-notification-panel', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n AXButtonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXFormatModule,\n ], template: \"<div class=\\\"ax-p-4 ax-flex ax-justify-between ax-items-center\\\">\\n <span class=\\\"ax-text-xl\\\">Notifications</span>\\n <ax-button color=\\\"default\\\" look=\\\"blank\\\">\\n <ax-icon>\\n <i class=\\\"fa-regular fa-gear fa-lg\\\"></i>\\n </ax-icon>\\n </ax-button>\\n</div>\\n<ax-tabs [content]=\\\"cons\\\" look=\\\"with-line\\\" location=\\\"bottom\\\">\\n @for (tab of tabItems(); track tab.text) {\\n <ax-tab-item [text]=\\\"tab.text\\\" [active]=\\\"activeTab() === tab.text\\\" (activeChange)=\\\"changeActiveTab(tab.text)\\\">\\n <ax-suffix>\\n @if (tab.count && tab.text === 'Unread') {\\n <ax-badge [color]=\\\"activeTab() === tab.text ? 'primary' : 'ghost'\\\" [text]=\\\"tab.count.toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n <ax-content>\\n <div class=\\\"ax-max-h-[50vh] md:ax-w-[32rem] ax-overflow-y-auto\\\">\\n @if (getNotificationItems(tab.text).length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-gap-2 ax-p-6\\\">\\n <i class=\\\"fa-regular fa-bell-slash ax-text-2xl\\\"></i>\\n <div class=\\\"ax-text-sm\\\">No notifications</div>\\n </div>\\n } @else {\\n @for (notif of getNotificationItems(tab.text); track notif.id) {\\n <axp-master-notification-item\\n [data]=\\\"notif\\\"\\n (onPressNotificationItem)=\\\"markAsRead($event)\\\"\\n ></axp-master-notification-item>\\n }\\n }\\n </div>\\n <div class=\\\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\\\">\\n <ax-button\\n [disabled]=\\\"NewNotification() === 0\\\"\\n [color]=\\\"'default'\\\"\\n text=\\\"Mark all as read\\\"\\n (onClick)=\\\"markAllAsRead()\\\"\\n ></ax-button>\\n <ax-button color=\\\"primary\\\" text=\\\"View all notifications\\\" (onClick)=\\\"viewAllNotifications()\\\"></ax-button>\\n </div>\\n </ax-content>\\n </ax-tab-item>\\n }\\n</ax-tabs>\\n\\n<ng-template [axTabContent] #cons=\\\"axTabContent\\\"></ng-template>\\n\" }]\n }], propDecorators: { onNewNotfication: [{ type: i0.Output, args: [\"onNewNotfication\"] }], providedTabs: [{ type: i0.Input, args: [{ isSignal: true, alias: \"providedTabs\", required: false }] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC9hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxF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Q0FBQyw0Q0FBNEMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRSxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ08sS0FBSyxDQUFDLGFBQWE7UUFDM0IsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbkQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDJDQUEyQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BFLENBQUM7SUFDSCxDQUFDO0lBRVMsb0JBQW9CO1FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDOytHQXhLVSxrQ0FBa0M7bUdBQWxDLGtDQUFrQyxvU0N0Qy9DLCtnRUErQ0EsMkNEbEJJLGNBQWMsNlhBQ2QsWUFBWSwyaUJBQ1osaUJBQWlCLHNWQUNqQixhQUFhLHlJQUNiLGVBQWUsK0JBQ2YsaUNBQWlDLGdJQUNqQyxjQUFjOzs0RkFHTCxrQ0FBa0M7a0JBZDlDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUV2Qix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixpQ0FBaUM7d0JBQ2pDLGNBQWM7cUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RvYXN0JztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeSwgQVhNTm90aWZpY2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL3NoYXJlZC9ub3RpZmljYXRpb24tbWFuYWdlbWVudC50eXBlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtL2FkbWluLW5vdGlmaWNhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheG0tYWRtaW4tbm90aWZpY2F0aW9uLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUYWJzTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYQmFkZ2VNb2R1bGUsXG4gICAgQVhQb3BvdmVyTW9kdWxlLFxuICAgIEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25QYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vI3JlZ2lvbiAtLS0tICAgT3V0cHV0cyAgIC0tLS1cblxuICBvbk5ld05vdGZpY2F0aW9uID0gb3V0cHV0PG51bWJlcj4oKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFNlcnZpY2VzICYgRGVwZW5kZW5jaWVzICAgLS0tLVxuXG4gIHByaXZhdGUgbm90aWZpY2F0aW9uQ29ubmVjdG9yID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICBwcml2YXRlIHRvYXN0U2VydmljZSA9IGluamVjdChBWFRvYXN0U2VydmljZSk7XG4gIHByaXZhdGUgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU2lnbmFscyAmIElucHV0cyAgIC0tLS1cblxuICAvKipcbiAgICogVGFicyBwcm92aWRlZCBieSB0aGUgcGFyZW50IChjdXN0b20gY2F0ZWdvcmllcykuIFRoZSBjb21wb25lbnQgd2lsbCBwcmVwZW5kXG4gICAqIFwiVW5yZWFkXCIgYW5kIFwiQWxsXCIgYmVmb3JlIHRoZXNlIHRhYnMuXG4gICAqL1xuICBwcm92aWRlZFRhYnMgPSBpbnB1dDxBWE1Ob3RpZmljYXRpb25DYXRlZ29yeVtdPihbXSk7XG5cbiAgLy8gVXNlIHN0b3JlJ3Mgc2lnbmFscyBkaXJlY3RseVxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm90aWZpY2F0aW9ucyA9IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLm5vdGlmaWNhdGlvbkxpc3Q7XG4gIHByb3RlY3RlZCByZWFkb25seSB0b3RhbE5vdGlmaWNhdGlvbnMgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci50b3RhbDtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzTG9hZGluZyA9IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmxvYWRpbmc7XG4gIHByb3RlY3RlZCByZWFkb25seSBlcnJvck1lc3NhZ2UgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5lcnJvck1lc3NhZ2U7XG5cbiAgLy8gRGVmYXVsdCBhY3RpdmUgdGFiIGlzIFVucmVhZFxuICBhY3RpdmVUYWIgPSBzaWduYWw8QVhNVGFiRGF0YVRleHQ+KCdVbnJlYWQnKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIENvbXB1dGVkIFByb3BlcnRpZXMgICAtLS0tXG5cbiAgdGFiSXRlbXMgPSBjb21wdXRlZDxBWFRhYkRhdGFbXT4oKCkgPT4gdGhpcy5nZXRUYWJJdGVtcyh0aGlzLm5vdGlmaWNhdGlvbnMoKSwgdGhpcy5wcm92aWRlZFRhYnMoKSksIHtcbiAgICBlcXVhbDogKGEsIGIpID0+IEpTT04uc3RyaW5naWZ5KGEpID09PSBKU09OLnN0cmluZ2lmeShiKSxcbiAgfSk7XG5cbiAgY2hhbmdlQWN0aXZlVGFiKHRhYjogQVhNVGFiRGF0YVRleHQpIHtcbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiKTtcbiAgfVxuXG4gIE5ld05vdGlmaWNhdGlvbiA9IGNvbXB1dGVkPG51bWJlcj4oKCkgPT4gdGhpcy5nZXROZXdOb3RpZmljYXRpb24odGhpcy50YWJJdGVtcygpKSk7XG4gIE5ld05vdGlmaWNhdGlvbkVmZmVjdCA9IGVmZmVjdCgoKSA9PiB0aGlzLm9uTmV3Tm90ZmljYXRpb24uZW1pdCh0aGlzLk5ld05vdGlmaWNhdGlvbigpKSk7XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkTm90aWZpY2F0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWROb3RpZmljYXRpb24oKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmdldExpc3QoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6ICdGYWlsZWQgdG8gbG9hZCBub3RpZmljYXRpb25zIScsXG4gICAgICAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgIHRpbWVPdXQ6IDMwMDAsXG4gICAgICAgIHRpbWVPdXRQcm9ncmVzczogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgVXRpbGl0eSBNZXRob2RzICAgLS0tLVxuXG4gIHByaXZhdGUgZ2V0VGFiSXRlbXMoXG4gICAgbm90aWZpY2F0aW9uczogQVhNTm90aWZpY2F0aW9uSXRlbVtdIHwgdW5kZWZpbmVkLFxuICAgIHVzZXJUYWJzOiBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeVtdLFxuICApOiBBWFRhYkRhdGFbXSB7XG4gICAgLy8gQmFzZSB3aGVuIG5vIG5vdGlmaWNhdGlvbnMgbG9hZGVkIHlldFxuICAgIGlmICghbm90aWZpY2F0aW9ucykge1xuICAgICAgY29uc3QgYmFzZTogQVhUYWJEYXRhW10gPSBbXG4gICAgICAgIHsgdGV4dDogJ1VucmVhZCcsIGNvdW50OiAwIH0sXG4gICAgICAgIHsgdGV4dDogJ0FsbCcsIGNvdW50OiAwIH0sXG4gICAgICBdO1xuICAgICAgcmV0dXJuIGJhc2UuY29uY2F0KCh1c2VyVGFicyA/PyBbXSkubWFwKCh0KSA9PiAoeyB0ZXh0OiB0LCBjb3VudDogMCB9KSkpO1xuICAgIH1cblxuICAgIC8vIENvdW50IHVucmVhZCBieSBjYXRlZ29yeVxuICAgIGNvbnN0IHVucmVhZENvdW50QnlDYXRlZ29yeSA9IG5ldyBNYXA8QVhNTm90aWZpY2F0aW9uQ2F0ZWdvcnksIG51bWJlcj4oKTtcbiAgICBmb3IgKGNvbnN0IG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25zKSB7XG4gICAgICBjb25zdCBjYXRlZ29yeSA9IG5vdGlmaWNhdGlvbi50ZW1wbGF0ZS5jYXRlZ29yeTtcbiAgICAgIGlmICghdW5yZWFkQ291bnRCeUNhdGVnb3J5LmhhcyhjYXRlZ29yeSkpIHtcbiAgICAgICAgdW5yZWFkQ291bnRCeUNhdGVnb3J5LnNldChjYXRlZ29yeSwgMCk7XG4gICAgICB9XG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5yZWFkQXQpIHtcbiAgICAgICAgdW5yZWFkQ291bnRCeUNhdGVnb3J5LnNldChjYXRlZ29yeSwgKHVucmVhZENvdW50QnlDYXRlZ29yeS5nZXQoY2F0ZWdvcnkpID8/IDApICsgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgdW5yZWFkVG90YWwgPSBBcnJheS5mcm9tKHVucmVhZENvdW50QnlDYXRlZ29yeS52YWx1ZXMoKSkucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7XG4gICAgLy8gS2VlcCBwcmV2aW91cyBiZWhhdmlvcjogJ0FsbCcgYmFkZ2Ugc2hvd3MgdG90YWwgVU5SRUFEIGFjcm9zcyBhbGwgY2F0ZWdvcmllc1xuICAgIGNvbnN0IGFsbFRvdGFsID0gdW5yZWFkVG90YWw7XG5cbiAgICAvLyBEZXRlcm1pbmUgd2hpY2ggdGFicyB0byBzaG93IGFmdGVyIFVucmVhZCBhbmQgQWxsXG4gICAgbGV0IGZpbmFsVXNlclRhYnMgPSB1c2VyVGFicyA/PyBbXTtcbiAgICBpZiAoZmluYWxVc2VyVGFicy5sZW5ndGggPT09IDApIHtcbiAgICAgIC8vIEZhbGxiYWNrIHRvIGRpc2NvdmVyZWQgY2F0ZWdvcmllcyBpZiBwYXJlbnQgaGFzIG5vdCBwcm92aWRlZCB0YWJzXG4gICAgICBmaW5hbFVzZXJUYWJzID0gQXJyYXkuZnJvbSh1bnJlYWRDb3VudEJ5Q2F0ZWdvcnkua2V5cygpKTtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgdW5pcXVlbmVzcyBhbmQgcHJlc2VydmUgcHJvdmlkZWQgb3JkZXJcbiAgICBjb25zdCBzZWVuID0gbmV3IFNldDxzdHJpbmc+KFsnVW5yZWFkJywgJ0FsbCddKTtcbiAgICBjb25zdCB1c2VyQ2F0ZWdvcnlUYWJzID0gZmluYWxVc2VyVGFicy5maWx0ZXIoKHQpID0+IHtcbiAgICAgIGlmIChzZWVuLmhhcyh0KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgc2Vlbi5hZGQodCk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc3VsdDogQVhUYWJEYXRhW10gPSBbXG4gICAgICB7IHRleHQ6ICdVbnJlYWQnLCBjb3VudDogdW5yZWFkVG90YWwgfSxcbiAgICAgIHsgdGV4dDogJ0FsbCcsIGNvdW50OiBhbGxUb3RhbCB9LFxuICAgICAgLi4udXNlckNhdGVnb3J5VGFicy5tYXAoKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICB0ZXh0OiBjYXRlZ29yeSBhcyBBWE1UYWJEYXRhVGV4dCxcbiAgICAgICAgY291bnQ6IHVucmVhZENvdW50QnlDYXRlZ29yeS5nZXQoY2F0ZWdvcnkpID8/IDAsXG4gICAgICB9KSksXG4gICAgXTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldE5ld05vdGlmaWNhdGlvbihkYXRhOiBBWFRhYkRhdGFbXSk6IG51bWJlciB7XG4gICAgLy8gVXNlIHRoZSBVbnJlYWQgdGFiIGFzIHRoZSBzaW5nbGUgc291cmNlIG9mIHRydXRoIGZvciBuZXcgbm90aWZpY2F0aW9uc1xuICAgIHJldHVybiBkYXRhLmZpbmQoKHRhYikgPT4gdGFiLnRleHQgPT09ICdVbnJlYWQnKT8uY291bnQgPz8gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXROb3RpZmljYXRpb25JdGVtcyhjYXRlZ29yeTogQVhNVGFiRGF0YVRleHQpOiBBWE1Ob3RpZmljYXRpb25JdGVtW10ge1xuICAgIGNvbnN0IGxpc3QgPSB0aGlzLm5vdGlmaWNhdGlvbnMoKTtcbiAgICBpZiAoIWxpc3QpIHJldHVybiBbXTtcbiAgICBpZiAoY2F0ZWdvcnkgPT09ICdBbGwnKSB7XG4gICAgICByZXR1cm4gbGlzdDtcbiAgICB9XG4gICAgaWYgKGNhdGVnb3J5ID09PSAnVW5yZWFkJykge1xuICAgICAgcmV0dXJuIGxpc3QuZmlsdGVyKChpdGVtKSA9PiAhaXRlbS5yZWFkQXQpO1xuICAgIH1cbiAgICByZXR1cm4gbGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0udGVtcGxhdGUuY2F0ZWdvcnkgPT09IGNhdGVnb3J5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIGEgbm90aWZpY2F0aW9uIGFzIHJlYWQgb3IgdW5yZWFkICh0b2dnbGUgcmVhZCBzdGF0dXMpXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FzUmVhZChpZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLm1hcmtBc1JlYWQoeyBpZDogW2lkXSB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHRvZ2dsZSBub3RpZmljYXRpb24gcmVhZCBzdGF0dXM6JywgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIGFsbCB1bnJlYWQgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FsbEFzUmVhZCgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IubWFya0FsbEFzUmVhZCgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmlld0FsbE5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuc2Vzc2lvblNlcnZpY2UuYXBwbGljYXRpb24/Lm5hbWV9L25vdGlmaWNhdGlvbnNgXSk7XG4gIH1cbn1cblxuaW50ZXJmYWNlIEFYVGFiRGF0YSB7XG4gIHRleHQ6IEFYTVRhYkRhdGFUZXh0O1xuICBjb3VudDogbnVtYmVyO1xufVxudHlwZSBBWE1UYWJEYXRhVGV4dCA9ICdVbnJlYWQnIHwgJ0FsbCcgfCBBWE1Ob3RpZmljYXRpb25DYXRlZ29yeTtcbiIsIjxkaXYgY2xhc3M9XCJheC1wLTQgYXgtZmxleCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtaXRlbXMtY2VudGVyXCI+XG4gIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC14bFwiPk5vdGlmaWNhdGlvbnM8L3NwYW4+XG4gIDxheC1idXR0b24gY29sb3I9XCJkZWZhdWx0XCIgbG9vaz1cImJsYW5rXCI+XG4gICAgPGF4LWljb24+XG4gICAgICA8aSBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtZ2VhciBmYS1sZ1wiPjwvaT5cbiAgICA8L2F4LWljb24+XG4gIDwvYXgtYnV0dG9uPlxuPC9kaXY+XG48YXgtdGFicyBbY29udGVudF09XCJjb25zXCIgbG9vaz1cIndpdGgtbGluZVwiIGxvY2F0aW9uPVwiYm90dG9tXCI+XG4gIEBmb3IgKHRhYiBvZiB0YWJJdGVtcygpOyB0cmFjayB0YWIudGV4dCkge1xuICAgIDxheC10YWItaXRlbSBbdGV4dF09XCJ0YWIudGV4dFwiIFthY3RpdmVdPVwiYWN0aXZlVGFiKCkgPT09IHRhYi50ZXh0XCIgKGFjdGl2ZUNoYW5nZSk9XCJjaGFuZ2VBY3RpdmVUYWIodGFiLnRleHQpXCI+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICBAaWYgKHRhYi5jb3VudCAmJiB0YWIudGV4dCA9PT0gJ1VucmVhZCcpIHtcbiAgICAgICAgICA8YXgtYmFkZ2UgW2NvbG9yXT1cImFjdGl2ZVRhYigpID09PSB0YWIudGV4dCA/ICdwcmltYXJ5JyA6ICdnaG9zdCdcIiBbdGV4dF09XCJ0YWIuY291bnQudG9TdHJpbmcoKVwiPjwvYXgtYmFkZ2U+XG4gICAgICAgIH1cbiAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgPGF4LWNvbnRlbnQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1tYXgtaC1bNTB2aF0gbWQ6YXgtdy1bMzJyZW1dIGF4LW92ZXJmbG93LXktYXV0b1wiPlxuICAgICAgICAgIEBpZiAoZ2V0Tm90aWZpY2F0aW9uSXRlbXModGFiLnRleHQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWdhcC0yIGF4LXAtNlwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtYmVsbC1zbGFzaCBheC10ZXh0LTJ4bFwiPjwvaT5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQtc21cIj5ObyBub3RpZmljYXRpb25zPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBmb3IgKG5vdGlmIG9mIGdldE5vdGlmaWNhdGlvbkl0ZW1zKHRhYi50ZXh0KTsgdHJhY2sgbm90aWYuaWQpIHtcbiAgICAgICAgICAgICAgPGF4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW1cbiAgICAgICAgICAgICAgICBbZGF0YV09XCJub3RpZlwiXG4gICAgICAgICAgICAgICAgKG9uUHJlc3NOb3RpZmljYXRpb25JdGVtKT1cIm1hcmtBc1JlYWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgID48L2F4cC1tYXN0ZXItbm90aWZpY2F0aW9uLWl0ZW0+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTQgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LXAtNCBheC1ib3JkZXItdCBheC1ib3JkZXItZGVmYXVsdFwiPlxuICAgICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJOZXdOb3RpZmljYXRpb24oKSA9PT0gMFwiXG4gICAgICAgICAgICBbY29sb3JdPVwiJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgIHRleHQ9XCJNYXJrIGFsbCBhcyByZWFkXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cIm1hcmtBbGxBc1JlYWQoKVwiXG4gICAgICAgICAgPjwvYXgtYnV0dG9uPlxuICAgICAgICAgIDxheC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgdGV4dD1cIlZpZXcgYWxsIG5vdGlmaWNhdGlvbnNcIiAob25DbGljayk9XCJ2aWV3QWxsTm90aWZpY2F0aW9ucygpXCI+PC9heC1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1jb250ZW50PlxuICAgIDwvYXgtdGFiLWl0ZW0+XG4gIH1cbjwvYXgtdGFicz5cblxuPG5nLXRlbXBsYXRlIFtheFRhYkNvbnRlbnRdICNjb25zPVwiYXhUYWJDb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiJdfQ==","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport { ChangeDetectionStrategy, Component, signal, viewChild } from '@angular/core';\nimport { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\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/badge\";\nimport * as i4 from \"@acorex/components/popover\";\nexport class AXMAdminNotificationSlotComponent {\n constructor() {\n this.totalNewNotification = signal(0, ...(ngDevMode ? [{ debugName: \"totalNewNotification\" }] : []));\n this.popover = viewChild(AXPopoverComponent, ...(ngDevMode ? [{ debugName: \"popover\" }] : []));\n }\n setTotalNewNotification(value) {\n this.totalNewNotification.set(value);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXMAdminNotificationSlotComponent, isStandalone: true, selector: \"ng-component\", viewQueries: [{ propertyName: \"popover\", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], ngImport: i0, template: \"<ax-button class=\\\"ax-relative\\\" color=\\\"primary\\\" #notification>\\n <ax-icon>\\n <i class=\\\"fa-regular fa-bell\\\"></i>\\n </ax-icon>\\n <ax-suffix class=\\\"ax-absolute ax-top-0 ax-left-1/2\\\">\\n @if (totalNewNotification()) {\\n <ax-badge color=\\\"success\\\" [text]=\\\"totalNewNotification().toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n</ax-button>\\n<ax-popover [target]=\\\"notification\\\" [openOn]=\\\"'toggle'\\\" [closeOn]=\\\"'clickOut'\\\" [adaptivityEnabled]=\\\"true\\\">\\n <div class=\\\"ax-bg-lightest ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\\\">\\n <axm-admin-notification-panel (onNewNotfication)=\\\"setTotalNewNotification($event)\\\"> </axm-admin-notification-panel>\\n </div>\\n</ax-popover>\\n\", dependencies: [{ 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: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i3.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXPopoverModule }, { kind: \"component\", type: i4.AXPopoverComponent, selector: \"ax-popover\", inputs: [\"width\", \"disabled\", \"offsetX\", \"offsetY\", \"target\", \"placement\", \"content\", \"openOn\", \"closeOn\", \"hasBackdrop\", \"openAfter\", \"closeAfter\", \"backdropClass\", \"panelClass\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"component\", type: AXMAdminNotificationPanelComponent, selector: \"axm-admin-notification-panel\", inputs: [\"providedTabs\"], outputs: [\"onNewNotfication\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMAdminNotificationSlotComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonModule, AXDecoratorModule, AXBadgeModule, AXPopoverModule, AXMAdminNotificationPanelComponent], template: \"<ax-button class=\\\"ax-relative\\\" color=\\\"primary\\\" #notification>\\n <ax-icon>\\n <i class=\\\"fa-regular fa-bell\\\"></i>\\n </ax-icon>\\n <ax-suffix class=\\\"ax-absolute ax-top-0 ax-left-1/2\\\">\\n @if (totalNewNotification()) {\\n <ax-badge color=\\\"success\\\" [text]=\\\"totalNewNotification().toString()\\\"></ax-badge>\\n }\\n </ax-suffix>\\n</ax-button>\\n<ax-popover [target]=\\\"notification\\\" [openOn]=\\\"'toggle'\\\" [closeOn]=\\\"'clickOut'\\\" [adaptivityEnabled]=\\\"true\\\">\\n <div class=\\\"ax-bg-lightest ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\\\">\\n <axm-admin-notification-panel (onNewNotfication)=\\\"setTotalNewNotification($event)\\\"> </axm-admin-notification-panel>\\n </div>\\n</ax-popover>\\n\" }]\n }], propDecorators: { popover: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXPopoverComponent), { isSignal: true }] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvY29tcG9uZW50cy9hZG1pbi1ub3RpZmljYXRpb24tc2xvdC9hZG1pbi1ub3RpZmljYXRpb24tc2xvdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWpGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7Ozs7O0FBTXBILE1BQU0sT0FBTyxpQ0FBaUM7SUFMOUM7UUFNRSx5QkFBb0IsR0FBRyxNQUFNLENBQVMsQ0FBQyxnRUFBQyxDQUFDO1FBS3pDLFlBQU8sR0FBRyxTQUFTLENBQUMsa0JBQWtCLG1EQUFDLENBQUM7S0FDekM7SUFMQyx1QkFBdUIsQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FKVSxpQ0FBaUM7bUdBQWpDLGlDQUFpQyxpSEFNeEIsa0JBQWtCLGdFQ2xCeEMsb3RCQWVBLDJDRExZLGNBQWMsNlhBQUUsaUJBQWlCLHNWQUFFLGFBQWEseUlBQUUsZUFBZSx3VkFBRSxrQ0FBa0M7OzRGQUVwRyxpQ0FBaUM7a0JBTDdDLFNBQVM7c0NBRVMsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGtDQUFrQyxDQUFDO3lGQVE1RixrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUG9wb3ZlckNvbXBvbmVudCwgQVhQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBzaWduYWwsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQWRtaW5Ob3RpZmljYXRpb25QYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL2FkbWluLW5vdGlmaWNhdGlvbi1wYW5lbC9hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwuY29tcG9uZW50JztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0FYQnV0dG9uTW9kdWxlLCBBWERlY29yYXRvck1vZHVsZSwgQVhCYWRnZU1vZHVsZSwgQVhQb3BvdmVyTW9kdWxlLCBBWE1BZG1pbk5vdGlmaWNhdGlvblBhbmVsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50IHtcbiAgdG90YWxOZXdOb3RpZmljYXRpb24gPSBzaWduYWw8bnVtYmVyPigwKTtcbiAgc2V0VG90YWxOZXdOb3RpZmljYXRpb24odmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudG90YWxOZXdOb3RpZmljYXRpb24uc2V0KHZhbHVlKTtcbiAgfVxuXG4gIHBvcG92ZXIgPSB2aWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50KTtcbn1cbiIsIjxheC1idXR0b24gY2xhc3M9XCJheC1yZWxhdGl2ZVwiIGNvbG9yPVwicHJpbWFyeVwiICNub3RpZmljYXRpb24+XG4gIDxheC1pY29uPlxuICAgIDxpIGNsYXNzPVwiZmEtcmVndWxhciBmYS1iZWxsXCI+PC9pPlxuICA8L2F4LWljb24+XG4gIDxheC1zdWZmaXggY2xhc3M9XCJheC1hYnNvbHV0ZSBheC10b3AtMCBheC1sZWZ0LTEvMlwiPlxuICAgIEBpZiAodG90YWxOZXdOb3RpZmljYXRpb24oKSkge1xuICAgICAgPGF4LWJhZGdlIGNvbG9yPVwic3VjY2Vzc1wiIFt0ZXh0XT1cInRvdGFsTmV3Tm90aWZpY2F0aW9uKCkudG9TdHJpbmcoKVwiPjwvYXgtYmFkZ2U+XG4gICAgfVxuICA8L2F4LXN1ZmZpeD5cbjwvYXgtYnV0dG9uPlxuPGF4LXBvcG92ZXIgW3RhcmdldF09XCJub3RpZmljYXRpb25cIiBbb3Blbk9uXT1cIid0b2dnbGUnXCIgW2Nsb3NlT25dPVwiJ2NsaWNrT3V0J1wiIFthZGFwdGl2aXR5RW5hYmxlZF09XCJ0cnVlXCI+XG4gIDxkaXYgY2xhc3M9XCJheC1iZy1saWdodGVzdCBheC1ib3JkZXIgYXgtYm9yZGVyLWRlZmF1bHQgYXgtcm91bmRlZC1tZCBheC1zaGFkb3ctbWQgYXgtdy1mdWxsXCI+XG4gICAgPGF4bS1hZG1pbi1ub3RpZmljYXRpb24tcGFuZWwgKG9uTmV3Tm90ZmljYXRpb24pPVwic2V0VG90YWxOZXdOb3RpZmljYXRpb24oJGV2ZW50KVwiPiA8L2F4bS1hZG1pbi1ub3RpZmljYXRpb24tcGFuZWw+XG4gIDwvZGl2PlxuPC9heC1wb3BvdmVyPlxuIl19","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPStateMessageComponent } from '@acorex/platform/layout/components';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, computed, effect, inject, output, signal, } from '@angular/core';\nimport { AXMAdminNotificationItemComponent } from '../../../components/admin-notification-item/admin-notification-item.component';\nimport { AXMAdminNotificationSlotComponent } from '../../../components/admin-notification-slot/admin-notification-slot.component';\nimport { AXMNotificationConnectorService } from '../../../shared/notification-management.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/tabs\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/components/badge\";\nimport * as i4 from \"@angular/common\";\nimport * as i5 from \"@acorex/core/translation\";\n/**\n * Notification Widget Component\n * Displays notifications in a card with tabs\n */\nexport class AXPNotificationWidgetViewComponent extends AXPValueWidgetComponent {\n constructor() {\n super();\n // Outputs\n this.notificationClick = output();\n this.markAsRead = output();\n // Dependencies\n this.cdr = inject(ChangeDetectorRef);\n this.datePipe = inject(DatePipe);\n this.notificationConnector = inject(AXMNotificationConnectorService);\n this.toastService = inject(AXToastService);\n // State\n this.activeTab = signal('unread', ...(ngDevMode ? [{ debugName: \"activeTab\" }] : []));\n this.refreshTimerId = null;\n // Configuration\n this.maxItems = computed(() => this.options()?.['maxItems'] ?? 10, ...(ngDevMode ? [{ debugName: \"maxItems\" }] : []));\n this.showAvatar = computed(() => this.options()?.['showAvatar'] ?? true, ...(ngDevMode ? [{ debugName: \"showAvatar\" }] : []));\n this.showDate = computed(() => this.options()?.['showDate'] ?? true, ...(ngDevMode ? [{ debugName: \"showDate\" }] : []));\n this.autoRefresh = computed(() => this.options()?.['autoRefresh'] ?? true, ...(ngDevMode ? [{ debugName: \"autoRefresh\" }] : []));\n this.refreshInterval = computed(() => (this.options()?.['refreshInterval'] ?? 60) * 1000, ...(ngDevMode ? [{ debugName: \"refreshInterval\" }] : [])); // Convert to milliseconds\n // Use store's signals directly\n this.notifications = this.notificationConnector.notificationList;\n this.totalNotifications = this.notificationConnector.total;\n this.isLoading = this.notificationConnector.loading;\n // Computed data\n this.notificationItems = computed(() => {\n const items = this.notifications();\n if (!items?.length)\n return [];\n // Sort by pinned status and date\n const sortedItems = [...items].sort((a, b) => {\n if (a.template.isPinned === b.template.isPinned) {\n return new Date(b.createAt).getTime() - new Date(a.createAt).getTime();\n }\n return a.template.isPinned ? -1 : 1;\n });\n // Filter by active tab\n const filtered = this.activeTab() === 'unread' ? sortedItems.filter((n) => !n.readAt) : sortedItems;\n return filtered.slice(0, this.maxItems());\n }, ...(ngDevMode ? [{ debugName: \"notificationItems\" }] : []));\n /**\n * Bridge click from admin item (emits notification id)\n */\n this.onAdminItemClick = (id) => {\n return;\n // const item = this.notifications().find((n) => n.id === id);\n // if (!item) return;\n // this.onNotificationClick(item);\n };\n // Watch for changes to auto-refresh settings\n effect(() => {\n this.setupAutoRefresh();\n });\n }\n ngOnInit() {\n this.loadNotifications();\n }\n ngOnDestroy() {\n this.clearRefreshTimer();\n }\n /**\n * Set up auto-refresh timer based on configuration\n */\n setupAutoRefresh() {\n this.clearRefreshTimer();\n if (this.autoRefresh()) {\n const interval = this.refreshInterval();\n this.refreshTimerId = setInterval(() => {\n this.loadNotifications();\n }, interval);\n }\n }\n /**\n * Clear the refresh timer if it exists\n */\n clearRefreshTimer() {\n if (this.refreshTimerId !== null) {\n clearInterval(this.refreshTimerId);\n this.refreshTimerId = null;\n }\n }\n /**\n * Load notifications data from service\n */\n async loadNotifications() {\n try {\n await this.notificationConnector.getList();\n this.cdr.detectChanges();\n }\n catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n /**\n * Manually refresh notifications\n */\n refreshNotifications() {\n this.loadNotifications();\n }\n /**\n * Get the count of new messages for the badge\n */\n getNewMessageCount() {\n const items = this.notifications();\n if (!items?.length)\n return 0;\n return items.filter((n) => !n.readAt).length;\n }\n /**\n * Handle tab change event from ax-tabs component\n * @param data The tab change event data\n */\n handleTabChange(data) {\n const index = data.index;\n // Map index to tab name: 0 = 'unread', 1 = 'all'\n const tabName = index === 0 ? 'unread' : 'all';\n this.onTabChange(tabName);\n }\n /**\n * Mark all notifications as read\n */\n async markAllAsRead() {\n try {\n await this.notificationConnector.markAsRead({ id: [] });\n this.cdr.detectChanges();\n }\n catch (error) {\n this.toastService.show({\n content: 'Failed to mark notifications as read',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n });\n }\n }\n /**\n * Change the active tab\n */\n onTabChange(tabName) {\n this.activeTab.set(tabName);\n this.cdr.detectChanges();\n }\n /**\n * Handle notification click event\n */\n onNotificationClick(notification) {\n this.markAsReadIfNeeded(notification);\n this.notificationClick.emit(notification);\n }\n /**\n * Format the timestamp in a user-friendly way\n */\n formatTime(date) {\n if (!date)\n return '';\n const dateObj = typeof date === 'string' ? new Date(date) : date;\n const diffDays = this.getDaysDifference(dateObj);\n // Format based on how recent the date is\n if (diffDays === 0)\n return this.datePipe.transform(dateObj, 'h:mm a') || ''; // Today\n if (diffDays === 1)\n return 'Yesterday';\n if (diffDays < 7)\n return this.datePipe.transform(dateObj, 'EEE') || ''; // Day of week\n return this.datePipe.transform(dateObj, 'MM/DD/YYYY') || ''; // Older date\n }\n /**\n * Mark notification as read if needed\n */\n async markAsReadIfNeeded(notification) {\n try {\n // Always mark as read on click if unread, but don't toggle back to unread\n if (notification.readAt)\n return;\n await this.notificationConnector.markAsRead({ id: [notification.id] });\n // Emit the updated notification with readAt set\n // It will be read now because we only call this for unread notifications\n const updatedNotification = {\n ...notification,\n readAt: new Date(),\n };\n this.markAsRead.emit(updatedNotification);\n this.cdr.detectChanges();\n }\n catch (error) {\n console.error('Failed to mark notification as read:', error);\n }\n }\n /**\n * Calculate days difference from now\n */\n getDaysDifference(date) {\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n return Math.floor(diffMs / (1000 * 60 * 60 * 24));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationWidgetViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.12\", type: AXPNotificationWidgetViewComponent, isStandalone: true, selector: \"ng-component\", outputs: { notificationClick: \"notificationClick\", markAsRead: \"markAsRead\" }, providers: [\n DatePipe,\n // Provide a lightweight stub for AXMAdminNotificationSlotComponent so the admin item can inject it\n {\n provide: AXMAdminNotificationSlotComponent,\n useValue: {\n popover: () => ({ close: () => { } }),\n },\n },\n ], usesInheritance: true, ngImport: i0, template: \"<div class=\\\"ax-p-2 ax-size-full ax-flex ax-flex-col ax-gap-2\\\">\\n <ax-tabs\\n class=\\\"ax-bg-light-start ax-border-b ax-border-default ax-shrink-0\\\"\\n [fitParent]=\\\"true\\\"\\n location=\\\"bottom\\\"\\n (onActiveTabChanged)=\\\"handleTabChange($event)\\\"\\n >\\n <ax-tab-item [text]=\\\"('@notification-management:unread' | translate | async) ?? 'Unread'\\\" class=\\\"ax-font-medium\\\">\\n <ax-suffix>\\n @if (getNewMessageCount() > 0) {\\n <ax-badge color=\\\"primary\\\" [text]=\\\"getNewMessageCount().toString()\\\" size=\\\"sm\\\" class=\\\"ax-ml-1\\\"></ax-badge>\\n }\\n </ax-suffix>\\n </ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"('@notification-management:all' | translate | async) ?? 'All'\\\"\\n class=\\\"ax-font-medium\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n <div class=\\\"ax-space-y-1 ax-overflow-auto\\\">\\n @for (item of notificationItems(); track item.id) {\\n <axp-master-notification-item [data]=\\\"item\\\" (onPressNotificationItem)=\\\"onAdminItemClick($event)\\\" />\\n } @empty {\\n <axp-state-message\\n icon=\\\"fa-light fa-bell-slash\\\"\\n [title]=\\\"'@notification-management:no-notifications.title'\\\"\\n [description]=\\\"'@notification-management:no-notifications.description'\\\"\\n >\\n </axp-state-message>\\n }\\n </div>\\n</div>\\n\", styles: [\":host{display:block;width:100%;height:100%}.notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:1rem;padding:.5rem;text-align:start;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}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXTabsModule }, { kind: \"component\", type: i1.AXTabsComponent, selector: \"ax-tabs\", inputs: [\"look\", \"location\", \"fitParent\", \"minWidth\", \"content\"], outputs: [\"onActiveTabChanged\"] }, { kind: \"component\", type: i1.AXTabItemComponent, selector: \"ax-tab-item\", inputs: [\"disabled\", \"text\", \"key\", \"headerTemplate\", \"active\"], outputs: [\"disabledChange\", \"onClick\", \"onBlur\", \"onFocus\", \"activeChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXBadgeModule }, { kind: \"component\", type: i3.AXBadgeComponent, selector: \"ax-badge\", inputs: [\"color\", \"look\", \"text\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"component\", type: AXMAdminNotificationItemComponent, selector: \"axp-master-notification-item\", inputs: [\"data\"], outputs: [\"onPressNotificationItem\"] }, { kind: \"component\", type: AXPStateMessageComponent, selector: \"axp-state-message\", inputs: [\"mode\", \"icon\", \"title\", \"description\", \"variant\"] }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXPNotificationWidgetViewComponent, decorators: [{\n type: Component,\n args: [{ standalone: true, imports: [\n CommonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXButtonModule,\n AXBadgeModule,\n AXTranslationModule,\n AXMAdminNotificationItemComponent,\n AXPStateMessageComponent,\n ], providers: [\n DatePipe,\n // Provide a lightweight stub for AXMAdminNotificationSlotComponent so the admin item can inject it\n {\n provide: AXMAdminNotificationSlotComponent,\n useValue: {\n popover: () => ({ close: () => { } }),\n },\n },\n ], changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div class=\\\"ax-p-2 ax-size-full ax-flex ax-flex-col ax-gap-2\\\">\\n <ax-tabs\\n class=\\\"ax-bg-light-start ax-border-b ax-border-default ax-shrink-0\\\"\\n [fitParent]=\\\"true\\\"\\n location=\\\"bottom\\\"\\n (onActiveTabChanged)=\\\"handleTabChange($event)\\\"\\n >\\n <ax-tab-item [text]=\\\"('@notification-management:unread' | translate | async) ?? 'Unread'\\\" class=\\\"ax-font-medium\\\">\\n <ax-suffix>\\n @if (getNewMessageCount() > 0) {\\n <ax-badge color=\\\"primary\\\" [text]=\\\"getNewMessageCount().toString()\\\" size=\\\"sm\\\" class=\\\"ax-ml-1\\\"></ax-badge>\\n }\\n </ax-suffix>\\n </ax-tab-item>\\n <ax-tab-item\\n [text]=\\\"('@notification-management:all' | translate | async) ?? 'All'\\\"\\n class=\\\"ax-font-medium\\\"\\n ></ax-tab-item>\\n </ax-tabs>\\n <div class=\\\"ax-space-y-1 ax-overflow-auto\\\">\\n @for (item of notificationItems(); track item.id) {\\n <axp-master-notification-item [data]=\\\"item\\\" (onPressNotificationItem)=\\\"onAdminItemClick($event)\\\" />\\n } @empty {\\n <axp-state-message\\n icon=\\\"fa-light fa-bell-slash\\\"\\n [title]=\\\"'@notification-management:no-notifications.title'\\\"\\n [description]=\\\"'@notification-management:no-notifications.description'\\\"\\n >\\n </axp-state-message>\\n }\\n </div>\\n</div>\\n\", styles: [\":host{display:block;width:100%;height:100%}.notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:1rem;padding:.5rem;text-align:start;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}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}\\n\"] }]\n }], ctorParameters: () => [], propDecorators: { notificationClick: [{ type: i0.Output, args: [\"notificationClick\"] }], markAsRead: [{ type: i0.Output, args: [\"markAsRead\"] }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQTBCLE1BQU0seUJBQXlCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUdO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ZCxhQUFhO3dCQUNiLG1CQUFtQjt3QkFDbkIsaUNBQWlDO3dCQUNqQyx3QkFBd0I7cUJBQ3pCLGFBQ1U7d0JBQ1QsUUFBUTt3QkFDUixtR0FBbUc7d0JBQ25HOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRTtnQ0FDUixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQzs2QkFDUTt5QkFDaEQ7cUJBQ0YsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSwgQVhUYWJTdHJpcENoYW5nZWRFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RvYXN0JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU3RhdGVNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0vYWRtaW4tbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QvYWRtaW4tbm90aWZpY2F0aW9uLXNsb3QuY29tcG9uZW50JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnR5cGUnO1xuXG4vKipcbiAqIE5vdGlmaWNhdGlvbiBXaWRnZXQgQ29tcG9uZW50XG4gKiBEaXNwbGF5cyBub3RpZmljYXRpb25zIGluIGEgY2FyZCB3aXRoIHRhYnNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb24td2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9uLXdpZGdldC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFYVGFic01vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWEJhZGdlTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gICAgQVhNQWRtaW5Ob3RpZmljYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEFYUFN0YXRlTWVzc2FnZUNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRGF0ZVBpcGUsXG4gICAgLy8gUHJvdmlkZSBhIGxpZ2h0d2VpZ2h0IHN0dWIgZm9yIEFYTUFkbWluTm90aWZpY2F0aW9uU2xvdENvbXBvbmVudCBzbyB0aGUgYWRtaW4gaXRlbSBjYW4gaW5qZWN0IGl0XG4gICAge1xuICAgICAgcHJvdmlkZTogQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50LFxuICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgcG9wb3ZlcjogKCkgPT4gKHsgY2xvc2U6ICgpID0+IHsgfSB9KSxcbiAgICAgIH0gYXMgUGFydGlhbDxBWE1BZG1pbk5vdGlmaWNhdGlvblNsb3RDb21wb25lbnQ+LFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBOb3RpZmljYXRpb25XaWRnZXRWaWV3Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gT3V0cHV0c1xuICBub3RpZmljYXRpb25DbGljayA9IG91dHB1dDxBWE1Ob3RpZmljYXRpb25JdGVtPigpO1xuICBtYXJrQXNSZWFkID0gb3V0cHV0PEFYTU5vdGlmaWNhdGlvbkl0ZW0+KCk7XG5cbiAgLy8gRGVwZW5kZW5jaWVzXG4gIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkYXRlUGlwZSA9IGluamVjdChEYXRlUGlwZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uQ29ubmVjdG9yID0gaW5qZWN0KEFYTU5vdGlmaWNhdGlvbkNvbm5lY3RvclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0U2VydmljZSA9IGluamVjdChBWFRvYXN0U2VydmljZSk7XG5cbiAgLy8gU3RhdGVcbiAgcHJvdGVjdGVkIGFjdGl2ZVRhYiA9IHNpZ25hbDwndW5yZWFkJyB8ICdhbGwnPigndW5yZWFkJyk7XG4gIHByaXZhdGUgcmVmcmVzaFRpbWVySWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIC8vIENvbmZpZ3VyYXRpb25cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG1heEl0ZW1zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcHRpb25zKCk/LlsnbWF4SXRlbXMnXSA/PyAxMCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBzaG93QXZhdGFyID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcHRpb25zKCk/Llsnc2hvd0F2YXRhciddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2hvd0RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKT8uWydzaG93RGF0ZSddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXV0b1JlZnJlc2ggPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKT8uWydhdXRvUmVmcmVzaCddID8/IHRydWUpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVmcmVzaEludGVydmFsID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMub3B0aW9ucygpPy5bJ3JlZnJlc2hJbnRlcnZhbCddID8/IDYwKSAqIDEwMDApOyAvLyBDb252ZXJ0IHRvIG1pbGxpc2Vjb25kc1xuXG4gIC8vIFVzZSBzdG9yZSdzIHNpZ25hbHMgZGlyZWN0bHlcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnMgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5ub3RpZmljYXRpb25MaXN0O1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG90YWxOb3RpZmljYXRpb25zID0gdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IudG90YWw7XG4gIHByb3RlY3RlZCByZWFkb25seSBpc0xvYWRpbmcgPSB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5sb2FkaW5nO1xuXG4gIC8vIENvbXB1dGVkIGRhdGFcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkl0ZW1zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5ub3RpZmljYXRpb25zKCk7XG4gICAgaWYgKCFpdGVtcz8ubGVuZ3RoKSByZXR1cm4gW107XG5cbiAgICAvLyBTb3J0IGJ5IHBpbm5lZCBzdGF0dXMgYW5kIGRhdGVcbiAgICBjb25zdCBzb3J0ZWRJdGVtcyA9IFsuLi5pdGVtc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgaWYgKGEudGVtcGxhdGUuaXNQaW5uZWQgPT09IGIudGVtcGxhdGUuaXNQaW5uZWQpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGIuY3JlYXRlQXQpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGEuY3JlYXRlQXQpLmdldFRpbWUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhLnRlbXBsYXRlLmlzUGlubmVkID8gLTEgOiAxO1xuICAgIH0pO1xuXG4gICAgLy8gRmlsdGVyIGJ5IGFjdGl2ZSB0YWJcbiAgICBjb25zdCBmaWx0ZXJlZCA9IHRoaXMuYWN0aXZlVGFiKCkgPT09ICd1bnJlYWQnID8gc29ydGVkSXRlbXMuZmlsdGVyKChuKSA9PiAhbi5yZWFkQXQpIDogc29ydGVkSXRlbXM7XG5cbiAgICByZXR1cm4gZmlsdGVyZWQuc2xpY2UoMCwgdGhpcy5tYXhJdGVtcygpKTtcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIC8vIFdhdGNoIGZvciBjaGFuZ2VzIHRvIGF1dG8tcmVmcmVzaCBzZXR0aW5nc1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLnNldHVwQXV0b1JlZnJlc2goKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZE5vdGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJSZWZyZXNoVGltZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdXAgYXV0by1yZWZyZXNoIHRpbWVyIGJhc2VkIG9uIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHByaXZhdGUgc2V0dXBBdXRvUmVmcmVzaCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyUmVmcmVzaFRpbWVyKCk7XG5cbiAgICBpZiAodGhpcy5hdXRvUmVmcmVzaCgpKSB7XG4gICAgICBjb25zdCBpbnRlcnZhbCA9IHRoaXMucmVmcmVzaEludGVydmFsKCk7XG4gICAgICB0aGlzLnJlZnJlc2hUaW1lcklkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XG4gICAgICB9LCBpbnRlcnZhbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSByZWZyZXNoIHRpbWVyIGlmIGl0IGV4aXN0c1xuICAgKi9cbiAgcHJpdmF0ZSBjbGVhclJlZnJlc2hUaW1lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXJJZCAhPT0gbnVsbCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnJlZnJlc2hUaW1lcklkKTtcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVySWQgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIG5vdGlmaWNhdGlvbnMgZGF0YSBmcm9tIHNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgbG9hZE5vdGlmaWNhdGlvbnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubm90aWZpY2F0aW9uQ29ubmVjdG9yLmdldExpc3QoKTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6IHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgPyBlcnJvciA6ICdGYWlsZWQgdG8gbG9hZCBub3RpZmljYXRpb25zIScsXG4gICAgICAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgIHRpbWVPdXQ6IDMwMDAsXG4gICAgICAgIHRpbWVPdXRQcm9ncmVzczogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYW51YWxseSByZWZyZXNoIG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCByZWZyZXNoTm90aWZpY2F0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjb3VudCBvZiBuZXcgbWVzc2FnZXMgZm9yIHRoZSBiYWRnZVxuICAgKi9cbiAgcHJvdGVjdGVkIGdldE5ld01lc3NhZ2VDb3VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5ub3RpZmljYXRpb25zKCk7XG4gICAgaWYgKCFpdGVtcz8ubGVuZ3RoKSByZXR1cm4gMDtcblxuICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKG4pID0+ICFuLnJlYWRBdCkubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSB0YWIgY2hhbmdlIGV2ZW50IGZyb20gYXgtdGFicyBjb21wb25lbnRcbiAgICogQHBhcmFtIGRhdGEgVGhlIHRhYiBjaGFuZ2UgZXZlbnQgZGF0YVxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVRhYkNoYW5nZShkYXRhOiBBWFRhYlN0cmlwQ2hhbmdlZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5kZXggPSBkYXRhLmluZGV4O1xuICAgIC8vIE1hcCBpbmRleCB0byB0YWIgbmFtZTogMCA9ICd1bnJlYWQnLCAxID0gJ2FsbCdcbiAgICBjb25zdCB0YWJOYW1lID0gaW5kZXggPT09IDAgPyAndW5yZWFkJyA6ICdhbGwnO1xuICAgIHRoaXMub25UYWJDaGFuZ2UodGFiTmFtZSk7XG4gIH1cblxuICAvKipcbiAgICogTWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgbWFya0FsbEFzUmVhZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5ub3RpZmljYXRpb25Db25uZWN0b3IubWFya0FzUmVhZCh7IGlkOiBbXSB9KTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICAgIGNvbnRlbnQ6ICdGYWlsZWQgdG8gbWFyayBub3RpZmljYXRpb25zIGFzIHJlYWQnLFxuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgIGxvY2F0aW9uOiAnYm90dG9tLWNlbnRlcicsXG4gICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICB0aW1lT3V0OiAzMDAwLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0aGUgYWN0aXZlIHRhYlxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVGFiQ2hhbmdlKHRhYk5hbWU6ICd1bnJlYWQnIHwgJ2FsbCcpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZVRhYi5zZXQodGFiTmFtZSk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSBub3RpZmljYXRpb24gY2xpY2sgZXZlbnRcbiAgICovXG4gIHByb3RlY3RlZCBvbk5vdGlmaWNhdGlvbkNsaWNrKG5vdGlmaWNhdGlvbjogQVhNTm90aWZpY2F0aW9uSXRlbSk6IHZvaWQge1xuICAgIHRoaXMubWFya0FzUmVhZElmTmVlZGVkKG5vdGlmaWNhdGlvbik7XG4gICAgdGhpcy5ub3RpZmljYXRpb25DbGljay5lbWl0KG5vdGlmaWNhdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogQnJpZGdlIGNsaWNrIGZyb20gYWRtaW4gaXRlbSAoZW1pdHMgbm90aWZpY2F0aW9uIGlkKVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uQWRtaW5JdGVtQ2xpY2sgPSAoaWQ6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgIHJldHVybjtcbiAgICAvLyBjb25zdCBpdGVtID0gdGhpcy5ub3RpZmljYXRpb25zKCkuZmluZCgobikgPT4gbi5pZCA9PT0gaWQpO1xuICAgIC8vIGlmICghaXRlbSkgcmV0dXJuO1xuICAgIC8vIHRoaXMub25Ob3RpZmljYXRpb25DbGljayhpdGVtKTtcbiAgfTtcblxuICAvKipcbiAgICogRm9ybWF0IHRoZSB0aW1lc3RhbXAgaW4gYSB1c2VyLWZyaWVuZGx5IHdheVxuICAgKi9cbiAgcHJvdGVjdGVkIGZvcm1hdFRpbWUoZGF0ZTogRGF0ZSB8IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgaWYgKCFkYXRlKSByZXR1cm4gJyc7XG5cbiAgICBjb25zdCBkYXRlT2JqID0gdHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnID8gbmV3IERhdGUoZGF0ZSkgOiBkYXRlO1xuICAgIGNvbnN0IGRpZmZEYXlzID0gdGhpcy5nZXREYXlzRGlmZmVyZW5jZShkYXRlT2JqKTtcblxuICAgIC8vIEZvcm1hdCBiYXNlZCBvbiBob3cgcmVjZW50IHRoZSBkYXRlIGlzXG4gICAgaWYgKGRpZmZEYXlzID09PSAwKSByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZU9iaiwgJ2g6bW0gYScpIHx8ICcnOyAvLyBUb2RheVxuICAgIGlmIChkaWZmRGF5cyA9PT0gMSkgcmV0dXJuICdZZXN0ZXJkYXknO1xuICAgIGlmIChkaWZmRGF5cyA8IDcpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlT2JqLCAnRUVFJykgfHwgJyc7IC8vIERheSBvZiB3ZWVrXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGVPYmosICdNTS9ERC9ZWVlZJykgfHwgJyc7IC8vIE9sZGVyIGRhdGVcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIG5vdGlmaWNhdGlvbiBhcyByZWFkIGlmIG5lZWRlZFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBtYXJrQXNSZWFkSWZOZWVkZWQobm90aWZpY2F0aW9uOiBBWE1Ob3RpZmljYXRpb25JdGVtKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIEFsd2F5cyBtYXJrIGFzIHJlYWQgb24gY2xpY2sgaWYgdW5yZWFkLCBidXQgZG9uJ3QgdG9nZ2xlIGJhY2sgdG8gdW5yZWFkXG4gICAgICBpZiAobm90aWZpY2F0aW9uLnJlYWRBdCkgcmV0dXJuO1xuXG4gICAgICBhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbkNvbm5lY3Rvci5tYXJrQXNSZWFkKHsgaWQ6IFtub3RpZmljYXRpb24uaWRdIH0pO1xuXG4gICAgICAvLyBFbWl0IHRoZSB1cGRhdGVkIG5vdGlmaWNhdGlvbiB3aXRoIHJlYWRBdCBzZXRcbiAgICAgIC8vIEl0IHdpbGwgYmUgcmVhZCBub3cgYmVjYXVzZSB3ZSBvbmx5IGNhbGwgdGhpcyBmb3IgdW5yZWFkIG5vdGlmaWNhdGlvbnNcbiAgICAgIGNvbnN0IHVwZGF0ZWROb3RpZmljYXRpb24gPSB7XG4gICAgICAgIC4uLm5vdGlmaWNhdGlvbixcbiAgICAgICAgcmVhZEF0OiBuZXcgRGF0ZSgpLFxuICAgICAgfTtcbiAgICAgIHRoaXMubWFya0FzUmVhZC5lbWl0KHVwZGF0ZWROb3RpZmljYXRpb24pO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbWFyayBub3RpZmljYXRpb24gYXMgcmVhZDonLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSBkYXlzIGRpZmZlcmVuY2UgZnJvbSBub3dcbiAgICovXG4gIHByaXZhdGUgZ2V0RGF5c0RpZmZlcmVuY2UoZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkaWZmTXMgPSBub3cuZ2V0VGltZSgpIC0gZGF0ZS5nZXRUaW1lKCk7XG4gICAgcmV0dXJuIE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXAtMiBheC1zaXplLWZ1bGwgYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMlwiPlxuICA8YXgtdGFic1xuICAgIGNsYXNzPVwiYXgtYmctbGlnaHQtc3RhcnQgYXgtYm9yZGVyLWIgYXgtYm9yZGVyLWRlZmF1bHQgYXgtc2hyaW5rLTBcIlxuICAgIFtmaXRQYXJlbnRdPVwidHJ1ZVwiXG4gICAgbG9jYXRpb249XCJib3R0b21cIlxuICAgIChvbkFjdGl2ZVRhYkNoYW5nZWQpPVwiaGFuZGxlVGFiQ2hhbmdlKCRldmVudClcIlxuICA+XG4gICAgPGF4LXRhYi1pdGVtIFt0ZXh0XT1cIignQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OnVucmVhZCcgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ1VucmVhZCdcIiBjbGFzcz1cImF4LWZvbnQtbWVkaXVtXCI+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICBAaWYgKGdldE5ld01lc3NhZ2VDb3VudCgpID4gMCkge1xuICAgICAgICAgIDxheC1iYWRnZSBjb2xvcj1cInByaW1hcnlcIiBbdGV4dF09XCJnZXROZXdNZXNzYWdlQ291bnQoKS50b1N0cmluZygpXCIgc2l6ZT1cInNtXCIgY2xhc3M9XCJheC1tbC0xXCI+PC9heC1iYWRnZT5cbiAgICAgICAgfVxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC10YWItaXRlbT5cbiAgICA8YXgtdGFiLWl0ZW1cbiAgICAgIFt0ZXh0XT1cIignQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OmFsbCcgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ0FsbCdcIlxuICAgICAgY2xhc3M9XCJheC1mb250LW1lZGl1bVwiXG4gICAgPjwvYXgtdGFiLWl0ZW0+XG4gIDwvYXgtdGFicz5cbiAgPGRpdiBjbGFzcz1cImF4LXNwYWNlLXktMSBheC1vdmVyZmxvdy1hdXRvXCI+XG4gICAgQGZvciAoaXRlbSBvZiBub3RpZmljYXRpb25JdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XG4gICAgICA8YXhwLW1hc3Rlci1ub3RpZmljYXRpb24taXRlbSBbZGF0YV09XCJpdGVtXCIgKG9uUHJlc3NOb3RpZmljYXRpb25JdGVtKT1cIm9uQWRtaW5JdGVtQ2xpY2soJGV2ZW50KVwiIC8+XG4gICAgfSBAZW1wdHkge1xuICAgICAgPGF4cC1zdGF0ZS1tZXNzYWdlXG4gICAgICAgIGljb249XCJmYS1saWdodCBmYS1iZWxsLXNsYXNoXCJcbiAgICAgICAgW3RpdGxlXT1cIidAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6bm8tbm90aWZpY2F0aW9ucy50aXRsZSdcIlxuICAgICAgICBbZGVzY3JpcHRpb25dPVwiJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpuby1ub3RpZmljYXRpb25zLmRlc2NyaXB0aW9uJ1wiXG4gICAgICA+XG4gICAgICA8L2F4cC1zdGF0ZS1tZXNzYWdlPlxuICAgIH1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { AXP_WIDGETS_UTILITY_CATEGORY } from '@acorex/modules/dashboard-management';\nimport { AXPWidgetGroupEnum, AXPWidgetsCatalog, cloneProperty } from '@acorex/platform/layout/widget-core';\nimport { AXP_APPEARANCE_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_STYLING_PROPERTY_GROUP, } from '@acorex/platform/layout/widgets';\n/**\n * Configuration for the Notification Widget\n */\nexport const AXPMyNotificationDashboardWidget = {\n name: 'my-notification-dashboard',\n title: 'My Notification Widget',\n categories: [AXP_WIDGETS_UTILITY_CATEGORY],\n groups: [AXPWidgetGroupEnum.DashboardWidget],\n type: 'dashboard',\n description: 'Displays notifications in a widget format',\n icon: 'fa-regular fa-bell',\n properties: [\n cloneProperty(AXP_DATA_PATH_PROPERTY, { visible: false }),\n // ====== Title ======\n {\n name: 'title',\n title: '@notification-management:widgets.my-notification-dashboard.chart-title',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: '',\n dataType: 'string',\n interface: {\n name: 'title',\n path: 'options.title',\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 'Enter chart title',\n },\n },\n },\n visible: true,\n },\n {\n name: 'maxItems',\n title: '@notification-management:widgets.my-notification-dashboard.max-items',\n description: 'Maximum number of notification items to display',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n defaultValue: 10,\n dataType: 'number',\n interface: {\n name: 'maxItems',\n path: 'options.maxItems',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 100,\n },\n },\n },\n visible: true,\n },\n {\n name: 'showAvatar',\n title: '@notification-management:widgets.my-notification-dashboard.show-avatar',\n description: 'Whether to show avatars in notifications',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'showAvatar',\n path: 'options.showAvatar',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'showDate',\n title: '@notification-management:widgets.my-notification-dashboard.show-date',\n description: 'Whether to show date in notifications',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'showDate',\n path: 'options.showDate',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'autoRefresh',\n title: '@notification-management:widgets.my-notification-dashboard.auto-refresh',\n description: 'Automatically refresh notifications at regular intervals',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: true,\n dataType: 'boolean',\n interface: {\n name: 'autoRefresh',\n path: 'options.autoRefresh',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'refreshInterval',\n title: '@notification-management:widgets.my-notification-dashboard.refresh-interval',\n description: 'Interval in seconds between automatic refreshes',\n group: AXP_APPEARANCE_PROPERTY_GROUP,\n schema: {\n defaultValue: 60,\n dataType: 'number',\n interface: {\n name: 'refreshInterval',\n path: 'options.refreshInterval',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 10,\n maxValue: 3600,\n },\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./notification-widget.component').then((c) => c.AXPNotificationWidgetViewComponent),\n },\n },\n meta: {\n dimensions: {\n width: 3,\n height: 5,\n minWidth: 2,\n minHeight: 4,\n maxWidth: 4,\n maxHeight: 7,\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kYXNoYm9hcmQvd2lkZ2V0cy9teS1ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdpZGdldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEYsT0FBTyxFQUFtQixrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1SCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLHNCQUFzQixFQUN0QiwwQkFBMEIsR0FDM0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFvQjtJQUMvRCxJQUFJLEVBQUUsMkJBQTJCO0lBQ2pDLEtBQUssRUFBRSx3QkFBd0I7SUFDL0IsVUFBVSxFQUFFLENBQUMsNEJBQTRCLENBQUM7SUFDMUMsTUFBTSxFQUFFLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDO0lBQzVDLElBQUksRUFBRSxXQUFXO0lBQ2pCLFdBQVcsRUFBRSwyQ0FBMkM7SUFDeEQsSUFBSSxFQUFFLG9CQUFvQjtJQUMxQixVQUFVLEVBQUU7UUFDVixhQUFhLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekQsc0JBQXNCO1FBQ3RCO1lBQ0UsSUFBSSxFQUFFLE9BQU87WUFDYixLQUFLLEVBQUUsd0VBQXdFO1lBQy9FLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsTUFBTSxFQUFFO2dCQUNOLFlBQVksRUFBRSxFQUFFO2dCQUNoQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsU0FBUyxF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aUNBQWlDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUM3RztLQUNGO0lBQ0QsSUFBSSxFQUFFO1FBQ0osVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLENBQUM7WUFDUixNQUFNLEVBQUUsQ0FBQztZQUNULFFBQVEsRUFBRSxDQUFDO1lBQ1gsU0FBUyxFQUFFLENBQUM7WUFDWixRQUFRLEVBQUUsQ0FBQztZQUNYLFNBQVMsRUFBRSxDQUFDO1NBQ2I7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBfV0lER0VUU19VVElMSVRZX0NBVEVHT1JZIH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2Rhc2hib2FyZC1tYW5hZ2VtZW50JztcbmltcG9ydCB7IEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0R3JvdXBFbnVtLCBBWFBXaWRnZXRzQ2F0YWxvZywgY2xvbmVQcm9wZXJ0eSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7XG4gIEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICBBWFBfU1RZTElOR19QUk9QRVJUWV9HUk9VUCxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0cyc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIE5vdGlmaWNhdGlvbiBXaWRnZXRcbiAqL1xuZXhwb3J0IGNvbnN0IEFYUE15Tm90aWZpY2F0aW9uRGFzaGJvYXJkV2lkZ2V0OiBBWFBXaWRnZXRDb25maWcgPSB7XG4gIG5hbWU6ICdteS1ub3RpZmljYXRpb24tZGFzaGJvYXJkJyxcbiAgdGl0bGU6ICdNeSBOb3RpZmljYXRpb24gV2lkZ2V0JyxcbiAgY2F0ZWdvcmllczogW0FYUF9XSURHRVRTX1VUSUxJVFlfQ0FURUdPUlldLFxuICBncm91cHM6IFtBWFBXaWRnZXRHcm91cEVudW0uRGFzaGJvYXJkV2lkZ2V0XSxcbiAgdHlwZTogJ2Rhc2hib2FyZCcsXG4gIGRlc2NyaXB0aW9uOiAnRGlzcGxheXMgbm90aWZpY2F0aW9ucyBpbiBhIHdpZGdldCBmb3JtYXQnLFxuICBpY29uOiAnZmEtcmVndWxhciBmYS1iZWxsJyxcbiAgcHJvcGVydGllczogW1xuICAgIGNsb25lUHJvcGVydHkoQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgeyB2aXNpYmxlOiBmYWxzZSB9KSxcbiAgICAvLyA9PT09PT0gVGl0bGUgPT09PT09XG4gICAge1xuICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OndpZGdldHMubXktbm90aWZpY2F0aW9uLWRhc2hib2FyZC5jaGFydC10aXRsZScsXG4gICAgICBncm91cDogQVhQX0FQUEVBUkFOQ0VfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBzY2hlbWE6IHtcbiAgICAgICAgZGVmYXVsdFZhbHVlOiAnJyxcbiAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLnRpdGxlJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnRW50ZXIgY2hhcnQgdGl0bGUnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdtYXhJdGVtcycsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQubWF4LWl0ZW1zJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnTWF4aW11bSBudW1iZXIgb2Ygbm90aWZpY2F0aW9uIGl0ZW1zIHRvIGRpc3BsYXknLFxuICAgICAgZ3JvdXA6IEFYUF9TVFlMSU5HX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogMTAsXG4gICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ21heEl0ZW1zJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5tYXhJdGVtcycsXG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubnVtYmVyLFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDEwMCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHZpc2libGU6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnc2hvd0F2YXRhcicsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuc2hvdy1hdmF0YXInLFxuICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRvIHNob3cgYXZhdGFycyBpbiBub3RpZmljYXRpb25zJyxcbiAgICAgIGdyb3VwOiBBWFBfQVBQRUFSQU5DRV9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIHNjaGVtYToge1xuICAgICAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgIG5hbWU6ICdzaG93QXZhdGFyJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5zaG93QXZhdGFyJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG93RGF0ZScsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuc2hvdy1kYXRlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0byBzaG93IGRhdGUgaW4gbm90aWZpY2F0aW9ucycsXG4gICAgICBncm91cDogQVhQX0FQUEVBUkFOQ0VfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBzY2hlbWE6IHtcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICBuYW1lOiAnc2hvd0RhdGUnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLnNob3dEYXRlJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdhdXRvUmVmcmVzaCcsXG4gICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp3aWRnZXRzLm15LW5vdGlmaWNhdGlvbi1kYXNoYm9hcmQuYXV0by1yZWZyZXNoJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQXV0b21hdGljYWxseSByZWZyZXNoIG5vdGlmaWNhdGlvbnMgYXQgcmVndWxhciBpbnRlcnZhbHMnLFxuICAgICAgZ3JvdXA6IEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSxcbiAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ2F1dG9SZWZyZXNoJyxcbiAgICAgICAgICBwYXRoOiAnb3B0aW9ucy5hdXRvUmVmcmVzaCcsXG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudG9nZ2xlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHZpc2libGU6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAncmVmcmVzaEludGVydmFsJyxcbiAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OndpZGdldHMubXktbm90aWZpY2F0aW9uLWRhc2hib2FyZC5yZWZyZXNoLWludGVydmFsJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnSW50ZXJ2YWwgaW4gc2Vjb25kcyBiZXR3ZWVuIGF1dG9tYXRpYyByZWZyZXNoZXMnLFxuICAgICAgZ3JvdXA6IEFYUF9BUFBFQVJBTkNFX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogNjAsXG4gICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgbmFtZTogJ3JlZnJlc2hJbnRlcnZhbCcsXG4gICAgICAgICAgcGF0aDogJ29wdGlvbnMucmVmcmVzaEludGVydmFsJyxcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5udW1iZXIsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgbWluVmFsdWU6IDEwLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDM2MDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB2aXNpYmxlOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICB2aWV3OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9ub3RpZmljYXRpb24td2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTm90aWZpY2F0aW9uV2lkZ2V0Vmlld0NvbXBvbmVudCksXG4gICAgfSxcbiAgfSxcbiAgbWV0YToge1xuICAgIGRpbWVuc2lvbnM6IHtcbiAgICAgIHdpZHRoOiAzLFxuICAgICAgaGVpZ2h0OiA1LFxuICAgICAgbWluV2lkdGg6IDIsXG4gICAgICBtaW5IZWlnaHQ6IDQsXG4gICAgICBtYXhXaWR0aDogNCxcbiAgICAgIG1heEhlaWdodDogNyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==","import { AXPAuthGuard, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { AXP_TASK_BADGE_PROVIDERS, AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXPRootLayoutComponent } from '@acorex/platform/themes/default';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { ROUTES } from '@angular/router';\nimport { AXMNotificationBadgeProvider } from './badge.provider';\n// Entity Modules\nimport { AXMNotificationEntityModule, AXMNotificationTemplateEntityModule, AXMNotificationChannelEntityModule, } from './entities';\nimport { AXMEntityLoader } from './entity.provider';\nimport { AXMAdminNotificationSlotComponent } from './features/components/admin-notification-slot/admin-notification-slot.component';\nimport { AXPMyNotificationDashboardWidget } from './features/dashboard/widgets/my-notification';\nimport { AXMMenuProvider } from './menu.provider';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/components\";\nimport * as i2 from \"@acorex/platform/layout/widget-core\";\nfunction routesFactory() {\n const routes = [\n {\n path: ':app/notifications',\n canActivate: [AXPAuthGuard],\n loadComponent: () => {\n return AXPRootLayoutComponent;\n },\n title: 'Notifications',\n children: [\n {\n path: '',\n loadComponent: () => import('./features/components/notification-page/notification-page.component').then((c) => c.AXMNotificationPageComponent),\n data: { reuse: true },\n },\n ],\n },\n ];\n return routes;\n}\nexport class AXMNotificationManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, imports: [i1.AXPComponentSlotModule, i2.AXPWidgetCoreModule, \n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXMSettingProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMNotificationBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider();\n },\n multi: true,\n },\n ], imports: [AXPComponentSlotModule.forChild({\n 'root-header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n AXPWidgetCoreModule.forChild({\n widgets: [AXPMyNotificationDashboardWidget],\n }),\n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.12\", ngImport: i0, type: AXMNotificationManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forChild({\n 'root-header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n AXPWidgetCoreModule.forChild({\n widgets: [AXPMyNotificationDashboardWidget],\n }),\n // Entity Modules\n AXMNotificationEntityModule,\n AXMNotificationTemplateEntityModule,\n AXMNotificationChannelEntityModule,\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXMSettingProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMNotificationBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider();\n },\n multi: true,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFVLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhFLGlCQUFpQjtBQUNqQixPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLG1DQUFtQyxFQUNuQyxrQ0FBa0MsR0FDbkMsTUFBTSxZQUFZLENBQUM7QUFFcEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGlGQUFpRixDQUFDO0FBQ3BJLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxlQUFlLEVBQUUs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RyxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7NEJBQ3hCLENBQUM7NEJBQ0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBBdXRoR3VhcmQsIEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQX01FTlVfUFJPVklERVIsIEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRDb3JlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgQVhQX1RBU0tfQkFER0VfUFJPVklERVJTLCBBWFBDb21wb25lbnRTbG90TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0b3IsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJPVVRFUyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBWE1Ob3RpZmljYXRpb25CYWRnZVByb3ZpZGVyIH0gZnJvbSAnLi9iYWRnZS5wcm92aWRlcic7XG5cbi8vIEVudGl0eSBNb2R1bGVzXG5pbXBvcnQge1xuICBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUsXG4gIEFYTU5vdGlmaWNhdGlvblRlbXBsYXRlRW50aXR5TW9kdWxlLFxuICBBWE1Ob3RpZmljYXRpb25DaGFubmVsRW50aXR5TW9kdWxlLFxufSBmcm9tICcuL2VudGl0aWVzJztcblxuaW1wb3J0IHsgQVhNRW50aXR5TG9hZGVyIH0gZnJvbSAnLi9lbnRpdHkucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50IH0gZnJvbSAnLi9mZWF0dXJlcy9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi1zbG90L2FkbWluLW5vdGlmaWNhdGlvbi1zbG90LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFBNeU5vdGlmaWNhdGlvbkRhc2hib2FyZFdpZGdldCB9IGZyb20gJy4vZmVhdHVyZXMvZGFzaGJvYXJkL3dpZGdldHMvbXktbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IEFYTU1lbnVQcm92aWRlciB9IGZyb20gJy4vbWVudS5wcm92aWRlcic7XG5cbmZ1bmN0aW9uIHJvdXRlc0ZhY3RvcnkoKTogUm91dGVzIHtcbiAgY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gICAge1xuICAgICAgcGF0aDogJzphcHAvbm90aWZpY2F0aW9ucycsXG4gICAgICBjYW5BY3RpdmF0ZTogW0FYUEF1dGhHdWFyZF0sXG4gICAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBBWFBSb290TGF5b3V0Q29tcG9uZW50O1xuICAgICAgfSxcbiAgICAgIHRpdGxlOiAnTm90aWZpY2F0aW9ucycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgbG9hZENvbXBvbmVudDogKCkgPT5cbiAgICAgICAgICAgIGltcG9ydCgnLi9mZWF0dXJlcy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1wYWdlL25vdGlmaWNhdGlvbi1wYWdlLmNvbXBvbmVudCcpLnRoZW4oXG4gICAgICAgICAgICAgIChjKSA9PiBjLkFYTU5vdGlmaWNhdGlvblBhZ2VDb21wb25lbnQsXG4gICAgICAgICAgICApLFxuICAgICAgICAgIGRhdGE6IHsgcmV1c2U6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXTtcbiAgcmV0dXJuIHJvdXRlcztcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEFYUENvbXBvbmVudFNsb3RNb2R1bGUuZm9yQ2hpbGQoe1xuICAgICAgJ3Jvb3QtaGVhZGVyLWVuZCc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdub3RpZmljYXRpb24nLFxuICAgICAgICAgIGNvbXBvbmVudDogQVhNQWRtaW5Ob3RpZmljYXRpb25TbG90Q29tcG9uZW50LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KSxcbiAgICBBWFBXaWRnZXRDb3JlTW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHdpZGdldHM6IFtBWFBNeU5vdGlmaWNhdGlvbkRhc2hib2FyZFdpZGdldF0sXG4gICAgfSksXG4gICAgLy8gRW50aXR5IE1vZHVsZXNcbiAgICBBWE1Ob3RpZmljYXRpb25FbnRpdHlNb2R1bGUsXG4gICAgQVhNTm90aWZpY2F0aW9uVGVtcGxhdGVFbnRpdHlNb2R1bGUsXG4gICAgQVhNTm90aWZpY2F0aW9uQ2hhbm5lbEVudGl0eU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW10sXG4gIGRlY2xhcmF0aW9uczogW10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJPVVRFUyxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgdXNlRmFjdG9yeTogcm91dGVzRmFjdG9yeSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9FTlRJVFlfREVGSU5JVElPTl9MT0FERVIsXG4gICAgICB1c2VDbGFzczogQVhNRW50aXR5TG9hZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfTUVOVV9QUk9WSURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1NZW51UHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICB1c2VGYWN0b3J5OiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICAgICAgY29uc3QgcHJvdmlkZXIgPSAoYXdhaXQgaW1wb3J0KCcuL3NldHRpbmdzLnByb3ZpZGVyJykpLkFYTVNldHRpbmdQcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIG5ldyBwcm92aWRlcihpbmplY3Rvcik7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfVEFTS19CQURHRV9QUk9WSURFUlMsXG4gICAgICB1c2VDbGFzczogQVhNTm90aWZpY2F0aW9uQmFkZ2VQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX1BFUk1JU1NJT05fREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJvdmlkZXIgPSAoYXdhaXQgaW1wb3J0KCcuL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlcicpKS5BWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyO1xuICAgICAgICByZXR1cm4gbmV3IHByb3ZpZGVyKCk7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudE1vZHVsZSB7IH1cbiJdfQ==","export var AXPSettingKeys;\n(function (AXPSettingKeys) {\n // SMTP Settings\n AXPSettingKeys[\"Server\"] = \"notification:email:server\";\n AXPSettingKeys[\"Port\"] = \"notification:email:port\";\n AXPSettingKeys[\"Username\"] = \"notification:email:username\";\n AXPSettingKeys[\"Password\"] = \"notification:email:password\";\n AXPSettingKeys[\"FromAddress\"] = \"notification:email:fromAddress\";\n AXPSettingKeys[\"UseSSL\"] = \"notification:email:useSSL\";\n AXPSettingKeys[\"UseTLS\"] = \"notification:email:useTLS\";\n // Telegram Settings\n AXPSettingKeys[\"TelegramToken\"] = \"notification:telegram:token\";\n AXPSettingKeys[\"TelegramChatId\"] = \"notification:telegram:chatId\";\n // WhatsApp Settings\n AXPSettingKeys[\"WhatsAppApiUrl\"] = \"notification:whatsapp:apiUrl\";\n AXPSettingKeys[\"WhatsAppAuthToken\"] = \"notification:whatsapp:authToken\";\n // Firebase Settings\n AXPSettingKeys[\"FirebaseApiKey\"] = \"notification:firebase:apiKey\";\n AXPSettingKeys[\"FirebaseProjectId\"] = \"notification:firebase:projectId\";\n AXPSettingKeys[\"FirebaseSenderId\"] = \"notification:firebase:senderId\";\n AXPSettingKeys[\"FirebaseAppId\"] = \"notification:firebase:appId\";\n})(AXPSettingKeys || (AXPSettingKeys = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mua2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9ub3RpZmljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3NldHRpbmdzLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0F1Qlg7QUF2QkQsV0FBWSxjQUFjO0lBQ3RCLGdCQUFnQjtJQUNoQixzREFBb0MsQ0FBQTtJQUNwQyxrREFBZ0MsQ0FBQTtJQUNoQywwREFBd0MsQ0FBQTtJQUN4QywwREFBd0MsQ0FBQTtJQUN4QyxnRUFBOEMsQ0FBQTtJQUM5QyxzREFBb0MsQ0FBQTtJQUNwQyxzREFBb0MsQ0FBQTtJQUVwQyxvQkFBb0I7SUFDcEIsK0RBQTZDLENBQUE7SUFDN0MsaUVBQStDLENBQUE7SUFFL0Msb0JBQW9CO0lBQ3BCLGlFQUErQyxDQUFBO0lBQy9DLHVFQUFxRCxDQUFBO0lBRXJELG9CQUFvQjtJQUNwQixpRUFBK0MsQ0FBQTtJQUMvQyx1RUFBcUQsQ0FBQTtJQUNyRCxxRUFBbUQsQ0FBQTtJQUNuRCwrREFBNkMsQ0FBQTtBQUNqRCxDQUFDLEVBdkJXLGNBQWMsS0FBZCxjQUFjLFFBdUJ6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFYUFNldHRpbmdLZXlzIHtcbiAgICAvLyBTTVRQIFNldHRpbmdzXG4gICAgU2VydmVyID0gJ25vdGlmaWNhdGlvbjplbWFpbDpzZXJ2ZXInLFxuICAgIFBvcnQgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnBvcnQnLFxuICAgIFVzZXJuYW1lID0gJ25vdGlmaWNhdGlvbjplbWFpbDp1c2VybmFtZScsXG4gICAgUGFzc3dvcmQgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnBhc3N3b3JkJyxcbiAgICBGcm9tQWRkcmVzcyA9ICdub3RpZmljYXRpb246ZW1haWw6ZnJvbUFkZHJlc3MnLFxuICAgIFVzZVNTTCA9ICdub3RpZmljYXRpb246ZW1haWw6dXNlU1NMJyxcbiAgICBVc2VUTFMgPSAnbm90aWZpY2F0aW9uOmVtYWlsOnVzZVRMUycsXG5cbiAgICAvLyBUZWxlZ3JhbSBTZXR0aW5nc1xuICAgIFRlbGVncmFtVG9rZW4gPSAnbm90aWZpY2F0aW9uOnRlbGVncmFtOnRva2VuJyxcbiAgICBUZWxlZ3JhbUNoYXRJZCA9ICdub3RpZmljYXRpb246dGVsZWdyYW06Y2hhdElkJyxcblxuICAgIC8vIFdoYXRzQXBwIFNldHRpbmdzXG4gICAgV2hhdHNBcHBBcGlVcmwgPSAnbm90aWZpY2F0aW9uOndoYXRzYXBwOmFwaVVybCcsXG4gICAgV2hhdHNBcHBBdXRoVG9rZW4gPSAnbm90aWZpY2F0aW9uOndoYXRzYXBwOmF1dGhUb2tlbicsXG5cbiAgICAvLyBGaXJlYmFzZSBTZXR0aW5nc1xuICAgIEZpcmViYXNlQXBpS2V5ID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTphcGlLZXknLFxuICAgIEZpcmViYXNlUHJvamVjdElkID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTpwcm9qZWN0SWQnLFxuICAgIEZpcmViYXNlU2VuZGVySWQgPSAnbm90aWZpY2F0aW9uOmZpcmViYXNlOnNlbmRlcklkJyxcbiAgICBGaXJlYmFzZUFwcElkID0gJ25vdGlmaWNhdGlvbjpmaXJlYmFzZTphcHBJZCcsXG59XG4iXX0=","import { RootConfig } from '@acorex/modules/form-template-management';\nimport { AXPSettingKeys } from './settings.keys';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetsList } from '@acorex/modules/common';\nexport class AXMSettingProvider {\n constructor(injector) {\n this.injector = injector;\n this.translateService = this.injector.get(AXTranslationService);\n }\n async provide(context) {\n const trans = async (key) => await this.translateService.translateAsync(`settings.notification-settings.${key}`, { scope: 'notification-management' });\n context\n // Add Notification Settings Group\n .addGroup('notification-settings', await trans('title'), await trans('description'), RootConfig.module.icon)\n // SMTP Settings Section\n .addSection('smtp-settings', await trans('smtp.title'), await trans('smtp.description'))\n .addSetting({\n key: AXPSettingKeys.Server,\n title: await trans('smtp.server.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('smtp.server.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Port,\n title: await trans('smtp.port.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: 587,\n widget: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: {\n minValue: 1,\n maxValue: 65535,\n },\n },\n description: await trans('smtp.port.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Username,\n title: await trans('smtp.username.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('smtp.username.description'),\n })\n .addSetting({\n key: AXPSettingKeys.Password,\n title: await trans('smtp.password.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.PasswordBox,\n },\n description: await trans('smtp.password.description'),\n })\n .addSetting({\n key: AXPSettingKeys.UseSSL,\n title: await trans('smtp.ssl.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n description: await trans('smtp.ssl.description'),\n })\n .addSetting({\n key: AXPSettingKeys.UseTLS,\n title: await trans('smtp.tls.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: true,\n widget: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n description: await trans('smtp.tls.description'),\n })\n .endSection()\n // Telegram Settings Section\n .addSection('telegram-settings', await trans('telegram.title'), await trans('telegram.description'))\n .addSetting({\n key: AXPSettingKeys.TelegramToken,\n title: await trans('telegram.token.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('telegram.token.description'),\n })\n .addSetting({\n key: AXPSettingKeys.TelegramChatId,\n title: await trans('telegram.chat-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('telegram.chat-id.description'),\n })\n .endSection()\n // WhatsApp Settings Section\n .addSection('whatsapp-settings', await trans('whatsapp.title'), await trans('whatsapp.description'))\n .addSetting({\n key: AXPSettingKeys.WhatsAppApiUrl,\n title: await trans('whatsapp.api-url.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('whatsapp.api-url.description'),\n })\n .addSetting({\n key: AXPSettingKeys.WhatsAppAuthToken,\n title: await trans('whatsapp.auth-token.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.PasswordBox,\n },\n description: await trans('whatsapp.auth-token.description'),\n })\n .endSection()\n // Firebase Settings Section\n .addSection('firebase-settings', await trans('firebase.title'), await trans('firebase.description'))\n .addSetting({\n key: AXPSettingKeys.FirebaseApiKey,\n title: await trans('firebase.api-key.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.api-key.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseProjectId,\n title: await trans('firebase.project-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.project-id.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseSenderId,\n title: await trans('firebase.sender-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.sender-id.description'),\n })\n .addSetting({\n key: AXPSettingKeys.FirebaseAppId,\n title: await trans('firebase.app-id.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: '',\n widget: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n description: await trans('firebase.app-id.description'),\n })\n .endSection()\n // End Notification Settings Group\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9zZXR0aW5ncy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV4RCxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGckIscUJBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUVsQyxDQUFDO0lBRTNDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBNEM7UUFDeEQsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLGtDQUFrQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7UUFFL0osT0FBTztZQUNMLGtDQUFrQzthQUNqQyxRQUFRLENBQ1AsdUJBQXVCLEVBQ3ZCLE1BQU0sS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUNwQixNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFDMUIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCO1lBRUQsd0JBQXdCO2FBQ3ZCLFVBQVUsQ0FBQyxlQUFlLEVBQUUsTUFBTSxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUUsTUFBTSxLQUFLLENB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QUFFLE1BQU0sS0FBSyxDQUFDLGlDQUFpQyxDQUFDO1NBQzVELENBQUM7YUFDRCxVQUFVLENBQUM7WUFDVixHQUFHLEVBQUUsY0FBYyxDQUFDLGdCQUFnQjtZQUNwQyxLQUFLLEVBQUUsTUFBTSxLQUFLLENBQUMsMEJBQTBCLENBQUM7WUFDOUMsS0FBSyxFQUFFLEdBQUc7WUFDVixXQUFXLEVBQUUsSUFBSTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLGNBQWMsQ0FBQyxPQUFPLENBQUMsT0FBTzthQUNyQztZQUNELFdBQVcsRUFBRSxNQUFNLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztTQUMzRCxDQUFDO2FBQ0QsVUFBVSxDQUFDO1lBQ1YsR0FBRyxFQUFFLGNBQWMsQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztZQUMzQyxLQUFLLEVBQUUsR0FBRztZQUNWLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPO2FBQ3JDO1lBQ0QsV0FBVyxFQUFFLE1BQU0sS0FBSyxDQUFDLDZCQUE2QixDQUFDO1NBQ3hELENBQUM7YUFDRCxVQUFVLEVBQUU7WUFFYixrQ0FBa0M7YUFDakMsUUFBUSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9mb3JtLXRlbXBsYXRlLW1hbmFnZW1lbnQnO1xuaW1wb3J0IHsgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlciwgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBTZXR0aW5nS2V5cyB9IGZyb20gJy4vc2V0dGluZ3Mua2V5cyc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNldHRpbmdQcm92aWRlciBpbXBsZW1lbnRzIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHsgfVxuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB0cmFucyA9IGFzeW5jIChrZXk6IHN0cmluZykgPT4gYXdhaXQgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKGBzZXR0aW5ncy5ub3RpZmljYXRpb24tc2V0dGluZ3MuJHtrZXl9YCwgeyBzY29wZTogJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50JyB9KTtcblxuICAgIGNvbnRleHRcbiAgICAgIC8vIEFkZCBOb3RpZmljYXRpb24gU2V0dGluZ3MgR3JvdXBcbiAgICAgIC5hZGRHcm91cChcbiAgICAgICAgJ25vdGlmaWNhdGlvbi1zZXR0aW5ncycsXG4gICAgICAgIGF3YWl0IHRyYW5zKCd0aXRsZScpLFxuICAgICAgICBhd2FpdCB0cmFucygnZGVzY3JpcHRpb24nKSxcbiAgICAgICAgUm9vdENvbmZpZy5tb2R1bGUuaWNvblxuICAgICAgKVxuXG4gICAgICAvLyBTTVRQIFNldHRpbmdzIFNlY3Rpb25cbiAgICAgIC5hZGRTZWN0aW9uKCdzbXRwLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3NtdHAudGl0bGUnKSwgYXdhaXQgdHJhbnMoJ3NtdHAuZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5TZXJ2ZXIsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnc210cC5zZXJ2ZXIudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnNlcnZlci5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5Qb3J0LFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAucG9ydC50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1QnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiA1ODcsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTnVtYmVyQm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIG1pblZhbHVlOiAxLFxuICAgICAgICAgICAgbWF4VmFsdWU6IDY1NTM1LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnc210cC5wb3J0LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlVzZXJuYW1lLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAudXNlcm5hbWUudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnVzZXJuYW1lLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlBhc3N3b3JkLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3NtdHAucGFzc3dvcmQudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuUGFzc3dvcmRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnc210cC5wYXNzd29yZC5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5Vc2VTU0wsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnc210cC5zc2wudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVG9nZ2xlU3dpdGNoLFxuICAgICAgICB9LFxuICAgICAgICBkZXNjcmlwdGlvbjogYXdhaXQgdHJhbnMoJ3NtdHAuc3NsLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlVzZVRMUyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdzbXRwLnRscy50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1QnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRvZ2dsZVN3aXRjaCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdzbXRwLnRscy5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gVGVsZWdyYW0gU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ3RlbGVncmFtLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3RlbGVncmFtLnRpdGxlJyksIGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLlRlbGVncmFtVG9rZW4sXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygndGVsZWdyYW0udG9rZW4udGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS50b2tlbi5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBTZXR0aW5nS2V5cy5UZWxlZ3JhbUNoYXRJZCxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd0ZWxlZ3JhbS5jaGF0LWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygndGVsZWdyYW0uY2hhdC1pZC5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gV2hhdHNBcHAgU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ3doYXRzYXBwLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ3doYXRzYXBwLnRpdGxlJyksIGF3YWl0IHRyYW5zKCd3aGF0c2FwcC5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLldoYXRzQXBwQXBpVXJsLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3doYXRzYXBwLmFwaS11cmwudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd3aGF0c2FwcC5hcGktdXJsLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLldoYXRzQXBwQXV0aFRva2VuLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3doYXRzYXBwLmF1dGgtdG9rZW4udGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuUGFzc3dvcmRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnd2hhdHNhcHAuYXV0aC10b2tlbi5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gRmlyZWJhc2UgU2V0dGluZ3MgU2VjdGlvblxuICAgICAgLmFkZFNlY3Rpb24oJ2ZpcmViYXNlLXNldHRpbmdzJywgYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLnRpdGxlJyksIGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5kZXNjcmlwdGlvbicpKVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlQXBpS2V5LFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLmFwaS1rZXkudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5hcGkta2V5LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlUHJvamVjdElkLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ2ZpcmViYXNlLnByb2plY3QtaWQudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdmaXJlYmFzZS5wcm9qZWN0LWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlU2VuZGVySWQsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnZmlyZWJhc2Uuc2VuZGVyLWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnZmlyZWJhc2Uuc2VuZGVyLWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFNldHRpbmdLZXlzLkZpcmViYXNlQXBwSWQsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygnZmlyZWJhc2UuYXBwLWlkLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygnZmlyZWJhc2UuYXBwLWlkLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmVuZFNlY3Rpb24oKVxuXG4gICAgICAvLyBFbmQgTm90aWZpY2F0aW9uIFNldHRpbmdzIEdyb3VwXG4gICAgICAuZW5kR3JvdXAoKTtcbiAgfVxufVxuIl19","import { AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPDataGenerator } from '@acorex/platform/core';\nimport { AXPEntityDataProviderImpl, AXPEntityStorageService } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nexport async function myNotificationEntityFactory(injector) {\n const storageService = injector.get(AXPEntityStorageService);\n const dataProvider = new AXPEntityDataProviderImpl(storageService, 'notifications');\n const moduleName = 'notification-management';\n const scope = `#${moduleName}`;\n const entityDef = {\n module: moduleName,\n name: 'notification',\n title: '@notification-management:my',\n formats: {\n individual: '@notification-management:my',\n plural: '@notification-management:my',\n },\n groups: [\n { id: 'data', title: 'Data' },\n { id: 'content', title: 'Content' },\n { id: 'action', title: 'Action' },\n { id: 'user', title: 'User' },\n { id: 'template', title: 'Template' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'data',\n schema: {\n dataType: 'string',\n visible: false,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: '@general:terms.body',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n },\n },\n },\n {\n name: 'channel',\n title: '@notification-management:channel',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['InApp', 'Email', 'SMS'], multiple: false },\n },\n },\n },\n {\n name: 'content.type',\n title: '@notification-management:content.type',\n groupId: 'content',\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'action.type',\n title: '@general:terms.workflow.action.type',\n groupId: 'action',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Link', 'Entity', 'Popup'], multiple: false },\n },\n },\n },\n {\n name: 'User.name',\n title: '@general:terms.people.user',\n groupId: 'user',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'template.category',\n title: '@notification-management:template.category',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Inbox', 'Archive'], multiple: false },\n },\n },\n },\n {\n name: 'template.prority',\n title: '@notification-management:template.priority',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Warning', 'Danger', 'Notice'], multiple: false },\n },\n },\n },\n {\n name: 'template.isPinned',\n title: '@notification-management:template.isPinned',\n groupId: 'template',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n options: {\n label: 'Is Pinned',\n },\n },\n },\n },\n {\n name: 'readAt',\n title: '@notification-management:readAt',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n {\n name: 'createAt',\n title: '@notification-management:createAt',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'body' },\n { name: 'channel' },\n { name: 'user.name' },\n { name: 'template.category' },\n { name: 'template.prority' },\n { name: 'createAt' },\n { name: 'readAt' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n await dataProvider.insertOne(entity);\n return entity;\n },\n },\n delete: {\n execute: async (id) => {\n await dataProvider.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n await dataProvider.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataProvider.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const list = await dataProvider.getAll();\n return {\n total: list.length,\n items: list.slice(e.skip, e.skip + e.take),\n };\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n list: {\n actions: [\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n ],\n views: [{ name: 'all', title: 'All Notifications', fixed: true, columns: [], conditions: [], sorts: [] }],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktbm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvbXktbm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR3hFLE1BQU0sQ0FBQyxLQUFLLFVBQVUsMkJBQTJCLENBQUMsUUFBa0I7SUFDbEUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzdELE1BQU0sWUFBWSxHQUFHLElBQUkseUJBQXlCLENBQU0sY0FBYyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3pGLE1BQU0sVUFBVSxHQUFHLHlCQUF5QixDQUFDO0lBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7SUFFL0IsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVU7UUFDbEIsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLDZCQUE2QjtRQUNwQyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsNkJBQTZCO1lBQ3pDLE1BQU0sRUFBRSw2QkFBNkI7U0FDdEM7UUFDRCxNQUFNLEVBQUU7WUFDTixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUM3QixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZ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RixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBEYXRhR2VuZXJhdG9yIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUEVudGl0eURhdGFQcm92aWRlckltcGwsIEFYUEVudGl0eVN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0LWNvcmUnO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG15Tm90aWZpY2F0aW9uRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3Qgc3RvcmFnZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQRW50aXR5U3RvcmFnZVNlcnZpY2UpO1xuICBjb25zdCBkYXRhUHJvdmlkZXIgPSBuZXcgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbDxhbnk+KHN0b3JhZ2VTZXJ2aWNlLCAnbm90aWZpY2F0aW9ucycpO1xuICBjb25zdCBtb2R1bGVOYW1lID0gJ25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50JztcbiAgY29uc3Qgc2NvcGUgPSBgIyR7bW9kdWxlTmFtZX1gO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogbW9kdWxlTmFtZSxcbiAgICBuYW1lOiAnbm90aWZpY2F0aW9uJyxcbiAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpteScsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpteScsXG4gICAgICBwbHVyYWw6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6bXknLFxuICAgIH0sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7IGlkOiAnZGF0YScsIHRpdGxlOiAnRGF0YScgfSxcbiAgICAgIHsgaWQ6ICdjb250ZW50JywgdGl0bGU6ICdDb250ZW50JyB9LFxuICAgICAgeyBpZDogJ2FjdGlvbicsIHRpdGxlOiAnQWN0aW9uJyB9LFxuICAgICAgeyBpZDogJ3VzZXInLCB0aXRsZTogJ1VzZXInIH0sXG4gICAgICB7IGlkOiAndGVtcGxhdGUnLCB0aXRsZTogJ1RlbXBsYXRlJyB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICB0aXRsZTogJ0lEJyxcbiAgICAgICAgZ3JvdXBJZDogJ2RhdGEnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2UsXG4gICAgICAgICAgbnVsbGFibGU6IGZhbHNlLFxuICAgICAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgICAgIHVuaXF1ZTogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdkYXRhJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmJvZHknLFxuICAgICAgICBncm91cElkOiAnZGF0YScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxhcmdlVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDpjaGFubmVsJyxcbiAgICAgICAgZ3JvdXBJZDogJ2RhdGEnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGRhdGFTb3VyY2U6IFsnSW5BcHAnLCAnRW1haWwnLCAnU01TJ10sIG11bHRpcGxlOiBmYWxzZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnY29udGVudC50eXBlJyxcbiAgICAgICAgdGl0bGU6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6Y29udGVudC50eXBlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2NvbnRlbnQnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2FjdGlvbi50eXBlJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy53b3JrZmxvdy5hY3Rpb24udHlwZScsXG4gICAgICAgIGdyb3VwSWQ6ICdhY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGRhdGFTb3VyY2U6IFsnTGluaycsICdFbnRpdHknLCAnUG9wdXAnXSwgbXVsdGlwbGU6IGZhbHNlIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdVc2VyLm5hbWUnLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLnBlb3BsZS51c2VyJyxcbiAgICAgICAgZ3JvdXBJZDogJ3VzZXInLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0ZW1wbGF0ZS5jYXRlZ29yeScsXG4gICAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OnRlbXBsYXRlLmNhdGVnb3J5JyxcbiAgICAgICAgZ3JvdXBJZDogJ3RlbXBsYXRlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczogeyBkYXRhU291cmNlOiBbJ0luYm94JywgJ0FyY2hpdmUnXSwgbXVsdGlwbGU6IGZhbHNlIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0ZW1wbGF0ZS5wcm9yaXR5JyxcbiAgICAgICAgdGl0bGU6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6dGVtcGxhdGUucHJpb3JpdHknLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGUnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3QsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGRhdGFTb3VyY2U6IFsnV2FybmluZycsICdEYW5nZXInLCAnTm90aWNlJ10sIG11bHRpcGxlOiBmYWxzZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUuaXNQaW5uZWQnLFxuICAgICAgICB0aXRsZTogJ0Bub3RpZmljYXRpb24tbWFuYWdlbWVudDp0ZW1wbGF0ZS5pc1Bpbm5lZCcsXG4gICAgICAgIGdyb3VwSWQ6ICd0ZW1wbGF0ZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5jaGVja2JveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbGFiZWw6ICdJcyBQaW5uZWQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlYWRBdCcsXG4gICAgICAgIHRpdGxlOiAnQG5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50OnJlYWRBdCcsXG4gICAgICAgIGdyb3VwSWQ6ICdkYXRhJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdkYXRldGltZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHsgZm9ybWF0OiAnZGF0ZScgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NyZWF0ZUF0JyxcbiAgICAgICAgdGl0bGU6ICdAbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQ6Y3JlYXRlQXQnLFxuICAgICAgICBncm91cElkOiAnZGF0YScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuZGF0ZVRpbWUsXG4gICAgICAgICAgICBvcHRpb25zOiB7IGZvcm1hdDogJ2RhdGUnIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICd0aXRsZScgfSxcbiAgICAgIHsgbmFtZTogJ2JvZHknIH0sXG4gICAgICB7IG5hbWU6ICdjaGFubmVsJyB9LFxuICAgICAgeyBuYW1lOiAndXNlci5uYW1lJyB9LFxuICAgICAgeyBuYW1lOiAndGVtcGxhdGUuY2F0ZWdvcnknIH0sXG4gICAgICB7IG5hbWU6ICd0ZW1wbGF0ZS5wcm9yaXR5JyB9LFxuICAgICAgeyBuYW1lOiAnY3JlYXRlQXQnIH0sXG4gICAgICB7IG5hbWU6ICdyZWFkQXQnIH0sXG4gICAgXSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBlbnRpdHkgPSBPYmplY3QuYXNzaWduKGRhdGEsIHsgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpIH0pO1xuICAgICAgICAgIGF3YWl0IGRhdGFQcm92aWRlci5pbnNlcnRPbmUoZW50aXR5KTtcbiAgICAgICAgICByZXR1cm4gZW50aXR5O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIGF3YWl0IGRhdGFQcm92aWRlci5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgYXdhaXQgZGF0YVByb3ZpZGVyLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhUHJvdmlkZXIuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBsaXN0ID0gYXdhaXQgZGF0YVByb3ZpZGVyLmdldEFsbCgpO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0b3RhbDogbGlzdC5sZW5ndGgsXG4gICAgICAgICAgICBpdGVtczogbGlzdC5zbGljZShlLnNraXAsIGUuc2tpcCArIGUudGFrZSksXG4gICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnRGVsZXRlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5TZWxlY3RlZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW3sgbmFtZTogJ2FsbCcsIHRpdGxlOiAnQWxsIE5vdGlmaWNhdGlvbnMnLCBmaXhlZDogdHJ1ZSwgY29sdW1uczogW10sIGNvbmRpdGlvbnM6IFtdLCBzb3J0czogW10gfV0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cbiJdfQ==","import { AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel/channel.service';\nexport async function notificationLogEntityFactory(injector) {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: 'notification-management',\n name: 'notification',\n title: 'Notification',\n formats: {\n individual: 'NotificationLog',\n plural: 'NotificationLogs',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: `t(\"name\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'status',\n title: `t(\"status\", { scope: \"${i18n}\" })`,\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.getOne(id);\n resolve(entity);\n }, 500);\n });\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 single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: '@general:actions.detail.title',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: '@general:terms.interface.selection.all-items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWxvZy5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9ub3RpZmljYXRpb24tbG9nLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFGLE1BQU0sQ0FBQyxLQUFLLFVBQVUsNEJBQTRCLENBQUMsUUFBa0I7SUFDbkUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ2hGLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSx5QkFBeUI7UUFDakMsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLGNBQWM7UUFDckIsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLGlCQUFpQjtZQUM3QixNQUFNLEVBQUUsa0JBQWtCO1NBQzNCO1FBQ0QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsTUFBTSxFQUFFO1lBQ047Z0JBQ0UsRUFBRSxFQUFFLGNBQWM7Z0JBQ2xCLEtBQUssRUFBRSxjQUFjO2FBQ3RCO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsdUJBQXVCLElBQUksTUFBTTtnQkFDeEMsT0FBTyxFQUFFLGNBQWM7Z0JBQ3ZCLE1BQU0s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RTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLEVBQUU7cUNBQ1o7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFNBQVM7NEJBQ2YsTUFBTSxFQUFFO2dDQUNOLFNBQVMsRUFBRTtvQ0FDVCxFQUFFLEVBQUU7d0NBQ0YsT0FBTyxFQUFFLENBQUM7cUNBQ1g7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7aUJBQ1o7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxLQUFLLEVBQUUsK0JBQStCOzRCQUN0QyxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxNQUFNOzRCQUNaLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0w7NEJBQ0UsSUFBSSxFQUFFLEtBQUs7NEJBQ1gsS0FBSyxFQUFFLDhDQUE4Qzs0QkFDckQsS0FBSyxFQUFFLElBQUk7NEJBQ1gsT0FBTyxFQUFFLEVBQUU7NEJBQ1gsVUFBVSxFQUFFLEVBQUU7NEJBQ2QsS0FBSyxFQUFFLEVBQUU7eUJBQ1Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eUNvbW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTU5vdGlmaWNhdGlvbk1hbmFnZW1lbnRDaGFubmVsRW50aXR5U2VydmljZSB9IGZyb20gJy4vY2hhbm5lbC9jaGFubmVsLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm90aWZpY2F0aW9uTG9nRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNTm90aWZpY2F0aW9uTWFuYWdlbWVudENoYW5uZWxFbnRpdHlTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdub3RpZmljYXRpb24nLFxuICAgIHRpdGxlOiAnTm90aWZpY2F0aW9uJyxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiAnTm90aWZpY2F0aW9uTG9nJyxcbiAgICAgIHBsdXJhbDogJ05vdGlmaWNhdGlvbkxvZ3MnLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICB0aXRsZTogJ05vdGlmaWNhdGlvbicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiBgdChcIm5hbWVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3N0YXR1cycsXG4gICAgICAgIHRpdGxlOiBgdChcInN0YXR1c1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAnYm9keScgfSwgeyBuYW1lOiAndXNlci5uYW1lJyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3VzZXIubmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDphY3Rpb25zLmRldGFpbC50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdvcGVuLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdhbGwnLFxuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmludGVyZmFjZS5zZWxlY3Rpb24uYWxsLWl0ZW1zJyxcbiAgICAgICAgICAgICAgZml4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFtdLFxuICAgICAgICAgICAgICBjb25kaXRpb25zOiBbXSxcbiAgICAgICAgICAgICAgc29ydHM6IFtdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2Fjb3JleC1tb2R1bGVzLW5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1","i2","i3","i4","RootConfig"],"mappings":"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"}