@acorex/modules 20.2.0-next.3 → 20.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/contact-management/index.d.ts +21 -163
  2. package/content-management/index.d.ts +59 -2
  3. package/conversation/index.d.ts +77 -68
  4. package/dashboard-management/index.d.ts +7 -4
  5. package/data-management/index.d.ts +66 -10
  6. package/document-management/index.d.ts +51 -2
  7. package/fesm2022/{acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs → acorex-modules-application-management-module-designer.component-BitSGI0F.mjs} +7 -7
  8. package/fesm2022/{acorex-modules-application-management-module-designer.component-CsZjqUAj.mjs.map → acorex-modules-application-management-module-designer.component-BitSGI0F.mjs.map} +1 -1
  9. package/fesm2022/acorex-modules-application-management.mjs +41 -41
  10. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  11. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs → acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs} +47 -47
  12. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-tDyQQDnk.mjs.map → acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs.map} +1 -1
  13. package/fesm2022/{acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs → acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs} +5 -5
  14. package/fesm2022/{acorex-modules-auth-app-chooser.component-yu1DJZKN.mjs.map → acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs.map} +1 -1
  15. package/fesm2022/{acorex-modules-auth-blank.layout-ZjroQcdq.mjs → acorex-modules-auth-blank.layout-D0KDl_qd.mjs} +4 -4
  16. package/fesm2022/{acorex-modules-auth-blank.layout-ZjroQcdq.mjs.map → acorex-modules-auth-blank.layout-D0KDl_qd.mjs.map} +1 -1
  17. package/fesm2022/{acorex-modules-auth-login.module-D1aa1F6G.mjs → acorex-modules-auth-login.module-BHRC357P.mjs} +8 -8
  18. package/fesm2022/{acorex-modules-auth-login.module-D1aa1F6G.mjs.map → acorex-modules-auth-login.module-BHRC357P.mjs.map} +1 -1
  19. package/fesm2022/{acorex-modules-auth-master.layout-CGQmSlGQ.mjs → acorex-modules-auth-master.layout-DAYMmpBW.mjs} +5 -5
  20. package/fesm2022/{acorex-modules-auth-master.layout-CGQmSlGQ.mjs.map → acorex-modules-auth-master.layout-DAYMmpBW.mjs.map} +1 -1
  21. package/fesm2022/{acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs → acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs} +5 -5
  22. package/fesm2022/{acorex-modules-auth-oauth-callback.component-m9YiJ4e9.mjs.map → acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs.map} +1 -1
  23. package/fesm2022/{acorex-modules-auth-password.component-Cb3FJ1DZ.mjs → acorex-modules-auth-password.component-BJpxtJYh.mjs} +5 -5
  24. package/fesm2022/{acorex-modules-auth-password.component-Cb3FJ1DZ.mjs.map → acorex-modules-auth-password.component-BJpxtJYh.mjs.map} +1 -1
  25. package/fesm2022/{acorex-modules-auth-password.component-CiWdX7f_.mjs → acorex-modules-auth-password.component-NAY46d_2.mjs} +5 -5
  26. package/fesm2022/{acorex-modules-auth-password.component-CiWdX7f_.mjs.map → acorex-modules-auth-password.component-NAY46d_2.mjs.map} +1 -1
  27. package/fesm2022/{acorex-modules-auth-routes-pae8qpX9.mjs → acorex-modules-auth-routes-hvqL2dCH.mjs} +2 -2
  28. package/fesm2022/{acorex-modules-auth-routes-pae8qpX9.mjs.map → acorex-modules-auth-routes-hvqL2dCH.mjs.map} +1 -1
  29. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs → acorex-modules-auth-tenant-chooser.component-Cy94co3S.mjs} +4 -4
  30. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-Bk0l3XoV.mjs.map → acorex-modules-auth-tenant-chooser.component-Cy94co3S.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs → acorex-modules-auth-two-factor-code.component-CAbntIoR.mjs} +4 -4
  32. package/fesm2022/{acorex-modules-auth-two-factor-code.component-DDEIajiI.mjs.map → acorex-modules-auth-two-factor-code.component-CAbntIoR.mjs.map} +1 -1
  33. package/fesm2022/{acorex-modules-auth-two-factor.module-DtcoHPH4.mjs → acorex-modules-auth-two-factor.module-kPuT8yUw.mjs} +7 -7
  34. package/fesm2022/{acorex-modules-auth-two-factor.module-DtcoHPH4.mjs.map → acorex-modules-auth-two-factor.module-kPuT8yUw.mjs.map} +1 -1
  35. package/fesm2022/{acorex-modules-auth-user-sessions.component-sI6P2joA.mjs → acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs} +5 -5
  36. package/fesm2022/{acorex-modules-auth-user-sessions.component-sI6P2joA.mjs.map → acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs.map} +1 -1
  37. package/fesm2022/acorex-modules-auth.mjs +1 -1
  38. package/fesm2022/acorex-modules-calendar-management.mjs +22 -22
  39. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  40. package/fesm2022/{acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs → acorex-modules-common-search-popup.component-39U0-TIj.mjs} +4 -4
  41. package/fesm2022/{acorex-modules-common-search-popup.component-D7Y4T3Rp.mjs.map → acorex-modules-common-search-popup.component-39U0-TIj.mjs.map} +1 -1
  42. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs → acorex-modules-common-timeline-version-history-popup.component-_KJd8oGw.mjs} +4 -4
  43. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-ceEtE6qB.mjs.map → acorex-modules-common-timeline-version-history-popup.component-_KJd8oGw.mjs.map} +1 -1
  44. package/fesm2022/acorex-modules-common.mjs +72 -49
  45. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  46. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-_Bxallkg.mjs +863 -0
  47. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-_Bxallkg.mjs.map +1 -0
  48. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs → acorex-modules-contact-management-contact-method.entity-CIeZtPSy.mjs} +2 -35
  49. package/fesm2022/acorex-modules-contact-management-contact-method.entity-CIeZtPSy.mjs.map +1 -0
  50. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs → acorex-modules-contact-management-emergency-contact-category.entity-B2DPfonq.mjs} +2 -2
  51. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-DjOm8qQb.mjs.map → acorex-modules-contact-management-emergency-contact-category.entity-B2DPfonq.mjs.map} +1 -1
  52. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs → acorex-modules-contact-management-emergency-contact.entity-CeIealVy.mjs} +2 -2
  53. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-BQyjzPR8.mjs.map → acorex-modules-contact-management-emergency-contact.entity-CeIealVy.mjs.map} +1 -1
  54. package/fesm2022/acorex-modules-contact-management.mjs +1 -1
  55. package/fesm2022/acorex-modules-content-management.mjs +823 -14
  56. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  57. package/fesm2022/acorex-modules-conversation.mjs +161 -99
  58. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  59. package/fesm2022/acorex-modules-dashboard-management.mjs +246 -142
  60. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  61. package/fesm2022/acorex-modules-data-management.mjs +516 -50
  62. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  63. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs → acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs} +1132 -191
  64. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs.map +1 -0
  65. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs → acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs} +5 -5
  66. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-NaY7Mn95.mjs.map → acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs.map} +1 -1
  67. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs → acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs} +5 -5
  68. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-epxEuBU5.mjs.map → acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs.map} +1 -1
  69. package/fesm2022/{acorex-modules-document-management-details-view.component-CMI2Eokj.mjs → acorex-modules-document-management-details-view.component-v1VroVv-.mjs} +5 -5
  70. package/fesm2022/{acorex-modules-document-management-details-view.component-CMI2Eokj.mjs.map → acorex-modules-document-management-details-view.component-v1VroVv-.mjs.map} +1 -1
  71. package/fesm2022/acorex-modules-document-management-document-distribution-popup.component-DB4JJ3w7.mjs +123 -0
  72. package/fesm2022/acorex-modules-document-management-document-distribution-popup.component-DB4JJ3w7.mjs.map +1 -0
  73. package/fesm2022/acorex-modules-document-management-document-signature-popup.component-CK8MX49w.mjs +105 -0
  74. package/fesm2022/acorex-modules-document-management-document-signature-popup.component-CK8MX49w.mjs.map +1 -0
  75. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs → acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs} +5 -5
  76. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DBKgwm70.mjs.map → acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-document-management-drive.component-DoGdTL3n.mjs → acorex-modules-document-management-drive.component-D5OwpnAP.mjs} +40 -17
  78. package/fesm2022/acorex-modules-document-management-drive.component-D5OwpnAP.mjs.map +1 -0
  79. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs → acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs} +5 -5
  80. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BRsTSoln.mjs.map → acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs → acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs} +5 -5
  82. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CpYeYyR5.mjs.map → acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs → acorex-modules-document-management-link-dialog.component-DKOod11R.mjs} +4 -4
  84. package/fesm2022/{acorex-modules-document-management-link-dialog.component-ZteosW8O.mjs.map → acorex-modules-document-management-link-dialog.component-DKOod11R.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-document-management-list-view.component-C4VFnACA.mjs → acorex-modules-document-management-list-view.component-RaW67V7O.mjs} +5 -5
  86. package/fesm2022/{acorex-modules-document-management-list-view.component-C4VFnACA.mjs.map → acorex-modules-document-management-list-view.component-RaW67V7O.mjs.map} +1 -1
  87. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs → acorex-modules-document-management-meta-choose-popup.component-BZu8EbTh.mjs} +5 -5
  88. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-BZu8EbTh.mjs.map +1 -0
  89. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs → acorex-modules-document-management-meta-selector-widget-column.component-CBAE1KZM.mjs} +4 -4
  90. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-OXeS0kW8.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-CBAE1KZM.mjs.map} +1 -1
  91. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-B9Eqa6j0.mjs} +4 -4
  92. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-BdVSGb3M.mjs.map → acorex-modules-document-management-meta-selector-widget-designer.component-B9Eqa6j0.mjs.map} +1 -1
  93. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs → acorex-modules-document-management-meta-selector-widget-view.component-BPBqDMwP.mjs} +4 -4
  94. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-B-Vos30P.mjs.map → acorex-modules-document-management-meta-selector-widget-view.component-BPBqDMwP.mjs.map} +1 -1
  95. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs → acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs} +2 -2
  96. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-Bc7rbWwN.mjs.map → acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs.map} +1 -1
  97. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs → acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs} +5 -5
  98. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DWUVMrVt.mjs.map → acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs.map} +1 -1
  99. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs → acorex-modules-document-management-share-dialog.component-mBEu2KpG.mjs} +4 -4
  100. package/fesm2022/{acorex-modules-document-management-share-dialog.component-CkyuEAwV.mjs.map → acorex-modules-document-management-share-dialog.component-mBEu2KpG.mjs.map} +1 -1
  101. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs → acorex-modules-document-management-share-email-dialog.component-CI4SKdjk.mjs} +4 -4
  102. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DXjcTOny.mjs.map → acorex-modules-document-management-share-email-dialog.component-CI4SKdjk.mjs.map} +1 -1
  103. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs → acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs} +5 -5
  104. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-CCirsfoz.mjs.map → acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs.map} +1 -1
  105. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs → acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs} +5 -5
  106. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-58KZSQC4.mjs.map → acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs.map} +1 -1
  107. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  108. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-CeQnu6WW.mjs} +56 -56
  109. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-DxSYInAR.mjs.map → acorex-modules-form-template-management-acorex-modules-form-template-management-CeQnu6WW.mjs.map} +1 -1
  110. package/fesm2022/{acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs → acorex-modules-form-template-management-category.entity-DmrE2Pfz.mjs} +2 -2
  111. package/fesm2022/{acorex-modules-form-template-management-category.entity-DeCfvNqF.mjs.map → acorex-modules-form-template-management-category.entity-DmrE2Pfz.mjs.map} +1 -1
  112. package/fesm2022/{acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs → acorex-modules-form-template-management-designer.page-CarisHH5.mjs} +4 -4
  113. package/fesm2022/{acorex-modules-form-template-management-designer.page-BsjFGFOD.mjs.map → acorex-modules-form-template-management-designer.page-CarisHH5.mjs.map} +1 -1
  114. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs → acorex-modules-form-template-management-permission-definition.provider-CfOa446m.mjs} +2 -2
  115. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CsjgxSgC.mjs.map → acorex-modules-form-template-management-permission-definition.provider-CfOa446m.mjs.map} +1 -1
  116. package/fesm2022/{acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs → acorex-modules-form-template-management-settings.provider-hLlHnm-I.mjs} +2 -2
  117. package/fesm2022/{acorex-modules-form-template-management-settings.provider-_BIGyRt8.mjs.map → acorex-modules-form-template-management-settings.provider-hLlHnm-I.mjs.map} +1 -1
  118. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs → acorex-modules-form-template-management-template-picker.component-bxYZqmYR.mjs} +5 -5
  119. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-BCg756yD.mjs.map → acorex-modules-form-template-management-template-picker.component-bxYZqmYR.mjs.map} +1 -1
  120. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs → acorex-modules-form-template-management-template-widget-edit.component-D_Ys5kRT.mjs} +5 -5
  121. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DkqRsXMq.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-D_Ys5kRT.mjs.map} +1 -1
  122. package/fesm2022/{acorex-modules-form-template-management-template.entity-CQm29n5v.mjs → acorex-modules-form-template-management-template.entity-CvlwS8TY.mjs} +2 -2
  123. package/fesm2022/{acorex-modules-form-template-management-template.entity-CQm29n5v.mjs.map → acorex-modules-form-template-management-template.entity-CvlwS8TY.mjs.map} +1 -1
  124. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs → acorex-modules-form-template-management-viewer-popup.component-CE13nuke.mjs} +5 -5
  125. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-DW2Z5EcJ.mjs.map → acorex-modules-form-template-management-viewer-popup.component-CE13nuke.mjs.map} +1 -1
  126. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  127. package/fesm2022/acorex-modules-identifier-management.mjs +512 -0
  128. package/fesm2022/acorex-modules-identifier-management.mjs.map +1 -0
  129. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs → acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs} +36 -36
  130. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-a_wcGVPh.mjs.map → acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs.map} +1 -1
  131. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs → acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs} +5 -5
  132. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CsahsE-E.mjs.map → acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs.map} +1 -1
  133. package/fesm2022/acorex-modules-issue-management.mjs +1 -1
  134. package/fesm2022/{acorex-modules-locale-management-settings.provider-PKnqTses.mjs → acorex-modules-locale-management-settings.provider-ClVIqYIL.mjs} +2 -2
  135. package/fesm2022/{acorex-modules-locale-management-settings.provider-PKnqTses.mjs.map → acorex-modules-locale-management-settings.provider-ClVIqYIL.mjs.map} +1 -1
  136. package/fesm2022/acorex-modules-locale-management.mjs +1974 -1
  137. package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
  138. package/fesm2022/acorex-modules-location-management.mjs +56 -43
  139. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  140. package/fesm2022/acorex-modules-log-management.mjs +198 -10
  141. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  142. package/fesm2022/acorex-modules-notification-management.mjs +158 -100
  143. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  144. package/fesm2022/{acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs → acorex-modules-organization-management-add-item.component-DkXcoyHa.mjs} +4 -4
  145. package/fesm2022/{acorex-modules-organization-management-add-item.component-CzIIXsRJ.mjs.map → acorex-modules-organization-management-add-item.component-DkXcoyHa.mjs.map} +1 -1
  146. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs → acorex-modules-organization-management-org-chart-configuration.page-kVFv0xZ0.mjs} +5 -5
  147. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-XXAEpYNo.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-kVFv0xZ0.mjs.map} +1 -1
  148. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs → acorex-modules-organization-management-org-chart-configuration.service-7I15ZQGa.mjs} +4 -4
  149. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-CIveMQUH.mjs.map → acorex-modules-organization-management-org-chart-configuration.service-7I15ZQGa.mjs.map} +1 -1
  150. package/fesm2022/{acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs → acorex-modules-organization-management-org-chart.page-DuyhYwnh.mjs} +12 -12
  151. package/fesm2022/{acorex-modules-organization-management-org-chart.page-UqJ1VOJ-.mjs.map → acorex-modules-organization-management-org-chart.page-DuyhYwnh.mjs.map} +1 -1
  152. package/fesm2022/acorex-modules-organization-management.mjs +265 -122
  153. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  154. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-B8X8tXFw.mjs +714 -0
  155. package/fesm2022/acorex-modules-party-management-acorex-modules-party-management-B8X8tXFw.mjs.map +1 -0
  156. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs → acorex-modules-party-management-party-identifier-type.entity-b8aNBCpT.mjs} +238 -136
  157. package/fesm2022/acorex-modules-party-management-party-identifier-type.entity-b8aNBCpT.mjs.map +1 -0
  158. package/fesm2022/acorex-modules-party-management-party-identifier.entity-B_5MSDF1.mjs +470 -0
  159. package/fesm2022/acorex-modules-party-management-party-identifier.entity-B_5MSDF1.mjs.map +1 -0
  160. package/fesm2022/{acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs → acorex-modules-party-management-party-relationship.entity-CLAAuCde.mjs} +174 -218
  161. package/fesm2022/acorex-modules-party-management-party-relationship.entity-CLAAuCde.mjs.map +1 -0
  162. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs → acorex-modules-party-management-party-role.entity-C5BeakjX.mjs} +157 -162
  163. package/fesm2022/acorex-modules-party-management-party-role.entity-C5BeakjX.mjs.map +1 -0
  164. package/fesm2022/acorex-modules-party-management-party.entity-Blwg8o3o.mjs +538 -0
  165. package/fesm2022/acorex-modules-party-management-party.entity-Blwg8o3o.mjs.map +1 -0
  166. package/fesm2022/acorex-modules-party-management-permission-definition.provider-DwMPgZkB.mjs +59 -0
  167. package/fesm2022/acorex-modules-party-management-permission-definition.provider-DwMPgZkB.mjs.map +1 -0
  168. package/fesm2022/acorex-modules-party-management.mjs +2 -0
  169. package/fesm2022/acorex-modules-party-management.mjs.map +1 -0
  170. package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs +93 -0
  171. package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs.map +1 -0
  172. package/fesm2022/{acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs → acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs} +4 -4
  173. package/fesm2022/{acorex-modules-platform-management-list-version.component-wqhq6ek4.mjs.map → acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs.map} +1 -1
  174. package/fesm2022/acorex-modules-platform-management.mjs +483 -2129
  175. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  176. package/fesm2022/acorex-modules-project-management.mjs +43 -43
  177. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  178. package/fesm2022/{acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs → acorex-modules-report-management-report-create-root.component-CPR6H1R1.mjs} +4 -4
  179. package/fesm2022/{acorex-modules-report-management-report-create-root.component-CFNtnshF.mjs.map → acorex-modules-report-management-report-create-root.component-CPR6H1R1.mjs.map} +1 -1
  180. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs → acorex-modules-report-management-report-runner-root-page.component-BIUto_c9.mjs} +8 -9
  181. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-BIUto_c9.mjs.map +1 -0
  182. package/fesm2022/acorex-modules-report-management.mjs +279 -35
  183. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  184. package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
  185. package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
  186. package/fesm2022/acorex-modules-security-management.mjs +60 -60
  187. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  188. package/fesm2022/{acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs → acorex-modules-settings-management-setting-page.component-BWXHxXwS.mjs} +4 -4
  189. package/fesm2022/{acorex-modules-settings-management-setting-page.component-BhF5x-8D.mjs.map → acorex-modules-settings-management-setting-page.component-BWXHxXwS.mjs.map} +1 -1
  190. package/fesm2022/{acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs → acorex-modules-settings-management-setting-view.component-D5pKY0Ag.mjs} +4 -4
  191. package/fesm2022/{acorex-modules-settings-management-setting-view.component-Do_gNJ2t.mjs.map → acorex-modules-settings-management-setting-view.component-D5pKY0Ag.mjs.map} +1 -1
  192. package/fesm2022/acorex-modules-settings-management.mjs +6 -6
  193. package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
  194. package/fesm2022/acorex-modules-task-management.mjs +196 -153
  195. package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
  196. package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
  197. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  198. package/fesm2022/acorex-modules-training-management.mjs +44 -44
  199. package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
  200. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs → acorex-modules-workflow-management-acorex-modules-workflow-management-BfE17ZXY.mjs} +13 -13
  201. package/fesm2022/{acorex-modules-workflow-management-acorex-modules-workflow-management-DC7jdoqZ.mjs.map → acorex-modules-workflow-management-acorex-modules-workflow-management-BfE17ZXY.mjs.map} +1 -1
  202. package/fesm2022/{acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs → acorex-modules-workflow-management-task-board.page-2UTqXn3s.mjs} +20 -20
  203. package/fesm2022/{acorex-modules-workflow-management-task-board.page-Bv2GAPaN.mjs.map → acorex-modules-workflow-management-task-board.page-2UTqXn3s.mjs.map} +1 -1
  204. package/fesm2022/acorex-modules-workflow-management.mjs +1 -1
  205. package/identifier-management/README.md +269 -0
  206. package/identifier-management/index.d.ts +271 -0
  207. package/locale-management/index.d.ts +22 -1
  208. package/location-management/index.d.ts +4 -1
  209. package/notification-management/index.d.ts +9 -5
  210. package/package.json +9 -1
  211. package/party-management/README.md +177 -0
  212. package/party-management/index.d.ts +86 -0
  213. package/platform-management/index.d.ts +2 -140
  214. package/report-management/index.d.ts +481 -35
  215. package/task-management/index.d.ts +4 -4
  216. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs +0 -2600
  217. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-Co0tt3cj.mjs.map +0 -1
  218. package/fesm2022/acorex-modules-contact-management-address-type.entity-DQZwgXki.mjs.map +0 -1
  219. package/fesm2022/acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs +0 -781
  220. package/fesm2022/acorex-modules-contact-management-contact-address.entity-CFfRywsB.mjs.map +0 -1
  221. package/fesm2022/acorex-modules-contact-management-contact-method.entity-Ci93_mb9.mjs.map +0 -1
  222. package/fesm2022/acorex-modules-contact-management-contact-relationship.entity-CqdXpqLN.mjs.map +0 -1
  223. package/fesm2022/acorex-modules-contact-management-contact-source.entity-BsF9p0GK.mjs.map +0 -1
  224. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-DXGX-riG.mjs.map +0 -1
  225. package/fesm2022/acorex-modules-document-management-drive.component-DoGdTL3n.mjs.map +0 -1
  226. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-D5Csi3A3.mjs.map +0 -1
  227. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs +0 -1975
  228. package/fesm2022/acorex-modules-locale-management-acorex-modules-locale-management-CfaOC6U5.mjs.map +0 -1
  229. package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-CbfJ_7Da.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-content-management.mjs","sources":["../tmp-esm2022/content-management/lib/const.js","../tmp-esm2022/content-management/lib/menu.provider.js","../tmp-esm2022/content-management/lib/entity.provider.js","../tmp-esm2022/content-management/lib/permission-definition.provider.js","../tmp-esm2022/content-management/lib/setting.provider.js","../tmp-esm2022/content-management/lib/search-command.provider.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.service.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.datasource.js","../tmp-esm2022/content-management/lib/features/promotion/components/promotion-slot/promotion-slot.component.js","../tmp-esm2022/content-management/lib/content-management.module.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.entity.js","../tmp-esm2022/content-management/acorex-modules-content-management.js"],"sourcesContent":["const config = {\n i18n: 'content-management',\n};\nexport const RootConfig = {\n config,\n module: {\n module: 'ContentManagement',\n name: 'ContentManagement',\n title: `t('module-name', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-invoice',\n },\n entities: {\n promotion: {\n name: 'Promotion',\n title: `t(\"promotion\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"promotions\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-megaphone',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxNQUFNLEdBQUc7SUFDYixJQUFJLEVBQUUsb0JBQW9CO0NBQzNCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxtQkFBbUI7UUFDM0IsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixLQUFLLEVBQUUsNEJBQTRCLE1BQU0sQ0FBQyxJQUFJLEtBQUs7UUFDbkQsSUFBSSxFQUFFLDBCQUEwQjtLQUNqQztJQUNELFFBQVEsRUFBRTtRQUNSLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxXQUFXO1lBQ2pCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNwRCxXQUFXLEVBQUUsNkJBQTZCLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDM0QsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ2NvbnRlbnQtbWFuYWdlbWVudCcsXG59O1xuZXhwb3J0IGNvbnN0IFJvb3RDb25maWcgPSB7XG4gIGNvbmZpZyxcbiAgbW9kdWxlOiB7XG4gICAgbW9kdWxlOiAnQ29udGVudE1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdDb250ZW50TWFuYWdlbWVudCcsXG4gICAgdGl0bGU6IGB0KCdtb2R1bGUtbmFtZScsIHtzY29wZTpcIiR7Y29uZmlnLmkxOG59XCJ9KWAsXG4gICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtaW52b2ljZScsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgcHJvbW90aW9uOiB7XG4gICAgICBuYW1lOiAnUHJvbW90aW9uJyxcbiAgICAgIHRpdGxlOiBgdChcInByb21vdGlvblwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwicHJvbW90aW9uc1wiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLW1lZ2FwaG9uZScsXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nexport class AXMMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n }\n async provide(context) {\n const scope = RootConfig.config.i18n;\n const module = RootConfig.module;\n context.addItems([\n {\n priority: 9002,\n text: `t('module-name', {scope:\"${scope}\"})`,\n icon: module.icon,\n name: 'content-management-menu',\n children: [\n {\n text: RootConfig.entities.promotion.title,\n path: this.entityService.createPath(module.name, RootConfig.entities.promotion.name),\n icon: RootConfig.entities.promotion.icon,\n priority: 1,\n name: 'content-management-promotion-menu-item'\n }\n ],\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVyQyxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUNVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUF3Qm5ELENBQUM7SUF0QkMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUErQjtRQUMzQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNyQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBRWpDLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDZjtnQkFDRSxRQUFRLEVBQUUsSUFBSTtnQkFDZCxJQUFJLEVBQUUsNEJBQTRCLEtBQUssS0FBSztnQkFDNUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixRQUFRLEVBQUU7b0JBQ1I7d0JBQ0UsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUs7d0JBQ3pDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQzt3QkFDcEYsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUk7d0JBQ3hDLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksRUFBRSx3Q0FBd0M7cUJBQy9DO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBNZW51UHJvdmlkZXIsIEFYUE1lbnVQcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuXG5leHBvcnQgY2xhc3MgQVhNTWVudVByb3ZpZGVyIGltcGxlbWVudHMgQVhQTWVudVByb3ZpZGVyIHtcbiAgcHJpdmF0ZSBlbnRpdHlTZXJ2aWNlID0gaW5qZWN0KEFYUEVudGl0eVNlcnZpY2UpO1xuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQTWVudVByb3ZpZGVyQ29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHNjb3BlID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcbiAgICBjb25zdCBtb2R1bGUgPSBSb290Q29uZmlnLm1vZHVsZTtcblxuICAgIGNvbnRleHQuYWRkSXRlbXMoW1xuICAgICAge1xuICAgICAgICBwcmlvcml0eTogOTAwMixcbiAgICAgICAgdGV4dDogYHQoJ21vZHVsZS1uYW1lJywge3Njb3BlOlwiJHtzY29wZX1cIn0pYCxcbiAgICAgICAgaWNvbjogbW9kdWxlLmljb24sXG4gICAgICAgIG5hbWU6ICdjb250ZW50LW1hbmFnZW1lbnQtbWVudScsXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdGV4dDogUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24udGl0bGUsXG4gICAgICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChtb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSksXG4gICAgICAgICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5pY29uLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDEsXG4gICAgICAgICAgICBuYW1lOiAnY29udGVudC1tYW5hZ2VtZW50LXByb21vdGlvbi1tZW51LWl0ZW0nXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n // case RootConfig.entities.sample.name:\n // return (await import('./entities/sample/sample.entity')).factory(this.injector);\n case RootConfig.entities.promotion.name: {\n const entity = (await import('./entities/promotion/promotion.entity')).promotionEntityFactory;\n return entity(this.injector);\n }\n }\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0eS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHckMsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0F1QnJDO0lBckJRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsUUFBUSxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsd0NBQXdDO2dCQUN4QyxxRkFBcUY7Z0JBQ3JGLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDeEMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUM7b0JBQzlGLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDL0IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQXZCVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUEVudGl0eURlZmluaXRpb25Mb2FkZXIsXG4gIEFYUEVudGl0eURlZmluaXRpb25QcmVsb2FkZXIsXG4gIEFYUEVudGl0eVByZWxvYWRFbnRpdHksXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1FbnRpdHlQcm92aWRlciBpbXBsZW1lbnRzIEFYUEVudGl0eURlZmluaXRpb25Mb2FkZXIsIEFYUEVudGl0eURlZmluaXRpb25QcmVsb2FkZXIge1xuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBwdWJsaWMgcHJlbG9hZCgpOiBBWFBFbnRpdHlQcmVsb2FkRW50aXR5W10ge1xuICAgIGNvbnN0IG1vZHVsZSA9IFJvb3RDb25maWcubW9kdWxlLm5hbWU7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oT2JqZWN0LnZhbHVlcyhSb290Q29uZmlnLmVudGl0aWVzKSkubWFwKChlbnRpdHk6IGFueSkgPT4gKHtcbiAgICAgIG1vZHVsZTogbW9kdWxlLFxuICAgICAgZW50aXR5OiBlbnRpdHkubmFtZSxcbiAgICB9KSk7XG4gIH1cblxuICBhc3luYyBnZXQobW9kdWxlTmFtZTogc3RyaW5nLCBlbnRpdHlOYW1lOiBzdHJpbmcpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgICBpZiAobW9kdWxlTmFtZSA9PSBSb290Q29uZmlnLm1vZHVsZS5uYW1lKSB7XG4gICAgICBzd2l0Y2ggKGVudGl0eU5hbWUpIHtcbiAgICAgICAgLy8gY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLnNhbXBsZS5uYW1lOlxuICAgICAgICAvLyAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL3NhbXBsZS9zYW1wbGUuZW50aXR5JykpLmZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZToge1xuICAgICAgICAgIGNvbnN0IGVudGl0eSA9IChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5lbnRpdHknKSkucHJvbW90aW9uRW50aXR5RmFjdG9yeTtcbiAgICAgICAgICByZXR1cm4gZW50aXR5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=","export class AXMPermissionDefinitionProvider {\n async define(context) {\n // context.addPermissions([\n // {\n // name: 'view_templates',\n // title: 'Permission to view templates',\n // isArchived: false,\n // },\n // ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sK0JBQStCO0lBQzFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBK0M7UUFDMUQsMkJBQTJCO1FBQzNCLE1BQU07UUFDTiw4QkFBOEI7UUFDOUIsNkNBQTZDO1FBQzdDLHlCQUF5QjtRQUN6QixPQUFPO1FBQ1AsTUFBTTtJQUNSLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIsIEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcblxuZXhwb3J0IGNsYXNzIEFYTVBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgYXN5bmMgZGVmaW5lKGNvbnRleHQ6IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gY29udGV4dC5hZGRQZXJtaXNzaW9ucyhbXG4gICAgLy8gICB7XG4gICAgLy8gICAgIG5hbWU6ICd2aWV3X3RlbXBsYXRlcycsXG4gICAgLy8gICAgIHRpdGxlOiAnUGVybWlzc2lvbiB0byB2aWV3IHRlbXBsYXRlcycsXG4gICAgLy8gICAgIGlzQXJjaGl2ZWQ6IGZhbHNlLFxuICAgIC8vICAgfSxcbiAgICAvLyBdKTtcbiAgfVxufVxuIl19","export class AXMSettingProvider {\n async provide(context) {\n // context\n // // Add Form Template Group\n // .addGroup('form-template', 'Form Template', 'Settings related to form templates.', RootConfig.module.icon)\n // // Start Interface Section\n // .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n // .addSetting({\n // key: 'history-panel',\n // title: 'Show History Panel',\n // scope: 'U',\n // isInherited: true,\n // defaultValue: false,\n // widget: {\n // type: AXPWidgetsCatalog.toggle,\n // },\n // description: 'Enable or disable the history panel for forms.',\n // validationRules: [\n // {\n // rule: 'required',\n // },\n // ],\n // })\n // .endSection()\n // .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9zZXR0aW5nLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUE0QztRQUN4RCxVQUFVO1FBQ1YsK0JBQStCO1FBQy9CLCtHQUErRztRQUMvRywrQkFBK0I7UUFDL0Isd0ZBQXdGO1FBQ3hGLGtCQUFrQjtRQUNsQiw0QkFBNEI7UUFDNUIsbUNBQW1DO1FBQ25DLGtCQUFrQjtRQUNsQix5QkFBeUI7UUFDekIsMkJBQTJCO1FBQzNCLGdCQUFnQjtRQUNoQix3Q0FBd0M7UUFDeEMsU0FBUztRQUNULHFFQUFxRTtRQUNyRSx5QkFBeUI7UUFDekIsVUFBVTtRQUNWLDRCQUE0QjtRQUM1QixXQUFXO1FBQ1gsU0FBUztRQUNULE9BQU87UUFDUCxrQkFBa0I7UUFDbEIsaUJBQWlCO0lBQ25CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIsIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNU2V0dGluZ1Byb3ZpZGVyIGltcGxlbWVudHMgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlciB7XG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBjb250ZXh0XG4gICAgLy8gICAvLyBBZGQgRm9ybSBUZW1wbGF0ZSBHcm91cFxuICAgIC8vICAgLmFkZEdyb3VwKCdmb3JtLXRlbXBsYXRlJywgJ0Zvcm0gVGVtcGxhdGUnLCAnU2V0dGluZ3MgcmVsYXRlZCB0byBmb3JtIHRlbXBsYXRlcy4nLCBSb290Q29uZmlnLm1vZHVsZS5pY29uKVxuICAgIC8vICAgLy8gU3RhcnQgSW50ZXJmYWNlIFNlY3Rpb25cbiAgICAvLyAgIC5hZGRTZWN0aW9uKCdpbnRlcmZhY2UnLCAnVUkgSW50ZXJmYWNlJywgJ0N1c3RvbWl6ZSB0aGUgdXNlciBpbnRlcmZhY2UgZm9yIGZvcm1zLicpXG4gICAgLy8gICAuYWRkU2V0dGluZyh7XG4gICAgLy8gICAgIGtleTogJ2hpc3RvcnktcGFuZWwnLFxuICAgIC8vICAgICB0aXRsZTogJ1Nob3cgSGlzdG9yeSBQYW5lbCcsXG4gICAgLy8gICAgIHNjb3BlOiAnVScsXG4gICAgLy8gICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgIC8vICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgIC8vICAgICB3aWRnZXQ6IHtcbiAgICAvLyAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgLy8gICAgIH0sXG4gICAgLy8gICAgIGRlc2NyaXB0aW9uOiAnRW5hYmxlIG9yIGRpc2FibGUgdGhlIGhpc3RvcnkgcGFuZWwgZm9yIGZvcm1zLicsXG4gICAgLy8gICAgIHZhbGlkYXRpb25SdWxlczogW1xuICAgIC8vICAgICAgIHtcbiAgICAvLyAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgLy8gICAgICAgfSxcbiAgICAvLyAgICAgXSxcbiAgICAvLyAgIH0pXG4gICAgLy8gICAuZW5kU2VjdGlvbigpXG4gICAgLy8gICAuZW5kR3JvdXAoKTtcbiAgfVxufVxuIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // {\n // group: 'command',\n // title: 'New Form Template',\n // icon: RootConfig.entities.template.icon,\n // description: 'Create a new form template for designing reusable forms.', // Added description\n // commands: {\n // 'create-entity': {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.template.name}`,\n // },\n // },\n // }\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvc2VhcmNoLWNvbW1hbmQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx3QkFBd0I7SUFBdEU7O1FBQ0UsYUFBUSxHQUFzQjtRQUM1QixJQUFJO1FBQ0osc0JBQXNCO1FBQ3RCLCtCQUErQjtRQUMvQiw0Q0FBNEM7UUFDNUMsaUdBQWlHO1FBQ2pHLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsaUZBQWlGO1FBQ2pGLFFBQVE7UUFDUixNQUFNO1FBQ04sSUFBSTtTQUNMLENBQUM7SUFDSixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIsIEFYUFNlYXJjaFJlc3VsdCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNlYXJjaENvbW1hbmRQcm92aWRlciBleHRlbmRzIEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciB7XG4gIGNvbW1hbmRzOiBBWFBTZWFyY2hSZXN1bHRbXSA9IFtcbiAgICAvLyB7XG4gICAgLy8gICBncm91cDogJ2NvbW1hbmQnLFxuICAgIC8vICB0aXRsZTogJ05ldyBGb3JtIFRlbXBsYXRlJyxcbiAgICAvLyAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5pY29uLFxuICAgIC8vICBkZXNjcmlwdGlvbjogJ0NyZWF0ZSBhIG5ldyBmb3JtIHRlbXBsYXRlIGZvciBkZXNpZ25pbmcgcmV1c2FibGUgZm9ybXMuJywgLy8gQWRkZWQgZGVzY3JpcHRpb25cbiAgICAvLyAgY29tbWFuZHM6IHtcbiAgICAvLyAgICAnY3JlYXRlLWVudGl0eSc6IHtcbiAgICAvLyAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnRlbXBsYXRlLm5hbWV9YCxcbiAgICAvLyAgICB9LFxuICAgIC8vICB9LFxuICAgIC8vIH1cbiAgXTtcbn1cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMAppPromotionService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMPromotionServiceImpl extends AXMEntityCrudServiceImpl {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.promotion.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMPromotionServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMPromotionServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMPromotionServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixzQkFBdUIsU0FBUSx3QkFBeUQ7Q0FBRztBQUdqSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsd0JBQXlEO0lBQ3BHO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDOzhHQUhVLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4vcHJvbW90aW9uLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUFwcFByb21vdGlvblNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8c3RyaW5nLCBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbD4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvblNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPHN0cmluZywgQVhNUHJvbW90aW9uRW50aXR5TW9kZWw+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXDataSource } from '@acorex/cdk/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { inject } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMAppPromotionService } from './promotion.service';\nexport class AXMPromotionDataSourceDefinition {\n constructor() {\n this.promotionService = inject(AXMAppPromotionService);\n this.i18n = RootConfig.config.i18n;\n }\n items() {\n return Promise.resolve([\n {\n name: 'promotion',\n title: 'Promotion',\n source: () => {\n return new AXDataSource({\n load: async (_) => {\n try {\n const res = await this.promotionService.query();\n return {\n items: res.items,\n total: res.total,\n };\n }\n catch (e) {\n console.log(e);\n throw e;\n }\n },\n pageSize: 100,\n });\n },\n columns: [\n {\n name: 'id',\n title: 'ID',\n datatype: 'uuid',\n type: AXPWidgetsCatalog.text,\n },\n {\n name: 'title',\n //TODO translate\n title: `Title`,\n datatype: 'string',\n type: AXPWidgetsCatalog.text,\n },\n {\n name: 'body',\n title: `Body`,\n datatype: 'string',\n type: AXPWidgetsCatalog.number,\n },\n ],\n filters: [\n {\n field: 'title',\n title: 'Title',\n operator: {\n type: 'equal',\n },\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n filterType: {\n advance: true,\n inline: true,\n },\n },\n ],\n textField: {\n name: 'title',\n title: 'Title',\n },\n valueField: {\n name: 'id',\n title: 'ID',\n },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLmRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5kYXRhc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0QsTUFBTSxPQUFPLGdDQUFnQztJQUE3QztRQUNZLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2xELFNBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQXdFMUMsQ0FBQztJQXRFQyxLQUFLO1FBQ0gsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3JCO2dCQUNFLElBQUksRUFBRSxXQUFXO2dCQUNqQixLQUFLLEVBQUUsV0FBVztnQkFDbEIsTUFBTSxFQUFFLEdBQUcsRUFBRTtvQkFDWCxPQUFPLElBQUksWUFBWSxDQUFDO3dCQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFOzRCQUNoQixJQUFJLENBQUM7Z0NBQ0gsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7Z0NBQ2hELE9BQU87b0NBQ0wsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO29DQUNoQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7aUNBQ2pCLENBQUM7NEJBQ0osQ0FBQzs0QkFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dDQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0NBQ2YsTUFBTSxDQUFDLENBQUM7NEJBQ1YsQ0FBQzt3QkFDSCxDQUFDO3dCQUNELFFBQVEsRUFBRSxHQUFHO3FCQUNkLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxJQUFJLEVBQUUsSUFBSTt3QkFDVixLQUFLLEVBQUUsSUFBSTt3QkFDWCxRQUFRLEVBQUUsTUFBTTt3QkFDaEIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLElBQUk7cUJBQzdCO29CQUNEO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLGdCQUFnQjt3QkFDaEIsS0FBSyxFQUFFLE9BQU87d0JBQ2QsUUFBUSxFQUFFLFFBQVE7d0JBQ2xCLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3FCQUM3QjtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsTUFBTTt3QkFDWixLQUFLLEVBQUUsTUFBTTt3QkFDYixRQUFRLEVBQUUsUUFBUTt3QkFDbEIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLE1BQU07cUJBQy9CO2lCQUNGO2dCQUNELE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxLQUFLLEVBQUUsT0FBTzt3QkFDZCxLQUFLLEVBQUUsT0FBTzt3QkFDZCxRQUFRLEVBQUU7NEJBQ1IsSUFBSSxFQUFFLE9BQU87eUJBQ2Q7d0JBQ0QsTUFBTSxFQUFFOzRCQUNOLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3lCQUM3Qjt3QkFDRCxVQUFVLEVBQUU7NEJBQ1YsT0FBTyxFQUFFLElBQUk7NEJBQ2IsTUFBTSxFQUFFLElBQUk7eUJBQ2I7cUJBQ3FCO2lCQUN6QjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsSUFBSSxFQUFFLE9BQU87b0JBQ2IsS0FBSyxFQUFFLE9BQU87aUJBQ2Y7Z0JBQ0QsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxJQUFJO29CQUNWLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERhdGFTb3VyY2UgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhQRGF0YVNvdXJjZURlZmluaXRpb24sIEFYUERhdGFTb3VyY2VEZWZpbml0aW9uUHJvdmlkZXIsIEFYUEZpbHRlckRlZmluaXRpb24gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUFwcFByb21vdGlvblNlcnZpY2UgfSBmcm9tICcuL3Byb21vdGlvbi5zZXJ2aWNlJztcblxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvbkRhdGFTb3VyY2VEZWZpbml0aW9uIGltcGxlbWVudHMgQVhQRGF0YVNvdXJjZURlZmluaXRpb25Qcm92aWRlciB7XG4gIHByb3RlY3RlZCBwcm9tb3Rpb25TZXJ2aWNlID0gaW5qZWN0KEFYTUFwcFByb21vdGlvblNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgaXRlbXMoKTogUHJvbWlzZTxBWFBEYXRhU291cmNlRGVmaW5pdGlvbltdPiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwcm9tb3Rpb24nLFxuICAgICAgICB0aXRsZTogJ1Byb21vdGlvbicsXG4gICAgICAgIHNvdXJjZTogKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgQVhEYXRhU291cmNlKHsgXG4gICAgICAgICAgICBsb2FkOiBhc3luYyAoXykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMucHJvbW90aW9uU2VydmljZS5xdWVyeSgpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICBpdGVtczogcmVzLml0ZW1zLFxuICAgICAgICAgICAgICAgICAgdG90YWw6IHJlcy50b3RhbCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHBhZ2VTaXplOiAxMDAsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICAgICAgdGl0bGU6ICdJRCcsXG4gICAgICAgICAgICBkYXRhdHlwZTogJ3V1aWQnLFxuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAvL1RPRE8gdHJhbnNsYXRlXG4gICAgICAgICAgICB0aXRsZTogYFRpdGxlYCxcbiAgICAgICAgICAgIGRhdGF0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICB0aXRsZTogYEJvZHlgLFxuICAgICAgICAgICAgZGF0YXR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubnVtYmVyLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmaWx0ZXJUeXBlOiB7XG4gICAgICAgICAgICAgIGFkdmFuY2U6IHRydWUsXG4gICAgICAgICAgICAgIGlubGluZTogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSBhcyBBWFBGaWx0ZXJEZWZpbml0aW9uLFxuICAgICAgICBdLFxuICAgICAgICB0ZXh0RmllbGQ6IHtcbiAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICB9LFxuICAgICAgICB2YWx1ZUZpZWxkOiB7XG4gICAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgICB0aXRsZTogJ0lEJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cbn0gIl19","import { AXSafePipe } from '@acorex/core/pipes';\nimport { AXPFileStorageService } from '@acorex/platform/common';\nimport { Component, inject, signal } from '@angular/core';\nimport { AXMAppPromotionService } from '../../../../entities/promotion/promotion.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMPromotionSlotComponent {\n constructor() {\n this.notificationChannelService = inject(AXMAppPromotionService);\n this.listData = signal([], ...(ngDevMode ? [{ debugName: \"listData\" }] : []));\n this.fileStorage = inject(AXPFileStorageService);\n }\n async ngOnInit() {\n const channels = await this.notificationChannelService.query({\n skip: 0,\n take: 10000,\n // filter: {\n // field: 'type',\n // operator: { type: 'equal' },\n // value: 'promotion',\n // },\n });\n const filteredItems = channels.items.filter((x) => x.placement?.name == this.location);\n const mappedItems = await Promise.all(filteredItems.map(async (item) => {\n if (item.imageId != null) {\n const image = await this.fileStorage.getInfo(item.imageId);\n return {\n ...item,\n image: image,\n };\n }\n else {\n return item;\n }\n }));\n this.listData.set(mappedItems);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMPromotionSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: AXMPromotionSlotComponent, isStandalone: true, selector: \"acorex-platform-promotion-slot\", ngImport: i0, template: \"@for (item of listData(); track item.id) { @if (item.contentType?.name == 'media') {\\n<img [src]=\\\"item.image?.url ?? ''\\\" class=\\\"ax-w-full ax-p-3 ax-border {{\\n item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none'\\n }}\\\" />\\n} @if(item.contentType?.name == 'text'){\\n<div class=\\\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\\\">\\n <h1 class=\\\"ax-text-base/6\\\" [innerHTML]=\\\"item.body | safe : 'html'\\\"></h1>\\n</div>\\n\\n} } \", dependencies: [{ kind: \"pipe\", type: AXSafePipe, name: \"safe\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMPromotionSlotComponent, decorators: [{\n type: Component,\n args: [{ selector: 'acorex-platform-promotion-slot', imports: [AXSafePipe], template: \"@for (item of listData(); track item.id) { @if (item.contentType?.name == 'media') {\\n<img [src]=\\\"item.image?.url ?? ''\\\" class=\\\"ax-w-full ax-p-3 ax-border {{\\n item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none'\\n }}\\\" />\\n} @if(item.contentType?.name == 'text'){\\n<div class=\\\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\\\">\\n <h1 class=\\\"ax-text-base/6\\\" [innerHTML]=\\\"item.body | safe : 'html'\\\"></h1>\\n</div>\\n\\n} } \" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLXNsb3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3Byb21vdGlvbi9jb21wb25lbnRzL3Byb21vdGlvbi1zbG90L3Byb21vdGlvbi1zbG90LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9wcm9tb3Rpb24vY29tcG9uZW50cy9wcm9tb3Rpb24tc2xvdC9wcm9tb3Rpb24tc2xvdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7QUFRMUYsTUFBTSxPQUFPLHlCQUF5QjtJQUx0QztRQVFFLCtCQUEwQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRTVELGFBQVEsR0FBOEMsTUFBTSxDQUFDLEVBQUUsb0RBQUMsQ0FBQztRQUV6RCxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBZ0NyRDtJQTlCQyxLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQztZQUMzRCxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxLQUFLO1lBQ1gsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixpQ0FBaUM7WUFDakMsd0JBQXdCO1lBQ3hCLEtBQUs7U0FDTixDQUFDLENBQUM7UUFFSCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXZGLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDbkMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDL0IsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN6QixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFM0QsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsQ0FBQztZQUNKLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakMsQ0FBQzs4R0F0Q1UseUJBQXlCO2tHQUF6Qix5QkFBeUIsMEZDWnRDLCtjQVNJLHVDREFRLFVBQVU7OzJGQUdULHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxnQ0FBZ0MsV0FDakMsQ0FBQyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNhZmVQaXBlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BpcGVzJztcbmltcG9ydCB7IEFYUEZpbGVTdG9yYWdlU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQXBwUHJvbW90aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudGl0aWVzL3Byb21vdGlvbi9wcm9tb3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL2VudGl0aWVzL3Byb21vdGlvbi9wcm9tb3Rpb24udHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY29yZXgtcGxhdGZvcm0tcHJvbW90aW9uLXNsb3QnLFxuICBpbXBvcnRzOiBbQVhTYWZlUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9tb3Rpb24tc2xvdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvblNsb3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBsb2NhdGlvbjogc3RyaW5nO1xuXG4gIG5vdGlmaWNhdGlvbkNoYW5uZWxTZXJ2aWNlID0gaW5qZWN0KEFYTUFwcFByb21vdGlvblNlcnZpY2UpO1xuXG4gIGxpc3REYXRhOiBXcml0YWJsZVNpZ25hbDxBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbFtdPiA9IHNpZ25hbChbXSk7XG5cbiAgcHJpdmF0ZSBmaWxlU3RvcmFnZSA9IGluamVjdChBWFBGaWxlU3RvcmFnZVNlcnZpY2UpO1xuXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoYW5uZWxzID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25DaGFubmVsU2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMTAwMDAsXG4gICAgICAvLyBmaWx0ZXI6IHtcbiAgICAgIC8vICAgZmllbGQ6ICd0eXBlJyxcbiAgICAgIC8vICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgLy8gICB2YWx1ZTogJ3Byb21vdGlvbicsXG4gICAgICAvLyB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgZmlsdGVyZWRJdGVtcyA9IGNoYW5uZWxzLml0ZW1zLmZpbHRlcigoeCkgPT4geC5wbGFjZW1lbnQ/Lm5hbWUgPT0gdGhpcy5sb2NhdGlvbik7XG5cbiAgICBjb25zdCBtYXBwZWRJdGVtcyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZmlsdGVyZWRJdGVtcy5tYXAoYXN5bmMgKGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKGl0ZW0uaW1hZ2VJZCAhPSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgaW1hZ2UgPSBhd2FpdCB0aGlzLmZpbGVTdG9yYWdlLmdldEluZm8oaXRlbS5pbWFnZUlkKTtcblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgaW1hZ2U6IGltYWdlLFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMubGlzdERhdGEuc2V0KG1hcHBlZEl0ZW1zKTtcbiAgfVxufSAiLCJAZm9yIChpdGVtIG9mIGxpc3REYXRhKCk7IHRyYWNrIGl0ZW0uaWQpIHsgQGlmIChpdGVtLmNvbnRlbnRUeXBlPy5uYW1lID09ICdtZWRpYScpIHtcbjxpbWcgW3NyY109XCJpdGVtLmltYWdlPy51cmwgPz8gJydcIiBjbGFzcz1cImF4LXctZnVsbCBheC1wLTMgYXgtYm9yZGVyICB7e1xuICAgIGl0ZW0uc2hhcGU/Lm5hbWUgPT0gJ2NpcmNsZScgPyAnYXgtcm91bmRlZC1mdWxsJyA6ICdheC1yb3VuZGVkLW5vbmUnXG4gIH19XCIgLz5cbn0gQGlmKGl0ZW0uY29udGVudFR5cGU/Lm5hbWUgPT0gJ3RleHQnKXtcbjxkaXYgY2xhc3M9XCJheC1tLTEgYXgtcHgtNiBheC1wLTQgYXgtYm9yZGVyIGF4LWJnLXByaW1hcnkgYXgtcm91bmRlZC1sZ1wiPlxuICA8aDEgY2xhc3M9XCJheC10ZXh0LWJhc2UvNlwiIFtpbm5lckhUTUxdPVwiaXRlbS5ib2R5IHwgc2FmZSA6ICdodG1sJ1wiPjwvaDE+XG48L2Rpdj5cblxufSB9ICJdfQ==","import { NgModule } from \"@angular/core\";\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMEntityProvider } from './entity.provider';\nimport { AXMPermissionDefinitionProvider } from './permission-definition.provider';\nimport { AXMSettingProvider } from './setting.provider';\nimport { AXMSearchCommandProvider } from './search-command.provider';\nimport { AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport { AXP_DATASOURCE_DEFINITION_PROVIDER } from '@acorex/platform/core';\n// Import promotion-related services and components\nimport { AXMAppPromotionService, AXMPromotionServiceImpl, } from './entities/promotion/promotion.service';\nimport { AXMPromotionDataSourceDefinition } from './entities/promotion/promotion.datasource';\nimport { AXMPromotionSlotComponent } from './features/promotion/components/promotion-slot/promotion-slot.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/components\";\nexport class AXMContentManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMContentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMContentManagementModule, imports: [i1.AXPComponentSlotModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMContentManagementModule, providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXMAppPromotionService,\n useClass: AXMPromotionServiceImpl,\n },\n {\n provide: AXP_DATASOURCE_DEFINITION_PROVIDER,\n useClass: AXMPromotionDataSourceDefinition,\n multi: true,\n },\n ], imports: [AXPComponentSlotModule.forChild({\n 'side-menu-footer': [\n {\n name: 'side-menu-footer-promotion',\n component: AXMPromotionSlotComponent,\n options: {\n location: 'side-menu-footer',\n },\n },\n ],\n 'side-menu-header': [\n {\n name: 'side-menu-header-promotion',\n component: AXMPromotionSlotComponent,\n priority: 2,\n options: {\n location: 'side-menu-header',\n },\n },\n ],\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: AXMContentManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forChild({\n 'side-menu-footer': [\n {\n name: 'side-menu-footer-promotion',\n component: AXMPromotionSlotComponent,\n options: {\n location: 'side-menu-footer',\n },\n },\n ],\n 'side-menu-header': [\n {\n name: 'side-menu-header-promotion',\n component: AXMPromotionSlotComponent,\n priority: 2,\n options: {\n location: 'side-menu-header',\n },\n },\n ],\n }),\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXMAppPromotionService,\n useClass: AXMPromotionServiceImpl,\n },\n {\n provide: AXP_DATASOURCE_DEFINITION_PROVIDER,\n useClass: AXMPromotionDataSourceDefinition,\n multi: true,\n },\n ]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9jb250ZW50LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEgsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNFLG1EQUFtRDtBQUNuRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLHVCQUF1QixHQUN4QixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDOzs7QUFrRXBILE1BQU0sT0FBTywwQkFBMEI7OEdBQTFCLDBC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QUNEOzRCQUNFLE9BQU8sRUFBRSxrQ0FBa0M7NEJBQzNDLFFBQVEsRUFBRSxnQ0FBZ0M7NEJBQzFDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNOO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQVhQX1BFUk1JU1NJT05fREVGSU5JVElPTl9QUk9WSURFUiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBBWFBfTUVOVV9QUk9WSURFUiwgQVhQX1NFQVJDSF9QUk9WSURFUiwgQVhQX1NFVFRJTkdfREVGSU5JVElPTl9QUk9WSURFUiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUF9FTlRJVFlfREVGSU5JVElPTl9MT0FERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhNTWVudVByb3ZpZGVyIH0gZnJvbSAnLi9tZW51LnByb3ZpZGVyJztcbmltcG9ydCB7IEFYTUVudGl0eVByb3ZpZGVyIH0gZnJvbSAnLi9lbnRpdHkucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlciB9IGZyb20gJy4vcGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyJzsgIFxuaW1wb3J0IHsgQVhNU2V0dGluZ1Byb3ZpZGVyIH0gZnJvbSAnLi9zZXR0aW5nLnByb3ZpZGVyJztcbmltcG9ydCB7IEFYTVNlYXJjaENvbW1hbmRQcm92aWRlciB9IGZyb20gJy4vc2VhcmNoLWNvbW1hbmQucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhQQ29tcG9uZW50U2xvdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQVhQX0RBVEFTT1VSQ0VfREVGSU5JVElPTl9QUk9WSURFUiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5cbi8vIEltcG9ydCBwcm9tb3Rpb24tcmVsYXRlZCBzZXJ2aWNlcyBhbmQgY29tcG9uZW50c1xuaW1wb3J0IHtcbiAgQVhNQXBwUHJvbW90aW9uU2VydmljZSxcbiAgQVhNUHJvbW90aW9uU2VydmljZUltcGwsXG59IGZyb20gJy4vZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFYTVByb21vdGlvbkRhdGFTb3VyY2VEZWZpbml0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9tb3Rpb24vcHJvbW90aW9uLmRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgQVhNUHJvbW90aW9uU2xvdENvbXBvbmVudCB9IGZyb20gJy4vZmVhdHVyZXMvcHJvbW90aW9uL2NvbXBvbmVudHMvcHJvbW90aW9uLXNsb3QvcHJvbW90aW9uLXNsb3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEFYUENvbXBvbmVudFNsb3RNb2R1bGUuZm9yQ2hpbGQoe1xuICAgICAgJ3NpZGUtbWVudS1mb290ZXInOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnc2lkZS1tZW51LWZvb3Rlci1wcm9tb3Rpb24nLFxuICAgICAgICAgIGNvbXBvbmVudDogQVhNUHJvbW90aW9uU2xvdENvbXBvbmVudCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBsb2NhdGlvbjogJ3NpZGUtbWVudS1mb290ZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgJ3NpZGUtbWVudS1oZWFkZXInOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnc2lkZS1tZW51LWhlYWRlci1wcm9tb3Rpb24nLFxuICAgICAgICAgIGNvbXBvbmVudDogQVhNUHJvbW90aW9uU2xvdENvbXBvbmVudCxcbiAgICAgICAgICBwcmlvcml0eTogMixcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBsb2NhdGlvbjogJ3NpZGUtbWVudS1oZWFkZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pLFxuICBdLFxuICBleHBvcnRzOiBbXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgcHJvdmlkZXJzIDogW1xuICAgIFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9NRU5VX1BST1ZJREVSLFxuICAgICAgdXNlQ2xhc3M6IEFYTU1lbnVQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1FbnRpdHlQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTVNldHRpbmdQcm92aWRlcixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9TRUFSQ0hfUFJPVklERVIsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTVNlYXJjaENvbW1hbmRQcm92aWRlcixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTVBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBWE1BcHBQcm9tb3Rpb25TZXJ2aWNlLFxuICAgICAgICAgIHVzZUNsYXNzOiBBWE1Qcm9tb3Rpb25TZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9EQVRBU09VUkNFX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTVByb21vdGlvbkRhdGFTb3VyY2VEZWZpbml0aW9uLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFYTUNvbnRlbnRNYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, AXPFileStorageService, createAllQueryView, createQueryView, } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMAppPromotionService } from './promotion.service';\n/**\n * Deeply sanitizes an object for storage in IndexedDB by removing non-serializable content\n */\nfunction sanitizeForStorage(obj) {\n if (!obj) {\n return obj;\n }\n // Handle primitive values\n if (typeof obj !== 'object') {\n return obj;\n }\n // Handle arrays\n if (Array.isArray(obj)) {\n return obj.map((item) => sanitizeForStorage(item));\n }\n // Handle Date objects\n if (obj instanceof Date) {\n return obj;\n }\n // Handle File objects specially\n if (obj instanceof File) {\n // File objects are handled separately, return as is\n return obj;\n }\n // Handle Blob objects\n if (obj instanceof Blob) {\n // Blob objects are handled separately\n return obj;\n }\n // Handle regular objects\n const cleanedObj = {};\n for (const [key, value] of Object.entries(obj)) {\n // Skip functions, symbols and other non-serializable types\n if (typeof value === 'function' || typeof value === 'symbol') {\n continue;\n }\n // Handle null values\n if (value === null) {\n cleanedObj[key] = null;\n continue;\n }\n // Recursively sanitize objects\n if (typeof value === 'object') {\n cleanedObj[key] = sanitizeForStorage(value);\n }\n else {\n cleanedObj[key] = value;\n }\n }\n return cleanedObj;\n}\n/**\n * Sanitizes a filename by:\n * 1. Removing special characters\n * 2. Replacing spaces with hyphens\n * 3. Ensuring unique timestamp\n */\nfunction sanitizeFileName(fileName) {\n if (!fileName)\n return '';\n // Get file extension\n const ext = fileName.split('.').pop() || '';\n // Get base name without extension\n let baseName = fileName.slice(0, -(ext.length + 1));\n // Remove special characters and replace spaces with hyphens\n baseName = baseName\n .replace(/[^\\w\\s-]/g, '') // Remove special chars except spaces and hyphens\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single hyphen\n .trim();\n // Add timestamp to ensure uniqueness\n const timestamp = new Date().getTime();\n // Combine everything\n return `${baseName}-${timestamp}.${ext}`;\n}\nexport async function promotionEntityFactory(injector) {\n const dataService = injector.get(AXMAppPromotionService);\n const fileStorageService = injector.get(AXPFileStorageService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.promotion.name,\n source: '',\n title: RootConfig.entities.promotion.title,\n formats: {\n individual: RootConfig.entities.promotion.title,\n plural: RootConfig.entities.promotion.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'promotion',\n title: 'Promotion',\n },\n {\n id: 'comments',\n title: 'Comments',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: {\n enabled: true,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n },\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"common\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'body',\n title: `t(\"body\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\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: `t(\"Gallery\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n multiple: true,\n },\n },\n },\n },\n {\n name: 'contentType',\n title: `t(\"contentType\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\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 options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: 'shape',\n // title: `t(\"shape\", { scope: \"${i18n}\" })`,\n // groupId: 'promotion',\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 // accept: '',\n // },\n // },\n // },\n // validations: [\n // {\n // rule: 'required',\n // },\n // ],\n // },\n {\n name: 'placement',\n title: `t(\"placement\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n {\n title: 'Side Menu Footer',\n name: 'side-menu-footer',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n {\n title: 'Side Menu Header',\n name: 'side-menu-header',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: \"metadaata\",\n // title: \"Meta Data\",\n // groupId: 'promotion',\n // schema: {\n // dataType: 'object',\n // interface: {\n // type: AXPWidgetsCatalog.text,\n // // children: \"{{ context.eval('placement').options }}\" as any,\n // },\n // }\n //},\n {\n name: 'comments',\n title: `Comments`,\n groupId: 'comments',\n schema: {\n dataType: 'object',\n interface: {\n type: 'comment',\n options: {\n refrenceType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n refrenceId: '{{ context.eval(\"id\") }}',\n subject: '{{ context.eval(\"title\") }}',\n },\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'placement' }, { name: 'imageId' }],\n commands: {\n create: {\n execute: async (data) => {\n data = sanitizeForStorage(data);\n const entityPayload = { ...data };\n entityPayload.imageId = entityPayload.imageId || [];\n const filesToUploadAfterSave = [];\n if (Array.isArray(entityPayload.imageId)) {\n const processedImageIdForEntitySave = [];\n for (const fileItem of entityPayload.imageId) {\n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n // Sanitize the filename\n const sanitizedName = sanitizeFileName(fileItem.name);\n filesToUploadAfterSave.push({\n fileItem: { ...fileItem, name: sanitizedName },\n blob: fileItem.source.value,\n });\n processedImageIdForEntitySave.push({\n tempId: fileItem.id,\n name: sanitizedName,\n size: fileItem.size,\n type: fileItem.source.value.type,\n status: 'pending_upload',\n });\n }\n else if (fileItem.source?.kind === 'fileId' &&\n fileItem.id &&\n typeof fileItem.source.value === 'string') {\n // If it's a fileId, we assume it's already processed. We don't have type directly on AXPFileListItem.\n // We'll reconstruct it from fileStorageService or it should be part of what's saved if needed.\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: 'uploaded',\n source: { kind: 'fileId', value: fileItem.source.value },\n });\n }\n else if (fileItem.id && fileItem.name) {\n // Fallback for items that might be from a previous save\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: fileItem.status, // Preserve existing status\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined,\n });\n }\n }\n entityPayload.imageId = processedImageIdForEntitySave;\n }\n const savedEntityId = await dataService.insertOne(entityPayload);\n // const entityId = savedEntity.id; // Corrected based on typical service return\n const finalImageIdReferences = (entityPayload.imageId || []).filter((f) => f.status !== 'pending_upload');\n for (const { fileItem, blob } of filesToUploadAfterSave) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: savedEntityId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}`,\n category: '',\n name: blob.name,\n });\n await fileStorageService.commit(fileStorageInfo.fileId);\n finalImageIdReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || blob.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type,\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId },\n });\n }\n catch (err) {\n // Typed error\n console.error('Error uploading file to FileStorage for entityId:', savedEntityId, 'file:', fileItem.name, err);\n finalImageIdReferences.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: blob.type, // Correctly access type from Blob/File\n status: 'upload_failed',\n error: err.message,\n });\n }\n }\n if (filesToUploadAfterSave.length > 0) {\n let needsUpdate = true;\n if (entityPayload.imageId && entityPayload.imageId.length === finalImageIdReferences.length) {\n const oldIds = entityPayload.imageId\n .map((f) => f.id || f.tempId)\n .sort()\n .join(',');\n const newIds = finalImageIdReferences\n .map((f) => f.id || f.tempId)\n .sort()\n .join(',');\n if (oldIds === newIds && !finalImageIdReferences.some((f) => f.status === 'upload_failed')) {\n needsUpdate = false;\n }\n }\n if (needsUpdate) {\n // Assuming updateOne takes the ID and an object of fields to update\n console.log(finalImageIdReferences);\n await dataService.updateOne(savedEntityId, { imageId: finalImageIdReferences });\n }\n }\n return { id: savedEntityId };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n const entityId = data.id;\n const filesToUpload = [];\n const processedImageReferences = [];\n if (data.imageId && Array.isArray(data.imageId)) {\n for (const fileItem of data.imageId) {\n if (fileItem.status === 'deleted') {\n continue;\n }\n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n // Sanitize the filename for new uploads\n const sanitizedName = sanitizeFileName(fileItem.name);\n filesToUpload.push({\n fileItem: { ...fileItem, name: sanitizedName },\n blob: fileItem.source.value,\n });\n }\n else if (fileItem.source?.kind === 'fileId' &&\n fileItem.id &&\n typeof fileItem.source.value === 'string') {\n // This is an existing file, keep its reference.\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded',\n source: { kind: 'fileId', value: fileItem.source.value },\n });\n }\n else if (fileItem.id && fileItem.name) {\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded',\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined,\n });\n }\n }\n }\n // Upload new files and add their successful/failed info to processedImageReferences\n for (const { fileItem, blob } of filesToUpload) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: entityId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}`,\n category: '',\n name: fileItem.name, // Use the sanitized name from fileItem\n });\n await fileStorageService.commit(fileStorageInfo.fileId);\n processedImageReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || fileItem.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type,\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId },\n });\n }\n catch (err) {\n console.error('Error uploading file to FileStorage during update for entityId:', entityId, 'file:', fileItem.name, err);\n processedImageReferences.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: blob.type,\n status: 'upload_failed',\n error: err.message,\n });\n }\n }\n // Construct the final data payload for the update.\n const finalUpdatePayload = { ...data };\n finalUpdatePayload.imageId = processedImageReferences;\n const fullySanitizedPayload = sanitizeForStorage(finalUpdatePayload);\n return await dataService.updateOne(entityId, fullySanitizedPayload);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n try {\n // Ensure id is a valid key for IndexedDB - needs to be string or number\n let validId;\n // If id is an object (e.g., from router params or complex structure)\n if (typeof id === 'object' && id !== null) {\n if ('id' in id) {\n validId = String(id.id);\n }\n else {\n validId = String(id);\n }\n console.warn('Converted object id to string:', validId);\n }\n else if (id === undefined || id === null) {\n console.error('Invalid id parameter: null or undefined');\n return null;\n }\n else {\n // Convert to string to ensure consistency\n validId = String(id);\n }\n try {\n const data = await dataService.getOne(validId);\n // If no data was found\n if (!data) {\n console.warn(`No record found with id: ${validId}`);\n return null;\n }\n return data;\n }\n catch (error) {\n console.error(`Error fetching data with ID ${validId}:`, error);\n // Return null instead of throwing to avoid cascading errors\n return null;\n }\n }\n catch (error) {\n console.error('Critical error in byKey query:', error);\n return null; // Return null instead of throwing to avoid UI errors\n }\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n {\n name: 'metadata',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n // {\n // name: 'metadata',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // order: 10,\n // },\n // },\n // },\n // },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'promotion',\n },\n {\n id: 'comments',\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: '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: 'comments',\n layout: {\n label: {\n visible: false,\n },\n positions: {\n lg: {\n colSpan: 12,\n order: 7,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n title: 't(\"promotionPlural\", { scope: \"content-management\" })',\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"entity.modify\", { scope: \"common\" })',\n command: 'quick-modify-entity',\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n disabled: `{{ lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\") }}`,\n },\n //TODO: add this to the entity\n {\n title: '@document-management:actions.upload-files',\n command: {\n name: 'show-file-uploader-popup',\n options: {\n id: '{{ context.eval(\"id\") }}',\n files: '{{ context.eval(\"imageId\") }}',\n multiple: true,\n accept: '.jpg,.jpeg,.png,.gif,.webp',\n key: 'imageId',\n fileEditable: true,\n },\n },\n priority: 'secondary',\n type: 'upload',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@activity-log:actions.view-history',\n command: {\n name: 'show-version-history-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@conversation:actions.show-comment-popup',\n command: {\n name: 'show-comment-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n subject: '{{ context.eval(\"title\") }}',\n },\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Compare',\n command: {\n name: 'show-entity-records-compare',\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: '@common:actions.lock',\n name: 'lock-entity',\n command: {\n name: 'lock-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n hidden: `{{ lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\") }}`,\n },\n {\n title: '@common:actions.unlock',\n name: 'unlock-entity',\n command: {\n name: 'unlock-confirm',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n hidden: `{{ (await lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\")) == false }}`,\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),\n createQueryView('media', `t(\"media\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'media',\n },\n ],\n }),\n createQueryView('text', `t(\"text\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'text',\n },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9wcm9tb3Rpb24vcHJvbW90aW9uLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUVsQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLGVBQWUsR0FDaEIsTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTdEOztHQUVHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxHQUFRO0lBQ2xDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNULE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELDBCQUEwQjtJQUMxQixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixJQUFJLEdBQUcsWUFBWSxJQUFJLEVBQUUsQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFLENBQUM7UUFD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TyxFQUFFLHdCQUF3QixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQ2pFLFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsa0JBQWtCO29DQUN4QixRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLE9BQU87aUNBQ2Y7NkJBQ0Y7eUJBQ0YsQ0FBQzt3QkFDRixlQUFlLENBQUMsTUFBTSxFQUFFLHVCQUF1QixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQy9ELFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsa0JBQWtCO29DQUN4QixRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLE1BQU07aUNBQ2Q7NkJBQ0Y7eUJBQ0YsQ0FBQztxQkFDSDtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYUEVudGl0eSxcbiAgQVhQRW50aXR5Q29tbWFuZFNjb3BlLFxuICBBWFBFbnRpdHlRdWVyeVR5cGUsXG4gIEFYUEZpbGVTdG9yYWdlSW5mbyxcbiAgQVhQRmlsZVN0b3JhZ2VTZXJ2aWNlLFxuICBjcmVhdGVBbGxRdWVyeVZpZXcsXG4gIGNyZWF0ZVF1ZXJ5Vmlldyxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQRmlsZUxpc3RJdGVtIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUFwcFByb21vdGlvblNlcnZpY2UgfSBmcm9tICcuL3Byb21vdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBEZWVwbHkgc2FuaXRpemVzIGFuIG9iamVjdCBmb3Igc3RvcmFnZSBpbiBJbmRleGVkREIgYnkgcmVtb3Zpbmcgbm9uLXNlcmlhbGl6YWJsZSBjb250ZW50XG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplRm9yU3RvcmFnZShvYmo6IGFueSk6IGFueSB7XG4gIGlmICghb2JqKSB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIC8vIEhhbmRsZSBwcmltaXRpdmUgdmFsdWVzXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICAvLyBIYW5kbGUgYXJyYXlzXG4gIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICByZXR1cm4gb2JqLm1hcCgoaXRlbSkgPT4gc2FuaXRpemVGb3JTdG9yYWdlKGl0ZW0pKTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBEYXRlIG9iamVjdHNcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgLy8gSGFuZGxlIEZpbGUgb2JqZWN0cyBzcGVjaWFsbHlcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIEZpbGUpIHtcbiAgICAvLyBGaWxlIG9iamVjdHMgYXJlIGhhbmRsZWQgc2VwYXJhdGVseSwgcmV0dXJuIGFzIGlzXG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIC8vIEhhbmRsZSBCbG9iIG9iamVjdHNcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAvLyBCbG9iIG9iamVjdHMgYXJlIGhhbmRsZWQgc2VwYXJhdGVseVxuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICAvLyBIYW5kbGUgcmVndWxhciBvYmplY3RzXG4gIGNvbnN0IGNsZWFuZWRPYmo6IGFueSA9IHt9O1xuXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG9iaikpIHtcbiAgICAvLyBTa2lwIGZ1bmN0aW9ucywgc3ltYm9scyBhbmQgb3RoZXIgbm9uLXNlcmlhbGl6YWJsZSB0eXBlc1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIHZhbHVlID09PSAnc3ltYm9sJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIG51bGwgdmFsdWVzXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSBudWxsO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gUmVjdXJzaXZlbHkgc2FuaXRpemUgb2JqZWN0c1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSBzYW5pdGl6ZUZvclN0b3JhZ2UodmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2xlYW5lZE9iajtcbn1cblxuLyoqXG4gKiBTYW5pdGl6ZXMgYSBmaWxlbmFtZSBieTpcbiAqIDEuIFJlbW92aW5nIHNwZWNpYWwgY2hhcmFjdGVyc1xuICogMi4gUmVwbGFjaW5nIHNwYWNlcyB3aXRoIGh5cGhlbnNcbiAqIDMuIEVuc3VyaW5nIHVuaXF1ZSB0aW1lc3RhbXBcbiAqL1xuZnVuY3Rpb24gc2FuaXRpemVGaWxlTmFtZShmaWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFmaWxlTmFtZSkgcmV0dXJuICcnO1xuXG4gIC8vIEdldCBmaWxlIGV4dGVuc2lvblxuICBjb25zdCBleHQgPSBmaWxlTmFtZS5zcGxpdCgnLicpLnBvcCgpIHx8ICcnO1xuXG4gIC8vIEdldCBiYXNlIG5hbWUgd2l0aG91dCBleHRlbnNpb25cbiAgbGV0IGJhc2VOYW1lID0gZmlsZU5hbWUuc2xpY2UoMCwgLShleHQubGVuZ3RoICsgMSkpO1xuXG4gIC8vIFJlbW92ZSBzcGVjaWFsIGNoYXJhY3RlcnMgYW5kIHJlcGxhY2Ugc3BhY2VzIHdpdGggaHlwaGVuc1xuICBiYXNlTmFtZSA9IGJhc2VOYW1lXG4gICAgLnJlcGxhY2UoL1teXFx3XFxzLV0vZywgJycpIC8vIFJlbW92ZSBzcGVjaWFsIGNoYXJzIGV4Y2VwdCBzcGFjZXMgYW5kIGh5cGhlbnNcbiAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpIC8vIFJlcGxhY2Ugc3BhY2VzIHdpdGggaHlwaGVuc1xuICAgIC5yZXBsYWNlKC8tKy9nLCAnLScpIC8vIFJlcGxhY2UgbXVsdGlwbGUgaHlwaGVucyB3aXRoIHNpbmdsZSBoeXBoZW5cbiAgICAudHJpbSgpO1xuXG4gIC8vIEFkZCB0aW1lc3RhbXAgdG8gZW5zdXJlIHVuaXF1ZW5lc3NcbiAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgLy8gQ29tYmluZSBldmVyeXRoaW5nXG4gIHJldHVybiBgJHtiYXNlTmFtZX0tJHt0aW1lc3RhbXB9LiR7ZXh0fWA7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcm9tb3Rpb25FbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1BcHBQcm9tb3Rpb25TZXJ2aWNlKTtcbiAgY29uc3QgZmlsZVN0b3JhZ2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYUEZpbGVTdG9yYWdlU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLnRpdGxlLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAncHJvbW90aW9uJyxcbiAgICAgICAgdGl0bGU6ICdQcm9tb3Rpb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdjb21tZW50cycsXG4gICAgICAgIHRpdGxlOiAnQ29tbWVudHMnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgdGl0bGU6ICdJRCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAndXVpZCcsXG4gICAgICAgICAgaGlkZGVuOiB0cnVlLFxuICAgICAgICAgIG51bGxhYmxlOiBmYWxzZSxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICB1bmlxdWU6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiBgdChcInRpdGxlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICBncm91cElkOiAncHJvbW90aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlubGluZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdib2R5JyxcbiAgICAgICAgdGl0bGU6IGB0KFwiYm9keVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiR2FsbGVyeVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5maWxlVXBsb2FkZXIsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiY29udGVudFR5cGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAncHJvbW90aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnbmFtZScsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgZGF0YVNvdXJjZTogW1xuICAgICAgICAgICAgICAgIHsgdGl0bGU6ICdNZWRpYScsIG5hbWU6ICdtZWRpYScgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnVGV4dCcsIG5hbWU6ICd0ZXh0JyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICAvLyB7XG4gICAgICAvLyAgIG5hbWU6ICdzaGFwZScsXG4gICAgICAvLyAgIHRpdGxlOiBgdChcInNoYXBlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgIC8vICAgZ3JvdXBJZDogJ3Byb21vdGlvbicsXG4gICAgICAvLyAgIHNjaGVtYToge1xuICAgICAgLy8gICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgIC8vICAgICBpbnRlcmZhY2U6IHtcbiAgICAgIC8vICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgIC8vICAgICAgIG9wdGlvbnM6IHtcbiAgICAgIC8vICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgLy8gICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAvLyAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgIC8vICAgICAgICAgICB7IHRpdGxlOiAnQ2lyY2xlJywgbmFtZTogJ2NpcmNsZScgfSxcbiAgICAgIC8vICAgICAgICAgICB7IHRpdGxlOiAnU3F1YXJlJywgbmFtZTogJ3NxdWFyZScgfSxcbiAgICAgIC8vICAgICAgICAgXSxcbiAgICAgIC8vICAgICAgICAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcsXG4gICAgICAvLyAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgIC8vICAgICAgICAgYWNjZXB0OiAnJyxcbiAgICAgIC8vICAgICAgIH0sXG4gICAgICAvLyAgICAgfSxcbiAgICAgIC8vICAgfSxcbiAgICAgIC8vICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgIC8vICAgICB7XG4gICAgICAvLyAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgLy8gICAgIH0sXG4gICAgICAvLyAgIF0sXG4gICAgICAvLyB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGxhY2VtZW50JyxcbiAgICAgICAgdGl0bGU6IGB0KFwicGxhY2VtZW50XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3Byb21vdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ1NpZGUgTWVudSBGb290ZXInLFxuICAgICAgICAgICAgICAgICAgbmFtZTogJ3NpZGUtbWVudS1mb290ZXInLFxuICAgICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3RleHQtZWRpdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgcGF0aDogJ25hbWUnLFxuICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnTmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICd0ZXN0JyxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiAnU2lkZSBNZW51IEhlYWRlcicsXG4gICAgICAgICAgICAgICAgICBuYW1lOiAnc2lkZS1tZW51LWhlYWRlcicsXG4gICAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndGV4dC1lZGl0b3InLFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGU6ICdlZGl0JyxcbiAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICdOYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogJ3Rlc3QnLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIC8vIHtcbiAgICAgIC8vICAgbmFtZTogXCJtZXRhZGFhdGFcIixcbiAgICAgIC8vICAgdGl0bGU6IFwiTWV0YSBEYXRhXCIsXG4gICAgICAvLyAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgLy8gICBzY2hlbWE6IHtcbiAgICAgIC8vICAgICBkYXRhVHlwZTogJ29iamVjdCcsXG4gICAgICAvLyAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAvLyAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgLy8gICAgICAgLy8gY2hpbGRyZW46IFwie3sgY29udGV4dC5ldmFsKCdwbGFjZW1lbnQnKS5vcHRpb25zIH19XCIgYXMgYW55LFxuICAgICAgLy8gICAgIH0sXG4gICAgICAvLyAgIH1cbiAgICAgIC8vfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbW1lbnRzJyxcbiAgICAgICAgdGl0bGU6IGBDb21tZW50c2AsXG4gICAgICAgIGdyb3VwSWQ6ICdjb21tZW50cycsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6ICdjb21tZW50JyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVmcmVuY2VUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgcmVmcmVuY2VJZDogJ3t7IGNvbnRleHQuZXZhbChcImlkXCIpIH19JyxcbiAgICAgICAgICAgICAgc3ViamVjdDogJ3t7IGNvbnRleHQuZXZhbChcInRpdGxlXCIpIH19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAndGl0bGUnIH0sIHsgbmFtZTogJ3BsYWNlbWVudCcgfSwgeyBuYW1lOiAnaW1hZ2VJZCcgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgZGF0YSA9IHNhbml0aXplRm9yU3RvcmFnZShkYXRhKTtcbiAgICAgICAgICBjb25zdCBlbnRpdHlQYXlsb2FkID0geyAuLi5kYXRhIH07XG4gICAgICAgICAgZW50aXR5UGF5bG9hZC5pbWFnZUlkID0gZW50aXR5UGF5bG9hZC5pbWFnZUlkIHx8IFtdO1xuICAgICAgICAgIGNvbnN0IGZpbGVzVG9VcGxvYWRBZnRlclNhdmU6IEFycmF5PHsgZmlsZUl0ZW06IEFYUEZpbGVMaXN0SXRlbTsgYmxvYjogRmlsZSB9PiA9IFtdO1xuXG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZW50aXR5UGF5bG9hZC5pbWFnZUlkKSkge1xuICAgICAgICAgICAgY29uc3QgcHJvY2Vzc2VkSW1hZ2VJZEZvckVudGl0eVNhdmU6IGFueVtdID0gW107XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGZpbGVJdGVtIG9mIGVudGl0eVBheWxvYWQuaW1hZ2VJZCBhcyBBWFBGaWxlTGlzdEl0ZW1bXSkge1xuICAgICAgICAgICAgICBpZiAoZmlsZUl0ZW0uc291cmNlPy5raW5kID09PSAnYmxvYicgJiYgZmlsZUl0ZW0uc291cmNlLnZhbHVlIGluc3RhbmNlb2YgQmxvYikge1xuICAgICAgICAgICAgICAgIC8vIFNhbml0aXplIHRoZSBmaWxlbmFtZVxuICAgICAgICAgICAgICAgIGNvbnN0IHNhbml0aXplZE5hbWUgPSBzYW5pdGl6ZUZpbGVOYW1lKGZpbGVJdGVtLm5hbWUpO1xuICAgICAgICAgICAgICAgIGZpbGVzVG9VcGxvYWRBZnRlclNhdmUucHVzaCh7XG4gICAgICAgICAgICAgICAgICBmaWxlSXRlbTogeyAuLi5maWxlSXRlbSwgbmFtZTogc2FuaXRpemVkTmFtZSB9LFxuICAgICAgICAgICAgICAgICAgYmxvYjogZmlsZUl0ZW0uc291cmNlLnZhbHVlIGFzIEZpbGUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VJZEZvckVudGl0eVNhdmUucHVzaCh7XG4gICAgICAgICAgICAgICAgICB0ZW1wSWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogc2FuaXRpemVkTmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAoZmlsZUl0ZW0uc291cmNlLnZhbHVlIGFzIEZpbGUpLnR5cGUsXG4gICAgICAgICAgICAgICAgICBzdGF0dXM6ICdwZW5kaW5nX3VwbG9hZCcsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgZmlsZUl0ZW0uc291cmNlPy5raW5kID09PSAnZmlsZUlkJyAmJlxuICAgICAgICAgICAgICAgIGZpbGVJdGVtLmlkICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIGZpbGVJdGVtLnNvdXJjZS52YWx1ZSA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgaXQncyBhIGZpbGVJZCwgd2UgYXNzdW1lIGl0J3MgYWxyZWFkeSBwcm9jZXNzZWQuIFdlIGRvbid0IGhhdmUgdHlwZSBkaXJlY3RseSBvbiBBWFBGaWxlTGlzdEl0ZW0uXG4gICAgICAgICAgICAgICAgLy8gV2UnbGwgcmVjb25zdHJ1Y3QgaXQgZnJvbSBmaWxlU3RvcmFnZVNlcnZpY2Ugb3IgaXQgc2hvdWxkIGJlIHBhcnQgb2Ygd2hhdCdzIHNhdmVkIGlmIG5lZWRlZC5cbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZUlkRm9yRW50aXR5U2F2ZS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGlkOiBmaWxlSXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgIG5hbWU6IGZpbGVJdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgICAgLy8gdHlwZTogZmlsZUl0ZW0udHlwZSwgLy8gUmVtb3ZlZDogQVhQRmlsZUxpc3RJdGVtIGRvZXMgbm90IGhhdmUgLnR5cGVcbiAgICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZGVkJyxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZTogeyBraW5kOiAnZmlsZUlkJywgdmFsdWU6IGZpbGVJdGVtLnNvdXJjZS52YWx1ZSB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZpbGVJdGVtLmlkICYmIGZpbGVJdGVtLm5hbWUpIHtcbiAgICAgICAgICAgICAgICAvLyBGYWxsYmFjayBmb3IgaXRlbXMgdGhhdCBtaWdodCBiZSBmcm9tIGEgcHJldmlvdXMgc2F2ZVxuICAgICAgICAgICAgICAgIHByb2Nlc3NlZEltYWdlSWRGb3JFbnRpdHlTYXZlLnB1c2goe1xuICAgICAgICAgICAgICAgICAgaWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICAvLyB0eXBlOiBmaWxlSXRlbS50eXBlLCAvLyBSZW1vdmVkOiBBWFBGaWxlTGlzdEl0ZW0gZG9lcyBub3QgaGF2ZSAudHlwZVxuICAgICAgICAgICAgICAgICAgc3RhdHVzOiBmaWxlSXRlbS5zdGF0dXMsIC8vIFByZXNlcnZlIGV4aXN0aW5nIHN0YXR1c1xuICAgICAgICAgICAgICAgICAgc291cmNlOiBmaWxlSXRlbS5zb3VyY2UgPyB7IGtpbmQ6IGZpbGVJdGVtLnNvdXJjZS5raW5kLCB2YWx1ZTogZmlsZUl0ZW0uc291cmNlLnZhbHVlIH0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVudGl0eVBheWxvYWQuaW1hZ2VJZCA9IHByb2Nlc3NlZEltYWdlSWRGb3JFbnRpdHlTYXZlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHNhdmVkRW50aXR5SWQgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZW50aXR5UGF5bG9hZCk7XG4gICAgICAgICAgLy8gY29uc3QgZW50aXR5SWQgPSBzYXZlZEVudGl0eS5pZDsgLy8gQ29ycmVjdGVkIGJhc2VkIG9uIHR5cGljYWwgc2VydmljZSByZXR1cm5cblxuICAgICAgICAgIGNvbnN0IGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXM6IGFueVtdID0gKGVudGl0eVBheWxvYWQuaW1hZ2VJZCB8fCBbXSkuZmlsdGVyKFxuICAgICAgICAgICAgKGY6IGFueSkgPT4gZi5zdGF0dXMgIT09ICdwZW5kaW5nX3VwbG9hZCcsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGZvciAoY29uc3QgeyBmaWxlSXRlbSwgYmxvYiB9IG9mIGZpbGVzVG9VcGxvYWRBZnRlclNhdmUpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGlmICghZmlsZVN0b3JhZ2VTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdmaWxlU3RvcmFnZVNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZS4nKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zdCBmaWxlU3RvcmFnZUluZm86IEFYUEZpbGVTdG9yYWdlSW5mbyA9IGF3YWl0IGZpbGVTdG9yYWdlU2VydmljZS5zYXZlKHtcbiAgICAgICAgICAgICAgICBmaWxlOiBibG9iLFxuICAgICAgICAgICAgICAgIHJlZklkOiBzYXZlZEVudGl0eUlkLFxuICAgICAgICAgICAgICAgIHJlZlR5cGU6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZX1gLFxuICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnJyxcbiAgICAgICAgICAgICAgICBuYW1lOiBibG9iLm5hbWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBhd2FpdCBmaWxlU3RvcmFnZVNlcnZpY2UuY29tbWl0KGZpbGVTdG9yYWdlSW5mby5maWxlSWQpO1xuXG4gICAgICAgICAgICAgIGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGZpbGVTdG9yYWdlSW5mby5maWxlSWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZVN0b3JhZ2VJbmZvLm5hbWUgfHwgYmxvYi5uYW1lLFxuICAgICAgICAgICAgICAgIHNpemU6IGZpbGVTdG9yYWdlSW5mby5zaXplIHx8IGJsb2Iuc2l6ZSxcbiAgICAgICAgICAgICAgICB0eXBlOiBmaWxlU3RvcmFnZUluZm8ubWltZVR5cGUgfHwgYmxvYi50eXBlLFxuICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZGVkJyxcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHsga2luZDogJ2ZpbGVJZCcsIHZhbHVlOiBmaWxlU3RvcmFnZUluZm8uZmlsZUlkIH0sXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgICAgICAgICAgLy8gVHlwZWQgZXJyb3JcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgICAgICAnRXJyb3IgdXBsb2FkaW5nIGZpbGUgdG8gRmlsZVN0b3JhZ2UgZm9yIGVudGl0eUlkOicsXG4gICAgICAgICAgICAgICAgc2F2ZWRFbnRpdHlJZCxcbiAgICAgICAgICAgICAgICAnZmlsZTonLFxuICAgICAgICAgICAgICAgIGZpbGVJdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgZXJyLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBmaW5hbEltYWdlSWRSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRlbXBJZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgIHR5cGU6IChibG9iIGFzIEZpbGUpLnR5cGUsIC8vIENvcnJlY3RseSBhY2Nlc3MgdHlwZSBmcm9tIEJsb2IvRmlsZVxuICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZF9mYWlsZWQnLFxuICAgICAgICAgICAgICAgIGVycm9yOiBlcnIubWVzc2FnZSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpbGVzVG9VcGxvYWRBZnRlclNhdmUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgbGV0IG5lZWRzVXBkYXRlID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmIChlbnRpdHlQYXlsb2FkLmltYWdlSWQgJiYgZW50aXR5UGF5bG9hZC5pbWFnZUlkLmxlbmd0aCA9PT0gZmluYWxJbWFnZUlkUmVmZXJlbmNlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgY29uc3Qgb2xkSWRzID0gZW50aXR5UGF5bG9hZC5pbWFnZUlkXG4gICAgICAgICAgICAgICAgLm1hcCgoZjogYW55KSA9PiBmLmlkIHx8IGYudGVtcElkKVxuICAgICAgICAgICAgICAgIC5zb3J0KClcbiAgICAgICAgICAgICAgICAuam9pbignLCcpO1xuICAgICAgICAgICAgICBjb25zdCBuZXdJZHMgPSBmaW5hbEltYWdlSWRSZWZlcmVuY2VzXG4gICAgICAgICAgICAgICAgLm1hcCgoZjogYW55KSA9PiBmLmlkIHx8IGYudGVtcElkKVxuICAgICAgICAgICAgICAgIC5zb3J0KClcbiAgICAgICAgICAgICAgICAuam9pbignLCcpO1xuICAgICAgICAgICAgICBpZiAob2xkSWRzID09PSBuZXdJZHMgJiYgIWZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMuc29tZSgoZjogYW55KSA9PiBmLnN0YXR1cyA9PT0gJ3VwbG9hZF9mYWlsZWQnKSkge1xuICAgICAgICAgICAgICAgIG5lZWRzVXBkYXRlID0gZmFsc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG5lZWRzVXBkYXRlKSB7XG4gICAgICAgICAgICAgIC8vIEFzc3VtaW5nIHVwZGF0ZU9uZSB0YWtlcyB0aGUgSUQgYW5kIGFuIG9iamVjdCBvZiBmaWVsZHMgdG8gdXBkYXRlXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMpO1xuXG4gICAgICAgICAgICAgIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShzYXZlZEVudGl0eUlkLCB7IGltYWdlSWQ6IGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMgYXMgYW55IH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7IGlkOiBzYXZlZEVudGl0eUlkIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMDAwKSk7XG5cbiAgICAgICAgICBjb25zdCBlbnRpdHlJZCA9IGRhdGEuaWQ7XG4gICAgICAgICAgY29uc3QgZmlsZXNUb1VwbG9hZDogQXJyYXk8eyBmaWxlSXRlbTogQVhQRmlsZUxpc3RJdGVtOyBibG9iOiBGaWxlIH0+ID0gW107XG4gICAgICAgICAgY29uc3QgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzOiBhbnlbXSA9IFtdO1xuXG4gICAgICAgICAgaWYgKGRhdGEuaW1hZ2VJZCAmJiBBcnJheS5pc0FycmF5KGRhdGEuaW1hZ2VJZCkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZmlsZUl0ZW0gb2YgZGF0YS5pbWFnZUlkIGFzIEFYUEZpbGVMaXN0SXRlbVtdKSB7XG4gICAgICAgICAgICAgIGlmIChmaWxlSXRlbS5zdGF0dXMgPT09ICdkZWxldGVkJykge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKGZpbGVJdGVtLnNvdXJjZT8ua2luZCA9PT0gJ2Jsb2InICYmIGZpbGVJdGVtLnNvdXJjZS52YWx1ZSBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAgICAgICAgICAgICAvLyBTYW5pdGl6ZSB0aGUgZmlsZW5hbWUgZm9yIG5ldyB1cGxvYWRzXG4gICAgICAgICAgICAgICAgY29uc3Qgc2FuaXRpemVkTmFtZSA9IHNhbml0aXplRmlsZU5hbWUoZmlsZUl0ZW0ubmFtZSk7XG4gICAgICAgICAgICAgICAgZmlsZXNUb1VwbG9hZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGZpbGVJdGVtOiB7IC4uLmZpbGVJdGVtLCBuYW1lOiBzYW5pdGl6ZWROYW1lIH0sXG4gICAgICAgICAgICAgICAgICBibG9iOiBmaWxlSXRlbS5zb3VyY2UudmFsdWUgYXMgRmlsZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICBmaWxlSXRlbS5zb3VyY2U/LmtpbmQgPT09ICdmaWxlSWQnICYmXG4gICAgICAgICAgICAgICAgZmlsZUl0ZW0uaWQgJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgZmlsZUl0ZW0uc291cmNlLnZhbHVlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGFuIGV4aXN0aW5nIGZpbGUsIGtlZXAgaXRzIHJlZmVyZW5jZS5cbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgICBpZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgICBuYW1lOiBmaWxlSXRlbS5uYW1lLFxuICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZUl0ZW0uc2l6ZSxcbiAgICAgICAgICAgICAgICAgIHN0YXR1czogZmlsZUl0ZW0uc3RhdHVzIHx8ICd1cGxvYWRlZCcsXG4gICAgICAgICAgICAgICAgICBzb3VyY2U6IHsga2luZDogJ2ZpbGVJZCcsIHZhbHVlOiBmaWxlSXRlbS5zb3VyY2UudmFsdWUgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWxlSXRlbS5pZCAmJiBmaWxlSXRlbS5uYW1lKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgaWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICBzdGF0dXM6IGZpbGVJdGVtLnN0YXR1cyB8fCAndXBsb2FkZWQnLFxuICAgICAgICAgICAgICAgICAgc291cmNlOiBmaWxlSXRlbS5zb3VyY2UgPyB7IGtpbmQ6IGZpbGVJdGVtLnNvdXJjZS5raW5kLCB2YWx1ZTogZmlsZUl0ZW0uc291cmNlLnZhbHVlIH0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBVcGxvYWQgbmV3IGZpbGVzIGFuZCBhZGQgdGhlaXIgc3VjY2Vzc2Z1bC9mYWlsZWQgaW5mbyB0byBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXNcbiAgICAgICAgICBmb3IgKGNvbnN0IHsgZmlsZUl0ZW0sIGJsb2IgfSBvZiBmaWxlc1RvVXBsb2FkKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBpZiAoIWZpbGVTdG9yYWdlU2VydmljZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZmlsZVN0b3JhZ2VTZXJ2aWNlIGlzIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29uc3QgZmlsZVN0b3JhZ2VJbmZvOiBBWFBGaWxlU3RvcmFnZUluZm8gPSBhd2FpdCBmaWxlU3RvcmFnZVNlcnZpY2Uuc2F2ZSh7XG4gICAgICAgICAgICAgICAgZmlsZTogYmxvYixcbiAgICAgICAgICAgICAgICByZWZJZDogZW50aXR5SWQsXG4gICAgICAgICAgICAgICAgcmVmVHlwZTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfWAsXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICcnLFxuICAgICAgICAgICAgICAgIG5hbWU6IGZpbGVJdGVtLm5hbWUsIC8vIFVzZSB0aGUgc2FuaXRpemVkIG5hbWUgZnJvbSBmaWxlSXRlbVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgYXdhaXQgZmlsZVN0b3JhZ2VTZXJ2aWNlLmNvbW1pdChmaWxlU3RvcmFnZUluZm8uZmlsZUlkKTtcblxuICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGZpbGVTdG9yYWdlSW5mby5maWxlSWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZVN0b3JhZ2VJbmZvLm5hbWUgfHwgZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlU3RvcmFnZUluZm8uc2l6ZSB8fCBibG9iLnNpemUsXG4gICAgICAgICAgICAgICAgdHlwZTogZmlsZVN0b3JhZ2VJbmZvLm1pbWVUeXBlIHx8IGJsb2IudHlwZSxcbiAgICAgICAgICAgICAgICBzdGF0dXM6ICd1cGxvYWRlZCcsXG4gICAgICAgICAgICAgICAgc291cmNlOiB7IGtpbmQ6ICdmaWxlSWQnLCB2YWx1ZTogZmlsZVN0b3JhZ2VJbmZvLmZpbGVJZCB9LFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycjogYW55KSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgJ0Vycm9yIHVwbG9hZGluZyBmaWxlIHRvIEZpbGVTdG9yYWdlIGR1cmluZyB1cGRhdGUgZm9yIGVudGl0eUlkOicsXG4gICAgICAgICAgICAgICAgZW50aXR5SWQsXG4gICAgICAgICAgICAgICAgJ2ZpbGU6JyxcbiAgICAgICAgICAgICAgICBmaWxlSXRlbS5uYW1lLFxuICAgICAgICAgICAgICAgIGVycixcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRlbXBJZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgIHR5cGU6IChibG9iIGFzIEZpbGUpLnR5cGUsXG4gICAgICAgICAgICAgICAgc3RhdHVzOiAndXBsb2FkX2ZhaWxlZCcsXG4gICAgICAgICAgICAgICAgZXJyb3I6IGVyci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDb25zdHJ1Y3QgdGhlIGZpbmFsIGRhdGEgcGF5bG9hZCBmb3IgdGhlIHVwZGF0ZS5cbiAgICAgICAgICBjb25zdCBmaW5hbFVwZGF0ZVBheWxvYWQgPSB7IC4uLmRhdGEgfTtcbiAgICAgICAgICBmaW5hbFVwZGF0ZVBheWxvYWQuaW1hZ2VJZCA9IHByb2Nlc3NlZEltYWdlUmVmZXJlbmNlcztcblxuICAgICAgICAgIGNvbnN0IGZ1bGx5U2FuaXRpemVkUGF5bG9hZCA9IHNhbml0aXplRm9yU3RvcmFnZShmaW5hbFVwZGF0ZVBheWxvYWQpO1xuXG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShlbnRpdHlJZCwgZnVsbHlTYW5pdGl6ZWRQYXlsb2FkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBFbnN1cmUgaWQgaXMgYSB2YWxpZCBrZXkgZm9yIEluZGV4ZWREQiAtIG5lZWRzIHRvIGJlIHN0cmluZyBvciBudW1iZXJcbiAgICAgICAgICAgIGxldCB2YWxpZElkOiBzdHJpbmc7XG5cbiAgICAgICAgICAgIC8vIElmIGlkIGlzIGFuIG9iamVjdCAoZS5nLiwgZnJvbSByb3V0ZXIgcGFyYW1zIG9yIGNvbXBsZXggc3RydWN0dXJlKVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBpZCA9PT0gJ29iamVjdCcgJiYgaWQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgaWYgKCdpZCcgaW4gaWQpIHtcbiAgICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKChpZCBhcyBhbnkpLmlkKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKGlkKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvbnZlcnRlZCBvYmplY3QgaWQgdG8gc3RyaW5nOicsIHZhbGlkSWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChpZCA9PT0gdW5kZWZpbmVkIHx8IGlkID09PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgaWQgcGFyYW1ldGVyOiBudWxsIG9yIHVuZGVmaW5lZCcpO1xuICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIC8vIENvbnZlcnQgdG8gc3RyaW5nIHRvIGVuc3VyZSBjb25zaXN0ZW5jeVxuICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKGlkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZSh2YWxpZElkKTtcblxuICAgICAgICAgICAgICAvLyBJZiBubyBkYXRhIHdhcyBmb3VuZFxuICAgICAgICAgICAgICBpZiAoIWRhdGEpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYE5vIHJlY29yZCBmb3VuZCB3aXRoIGlkOiAke3ZhbGlkSWR9YCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGZldGNoaW5nIGRhdGEgd2l0aCBJRCAke3ZhbGlkSWR9OmAsIGVycm9yKTtcbiAgICAgICAgICAgICAgLy8gUmV0dXJuIG51bGwgaW5zdGVhZCBvZiB0aHJvd2luZyB0byBhdm9pZCBjYXNjYWRpbmcgZXJyb3JzXG4gICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdDcml0aWNhbCBlcnJvciBpbiBieUtleSBxdWVyeTonLCBlcnJvcik7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDsgLy8gUmV0dXJuIG51bGwgaW5zdGVhZCBvZiB0aHJvd2luZyB0byBhdm9pZCBVSSBlcnJvcnNcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KHsgc2tpcDogZS5za2lwLCB0YWtlOiBlLnRha2UsIGZpbHRlcjogZS5maWx0ZXIgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3Byb21vdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21ldGFkYXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEwLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3Byb21vdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8vIHtcbiAgICAgICAgICAgIC8vICAgbmFtZTogJ21ldGFkYXRhJyxcbiAgICAgICAgICAgIC8vICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAvLyAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAvLyAgICAgICBsZzoge1xuICAgICAgICAgICAgLy8gICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgIC8vICAgICAgICAgb3JkZXI6IDEwLFxuICAgICAgICAgICAgLy8gICAgICAgfSxcbiAgICAgICAgICAgIC8vICAgICB9LFxuICAgICAgICAgICAgLy8gICB9LFxuICAgICAgICAgICAgLy8gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7dGl0bGV9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdjb21tZW50cycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IHtcbiAgICAgICAgICAgICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICB0aXRsZTogJ3QoXCJwcm9tb3Rpb25QbHVyYWxcIiwgeyBzY29wZTogXCJjb250ZW50LW1hbmFnZW1lbnRcIiB9KScsXG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJjcmVhdGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KWAsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlSXRlbXNcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZXRhaWxcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdvcGVuLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJlbnRpdHkubW9kaWZ5XCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAncXVpY2stbW9kaWZ5LWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IGB7eyBsb2NrLmNoZWNrKGNvbnRleHQuZXZhbChcImlkXCIpLCBcIiR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfVwiKSB9fWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy9UT0RPOiBhZGQgdGhpcyB0byB0aGUgZW50aXR5XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy51cGxvYWQtZmlsZXMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Nob3ctZmlsZS11cGxvYWRlci1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICBmaWxlczogJ3t7IGNvbnRleHQuZXZhbChcImltYWdlSWRcIikgfX0nLFxuICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICBhY2NlcHQ6ICcuanBnLC5qcGVnLC5wbmcsLmdpZiwud2VicCcsXG4gICAgICAgICAgICAgICAgICBrZXk6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgICAgIGZpbGVFZGl0YWJsZSA6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndXBsb2FkJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAYWN0aXZpdHktbG9nOmFjdGlvbnMudmlldy1oaXN0b3J5JyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaG93LXZlcnNpb24taGlzdG9yeS1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2ZXJzaW9uLWhpc3RvcnknLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0Bjb252ZXJzYXRpb246YWN0aW9ucy5zaG93LWNvbW1lbnQtcG9wdXAnLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Nob3ctY29tbWVudC1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHN1YmplY3Q6ICd7eyBjb250ZXh0LmV2YWwoXCJ0aXRsZVwiKSB9fScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmVyc2lvbi1oaXN0b3J5JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdDb21wYXJlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaG93LWVudGl0eS1yZWNvcmRzLWNvbXBhcmUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2ZXJzaW9uLWhpc3RvcnknLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAY29tbW9uOmFjdGlvbnMubG9jaycsXG4gICAgICAgICAgICAgIG5hbWU6ICdsb2NrLWVudGl0eScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnbG9jay1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGhpZGRlbjogYHt7IGxvY2suY2hlY2soY29udGV4dC5ldmFsKFwiaWRcIiksIFwiJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLm5hbWV9XCIpIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGNvbW1vbjphY3Rpb25zLnVubG9jaycsXG4gICAgICAgICAgICAgIG5hbWU6ICd1bmxvY2stZW50aXR5JyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd1bmxvY2stY29uZmlybScsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGhpZGRlbjogYHt7IChhd2FpdCBsb2NrLmNoZWNrKGNvbnRleHQuZXZhbChcImlkXCIpLCBcIiR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfVwiKSkgID09IGZhbHNlIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHsgc29ydHM6IFt7IG5hbWU6ICd0aXRsZScsIGRpcjogJ2FzYycgfV0gfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ21lZGlhJywgYHQoXCJtZWRpYVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdjb250ZW50VHlwZS5uYW1lJyxcbiAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdtZWRpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY3JlYXRlUXVlcnlWaWV3KCd0ZXh0JywgYHQoXCJ0ZXh0XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCwgdHJ1ZSwge1xuICAgICAgICAgICAgICBjb25kaXRpb25zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlLm5hbWUnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ3RleHQnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtY29udGVudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvYWNvcmV4LW1vZHVsZXMtY29udGVudC1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-modules-content-management.mjs","sources":["../tmp-esm2022/content-management/lib/const.js","../tmp-esm2022/content-management/lib/menu.provider.js","../tmp-esm2022/content-management/lib/entity.provider.js","../tmp-esm2022/content-management/lib/permission-definition.provider.js","../tmp-esm2022/content-management/lib/setting.provider.js","../tmp-esm2022/content-management/lib/search-command.provider.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.service.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.datasource.js","../tmp-esm2022/content-management/lib/features/promotion/components/promotion-slot/promotion-slot.component.js","../tmp-esm2022/content-management/lib/entities/app-term/app-term.service.js","../tmp-esm2022/content-management/lib/entities/glossary/glossary.service.js","../tmp-esm2022/content-management/lib/content-management.module.js","../tmp-esm2022/content-management/lib/entities/promotion/promotion.entity.js","../tmp-esm2022/content-management/lib/entities/app-term/app-term.entity.js","../tmp-esm2022/content-management/lib/entities/glossary/glossary.entity.js","../tmp-esm2022/content-management/lib/features/index.js","../tmp-esm2022/content-management/acorex-modules-content-management.js"],"sourcesContent":["const config = {\n i18n: 'content-management',\n};\nexport const RootConfig = {\n config,\n module: {\n module: 'ContentManagement',\n name: 'ContentManagement',\n title: `t('module-name', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-invoice',\n },\n entities: {\n promotion: {\n name: 'Promotion',\n title: `t(\"promotion\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"promotions\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-megaphone',\n },\n glossary: {\n name: 'Glossary',\n title: `t(\"glossary.individual-title\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"glossary.plural-title\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-file',\n },\n appTerm: {\n name: 'app-term',\n title: `t(\"app-term.individual-title\", {scope:\"${config.i18n}\"})`,\n titlePlural: `t(\"app-term.plural-title\", {scope:\"${config.i18n}\"})`,\n pageTitle: `t(\"app-term.page-title\", {scope:\"${config.i18n}\"})`,\n pageDescription: `t(\"app-term.page-description\", {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-scale-balanced',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxNQUFNLEdBQUc7SUFDYixJQUFJLEVBQUUsb0JBQW9CO0NBQzNCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxtQkFBbUI7UUFDM0IsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixLQUFLLEVBQUUsNEJBQTRCLE1BQU0sQ0FBQyxJQUFJLEtBQUs7UUFDbkQsSUFBSSxFQUFFLDBCQUEwQjtLQUNqQztJQUNELFFBQVEsRUFBRTtRQUNSLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxXQUFXO1lBQ2pCLEtBQUssRUFBRSw0QkFBNEIsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNwRCxXQUFXLEVBQUUsNkJBQTZCLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDM0QsSUFBSSxFQUFFLHVCQUF1QjtTQUM5QjtRQUNELFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUssRUFBRSw0Q0FBNEMsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNwRSxXQUFXLEVBQUUsd0NBQXdDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDdEUsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELE9BQU8sRUFBRTtZQUNQLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUssRUFBRSwwQ0FBMEMsTUFBTSxDQUFDLElBQUksS0FBSztZQUNqRSxXQUFXLEVBQUUsc0NBQXNDLE1BQU0sQ0FBQyxJQUFJLEtBQUs7WUFDbkUsU0FBUyxFQUFFLG9DQUFvQyxNQUFNLENBQUMsSUFBSSxLQUFLO1lBQy9ELGVBQWUsRUFBRSwwQ0FBMEMsTUFBTSxDQUFDLElBQUksS0FBSztZQUMzRSxJQUFJLEVBQUUsNEJBQTRCO1NBQ25DO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY29uZmlnID0ge1xuICBpMThuOiAnY29udGVudC1tYW5hZ2VtZW50Jyxcbn07XG5leHBvcnQgY29uc3QgUm9vdENvbmZpZyA9IHtcbiAgY29uZmlnLFxuICBtb2R1bGU6IHtcbiAgICBtb2R1bGU6ICdDb250ZW50TWFuYWdlbWVudCcsXG4gICAgbmFtZTogJ0NvbnRlbnRNYW5hZ2VtZW50JyxcbiAgICB0aXRsZTogYHQoJ21vZHVsZS1uYW1lJywge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1pbnZvaWNlJyxcbiAgfSxcbiAgZW50aXRpZXM6IHtcbiAgICBwcm9tb3Rpb246IHtcbiAgICAgIG5hbWU6ICdQcm9tb3Rpb24nLFxuICAgICAgdGl0bGU6IGB0KFwicHJvbW90aW9uXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICB0aXRsZVBsdXJhbDogYHQoXCJwcm9tb3Rpb25zXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbWVnYXBob25lJyxcbiAgICB9LFxuICAgIGdsb3NzYXJ5OiB7XG4gICAgICBuYW1lOiAnR2xvc3NhcnknLFxuICAgICAgdGl0bGU6IGB0KFwiZ2xvc3NhcnkuaW5kaXZpZHVhbC10aXRsZVwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiZ2xvc3NhcnkucGx1cmFsLXRpdGxlXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZScsXG4gICAgfSxcbiAgICBhcHBUZXJtOiB7XG4gICAgICBuYW1lOiAnYXBwLXRlcm0nLFxuICAgICAgdGl0bGU6IGB0KFwiYXBwLXRlcm0uaW5kaXZpZHVhbC10aXRsZVwiLCB7c2NvcGU6XCIke2NvbmZpZy5pMThufVwifSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiYXBwLXRlcm0ucGx1cmFsLXRpdGxlXCIsIHtzY29wZTpcIiR7Y29uZmlnLmkxOG59XCJ9KWAsXG4gICAgICBwYWdlVGl0bGU6IGB0KFwiYXBwLXRlcm0ucGFnZS10aXRsZVwiLCB7c2NvcGU6XCIke2NvbmZpZy5pMThufVwifSlgLFxuICAgICAgcGFnZURlc2NyaXB0aW9uOiBgdChcImFwcC10ZXJtLnBhZ2UtZGVzY3JpcHRpb25cIiwge3Njb3BlOlwiJHtjb25maWcuaTE4bn1cIn0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1zY2FsZS1iYWxhbmNlZCcsXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nexport class AXMMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n }\n async provide(context) {\n const scope = RootConfig.config.i18n;\n const module = RootConfig.module;\n context.addItems([\n {\n priority: 9002,\n text: `t('module-name', {scope:\"${scope}\"})`,\n icon: module.icon,\n name: 'content-management-menu',\n children: [\n {\n text: RootConfig.entities.promotion.title,\n path: this.entityService.createPath(module.name, RootConfig.entities.promotion.name),\n icon: RootConfig.entities.promotion.icon,\n priority: 1,\n name: 'content-management-promotion-menu-item'\n },\n {\n text: RootConfig.entities.glossary?.title,\n path: this.entityService.createPath(module.name, RootConfig.entities.glossary?.name),\n icon: RootConfig.entities.glossary?.icon,\n priority: 2,\n name: 'content-management-glossary-menu-item'\n },\n {\n text: RootConfig.entities.appTerm?.title,\n path: this.entityService.createPath(module.name, RootConfig.entities.appTerm?.name),\n icon: RootConfig.entities.appTerm?.icon,\n priority: 3,\n name: 'content-management-app-term-menu-item'\n }\n ],\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVyQyxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUNVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFzQ25ELENBQUM7SUFwQ0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUErQjtRQUMzQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNyQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBRWpDLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDZjtnQkFDRSxRQUFRLEVBQUUsSUFBSTtnQkFDZCxJQUFJLEVBQUUsNEJBQTRCLEtBQUssS0FBSztnQkFDNUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixRQUFRLEVBQUU7b0JBQ1I7d0JBQ0UsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUs7d0JBQ3pDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQzt3QkFDcEYsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUk7d0JBQ3hDLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksRUFBRSx3Q0FBd0M7cUJBQy9DO29CQUNEO3dCQUNFLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxLQUFLO3dCQUN6QyxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7d0JBQ3BGLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxJQUFJO3dCQUN4QyxRQUFRLEVBQUUsQ0FBQzt3QkFDWCxJQUFJLEVBQUUsdUNBQXVDO3FCQUM5QztvQkFDRDt3QkFDRSxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsS0FBSzt3QkFDeEMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDO3dCQUNuRixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSTt3QkFDdkMsUUFBUSxFQUFFLENBQUM7d0JBQ1gsSUFBSSxFQUFFLHVDQUF1QztxQkFDOUM7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUE1lbnVQcm92aWRlciwgQVhQTWVudVByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1NZW51UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBNZW51UHJvdmlkZXIge1xuICBwcml2YXRlIGVudGl0eVNlcnZpY2UgPSBpbmplY3QoQVhQRW50aXR5U2VydmljZSk7XG5cbiAgYXN5bmMgcHJvdmlkZShjb250ZXh0OiBBWFBNZW51UHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2NvcGUgPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuICAgIGNvbnN0IG1vZHVsZSA9IFJvb3RDb25maWcubW9kdWxlO1xuXG4gICAgY29udGV4dC5hZGRJdGVtcyhbXG4gICAgICB7XG4gICAgICAgIHByaW9yaXR5OiA5MDAyLFxuICAgICAgICB0ZXh0OiBgdCgnbW9kdWxlLW5hbWUnLCB7c2NvcGU6XCIke3Njb3BlfVwifSlgLFxuICAgICAgICBpY29uOiBtb2R1bGUuaWNvbixcbiAgICAgICAgbmFtZTogJ2NvbnRlbnQtbWFuYWdlbWVudC1tZW51JyxcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi50aXRsZSxcbiAgICAgICAgICAgIHBhdGg6IHRoaXMuZW50aXR5U2VydmljZS5jcmVhdGVQYXRoKG1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lKSxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLmljb24sXG4gICAgICAgICAgICBwcmlvcml0eTogMSxcbiAgICAgICAgICAgIG5hbWU6ICdjb250ZW50LW1hbmFnZW1lbnQtcHJvbW90aW9uLW1lbnUtaXRlbSdcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6IFJvb3RDb25maWcuZW50aXRpZXMuZ2xvc3Nhcnk/LnRpdGxlLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgobW9kdWxlLm5hbWUsIFJvb3RDb25maWcuZW50aXRpZXMuZ2xvc3Nhcnk/Lm5hbWUpLFxuICAgICAgICAgICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy5nbG9zc2FyeT8uaWNvbixcbiAgICAgICAgICAgIHByaW9yaXR5OiAyLFxuICAgICAgICAgICAgbmFtZTogJ2NvbnRlbnQtbWFuYWdlbWVudC1nbG9zc2FyeS1tZW51LWl0ZW0nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiBSb290Q29uZmlnLmVudGl0aWVzLmFwcFRlcm0/LnRpdGxlLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgobW9kdWxlLm5hbWUsIFJvb3RDb25maWcuZW50aXRpZXMuYXBwVGVybT8ubmFtZSksXG4gICAgICAgICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmFwcFRlcm0/Lmljb24sXG4gICAgICAgICAgICBwcmlvcml0eTogMyxcbiAgICAgICAgICAgIG5hbWU6ICdjb250ZW50LW1hbmFnZW1lbnQtYXBwLXRlcm0tbWVudS1pdGVtJ1xuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cbn1cbiJdfQ==","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n // case RootConfig.entities.sample.name:\n // return (await import('./entities/sample/sample.entity')).factory(this.injector);\n case RootConfig.entities.promotion.name: {\n const entity = (await import('./entities/promotion/promotion.entity')).promotionEntityFactory;\n return entity(this.injector);\n }\n case RootConfig.entities.glossary.name: {\n const entity = (await import('./entities/glossary/glossary.entity')).glossaryEntityFactory;\n return entity(this.injector);\n }\n case RootConfig.entities.appTerm.name: {\n const entity = (await import('./entities/app-term/app-term.entity')).appTermEntityEntityFactory;\n return entity(this.injector);\n }\n }\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0eS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFHckMsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0ErQnJDO0lBN0JRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzlDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekMsUUFBUSxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsd0NBQXdDO2dCQUN4QyxxRkFBcUY7Z0JBQ3JGLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDeEMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUM7b0JBQzlGLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDL0IsQ0FBQztnQkFDRCxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ3ZDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDO29CQUMzRixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQy9CLENBQUM7Z0JBQ0QsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUN0QyxNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQU0sTUFBTSxDQUFDLHFDQUFxQyxDQUFDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQztvQkFDaEcsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBL0JVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUVudGl0eVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHB1YmxpYyBwcmVsb2FkKCk6IEFYUEVudGl0eVByZWxvYWRFbnRpdHlbXSB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpKS5tYXAoKGVudGl0eTogYW55KSA9PiAoe1xuICAgICAgbW9kdWxlOiBtb2R1bGUsXG4gICAgICBlbnRpdHk6IGVudGl0eS5uYW1lLFxuICAgIH0pKTtcbiAgfVxuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHN3aXRjaCAoZW50aXR5TmFtZSkge1xuICAgICAgICAvLyBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuc2FtcGxlLm5hbWU6XG4gICAgICAgIC8vICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvc2FtcGxlL3NhbXBsZS5lbnRpdHknKSkuZmFjdG9yeSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lOiB7XG4gICAgICAgICAgY29uc3QgZW50aXR5ID0gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9wcm9tb3Rpb24vcHJvbW90aW9uLmVudGl0eScpKS5wcm9tb3Rpb25FbnRpdHlGYWN0b3J5O1xuICAgICAgICAgIHJldHVybiBlbnRpdHkodGhpcy5pbmplY3Rvcik7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLmdsb3NzYXJ5Lm5hbWU6IHtcbiAgICAgICAgICBjb25zdCBlbnRpdHkgPSAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL2dsb3NzYXJ5L2dsb3NzYXJ5LmVudGl0eScpKS5nbG9zc2FyeUVudGl0eUZhY3Rvcnk7XG4gICAgICAgICAgcmV0dXJuIGVudGl0eSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuYXBwVGVybS5uYW1lOiB7XG4gICAgICAgICAgY29uc3QgZW50aXR5ID0gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9hcHAtdGVybS9hcHAtdGVybS5lbnRpdHknKSkuYXBwVGVybUVudGl0eUVudGl0eUZhY3Rvcnk7XG4gICAgICAgICAgcmV0dXJuIGVudGl0eSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19","export class AXMPermissionDefinitionProvider {\n async define(context) {\n // context.addPermissions([\n // {\n // name: 'view_templates',\n // title: 'Permission to view templates',\n // isArchived: false,\n // },\n // ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL3Blcm1pc3Npb24tZGVmaW5pdGlvbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sK0JBQStCO0lBQzFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBK0M7UUFDMUQsMkJBQTJCO1FBQzNCLE1BQU07UUFDTiw4QkFBOEI7UUFDOUIsNkNBQTZDO1FBQzdDLHlCQUF5QjtRQUN6QixPQUFPO1FBQ1AsTUFBTTtJQUNSLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIsIEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcblxuZXhwb3J0IGNsYXNzIEFYTVBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgYXN5bmMgZGVmaW5lKGNvbnRleHQ6IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gY29udGV4dC5hZGRQZXJtaXNzaW9ucyhbXG4gICAgLy8gICB7XG4gICAgLy8gICAgIG5hbWU6ICd2aWV3X3RlbXBsYXRlcycsXG4gICAgLy8gICAgIHRpdGxlOiAnUGVybWlzc2lvbiB0byB2aWV3IHRlbXBsYXRlcycsXG4gICAgLy8gICAgIGlzQXJjaGl2ZWQ6IGZhbHNlLFxuICAgIC8vICAgfSxcbiAgICAvLyBdKTtcbiAgfVxufVxuIl19","export class AXMSettingProvider {\n async provide(context) {\n // context\n // // Add Form Template Group\n // .addGroup('form-template', 'Form Template', 'Settings related to form templates.', RootConfig.module.icon)\n // // Start Interface Section\n // .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n // .addSetting({\n // key: 'history-panel',\n // title: 'Show History Panel',\n // scope: 'U',\n // isInherited: true,\n // defaultValue: false,\n // widget: {\n // type: AXPWidgetsCatalog.toggle,\n // },\n // description: 'Enable or disable the history panel for forms.',\n // validationRules: [\n // {\n // rule: 'required',\n // },\n // ],\n // })\n // .endSection()\n // .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9zZXR0aW5nLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUE0QztRQUN4RCxVQUFVO1FBQ1YsK0JBQStCO1FBQy9CLCtHQUErRztRQUMvRywrQkFBK0I7UUFDL0Isd0ZBQXdGO1FBQ3hGLGtCQUFrQjtRQUNsQiw0QkFBNEI7UUFDNUIsbUNBQW1DO1FBQ25DLGtCQUFrQjtRQUNsQix5QkFBeUI7UUFDekIsMkJBQTJCO1FBQzNCLGdCQUFnQjtRQUNoQix3Q0FBd0M7UUFDeEMsU0FBUztRQUNULHFFQUFxRTtRQUNyRSx5QkFBeUI7UUFDekIsVUFBVTtRQUNWLDRCQUE0QjtRQUM1QixXQUFXO1FBQ1gsU0FBUztRQUNULE9BQU87UUFDUCxrQkFBa0I7UUFDbEIsaUJBQWlCO0lBQ25CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIsIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNU2V0dGluZ1Byb3ZpZGVyIGltcGxlbWVudHMgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlciB7XG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBjb250ZXh0XG4gICAgLy8gICAvLyBBZGQgRm9ybSBUZW1wbGF0ZSBHcm91cFxuICAgIC8vICAgLmFkZEdyb3VwKCdmb3JtLXRlbXBsYXRlJywgJ0Zvcm0gVGVtcGxhdGUnLCAnU2V0dGluZ3MgcmVsYXRlZCB0byBmb3JtIHRlbXBsYXRlcy4nLCBSb290Q29uZmlnLm1vZHVsZS5pY29uKVxuICAgIC8vICAgLy8gU3RhcnQgSW50ZXJmYWNlIFNlY3Rpb25cbiAgICAvLyAgIC5hZGRTZWN0aW9uKCdpbnRlcmZhY2UnLCAnVUkgSW50ZXJmYWNlJywgJ0N1c3RvbWl6ZSB0aGUgdXNlciBpbnRlcmZhY2UgZm9yIGZvcm1zLicpXG4gICAgLy8gICAuYWRkU2V0dGluZyh7XG4gICAgLy8gICAgIGtleTogJ2hpc3RvcnktcGFuZWwnLFxuICAgIC8vICAgICB0aXRsZTogJ1Nob3cgSGlzdG9yeSBQYW5lbCcsXG4gICAgLy8gICAgIHNjb3BlOiAnVScsXG4gICAgLy8gICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgIC8vICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgIC8vICAgICB3aWRnZXQ6IHtcbiAgICAvLyAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgLy8gICAgIH0sXG4gICAgLy8gICAgIGRlc2NyaXB0aW9uOiAnRW5hYmxlIG9yIGRpc2FibGUgdGhlIGhpc3RvcnkgcGFuZWwgZm9yIGZvcm1zLicsXG4gICAgLy8gICAgIHZhbGlkYXRpb25SdWxlczogW1xuICAgIC8vICAgICAgIHtcbiAgICAvLyAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgLy8gICAgICAgfSxcbiAgICAvLyAgICAgXSxcbiAgICAvLyAgIH0pXG4gICAgLy8gICAuZW5kU2VjdGlvbigpXG4gICAgLy8gICAuZW5kR3JvdXAoKTtcbiAgfVxufVxuIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // {\n // group: 'command',\n // title: 'New Form Template',\n // icon: RootConfig.entities.template.icon,\n // description: 'Create a new form template for designing reusable forms.', // Added description\n // commands: {\n // 'create-entity': {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.template.name}`,\n // },\n // },\n // }\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvc2VhcmNoLWNvbW1hbmQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx3QkFBd0I7SUFBdEU7O1FBQ0UsYUFBUSxHQUFzQjtRQUM1QixJQUFJO1FBQ0osc0JBQXNCO1FBQ3RCLCtCQUErQjtRQUMvQiw0Q0FBNEM7UUFDNUMsaUdBQWlHO1FBQ2pHLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsaUZBQWlGO1FBQ2pGLFFBQVE7UUFDUixNQUFNO1FBQ04sSUFBSTtTQUNMLENBQUM7SUFDSixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIsIEFYUFNlYXJjaFJlc3VsdCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNlYXJjaENvbW1hbmRQcm92aWRlciBleHRlbmRzIEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciB7XG4gIGNvbW1hbmRzOiBBWFBTZWFyY2hSZXN1bHRbXSA9IFtcbiAgICAvLyB7XG4gICAgLy8gICBncm91cDogJ2NvbW1hbmQnLFxuICAgIC8vICB0aXRsZTogJ05ldyBGb3JtIFRlbXBsYXRlJyxcbiAgICAvLyAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5pY29uLFxuICAgIC8vICBkZXNjcmlwdGlvbjogJ0NyZWF0ZSBhIG5ldyBmb3JtIHRlbXBsYXRlIGZvciBkZXNpZ25pbmcgcmV1c2FibGUgZm9ybXMuJywgLy8gQWRkZWQgZGVzY3JpcHRpb25cbiAgICAvLyAgY29tbWFuZHM6IHtcbiAgICAvLyAgICAnY3JlYXRlLWVudGl0eSc6IHtcbiAgICAvLyAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnRlbXBsYXRlLm5hbWV9YCxcbiAgICAvLyAgICB9LFxuICAgIC8vICB9LFxuICAgIC8vIH1cbiAgXTtcbn1cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMAppPromotionService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMPromotionServiceImpl extends AXMEntityCrudServiceImpl {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.promotion.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMPromotionServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMPromotionServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMPromotionServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixzQkFBdUIsU0FBUSx3QkFBeUQ7Q0FBRztBQUdqSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsd0JBQXlEO0lBQ3BHO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDOzhHQUhVLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4vcHJvbW90aW9uLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUFwcFByb21vdGlvblNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8c3RyaW5nLCBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbD4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvblNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPHN0cmluZywgQVhNUHJvbW90aW9uRW50aXR5TW9kZWw+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfWApO1xuICB9XG59XG4iXX0=","import { AXDataSource } from '@acorex/cdk/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { inject } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMAppPromotionService } from './promotion.service';\nexport class AXMPromotionDataSourceDefinition {\n constructor() {\n this.promotionService = inject(AXMAppPromotionService);\n this.i18n = RootConfig.config.i18n;\n }\n items() {\n return Promise.resolve([\n {\n name: 'promotion',\n title: 'Promotion',\n source: () => {\n return new AXDataSource({\n load: async (_) => {\n try {\n const res = await this.promotionService.query();\n return {\n items: res.items,\n total: res.total,\n };\n }\n catch (e) {\n console.log(e);\n throw e;\n }\n },\n pageSize: 100,\n });\n },\n columns: [\n {\n name: 'id',\n title: 'ID',\n datatype: 'uuid',\n type: AXPWidgetsCatalog.text,\n },\n {\n name: 'title',\n //TODO translate\n title: `Title`,\n datatype: 'string',\n type: AXPWidgetsCatalog.text,\n },\n {\n name: 'body',\n title: `Body`,\n datatype: 'string',\n type: AXPWidgetsCatalog.number,\n },\n ],\n filters: [\n {\n field: 'title',\n title: 'Title',\n operator: {\n type: 'equal',\n },\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n filterType: {\n advance: true,\n inline: true,\n },\n },\n ],\n textField: {\n name: 'title',\n title: 'Title',\n },\n valueField: {\n name: 'id',\n title: 'ID',\n },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLmRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcHJvbW90aW9uL3Byb21vdGlvbi5kYXRhc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0QsTUFBTSxPQUFPLGdDQUFnQztJQUE3QztRQUNZLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2xELFNBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQXdFMUMsQ0FBQztJQXRFQyxLQUFLO1FBQ0gsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3JCO2dCQUNFLElBQUksRUFBRSxXQUFXO2dCQUNqQixLQUFLLEVBQUUsV0FBVztnQkFDbEIsTUFBTSxFQUFFLEdBQUcsRUFBRTtvQkFDWCxPQUFPLElBQUksWUFBWSxDQUFDO3dCQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFOzRCQUNoQixJQUFJLENBQUM7Z0NBQ0gsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7Z0NBQ2hELE9BQU87b0NBQ0wsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO29DQUNoQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7aUNBQ2pCLENBQUM7NEJBQ0osQ0FBQzs0QkFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dDQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0NBQ2YsTUFBTSxDQUFDLENBQUM7NEJBQ1YsQ0FBQzt3QkFDSCxDQUFDO3dCQUNELFFBQVEsRUFBRSxHQUFHO3FCQUNkLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxJQUFJLEVBQUUsSUFBSTt3QkFDVixLQUFLLEVBQUUsSUFBSTt3QkFDWCxRQUFRLEVBQUUsTUFBTTt3QkFDaEIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLElBQUk7cUJBQzdCO29CQUNEO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLGdCQUFnQjt3QkFDaEIsS0FBSyxFQUFFLE9BQU87d0JBQ2QsUUFBUSxFQUFFLFFBQVE7d0JBQ2xCLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3FCQUM3QjtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsTUFBTTt3QkFDWixLQUFLLEVBQUUsTUFBTTt3QkFDYixRQUFRLEVBQUUsUUFBUTt3QkFDbEIsSUFBSSxFQUFFLGlCQUFpQixDQUFDLE1BQU07cUJBQy9CO2lCQUNGO2dCQUNELE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxLQUFLLEVBQUUsT0FBTzt3QkFDZCxLQUFLLEVBQUUsT0FBTzt3QkFDZCxRQUFRLEVBQUU7NEJBQ1IsSUFBSSxFQUFFLE9BQU87eUJBQ2Q7d0JBQ0QsTUFBTSxFQUFFOzRCQUNOLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO3lCQUM3Qjt3QkFDRCxVQUFVLEVBQUU7NEJBQ1YsT0FBTyxFQUFFLElBQUk7NEJBQ2IsTUFBTSxFQUFFLElBQUk7eUJBQ2I7cUJBQ3FCO2lCQUN6QjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsSUFBSSxFQUFFLE9BQU87b0JBQ2IsS0FBSyxFQUFFLE9BQU87aUJBQ2Y7Z0JBQ0QsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxJQUFJO29CQUNWLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERhdGFTb3VyY2UgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhQRGF0YVNvdXJjZURlZmluaXRpb24sIEFYUERhdGFTb3VyY2VEZWZpbml0aW9uUHJvdmlkZXIsIEFYUEZpbHRlckRlZmluaXRpb24gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUFwcFByb21vdGlvblNlcnZpY2UgfSBmcm9tICcuL3Byb21vdGlvbi5zZXJ2aWNlJztcblxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvbkRhdGFTb3VyY2VEZWZpbml0aW9uIGltcGxlbWVudHMgQVhQRGF0YVNvdXJjZURlZmluaXRpb25Qcm92aWRlciB7XG4gIHByb3RlY3RlZCBwcm9tb3Rpb25TZXJ2aWNlID0gaW5qZWN0KEFYTUFwcFByb21vdGlvblNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgaXRlbXMoKTogUHJvbWlzZTxBWFBEYXRhU291cmNlRGVmaW5pdGlvbltdPiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwcm9tb3Rpb24nLFxuICAgICAgICB0aXRsZTogJ1Byb21vdGlvbicsXG4gICAgICAgIHNvdXJjZTogKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgQVhEYXRhU291cmNlKHsgXG4gICAgICAgICAgICBsb2FkOiBhc3luYyAoXykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMucHJvbW90aW9uU2VydmljZS5xdWVyeSgpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICBpdGVtczogcmVzLml0ZW1zLFxuICAgICAgICAgICAgICAgICAgdG90YWw6IHJlcy50b3RhbCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHBhZ2VTaXplOiAxMDAsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICAgICAgdGl0bGU6ICdJRCcsXG4gICAgICAgICAgICBkYXRhdHlwZTogJ3V1aWQnLFxuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAvL1RPRE8gdHJhbnNsYXRlXG4gICAgICAgICAgICB0aXRsZTogYFRpdGxlYCxcbiAgICAgICAgICAgIGRhdGF0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICB0aXRsZTogYEJvZHlgLFxuICAgICAgICAgICAgZGF0YXR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubnVtYmVyLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmaWx0ZXJUeXBlOiB7XG4gICAgICAgICAgICAgIGFkdmFuY2U6IHRydWUsXG4gICAgICAgICAgICAgIGlubGluZTogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSBhcyBBWFBGaWx0ZXJEZWZpbml0aW9uLFxuICAgICAgICBdLFxuICAgICAgICB0ZXh0RmllbGQ6IHtcbiAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICB9LFxuICAgICAgICB2YWx1ZUZpZWxkOiB7XG4gICAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgICB0aXRsZTogJ0lEJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH1cbn0gIl19","import { AXSafePipe } from '@acorex/core/pipes';\nimport { AXPFileStorageService } from '@acorex/platform/common';\nimport { Component, inject, signal } from '@angular/core';\nimport { AXMAppPromotionService } from '../../../../entities/promotion/promotion.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMPromotionSlotComponent {\n constructor() {\n this.notificationChannelService = inject(AXMAppPromotionService);\n this.listData = signal([], ...(ngDevMode ? [{ debugName: \"listData\" }] : []));\n this.fileStorage = inject(AXPFileStorageService);\n }\n async ngOnInit() {\n const channels = await this.notificationChannelService.query({\n skip: 0,\n take: 10000,\n // filter: {\n // field: 'type',\n // operator: { type: 'equal' },\n // value: 'promotion',\n // },\n });\n const filteredItems = channels.items.filter((x) => x.placement?.name == this.location);\n const mappedItems = await Promise.all(filteredItems.map(async (item) => {\n if (item.imageId != null) {\n const image = await this.fileStorage.getInfo(item.imageId);\n return {\n ...item,\n image: image,\n };\n }\n else {\n return item;\n }\n }));\n this.listData.set(mappedItems);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMPromotionSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.6\", type: AXMPromotionSlotComponent, isStandalone: true, selector: \"acorex-platform-promotion-slot\", ngImport: i0, template: \"@for (item of listData(); track item.id) { @if (item.contentType?.name == 'media') {\\n<img [src]=\\\"item.image?.url ?? ''\\\" class=\\\"ax-w-full ax-p-3 ax-border {{\\n item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none'\\n }}\\\" />\\n} @if(item.contentType?.name == 'text'){\\n<div class=\\\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\\\">\\n <h1 class=\\\"ax-text-base/6\\\" [innerHTML]=\\\"item.body | safe : 'html'\\\"></h1>\\n</div>\\n\\n} } \", dependencies: [{ kind: \"pipe\", type: AXSafePipe, name: \"safe\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMPromotionSlotComponent, decorators: [{\n type: Component,\n args: [{ selector: 'acorex-platform-promotion-slot', imports: [AXSafePipe], template: \"@for (item of listData(); track item.id) { @if (item.contentType?.name == 'media') {\\n<img [src]=\\\"item.image?.url ?? ''\\\" class=\\\"ax-w-full ax-p-3 ax-border {{\\n item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none'\\n }}\\\" />\\n} @if(item.contentType?.name == 'text'){\\n<div class=\\\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\\\">\\n <h1 class=\\\"ax-text-base/6\\\" [innerHTML]=\\\"item.body | safe : 'html'\\\"></h1>\\n</div>\\n\\n} } \" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLXNsb3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3Byb21vdGlvbi9jb21wb25lbnRzL3Byb21vdGlvbi1zbG90L3Byb21vdGlvbi1zbG90LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9wcm9tb3Rpb24vY29tcG9uZW50cy9wcm9tb3Rpb24tc2xvdC9wcm9tb3Rpb24tc2xvdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7QUFRMUYsTUFBTSxPQUFPLHlCQUF5QjtJQUx0QztRQVFFLCtCQUEwQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRTVELGFBQVEsR0FBOEMsTUFBTSxDQUFDLEVBQUUsb0RBQUMsQ0FBQztRQUV6RCxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBZ0NyRDtJQTlCQyxLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQztZQUMzRCxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxLQUFLO1lBQ1gsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixpQ0FBaUM7WUFDakMsd0JBQXdCO1lBQ3hCLEtBQUs7U0FDTixDQUFDLENBQUM7UUFFSCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXZGLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDbkMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDL0IsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN6QixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFM0QsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsQ0FBQztZQUNKLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakMsQ0FBQzs4R0F0Q1UseUJBQXlCO2tHQUF6Qix5QkFBeUIsMEZDWnRDLCtjQVNJLHVDREFRLFVBQVU7OzJGQUdULHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxnQ0FBZ0MsV0FDakMsQ0FBQyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNhZmVQaXBlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BpcGVzJztcbmltcG9ydCB7IEFYUEZpbGVTdG9yYWdlU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQXBwUHJvbW90aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudGl0aWVzL3Byb21vdGlvbi9wcm9tb3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL2VudGl0aWVzL3Byb21vdGlvbi9wcm9tb3Rpb24udHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY29yZXgtcGxhdGZvcm0tcHJvbW90aW9uLXNsb3QnLFxuICBpbXBvcnRzOiBbQVhTYWZlUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9tb3Rpb24tc2xvdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYTVByb21vdGlvblNsb3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBsb2NhdGlvbjogc3RyaW5nO1xuXG4gIG5vdGlmaWNhdGlvbkNoYW5uZWxTZXJ2aWNlID0gaW5qZWN0KEFYTUFwcFByb21vdGlvblNlcnZpY2UpO1xuXG4gIGxpc3REYXRhOiBXcml0YWJsZVNpZ25hbDxBWE1Qcm9tb3Rpb25FbnRpdHlNb2RlbFtdPiA9IHNpZ25hbChbXSk7XG5cbiAgcHJpdmF0ZSBmaWxlU3RvcmFnZSA9IGluamVjdChBWFBGaWxlU3RvcmFnZVNlcnZpY2UpO1xuXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoYW5uZWxzID0gYXdhaXQgdGhpcy5ub3RpZmljYXRpb25DaGFubmVsU2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMTAwMDAsXG4gICAgICAvLyBmaWx0ZXI6IHtcbiAgICAgIC8vICAgZmllbGQ6ICd0eXBlJyxcbiAgICAgIC8vICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgLy8gICB2YWx1ZTogJ3Byb21vdGlvbicsXG4gICAgICAvLyB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgZmlsdGVyZWRJdGVtcyA9IGNoYW5uZWxzLml0ZW1zLmZpbHRlcigoeCkgPT4geC5wbGFjZW1lbnQ/Lm5hbWUgPT0gdGhpcy5sb2NhdGlvbik7XG5cbiAgICBjb25zdCBtYXBwZWRJdGVtcyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZmlsdGVyZWRJdGVtcy5tYXAoYXN5bmMgKGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKGl0ZW0uaW1hZ2VJZCAhPSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgaW1hZ2UgPSBhd2FpdCB0aGlzLmZpbGVTdG9yYWdlLmdldEluZm8oaXRlbS5pbWFnZUlkKTtcblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgaW1hZ2U6IGltYWdlLFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMubGlzdERhdGEuc2V0KG1hcHBlZEl0ZW1zKTtcbiAgfVxufSAiLCJAZm9yIChpdGVtIG9mIGxpc3REYXRhKCk7IHRyYWNrIGl0ZW0uaWQpIHsgQGlmIChpdGVtLmNvbnRlbnRUeXBlPy5uYW1lID09ICdtZWRpYScpIHtcbjxpbWcgW3NyY109XCJpdGVtLmltYWdlPy51cmwgPz8gJydcIiBjbGFzcz1cImF4LXctZnVsbCBheC1wLTMgYXgtYm9yZGVyICB7e1xuICAgIGl0ZW0uc2hhcGU/Lm5hbWUgPT0gJ2NpcmNsZScgPyAnYXgtcm91bmRlZC1mdWxsJyA6ICdheC1yb3VuZGVkLW5vbmUnXG4gIH19XCIgLz5cbn0gQGlmKGl0ZW0uY29udGVudFR5cGU/Lm5hbWUgPT0gJ3RleHQnKXtcbjxkaXYgY2xhc3M9XCJheC1tLTEgYXgtcHgtNiBheC1wLTQgYXgtYm9yZGVyIGF4LWJnLXByaW1hcnkgYXgtcm91bmRlZC1sZ1wiPlxuICA8aDEgY2xhc3M9XCJheC10ZXh0LWJhc2UvNlwiIFtpbm5lckhUTUxdPVwiaXRlbS5ib2R5IHwgc2FmZSA6ICdodG1sJ1wiPjwvaDE+XG48L2Rpdj5cblxufSB9ICJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMAppTermService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMAppTermServiceImpl extends AXMEntityCrudServiceImpl {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.appTerm.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMAppTermServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMAppTermServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMAppTermServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXRlcm0uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9hcHAtdGVybS9hcHAtdGVybS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixpQkFBa0IsU0FBUSx3QkFBdUQ7Q0FBRztBQUcxRyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsd0JBQXVEO0lBQ2hHO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDOzhHQUhVLHFCQUFxQjtrSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1BcHBUZXJtRW50aXR5TW9kZWwgfSBmcm9tICcuL2FwcC10ZXJtLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUFwcFRlcm1TZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPHN0cmluZywgQVhNQXBwVGVybUVudGl0eU1vZGVsPiB7fVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNQXBwVGVybVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPHN0cmluZywgQVhNQXBwVGVybUVudGl0eU1vZGVsPiB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5hcHBUZXJtLm5hbWV9YCk7XG4gIH1cbn1cblxuXG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMGlossaryService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMGlossaryServiceImpl extends AXMGlossaryService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.glossary.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMGlossaryServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMGlossaryServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMGlossaryServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvc3Nhcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9nbG9zc2FyeS9nbG9zc2FyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixrQkFBbUIsU0FBUSx3QkFHaEQ7Q0FBRztBQUdKLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxrQkFBa0I7SUFDNUQ7UUFDRSxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7OEdBSFUsc0JBQXNCO2tIQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTVBsYXRmb3JtTWFuYWdlbWVudEdsb3NzYXJ5RW50aXR5TW9kZWwgfSBmcm9tICcuL2dsb3NzYXJ5LnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTUdsb3NzYXJ5U2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWE1QbGF0Zm9ybU1hbmFnZW1lbnRHbG9zc2FyeUVudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1HbG9zc2FyeVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNR2xvc3NhcnlTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmdsb3NzYXJ5Lm5hbWV9YCk7XG4gIH1cbn1cblxuXG4iXX0=","import { NgModule } from \"@angular/core\";\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMEntityProvider } from './entity.provider';\nimport { AXMPermissionDefinitionProvider } from './permission-definition.provider';\nimport { AXMSettingProvider } from './setting.provider';\nimport { AXMSearchCommandProvider } from './search-command.provider';\nimport { AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport { AXP_DATASOURCE_DEFINITION_PROVIDER } from '@acorex/platform/core';\n// Import promotion-related services and components\nimport { AXMAppPromotionService, AXMPromotionServiceImpl, } from './entities/promotion/promotion.service';\nimport { AXMPromotionDataSourceDefinition } from './entities/promotion/promotion.datasource';\nimport { AXMPromotionSlotComponent } from './features/promotion/components/promotion-slot/promotion-slot.component';\nimport { AXMAppTermService, AXMAppTermServiceImpl } from './entities/app-term/app-term.service';\nimport { AXMGlossaryService, AXMGlossaryServiceImpl } from './entities/glossary/glossary.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/components\";\nexport class AXMContentManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContentManagementModule, imports: [i1.AXPComponentSlotModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContentManagementModule, providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXMAppTermService,\n useClass: AXMAppTermServiceImpl,\n },\n {\n provide: AXMGlossaryService,\n useClass: AXMGlossaryServiceImpl,\n },\n {\n provide: AXMAppPromotionService,\n useClass: AXMPromotionServiceImpl,\n },\n {\n provide: AXP_DATASOURCE_DEFINITION_PROVIDER,\n useClass: AXMPromotionDataSourceDefinition,\n multi: true,\n },\n ], imports: [AXPComponentSlotModule.forChild({\n 'side-menu-footer': [\n {\n name: 'side-menu-footer-promotion',\n component: AXMPromotionSlotComponent,\n options: {\n location: 'side-menu-footer',\n },\n },\n ],\n 'side-menu-header': [\n {\n name: 'side-menu-header-promotion',\n component: AXMPromotionSlotComponent,\n priority: 2,\n options: {\n location: 'side-menu-header',\n },\n },\n ],\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXMContentManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forChild({\n 'side-menu-footer': [\n {\n name: 'side-menu-footer-promotion',\n component: AXMPromotionSlotComponent,\n options: {\n location: 'side-menu-footer',\n },\n },\n ],\n 'side-menu-header': [\n {\n name: 'side-menu-header-promotion',\n component: AXMPromotionSlotComponent,\n priority: 2,\n options: {\n location: 'side-menu-header',\n },\n },\n ],\n }),\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXMAppTermService,\n useClass: AXMAppTermServiceImpl,\n },\n {\n provide: AXMGlossaryService,\n useClass: AXMGlossaryServiceImpl,\n },\n {\n provide: AXMAppPromotionService,\n useClass: AXMPromotionServiceImpl,\n },\n {\n provide: AXP_DATASOURCE_DEFINITION_PROVIDER,\n useClass: AXMPromotionDataSourceDefinition,\n multi: true,\n },\n ]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9jb250ZW50LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEgsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNFLG1EQUFtRDtBQUNuRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLHVCQUF1QixHQUN4QixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIs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eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsUUFBUSxFQUFFLHdCQUF3Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGtDQUFrQzs0QkFDM0MsUUFBUSxFQUFFLCtCQUErQjs0QkFDekMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLHFCQUFxQjt5QkFDaEM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsUUFBUSxFQUFFLHNCQUFzQjt5QkFDakM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLHNCQUFzQjs0QkFDL0IsUUFBUSxFQUFFLHVCQUF1Qjt5QkFDbEM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGtDQUFrQzs0QkFDM0MsUUFBUSxFQUFFLGdDQUFnQzs0QkFDMUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ047aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUF9NRU5VX1BST1ZJREVSLCBBWFBfU0VBUkNIX1BST1ZJREVSLCBBWFBfU0VUVElOR19ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBBWE1NZW51UHJvdmlkZXIgfSBmcm9tICcuL21lbnUucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNRW50aXR5UHJvdmlkZXIgfSBmcm9tICcuL2VudGl0eS5wcm92aWRlcic7XG5pbXBvcnQgeyBBWE1QZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIH0gZnJvbSAnLi9wZXJtaXNzaW9uLWRlZmluaXRpb24ucHJvdmlkZXInOyAgXG5pbXBvcnQgeyBBWE1TZXR0aW5nUHJvdmlkZXIgfSBmcm9tICcuL3NldHRpbmcucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNU2VhcmNoQ29tbWFuZFByb3ZpZGVyIH0gZnJvbSAnLi9zZWFyY2gtY29tbWFuZC5wcm92aWRlcic7XG5pbXBvcnQgeyBBWFBDb21wb25lbnRTbG90TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWFBfREFUQVNPVVJDRV9ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcblxuLy8gSW1wb3J0IHByb21vdGlvbi1yZWxhdGVkIHNlcnZpY2VzIGFuZCBjb21wb25lbnRzXG5pbXBvcnQge1xuICBBWE1BcHBQcm9tb3Rpb25TZXJ2aWNlLFxuICBBWE1Qcm9tb3Rpb25TZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9lbnRpdGllcy9wcm9tb3Rpb24vcHJvbW90aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhNUHJvbW90aW9uRGF0YVNvdXJjZURlZmluaXRpb24gfSBmcm9tICcuL2VudGl0aWVzL3Byb21vdGlvbi9wcm9tb3Rpb24uZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBBWE1Qcm9tb3Rpb25TbG90Q29tcG9uZW50IH0gZnJvbSAnLi9mZWF0dXJlcy9wcm9tb3Rpb24vY29tcG9uZW50cy9wcm9tb3Rpb24tc2xvdC9wcm9tb3Rpb24tc2xvdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhNQXBwVGVybVNlcnZpY2UsIEFYTUFwcFRlcm1TZXJ2aWNlSW1wbCB9IGZyb20gJy4vZW50aXRpZXMvYXBwLXRlcm0vYXBwLXRlcm0uc2VydmljZSc7XG5pbXBvcnQgeyBBWE1HbG9zc2FyeVNlcnZpY2UsIEFYTUdsb3NzYXJ5U2VydmljZUltcGwgfSBmcm9tICcuL2VudGl0aWVzL2dsb3NzYXJ5L2dsb3NzYXJ5LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQVhQQ29tcG9uZW50U2xvdE1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICAnc2lkZS1tZW51LWZvb3Rlcic6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdzaWRlLW1lbnUtZm9vdGVyLXByb21vdGlvbicsXG4gICAgICAgICAgY29tcG9uZW50OiBBWE1Qcm9tb3Rpb25TbG90Q29tcG9uZW50LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnc2lkZS1tZW51LWZvb3RlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICAnc2lkZS1tZW51LWhlYWRlcic6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdzaWRlLW1lbnUtaGVhZGVyLXByb21vdGlvbicsXG4gICAgICAgICAgY29tcG9uZW50OiBBWE1Qcm9tb3Rpb25TbG90Q29tcG9uZW50LFxuICAgICAgICAgIHByaW9yaXR5OiAyLFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnc2lkZS1tZW51LWhlYWRlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSksXG4gIF0sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnMgOiBbXG4gICAgXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX01FTlVfUFJPVklERVIsXG4gICAgICB1c2VDbGFzczogQVhNTWVudVByb3ZpZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSLFxuICAgICAgdXNlQ2xhc3M6IEFYTUVudGl0eVByb3ZpZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVhQX1NFVFRJTkdfREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgICAgICB1c2VDbGFzczogQVhNU2V0dGluZ1Byb3ZpZGVyLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVhQX1NFQVJDSF9QUk9WSURFUixcbiAgICAgICAgICB1c2VDbGFzczogQVhNU2VhcmNoQ29tbWFuZFByb3ZpZGVyLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVhQX1BFUk1JU1NJT05fREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgICAgICB1c2VDbGFzczogQVhNUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlcixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYTUFwcFRlcm1TZXJ2aWNlLFxuICAgICAgICAgIHVzZUNsYXNzOiBBWE1BcHBUZXJtU2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBWE1HbG9zc2FyeVNlcnZpY2UsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTUdsb3NzYXJ5U2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBWE1BcHBQcm9tb3Rpb25TZXJ2aWNlLFxuICAgICAgICAgIHVzZUNsYXNzOiBBWE1Qcm9tb3Rpb25TZXJ2aWNlSW1wbCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9EQVRBU09VUkNFX0RFRklOSVRJT05fUFJPVklERVIsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFYTVByb21vdGlvbkRhdGFTb3VyY2VEZWZpbml0aW9uLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFYTUNvbnRlbnRNYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, AXPFileStorageService, createAllQueryView, createQueryView, } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMAppPromotionService } from './promotion.service';\n/**\n * Deeply sanitizes an object for storage in IndexedDB by removing non-serializable content\n */\nfunction sanitizeForStorage(obj) {\n if (!obj) {\n return obj;\n }\n // Handle primitive values\n if (typeof obj !== 'object') {\n return obj;\n }\n // Handle arrays\n if (Array.isArray(obj)) {\n return obj.map((item) => sanitizeForStorage(item));\n }\n // Handle Date objects\n if (obj instanceof Date) {\n return obj;\n }\n // Handle File objects specially\n if (obj instanceof File) {\n // File objects are handled separately, return as is\n return obj;\n }\n // Handle Blob objects\n if (obj instanceof Blob) {\n // Blob objects are handled separately\n return obj;\n }\n // Handle regular objects\n const cleanedObj = {};\n for (const [key, value] of Object.entries(obj)) {\n // Skip functions, symbols and other non-serializable types\n if (typeof value === 'function' || typeof value === 'symbol') {\n continue;\n }\n // Handle null values\n if (value === null) {\n cleanedObj[key] = null;\n continue;\n }\n // Recursively sanitize objects\n if (typeof value === 'object') {\n cleanedObj[key] = sanitizeForStorage(value);\n }\n else {\n cleanedObj[key] = value;\n }\n }\n return cleanedObj;\n}\n/**\n * Sanitizes a filename by:\n * 1. Removing special characters\n * 2. Replacing spaces with hyphens\n * 3. Ensuring unique timestamp\n */\nfunction sanitizeFileName(fileName) {\n if (!fileName)\n return '';\n // Get file extension\n const ext = fileName.split('.').pop() || '';\n // Get base name without extension\n let baseName = fileName.slice(0, -(ext.length + 1));\n // Remove special characters and replace spaces with hyphens\n baseName = baseName\n .replace(/[^\\w\\s-]/g, '') // Remove special chars except spaces and hyphens\n .replace(/\\s+/g, '-') // Replace spaces with hyphens\n .replace(/-+/g, '-') // Replace multiple hyphens with single hyphen\n .trim();\n // Add timestamp to ensure uniqueness\n const timestamp = new Date().getTime();\n // Combine everything\n return `${baseName}-${timestamp}.${ext}`;\n}\nexport async function promotionEntityFactory(injector) {\n const dataService = injector.get(AXMAppPromotionService);\n const fileStorageService = injector.get(AXPFileStorageService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.promotion.name,\n source: '',\n title: RootConfig.entities.promotion.title,\n formats: {\n individual: RootConfig.entities.promotion.title,\n plural: RootConfig.entities.promotion.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'promotion',\n title: 'Promotion',\n },\n {\n id: 'comments',\n title: 'Comments',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: {\n enabled: true,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n },\n },\n {\n name: 'title',\n title: `t(\"title\", { scope: \"common\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'body',\n title: `t(\"body\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\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: `t(\"Gallery\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n multiple: true,\n },\n },\n },\n },\n {\n name: 'contentType',\n title: `t(\"contentType\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\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 options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: 'shape',\n // title: `t(\"shape\", { scope: \"${i18n}\" })`,\n // groupId: 'promotion',\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 // accept: '',\n // },\n // },\n // },\n // validations: [\n // {\n // rule: 'required',\n // },\n // ],\n // },\n {\n name: 'placement',\n title: `t(\"placement\", { scope: \"${i18n}\" })`,\n groupId: 'promotion',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n {\n title: 'Side Menu Footer',\n name: 'side-menu-footer',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n {\n title: 'Side Menu Header',\n name: 'side-menu-header',\n options: [\n {\n type: 'text-editor',\n mode: 'edit',\n path: 'name',\n options: {\n placeholder: 'Name',\n defaultValue: 'test',\n },\n },\n ],\n },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n // {\n // name: \"metadaata\",\n // title: \"Meta Data\",\n // groupId: 'promotion',\n // schema: {\n // dataType: 'object',\n // interface: {\n // type: AXPWidgetsCatalog.text,\n // // children: \"{{ context.eval('placement').options }}\" as any,\n // },\n // }\n //},\n {\n name: 'comments',\n title: `Comments`,\n groupId: 'comments',\n schema: {\n dataType: 'object',\n interface: {\n type: 'comment',\n options: {\n refrenceType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n refrenceId: '{{ context.eval(\"id\") }}',\n subject: '{{ context.eval(\"title\") }}',\n },\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'placement' }, { name: 'imageId' }],\n commands: {\n create: {\n execute: async (data) => {\n data = sanitizeForStorage(data);\n const entityPayload = { ...data };\n entityPayload.imageId = entityPayload.imageId || [];\n const filesToUploadAfterSave = [];\n if (Array.isArray(entityPayload.imageId)) {\n const processedImageIdForEntitySave = [];\n for (const fileItem of entityPayload.imageId) {\n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n // Sanitize the filename\n const sanitizedName = sanitizeFileName(fileItem.name);\n filesToUploadAfterSave.push({\n fileItem: { ...fileItem, name: sanitizedName },\n blob: fileItem.source.value,\n });\n processedImageIdForEntitySave.push({\n tempId: fileItem.id,\n name: sanitizedName,\n size: fileItem.size,\n type: fileItem.source.value.type,\n status: 'pending_upload',\n });\n }\n else if (fileItem.source?.kind === 'fileId' &&\n fileItem.id &&\n typeof fileItem.source.value === 'string') {\n // If it's a fileId, we assume it's already processed. We don't have type directly on AXPFileListItem.\n // We'll reconstruct it from fileStorageService or it should be part of what's saved if needed.\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: 'uploaded',\n source: { kind: 'fileId', value: fileItem.source.value },\n });\n }\n else if (fileItem.id && fileItem.name) {\n // Fallback for items that might be from a previous save\n processedImageIdForEntitySave.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n // type: fileItem.type, // Removed: AXPFileListItem does not have .type\n status: fileItem.status, // Preserve existing status\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined,\n });\n }\n }\n entityPayload.imageId = processedImageIdForEntitySave;\n }\n const savedEntityId = await dataService.insertOne(entityPayload);\n // const entityId = savedEntity.id; // Corrected based on typical service return\n const finalImageIdReferences = (entityPayload.imageId || []).filter((f) => f.status !== 'pending_upload');\n for (const { fileItem, blob } of filesToUploadAfterSave) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: savedEntityId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}`,\n category: '',\n name: blob.name,\n });\n await fileStorageService.commit(fileStorageInfo.fileId);\n finalImageIdReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || blob.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type,\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId },\n });\n }\n catch (err) {\n // Typed error\n console.error('Error uploading file to FileStorage for entityId:', savedEntityId, 'file:', fileItem.name, err);\n finalImageIdReferences.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: blob.type, // Correctly access type from Blob/File\n status: 'upload_failed',\n error: err.message,\n });\n }\n }\n if (filesToUploadAfterSave.length > 0) {\n let needsUpdate = true;\n if (entityPayload.imageId && entityPayload.imageId.length === finalImageIdReferences.length) {\n const oldIds = entityPayload.imageId\n .map((f) => f.id || f.tempId)\n .sort()\n .join(',');\n const newIds = finalImageIdReferences\n .map((f) => f.id || f.tempId)\n .sort()\n .join(',');\n if (oldIds === newIds && !finalImageIdReferences.some((f) => f.status === 'upload_failed')) {\n needsUpdate = false;\n }\n }\n if (needsUpdate) {\n // Assuming updateOne takes the ID and an object of fields to update\n console.log(finalImageIdReferences);\n await dataService.updateOne(savedEntityId, { imageId: finalImageIdReferences });\n }\n }\n return { id: savedEntityId };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n const entityId = data.id;\n const filesToUpload = [];\n const processedImageReferences = [];\n if (data.imageId && Array.isArray(data.imageId)) {\n for (const fileItem of data.imageId) {\n if (fileItem.status === 'deleted') {\n continue;\n }\n if (fileItem.source?.kind === 'blob' && fileItem.source.value instanceof Blob) {\n // Sanitize the filename for new uploads\n const sanitizedName = sanitizeFileName(fileItem.name);\n filesToUpload.push({\n fileItem: { ...fileItem, name: sanitizedName },\n blob: fileItem.source.value,\n });\n }\n else if (fileItem.source?.kind === 'fileId' &&\n fileItem.id &&\n typeof fileItem.source.value === 'string') {\n // This is an existing file, keep its reference.\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded',\n source: { kind: 'fileId', value: fileItem.source.value },\n });\n }\n else if (fileItem.id && fileItem.name) {\n processedImageReferences.push({\n id: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n status: fileItem.status || 'uploaded',\n source: fileItem.source ? { kind: fileItem.source.kind, value: fileItem.source.value } : undefined,\n });\n }\n }\n }\n // Upload new files and add their successful/failed info to processedImageReferences\n for (const { fileItem, blob } of filesToUpload) {\n try {\n if (!fileStorageService) {\n throw new Error('fileStorageService is not available.');\n }\n const fileStorageInfo = await fileStorageService.save({\n file: blob,\n refId: entityId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.promotion.name}`,\n category: '',\n name: fileItem.name, // Use the sanitized name from fileItem\n });\n await fileStorageService.commit(fileStorageInfo.fileId);\n processedImageReferences.push({\n id: fileStorageInfo.fileId,\n name: fileStorageInfo.name || fileItem.name,\n size: fileStorageInfo.size || blob.size,\n type: fileStorageInfo.mimeType || blob.type,\n status: 'uploaded',\n source: { kind: 'fileId', value: fileStorageInfo.fileId },\n });\n }\n catch (err) {\n console.error('Error uploading file to FileStorage during update for entityId:', entityId, 'file:', fileItem.name, err);\n processedImageReferences.push({\n tempId: fileItem.id,\n name: fileItem.name,\n size: fileItem.size,\n type: blob.type,\n status: 'upload_failed',\n error: err.message,\n });\n }\n }\n // Construct the final data payload for the update.\n const finalUpdatePayload = { ...data };\n finalUpdatePayload.imageId = processedImageReferences;\n const fullySanitizedPayload = sanitizeForStorage(finalUpdatePayload);\n return await dataService.updateOne(entityId, fullySanitizedPayload);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n try {\n // Ensure id is a valid key for IndexedDB - needs to be string or number\n let validId;\n // If id is an object (e.g., from router params or complex structure)\n if (typeof id === 'object' && id !== null) {\n if ('id' in id) {\n validId = String(id.id);\n }\n else {\n validId = String(id);\n }\n console.warn('Converted object id to string:', validId);\n }\n else if (id === undefined || id === null) {\n console.error('Invalid id parameter: null or undefined');\n return null;\n }\n else {\n // Convert to string to ensure consistency\n validId = String(id);\n }\n try {\n const data = await dataService.getOne(validId);\n // If no data was found\n if (!data) {\n console.warn(`No record found with id: ${validId}`);\n return null;\n }\n return data;\n }\n catch (error) {\n console.error(`Error fetching data with ID ${validId}:`, error);\n // Return null instead of throwing to avoid cascading errors\n return null;\n }\n }\n catch (error) {\n console.error('Critical error in byKey query:', error);\n return null; // Return null instead of throwing to avoid UI errors\n }\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n {\n name: 'metadata',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'promotion',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 5,\n },\n },\n },\n },\n {\n name: 'imageId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 6,\n },\n },\n },\n },\n {\n name: 'contentType',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'shape',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'placement',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n // {\n // name: 'metadata',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // order: 10,\n // },\n // },\n // },\n // },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'promotion',\n },\n {\n id: 'comments',\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: '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: 'comments',\n layout: {\n label: {\n visible: false,\n },\n positions: {\n lg: {\n colSpan: 12,\n order: 7,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n title: 't(\"promotionPlural\", { scope: \"content-management\" })',\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"entity.modify\", { scope: \"common\" })',\n command: 'quick-modify-entity',\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n disabled: `{{ lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\") }}`,\n },\n //TODO: add this to the entity\n {\n title: '@document-management:actions.upload-files',\n command: {\n name: 'show-file-uploader-popup',\n options: {\n id: '{{ context.eval(\"id\") }}',\n files: '{{ context.eval(\"imageId\") }}',\n multiple: true,\n accept: '.jpg,.jpeg,.png,.gif,.webp',\n key: 'imageId',\n fileEditable: true,\n },\n },\n priority: 'secondary',\n type: 'upload',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@activity-log:actions.view-history',\n command: {\n name: 'show-version-history-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@conversation:actions.show-comment-popup',\n command: {\n name: 'show-comment-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n subject: '{{ context.eval(\"title\") }}',\n },\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Compare',\n command: {\n name: 'show-entity-records-compare',\n },\n priority: 'secondary',\n type: 'version-history',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: '@common:actions.lock',\n name: 'lock-entity',\n command: {\n name: 'lock-popup',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n hidden: `{{ lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\") }}`,\n },\n {\n title: '@common:actions.unlock',\n name: 'unlock-entity',\n command: {\n name: 'unlock-confirm',\n options: {\n refId: '{{ context.eval(\"id\") }}',\n refType: RootConfig.module.name + '.' + RootConfig.entities.promotion.name,\n },\n },\n priority: 'secondary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n hidden: `{{ (await lock.check(context.eval(\"id\"), \"${RootConfig.module.name}.${RootConfig.entities.promotion.name}\")) == false }}`,\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),\n createQueryView('media', `t(\"media\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'media',\n },\n ],\n }),\n createQueryView('text', `t(\"text\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'contentType.name',\n operator: {\n type: 'equal',\n },\n value: 'text',\n },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbW90aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb250ZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9wcm9tb3Rpb24vcHJvbW90aW9uLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUVsQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLGVBQWUsR0FDaEIsTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTdEOztHQUVHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxHQUFRO0lBQ2xDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNULE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELDBCQUEwQjtJQUMxQixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixJQUFJLEdBQUcsWUFBWSxJQUFJLEVBQUUsQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFLENBQUM7UUFD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TyxFQUFFLHdCQUF3QixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQ2pFLFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsa0JBQWtCO29DQUN4QixRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLE9BQU87aUNBQ2Y7NkJBQ0Y7eUJBQ0YsQ0FBQzt3QkFDRixlQUFlLENBQUMsTUFBTSxFQUFFLHVCQUF1QixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQy9ELFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsa0JBQWtCO29DQUN4QixRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLE1BQU07aUNBQ2Q7NkJBQ0Y7eUJBQ0YsQ0FBQztxQkFDSDtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYUEVudGl0eSxcbiAgQVhQRW50aXR5Q29tbWFuZFNjb3BlLFxuICBBWFBFbnRpdHlRdWVyeVR5cGUsXG4gIEFYUEZpbGVTdG9yYWdlSW5mbyxcbiAgQVhQRmlsZVN0b3JhZ2VTZXJ2aWNlLFxuICBjcmVhdGVBbGxRdWVyeVZpZXcsXG4gIGNyZWF0ZVF1ZXJ5Vmlldyxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQRmlsZUxpc3RJdGVtIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTUFwcFByb21vdGlvblNlcnZpY2UgfSBmcm9tICcuL3Byb21vdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBEZWVwbHkgc2FuaXRpemVzIGFuIG9iamVjdCBmb3Igc3RvcmFnZSBpbiBJbmRleGVkREIgYnkgcmVtb3Zpbmcgbm9uLXNlcmlhbGl6YWJsZSBjb250ZW50XG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplRm9yU3RvcmFnZShvYmo6IGFueSk6IGFueSB7XG4gIGlmICghb2JqKSB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIC8vIEhhbmRsZSBwcmltaXRpdmUgdmFsdWVzXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICAvLyBIYW5kbGUgYXJyYXlzXG4gIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICByZXR1cm4gb2JqLm1hcCgoaXRlbSkgPT4gc2FuaXRpemVGb3JTdG9yYWdlKGl0ZW0pKTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBEYXRlIG9iamVjdHNcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgLy8gSGFuZGxlIEZpbGUgb2JqZWN0cyBzcGVjaWFsbHlcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIEZpbGUpIHtcbiAgICAvLyBGaWxlIG9iamVjdHMgYXJlIGhhbmRsZWQgc2VwYXJhdGVseSwgcmV0dXJuIGFzIGlzXG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIC8vIEhhbmRsZSBCbG9iIG9iamVjdHNcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAvLyBCbG9iIG9iamVjdHMgYXJlIGhhbmRsZWQgc2VwYXJhdGVseVxuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICAvLyBIYW5kbGUgcmVndWxhciBvYmplY3RzXG4gIGNvbnN0IGNsZWFuZWRPYmo6IGFueSA9IHt9O1xuXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG9iaikpIHtcbiAgICAvLyBTa2lwIGZ1bmN0aW9ucywgc3ltYm9scyBhbmQgb3RoZXIgbm9uLXNlcmlhbGl6YWJsZSB0eXBlc1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIHZhbHVlID09PSAnc3ltYm9sJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIG51bGwgdmFsdWVzXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSBudWxsO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gUmVjdXJzaXZlbHkgc2FuaXRpemUgb2JqZWN0c1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSBzYW5pdGl6ZUZvclN0b3JhZ2UodmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGVhbmVkT2JqW2tleV0gPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2xlYW5lZE9iajtcbn1cblxuLyoqXG4gKiBTYW5pdGl6ZXMgYSBmaWxlbmFtZSBieTpcbiAqIDEuIFJlbW92aW5nIHNwZWNpYWwgY2hhcmFjdGVyc1xuICogMi4gUmVwbGFjaW5nIHNwYWNlcyB3aXRoIGh5cGhlbnNcbiAqIDMuIEVuc3VyaW5nIHVuaXF1ZSB0aW1lc3RhbXBcbiAqL1xuZnVuY3Rpb24gc2FuaXRpemVGaWxlTmFtZShmaWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFmaWxlTmFtZSkgcmV0dXJuICcnO1xuXG4gIC8vIEdldCBmaWxlIGV4dGVuc2lvblxuICBjb25zdCBleHQgPSBmaWxlTmFtZS5zcGxpdCgnLicpLnBvcCgpIHx8ICcnO1xuXG4gIC8vIEdldCBiYXNlIG5hbWUgd2l0aG91dCBleHRlbnNpb25cbiAgbGV0IGJhc2VOYW1lID0gZmlsZU5hbWUuc2xpY2UoMCwgLShleHQubGVuZ3RoICsgMSkpO1xuXG4gIC8vIFJlbW92ZSBzcGVjaWFsIGNoYXJhY3RlcnMgYW5kIHJlcGxhY2Ugc3BhY2VzIHdpdGggaHlwaGVuc1xuICBiYXNlTmFtZSA9IGJhc2VOYW1lXG4gICAgLnJlcGxhY2UoL1teXFx3XFxzLV0vZywgJycpIC8vIFJlbW92ZSBzcGVjaWFsIGNoYXJzIGV4Y2VwdCBzcGFjZXMgYW5kIGh5cGhlbnNcbiAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpIC8vIFJlcGxhY2Ugc3BhY2VzIHdpdGggaHlwaGVuc1xuICAgIC5yZXBsYWNlKC8tKy9nLCAnLScpIC8vIFJlcGxhY2UgbXVsdGlwbGUgaHlwaGVucyB3aXRoIHNpbmdsZSBoeXBoZW5cbiAgICAudHJpbSgpO1xuXG4gIC8vIEFkZCB0aW1lc3RhbXAgdG8gZW5zdXJlIHVuaXF1ZW5lc3NcbiAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgLy8gQ29tYmluZSBldmVyeXRoaW5nXG4gIHJldHVybiBgJHtiYXNlTmFtZX0tJHt0aW1lc3RhbXB9LiR7ZXh0fWA7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcm9tb3Rpb25FbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1BcHBQcm9tb3Rpb25TZXJ2aWNlKTtcbiAgY29uc3QgZmlsZVN0b3JhZ2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYUEZpbGVTdG9yYWdlU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLnRpdGxlLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAncHJvbW90aW9uJyxcbiAgICAgICAgdGl0bGU6ICdQcm9tb3Rpb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdjb21tZW50cycsXG4gICAgICAgIHRpdGxlOiAnQ29tbWVudHMnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgdGl0bGU6ICdJRCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAndXVpZCcsXG4gICAgICAgICAgaGlkZGVuOiB0cnVlLFxuICAgICAgICAgIG51bGxhYmxlOiBmYWxzZSxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICB1bmlxdWU6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiBgdChcInRpdGxlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICBncm91cElkOiAncHJvbW90aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlubGluZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdib2R5JyxcbiAgICAgICAgdGl0bGU6IGB0KFwiYm9keVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiR2FsbGVyeVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5maWxlVXBsb2FkZXIsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiY29udGVudFR5cGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAncHJvbW90aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuc2VsZWN0LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnbmFtZScsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgZGF0YVNvdXJjZTogW1xuICAgICAgICAgICAgICAgIHsgdGl0bGU6ICdNZWRpYScsIG5hbWU6ICdtZWRpYScgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnVGV4dCcsIG5hbWU6ICd0ZXh0JyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICAvLyB7XG4gICAgICAvLyAgIG5hbWU6ICdzaGFwZScsXG4gICAgICAvLyAgIHRpdGxlOiBgdChcInNoYXBlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgIC8vICAgZ3JvdXBJZDogJ3Byb21vdGlvbicsXG4gICAgICAvLyAgIHNjaGVtYToge1xuICAgICAgLy8gICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgIC8vICAgICBpbnRlcmZhY2U6IHtcbiAgICAgIC8vICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgIC8vICAgICAgIG9wdGlvbnM6IHtcbiAgICAgIC8vICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgLy8gICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAvLyAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgIC8vICAgICAgICAgICB7IHRpdGxlOiAnQ2lyY2xlJywgbmFtZTogJ2NpcmNsZScgfSxcbiAgICAgIC8vICAgICAgICAgICB7IHRpdGxlOiAnU3F1YXJlJywgbmFtZTogJ3NxdWFyZScgfSxcbiAgICAgIC8vICAgICAgICAgXSxcbiAgICAgIC8vICAgICAgICAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcsXG4gICAgICAvLyAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgIC8vICAgICAgICAgYWNjZXB0OiAnJyxcbiAgICAgIC8vICAgICAgIH0sXG4gICAgICAvLyAgICAgfSxcbiAgICAgIC8vICAgfSxcbiAgICAgIC8vICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgIC8vICAgICB7XG4gICAgICAvLyAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgLy8gICAgIH0sXG4gICAgICAvLyAgIF0sXG4gICAgICAvLyB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGxhY2VtZW50JyxcbiAgICAgICAgdGl0bGU6IGB0KFwicGxhY2VtZW50XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3Byb21vdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ1NpZGUgTWVudSBGb290ZXInLFxuICAgICAgICAgICAgICAgICAgbmFtZTogJ3NpZGUtbWVudS1mb290ZXInLFxuICAgICAgICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3RleHQtZWRpdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgcGF0aDogJ25hbWUnLFxuICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnTmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICd0ZXN0JyxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiAnU2lkZSBNZW51IEhlYWRlcicsXG4gICAgICAgICAgICAgICAgICBuYW1lOiAnc2lkZS1tZW51LWhlYWRlcicsXG4gICAgICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndGV4dC1lZGl0b3InLFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGU6ICdlZGl0JyxcbiAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICdOYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogJ3Rlc3QnLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIC8vIHtcbiAgICAgIC8vICAgbmFtZTogXCJtZXRhZGFhdGFcIixcbiAgICAgIC8vICAgdGl0bGU6IFwiTWV0YSBEYXRhXCIsXG4gICAgICAvLyAgIGdyb3VwSWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgLy8gICBzY2hlbWE6IHtcbiAgICAgIC8vICAgICBkYXRhVHlwZTogJ29iamVjdCcsXG4gICAgICAvLyAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAvLyAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgLy8gICAgICAgLy8gY2hpbGRyZW46IFwie3sgY29udGV4dC5ldmFsKCdwbGFjZW1lbnQnKS5vcHRpb25zIH19XCIgYXMgYW55LFxuICAgICAgLy8gICAgIH0sXG4gICAgICAvLyAgIH1cbiAgICAgIC8vfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbW1lbnRzJyxcbiAgICAgICAgdGl0bGU6IGBDb21tZW50c2AsXG4gICAgICAgIGdyb3VwSWQ6ICdjb21tZW50cycsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6ICdjb21tZW50JyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVmcmVuY2VUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgcmVmcmVuY2VJZDogJ3t7IGNvbnRleHQuZXZhbChcImlkXCIpIH19JyxcbiAgICAgICAgICAgICAgc3ViamVjdDogJ3t7IGNvbnRleHQuZXZhbChcInRpdGxlXCIpIH19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAndGl0bGUnIH0sIHsgbmFtZTogJ3BsYWNlbWVudCcgfSwgeyBuYW1lOiAnaW1hZ2VJZCcgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgZGF0YSA9IHNhbml0aXplRm9yU3RvcmFnZShkYXRhKTtcbiAgICAgICAgICBjb25zdCBlbnRpdHlQYXlsb2FkID0geyAuLi5kYXRhIH07XG4gICAgICAgICAgZW50aXR5UGF5bG9hZC5pbWFnZUlkID0gZW50aXR5UGF5bG9hZC5pbWFnZUlkIHx8IFtdO1xuICAgICAgICAgIGNvbnN0IGZpbGVzVG9VcGxvYWRBZnRlclNhdmU6IEFycmF5PHsgZmlsZUl0ZW06IEFYUEZpbGVMaXN0SXRlbTsgYmxvYjogRmlsZSB9PiA9IFtdO1xuXG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZW50aXR5UGF5bG9hZC5pbWFnZUlkKSkge1xuICAgICAgICAgICAgY29uc3QgcHJvY2Vzc2VkSW1hZ2VJZEZvckVudGl0eVNhdmU6IGFueVtdID0gW107XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGZpbGVJdGVtIG9mIGVudGl0eVBheWxvYWQuaW1hZ2VJZCBhcyBBWFBGaWxlTGlzdEl0ZW1bXSkge1xuICAgICAgICAgICAgICBpZiAoZmlsZUl0ZW0uc291cmNlPy5raW5kID09PSAnYmxvYicgJiYgZmlsZUl0ZW0uc291cmNlLnZhbHVlIGluc3RhbmNlb2YgQmxvYikge1xuICAgICAgICAgICAgICAgIC8vIFNhbml0aXplIHRoZSBmaWxlbmFtZVxuICAgICAgICAgICAgICAgIGNvbnN0IHNhbml0aXplZE5hbWUgPSBzYW5pdGl6ZUZpbGVOYW1lKGZpbGVJdGVtLm5hbWUpO1xuICAgICAgICAgICAgICAgIGZpbGVzVG9VcGxvYWRBZnRlclNhdmUucHVzaCh7XG4gICAgICAgICAgICAgICAgICBmaWxlSXRlbTogeyAuLi5maWxlSXRlbSwgbmFtZTogc2FuaXRpemVkTmFtZSB9LFxuICAgICAgICAgICAgICAgICAgYmxvYjogZmlsZUl0ZW0uc291cmNlLnZhbHVlIGFzIEZpbGUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VJZEZvckVudGl0eVNhdmUucHVzaCh7XG4gICAgICAgICAgICAgICAgICB0ZW1wSWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogc2FuaXRpemVkTmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAoZmlsZUl0ZW0uc291cmNlLnZhbHVlIGFzIEZpbGUpLnR5cGUsXG4gICAgICAgICAgICAgICAgICBzdGF0dXM6ICdwZW5kaW5nX3VwbG9hZCcsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgZmlsZUl0ZW0uc291cmNlPy5raW5kID09PSAnZmlsZUlkJyAmJlxuICAgICAgICAgICAgICAgIGZpbGVJdGVtLmlkICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIGZpbGVJdGVtLnNvdXJjZS52YWx1ZSA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgaXQncyBhIGZpbGVJZCwgd2UgYXNzdW1lIGl0J3MgYWxyZWFkeSBwcm9jZXNzZWQuIFdlIGRvbid0IGhhdmUgdHlwZSBkaXJlY3RseSBvbiBBWFBGaWxlTGlzdEl0ZW0uXG4gICAgICAgICAgICAgICAgLy8gV2UnbGwgcmVjb25zdHJ1Y3QgaXQgZnJvbSBmaWxlU3RvcmFnZVNlcnZpY2Ugb3IgaXQgc2hvdWxkIGJlIHBhcnQgb2Ygd2hhdCdzIHNhdmVkIGlmIG5lZWRlZC5cbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZUlkRm9yRW50aXR5U2F2ZS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGlkOiBmaWxlSXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgIG5hbWU6IGZpbGVJdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgICAgLy8gdHlwZTogZmlsZUl0ZW0udHlwZSwgLy8gUmVtb3ZlZDogQVhQRmlsZUxpc3RJdGVtIGRvZXMgbm90IGhhdmUgLnR5cGVcbiAgICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZGVkJyxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZTogeyBraW5kOiAnZmlsZUlkJywgdmFsdWU6IGZpbGVJdGVtLnNvdXJjZS52YWx1ZSB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZpbGVJdGVtLmlkICYmIGZpbGVJdGVtLm5hbWUpIHtcbiAgICAgICAgICAgICAgICAvLyBGYWxsYmFjayBmb3IgaXRlbXMgdGhhdCBtaWdodCBiZSBmcm9tIGEgcHJldmlvdXMgc2F2ZVxuICAgICAgICAgICAgICAgIHByb2Nlc3NlZEltYWdlSWRGb3JFbnRpdHlTYXZlLnB1c2goe1xuICAgICAgICAgICAgICAgICAgaWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICAvLyB0eXBlOiBmaWxlSXRlbS50eXBlLCAvLyBSZW1vdmVkOiBBWFBGaWxlTGlzdEl0ZW0gZG9lcyBub3QgaGF2ZSAudHlwZVxuICAgICAgICAgICAgICAgICAgc3RhdHVzOiBmaWxlSXRlbS5zdGF0dXMsIC8vIFByZXNlcnZlIGV4aXN0aW5nIHN0YXR1c1xuICAgICAgICAgICAgICAgICAgc291cmNlOiBmaWxlSXRlbS5zb3VyY2UgPyB7IGtpbmQ6IGZpbGVJdGVtLnNvdXJjZS5raW5kLCB2YWx1ZTogZmlsZUl0ZW0uc291cmNlLnZhbHVlIH0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVudGl0eVBheWxvYWQuaW1hZ2VJZCA9IHByb2Nlc3NlZEltYWdlSWRGb3JFbnRpdHlTYXZlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHNhdmVkRW50aXR5SWQgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZW50aXR5UGF5bG9hZCk7XG4gICAgICAgICAgLy8gY29uc3QgZW50aXR5SWQgPSBzYXZlZEVudGl0eS5pZDsgLy8gQ29ycmVjdGVkIGJhc2VkIG9uIHR5cGljYWwgc2VydmljZSByZXR1cm5cblxuICAgICAgICAgIGNvbnN0IGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXM6IGFueVtdID0gKGVudGl0eVBheWxvYWQuaW1hZ2VJZCB8fCBbXSkuZmlsdGVyKFxuICAgICAgICAgICAgKGY6IGFueSkgPT4gZi5zdGF0dXMgIT09ICdwZW5kaW5nX3VwbG9hZCcsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGZvciAoY29uc3QgeyBmaWxlSXRlbSwgYmxvYiB9IG9mIGZpbGVzVG9VcGxvYWRBZnRlclNhdmUpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGlmICghZmlsZVN0b3JhZ2VTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdmaWxlU3RvcmFnZVNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZS4nKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zdCBmaWxlU3RvcmFnZUluZm86IEFYUEZpbGVTdG9yYWdlSW5mbyA9IGF3YWl0IGZpbGVTdG9yYWdlU2VydmljZS5zYXZlKHtcbiAgICAgICAgICAgICAgICBmaWxlOiBibG9iLFxuICAgICAgICAgICAgICAgIHJlZklkOiBzYXZlZEVudGl0eUlkLFxuICAgICAgICAgICAgICAgIHJlZlR5cGU6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZX1gLFxuICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnJyxcbiAgICAgICAgICAgICAgICBuYW1lOiBibG9iLm5hbWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBhd2FpdCBmaWxlU3RvcmFnZVNlcnZpY2UuY29tbWl0KGZpbGVTdG9yYWdlSW5mby5maWxlSWQpO1xuXG4gICAgICAgICAgICAgIGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGZpbGVTdG9yYWdlSW5mby5maWxlSWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZVN0b3JhZ2VJbmZvLm5hbWUgfHwgYmxvYi5uYW1lLFxuICAgICAgICAgICAgICAgIHNpemU6IGZpbGVTdG9yYWdlSW5mby5zaXplIHx8IGJsb2Iuc2l6ZSxcbiAgICAgICAgICAgICAgICB0eXBlOiBmaWxlU3RvcmFnZUluZm8ubWltZVR5cGUgfHwgYmxvYi50eXBlLFxuICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZGVkJyxcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHsga2luZDogJ2ZpbGVJZCcsIHZhbHVlOiBmaWxlU3RvcmFnZUluZm8uZmlsZUlkIH0sXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgICAgICAgICAgLy8gVHlwZWQgZXJyb3JcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgICAgICAnRXJyb3IgdXBsb2FkaW5nIGZpbGUgdG8gRmlsZVN0b3JhZ2UgZm9yIGVudGl0eUlkOicsXG4gICAgICAgICAgICAgICAgc2F2ZWRFbnRpdHlJZCxcbiAgICAgICAgICAgICAgICAnZmlsZTonLFxuICAgICAgICAgICAgICAgIGZpbGVJdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgZXJyLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBmaW5hbEltYWdlSWRSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRlbXBJZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgIHR5cGU6IChibG9iIGFzIEZpbGUpLnR5cGUsIC8vIENvcnJlY3RseSBhY2Nlc3MgdHlwZSBmcm9tIEJsb2IvRmlsZVxuICAgICAgICAgICAgICAgIHN0YXR1czogJ3VwbG9hZF9mYWlsZWQnLFxuICAgICAgICAgICAgICAgIGVycm9yOiBlcnIubWVzc2FnZSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpbGVzVG9VcGxvYWRBZnRlclNhdmUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgbGV0IG5lZWRzVXBkYXRlID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmIChlbnRpdHlQYXlsb2FkLmltYWdlSWQgJiYgZW50aXR5UGF5bG9hZC5pbWFnZUlkLmxlbmd0aCA9PT0gZmluYWxJbWFnZUlkUmVmZXJlbmNlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgY29uc3Qgb2xkSWRzID0gZW50aXR5UGF5bG9hZC5pbWFnZUlkXG4gICAgICAgICAgICAgICAgLm1hcCgoZjogYW55KSA9PiBmLmlkIHx8IGYudGVtcElkKVxuICAgICAgICAgICAgICAgIC5zb3J0KClcbiAgICAgICAgICAgICAgICAuam9pbignLCcpO1xuICAgICAgICAgICAgICBjb25zdCBuZXdJZHMgPSBmaW5hbEltYWdlSWRSZWZlcmVuY2VzXG4gICAgICAgICAgICAgICAgLm1hcCgoZjogYW55KSA9PiBmLmlkIHx8IGYudGVtcElkKVxuICAgICAgICAgICAgICAgIC5zb3J0KClcbiAgICAgICAgICAgICAgICAuam9pbignLCcpO1xuICAgICAgICAgICAgICBpZiAob2xkSWRzID09PSBuZXdJZHMgJiYgIWZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMuc29tZSgoZjogYW55KSA9PiBmLnN0YXR1cyA9PT0gJ3VwbG9hZF9mYWlsZWQnKSkge1xuICAgICAgICAgICAgICAgIG5lZWRzVXBkYXRlID0gZmFsc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG5lZWRzVXBkYXRlKSB7XG4gICAgICAgICAgICAgIC8vIEFzc3VtaW5nIHVwZGF0ZU9uZSB0YWtlcyB0aGUgSUQgYW5kIGFuIG9iamVjdCBvZiBmaWVsZHMgdG8gdXBkYXRlXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMpO1xuXG4gICAgICAgICAgICAgIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShzYXZlZEVudGl0eUlkLCB7IGltYWdlSWQ6IGZpbmFsSW1hZ2VJZFJlZmVyZW5jZXMgYXMgYW55IH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7IGlkOiBzYXZlZEVudGl0eUlkIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMDAwKSk7XG5cbiAgICAgICAgICBjb25zdCBlbnRpdHlJZCA9IGRhdGEuaWQ7XG4gICAgICAgICAgY29uc3QgZmlsZXNUb1VwbG9hZDogQXJyYXk8eyBmaWxlSXRlbTogQVhQRmlsZUxpc3RJdGVtOyBibG9iOiBGaWxlIH0+ID0gW107XG4gICAgICAgICAgY29uc3QgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzOiBhbnlbXSA9IFtdO1xuXG4gICAgICAgICAgaWYgKGRhdGEuaW1hZ2VJZCAmJiBBcnJheS5pc0FycmF5KGRhdGEuaW1hZ2VJZCkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZmlsZUl0ZW0gb2YgZGF0YS5pbWFnZUlkIGFzIEFYUEZpbGVMaXN0SXRlbVtdKSB7XG4gICAgICAgICAgICAgIGlmIChmaWxlSXRlbS5zdGF0dXMgPT09ICdkZWxldGVkJykge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKGZpbGVJdGVtLnNvdXJjZT8ua2luZCA9PT0gJ2Jsb2InICYmIGZpbGVJdGVtLnNvdXJjZS52YWx1ZSBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAgICAgICAgICAgICAvLyBTYW5pdGl6ZSB0aGUgZmlsZW5hbWUgZm9yIG5ldyB1cGxvYWRzXG4gICAgICAgICAgICAgICAgY29uc3Qgc2FuaXRpemVkTmFtZSA9IHNhbml0aXplRmlsZU5hbWUoZmlsZUl0ZW0ubmFtZSk7XG4gICAgICAgICAgICAgICAgZmlsZXNUb1VwbG9hZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGZpbGVJdGVtOiB7IC4uLmZpbGVJdGVtLCBuYW1lOiBzYW5pdGl6ZWROYW1lIH0sXG4gICAgICAgICAgICAgICAgICBibG9iOiBmaWxlSXRlbS5zb3VyY2UudmFsdWUgYXMgRmlsZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICBmaWxlSXRlbS5zb3VyY2U/LmtpbmQgPT09ICdmaWxlSWQnICYmXG4gICAgICAgICAgICAgICAgZmlsZUl0ZW0uaWQgJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgZmlsZUl0ZW0uc291cmNlLnZhbHVlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGFuIGV4aXN0aW5nIGZpbGUsIGtlZXAgaXRzIHJlZmVyZW5jZS5cbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgICBpZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgICBuYW1lOiBmaWxlSXRlbS5uYW1lLFxuICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZUl0ZW0uc2l6ZSxcbiAgICAgICAgICAgICAgICAgIHN0YXR1czogZmlsZUl0ZW0uc3RhdHVzIHx8ICd1cGxvYWRlZCcsXG4gICAgICAgICAgICAgICAgICBzb3VyY2U6IHsga2luZDogJ2ZpbGVJZCcsIHZhbHVlOiBmaWxlSXRlbS5zb3VyY2UudmFsdWUgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWxlSXRlbS5pZCAmJiBmaWxlSXRlbS5uYW1lKSB7XG4gICAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgaWQ6IGZpbGVJdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHNpemU6IGZpbGVJdGVtLnNpemUsXG4gICAgICAgICAgICAgICAgICBzdGF0dXM6IGZpbGVJdGVtLnN0YXR1cyB8fCAndXBsb2FkZWQnLFxuICAgICAgICAgICAgICAgICAgc291cmNlOiBmaWxlSXRlbS5zb3VyY2UgPyB7IGtpbmQ6IGZpbGVJdGVtLnNvdXJjZS5raW5kLCB2YWx1ZTogZmlsZUl0ZW0uc291cmNlLnZhbHVlIH0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBVcGxvYWQgbmV3IGZpbGVzIGFuZCBhZGQgdGhlaXIgc3VjY2Vzc2Z1bC9mYWlsZWQgaW5mbyB0byBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXNcbiAgICAgICAgICBmb3IgKGNvbnN0IHsgZmlsZUl0ZW0sIGJsb2IgfSBvZiBmaWxlc1RvVXBsb2FkKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBpZiAoIWZpbGVTdG9yYWdlU2VydmljZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZmlsZVN0b3JhZ2VTZXJ2aWNlIGlzIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29uc3QgZmlsZVN0b3JhZ2VJbmZvOiBBWFBGaWxlU3RvcmFnZUluZm8gPSBhd2FpdCBmaWxlU3RvcmFnZVNlcnZpY2Uuc2F2ZSh7XG4gICAgICAgICAgICAgICAgZmlsZTogYmxvYixcbiAgICAgICAgICAgICAgICByZWZJZDogZW50aXR5SWQsXG4gICAgICAgICAgICAgICAgcmVmVHlwZTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfWAsXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICcnLFxuICAgICAgICAgICAgICAgIG5hbWU6IGZpbGVJdGVtLm5hbWUsIC8vIFVzZSB0aGUgc2FuaXRpemVkIG5hbWUgZnJvbSBmaWxlSXRlbVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgYXdhaXQgZmlsZVN0b3JhZ2VTZXJ2aWNlLmNvbW1pdChmaWxlU3RvcmFnZUluZm8uZmlsZUlkKTtcblxuICAgICAgICAgICAgICBwcm9jZXNzZWRJbWFnZVJlZmVyZW5jZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGZpbGVTdG9yYWdlSW5mby5maWxlSWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZVN0b3JhZ2VJbmZvLm5hbWUgfHwgZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlU3RvcmFnZUluZm8uc2l6ZSB8fCBibG9iLnNpemUsXG4gICAgICAgICAgICAgICAgdHlwZTogZmlsZVN0b3JhZ2VJbmZvLm1pbWVUeXBlIHx8IGJsb2IudHlwZSxcbiAgICAgICAgICAgICAgICBzdGF0dXM6ICd1cGxvYWRlZCcsXG4gICAgICAgICAgICAgICAgc291cmNlOiB7IGtpbmQ6ICdmaWxlSWQnLCB2YWx1ZTogZmlsZVN0b3JhZ2VJbmZvLmZpbGVJZCB9LFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycjogYW55KSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgJ0Vycm9yIHVwbG9hZGluZyBmaWxlIHRvIEZpbGVTdG9yYWdlIGR1cmluZyB1cGRhdGUgZm9yIGVudGl0eUlkOicsXG4gICAgICAgICAgICAgICAgZW50aXR5SWQsXG4gICAgICAgICAgICAgICAgJ2ZpbGU6JyxcbiAgICAgICAgICAgICAgICBmaWxlSXRlbS5uYW1lLFxuICAgICAgICAgICAgICAgIGVycixcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgcHJvY2Vzc2VkSW1hZ2VSZWZlcmVuY2VzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRlbXBJZDogZmlsZUl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmlsZUl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBzaXplOiBmaWxlSXRlbS5zaXplLFxuICAgICAgICAgICAgICAgIHR5cGU6IChibG9iIGFzIEZpbGUpLnR5cGUsXG4gICAgICAgICAgICAgICAgc3RhdHVzOiAndXBsb2FkX2ZhaWxlZCcsXG4gICAgICAgICAgICAgICAgZXJyb3I6IGVyci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDb25zdHJ1Y3QgdGhlIGZpbmFsIGRhdGEgcGF5bG9hZCBmb3IgdGhlIHVwZGF0ZS5cbiAgICAgICAgICBjb25zdCBmaW5hbFVwZGF0ZVBheWxvYWQgPSB7IC4uLmRhdGEgfTtcbiAgICAgICAgICBmaW5hbFVwZGF0ZVBheWxvYWQuaW1hZ2VJZCA9IHByb2Nlc3NlZEltYWdlUmVmZXJlbmNlcztcblxuICAgICAgICAgIGNvbnN0IGZ1bGx5U2FuaXRpemVkUGF5bG9hZCA9IHNhbml0aXplRm9yU3RvcmFnZShmaW5hbFVwZGF0ZVBheWxvYWQpO1xuXG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShlbnRpdHlJZCwgZnVsbHlTYW5pdGl6ZWRQYXlsb2FkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBFbnN1cmUgaWQgaXMgYSB2YWxpZCBrZXkgZm9yIEluZGV4ZWREQiAtIG5lZWRzIHRvIGJlIHN0cmluZyBvciBudW1iZXJcbiAgICAgICAgICAgIGxldCB2YWxpZElkOiBzdHJpbmc7XG5cbiAgICAgICAgICAgIC8vIElmIGlkIGlzIGFuIG9iamVjdCAoZS5nLiwgZnJvbSByb3V0ZXIgcGFyYW1zIG9yIGNvbXBsZXggc3RydWN0dXJlKVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBpZCA9PT0gJ29iamVjdCcgJiYgaWQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgaWYgKCdpZCcgaW4gaWQpIHtcbiAgICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKChpZCBhcyBhbnkpLmlkKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKGlkKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvbnZlcnRlZCBvYmplY3QgaWQgdG8gc3RyaW5nOicsIHZhbGlkSWQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChpZCA9PT0gdW5kZWZpbmVkIHx8IGlkID09PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgaWQgcGFyYW1ldGVyOiBudWxsIG9yIHVuZGVmaW5lZCcpO1xuICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIC8vIENvbnZlcnQgdG8gc3RyaW5nIHRvIGVuc3VyZSBjb25zaXN0ZW5jeVxuICAgICAgICAgICAgICB2YWxpZElkID0gU3RyaW5nKGlkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZSh2YWxpZElkKTtcblxuICAgICAgICAgICAgICAvLyBJZiBubyBkYXRhIHdhcyBmb3VuZFxuICAgICAgICAgICAgICBpZiAoIWRhdGEpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYE5vIHJlY29yZCBmb3VuZCB3aXRoIGlkOiAke3ZhbGlkSWR9YCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGZldGNoaW5nIGRhdGEgd2l0aCBJRCAke3ZhbGlkSWR9OmAsIGVycm9yKTtcbiAgICAgICAgICAgICAgLy8gUmV0dXJuIG51bGwgaW5zdGVhZCBvZiB0aHJvd2luZyB0byBhdm9pZCBjYXNjYWRpbmcgZXJyb3JzXG4gICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdDcml0aWNhbCBlcnJvciBpbiBieUtleSBxdWVyeTonLCBlcnJvcik7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDsgLy8gUmV0dXJuIG51bGwgaW5zdGVhZCBvZiB0aHJvd2luZyB0byBhdm9pZCBVSSBlcnJvcnNcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KHsgc2tpcDogZS5za2lwLCB0YWtlOiBlLnRha2UsIGZpbHRlcjogZS5maWx0ZXIgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3Byb21vdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21ldGFkYXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEwLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3Byb21vdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8vIHtcbiAgICAgICAgICAgIC8vICAgbmFtZTogJ21ldGFkYXRhJyxcbiAgICAgICAgICAgIC8vICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAvLyAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAvLyAgICAgICBsZzoge1xuICAgICAgICAgICAgLy8gICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgIC8vICAgICAgICAgb3JkZXI6IDEwLFxuICAgICAgICAgICAgLy8gICAgICAgfSxcbiAgICAgICAgICAgIC8vICAgICB9LFxuICAgICAgICAgICAgLy8gICB9LFxuICAgICAgICAgICAgLy8gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7dGl0bGV9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdwcm9tb3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdjb21tZW50cycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudFR5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NoYXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwbGFjZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IHtcbiAgICAgICAgICAgICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICB0aXRsZTogJ3QoXCJwcm9tb3Rpb25QbHVyYWxcIiwgeyBzY29wZTogXCJjb250ZW50LW1hbmFnZW1lbnRcIiB9KScsXG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJjcmVhdGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KWAsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlSXRlbXNcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZXRhaWxcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdvcGVuLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJlbnRpdHkubW9kaWZ5XCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAncXVpY2stbW9kaWZ5LWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IGB7eyBsb2NrLmNoZWNrKGNvbnRleHQuZXZhbChcImlkXCIpLCBcIiR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfVwiKSB9fWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy9UT0RPOiBhZGQgdGhpcyB0byB0aGUgZW50aXR5XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy51cGxvYWQtZmlsZXMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Nob3ctZmlsZS11cGxvYWRlci1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICBmaWxlczogJ3t7IGNvbnRleHQuZXZhbChcImltYWdlSWRcIikgfX0nLFxuICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICBhY2NlcHQ6ICcuanBnLC5qcGVnLC5wbmcsLmdpZiwud2VicCcsXG4gICAgICAgICAgICAgICAgICBrZXk6ICdpbWFnZUlkJyxcbiAgICAgICAgICAgICAgICAgIGZpbGVFZGl0YWJsZSA6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndXBsb2FkJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAYWN0aXZpdHktbG9nOmFjdGlvbnMudmlldy1oaXN0b3J5JyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaG93LXZlcnNpb24taGlzdG9yeS1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2ZXJzaW9uLWhpc3RvcnknLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0Bjb252ZXJzYXRpb246YWN0aW9ucy5zaG93LWNvbW1lbnQtcG9wdXAnLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Nob3ctY29tbWVudC1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHN1YmplY3Q6ICd7eyBjb250ZXh0LmV2YWwoXCJ0aXRsZVwiKSB9fScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmVyc2lvbi1oaXN0b3J5JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdDb21wYXJlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaG93LWVudGl0eS1yZWNvcmRzLWNvbXBhcmUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2ZXJzaW9uLWhpc3RvcnknLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAY29tbW9uOmFjdGlvbnMubG9jaycsXG4gICAgICAgICAgICAgIG5hbWU6ICdsb2NrLWVudGl0eScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnbG9jay1wb3B1cCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGhpZGRlbjogYHt7IGxvY2suY2hlY2soY29udGV4dC5ldmFsKFwiaWRcIiksIFwiJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucHJvbW90aW9uLm5hbWV9XCIpIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGNvbW1vbjphY3Rpb25zLnVubG9jaycsXG4gICAgICAgICAgICAgIG5hbWU6ICd1bmxvY2stZW50aXR5JyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd1bmxvY2stY29uZmlybScsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgcmVmSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgICAgICByZWZUeXBlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lICsgJy4nICsgUm9vdENvbmZpZy5lbnRpdGllcy5wcm9tb3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGhpZGRlbjogYHt7IChhd2FpdCBsb2NrLmNoZWNrKGNvbnRleHQuZXZhbChcImlkXCIpLCBcIiR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnByb21vdGlvbi5uYW1lfVwiKSkgID09IGZhbHNlIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHsgc29ydHM6IFt7IG5hbWU6ICd0aXRsZScsIGRpcjogJ2FzYycgfV0gfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ21lZGlhJywgYHQoXCJtZWRpYVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdjb250ZW50VHlwZS5uYW1lJyxcbiAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdtZWRpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY3JlYXRlUXVlcnlWaWV3KCd0ZXh0JywgYHQoXCJ0ZXh0XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCwgdHJ1ZSwge1xuICAgICAgICAgICAgICBjb25kaXRpb25zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2NvbnRlbnRUeXBlLm5hbWUnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ3RleHQnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView, } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMAppTermService } from './app-term.service';\nexport async function appTermEntityEntityFactory(injector) {\n const dataService = injector.get(AXMAppTermService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.appTerm.name,\n source: '',\n title: RootConfig.entities.appTerm.title,\n formats: {\n individual: RootConfig.entities.appTerm.title,\n plural: RootConfig.entities.appTerm.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.appTerm.title,\n },\n ],\n properties: [\n {\n name: 'type',\n title: `t(\"type\", { scope: \"common\" })`,\n groupId: 'section',\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: \"common\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'content',\n title: `t(\"content\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n options: {\n minLineCount: 5,\n maxLineCount: 17,\n isFitLine: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'version',\n title: `t(\"version\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsCatalog.number,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'effectiveDate',\n title: `t(\"effectiveDate\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'dateTime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }, { name: 'content' }, { name: 'version' }, { name: 'effectiveDate' }],\n commands: {\n create: {\n execute: async (data) => {\n return Promise.resolve({ id: await dataService.insertOne(data) });\n },\n },\n delete: {\n execute: async (id) => {\n await await dataService.deleteOne(id);\n return Promise.resolve();\n },\n },\n update: {\n execute: async (data) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n await dataService.updateOne(data.id, data);\n resolve(data);\n }, 1000);\n });\n },\n },\n },\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 const x = await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\n return x;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\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: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 2,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 3,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\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: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 2,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 3,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Create New',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 'Delete Items',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXRlcm0uZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2FwcC10ZXJtL2FwcC10ZXJtLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBRUwscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQixrQkFBa0IsR0FFbkIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXZELE1BQU0sQ0FBQyxLQUFLLFVBQVUsMEJBQTBCLENBQUMsUUFBa0I7SUFDakUsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRXBELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUk7UUFDdEMsTUFBTSxFQUFFLEVBQUU7UUFDVixLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSztRQUN4QyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSztZQUM3QyxNQUFNLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsV0FBVztZQUMvQyxZQUFZLEVBQUU7Z0JBQ1osS0FBSyxFQUFFLGFBQWE7Z0JBQ3BCLFdBQVcs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Q3hCLFFBQVEsRUFBRSxXQUFXOzRCQUNyQixJQUFJLEVBQUUsUUFBUTs0QkFDZCxLQUFLLEVBQUUscUJBQXFCLENBQUMsVUFBVTt5QkFDeEM7cUJBQ0Y7b0JBQ0QsS0FBSyxFQUFFLENBQUMsa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUN4RTthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGF0YVNvdXJjZVF1ZXJ5IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUEVudGl0eSxcbiAgQVhQRW50aXR5Q29tbWFuZFNjb3BlLFxuICBBWFBFbnRpdHlRdWVyeVR5cGUsXG4gIGNyZWF0ZUFsbFF1ZXJ5VmlldyxcbiAgY3JlYXRlUXVlcnlWaWV3LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1BcHBUZXJtU2VydmljZSB9IGZyb20gJy4vYXBwLXRlcm0uc2VydmljZSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhcHBUZXJtRW50aXR5RW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNQXBwVGVybVNlcnZpY2UpO1xuXG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLmFwcFRlcm0ubmFtZSxcbiAgICBzb3VyY2U6ICcnLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmFwcFRlcm0udGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5hcHBUZXJtLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLmFwcFRlcm0udGl0bGVQbHVyYWwsXG4gICAgICBzZWFyY2hSZXN1bHQ6IHtcbiAgICAgICAgdGl0bGU6ICd7eyB0aXRsZSB9fScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5hcHBUZXJtLnRpdGxlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3R5cGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ0eXBlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ0aXRsZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBmaWx0ZXI6IHtcbiAgICAgICAgICAgIGFkdmFuY2U6IHtcbiAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHtcbiAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbnRlbnQnLFxuICAgICAgICB0aXRsZTogYHQoXCJjb250ZW50XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbWluTGluZUNvdW50OiA1LFxuICAgICAgICAgICAgICBtYXhMaW5lQ291bnQ6IDE3LFxuICAgICAgICAgICAgICBpc0ZpdExpbmU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICB0aXRsZTogYHQoXCJ2ZXJzaW9uXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ251bWJlcicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5udW1iZXIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZWZmZWN0aXZlRGF0ZScsXG4gICAgICAgIHRpdGxlOiBgdChcImVmZmVjdGl2ZURhdGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZVRpbWUnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuZGF0ZVRpbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdjb250ZW50JyB9LCB7IG5hbWU6ICd2ZXJzaW9uJyB9LCB7IG5hbWU6ICdlZmZlY3RpdmVEYXRlJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsgaWQ6IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKSB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICBhd2FpdCBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgICAgICAgIH0sIDEwMDApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgICAgICAgcmVzb2x2ZShlbnRpdHkpO1xuICAgICAgICAgICAgfSwgNTAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBBWERhdGFTb3VyY2VRdWVyeSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHggPSBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7IHNraXA6IGUuc2tpcCwgdGFrZTogZS50YWtlLCBmaWx0ZXI6IGUuZmlsdGVyIH0pO1xuICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3R5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAzLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvbnRlbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZWZmZWN0aXZlRGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNCxcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDQsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd2ZXJzaW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA0LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdjb250ZW50JyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEwLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2VmZmVjdGl2ZURhdGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDQsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7dGl0bGV9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndHlwZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndmVyc2lvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29udGVudCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxMCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdlZmZlY3RpdmVEYXRlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdDcmVhdGUgTmV3JyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZSBJdGVtcycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RldGFpbHMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnb3Blbi1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZWxldGUnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5Vmlldyh7IHNvcnRzOiBbeyBuYW1lOiAndGl0bGUnLCBkaXI6ICdhc2MnIH1dIH0pXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuXG5cbiJdfQ==","import { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { RootConfig } from '../../const';\nimport { AXMGlossaryService } from './glossary.service';\nexport async function glossaryEntityFactory(injector) {\n const dataService = injector.get(AXMGlossaryService);\n const i18n = RootConfig.config.i18n + '.glossary';\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.glossary.name,\n source: '',\n title: RootConfig.entities.glossary.title,\n formats: {\n individual: RootConfig.entities.glossary.title,\n plural: RootConfig.entities.glossary.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.glossary.title,\n },\n ],\n properties: [\n {\n name: 'title',\n title: `t(\"title\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: false,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'parentId',\n title: `t(\"parentId\",{ scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.glossary.name}`,\n },\n },\n },\n },\n {\n name: 'translation',\n title: `t(\"translation\",{ scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.glossary.name}`,\n multiLanguage: true,\n },\n },\n },\n },\n ],\n columns: [{ 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({ skip: e.skip, take: e.take, filter: e.filter });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\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: 'parentId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'translation',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\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: 'parentId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'translation',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\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: 'parentId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'translation',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 3,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'title', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvc3NhcnkuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2dsb3NzYXJ5L2dsb3NzYXJ5LmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4RCxNQUFNLENBQUMsS0FBSyxVQUFVLHFCQUFxQixDQUFDLFFBQWtCO0lBQzVELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUM7SUFFbEQsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSTtRQUN2QyxNQUFNLEVBQUUsRUFBRTtRQUNWLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1FBQ3pDLE9BQU8sRUFBRTtZQUNQLFVBQVUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1lBQzlDLE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXO1lBQ2hELFlBQVksRUFBRTtnQkFDWixLQUFLLEVBQUUsYUFBYTtnQkFDcEIs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QkFDeEM7cUJBQ0Y7b0JBQ0QsS0FBSyxFQUFFO3dCQUNMLGtCQUFrQixDQUFDOzRCQUNqQixLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDO3lCQUN2QyxDQUFDO3FCQUNIO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQV2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNR2xvc3NhcnlTZXJ2aWNlIH0gZnJvbSAnLi9nbG9zc2FyeS5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdsb3NzYXJ5RW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNR2xvc3NhcnlTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG4gKyAnLmdsb3NzYXJ5JztcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5nbG9zc2FyeS5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZ2xvc3NhcnkudGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5nbG9zc2FyeS50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5nbG9zc2FyeS50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmdsb3NzYXJ5LnRpdGxlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmlsdGVyOiB7XG4gICAgICAgICAgICBhZHZhbmNlOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5saW5lOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRleHRCb3gsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGFyZW50SWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJwYXJlbnRJZFwiLHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLkxvb2t1cEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZ2xvc3NhcnkubmFtZX1gLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RyYW5zbGF0aW9uJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidHJhbnNsYXRpb25cIix7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5nbG9zc2FyeS5uYW1lfWAsXG4gICAgICAgICAgICAgIG11bHRpTGFuZ3VhZ2U6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ3RpdGxlJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHJlcyB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7IHNraXA6IGUuc2tpcCwgdGFrZTogZS50YWtlLCBmaWx0ZXI6IGUuZmlsdGVyIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BhcmVudElkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndHJhbnNsYXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3BhcmVudElkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndHJhbnNsYXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdwYXJlbnRJZCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RyYW5zbGF0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImNyZWF0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZWxldGVJdGVtc1wiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5TZWxlY3RlZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7XG4gICAgICAgICAgICAgIHNvcnRzOiBbeyBuYW1lOiAndGl0bGUnLCBkaXI6ICdhc2MnIH1dLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuXG5cbiJdfQ==","export * from './promotion';\n// app-terms features remain under platform-management for UI/workflows\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29udGVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsdUVBQXVFIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wcm9tb3Rpb24nO1xuLy8gYXBwLXRlcm1zIGZlYXR1cmVzIHJlbWFpbiB1bmRlciBwbGF0Zm9ybS1tYW5hZ2VtZW50IGZvciBVSS93b3JrZmxvd3MiXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtY29udGVudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2NvbnRlbnQtbWFuYWdlbWVudC9zcmMvYWNvcmV4LW1vZHVsZXMtY29udGVudC1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}