@acorex/modules 20.0.23 → 20.1.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 (267) hide show
  1. package/auth/index.d.ts +57 -4
  2. package/common/index.d.ts +8 -1
  3. package/data-management/index.d.ts +401 -3
  4. package/fesm2022/{acorex-modules-application-management-module-designer.component-BvuZJdwg.mjs → acorex-modules-application-management-module-designer.component-udoks-Ef.mjs} +17 -17
  5. package/fesm2022/acorex-modules-application-management-module-designer.component-udoks-Ef.mjs.map +1 -0
  6. package/fesm2022/acorex-modules-application-management.mjs +53 -53
  7. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  8. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DqsEqXec.mjs → acorex-modules-auth-acorex-modules-auth-5TIjp5UG.mjs} +182 -123
  9. package/fesm2022/acorex-modules-auth-acorex-modules-auth-5TIjp5UG.mjs.map +1 -0
  10. package/fesm2022/{acorex-modules-auth-app-chooser.component-D0pKNUts.mjs → acorex-modules-auth-app-chooser.component-B0w1Xzx7.mjs} +6 -6
  11. package/fesm2022/{acorex-modules-auth-app-chooser.component-D0pKNUts.mjs.map → acorex-modules-auth-app-chooser.component-B0w1Xzx7.mjs.map} +1 -1
  12. package/fesm2022/{acorex-modules-auth-blank.layout-BwVSMaFI.mjs → acorex-modules-auth-blank.layout-C8NsXB9K.mjs} +5 -5
  13. package/fesm2022/{acorex-modules-auth-blank.layout-BwVSMaFI.mjs.map → acorex-modules-auth-blank.layout-C8NsXB9K.mjs.map} +1 -1
  14. package/fesm2022/{acorex-modules-auth-login.module-Dky49ylL.mjs → acorex-modules-auth-login.module-B8sVVZHV.mjs} +8 -8
  15. package/fesm2022/{acorex-modules-auth-login.module-Dky49ylL.mjs.map → acorex-modules-auth-login.module-B8sVVZHV.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-master.layout-DXfRjCLL.mjs → acorex-modules-auth-master.layout-CMKxj1Qo.mjs} +7 -7
  17. package/fesm2022/{acorex-modules-auth-master.layout-DXfRjCLL.mjs.map → acorex-modules-auth-master.layout-CMKxj1Qo.mjs.map} +1 -1
  18. package/fesm2022/acorex-modules-auth-oauth-callback.component-C95YLpI_.mjs +101 -0
  19. package/fesm2022/acorex-modules-auth-oauth-callback.component-C95YLpI_.mjs.map +1 -0
  20. package/fesm2022/{acorex-modules-auth-password.component-oH5OFHqQ.mjs → acorex-modules-auth-password.component-DH0qKunk.mjs} +9 -9
  21. package/fesm2022/{acorex-modules-auth-password.component-oH5OFHqQ.mjs.map → acorex-modules-auth-password.component-DH0qKunk.mjs.map} +1 -1
  22. package/fesm2022/acorex-modules-auth-password.component-Du0EBIiw.mjs +239 -0
  23. package/fesm2022/acorex-modules-auth-password.component-Du0EBIiw.mjs.map +1 -0
  24. package/fesm2022/{acorex-modules-auth-routes-DAiaTm4Y.mjs → acorex-modules-auth-routes-Q9zaIiBS.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-auth-routes-DAiaTm4Y.mjs.map → acorex-modules-auth-routes-Q9zaIiBS.mjs.map} +1 -1
  26. package/fesm2022/acorex-modules-auth-settings.provider-CM-T8nbI.mjs.map +1 -1
  27. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-3-FFY4tI.mjs → acorex-modules-auth-tenant-chooser.component-wp7OOLsH.mjs} +16 -13
  28. package/fesm2022/acorex-modules-auth-tenant-chooser.component-wp7OOLsH.mjs.map +1 -0
  29. package/fesm2022/{acorex-modules-auth-two-factor-code.component-UUmdX7IM.mjs → acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs} +7 -7
  30. package/fesm2022/{acorex-modules-auth-two-factor-code.component-UUmdX7IM.mjs.map → acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs.map} +1 -1
  31. package/fesm2022/{acorex-modules-auth-two-factor.module-Coe4NNUW.mjs → acorex-modules-auth-two-factor.module-oRixkeAn.mjs} +7 -7
  32. package/fesm2022/{acorex-modules-auth-two-factor.module-Coe4NNUW.mjs.map → acorex-modules-auth-two-factor.module-oRixkeAn.mjs.map} +1 -1
  33. package/fesm2022/acorex-modules-auth-user-sessions.component-8wwWI0cQ.mjs +135 -0
  34. package/fesm2022/acorex-modules-auth-user-sessions.component-8wwWI0cQ.mjs.map +1 -0
  35. package/fesm2022/acorex-modules-auth.mjs +1 -1
  36. package/fesm2022/acorex-modules-calendar-management.mjs +19 -19
  37. package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
  38. package/fesm2022/acorex-modules-common-acorex-modules-common-DQESb8jf.mjs +1667 -0
  39. package/fesm2022/acorex-modules-common-acorex-modules-common-DQESb8jf.mjs.map +1 -0
  40. package/fesm2022/{acorex-modules-common-search-popup.component-B_bJ0ZRM.mjs → acorex-modules-common-search-popup.component-CpFvcrxw.mjs} +13 -13
  41. package/fesm2022/acorex-modules-common-search-popup.component-CpFvcrxw.mjs.map +1 -0
  42. package/fesm2022/{acorex-modules-platform-management-settings.provider-intHn3XI.mjs → acorex-modules-common-settings.provider-ha75F6g5.mjs} +2 -3
  43. package/fesm2022/acorex-modules-common-settings.provider-ha75F6g5.mjs.map +1 -0
  44. package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-D48aDOVu.mjs → acorex-modules-common-timeline-version-history-popup.component-D_6STmWm.mjs} +11 -11
  45. package/fesm2022/acorex-modules-common-timeline-version-history-popup.component-D_6STmWm.mjs.map +1 -0
  46. package/fesm2022/acorex-modules-common.mjs +1 -1199
  47. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  48. package/fesm2022/{acorex-modules-contact-management-acorex-modules-contact-management-DVjMlS0K.mjs → acorex-modules-contact-management-acorex-modules-contact-management-CM72FkGM.mjs} +47 -222
  49. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-CM72FkGM.mjs.map +1 -0
  50. package/fesm2022/{acorex-modules-contact-management-address-type.entity-CWIBwWfZ.mjs → acorex-modules-contact-management-address-type.entity-CW0fx3v8.mjs} +2 -2
  51. package/fesm2022/{acorex-modules-contact-management-address-type.entity-CWIBwWfZ.mjs.map → acorex-modules-contact-management-address-type.entity-CW0fx3v8.mjs.map} +1 -1
  52. package/fesm2022/{acorex-modules-contact-management-contact-address.entity-DO6GizbS.mjs → acorex-modules-contact-management-contact-address.entity-D5OGWsSx.mjs} +2 -2
  53. package/fesm2022/{acorex-modules-contact-management-contact-address.entity-DO6GizbS.mjs.map → acorex-modules-contact-management-contact-address.entity-D5OGWsSx.mjs.map} +1 -1
  54. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-tEtMSV4f.mjs → acorex-modules-contact-management-contact-method.entity-Cpdd-Xwb.mjs} +2 -2
  55. package/fesm2022/{acorex-modules-contact-management-contact-method.entity-tEtMSV4f.mjs.map → acorex-modules-contact-management-contact-method.entity-Cpdd-Xwb.mjs.map} +1 -1
  56. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-C-B5aOoq.mjs → acorex-modules-contact-management-contact-relationship.entity-B_gQ7mEo.mjs} +2 -2
  57. package/fesm2022/{acorex-modules-contact-management-contact-relationship.entity-C-B5aOoq.mjs.map → acorex-modules-contact-management-contact-relationship.entity-B_gQ7mEo.mjs.map} +1 -1
  58. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-Dw8jwcox.mjs → acorex-modules-contact-management-contact-source.entity-BwYBaS8B.mjs} +2 -2
  59. package/fesm2022/{acorex-modules-contact-management-contact-source.entity-Dw8jwcox.mjs.map → acorex-modules-contact-management-contact-source.entity-BwYBaS8B.mjs.map} +1 -1
  60. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-BJOOhcD1.mjs → acorex-modules-contact-management-emergency-contact-category.entity-CDbm4Rq3.mjs} +2 -2
  61. package/fesm2022/{acorex-modules-contact-management-emergency-contact-category.entity-BJOOhcD1.mjs.map → acorex-modules-contact-management-emergency-contact-category.entity-CDbm4Rq3.mjs.map} +1 -1
  62. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-Cr7_5JKD.mjs → acorex-modules-contact-management-emergency-contact.entity-BpNDJPVs.mjs} +2 -2
  63. package/fesm2022/{acorex-modules-contact-management-emergency-contact.entity-Cr7_5JKD.mjs.map → acorex-modules-contact-management-emergency-contact.entity-BpNDJPVs.mjs.map} +1 -1
  64. package/fesm2022/acorex-modules-contact-management.mjs +1 -1
  65. package/fesm2022/acorex-modules-content-management.mjs +14 -14
  66. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  67. package/fesm2022/acorex-modules-conversation.mjs +123 -123
  68. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  69. package/fesm2022/acorex-modules-dashboard-management.mjs +191 -191
  70. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  71. package/fesm2022/acorex-modules-data-management.mjs +2215 -265
  72. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  73. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-Bte3VGKC.mjs → acorex-modules-document-management-acorex-modules-document-management-B4Jd-KGV.mjs} +144 -144
  74. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-B4Jd-KGV.mjs.map +1 -0
  75. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Cc0anIMV.mjs → acorex-modules-document-management-attachment-widget.component-Bp4kKjC4.mjs} +5 -5
  76. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Cc0anIMV.mjs.map → acorex-modules-document-management-attachment-widget.component-Bp4kKjC4.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-BNcu8bzT.mjs → acorex-modules-document-management-create-folder-dialog.component-12aUAucS.mjs} +22 -22
  78. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-12aUAucS.mjs.map +1 -0
  79. package/fesm2022/{acorex-modules-document-management-details-view.component-BeN0NPcy.mjs → acorex-modules-document-management-details-view.component-bzA7fJZW.mjs} +5 -5
  80. package/fesm2022/{acorex-modules-document-management-details-view.component-BeN0NPcy.mjs.map → acorex-modules-document-management-details-view.component-bzA7fJZW.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-document-management-drive-choose.component-B66wODCQ.mjs → acorex-modules-document-management-drive-choose.component-DLJdJzp1.mjs} +18 -18
  82. package/fesm2022/acorex-modules-document-management-drive-choose.component-DLJdJzp1.mjs.map +1 -0
  83. package/fesm2022/{acorex-modules-document-management-drive.component-CUej0GjY.mjs → acorex-modules-document-management-drive.component-DrkSd6Rv.mjs} +28 -28
  84. package/fesm2022/acorex-modules-document-management-drive.component-DrkSd6Rv.mjs.map +1 -0
  85. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BuwrkLhe.mjs → acorex-modules-document-management-large-icons-view.component-DV8oWdDh.mjs} +5 -5
  86. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BuwrkLhe.mjs.map → acorex-modules-document-management-large-icons-view.component-DV8oWdDh.mjs.map} +1 -1
  87. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-Cs-mjiQX.mjs → acorex-modules-document-management-large-tiles-view.component-Bgr9s_zf.mjs} +5 -5
  88. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-Cs-mjiQX.mjs.map → acorex-modules-document-management-large-tiles-view.component-Bgr9s_zf.mjs.map} +1 -1
  89. package/fesm2022/{acorex-modules-document-management-link-dialog.component-OTa8ttto.mjs → acorex-modules-document-management-link-dialog.component-CSEIhT4P.mjs} +5 -5
  90. package/fesm2022/{acorex-modules-document-management-link-dialog.component-OTa8ttto.mjs.map → acorex-modules-document-management-link-dialog.component-CSEIhT4P.mjs.map} +1 -1
  91. package/fesm2022/{acorex-modules-document-management-list-view.component-1M2rIOGv.mjs → acorex-modules-document-management-list-view.component-Dz6ymqrq.mjs} +5 -5
  92. package/fesm2022/{acorex-modules-document-management-list-view.component-1M2rIOGv.mjs.map → acorex-modules-document-management-list-view.component-Dz6ymqrq.mjs.map} +1 -1
  93. package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-DsSo15AL.mjs → acorex-modules-document-management-meta-choose-popup.component-DYJN-4Pe.mjs} +20 -20
  94. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-DYJN-4Pe.mjs.map +1 -0
  95. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-gunvY9et.mjs → acorex-modules-document-management-meta-selector-widget-column.component-C_J1rPak.mjs} +4 -4
  96. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-gunvY9et.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-C_J1rPak.mjs.map} +1 -1
  97. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-B-fYrGs1.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-By_NgUX6.mjs} +7 -7
  98. package/fesm2022/acorex-modules-document-management-meta-selector-widget-designer.component-By_NgUX6.mjs.map +1 -0
  99. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-D4gu7liQ.mjs → acorex-modules-document-management-meta-selector-widget-view.component-zwCw3v1w.mjs} +4 -4
  100. package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-D4gu7liQ.mjs.map → acorex-modules-document-management-meta-selector-widget-view.component-zwCw3v1w.mjs.map} +1 -1
  101. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-BEq3ySY3.mjs → acorex-modules-document-management-permission-definition.provider-CN7HVQLu.mjs} +2 -2
  102. package/fesm2022/{acorex-modules-document-management-permission-definition.provider-BEq3ySY3.mjs.map → acorex-modules-document-management-permission-definition.provider-CN7HVQLu.mjs.map} +1 -1
  103. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DWzD41AV.mjs → acorex-modules-document-management-rename-node-dialog.component-C_dsLLMb.mjs} +15 -15
  104. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-C_dsLLMb.mjs.map +1 -0
  105. package/fesm2022/{acorex-modules-document-management-share-dialog.component-DiyR6CiE.mjs → acorex-modules-document-management-share-dialog.component-CBrf7hjZ.mjs} +6 -6
  106. package/fesm2022/{acorex-modules-document-management-share-dialog.component-DiyR6CiE.mjs.map → acorex-modules-document-management-share-dialog.component-CBrf7hjZ.mjs.map} +1 -1
  107. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-CKlG3YwB.mjs → acorex-modules-document-management-share-email-dialog.component-D3WcHAOf.mjs} +5 -5
  108. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-CKlG3YwB.mjs.map → acorex-modules-document-management-share-email-dialog.component-D3WcHAOf.mjs.map} +1 -1
  109. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-Dh5Di_2Y.mjs → acorex-modules-document-management-small-icons-view.component-wvFkjOqg.mjs} +5 -5
  110. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-Dh5Di_2Y.mjs.map → acorex-modules-document-management-small-icons-view.component-wvFkjOqg.mjs.map} +1 -1
  111. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-mOjQbw-f.mjs → acorex-modules-document-management-small-tiles-view.component-C4ARGOZR.mjs} +5 -5
  112. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-mOjQbw-f.mjs.map → acorex-modules-document-management-small-tiles-view.component-C4ARGOZR.mjs.map} +1 -1
  113. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  114. package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-EsaVgkdd.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-zz8KU2BM.mjs} +68 -68
  115. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-zz8KU2BM.mjs.map +1 -0
  116. package/fesm2022/{acorex-modules-form-template-management-category.entity-CC0qe4pv.mjs → acorex-modules-form-template-management-category.entity-g5YGQjj3.mjs} +2 -2
  117. package/fesm2022/{acorex-modules-form-template-management-category.entity-CC0qe4pv.mjs.map → acorex-modules-form-template-management-category.entity-g5YGQjj3.mjs.map} +1 -1
  118. package/fesm2022/{acorex-modules-form-template-management-designer.page-B14QVCAw.mjs → acorex-modules-form-template-management-designer.page-DQorNK3f.mjs} +6 -6
  119. package/fesm2022/acorex-modules-form-template-management-designer.page-DQorNK3f.mjs.map +1 -0
  120. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-BMd6DvoR.mjs → acorex-modules-form-template-management-permission-definition.provider-BFPqDVO3.mjs} +2 -2
  121. package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-BMd6DvoR.mjs.map → acorex-modules-form-template-management-permission-definition.provider-BFPqDVO3.mjs.map} +1 -1
  122. package/fesm2022/{acorex-modules-form-template-management-settings.provider-BYS5t4c_.mjs → acorex-modules-form-template-management-settings.provider-DYbrgJI7.mjs} +2 -2
  123. package/fesm2022/{acorex-modules-form-template-management-settings.provider-BYS5t4c_.mjs.map → acorex-modules-form-template-management-settings.provider-DYbrgJI7.mjs.map} +1 -1
  124. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-C0mLCsFT.mjs → acorex-modules-form-template-management-template-picker.component-DgH_DUIB.mjs} +14 -14
  125. package/fesm2022/acorex-modules-form-template-management-template-picker.component-DgH_DUIB.mjs.map +1 -0
  126. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-CffnsEo2.mjs → acorex-modules-form-template-management-template-widget-edit.component-CCL7xNSm.mjs} +9 -9
  127. package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-CCL7xNSm.mjs.map +1 -0
  128. package/fesm2022/{acorex-modules-form-template-management-template.entity-DTx9CejD.mjs → acorex-modules-form-template-management-template.entity-XNBsmQZY.mjs} +2 -2
  129. package/fesm2022/{acorex-modules-form-template-management-template.entity-DTx9CejD.mjs.map → acorex-modules-form-template-management-template.entity-XNBsmQZY.mjs.map} +1 -1
  130. package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-BwVSDsN3.mjs → acorex-modules-form-template-management-viewer-popup.component-Bw9VbGx7.mjs} +12 -12
  131. package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-Bw9VbGx7.mjs.map +1 -0
  132. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  133. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-DKdtV_QL.mjs → acorex-modules-issue-management-acorex-modules-issue-management-B8ZVc-0b.mjs} +45 -45
  134. package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-DKdtV_QL.mjs.map → acorex-modules-issue-management-acorex-modules-issue-management-B8ZVc-0b.mjs.map} +1 -1
  135. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CucnKDr1.mjs → acorex-modules-issue-management-capture-screen.component-D1vapaJC.mjs} +7 -7
  136. package/fesm2022/{acorex-modules-issue-management-capture-screen.component-CucnKDr1.mjs.map → acorex-modules-issue-management-capture-screen.component-D1vapaJC.mjs.map} +1 -1
  137. package/fesm2022/acorex-modules-issue-management.mjs +1 -1
  138. package/fesm2022/acorex-modules-log-management.mjs +427 -479
  139. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  140. package/fesm2022/acorex-modules-notification-management.mjs +60 -60
  141. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  142. package/fesm2022/{acorex-modules-organization-management-add-item.component-Br70YGJS.mjs → acorex-modules-organization-management-add-item.component-DsDk5cyO.mjs} +16 -16
  143. package/fesm2022/{acorex-modules-organization-management-add-item.component-Br70YGJS.mjs.map → acorex-modules-organization-management-add-item.component-DsDk5cyO.mjs.map} +1 -1
  144. package/fesm2022/{acorex-modules-organization-management-branch.entity-Bsgj4Pow.mjs → acorex-modules-organization-management-branch.entity-CHp5WtIF.mjs} +80 -6
  145. package/fesm2022/acorex-modules-organization-management-branch.entity-CHp5WtIF.mjs.map +1 -0
  146. package/fesm2022/acorex-modules-organization-management-chart.entity-UAn44WCP.mjs.map +1 -1
  147. package/fesm2022/acorex-modules-organization-management-company.entity-D1A1HSkC.mjs.map +1 -1
  148. package/fesm2022/{acorex-modules-organization-management-department.entity-BMojk26d.mjs → acorex-modules-organization-management-department.entity-BxCyXNtv.mjs} +68 -7
  149. package/fesm2022/acorex-modules-organization-management-department.entity-BxCyXNtv.mjs.map +1 -0
  150. package/fesm2022/{acorex-modules-organization-management-division.entity-BnWpX4US.mjs → acorex-modules-organization-management-division.entity-DzQT2jpz.mjs} +68 -6
  151. package/fesm2022/acorex-modules-organization-management-division.entity-DzQT2jpz.mjs.map +1 -0
  152. package/fesm2022/{acorex-modules-organization-management-employee.entity-DBuCVYZP.mjs → acorex-modules-organization-management-employee.entity-CSY_U9Bl.mjs} +152 -28
  153. package/fesm2022/acorex-modules-organization-management-employee.entity-CSY_U9Bl.mjs.map +1 -0
  154. package/fesm2022/{acorex-modules-organization-management-employment-type.entity-CWYu9tIg.mjs → acorex-modules-organization-management-employment-type.entity-h9Hua7Xe.mjs} +21 -8
  155. package/fesm2022/acorex-modules-organization-management-employment-type.entity-h9Hua7Xe.mjs.map +1 -0
  156. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-DHu4UuxD.mjs → acorex-modules-organization-management-org-chart-configuration.page-a2JPiCy9.mjs} +6 -6
  157. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.page-a2JPiCy9.mjs.map +1 -0
  158. package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-CcZMGyCz.mjs → acorex-modules-organization-management-org-chart-configuration.service-BkfSow3s.mjs} +5 -5
  159. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-BkfSow3s.mjs.map +1 -0
  160. package/fesm2022/{acorex-modules-organization-management-org-chart.page-CSMTnTDi.mjs → acorex-modules-organization-management-org-chart.page-DWQ-5NF_.mjs} +20 -20
  161. package/fesm2022/acorex-modules-organization-management-org-chart.page-DWQ-5NF_.mjs.map +1 -0
  162. package/fesm2022/{acorex-modules-organization-management-position-category.entity-DrZ9Ott4.mjs → acorex-modules-organization-management-position-category.entity-CIir9UMg.mjs} +20 -35
  163. package/fesm2022/acorex-modules-organization-management-position-category.entity-CIir9UMg.mjs.map +1 -0
  164. package/fesm2022/acorex-modules-organization-management-position.entity-BpkjUsoZ.mjs +526 -0
  165. package/fesm2022/acorex-modules-organization-management-position.entity-BpkjUsoZ.mjs.map +1 -0
  166. package/fesm2022/{acorex-modules-organization-management-responsibility-category.entity-CmafbyCZ.mjs → acorex-modules-organization-management-responsibility-category.entity-tJFpEylO.mjs} +12 -25
  167. package/fesm2022/acorex-modules-organization-management-responsibility-category.entity-tJFpEylO.mjs.map +1 -0
  168. package/fesm2022/{acorex-modules-organization-management-responsibility.entity-DmLeFogS.mjs → acorex-modules-organization-management-responsibility.entity-DmKSoxpL.mjs} +70 -25
  169. package/fesm2022/acorex-modules-organization-management-responsibility.entity-DmKSoxpL.mjs.map +1 -0
  170. package/fesm2022/{acorex-modules-organization-management-role-category.entity-Cyt1dAKR.mjs → acorex-modules-organization-management-role-category.entity-CAljzQcH.mjs} +22 -14
  171. package/fesm2022/acorex-modules-organization-management-role-category.entity-CAljzQcH.mjs.map +1 -0
  172. package/fesm2022/{acorex-modules-organization-management-position.entity-CY4TugWR.mjs → acorex-modules-organization-management-role.entity-CruQeObl.mjs} +77 -79
  173. package/fesm2022/acorex-modules-organization-management-role.entity-CruQeObl.mjs.map +1 -0
  174. package/fesm2022/acorex-modules-organization-management-settings.provider-hlbUXugb.mjs.map +1 -1
  175. package/fesm2022/{acorex-modules-organization-management-skill-category.entity-BPgGGVT3.mjs → acorex-modules-organization-management-skill-category.entity-iIbc-pjJ.mjs} +18 -33
  176. package/fesm2022/acorex-modules-organization-management-skill-category.entity-iIbc-pjJ.mjs.map +1 -0
  177. package/fesm2022/{acorex-modules-organization-management-skill.entity-D9XojzUV.mjs → acorex-modules-organization-management-skill.entity-DoAsCzm9.mjs} +61 -22
  178. package/fesm2022/acorex-modules-organization-management-skill.entity-DoAsCzm9.mjs.map +1 -0
  179. package/fesm2022/{acorex-modules-organization-management-team.entity-mYPhrc2l.mjs → acorex-modules-organization-management-team.entity-DMCfAZsr.mjs} +58 -10
  180. package/fesm2022/acorex-modules-organization-management-team.entity-DMCfAZsr.mjs.map +1 -0
  181. package/fesm2022/acorex-modules-organization-management.mjs +221 -136
  182. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  183. package/fesm2022/{acorex-modules-platform-management-list-version.component-CgF5pvTa.mjs → acorex-modules-platform-management-list-version.component-BOfUQDwo.mjs} +9 -9
  184. package/fesm2022/acorex-modules-platform-management-list-version.component-BOfUQDwo.mjs.map +1 -0
  185. package/fesm2022/acorex-modules-platform-management.mjs +3479 -1
  186. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  187. package/fesm2022/acorex-modules-project-management.mjs +43 -43
  188. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  189. package/fesm2022/{acorex-modules-report-management-report-create-root.component-DqrLa6vh.mjs → acorex-modules-report-management-report-create-root.component-DgouOz2M.mjs} +10 -10
  190. package/fesm2022/acorex-modules-report-management-report-create-root.component-DgouOz2M.mjs.map +1 -0
  191. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-C3UP9Jsi.mjs → acorex-modules-report-management-report-runner-root-page.component-DHu-kyCd.mjs} +13 -13
  192. package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-C3UP9Jsi.mjs.map → acorex-modules-report-management-report-runner-root-page.component-DHu-kyCd.mjs.map} +1 -1
  193. package/fesm2022/acorex-modules-report-management.mjs +465 -232
  194. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  195. package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
  196. package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
  197. package/fesm2022/acorex-modules-security-management.mjs +170 -102
  198. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  199. package/fesm2022/{acorex-modules-settings-management-setting-page.component-BbnEqXKu.mjs → acorex-modules-settings-management-setting-page.component-cG4ykm2g.mjs} +17 -17
  200. package/fesm2022/acorex-modules-settings-management-setting-page.component-cG4ykm2g.mjs.map +1 -0
  201. package/fesm2022/{acorex-modules-settings-management-setting-view.component-DP8mxDK9.mjs → acorex-modules-settings-management-setting-view.component-CrEK2N1U.mjs} +11 -11
  202. package/fesm2022/acorex-modules-settings-management-setting-view.component-CrEK2N1U.mjs.map +1 -0
  203. package/fesm2022/acorex-modules-settings-management.mjs +6 -6
  204. package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
  205. package/fesm2022/acorex-modules-text-template-management-settings.provider-fX0dhWUL.mjs.map +1 -1
  206. package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
  207. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  208. package/fesm2022/acorex-modules-training-management.mjs +43 -43
  209. package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
  210. package/fesm2022/{acorex-modules-workflow-management-task-board.page-zaSchG-u.mjs → acorex-modules-workflow-management-task-board.page-BoG_tFGn.mjs} +123 -133
  211. package/fesm2022/acorex-modules-workflow-management-task-board.page-BoG_tFGn.mjs.map +1 -0
  212. package/fesm2022/acorex-modules-workflow-management.mjs +12 -12
  213. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  214. package/log-management/index.d.ts +46 -19
  215. package/organization-management/index.d.ts +41 -13
  216. package/package.json +1 -1
  217. package/platform-management/index.d.ts +8 -277
  218. package/report-management/index.d.ts +180 -126
  219. package/security-management/index.d.ts +2 -46
  220. package/fesm2022/acorex-modules-application-management-module-designer.component-BvuZJdwg.mjs.map +0 -1
  221. package/fesm2022/acorex-modules-auth-acorex-modules-auth-DqsEqXec.mjs.map +0 -1
  222. package/fesm2022/acorex-modules-auth-password.component-BbsQWpEh.mjs +0 -134
  223. package/fesm2022/acorex-modules-auth-password.component-BbsQWpEh.mjs.map +0 -1
  224. package/fesm2022/acorex-modules-auth-tenant-chooser.component-3-FFY4tI.mjs.map +0 -1
  225. package/fesm2022/acorex-modules-auth-user-sessions.component-CtTrstZT.mjs +0 -135
  226. package/fesm2022/acorex-modules-auth-user-sessions.component-CtTrstZT.mjs.map +0 -1
  227. package/fesm2022/acorex-modules-common-search-popup.component-B_bJ0ZRM.mjs.map +0 -1
  228. package/fesm2022/acorex-modules-common-timeline-version-history-popup.component-D48aDOVu.mjs.map +0 -1
  229. package/fesm2022/acorex-modules-contact-management-acorex-modules-contact-management-DVjMlS0K.mjs.map +0 -1
  230. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-Bte3VGKC.mjs.map +0 -1
  231. package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-BNcu8bzT.mjs.map +0 -1
  232. package/fesm2022/acorex-modules-document-management-drive-choose.component-B66wODCQ.mjs.map +0 -1
  233. package/fesm2022/acorex-modules-document-management-drive.component-CUej0GjY.mjs.map +0 -1
  234. package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-DsSo15AL.mjs.map +0 -1
  235. package/fesm2022/acorex-modules-document-management-meta-selector-widget-designer.component-B-fYrGs1.mjs.map +0 -1
  236. package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-DWzD41AV.mjs.map +0 -1
  237. package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-EsaVgkdd.mjs.map +0 -1
  238. package/fesm2022/acorex-modules-form-template-management-designer.page-B14QVCAw.mjs.map +0 -1
  239. package/fesm2022/acorex-modules-form-template-management-template-picker.component-C0mLCsFT.mjs.map +0 -1
  240. package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-CffnsEo2.mjs.map +0 -1
  241. package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-BwVSDsN3.mjs.map +0 -1
  242. package/fesm2022/acorex-modules-organization-management-branch.entity-Bsgj4Pow.mjs.map +0 -1
  243. package/fesm2022/acorex-modules-organization-management-department.entity-BMojk26d.mjs.map +0 -1
  244. package/fesm2022/acorex-modules-organization-management-division.entity-BnWpX4US.mjs.map +0 -1
  245. package/fesm2022/acorex-modules-organization-management-employee.entity-DBuCVYZP.mjs.map +0 -1
  246. package/fesm2022/acorex-modules-organization-management-employment-type.entity-CWYu9tIg.mjs.map +0 -1
  247. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.page-DHu4UuxD.mjs.map +0 -1
  248. package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-CcZMGyCz.mjs.map +0 -1
  249. package/fesm2022/acorex-modules-organization-management-org-chart.page-CSMTnTDi.mjs.map +0 -1
  250. package/fesm2022/acorex-modules-organization-management-position-category.entity-DrZ9Ott4.mjs.map +0 -1
  251. package/fesm2022/acorex-modules-organization-management-position.entity-CY4TugWR.mjs.map +0 -1
  252. package/fesm2022/acorex-modules-organization-management-responsibility-category.entity-CmafbyCZ.mjs.map +0 -1
  253. package/fesm2022/acorex-modules-organization-management-responsibility.entity-DmLeFogS.mjs.map +0 -1
  254. package/fesm2022/acorex-modules-organization-management-role-category.entity-Cyt1dAKR.mjs.map +0 -1
  255. package/fesm2022/acorex-modules-organization-management-role.entity-BDErzNv-.mjs +0 -324
  256. package/fesm2022/acorex-modules-organization-management-role.entity-BDErzNv-.mjs.map +0 -1
  257. package/fesm2022/acorex-modules-organization-management-skill-category.entity-BPgGGVT3.mjs.map +0 -1
  258. package/fesm2022/acorex-modules-organization-management-skill.entity-D9XojzUV.mjs.map +0 -1
  259. package/fesm2022/acorex-modules-organization-management-team.entity-mYPhrc2l.mjs.map +0 -1
  260. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-BLhzWiXM.mjs +0 -5524
  261. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-BLhzWiXM.mjs.map +0 -1
  262. package/fesm2022/acorex-modules-platform-management-list-version.component-CgF5pvTa.mjs.map +0 -1
  263. package/fesm2022/acorex-modules-platform-management-settings.provider-intHn3XI.mjs.map +0 -1
  264. package/fesm2022/acorex-modules-report-management-report-create-root.component-DqrLa6vh.mjs.map +0 -1
  265. package/fesm2022/acorex-modules-settings-management-setting-page.component-BbnEqXKu.mjs.map +0 -1
  266. package/fesm2022/acorex-modules-settings-management-setting-view.component-DP8mxDK9.mjs.map +0 -1
  267. package/fesm2022/acorex-modules-workflow-management-task-board.page-zaSchG-u.mjs.map +0 -1
@@ -5,24 +5,24 @@ import { AXButtonModule } from '@acorex/components/button';
5
5
  import { AXChipsModule } from '@acorex/components/chips';
6
6
  import * as i4 from '@acorex/cdk/common';
7
7
  import { AXCommonModule } from '@acorex/cdk/common';
8
- import * as i4$1 from '@acorex/components/decorators';
8
+ import * as i2 from '@acorex/components/decorators';
9
9
  import { AXDecoratorModule } from '@acorex/components/decorators';
10
10
  import { AXBasePageComponent } from '@acorex/components/page';
11
11
  import * as i3 from '@acorex/components/search-box';
12
12
  import { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';
13
13
  import * as i9 from '@acorex/components/skeleton';
14
14
  import { AXSkeletonModule } from '@acorex/components/skeleton';
15
- import * as i4$2 from '@acorex/core/translation';
15
+ import * as i4$1 from '@acorex/core/translation';
16
16
  import { AXTranslationModule } from '@acorex/core/translation';
17
17
  import { AXPThemeLayoutBlockComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutHeaderComponent } from '@acorex/platform/layout/components';
18
18
  import * as i1 from '@angular/common';
19
19
  import { CommonModule } from '@angular/common';
20
20
  import * as i0 from '@angular/core';
21
21
  import { inject, viewChild, viewChildren, ChangeDetectionStrategy, Component } from '@angular/core';
22
- import * as i2 from '@angular/forms';
22
+ import * as i1$1 from '@angular/forms';
23
23
  import { FormsModule } from '@angular/forms';
24
24
  import { first } from 'rxjs';
25
- import { AXPGlobalSearchViewModel } from './acorex-modules-common.mjs';
25
+ import { A as AXPGlobalSearchViewModel } from './acorex-modules-common-acorex-modules-common-DQESb8jf.mjs';
26
26
 
27
27
  class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
28
28
  constructor() {
@@ -30,9 +30,9 @@ class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
30
30
  this.i18nScope = 'global-search';
31
31
  this.vm = inject(AXPGlobalSearchViewModel);
32
32
  this.text = null;
33
- this.list = viewChild(AXListNavigationDirective);
34
- this.searchBox = viewChild(AXSearchBoxComponent);
35
- this.items = viewChildren(AXListNavigationItemDirective);
33
+ this.list = viewChild(AXListNavigationDirective, ...(ngDevMode ? [{ debugName: "list" }] : []));
34
+ this.searchBox = viewChild(AXSearchBoxComponent, ...(ngDevMode ? [{ debugName: "searchBox" }] : []));
35
+ this.items = viewChildren(AXListNavigationItemDirective, ...(ngDevMode ? [{ debugName: "items" }] : []));
36
36
  }
37
37
  async handleTextChanged(e) {
38
38
  if (e.isUserInteraction) {
@@ -94,14 +94,14 @@ class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
94
94
  e.stopPropagation();
95
95
  this.vm.togglePin(item);
96
96
  }
97
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXPGlobalSearchPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
98
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.7", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: "ng-component", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: "list", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<axp-layout-content *translate=\"let t\">\n <axp-layout-header class=\"ax-lg\">\n <ax-search-box\n [axAutoFocus]\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"t('search-anything', { scope: i18nScope }) | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n ></ax-search-box>\n <div class=\"__close-button\">\n <ax-button [look]=\"'blank'\" class=\"ax-rounded-full\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark fa-sm\"></ax-icon>\n </ax-button>\n </div>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if (vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if (vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if (vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if (vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-10 ax-p-8\">\n @for (item of [1, 2, 3, 4, 5]; track $index) {\n <div class=\"ax-flex ax-items-center ax-gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-4 ax-h-4 ax-rounded-full\"></ax-skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/4 ax-h-2 ax-rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/2 ax-h-2 ax-rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2 ax-leading-relaxed\">\n {{ t('no-result.message', { scope: i18nScope }) | async }}\n </p>\n </div>\n </div>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\n </div>\n </div>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list\n *translate=\"let t\"\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @if (vm.pinnedItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if (vm.recentItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-xs\">\n <ax-button\n [text]=\"t('clear', { scope: i18nScope }) | async\"\n look=\"blank\"\n [color]=\"'default'\"\n (onClick)=\"handleClearClick($event)\"\n ></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon icon=\"fal {{ item.icon }}\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"ax-group\">\n <span>{{ t(item.title) | async }}</span>\n <span class=\"ax-ms-3\" (click)=\"handlePinClick($event, item)\">\n <i\n [class.ax-invisible]=\"!vm.isPinned(item)\"\n class=\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\"\n [class.fa-solid]=\"vm.isPinned(item)\"\n ></i>\n </span>\n </axp-layout-title>\n @if (item.parent) {\n <axp-layout-description>\n {{ t(item.parent.title) | async }}\n </axp-layout-description>\n } @else if (item.description) {\n <axp-layout-description>\n {{ t(item.description) | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:ax-rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n", styles: [":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type:
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPGlobalSearchPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: "ng-component", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: "list", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<axp-layout-content *translate=\"let t\">\n <axp-layout-header class=\"ax-lg\">\n <ax-search-box\n [axAutoFocus]\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"t('search-anything', { scope: i18nScope }) | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n ></ax-search-box>\n <div class=\"__close-button\">\n <ax-button [look]=\"'blank'\" class=\"ax-rounded-full\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark fa-sm\"></ax-icon>\n </ax-button>\n </div>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if (vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if (vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if (vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if (vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-10 ax-p-8\">\n @for (item of [1, 2, 3, 4, 5]; track $index) {\n <div class=\"ax-flex ax-items-center ax-gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-4 ax-h-4 ax-rounded-full\"></ax-skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/4 ax-h-2 ax-rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/2 ax-h-2 ax-rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2 ax-leading-relaxed\">\n {{ t('no-result.message', { scope: i18nScope }) | async }}\n </p>\n </div>\n </div>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\n </div>\n </div>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list\n *translate=\"let t\"\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @if (vm.pinnedItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if (vm.recentItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-xs\">\n <ax-button\n [text]=\"t('clear', { scope: i18nScope }) | async\"\n look=\"blank\"\n [color]=\"'default'\"\n (onClick)=\"handleClearClick($event)\"\n ></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon icon=\"fal {{ item.icon }}\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"ax-group\">\n <span>{{ t(item.title) | async }}</span>\n <span class=\"ax-ms-3\" (click)=\"handlePinClick($event, item)\">\n <i\n [class.ax-invisible]=\"!vm.isPinned(item)\"\n class=\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\"\n [class.fa-solid]=\"vm.isPinned(item)\"\n ></i>\n </span>\n </axp-layout-title>\n @if (item.parent) {\n <axp-layout-description>\n {{ t(item.parent.title) | async }}\n </axp-layout-description>\n } @else if (item.description) {\n <axp-layout-description>\n {{ t(item.description) | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:ax-rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n", styles: [":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type:
99
99
  //
100
- AXSearchBoxModule }, { kind: "component", type: i3.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i4.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i4$2.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i7.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onPressEnterOrSpace"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i7.AXListNavigationItemDirective, selector: "[axListNavigationItem]", exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type:
100
+ AXSearchBoxModule }, { kind: "component", type: i3.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i4.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i4$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i7.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onPressEnterOrSpace"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i7.AXListNavigationItemDirective, selector: "[axListNavigationItem]", exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type:
101
101
  //
102
- AXSkeletonModule }, { kind: "component", type: i9.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "component", type: AXPThemeLayoutListComponent, selector: "axp-layout-list" }, { kind: "component", type: AXPThemeLayoutListItemComponent, selector: "axp-layout-list-item" }, { kind: "component", type: AXPThemeLayoutListItemsGroupComponent, selector: "axp-layout-list-group" }, { kind: "component", type: AXPThemeLayoutHeaderComponent, selector: "axp-layout-header" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
102
+ AXSkeletonModule }, { kind: "component", type: i9.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "component", type: AXPThemeLayoutListComponent, selector: "axp-layout-list" }, { kind: "component", type: AXPThemeLayoutListItemComponent, selector: "axp-layout-list-item" }, { kind: "component", type: AXPThemeLayoutListItemsGroupComponent, selector: "axp-layout-list-group" }, { kind: "component", type: AXPThemeLayoutHeaderComponent, selector: "axp-layout-header" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
103
103
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXPGlobalSearchPopupComponent, decorators: [{
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPGlobalSearchPopupComponent, decorators: [{
105
105
  type: Component,
106
106
  args: [{ imports: [
107
107
  CommonModule,
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.7", ngImpor
125
125
  }] });
126
126
 
127
127
  export { AXPGlobalSearchPopupComponent };
128
- //# sourceMappingURL=acorex-modules-common-search-popup.component-B_bJ0ZRM.mjs.map
128
+ //# sourceMappingURL=acorex-modules-common-search-popup.component-CpFvcrxw.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-common-search-popup.component-CpFvcrxw.mjs","sources":["../tmp-esm2022/common/lib/features/global-search/search-popup.component.js"],"sourcesContent":["import { AXListNavigationDirective, AXListNavigationItemDirective, AXListNavigationModule, } from '@acorex/cdk/list-navigation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXChipsModule } from '@acorex/components/chips';\nimport { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPThemeLayoutBlockComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild, viewChildren } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { first } from 'rxjs';\nimport { AXPGlobalSearchViewModel } from './search.viewmodel';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@angular/forms\";\nimport * as i3 from \"@acorex/components/search-box\";\nimport * as i4 from \"@acorex/cdk/common\";\nimport * as i5 from \"@acorex/components/decorators\";\nimport * as i6 from \"@acorex/core/translation\";\nimport * as i7 from \"@acorex/cdk/list-navigation\";\nimport * as i8 from \"@acorex/components/button\";\nimport * as i9 from \"@acorex/components/skeleton\";\nexport class AXPGlobalSearchPopupComponent extends AXBasePageComponent {\n constructor() {\n super(...arguments);\n this.i18nScope = 'global-search';\n this.vm = inject(AXPGlobalSearchViewModel);\n this.text = null;\n this.list = viewChild(AXListNavigationDirective, ...(ngDevMode ? [{ debugName: \"list\" }] : []));\n this.searchBox = viewChild(AXSearchBoxComponent, ...(ngDevMode ? [{ debugName: \"searchBox\" }] : []));\n this.items = viewChildren(AXListNavigationItemDirective, ...(ngDevMode ? [{ debugName: \"items\" }] : []));\n }\n async handleTextChanged(e) {\n if (e.isUserInteraction) {\n await this.vm.search(e.value);\n }\n }\n ngOnInit() {\n super.ngOnInit();\n //\n this.vm.onItemSelected.pipe(first()).subscribe((item) => {\n this.close(item);\n });\n }\n handleSearchKeyDown(e) {\n const event = e.nativeEvent;\n switch (event.code) {\n case 'ArrowDown':\n const item = this.items()[0];\n if (item && this.list()) {\n this.list()?.navigateTo(item);\n }\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n }\n handleClearClick($event) {\n this.vm.clearRecentItems();\n }\n handleListKeyDown(e) {\n switch (e.code) {\n case 'ArrowUp': {\n const item = this.items()[0];\n if (item && this.list() && item.isActive()) {\n this.searchBox()?.focus();\n }\n break;\n }\n case 'Escape': {\n this.searchBox()?.focus();\n e.preventDefault();\n e.stopPropagation();\n break;\n }\n }\n }\n handleItemKeyDown(e, item) {\n switch (e.code) {\n case 'Enter':\n case 'Space': {\n e.preventDefault();\n e.stopPropagation();\n this.vm.execute(item);\n break;\n }\n }\n }\n handlePinClick(e, item) {\n e.stopPropagation();\n this.vm.togglePin(item);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXPGlobalSearchPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.3\", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: \"ng-component\", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: \"list\", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: \"searchBox\", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: \"items\", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<axp-layout-content *translate=\\\"let t\\\">\\n <axp-layout-header class=\\\"ax-lg\\\">\\n <ax-search-box\\n [axAutoFocus]\\n [look]=\\\"'none'\\\"\\n [ngModel]=\\\"vm.text()\\\"\\n (onValueChanged)=\\\"handleTextChanged($event)\\\"\\n [placeholder]=\\\"t('search-anything', { scope: i18nScope }) | async\\\"\\n (onKeyDown)=\\\"handleSearchKeyDown($event)\\\"\\n ></ax-search-box>\\n <div class=\\\"__close-button\\\">\\n <ax-button [look]=\\\"'blank'\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"close()\\\">\\n <ax-icon icon=\\\"fa-light fa-xmark fa-sm\\\"></ax-icon>\\n </ax-button>\\n </div>\\n </axp-layout-header>\\n\\n <!-- Results Area -->\\n <axp-layout-body>\\n @if (vm.isBusy()) {\\n <ng-container *ngTemplateOutlet=\\\"skeleton\\\"></ng-container>\\n } @else if (vm.isEmpty()) {\\n <ng-container *ngTemplateOutlet=\\\"empty\\\"></ng-container>\\n } @else if (vm.isWelcome()) {\\n <ng-container *ngTemplateOutlet=\\\"welcome\\\"></ng-container>\\n } @else if (vm.isStart()) {\\n <ng-container *ngTemplateOutlet=\\\"start\\\"></ng-container>\\n } @else {\\n <ng-container *ngTemplateOutlet=\\\"result\\\"></ng-container>\\n }\\n </axp-layout-body>\\n\\n <!-- Skeleton Template -->\\n <ng-template #skeleton>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-10 ax-p-8\\\">\\n @for (item of [1, 2, 3, 4, 5]; track $index) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-4\\\">\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-4 ax-h-4 ax-rounded-full\\\"></ax-skeleton>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\\\">\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-1/4 ax-h-2 ax-rounded\\\"></ax-skeleton>\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-1/2 ax-h-2 ax-rounded\\\"></ax-skeleton>\\n </div>\\n </div>\\n }\\n </div>\\n </ng-template>\\n\\n <!-- Empty Template -->\\n <ng-template #empty>\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\\\">\\n <!-- Icon -->\\n <div class=\\\"ax-mb-4\\\">\\n <i class=\\\"fas fa-search ax-text-gray-400 ax-text-4xl\\\"></i>\\n </div>\\n <!-- Message -->\\n <div class=\\\"ax-text-center\\\">\\n <h2 class=\\\"ax-text-lg ax-font-semibold\\\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\\n <p class=\\\"ax-mt-2 ax-leading-relaxed\\\">\\n {{ t('no-result.message', { scope: i18nScope }) | async }}\\n </p>\\n </div>\\n </div>\\n </ng-template>\\n\\n <!-- Welcome Template -->\\n <ng-template #welcome>\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\\\">\\n <!-- Icon -->\\n <div class=\\\"ax-mb-4\\\">\\n <i class=\\\"fas fa-search ax-text-gray-400 ax-text-4xl\\\"></i>\\n </div>\\n <!-- Message -->\\n <div class=\\\"ax-text-center\\\">\\n <h2 class=\\\"ax-text-lg ax-font-semibold\\\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\\n <p class=\\\"ax-mt-2\\\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\\n </div>\\n </div>\\n </ng-template>\\n\\n <!-- Start Template -->\\n <ng-template #start>\\n <!-- Pinned Items -->\\n <axp-layout-list\\n *translate=\\\"let t\\\"\\n class=\\\"ax-p-4 ax-divide-none\\\"\\n (keydown)=\\\"handleListKeyDown($event)\\\"\\n axListNavigation\\n #list=\\\"axListNavigation\\\"\\n >\\n @if (vm.pinnedItems().length > 0) {\\n <axp-layout-list-group>\\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\\n @for (item of vm.pinnedItems(); track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n <!-- Recent Items -->\\n @if (vm.recentItems().length > 0) {\\n <axp-layout-list-group>\\n <axp-layout-header>\\n <axp-layout-prefix>\\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\\n </axp-layout-prefix>\\n <axp-layout-prefix class=\\\"ax-xs\\\">\\n <ax-button\\n [text]=\\\"t('clear', { scope: i18nScope }) | async\\\"\\n look=\\\"blank\\\"\\n [color]=\\\"'default'\\\"\\n (onClick)=\\\"handleClearClick($event)\\\"\\n ></ax-button>\\n </axp-layout-prefix>\\n </axp-layout-header>\\n @for (item of vm.recentItems(); track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n </axp-layout-list>\\n </ng-template>\\n\\n <!-- Result Template -->\\n <ng-template #result>\\n <axp-layout-list\\n class=\\\"ax-p-4 ax-divide-none\\\"\\n (keydown)=\\\"handleListKeyDown($event)\\\"\\n axListNavigation\\n #list=\\\"axListNavigation\\\"\\n >\\n @for (group of vm.results(); track $index) {\\n <axp-layout-list-group>\\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\\n @for (item of group.children; track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n </axp-layout-list>\\n </ng-template>\\n\\n <ng-template #listItem let-item=\\\"item\\\">\\n <axp-layout-prefix>\\n <ax-icon icon=\\\"fal {{ item.icon }}\\\"></ax-icon>\\n </axp-layout-prefix>\\n <axp-layout-content>\\n <axp-layout-title class=\\\"ax-group\\\">\\n <span>{{ t(item.title) | async }}</span>\\n <span class=\\\"ax-ms-3\\\" (click)=\\\"handlePinClick($event, item)\\\">\\n <i\\n [class.ax-invisible]=\\\"!vm.isPinned(item)\\\"\\n class=\\\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\\\"\\n [class.fa-solid]=\\\"vm.isPinned(item)\\\"\\n ></i>\\n </span>\\n </axp-layout-title>\\n @if (item.parent) {\\n <axp-layout-description>\\n {{ t(item.parent.title) | async }}\\n </axp-layout-description>\\n } @else if (item.description) {\\n <axp-layout-description>\\n {{ t(item.description) | async }}\\n </axp-layout-description>\\n }\\n </axp-layout-content>\\n <axp-layout-suffix>\\n <i class=\\\"far fa-chevron-right rtl:ax-rotate-180\\\"></i>\\n </axp-layout-suffix>\\n </ng-template>\\n</axp-layout-content>\\n\", styles: [\":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: \n //\n AXSearchBoxModule }, { kind: \"component\", type: i3.AXSearchBoxComponent, selector: \"ax-search-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"value\", \"state\", \"name\", \"id\", \"look\", \"class\", \"delayTime\", \"type\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: AXCommonModule }, { kind: \"directive\", type: i4.AXAutoFocusDirective, selector: \"[axAutoFocus]\", inputs: [\"axAutoFocus\", \"axAutoFocusTime\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i5.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i6.AXTranslatorDirective, selector: \"[translate]\" }, { kind: \"ngmodule\", type: AXListNavigationModule }, { kind: \"directive\", type: i7.AXListNavigationDirective, selector: \"[axListNavigation]\", inputs: [\"orientation\"], outputs: [\"onNavigationChanged\", \"onPressEnterOrSpace\"], exportAs: [\"axListNavigation\"] }, { kind: \"directive\", type: i7.AXListNavigationItemDirective, selector: \"[axListNavigationItem]\", exportAs: [\"axListNavigationItem\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i8.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: \n //\n AXSkeletonModule }, { kind: \"component\", type: i9.AXSkeletonComponent, selector: \"ax-skeleton\", inputs: [\"animated\"] }, { kind: \"ngmodule\", type: AXChipsModule }, { kind: \"component\", type: AXPThemeLayoutBlockComponent, selector: \" axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, \" }, { kind: \"component\", type: AXPThemeLayoutListComponent, selector: \"axp-layout-list\" }, { kind: \"component\", type: AXPThemeLayoutListItemComponent, selector: \"axp-layout-list-item\" }, { kind: \"component\", type: AXPThemeLayoutListItemsGroupComponent, selector: \"axp-layout-list-group\" }, { kind: \"component\", type: AXPThemeLayoutHeaderComponent, selector: \"axp-layout-header\" }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXPGlobalSearchPopupComponent, decorators: [{\n type: Component,\n args: [{ imports: [\n CommonModule,\n FormsModule,\n //\n AXSearchBoxModule,\n AXCommonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXListNavigationModule,\n AXButtonModule,\n //\n AXSkeletonModule,\n AXChipsModule,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPThemeLayoutHeaderComponent,\n ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [AXPGlobalSearchViewModel], template: \"<axp-layout-content *translate=\\\"let t\\\">\\n <axp-layout-header class=\\\"ax-lg\\\">\\n <ax-search-box\\n [axAutoFocus]\\n [look]=\\\"'none'\\\"\\n [ngModel]=\\\"vm.text()\\\"\\n (onValueChanged)=\\\"handleTextChanged($event)\\\"\\n [placeholder]=\\\"t('search-anything', { scope: i18nScope }) | async\\\"\\n (onKeyDown)=\\\"handleSearchKeyDown($event)\\\"\\n ></ax-search-box>\\n <div class=\\\"__close-button\\\">\\n <ax-button [look]=\\\"'blank'\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"close()\\\">\\n <ax-icon icon=\\\"fa-light fa-xmark fa-sm\\\"></ax-icon>\\n </ax-button>\\n </div>\\n </axp-layout-header>\\n\\n <!-- Results Area -->\\n <axp-layout-body>\\n @if (vm.isBusy()) {\\n <ng-container *ngTemplateOutlet=\\\"skeleton\\\"></ng-container>\\n } @else if (vm.isEmpty()) {\\n <ng-container *ngTemplateOutlet=\\\"empty\\\"></ng-container>\\n } @else if (vm.isWelcome()) {\\n <ng-container *ngTemplateOutlet=\\\"welcome\\\"></ng-container>\\n } @else if (vm.isStart()) {\\n <ng-container *ngTemplateOutlet=\\\"start\\\"></ng-container>\\n } @else {\\n <ng-container *ngTemplateOutlet=\\\"result\\\"></ng-container>\\n }\\n </axp-layout-body>\\n\\n <!-- Skeleton Template -->\\n <ng-template #skeleton>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-10 ax-p-8\\\">\\n @for (item of [1, 2, 3, 4, 5]; track $index) {\\n <div class=\\\"ax-flex ax-items-center ax-gap-4\\\">\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-4 ax-h-4 ax-rounded-full\\\"></ax-skeleton>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\\\">\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-1/4 ax-h-2 ax-rounded\\\"></ax-skeleton>\\n <ax-skeleton [animated]=\\\"true\\\" class=\\\"ax-w-1/2 ax-h-2 ax-rounded\\\"></ax-skeleton>\\n </div>\\n </div>\\n }\\n </div>\\n </ng-template>\\n\\n <!-- Empty Template -->\\n <ng-template #empty>\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\\\">\\n <!-- Icon -->\\n <div class=\\\"ax-mb-4\\\">\\n <i class=\\\"fas fa-search ax-text-gray-400 ax-text-4xl\\\"></i>\\n </div>\\n <!-- Message -->\\n <div class=\\\"ax-text-center\\\">\\n <h2 class=\\\"ax-text-lg ax-font-semibold\\\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\\n <p class=\\\"ax-mt-2 ax-leading-relaxed\\\">\\n {{ t('no-result.message', { scope: i18nScope }) | async }}\\n </p>\\n </div>\\n </div>\\n </ng-template>\\n\\n <!-- Welcome Template -->\\n <ng-template #welcome>\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\\\">\\n <!-- Icon -->\\n <div class=\\\"ax-mb-4\\\">\\n <i class=\\\"fas fa-search ax-text-gray-400 ax-text-4xl\\\"></i>\\n </div>\\n <!-- Message -->\\n <div class=\\\"ax-text-center\\\">\\n <h2 class=\\\"ax-text-lg ax-font-semibold\\\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\\n <p class=\\\"ax-mt-2\\\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\\n </div>\\n </div>\\n </ng-template>\\n\\n <!-- Start Template -->\\n <ng-template #start>\\n <!-- Pinned Items -->\\n <axp-layout-list\\n *translate=\\\"let t\\\"\\n class=\\\"ax-p-4 ax-divide-none\\\"\\n (keydown)=\\\"handleListKeyDown($event)\\\"\\n axListNavigation\\n #list=\\\"axListNavigation\\\"\\n >\\n @if (vm.pinnedItems().length > 0) {\\n <axp-layout-list-group>\\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\\n @for (item of vm.pinnedItems(); track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n <!-- Recent Items -->\\n @if (vm.recentItems().length > 0) {\\n <axp-layout-list-group>\\n <axp-layout-header>\\n <axp-layout-prefix>\\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\\n </axp-layout-prefix>\\n <axp-layout-prefix class=\\\"ax-xs\\\">\\n <ax-button\\n [text]=\\\"t('clear', { scope: i18nScope }) | async\\\"\\n look=\\\"blank\\\"\\n [color]=\\\"'default'\\\"\\n (onClick)=\\\"handleClearClick($event)\\\"\\n ></ax-button>\\n </axp-layout-prefix>\\n </axp-layout-header>\\n @for (item of vm.recentItems(); track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n </axp-layout-list>\\n </ng-template>\\n\\n <!-- Result Template -->\\n <ng-template #result>\\n <axp-layout-list\\n class=\\\"ax-p-4 ax-divide-none\\\"\\n (keydown)=\\\"handleListKeyDown($event)\\\"\\n axListNavigation\\n #list=\\\"axListNavigation\\\"\\n >\\n @for (group of vm.results(); track $index) {\\n <axp-layout-list-group>\\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\\n @for (item of group.children; track $index) {\\n <axp-layout-list-item\\n (click)=\\\"vm.execute(item)\\\"\\n (keydown)=\\\"handleItemKeyDown($event, item)\\\"\\n class=\\\"ax-group\\\"\\n axListNavigationItem\\n #i=\\\"axListNavigationItem\\\"\\n [class.axp-state-focused]=\\\"i.isActive()\\\"\\n >\\n <ng-container [ngTemplateOutlet]=\\\"listItem\\\" [ngTemplateOutletContext]=\\\"{ item }\\\"></ng-container>\\n </axp-layout-list-item>\\n }\\n </axp-layout-list-group>\\n }\\n </axp-layout-list>\\n </ng-template>\\n\\n <ng-template #listItem let-item=\\\"item\\\">\\n <axp-layout-prefix>\\n <ax-icon icon=\\\"fal {{ item.icon }}\\\"></ax-icon>\\n </axp-layout-prefix>\\n <axp-layout-content>\\n <axp-layout-title class=\\\"ax-group\\\">\\n <span>{{ t(item.title) | async }}</span>\\n <span class=\\\"ax-ms-3\\\" (click)=\\\"handlePinClick($event, item)\\\">\\n <i\\n [class.ax-invisible]=\\\"!vm.isPinned(item)\\\"\\n class=\\\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\\\"\\n [class.fa-solid]=\\\"vm.isPinned(item)\\\"\\n ></i>\\n </span>\\n </axp-layout-title>\\n @if (item.parent) {\\n <axp-layout-description>\\n {{ t(item.parent.title) | async }}\\n </axp-layout-description>\\n } @else if (item.description) {\\n <axp-layout-description>\\n {{ t(item.description) | async }}\\n </axp-layout-description>\\n }\\n </axp-layout-content>\\n <axp-layout-suffix>\\n <i class=\\\"far fa-chevron-right rtl:ax-rotate-180\\\"></i>\\n </axp-layout-suffix>\\n </ng-template>\\n</axp-layout-content>\\n\", styles: [\":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9jb21tb24vc3JjL2xpYi9mZWF0dXJlcy9nbG9iYWwtc2VhcmNoL3NlYXJjaC1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29tbW9uL3NyYy9saWIvZmVhdHVyZXMvZ2xvYmFsLXNlYXJjaC9zZWFyY2gtcG9wdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0Isc0JBQXNCLEdBQ3ZCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQWdCLGNBQWMsRUFBb0MsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRCxPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3QiwyQkFBMkIsRUFDM0IsK0JBQStCLEVBQy9CLHFDQUFxQyxHQUN0QyxNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVB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QkFDZCxFQUFFO3dCQUNGLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYiw0QkFBNEI7d0JBQzVCLDJCQUEyQjt3QkFDM0IsK0JBQStCO3dCQUMvQixxQ0FBcUM7d0JBQ3JDLDZCQUE2QjtxQkFDOUIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUsXG4gIEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlLFxuICBBWExpc3ROYXZpZ2F0aW9uTW9kdWxlLFxufSBmcm9tICdAYWNvcmV4L2Nkay9saXN0LW5hdmlnYXRpb24nO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYQ2hpcHNNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY2hpcHMnO1xuaW1wb3J0IHsgQVhDbGlja0V2ZW50LCBBWENvbW1vbk1vZHVsZSwgQVhIdG1sRXZlbnQsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEJhc2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BhZ2UnO1xuaW1wb3J0IHsgQVhTZWFyY2hCb3hDb21wb25lbnQsIEFYU2VhcmNoQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlYXJjaC1ib3gnO1xuaW1wb3J0IHsgQVhTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9za2VsZXRvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFNlYXJjaERpc3BsYXlSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQge1xuICBBWFBUaGVtZUxheW91dEJsb2NrQ29tcG9uZW50LFxuICBBWFBUaGVtZUxheW91dEhlYWRlckNvbXBvbmVudCxcbiAgQVhQVGhlbWVMYXlvdXRMaXN0Q29tcG9uZW50LFxuICBBWFBUaGVtZUxheW91dExpc3RJdGVtQ29tcG9uZW50LFxuICBBWFBUaGVtZUxheW91dExpc3RJdGVtc0dyb3VwQ29tcG9uZW50LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIHZpZXdDaGlsZCwgdmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBHbG9iYWxTZWFyY2hWaWV3TW9kZWwgfSBmcm9tICcuL3NlYXJjaC52aWV3bW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICdzZWFyY2gtcG9wdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJ3NlYXJjaC1wb3B1cC5jb21wb25lbnQuc2NzcycsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgLy9cbiAgICBBWFNlYXJjaEJveE1vZHVsZSxcbiAgICBBWENvbW1vbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICAgIEFYTGlzdE5hdmlnYXRpb25Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgLy9cbiAgICBBWFNrZWxldG9uTW9kdWxlLFxuICAgIEFYQ2hpcHNNb2R1bGUsXG4gICAgQVhQVGhlbWVMYXlvdXRCbG9ja0NvbXBvbmVudCxcbiAgICBBWFBUaGVtZUxheW91dExpc3RDb21wb25lbnQsXG4gICAgQVhQVGhlbWVMYXlvdXRMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBBWFBUaGVtZUxheW91dExpc3RJdGVtc0dyb3VwQ29tcG9uZW50LFxuICAgIEFYUFRoZW1lTGF5b3V0SGVhZGVyQ29tcG9uZW50LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbQVhQR2xvYmFsU2VhcmNoVmlld01vZGVsXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQR2xvYmFsU2VhcmNoUG9wdXBDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VQYWdlQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIGkxOG5TY29wZSA9ICdnbG9iYWwtc2VhcmNoJztcblxuICBwcm90ZWN0ZWQgdm0gPSBpbmplY3QoQVhQR2xvYmFsU2VhcmNoVmlld01vZGVsKTtcblxuICBwcm90ZWN0ZWQgdGV4dDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBsaXN0ID0gdmlld0NoaWxkKEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUpO1xuICBwcml2YXRlIHNlYXJjaEJveCA9IHZpZXdDaGlsZChBWFNlYXJjaEJveENvbXBvbmVudCk7XG4gIHByaXZhdGUgaXRlbXMgPSB2aWV3Q2hpbGRyZW4oQVhMaXN0TmF2aWdhdGlvbkl0ZW1EaXJlY3RpdmUpO1xuXG4gIGFzeW5jIGhhbmRsZVRleHRDaGFuZ2VkKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQ8c3RyaW5nPikge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uKSB7XG4gICAgICBhd2FpdCB0aGlzLnZtLnNlYXJjaChlLnZhbHVlISk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgLy9cbiAgICB0aGlzLnZtLm9uSXRlbVNlbGVjdGVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKChpdGVtKSA9PiB7XG4gICAgICB0aGlzLmNsb3NlKGl0ZW0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVNlYXJjaEtleURvd24oZTogQVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4pIHtcbiAgICBjb25zdCBldmVudCA9IGUubmF0aXZlRXZlbnQhO1xuICAgIHN3aXRjaCAoZXZlbnQuY29kZSkge1xuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXMoKVswXTtcbiAgICAgICAgaWYgKGl0ZW0gJiYgdGhpcy5saXN0KCkpIHtcbiAgICAgICAgICB0aGlzLmxpc3QoKT8ubmF2aWdhdGVUbyhpdGVtKTtcbiAgICAgICAgfVxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNsZWFyQ2xpY2soJGV2ZW50OiBBWENsaWNrRXZlbnQpIHtcbiAgICB0aGlzLnZtLmNsZWFyUmVjZW50SXRlbXMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVMaXN0S2V5RG93bihlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgc3dpdGNoIChlLmNvZGUpIHtcbiAgICAgIGNhc2UgJ0Fycm93VXAnOiB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zKClbMF07XG4gICAgICAgIGlmIChpdGVtICYmIHRoaXMubGlzdCgpICYmIGl0ZW0uaXNBY3RpdmUoKSkge1xuICAgICAgICAgIHRoaXMuc2VhcmNoQm94KCk/LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdFc2NhcGUnOiB7XG4gICAgICAgIHRoaXMuc2VhcmNoQm94KCk/LmZvY3VzKCk7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUl0ZW1LZXlEb3duKGU6IEtleWJvYXJkRXZlbnQsIGl0ZW06IEFYUFNlYXJjaERpc3BsYXlSZXN1bHQpIHtcbiAgICBzd2l0Y2ggKGUuY29kZSkge1xuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgY2FzZSAnU3BhY2UnOiB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy52bS5leGVjdXRlKGl0ZW0pO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlUGluQ2xpY2soZTogRXZlbnQsIGl0ZW06IGFueSkge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy52bS50b2dnbGVQaW4oaXRlbSk7XG4gIH1cbn1cbiIsIjxheHAtbGF5b3V0LWNvbnRlbnQgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gIDxheHAtbGF5b3V0LWhlYWRlciBjbGFzcz1cImF4LWxnXCI+XG4gICAgPGF4LXNlYXJjaC1ib3hcbiAgICAgIFtheEF1dG9Gb2N1c11cbiAgICAgIFtsb29rXT1cIidub25lJ1wiXG4gICAgICBbbmdNb2RlbF09XCJ2bS50ZXh0KClcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVRleHRDaGFuZ2VkKCRldmVudClcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInQoJ3NlYXJjaC1hbnl0aGluZycsIHsgc2NvcGU6IGkxOG5TY29wZSB9KSB8IGFzeW5jXCJcbiAgICAgIChvbktleURvd24pPVwiaGFuZGxlU2VhcmNoS2V5RG93bigkZXZlbnQpXCJcbiAgICA+PC9heC1zZWFyY2gtYm94PlxuICAgIDxkaXYgY2xhc3M9XCJfX2Nsb3NlLWJ1dHRvblwiPlxuICAgICAgPGF4LWJ1dHRvbiBbbG9va109XCInYmxhbmsnXCIgY2xhc3M9XCJheC1yb3VuZGVkLWZ1bGxcIiAob25DbGljayk9XCJjbG9zZSgpXCI+XG4gICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS14bWFyayBmYS1zbVwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2F4cC1sYXlvdXQtaGVhZGVyPlxuXG4gIDwhLS0gUmVzdWx0cyBBcmVhIC0tPlxuICA8YXhwLWxheW91dC1ib2R5PlxuICAgIEBpZiAodm0uaXNCdXN5KCkpIHtcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJza2VsZXRvblwiPjwvbmctY29udGFpbmVyPlxuICAgIH0gQGVsc2UgaWYgKHZtLmlzRW1wdHkoKSkge1xuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVtcHR5XCI+PC9uZy1jb250YWluZXI+XG4gICAgfSBAZWxzZSBpZiAodm0uaXNXZWxjb21lKCkpIHtcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ3ZWxjb21lXCI+PC9uZy1jb250YWluZXI+XG4gICAgfSBAZWxzZSBpZiAodm0uaXNTdGFydCgpKSB7XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3RhcnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZXN1bHRcIj48L25nLWNvbnRhaW5lcj5cbiAgICB9XG4gIDwvYXhwLWxheW91dC1ib2R5PlxuXG4gIDwhLS0gU2tlbGV0b24gVGVtcGxhdGUgLS0+XG4gIDxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTEwIGF4LXAtOFwiPlxuICAgICAgQGZvciAoaXRlbSBvZiBbMSwgMiwgMywgNCwgNV07IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTRcIj5cbiAgICAgICAgICA8YXgtc2tlbGV0b24gW2FuaW1hdGVkXT1cInRydWVcIiBjbGFzcz1cImF4LXctNCBheC1oLTQgYXgtcm91bmRlZC1mdWxsXCI+PC9heC1za2VsZXRvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMiBheC1mbGV4LTFcIj5cbiAgICAgICAgICAgIDxheC1za2VsZXRvbiBbYW5pbWF0ZWRdPVwidHJ1ZVwiIGNsYXNzPVwiYXgtdy0xLzQgYXgtaC0yIGF4LXJvdW5kZWRcIj48L2F4LXNrZWxldG9uPlxuICAgICAgICAgICAgPGF4LXNrZWxldG9uIFthbmltYXRlZF09XCJ0cnVlXCIgY2xhc3M9XCJheC13LTEvMiBheC1oLTIgYXgtcm91bmRlZFwiPjwvYXgtc2tlbGV0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gRW1wdHkgVGVtcGxhdGUgLS0+XG4gIDxuZy10ZW1wbGF0ZSAjZW1wdHk+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWgtZnVsbCBheC1yb3VuZGVkLW1kIGF4LXAtOFwiPlxuICAgICAgPCEtLSBJY29uIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LW1iLTRcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc2VhcmNoIGF4LXRleHQtZ3JheS00MDAgYXgtdGV4dC00eGxcIj48L2k+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gTWVzc2FnZSAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LWNlbnRlclwiPlxuICAgICAgICA8aDIgY2xhc3M9XCJheC10ZXh0LWxnIGF4LWZvbnQtc2VtaWJvbGRcIj57eyB0KCduby1yZXN1bHQudGl0bGUnLCB7IHNjb3BlOiBpMThuU2NvcGUgfSkgfCBhc3luYyB9fTwvaDI+XG4gICAgICAgIDxwIGNsYXNzPVwiYXgtbXQtMiBheC1sZWFkaW5nLXJlbGF4ZWRcIj5cbiAgICAgICAgICB7eyB0KCduby1yZXN1bHQubWVzc2FnZScsIHsgc2NvcGU6IGkxOG5TY29wZSB9KSB8IGFzeW5jIH19XG4gICAgICAgIDwvcD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gV2VsY29tZSBUZW1wbGF0ZSAtLT5cbiAgPG5nLXRlbXBsYXRlICN3ZWxjb21lPlxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1oLWZ1bGwgYXgtcm91bmRlZC1tZCBheC1wLThcIj5cbiAgICAgIDwhLS0gSWNvbiAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1tYi00XCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNlYXJjaCBheC10ZXh0LWdyYXktNDAwIGF4LXRleHQtNHhsXCI+PC9pPlxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIE1lc3NhZ2UgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgPGgyIGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LXNlbWlib2xkXCI+e3sgdCgnc3RhcnQudGl0bGUnLCB7IHNjb3BlOiBpMThuU2NvcGUgfSkgfCBhc3luYyB9fTwvaDI+XG4gICAgICAgIDxwIGNsYXNzPVwiYXgtbXQtMlwiPnt7IHQoJ3N0YXJ0Lm1lc3NhZ2UnLCB7IHNjb3BlOiBpMThuU2NvcGUgfSkgfCBhc3luYyB9fTwvcD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gU3RhcnQgVGVtcGxhdGUgLS0+XG4gIDxuZy10ZW1wbGF0ZSAjc3RhcnQ+XG4gICAgPCEtLSBQaW5uZWQgSXRlbXMgLS0+XG4gICAgPGF4cC1sYXlvdXQtbGlzdFxuICAgICAgKnRyYW5zbGF0ZT1cImxldCB0XCJcbiAgICAgIGNsYXNzPVwiYXgtcC00IGF4LWRpdmlkZS1ub25lXCJcbiAgICAgIChrZXlkb3duKT1cImhhbmRsZUxpc3RLZXlEb3duKCRldmVudClcIlxuICAgICAgYXhMaXN0TmF2aWdhdGlvblxuICAgICAgI2xpc3Q9XCJheExpc3ROYXZpZ2F0aW9uXCJcbiAgICA+XG4gICAgICBAaWYgKHZtLnBpbm5lZEl0ZW1zKCkubGVuZ3RoID4gMCkge1xuICAgICAgICA8YXhwLWxheW91dC1saXN0LWdyb3VwPlxuICAgICAgICAgIDxheHAtbGF5b3V0LXRpdGxlPnt7IHQoJ3Bpbm5lZCcsIHsgc2NvcGU6IGkxOG5TY29wZSB9KSB8IGFzeW5jIH19PC9heHAtbGF5b3V0LXRpdGxlPlxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2Ygdm0ucGlubmVkSXRlbXMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8YXhwLWxheW91dC1saXN0LWl0ZW1cbiAgICAgICAgICAgICAgKGNsaWNrKT1cInZtLmV4ZWN1dGUoaXRlbSlcIlxuICAgICAgICAgICAgICAoa2V5ZG93bik9XCJoYW5kbGVJdGVtS2V5RG93bigkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJheC1ncm91cFwiXG4gICAgICAgICAgICAgIGF4TGlzdE5hdmlnYXRpb25JdGVtXG4gICAgICAgICAgICAgICNpPVwiYXhMaXN0TmF2aWdhdGlvbkl0ZW1cIlxuICAgICAgICAgICAgICBbY2xhc3MuYXhwLXN0YXRlLWZvY3VzZWRdPVwiaS5pc0FjdGl2ZSgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsaXN0SXRlbVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9heHAtbGF5b3V0LWxpc3QtaXRlbT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvYXhwLWxheW91dC1saXN0LWdyb3VwPlxuICAgICAgfVxuICAgICAgPCEtLSBSZWNlbnQgSXRlbXMgLS0+XG4gICAgICBAaWYgKHZtLnJlY2VudEl0ZW1zKCkubGVuZ3RoID4gMCkge1xuICAgICAgICA8YXhwLWxheW91dC1saXN0LWdyb3VwPlxuICAgICAgICAgIDxheHAtbGF5b3V0LWhlYWRlcj5cbiAgICAgICAgICAgIDxheHAtbGF5b3V0LXByZWZpeD5cbiAgICAgICAgICAgICAgPGF4cC1sYXlvdXQtdGl0bGU+e3sgdCgncmVjZW50JywgeyBzY29wZTogaTE4blNjb3BlIH0pIHwgYXN5bmMgfX08L2F4cC1sYXlvdXQtdGl0bGU+XG4gICAgICAgICAgICA8L2F4cC1sYXlvdXQtcHJlZml4PlxuICAgICAgICAgICAgPGF4cC1sYXlvdXQtcHJlZml4IGNsYXNzPVwiYXgteHNcIj5cbiAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgIFt0ZXh0XT1cInQoJ2NsZWFyJywgeyBzY29wZTogaTE4blNjb3BlIH0pIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIGxvb2s9XCJibGFua1wiXG4gICAgICAgICAgICAgICAgW2NvbG9yXT1cIidkZWZhdWx0J1wiXG4gICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlQ2xlYXJDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgPjwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgPC9heHAtbGF5b3V0LXByZWZpeD5cbiAgICAgICAgICA8L2F4cC1sYXlvdXQtaGVhZGVyPlxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2Ygdm0ucmVjZW50SXRlbXMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8YXhwLWxheW91dC1saXN0LWl0ZW1cbiAgICAgICAgICAgICAgKGNsaWNrKT1cInZtLmV4ZWN1dGUoaXRlbSlcIlxuICAgICAgICAgICAgICAoa2V5ZG93bik9XCJoYW5kbGVJdGVtS2V5RG93bigkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJheC1ncm91cFwiXG4gICAgICAgICAgICAgIGF4TGlzdE5hdmlnYXRpb25JdGVtXG4gICAgICAgICAgICAgICNpPVwiYXhMaXN0TmF2aWdhdGlvbkl0ZW1cIlxuICAgICAgICAgICAgICBbY2xhc3MuYXhwLXN0YXRlLWZvY3VzZWRdPVwiaS5pc0FjdGl2ZSgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsaXN0SXRlbVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9heHAtbGF5b3V0LWxpc3QtaXRlbT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvYXhwLWxheW91dC1saXN0LWdyb3VwPlxuICAgICAgfVxuICAgIDwvYXhwLWxheW91dC1saXN0PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gUmVzdWx0IFRlbXBsYXRlIC0tPlxuICA8bmctdGVtcGxhdGUgI3Jlc3VsdD5cbiAgICA8YXhwLWxheW91dC1saXN0XG4gICAgICBjbGFzcz1cImF4LXAtNCBheC1kaXZpZGUtbm9uZVwiXG4gICAgICAoa2V5ZG93bik9XCJoYW5kbGVMaXN0S2V5RG93bigkZXZlbnQpXCJcbiAgICAgIGF4TGlzdE5hdmlnYXRpb25cbiAgICAgICNsaXN0PVwiYXhMaXN0TmF2aWdhdGlvblwiXG4gICAgPlxuICAgICAgQGZvciAoZ3JvdXAgb2Ygdm0ucmVzdWx0cygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGF4cC1sYXlvdXQtbGlzdC1ncm91cD5cbiAgICAgICAgICA8YXhwLWxheW91dC10aXRsZT4ge3sgdChncm91cC50aXRsZSkgfCBhc3luYyB9fTwvYXhwLWxheW91dC10aXRsZT5cbiAgICAgICAgICBAZm9yIChpdGVtIG9mIGdyb3VwLmNoaWxkcmVuOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxheHAtbGF5b3V0LWxpc3QtaXRlbVxuICAgICAgICAgICAgICAoY2xpY2spPVwidm0uZXhlY3V0ZShpdGVtKVwiXG4gICAgICAgICAgICAgIChrZXlkb3duKT1cImhhbmRsZUl0ZW1LZXlEb3duKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICAgICBjbGFzcz1cImF4LWdyb3VwXCJcbiAgICAgICAgICAgICAgYXhMaXN0TmF2aWdhdGlvbkl0ZW1cbiAgICAgICAgICAgICAgI2k9XCJheExpc3ROYXZpZ2F0aW9uSXRlbVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5heHAtc3RhdGUtZm9jdXNlZF09XCJpLmlzQWN0aXZlKClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxpc3RJdGVtXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2F4cC1sYXlvdXQtbGlzdC1pdGVtPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9heHAtbGF5b3V0LWxpc3QtZ3JvdXA+XG4gICAgICB9XG4gICAgPC9heHAtbGF5b3V0LWxpc3Q+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlICNsaXN0SXRlbSBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8YXhwLWxheW91dC1wcmVmaXg+XG4gICAgICA8YXgtaWNvbiBpY29uPVwiZmFsIHt7IGl0ZW0uaWNvbiB9fVwiPjwvYXgtaWNvbj5cbiAgICA8L2F4cC1sYXlvdXQtcHJlZml4PlxuICAgIDxheHAtbGF5b3V0LWNvbnRlbnQ+XG4gICAgICA8YXhwLWxheW91dC10aXRsZSBjbGFzcz1cImF4LWdyb3VwXCI+XG4gICAgICAgIDxzcGFuPnt7IHQoaXRlbS50aXRsZSkgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1tcy0zXCIgKGNsaWNrKT1cImhhbmRsZVBpbkNsaWNrKCRldmVudCwgaXRlbSlcIj5cbiAgICAgICAgICA8aVxuICAgICAgICAgICAgW2NsYXNzLmF4LWludmlzaWJsZV09XCIhdm0uaXNQaW5uZWQoaXRlbSlcIlxuICAgICAgICAgICAgY2xhc3M9XCJmYS1saWdodCBmYS10aHVtYnRhY2sgYXgtcm90YXRlLTQ1IGdyb3VwLWhvdmVyOiFheC12aXNpYmxlXCJcbiAgICAgICAgICAgIFtjbGFzcy5mYS1zb2xpZF09XCJ2bS5pc1Bpbm5lZChpdGVtKVwiXG4gICAgICAgICAgPjwvaT5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9heHAtbGF5b3V0LXRpdGxlPlxuICAgICAgQGlmIChpdGVtLnBhcmVudCkge1xuICAgICAgICA8YXhwLWxheW91dC1kZXNjcmlwdGlvbj5cbiAgICAgICAgICB7eyB0KGl0ZW0ucGFyZW50LnRpdGxlKSB8IGFzeW5jIH19XG4gICAgICAgIDwvYXhwLWxheW91dC1kZXNjcmlwdGlvbj5cbiAgICAgIH0gQGVsc2UgaWYgKGl0ZW0uZGVzY3JpcHRpb24pIHtcbiAgICAgICAgPGF4cC1sYXlvdXQtZGVzY3JpcHRpb24+XG4gICAgICAgICAge3sgdChpdGVtLmRlc2NyaXB0aW9uKSB8IGFzeW5jIH19XG4gICAgICAgIDwvYXhwLWxheW91dC1kZXNjcmlwdGlvbj5cbiAgICAgIH1cbiAgICA8L2F4cC1sYXlvdXQtY29udGVudD5cbiAgICA8YXhwLWxheW91dC1zdWZmaXg+XG4gICAgICA8aSBjbGFzcz1cImZhciBmYS1jaGV2cm9uLXJpZ2h0IHJ0bDpheC1yb3RhdGUtMTgwXCI+PC9pPlxuICAgIDwvYXhwLWxheW91dC1zdWZmaXg+XG4gIDwvbmctdGVtcGxhdGU+XG48L2F4cC1sYXlvdXQtY29udGVudD5cbiJdfQ=="],"names":["i2","i5","i6","i8"],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { AXFormatService } from '@acorex/core/format';
2
2
  import { AXTranslationService } from '@acorex/core/translation';
3
- import { AXPWidgetsList } from '@acorex/modules/common';
4
3
  import { AXPRegionalService } from '@acorex/platform/common';
5
4
  import { objectKeyValueTransforms } from '@acorex/platform/core';
6
- import { A as AXPRegionalSetting } from './acorex-modules-platform-management-acorex-modules-platform-management-BLhzWiXM.mjs';
5
+ import { a as AXPWidgetsList, b as AXPRegionalSetting } from './acorex-modules-common-acorex-modules-common-DQESb8jf.mjs';
7
6
 
8
7
  class AXMRegionalSettingProvider {
9
8
  constructor(injector) {
@@ -470,4 +469,4 @@ class AXMRegionalSettingProvider {
470
469
  }
471
470
 
472
471
  export { AXMRegionalSettingProvider };
473
- //# sourceMappingURL=acorex-modules-platform-management-settings.provider-intHn3XI.mjs.map
472
+ //# sourceMappingURL=acorex-modules-common-settings.provider-ha75F6g5.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-common-settings.provider-ha75F6g5.mjs","sources":["../tmp-esm2022/common/lib/features/regional/settings.provider.js"],"sourcesContent":["import { AXFormatService } from '@acorex/core/format';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPRegionalService, } from '@acorex/platform/common';\nimport { objectKeyValueTransforms } from '@acorex/platform/core';\nimport { AXPRegionalSetting } from './settings.keys';\nimport { AXPWidgetsList } from '../../widgets-names-list';\nexport class AXMRegionalSettingProvider {\n constructor(injector) {\n this.injector = injector;\n this.regionalService = this.injector.get(AXPRegionalService);\n this.translateService = this.injector.get(AXTranslationService);\n this.formatService = this.injector.get(AXFormatService);\n }\n async provide(context) {\n const trans = async (key) => await this.translateService.translateAsync(`settings.regional.${key}`, { scope: 'regional' });\n const profiles = await this.regionalService.getLocaleProfiles();\n const defaultProfile = profiles.find((p) => p.code === 'en-US');\n context\n .addGroup('regional-settings', await trans('title'), await trans('description'), 'fa-light fa-earth-americas')\n // Date & Time Section\n .addSection('date-time', await trans('datetime.title'), await trans('datetime.description'))\n .addSetting({\n key: AXPRegionalSetting.TimeZone,\n title: await trans('datetime.timezone.title'),\n scope: 'T',\n isInherited: true,\n defaultValue: await this.regionalService.getBrowserTimeZoneCode(),\n valueTransforms: objectKeyValueTransforms('code'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'code',\n dataSource: await this.regionalService.getTimeZones(),\n },\n },\n description: await trans('datetime.timezone.description'),\n })\n .endSection()\n // Region Section\n .addSection('region', await trans('region.title'), await trans('region.description'))\n .addSetting({\n key: AXPRegionalSetting.LocaleProfile,\n title: await trans('region.format.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.code,\n valueTransforms: objectKeyValueTransforms('code'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'code',\n dataSource: profiles,\n },\n },\n description: await trans('region.format.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.Language,\n title: await trans('region.language.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: await this.translateService.getDefaultLang(),\n valueTransforms: objectKeyValueTransforms('code'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'code',\n dataSource: await this.regionalService.getAvailableLanguages(),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: `{{ widget.setValue(context.eval('${AXPRegionalSetting.LocaleProfile}')) }}`,\n },\n ],\n },\n description: await trans('region.language.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.Calendar,\n title: await trans('region.calendar.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.calendar.system,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n {\n text: await trans('region.calendar.options.gregorian'),\n value: 'gregorian',\n },\n {\n text: await trans('region.calendar.options.hijri'),\n value: 'solar-hijri',\n },\n ],\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').calendar.system) }}`,\n ],\n },\n ],\n },\n description: await trans('region.calendar.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.FirstDayOfWeek,\n title: await trans('region.firstday.title'),\n scope: 'T',\n isInherited: false,\n defaultValue: defaultProfile.calendar.week.startsOn,\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n {\n text: await trans('region.firstday.options.saturday'),\n value: 6,\n },\n {\n text: await trans('region.firstday.options.sunday'),\n value: 0,\n },\n {\n text: await trans('region.firstday.options.monday'),\n value: 1,\n },\n ],\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').calendar.week.startsOn) }}`,\n ],\n },\n ],\n },\n },\n description: await trans('region.firstday.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.WeekendDays,\n title: await trans('region.workdays.title'),\n scope: 'T',\n isInherited: false,\n defaultValue: defaultProfile.calendar.week.weekends,\n widget: {\n type: AXPWidgetsList.Editors.SelectionList,\n options: {\n multiple: true,\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { text: await trans('region.workdays.options.monday'), value: 1 },\n { text: await trans('region.workdays.options.tuesday'), value: 2 },\n { text: await trans('region.workdays.options.wednesday'), value: 3 },\n { text: await trans('region.workdays.options.thursday'), value: 4 },\n { text: await trans('region.workdays.options.friday'), value: 5 },\n { text: await trans('region.workdays.options.saturday'), value: 6 },\n { text: await trans('region.workdays.options.sunday'), value: 0 },\n ],\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').calendar.week.weekends) }}`,\n ],\n },\n ],\n },\n description: await trans('region.workdays.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.ShortDate,\n title: await trans('region.shortdate.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.formats.date.medium,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: `${c.formats.date.medium} (${await this.formatService.format(new Date(), 'datetime', { format: c.formats.date.medium })})`,\n value: c.formats.date.medium,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').formats.date.short) }}`,\n ],\n },\n ],\n },\n description: await trans('region.shortdate.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.LongDate,\n title: await trans('region.longdate.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.formats.date.long,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: `${c.formats.date.long} (${await this.formatService.format(new Date(), 'datetime', { format: c.formats.date.long })})`,\n value: c.formats.date.long,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').formats.date.long) }}`,\n ],\n },\n ],\n },\n description: await trans('region.longdate.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.ShortTime,\n title: await trans('region.shorttime.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.formats.time.short,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: `${c.formats.time.short} (${await this.formatService.format(new Date(), 'datetime', { format: c.formats.time.short })})`,\n value: c.formats.time.short,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').formats.time.short) }}`,\n ],\n },\n ],\n },\n description: await trans('region.shorttime.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.LongTime,\n title: await trans('region.longtime.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.formats.time.long,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: `${c.formats.time.long} (${await this.formatService.format(new Date(), 'datetime', { format: c.formats.time.long })})`,\n value: c.formats.time.long,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').formats.time.long) }}`,\n ],\n },\n ],\n },\n description: await trans('region.longtime.description'),\n })\n .endSection()\n // Unit Settings Section\n .addSection('units', await trans('units.title'), await trans('units.description'))\n .addSetting({\n key: AXPRegionalSetting.TemperatureUnits,\n title: await trans('units.temperature.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.temperature,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: await trans(`units.temperature.options.${c.units.temperature}`),\n value: c.units.temperature,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.temperature) }}`,\n ],\n },\n ],\n },\n description: await trans('units.temperature.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.DistanceUnits,\n title: await trans('units.distance.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.distance,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: await trans(`units.distance.options.${c.units.distance}`),\n value: c.units.distance,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.distance) }}`,\n ],\n },\n ],\n },\n description: await trans('units.distance.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.WeightUnits,\n title: await trans('units.weight.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.weight,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: await trans(`units.weight.options.${c.units.weight}`),\n value: c.units.weight,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.weight) }}`,\n ],\n },\n ],\n },\n description: await trans('units.weight.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.VolumeUnits,\n title: await trans('units.volume.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.volume,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { text: await trans('units.volume.options.liters'), value: 'liters' },\n { text: await trans('units.volume.options.gallons'), value: 'gallons' },\n ],\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.volume) }}`,\n ],\n },\n ],\n },\n description: await trans('units.volume.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.SpeedUnits,\n title: await trans('units.speed.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.speed,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: await trans(`units.speed.options.${c.units.speed}`),\n value: c.units.speed,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.speed) }}`,\n ],\n },\n ],\n },\n description: await trans('units.speed.description'),\n })\n .addSetting({\n key: AXPRegionalSetting.AreaUnits,\n title: await trans('units.area.title'),\n scope: 'U',\n isInherited: true,\n defaultValue: defaultProfile.units.area,\n valueTransforms: objectKeyValueTransforms('value'),\n widget: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: await Promise.all(profiles.map(async (c) => ({\n text: await trans(`units.area.options.${c.units.area}`),\n value: c.units.area,\n }))),\n },\n triggers: [\n {\n event: `{{ events.context('${AXPRegionalSetting.LocaleProfile}') }}`,\n action: [\n `{{ widget.setValue(widget.find('${AXPRegionalSetting.LocaleProfile}').output('item').units.area) }}`,\n ],\n },\n ],\n },\n description: await trans('units.area.description'),\n })\n .endSection()\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvY29tbW9uL3NyYy9saWIvZmVhdHVyZXMvcmVnaW9uYWwvc2V0dGluZ3MucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCxrQkFBa0IsR0FHbkIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsTUFBTSxPQUFPLDBCQUEwQjtJQUtyQyxZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBSjlCLG9CQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUMvQyxxQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzNELGtCQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFMUIsQ0FBQztJQUUzQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTRDO1FBQ3hELE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFXLEVBQUUsRUFBRSxDQUNsQyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMscUJBQXFCLEdBQUcsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7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Qzt5QkFDdEc7cUJBQ0Y7aUJBQ0Y7YUFDRjtZQUNELFdBQVcsRUFBRSxNQUFNLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQztTQUNuRCxDQUFDO2FBQ0QsVUFBVSxFQUFFO2FBQ1osUUFBUSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhGb3JtYXRTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQge1xuICBBWFBSZWdpb25hbFNlcnZpY2UsXG4gIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIsXG4gIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBvYmplY3RLZXlWYWx1ZVRyYW5zZm9ybXMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUFJlZ2lvbmFsU2V0dGluZyB9IGZyb20gJy4vc2V0dGluZ3Mua2V5cyc7XG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJy4uLy4uL3dpZGdldHMtbmFtZXMtbGlzdCc7XG5leHBvcnQgY2xhc3MgQVhNUmVnaW9uYWxTZXR0aW5nUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgcHJpdmF0ZSByZWdpb25hbFNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBWFBSZWdpb25hbFNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybWF0U2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEFYRm9ybWF0U2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHsgfVxuXG4gIGFzeW5jIHByb3ZpZGUoY29udGV4dDogQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB0cmFucyA9IGFzeW5jIChrZXk6IHN0cmluZykgPT5cbiAgICAgIGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhgc2V0dGluZ3MucmVnaW9uYWwuJHtrZXl9YCwgeyBzY29wZTogJ3JlZ2lvbmFsJyB9KTtcbiAgICBjb25zdCBwcm9maWxlcyA9IGF3YWl0IHRoaXMucmVnaW9uYWxTZXJ2aWNlLmdldExvY2FsZVByb2ZpbGVzKCk7XG4gICAgY29uc3QgZGVmYXVsdFByb2ZpbGUgPSBwcm9maWxlcy5maW5kKChwKSA9PiBwLmNvZGUgPT09ICdlbi1VUycpITtcblxuICAgIGNvbnRleHRcbiAgICAgIC5hZGRHcm91cCgncmVnaW9uYWwtc2V0dGluZ3MnLCBhd2FpdCB0cmFucygndGl0bGUnKSwgYXdhaXQgdHJhbnMoJ2Rlc2NyaXB0aW9uJyksICdmYS1saWdodCBmYS1lYXJ0aC1hbWVyaWNhcycpXG5cbiAgICAgIC8vIERhdGUgJiBUaW1lIFNlY3Rpb25cbiAgICAgIC5hZGRTZWN0aW9uKCdkYXRlLXRpbWUnLCBhd2FpdCB0cmFucygnZGF0ZXRpbWUudGl0bGUnKSwgYXdhaXQgdHJhbnMoJ2RhdGV0aW1lLmRlc2NyaXB0aW9uJykpXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLlRpbWVab25lLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ2RhdGV0aW1lLnRpbWV6b25lLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVCcsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGF3YWl0IHRoaXMucmVnaW9uYWxTZXJ2aWNlLmdldEJyb3dzZXJUaW1lWm9uZUNvZGUoKSxcbiAgICAgICAgdmFsdWVUcmFuc2Zvcm1zOiBvYmplY3RLZXlWYWx1ZVRyYW5zZm9ybXMoJ2NvZGUnKSxcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5TZWxlY3RCb3gsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2NvZGUnLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYXdhaXQgdGhpcy5yZWdpb25hbFNlcnZpY2UuZ2V0VGltZVpvbmVzKCksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdkYXRldGltZS50aW1lem9uZS5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5lbmRTZWN0aW9uKClcblxuICAgICAgLy8gUmVnaW9uIFNlY3Rpb25cbiAgICAgIC5hZGRTZWN0aW9uKCdyZWdpb24nLCBhd2FpdCB0cmFucygncmVnaW9uLnRpdGxlJyksIGF3YWl0IHRyYW5zKCdyZWdpb24uZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZSxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdyZWdpb24uZm9ybWF0LnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLmNvZGUsXG4gICAgICAgIHZhbHVlVHJhbnNmb3Jtczogb2JqZWN0S2V5VmFsdWVUcmFuc2Zvcm1zKCdjb2RlJyksXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdjb2RlJyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IHByb2ZpbGVzLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLmZvcm1hdC5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuTGFuZ3VhZ2UsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygncmVnaW9uLmxhbmd1YWdlLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXREZWZhdWx0TGFuZygpLFxuICAgICAgICB2YWx1ZVRyYW5zZm9ybXM6IG9iamVjdEtleVZhbHVlVHJhbnNmb3JtcygnY29kZScpLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICB2YWx1ZUZpZWxkOiAnY29kZScsXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhd2FpdCB0aGlzLnJlZ2lvbmFsU2VydmljZS5nZXRBdmFpbGFibGVMYW5ndWFnZXMoKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGV2ZW50OiBge3sgZXZlbnRzLmNvbnRleHQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9JykgfX1gLFxuICAgICAgICAgICAgICBhY3Rpb246IGB7eyB3aWRnZXQuc2V0VmFsdWUoY29udGV4dC5ldmFsKCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpKSB9fWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLmxhbmd1YWdlLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLkNhbGVuZGFyLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5jYWxlbmRhci50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1UnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBkZWZhdWx0UHJvZmlsZS5jYWxlbmRhci5zeXN0ZW0sXG4gICAgICAgIHZhbHVlVHJhbnNmb3Jtczogb2JqZWN0S2V5VmFsdWVUcmFuc2Zvcm1zKCd2YWx1ZScpLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygncmVnaW9uLmNhbGVuZGFyLm9wdGlvbnMuZ3JlZ29yaWFuJyksXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdncmVnb3JpYW4nLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5jYWxlbmRhci5vcHRpb25zLmhpanJpJyksXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdzb2xhci1oaWpyaScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykuY2FsZW5kYXIuc3lzdGVtKSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLmNhbGVuZGFyLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFJlZ2lvbmFsU2V0dGluZy5GaXJzdERheU9mV2VlayxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdyZWdpb24uZmlyc3RkYXkudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IGZhbHNlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLmNhbGVuZGFyLndlZWsuc3RhcnRzT24sXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXG4gICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdyZWdpb24uZmlyc3RkYXkub3B0aW9ucy5zYXR1cmRheScpLFxuICAgICAgICAgICAgICAgIHZhbHVlOiA2LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5maXJzdGRheS5vcHRpb25zLnN1bmRheScpLFxuICAgICAgICAgICAgICAgIHZhbHVlOiAwLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5maXJzdGRheS5vcHRpb25zLm1vbmRheScpLFxuICAgICAgICAgICAgICAgIHZhbHVlOiAxLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBldmVudDogYHt7IGV2ZW50cy5jb250ZXh0KCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpIH19YCxcbiAgICAgICAgICAgICAgICBhY3Rpb246IFtcbiAgICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykuY2FsZW5kYXIud2Vlay5zdGFydHNPbikgfX1gLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLmZpcnN0ZGF5LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFJlZ2lvbmFsU2V0dGluZy5XZWVrZW5kRGF5cyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdyZWdpb24ud29ya2RheXMudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdUJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IGZhbHNlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLmNhbGVuZGFyLndlZWsud2Vla2VuZHMsXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0aW9uTGlzdCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXG4gICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgeyB0ZXh0OiBhd2FpdCB0cmFucygncmVnaW9uLndvcmtkYXlzLm9wdGlvbnMubW9uZGF5JyksIHZhbHVlOiAxIH0sXG4gICAgICAgICAgICAgIHsgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi53b3JrZGF5cy5vcHRpb25zLnR1ZXNkYXknKSwgdmFsdWU6IDIgfSxcbiAgICAgICAgICAgICAgeyB0ZXh0OiBhd2FpdCB0cmFucygncmVnaW9uLndvcmtkYXlzLm9wdGlvbnMud2VkbmVzZGF5JyksIHZhbHVlOiAzIH0sXG4gICAgICAgICAgICAgIHsgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi53b3JrZGF5cy5vcHRpb25zLnRodXJzZGF5JyksIHZhbHVlOiA0IH0sXG4gICAgICAgICAgICAgIHsgdGV4dDogYXdhaXQgdHJhbnMoJ3JlZ2lvbi53b3JrZGF5cy5vcHRpb25zLmZyaWRheScpLCB2YWx1ZTogNSB9LFxuICAgICAgICAgICAgICB7IHRleHQ6IGF3YWl0IHRyYW5zKCdyZWdpb24ud29ya2RheXMub3B0aW9ucy5zYXR1cmRheScpLCB2YWx1ZTogNiB9LFxuICAgICAgICAgICAgICB7IHRleHQ6IGF3YWl0IHRyYW5zKCdyZWdpb24ud29ya2RheXMub3B0aW9ucy5zdW5kYXknKSwgdmFsdWU6IDAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0cmlnZ2VyczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBldmVudDogYHt7IGV2ZW50cy5jb250ZXh0KCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpIH19YCxcbiAgICAgICAgICAgICAgYWN0aW9uOiBbXG4gICAgICAgICAgICAgICAgYHt7IHdpZGdldC5zZXRWYWx1ZSh3aWRnZXQuZmluZCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKS5vdXRwdXQoJ2l0ZW0nKS5jYWxlbmRhci53ZWVrLndlZWtlbmRzKSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLndvcmtkYXlzLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFJlZ2lvbmFsU2V0dGluZy5TaG9ydERhdGUsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygncmVnaW9uLnNob3J0ZGF0ZS50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1UnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBkZWZhdWx0UHJvZmlsZS5mb3JtYXRzLmRhdGUubWVkaXVtLFxuICAgICAgICB2YWx1ZVRyYW5zZm9ybXM6IG9iamVjdEtleVZhbHVlVHJhbnNmb3JtcygndmFsdWUnKSxcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5TZWxlY3RCb3gsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgIHRleHRGaWVsZDogJ3RleHQnLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICAgIHByb2ZpbGVzLm1hcChhc3luYyAoYykgPT4gKHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBgJHtjLmZvcm1hdHMuZGF0ZS5tZWRpdW19ICgke2F3YWl0IHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQobmV3IERhdGUoKSwgJ2RhdGV0aW1lJywgeyBmb3JtYXQ6IGMuZm9ybWF0cy5kYXRlLm1lZGl1bSB9KX0pYCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogYy5mb3JtYXRzLmRhdGUubWVkaXVtLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykuZm9ybWF0cy5kYXRlLnNob3J0KSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLnNob3J0ZGF0ZS5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuTG9uZ0RhdGUsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygncmVnaW9uLmxvbmdkYXRlLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLmZvcm1hdHMuZGF0ZS5sb25nLFxuICAgICAgICB2YWx1ZVRyYW5zZm9ybXM6IG9iamVjdEtleVZhbHVlVHJhbnNmb3JtcygndmFsdWUnKSxcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5TZWxlY3RCb3gsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgIHRleHRGaWVsZDogJ3RleHQnLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICAgIHByb2ZpbGVzLm1hcChhc3luYyAoYykgPT4gKHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBgJHtjLmZvcm1hdHMuZGF0ZS5sb25nfSAoJHthd2FpdCB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KG5ldyBEYXRlKCksICdkYXRldGltZScsIHsgZm9ybWF0OiBjLmZvcm1hdHMuZGF0ZS5sb25nIH0pfSlgLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBjLmZvcm1hdHMuZGF0ZS5sb25nLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykuZm9ybWF0cy5kYXRlLmxvbmcpIH19YCxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCdyZWdpb24ubG9uZ2RhdGUuZGVzY3JpcHRpb24nKSxcbiAgICAgIH0pXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLlNob3J0VGltZSxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCdyZWdpb24uc2hvcnR0aW1lLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLmZvcm1hdHMudGltZS5zaG9ydCxcbiAgICAgICAgdmFsdWVUcmFuc2Zvcm1zOiBvYmplY3RLZXlWYWx1ZVRyYW5zZm9ybXMoJ3ZhbHVlJyksXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXG4gICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICBwcm9maWxlcy5tYXAoYXN5bmMgKGMpID0+ICh7XG4gICAgICAgICAgICAgICAgdGV4dDogYCR7Yy5mb3JtYXRzLnRpbWUuc2hvcnR9ICgke2F3YWl0IHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQobmV3IERhdGUoKSwgJ2RhdGV0aW1lJywgeyBmb3JtYXQ6IGMuZm9ybWF0cy50aW1lLnNob3J0IH0pfSlgLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBjLmZvcm1hdHMudGltZS5zaG9ydCxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGV2ZW50OiBge3sgZXZlbnRzLmNvbnRleHQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9JykgfX1gLFxuICAgICAgICAgICAgICBhY3Rpb246IFtcbiAgICAgICAgICAgICAgICBge3sgd2lkZ2V0LnNldFZhbHVlKHdpZGdldC5maW5kKCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpLm91dHB1dCgnaXRlbScpLmZvcm1hdHMudGltZS5zaG9ydCkgfX1gLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBkZXNjcmlwdGlvbjogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5zaG9ydHRpbWUuZGVzY3JpcHRpb24nKSxcbiAgICAgIH0pXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLkxvbmdUaW1lLFxuICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnMoJ3JlZ2lvbi5sb25ndGltZS50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1UnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBkZWZhdWx0UHJvZmlsZS5mb3JtYXRzLnRpbWUubG9uZyxcbiAgICAgICAgdmFsdWVUcmFuc2Zvcm1zOiBvYmplY3RLZXlWYWx1ZVRyYW5zZm9ybXMoJ3ZhbHVlJyksXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXG4gICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICBwcm9maWxlcy5tYXAoYXN5bmMgKGMpID0+ICh7XG4gICAgICAgICAgICAgICAgdGV4dDogYCR7Yy5mb3JtYXRzLnRpbWUubG9uZ30gKCR7YXdhaXQgdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdChuZXcgRGF0ZSgpLCAnZGF0ZXRpbWUnLCB7IGZvcm1hdDogYy5mb3JtYXRzLnRpbWUubG9uZyB9KX0pYCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogYy5mb3JtYXRzLnRpbWUubG9uZyxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGV2ZW50OiBge3sgZXZlbnRzLmNvbnRleHQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9JykgfX1gLFxuICAgICAgICAgICAgICBhY3Rpb246IFtcbiAgICAgICAgICAgICAgICBge3sgd2lkZ2V0LnNldFZhbHVlKHdpZGdldC5maW5kKCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpLm91dHB1dCgnaXRlbScpLmZvcm1hdHMudGltZS5sb25nKSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygncmVnaW9uLmxvbmd0aW1lLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmVuZFNlY3Rpb24oKVxuXG4gICAgICAvLyBVbml0IFNldHRpbmdzIFNlY3Rpb25cbiAgICAgIC5hZGRTZWN0aW9uKCd1bml0cycsIGF3YWl0IHRyYW5zKCd1bml0cy50aXRsZScpLCBhd2FpdCB0cmFucygndW5pdHMuZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuVGVtcGVyYXR1cmVVbml0cyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd1bml0cy50ZW1wZXJhdHVyZS50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1UnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBkZWZhdWx0UHJvZmlsZS51bml0cyEudGVtcGVyYXR1cmUsXG4gICAgICAgIHZhbHVlVHJhbnNmb3Jtczogb2JqZWN0S2V5VmFsdWVUcmFuc2Zvcm1zKCd2YWx1ZScpLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgICAgcHJvZmlsZXMubWFwKGFzeW5jIChjKSA9PiAoe1xuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKGB1bml0cy50ZW1wZXJhdHVyZS5vcHRpb25zLiR7Yy51bml0cyEudGVtcGVyYXR1cmV9YCksXG4gICAgICAgICAgICAgICAgdmFsdWU6IGMudW5pdHMhLnRlbXBlcmF0dXJlLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykudW5pdHMudGVtcGVyYXR1cmUpIH19YCxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd1bml0cy50ZW1wZXJhdHVyZS5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuRGlzdGFuY2VVbml0cyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd1bml0cy5kaXN0YW5jZS50aXRsZScpLFxuICAgICAgICBzY29wZTogJ1UnLFxuICAgICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBkZWZhdWx0UHJvZmlsZS51bml0cyEuZGlzdGFuY2UsXG4gICAgICAgIHZhbHVlVHJhbnNmb3Jtczogb2JqZWN0S2V5VmFsdWVUcmFuc2Zvcm1zKCd2YWx1ZScpLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgICAgcHJvZmlsZXMubWFwKGFzeW5jIChjKSA9PiAoe1xuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKGB1bml0cy5kaXN0YW5jZS5vcHRpb25zLiR7Yy51bml0cyEuZGlzdGFuY2V9YCksXG4gICAgICAgICAgICAgICAgdmFsdWU6IGMudW5pdHMhLmRpc3RhbmNlLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykudW5pdHMuZGlzdGFuY2UpIH19YCxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd1bml0cy5kaXN0YW5jZS5kZXNjcmlwdGlvbicpLFxuICAgICAgfSlcbiAgICAgIC5hZGRTZXR0aW5nKHtcbiAgICAgICAga2V5OiBBWFBSZWdpb25hbFNldHRpbmcuV2VpZ2h0VW5pdHMsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygndW5pdHMud2VpZ2h0LnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLnVuaXRzIS53ZWlnaHQsXG4gICAgICAgIHZhbHVlVHJhbnNmb3Jtczogb2JqZWN0S2V5VmFsdWVUcmFuc2Zvcm1zKCd2YWx1ZScpLFxuICAgICAgICB3aWRnZXQ6IHtcbiAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgICAgcHJvZmlsZXMubWFwKGFzeW5jIChjKSA9PiAoe1xuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKGB1bml0cy53ZWlnaHQub3B0aW9ucy4ke2MudW5pdHMhLndlaWdodH1gKSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogYy51bml0cyEud2VpZ2h0LFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZXZlbnQ6IGB7eyBldmVudHMuY29udGV4dCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKSB9fWAsXG4gICAgICAgICAgICAgIGFjdGlvbjogW1xuICAgICAgICAgICAgICAgIGB7eyB3aWRnZXQuc2V0VmFsdWUod2lkZ2V0LmZpbmQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9Jykub3V0cHV0KCdpdGVtJykudW5pdHMud2VpZ2h0KSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygndW5pdHMud2VpZ2h0LmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmFkZFNldHRpbmcoe1xuICAgICAgICBrZXk6IEFYUFJlZ2lvbmFsU2V0dGluZy5Wb2x1bWVVbml0cyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd1bml0cy52b2x1bWUudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdVJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZGVmYXVsdFByb2ZpbGUudW5pdHMhLnZvbHVtZSxcbiAgICAgICAgdmFsdWVUcmFuc2Zvcm1zOiBvYmplY3RLZXlWYWx1ZVRyYW5zZm9ybXMoJ3ZhbHVlJyksXG4gICAgICAgIHdpZGdldDoge1xuICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXG4gICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgeyB0ZXh0OiBhd2FpdCB0cmFucygndW5pdHMudm9sdW1lLm9wdGlvbnMubGl0ZXJzJyksIHZhbHVlOiAnbGl0ZXJzJyB9LFxuICAgICAgICAgICAgICB7IHRleHQ6IGF3YWl0IHRyYW5zKCd1bml0cy52b2x1bWUub3B0aW9ucy5nYWxsb25zJyksIHZhbHVlOiAnZ2FsbG9ucycgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0cmlnZ2VyczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBldmVudDogYHt7IGV2ZW50cy5jb250ZXh0KCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpIH19YCxcbiAgICAgICAgICAgICAgYWN0aW9uOiBbXG4gICAgICAgICAgICAgICAgYHt7IHdpZGdldC5zZXRWYWx1ZSh3aWRnZXQuZmluZCgnJHtBWFBSZWdpb25hbFNldHRpbmcuTG9jYWxlUHJvZmlsZX0nKS5vdXRwdXQoJ2l0ZW0nKS51bml0cy52b2x1bWUpIH19YCxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd1bml0cy52b2x1bWUuZGVzY3JpcHRpb24nKSxcbiAgICAgIH0pXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLlNwZWVkVW5pdHMsXG4gICAgICAgIHRpdGxlOiBhd2FpdCB0cmFucygndW5pdHMuc3BlZWQudGl0bGUnKSxcbiAgICAgICAgc2NvcGU6ICdVJyxcbiAgICAgICAgaXNJbmhlcml0ZWQ6IHRydWUsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZGVmYXVsdFByb2ZpbGUudW5pdHMhLnNwZWVkLFxuICAgICAgICB2YWx1ZVRyYW5zZm9ybXM6IG9iamVjdEtleVZhbHVlVHJhbnNmb3JtcygndmFsdWUnKSxcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5TZWxlY3RCb3gsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgIHRleHRGaWVsZDogJ3RleHQnLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICAgIHByb2ZpbGVzLm1hcChhc3luYyAoYykgPT4gKHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucyhgdW5pdHMuc3BlZWQub3B0aW9ucy4ke2MudW5pdHMhLnNwZWVkfWApLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBjLnVuaXRzIS5zcGVlZCxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGV2ZW50OiBge3sgZXZlbnRzLmNvbnRleHQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9JykgfX1gLFxuICAgICAgICAgICAgICBhY3Rpb246IFtcbiAgICAgICAgICAgICAgICBge3sgd2lkZ2V0LnNldFZhbHVlKHdpZGdldC5maW5kKCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpLm91dHB1dCgnaXRlbScpLnVuaXRzLnNwZWVkKSB9fWAsXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCB0cmFucygndW5pdHMuc3BlZWQuZGVzY3JpcHRpb24nKSxcbiAgICAgIH0pXG4gICAgICAuYWRkU2V0dGluZyh7XG4gICAgICAgIGtleTogQVhQUmVnaW9uYWxTZXR0aW5nLkFyZWFVbml0cyxcbiAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zKCd1bml0cy5hcmVhLnRpdGxlJyksXG4gICAgICAgIHNjb3BlOiAnVScsXG4gICAgICAgIGlzSW5oZXJpdGVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRQcm9maWxlLnVuaXRzIS5hcmVhLFxuICAgICAgICB2YWx1ZVRyYW5zZm9ybXM6IG9iamVjdEtleVZhbHVlVHJhbnNmb3JtcygndmFsdWUnKSxcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5TZWxlY3RCb3gsXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgIHRleHRGaWVsZDogJ3RleHQnLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICAgIHByb2ZpbGVzLm1hcChhc3luYyAoYykgPT4gKHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucyhgdW5pdHMuYXJlYS5vcHRpb25zLiR7Yy51bml0cyEuYXJlYX1gKSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogYy51bml0cyEuYXJlYSxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRyaWdnZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGV2ZW50OiBge3sgZXZlbnRzLmNvbnRleHQoJyR7QVhQUmVnaW9uYWxTZXR0aW5nLkxvY2FsZVByb2ZpbGV9JykgfX1gLFxuICAgICAgICAgICAgICBhY3Rpb246IFtcbiAgICAgICAgICAgICAgICBge3sgd2lkZ2V0LnNldFZhbHVlKHdpZGdldC5maW5kKCcke0FYUFJlZ2lvbmFsU2V0dGluZy5Mb2NhbGVQcm9maWxlfScpLm91dHB1dCgnaXRlbScpLnVuaXRzLmFyZWEpIH19YCxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IGF3YWl0IHRyYW5zKCd1bml0cy5hcmVhLmRlc2NyaXB0aW9uJyksXG4gICAgICB9KVxuICAgICAgLmVuZFNlY3Rpb24oKVxuICAgICAgLmVuZEdyb3VwKCk7XG4gIH1cbn1cbiJdfQ=="],"names":[],"mappings":"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"}
@@ -5,19 +5,19 @@ import { CommonModule } from '@angular/common';
5
5
  import * as i3 from '@acorex/components/button';
6
6
  import { AXButtonModule } from '@acorex/components/button';
7
7
  import { AXBasePageComponent } from '@acorex/components/page';
8
- import * as i4 from '@acorex/components/decorators';
8
+ import * as i2 from '@acorex/components/decorators';
9
9
  import { AXDecoratorModule } from '@acorex/components/decorators';
10
10
  import { AXPActivityLogService } from '@acorex/platform/core';
11
11
  import { AXPActivityLogComponent } from '@acorex/platform/layout/components';
12
- import * as i4$1 from '@acorex/core/translation';
12
+ import * as i4 from '@acorex/core/translation';
13
13
  import { AXTranslationModule } from '@acorex/core/translation';
14
14
 
15
15
  class AXMTimelineVersionHistoryPopupComponent extends AXBasePageComponent {
16
16
  constructor() {
17
17
  super(...arguments);
18
- this.isBusy = signal(false);
18
+ this.isBusy = signal(false, ...(ngDevMode ? [{ debugName: "isBusy" }] : []));
19
19
  this.historyService = inject(AXPActivityLogService);
20
- this.versions = signal([]);
20
+ this.versions = signal([], ...(ngDevMode ? [{ debugName: "versions" }] : []));
21
21
  }
22
22
  async ngOnInit() {
23
23
  this.isBusy.set(true);
@@ -26,16 +26,16 @@ class AXMTimelineVersionHistoryPopupComponent extends AXBasePageComponent {
26
26
  this.versions.set(histories);
27
27
  this.isBusy.set(false);
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.7", type: AXMTimelineVersionHistoryPopupComponent, isStandalone: true, selector: "axp-timeline-version-history-popup", providers: [], usesInheritance: true, ngImport: i0, template: "<ax-content>\n <div class=\"ax-p-6 ax-min-h-[30vh] ax-overflow-y-auto\">\n <axp-activity-log [activities]=\"versions()\" [loading]=\"isBusy()\"></axp-activity-log>\n </div>\n</ax-content>\n<ax-footer>\n <ax-prefix></ax-prefix>\n <ax-suffix>\n <ax-button [text]=\"'close' | translate | async\" look=\"solid\" color=\"primary\" (onClick)=\"close()\">\n </ax-button>\n </ax-suffix>\n</ax-footer>", dependencies: [{ kind: "ngmodule", type:
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: AXMTimelineVersionHistoryPopupComponent, isStandalone: true, selector: "axp-timeline-version-history-popup", providers: [], usesInheritance: true, ngImport: i0, template: "<ax-content>\n <div class=\"ax-p-6 ax-min-h-[30vh] ax-overflow-y-auto\">\n <axp-activity-log [activities]=\"versions()\" [loading]=\"isBusy()\"></axp-activity-log>\n </div>\n</ax-content>\n<ax-footer>\n <ax-prefix></ax-prefix>\n <ax-suffix>\n <ax-button [text]=\"'close' | translate | async\" look=\"solid\" color=\"primary\" (onClick)=\"close()\">\n </ax-button>\n </ax-suffix>\n</ax-footer>", dependencies: [{ kind: "ngmodule", type:
31
31
  // Angular
32
- CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type:
32
+ CommonModule }, { kind: "ngmodule", type:
33
33
  // ACoreX
34
- AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i4$1.AXTranslatorPipe, name: "translate" }, { kind: "component", type:
34
+ AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type:
35
35
  //
36
- AXPActivityLogComponent, selector: "axp-activity-log", inputs: ["activities", "loading"] }], encapsulation: i0.ViewEncapsulation.None }); }
36
+ AXPActivityLogComponent, selector: "axp-activity-log", inputs: ["activities", "loading"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMTimelineVersionHistoryPopupComponent, decorators: [{
39
39
  type: Component,
40
40
  args: [{ selector: 'axp-timeline-version-history-popup', imports: [
41
41
  // Angular
@@ -50,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.7", ngImpor
50
50
  }] });
51
51
 
52
52
  export { AXMTimelineVersionHistoryPopupComponent };
53
- //# sourceMappingURL=acorex-modules-common-timeline-version-history-popup.component-D48aDOVu.mjs.map
53
+ //# sourceMappingURL=acorex-modules-common-timeline-version-history-popup.component-D_6STmWm.mjs.map