@acorex/modules 20.7.16 → 20.7.19

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 (163) hide show
  1. package/assessment-management/index.d.ts +0 -1
  2. package/business-core/index.d.ts +69 -2
  3. package/common/index.d.ts +21 -0
  4. package/contact-core/index.d.ts +1 -7
  5. package/customer-management/index.d.ts +1 -53
  6. package/data-management/index.d.ts +17 -4
  7. package/document-management/index.d.ts +0 -1
  8. package/fesm2022/acorex-modules-application-management.mjs +19 -27
  9. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  10. package/fesm2022/{acorex-modules-assessment-management-acorex-modules-assessment-management-HgaOIA2U.mjs → acorex-modules-assessment-management-acorex-modules-assessment-management-CULLP39a.mjs} +65 -67
  11. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-CULLP39a.mjs.map +1 -0
  12. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-column.component-DyxE9Xec.mjs → acorex-modules-assessment-management-answers-viewer-widget-column.component-BLjzQMgD.mjs} +2 -2
  13. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-column.component-DyxE9Xec.mjs.map → acorex-modules-assessment-management-answers-viewer-widget-column.component-BLjzQMgD.mjs.map} +1 -1
  14. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-edit.component-DC2Ep3r1.mjs → acorex-modules-assessment-management-answers-viewer-widget-edit.component-Dy1fV5UY.mjs} +2 -2
  15. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-edit.component-DC2Ep3r1.mjs.map → acorex-modules-assessment-management-answers-viewer-widget-edit.component-Dy1fV5UY.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-view.component-iKqac5PE.mjs → acorex-modules-assessment-management-answers-viewer-widget-view.component-UWn57QXA.mjs} +2 -2
  17. package/fesm2022/{acorex-modules-assessment-management-answers-viewer-widget-view.component-iKqac5PE.mjs.map → acorex-modules-assessment-management-answers-viewer-widget-view.component-UWn57QXA.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-CsCMlcvF.mjs → acorex-modules-assessment-management-assessment-case.entity-DMSrj4-x.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-assessment-management-assessment-case.entity-CsCMlcvF.mjs.map → acorex-modules-assessment-management-assessment-case.entity-DMSrj4-x.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-BkNVe3FO.mjs → acorex-modules-assessment-management-assessment-session.entity-Amq-d0wb.mjs} +2 -2
  21. package/fesm2022/{acorex-modules-assessment-management-assessment-session.entity-BkNVe3FO.mjs.map → acorex-modules-assessment-management-assessment-session.entity-Amq-d0wb.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-Dgeh3E5f.mjs → acorex-modules-assessment-management-fill-assessment-session.command-CdxcGakt.mjs} +3 -3
  23. package/fesm2022/{acorex-modules-assessment-management-fill-assessment-session.command-Dgeh3E5f.mjs.map → acorex-modules-assessment-management-fill-assessment-session.command-CdxcGakt.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-NcZlE6DU.mjs → acorex-modules-assessment-management-preview-questionnaire.command-C5zwNwJi.mjs} +4 -4
  25. package/fesm2022/{acorex-modules-assessment-management-preview-questionnaire.command-NcZlE6DU.mjs.map → acorex-modules-assessment-management-preview-questionnaire.command-C5zwNwJi.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-vNxSmJuv.mjs → acorex-modules-assessment-management-question-bank-item.entity-MlspdBfD.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-assessment-management-question-bank-item.entity-vNxSmJuv.mjs.map → acorex-modules-assessment-management-question-bank-item.entity-MlspdBfD.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder-edit.component-CbfHOFT1.mjs → acorex-modules-assessment-management-questionnaire-builder-edit.component-DswgENO1.mjs} +3 -3
  29. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder-edit.component-CbfHOFT1.mjs.map → acorex-modules-assessment-management-questionnaire-builder-edit.component-DswgENO1.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder-view.component-DDqDjzwH.mjs → acorex-modules-assessment-management-questionnaire-builder-view.component-C3BXFr5P.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder-view.component-DDqDjzwH.mjs.map → acorex-modules-assessment-management-questionnaire-builder-view.component-C3BXFr5P.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder.component-BOnwdWj7.mjs → acorex-modules-assessment-management-questionnaire-builder.component-BMR71H5h.mjs} +3 -3
  33. package/fesm2022/{acorex-modules-assessment-management-questionnaire-builder.component-BOnwdWj7.mjs.map → acorex-modules-assessment-management-questionnaire-builder.component-BMR71H5h.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-BX8Q2Kfn.mjs → acorex-modules-assessment-management-questionnaire-viewer-popup.component-Bj-JfJqq.mjs} +2 -2
  35. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer-popup.component-BX8Q2Kfn.mjs.map → acorex-modules-assessment-management-questionnaire-viewer-popup.component-Bj-JfJqq.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer.service-CSdVNxV2.mjs → acorex-modules-assessment-management-questionnaire-viewer.service-CVF6-BFW.mjs} +2 -2
  37. package/fesm2022/{acorex-modules-assessment-management-questionnaire-viewer.service-CSdVNxV2.mjs.map → acorex-modules-assessment-management-questionnaire-viewer.service-CVF6-BFW.mjs.map} +1 -1
  38. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-DFQIvlza.mjs → acorex-modules-assessment-management-questionnaire.entity-BZj3A4yO.mjs} +2 -2
  39. package/fesm2022/{acorex-modules-assessment-management-questionnaire.entity-DFQIvlza.mjs.map → acorex-modules-assessment-management-questionnaire.entity-BZj3A4yO.mjs.map} +1 -1
  40. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-CMmE72Kt.mjs → acorex-modules-assessment-management-view-session-answers.command-BVwF-Qvd.mjs} +3 -3
  41. package/fesm2022/{acorex-modules-assessment-management-view-session-answers.command-CMmE72Kt.mjs.map → acorex-modules-assessment-management-view-session-answers.command-BVwF-Qvd.mjs.map} +1 -1
  42. package/fesm2022/acorex-modules-assessment-management.mjs +1 -1
  43. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CZuDhBx5.mjs → acorex-modules-auth-acorex-modules-auth-CCFM_tlK.mjs} +13 -13
  44. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CZuDhBx5.mjs.map → acorex-modules-auth-acorex-modules-auth-CCFM_tlK.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-auth-app-chooser.component-DJE47I8p.mjs → acorex-modules-auth-app-chooser.component-CK5MfqD3.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-auth-app-chooser.component-DJE47I8p.mjs.map → acorex-modules-auth-app-chooser.component-CK5MfqD3.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-auth-login.module-CI_lkyb7.mjs → acorex-modules-auth-login.module-CoRuFgHW.mjs} +4 -4
  48. package/fesm2022/{acorex-modules-auth-login.module-CI_lkyb7.mjs.map → acorex-modules-auth-login.module-CoRuFgHW.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-auth-master.layout-CdY380qS.mjs → acorex-modules-auth-master.layout-DtQSZBEK.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-auth-master.layout-CdY380qS.mjs.map → acorex-modules-auth-master.layout-DtQSZBEK.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-auth-menu.provider-Bk9KXBU3.mjs → acorex-modules-auth-menu.provider-CBNyM4Ax.mjs} +2 -14
  52. package/fesm2022/acorex-modules-auth-menu.provider-CBNyM4Ax.mjs.map +1 -0
  53. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BvPk9b3e.mjs → acorex-modules-auth-oauth-callback.component-CLdkbMqN.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-auth-oauth-callback.component-BvPk9b3e.mjs.map → acorex-modules-auth-oauth-callback.component-CLdkbMqN.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-auth-password.component-Dw_v_EFQ.mjs → acorex-modules-auth-password.component-DFh6ylyI.mjs} +2 -2
  56. package/fesm2022/{acorex-modules-auth-password.component-Dw_v_EFQ.mjs.map → acorex-modules-auth-password.component-DFh6ylyI.mjs.map} +1 -1
  57. package/fesm2022/{acorex-modules-auth-password.component-CefISnvd.mjs → acorex-modules-auth-password.component-zygAB4zy.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-auth-password.component-CefISnvd.mjs.map → acorex-modules-auth-password.component-zygAB4zy.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-auth-routes-CwcJHbAi.mjs → acorex-modules-auth-routes-44-jn5HH.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-auth-routes-CwcJHbAi.mjs.map → acorex-modules-auth-routes-44-jn5HH.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-DFhTYEDt.mjs → acorex-modules-auth-tenant-chooser.component-B7og_Ed1.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-DFhTYEDt.mjs.map → acorex-modules-auth-tenant-chooser.component-B7og_Ed1.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-auth-two-factor.module-BOZB6sLo.mjs → acorex-modules-auth-two-factor.module--ToitCHE.mjs} +2 -2
  64. package/fesm2022/{acorex-modules-auth-two-factor.module-BOZB6sLo.mjs.map → acorex-modules-auth-two-factor.module--ToitCHE.mjs.map} +1 -1
  65. package/fesm2022/{acorex-modules-auth-user-sessions.component-BnrnXg4G.mjs → acorex-modules-auth-user-sessions.component-B49q0G5k.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-auth-user-sessions.component-BnrnXg4G.mjs.map → acorex-modules-auth-user-sessions.component-B49q0G5k.mjs.map} +1 -1
  67. package/fesm2022/acorex-modules-auth.mjs +1 -1
  68. package/fesm2022/acorex-modules-business-core.mjs +439 -4
  69. package/fesm2022/acorex-modules-business-core.mjs.map +1 -1
  70. package/fesm2022/acorex-modules-common.mjs +49 -0
  71. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  72. package/fesm2022/{acorex-modules-contact-core-emergency-service.entity-Cro3bM4G.mjs → acorex-modules-contact-core-emergency-service.entity-l8rYNqP1.mjs} +2 -1
  73. package/fesm2022/acorex-modules-contact-core-emergency-service.entity-l8rYNqP1.mjs.map +1 -0
  74. package/fesm2022/acorex-modules-contact-core.mjs +6 -47
  75. package/fesm2022/acorex-modules-contact-core.mjs.map +1 -1
  76. package/fesm2022/acorex-modules-content-management.mjs +21 -22
  77. package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
  78. package/fesm2022/{acorex-modules-customer-management-customer.entity-CRp5g0OZ.mjs → acorex-modules-customer-management-customer.entity-BOUGKl2b.mjs} +61 -9
  79. package/fesm2022/acorex-modules-customer-management-customer.entity-BOUGKl2b.mjs.map +1 -0
  80. package/fesm2022/{acorex-modules-customer-management-lead.entity-Da9JTLOl.mjs → acorex-modules-customer-management-lead.entity-C-juNxOd.mjs} +19 -14
  81. package/fesm2022/acorex-modules-customer-management-lead.entity-C-juNxOd.mjs.map +1 -0
  82. package/fesm2022/acorex-modules-customer-management.mjs +34 -262
  83. package/fesm2022/acorex-modules-customer-management.mjs.map +1 -1
  84. package/fesm2022/acorex-modules-dashboard-management.mjs +28 -39
  85. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  86. package/fesm2022/acorex-modules-data-management.mjs +56 -45
  87. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  88. package/fesm2022/acorex-modules-document-management.mjs +51 -42
  89. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  90. package/fesm2022/acorex-modules-form-template-management.mjs +21 -17
  91. package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
  92. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-MfqQx2iN.mjs → acorex-modules-help-desk-acorex-modules-help-desk-6uU5upBy.mjs} +65 -70
  93. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-6uU5upBy.mjs.map +1 -0
  94. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-CATwc3fe.mjs → acorex-modules-help-desk-capture-screen.component-CqtTzbgS.mjs} +2 -2
  95. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-CATwc3fe.mjs.map → acorex-modules-help-desk-capture-screen.component-CqtTzbgS.mjs.map} +1 -1
  96. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  97. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs → acorex-modules-human-capital-management-leave-request.entity-CS3Fr_k2.mjs} +2 -1
  98. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CS3Fr_k2.mjs.map +1 -0
  99. package/fesm2022/acorex-modules-human-capital-management.mjs +86 -77
  100. package/fesm2022/acorex-modules-human-capital-management.mjs.map +1 -1
  101. package/fesm2022/acorex-modules-learning-management.mjs +105 -137
  102. package/fesm2022/acorex-modules-learning-management.mjs.map +1 -1
  103. package/fesm2022/acorex-modules-location-management.mjs +64 -198
  104. package/fesm2022/acorex-modules-location-management.mjs.map +1 -1
  105. package/fesm2022/acorex-modules-meeting-management.mjs +45 -39
  106. package/fesm2022/acorex-modules-meeting-management.mjs.map +1 -1
  107. package/fesm2022/acorex-modules-order-management-menu.provider-DeMKkRZa.mjs +61 -0
  108. package/fesm2022/acorex-modules-order-management-menu.provider-DeMKkRZa.mjs.map +1 -0
  109. package/fesm2022/acorex-modules-order-management.mjs +2 -2
  110. package/fesm2022/acorex-modules-organization-management.mjs +140 -90
  111. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  112. package/fesm2022/acorex-modules-person-management.mjs +9 -19
  113. package/fesm2022/acorex-modules-person-management.mjs.map +1 -1
  114. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-ndbiBVUt.mjs → acorex-modules-platform-management-acorex-modules-platform-management-fAjKD6Y5.mjs} +20 -17
  115. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-ndbiBVUt.mjs.map → acorex-modules-platform-management-acorex-modules-platform-management-fAjKD6Y5.mjs.map} +1 -1
  116. package/fesm2022/{acorex-modules-platform-management-menu-list.component-w-Ix2VZA.mjs → acorex-modules-platform-management-menu-list.component-BJsd86Vf.mjs} +2 -2
  117. package/fesm2022/{acorex-modules-platform-management-menu-list.component-w-Ix2VZA.mjs.map → acorex-modules-platform-management-menu-list.component-BJsd86Vf.mjs.map} +1 -1
  118. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  119. package/fesm2022/acorex-modules-procurement-management.mjs +13 -18
  120. package/fesm2022/acorex-modules-procurement-management.mjs.map +1 -1
  121. package/fesm2022/acorex-modules-product-catalog.mjs +24 -27
  122. package/fesm2022/acorex-modules-product-catalog.mjs.map +1 -1
  123. package/fesm2022/acorex-modules-reservation-management.mjs +91 -54
  124. package/fesm2022/acorex-modules-reservation-management.mjs.map +1 -1
  125. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-Dpjfgmg9.mjs → acorex-modules-settings-management-acorex-modules-settings-management-fj933lbu.mjs} +6 -6
  126. package/fesm2022/{acorex-modules-settings-management-acorex-modules-settings-management-Dpjfgmg9.mjs.map → acorex-modules-settings-management-acorex-modules-settings-management-fj933lbu.mjs.map} +1 -1
  127. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-nYV8iDwJ.mjs → acorex-modules-settings-management-permission-definition.provider-CW3wSb7v.mjs} +2 -2
  128. package/fesm2022/{acorex-modules-settings-management-permission-definition.provider-nYV8iDwJ.mjs.map → acorex-modules-settings-management-permission-definition.provider-CW3wSb7v.mjs.map} +1 -1
  129. package/fesm2022/{acorex-modules-settings-management-setting-page.component-B1lhCtl_.mjs → acorex-modules-settings-management-setting-page.component-BqJ31scm.mjs} +2 -2
  130. package/fesm2022/{acorex-modules-settings-management-setting-page.component-B1lhCtl_.mjs.map → acorex-modules-settings-management-setting-page.component-BqJ31scm.mjs.map} +1 -1
  131. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CAX1kFy2.mjs → acorex-modules-settings-management-setting-view.component-D7QpT246.mjs} +2 -2
  132. package/fesm2022/{acorex-modules-settings-management-setting-view.component-CAX1kFy2.mjs.map → acorex-modules-settings-management-setting-view.component-D7QpT246.mjs.map} +1 -1
  133. package/fesm2022/acorex-modules-settings-management.mjs +1 -1
  134. package/fesm2022/acorex-modules-subscription-management.mjs +19 -28
  135. package/fesm2022/acorex-modules-subscription-management.mjs.map +1 -1
  136. package/fesm2022/acorex-modules-supplier-management.mjs +19 -229
  137. package/fesm2022/acorex-modules-supplier-management.mjs.map +1 -1
  138. package/fesm2022/acorex-modules-tenant-management.mjs +9 -16
  139. package/fesm2022/acorex-modules-tenant-management.mjs.map +1 -1
  140. package/fesm2022/acorex-modules-workflow-management.mjs +51 -36
  141. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  142. package/learning-management/index.d.ts +6 -0
  143. package/meeting-management/index.d.ts +0 -1
  144. package/package.json +14 -14
  145. package/reservation-management/index.d.ts +13 -12
  146. package/supplier-management/index.d.ts +4 -50
  147. package/fesm2022/acorex-modules-assessment-management-acorex-modules-assessment-management-HgaOIA2U.mjs.map +0 -1
  148. package/fesm2022/acorex-modules-auth-menu.provider-Bk9KXBU3.mjs.map +0 -1
  149. package/fesm2022/acorex-modules-contact-core-emergency-service.entity-Cro3bM4G.mjs.map +0 -1
  150. package/fesm2022/acorex-modules-customer-management-customer-segment.entity-CoYAU5g3.mjs +0 -69
  151. package/fesm2022/acorex-modules-customer-management-customer-segment.entity-CoYAU5g3.mjs.map +0 -1
  152. package/fesm2022/acorex-modules-customer-management-customer-type.entity-pt4gpOGq.mjs +0 -79
  153. package/fesm2022/acorex-modules-customer-management-customer-type.entity-pt4gpOGq.mjs.map +0 -1
  154. package/fesm2022/acorex-modules-customer-management-customer.entity-CRp5g0OZ.mjs.map +0 -1
  155. package/fesm2022/acorex-modules-customer-management-lead.entity-Da9JTLOl.mjs.map +0 -1
  156. package/fesm2022/acorex-modules-customer-management-lifecycle-stage.entity-DNFSDcpD.mjs +0 -60
  157. package/fesm2022/acorex-modules-customer-management-lifecycle-stage.entity-DNFSDcpD.mjs.map +0 -1
  158. package/fesm2022/acorex-modules-customer-management-sales-territory.entity-Bw5YU_a3.mjs +0 -60
  159. package/fesm2022/acorex-modules-customer-management-sales-territory.entity-Bw5YU_a3.mjs.map +0 -1
  160. package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-MfqQx2iN.mjs.map +0 -1
  161. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs.map +0 -1
  162. package/fesm2022/acorex-modules-order-management-menu.provider-CDXy5oMa.mjs +0 -68
  163. package/fesm2022/acorex-modules-order-management-menu.provider-CDXy5oMa.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-reservation-management.mjs","sources":["../tmp-esm2022/reservation-management/lib/const.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.module.js","../tmp-esm2022/reservation-management/lib/entity.provider.js","../tmp-esm2022/reservation-management/lib/services/reservation.service.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-panel-widget.component.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-panel-widget.config.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation.plugin.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-plugin.module.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-widget.types.js","../tmp-esm2022/reservation-management/lib/menu.keys.js","../tmp-esm2022/reservation-management/lib/menu.provider.js","../tmp-esm2022/reservation-management/lib/permission.keys.js","../tmp-esm2022/reservation-management/lib/permission-definition.provider.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.module.js","../tmp-esm2022/reservation-management/lib/manifest.js","../tmp-esm2022/reservation-management/lib/reservation-management.module.js","../tmp-esm2022/reservation-management/lib/search-command.provider.js","../tmp-esm2022/reservation-management/lib/search.provider.js","../tmp-esm2022/reservation-management/lib/setting.provider.js","../tmp-esm2022/reservation-management/acorex-modules-reservation-management.js"],"sourcesContent":["//#region ---- Root Configuration ----\nconst config = {\n i18n: 'reservation-management',\n module: 'ReservationManagement',\n route: 'reservation-management',\n};\nexport const RootConfig = {\n config,\n module: {\n route: config.route,\n name: config.module,\n title: '@reservation-management:module.title',\n icon: 'fa-light fa-calendar-check',\n },\n entities: {\n reservationType: {\n name: 'ReservationType',\n source: `${config.module}.ReservationType`,\n title: '@reservation-management:reservation-types.entities.reservation-type.title',\n titlePlural: '@reservation-management:reservation-types.entities.reservation-type.plural',\n icon: 'fa-light fa-list',\n },\n reservationStatus: {\n name: 'ReservationStatus',\n source: `${config.module}.ReservationStatus`,\n title: '@reservation-management:reservation-statuses.entities.reservation-status.title',\n titlePlural: '@reservation-management:reservation-statuses.entities.reservation-status.plural',\n icon: 'fa-light fa-flag',\n },\n reservationClass: {\n name: 'ReservationClass',\n source: `${config.module}.ReservationClass`,\n title: '@reservation-management:reservation-classes.entities.reservation-class.title',\n titlePlural: '@reservation-management:reservation-classes.entities.reservation-class.plural',\n icon: 'fa-light fa-tag',\n },\n reservation: {\n name: 'Reservation',\n source: `${config.module}.Reservation`,\n title: '@reservation-management:reservations.entities.reservation.title',\n titlePlural: '@reservation-management:reservations.entities.reservation.plural',\n icon: 'fa-light fa-calendar-check',\n },\n reservationEvent: {\n name: 'ReservationEvent',\n source: `${config.module}.ReservationEvent`,\n title: '@reservation-management:reservation-events.entities.reservation-event.title',\n titlePlural: '@reservation-management:reservation-events.entities.reservation-event.plural',\n icon: 'fa-light fa-calendar-alt',\n },\n reservationHold: {\n name: 'ReservationHold',\n source: `${config.module}.ReservationHold`,\n title: '@reservation-management:reservation-holds.entities.reservation-hold.title',\n titlePlural: '@reservation-management:reservation-holds.entities.reservation-hold.plural',\n icon: 'fa-light fa-pause-circle',\n },\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBDQUEwQztBQUUxQyxNQUFNLE1BQU0sR0FBRztJQUNiLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsTUFBTSxFQUFFLHVCQUF1QjtJQUMvQixLQUFLLEVBQUUsd0JBQXdCO0NBQ2hDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztRQUNuQixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU07UUFDbkIsS0FBSyxFQUFFLHNDQUFzQztRQUM3QyxJQUFJLEVBQUUsNEJBQTRCO0tBQ25DO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7WUFDMUMsS0FBSyxFQUFFLDJFQUEyRTtZQUNsRixXQUFXLEVBQUUsNEVBQTRFO1lBQ3pGLElBQUksRUFBRSxrQkFBa0I7U0FDekI7UUFDRCxpQkFBaUIsRUFBRTtZQUNqQixJQUFJLEVBQUUsbUJBQW1CO1lBQ3pCLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQjtZQUM1QyxLQUFLLEVBQUUsZ0ZBQWdGO1lBQ3ZGLFdBQVcsRUFBRSxpRkFBaUY7WUFDOUYsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELGdCQUFnQixFQUFFO1lBQ2hCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CO1lBQzNDLEtBQUssRUFBRSw4RUFBOEU7WUFDckYsV0FBVyxFQUFFLCtFQUErRTtZQUM1RixJQUFJLEVBQUUsaUJBQWlCO1NBQ3hCO1FBQ0QsV0FBVyxFQUFFO1lBQ1gsSUFBSSxFQUFFLGFBQWE7WUFDbkIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sY0FBYztZQUN0QyxLQUFLLEVBQUUsaUVBQWlFO1lBQ3hFLFdBQVcsRUFBRSxrRUFBa0U7WUFDL0UsSUFBSSxFQUFFLDRCQUE0QjtTQUNuQztRQUNELGdCQUFnQixFQUFFO1lBQ2hCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CO1lBQzNDLEtBQUssRUFBRSw2RUFBNkU7WUFDcEYsV0FBVyxFQUFFLDhFQUE4RTtZQUMzRixJQUFJLEVBQUUsMEJBQTBCO1NBQ2pDO1FBQ0QsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7WUFDMUMsS0FBSyxFQUFFLDJFQUEyRTtZQUNsRixXQUFXLEVBQUUsNEVBQTRFO1lBQ3pGLElBQUksRUFBRSwwQkFBMEI7U0FDakM7S0FDRjtDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBSb290IENvbmZpZ3VyYXRpb24gICAtLS0tXG5cbmNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQnLFxuICBtb2R1bGU6ICdSZXNlcnZhdGlvbk1hbmFnZW1lbnQnLFxuICByb3V0ZTogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFJvb3RDb25maWcgPSB7XG4gIGNvbmZpZyxcbiAgbW9kdWxlOiB7XG4gICAgcm91dGU6IGNvbmZpZy5yb3V0ZSxcbiAgICBuYW1lOiBjb25maWcubW9kdWxlLFxuICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6bW9kdWxlLnRpdGxlJyxcbiAgICBpY29uOiAnZmEtbGlnaHQgZmEtY2FsZW5kYXItY2hlY2snLFxuICB9LFxuICBlbnRpdGllczoge1xuICAgIHJlc2VydmF0aW9uVHlwZToge1xuICAgICAgbmFtZTogJ1Jlc2VydmF0aW9uVHlwZScsXG4gICAgICBzb3VyY2U6IGAke2NvbmZpZy5tb2R1bGV9LlJlc2VydmF0aW9uVHlwZWAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXR5cGVzLmVudGl0aWVzLnJlc2VydmF0aW9uLXR5cGUudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLnBsdXJhbCcsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbGlzdCcsXG4gICAgfSxcbiAgICByZXNlcnZhdGlvblN0YXR1czoge1xuICAgICAgbmFtZTogJ1Jlc2VydmF0aW9uU3RhdHVzJyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25TdGF0dXNgLFxuICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMucGx1cmFsJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1mbGFnJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uQ2xhc3M6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkNsYXNzJyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25DbGFzc2AsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLnBsdXJhbCcsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtdGFnJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uOiB7XG4gICAgICBuYW1lOiAnUmVzZXJ2YXRpb24nLFxuICAgICAgc291cmNlOiBgJHtjb25maWcubW9kdWxlfS5SZXNlcnZhdGlvbmAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi50aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNhbGVuZGFyLWNoZWNrJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uRXZlbnQ6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkV2ZW50JyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25FdmVudGAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC50aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNhbGVuZGFyLWFsdCcsXG4gICAgfSxcbiAgICByZXNlcnZhdGlvbkhvbGQ6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkhvbGQnLFxuICAgICAgc291cmNlOiBgJHtjb25maWcubW9kdWxlfS5SZXNlcnZhdGlvbkhvbGRgLFxuICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1ob2xkcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ob2xkLnRpdGxlJyxcbiAgICAgIHRpdGxlUGx1cmFsOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24taG9sZHMuZW50aXRpZXMucmVzZXJ2YXRpb24taG9sZC5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXBhdXNlLWNpcmNsZScsXG4gICAgfSxcbiAgfSxcbn07XG5cbi8vI2VuZHJlZ2lvblxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationServiceImpl extends AXPReservationManagementReservationService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservation.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24vcmVzZXJ2YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsMENBQTJDLFNBQVEsd0JBR3hFO0NBQUc7QUFHSixNQUFNLE9BQU8sOENBQStDLFNBQVEsMENBQTBDO0lBQzVHO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3RSxDQUFDOytHQUhVLDhDQUE4QzttSEFBOUMsOENBQThDLGNBRGpDLE1BQU07OzRGQUNuQiw4Q0FBOEM7a0JBRDFELFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkVudGl0eU1vZGVsIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24ubmFtZX1gKTtcbiAgfVxufVxuIl19","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationService } from './reservation.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservation.name,\n title: RootConfig.entities.reservation.title,\n icon: RootConfig.entities.reservation.icon,\n formats: {\n individual: RootConfig.entities.reservation.title,\n plural: RootConfig.entities.reservation.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'reservation-information',\n title: '@reservation-management:reservations.entities.reservation.groups.reservation-information',\n },\n {\n id: 'approve-information',\n title: '@reservation-management:reservations.entities.reservation.groups.approve-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'reservationTypeId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-type-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationType.id' },\n { source: 'title', target: 'reservationType.title' },\n { source: 'code', target: 'reservationType.code' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'reservationClassId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-class-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationClass.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationClass.id' },\n { source: 'title', target: 'reservationClass.title' },\n { source: 'code', target: 'reservationClass.code' },\n ],\n triggers: [\n {\n event: \"{{ events.context('reservationTypeId') }}\",\n action: `{{ widget.refresh() }}`,\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'reservationStatusId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-status-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title', 'color'],\n expose: [\n { source: 'id', target: 'reservationStatus.id' },\n { source: 'title', target: 'reservationStatus.title' },\n { source: 'code', target: 'reservationStatus.code' },\n { source: 'color', target: 'reservationStatus.color' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceEntityId',\n title: '@reservation-management:reservations.entities.reservation.fields.resource-entity-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservations.entities.reservation.fields.resource-entity-id.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceId',\n title: '@reservation-management:reservations.entities.reservation.fields.resource-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n // Dynamic entity based on resourceEntityId\n // Will be resolved based on resourceEntityId value\n entity: `PlatformManagement.EntityRegistry`, // Placeholder - will be dynamic\n textField: 'title',\n valueField: 'id',\n columns: ['title'],\n expose: [\n { source: 'id', target: 'resource.id' },\n { source: 'title', target: 'resource.title' },\n ],\n triggers: [\n {\n event: \"{{ events.context('resourceEntityId') }}\",\n action: `{{ widget.refresh() }}`,\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'startDate',\n title: '@reservation-management:reservations.entities.reservation.fields.start-date',\n groupId: 'reservation-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'endDate',\n title: '@reservation-management:reservations.entities.reservation.fields.end-date',\n groupId: 'reservation-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'note',\n title: '@reservation-management:reservations.entities.reservation.fields.note',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LargeTextBox,\n options: {\n rows: 4,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'requestedById',\n title: '@reservation-management:reservations.entities.reservation.fields.requested-by-id',\n groupId: 'approve-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n columns: ['displayName', 'email'],\n expose: [\n { source: 'id', target: 'requestedBy.id' },\n { source: 'displayName', target: 'requestedBy.displayName' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'approvedById',\n title: '@reservation-management:reservations.entities.reservation.fields.approved-by-id',\n groupId: 'approve-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n columns: ['displayName', 'email'],\n expose: [\n { source: 'id', target: 'approvedBy.id' },\n { source: 'displayName', target: 'approvedBy.displayName' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'approvedDate',\n title: '@reservation-management:reservations.entities.reservation.fields.approved-date',\n groupId: 'approve-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'isBlocking',\n title: '@reservation-management:reservations.entities.reservation.fields.is-blocking',\n groupId: 'reservation-information',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'reservationKind',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-kind',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { value: 'reservation', text: '@reservation-management:reservations.entities.reservation.fields.reservation-kind.options.reservation' },\n { value: 'hold', text: '@reservation-management:reservations.entities.reservation.fields.reservation-kind.options.hold' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n columns: [\n { name: 'reservationTypeId', options: { dataPath: 'reservationType' } },\n { name: 'reservationClassId', options: { dataPath: 'reservationClass' } },\n { name: 'resourceId', options: { dataPath: 'resource' } },\n { name: 'startDate' },\n { name: 'endDate' },\n { name: 'reservationStatusId', options: { dataPath: 'reservationStatus' } },\n { name: 'requestedById', options: { dataPath: 'requestedBy' } },\n { name: 'isBlocking' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({\n sorts: [{ name: 'startDate', dir: 'desc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi9yZXNlcnZhdGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQW9DLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMENBQTBDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRixZQUFZO0FBRVosc0NBQXNDO0FBRXRDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsUUFBa0I7SUFDekQsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0lBQzdFLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUk7UUFDMUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUs7UUFDNUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUk7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V2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFN5c3RlbUFjdGlvblR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24uc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIEVudGl0eSBGYWN0b3J5ICAgLS0tLVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzZXJ2YXRpb25GYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24uaWNvbixcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ3t7IGNvZGUgfX0nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZ3JvdXBzLnJlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYXBwcm92ZS1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmdyb3Vwcy5hcHByb3ZlLWluZm9ybWF0aW9uJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgc2NoZW1hOiB7IGRhdGFUeXBlOiAndXVpZCcsIHZpc2libGU6IGZhbHNlLCBudWxsYWJsZTogZmFsc2UsIHJlYWRvbmx5OiB0cnVlLCB1bmlxdWU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzZXJ2YXRpb24tdHlwZS1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWV9YCxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbJ2NvZGUnLCAndGl0bGUnXSxcbiAgICAgICAgICAgICAgZXhwb3NlOiBbXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdpZCcsIHRhcmdldDogJ3Jlc2VydmF0aW9uVHlwZS5pZCcgfSxcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ3RpdGxlJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uVHlwZS5jb2RlJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1jbGFzcy1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy5uYW1lfWAsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgY29sdW1uczogWydjb2RlJywgJ3RpdGxlJ10sXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbkNsYXNzLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbkNsYXNzLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uQ2xhc3MuY29kZScgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBldmVudDogXCJ7eyBldmVudHMuY29udGV4dCgncmVzZXJ2YXRpb25UeXBlSWQnKSB9fVwiLFxuICAgICAgICAgICAgICAgICAgYWN0aW9uOiBge3sgd2lkZ2V0LnJlZnJlc2goKSB9fWAsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvblN0YXR1c0lkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc2VydmF0aW9uLXN0YXR1cy1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnY29kZScsICd0aXRsZScsICdjb2xvciddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25TdGF0dXMuaWQnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICd0aXRsZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLmNvZGUnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdjb2xvcicsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLmNvbG9yJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc291cmNlRW50aXR5SWQnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzb3VyY2UtZW50aXR5LWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzb3VyY2UtZW50aXR5LWlkLnBsYWNlaG9sZGVyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXNvdXJjZUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc291cmNlLWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAvLyBEeW5hbWljIGVudGl0eSBiYXNlZCBvbiByZXNvdXJjZUVudGl0eUlkXG4gICAgICAgICAgICAgIC8vIFdpbGwgYmUgcmVzb2x2ZWQgYmFzZWQgb24gcmVzb3VyY2VFbnRpdHlJZCB2YWx1ZVxuICAgICAgICAgICAgICBlbnRpdHk6IGBQbGF0Zm9ybU1hbmFnZW1lbnQuRW50aXR5UmVnaXN0cnlgLCAvLyBQbGFjZWhvbGRlciAtIHdpbGwgYmUgZHluYW1pY1xuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsndGl0bGUnXSxcbiAgICAgICAgICAgICAgZXhwb3NlOiBbXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdpZCcsIHRhcmdldDogJ3Jlc291cmNlLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNvdXJjZS50aXRsZScgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBldmVudDogXCJ7eyBldmVudHMuY29udGV4dCgncmVzb3VyY2VFbnRpdHlJZCcpIH19XCIsXG4gICAgICAgICAgICAgICAgICBhY3Rpb246IGB7eyB3aWRnZXQucmVmcmVzaCgpIH19YCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3N0YXJ0RGF0ZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5zdGFydC1kYXRlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdkYXRlJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmRhdGVUaW1lLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBmb3JtYXQ6ICdkYXRldGltZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZW5kRGF0ZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5lbmQtZGF0ZScsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZm9ybWF0OiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25vdGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMubm90ZScsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTGFyZ2VUZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlcXVlc3RlZC1ieS1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdhcHByb3ZlLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6ICdTZWN1cml0eU1hbmFnZW1lbnQuVXNlcicsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ2Rpc3BsYXlOYW1lJyxcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgY29sdW1uczogWydkaXNwbGF5TmFtZScsICdlbWFpbCddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVxdWVzdGVkQnkuaWQnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdkaXNwbGF5TmFtZScsIHRhcmdldDogJ3JlcXVlc3RlZEJ5LmRpc3BsYXlOYW1lJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXBwcm92ZWRCeUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLmFwcHJvdmVkLWJ5LWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogJ1NlY3VyaXR5TWFuYWdlbWVudC5Vc2VyJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAnZGlzcGxheU5hbWUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbJ2Rpc3BsYXlOYW1lJywgJ2VtYWlsJ10sXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdhcHByb3ZlZEJ5LmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnZGlzcGxheU5hbWUnLCB0YXJnZXQ6ICdhcHByb3ZlZEJ5LmRpc3BsYXlOYW1lJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXBwcm92ZWREYXRlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLmFwcHJvdmVkLWRhdGUnLFxuICAgICAgICBncm91cElkOiAnYXBwcm92ZS1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZm9ybWF0OiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnaXNCbG9ja2luZycsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5pcy1ibG9ja2luZycsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRvZ2dsZVN3aXRjaCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25LaW5kJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc2VydmF0aW9uLWtpbmQnLFxuICAgICAgICBncm91cElkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAncmVzZXJ2YXRpb24nLCB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1raW5kLm9wdGlvbnMucmVzZXJ2YXRpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ2hvbGQnLCB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1raW5kLm9wdGlvbnMuaG9sZCcgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvblR5cGVJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvblR5cGUnIH0gfSxcbiAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvbkNsYXNzJyB9IH0sXG4gICAgICB7IG5hbWU6ICdyZXNvdXJjZUlkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc291cmNlJyB9IH0sXG4gICAgICB7IG5hbWU6ICdzdGFydERhdGUnIH0sXG4gICAgICB7IG5hbWU6ICdlbmREYXRlJyB9LFxuICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvblN0YXR1cycgfSB9LFxuICAgICAgeyBuYW1lOiAncmVxdWVzdGVkQnlJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXF1ZXN0ZWRCeScgfSB9LFxuICAgICAgeyBuYW1lOiAnaXNCbG9ja2luZycgfSxcbiAgICBdLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7IGlkOiBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSkgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoe1xuICAgICAgICAgICAgc2tpcDogZS5za2lwLFxuICAgICAgICAgICAgdGFrZTogZS50YWtlLFxuICAgICAgICAgICAgZmlsdGVyOiBlLmZpbHRlcixcbiAgICAgICAgICAgIHNvcnQ6IGUuc29ydCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGNyZWF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogWy4uLmVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMoKV0sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMoKV0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7XG4gICAgICAgICAgICAgIHNvcnRzOiBbeyBuYW1lOiAnc3RhcnREYXRlJywgZGlyOiAnZGVzYycgfV0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuICByZXR1cm4gZW50aXR5RGVmO1xufVxuXG4vLyNlbmRyZWdpb25cblxuIl19","import { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationService, AXPReservationManagementReservationServiceImpl, } from './reservation.service';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationService,\n useClass: AXPReservationManagementReservationServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationService,\n useClass: AXPReservationManagementReservationServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi9yZXNlcnZhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsMENBQTBDLEVBQzFDLDhDQUE4QyxHQUMvQyxNQUFNLHVCQUF1QixDQUFDOztBQVUvQixNQUFNLE9BQU8sK0NBQStDOytHQUEvQywrQ0FBK0M7Z0hBQS9DLCtDQUErQztnSEFBL0MsK0NBQStDLGFBUC9DO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDBDQUEwQztnQkFDbkQsUUFBUSxFQUFFLDhDQUE4QzthQUN6RDtTQUNGOzs0RkFFVSwrQ0FBK0M7a0JBUjNELFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwwQ0FBMEM7NEJBQ25ELFFBQVEsRUFBRSw4Q0FBOEM7eUJBQ3pEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZUltcGwsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2R1bGUge31cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationClassService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationClassServiceImpl extends AXPReservationManagementReservationClassService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationClass.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsK0NBQWdELFNBQVEsd0JBRzdFO0NBQUc7QUFHSixNQUFNLE9BQU8sbURBQW9ELFNBQVEsK0NBQStDO0lBQ3RIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7K0dBSFUsbURBQW1EO21IQUFuRCxtREFBbUQ7OzRGQUFuRCxtREFBbUQ7a0JBRC9ELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NFbnRpdHlNb2RlbCB9IGZyb20gJy4vcmVzZXJ2YXRpb24tY2xhc3MudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc0VudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationClassService } from './reservation-class.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationClassFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationClassService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationClass.name,\n title: RootConfig.entities.reservationClass.title,\n icon: RootConfig.entities.reservationClass.icon,\n plugins: [{ name: 'archive' }],\n formats: {\n individual: RootConfig.entities.reservationClass.title,\n plural: RootConfig.entities.reservationClass.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'general',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.general',\n },\n {\n id: 'policy',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.policy',\n },\n {\n id: 'allowed-statuses',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.allowed-statuses',\n },\n {\n id: 'transitions',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.transitions',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'reservationTypeId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.reservation-type-id.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationType.id' },\n { source: 'title', target: 'reservationType.title' },\n { source: 'code', target: 'reservationType.code' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.code.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-classes.entities.reservation-class.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }, { rule: 'unique', options: { scope: 'reservationTypeId' } }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.title.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-classes.entities.reservation-class.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'requiresApproval',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.requires-approval.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'allowAutoApprove',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allow-auto-approve.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n visible: `{{ context.eval('requiresApproval') === true }}`,\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'conflictPolicy',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.title',\n groupId: 'policy',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n {\n value: 'strict',\n text: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.options.strict',\n },\n {\n value: 'soft',\n text: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.options.soft',\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'allowHold',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allow-hold.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'allowedStatuses',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.title',\n groupId: 'allowed-statuses',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsList.Editors.ConnectedListsEditor,\n options: {\n leftListTitle: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.options.available-statuses',\n rightListTitle: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.options.allowed-statuses',\n sourceEntity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n sourceTextField: 'title',\n sourceValueField: 'id',\n targetFields: [\n {\n name: 'isInitial',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.is-initial',\n type: 'boolean',\n },\n {\n name: 'isFinal',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.is-final',\n type: 'boolean',\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.order',\n type: 'number',\n },\n ],\n },\n },\n },\n },\n {\n name: 'transitions',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.title',\n groupId: 'transitions',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsList.Editors.InlineDataTable,\n options: {\n columns: [\n {\n name: 'fromStatusId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.from-status-id.title',\n type: 'lookup',\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n },\n {\n name: 'toStatusId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.to-status-id.title',\n type: 'lookup',\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.title.title',\n type: 'text',\n },\n {\n name: 'requiresPermission',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.requires-permission.title',\n type: 'text',\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.order.title',\n type: 'number',\n },\n ],\n },\n },\n },\n },\n ],\n columns: [\n { name: 'code' },\n { name: 'title' },\n { name: 'reservationTypeId', options: { dataPath: 'reservationType.title' } },\n { name: 'requiresApproval' },\n { name: 'conflictPolicy' },\n { name: 'allowHold' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@general:actions.archive.title',\n command: 'archive-entity',\n priority: 'secondary',\n type: AXPSystemActionType.Archive,\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'code', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3MuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTlGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx1QkFBdUIsQ0FBQyxRQUFrQjtJQUM5RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO1FBQy9DLEtBQUssRUFBRSxVQUFVLENBQUMs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QVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7cUJBQ3hFO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3dCQUM1Qjs0QkFDRSxLQUFLLEVBQUUsZ0NBQWdDOzRCQUN2QyxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixRQUFRLEVBQUUsV0FBVzs0QkFDckIsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE9BQU87NEJBQ2pDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3RDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQU3lzdGVtQWN0aW9uVHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UgfSBmcm9tICcuL3Jlc2VydmF0aW9uLWNsYXNzLnNlcnZpY2UnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBFbnRpdHkgRmFjdG9yeSAgIC0tLS1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc2VydmF0aW9uQ2xhc3NGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uQ2xhc3MubmFtZSxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy5pY29uLFxuICAgIHBsdWdpbnM6IFt7IG5hbWU6ICdhcmNoaXZlJyB9XSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uQ2xhc3MudGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5nZW5lcmFsJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAncG9saWN5JyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5wb2xpY3knLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhbGxvd2VkLXN0YXR1c2VzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5hbGxvd2VkLXN0YXR1c2VzJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAndHJhbnNpdGlvbnMnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZ3JvdXBzLnRyYW5zaXRpb25zJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgc2NoZW1hOiB7IGRhdGFUeXBlOiAndXVpZCcsIHZpc2libGU6IGZhbHNlLCBudWxsYWJsZTogZmFsc2UsIHJlYWRvbmx5OiB0cnVlLCB1bmlxdWU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLFxuICAgICAgICB0aXRsZTpcbiAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMucmVzZXJ2YXRpb24tdHlwZS1pZC50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblR5cGUubmFtZX1gLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnY29kZScsICd0aXRsZSddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvblR5cGUudGl0bGUnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdjb2RlJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLmNvZGUnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnY29kZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29kZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfSwgeyBydWxlOiAndW5pcXVlJywgb3B0aW9uczogeyBzY29wZTogJ3Jlc2VydmF0aW9uVHlwZUlkJyB9IH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50aXRsZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlcXVpcmVzQXBwcm92YWwnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnJlcXVpcmVzLWFwcHJvdmFsLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3BvbGljeScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLkNoZWNrQm94LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhbGxvd0F1dG9BcHByb3ZlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvdy1hdXRvLWFwcHJvdmUudGl0bGUnLFxuICAgICAgICBncm91cElkOiAncG9saWN5JyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICB2aXNpYmxlOiBge3sgY29udGV4dC5ldmFsKCdyZXF1aXJlc0FwcHJvdmFsJykgPT09IHRydWUgfX1gLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5DaGVja0JveCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb25mbGljdFBvbGljeScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29uZmxpY3QtcG9saWN5LnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3BvbGljeScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgZGF0YVNvdXJjZTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiAnc3RyaWN0JyxcbiAgICAgICAgICAgICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5jb25mbGljdC1wb2xpY3kub3B0aW9ucy5zdHJpY3QnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdzb2Z0JyxcbiAgICAgICAgICAgICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5jb25mbGljdC1wb2xpY3kub3B0aW9ucy5zb2Z0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2FsbG93SG9sZCcsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuYWxsb3ctaG9sZC50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdwb2xpY3knLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5DaGVja0JveCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYWxsb3dlZFN0YXR1c2VzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2FsbG93ZWQtc3RhdHVzZXMnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuQ29ubmVjdGVkTGlzdHNFZGl0b3IsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGxlZnRMaXN0VGl0bGU6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLmFsbG93ZWQtc3RhdHVzZXMub3B0aW9ucy5hdmFpbGFibGUtc3RhdHVzZXMnLFxuICAgICAgICAgICAgICByaWdodExpc3RUaXRsZTpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuYWxsb3dlZC1zdGF0dXNlcy5vcHRpb25zLmFsbG93ZWQtc3RhdHVzZXMnLFxuICAgICAgICAgICAgICBzb3VyY2VFbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy5uYW1lfWAsXG4gICAgICAgICAgICAgIHNvdXJjZVRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgc291cmNlVmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgdGFyZ2V0RmllbGRzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2lzSW5pdGlhbCcsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLmFsbG93ZWQtc3RhdHVzZXMuZmllbGRzLmlzLWluaXRpYWwnLFxuICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2lzRmluYWwnLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLmZpZWxkcy5pcy1maW5hbCcsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnb3JkZXInLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLmZpZWxkcy5vcmRlcicsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RyYW5zaXRpb25zJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50cmFuc2l0aW9ucy50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICd0cmFuc2l0aW9ucycsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYXJyYXknLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5JbmxpbmVEYXRhVGFibGUsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgICAgIHRpdGxlOlxuICAgICAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudHJhbnNpdGlvbnMuZmllbGRzLmZyb20tc3RhdHVzLWlkLnRpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdsb29rdXAnLFxuICAgICAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gLFxuICAgICAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgICAgIHRpdGxlOlxuICAgICAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudHJhbnNpdGlvbnMuZmllbGRzLnRvLXN0YXR1cy1pZC50aXRsZScsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbG9va3VwJyxcbiAgICAgICAgICAgICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uU3RhdHVzLm5hbWV9YCxcbiAgICAgICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50cmFuc2l0aW9ucy5maWVsZHMudGl0bGUudGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ3JlcXVpcmVzUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnRyYW5zaXRpb25zLmZpZWxkcy5yZXF1aXJlcy1wZXJtaXNzaW9uLnRpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdvcmRlcicsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnRyYW5zaXRpb25zLmZpZWxkcy5vcmRlci50aXRsZScsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgIHsgbmFtZTogJ2NvZGUnIH0sXG4gICAgICB7IG5hbWU6ICd0aXRsZScgfSxcbiAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUlkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc2VydmF0aW9uVHlwZS50aXRsZScgfSB9LFxuICAgICAgeyBuYW1lOiAncmVxdWlyZXNBcHByb3ZhbCcgfSxcbiAgICAgIHsgbmFtZTogJ2NvbmZsaWN0UG9saWN5JyB9LFxuICAgICAgeyBuYW1lOiAnYWxsb3dIb2xkJyB9LFxuICAgIF0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKSB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgICAgc29ydDogZS5zb3J0LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHsgaWQ6ICdnZW5lcmFsJywgb3JkZXI6IDEgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdwb2xpY3knLCBvcmRlcjogMiB9LFxuICAgICAgICAgICAgeyBpZDogJ2FsbG93ZWQtc3RhdHVzZXMnLCBvcmRlcjogMyB9LFxuICAgICAgICAgICAgeyBpZDogJ3RyYW5zaXRpb25zJywgb3JkZXI6IDQgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3JlcXVpcmVzQXBwcm92YWwnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93QXV0b0FwcHJvdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvbmZsaWN0UG9saWN5JywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd0hvbGQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93ZWRTdGF0dXNlcycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RyYW5zaXRpb25zJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnZ2VuZXJhbCcsIG9yZGVyOiAxIH0sXG4gICAgICAgICAgICB7IGlkOiAncG9saWN5Jywgb3JkZXI6IDIgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdhbGxvd2VkLXN0YXR1c2VzJywgb3JkZXI6IDMgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd0cmFuc2l0aW9ucycsIG9yZGVyOiA0IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvblR5cGVJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1aXJlc0FwcHJvdmFsJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd0F1dG9BcHByb3ZlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb25mbGljdFBvbGljeScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dIb2xkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd2VkU3RhdHVzZXMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0cmFuc2l0aW9ucycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAgeyBpZDogJ2dlbmVyYWwnLCBvcmRlcjogMSB9LFxuICAgICAgICAgICAgeyBpZDogJ3BvbGljeScsIG9yZGVyOiAyIH0sXG4gICAgICAgICAgICB7IGlkOiAnYWxsb3dlZC1zdGF0dXNlcycsIG9yZGVyOiAzIH0sXG4gICAgICAgICAgICB7IGlkOiAndHJhbnNpdGlvbnMnLCBvcmRlcjogNCB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVxdWlyZXNBcHByb3ZhbCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dBdXRvQXBwcm92ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29uZmxpY3RQb2xpY3knLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93SG9sZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dlZFN0YXR1c2VzJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndHJhbnNpdGlvbnMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIC4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5hcmNoaXZlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2FyY2hpdmUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiBBWFBTeXN0ZW1BY3Rpb25UeXBlLkFyY2hpdmUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHtcbiAgICAgICAgICAgICAgc29ydHM6IFt7IG5hbWU6ICdjb2RlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationEventService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationEventServiceImpl extends AXPReservationManagementReservationEventService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationEvent.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tZXZlbnQvcmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsK0NBQWdELFNBQVEsd0JBRzdFO0NBQUc7QUFHSixNQUFNLE9BQU8sbURBQW9ELFNBQVEsK0NBQStDO0lBQ3RIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7K0dBSFUsbURBQW1EO21IQUFuRCxtREFBbUQ7OzRGQUFuRCxtREFBbUQ7a0JBRC9ELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRFbnRpdHlNb2RlbCB9IGZyb20gJy4vcmVzZXJ2YXRpb24tZXZlbnQudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudFNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50Lm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationEventService } from './reservation-event.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationEventFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationEventService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationEvent.name,\n title: RootConfig.entities.reservationEvent.title,\n icon: RootConfig.entities.reservationEvent.icon,\n formats: {\n individual: RootConfig.entities.reservationEvent.title,\n plural: RootConfig.entities.reservationEvent.titlePlural,\n searchResult: {\n title: '',\n },\n },\n // Property groups\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-events.entities.reservation-event.groups.basic-information',\n },\n ],\n // Entity properties\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-information',\n options: {\n sort: { enabled: true },\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n },\n schema: {\n dataType: 'string',\n visible: false,\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n readonly: true,\n visible: false,\n },\n },\n },\n },\n {\n name: 'reservationId',\n title: '@ ',\n groupId: 'basic-information',\n options: {\n sort: { enabled: true },\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n },\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservation.name}`,\n expose: [\n { source: 'id', target: 'reservation.{id}' },\n { source: 'resource', target: 'reservation.{resource}' },\n ],\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n // Columns for list views\n columns: [\n { name: 'reservationId', options: { dataPath: 'reservation' } },\n { name: 'reservationEventId', options: { dataPath: 'reservationEvent' } },\n { name: 'eventDate' },\n { name: 'actorId', options: { dataPath: 'actor' } },\n { name: 'fromStatusId', options: { dataPath: 'fromStatus' } },\n { name: 'toStatusId', options: { dataPath: 'toStatus' } },\n ],\n // Commands\n commands: {\n create: {\n execute: async (data) => {\n return await dataService.insertOne(data);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n // Queries\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n // Interfaces\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n },\n update: {\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n },\n single: {\n title: '{{ resource }}',\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n actions: [\n {\n title: '@general:actions.edit.title',\n command: 'quick-modify-entity',\n priority: 'primary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n },\n list: {\n actions: [\n {\n title: '@general:actions.create.title',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: '@general:actions.edit.title',\n command: 'quick-modify-entity',\n priority: 'primary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n default: true, // Enable double-click to open edit mode\n },\n {\n title: '@general:actions.delete.title',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'title', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1ldmVudC9yZXNlcnZhdGlvbi1ldmVudC5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTlGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx1QkFBdUIsQ0FBQyxRQUFrQjtJQUM5RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO1FBQy9DLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEtBQUs7UUFDakQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtRQUMvQyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFL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LEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3ZDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIEVudGl0eSBGYWN0b3J5ICAgLS0tLVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzZXJ2YXRpb25FdmVudEZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25FdmVudC5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uRXZlbnQudGl0bGUsXG4gICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50Lmljb24sXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50LnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uRXZlbnQudGl0bGVQbHVyYWwsXG4gICAgICBzZWFyY2hSZXN1bHQ6IHtcbiAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgfSxcbiAgICB9LFxuXG4gICAgLy8gUHJvcGVydHkgZ3JvdXBzXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC5ncm91cHMuYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuXG4gICAgLy8gRW50aXR5IHByb3BlcnRpZXNcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uSWQnLFxuICAgICAgICB0aXRsZTogJ0AgJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTG9va3VwQm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lfWAsXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbi57aWR9JyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAncmVzb3VyY2UnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbi57cmVzb3VyY2V9JyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgXSxcblxuICAgIC8vIENvbHVtbnMgZm9yIGxpc3Qgdmlld3NcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbklkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc2VydmF0aW9uJyB9IH0sXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAncmVzZXJ2YXRpb25FdmVudCcgfSB9LFxuICAgICAgeyBuYW1lOiAnZXZlbnREYXRlJyB9LFxuICAgICAgeyBuYW1lOiAnYWN0b3JJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdhY3RvcicgfSB9LFxuICAgICAgeyBuYW1lOiAnZnJvbVN0YXR1c0lkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ2Zyb21TdGF0dXMnIH0gfSxcbiAgICAgIHsgbmFtZTogJ3RvU3RhdHVzSWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAndG9TdGF0dXMnIH0gfSxcbiAgICBdLFxuXG4gICAgLy8gQ29tbWFuZHNcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIC8vIFF1ZXJpZXNcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIC8vIEludGVyZmFjZXNcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7eyByZXNvdXJjZSB9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5lZGl0LnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ3F1aWNrLW1vZGlmeS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndXBkYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOmFjdGlvbnMuY3JlYXRlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOmFjdGlvbnMuZWRpdC50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdxdWljay1tb2RpZnktZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGVmYXVsdDogdHJ1ZSwgLy8gRW5hYmxlIGRvdWJsZS1jbGljayB0byBvcGVuIGVkaXQgbW9kZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDphY3Rpb25zLmRlbGV0ZS50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICBjcmVhdGVBbGxRdWVyeVZpZXcoe1xuICAgICAgICAgICAgICBzb3J0czogW3sgbmFtZTogJ3RpdGxlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationManagementReservationStatusService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationStatusServiceImpl extends AXPReservationManagementReservationStatusService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXN0YXR1cy9yZXNlcnZhdGlvbi1zdGF0dXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxZQUFZO0FBRVosK0JBQStCO0FBRS9CLE1BQU0sT0FBZ0IsZ0RBQWlELFNBQVEsd0JBRzlFO0NBQUc7QUFLSixNQUFNLE9BQU8sb0RBQXFELFNBQVEsZ0RBQWdEO0lBQ3hIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25GLENBQUM7K0dBSFUsb0RBQW9EO21IQUFwRCxvREFBb0QsY0FGbkQsTUFBTTs7NEZBRVAsb0RBQW9EO2tCQUhoRSxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c0VudGl0eU1vZGVsIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi1zdGF0dXMudHlwZXMnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlICAgLS0tLVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gKTtcbiAgfVxufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationStatusService } from './reservation-status.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationStatusFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationStatusService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationStatus.name,\n title: RootConfig.entities.reservationStatus.title,\n icon: RootConfig.entities.reservationStatus.icon,\n formats: {\n individual: RootConfig.entities.reservationStatus.title,\n plural: RootConfig.entities.reservationStatus.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.groups.basic-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.code.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-statuses.entities.reservation-status.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }, { rule: 'unique' }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.title.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-statuses.entities.reservation-status.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'color',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.color.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.ColorPalette,\n options: {},\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.order.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: {\n minValue: 0,\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n ],\n columns: [{ name: 'code' }, { name: 'title' }, { name: 'color' }],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({\n sorts: [\n { name: 'order', dir: 'asc' },\n { name: 'code', dir: 'asc' },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tc3RhdHVzL3Jlc2VydmF0aW9uLXN0YXR1cy5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnREFBZ0QsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhHLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx3QkFBd0IsQ0FBQyxRQUFrQjtJQUMvRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDbkYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO1FBQ2hELEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUs7UUFDbEQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSTtRQUNoRCxPQUFPLEVBQUU7WUFD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RSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7d0JBQy9ELEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNoRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTt3QkFDaEUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7cUJBQ2pFO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDdkMsS0FBSyxFQUFFO3dCQUNMLGtCQUFrQixDQUFDOzRCQUNqQixLQUFLLEVBQUU7Z0NBQ0wsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7Z0NBQzdCLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFOzZCQUM3Qjt5QkFDRixDQUFDO3FCQUNIO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhQV2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBFbnRpdHkgRmFjdG9yeSAgIC0tLS1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc2VydmF0aW9uU3RhdHVzRmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZSxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uU3RhdHVzLmljb24sXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tc3RhdHVzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tc3RhdHVzLmdyb3Vwcy5iYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi5pZCcsXG4gICAgICAgIHNjaGVtYTogeyBkYXRhVHlwZTogJ3V1aWQnLCB2aXNpYmxlOiBmYWxzZSwgbnVsbGFibGU6IGZhbHNlLCByZWFkb25seTogdHJ1ZSwgdW5pcXVlOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvZGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMuY29kZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfSwgeyBydWxlOiAndW5pcXVlJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tc3RhdHVzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tc3RhdHVzLmZpZWxkcy50aXRsZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbG9yJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMuZmllbGRzLmNvbG9yLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5Db2xvclBhbGV0dGUsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnb3JkZXInLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMub3JkZXIudGl0bGUnLFxuICAgICAgICBncm91cElkOiAnYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ251bWJlcicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLk51bWJlckJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbWluVmFsdWU6IDAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAnY29kZScgfSwgeyBuYW1lOiAndGl0bGUnIH0sIHsgbmFtZTogJ2NvbG9yJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4geyBpZDogYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgICAgICAgIHNraXA6IGUuc2tpcCxcbiAgICAgICAgICAgIHRha2U6IGUudGFrZSxcbiAgICAgICAgICAgIGZpbHRlcjogZS5maWx0ZXIsXG4gICAgICAgICAgICBzb3J0OiBlLnNvcnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW3sgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicgfV0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvbG9yJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdvcmRlcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbeyBpZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29sb3InLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ29yZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7eyB0aXRsZSB9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nIH1dLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2xvcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnb3JkZXInLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zKCldLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogWy4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCldLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICBjcmVhdGVBbGxRdWVyeVZpZXcoe1xuICAgICAgICAgICAgICBzb3J0czogW1xuICAgICAgICAgICAgICAgIHsgbmFtZTogJ29yZGVyJywgZGlyOiAnYXNjJyB9LFxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBkaXI6ICdhc2MnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationStatusService, AXPReservationManagementReservationStatusServiceImpl, } from './reservation-status.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Reservation Status Entity Module ----\nexport class AXPReservationManagementReservationStatusEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationStatusService,\n useClass: AXPReservationManagementReservationStatusServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationStatusService,\n useClass: AXPReservationManagementReservationStatusServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tc3RhdHVzL3Jlc2VydmF0aW9uLXN0YXR1cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLGdEQUFnRCxFQUNoRCxvREFBb0QsR0FDckQsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFdEMsWUFBWTtBQUVaLHdEQUF3RDtBQVV4RCxNQUFNLE9BQU8scURBQXFEOytHQUFyRCxxREFBcUQ7Z0hBQXJELHFEQUFxRDtnSEFBckQscURBQXFELGFBUHJEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGdEQUFnRDtnQkFDekQsUUFBUSxFQUFFLG9EQUFvRDthQUMvRDtTQUNGOzs0RkFFVSxxREFBcUQ7a0JBUmpFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxnREFBZ0Q7NEJBQ3pELFFBQVEsRUFBRSxvREFBb0Q7eUJBQy9EO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlLFxuICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2VJbXBsLFxufSBmcm9tICcuL3Jlc2VydmF0aW9uLXN0YXR1cy5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgUmVzZXJ2YXRpb24gU3RhdHVzIEVudGl0eSBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuXG4iXX0=","//#region ---- Imports ----\nimport { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationManagementReservationTypeService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationTypeServiceImpl extends AXPReservationManagementReservationTypeService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi10eXBlL3Jlc2VydmF0aW9uLXR5cGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxZQUFZO0FBRVosK0JBQStCO0FBRS9CLE1BQU0sT0FBZ0IsOENBQStDLFNBQVEsd0JBRzVFO0NBQUc7QUFLSixNQUFNLE9BQU8sa0RBQW1ELFNBQVEsOENBQThDO0lBQ3BIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDOytHQUhVLGtEQUFrRDttSEFBbEQsa0RBQWtELGNBRmpELE1BQU07OzRGQUVQLGtEQUFrRDtrQkFIOUQsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlRW50aXR5TW9kZWwgfSBmcm9tICcuL3Jlc2VydmF0aW9uLXR5cGUudHlwZXMnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlICAgLS0tLVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVFbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uVHlwZS5uYW1lfWApO1xuICB9XG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationTypeService } from './reservation-type.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationTypeFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationTypeService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationType.name,\n title: RootConfig.entities.reservationType.title,\n icon: RootConfig.entities.reservationType.icon,\n plugins: [{ name: 'archive' }],\n formats: {\n individual: RootConfig.entities.reservationType.title,\n plural: RootConfig.entities.reservationType.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-types.entities.reservation-type.groups.basic-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.code.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-types.entities.reservation-type.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.title.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-types.entities.reservation-type.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceEntityIds',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.resource-entity-ids.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n // TODO: Replace with actual Registry entity path when available\n // For now using a placeholder - this should be a lookup to system entity registry\n entity: 'PlatformManagement.EntityRegistry', // Placeholder - adjust as needed\n multiple: true,\n look: 'tagbox',\n textField: 'entityId',\n valueField: 'entityId',\n columns: ['entityId', 'module', 'title'],\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n ],\n columns: [{ name: 'code' }, { name: 'title' }, { name: 'resourceEntityIds' }],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@general:actions.archive.title',\n command: 'archive-entity',\n priority: 'secondary',\n type: AXPSystemActionType.Archive,\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'code', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxRQUFrQjtJQUM3RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFDakYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSTtRQUM5QyxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEs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SUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3dCQUM1Qjs0QkFDRSxLQUFLLEVBQUUsZ0NBQWdDOzRCQUN2QyxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixRQUFRLEVBQUUsV0FBVzs0QkFDckIsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE9BQU87NEJBQ2pDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3RDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQU3lzdGVtQWN0aW9uVHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgRW50aXR5IEZhY3RvcnkgICAtLS0tXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNlcnZhdGlvblR5cGVGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLmljb24sXG4gICAgcGx1Z2luczogW3sgbmFtZTogJ2FyY2hpdmUnIH1dLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uVHlwZS50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5ncm91cHMuYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5jb21tb24uaWQnLFxuICAgICAgICBzY2hlbWE6IHsgZGF0YVR5cGU6ICd1dWlkJywgdmlzaWJsZTogZmFsc2UsIG51bGxhYmxlOiBmYWxzZSwgcmVhZG9ubHk6IHRydWUsIHVuaXF1ZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb2RlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLmZpZWxkcy5jb2RlLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdudW1iZXInLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXR5cGVzLmVudGl0aWVzLnJlc2VydmF0aW9uLXR5cGUuZmllbGRzLnRpdGxlLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc291cmNlRW50aXR5SWRzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLmZpZWxkcy5yZXNvdXJjZS1lbnRpdHktaWRzLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIC8vIFRPRE86IFJlcGxhY2Ugd2l0aCBhY3R1YWwgUmVnaXN0cnkgZW50aXR5IHBhdGggd2hlbiBhdmFpbGFibGVcbiAgICAgICAgICAgICAgLy8gRm9yIG5vdyB1c2luZyBhIHBsYWNlaG9sZGVyIC0gdGhpcyBzaG91bGQgYmUgYSBsb29rdXAgdG8gc3lzdGVtIGVudGl0eSByZWdpc3RyeVxuICAgICAgICAgICAgICBlbnRpdHk6ICdQbGF0Zm9ybU1hbmFnZW1lbnQuRW50aXR5UmVnaXN0cnknLCAvLyBQbGFjZWhvbGRlciAtIGFkanVzdCBhcyBuZWVkZWRcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgIGxvb2s6ICd0YWdib3gnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICdlbnRpdHlJZCcsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdlbnRpdHlJZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnZW50aXR5SWQnLCAnbW9kdWxlJywgJ3RpdGxlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ2NvZGUnIH0sIHsgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdyZXNvdXJjZUVudGl0eUlkcycgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKSB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgICAgc29ydDogZS5zb3J0LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nIH1dLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNvdXJjZUVudGl0eUlkcycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW3sgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicgfV0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc291cmNlRW50aXR5SWRzJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbeyBpZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZHMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIC4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5hcmNoaXZlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2FyY2hpdmUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiBBWFBTeXN0ZW1BY3Rpb25UeXBlLkFyY2hpdmUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHtcbiAgICAgICAgICAgICAgc29ydHM6IFt7IG5hbWU6ICdjb2RlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationTypeService, AXPReservationManagementReservationTypeServiceImpl, } from './reservation-type.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Reservation Type Entity Module ----\nexport class AXPReservationManagementReservationTypeEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationTypeService,\n useClass: AXPReservationManagementReservationTypeServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationTypeService,\n useClass: AXPReservationManagementReservationTypeServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLDhDQUE4QyxFQUM5QyxrREFBa0QsR0FDbkQsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFcEMsWUFBWTtBQUVaLHNEQUFzRDtBQVV0RCxNQUFNLE9BQU8sbURBQW1EOytHQUFuRCxtREFBbUQ7Z0hBQW5ELG1EQUFtRDtnSEFBbkQsbURBQW1ELGFBUG5EO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDhDQUE4QztnQkFDdkQsUUFBUSxFQUFFLGtEQUFrRDthQUM3RDtTQUNGOzs0RkFFVSxtREFBbUQ7a0JBUi9ELFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4Q0FBOEM7NEJBQ3ZELFFBQVEsRUFBRSxrREFBa0Q7eUJBQzdEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZUltcGwsXG59IGZyb20gJy4vcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgUmVzZXJ2YXRpb24gVHlwZSBFbnRpdHkgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZVNlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZUVudGl0eU1vZHVsZSB7fVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMReservationManagementEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.reservationType.name:\n return (await import('./entities/reservation-type/reservation-type.entity')).reservationTypeFactory(this.injector);\n case RootConfig.entities.reservationStatus.name:\n return (await import('./entities/reservation-status/reservation-status.entity')).reservationStatusFactory(this.injector);\n case RootConfig.entities.reservationClass.name:\n return (await import('./entities/reservation-class/reservation-class.entity')).reservationClassFactory(this.injector);\n case RootConfig.entities.reservationEvent.name:\n return (await import('./entities/reservation-event/reservation-event.entity')).reservationEventFactory(this.injector);\n case RootConfig.entities.reservation.name:\n return (await import('./entities/reservation/reservation.entity')).reservationFactory(this.injector);\n }\n }\n return null;\n }\n async list() {\n const m = RootConfig.module.name;\n return Promise.resolve(Object.values(RootConfig.entities).map((e) => ({ name: e.name, module: m })));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdHkucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBR3JDLE1BQU0sT0FBTyxzQ0FBc0M7SUFEbkQ7UUFFVSxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBNENyQztJQTFDUSxPQUFPO1FBQ1osTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDdEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sRUFBRSxNQUFNO1lBQ2QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJO1NBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtRQUM5QyxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pDLFFBQVEsVUFBVSxFQUFFLENBQUM7Z0JBQ25CLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSTtvQkFDM0MsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHFEQUFxRCxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FDakcsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO2dCQUNKLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO29CQUM3QyxPQUFPLENBQUMsTUFBTSxNQUFNLENBQUMseURBQXlELENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUN2RyxJQUFJLENBQUMsUUFBUSxDQUNkLENBQUM7Z0JBQ0osS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUk7b0JBQzVDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyx1REFBdUQsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQ3BHLElBQUksQ0FBQyxRQUFRLENBQ2QsQ0FBQztnQkFDSixLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtvQkFDNUMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHVEQUF1RCxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FDcEcsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO2dCQUNKLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSTtvQkFDdkMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLDJDQUEyQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FDbkYsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO1lBQ04sQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDN0UsQ0FBQztJQUNKLENBQUM7K0dBNUNVLHNDQUFzQzttSEFBdEMsc0NBQXNDOzs0RkFBdEMsc0NBQXNDO2tCQURsRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudEVudGl0eVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHB1YmxpYyBwcmVsb2FkKCk6IEFYUEVudGl0eVByZWxvYWRFbnRpdHlbXSB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpKS5tYXAoKGVudGl0eTogYW55KSA9PiAoe1xuICAgICAgbW9kdWxlOiBtb2R1bGUsXG4gICAgICBlbnRpdHk6IGVudGl0eS5uYW1lLFxuICAgIH0pKTtcbiAgfVxuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHN3aXRjaCAoZW50aXR5TmFtZSkge1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tdHlwZS9yZXNlcnZhdGlvbi10eXBlLmVudGl0eScpKS5yZXNlcnZhdGlvblR5cGVGYWN0b3J5KFxuICAgICAgICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLmVudGl0eScpKS5yZXNlcnZhdGlvblN0YXR1c0ZhY3RvcnkoXG4gICAgICAgICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgICAgICk7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3MuZW50aXR5JykpLnJlc2VydmF0aW9uQ2xhc3NGYWN0b3J5KFxuICAgICAgICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25FdmVudC5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL3Jlc2VydmF0aW9uLWV2ZW50L3Jlc2VydmF0aW9uLWV2ZW50LmVudGl0eScpKS5yZXNlcnZhdGlvbkV2ZW50RmFjdG9yeShcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24vcmVzZXJ2YXRpb24uZW50aXR5JykpLnJlc2VydmF0aW9uRmFjdG9yeShcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBhc3luYyBsaXN0KCk6IFByb21pc2U8eyBuYW1lOiBzdHJpbmc7IG1vZHVsZTogc3RyaW5nIH1bXT4ge1xuICAgIGNvbnN0IG0gPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoXG4gICAgICBPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpLm1hcCgoZSkgPT4gKHsgbmFtZTogZS5uYW1lLCBtb2R1bGU6IG0gfSkpXG4gICAgKTtcbiAgfVxufVxuIl19","//#region ---- Imports ----\nimport { Injectable, inject } from '@angular/core';\nimport { AXPReservationManagementReservationClassService } from '../entities/reservation-class/reservation-class.service';\nimport { AXPReservationManagementReservationStatusService } from '../entities/reservation-status/reservation-status.service';\nimport { AXPReservationManagementReservationTypeService } from '../entities/reservation-type/reservation-type.service';\nimport { AXPReservationManagementReservationService } from '../entities/reservation/reservation.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationService {\n constructor() {\n this.reservationService = inject(AXPReservationManagementReservationService);\n this.reservationClassService = inject(AXPReservationManagementReservationClassService);\n this.reservationTypeService = inject(AXPReservationManagementReservationTypeService);\n this.reservationStatusService = inject(AXPReservationManagementReservationStatusService);\n }\n /**\n * Get available reservation classes for a resource type\n */\n async getAvailableClasses(reservationTypeId) {\n const result = await this.reservationClassService.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'reservationTypeId',\n operator: { type: 'equal' },\n value: reservationTypeId,\n },\n {\n field: 'isActive',\n operator: { type: 'equal' },\n value: true,\n },\n ],\n },\n });\n return result.items || [];\n }\n /**\n * Get reservations for a resource\n */\n async getReservations(resourceEntityId, resourceId, startDate, endDate) {\n const filter = {\n logic: 'and',\n filters: [\n {\n field: 'resourceEntityId',\n operator: { type: 'equal' },\n value: resourceEntityId,\n },\n {\n field: 'resourceId',\n operator: { type: 'equal' },\n value: resourceId,\n },\n ],\n };\n if (startDate && endDate) {\n filter.filters.push({\n logic: 'or',\n filters: [\n {\n field: 'startDate',\n operator: { type: 'between' },\n value: [startDate, endDate],\n },\n {\n field: 'endDate',\n operator: { type: 'between' },\n value: [startDate, endDate],\n },\n ],\n });\n }\n const result = await this.reservationService.query({\n skip: 0,\n take: 1000,\n filter,\n sort: [{ field: 'startDate', dir: 'asc' }],\n });\n return result.items || [];\n }\n /**\n * Check for conflicts\n */\n async checkConflict(resourceEntityId, resourceId, startDate, endDate, excludeReservationId) {\n const reservations = await this.getReservations(resourceEntityId, resourceId, startDate, endDate);\n const conflicts = [];\n for (const reservation of reservations) {\n if (excludeReservationId && reservation.id === excludeReservationId) {\n continue;\n }\n // Check if dates overlap\n if ((reservation.startDate <= startDate && reservation.endDate >= startDate) ||\n (reservation.startDate <= endDate && reservation.endDate >= endDate) ||\n (reservation.startDate >= startDate && reservation.endDate <= endDate)) {\n // If it's a blocking hold, always conflict\n if (reservation.reservationKind === 'hold' && reservation.isBlocking) {\n conflicts.push({\n reservationId: reservation.id,\n startDate: reservation.startDate,\n endDate: reservation.endDate,\n kind: reservation.reservationKind,\n isBlocking: reservation.isBlocking,\n });\n }\n else if (reservation.reservationKind === 'reservation') {\n // Check conflict policy from class\n // For now, treat all reservations as potential conflicts\n conflicts.push({\n reservationId: reservation.id,\n startDate: reservation.startDate,\n endDate: reservation.endDate,\n kind: reservation.reservationKind,\n isBlocking: false,\n });\n }\n }\n }\n return conflicts;\n }\n /**\n * Create a reservation\n */\n async createReservation(data, resourceEntityId, resourceId) {\n const reservationData = {\n reservationClassId: data.reservationClassId,\n resourceEntityId,\n resourceId,\n startDate: data.startDateTime,\n endDate: data.endDateTime,\n note: data.note,\n reservationKind: 'reservation',\n // Get initial status from class\n // This should be set based on class allowed statuses\n };\n return await this.reservationService.insertOne(reservationData);\n }\n /**\n * Create a hold\n */\n async createHold(data, resourceEntityId, resourceId) {\n const holdData = {\n resourceEntityId,\n resourceId,\n startDate: data.startDateTime,\n endDate: data.endDateTime,\n isBlocking: data.isBlocking,\n note: data.holdReason,\n reservationKind: 'hold',\n // Hold type should be stored in a field\n };\n return await this.reservationService.insertOne(holdData);\n }\n /**\n * Get available transitions for a reservation\n */\n async getAvailableTransitions(reservationId) {\n // Get reservation to find its class\n const reservation = await this.reservationService.getOne(reservationId);\n if (!reservation || !reservation.reservationClassId) {\n return [];\n }\n // Get class to find transitions\n const reservationClass = await this.reservationClassService.getOne(reservation.reservationClassId);\n if (!reservationClass || !reservationClass.transitions) {\n return [];\n }\n // Filter active transitions that match current status\n return reservationClass.transitions.filter((t) => t.isActive && t.fromStatusId === reservation.reservationStatusId);\n }\n /**\n * Execute a transition\n */\n async executeTransition(data) {\n // Get transition details\n const reservation = await this.reservationService.getOne(data.reservationId);\n if (!reservation) {\n throw new Error('Reservation not found');\n }\n const reservationClass = await this.reservationClassService.getOne(reservation.reservationClassId);\n if (!reservationClass || !reservationClass.transitions) {\n throw new Error('Transition not found');\n }\n const transition = reservationClass.transitions.find((t) => t.id === data.transitionId);\n if (!transition) {\n throw new Error('Transition not found');\n }\n // Update reservation status\n await this.reservationService.updateOne(data.reservationId, {\n reservationStatusId: transition.toStatusId,\n });\n // Create event record\n // This should be done through ReservationEvent entity\n }\n /**\n * Resolve reservation type from code\n */\n async resolveReservationType(code) {\n const result = await this.reservationTypeService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'code',\n operator: { type: 'equal' },\n value: code,\n },\n ],\n },\n });\n if (result.items && result.items.length > 0) {\n return result.items[0].id;\n }\n return null;\n }\n /**\n * Get widget context (statuses, transitions, policy)\n */\n async getWidgetContext(params) {\n const { classId, reservationTypeId } = params;\n // If classId is provided, get statuses and transitions from class\n if (classId) {\n const reservationClass = await this.reservationClassService.getOne(classId);\n if (reservationClass) {\n // Get allowed statuses\n const allowedStatusIds = reservationClass.allowedStatuses?.map((s) => s.reservationStatusId).filter(Boolean) || [];\n const statuses = allowedStatusIds.length\n ? await Promise.all(allowedStatusIds.map((id) => this.reservationStatusService.getOne(id).catch(() => null)))\n : [];\n // Get transitions\n const transitions = reservationClass.transitions?.filter((t) => t.isActive) || [];\n return {\n statuses: statuses.filter(Boolean),\n transitions,\n policy: {\n conflictPolicy: reservationClass.conflictPolicy,\n allowHold: reservationClass.allowHold,\n requiresApproval: reservationClass.requiresApproval,\n },\n };\n }\n }\n // Fallback: get all active statuses\n const allStatusesResult = await this.reservationStatusService.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'isActive',\n operator: { type: 'equal' },\n value: true,\n },\n ],\n },\n sort: [{ field: 'order', dir: 'asc' }],\n });\n return {\n statuses: allStatusesResult.items || [],\n transitions: [],\n policy: {},\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvc2VydmljZXMvcmVzZXJ2YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLCtDQUErQyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDMUgsT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDN0gsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDdkgsT0FBTyxFQUFFLDBDQUEwQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBUXpHLFlBQVk7QUFFWiwrQkFBK0I7QUFHL0IsTUFBTSxPQUFPLHFCQUFxQjtJQURsQztRQUVtQix1QkFBa0IsR0FBRyxNQUFNLENBQUMsMENBQTBDLENBQUMsQ0FBQztRQUN4RSw0QkFBdUIsR0FBRyxNQUFNLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUNsRiwyQkFBc0IsR0FBRyxNQUFNLENBQUMsOENBQThDLENBQUMsQ0FBQztRQUNoRiw2QkFBd0IsR0FBRyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQztLQTRUdEc7SUExVEM7O09BRUc7SUFDSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsaUJBQXlCO1FBQ2pELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQztZQUN0RCxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxHQUFHO1lBQ1QsTUFBTSxFQUFFO2dCQUNOLEtBQUssRUFBRSxLQUFLO2dCQUNaLE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxLQUFLLEVBQUUsbUJB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RSxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDO1NBQ3ZDLENBQUMsQ0FBQztRQUVILE9BQU87WUFDTCxRQUFRLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDdkMsV0FBVyxFQUFFLEVBQUU7WUFDZixNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUM7SUFDSixDQUFDOytHQS9UVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQURSLE1BQU07OzRGQUNuQixxQkFBcUI7a0JBRGpDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlIH0gZnJvbSAnLi4vZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UgfSBmcm9tICcuLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSB9IGZyb20gJy4uL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSB9IGZyb20gJy4uL2VudGl0aWVzL3Jlc2VydmF0aW9uL3Jlc2VydmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25Db25mbGljdCxcbiAgQVhQUmVzZXJ2YXRpb25DcmVhdGVEYXRhLFxuICBBWFBSZXNlcnZhdGlvbkhvbGRDcmVhdGVEYXRhLFxuICBBWFBSZXNlcnZhdGlvblRyYW5zaXRpb25EYXRhLFxufSBmcm9tICcuLi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgU2VydmljZSAgIC0tLS1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlID0gaW5qZWN0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXNlcnZhdGlvblR5cGVTZXJ2aWNlID0gaW5qZWN0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU3RhdHVzU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBHZXQgYXZhaWxhYmxlIHJlc2VydmF0aW9uIGNsYXNzZXMgZm9yIGEgcmVzb3VyY2UgdHlwZVxuICAgKi9cbiAgYXN5bmMgZ2V0QXZhaWxhYmxlQ2xhc3NlcyhyZXNlcnZhdGlvblR5cGVJZDogc3RyaW5nKTogUHJvbWlzZTxhbnlbXT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UucXVlcnkoe1xuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwMCxcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3Jlc2VydmF0aW9uVHlwZUlkJyxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgfSxcbiAgICAgICAgICAgIHZhbHVlOiByZXNlcnZhdGlvblR5cGVJZCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnaXNBY3RpdmUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgICAgdmFsdWU6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdC5pdGVtcyB8fCBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgcmVzZXJ2YXRpb25zIGZvciBhIHJlc291cmNlXG4gICAqL1xuICBhc3luYyBnZXRSZXNlcnZhdGlvbnMoXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICBzdGFydERhdGU/OiBEYXRlLFxuICAgIGVuZERhdGU/OiBEYXRlLFxuICApOiBQcm9taXNlPGFueVtdPiB7XG4gICAgY29uc3QgZmlsdGVyOiBhbnkgPSB7XG4gICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICBmaWx0ZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmaWVsZDogJ3Jlc291cmNlRW50aXR5SWQnLFxuICAgICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgfSxcbiAgICAgICAgICB2YWx1ZTogcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGZpZWxkOiAncmVzb3VyY2VJZCcsXG4gICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgIHZhbHVlOiByZXNvdXJjZUlkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgaWYgKHN0YXJ0RGF0ZSAmJiBlbmREYXRlKSB7XG4gICAgICBmaWx0ZXIuZmlsdGVycy5wdXNoKHtcbiAgICAgICAgbG9naWM6ICdvcicsXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3N0YXJ0RGF0ZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnYmV0d2VlbicgfSxcbiAgICAgICAgICAgIHZhbHVlOiBbc3RhcnREYXRlLCBlbmREYXRlXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnZW5kRGF0ZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnYmV0d2VlbicgfSxcbiAgICAgICAgICAgIHZhbHVlOiBbc3RhcnREYXRlLCBlbmREYXRlXSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UucXVlcnkoe1xuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwMDAsXG4gICAgICBmaWx0ZXIsXG4gICAgICBzb3J0OiBbeyBmaWVsZDogJ3N0YXJ0RGF0ZScsIGRpcjogJ2FzYycgfV0sXG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0Lml0ZW1zIHx8IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGZvciBjb25mbGljdHNcbiAgICovXG4gIGFzeW5jIGNoZWNrQ29uZmxpY3QoXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICBzdGFydERhdGU6IERhdGUsXG4gICAgZW5kRGF0ZTogRGF0ZSxcbiAgICBleGNsdWRlUmVzZXJ2YXRpb25JZD86IHN0cmluZyxcbiAgKTogUHJvbWlzZTxBWFBSZXNlcnZhdGlvbkNvbmZsaWN0W10+IHtcbiAgICBjb25zdCByZXNlcnZhdGlvbnMgPSBhd2FpdCB0aGlzLmdldFJlc2VydmF0aW9ucyhyZXNvdXJjZUVudGl0eUlkLCByZXNvdXJjZUlkLCBzdGFydERhdGUsIGVuZERhdGUpO1xuXG4gICAgY29uc3QgY29uZmxpY3RzOiBBWFBSZXNlcnZhdGlvbkNvbmZsaWN0W10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgcmVzZXJ2YXRpb24gb2YgcmVzZXJ2YXRpb25zKSB7XG4gICAgICBpZiAoZXhjbHVkZVJlc2VydmF0aW9uSWQgJiYgcmVzZXJ2YXRpb24uaWQgPT09IGV4Y2x1ZGVSZXNlcnZhdGlvbklkKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGVjayBpZiBkYXRlcyBvdmVybGFwXG4gICAgICBpZiAoXG4gICAgICAgIChyZXNlcnZhdGlvbi5zdGFydERhdGUgPD0gc3RhcnREYXRlICYmIHJlc2VydmF0aW9uLmVuZERhdGUgPj0gc3RhcnREYXRlKSB8fFxuICAgICAgICAocmVzZXJ2YXRpb24uc3RhcnREYXRlIDw9IGVuZERhdGUgJiYgcmVzZXJ2YXRpb24uZW5kRGF0ZSA+PSBlbmREYXRlKSB8fFxuICAgICAgICAocmVzZXJ2YXRpb24uc3RhcnREYXRlID49IHN0YXJ0RGF0ZSAmJiByZXNlcnZhdGlvbi5lbmREYXRlIDw9IGVuZERhdGUpXG4gICAgICApIHtcbiAgICAgICAgLy8gSWYgaXQncyBhIGJsb2NraW5nIGhvbGQsIGFsd2F5cyBjb25mbGljdFxuICAgICAgICBpZiAocmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kID09PSAnaG9sZCcgJiYgcmVzZXJ2YXRpb24uaXNCbG9ja2luZykge1xuICAgICAgICAgIGNvbmZsaWN0cy5wdXNoKHtcbiAgICAgICAgICAgIHJlc2VydmF0aW9uSWQ6IHJlc2VydmF0aW9uLmlkLFxuICAgICAgICAgICAgc3RhcnREYXRlOiByZXNlcnZhdGlvbi5zdGFydERhdGUsXG4gICAgICAgICAgICBlbmREYXRlOiByZXNlcnZhdGlvbi5lbmREYXRlLFxuICAgICAgICAgICAga2luZDogcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kLFxuICAgICAgICAgICAgaXNCbG9ja2luZzogcmVzZXJ2YXRpb24uaXNCbG9ja2luZyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChyZXNlcnZhdGlvbi5yZXNlcnZhdGlvbktpbmQgPT09ICdyZXNlcnZhdGlvbicpIHtcbiAgICAgICAgICAvLyBDaGVjayBjb25mbGljdCBwb2xpY3kgZnJvbSBjbGFzc1xuICAgICAgICAgIC8vIEZvciBub3csIHRyZWF0IGFsbCByZXNlcnZhdGlvbnMgYXMgcG90ZW50aWFsIGNvbmZsaWN0c1xuICAgICAgICAgIGNvbmZsaWN0cy5wdXNoKHtcbiAgICAgICAgICAgIHJlc2VydmF0aW9uSWQ6IHJlc2VydmF0aW9uLmlkLFxuICAgICAgICAgICAgc3RhcnREYXRlOiByZXNlcnZhdGlvbi5zdGFydERhdGUsXG4gICAgICAgICAgICBlbmREYXRlOiByZXNlcnZhdGlvbi5lbmREYXRlLFxuICAgICAgICAgICAga2luZDogcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kLFxuICAgICAgICAgICAgaXNCbG9ja2luZzogZmFsc2UsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmxpY3RzO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIHJlc2VydmF0aW9uXG4gICAqL1xuICBhc3luYyBjcmVhdGVSZXNlcnZhdGlvbihcbiAgICBkYXRhOiBBWFBSZXNlcnZhdGlvbkNyZWF0ZURhdGEsXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCByZXNlcnZhdGlvbkRhdGEgPSB7XG4gICAgICByZXNlcnZhdGlvbkNsYXNzSWQ6IGRhdGEucmVzZXJ2YXRpb25DbGFzc0lkLFxuICAgICAgcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgIHJlc291cmNlSWQsXG4gICAgICBzdGFydERhdGU6IGRhdGEuc3RhcnREYXRlVGltZSxcbiAgICAgIGVuZERhdGU6IGRhdGEuZW5kRGF0ZVRpbWUsXG4gICAgICBub3RlOiBkYXRhLm5vdGUsXG4gICAgICByZXNlcnZhdGlvbktpbmQ6ICdyZXNlcnZhdGlvbicsXG4gICAgICAvLyBHZXQgaW5pdGlhbCBzdGF0dXMgZnJvbSBjbGFzc1xuICAgICAgLy8gVGhpcyBzaG91bGQgYmUgc2V0IGJhc2VkIG9uIGNsYXNzIGFsbG93ZWQgc3RhdHVzZXNcbiAgICB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucmVzZXJ2YXRpb25TZXJ2aWNlLmluc2VydE9uZShyZXNlcnZhdGlvbkRhdGEgYXMgYW55KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBob2xkXG4gICAqL1xuICBhc3luYyBjcmVhdGVIb2xkKGRhdGE6IEFYUFJlc2VydmF0aW9uSG9sZENyZWF0ZURhdGEsIHJlc291cmNlRW50aXR5SWQ6IHN0cmluZywgcmVzb3VyY2VJZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBob2xkRGF0YSA9IHtcbiAgICAgIHJlc291cmNlRW50aXR5SWQsXG4gICAgICByZXNvdXJjZUlkLFxuICAgICAgc3RhcnREYXRlOiBkYXRhLnN0YXJ0RGF0ZVRpbWUsXG4gICAgICBlbmREYXRlOiBkYXRhLmVuZERhdGVUaW1lLFxuICAgICAgaXNCbG9ja2luZzogZGF0YS5pc0Jsb2NraW5nLFxuICAgICAgbm90ZTogZGF0YS5ob2xkUmVhc29uLFxuICAgICAgcmVzZXJ2YXRpb25LaW5kOiAnaG9sZCcsXG4gICAgICAvLyBIb2xkIHR5cGUgc2hvdWxkIGJlIHN0b3JlZCBpbiBhIGZpZWxkXG4gICAgfTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5pbnNlcnRPbmUoaG9sZERhdGEgYXMgYW55KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYXZhaWxhYmxlIHRyYW5zaXRpb25zIGZvciBhIHJlc2VydmF0aW9uXG4gICAqL1xuICBhc3luYyBnZXRBdmFpbGFibGVUcmFuc2l0aW9ucyhyZXNlcnZhdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPGFueVtdPiB7XG4gICAgLy8gR2V0IHJlc2VydmF0aW9uIHRvIGZpbmQgaXRzIGNsYXNzXG4gICAgY29uc3QgcmVzZXJ2YXRpb24gPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRPbmUocmVzZXJ2YXRpb25JZCk7XG4gICAgaWYgKCFyZXNlcnZhdGlvbiB8fCAhcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25DbGFzc0lkKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgLy8gR2V0IGNsYXNzIHRvIGZpbmQgdHJhbnNpdGlvbnNcbiAgICBjb25zdCByZXNlcnZhdGlvbkNsYXNzID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvbkNsYXNzU2VydmljZS5nZXRPbmUocmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25DbGFzc0lkKTtcbiAgICBpZiAoIXJlc2VydmF0aW9uQ2xhc3MgfHwgIXJlc2VydmF0aW9uQ2xhc3MudHJhbnNpdGlvbnMpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgYWN0aXZlIHRyYW5zaXRpb25zIHRoYXQgbWF0Y2ggY3VycmVudCBzdGF0dXNcbiAgICByZXR1cm4gcmVzZXJ2YXRpb25DbGFzcy50cmFuc2l0aW9ucy5maWx0ZXIoXG4gICAgICAodDogYW55KSA9PiB0LmlzQWN0aXZlICYmIHQuZnJvbVN0YXR1c0lkID09PSByZXNlcnZhdGlvbi5yZXNlcnZhdGlvblN0YXR1c0lkLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZSBhIHRyYW5zaXRpb25cbiAgICovXG4gIGFzeW5jIGV4ZWN1dGVUcmFuc2l0aW9uKGRhdGE6IEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbkRhdGEpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBHZXQgdHJhbnNpdGlvbiBkZXRhaWxzXG4gICAgY29uc3QgcmVzZXJ2YXRpb24gPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRPbmUoZGF0YS5yZXNlcnZhdGlvbklkKTtcbiAgICBpZiAoIXJlc2VydmF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Jlc2VydmF0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc2VydmF0aW9uQ2xhc3MgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlLmdldE9uZShyZXNlcnZhdGlvbi5yZXNlcnZhdGlvbkNsYXNzSWQpO1xuICAgIGlmICghcmVzZXJ2YXRpb25DbGFzcyB8fCAhcmVzZXJ2YXRpb25DbGFzcy50cmFuc2l0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2l0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHRyYW5zaXRpb24gPSByZXNlcnZhdGlvbkNsYXNzLnRyYW5zaXRpb25zLmZpbmQoKHQ6IGFueSkgPT4gdC5pZCA9PT0gZGF0YS50cmFuc2l0aW9uSWQpO1xuICAgIGlmICghdHJhbnNpdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2l0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSByZXNlcnZhdGlvbiBzdGF0dXNcbiAgICBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS51cGRhdGVPbmUoZGF0YS5yZXNlcnZhdGlvbklkLCB7XG4gICAgICByZXNlcnZhdGlvblN0YXR1c0lkOiB0cmFuc2l0aW9uLnRvU3RhdHVzSWQsXG4gICAgfSBhcyBhbnkpO1xuXG4gICAgLy8gQ3JlYXRlIGV2ZW50IHJlY29yZFxuICAgIC8vIFRoaXMgc2hvdWxkIGJlIGRvbmUgdGhyb3VnaCBSZXNlcnZhdGlvbkV2ZW50IGVudGl0eVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmUgcmVzZXJ2YXRpb24gdHlwZSBmcm9tIGNvZGVcbiAgICovXG4gIGFzeW5jIHJlc29sdmVSZXNlcnZhdGlvblR5cGUoY29kZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblR5cGVTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgIHNraXA6IDAsXG4gICAgICB0YWtlOiAxLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgZmlsdGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnY29kZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnZXF1YWwnIH0sXG4gICAgICAgICAgICB2YWx1ZTogY29kZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChyZXN1bHQuaXRlbXMgJiYgcmVzdWx0Lml0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiByZXN1bHQuaXRlbXNbMF0uaWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHdpZGdldCBjb250ZXh0IChzdGF0dXNlcywgdHJhbnNpdGlvbnMsIHBvbGljeSlcbiAgICovXG4gIGFzeW5jIGdldFdpZGdldENvbnRleHQocGFyYW1zOiB7XG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nO1xuICAgIHJlc291cmNlSWQ6IHN0cmluZztcbiAgICByZXNlcnZhdGlvblR5cGVJZDogc3RyaW5nO1xuICAgIGNsYXNzSWQ/OiBzdHJpbmc7XG4gIH0pOiBQcm9taXNlPHtcbiAgICBzdGF0dXNlczogYW55W107XG4gICAgdHJhbnNpdGlvbnM6IGFueVtdO1xuICAgIHBvbGljeTogeyBjb25mbGljdFBvbGljeT86ICdzdHJpY3QnIHwgJ3NvZnQnOyBhbGxvd0hvbGQ/OiBib29sZWFuOyByZXF1aXJlc0FwcHJvdmFsPzogYm9vbGVhbiB9O1xuICB9PiB7XG4gICAgY29uc3QgeyBjbGFzc0lkLCByZXNlcnZhdGlvblR5cGVJZCB9ID0gcGFyYW1zO1xuXG4gICAgLy8gSWYgY2xhc3NJZCBpcyBwcm92aWRlZCwgZ2V0IHN0YXR1c2VzIGFuZCB0cmFuc2l0aW9ucyBmcm9tIGNsYXNzXG4gICAgaWYgKGNsYXNzSWQpIHtcbiAgICAgIGNvbnN0IHJlc2VydmF0aW9uQ2xhc3MgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlLmdldE9uZShjbGFzc0lkKTtcbiAgICAgIGlmIChyZXNlcnZhdGlvbkNsYXNzKSB7XG4gICAgICAgIC8vIEdldCBhbGxvd2VkIHN0YXR1c2VzXG4gICAgICAgIGNvbnN0IGFsbG93ZWRTdGF0dXNJZHMgPVxuICAgICAgICAgIHJlc2VydmF0aW9uQ2xhc3MuYWxsb3dlZFN0YXR1c2VzPy5tYXAoKHM6IGFueSkgPT4gcy5yZXNlcnZhdGlvblN0YXR1c0lkKS5maWx0ZXIoQm9vbGVhbikgfHwgW107XG4gICAgICAgIGNvbnN0IHN0YXR1c2VzID0gYWxsb3dlZFN0YXR1c0lkcy5sZW5ndGhcbiAgICAgICAgICA/IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICBhbGxvd2VkU3RhdHVzSWRzLm1hcCgoaWQ6IHN0cmluZykgPT4gdGhpcy5yZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UuZ2V0T25lKGlkKS5jYXRjaCgoKSA9PiBudWxsKSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBbXTtcblxuICAgICAgICAvLyBHZXQgdHJhbnNpdGlvbnNcbiAgICAgICAgY29uc3QgdHJhbnNpdGlvbnMgPSByZXNlcnZhdGlvbkNsYXNzLnRyYW5zaXRpb25zPy5maWx0ZXIoKHQ6IGFueSkgPT4gdC5pc0FjdGl2ZSkgfHwgW107XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBzdGF0dXNlczogc3RhdHVzZXMuZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgIHRyYW5zaXRpb25zLFxuICAgICAgICAgIHBvbGljeToge1xuICAgICAgICAgICAgY29uZmxpY3RQb2xpY3k6IHJlc2VydmF0aW9uQ2xhc3MuY29uZmxpY3RQb2xpY3ksXG4gICAgICAgICAgICBhbGxvd0hvbGQ6IHJlc2VydmF0aW9uQ2xhc3MuYWxsb3dIb2xkLFxuICAgICAgICAgICAgcmVxdWlyZXNBcHByb3ZhbDogcmVzZXJ2YXRpb25DbGFzcy5yZXF1aXJlc0FwcHJvdmFsLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmFsbGJhY2s6IGdldCBhbGwgYWN0aXZlIHN0YXR1c2VzXG4gICAgY29uc3QgYWxsU3RhdHVzZXNSZXN1bHQgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU3RhdHVzU2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMTAwLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgZmlsdGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnaXNBY3RpdmUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgICAgdmFsdWU6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBzb3J0OiBbeyBmaWVsZDogJ29yZGVyJywgZGlyOiAnYXNjJyB9XSxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdGF0dXNlczogYWxsU3RhdHVzZXNSZXN1bHQuaXRlbXMgfHwgW10sXG4gICAgICB0cmFuc2l0aW9uczogW10sXG4gICAgICBwb2xpY3k6IHt9LFxuICAgIH07XG4gIH1cbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDataTableModule } from '@acorex/components/data-table';\nimport { AXDateTimeBoxModule } from '@acorex/components/datetime-box';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPReservationService } from '../../services/reservation.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/check-box\";\nimport * as i4 from \"@acorex/components/data-table\";\nimport * as i5 from \"@acorex/components/datetime-box\";\nimport * as i6 from \"@acorex/components/label\";\nimport * as i7 from \"@acorex/components/select-box\";\nimport * as i8 from \"@angular/common\";\nfunction normalizeReservation(r) {\n return {\n id: r.id,\n kind: (r.kind ?? r.reservationKind),\n statusId: r.statusId ?? r.reservationStatusId,\n status: r.status ?? r.reservationStatus,\n startDate: r.startDate instanceof Date ? r.startDate : new Date(r.startDate),\n endDate: r.endDate instanceof Date ? r.endDate : new Date(r.endDate),\n requestedBy: r.requestedByRef ?? r.requestedBy,\n approvedBy: r.approvedByRef ?? r.approvedBy,\n note: r.note ?? '',\n isBlocking: r.isBlocking,\n };\n}\n//#endregion\n//#region ---- Component ----\nexport class AXPReservationPanelWidgetComponent extends AXPValueWidgetComponent {\n //#endregion\n //#region ---- Effects ----\n constructor() {\n super();\n //#region ---- Services & Dependencies ----\n this.reservationService = inject(AXPReservationService);\n //#endregion\n //#region ---- Computed Properties from Options ----\n this.resourceEntityId = computed(() => {\n const opts = this.options();\n return opts?.resourceEntityId || '';\n }, ...(ngDevMode ? [{ debugName: \"resourceEntityId\" }] : []));\n this.resourceId = computed(() => {\n const opts = this.options();\n const resourceIdOption = opts?.resourceId;\n if (typeof resourceIdOption === 'string' && resourceIdOption.includes('{{')) {\n try {\n const contextId = this.contextService.getValue(this.fullPath()?.split('.').slice(0, -1).join('.') + '.id');\n if (contextId)\n return contextId;\n return this.contextService.getValue('id') || '';\n }\n catch {\n return '';\n }\n }\n return resourceIdOption || this.contextService.getValue('id') || '';\n }, ...(ngDevMode ? [{ debugName: \"resourceId\" }] : []));\n this.resourceRef = computed(() => {\n const opts = this.options();\n return opts?.resourceRef;\n }, ...(ngDevMode ? [{ debugName: \"resourceRef\" }] : []));\n this.reservationTypeId = computed(() => {\n const opts = this.options();\n return opts?.reservationTypeId;\n }, ...(ngDevMode ? [{ debugName: \"reservationTypeId\" }] : []));\n this.reservationTypeCode = computed(() => {\n const opts = this.options();\n return opts?.reservationTypeCode;\n }, ...(ngDevMode ? [{ debugName: \"reservationTypeCode\" }] : []));\n this.defaultClassId = computed(() => {\n const opts = this.options();\n return opts?.defaultClassId;\n }, ...(ngDevMode ? [{ debugName: \"defaultClassId\" }] : []));\n this.displayMode = computed(() => {\n const opts = this.options();\n return opts?.mode || 'both';\n }, ...(ngDevMode ? [{ debugName: \"displayMode\" }] : []));\n this.readonly = computed(() => {\n const opts = this.options();\n return opts?.readonly || false;\n }, ...(ngDevMode ? [{ debugName: \"readonly\" }] : []));\n this.dateRangeDays = computed(() => {\n const opts = this.options();\n return opts?.dateRangeDays || 30;\n }, ...(ngDevMode ? [{ debugName: \"dateRangeDays\" }] : []));\n this.allowHold = computed(() => {\n const opts = this.options();\n return opts?.allowHold;\n }, ...(ngDevMode ? [{ debugName: \"allowHold\" }] : []));\n //#endregion\n //#region ---- State ----\n this.viewMode = signal('split', ...(ngDevMode ? [{ debugName: \"viewMode\" }] : []));\n this.selectedClassId = signal(null, ...(ngDevMode ? [{ debugName: \"selectedClassId\" }] : []));\n this.dateFrom = signal(new Date(), ...(ngDevMode ? [{ debugName: \"dateFrom\" }] : []));\n this.dateTo = signal(new Date(), ...(ngDevMode ? [{ debugName: \"dateTo\" }] : []));\n this.showReservations = signal(true, ...(ngDevMode ? [{ debugName: \"showReservations\" }] : []));\n this.showHolds = signal(true, ...(ngDevMode ? [{ debugName: \"showHolds\" }] : []));\n this.selectedStatusIds = signal([], ...(ngDevMode ? [{ debugName: \"selectedStatusIds\" }] : []));\n this.reservations = signal([], ...(ngDevMode ? [{ debugName: \"reservations\" }] : []));\n this.availableClasses = signal([], ...(ngDevMode ? [{ debugName: \"availableClasses\" }] : []));\n this.availableStatuses = signal([], ...(ngDevMode ? [{ debugName: \"availableStatuses\" }] : []));\n this.transitions = signal([], ...(ngDevMode ? [{ debugName: \"transitions\" }] : []));\n this.policy = signal({}, ...(ngDevMode ? [{ debugName: \"policy\" }] : []));\n //#endregion\n //#region ---- Computed ----\n this.filteredReservations = computed(() => {\n let filtered = this.reservations();\n if (!this.showReservations()) {\n filtered = filtered.filter((r) => r.kind !== 'reservation');\n }\n if (!this.showHolds()) {\n filtered = filtered.filter((r) => r.kind !== 'hold');\n }\n const statusIds = this.selectedStatusIds();\n if (statusIds.length > 0) {\n filtered = filtered.filter((r) => statusIds.includes(r.statusId));\n }\n return filtered;\n }, ...(ngDevMode ? [{ debugName: \"filteredReservations\" }] : []));\n this.classDataSource = computed(() => {\n return this.availableClasses().map((c) => ({ id: c.id, title: c.title }));\n }, ...(ngDevMode ? [{ debugName: \"classDataSource\" }] : []));\n this.statusDataSource = computed(() => {\n return this.availableStatuses().map((s) => ({ id: s.id, title: s.title, color: s.color }));\n }, ...(ngDevMode ? [{ debugName: \"statusDataSource\" }] : []));\n this.tableDataSource = computed(() => {\n const items = this.filteredReservations().map((r) => ({\n ...r,\n startDate: r.startDate.toISOString(),\n endDate: r.endDate.toISOString(),\n statusTitle: r.status?.title || 'Unknown',\n requestedByName: r.requestedBy?.displayName || r.requestedBy?.name || '-',\n approvedByName: r.approvedBy?.displayName || r.approvedBy?.name || '-',\n }));\n return new AXDataSource({\n load: async () => ({\n items,\n total: items.length,\n }),\n pageSize: items.length || 1,\n key: 'id',\n });\n }, ...(ngDevMode ? [{ debugName: \"tableDataSource\" }] : []));\n this.timelineDays = computed(() => {\n const reservations = this.filteredReservations();\n const days = new Map();\n reservations.forEach((res) => {\n const start = new Date(res.startDate);\n const end = new Date(res.endDate);\n const current = new Date(start);\n while (current <= end) {\n const key = current.toISOString().split('T')[0];\n if (!days.has(key)) {\n days.set(key, []);\n }\n days.get(key).push(res);\n current.setDate(current.getDate() + 1);\n }\n });\n return Array.from(days.entries())\n .map(([dateStr, resList]) => ({\n date: new Date(dateStr),\n reservations: resList,\n }))\n .sort((a, b) => a.date.getTime() - b.date.getTime());\n }, ...(ngDevMode ? [{ debugName: \"timelineDays\" }] : []));\n // Initialize date range\n const today = new Date();\n const days = this.dateRangeDays();\n this.dateFrom.set(new Date(today.getTime() - days * 24 * 60 * 60 * 1000));\n this.dateTo.set(new Date(today.getTime() + days * 24 * 60 * 60 * 1000));\n // Set view mode based on input\n effect(() => {\n const mode = this.displayMode();\n if (mode === 'calendar') {\n this.viewMode.set('calendar');\n }\n else if (mode === 'list') {\n this.viewMode.set('list');\n }\n });\n // Reactive data loading\n effect(() => {\n const resourceId = this.resourceId();\n const resourceEntityId = this.resourceEntityId();\n const classId = this.selectedClassId();\n const from = this.dateFrom();\n const to = this.dateTo();\n if (resourceId && resourceEntityId) {\n this.loadData();\n }\n });\n }\n //#endregion\n //#region ---- Methods ----\n async loadData() {\n // Resolve reservation type\n let typeId = this.reservationTypeId();\n if (!typeId && this.reservationTypeCode()) {\n typeId = (await this.reservationService.resolveReservationType(this.reservationTypeCode())) || undefined;\n }\n if (!typeId) {\n return;\n }\n // Load classes\n const classes = await this.reservationService.getAvailableClasses(typeId);\n this.availableClasses.set(classes);\n // Auto-select class if only one\n if (classes.length === 1 && !this.selectedClassId()) {\n this.selectedClassId.set(classes[0].id);\n }\n else if (this.defaultClassId() && !this.selectedClassId()) {\n this.selectedClassId.set(this.defaultClassId());\n }\n const classId = this.selectedClassId();\n const resourceId = this.resourceId();\n const resourceEntityId = this.resourceEntityId();\n if (!classId || !resourceId || !resourceEntityId) {\n return;\n }\n // Load context (statuses, transitions, policy)\n const context = await this.reservationService.getWidgetContext({\n resourceEntityId,\n resourceId,\n reservationTypeId: typeId,\n classId,\n });\n this.availableStatuses.set(context.statuses);\n this.transitions.set(context.transitions);\n this.policy.set(context.policy);\n // Load reservations\n const reservations = await this.reservationService.getReservations(resourceEntityId, resourceId, this.dateFrom(), this.dateTo());\n const normalized = reservations.map(normalizeReservation);\n // Enrich with status data\n const enriched = normalized.map((res) => ({\n ...res,\n status: this.availableStatuses().find((s) => s.id === res.statusId),\n }));\n this.reservations.set(enriched);\n }\n setDateRange(range) {\n const today = new Date();\n let from;\n let to;\n switch (range) {\n case 'today':\n from = new Date(today);\n to = new Date(today);\n break;\n case 'week':\n from = new Date(today);\n from.setDate(today.getDate() - today.getDay());\n to = new Date(from);\n to.setDate(from.getDate() + 6);\n break;\n case 'month':\n from = new Date(today.getFullYear(), today.getMonth(), 1);\n to = new Date(today.getFullYear(), today.getMonth() + 1, 0);\n break;\n }\n this.dateFrom.set(from);\n this.dateTo.set(to);\n }\n getAvailableTransitions(reservation) {\n return this.transitions().filter((t) => t.fromStatusId === reservation.statusId && t.isActive);\n }\n openCreateReservationModal() {\n console.log('Open create reservation modal');\n }\n openCreateHoldModal() {\n console.log('Open create hold modal');\n }\n openReservationDetails(reservationId) {\n console.log('Open reservation details:', reservationId);\n }\n openTransitionModal(reservationId, transitionId) {\n console.log('Open transition modal:', reservationId, transitionId);\n }\n getCommandItems() {\n return [\n { name: 'view', text: 'View', icon: 'fa-light fa-eye' },\n // Transitions will be added dynamically per row\n ];\n }\n handleCommandClick(event) {\n const item = event.item || event;\n const row = event.row || event.dataItem || event.data;\n if (item.name === 'view') {\n this.openReservationDetails(row.id);\n }\n else if (item.name?.startsWith('transition-')) {\n const transitionId = item.name.replace('transition-', '');\n this.openTransitionModal(row.id, transitionId);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPanelWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.16\", type: AXPReservationPanelWidgetComponent, isStandalone: true, selector: \"axp-reservation-panel\", usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-h-full\">\n <!-- Header Toolbar -->\n <div class=\"ax-flex ax-items-center ax-justify-between ax-gap-4 ax-p-4 ax-border-b\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Class Selector -->\n @if (availableClasses().length > 1) {\n <ax-select-box\n class=\"ax-w-64\"\n [dataSource]=\"classDataSource()\"\n [ngModel]=\"selectedClassId() ?? ''\"\n (ngModelChange)=\"selectedClassId.set($event || null)\"\n valueField=\"id\"\n textField=\"title\"\n placeholder=\"Select Class\"\n look=\"outline\"\n ></ax-select-box>\n }\n\n <!-- View Toggle -->\n @if (displayMode() === 'both') {\n <div class=\"ax-flex ax-gap-1 ax-border ax-rounded\">\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'calendar'\"\n [class.ax-text-white]=\"viewMode() === 'calendar'\"\n (onClick)=\"viewMode.set('calendar')\"\n look=\"blank\"\n size=\"sm\"\n >\n Calendar\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'list'\"\n [class.ax-text-white]=\"viewMode() === 'list'\"\n (onClick)=\"viewMode.set('list')\"\n look=\"blank\"\n size=\"sm\"\n >\n List\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'split'\"\n [class.ax-text-white]=\"viewMode() === 'split'\"\n (onClick)=\"viewMode.set('split')\"\n look=\"blank\"\n size=\"sm\"\n >\n Split\n </ax-button>\n </div>\n }\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Date Range Controller -->\n <ax-button (onClick)=\"setDateRange('today')\" look=\"outline\" size=\"sm\">Today</ax-button>\n <ax-button (onClick)=\"setDateRange('week')\" look=\"outline\" size=\"sm\">Week</ax-button>\n <ax-button (onClick)=\"setDateRange('month')\" look=\"outline\" size=\"sm\">Month</ax-button>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateFrom()\"\n (ngModelChange)=\"dateFrom.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n <span class=\"ax-text-muted\">-</span>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateTo()\"\n (ngModelChange)=\"dateTo.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Filters -->\n <ax-check-box [ngModel]=\"showReservations()\" (ngModelChange)=\"showReservations.set($event)\">\n <ax-label>Reservations</ax-label>\n </ax-check-box>\n <ax-check-box [ngModel]=\"showHolds()\" (ngModelChange)=\"showHolds.set($event)\">\n <ax-label>Holds</ax-label>\n </ax-check-box>\n <ax-select-box\n class=\"ax-w-48\"\n [dataSource]=\"statusDataSource()\"\n [ngModel]=\"selectedStatusIds()\"\n (ngModelChange)=\"selectedStatusIds.set($event)\"\n valueField=\"id\"\n textField=\"title\"\n [multiple]=\"true\"\n placeholder=\"Filter by Status\"\n look=\"outline\"\n size=\"sm\"\n ></ax-select-box>\n\n <!-- Actions -->\n @if (!readonly()) {\n <ax-button (onClick)=\"openCreateReservationModal()\" look=\"primary\" size=\"sm\"> + New Reservation </ax-button>\n @if (allowHold()) {\n <ax-button (onClick)=\"openCreateHoldModal()\" look=\"outline\" size=\"sm\">+ New Hold</ax-button>\n }\n }\n </div>\n </div>\n\n <!-- Body -->\n <div class=\"ax-flex-1 ax-overflow-auto ax-p-4\">\n @if (viewMode() === 'calendar' || viewMode() === 'split') {\n <div class=\"calendar-view ax-mb-4\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">Calendar</h3>\n }\n <!-- Timeline View -->\n <div class=\"timeline-view\">\n @for (day of timelineDays(); track day.date.getTime()) {\n <div class=\"ax-border-b ax-pb-2 ax-mb-2\">\n <div class=\"ax-font-semibold ax-mb-2\">\n {{ day.date | date: 'EEEE, MMMM d, y' }}\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @for (reservation of day.reservations; track reservation.id) {\n <div\n class=\"ax-p-2 ax-rounded ax-border\"\n [style.border-left-color]=\"reservation.status?.color || '#ccc'\"\n [style.border-left-width]=\"'4px'\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs ax-font-semibold\"\n [class.ax-bg-success]=\"reservation.kind === 'reservation'\"\n [class.ax-bg-danger]=\"reservation.kind === 'hold'\"\n [class.ax-text-white]=\"true\"\n >\n {{ reservation.kind }}\n </span>\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs\"\n [style.background-color]=\"reservation.status?.color || '#ccc'\"\n [style.color]=\"'white'\"\n >\n {{ reservation.status?.title || 'Unknown' }}\n </span>\n <span class=\"ax-text-sm ax-text-muted\">\n {{ reservation.startDate | date: 'shortTime' }} -\n {{ reservation.endDate | date: 'shortTime' }}\n </span>\n </div>\n @if (reservation.note) {\n <div class=\"ax-text-sm ax-mt-1 ax-text-muted\">{{ reservation.note }}</div>\n }\n </div>\n }\n @if (day.reservations.length === 0) {\n <div class=\"ax-text-sm ax-text-muted ax-p-2\">No reservations</div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (viewMode() === 'list' || viewMode() === 'split') {\n <div class=\"list-view\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">List</h3>\n }\n <ax-data-table [dataSource]=\"tableDataSource()\" [showFooter]=\"false\" [paging]=\"false\">\n <ax-text-column dataField=\"kind\" [width]=\"'100px'\" caption=\"Kind\"></ax-text-column>\n <ax-text-column dataField=\"startDate\" [width]=\"'150px'\" caption=\"Start\"></ax-text-column>\n <ax-text-column dataField=\"endDate\" [width]=\"'150px'\" caption=\"End\"></ax-text-column>\n <ax-text-column dataField=\"statusTitle\" [width]=\"'120px'\" caption=\"Status\"></ax-text-column>\n <ax-text-column dataField=\"requestedByName\" [width]=\"'150px'\" caption=\"Requested By\"></ax-text-column>\n <ax-text-column dataField=\"approvedByName\" [width]=\"'150px'\" caption=\"Approved By\"></ax-text-column>\n <ax-text-column dataField=\"note\" caption=\"Note\"></ax-text-column>\n <ax-command-column\n fixed=\"end\"\n [width]=\"'200px'\"\n [items]=\"getCommandItems()\"\n (onItemClick)=\"handleCommandClick($event)\"\n ></ax-command-column>\n </ax-data-table>\n </div>\n }\n </div>\n </div>\n `, isInline: true, styles: [\".timeline-view{max-height:600px;overflow-y:auto}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXCheckBoxModule }, { kind: \"component\", type: i3.AXCheckBoxComponent, selector: \"ax-check-box\", inputs: [\"disabled\", \"tabIndex\", \"readonly\", \"color\", \"value\", \"name\", \"id\", \"isLoading\", \"indeterminate\"], outputs: [\"onBlur\", \"onFocus\", \"valueChange\", \"onValueChanged\"] }, { kind: \"ngmodule\", type: AXDataTableModule }, { kind: \"component\", type: i4.AXDataTableComponent, selector: \"ax-data-table\", inputs: [\"dataSource\", \"selectedRows\", \"parentField\", \"rowDetailsTemplate\", \"rowTemplate\", \"emptyTemplate\", \"noDataTemplate\", \"alternative\", \"showHeader\", \"fixedHeader\", \"showFooter\", \"fixedFooter\", \"itemHeight\", \"allowReordering\", \"paging\", \"fetchDataMode\", \"loading\", \"focusedRow\"], outputs: [\"selectedRowsChange\", \"focusedRowChange\", \"onRowClick\", \"onRowDbClick\", \"onColumnsOrderChanged\", \"onColumnSizeChanged\", \"onPageChanged\"] }, { kind: \"component\", type: i4.AXDataTableTextColumnComponent, selector: \"ax-text-column\", inputs: [\"width\", \"caption\", \"allowSorting\", \"allowResizing\", \"fixed\", \"customExpandIcon\", \"customCollapseIcon\", \"dataField\", \"expandHandler\", \"wrapText\", \"cellTemplate\", \"footerTemplate\", \"headerTemplate\", \"format\", \"formatOptions\"] }, { kind: \"component\", type: i4.AXRowCommandColumnComponent, selector: \"ax-command-column\", inputs: [\"width\", \"caption\", \"fixed\", \"footerTemplate\", \"items\"], outputs: [\"onItemClick\"] }, { kind: \"ngmodule\", type: AXDateTimeBoxModule }, { kind: \"component\", type: i5.AXDateTimeBoxComponent, selector: \"ax-datetime-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"minValue\", \"maxValue\", \"value\", \"state\", \"name\", \"depth\", \"id\", \"type\", \"look\", \"holidayDates\", \"allowTyping\", \"picker\", \"calendar\", \"weekend\", \"weekdays\", \"format\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"onOpened\", \"onClosed\", \"readonlyChange\", \"disabledChange\", \"formatChange\"] }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"component\", type: i6.AXLabelComponent, selector: \"ax-label\", inputs: [\"required\", \"for\"], outputs: [\"requiredChange\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"component\", type: i7.AXSelectBoxComponent, selector: \"ax-select-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"minValue\", \"maxValue\", \"value\", \"state\", \"name\", \"id\", \"type\", \"look\", \"multiple\", \"valueField\", \"textField\", \"disabledField\", \"textTemplate\", \"selectedItems\", \"isItemTruncated\", \"showItemTooltip\", \"itemHeight\", \"maxVisibleItems\", \"dataSource\", \"minRecordsForSearch\", \"caption\", \"itemTemplate\", \"selectedTemplate\", \"emptyTemplate\", \"loadingTemplate\", \"dropdownWidth\", \"searchBoxAutoFocus\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onOpened\", \"onClosed\", \"onItemSelected\", \"onItemClick\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i8.DatePipe, name: \"date\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPanelWidgetComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-reservation-panel', standalone: true, imports: [\n CommonModule,\n FormsModule,\n DatePipe,\n AXButtonModule,\n AXCheckBoxModule,\n AXDataTableModule,\n AXDateTimeBoxModule,\n AXLabelModule,\n AXSelectBoxModule,\n AXTranslationModule,\n ], template: `\n <div class=\"ax-flex ax-flex-col ax-h-full\">\n <!-- Header Toolbar -->\n <div class=\"ax-flex ax-items-center ax-justify-between ax-gap-4 ax-p-4 ax-border-b\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Class Selector -->\n @if (availableClasses().length > 1) {\n <ax-select-box\n class=\"ax-w-64\"\n [dataSource]=\"classDataSource()\"\n [ngModel]=\"selectedClassId() ?? ''\"\n (ngModelChange)=\"selectedClassId.set($event || null)\"\n valueField=\"id\"\n textField=\"title\"\n placeholder=\"Select Class\"\n look=\"outline\"\n ></ax-select-box>\n }\n\n <!-- View Toggle -->\n @if (displayMode() === 'both') {\n <div class=\"ax-flex ax-gap-1 ax-border ax-rounded\">\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'calendar'\"\n [class.ax-text-white]=\"viewMode() === 'calendar'\"\n (onClick)=\"viewMode.set('calendar')\"\n look=\"blank\"\n size=\"sm\"\n >\n Calendar\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'list'\"\n [class.ax-text-white]=\"viewMode() === 'list'\"\n (onClick)=\"viewMode.set('list')\"\n look=\"blank\"\n size=\"sm\"\n >\n List\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'split'\"\n [class.ax-text-white]=\"viewMode() === 'split'\"\n (onClick)=\"viewMode.set('split')\"\n look=\"blank\"\n size=\"sm\"\n >\n Split\n </ax-button>\n </div>\n }\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Date Range Controller -->\n <ax-button (onClick)=\"setDateRange('today')\" look=\"outline\" size=\"sm\">Today</ax-button>\n <ax-button (onClick)=\"setDateRange('week')\" look=\"outline\" size=\"sm\">Week</ax-button>\n <ax-button (onClick)=\"setDateRange('month')\" look=\"outline\" size=\"sm\">Month</ax-button>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateFrom()\"\n (ngModelChange)=\"dateFrom.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n <span class=\"ax-text-muted\">-</span>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateTo()\"\n (ngModelChange)=\"dateTo.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Filters -->\n <ax-check-box [ngModel]=\"showReservations()\" (ngModelChange)=\"showReservations.set($event)\">\n <ax-label>Reservations</ax-label>\n </ax-check-box>\n <ax-check-box [ngModel]=\"showHolds()\" (ngModelChange)=\"showHolds.set($event)\">\n <ax-label>Holds</ax-label>\n </ax-check-box>\n <ax-select-box\n class=\"ax-w-48\"\n [dataSource]=\"statusDataSource()\"\n [ngModel]=\"selectedStatusIds()\"\n (ngModelChange)=\"selectedStatusIds.set($event)\"\n valueField=\"id\"\n textField=\"title\"\n [multiple]=\"true\"\n placeholder=\"Filter by Status\"\n look=\"outline\"\n size=\"sm\"\n ></ax-select-box>\n\n <!-- Actions -->\n @if (!readonly()) {\n <ax-button (onClick)=\"openCreateReservationModal()\" look=\"primary\" size=\"sm\"> + New Reservation </ax-button>\n @if (allowHold()) {\n <ax-button (onClick)=\"openCreateHoldModal()\" look=\"outline\" size=\"sm\">+ New Hold</ax-button>\n }\n }\n </div>\n </div>\n\n <!-- Body -->\n <div class=\"ax-flex-1 ax-overflow-auto ax-p-4\">\n @if (viewMode() === 'calendar' || viewMode() === 'split') {\n <div class=\"calendar-view ax-mb-4\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">Calendar</h3>\n }\n <!-- Timeline View -->\n <div class=\"timeline-view\">\n @for (day of timelineDays(); track day.date.getTime()) {\n <div class=\"ax-border-b ax-pb-2 ax-mb-2\">\n <div class=\"ax-font-semibold ax-mb-2\">\n {{ day.date | date: 'EEEE, MMMM d, y' }}\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @for (reservation of day.reservations; track reservation.id) {\n <div\n class=\"ax-p-2 ax-rounded ax-border\"\n [style.border-left-color]=\"reservation.status?.color || '#ccc'\"\n [style.border-left-width]=\"'4px'\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs ax-font-semibold\"\n [class.ax-bg-success]=\"reservation.kind === 'reservation'\"\n [class.ax-bg-danger]=\"reservation.kind === 'hold'\"\n [class.ax-text-white]=\"true\"\n >\n {{ reservation.kind }}\n </span>\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs\"\n [style.background-color]=\"reservation.status?.color || '#ccc'\"\n [style.color]=\"'white'\"\n >\n {{ reservation.status?.title || 'Unknown' }}\n </span>\n <span class=\"ax-text-sm ax-text-muted\">\n {{ reservation.startDate | date: 'shortTime' }} -\n {{ reservation.endDate | date: 'shortTime' }}\n </span>\n </div>\n @if (reservation.note) {\n <div class=\"ax-text-sm ax-mt-1 ax-text-muted\">{{ reservation.note }}</div>\n }\n </div>\n }\n @if (day.reservations.length === 0) {\n <div class=\"ax-text-sm ax-text-muted ax-p-2\">No reservations</div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (viewMode() === 'list' || viewMode() === 'split') {\n <div class=\"list-view\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">List</h3>\n }\n <ax-data-table [dataSource]=\"tableDataSource()\" [showFooter]=\"false\" [paging]=\"false\">\n <ax-text-column dataField=\"kind\" [width]=\"'100px'\" caption=\"Kind\"></ax-text-column>\n <ax-text-column dataField=\"startDate\" [width]=\"'150px'\" caption=\"Start\"></ax-text-column>\n <ax-text-column dataField=\"endDate\" [width]=\"'150px'\" caption=\"End\"></ax-text-column>\n <ax-text-column dataField=\"statusTitle\" [width]=\"'120px'\" caption=\"Status\"></ax-text-column>\n <ax-text-column dataField=\"requestedByName\" [width]=\"'150px'\" caption=\"Requested By\"></ax-text-column>\n <ax-text-column dataField=\"approvedByName\" [width]=\"'150px'\" caption=\"Approved By\"></ax-text-column>\n <ax-text-column dataField=\"note\" caption=\"Note\"></ax-text-column>\n <ax-command-column\n fixed=\"end\"\n [width]=\"'200px'\"\n [items]=\"getCommandItems()\"\n (onItemClick)=\"handleCommandClick($event)\"\n ></ax-command-column>\n </ax-data-table>\n </div>\n }\n </div>\n </div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [\".timeline-view{max-height:600px;overflow-y:auto}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7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LGlCQUFpQjt3QkFDakIsbUJBQW1CO3FCQUNwQixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2TFQsbUJBU2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYRGF0YVNvdXJjZSB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEYXRhVGFibGVNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGF0YS10YWJsZSc7XG5pbXBvcnQgeyBBWERhdGVUaW1lQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RhdGV0aW1lLWJveCc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVzZXJ2YXRpb24uc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIE5vcm1hbGl6ZWQgUmVzZXJ2YXRpb24gTW9kZWwgICAtLS0tXG5cbmludGVyZmFjZSBOb3JtYWxpemVkUmVzZXJ2YXRpb24ge1xuICBpZDogc3RyaW5nO1xuICBraW5kOiAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnO1xuICBzdGF0dXNJZDogc3RyaW5nO1xuICBzdGF0dXM/OiB7IGlkOiBzdHJpbmc7IHRpdGxlOiBzdHJpbmc7IGNvbG9yOiBzdHJpbmc7IGljb24/OiBzdHJpbmcgfTtcbiAgc3RhcnREYXRlOiBEYXRlO1xuICBlbmREYXRlOiBEYXRlO1xuICByZXF1ZXN0ZWRCeT86IHsgaWQ6IHN0cmluZzsgZGlzcGxheU5hbWU/OiBzdHJpbmc7IG5hbWU/OiBzdHJpbmcgfTtcbiAgYXBwcm92ZWRCeT86IHsgaWQ6IHN0cmluZzsgZGlzcGxheU5hbWU/OiBzdHJpbmc7IG5hbWU/OiBzdHJpbmcgfTtcbiAgbm90ZTogc3RyaW5nO1xuICBpc0Jsb2NraW5nPzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplUmVzZXJ2YXRpb24ocjogYW55KTogTm9ybWFsaXplZFJlc2VydmF0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICBpZDogci5pZCxcbiAgICBraW5kOiAoci5raW5kID8/IHIucmVzZXJ2YXRpb25LaW5kKSBhcyAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnLFxuICAgIHN0YXR1c0lkOiByLnN0YXR1c0lkID8/IHIucmVzZXJ2YXRpb25TdGF0dXNJZCxcbiAgICBzdGF0dXM6IHIuc3RhdHVzID8/IHIucmVzZXJ2YXRpb25TdGF0dXMsXG4gICAgc3RhcnREYXRlOiByLnN0YXJ0RGF0ZSBpbnN0YW5jZW9mIERhdGUgPyByLnN0YXJ0RGF0ZSA6IG5ldyBEYXRlKHIuc3RhcnREYXRlKSxcbiAgICBlbmREYXRlOiByLmVuZERhdGUgaW5zdGFuY2VvZiBEYXRlID8gci5lbmREYXRlIDogbmV3IERhdGUoci5lbmREYXRlKSxcbiAgICByZXF1ZXN0ZWRCeTogci5yZXF1ZXN0ZWRCeVJlZiA/PyByLnJlcXVlc3RlZEJ5LFxuICAgIGFwcHJvdmVkQnk6IHIuYXBwcm92ZWRCeVJlZiA/PyByLmFwcHJvdmVkQnksXG4gICAgbm90ZTogci5ub3RlID8/ICcnLFxuICAgIGlzQmxvY2tpbmc6IHIuaXNCbG9ja2luZyxcbiAgfTtcbn1cblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgQ29tcG9uZW50ICAgLS0tLVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtcmVzZXJ2YXRpb24tcGFuZWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIERhdGVQaXBlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYQ2hlY2tCb3hNb2R1bGUsXG4gICAgQVhEYXRhVGFibGVNb2R1bGUsXG4gICAgQVhEYXRlVGltZUJveE1vZHVsZSxcbiAgICBBWExhYmVsTW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaC1mdWxsXCI+XG4gICAgICA8IS0tIEhlYWRlciBUb29sYmFyIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktYmV0d2VlbiBheC1nYXAtNCBheC1wLTQgYXgtYm9yZGVyLWJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgPCEtLSBDbGFzcyBTZWxlY3RvciAtLT5cbiAgICAgICAgICBAaWYgKGF2YWlsYWJsZUNsYXNzZXMoKS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICA8YXgtc2VsZWN0LWJveFxuICAgICAgICAgICAgICBjbGFzcz1cImF4LXctNjRcIlxuICAgICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJjbGFzc0RhdGFTb3VyY2UoKVwiXG4gICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkQ2xhc3NJZCgpID8/ICcnXCJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VsZWN0ZWRDbGFzc0lkLnNldCgkZXZlbnQgfHwgbnVsbClcIlxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwiaWRcIlxuICAgICAgICAgICAgICB0ZXh0RmllbGQ9XCJ0aXRsZVwiXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IENsYXNzXCJcbiAgICAgICAgICAgICAgbG9vaz1cIm91dGxpbmVcIlxuICAgICAgICAgICAgPjwvYXgtc2VsZWN0LWJveD5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICA8IS0tIFZpZXcgVG9nZ2xlIC0tPlxuICAgICAgICAgIEBpZiAoZGlzcGxheU1vZGUoKSA9PT0gJ2JvdGgnKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMSBheC1ib3JkZXIgYXgtcm91bmRlZFwiPlxuICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LWJnLXByaW1hcnldPVwidmlld01vZGUoKSA9PT0gJ2NhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidmlld01vZGUoKSA9PT0gJ2NhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwidmlld01vZGUuc2V0KCdjYWxlbmRhcicpXCJcbiAgICAgICAgICAgICAgICBsb29rPVwiYmxhbmtcIlxuICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBDYWxlbmRhclxuICAgICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1wcmltYXJ5XT1cInZpZXdNb2RlKCkgPT09ICdsaXN0J1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidmlld01vZGUoKSA9PT0gJ2xpc3QnXCJcbiAgICAgICAgICAgICAgICAob25DbGljayk9XCJ2aWV3TW9kZS5zZXQoJ2xpc3QnKVwiXG4gICAgICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgTGlzdFxuICAgICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1wcmltYXJ5XT1cInZpZXdNb2RlKCkgPT09ICdzcGxpdCdcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC10ZXh0LXdoaXRlXT1cInZpZXdNb2RlKCkgPT09ICdzcGxpdCdcIlxuICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cInZpZXdNb2RlLnNldCgnc3BsaXQnKVwiXG4gICAgICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgU3BsaXRcbiAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgIDwhLS0gRGF0ZSBSYW5nZSBDb250cm9sbGVyIC0tPlxuICAgICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwic2V0RGF0ZVJhbmdlKCd0b2RheScpXCIgbG9vaz1cIm91dGxpbmVcIiBzaXplPVwic21cIj5Ub2RheTwvYXgtYnV0dG9uPlxuICAgICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwic2V0RGF0ZVJhbmdlKCd3ZWVrJylcIiBsb29rPVwib3V0bGluZVwiIHNpemU9XCJzbVwiPldlZWs8L2F4LWJ1dHRvbj5cbiAgICAgICAgICA8YXgtYnV0dG9uIChvbkNsaWNrKT1cInNldERhdGVSYW5nZSgnbW9udGgnKVwiIGxvb2s9XCJvdXRsaW5lXCIgc2l6ZT1cInNtXCI+TW9udGg8L2F4LWJ1dHRvbj5cbiAgICAgICAgICA8YXgtZGF0ZXRpbWUtYm94XG4gICAgICAgICAgICBjbGFzcz1cImF4LXctNDBcIlxuICAgICAgICAgICAgW25nTW9kZWxdPVwiZGF0ZUZyb20oKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJkYXRlRnJvbS5zZXQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbZm9ybWF0XT1cIid5eXl5LU1NLWRkJ1wiXG4gICAgICAgICAgICBsb29rPVwib3V0bGluZVwiXG4gICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgID48L2F4LWRhdGV0aW1lLWJveD5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LXRleHQtbXV0ZWRcIj4tPC9zcGFuPlxuICAgICAgICAgIDxheC1kYXRldGltZS1ib3hcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtdy00MFwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJkYXRlVG8oKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJkYXRlVG8uc2V0KCRldmVudClcIlxuICAgICAgICAgICAgW2Zvcm1hdF09XCIneXl5eS1NTS1kZCdcIlxuICAgICAgICAgICAgbG9vaz1cIm91dGxpbmVcIlxuICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICA+PC9heC1kYXRldGltZS1ib3g+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgIDwhLS0gRmlsdGVycyAtLT5cbiAgICAgICAgICA8YXgtY2hlY2stYm94IFtuZ01vZGVsXT1cInNob3dSZXNlcnZhdGlvbnMoKVwiIChuZ01vZGVsQ2hhbmdlKT1cInNob3dSZXNlcnZhdGlvbnMuc2V0KCRldmVudClcIj5cbiAgICAgICAgICAgIDxheC1sYWJlbD5SZXNlcnZhdGlvbnM8L2F4LWxhYmVsPlxuICAgICAgICAgIDwvYXgtY2hlY2stYm94PlxuICAgICAgICAgIDxheC1jaGVjay1ib3ggW25nTW9kZWxdPVwic2hvd0hvbGRzKClcIiAobmdNb2RlbENoYW5nZSk9XCJzaG93SG9sZHMuc2V0KCRldmVudClcIj5cbiAgICAgICAgICAgIDxheC1sYWJlbD5Ib2xkczwvYXgtbGFiZWw+XG4gICAgICAgICAgPC9heC1jaGVjay1ib3g+XG4gICAgICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtdy00OFwiXG4gICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJzdGF0dXNEYXRhU291cmNlKClcIlxuICAgICAgICAgICAgW25nTW9kZWxdPVwic2VsZWN0ZWRTdGF0dXNJZHMoKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RlZFN0YXR1c0lkcy5zZXQoJGV2ZW50KVwiXG4gICAgICAgICAgICB2YWx1ZUZpZWxkPVwiaWRcIlxuICAgICAgICAgICAgdGV4dEZpZWxkPVwidGl0bGVcIlxuICAgICAgICAgICAgW211bHRpcGxlXT1cInRydWVcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJGaWx0ZXIgYnkgU3RhdHVzXCJcbiAgICAgICAgICAgIGxvb2s9XCJvdXRsaW5lXCJcbiAgICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgPjwvYXgtc2VsZWN0LWJveD5cblxuICAgICAgICAgIDwhLS0gQWN0aW9ucyAtLT5cbiAgICAgICAgICBAaWYgKCFyZWFkb25seSgpKSB7XG4gICAgICAgICAgICA8YXgtYnV0dG9uIChvbkNsaWNrKT1cIm9wZW5DcmVhdGVSZXNlcnZhdGlvbk1vZGFsKClcIiBsb29rPVwicHJpbWFyeVwiIHNpemU9XCJzbVwiPiArIE5ldyBSZXNlcnZhdGlvbiA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgIEBpZiAoYWxsb3dIb2xkKCkpIHtcbiAgICAgICAgICAgICAgPGF4LWJ1dHRvbiAob25DbGljayk9XCJvcGVuQ3JlYXRlSG9sZE1vZGFsKClcIiBsb29rPVwib3V0bGluZVwiIHNpemU9XCJzbVwiPisgTmV3IEhvbGQ8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gQm9keSAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtb3ZlcmZsb3ctYXV0byBheC1wLTRcIj5cbiAgICAgICAgQGlmICh2aWV3TW9kZSgpID09PSAnY2FsZW5kYXInIHx8IHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItdmlldyBheC1tYi00XCI+XG4gICAgICAgICAgICBAaWYgKHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5DYWxlbmRhcjwvaDM+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8IS0tIFRpbWVsaW5lIFZpZXcgLS0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmUtdmlld1wiPlxuICAgICAgICAgICAgICBAZm9yIChkYXkgb2YgdGltZWxpbmVEYXlzKCk7IHRyYWNrIGRheS5kYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItYiBheC1wYi0yIGF4LW1iLTJcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfCBkYXRlOiAnRUVFRSwgTU1NTSBkLCB5JyB9fVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMVwiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChyZXNlcnZhdGlvbiBvZiBkYXkucmVzZXJ2YXRpb25zOyB0cmFjayByZXNlcnZhdGlvbi5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXgtcC0yIGF4LXJvdW5kZWQgYXgtYm9yZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXItbGVmdC1jb2xvcl09XCJyZXNlcnZhdGlvbi5zdGF0dXM/LmNvbG9yIHx8ICcjY2NjJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyLWxlZnQtd2lkdGhdPVwiJzRweCdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXgtcHgtMiBheC1weS0xIGF4LXJvdW5kZWQgYXgtdGV4dC14cyBheC1mb250LXNlbWlib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctc3VjY2Vzc109XCJyZXNlcnZhdGlvbi5raW5kID09PSAncmVzZXJ2YXRpb24nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctZGFuZ2VyXT1cInJlc2VydmF0aW9uLmtpbmQgPT09ICdob2xkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByZXNlcnZhdGlvbi5raW5kIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF4LXB4LTIgYXgtcHktMSBheC1yb3VuZGVkIGF4LXRleHQteHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInJlc2VydmF0aW9uLnN0YXR1cz8uY29sb3IgfHwgJyNjY2MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiJ3doaXRlJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByZXNlcnZhdGlvbi5zdGF0dXM/LnRpdGxlIHx8ICdVbmtub3duJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC1zbSBheC10ZXh0LW11dGVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcmVzZXJ2YXRpb24uc3RhcnREYXRlIHwgZGF0ZTogJ3Nob3J0VGltZScgfX0gLVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJlc2VydmF0aW9uLmVuZERhdGUgfCBkYXRlOiAnc2hvcnRUaW1lJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAocmVzZXJ2YXRpb24ubm90ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1zbSBheC1tdC0xIGF4LXRleHQtbXV0ZWRcIj57eyByZXNlcnZhdGlvbi5ub3RlIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChkYXkucmVzZXJ2YXRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWQgYXgtcC0yXCI+Tm8gcmVzZXJ2YXRpb25zPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAodmlld01vZGUoKSA9PT0gJ2xpc3QnIHx8IHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdC12aWV3XCI+XG4gICAgICAgICAgICBAaWYgKHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5MaXN0PC9oMz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxheC1kYXRhLXRhYmxlIFtkYXRhU291cmNlXT1cInRhYmxlRGF0YVNvdXJjZSgpXCIgW3Nob3dGb290ZXJdPVwiZmFsc2VcIiBbcGFnaW5nXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJraW5kXCIgW3dpZHRoXT1cIicxMDBweCdcIiBjYXB0aW9uPVwiS2luZFwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJzdGFydERhdGVcIiBbd2lkdGhdPVwiJzE1MHB4J1wiIGNhcHRpb249XCJTdGFydFwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJlbmREYXRlXCIgW3dpZHRoXT1cIicxNTBweCdcIiBjYXB0aW9uPVwiRW5kXCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cInN0YXR1c1RpdGxlXCIgW3dpZHRoXT1cIicxMjBweCdcIiBjYXB0aW9uPVwiU3RhdHVzXCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cInJlcXVlc3RlZEJ5TmFtZVwiIFt3aWR0aF09XCInMTUwcHgnXCIgY2FwdGlvbj1cIlJlcXVlc3RlZCBCeVwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJhcHByb3ZlZEJ5TmFtZVwiIFt3aWR0aF09XCInMTUwcHgnXCIgY2FwdGlvbj1cIkFwcHJvdmVkIEJ5XCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cIm5vdGVcIiBjYXB0aW9uPVwiTm90ZVwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC1jb21tYW5kLWNvbHVtblxuICAgICAgICAgICAgICAgIGZpeGVkPVwiZW5kXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiJzIwMHB4J1wiXG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cImdldENvbW1hbmRJdGVtcygpXCJcbiAgICAgICAgICAgICAgICAob25JdGVtQ2xpY2spPVwiaGFuZGxlQ29tbWFuZENsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICA+PC9heC1jb21tYW5kLWNvbHVtbj5cbiAgICAgICAgICAgIDwvYXgtZGF0YS10YWJsZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIC50aW1lbGluZS12aWV3IHtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxhbnk+IHtcbiAgLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlcyAmIERlcGVuZGVuY2llcyAgIC0tLS1cblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvblNlcnZpY2UpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgQ29tcHV0ZWQgUHJvcGVydGllcyBmcm9tIE9wdGlvbnMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlc291cmNlRW50aXR5SWQgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNvdXJjZUVudGl0eUlkIHx8ICcnO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVzb3VyY2VJZCA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgY29uc3QgcmVzb3VyY2VJZE9wdGlvbiA9IG9wdHM/LnJlc291cmNlSWQ7XG4gICAgaWYgKHR5cGVvZiByZXNvdXJjZUlkT3B0aW9uID09PSAnc3RyaW5nJyAmJiByZXNvdXJjZUlkT3B0aW9uLmluY2x1ZGVzKCd7eycpKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb250ZXh0SWQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmdldFZhbHVlKHRoaXMuZnVsbFBhdGgoKT8uc3BsaXQoJy4nKS5zbGljZSgwLCAtMSkuam9pbignLicpICsgJy5pZCcpO1xuICAgICAgICBpZiAoY29udGV4dElkKSByZXR1cm4gY29udGV4dElkO1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZS5nZXRWYWx1ZSgnaWQnKSB8fCAnJztcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXNvdXJjZUlkT3B0aW9uIHx8IHRoaXMuY29udGV4dFNlcnZpY2UuZ2V0VmFsdWUoJ2lkJykgfHwgJyc7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByZXNvdXJjZVJlZiA9IGNvbXB1dGVkPHsgdGl0bGU/OiBzdHJpbmc7IGNvZGU/OiBzdHJpbmcgfSB8IHVuZGVmaW5lZD4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgcmV0dXJuIG9wdHM/LnJlc291cmNlUmVmO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVzZXJ2YXRpb25UeXBlSWQgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNlcnZhdGlvblR5cGVJZDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlc2VydmF0aW9uVHlwZUNvZGUgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNlcnZhdGlvblR5cGVDb2RlO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdENsYXNzSWQgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5kZWZhdWx0Q2xhc3NJZDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc3BsYXlNb2RlID0gY29tcHV0ZWQ8J2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdib3RoJz4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgcmV0dXJuIG9wdHM/Lm1vZGUgfHwgJ2JvdGgnO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVhZG9ubHkgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMub3B0aW9ucygpIGFzIGFueTtcbiAgICByZXR1cm4gb3B0cz8ucmVhZG9ubHkgfHwgZmFsc2U7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBkYXRlUmFuZ2VEYXlzID0gY29tcHV0ZWQ8bnVtYmVyPigoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMub3B0aW9ucygpIGFzIGFueTtcbiAgICByZXR1cm4gb3B0cz8uZGF0ZVJhbmdlRGF5cyB8fCAzMDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFsbG93SG9sZCA9IGNvbXB1dGVkPGJvb2xlYW4gfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5hbGxvd0hvbGQ7XG4gIH0pO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU3RhdGUgICAtLS0tXG5cbiAgcmVhZG9ubHkgdmlld01vZGUgPSBzaWduYWw8J2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdzcGxpdCc+KCdzcGxpdCcpO1xuICByZWFkb25seSBzZWxlY3RlZENsYXNzSWQgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHJlYWRvbmx5IGRhdGVGcm9tID0gc2lnbmFsPERhdGU+KG5ldyBEYXRlKCkpO1xuICByZWFkb25seSBkYXRlVG8gPSBzaWduYWw8RGF0ZT4obmV3IERhdGUoKSk7XG4gIHJlYWRvbmx5IHNob3dSZXNlcnZhdGlvbnMgPSBzaWduYWw8Ym9vbGVhbj4odHJ1ZSk7XG4gIHJlYWRvbmx5IHNob3dIb2xkcyA9IHNpZ25hbDxib29sZWFuPih0cnVlKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRTdGF0dXNJZHMgPSBzaWduYWw8c3RyaW5nW10+KFtdKTtcblxuICByZWFkb25seSByZXNlcnZhdGlvbnMgPSBzaWduYWw8Tm9ybWFsaXplZFJlc2VydmF0aW9uW10+KFtdKTtcbiAgcmVhZG9ubHkgYXZhaWxhYmxlQ2xhc3NlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSBhdmFpbGFibGVTdGF0dXNlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSB0cmFuc2l0aW9ucyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSBwb2xpY3kgPSBzaWduYWw8eyBjb25mbGljdFBvbGljeT86ICdzdHJpY3QnIHwgJ3NvZnQnOyBhbGxvd0hvbGQ/OiBib29sZWFuOyByZXF1aXJlc0FwcHJvdmFsPzogYm9vbGVhbiB9Pih7fSk7XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBDb21wdXRlZCAgIC0tLS1cblxuICByZWFkb25seSBmaWx0ZXJlZFJlc2VydmF0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBsZXQgZmlsdGVyZWQgPSB0aGlzLnJlc2VydmF0aW9ucygpO1xuXG4gICAgaWYgKCF0aGlzLnNob3dSZXNlcnZhdGlvbnMoKSkge1xuICAgICAgZmlsdGVyZWQgPSBmaWx0ZXJlZC5maWx0ZXIoKHIpID0+IHIua2luZCAhPT0gJ3Jlc2VydmF0aW9uJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5zaG93SG9sZHMoKSkge1xuICAgICAgZmlsdGVyZWQgPSBmaWx0ZXJlZC5maWx0ZXIoKHIpID0+IHIua2luZCAhPT0gJ2hvbGQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdGF0dXNJZHMgPSB0aGlzLnNlbGVjdGVkU3RhdHVzSWRzKCk7XG4gICAgaWYgKHN0YXR1c0lkcy5sZW5ndGggPiAwKSB7XG4gICAgICBmaWx0ZXJlZCA9IGZpbHRlcmVkLmZpbHRlcigocikgPT4gc3RhdHVzSWRzLmluY2x1ZGVzKHIuc3RhdHVzSWQpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmlsdGVyZWQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGNsYXNzRGF0YVNvdXJjZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hdmFpbGFibGVDbGFzc2VzKCkubWFwKChjKSA9PiAoeyBpZDogYy5pZCwgdGl0bGU6IGMudGl0bGUgfSkpO1xuICB9KTtcblxuICByZWFkb25seSBzdGF0dXNEYXRhU291cmNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmF2YWlsYWJsZVN0YXR1c2VzKCkubWFwKChzKSA9PiAoeyBpZDogcy5pZCwgdGl0bGU6IHMudGl0bGUsIGNvbG9yOiBzLmNvbG9yIH0pKTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdGFibGVEYXRhU291cmNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5maWx0ZXJlZFJlc2VydmF0aW9ucygpLm1hcCgocikgPT4gKHtcbiAgICAgIC4uLnIsXG4gICAgICBzdGFydERhdGU6IHIuc3RhcnREYXRlLnRvSVNPU3RyaW5nKCksXG4gICAgICBlbmREYXRlOiByLmVuZERhdGUudG9JU09TdHJpbmcoKSxcbiAgICAgIHN0YXR1c1RpdGxlOiByLnN0YXR1cz8udGl0bGUgfHwgJ1Vua25vd24nLFxuICAgICAgcmVxdWVzdGVkQnlOYW1lOiByLnJlcXVlc3RlZEJ5Py5kaXNwbGF5TmFtZSB8fCByLnJlcXVlc3RlZEJ5Py5uYW1lIHx8ICctJyxcbiAgICAgIGFwcHJvdmVkQnlOYW1lOiByLmFwcHJvdmVkQnk/LmRpc3BsYXlOYW1lIHx8IHIuYXBwcm92ZWRCeT8ubmFtZSB8fCAnLScsXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIG5ldyBBWERhdGFTb3VyY2Uoe1xuICAgICAgbG9hZDogYXN5bmMgKCkgPT4gKHtcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIHRvdGFsOiBpdGVtcy5sZW5ndGgsXG4gICAgICB9KSxcbiAgICAgIHBhZ2VTaXplOiBpdGVtcy5sZW5ndGggfHwgMSxcbiAgICAgIGtleTogJ2lkJyxcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdGltZWxpbmVEYXlzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHJlc2VydmF0aW9ucyA9IHRoaXMuZmlsdGVyZWRSZXNlcnZhdGlvbnMoKTtcbiAgICBjb25zdCBkYXlzID0gbmV3IE1hcDxzdHJpbmcsIE5vcm1hbGl6ZWRSZXNlcnZhdGlvbltdPigpO1xuXG4gICAgcmVzZXJ2YXRpb25zLmZvckVhY2goKHJlcykgPT4ge1xuICAgICAgY29uc3Qgc3RhcnQgPSBuZXcgRGF0ZShyZXMuc3RhcnREYXRlKTtcbiAgICAgIGNvbnN0IGVuZCA9IG5ldyBEYXRlKHJlcy5lbmREYXRlKTtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBuZXcgRGF0ZShzdGFydCk7XG5cbiAgICAgIHdoaWxlIChjdXJyZW50IDw9IGVuZCkge1xuICAgICAgICBjb25zdCBrZXkgPSBjdXJyZW50LnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXTtcbiAgICAgICAgaWYgKCFkYXlzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgZGF5cy5zZXQoa2V5LCBbXSk7XG4gICAgICAgIH1cbiAgICAgICAgZGF5cy5nZXQoa2V5KSEucHVzaChyZXMpO1xuICAgICAgICBjdXJyZW50LnNldERhdGUoY3VycmVudC5nZXREYXRlKCkgKyAxKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBBcnJheS5mcm9tKGRheXMuZW50cmllcygpKVxuICAgICAgLm1hcCgoW2RhdGVTdHIsIHJlc0xpc3RdKSA9PiAoe1xuICAgICAgICBkYXRlOiBuZXcgRGF0ZShkYXRlU3RyKSxcbiAgICAgICAgcmVzZXJ2YXRpb25zOiByZXNMaXN0LFxuICAgICAgfSkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5kYXRlLmdldFRpbWUoKSAtIGIuZGF0ZS5nZXRUaW1lKCkpO1xuICB9KTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIEVmZmVjdHMgICAtLS0tXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIC8vIEluaXRpYWxpemUgZGF0ZSByYW5nZVxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkYXlzID0gdGhpcy5kYXRlUmFuZ2VEYXlzKCk7XG4gICAgdGhpcy5kYXRlRnJvbS5zZXQobmV3IERhdGUodG9kYXkuZ2V0VGltZSgpIC0gZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDApKTtcbiAgICB0aGlzLmRhdGVUby5zZXQobmV3IERhdGUodG9kYXkuZ2V0VGltZSgpICsgZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDApKTtcblxuICAgIC8vIFNldCB2aWV3IG1vZGUgYmFzZWQgb24gaW5wdXRcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgbW9kZSA9IHRoaXMuZGlzcGxheU1vZGUoKTtcbiAgICAgIGlmIChtb2RlID09PSAnY2FsZW5kYXInKSB7XG4gICAgICAgIHRoaXMudmlld01vZGUuc2V0KCdjYWxlbmRhcicpO1xuICAgICAgfSBlbHNlIGlmIChtb2RlID09PSAnbGlzdCcpIHtcbiAgICAgICAgdGhpcy52aWV3TW9kZS5zZXQoJ2xpc3QnKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFJlYWN0aXZlIGRhdGEgbG9hZGluZ1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCByZXNvdXJjZUlkID0gdGhpcy5yZXNvdXJjZUlkKCk7XG4gICAgICBjb25zdCByZXNvdXJjZUVudGl0eUlkID0gdGhpcy5yZXNvdXJjZUVudGl0eUlkKCk7XG4gICAgICBjb25zdCBjbGFzc0lkID0gdGhpcy5zZWxlY3RlZENsYXNzSWQoKTtcbiAgICAgIGNvbnN0IGZyb20gPSB0aGlzLmRhdGVGcm9tKCk7XG4gICAgICBjb25zdCB0byA9IHRoaXMuZGF0ZVRvKCk7XG5cbiAgICAgIGlmIChyZXNvdXJjZUlkICYmIHJlc291cmNlRW50aXR5SWQpIHtcbiAgICAgICAgdGhpcy5sb2FkRGF0YSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBNZXRob2RzICAgLS0tLVxuXG4gIGFzeW5jIGxvYWREYXRhKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFJlc29sdmUgcmVzZXJ2YXRpb24gdHlwZVxuICAgIGxldCB0eXBlSWQgPSB0aGlzLnJlc2VydmF0aW9uVHlwZUlkKCk7XG4gICAgaWYgKCF0eXBlSWQgJiYgdGhpcy5yZXNlcnZhdGlvblR5cGVDb2RlKCkpIHtcbiAgICAgIHR5cGVJZCA9IChhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5yZXNvbHZlUmVzZXJ2YXRpb25UeXBlKHRoaXMucmVzZXJ2YXRpb25UeXBlQ29kZSgpISkpIHx8IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAoIXR5cGVJZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIExvYWQgY2xhc3Nlc1xuICAgIGNvbnN0IGNsYXNzZXMgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRBdmFpbGFibGVDbGFzc2VzKHR5cGVJZCk7XG4gICAgdGhpcy5hdmFpbGFibGVDbGFzc2VzLnNldChjbGFzc2VzKTtcblxuICAgIC8vIEF1dG8tc2VsZWN0IGNsYXNzIGlmIG9ubHkgb25lXG4gICAgaWYgKGNsYXNzZXMubGVuZ3RoID09PSAxICYmICF0aGlzLnNlbGVjdGVkQ2xhc3NJZCgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkQ2xhc3NJZC5zZXQoY2xhc3Nlc1swXS5pZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmRlZmF1bHRDbGFzc0lkKCkgJiYgIXRoaXMuc2VsZWN0ZWRDbGFzc0lkKCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDbGFzc0lkLnNldCh0aGlzLmRlZmF1bHRDbGFzc0lkKCkhKTtcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc0lkID0gdGhpcy5zZWxlY3RlZENsYXNzSWQoKTtcbiAgICBjb25zdCByZXNvdXJjZUlkID0gdGhpcy5yZXNvdXJjZUlkKCk7XG4gICAgY29uc3QgcmVzb3VyY2VFbnRpdHlJZCA9IHRoaXMucmVzb3VyY2VFbnRpdHlJZCgpO1xuXG4gICAgaWYgKCFjbGFzc0lkIHx8ICFyZXNvdXJjZUlkIHx8ICFyZXNvdXJjZUVudGl0eUlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gTG9hZCBjb250ZXh0IChzdGF0dXNlcywgdHJhbnNpdGlvbnMsIHBvbGljeSlcbiAgICBjb25zdCBjb250ZXh0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UuZ2V0V2lkZ2V0Q29udGV4dCh7XG4gICAgICByZXNvdXJjZUVudGl0eUlkLFxuICAgICAgcmVzb3VyY2VJZCxcbiAgICAgIHJlc2VydmF0aW9uVHlwZUlkOiB0eXBlSWQsXG4gICAgICBjbGFzc0lkLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hdmFpbGFibGVTdGF0dXNlcy5zZXQoY29udGV4dC5zdGF0dXNlcyk7XG4gICAgdGhpcy50cmFuc2l0aW9ucy5zZXQoY29udGV4dC50cmFuc2l0aW9ucyk7XG4gICAgdGhpcy5wb2xpY3kuc2V0KGNvbnRleHQucG9saWN5KTtcblxuICAgIC8vIExvYWQgcmVzZXJ2YXRpb25zXG4gICAgY29uc3QgcmVzZXJ2YXRpb25zID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UuZ2V0UmVzZXJ2YXRpb25zKFxuICAgICAgcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgIHJlc291cmNlSWQsXG4gICAgICB0aGlzLmRhdGVGcm9tKCksXG4gICAgICB0aGlzLmRhdGVUbygpLFxuICAgICk7XG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IHJlc2VydmF0aW9ucy5tYXAobm9ybWFsaXplUmVzZXJ2YXRpb24pO1xuXG4gICAgLy8gRW5yaWNoIHdpdGggc3RhdHVzIGRhdGFcbiAgICBjb25zdCBlbnJpY2hlZCA9IG5vcm1hbGl6ZWQubWFwKChyZXMpID0+ICh7XG4gICAgICAuLi5yZXMsXG4gICAgICBzdGF0dXM6IHRoaXMuYXZhaWxhYmxlU3RhdHVzZXMoKS5maW5kKChzKSA9PiBzLmlkID09PSByZXMuc3RhdHVzSWQpLFxuICAgIH0pKTtcblxuICAgIHRoaXMucmVzZXJ2YXRpb25zLnNldChlbnJpY2hlZCk7XG4gIH1cblxuICBzZXREYXRlUmFuZ2UocmFuZ2U6ICd0b2RheScgfCAnd2VlaycgfCAnbW9udGgnKTogdm9pZCB7XG4gICAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICAgIGxldCBmcm9tOiBEYXRlO1xuICAgIGxldCB0bzogRGF0ZTtcblxuICAgIHN3aXRjaCAocmFuZ2UpIHtcbiAgICAgIGNhc2UgJ3RvZGF5JzpcbiAgICAgICAgZnJvbSA9IG5ldyBEYXRlKHRvZGF5KTtcbiAgICAgICAgdG8gPSBuZXcgRGF0ZSh0b2RheSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnd2Vlayc6XG4gICAgICAgIGZyb20gPSBuZXcgRGF0ZSh0b2RheSk7XG4gICAgICAgIGZyb20uc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSB0b2RheS5nZXREYXkoKSk7XG4gICAgICAgIHRvID0gbmV3IERhdGUoZnJvbSk7XG4gICAgICAgIHRvLnNldERhdGUoZnJvbS5nZXREYXRlKCkgKyA2KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdtb250aCc6XG4gICAgICAgIGZyb20gPSBuZXcgRGF0ZSh0b2RheS5nZXRGdWxsWWVhcigpLCB0b2RheS5nZXRNb250aCgpLCAxKTtcbiAgICAgICAgdG8gPSBuZXcgRGF0ZSh0b2RheS5nZXRGdWxsWWVhcigpLCB0b2RheS5nZXRNb250aCgpICsgMSwgMCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHRoaXMuZGF0ZUZyb20uc2V0KGZyb20pO1xuICAgIHRoaXMuZGF0ZVRvLnNldCh0byk7XG4gIH1cblxuICBnZXRBdmFpbGFibGVUcmFuc2l0aW9ucyhyZXNlcnZhdGlvbjogTm9ybWFsaXplZFJlc2VydmF0aW9uKTogYW55W10ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zaXRpb25zKCkuZmlsdGVyKCh0KSA9PiB0LmZyb21TdGF0dXNJZCA9PT0gcmVzZXJ2YXRpb24uc3RhdHVzSWQgJiYgdC5pc0FjdGl2ZSk7XG4gIH1cblxuICBvcGVuQ3JlYXRlUmVzZXJ2YXRpb25Nb2RhbCgpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZygnT3BlbiBjcmVhdGUgcmVzZXJ2YXRpb24gbW9kYWwnKTtcbiAgfVxuXG4gIG9wZW5DcmVhdGVIb2xkTW9kYWwoKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ09wZW4gY3JlYXRlIGhvbGQgbW9kYWwnKTtcbiAgfVxuXG4gIG9wZW5SZXNlcnZhdGlvbkRldGFpbHMocmVzZXJ2YXRpb25JZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ09wZW4gcmVzZXJ2YXRpb24gZGV0YWlsczonLCByZXNlcnZhdGlvbklkKTtcbiAgfVxuXG4gIG9wZW5UcmFuc2l0aW9uTW9kYWwocmVzZXJ2YXRpb25JZDogc3RyaW5nLCB0cmFuc2l0aW9uSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKCdPcGVuIHRyYW5zaXRpb24gbW9kYWw6JywgcmVzZXJ2YXRpb25JZCwgdHJhbnNpdGlvbklkKTtcbiAgfVxuXG4gIGdldENvbW1hbmRJdGVtcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgeyBuYW1lOiAndmlldycsIHRleHQ6ICdWaWV3JywgaWNvbjogJ2ZhLWxpZ2h0IGZhLWV5ZScgfSxcbiAgICAgIC8vIFRyYW5zaXRpb25zIHdpbGwgYmUgYWRkZWQgZHluYW1pY2FsbHkgcGVyIHJvd1xuICAgIF07XG4gIH1cblxuICBoYW5kbGVDb21tYW5kQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW0gPSBldmVudC5pdGVtIHx8IGV2ZW50O1xuICAgIGNvbnN0IHJvdyA9IGV2ZW50LnJvdyB8fCBldmVudC5kYXRhSXRlbSB8fCBldmVudC5kYXRhO1xuICAgIGlmIChpdGVtLm5hbWUgPT09ICd2aWV3Jykge1xuICAgICAgdGhpcy5vcGVuUmVzZXJ2YXRpb25EZXRhaWxzKHJvdy5pZCk7XG4gICAgfSBlbHNlIGlmIChpdGVtLm5hbWU/LnN0YXJ0c1dpdGgoJ3RyYW5zaXRpb24tJykpIHtcbiAgICAgIGNvbnN0IHRyYW5zaXRpb25JZCA9IGl0ZW0ubmFtZS5yZXBsYWNlKCd0cmFuc2l0aW9uLScsICcnKTtcbiAgICAgIHRoaXMub3BlblRyYW5zaXRpb25Nb2RhbChyb3cuaWQsIHRyYW5zaXRpb25JZCk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXP_WIDGETS_ADVANCE_CATEGORY, AXPWidgetGroupEnum, createBooleanProperty, createNumberProperty, createStringProperty, } from '@acorex/platform/layout/widget-core';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_NAME_PROPERTY, } from '@acorex/platform/layout/widgets';\n//#endregion\n//#region ---- Widget Config ----\nexport const AXPReservationPanelWidget = {\n name: 'reservation-panel-widget',\n title: 'Reservation Panel',\n description: 'Displays and manages reservations for a resource',\n icon: 'fa-light fa-calendar-check',\n categories: AXP_WIDGETS_ADVANCE_CATEGORY,\n groups: [AXPWidgetGroupEnum.EntityWidget],\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n createStringProperty({\n name: 'resourceEntityId',\n title: 'Resource Entity ID',\n path: 'options.resourceEntityId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'resourceIdPath',\n title: 'Resource ID Path',\n path: 'options.resourceId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'id',\n }),\n createStringProperty({\n name: 'reservationTypeCode',\n title: 'Reservation Type Code',\n path: 'options.reservationTypeCode',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'defaultClassId',\n title: 'Default Class ID',\n path: 'options.defaultClassId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'mode',\n title: 'Display Mode',\n path: 'options.mode',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'both',\n }),\n createBooleanProperty({\n name: 'readonly',\n title: 'Readonly',\n path: 'options.readonly',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: false,\n }),\n createBooleanProperty({\n name: 'allowHold',\n title: 'Allow Hold',\n path: 'options.allowHold',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createNumberProperty({\n name: 'dateRangeDays',\n title: 'Date Range Days',\n path: 'options.dateRangeDays',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 30,\n }),\n ],\n components: {\n view: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n edit: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n designer: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFDTCw0QkFBNEIsRUFFNUIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsb0JBQW9CLEdBQ3JCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUNMLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLGlCQUFpQixHQUNsQixNQUFNLGlDQUFpQyxDQUFDO0FBRXpDLFlBQVk7QUFFWixxQ0FBcUM7QUFFckMsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3hELElBQUksRUFBRSwwQkFBMEI7SUFDaEMsS0FBSyxFQUFFLG1CQUFtQjtJQUMxQixXQUFXLEVBQUUsa0RBQWtEO0lBQy9ELElBQUksRUFBRSw0QkFBNEI7SUFDbEMsVUFBVSxFQUFFLDRCQUE0QjtJQUN4QyxNQUFNLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7SUFDekMsSUFBSSxFQUFFLFFBQVE7SUFDZCxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtRQUNyQixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLEtBQUssRUFBRSxvQkFBb0I7WUFDM0IsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsSUFBSSxFQUFFLG9CQUFvQjtZQUMxQixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUscUJBQXFCO1lBQzNCLEtBQUssRUFBRSx1QkFBdUI7WUFDOUIsSUFBSSxFQUFFLDZCQUE2QjtZQUNuQyxLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsSUFBSSxFQUFFLHdCQUF3QjtZQUM5QixLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxjQUFjO1lBQ3JCLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUssRUFBRSwyQkFBMkI7WUFDbEMsWUFBWSxFQUFFLE1BQU07U0FDckIsQ0FBQztRQUNGLHFCQUFxQixDQUFDO1lBQ3BCLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUssRUFBRSxVQUFVO1lBQ2pCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsS0FBSyxFQUFFLDJCQUEyQjtZQUNsQyxZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDO1FBQ0YscUJBQXFCLENBQUM7WUFDcEIsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLFlBQVk7WUFDbkIsSUFBSSxFQUFFLG1CQUFtQjtZQUN6QixLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZUFBZTtZQUNyQixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLElBQUksRUFBRSx1QkFBdUI7WUFDN0IsS0FBSyxFQUFFLDJCQUEyQjtZQUNsQyxZQUFZLEVBQUUsRUFBRTtTQUNqQixDQUFDO0tBQ0g7SUFDRCxVQUFVLEVBQUU7UUFDVixJQUFJLEVBQUU7WUFDSixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7UUFDRCxJQUFJLEVBQUU7WUFDSixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7UUFDRCxRQUFRLEVBQUU7WUFDUixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7S0FDRjtDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQge1xuICBBWFBfV0lER0VUU19BRFZBTkNFX0NBVEVHT1JZLFxuICBBWFBXaWRnZXRDb25maWcsXG4gIEFYUFdpZGdldEdyb3VwRW51bSxcbiAgY3JlYXRlQm9vbGVhblByb3BlcnR5LFxuICBjcmVhdGVOdW1iZXJQcm9wZXJ0eSxcbiAgY3JlYXRlU3RyaW5nUHJvcGVydHksXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7XG4gIEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSxcbiAgQVhQX0RJU0FCTEVEX1BST1BFUlRZLFxuICBBWFBfTkFNRV9QUk9QRVJUWSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0cyc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIFdpZGdldCBDb25maWcgICAtLS0tXG5cbmV4cG9ydCBjb25zdCBBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0OiBBWFBXaWRnZXRDb25maWcgPSB7XG4gIG5hbWU6ICdyZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQnLFxuICB0aXRsZTogJ1Jlc2VydmF0aW9uIFBhbmVsJyxcbiAgZGVzY3JpcHRpb246ICdEaXNwbGF5cyBhbmQgbWFuYWdlcyByZXNlcnZhdGlvbnMgZm9yIGEgcmVzb3VyY2UnLFxuICBpY29uOiAnZmEtbGlnaHQgZmEtY2FsZW5kYXItY2hlY2snLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19BRFZBTkNFX0NBVEVHT1JZLFxuICBncm91cHM6IFtBWFBXaWRnZXRHcm91cEVudW0uRW50aXR5V2lkZ2V0XSxcbiAgdHlwZTogJ2VkaXRvcicsXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgICBjcmVhdGVTdHJpbmdQcm9wZXJ0eSh7XG4gICAgICBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsXG4gICAgICB0aXRsZTogJ1Jlc291cmNlIEVudGl0eSBJRCcsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5yZXNvdXJjZUVudGl0eUlkJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgfSksXG4gICAgY3JlYXRlU3RyaW5nUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3Jlc291cmNlSWRQYXRoJyxcbiAgICAgIHRpdGxlOiAnUmVzb3VyY2UgSUQgUGF0aCcsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5yZXNvdXJjZUlkJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBkZWZhdWx0VmFsdWU6ICdpZCcsXG4gICAgfSksXG4gICAgY3JlYXRlU3RyaW5nUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUNvZGUnLFxuICAgICAgdGl0bGU6ICdSZXNlcnZhdGlvbiBUeXBlIENvZGUnLFxuICAgICAgcGF0aDogJ29wdGlvbnMucmVzZXJ2YXRpb25UeXBlQ29kZScsXG4gICAgICBncm91cDogQVhQX0JFSEFWSU9SX1BST1BFUlRZX0dST1VQLFxuICAgIH0pLFxuICAgIGNyZWF0ZVN0cmluZ1Byb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdkZWZhdWx0Q2xhc3NJZCcsXG4gICAgICB0aXRsZTogJ0RlZmF1bHQgQ2xhc3MgSUQnLFxuICAgICAgcGF0aDogJ29wdGlvbnMuZGVmYXVsdENsYXNzSWQnLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICB9KSxcbiAgICBjcmVhdGVTdHJpbmdQcm9wZXJ0eSh7XG4gICAgICBuYW1lOiAnbW9kZScsXG4gICAgICB0aXRsZTogJ0Rpc3BsYXkgTW9kZScsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5tb2RlJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBkZWZhdWx0VmFsdWU6ICdib3RoJyxcbiAgICB9KSxcbiAgICBjcmVhdGVCb29sZWFuUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3JlYWRvbmx5JyxcbiAgICAgIHRpdGxlOiAnUmVhZG9ubHknLFxuICAgICAgcGF0aDogJ29wdGlvbnMucmVhZG9ubHknLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgfSksXG4gICAgY3JlYXRlQm9vbGVhblByb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdhbGxvd0hvbGQnLFxuICAgICAgdGl0bGU6ICdBbGxvdyBIb2xkJyxcbiAgICAgIHBhdGg6ICdvcHRpb25zLmFsbG93SG9sZCcsXG4gICAgICBncm91cDogQVhQX0JFSEFWSU9SX1BST1BFUlRZX0dST1VQLFxuICAgIH0pLFxuICAgIGNyZWF0ZU51bWJlclByb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdkYXRlUmFuZ2VEYXlzJyxcbiAgICAgIHRpdGxlOiAnRGF0ZSBSYW5nZSBEYXlzJyxcbiAgICAgIHBhdGg6ICdvcHRpb25zLmRhdGVSYW5nZURheXMnLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIGRlZmF1bHRWYWx1ZTogMzAsXG4gICAgfSksXG4gIF0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICB2aWV3OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9yZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQpLFxuICAgIH0sXG4gICAgZGVzaWduZXI6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQpLFxuICAgIH0sXG4gIH0sXG59O1xuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\n//#endregion\n//#region ---- Plugin ----\nexport const reservationPlugin = {\n name: 'reservation',\n order: 80,\n apply: (ctx, options) => {\n const groupId = options?.groupId ?? 'reservations';\n const title = options?.title ?? '@reservation-management:reservation-plugin.property.title';\n //#region ---- Ensure Reservations Group ----\n const groups = ctx.groups.list() ?? [];\n if (!groups.some((g) => g.id === groupId)) {\n ctx.groups.add({\n id: groupId,\n title: '@reservation-management:reservation-plugin.group.title',\n });\n }\n //#endregion\n //#region ---- Add Reservation Property ----\n const props = ctx.properties.list();\n if (!props.some((p) => p.name === 'reservations')) {\n ctx.properties.add({\n name: 'reservations',\n title,\n groupId,\n schema: {\n dataType: 'object',\n interface: {\n type: 'reservation-panel-widget',\n options: {\n resourceEntityId: `${ctx.entity.module}.${ctx.entity.name}`,\n resourceId: '{{ context.eval(\"id\") }}',\n resourceRef: {\n title: '{{ context.eval(\"title\") }}',\n code: '{{ context.eval(\"code\") }}',\n },\n reservationTypeId: options?.reservationTypeId,\n reservationTypeCode: options?.reservationTypeCode,\n defaultClassId: options?.defaultClassId,\n mode: options?.mode ?? 'both',\n readonly: options?.readonly ?? false,\n dateRangeDays: options?.dateRangeDays ?? 30,\n allowHold: options?.allowHold,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: {\n advance: { enabled: false },\n inline: { enabled: false },\n },\n },\n });\n }\n //#endregion\n //#region ---- Update Interface Layouts ----\n const ensureLayoutProperty = (layout) => {\n layout.sections = layout.sections ?? [];\n if (!layout.sections.some((s) => s.id === groupId)) {\n layout.sections.push({ id: groupId, order: 100 });\n }\n layout.properties = layout.properties ?? [];\n if (!layout.properties.some((p) => p.name === 'reservations')) {\n layout.properties.push({\n name: 'reservations',\n layout: {\n positions: { lg: { colSpan: 12, order: 100 } },\n },\n });\n }\n return layout;\n };\n ctx.interfaces.master.create.update((create) => ensureLayoutProperty((create ?? { sections: [], properties: [] })));\n ctx.interfaces.master.modify.update((modify) => ensureLayoutProperty((modify ?? { sections: [], properties: [] })));\n ctx.interfaces.master.single.update((single) => ensureLayoutProperty((single ?? { title: ctx.entity.title, sections: [], properties: [] })));\n //#endregion\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24ucGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24ucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQXdEL0IsWUFBWTtBQUVaLDhCQUE4QjtBQUU5QixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBMEI7SUFDdEQsSUFBSSxFQUFFLGFBQWE7SUFDbkIsS0FBSyxFQUFFLEVBQUU7SUFDVCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBcUMsRUFBRSxFQUFFO1FBQ3BELE1BQU0sT0FBTyxHQUFHLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxDQUFDO1FBQ25ELE1BQU0sS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksMkRBQTJELENBQUM7UUFFNUYsaURBQWlEO1FBRWpELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDMUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7Z0JBQ2IsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsS0FBSyxFQUFFLHdEQUF3RDthQUNoRSxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsWUFBWTtRQUVaLGdEQUFnRDtRQUVoRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FB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TSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUM3QyxvQkFBb0IsQ0FBQyxDQUFDLE1BQU0sSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFvQyxDQUFDLENBQ3RHLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDN0Msb0JBQW9CLENBQ2xCLENBQUMsTUFBTSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFvQyxDQUN6RyxDQUNGLENBQUM7UUFFRixZQUFZO0lBQ2QsQ0FBQztDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQge1xuICBBWFBFbnRpdHlNYXN0ZXJDcmVhdGVMYXlvdXRWaWV3LFxuICBBWFBFbnRpdHlNYXN0ZXJTaW5nbGVMYXlvdXRWaWV3LFxuICBBWFBFbnRpdHlNYXN0ZXJVcGRhdGVMYXlvdXRWaWV3LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlBY3Rpb25QbHVnaW4gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBQbHVnaW4gT3B0aW9ucyAgIC0tLS1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBSZXNlcnZhdGlvblBsdWdpbk9wdGlvbnMge1xuICAvKipcbiAgICogUmVzZXJ2YXRpb24gdHlwZSBJRCBvciBjb2RlXG4gICAqL1xuICByZXNlcnZhdGlvblR5cGVJZD86IHN0cmluZztcbiAgcmVzZXJ2YXRpb25UeXBlQ29kZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmYXVsdCByZXNlcnZhdGlvbiBjbGFzcyBJRFxuICAgKi9cbiAgZGVmYXVsdENsYXNzSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERpc3BsYXkgbW9kZTogJ2NhbGVuZGFyJywgJ2xpc3QnLCBvciAnYm90aCdcbiAgICovXG4gIG1vZGU/OiAnY2FsZW5kYXInIHwgJ2xpc3QnIHwgJ2JvdGgnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB3aWRnZXQgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGF0ZSByYW5nZSBpbiBkYXlzIChkZWZhdWx0OiAzMClcbiAgICovXG4gIGRhdGVSYW5nZURheXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEFsbG93IGhvbGQgY3JlYXRpb25cbiAgICovXG4gIGFsbG93SG9sZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGdyb3VwIElEIGZvciB0aGUgcHJvcGVydHlcbiAgICovXG4gIGdyb3VwSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHRpdGxlIGZvciB0aGUgcHJvcGVydHlcbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xufVxuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBQbHVnaW4gICAtLS0tXG5cbmV4cG9ydCBjb25zdCByZXNlcnZhdGlvblBsdWdpbjogQVhQRW50aXR5QWN0aW9uUGx1Z2luID0ge1xuICBuYW1lOiAncmVzZXJ2YXRpb24nLFxuICBvcmRlcjogODAsXG4gIGFwcGx5OiAoY3R4LCBvcHRpb25zPzogQVhQUmVzZXJ2YXRpb25QbHVnaW5PcHRpb25zKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBJZCA9IG9wdGlvbnM/Lmdyb3VwSWQgPz8gJ3Jlc2VydmF0aW9ucyc7XG4gICAgY29uc3QgdGl0bGUgPSBvcHRpb25zPy50aXRsZSA/PyAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tcGx1Z2luLnByb3BlcnR5LnRpdGxlJztcblxuICAgIC8vI3JlZ2lvbiAtLS0tICAgRW5zdXJlIFJlc2VydmF0aW9ucyBHcm91cCAgIC0tLS1cblxuICAgIGNvbnN0IGdyb3VwcyA9IGN0eC5ncm91cHMubGlzdCgpID8/IFtdO1xuICAgIGlmICghZ3JvdXBzLnNvbWUoKGcpID0+IGcuaWQgPT09IGdyb3VwSWQpKSB7XG4gICAgICBjdHguZ3JvdXBzLmFkZCh7XG4gICAgICAgIGlkOiBncm91cElkLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXBsdWdpbi5ncm91cC50aXRsZScsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyNlbmRyZWdpb25cblxuICAgIC8vI3JlZ2lvbiAtLS0tICAgQWRkIFJlc2VydmF0aW9uIFByb3BlcnR5ICAgLS0tLVxuXG4gICAgY29uc3QgcHJvcHMgPSBjdHgucHJvcGVydGllcy5saXN0KCk7XG4gICAgaWYgKCFwcm9wcy5zb21lKChwKSA9PiBwLm5hbWUgPT09ICdyZXNlcnZhdGlvbnMnKSkge1xuICAgICAgY3R4LnByb3BlcnRpZXMuYWRkKHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9ucycsXG4gICAgICAgIHRpdGxlLFxuICAgICAgICBncm91cElkLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiAncmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0JyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVzb3VyY2VFbnRpdHlJZDogYCR7Y3R4LmVudGl0eS5tb2R1bGV9LiR7Y3R4LmVudGl0eS5uYW1lfWAsXG4gICAgICAgICAgICAgIHJlc291cmNlSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgIHJlc291cmNlUmVmOiB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICd7eyBjb250ZXh0LmV2YWwoXCJ0aXRsZVwiKSB9fScsXG4gICAgICAgICAgICAgICAgY29kZTogJ3t7IGNvbnRleHQuZXZhbChcImNvZGVcIikgfX0nLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICByZXNlcnZhdGlvblR5cGVJZDogb3B0aW9ucz8ucmVzZXJ2YXRpb25UeXBlSWQsXG4gICAgICAgICAgICAgIHJlc2VydmF0aW9uVHlwZUNvZGU6IG9wdGlvbnM/LnJlc2VydmF0aW9uVHlwZUNvZGUsXG4gICAgICAgICAgICAgIGRlZmF1bHRDbGFzc0lkOiBvcHRpb25zPy5kZWZhdWx0Q2xhc3NJZCxcbiAgICAgICAgICAgICAgbW9kZTogb3B0aW9ucz8ubW9kZSA/PyAnYm90aCcsXG4gICAgICAgICAgICAgIHJlYWRvbmx5OiBvcHRpb25zPy5yZWFkb25seSA/PyBmYWxzZSxcbiAgICAgICAgICAgICAgZGF0ZVJhbmdlRGF5czogb3B0aW9ucz8uZGF0ZVJhbmdlRGF5cyA/PyAzMCxcbiAgICAgICAgICAgICAgYWxsb3dIb2xkOiBvcHRpb25zPy5hbGxvd0hvbGQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7XG4gICAgICAgICAgICBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogZmFsc2UgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSBhcyBhbnkpO1xuICAgIH1cblxuICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgLy8jcmVnaW9uIC0tLS0gICBVcGRhdGUgSW50ZXJmYWNlIExheW91dHMgICAtLS0tXG5cbiAgICBjb25zdCBlbnN1cmVMYXlvdXRQcm9wZXJ0eSA9IDxcbiAgICAgIFQgZXh0ZW5kcyBBWFBFbnRpdHlNYXN0ZXJDcmVhdGVMYXlvdXRWaWV3IHwgQVhQRW50aXR5TWFzdGVyVXBkYXRlTGF5b3V0VmlldyB8IEFYUEVudGl0eU1hc3RlclNpbmdsZUxheW91dFZpZXcsXG4gICAgPihcbiAgICAgIGxheW91dDogVCxcbiAgICApOiBUID0+IHtcbiAgICAgIGxheW91dC5zZWN0aW9ucyA9IGxheW91dC5zZWN0aW9ucyA/PyBbXTtcbiAgICAgIGlmICghbGF5b3V0LnNlY3Rpb25zLnNvbWUoKHMpID0+IHMuaWQgPT09IGdyb3VwSWQpKSB7XG4gICAgICAgIGxheW91dC5zZWN0aW9ucy5wdXNoKHsgaWQ6IGdyb3VwSWQsIG9yZGVyOiAxMDAgfSk7XG4gICAgICB9XG5cbiAgICAgIGxheW91dC5wcm9wZXJ0aWVzID0gbGF5b3V0LnByb3BlcnRpZXMgPz8gW107XG4gICAgICBpZiAoIWxheW91dC5wcm9wZXJ0aWVzLnNvbWUoKHApID0+IHAubmFtZSA9PT0gJ3Jlc2VydmF0aW9ucycpKSB7XG4gICAgICAgIGxheW91dC5wcm9wZXJ0aWVzLnB1c2goe1xuICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbnMnLFxuICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyLCBvcmRlcjogMTAwIH0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGxheW91dDtcbiAgICB9O1xuXG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLmNyZWF0ZS51cGRhdGUoKGNyZWF0ZSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KChjcmVhdGUgPz8geyBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH0pIGFzIEFYUEVudGl0eU1hc3RlckNyZWF0ZUxheW91dFZpZXcpLFxuICAgICk7XG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLm1vZGlmeS51cGRhdGUoKG1vZGlmeSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KChtb2RpZnkgPz8geyBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH0pIGFzIEFYUEVudGl0eU1hc3RlclVwZGF0ZUxheW91dFZpZXcpLFxuICAgICk7XG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLnNpbmdsZS51cGRhdGUoKHNpbmdsZSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KFxuICAgICAgICAoc2luZ2xlID8/IHsgdGl0bGU6IGN0eC5lbnRpdHkudGl0bGUsIHNlY3Rpb25zOiBbXSwgcHJvcGVydGllczogW10gfSkgYXMgQVhQRW50aXR5TWFzdGVyU2luZ2xlTGF5b3V0VmlldyxcbiAgICAgICksXG4gICAgKTtcblxuICAgIC8vI2VuZHJlZ2lvblxuICB9LFxufTtcblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXP_ENTITY_ACTION_PLUGIN } from '@acorex/platform/layout/entity';\nimport { AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { NgModule } from '@angular/core';\nimport { AXPReservationPanelWidget } from './reservation-panel-widget.config';\nimport { reservationPlugin } from './reservation.plugin';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/widget-core\";\n//#endregion\n//#region ---- Module ----\nexport class AXPReservationPluginModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, imports: [i1.AXPWidgetCoreModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, providers: [{ provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: reservationPlugin }], imports: [AXPWidgetCoreModule.forChild({\n widgets: [AXPReservationPanelWidget],\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPWidgetCoreModule.forChild({\n widgets: [AXPReservationPanelWidget],\n }),\n ],\n providers: [{ provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: reservationPlugin }],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGx1Z2luLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBsdWdpbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUV6RCxZQUFZO0FBRVosOEJBQThCO0FBVTlCLE1BQU0sT0FBTywwQkFBMEI7K0dBQTFCLDBCQUEwQjtnSEFBMUIsMEJBQTBCO2dIQUExQiwwQkFBMEIsYUFGMUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLFlBSjFGLG1CQUFtQixDQUFDLFFBQVEsQ0FBQztnQkFDM0IsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7YUFDckMsQ0FBQzs7NEZBSU8sMEJBQTBCO2tCQVJ0QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7NEJBQzNCLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO3lCQUNyQyxDQUFDO3FCQUNIO29CQUNELFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLENBQUM7aUJBQzdGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBfRU5USVRZX0FDVElPTl9QTFVHSU4gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29yZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0IH0gZnJvbSAnLi9yZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQuY29uZmlnJztcbmltcG9ydCB7IHJlc2VydmF0aW9uUGx1Z2luIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi5wbHVnaW4nO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBBWFBXaWRnZXRDb3JlTW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHdpZGdldHM6IFtBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0XSxcbiAgICB9KSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWFBfRU5USVRZX0FDVElPTl9QTFVHSU4sIG11bHRpOiB0cnVlLCB1c2VWYWx1ZTogcmVzZXJ2YXRpb25QbHVnaW4gfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uUGx1Z2luTW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Types ----\nexport {};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZCQUE2Qjs7QUEyRDdCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIFR5cGVzICAgLS0tLVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uUGFuZWxJbnB1dHMge1xuICByZXNvdXJjZUVudGl0eUlkOiBzdHJpbmc7IC8vIGUuZy4gJ0Fzc2V0TWFuYWdlbWVudC5Bc3NldCdcbiAgcmVzb3VyY2VJZDogc3RyaW5nOyAvLyBjdXJyZW50IHJlY29yZCBpZFxuICByZXNvdXJjZVJlZj86IHsgdGl0bGU/OiBzdHJpbmc7IGNvZGU/OiBzdHJpbmcgfTsgLy8gb3B0aW9uYWwgc25hcHNob3QgZm9yIFVJXG5cbiAgcmVzZXJ2YXRpb25UeXBlSWQ/OiBzdHJpbmc7XG4gIHJlc2VydmF0aW9uVHlwZUNvZGU/OiBzdHJpbmc7IC8vIGUuZy4gJ2Fzc2V0J1xuXG4gIGRlZmF1bHRDbGFzc0lkPzogc3RyaW5nOyAvLyBvcHRpb25hbFxuICBtb2RlPzogJ2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdib3RoJzsgLy8gZGVmYXVsdCAnYm90aCdcbiAgcmVhZG9ubHk/OiBib29sZWFuOyAvLyBkZWZhdWx0IGZhbHNlXG5cbiAgZGF0ZVJhbmdlRGF5cz86IG51bWJlcjsgLy8gZGVmYXVsdCAzMCAodG9kYXkgKy8tKVxuICBhbGxvd0hvbGQ/OiBib29sZWFuOyAvLyBvdmVycmlkZSAob3B0aW9uYWwpXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQUmVzZXJ2YXRpb25Db25mbGljdCB7XG4gIHJlc2VydmF0aW9uSWQ6IHN0cmluZztcbiAgc3RhcnREYXRlOiBEYXRlO1xuICBlbmREYXRlOiBEYXRlO1xuICBraW5kOiAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnO1xuICBpc0Jsb2NraW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIGZyb21TdGF0dXNJZDogc3RyaW5nO1xuICB0b1N0YXR1c0lkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICByZXF1aXJlc1Blcm1pc3Npb24/OiBzdHJpbmc7XG4gIGlzQWN0aXZlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uQ3JlYXRlRGF0YSB7XG4gIHJlc2VydmF0aW9uQ2xhc3NJZDogc3RyaW5nO1xuICBzdGFydERhdGVUaW1lOiBEYXRlO1xuICBlbmREYXRlVGltZTogRGF0ZTtcbiAgcHVycG9zZT86IHN0cmluZztcbiAgbm90ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBSZXNlcnZhdGlvbkhvbGRDcmVhdGVEYXRhIHtcbiAgc3RhcnREYXRlVGltZTogRGF0ZTtcbiAgZW5kRGF0ZVRpbWU6IERhdGU7XG4gIGlzQmxvY2tpbmc6IGJvb2xlYW47XG4gIGhvbGRUeXBlQ29kZTogc3RyaW5nO1xuICBob2xkUmVhc29uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbkRhdGEge1xuICByZXNlcnZhdGlvbklkOiBzdHJpbmc7XG4gIHRyYW5zaXRpb25JZDogc3RyaW5nO1xuICBub3RlPzogc3RyaW5nO1xufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","export const AXMReservationManagementMenuKeys = {\n Root: 'reservation-management:menu',\n ReservationTypes: 'reservation-management:Menu:ReservationTypes',\n ReservationStatuses: 'reservation-management:Menu:ReservationStatuses',\n ReservationClasses: 'reservation-management:Menu:ReservationClasses',\n Reservations: 'reservation-management:Menu:Reservations',\n ReservationHolds: 'reservation-management:Menu:ReservationHolds',\n ReservationHoldTypes: 'reservation-management:Menu:ReservationHoldTypes',\n EventTypes: 'reservation-management:Menu:EventTypes',\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUc7SUFDOUMsSUFBSSxFQUFFLDZCQUE2QjtJQUNuQyxnQkFBZ0IsRUFBRSw4Q0FBOEM7SUFDaEUsbUJBQW1CLEVBQUUsaURBQWlEO0lBQ3RFLGtCQUFrQixFQUFFLGdEQUFnRDtJQUNwRSxZQUFZLEVBQUUsMENBQTBDO0lBQ3hELGdCQUFnQixFQUFFLDhDQUE4QztJQUNoRSxvQkFBb0IsRUFBRSxrREFBa0Q7SUFDeEUsVUFBVSxFQUFFLHdDQUF3QztDQUM1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudE1lbnVLZXlzID0ge1xuICBSb290OiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDptZW51JyxcbiAgUmVzZXJ2YXRpb25UeXBlczogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQ6TWVudTpSZXNlcnZhdGlvblR5cGVzJyxcbiAgUmVzZXJ2YXRpb25TdGF0dXNlczogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQ6TWVudTpSZXNlcnZhdGlvblN0YXR1c2VzJyxcbiAgUmVzZXJ2YXRpb25DbGFzc2VzOiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDpNZW51OlJlc2VydmF0aW9uQ2xhc3NlcycsXG4gIFJlc2VydmF0aW9uczogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQ6TWVudTpSZXNlcnZhdGlvbnMnLFxuICBSZXNlcnZhdGlvbkhvbGRzOiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDpNZW51OlJlc2VydmF0aW9uSG9sZHMnLFxuICBSZXNlcnZhdGlvbkhvbGRUeXBlczogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQ6TWVudTpSZXNlcnZhdGlvbkhvbGRUeXBlcycsXG4gIEV2ZW50VHlwZXM6ICdyZXNlcnZhdGlvbi1tYW5hZ2VtZW50Ok1lbnU6RXZlbnRUeXBlcycsXG59IGFzIGNvbnN0O1xuIl19","//#region ---- Imports ----\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXMReservationManagementMenuKeys } from './menu.keys';\n//#endregion\n//#region ---- Menu Provider ----\nexport class AXMReservationManagementMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n }\n async provide(context) {\n const module = RootConfig.module;\n context.addItems([\n {\n name: AXMReservationManagementMenuKeys.Root,\n priority: 9051,\n text: '@reservation-management:module.menus.root.title',\n icon: module.icon,\n policy: {\n features: [module.name],\n },\n children: [\n {\n name: AXMReservationManagementMenuKeys.ReservationTypes,\n text: '@reservation-management:reservation-types.menus.reservation-types.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationType.name),\n icon: 'fa-light fa-list',\n priority: 1,\n },\n {\n name: AXMReservationManagementMenuKeys.ReservationStatuses,\n text: '@reservation-management:reservation-statuses.menus.reservation-statuses.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationStatus.name),\n icon: 'fa-light fa-flag',\n priority: 2,\n },\n {\n name: AXMReservationManagementMenuKeys.ReservationClasses,\n text: '@reservation-management:reservation-classes.menus.reservation-classes.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationClass.name),\n icon: 'fa-light fa-tag',\n priority: 3,\n },\n ],\n },\n ]);\n }\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbWVudS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFHL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUvRCxZQUFZO0FBRVoscUNBQXFDO0FBRXJDLE1BQU0sT0FBTyxvQ0FBb0M7SUFBakQ7UUFDbUIsa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQXdDNUQsQ0FBQztJQXRDQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQStCO1FBQzNDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFFakMsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUNmO2dCQUNFLElBQUksRUFBRSxnQ0FBZ0MsQ0FBQyxJQUFJO2dCQUMzQyxRQUFRLEVBQUUsSUFBSTtnQkFDZCxJQUFJLEVBQUUsaURBQWlEO2dCQUN2RCxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ2pCLE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO2lCQUN4QjtnQkFDRCxRQUFRLEVBQUU7b0JBQ1I7d0JBQ0UsSUFBSSxFQUFFLGdDQUFnQyxDQUFDLGdCQUFnQjt3QkFDdkQsSUFBSSxFQUFFLHlFQUF5RTt3QkFDL0UsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO3dCQUMxRixJQUFJLEVBQUUsa0JBQWtCO3dCQUN4QixRQUFRLEVBQUUsQ0FBQztxQkFDWjtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsZ0NBQWdDLENBQUMsbUJBQW1CO3dCQUMxRCxJQUFJLEVBQUUsK0VBQStFO3dCQUNyRixJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQzt3QkFDNUYsSUFBSSxFQUFFLGtCQUFrQjt3QkFDeEIsUUFBUSxFQUFFLENBQUM7cUJBQ1o7b0JBQ0Q7d0JBQ0UsSUFBSSxFQUFFLGdDQUFnQyxDQUFDLGtCQUFrQjt3QkFDekQsSUFBSSxFQUFFLDZFQUE2RTt3QkFDbkYsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7d0JBQzNGLElBQUksRUFBRSxpQkFBaUI7d0JBQ3ZCLFFBQVEsRUFBRSxDQUFDO3FCQUNaO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBNZW51UHJvdmlkZXIsIEFYUE1lbnVQcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuaW1wb3J0IHsgQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMgfSBmcm9tICcuL21lbnUua2V5cyc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIE1lbnUgUHJvdmlkZXIgICAtLS0tXG5cbmV4cG9ydCBjbGFzcyBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRNZW51UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBNZW51UHJvdmlkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGVudGl0eVNlcnZpY2UgPSBpbmplY3QoQVhQRW50aXR5U2VydmljZSk7XG5cbiAgYXN5bmMgcHJvdmlkZShjb250ZXh0OiBBWFBNZW51UHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGU7XG5cbiAgICBjb250ZXh0LmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMuUm9vdCxcbiAgICAgICAgcHJpb3JpdHk6IDkwNTEsXG4gICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDptb2R1bGUubWVudXMucm9vdC50aXRsZScsXG4gICAgICAgIGljb246IG1vZHVsZS5pY29uLFxuICAgICAgICBwb2xpY3k6IHtcbiAgICAgICAgICBmZWF0dXJlczogW21vZHVsZS5uYW1lXSxcbiAgICAgICAgfSxcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRNZW51S2V5cy5SZXNlcnZhdGlvblR5cGVzLFxuICAgICAgICAgICAgdGV4dDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXR5cGVzLm1lbnVzLnJlc2VydmF0aW9uLXR5cGVzLnRpdGxlJyxcbiAgICAgICAgICAgIHBhdGg6IHRoaXMuZW50aXR5U2VydmljZS5jcmVhdGVQYXRoKG1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uVHlwZS5uYW1lKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1saXN0JyxcbiAgICAgICAgICAgIHByaW9yaXR5OiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMuUmVzZXJ2YXRpb25TdGF0dXNlcyxcbiAgICAgICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5tZW51cy5yZXNlcnZhdGlvbi1zdGF0dXNlcy50aXRsZScsXG4gICAgICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChtb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy5uYW1lKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1mbGFnJyxcbiAgICAgICAgICAgIHByaW9yaXR5OiAyLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMuUmVzZXJ2YXRpb25DbGFzc2VzLFxuICAgICAgICAgICAgdGV4dDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMubWVudXMucmVzZXJ2YXRpb24tY2xhc3Nlcy50aXRsZScsXG4gICAgICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChtb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLm5hbWUpLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXRhZycsXG4gICAgICAgICAgICBwcmlvcml0eTogMyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","export const AXMPermissionsKeys = {\n ContentManagement: {\n Management: 'ContentManagement:Permission:Management',\n Promotion: {\n Management: 'ContentManagement:Permission:Promotion.Management',\n View: 'ContentManagement:Permission:Promotion.View',\n Edit: 'ContentManagement:Permission:Promotion.Edit',\n Delete: 'ContentManagement:Permission:Promotion.Delete',\n Create: 'ContentManagement:Permission:Promotion.Create',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9wZXJtaXNzaW9uLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUc7SUFDaEMsaUJBQWlCLEVBQUU7UUFDakIsVUFBVSxFQUFFLHlDQUF5QztRQUNyRCxTQUFTLEVBQUU7WUFDVCxVQUFVLEVBQUUsbURBQW1EO1lBQy9ELElBQUksRUFBRSw2Q0FBNkM7WUFDbkQsSUFBSSxFQUFFLDZDQUE2QztZQUNuRCxNQUFNLEVBQUUsK0NBQStDO1lBQ3ZELE1BQU0sRUFBRSwrQ0FBK0M7U0FDeEQ7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQVhNUGVybWlzc2lvbnNLZXlzID0ge1xuICBDb250ZW50TWFuYWdlbWVudDoge1xuICAgIE1hbmFnZW1lbnQ6ICdDb250ZW50TWFuYWdlbWVudDpQZXJtaXNzaW9uOk1hbmFnZW1lbnQnLFxuICAgIFByb21vdGlvbjoge1xuICAgICAgTWFuYWdlbWVudDogJ0NvbnRlbnRNYW5hZ2VtZW50OlBlcm1pc3Npb246UHJvbW90aW9uLk1hbmFnZW1lbnQnLFxuICAgICAgVmlldzogJ0NvbnRlbnRNYW5hZ2VtZW50OlBlcm1pc3Npb246UHJvbW90aW9uLlZpZXcnLFxuICAgICAgRWRpdDogJ0NvbnRlbnRNYW5hZ2VtZW50OlBlcm1pc3Npb246UHJvbW90aW9uLkVkaXQnLFxuICAgICAgRGVsZXRlOiAnQ29udGVudE1hbmFnZW1lbnQ6UGVybWlzc2lvbjpQcm9tb3Rpb24uRGVsZXRlJyxcbiAgICAgIENyZWF0ZTogJ0NvbnRlbnRNYW5hZ2VtZW50OlBlcm1pc3Npb246UHJvbW90aW9uLkNyZWF0ZScsXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXTranslationService } from '@acorex/core/translation';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXMPermissionsKeys } from './permission.keys';\nexport class AXMReservationManagementPermissionDefinitionProvider {\n constructor() {\n this.translateService = inject(AXTranslationService);\n }\n async define(context) {\n const trans = async (key) => await this.translateService.translateAsync(`@content-management:permissions.${key}`);\n const keys = AXMPermissionsKeys.ContentManagement;\n context\n .addGroup(RootConfig.module.name, await trans('manage.title'), await trans('manage.description'))\n //\n .addPermission(keys.Promotion.Management, await trans('promotion.manage.title'), await trans('promotion.manage.description'))\n .addChild(keys.Promotion.View, await trans('promotion.view.title'), await trans('promotion.view.description'))\n .addChild(keys.Promotion.Create, await trans('promotion.create.title'), await trans('promotion.create.description'))\n .addChild(keys.Promotion.Edit, await trans('promotion.edit.title'), await trans('promotion.edit.description'))\n .addChild(keys.Promotion.Delete, await trans('promotion.delete.title'), await trans('promotion.delete.description'))\n .endPermission()\n //\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9wZXJtaXNzaW9uLWRlZmluaXRpb24ucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXZELE1BQU0sT0FBTyxvREFBb0Q7SUFBakU7UUFDbUIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFnQ25FLENBQUM7SUE5QkMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUErQztRQUMxRCxNQUFNLEtBQUssR0FBRyxLQUFLLEVBQUUsR0FBVyxFQUFFLEVBQUUsQ0FDbEMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLG1DQUFtQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBRXZGLE1BQU0sSUFBSSxHQUFHLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDO1FBRWxELE9BQU87YUFDSixRQUFRLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUNqRyxFQUFFO2FBQ0QsYUFBYSxDQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUN6QixNQUFNLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxFQUNyQyxNQUFNLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUM1QzthQUNBLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7YUFDN0csUUFBUSxDQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUNyQixNQUFNLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxFQUNyQyxNQUFNLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUM1QzthQUNBLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxNQUFNLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7YUFDN0csUUFBUSxDQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUNyQixNQUFNLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxFQUNyQyxNQUFNLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUM1QzthQUNBLGFBQWEsRUFBRTtZQUNoQixFQUFFO2FBQ0QsUUFBUSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlciwgQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1QZXJtaXNzaW9uc0tleXMgfSBmcm9tICcuL3Blcm1pc3Npb24ua2V5cyc7XG5cbmV4cG9ydCBjbGFzcyBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIGltcGxlbWVudHMgQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZSA9IGluamVjdChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG5cbiAgYXN5bmMgZGVmaW5lKGNvbnRleHQ6IEFYUFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdHJhbnMgPSBhc3luYyAoa2V5OiBzdHJpbmcpID0+XG4gICAgICBhd2FpdCB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoYEBjb250ZW50LW1hbmFnZW1lbnQ6cGVybWlzc2lvbnMuJHtrZXl9YCk7XG5cbiAgICBjb25zdCBrZXlzID0gQVhNUGVybWlzc2lvbnNLZXlzLkNvbnRlbnRNYW5hZ2VtZW50O1xuXG4gICAgY29udGV4dFxuICAgICAgLmFkZEdyb3VwKFJvb3RDb25maWcubW9kdWxlLm5hbWUsIGF3YWl0IHRyYW5zKCdtYW5hZ2UudGl0bGUnKSwgYXdhaXQgdHJhbnMoJ21hbmFnZS5kZXNjcmlwdGlvbicpKVxuICAgICAgLy9cbiAgICAgIC5hZGRQZXJtaXNzaW9uKFxuICAgICAgICBrZXlzLlByb21vdGlvbi5NYW5hZ2VtZW50LFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLm1hbmFnZS50aXRsZScpLFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLm1hbmFnZS5kZXNjcmlwdGlvbicpLFxuICAgICAgKVxuICAgICAgLmFkZENoaWxkKGtleXMuUHJvbW90aW9uLlZpZXcsIGF3YWl0IHRyYW5zKCdwcm9tb3Rpb24udmlldy50aXRsZScpLCBhd2FpdCB0cmFucygncHJvbW90aW9uLnZpZXcuZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRDaGlsZChcbiAgICAgICAga2V5cy5Qcm9tb3Rpb24uQ3JlYXRlLFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLmNyZWF0ZS50aXRsZScpLFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLmNyZWF0ZS5kZXNjcmlwdGlvbicpLFxuICAgICAgKVxuICAgICAgLmFkZENoaWxkKGtleXMuUHJvbW90aW9uLkVkaXQsIGF3YWl0IHRyYW5zKCdwcm9tb3Rpb24uZWRpdC50aXRsZScpLCBhd2FpdCB0cmFucygncHJvbW90aW9uLmVkaXQuZGVzY3JpcHRpb24nKSlcbiAgICAgIC5hZGRDaGlsZChcbiAgICAgICAga2V5cy5Qcm9tb3Rpb24uRGVsZXRlLFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLmRlbGV0ZS50aXRsZScpLFxuICAgICAgICBhd2FpdCB0cmFucygncHJvbW90aW9uLmRlbGV0ZS5kZXNjcmlwdGlvbicpLFxuICAgICAgKVxuICAgICAgLmVuZFBlcm1pc3Npb24oKVxuICAgICAgLy9cbiAgICAgIC5lbmRHcm91cCgpO1xuICB9XG59XG4iXX0=","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationClassService, AXPReservationManagementReservationClassServiceImpl, } from './reservation-class.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Event Type Entity Module ----\nexport class AXPReservationManagementReservationClassEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationClassService,\n useClass: AXPReservationManagementReservationClassServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationClassService,\n useClass: AXPReservationManagementReservationClassServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3MubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLCtDQUErQyxFQUMvQyxtREFBbUQsR0FDcEQsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFckMsWUFBWTtBQUVaLGdEQUFnRDtBQVVoRCxNQUFNLE9BQU8sb0RBQW9EOytHQUFwRCxvREFBb0Q7Z0hBQXBELG9EQUFvRDtnSEFBcEQsb0RBQW9ELGFBUHBEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLCtDQUErQztnQkFDeEQsUUFBUSxFQUFFLG1EQUFtRDthQUM5RDtTQUNGOzs0RkFFVSxvREFBb0Q7a0JBUmhFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwrQ0FBK0M7NEJBQ3hELFFBQVEsRUFBRSxtREFBbUQ7eUJBQzlEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi1jbGFzcy5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgRXZlbnQgVHlwZSBFbnRpdHkgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZUltcGwsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc0VudGl0eU1vZHVsZSB7fVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationEventService, AXPReservationManagementReservationEventServiceImpl, } from './reservation-event.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Hold Type Entity Module ----\nexport class AXPReservationManagementReservationEventEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationEventService,\n useClass: AXPReservationManagementReservationEventServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationEventService,\n useClass: AXPReservationManagementReservationEventServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1ldmVudC9yZXNlcnZhdGlvbi1ldmVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLCtDQUErQyxFQUMvQyxtREFBbUQsR0FDcEQsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFckMsWUFBWTtBQUVaLCtDQUErQztBQVUvQyxNQUFNLE9BQU8sb0RBQW9EOytHQUFwRCxvREFBb0Q7Z0hBQXBELG9EQUFvRDtnSEFBcEQsb0RBQW9ELGFBUHBEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLCtDQUErQztnQkFDeEQsUUFBUSxFQUFFLG1EQUFtRDthQUM5RDtTQUNGOzs0RkFFVSxvREFBb0Q7a0JBUmhFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwrQ0FBK0M7NEJBQ3hELFFBQVEsRUFBRSxtREFBbUQ7eUJBQzlEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudFNlcnZpY2UsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi1ldmVudC5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgSG9sZCBUeXBlIEVudGl0eSBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlSW1wbCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50RW50aXR5TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { RootConfig } from './const';\n//#endregion\n//#region ---- Manifest Definition ----\n/**\n * Reservation Management Module Manifest.\n * Defines module metadata, features, and provider references.\n */\nexport const ReservationManagementManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n required: false,\n // Module dependencies (optional)\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUcvQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLFlBQVk7QUFFWiwyQ0FBMkM7QUFFM0M7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQXNCO0lBQzlELElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7SUFDNUIsT0FBTyxFQUFFLE9BQU87SUFDaEIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSztJQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQzVCLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7SUFDNUIsUUFBUSxFQUFFLEtBQUs7SUFDZixpQ0FBaUM7Q0FDbEMsQ0FBQztBQUVGLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYUE1vZHVsZU1hbmlmZXN0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgTWFuaWZlc3QgRGVmaW5pdGlvbiAgIC0tLS1cblxuLyoqXG4gKiBSZXNlcnZhdGlvbiBNYW5hZ2VtZW50IE1vZHVsZSBNYW5pZmVzdC5cbiAqIERlZmluZXMgbW9kdWxlIG1ldGFkYXRhLCBmZWF0dXJlcywgYW5kIHByb3ZpZGVyIHJlZmVyZW5jZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBSZXNlcnZhdGlvbk1hbmFnZW1lbnRNYW5pZmVzdDogQVhQTW9kdWxlTWFuaWZlc3QgPSB7XG4gIG5hbWU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gIHZlcnNpb246ICcxLjAuMCcsXG4gIHRpdGxlOiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgaWNvbjogUm9vdENvbmZpZy5tb2R1bGUuaWNvbixcbiAgaTE4bjogUm9vdENvbmZpZy5jb25maWcuaTE4bixcbiAgcmVxdWlyZWQ6IGZhbHNlLFxuICAvLyBNb2R1bGUgZGVwZW5kZW5jaWVzIChvcHRpb25hbClcbn07XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';\nimport { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider } from '@acorex/platform/core';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationClassEntityModule } from './entities/reservation-class/reservation-class.module';\nimport { AXPReservationManagementReservationEventEntityModule } from './entities/reservation-event/reservation-event.module';\nimport { AXPReservationManagementReservationStatusEntityModule } from './entities/reservation-status/reservation-status.module';\nimport { AXPReservationManagementReservationTypeEntityModule } from './entities/reservation-type/reservation-type.module';\nimport { AXPReservationManagementReservationEntityModule } from './entities/reservation/reservation.module';\nimport { AXPReservationPluginModule } from './features/reservation-plugin/reservation-plugin.module';\nimport { ReservationManagementManifest } from './manifest';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Module ----\nexport class AXMReservationManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, imports: [AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, providers: [\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: ReservationManagementManifest,\n multi: true,\n },\n // Provider references (now using tokens)\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => import('./permission-definition.provider').then((m) => m.AXMReservationManagementPermissionDefinitionProvider)),\n provideLazyProvider(AXP_MENU_PROVIDER, () => import('./menu.provider').then((m) => m.AXMReservationManagementMenuProvider)),\n provideLazyProvider(AXP_ENTITY_DEFINITION_LOADER, () => import('./entity.provider').then((m) => m.AXMReservationManagementEntityProvider)),\n provideLazyProvider(AXP_SEARCH_PROVIDER, () => import('./search.provider').then((m) => m.AXMReservationManagementSearchCommandProvider)),\n ], imports: [AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule,\n ],\n providers: [\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: ReservationManagementManifest,\n multi: true,\n },\n // Provider references (now using tokens)\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => import('./permission-definition.provider').then((m) => m.AXMReservationManagementPermissionDefinitionProvider)),\n provideLazyProvider(AXP_MENU_PROVIDER, () => import('./menu.provider').then((m) => m.AXMReservationManagementMenuProvider)),\n provideLazyProvider(AXP_ENTITY_DEFINITION_LOADER, () => import('./entity.provider').then((m) => m.AXMReservationManagementEntityProvider)),\n provideLazyProvider(AXP_SEARCH_PROVIDER, () => import('./search.provider').then((m) => m.AXMReservationManagementSearchCommandProvider)),\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUUvQixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvREFBb0QsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzdILE9BQU8sRUFBRSxvREFBb0QsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzdILE9BQU8sRUFBRSxxREFBcUQsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxtREFBbUQsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzFILE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFFM0QsWUFBWTtBQUVaLDhCQUE4QjtBQWlDOUIsTUFBTSxPQUFPLDhCQUE4QjsrR0FBOUIsOEJBQThCO2dIQUE5Qiw4QkFBOEIsWUE3QnZDLG1EQUFtRDtZQUNuRCxxREFBcUQ7WUFDckQsb0RBQW9EO1lBQ3BELG9EQUFvRDtZQUNwRCwrQ0FBK0M7WUFDL0MsMEJBQTBCO2dIQXdCakIsOEJBQThCLGFBdEI5QjtZQUNULDJCQUEyQjtZQUMzQjtnQkFDRSxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxRQUFRLEVBQUUsNkJBQTZCO2dCQUN2QyxLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0QseUNBQXlDO1lBQ3pDLG1CQUFtQixDQUFDLGtDQUFrQyxFQUFFLEdBQUcsRUFBRSxDQUMzRCxNQUFNLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvREFBb0QsQ0FBQyxDQUMvRztZQUNELG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUMxQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUM5RTtZQUNELG1CQUFtQixDQUFDLDRCQUE0QixFQUFFLEdBQUcsRUFBRSxDQUNyRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUNsRjtZQUNELG1CQUFtQixDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxDQUM1QyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUN6RjtTQUNGLFlBM0JDLG1EQUFtRDtZQUNuRCxxREFBcUQ7WUFDckQsb0RBQW9EO1lBQ3BELG9EQUFvRDtZQUNwRCwrQ0FBK0M7WUFDL0MsMEJBQTBCOzs0RkF3QmpCLDhCQUE4QjtrQkEvQjFDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLG1EQUFtRDt3QkFDbkQscURBQXFEO3dCQUNyRCxvREFBb0Q7d0JBQ3BELG9EQUFvRDt3QkFDcEQsK0NBQStDO3dCQUMvQywwQkFBMEI7cUJBQzNCO29CQUNELFNBQVMsRUFBRTt3QkFDVCwyQkFBMkI7d0JBQzNCOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFFBQVEsRUFBRSw2QkFBNkI7NEJBQ3ZDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELHlDQUF5Qzt3QkFDekMsbUJBQW1CLENBQUMsa0NBQWtDLEVBQUUsR0FBRyxFQUFFLENBQzNELE1BQU0sQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9EQUFvRCxDQUFDLENBQy9HO3dCQUNELG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUMxQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUM5RTt3QkFDRCxtQkFBbUIsQ0FBQyw0QkFBNEIsRUFBRSxHQUFHLEVBQUUsQ0FDckQsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsc0NBQXNDLENBQUMsQ0FDbEY7d0JBQ0QsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFLENBQzVDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQ3pGO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUF9NRU5VX1BST1ZJREVSLCBBWFBfU0VBUkNIX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQX01PRFVMRV9NQU5JRkVTVF9QUk9WSURFUiwgcHJvdmlkZUxhenlQcm92aWRlciB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzRW50aXR5TW9kdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5tb2R1bGUnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZHVsZSB9IGZyb20gJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tZXZlbnQvcmVzZXJ2YXRpb24tZXZlbnQubW9kdWxlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVFbnRpdHlNb2R1bGUgfSBmcm9tICcuL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2R1bGUgfSBmcm9tICcuL2VudGl0aWVzL3Jlc2VydmF0aW9uL3Jlc2VydmF0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvblBsdWdpbk1vZHVsZSB9IGZyb20gJy4vZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBsdWdpbi5tb2R1bGUnO1xuaW1wb3J0IHsgUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWFuaWZlc3QgfSBmcm9tICcuL21hbmlmZXN0JztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlRW50aXR5TW9kdWxlLFxuICAgIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlLFxuICAgIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NFbnRpdHlNb2R1bGUsXG4gICAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZHVsZSxcbiAgICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkVudGl0eU1vZHVsZSxcbiAgICBBWFBSZXNlcnZhdGlvblBsdWdpbk1vZHVsZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gTW9kdWxlIE1hbmlmZXN0IFByb3ZpZGVyXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX01PRFVMRV9NQU5JRkVTVF9QUk9WSURFUixcbiAgICAgIHVzZVZhbHVlOiBSZXNlcnZhdGlvbk1hbmFnZW1lbnRNYW5pZmVzdCxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAgLy8gUHJvdmlkZXIgcmVmZXJlbmNlcyAobm93IHVzaW5nIHRva2VucylcbiAgICBwcm92aWRlTGF6eVByb3ZpZGVyKEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIsICgpID0+XG4gICAgICBpbXBvcnQoJy4vcGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyJykudGhlbigobSkgPT4gbS5BWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX01FTlVfUFJPVklERVIsICgpID0+XG4gICAgICBpbXBvcnQoJy4vbWVudS5wcm92aWRlcicpLnRoZW4oKG0pID0+IG0uQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudVByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUiwgKCkgPT5cbiAgICAgIGltcG9ydCgnLi9lbnRpdHkucHJvdmlkZXInKS50aGVuKChtKSA9PiBtLkFYTVJlc2VydmF0aW9uTWFuYWdlbWVudEVudGl0eVByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX1NFQVJDSF9QUk9WSURFUiwgKCkgPT5cbiAgICAgIGltcG9ydCgnLi9zZWFyY2gucHJvdmlkZXInKS50aGVuKChtKSA9PiBtLkFYTVJlc2VydmF0aW9uTWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlciksXG4gICAgKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // {\n // group: 'command',\n // title: 'New Form Template',\n // icon: RootConfig.entities.template.icon,\n // description: 'Create a new form template for designing reusable forms.', // Added description\n // commands: {\n // 'create-entity': {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.template.name}`,\n // },\n // },\n // }\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3NlYXJjaC1jb21tYW5kLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsd0JBQXdCO0lBQXRFOztRQUNFLGFBQVEsR0FBc0I7UUFDNUIsSUFBSTtRQUNKLHNCQUFzQjtRQUN0QiwrQkFBK0I7UUFDL0IsNENBQTRDO1FBQzVDLGlHQUFpRztRQUNqRyxlQUFlO1FBQ2Ysd0JBQXdCO1FBQ3hCLGlGQUFpRjtRQUNqRixRQUFRO1FBQ1IsTUFBTTtRQUNOLElBQUk7U0FDTCxDQUFDO0lBQ0osQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2VhcmNoQ29tbWFuZFByb3ZpZGVyLCBBWFBTZWFyY2hSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBBWE1TZWFyY2hDb21tYW5kUHJvdmlkZXIgZXh0ZW5kcyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIge1xuICBjb21tYW5kczogQVhQU2VhcmNoUmVzdWx0W10gPSBbXG4gICAgLy8ge1xuICAgIC8vICAgZ3JvdXA6ICdjb21tYW5kJyxcbiAgICAvLyAgdGl0bGU6ICdOZXcgRm9ybSBUZW1wbGF0ZScsXG4gICAgLy8gIGljb246IFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUuaWNvbixcbiAgICAvLyAgZGVzY3JpcHRpb246ICdDcmVhdGUgYSBuZXcgZm9ybSB0ZW1wbGF0ZSBmb3IgZGVzaWduaW5nIHJldXNhYmxlIGZvcm1zLicsIC8vIEFkZGVkIGRlc2NyaXB0aW9uXG4gICAgLy8gIGNvbW1hbmRzOiB7XG4gICAgLy8gICAgJ2NyZWF0ZS1lbnRpdHknOiB7XG4gICAgLy8gICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5uYW1lfWAsXG4gICAgLy8gICAgfSxcbiAgICAvLyAgfSxcbiAgICAvLyB9XG4gIF07XG59XG4iXX0=","//#region ---- Imports ----\nimport { AXPSearchCommandProvider } from '@acorex/platform/common';\nimport { RootConfig } from './const';\n//#endregion\n//#region ---- Search Provider ----\nexport class AXMReservationManagementSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n {\n group: 'entity',\n title: '@reservation-management:assets.search.create-asset.title',\n icon: RootConfig.entities.reservation.icon,\n description: '@reservation-management:assets.search.create-asset.description',\n command: {\n name: 'create-entity',\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservation.name}`,\n },\n },\n },\n // {\n // group: 'entity',\n // title: '@asset-management:asset-statuses.search.create-asset-status.title',\n // icon: RootConfig.entities.assetStatus.icon,\n // description: '@asset-management:asset-statuses.search.create-asset-status.description',\n // command: {\n // name: 'create-entity',\n // options: {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.assetStatus.name}`,\n // },\n // },\n // },\n ];\n }\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9zZWFyY2gucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLFlBQVk7QUFFWix1Q0FBdUM7QUFFdkMsTUFBTSxPQUFPLDZDQUE4QyxTQUFRLHdCQUF3QjtJQUEzRjs7UUFDRSxhQUFRLEdBQXNCO1lBQzVCO2dCQUNFLEtBQUssRUFBRSxRQUFRO2dCQUNmLEtBQUssRUFBRSwwREFBMEQ7Z0JBQ2pFLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJO2dCQUMxQyxXQUFXLEVBQUUsZ0VBQWdFO2dCQUM3RSxPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLGVBQWU7b0JBQ3JCLE9BQU8sRUFBRTt3QkFDUCxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUU7cUJBQzVFO2lCQUNGO2FBQ0Y7WUFDRCxJQUFJO1lBQ0osdUJBQXVCO1lBQ3ZCLGtGQUFrRjtZQUNsRixrREFBa0Q7WUFDbEQsOEZBQThGO1lBQzlGLGlCQUFpQjtZQUNqQixpQ0FBaUM7WUFDakMscUJBQXFCO1lBQ3JCLDJGQUEyRjtZQUMzRixhQUFhO1lBQ2IsU0FBUztZQUNULEtBQUs7U0FDTixDQUFDO0lBQ0osQ0FBQztDQUFBO0FBRUQsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhQU2VhcmNoQ29tbWFuZFByb3ZpZGVyLCBBWFBTZWFyY2hSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIFNlYXJjaCBQcm92aWRlciAgIC0tLS1cblxuZXhwb3J0IGNsYXNzIEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlciBleHRlbmRzIEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciB7XG4gIGNvbW1hbmRzOiBBWFBTZWFyY2hSZXN1bHRbXSA9IFtcbiAgICB7XG4gICAgICBncm91cDogJ2VudGl0eScsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OmFzc2V0cy5zZWFyY2guY3JlYXRlLWFzc2V0LnRpdGxlJyxcbiAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24uaWNvbixcbiAgICAgIGRlc2NyaXB0aW9uOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6YXNzZXRzLnNlYXJjaC5jcmVhdGUtYXNzZXQuZGVzY3JpcHRpb24nLFxuICAgICAgY29tbWFuZDoge1xuICAgICAgICBuYW1lOiAnY3JlYXRlLWVudGl0eScsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lfWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgLy8ge1xuICAgIC8vICAgICBncm91cDogJ2VudGl0eScsXG4gICAgLy8gICAgIHRpdGxlOiAnQGFzc2V0LW1hbmFnZW1lbnQ6YXNzZXQtc3RhdHVzZXMuc2VhcmNoLmNyZWF0ZS1hc3NldC1zdGF0dXMudGl0bGUnLFxuICAgIC8vICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmFzc2V0U3RhdHVzLmljb24sXG4gICAgLy8gICAgIGRlc2NyaXB0aW9uOiAnQGFzc2V0LW1hbmFnZW1lbnQ6YXNzZXQtc3RhdHVzZXMuc2VhcmNoLmNyZWF0ZS1hc3NldC1zdGF0dXMuZGVzY3JpcHRpb24nLFxuICAgIC8vICAgICBjb21tYW5kOiB7XG4gICAgLy8gICAgICAgICBuYW1lOiAnY3JlYXRlLWVudGl0eScsXG4gICAgLy8gICAgICAgICBvcHRpb25zOiB7XG4gICAgLy8gICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuYXNzZXRTdGF0dXMubmFtZX1gLFxuICAgIC8vICAgICAgICAgfSxcbiAgICAvLyAgICAgfSxcbiAgICAvLyB9LFxuICBdO1xufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","export class AXMSettingProvider {\n async provide(context) {\n // context\n // // Add Form Template Group\n // .addGroup('form-template', 'Form Template', 'Settings related to form templates.', RootConfig.module.icon)\n // // Start Interface Section\n // .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n // .addSetting({\n // key: 'history-panel',\n // title: 'Show History Panel',\n // scope: 'U',\n // isInherited: true,\n // defaultValue: false,\n // widget: {\n // type: AXPWidgetsCatalog.toggle,\n // },\n // description: 'Enable or disable the history panel for forms.',\n // validationRules: [\n // {\n // rule: 'required',\n // },\n // ],\n // })\n // .endSection()\n // .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvc2V0dGluZy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBNEM7UUFDeEQsVUFBVTtRQUNWLCtCQUErQjtRQUMvQiwrR0FBK0c7UUFDL0csK0JBQStCO1FBQy9CLHdGQUF3RjtRQUN4RixrQkFBa0I7UUFDbEIsNEJBQTRCO1FBQzVCLG1DQUFtQztRQUNuQyxrQkFBa0I7UUFDbEIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixnQkFBZ0I7UUFDaEIsd0NBQXdDO1FBQ3hDLFNBQVM7UUFDVCxxRUFBcUU7UUFDckUseUJBQXlCO1FBQ3pCLFVBQVU7UUFDViw0QkFBNEI7UUFDNUIsV0FBVztRQUNYLFNBQVM7UUFDVCxPQUFPO1FBQ1Asa0JBQWtCO1FBQ2xCLGlCQUFpQjtJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyLCBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNldHRpbmdQcm92aWRlciBpbXBsZW1lbnRzIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIge1xuICBhc3luYyBwcm92aWRlKGNvbnRleHQ6IEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gY29udGV4dFxuICAgIC8vICAgLy8gQWRkIEZvcm0gVGVtcGxhdGUgR3JvdXBcbiAgICAvLyAgIC5hZGRHcm91cCgnZm9ybS10ZW1wbGF0ZScsICdGb3JtIFRlbXBsYXRlJywgJ1NldHRpbmdzIHJlbGF0ZWQgdG8gZm9ybSB0ZW1wbGF0ZXMuJywgUm9vdENvbmZpZy5tb2R1bGUuaWNvbilcbiAgICAvLyAgIC8vIFN0YXJ0IEludGVyZmFjZSBTZWN0aW9uXG4gICAgLy8gICAuYWRkU2VjdGlvbignaW50ZXJmYWNlJywgJ1VJIEludGVyZmFjZScsICdDdXN0b21pemUgdGhlIHVzZXIgaW50ZXJmYWNlIGZvciBmb3Jtcy4nKVxuICAgIC8vICAgLmFkZFNldHRpbmcoe1xuICAgIC8vICAgICBrZXk6ICdoaXN0b3J5LXBhbmVsJyxcbiAgICAvLyAgICAgdGl0bGU6ICdTaG93IEhpc3RvcnkgUGFuZWwnLFxuICAgIC8vICAgICBzY29wZTogJ1UnLFxuICAgIC8vICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAvLyAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAvLyAgICAgd2lkZ2V0OiB7XG4gICAgLy8gICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudG9nZ2xlLFxuICAgIC8vICAgICB9LFxuICAgIC8vICAgICBkZXNjcmlwdGlvbjogJ0VuYWJsZSBvciBkaXNhYmxlIHRoZSBoaXN0b3J5IHBhbmVsIGZvciBmb3Jtcy4nLFxuICAgIC8vICAgICB2YWxpZGF0aW9uUnVsZXM6IFtcbiAgICAvLyAgICAgICB7XG4gICAgLy8gICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgIC8vICAgICAgIH0sXG4gICAgLy8gICAgIF0sXG4gICAgLy8gICB9KVxuICAgIC8vICAgLmVuZFNlY3Rpb24oKVxuICAgIC8vICAgLmVuZEdyb3VwKCk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtcmVzZXJ2YXRpb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9hY29yZXgtbW9kdWxlcy1yZXNlcnZhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1"],"mappings":"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S,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACrM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,kCAAkC,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;AAC7O;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,UAAU,EAAE,CAAC;AAC7I,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;AACnF,wBAAwB,YAAY;AACpC,wBAAwB,WAAW;AACnC,wBAAwB,QAAQ;AAChC,wBAAwB,cAAc;AACtC,wBAAwB,gBAAgB;AACxC,wBAAwB,iBAAiB;AACzC,wBAAwB,mBAAmB;AAC3C,wBAAwB,aAAa;AACrC,wBAAwB,iBAAiB;AACzC,wBAAwB,mBAAmB;AAC3C,qBAAqB,EAAE,QAAQ,EAAE;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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"}
1
+ {"version":3,"file":"acorex-modules-reservation-management.mjs","sources":["../tmp-esm2022/reservation-management/lib/const.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation/reservation.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-status/reservation-status.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.service.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.entity.js","../tmp-esm2022/reservation-management/lib/entities/reservation-type/reservation-type.module.js","../tmp-esm2022/reservation-management/lib/entity.provider.js","../tmp-esm2022/reservation-management/lib/services/reservation.service.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-panel-widget.component.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-panel-widget.config.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation.plugin.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-plugin.module.js","../tmp-esm2022/reservation-management/lib/features/reservation-plugin/reservation-widget.types.js","../tmp-esm2022/reservation-management/lib/menu.keys.js","../tmp-esm2022/reservation-management/lib/permission.keys.js","../tmp-esm2022/reservation-management/lib/menu.provider.js","../tmp-esm2022/reservation-management/lib/permission-definition.provider.js","../tmp-esm2022/reservation-management/lib/entities/reservation-class/reservation-class.module.js","../tmp-esm2022/reservation-management/lib/entities/reservation-event/reservation-event.module.js","../tmp-esm2022/reservation-management/lib/manifest.js","../tmp-esm2022/reservation-management/lib/reservation-management.module.js","../tmp-esm2022/reservation-management/lib/search-command.provider.js","../tmp-esm2022/reservation-management/lib/search.provider.js","../tmp-esm2022/reservation-management/lib/setting.provider.js","../tmp-esm2022/reservation-management/acorex-modules-reservation-management.js"],"sourcesContent":["//#region ---- Root Configuration ----\nconst config = {\n i18n: 'reservation-management',\n module: 'ReservationManagement',\n route: 'reservation-management',\n};\nexport const RootConfig = {\n config,\n module: {\n route: config.route,\n name: config.module,\n title: '@reservation-management:module.title',\n icon: 'fa-light fa-calendar-check',\n },\n entities: {\n reservationType: {\n name: 'ReservationType',\n source: `${config.module}.ReservationType`,\n title: '@reservation-management:reservation-types.entities.reservation-type.title',\n titlePlural: '@reservation-management:reservation-types.entities.reservation-type.plural',\n icon: 'fa-light fa-list',\n },\n reservationStatus: {\n name: 'ReservationStatus',\n source: `${config.module}.ReservationStatus`,\n title: '@reservation-management:reservation-statuses.entities.reservation-status.title',\n titlePlural: '@reservation-management:reservation-statuses.entities.reservation-status.plural',\n icon: 'fa-light fa-flag',\n },\n reservationClass: {\n name: 'ReservationClass',\n source: `${config.module}.ReservationClass`,\n title: '@reservation-management:reservation-classes.entities.reservation-class.title',\n titlePlural: '@reservation-management:reservation-classes.entities.reservation-class.plural',\n icon: 'fa-light fa-tag',\n },\n reservation: {\n name: 'Reservation',\n source: `${config.module}.Reservation`,\n title: '@reservation-management:reservations.entities.reservation.title',\n titlePlural: '@reservation-management:reservations.entities.reservation.plural',\n icon: 'fa-light fa-calendar-check',\n },\n reservationEvent: {\n name: 'ReservationEvent',\n source: `${config.module}.ReservationEvent`,\n title: '@reservation-management:reservation-events.entities.reservation-event.title',\n titlePlural: '@reservation-management:reservation-events.entities.reservation-event.plural',\n icon: 'fa-light fa-calendar-alt',\n },\n reservationHold: {\n name: 'ReservationHold',\n source: `${config.module}.ReservationHold`,\n title: '@reservation-management:reservation-holds.entities.reservation-hold.title',\n titlePlural: '@reservation-management:reservation-holds.entities.reservation-hold.plural',\n icon: 'fa-light fa-pause-circle',\n },\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBDQUEwQztBQUUxQyxNQUFNLE1BQU0sR0FBRztJQUNiLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsTUFBTSxFQUFFLHVCQUF1QjtJQUMvQixLQUFLLEVBQUUsd0JBQXdCO0NBQ2hDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztRQUNuQixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU07UUFDbkIsS0FBSyxFQUFFLHNDQUFzQztRQUM3QyxJQUFJLEVBQUUsNEJBQTRCO0tBQ25DO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7WUFDMUMsS0FBSyxFQUFFLDJFQUEyRTtZQUNsRixXQUFXLEVBQUUsNEVBQTRFO1lBQ3pGLElBQUksRUFBRSxrQkFBa0I7U0FDekI7UUFDRCxpQkFBaUIsRUFBRTtZQUNqQixJQUFJLEVBQUUsbUJBQW1CO1lBQ3pCLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQjtZQUM1QyxLQUFLLEVBQUUsZ0ZBQWdGO1lBQ3ZGLFdBQVcsRUFBRSxpRkFBaUY7WUFDOUYsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELGdCQUFnQixFQUFFO1lBQ2hCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CO1lBQzNDLEtBQUssRUFBRSw4RUFBOEU7WUFDckYsV0FBVyxFQUFFLCtFQUErRTtZQUM1RixJQUFJLEVBQUUsaUJBQWlCO1NBQ3hCO1FBQ0QsV0FBVyxFQUFFO1lBQ1gsSUFBSSxFQUFFLGFBQWE7WUFDbkIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sY0FBYztZQUN0QyxLQUFLLEVBQUUsaUVBQWlFO1lBQ3hFLFdBQVcsRUFBRSxrRUFBa0U7WUFDL0UsSUFBSSxFQUFFLDRCQUE0QjtTQUNuQztRQUNELGdCQUFnQixFQUFFO1lBQ2hCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CO1lBQzNDLEtBQUssRUFBRSw2RUFBNkU7WUFDcEYsV0FBVyxFQUFFLDhFQUE4RTtZQUMzRixJQUFJLEVBQUUsMEJBQTBCO1NBQ2pDO1FBQ0QsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7WUFDMUMsS0FBSyxFQUFFLDJFQUEyRTtZQUNsRixXQUFXLEVBQUUsNEVBQTRFO1lBQ3pGLElBQUksRUFBRSwwQkFBMEI7U0FDakM7S0FDRjtDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBSb290IENvbmZpZ3VyYXRpb24gICAtLS0tXG5cbmNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQnLFxuICBtb2R1bGU6ICdSZXNlcnZhdGlvbk1hbmFnZW1lbnQnLFxuICByb3V0ZTogJ3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFJvb3RDb25maWcgPSB7XG4gIGNvbmZpZyxcbiAgbW9kdWxlOiB7XG4gICAgcm91dGU6IGNvbmZpZy5yb3V0ZSxcbiAgICBuYW1lOiBjb25maWcubW9kdWxlLFxuICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6bW9kdWxlLnRpdGxlJyxcbiAgICBpY29uOiAnZmEtbGlnaHQgZmEtY2FsZW5kYXItY2hlY2snLFxuICB9LFxuICBlbnRpdGllczoge1xuICAgIHJlc2VydmF0aW9uVHlwZToge1xuICAgICAgbmFtZTogJ1Jlc2VydmF0aW9uVHlwZScsXG4gICAgICBzb3VyY2U6IGAke2NvbmZpZy5tb2R1bGV9LlJlc2VydmF0aW9uVHlwZWAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXR5cGVzLmVudGl0aWVzLnJlc2VydmF0aW9uLXR5cGUudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLnBsdXJhbCcsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbGlzdCcsXG4gICAgfSxcbiAgICByZXNlcnZhdGlvblN0YXR1czoge1xuICAgICAgbmFtZTogJ1Jlc2VydmF0aW9uU3RhdHVzJyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25TdGF0dXNgLFxuICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMucGx1cmFsJyxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1mbGFnJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uQ2xhc3M6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkNsYXNzJyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25DbGFzc2AsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MudGl0bGUnLFxuICAgICAgdGl0bGVQbHVyYWw6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLnBsdXJhbCcsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtdGFnJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uOiB7XG4gICAgICBuYW1lOiAnUmVzZXJ2YXRpb24nLFxuICAgICAgc291cmNlOiBgJHtjb25maWcubW9kdWxlfS5SZXNlcnZhdGlvbmAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi50aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNhbGVuZGFyLWNoZWNrJyxcbiAgICB9LFxuICAgIHJlc2VydmF0aW9uRXZlbnQ6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkV2ZW50JyxcbiAgICAgIHNvdXJjZTogYCR7Y29uZmlnLm1vZHVsZX0uUmVzZXJ2YXRpb25FdmVudGAsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC50aXRsZScsXG4gICAgICB0aXRsZVBsdXJhbDogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNhbGVuZGFyLWFsdCcsXG4gICAgfSxcbiAgICByZXNlcnZhdGlvbkhvbGQ6IHtcbiAgICAgIG5hbWU6ICdSZXNlcnZhdGlvbkhvbGQnLFxuICAgICAgc291cmNlOiBgJHtjb25maWcubW9kdWxlfS5SZXNlcnZhdGlvbkhvbGRgLFxuICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1ob2xkcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ob2xkLnRpdGxlJyxcbiAgICAgIHRpdGxlUGx1cmFsOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24taG9sZHMuZW50aXRpZXMucmVzZXJ2YXRpb24taG9sZC5wbHVyYWwnLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXBhdXNlLWNpcmNsZScsXG4gICAgfSxcbiAgfSxcbn07XG5cbi8vI2VuZHJlZ2lvblxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationServiceImpl extends AXPReservationManagementReservationService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservation.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationServiceImpl, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24vcmVzZXJ2YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsMENBQTJDLFNBQVEsd0JBR3hFO0NBQUc7QUFHSixNQUFNLE9BQU8sOENBQStDLFNBQVEsMENBQTBDO0lBQzVHO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3RSxDQUFDOytHQUhVLDhDQUE4QzttSEFBOUMsOENBQThDLGNBRGpDLE1BQU07OzRGQUNuQiw4Q0FBOEM7a0JBRDFELFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkVudGl0eU1vZGVsIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24ubmFtZX1gKTtcbiAgfVxufVxuIl19","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationService } from './reservation.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservation.name,\n title: RootConfig.entities.reservation.title,\n icon: RootConfig.entities.reservation.icon,\n formats: {\n individual: RootConfig.entities.reservation.title,\n plural: RootConfig.entities.reservation.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'reservation-information',\n title: '@reservation-management:reservations.entities.reservation.groups.reservation-information',\n },\n {\n id: 'approve-information',\n title: '@reservation-management:reservations.entities.reservation.groups.approve-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'reservationTypeId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-type-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationType.id' },\n { source: 'title', target: 'reservationType.title' },\n { source: 'code', target: 'reservationType.code' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'reservationClassId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-class-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationClass.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationClass.id' },\n { source: 'title', target: 'reservationClass.title' },\n { source: 'code', target: 'reservationClass.code' },\n ],\n triggers: [\n {\n event: \"{{ events.context('reservationTypeId') }}\",\n action: `{{ widget.refresh() }}`,\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'reservationStatusId',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-status-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title', 'color'],\n expose: [\n { source: 'id', target: 'reservationStatus.id' },\n { source: 'title', target: 'reservationStatus.title' },\n { source: 'code', target: 'reservationStatus.code' },\n { source: 'color', target: 'reservationStatus.color' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceEntityId',\n title: '@reservation-management:reservations.entities.reservation.fields.resource-entity-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservations.entities.reservation.fields.resource-entity-id.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceId',\n title: '@reservation-management:reservations.entities.reservation.fields.resource-id',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n // Dynamic entity based on resourceEntityId\n // Will be resolved based on resourceEntityId value\n entity: `PlatformManagement.EntityRegistry`, // Placeholder - will be dynamic\n textField: 'title',\n valueField: 'id',\n columns: ['title'],\n expose: [\n { source: 'id', target: 'resource.id' },\n { source: 'title', target: 'resource.title' },\n ],\n triggers: [\n {\n event: \"{{ events.context('resourceEntityId') }}\",\n action: `{{ widget.refresh() }}`,\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'startDate',\n title: '@reservation-management:reservations.entities.reservation.fields.start-date',\n groupId: 'reservation-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'endDate',\n title: '@reservation-management:reservations.entities.reservation.fields.end-date',\n groupId: 'reservation-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'note',\n title: '@reservation-management:reservations.entities.reservation.fields.note',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LargeTextBox,\n options: {\n rows: 4,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'requestedById',\n title: '@reservation-management:reservations.entities.reservation.fields.requested-by-id',\n groupId: 'approve-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n columns: ['displayName', 'email'],\n expose: [\n { source: 'id', target: 'requestedBy.id' },\n { source: 'displayName', target: 'requestedBy.displayName' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'approvedById',\n title: '@reservation-management:reservations.entities.reservation.fields.approved-by-id',\n groupId: 'approve-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n textField: 'displayName',\n valueField: 'id',\n columns: ['displayName', 'email'],\n expose: [\n { source: 'id', target: 'approvedBy.id' },\n { source: 'displayName', target: 'approvedBy.displayName' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'approvedDate',\n title: '@reservation-management:reservations.entities.reservation.fields.approved-date',\n groupId: 'approve-information',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n format: 'datetime',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'isBlocking',\n title: '@reservation-management:reservations.entities.reservation.fields.is-blocking',\n groupId: 'reservation-information',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.ToggleSwitch,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'reservationKind',\n title: '@reservation-management:reservations.entities.reservation.fields.reservation-kind',\n groupId: 'reservation-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n { value: 'reservation', text: '@reservation-management:reservations.entities.reservation.fields.reservation-kind.options.reservation' },\n { value: 'hold', text: '@reservation-management:reservations.entities.reservation.fields.reservation-kind.options.hold' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n columns: [\n { name: 'reservationTypeId', options: { dataPath: 'reservationType' } },\n { name: 'reservationClassId', options: { dataPath: 'reservationClass' } },\n { name: 'resourceId', options: { dataPath: 'resource' } },\n { name: 'startDate' },\n { name: 'endDate' },\n { name: 'reservationStatusId', options: { dataPath: 'reservationStatus' } },\n { name: 'requestedById', options: { dataPath: 'requestedBy' } },\n { name: 'isBlocking' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'reservation-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'approve-information', order: 2, layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationClassId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationStatusId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'startDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'endDate', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'reservationKind', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'isBlocking', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'note', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'requestedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedById', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'approvedDate', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({\n sorts: [{ name: 'startDate', dir: 'desc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi9yZXNlcnZhdGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQW9DLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMENBQTBDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRixZQUFZO0FBRVosc0NBQXNDO0FBRXRDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsUUFBa0I7SUFDekQsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0lBQzdFLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBRXBDLE1BQU0sU0FBUyxHQUFjO1FBQzNCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7UUFDOUIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUk7UUFDMUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUs7UUFDNUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUk7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V2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFN5c3RlbUFjdGlvblR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMsIGVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC93aWRnZXQtY29yZSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24uc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIEVudGl0eSBGYWN0b3J5ICAgLS0tLVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzZXJ2YXRpb25GYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24uaWNvbixcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ3t7IGNvZGUgfX0nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZ3JvdXBzLnJlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYXBwcm92ZS1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmdyb3Vwcy5hcHByb3ZlLWluZm9ybWF0aW9uJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgc2NoZW1hOiB7IGRhdGFUeXBlOiAndXVpZCcsIHZpc2libGU6IGZhbHNlLCBudWxsYWJsZTogZmFsc2UsIHJlYWRvbmx5OiB0cnVlLCB1bmlxdWU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzZXJ2YXRpb24tdHlwZS1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWV9YCxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbJ2NvZGUnLCAndGl0bGUnXSxcbiAgICAgICAgICAgICAgZXhwb3NlOiBbXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdpZCcsIHRhcmdldDogJ3Jlc2VydmF0aW9uVHlwZS5pZCcgfSxcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ3RpdGxlJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uVHlwZS5jb2RlJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1jbGFzcy1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy5uYW1lfWAsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgY29sdW1uczogWydjb2RlJywgJ3RpdGxlJ10sXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbkNsYXNzLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbkNsYXNzLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uQ2xhc3MuY29kZScgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBldmVudDogXCJ7eyBldmVudHMuY29udGV4dCgncmVzZXJ2YXRpb25UeXBlSWQnKSB9fVwiLFxuICAgICAgICAgICAgICAgICAgYWN0aW9uOiBge3sgd2lkZ2V0LnJlZnJlc2goKSB9fWAsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvblN0YXR1c0lkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc2VydmF0aW9uLXN0YXR1cy1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnY29kZScsICd0aXRsZScsICdjb2xvciddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25TdGF0dXMuaWQnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICd0aXRsZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLnRpdGxlJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnY29kZScsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLmNvZGUnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdjb2xvcicsIHRhcmdldDogJ3Jlc2VydmF0aW9uU3RhdHVzLmNvbG9yJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc291cmNlRW50aXR5SWQnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzb3VyY2UtZW50aXR5LWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMucmVzb3VyY2UtZW50aXR5LWlkLnBsYWNlaG9sZGVyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXNvdXJjZUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc291cmNlLWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAvLyBEeW5hbWljIGVudGl0eSBiYXNlZCBvbiByZXNvdXJjZUVudGl0eUlkXG4gICAgICAgICAgICAgIC8vIFdpbGwgYmUgcmVzb2x2ZWQgYmFzZWQgb24gcmVzb3VyY2VFbnRpdHlJZCB2YWx1ZVxuICAgICAgICAgICAgICBlbnRpdHk6IGBQbGF0Zm9ybU1hbmFnZW1lbnQuRW50aXR5UmVnaXN0cnlgLCAvLyBQbGFjZWhvbGRlciAtIHdpbGwgYmUgZHluYW1pY1xuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsndGl0bGUnXSxcbiAgICAgICAgICAgICAgZXhwb3NlOiBbXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdpZCcsIHRhcmdldDogJ3Jlc291cmNlLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNvdXJjZS50aXRsZScgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdHJpZ2dlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBldmVudDogXCJ7eyBldmVudHMuY29udGV4dCgncmVzb3VyY2VFbnRpdHlJZCcpIH19XCIsXG4gICAgICAgICAgICAgICAgICBhY3Rpb246IGB7eyB3aWRnZXQucmVmcmVzaCgpIH19YCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3N0YXJ0RGF0ZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5zdGFydC1kYXRlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3Jlc2VydmF0aW9uLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdkYXRlJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmRhdGVUaW1lLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBmb3JtYXQ6ICdkYXRldGltZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZW5kRGF0ZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5lbmQtZGF0ZScsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZm9ybWF0OiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25vdGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9ucy5lbnRpdGllcy5yZXNlcnZhdGlvbi5maWVsZHMubm90ZScsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTGFyZ2VUZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICByb3dzOiA0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlcXVlc3RlZC1ieS1pZCcsXG4gICAgICAgIGdyb3VwSWQ6ICdhcHByb3ZlLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6ICdTZWN1cml0eU1hbmFnZW1lbnQuVXNlcicsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ2Rpc3BsYXlOYW1lJyxcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgY29sdW1uczogWydkaXNwbGF5TmFtZScsICdlbWFpbCddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVxdWVzdGVkQnkuaWQnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdkaXNwbGF5TmFtZScsIHRhcmdldDogJ3JlcXVlc3RlZEJ5LmRpc3BsYXlOYW1lJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXBwcm92ZWRCeUlkJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLmFwcHJvdmVkLWJ5LWlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogJ1NlY3VyaXR5TWFuYWdlbWVudC5Vc2VyJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAnZGlzcGxheU5hbWUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbJ2Rpc3BsYXlOYW1lJywgJ2VtYWlsJ10sXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdhcHByb3ZlZEJ5LmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnZGlzcGxheU5hbWUnLCB0YXJnZXQ6ICdhcHByb3ZlZEJ5LmRpc3BsYXlOYW1lJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXBwcm92ZWREYXRlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLmFwcHJvdmVkLWRhdGUnLFxuICAgICAgICBncm91cElkOiAnYXBwcm92ZS1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZm9ybWF0OiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnaXNCbG9ja2luZycsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5pcy1ibG9ja2luZycsXG4gICAgICAgIGdyb3VwSWQ6ICdyZXNlcnZhdGlvbi1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlRvZ2dsZVN3aXRjaCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25LaW5kJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbnMuZW50aXRpZXMucmVzZXJ2YXRpb24uZmllbGRzLnJlc2VydmF0aW9uLWtpbmQnLFxuICAgICAgICBncm91cElkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLlNlbGVjdEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGV4dCcsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7IHZhbHVlOiAncmVzZXJ2YXRpb24nLCB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1raW5kLm9wdGlvbnMucmVzZXJ2YXRpb24nIH0sXG4gICAgICAgICAgICAgICAgeyB2YWx1ZTogJ2hvbGQnLCB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb25zLmVudGl0aWVzLnJlc2VydmF0aW9uLmZpZWxkcy5yZXNlcnZhdGlvbi1raW5kLm9wdGlvbnMuaG9sZCcgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvblR5cGVJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvblR5cGUnIH0gfSxcbiAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvbkNsYXNzJyB9IH0sXG4gICAgICB7IG5hbWU6ICdyZXNvdXJjZUlkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc291cmNlJyB9IH0sXG4gICAgICB7IG5hbWU6ICdzdGFydERhdGUnIH0sXG4gICAgICB7IG5hbWU6ICdlbmREYXRlJyB9LFxuICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXNlcnZhdGlvblN0YXR1cycgfSB9LFxuICAgICAgeyBuYW1lOiAncmVxdWVzdGVkQnlJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXF1ZXN0ZWRCeScgfSB9LFxuICAgICAgeyBuYW1lOiAnaXNCbG9ja2luZycgfSxcbiAgICBdLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7IGlkOiBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSkgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoe1xuICAgICAgICAgICAgc2tpcDogZS5za2lwLFxuICAgICAgICAgICAgdGFrZTogZS50YWtlLFxuICAgICAgICAgICAgZmlsdGVyOiBlLmZpbHRlcixcbiAgICAgICAgICAgIHNvcnQ6IGUuc29ydCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGNyZWF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAncmVzZXJ2YXRpb24taW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBpZDogJ2FwcHJvdmUtaW5mb3JtYXRpb24nLCBvcmRlcjogMiwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uQ2xhc3NJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25TdGF0dXNJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdlbmREYXRlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbktpbmQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2lzQmxvY2tpbmcnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vdGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1ZXN0ZWRCeUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhcHByb3ZlZEJ5SWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FwcHJvdmVkRGF0ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogWy4uLmVudGl0eU1hc3RlclJlY29yZEFjdGlvbnMoKV0sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyQ3J1ZEFjdGlvbnMoKV0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7XG4gICAgICAgICAgICAgIHNvcnRzOiBbeyBuYW1lOiAnc3RhcnREYXRlJywgZGlyOiAnZGVzYycgfV0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuICByZXR1cm4gZW50aXR5RGVmO1xufVxuXG4vLyNlbmRyZWdpb25cblxuIl19","import { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationService, AXPReservationManagementReservationServiceImpl, } from './reservation.service';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationService,\n useClass: AXPReservationManagementReservationServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationService,\n useClass: AXPReservationManagementReservationServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi9yZXNlcnZhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsMENBQTBDLEVBQzFDLDhDQUE4QyxHQUMvQyxNQUFNLHVCQUF1QixDQUFDOztBQVUvQixNQUFNLE9BQU8sK0NBQStDOytHQUEvQywrQ0FBK0M7Z0hBQS9DLCtDQUErQztnSEFBL0MsK0NBQStDLGFBUC9DO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDBDQUEwQztnQkFDbkQsUUFBUSxFQUFFLDhDQUE4QzthQUN6RDtTQUNGOzs0RkFFVSwrQ0FBK0M7a0JBUjNELFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwwQ0FBMEM7NEJBQ25ELFFBQVEsRUFBRSw4Q0FBOEM7eUJBQ3pEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZUltcGwsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2R1bGUge31cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationClassService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationClassServiceImpl extends AXPReservationManagementReservationClassService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationClass.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsK0NBQWdELFNBQVEsd0JBRzdFO0NBQUc7QUFHSixNQUFNLE9BQU8sbURBQW9ELFNBQVEsK0NBQStDO0lBQ3RIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7K0dBSFUsbURBQW1EO21IQUFuRCxtREFBbUQ7OzRGQUFuRCxtREFBbUQ7a0JBRC9ELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NFbnRpdHlNb2RlbCB9IGZyb20gJy4vcmVzZXJ2YXRpb24tY2xhc3MudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc0VudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationClassService } from './reservation-class.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationClassFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationClassService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationClass.name,\n title: RootConfig.entities.reservationClass.title,\n icon: RootConfig.entities.reservationClass.icon,\n plugins: [{ name: 'archive' }],\n formats: {\n individual: RootConfig.entities.reservationClass.title,\n plural: RootConfig.entities.reservationClass.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'general',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.general',\n },\n {\n id: 'policy',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.policy',\n },\n {\n id: 'allowed-statuses',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.allowed-statuses',\n },\n {\n id: 'transitions',\n title: '@reservation-management:reservation-classes.entities.reservation-class.groups.transitions',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'reservationTypeId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.reservation-type-id.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`,\n textField: 'title',\n valueField: 'id',\n columns: ['code', 'title'],\n expose: [\n { source: 'id', target: 'reservationType.id' },\n { source: 'title', target: 'reservationType.title' },\n { source: 'code', target: 'reservationType.code' },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.code.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-classes.entities.reservation-class.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }, { rule: 'unique', options: { scope: 'reservationTypeId' } }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.title.title',\n groupId: 'general',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-classes.entities.reservation-class.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'requiresApproval',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.requires-approval.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'allowAutoApprove',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allow-auto-approve.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n visible: `{{ context.eval('requiresApproval') === true }}`,\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'conflictPolicy',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.title',\n groupId: 'policy',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n {\n value: 'strict',\n text: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.options.strict',\n },\n {\n value: 'soft',\n text: '@reservation-management:reservation-classes.entities.reservation-class.fields.conflict-policy.options.soft',\n },\n ],\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'allowHold',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allow-hold.title',\n groupId: 'policy',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsList.Editors.CheckBox,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n {\n name: 'allowedStatuses',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.title',\n groupId: 'allowed-statuses',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsList.Editors.ConnectedListsEditor,\n options: {\n leftListTitle: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.options.available-statuses',\n rightListTitle: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.options.allowed-statuses',\n sourceEntity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n sourceTextField: 'title',\n sourceValueField: 'id',\n targetFields: [\n {\n name: 'isInitial',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.is-initial',\n type: 'boolean',\n },\n {\n name: 'isFinal',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.is-final',\n type: 'boolean',\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.allowed-statuses.fields.order',\n type: 'number',\n },\n ],\n },\n },\n },\n },\n {\n name: 'transitions',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.title',\n groupId: 'transitions',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsList.Editors.InlineDataTable,\n options: {\n columns: [\n {\n name: 'fromStatusId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.from-status-id.title',\n type: 'lookup',\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n },\n {\n name: 'toStatusId',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.to-status-id.title',\n type: 'lookup',\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`,\n textField: 'title',\n valueField: 'id',\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.title.title',\n type: 'text',\n },\n {\n name: 'requiresPermission',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.requires-permission.title',\n type: 'text',\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-classes.entities.reservation-class.fields.transitions.fields.order.title',\n type: 'number',\n },\n ],\n },\n },\n },\n },\n ],\n columns: [\n { name: 'code' },\n { name: 'title' },\n { name: 'reservationTypeId', options: { dataPath: 'reservationType.title' } },\n { name: 'requiresApproval' },\n { name: 'conflictPolicy' },\n { name: 'allowHold' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'general', order: 1 },\n { id: 'policy', order: 2 },\n { id: 'allowed-statuses', order: 3 },\n { id: 'transitions', order: 4 },\n ],\n properties: [\n { name: 'reservationTypeId', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'requiresApproval', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowAutoApprove', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'conflictPolicy', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowHold', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'allowedStatuses', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'transitions', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@general:actions.archive.title',\n command: 'archive-entity',\n priority: 'secondary',\n type: AXPSystemActionType.Archive,\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'code', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3MuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTlGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx1QkFBdUIsQ0FBQyxRQUFrQjtJQUM5RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO1FBQy9DLEtBQUssRUFBRSxVQUFVLENBQUMs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QVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7cUJBQ3hFO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3dCQUM1Qjs0QkFDRSxLQUFLLEVBQUUsZ0NBQWdDOzRCQUN2QyxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixRQUFRLEVBQUUsV0FBVzs0QkFDckIsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE9BQU87NEJBQ2pDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3RDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQU3lzdGVtQWN0aW9uVHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UgfSBmcm9tICcuL3Jlc2VydmF0aW9uLWNsYXNzLnNlcnZpY2UnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBFbnRpdHkgRmFjdG9yeSAgIC0tLS1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc2VydmF0aW9uQ2xhc3NGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uQ2xhc3MubmFtZSxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy5pY29uLFxuICAgIHBsdWdpbnM6IFt7IG5hbWU6ICdhcmNoaXZlJyB9XSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uQ2xhc3MudGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5nZW5lcmFsJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAncG9saWN5JyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5wb2xpY3knLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhbGxvd2VkLXN0YXR1c2VzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmdyb3Vwcy5hbGxvd2VkLXN0YXR1c2VzJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAndHJhbnNpdGlvbnMnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZ3JvdXBzLnRyYW5zaXRpb25zJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgc2NoZW1hOiB7IGRhdGFUeXBlOiAndXVpZCcsIHZpc2libGU6IGZhbHNlLCBudWxsYWJsZTogZmFsc2UsIHJlYWRvbmx5OiB0cnVlLCB1bmlxdWU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLFxuICAgICAgICB0aXRsZTpcbiAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMucmVzZXJ2YXRpb24tdHlwZS1pZC50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblR5cGUubmFtZX1gLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnY29kZScsICd0aXRsZSddLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLmlkJyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAndGl0bGUnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvblR5cGUudGl0bGUnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICdjb2RlJywgdGFyZ2V0OiAncmVzZXJ2YXRpb25UeXBlLmNvZGUnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnY29kZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29kZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfSwgeyBydWxlOiAndW5pcXVlJywgb3B0aW9uczogeyBzY29wZTogJ3Jlc2VydmF0aW9uVHlwZUlkJyB9IH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50aXRsZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlcXVpcmVzQXBwcm92YWwnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnJlcXVpcmVzLWFwcHJvdmFsLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3BvbGljeScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLkNoZWNrQm94LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhbGxvd0F1dG9BcHByb3ZlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvdy1hdXRvLWFwcHJvdmUudGl0bGUnLFxuICAgICAgICBncm91cElkOiAncG9saWN5JyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICB2aXNpYmxlOiBge3sgY29udGV4dC5ldmFsKCdyZXF1aXJlc0FwcHJvdmFsJykgPT09IHRydWUgfX1gLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5DaGVja0JveCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb25mbGljdFBvbGljeScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuY29uZmxpY3QtcG9saWN5LnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3BvbGljeScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuU2VsZWN0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgZGF0YVNvdXJjZTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiAnc3RyaWN0JyxcbiAgICAgICAgICAgICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5jb25mbGljdC1wb2xpY3kub3B0aW9ucy5zdHJpY3QnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdzb2Z0JyxcbiAgICAgICAgICAgICAgICAgIHRleHQ6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5jb25mbGljdC1wb2xpY3kub3B0aW9ucy5zb2Z0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2FsbG93SG9sZCcsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuYWxsb3ctaG9sZC50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdwb2xpY3knLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5DaGVja0JveCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYWxsb3dlZFN0YXR1c2VzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2FsbG93ZWQtc3RhdHVzZXMnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuQ29ubmVjdGVkTGlzdHNFZGl0b3IsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGxlZnRMaXN0VGl0bGU6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLmFsbG93ZWQtc3RhdHVzZXMub3B0aW9ucy5hdmFpbGFibGUtc3RhdHVzZXMnLFxuICAgICAgICAgICAgICByaWdodExpc3RUaXRsZTpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMuYWxsb3dlZC1zdGF0dXNlcy5vcHRpb25zLmFsbG93ZWQtc3RhdHVzZXMnLFxuICAgICAgICAgICAgICBzb3VyY2VFbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy5uYW1lfWAsXG4gICAgICAgICAgICAgIHNvdXJjZVRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgc291cmNlVmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgdGFyZ2V0RmllbGRzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2lzSW5pdGlhbCcsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLmFsbG93ZWQtc3RhdHVzZXMuZmllbGRzLmlzLWluaXRpYWwnLFxuICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2lzRmluYWwnLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLmZpZWxkcy5pcy1maW5hbCcsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnb3JkZXInLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy5hbGxvd2VkLXN0YXR1c2VzLmZpZWxkcy5vcmRlcicsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RyYW5zaXRpb25zJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50cmFuc2l0aW9ucy50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICd0cmFuc2l0aW9ucycsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYXJyYXknLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5JbmxpbmVEYXRhVGFibGUsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgICAgIHRpdGxlOlxuICAgICAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudHJhbnNpdGlvbnMuZmllbGRzLmZyb20tc3RhdHVzLWlkLnRpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdsb29rdXAnLFxuICAgICAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gLFxuICAgICAgICAgICAgICAgICAgdGV4dEZpZWxkOiAndGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ2lkJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgICAgIHRpdGxlOlxuICAgICAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1jbGFzcy5maWVsZHMudHJhbnNpdGlvbnMuZmllbGRzLnRvLXN0YXR1cy1pZC50aXRsZScsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbG9va3VwJyxcbiAgICAgICAgICAgICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uU3RhdHVzLm5hbWV9YCxcbiAgICAgICAgICAgICAgICAgIHRleHRGaWVsZDogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6XG4gICAgICAgICAgICAgICAgICAgICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1jbGFzc2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLWNsYXNzLmZpZWxkcy50cmFuc2l0aW9ucy5maWVsZHMudGl0bGUudGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ3JlcXVpcmVzUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnRyYW5zaXRpb25zLmZpZWxkcy5yZXF1aXJlcy1wZXJtaXNzaW9uLnRpdGxlJyxcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdvcmRlcicsXG4gICAgICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWNsYXNzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tY2xhc3MuZmllbGRzLnRyYW5zaXRpb25zLmZpZWxkcy5vcmRlci50aXRsZScsXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgIHsgbmFtZTogJ2NvZGUnIH0sXG4gICAgICB7IG5hbWU6ICd0aXRsZScgfSxcbiAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUlkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc2VydmF0aW9uVHlwZS50aXRsZScgfSB9LFxuICAgICAgeyBuYW1lOiAncmVxdWlyZXNBcHByb3ZhbCcgfSxcbiAgICAgIHsgbmFtZTogJ2NvbmZsaWN0UG9saWN5JyB9LFxuICAgICAgeyBuYW1lOiAnYWxsb3dIb2xkJyB9LFxuICAgIF0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKSB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgICAgc29ydDogZS5zb3J0LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHsgaWQ6ICdnZW5lcmFsJywgb3JkZXI6IDEgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdwb2xpY3knLCBvcmRlcjogMiB9LFxuICAgICAgICAgICAgeyBpZDogJ2FsbG93ZWQtc3RhdHVzZXMnLCBvcmRlcjogMyB9LFxuICAgICAgICAgICAgeyBpZDogJ3RyYW5zaXRpb25zJywgb3JkZXI6IDQgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUlkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3JlcXVpcmVzQXBwcm92YWwnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93QXV0b0FwcHJvdmUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvbmZsaWN0UG9saWN5JywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd0hvbGQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93ZWRTdGF0dXNlcycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RyYW5zaXRpb25zJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7IGlkOiAnZ2VuZXJhbCcsIG9yZGVyOiAxIH0sXG4gICAgICAgICAgICB7IGlkOiAncG9saWN5Jywgb3JkZXI6IDIgfSxcbiAgICAgICAgICAgIHsgaWQ6ICdhbGxvd2VkLXN0YXR1c2VzJywgb3JkZXI6IDMgfSxcbiAgICAgICAgICAgIHsgaWQ6ICd0cmFuc2l0aW9ucycsIG9yZGVyOiA0IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvblR5cGVJZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXF1aXJlc0FwcHJvdmFsJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd0F1dG9BcHByb3ZlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb25mbGljdFBvbGljeScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dIb2xkJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd2VkU3RhdHVzZXMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0cmFuc2l0aW9ucycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAgeyBpZDogJ2dlbmVyYWwnLCBvcmRlcjogMSB9LFxuICAgICAgICAgICAgeyBpZDogJ3BvbGljeScsIG9yZGVyOiAyIH0sXG4gICAgICAgICAgICB7IGlkOiAnYWxsb3dlZC1zdGF0dXNlcycsIG9yZGVyOiAzIH0sXG4gICAgICAgICAgICB7IGlkOiAndHJhbnNpdGlvbnMnLCBvcmRlcjogNCB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAncmVzZXJ2YXRpb25UeXBlSWQnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVxdWlyZXNBcHByb3ZhbCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dBdXRvQXBwcm92ZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29uZmxpY3RQb2xpY3knLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2FsbG93SG9sZCcsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dlZFN0YXR1c2VzJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndHJhbnNpdGlvbnMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIC4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5hcmNoaXZlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2FyY2hpdmUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiBBWFBTeXN0ZW1BY3Rpb25UeXBlLkFyY2hpdmUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHtcbiAgICAgICAgICAgICAgc29ydHM6IFt7IG5hbWU6ICdjb2RlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXPReservationManagementReservationEventService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationEventServiceImpl extends AXPReservationManagementReservationEventService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationEvent.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tZXZlbnQvcmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsK0NBQWdELFNBQVEsd0JBRzdFO0NBQUc7QUFHSixNQUFNLE9BQU8sbURBQW9ELFNBQVEsK0NBQStDO0lBQ3RIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7K0dBSFUsbURBQW1EO21IQUFuRCxtREFBbUQ7OzRGQUFuRCxtREFBbUQ7a0JBRC9ELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRFbnRpdHlNb2RlbCB9IGZyb20gJy4vcmVzZXJ2YXRpb24tZXZlbnQudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudFNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50Lm5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationEventService } from './reservation-event.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationEventFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationEventService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationEvent.name,\n title: RootConfig.entities.reservationEvent.title,\n icon: RootConfig.entities.reservationEvent.icon,\n formats: {\n individual: RootConfig.entities.reservationEvent.title,\n plural: RootConfig.entities.reservationEvent.titlePlural,\n searchResult: {\n title: '',\n },\n },\n // Property groups\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-events.entities.reservation-event.groups.basic-information',\n },\n ],\n // Entity properties\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-information',\n options: {\n sort: { enabled: true },\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n },\n schema: {\n dataType: 'string',\n visible: false,\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n readonly: true,\n visible: false,\n },\n },\n },\n },\n {\n name: 'reservationId',\n title: '@ ',\n groupId: 'basic-information',\n options: {\n sort: { enabled: true },\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n },\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservation.name}`,\n expose: [\n { source: 'id', target: 'reservation.{id}' },\n { source: 'resource', target: 'reservation.{resource}' },\n ],\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n ],\n // Columns for list views\n columns: [\n { name: 'reservationId', options: { dataPath: 'reservation' } },\n { name: 'reservationEventId', options: { dataPath: 'reservationEvent' } },\n { name: 'eventDate' },\n { name: 'actorId', options: { dataPath: 'actor' } },\n { name: 'fromStatusId', options: { dataPath: 'fromStatus' } },\n { name: 'toStatusId', options: { dataPath: 'toStatus' } },\n ],\n // Commands\n commands: {\n create: {\n execute: async (data) => {\n return await dataService.insertOne(data);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n // Queries\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n // Interfaces\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n },\n update: {\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n },\n single: {\n title: '{{ resource }}',\n sections: [{ id: 'basic-information', order: 1, layout: { positions: { lg: { colSpan: 12 } } } }],\n properties: [\n {\n name: 'id',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'reservationId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'reservationEventId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'eventDate',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'actorId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'fromStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'toStatusId',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n ],\n actions: [\n {\n title: '@general:actions.edit.title',\n command: 'quick-modify-entity',\n priority: 'primary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n },\n list: {\n actions: [\n {\n title: '@general:actions.create.title',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: '@general:actions.edit.title',\n command: 'quick-modify-entity',\n priority: 'primary',\n type: 'update',\n scope: AXPEntityCommandScope.Individual,\n default: true, // Enable double-click to open edit mode\n },\n {\n title: '@general:actions.delete.title',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'title', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1ldmVudC9yZXNlcnZhdGlvbi1ldmVudC5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTlGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx1QkFBdUIsQ0FBQyxRQUFrQjtJQUM5RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO1FBQy9DLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEtBQUs7UUFDakQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtRQUMvQyxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLO1lBQ3RELE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFdBQVc7WUFDeEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxFQUFFO2FBQ1Y7U0FDRjtRQUVELGtCQUFrQjtRQUNsQixNQUFNLEVBQUU7WUFDTjtnQkFDRSxFQUFFLEVBQUUsbUJBQW1CO2dCQUN2QixLQUFLLEVBQUUsZ0dBQWdHO2FBQ3hHO1NBQ0Y7UUFFRCxvQkFBb0I7UUFDcEIsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsS0FBSyxFQUFFLDBCQUEwQjtnQkFDakMsT0FBTyxFQUFFLG1CQUFtQjtnQkFDNUIsT0FBTyxFQUFFO29CQUNQLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7b0JBQ3ZCLE1BQU0sRUFBRTt3QkFDTixPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO3dCQUMxQixNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO3FCQUMxQjtpQkFDRjtnQkFDRCxNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLE9BQU8sRUFBRSxLQUFLO29CQUNkLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPO3dCQUNwQyxPQUFPLEVBQUU7NEJBQ1AsUUFBUSxFQUFFLElBQUk7NEJBQ2QsT0FBTyxFQUFFLEtBQUs7eUJBQ2Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxlQUFlO2dCQUNyQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxPQUFPLEVBQUUsbUJBQW1CO2dCQUM1QixPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtvQkFDdkIsTUFBTSxFQUFFO3dCQUNOLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7d0JBQzFCLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7cUJBQzFCO2lCQUNGO2dCQUNELE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFO3dCQUNULElBQUksRUFBRSxjQUFjLENBQUMsT0FBTyxDQUFDLFNBQVM7d0JBQ3RDLE9BQU8sRUFBRTs0QkFDUCxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUU7NEJBQzNFLE1BQU0sRUFBRTtnQ0FDTixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixFQUFFO2dDQUM1QyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLHdCQUF3QixFQUFFOzZCQUN6RDt5QkFDRjtxQkFDRjtpQkFDRjtnQkFDRCxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQzthQUNwQztTQUNGO1FBRUQseUJBQXlCO1FBQ3pCLE9BQU8sRUFBRTtZQUNQLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEVBQUU7WUFDL0QsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLEVBQUU7WUFDekUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQ3JCLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDbkQsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsRUFBRTtZQUM3RCxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxFQUFFO1NBQzFEO1FBRUQsV0FBVztRQUNYLFFBQVEsRUFBRTtZQUNSLE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQVMsRUFBRSxFQUFFO29CQUMzQixPQUFPLE1BQU0sV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDM0MsQ0FBQzthQUNGO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLEVBQUU7b0JBQzNCLE9BQU8sTUFBTSxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ3BELENBQUM7YUFDRjtZQUNELE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQVUsRUFBRSxFQUFFO29CQUM1QixPQUFPLE1BQU0sV0FBVyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDekMsQ0FBQzthQUNGO1NBQ0Y7UUFFRCxVQUFVO1FBQ1YsT0FBTyxFQUFFO1lBQ1AsS0FBSyxFQUFFO2dCQUNMLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBVSxFQUFFLEVBQUU7b0JBQzVCLE9BQU8sTUFBTSxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QyxDQUFDO2dCQUNELElBQUksRUFBRSxrQkFBa0IsQ0FBQyxNQUFNO2FBQ2hDO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBTSxFQUFFLEVBQUU7b0JBQ3hCLE9BQU8sTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDO3dCQUM3QixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7d0JBQ1osSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJO3dCQUNaLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTtxQkFDakIsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQixDQUFDLElBQUk7YUFDOUI7U0FDRjtRQUVELGFBQWE7UUFDYixVQUFVLEVBQUU7WUFDVixNQUFNLEVBQUU7Z0JBQ04sTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLG1CQUFtQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO29CQUNqRyxVQUFVLEVBQUU7d0JBQ1Y7NEJBQ0UsSUFBSSxFQUFFLElBQUk7NEJBQ1YsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUU7eUJBQzlDO3dCQUNEOzRCQUNFLElBQUksRUFBRSxlQUFlOzRCQUNyQixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLG9CQUFvQjs0QkFDMUIsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3dCQUNEOzRCQUNFLElBQUksRUFBRSxXQUFXOzRCQUNqQixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFNBQVM7NEJBQ2YsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3dCQUNEOzRCQUNFLElBQUksRUFBRSxjQUFjOzRCQUNwQixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFlBQVk7NEJBQ2xCLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQztxQkFDRjtpQkFDRjtnQkFDRCxNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7b0JBQ2pHLFVBQVUsRUFBRTt3QkFDVjs0QkFDRSxJQUFJLEVBQUUsSUFBSTs0QkFDVixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRTt5QkFDOUM7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLGVBQWU7NEJBQ3JCLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsb0JBQW9COzRCQUMxQixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFdBQVc7NEJBQ2pCLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsU0FBUzs0QkFDZixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLGNBQWM7NEJBQ3BCLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsWUFBWTs0QkFDbEIsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3FCQUNGO2lCQUNGO2dCQUNELE1BQU0sRUFBRTtvQkFDTixLQUFLLEVBQUUsZ0JBQWdCO29CQUN2QixRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztvQkFDakcsVUFBVSxFQUFFO3dCQUNWOzRCQUNFLElBQUksRUFBRSxJQUFJOzRCQUNWLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFO3lCQUM5Qzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsZUFBZTs0QkFDckIsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3dCQUNEOzRCQUNFLElBQUksRUFBRSxvQkFBb0I7NEJBQzFCLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsV0FBVzs0QkFDakIsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3dCQUNEOzRCQUNFLElBQUksRUFBRSxTQUFTOzRCQUNmLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO3lCQUMvQzt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsY0FBYzs0QkFDcEIsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7eUJBQy9DO3dCQUNEOzRCQUNFLElBQUksRUFBRSxZQUFZOzRCQUNsQixNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTt5QkFDL0M7cUJBQ0Y7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQOzRCQUNFLEtBQUssRUFBRSw2QkFBNkI7NEJBQ3BDLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsRUFBRSxTQUFTOzRCQUNuQixJQUFJLEVBQUUsUUFBUTs0QkFDZCxLQUFLLEVBQUUscUJBQXFCLENBQUMsVUFBVTt5QkFDeEM7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxLQUFLLEVBQUUsK0JBQStCOzRCQUN0QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxTQUFTO3lCQUN2Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsNkJBQTZCOzRCQUNwQyxPQUFPLEVBQUUscUJBQXFCOzRCQUM5QixRQUFRLEVBQUUsU0FBUzs0QkFDbkIsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsS0FBSyxFQUFFLHFCQUFxQixDQUFDLFVBQVU7NEJBQ3ZDLE9BQU8sRUFBRSxJQUFJLEVBQUUsd0NBQXdDO3lCQUN4RDt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsK0JBQStCOzRCQUN0QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFdBQVc7NEJBQ3JCLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3ZDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50U2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tZXZlbnQuc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIEVudGl0eSBGYWN0b3J5ICAgLS0tLVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzZXJ2YXRpb25FdmVudEZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25FdmVudC5uYW1lLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uRXZlbnQudGl0bGUsXG4gICAgaWNvbjogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50Lmljb24sXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkV2ZW50LnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uRXZlbnQudGl0bGVQbHVyYWwsXG4gICAgICBzZWFyY2hSZXN1bHQ6IHtcbiAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgfSxcbiAgICB9LFxuXG4gICAgLy8gUHJvcGVydHkgZ3JvdXBzXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLWV2ZW50cy5lbnRpdGllcy5yZXNlcnZhdGlvbi1ldmVudC5ncm91cHMuYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuXG4gICAgLy8gRW50aXR5IHByb3BlcnRpZXNcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6dGVybXMuY29tbW9uLmlkJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uSWQnLFxuICAgICAgICB0aXRsZTogJ0AgJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuTG9va3VwQm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lfWAsXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbi57aWR9JyB9LFxuICAgICAgICAgICAgICAgIHsgc291cmNlOiAncmVzb3VyY2UnLCB0YXJnZXQ6ICdyZXNlcnZhdGlvbi57cmVzb3VyY2V9JyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW3sgcnVsZTogJ3JlcXVpcmVkJyB9XSxcbiAgICAgIH0sXG4gICAgXSxcblxuICAgIC8vIENvbHVtbnMgZm9yIGxpc3Qgdmlld3NcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbklkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ3Jlc2VydmF0aW9uJyB9IH0sXG4gICAgICB7IG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAncmVzZXJ2YXRpb25FdmVudCcgfSB9LFxuICAgICAgeyBuYW1lOiAnZXZlbnREYXRlJyB9LFxuICAgICAgeyBuYW1lOiAnYWN0b3JJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdhY3RvcicgfSB9LFxuICAgICAgeyBuYW1lOiAnZnJvbVN0YXR1c0lkJywgb3B0aW9uczogeyBkYXRhUGF0aDogJ2Zyb21TdGF0dXMnIH0gfSxcbiAgICAgIHsgbmFtZTogJ3RvU3RhdHVzSWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAndG9TdGF0dXMnIH0gfSxcbiAgICBdLFxuXG4gICAgLy8gQ29tbWFuZHNcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIC8vIFF1ZXJpZXNcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIC8vIEludGVyZmFjZXNcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7eyByZXNvdXJjZSB9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nLCBvcmRlcjogMSwgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbkV2ZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2V2ZW50RGF0ZScsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWN0b3JJZCcsXG4gICAgICAgICAgICAgIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZnJvbVN0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0b1N0YXR1c0lkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5lZGl0LnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ3F1aWNrLW1vZGlmeS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndXBkYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOmFjdGlvbnMuY3JlYXRlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOmFjdGlvbnMuZWRpdC50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdxdWljay1tb2RpZnktZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGVmYXVsdDogdHJ1ZSwgLy8gRW5hYmxlIGRvdWJsZS1jbGljayB0byBvcGVuIGVkaXQgbW9kZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDphY3Rpb25zLmRlbGV0ZS50aXRsZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICBjcmVhdGVBbGxRdWVyeVZpZXcoe1xuICAgICAgICAgICAgICBzb3J0czogW3sgbmFtZTogJ3RpdGxlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationManagementReservationStatusService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationStatusServiceImpl extends AXPReservationManagementReservationStatusService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationStatus.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusServiceImpl, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXN0YXR1cy9yZXNlcnZhdGlvbi1zdGF0dXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxZQUFZO0FBRVosK0JBQStCO0FBRS9CLE1BQU0sT0FBZ0IsZ0RBQWlELFNBQVEsd0JBRzlFO0NBQUc7QUFLSixNQUFNLE9BQU8sb0RBQXFELFNBQVEsZ0RBQWdEO0lBQ3hIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25GLENBQUM7K0dBSFUsb0RBQW9EO21IQUFwRCxvREFBb0QsY0FGbkQsTUFBTTs7NEZBRVAsb0RBQW9EO2tCQUhoRSxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c0VudGl0eU1vZGVsIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi1zdGF0dXMudHlwZXMnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlICAgLS0tLVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZX1gKTtcbiAgfVxufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationStatusService } from './reservation-status.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationStatusFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationStatusService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationStatus.name,\n title: RootConfig.entities.reservationStatus.title,\n icon: RootConfig.entities.reservationStatus.icon,\n formats: {\n individual: RootConfig.entities.reservationStatus.title,\n plural: RootConfig.entities.reservationStatus.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.groups.basic-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.code.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-statuses.entities.reservation-status.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }, { rule: 'unique' }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.title.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-statuses.entities.reservation-status.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'color',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.color.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.ColorPalette,\n options: {},\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'order',\n title: '@reservation-management:reservation-statuses.entities.reservation-status.fields.order.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: {\n minValue: 0,\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n ],\n columns: [{ name: 'code' }, { name: 'title' }, { name: 'color' }],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'color', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'order', layout: { positions: { lg: { colSpan: 6 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({\n sorts: [\n { name: 'order', dir: 'asc' },\n { name: 'code', dir: 'asc' },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tc3RhdHVzL3Jlc2VydmF0aW9uLXN0YXR1cy5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnREFBZ0QsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhHLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSx3QkFBd0IsQ0FBQyxRQUFrQjtJQUMvRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDbkYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO1FBQ2hELEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUs7UUFDbEQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSTtRQUNoRCxPQUFPLEVBQUU7WUFD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RSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7d0JBQy9ELEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO3dCQUNoRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTt3QkFDaEUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7cUJBQ2pFO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcseUJBQXlCLEVBQUUsQ0FBQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDdkMsS0FBSyxFQUFFO3dCQUNMLGtCQUFrQixDQUFDOzRCQUNqQixLQUFLLEVBQUU7Z0NBQ0wsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7Z0NBQzdCLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFOzZCQUM3Qjt5QkFDRixDQUFDO3FCQUNIO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhQV2lkZ2V0c0xpc3QgfSBmcm9tICdAYWNvcmV4L21vZHVsZXMvY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBFbnRpdHkgRmFjdG9yeSAgIC0tLS1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc2VydmF0aW9uU3RhdHVzRmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZSxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZSxcbiAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uU3RhdHVzLmljb24sXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tc3RhdHVzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tc3RhdHVzLmdyb3Vwcy5iYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICB0aXRsZTogJ0BnZW5lcmFsOnRlcm1zLmNvbW1vbi5pZCcsXG4gICAgICAgIHNjaGVtYTogeyBkYXRhVHlwZTogJ3V1aWQnLCB2aXNpYmxlOiBmYWxzZSwgbnVsbGFibGU6IGZhbHNlLCByZWFkb25seTogdHJ1ZSwgdW5pcXVlOiB7IGVuYWJsZWQ6IHRydWUgfSB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvZGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMuY29kZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfSwgeyBydWxlOiAndW5pcXVlJyB9XSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tc3RhdHVzZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tc3RhdHVzLmZpZWxkcy50aXRsZS50aXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNMaXN0LkVkaXRvcnMuVGV4dEJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6XG4gICAgICAgICAgICAgICAgJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbG9yJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi1zdGF0dXNlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi1zdGF0dXMuZmllbGRzLmNvbG9yLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5Db2xvclBhbGV0dGUsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiBmYWxzZSB9LFxuICAgICAgICAgIGZpbHRlcjogeyBhZHZhbmNlOiB7IGVuYWJsZWQ6IHRydWUgfSwgaW5saW5lOiB7IGVuYWJsZWQ6IGZhbHNlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnb3JkZXInLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXN0YXR1c2VzLmVudGl0aWVzLnJlc2VydmF0aW9uLXN0YXR1cy5maWVsZHMub3JkZXIudGl0bGUnLFxuICAgICAgICBncm91cElkOiAnYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ251bWJlcicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzTGlzdC5FZGl0b3JzLk51bWJlckJveCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbWluVmFsdWU6IDAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAnY29kZScgfSwgeyBuYW1lOiAndGl0bGUnIH0sIHsgbmFtZTogJ2NvbG9yJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4geyBpZDogYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgICAgICAgIHNraXA6IGUuc2tpcCxcbiAgICAgICAgICAgIHRha2U6IGUudGFrZSxcbiAgICAgICAgICAgIGZpbHRlcjogZS5maWx0ZXIsXG4gICAgICAgICAgICBzb3J0OiBlLnNvcnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW3sgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicgfV0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvbG9yJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdvcmRlcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbeyBpZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29sb3InLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ29yZGVyJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7eyB0aXRsZSB9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nIH1dLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2xvcicsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnb3JkZXInLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFsuLi5lbnRpdHlNYXN0ZXJSZWNvcmRBY3Rpb25zKCldLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogWy4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCldLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICBjcmVhdGVBbGxRdWVyeVZpZXcoe1xuICAgICAgICAgICAgICBzb3J0czogW1xuICAgICAgICAgICAgICAgIHsgbmFtZTogJ29yZGVyJywgZGlyOiAnYXNjJyB9LFxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBkaXI6ICdhc2MnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationStatusService, AXPReservationManagementReservationStatusServiceImpl, } from './reservation-status.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Reservation Status Entity Module ----\nexport class AXPReservationManagementReservationStatusEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationStatusService,\n useClass: AXPReservationManagementReservationStatusServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationStatusEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationStatusService,\n useClass: AXPReservationManagementReservationStatusServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tc3RhdHVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmVzZXJ2YXRpb24tc3RhdHVzL3Jlc2VydmF0aW9uLXN0YXR1cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLGdEQUFnRCxFQUNoRCxvREFBb0QsR0FDckQsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFdEMsWUFBWTtBQUVaLHdEQUF3RDtBQVV4RCxNQUFNLE9BQU8scURBQXFEOytHQUFyRCxxREFBcUQ7Z0hBQXJELHFEQUFxRDtnSEFBckQscURBQXFELGFBUHJEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGdEQUFnRDtnQkFDekQsUUFBUSxFQUFFLG9EQUFvRDthQUMvRDtTQUNGOzs0RkFFVSxxREFBcUQ7a0JBUmpFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxnREFBZ0Q7NEJBQ3pELFFBQVEsRUFBRSxvREFBb0Q7eUJBQy9EO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25TdGF0dXNTZXJ2aWNlLFxuICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2VJbXBsLFxufSBmcm9tICcuL3Jlc2VydmF0aW9uLXN0YXR1cy5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgUmVzZXJ2YXRpb24gU3RhdHVzIEVudGl0eSBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuXG4iXX0=","//#region ---- Imports ----\nimport { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationManagementReservationTypeService extends AXMEntityCrudServiceImpl {\n}\nexport class AXPReservationManagementReservationTypeServiceImpl extends AXPReservationManagementReservationTypeService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.reservationType.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeServiceImpl, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi10eXBlL3Jlc2VydmF0aW9uLXR5cGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd6QyxZQUFZO0FBRVosK0JBQStCO0FBRS9CLE1BQU0sT0FBZ0IsOENBQStDLFNBQVEsd0JBRzVFO0NBQUc7QUFLSixNQUFNLE9BQU8sa0RBQW1ELFNBQVEsOENBQThDO0lBQ3BIO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDOytHQUhVLGtEQUFrRDttSEFBbEQsa0RBQWtELGNBRmpELE1BQU07OzRGQUVQLGtEQUFrRDtrQkFIOUQsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlRW50aXR5TW9kZWwgfSBmcm9tICcuL3Jlc2VydmF0aW9uLXR5cGUudHlwZXMnO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlICAgLS0tLVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVFbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZUltcGwgZXh0ZW5kcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uVHlwZS5uYW1lfWApO1xuICB9XG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPSystemActionType } from '@acorex/platform/core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';\nimport { RootConfig } from '../../const';\nimport { AXPReservationManagementReservationTypeService } from './reservation-type.service';\n//#endregion\n//#region ---- Entity Factory ----\nexport async function reservationTypeFactory(injector) {\n const dataService = injector.get(AXPReservationManagementReservationTypeService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.reservationType.name,\n title: RootConfig.entities.reservationType.title,\n icon: RootConfig.entities.reservationType.icon,\n plugins: [{ name: 'archive' }],\n formats: {\n individual: RootConfig.entities.reservationType.title,\n plural: RootConfig.entities.reservationType.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n groups: [\n {\n id: 'basic-information',\n title: '@reservation-management:reservation-types.entities.reservation-type.groups.basic-information',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'code',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.code.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-types.entities.reservation-type.fields.code.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.title.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.TextBox,\n options: {\n placeholder: '@reservation-management:reservation-types.entities.reservation-type.fields.title.placeholder',\n },\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'resourceEntityIds',\n title: '@reservation-management:reservation-types.entities.reservation-type.fields.resource-entity-ids.title',\n groupId: 'basic-information',\n schema: {\n dataType: 'array',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n // TODO: Replace with actual Registry entity path when available\n // For now using a placeholder - this should be a lookup to system entity registry\n entity: 'PlatformManagement.EntityRegistry', // Placeholder - adjust as needed\n multiple: true,\n look: 'tagbox',\n textField: 'entityId',\n valueField: 'entityId',\n columns: ['entityId', 'module', 'title'],\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n },\n ],\n columns: [{ name: 'code' }, { name: 'title' }, { name: 'resourceEntityIds' }],\n commands: {\n create: {\n execute: async (data) => {\n return { id: await dataService.insertOne(data) };\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n sort: e.sort,\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [{ id: 'basic-information' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'resourceEntityIds', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [\n ...entityMasterCrudActions(),\n {\n title: '@general:actions.archive.title',\n command: 'archive-entity',\n priority: 'secondary',\n type: AXPSystemActionType.Archive,\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'code', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQWEscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVGLFlBQVk7QUFFWixzQ0FBc0M7QUFFdEMsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxRQUFrQjtJQUM3RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFDakYsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSTtRQUM5QyxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEs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SUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUCxHQUFHLHVCQUF1QixFQUFFO3dCQUM1Qjs0QkFDRSxLQUFLLEVBQUUsZ0NBQWdDOzRCQUN2QyxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixRQUFRLEVBQUUsV0FBVzs0QkFDckIsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE9BQU87NEJBQ2pDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3RDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBXaWRnZXRzTGlzdCB9IGZyb20gJ0BhY29yZXgvbW9kdWxlcy9jb21tb24nO1xuaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQU3lzdGVtQWN0aW9uVHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBlbnRpdHlNYXN0ZXJDcnVkQWN0aW9ucywgZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgRW50aXR5IEZhY3RvcnkgICAtLS0tXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNlcnZhdGlvblR5cGVGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWUsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLnRpdGxlLFxuICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLmljb24sXG4gICAgcGx1Z2luczogW3sgbmFtZTogJ2FyY2hpdmUnIH1dLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uVHlwZS50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246ICd7eyBjb2RlIH19JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicsXG4gICAgICAgIHRpdGxlOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5ncm91cHMuYmFzaWMtaW5mb3JtYXRpb24nLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgdGl0bGU6ICdAZ2VuZXJhbDp0ZXJtcy5jb21tb24uaWQnLFxuICAgICAgICBzY2hlbWE6IHsgZGF0YVR5cGU6ICd1dWlkJywgdmlzaWJsZTogZmFsc2UsIG51bGxhYmxlOiBmYWxzZSwgcmVhZG9ubHk6IHRydWUsIHVuaXF1ZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb2RlJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLmZpZWxkcy5jb2RlLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdudW1iZXInLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5maWVsZHMuY29kZS5wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBmaWx0ZXI6IHsgYWR2YW5jZTogeyBlbmFibGVkOiB0cnVlIH0sIGlubGluZTogeyBlbmFibGVkOiB0cnVlIH0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHJ1bGU6ICdyZXF1aXJlZCcgfV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXR5cGVzLmVudGl0aWVzLnJlc2VydmF0aW9uLXR5cGUuZmllbGRzLnRpdGxlLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0xpc3QuRWRpdG9ycy5UZXh0Qm94LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMuZW50aXRpZXMucmVzZXJ2YXRpb24tdHlwZS5maWVsZHMudGl0bGUucGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDogeyBlbmFibGVkOiB0cnVlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbeyBydWxlOiAncmVxdWlyZWQnIH1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc291cmNlRW50aXR5SWRzJyxcbiAgICAgICAgdGl0bGU6ICdAcmVzZXJ2YXRpb24tbWFuYWdlbWVudDpyZXNlcnZhdGlvbi10eXBlcy5lbnRpdGllcy5yZXNlcnZhdGlvbi10eXBlLmZpZWxkcy5yZXNvdXJjZS1lbnRpdHktaWRzLnRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIC8vIFRPRE86IFJlcGxhY2Ugd2l0aCBhY3R1YWwgUmVnaXN0cnkgZW50aXR5IHBhdGggd2hlbiBhdmFpbGFibGVcbiAgICAgICAgICAgICAgLy8gRm9yIG5vdyB1c2luZyBhIHBsYWNlaG9sZGVyIC0gdGhpcyBzaG91bGQgYmUgYSBsb29rdXAgdG8gc3lzdGVtIGVudGl0eSByZWdpc3RyeVxuICAgICAgICAgICAgICBlbnRpdHk6ICdQbGF0Zm9ybU1hbmFnZW1lbnQuRW50aXR5UmVnaXN0cnknLCAvLyBQbGFjZWhvbGRlciAtIGFkanVzdCBhcyBuZWVkZWRcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgIGxvb2s6ICd0YWdib3gnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICdlbnRpdHlJZCcsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdlbnRpdHlJZCcsXG4gICAgICAgICAgICAgIGNvbHVtbnM6IFsnZW50aXR5SWQnLCAnbW9kdWxlJywgJ3RpdGxlJ10sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7IGFkdmFuY2U6IHsgZW5hYmxlZDogdHJ1ZSB9LCBpbmxpbmU6IHsgZW5hYmxlZDogdHJ1ZSB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ2NvZGUnIH0sIHsgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdyZXNvdXJjZUVudGl0eUlkcycgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKSB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeSh7XG4gICAgICAgICAgICBza2lwOiBlLnNraXAsXG4gICAgICAgICAgICB0YWtlOiBlLnRha2UsXG4gICAgICAgICAgICBmaWx0ZXI6IGUuZmlsdGVyLFxuICAgICAgICAgICAgc29ydDogZS5zb3J0LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFt7IGlkOiAnYmFzaWMtaW5mb3JtYXRpb24nIH1dLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvZGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3RpdGxlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZXNvdXJjZUVudGl0eUlkcycsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogMTIgfSB9IH0gfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW3sgaWQ6ICdiYXNpYy1pbmZvcm1hdGlvbicgfV0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY29kZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGl0bGUnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDYgfSB9IH0gfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Jlc291cmNlRW50aXR5SWRzJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiAxMiB9IH0gfSB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbeyBpZDogJ2Jhc2ljLWluZm9ybWF0aW9uJyB9XSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdjb2RlJywgbGF5b3V0OiB7IHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuOiA2IH0gfSB9IH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0aXRsZScsIGxheW91dDogeyBwb3NpdGlvbnM6IHsgbGc6IHsgY29sU3BhbjogNiB9IH0gfSB9LFxuICAgICAgICAgICAgeyBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZHMnLCBsYXlvdXQ6IHsgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyIH0gfSB9IH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbLi4uZW50aXR5TWFzdGVyUmVjb3JkQWN0aW9ucygpXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIC4uLmVudGl0eU1hc3RlckNydWRBY3Rpb25zKCksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQGdlbmVyYWw6YWN0aW9ucy5hcmNoaXZlLnRpdGxlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2FyY2hpdmUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiBBWFBTeXN0ZW1BY3Rpb25UeXBlLkFyY2hpdmUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAgY3JlYXRlQWxsUXVlcnlWaWV3KHtcbiAgICAgICAgICAgICAgc29ydHM6IFt7IG5hbWU6ICdjb2RlJywgZGlyOiAnYXNjJyB9XSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationTypeService, AXPReservationManagementReservationTypeServiceImpl, } from './reservation-type.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Reservation Type Entity Module ----\nexport class AXPReservationManagementReservationTypeEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationTypeService,\n useClass: AXPReservationManagementReservationTypeServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationTypeEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationTypeService,\n useClass: AXPReservationManagementReservationTypeServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLDhDQUE4QyxFQUM5QyxrREFBa0QsR0FDbkQsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFcEMsWUFBWTtBQUVaLHNEQUFzRDtBQVV0RCxNQUFNLE9BQU8sbURBQW1EOytHQUFuRCxtREFBbUQ7Z0hBQW5ELG1EQUFtRDtnSEFBbkQsbURBQW1ELGFBUG5EO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDhDQUE4QztnQkFDdkQsUUFBUSxFQUFFLGtEQUFrRDthQUM3RDtTQUNGOzs0RkFFVSxtREFBbUQ7a0JBUi9ELFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4Q0FBOEM7NEJBQ3ZELFFBQVEsRUFBRSxrREFBa0Q7eUJBQzdEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSxcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZUltcGwsXG59IGZyb20gJy4vcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgUmVzZXJ2YXRpb24gVHlwZSBFbnRpdHkgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZVNlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZUVudGl0eU1vZHVsZSB7fVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMReservationManagementEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.reservationType.name:\n return (await import('./entities/reservation-type/reservation-type.entity')).reservationTypeFactory(this.injector);\n case RootConfig.entities.reservationStatus.name:\n return (await import('./entities/reservation-status/reservation-status.entity')).reservationStatusFactory(this.injector);\n case RootConfig.entities.reservationClass.name:\n return (await import('./entities/reservation-class/reservation-class.entity')).reservationClassFactory(this.injector);\n case RootConfig.entities.reservationEvent.name:\n return (await import('./entities/reservation-event/reservation-event.entity')).reservationEventFactory(this.injector);\n case RootConfig.entities.reservation.name:\n return (await import('./entities/reservation/reservation.entity')).reservationFactory(this.injector);\n }\n }\n return null;\n }\n async list() {\n const m = RootConfig.module.name;\n return Promise.resolve(Object.values(RootConfig.entities).map((e) => ({ name: e.name, module: m })));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdHkucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBR3JDLE1BQU0sT0FBTyxzQ0FBc0M7SUFEbkQ7UUFFVSxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBNENyQztJQTFDUSxPQUFPO1FBQ1osTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDdEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sRUFBRSxNQUFNO1lBQ2QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJO1NBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtRQUM5QyxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pDLFFBQVEsVUFBVSxFQUFFLENBQUM7Z0JBQ25CLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSTtvQkFDM0MsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHFEQUFxRCxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FDakcsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO2dCQUNKLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJO29CQUM3QyxPQUFPLENBQUMsTUFBTSxNQUFNLENBQUMseURBQXlELENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUN2RyxJQUFJLENBQUMsUUFBUSxDQUNkLENBQUM7Z0JBQ0osS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUk7b0JBQzVDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyx1REFBdUQsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQ3BHLElBQUksQ0FBQyxRQUFRLENBQ2QsQ0FBQztnQkFDSixLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSTtvQkFDNUMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLHVEQUF1RCxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FDcEcsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO2dCQUNKLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSTtvQkFDdkMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLDJDQUEyQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FDbkYsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO1lBQ04sQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDN0UsQ0FBQztJQUNKLENBQUM7K0dBNUNVLHNDQUFzQzttSEFBdEMsc0NBQXNDOzs0RkFBdEMsc0NBQXNDO2tCQURsRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudEVudGl0eVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHB1YmxpYyBwcmVsb2FkKCk6IEFYUEVudGl0eVByZWxvYWRFbnRpdHlbXSB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpKS5tYXAoKGVudGl0eTogYW55KSA9PiAoe1xuICAgICAgbW9kdWxlOiBtb2R1bGUsXG4gICAgICBlbnRpdHk6IGVudGl0eS5uYW1lLFxuICAgIH0pKTtcbiAgfVxuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHN3aXRjaCAoZW50aXR5TmFtZSkge1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25UeXBlLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tdHlwZS9yZXNlcnZhdGlvbi10eXBlLmVudGl0eScpKS5yZXNlcnZhdGlvblR5cGVGYWN0b3J5KFxuICAgICAgICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25TdGF0dXMubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLmVudGl0eScpKS5yZXNlcnZhdGlvblN0YXR1c0ZhY3RvcnkoXG4gICAgICAgICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgICAgICk7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbkNsYXNzLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3MuZW50aXR5JykpLnJlc2VydmF0aW9uQ2xhc3NGYWN0b3J5KFxuICAgICAgICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25FdmVudC5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzL3Jlc2VydmF0aW9uLWV2ZW50L3Jlc2VydmF0aW9uLWV2ZW50LmVudGl0eScpKS5yZXNlcnZhdGlvbkV2ZW50RmFjdG9yeShcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24vcmVzZXJ2YXRpb24uZW50aXR5JykpLnJlc2VydmF0aW9uRmFjdG9yeShcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBhc3luYyBsaXN0KCk6IFByb21pc2U8eyBuYW1lOiBzdHJpbmc7IG1vZHVsZTogc3RyaW5nIH1bXT4ge1xuICAgIGNvbnN0IG0gPSBSb290Q29uZmlnLm1vZHVsZS5uYW1lO1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoXG4gICAgICBPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpLm1hcCgoZSkgPT4gKHsgbmFtZTogZS5uYW1lLCBtb2R1bGU6IG0gfSkpXG4gICAgKTtcbiAgfVxufVxuIl19","//#region ---- Imports ----\nimport { Injectable, inject } from '@angular/core';\nimport { AXPReservationManagementReservationClassService } from '../entities/reservation-class/reservation-class.service';\nimport { AXPReservationManagementReservationStatusService } from '../entities/reservation-status/reservation-status.service';\nimport { AXPReservationManagementReservationTypeService } from '../entities/reservation-type/reservation-type.service';\nimport { AXPReservationManagementReservationService } from '../entities/reservation/reservation.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service ----\nexport class AXPReservationService {\n constructor() {\n this.reservationService = inject(AXPReservationManagementReservationService);\n this.reservationClassService = inject(AXPReservationManagementReservationClassService);\n this.reservationTypeService = inject(AXPReservationManagementReservationTypeService);\n this.reservationStatusService = inject(AXPReservationManagementReservationStatusService);\n }\n /**\n * Get available reservation classes for a resource type\n */\n async getAvailableClasses(reservationTypeId) {\n const result = await this.reservationClassService.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'reservationTypeId',\n operator: { type: 'equal' },\n value: reservationTypeId,\n },\n {\n field: 'isActive',\n operator: { type: 'equal' },\n value: true,\n },\n ],\n },\n });\n return result.items || [];\n }\n /**\n * Get reservations for a resource\n */\n async getReservations(resourceEntityId, resourceId, startDate, endDate) {\n const filter = {\n logic: 'and',\n filters: [\n {\n field: 'resourceEntityId',\n operator: { type: 'equal' },\n value: resourceEntityId,\n },\n {\n field: 'resourceId',\n operator: { type: 'equal' },\n value: resourceId,\n },\n ],\n };\n if (startDate && endDate) {\n filter.filters.push({\n logic: 'or',\n filters: [\n {\n field: 'startDate',\n operator: { type: 'between' },\n value: [startDate, endDate],\n },\n {\n field: 'endDate',\n operator: { type: 'between' },\n value: [startDate, endDate],\n },\n ],\n });\n }\n const result = await this.reservationService.query({\n skip: 0,\n take: 1000,\n filter,\n sort: [{ field: 'startDate', dir: 'asc' }],\n });\n return result.items || [];\n }\n /**\n * Check for conflicts\n */\n async checkConflict(resourceEntityId, resourceId, startDate, endDate, excludeReservationId) {\n const reservations = await this.getReservations(resourceEntityId, resourceId, startDate, endDate);\n const conflicts = [];\n for (const reservation of reservations) {\n if (excludeReservationId && reservation.id === excludeReservationId) {\n continue;\n }\n // Check if dates overlap\n if ((reservation.startDate <= startDate && reservation.endDate >= startDate) ||\n (reservation.startDate <= endDate && reservation.endDate >= endDate) ||\n (reservation.startDate >= startDate && reservation.endDate <= endDate)) {\n // If it's a blocking hold, always conflict\n if (reservation.reservationKind === 'hold' && reservation.isBlocking) {\n conflicts.push({\n reservationId: reservation.id,\n startDate: reservation.startDate,\n endDate: reservation.endDate,\n kind: reservation.reservationKind,\n isBlocking: reservation.isBlocking,\n });\n }\n else if (reservation.reservationKind === 'reservation') {\n // Check conflict policy from class\n // For now, treat all reservations as potential conflicts\n conflicts.push({\n reservationId: reservation.id,\n startDate: reservation.startDate,\n endDate: reservation.endDate,\n kind: reservation.reservationKind,\n isBlocking: false,\n });\n }\n }\n }\n return conflicts;\n }\n /**\n * Create a reservation\n */\n async createReservation(data, resourceEntityId, resourceId) {\n const reservationData = {\n reservationClassId: data.reservationClassId,\n resourceEntityId,\n resourceId,\n startDate: data.startDateTime,\n endDate: data.endDateTime,\n note: data.note,\n reservationKind: 'reservation',\n // Get initial status from class\n // This should be set based on class allowed statuses\n };\n return await this.reservationService.insertOne(reservationData);\n }\n /**\n * Create a hold\n */\n async createHold(data, resourceEntityId, resourceId) {\n const holdData = {\n resourceEntityId,\n resourceId,\n startDate: data.startDateTime,\n endDate: data.endDateTime,\n isBlocking: data.isBlocking,\n note: data.holdReason,\n reservationKind: 'hold',\n // Hold type should be stored in a field\n };\n return await this.reservationService.insertOne(holdData);\n }\n /**\n * Get available transitions for a reservation\n */\n async getAvailableTransitions(reservationId) {\n // Get reservation to find its class\n const reservation = await this.reservationService.getOne(reservationId);\n if (!reservation || !reservation.reservationClassId) {\n return [];\n }\n // Get class to find transitions\n const reservationClass = await this.reservationClassService.getOne(reservation.reservationClassId);\n if (!reservationClass || !reservationClass.transitions) {\n return [];\n }\n // Filter active transitions that match current status\n return reservationClass.transitions.filter((t) => t.isActive && t.fromStatusId === reservation.reservationStatusId);\n }\n /**\n * Execute a transition\n */\n async executeTransition(data) {\n // Get transition details\n const reservation = await this.reservationService.getOne(data.reservationId);\n if (!reservation) {\n throw new Error('Reservation not found');\n }\n const reservationClass = await this.reservationClassService.getOne(reservation.reservationClassId);\n if (!reservationClass || !reservationClass.transitions) {\n throw new Error('Transition not found');\n }\n const transition = reservationClass.transitions.find((t) => t.id === data.transitionId);\n if (!transition) {\n throw new Error('Transition not found');\n }\n // Update reservation status\n await this.reservationService.updateOne(data.reservationId, {\n reservationStatusId: transition.toStatusId,\n });\n // Create event record\n // This should be done through ReservationEvent entity\n }\n /**\n * Resolve reservation type from code\n */\n async resolveReservationType(code) {\n const result = await this.reservationTypeService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'code',\n operator: { type: 'equal' },\n value: code,\n },\n ],\n },\n });\n if (result.items && result.items.length > 0) {\n return result.items[0].id;\n }\n return null;\n }\n /**\n * Get widget context (statuses, transitions, policy)\n */\n async getWidgetContext(params) {\n const { classId, reservationTypeId } = params;\n // If classId is provided, get statuses and transitions from class\n if (classId) {\n const reservationClass = await this.reservationClassService.getOne(classId);\n if (reservationClass) {\n // Get allowed statuses\n const allowedStatusIds = reservationClass.allowedStatuses?.map((s) => s.reservationStatusId).filter(Boolean) || [];\n const statuses = allowedStatusIds.length\n ? await Promise.all(allowedStatusIds.map((id) => this.reservationStatusService.getOne(id).catch(() => null)))\n : [];\n // Get transitions\n const transitions = reservationClass.transitions?.filter((t) => t.isActive) || [];\n return {\n statuses: statuses.filter(Boolean),\n transitions,\n policy: {\n conflictPolicy: reservationClass.conflictPolicy,\n allowHold: reservationClass.allowHold,\n requiresApproval: reservationClass.requiresApproval,\n },\n };\n }\n }\n // Fallback: get all active statuses\n const allStatusesResult = await this.reservationStatusService.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'isActive',\n operator: { type: 'equal' },\n value: true,\n },\n ],\n },\n sort: [{ field: 'order', dir: 'asc' }],\n });\n return {\n statuses: allStatusesResult.items || [],\n transitions: [],\n policy: {},\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvc2VydmljZXMvcmVzZXJ2YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLCtDQUErQyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDMUgsT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDN0gsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDdkgsT0FBTyxFQUFFLDBDQUEwQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBUXpHLFlBQVk7QUFFWiwrQkFBK0I7QUFHL0IsTUFBTSxPQUFPLHFCQUFxQjtJQURsQztRQUVtQix1QkFBa0IsR0FBRyxNQUFNLENBQUMsMENBQTBDLENBQUMsQ0FBQztRQUN4RSw0QkFBdUIsR0FBRyxNQUFNLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUNsRiwyQkFBc0IsR0FBRyxNQUFNLENBQUMsOENBQThDLENBQUMsQ0FBQztRQUNoRiw2QkFBd0IsR0FBRyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQztLQTRUdEc7SUExVEM7O09BRUc7SUFDSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsaUJBQXlCO1FBQ2pELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQztZQUN0RCxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksRUFBRSxHQUFHO1lBQ1QsTUFBTSxFQUFFO2dCQUNOLEtBQUssRUFBRSxLQUFLO2dCQUNaLE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxLQUFLLEVBQUUsbUJB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RSxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDO1NBQ3ZDLENBQUMsQ0FBQztRQUVILE9BQU87WUFDTCxRQUFRLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDdkMsV0FBVyxFQUFFLEVBQUU7WUFDZixNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUM7SUFDSixDQUFDOytHQS9UVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQURSLE1BQU07OzRGQUNuQixxQkFBcUI7a0JBRGpDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlIH0gZnJvbSAnLi4vZW50aXRpZXMvcmVzZXJ2YXRpb24tY2xhc3MvcmVzZXJ2YXRpb24tY2xhc3Muc2VydmljZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UgfSBmcm9tICcuLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlU2VydmljZSB9IGZyb20gJy4uL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU2VydmljZSB9IGZyb20gJy4uL2VudGl0aWVzL3Jlc2VydmF0aW9uL3Jlc2VydmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25Db25mbGljdCxcbiAgQVhQUmVzZXJ2YXRpb25DcmVhdGVEYXRhLFxuICBBWFBSZXNlcnZhdGlvbkhvbGRDcmVhdGVEYXRhLFxuICBBWFBSZXNlcnZhdGlvblRyYW5zaXRpb25EYXRhLFxufSBmcm9tICcuLi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgU2VydmljZSAgIC0tLS1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlID0gaW5qZWN0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXNlcnZhdGlvblR5cGVTZXJ2aWNlID0gaW5qZWN0KEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uVHlwZVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU3RhdHVzU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBHZXQgYXZhaWxhYmxlIHJlc2VydmF0aW9uIGNsYXNzZXMgZm9yIGEgcmVzb3VyY2UgdHlwZVxuICAgKi9cbiAgYXN5bmMgZ2V0QXZhaWxhYmxlQ2xhc3NlcyhyZXNlcnZhdGlvblR5cGVJZDogc3RyaW5nKTogUHJvbWlzZTxhbnlbXT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UucXVlcnkoe1xuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwMCxcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3Jlc2VydmF0aW9uVHlwZUlkJyxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgfSxcbiAgICAgICAgICAgIHZhbHVlOiByZXNlcnZhdGlvblR5cGVJZCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnaXNBY3RpdmUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgICAgdmFsdWU6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdC5pdGVtcyB8fCBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgcmVzZXJ2YXRpb25zIGZvciBhIHJlc291cmNlXG4gICAqL1xuICBhc3luYyBnZXRSZXNlcnZhdGlvbnMoXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICBzdGFydERhdGU/OiBEYXRlLFxuICAgIGVuZERhdGU/OiBEYXRlLFxuICApOiBQcm9taXNlPGFueVtdPiB7XG4gICAgY29uc3QgZmlsdGVyOiBhbnkgPSB7XG4gICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICBmaWx0ZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmaWVsZDogJ3Jlc291cmNlRW50aXR5SWQnLFxuICAgICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgfSxcbiAgICAgICAgICB2YWx1ZTogcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGZpZWxkOiAncmVzb3VyY2VJZCcsXG4gICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgIHZhbHVlOiByZXNvdXJjZUlkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgaWYgKHN0YXJ0RGF0ZSAmJiBlbmREYXRlKSB7XG4gICAgICBmaWx0ZXIuZmlsdGVycy5wdXNoKHtcbiAgICAgICAgbG9naWM6ICdvcicsXG4gICAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZDogJ3N0YXJ0RGF0ZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnYmV0d2VlbicgfSxcbiAgICAgICAgICAgIHZhbHVlOiBbc3RhcnREYXRlLCBlbmREYXRlXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnZW5kRGF0ZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnYmV0d2VlbicgfSxcbiAgICAgICAgICAgIHZhbHVlOiBbc3RhcnREYXRlLCBlbmREYXRlXSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UucXVlcnkoe1xuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwMDAsXG4gICAgICBmaWx0ZXIsXG4gICAgICBzb3J0OiBbeyBmaWVsZDogJ3N0YXJ0RGF0ZScsIGRpcjogJ2FzYycgfV0sXG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0Lml0ZW1zIHx8IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGZvciBjb25mbGljdHNcbiAgICovXG4gIGFzeW5jIGNoZWNrQ29uZmxpY3QoXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICBzdGFydERhdGU6IERhdGUsXG4gICAgZW5kRGF0ZTogRGF0ZSxcbiAgICBleGNsdWRlUmVzZXJ2YXRpb25JZD86IHN0cmluZyxcbiAgKTogUHJvbWlzZTxBWFBSZXNlcnZhdGlvbkNvbmZsaWN0W10+IHtcbiAgICBjb25zdCByZXNlcnZhdGlvbnMgPSBhd2FpdCB0aGlzLmdldFJlc2VydmF0aW9ucyhyZXNvdXJjZUVudGl0eUlkLCByZXNvdXJjZUlkLCBzdGFydERhdGUsIGVuZERhdGUpO1xuXG4gICAgY29uc3QgY29uZmxpY3RzOiBBWFBSZXNlcnZhdGlvbkNvbmZsaWN0W10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgcmVzZXJ2YXRpb24gb2YgcmVzZXJ2YXRpb25zKSB7XG4gICAgICBpZiAoZXhjbHVkZVJlc2VydmF0aW9uSWQgJiYgcmVzZXJ2YXRpb24uaWQgPT09IGV4Y2x1ZGVSZXNlcnZhdGlvbklkKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGVjayBpZiBkYXRlcyBvdmVybGFwXG4gICAgICBpZiAoXG4gICAgICAgIChyZXNlcnZhdGlvbi5zdGFydERhdGUgPD0gc3RhcnREYXRlICYmIHJlc2VydmF0aW9uLmVuZERhdGUgPj0gc3RhcnREYXRlKSB8fFxuICAgICAgICAocmVzZXJ2YXRpb24uc3RhcnREYXRlIDw9IGVuZERhdGUgJiYgcmVzZXJ2YXRpb24uZW5kRGF0ZSA+PSBlbmREYXRlKSB8fFxuICAgICAgICAocmVzZXJ2YXRpb24uc3RhcnREYXRlID49IHN0YXJ0RGF0ZSAmJiByZXNlcnZhdGlvbi5lbmREYXRlIDw9IGVuZERhdGUpXG4gICAgICApIHtcbiAgICAgICAgLy8gSWYgaXQncyBhIGJsb2NraW5nIGhvbGQsIGFsd2F5cyBjb25mbGljdFxuICAgICAgICBpZiAocmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kID09PSAnaG9sZCcgJiYgcmVzZXJ2YXRpb24uaXNCbG9ja2luZykge1xuICAgICAgICAgIGNvbmZsaWN0cy5wdXNoKHtcbiAgICAgICAgICAgIHJlc2VydmF0aW9uSWQ6IHJlc2VydmF0aW9uLmlkLFxuICAgICAgICAgICAgc3RhcnREYXRlOiByZXNlcnZhdGlvbi5zdGFydERhdGUsXG4gICAgICAgICAgICBlbmREYXRlOiByZXNlcnZhdGlvbi5lbmREYXRlLFxuICAgICAgICAgICAga2luZDogcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kLFxuICAgICAgICAgICAgaXNCbG9ja2luZzogcmVzZXJ2YXRpb24uaXNCbG9ja2luZyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChyZXNlcnZhdGlvbi5yZXNlcnZhdGlvbktpbmQgPT09ICdyZXNlcnZhdGlvbicpIHtcbiAgICAgICAgICAvLyBDaGVjayBjb25mbGljdCBwb2xpY3kgZnJvbSBjbGFzc1xuICAgICAgICAgIC8vIEZvciBub3csIHRyZWF0IGFsbCByZXNlcnZhdGlvbnMgYXMgcG90ZW50aWFsIGNvbmZsaWN0c1xuICAgICAgICAgIGNvbmZsaWN0cy5wdXNoKHtcbiAgICAgICAgICAgIHJlc2VydmF0aW9uSWQ6IHJlc2VydmF0aW9uLmlkLFxuICAgICAgICAgICAgc3RhcnREYXRlOiByZXNlcnZhdGlvbi5zdGFydERhdGUsXG4gICAgICAgICAgICBlbmREYXRlOiByZXNlcnZhdGlvbi5lbmREYXRlLFxuICAgICAgICAgICAga2luZDogcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25LaW5kLFxuICAgICAgICAgICAgaXNCbG9ja2luZzogZmFsc2UsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmxpY3RzO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIHJlc2VydmF0aW9uXG4gICAqL1xuICBhc3luYyBjcmVhdGVSZXNlcnZhdGlvbihcbiAgICBkYXRhOiBBWFBSZXNlcnZhdGlvbkNyZWF0ZURhdGEsXG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nLFxuICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCByZXNlcnZhdGlvbkRhdGEgPSB7XG4gICAgICByZXNlcnZhdGlvbkNsYXNzSWQ6IGRhdGEucmVzZXJ2YXRpb25DbGFzc0lkLFxuICAgICAgcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgIHJlc291cmNlSWQsXG4gICAgICBzdGFydERhdGU6IGRhdGEuc3RhcnREYXRlVGltZSxcbiAgICAgIGVuZERhdGU6IGRhdGEuZW5kRGF0ZVRpbWUsXG4gICAgICBub3RlOiBkYXRhLm5vdGUsXG4gICAgICByZXNlcnZhdGlvbktpbmQ6ICdyZXNlcnZhdGlvbicsXG4gICAgICAvLyBHZXQgaW5pdGlhbCBzdGF0dXMgZnJvbSBjbGFzc1xuICAgICAgLy8gVGhpcyBzaG91bGQgYmUgc2V0IGJhc2VkIG9uIGNsYXNzIGFsbG93ZWQgc3RhdHVzZXNcbiAgICB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucmVzZXJ2YXRpb25TZXJ2aWNlLmluc2VydE9uZShyZXNlcnZhdGlvbkRhdGEgYXMgYW55KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBob2xkXG4gICAqL1xuICBhc3luYyBjcmVhdGVIb2xkKGRhdGE6IEFYUFJlc2VydmF0aW9uSG9sZENyZWF0ZURhdGEsIHJlc291cmNlRW50aXR5SWQ6IHN0cmluZywgcmVzb3VyY2VJZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBob2xkRGF0YSA9IHtcbiAgICAgIHJlc291cmNlRW50aXR5SWQsXG4gICAgICByZXNvdXJjZUlkLFxuICAgICAgc3RhcnREYXRlOiBkYXRhLnN0YXJ0RGF0ZVRpbWUsXG4gICAgICBlbmREYXRlOiBkYXRhLmVuZERhdGVUaW1lLFxuICAgICAgaXNCbG9ja2luZzogZGF0YS5pc0Jsb2NraW5nLFxuICAgICAgbm90ZTogZGF0YS5ob2xkUmVhc29uLFxuICAgICAgcmVzZXJ2YXRpb25LaW5kOiAnaG9sZCcsXG4gICAgICAvLyBIb2xkIHR5cGUgc2hvdWxkIGJlIHN0b3JlZCBpbiBhIGZpZWxkXG4gICAgfTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5pbnNlcnRPbmUoaG9sZERhdGEgYXMgYW55KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYXZhaWxhYmxlIHRyYW5zaXRpb25zIGZvciBhIHJlc2VydmF0aW9uXG4gICAqL1xuICBhc3luYyBnZXRBdmFpbGFibGVUcmFuc2l0aW9ucyhyZXNlcnZhdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPGFueVtdPiB7XG4gICAgLy8gR2V0IHJlc2VydmF0aW9uIHRvIGZpbmQgaXRzIGNsYXNzXG4gICAgY29uc3QgcmVzZXJ2YXRpb24gPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRPbmUocmVzZXJ2YXRpb25JZCk7XG4gICAgaWYgKCFyZXNlcnZhdGlvbiB8fCAhcmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25DbGFzc0lkKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgLy8gR2V0IGNsYXNzIHRvIGZpbmQgdHJhbnNpdGlvbnNcbiAgICBjb25zdCByZXNlcnZhdGlvbkNsYXNzID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvbkNsYXNzU2VydmljZS5nZXRPbmUocmVzZXJ2YXRpb24ucmVzZXJ2YXRpb25DbGFzc0lkKTtcbiAgICBpZiAoIXJlc2VydmF0aW9uQ2xhc3MgfHwgIXJlc2VydmF0aW9uQ2xhc3MudHJhbnNpdGlvbnMpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgYWN0aXZlIHRyYW5zaXRpb25zIHRoYXQgbWF0Y2ggY3VycmVudCBzdGF0dXNcbiAgICByZXR1cm4gcmVzZXJ2YXRpb25DbGFzcy50cmFuc2l0aW9ucy5maWx0ZXIoXG4gICAgICAodDogYW55KSA9PiB0LmlzQWN0aXZlICYmIHQuZnJvbVN0YXR1c0lkID09PSByZXNlcnZhdGlvbi5yZXNlcnZhdGlvblN0YXR1c0lkLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZSBhIHRyYW5zaXRpb25cbiAgICovXG4gIGFzeW5jIGV4ZWN1dGVUcmFuc2l0aW9uKGRhdGE6IEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbkRhdGEpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBHZXQgdHJhbnNpdGlvbiBkZXRhaWxzXG4gICAgY29uc3QgcmVzZXJ2YXRpb24gPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRPbmUoZGF0YS5yZXNlcnZhdGlvbklkKTtcbiAgICBpZiAoIXJlc2VydmF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Jlc2VydmF0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc2VydmF0aW9uQ2xhc3MgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlLmdldE9uZShyZXNlcnZhdGlvbi5yZXNlcnZhdGlvbkNsYXNzSWQpO1xuICAgIGlmICghcmVzZXJ2YXRpb25DbGFzcyB8fCAhcmVzZXJ2YXRpb25DbGFzcy50cmFuc2l0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2l0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHRyYW5zaXRpb24gPSByZXNlcnZhdGlvbkNsYXNzLnRyYW5zaXRpb25zLmZpbmQoKHQ6IGFueSkgPT4gdC5pZCA9PT0gZGF0YS50cmFuc2l0aW9uSWQpO1xuICAgIGlmICghdHJhbnNpdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2l0aW9uIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSByZXNlcnZhdGlvbiBzdGF0dXNcbiAgICBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS51cGRhdGVPbmUoZGF0YS5yZXNlcnZhdGlvbklkLCB7XG4gICAgICByZXNlcnZhdGlvblN0YXR1c0lkOiB0cmFuc2l0aW9uLnRvU3RhdHVzSWQsXG4gICAgfSBhcyBhbnkpO1xuXG4gICAgLy8gQ3JlYXRlIGV2ZW50IHJlY29yZFxuICAgIC8vIFRoaXMgc2hvdWxkIGJlIGRvbmUgdGhyb3VnaCBSZXNlcnZhdGlvbkV2ZW50IGVudGl0eVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmUgcmVzZXJ2YXRpb24gdHlwZSBmcm9tIGNvZGVcbiAgICovXG4gIGFzeW5jIHJlc29sdmVSZXNlcnZhdGlvblR5cGUoY29kZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblR5cGVTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgIHNraXA6IDAsXG4gICAgICB0YWtlOiAxLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgZmlsdGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnY29kZScsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnZXF1YWwnIH0sXG4gICAgICAgICAgICB2YWx1ZTogY29kZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChyZXN1bHQuaXRlbXMgJiYgcmVzdWx0Lml0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiByZXN1bHQuaXRlbXNbMF0uaWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHdpZGdldCBjb250ZXh0IChzdGF0dXNlcywgdHJhbnNpdGlvbnMsIHBvbGljeSlcbiAgICovXG4gIGFzeW5jIGdldFdpZGdldENvbnRleHQocGFyYW1zOiB7XG4gICAgcmVzb3VyY2VFbnRpdHlJZDogc3RyaW5nO1xuICAgIHJlc291cmNlSWQ6IHN0cmluZztcbiAgICByZXNlcnZhdGlvblR5cGVJZDogc3RyaW5nO1xuICAgIGNsYXNzSWQ/OiBzdHJpbmc7XG4gIH0pOiBQcm9taXNlPHtcbiAgICBzdGF0dXNlczogYW55W107XG4gICAgdHJhbnNpdGlvbnM6IGFueVtdO1xuICAgIHBvbGljeTogeyBjb25mbGljdFBvbGljeT86ICdzdHJpY3QnIHwgJ3NvZnQnOyBhbGxvd0hvbGQ/OiBib29sZWFuOyByZXF1aXJlc0FwcHJvdmFsPzogYm9vbGVhbiB9O1xuICB9PiB7XG4gICAgY29uc3QgeyBjbGFzc0lkLCByZXNlcnZhdGlvblR5cGVJZCB9ID0gcGFyYW1zO1xuXG4gICAgLy8gSWYgY2xhc3NJZCBpcyBwcm92aWRlZCwgZ2V0IHN0YXR1c2VzIGFuZCB0cmFuc2l0aW9ucyBmcm9tIGNsYXNzXG4gICAgaWYgKGNsYXNzSWQpIHtcbiAgICAgIGNvbnN0IHJlc2VydmF0aW9uQ2xhc3MgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlLmdldE9uZShjbGFzc0lkKTtcbiAgICAgIGlmIChyZXNlcnZhdGlvbkNsYXNzKSB7XG4gICAgICAgIC8vIEdldCBhbGxvd2VkIHN0YXR1c2VzXG4gICAgICAgIGNvbnN0IGFsbG93ZWRTdGF0dXNJZHMgPVxuICAgICAgICAgIHJlc2VydmF0aW9uQ2xhc3MuYWxsb3dlZFN0YXR1c2VzPy5tYXAoKHM6IGFueSkgPT4gcy5yZXNlcnZhdGlvblN0YXR1c0lkKS5maWx0ZXIoQm9vbGVhbikgfHwgW107XG4gICAgICAgIGNvbnN0IHN0YXR1c2VzID0gYWxsb3dlZFN0YXR1c0lkcy5sZW5ndGhcbiAgICAgICAgICA/IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICBhbGxvd2VkU3RhdHVzSWRzLm1hcCgoaWQ6IHN0cmluZykgPT4gdGhpcy5yZXNlcnZhdGlvblN0YXR1c1NlcnZpY2UuZ2V0T25lKGlkKS5jYXRjaCgoKSA9PiBudWxsKSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBbXTtcblxuICAgICAgICAvLyBHZXQgdHJhbnNpdGlvbnNcbiAgICAgICAgY29uc3QgdHJhbnNpdGlvbnMgPSByZXNlcnZhdGlvbkNsYXNzLnRyYW5zaXRpb25zPy5maWx0ZXIoKHQ6IGFueSkgPT4gdC5pc0FjdGl2ZSkgfHwgW107XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBzdGF0dXNlczogc3RhdHVzZXMuZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgIHRyYW5zaXRpb25zLFxuICAgICAgICAgIHBvbGljeToge1xuICAgICAgICAgICAgY29uZmxpY3RQb2xpY3k6IHJlc2VydmF0aW9uQ2xhc3MuY29uZmxpY3RQb2xpY3ksXG4gICAgICAgICAgICBhbGxvd0hvbGQ6IHJlc2VydmF0aW9uQ2xhc3MuYWxsb3dIb2xkLFxuICAgICAgICAgICAgcmVxdWlyZXNBcHByb3ZhbDogcmVzZXJ2YXRpb25DbGFzcy5yZXF1aXJlc0FwcHJvdmFsLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmFsbGJhY2s6IGdldCBhbGwgYWN0aXZlIHN0YXR1c2VzXG4gICAgY29uc3QgYWxsU3RhdHVzZXNSZXN1bHQgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU3RhdHVzU2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMTAwLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgZmlsdGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkOiAnaXNBY3RpdmUnLFxuICAgICAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LFxuICAgICAgICAgICAgdmFsdWU6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBzb3J0OiBbeyBmaWVsZDogJ29yZGVyJywgZGlyOiAnYXNjJyB9XSxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdGF0dXNlczogYWxsU3RhdHVzZXNSZXN1bHQuaXRlbXMgfHwgW10sXG4gICAgICB0cmFuc2l0aW9uczogW10sXG4gICAgICBwb2xpY3k6IHt9LFxuICAgIH07XG4gIH1cbn1cblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDataTableModule } from '@acorex/components/data-table';\nimport { AXDateTimeBoxModule } from '@acorex/components/datetime-box';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/widget-core';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPReservationService } from '../../services/reservation.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/check-box\";\nimport * as i4 from \"@acorex/components/data-table\";\nimport * as i5 from \"@acorex/components/datetime-box\";\nimport * as i6 from \"@acorex/components/label\";\nimport * as i7 from \"@acorex/components/select-box\";\nimport * as i8 from \"@angular/common\";\nfunction normalizeReservation(r) {\n return {\n id: r.id,\n kind: (r.kind ?? r.reservationKind),\n statusId: r.statusId ?? r.reservationStatusId,\n status: r.status ?? r.reservationStatus,\n startDate: r.startDate instanceof Date ? r.startDate : new Date(r.startDate),\n endDate: r.endDate instanceof Date ? r.endDate : new Date(r.endDate),\n requestedBy: r.requestedByRef ?? r.requestedBy,\n approvedBy: r.approvedByRef ?? r.approvedBy,\n note: r.note ?? '',\n isBlocking: r.isBlocking,\n };\n}\n//#endregion\n//#region ---- Component ----\nexport class AXPReservationPanelWidgetComponent extends AXPValueWidgetComponent {\n //#endregion\n //#region ---- Effects ----\n constructor() {\n super();\n //#region ---- Services & Dependencies ----\n this.reservationService = inject(AXPReservationService);\n //#endregion\n //#region ---- Computed Properties from Options ----\n this.resourceEntityId = computed(() => {\n const opts = this.options();\n return opts?.resourceEntityId || '';\n }, ...(ngDevMode ? [{ debugName: \"resourceEntityId\" }] : []));\n this.resourceId = computed(() => {\n const opts = this.options();\n const resourceIdOption = opts?.resourceId;\n if (typeof resourceIdOption === 'string' && resourceIdOption.includes('{{')) {\n try {\n const contextId = this.contextService.getValue(this.fullPath()?.split('.').slice(0, -1).join('.') + '.id');\n if (contextId)\n return contextId;\n return this.contextService.getValue('id') || '';\n }\n catch {\n return '';\n }\n }\n return resourceIdOption || this.contextService.getValue('id') || '';\n }, ...(ngDevMode ? [{ debugName: \"resourceId\" }] : []));\n this.resourceRef = computed(() => {\n const opts = this.options();\n return opts?.resourceRef;\n }, ...(ngDevMode ? [{ debugName: \"resourceRef\" }] : []));\n this.reservationTypeId = computed(() => {\n const opts = this.options();\n return opts?.reservationTypeId;\n }, ...(ngDevMode ? [{ debugName: \"reservationTypeId\" }] : []));\n this.reservationTypeCode = computed(() => {\n const opts = this.options();\n return opts?.reservationTypeCode;\n }, ...(ngDevMode ? [{ debugName: \"reservationTypeCode\" }] : []));\n this.defaultClassId = computed(() => {\n const opts = this.options();\n return opts?.defaultClassId;\n }, ...(ngDevMode ? [{ debugName: \"defaultClassId\" }] : []));\n this.displayMode = computed(() => {\n const opts = this.options();\n return opts?.mode || 'both';\n }, ...(ngDevMode ? [{ debugName: \"displayMode\" }] : []));\n this.readonly = computed(() => {\n const opts = this.options();\n return opts?.readonly || false;\n }, ...(ngDevMode ? [{ debugName: \"readonly\" }] : []));\n this.dateRangeDays = computed(() => {\n const opts = this.options();\n return opts?.dateRangeDays || 30;\n }, ...(ngDevMode ? [{ debugName: \"dateRangeDays\" }] : []));\n this.allowHold = computed(() => {\n const opts = this.options();\n return opts?.allowHold;\n }, ...(ngDevMode ? [{ debugName: \"allowHold\" }] : []));\n //#endregion\n //#region ---- State ----\n this.viewMode = signal('split', ...(ngDevMode ? [{ debugName: \"viewMode\" }] : []));\n this.selectedClassId = signal(null, ...(ngDevMode ? [{ debugName: \"selectedClassId\" }] : []));\n this.dateFrom = signal(new Date(), ...(ngDevMode ? [{ debugName: \"dateFrom\" }] : []));\n this.dateTo = signal(new Date(), ...(ngDevMode ? [{ debugName: \"dateTo\" }] : []));\n this.showReservations = signal(true, ...(ngDevMode ? [{ debugName: \"showReservations\" }] : []));\n this.showHolds = signal(true, ...(ngDevMode ? [{ debugName: \"showHolds\" }] : []));\n this.selectedStatusIds = signal([], ...(ngDevMode ? [{ debugName: \"selectedStatusIds\" }] : []));\n this.reservations = signal([], ...(ngDevMode ? [{ debugName: \"reservations\" }] : []));\n this.availableClasses = signal([], ...(ngDevMode ? [{ debugName: \"availableClasses\" }] : []));\n this.availableStatuses = signal([], ...(ngDevMode ? [{ debugName: \"availableStatuses\" }] : []));\n this.transitions = signal([], ...(ngDevMode ? [{ debugName: \"transitions\" }] : []));\n this.policy = signal({}, ...(ngDevMode ? [{ debugName: \"policy\" }] : []));\n //#endregion\n //#region ---- Computed ----\n this.filteredReservations = computed(() => {\n let filtered = this.reservations();\n if (!this.showReservations()) {\n filtered = filtered.filter((r) => r.kind !== 'reservation');\n }\n if (!this.showHolds()) {\n filtered = filtered.filter((r) => r.kind !== 'hold');\n }\n const statusIds = this.selectedStatusIds();\n if (statusIds.length > 0) {\n filtered = filtered.filter((r) => statusIds.includes(r.statusId));\n }\n return filtered;\n }, ...(ngDevMode ? [{ debugName: \"filteredReservations\" }] : []));\n this.classDataSource = computed(() => {\n return this.availableClasses().map((c) => ({ id: c.id, title: c.title }));\n }, ...(ngDevMode ? [{ debugName: \"classDataSource\" }] : []));\n this.statusDataSource = computed(() => {\n return this.availableStatuses().map((s) => ({ id: s.id, title: s.title, color: s.color }));\n }, ...(ngDevMode ? [{ debugName: \"statusDataSource\" }] : []));\n this.tableDataSource = computed(() => {\n const items = this.filteredReservations().map((r) => ({\n ...r,\n startDate: r.startDate.toISOString(),\n endDate: r.endDate.toISOString(),\n statusTitle: r.status?.title || 'Unknown',\n requestedByName: r.requestedBy?.displayName || r.requestedBy?.name || '-',\n approvedByName: r.approvedBy?.displayName || r.approvedBy?.name || '-',\n }));\n return new AXDataSource({\n load: async () => ({\n items,\n total: items.length,\n }),\n pageSize: items.length || 1,\n key: 'id',\n });\n }, ...(ngDevMode ? [{ debugName: \"tableDataSource\" }] : []));\n this.timelineDays = computed(() => {\n const reservations = this.filteredReservations();\n const days = new Map();\n reservations.forEach((res) => {\n const start = new Date(res.startDate);\n const end = new Date(res.endDate);\n const current = new Date(start);\n while (current <= end) {\n const key = current.toISOString().split('T')[0];\n if (!days.has(key)) {\n days.set(key, []);\n }\n days.get(key).push(res);\n current.setDate(current.getDate() + 1);\n }\n });\n return Array.from(days.entries())\n .map(([dateStr, resList]) => ({\n date: new Date(dateStr),\n reservations: resList,\n }))\n .sort((a, b) => a.date.getTime() - b.date.getTime());\n }, ...(ngDevMode ? [{ debugName: \"timelineDays\" }] : []));\n // Initialize date range\n const today = new Date();\n const days = this.dateRangeDays();\n this.dateFrom.set(new Date(today.getTime() - days * 24 * 60 * 60 * 1000));\n this.dateTo.set(new Date(today.getTime() + days * 24 * 60 * 60 * 1000));\n // Set view mode based on input\n effect(() => {\n const mode = this.displayMode();\n if (mode === 'calendar') {\n this.viewMode.set('calendar');\n }\n else if (mode === 'list') {\n this.viewMode.set('list');\n }\n });\n // Reactive data loading\n effect(() => {\n const resourceId = this.resourceId();\n const resourceEntityId = this.resourceEntityId();\n const classId = this.selectedClassId();\n const from = this.dateFrom();\n const to = this.dateTo();\n if (resourceId && resourceEntityId) {\n this.loadData();\n }\n });\n }\n //#endregion\n //#region ---- Methods ----\n async loadData() {\n // Resolve reservation type\n let typeId = this.reservationTypeId();\n if (!typeId && this.reservationTypeCode()) {\n typeId = (await this.reservationService.resolveReservationType(this.reservationTypeCode())) || undefined;\n }\n if (!typeId) {\n return;\n }\n // Load classes\n const classes = await this.reservationService.getAvailableClasses(typeId);\n this.availableClasses.set(classes);\n // Auto-select class if only one\n if (classes.length === 1 && !this.selectedClassId()) {\n this.selectedClassId.set(classes[0].id);\n }\n else if (this.defaultClassId() && !this.selectedClassId()) {\n this.selectedClassId.set(this.defaultClassId());\n }\n const classId = this.selectedClassId();\n const resourceId = this.resourceId();\n const resourceEntityId = this.resourceEntityId();\n if (!classId || !resourceId || !resourceEntityId) {\n return;\n }\n // Load context (statuses, transitions, policy)\n const context = await this.reservationService.getWidgetContext({\n resourceEntityId,\n resourceId,\n reservationTypeId: typeId,\n classId,\n });\n this.availableStatuses.set(context.statuses);\n this.transitions.set(context.transitions);\n this.policy.set(context.policy);\n // Load reservations\n const reservations = await this.reservationService.getReservations(resourceEntityId, resourceId, this.dateFrom(), this.dateTo());\n const normalized = reservations.map(normalizeReservation);\n // Enrich with status data\n const enriched = normalized.map((res) => ({\n ...res,\n status: this.availableStatuses().find((s) => s.id === res.statusId),\n }));\n this.reservations.set(enriched);\n }\n setDateRange(range) {\n const today = new Date();\n let from;\n let to;\n switch (range) {\n case 'today':\n from = new Date(today);\n to = new Date(today);\n break;\n case 'week':\n from = new Date(today);\n from.setDate(today.getDate() - today.getDay());\n to = new Date(from);\n to.setDate(from.getDate() + 6);\n break;\n case 'month':\n from = new Date(today.getFullYear(), today.getMonth(), 1);\n to = new Date(today.getFullYear(), today.getMonth() + 1, 0);\n break;\n }\n this.dateFrom.set(from);\n this.dateTo.set(to);\n }\n getAvailableTransitions(reservation) {\n return this.transitions().filter((t) => t.fromStatusId === reservation.statusId && t.isActive);\n }\n openCreateReservationModal() {\n console.log('Open create reservation modal');\n }\n openCreateHoldModal() {\n console.log('Open create hold modal');\n }\n openReservationDetails(reservationId) {\n console.log('Open reservation details:', reservationId);\n }\n openTransitionModal(reservationId, transitionId) {\n console.log('Open transition modal:', reservationId, transitionId);\n }\n getCommandItems() {\n return [\n { name: 'view', text: 'View', icon: 'fa-light fa-eye' },\n // Transitions will be added dynamically per row\n ];\n }\n handleCommandClick(event) {\n const item = event.item || event;\n const row = event.row || event.dataItem || event.data;\n if (item.name === 'view') {\n this.openReservationDetails(row.id);\n }\n else if (item.name?.startsWith('transition-')) {\n const transitionId = item.name.replace('transition-', '');\n this.openTransitionModal(row.id, transitionId);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPanelWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.16\", type: AXPReservationPanelWidgetComponent, isStandalone: true, selector: \"axp-reservation-panel\", usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-h-full\">\n <!-- Header Toolbar -->\n <div class=\"ax-flex ax-items-center ax-justify-between ax-gap-4 ax-p-4 ax-border-b\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Class Selector -->\n @if (availableClasses().length > 1) {\n <ax-select-box\n class=\"ax-w-64\"\n [dataSource]=\"classDataSource()\"\n [ngModel]=\"selectedClassId() ?? ''\"\n (ngModelChange)=\"selectedClassId.set($event || null)\"\n valueField=\"id\"\n textField=\"title\"\n placeholder=\"Select Class\"\n look=\"outline\"\n ></ax-select-box>\n }\n\n <!-- View Toggle -->\n @if (displayMode() === 'both') {\n <div class=\"ax-flex ax-gap-1 ax-border ax-rounded\">\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'calendar'\"\n [class.ax-text-white]=\"viewMode() === 'calendar'\"\n (onClick)=\"viewMode.set('calendar')\"\n look=\"blank\"\n size=\"sm\"\n >\n Calendar\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'list'\"\n [class.ax-text-white]=\"viewMode() === 'list'\"\n (onClick)=\"viewMode.set('list')\"\n look=\"blank\"\n size=\"sm\"\n >\n List\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'split'\"\n [class.ax-text-white]=\"viewMode() === 'split'\"\n (onClick)=\"viewMode.set('split')\"\n look=\"blank\"\n size=\"sm\"\n >\n Split\n </ax-button>\n </div>\n }\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Date Range Controller -->\n <ax-button (onClick)=\"setDateRange('today')\" look=\"outline\" size=\"sm\">Today</ax-button>\n <ax-button (onClick)=\"setDateRange('week')\" look=\"outline\" size=\"sm\">Week</ax-button>\n <ax-button (onClick)=\"setDateRange('month')\" look=\"outline\" size=\"sm\">Month</ax-button>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateFrom()\"\n (ngModelChange)=\"dateFrom.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n <span class=\"ax-text-muted\">-</span>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateTo()\"\n (ngModelChange)=\"dateTo.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Filters -->\n <ax-check-box [ngModel]=\"showReservations()\" (ngModelChange)=\"showReservations.set($event)\">\n <ax-label>Reservations</ax-label>\n </ax-check-box>\n <ax-check-box [ngModel]=\"showHolds()\" (ngModelChange)=\"showHolds.set($event)\">\n <ax-label>Holds</ax-label>\n </ax-check-box>\n <ax-select-box\n class=\"ax-w-48\"\n [dataSource]=\"statusDataSource()\"\n [ngModel]=\"selectedStatusIds()\"\n (ngModelChange)=\"selectedStatusIds.set($event)\"\n valueField=\"id\"\n textField=\"title\"\n [multiple]=\"true\"\n placeholder=\"Filter by Status\"\n look=\"outline\"\n size=\"sm\"\n ></ax-select-box>\n\n <!-- Actions -->\n @if (!readonly()) {\n <ax-button (onClick)=\"openCreateReservationModal()\" look=\"primary\" size=\"sm\"> + New Reservation </ax-button>\n @if (allowHold()) {\n <ax-button (onClick)=\"openCreateHoldModal()\" look=\"outline\" size=\"sm\">+ New Hold</ax-button>\n }\n }\n </div>\n </div>\n\n <!-- Body -->\n <div class=\"ax-flex-1 ax-overflow-auto ax-p-4\">\n @if (viewMode() === 'calendar' || viewMode() === 'split') {\n <div class=\"calendar-view ax-mb-4\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">Calendar</h3>\n }\n <!-- Timeline View -->\n <div class=\"timeline-view\">\n @for (day of timelineDays(); track day.date.getTime()) {\n <div class=\"ax-border-b ax-pb-2 ax-mb-2\">\n <div class=\"ax-font-semibold ax-mb-2\">\n {{ day.date | date: 'EEEE, MMMM d, y' }}\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @for (reservation of day.reservations; track reservation.id) {\n <div\n class=\"ax-p-2 ax-rounded ax-border\"\n [style.border-left-color]=\"reservation.status?.color || '#ccc'\"\n [style.border-left-width]=\"'4px'\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs ax-font-semibold\"\n [class.ax-bg-success]=\"reservation.kind === 'reservation'\"\n [class.ax-bg-danger]=\"reservation.kind === 'hold'\"\n [class.ax-text-white]=\"true\"\n >\n {{ reservation.kind }}\n </span>\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs\"\n [style.background-color]=\"reservation.status?.color || '#ccc'\"\n [style.color]=\"'white'\"\n >\n {{ reservation.status?.title || 'Unknown' }}\n </span>\n <span class=\"ax-text-sm ax-text-muted\">\n {{ reservation.startDate | date: 'shortTime' }} -\n {{ reservation.endDate | date: 'shortTime' }}\n </span>\n </div>\n @if (reservation.note) {\n <div class=\"ax-text-sm ax-mt-1 ax-text-muted\">{{ reservation.note }}</div>\n }\n </div>\n }\n @if (day.reservations.length === 0) {\n <div class=\"ax-text-sm ax-text-muted ax-p-2\">No reservations</div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (viewMode() === 'list' || viewMode() === 'split') {\n <div class=\"list-view\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">List</h3>\n }\n <ax-data-table [dataSource]=\"tableDataSource()\" [showFooter]=\"false\" [paging]=\"false\">\n <ax-text-column dataField=\"kind\" [width]=\"'100px'\" caption=\"Kind\"></ax-text-column>\n <ax-text-column dataField=\"startDate\" [width]=\"'150px'\" caption=\"Start\"></ax-text-column>\n <ax-text-column dataField=\"endDate\" [width]=\"'150px'\" caption=\"End\"></ax-text-column>\n <ax-text-column dataField=\"statusTitle\" [width]=\"'120px'\" caption=\"Status\"></ax-text-column>\n <ax-text-column dataField=\"requestedByName\" [width]=\"'150px'\" caption=\"Requested By\"></ax-text-column>\n <ax-text-column dataField=\"approvedByName\" [width]=\"'150px'\" caption=\"Approved By\"></ax-text-column>\n <ax-text-column dataField=\"note\" caption=\"Note\"></ax-text-column>\n <ax-command-column\n fixed=\"end\"\n [width]=\"'200px'\"\n [items]=\"getCommandItems()\"\n (onItemClick)=\"handleCommandClick($event)\"\n ></ax-command-column>\n </ax-data-table>\n </div>\n }\n </div>\n </div>\n `, isInline: true, styles: [\".timeline-view{max-height:600px;overflow-y:auto}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXCheckBoxModule }, { kind: \"component\", type: i3.AXCheckBoxComponent, selector: \"ax-check-box\", inputs: [\"disabled\", \"tabIndex\", \"readonly\", \"color\", \"value\", \"name\", \"id\", \"isLoading\", \"indeterminate\"], outputs: [\"onBlur\", \"onFocus\", \"valueChange\", \"onValueChanged\"] }, { kind: \"ngmodule\", type: AXDataTableModule }, { kind: \"component\", type: i4.AXDataTableComponent, selector: \"ax-data-table\", inputs: [\"dataSource\", \"selectedRows\", \"parentField\", \"rowDetailsTemplate\", \"rowTemplate\", \"emptyTemplate\", \"noDataTemplate\", \"alternative\", \"showHeader\", \"fixedHeader\", \"showFooter\", \"fixedFooter\", \"itemHeight\", \"allowReordering\", \"paging\", \"fetchDataMode\", \"loading\", \"focusedRow\"], outputs: [\"selectedRowsChange\", \"focusedRowChange\", \"onRowClick\", \"onRowDbClick\", \"onColumnsOrderChanged\", \"onColumnSizeChanged\", \"onPageChanged\"] }, { kind: \"component\", type: i4.AXDataTableTextColumnComponent, selector: \"ax-text-column\", inputs: [\"width\", \"caption\", \"allowSorting\", \"allowResizing\", \"fixed\", \"customExpandIcon\", \"customCollapseIcon\", \"dataField\", \"expandHandler\", \"wrapText\", \"cellTemplate\", \"footerTemplate\", \"headerTemplate\", \"format\", \"formatOptions\"] }, { kind: \"component\", type: i4.AXRowCommandColumnComponent, selector: \"ax-command-column\", inputs: [\"width\", \"caption\", \"fixed\", \"footerTemplate\", \"items\"], outputs: [\"onItemClick\"] }, { kind: \"ngmodule\", type: AXDateTimeBoxModule }, { kind: \"component\", type: i5.AXDateTimeBoxComponent, selector: \"ax-datetime-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"minValue\", \"maxValue\", \"value\", \"state\", \"name\", \"depth\", \"id\", \"type\", \"look\", \"holidayDates\", \"allowTyping\", \"picker\", \"calendar\", \"weekend\", \"weekdays\", \"format\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"onOpened\", \"onClosed\", \"readonlyChange\", \"disabledChange\", \"formatChange\"] }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"component\", type: i6.AXLabelComponent, selector: \"ax-label\", inputs: [\"required\", \"for\"], outputs: [\"requiredChange\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"component\", type: i7.AXSelectBoxComponent, selector: \"ax-select-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"minValue\", \"maxValue\", \"value\", \"state\", \"name\", \"id\", \"type\", \"look\", \"multiple\", \"valueField\", \"textField\", \"disabledField\", \"textTemplate\", \"selectedItems\", \"isItemTruncated\", \"showItemTooltip\", \"itemHeight\", \"maxVisibleItems\", \"dataSource\", \"minRecordsForSearch\", \"caption\", \"itemTemplate\", \"selectedTemplate\", \"emptyTemplate\", \"loadingTemplate\", \"dropdownWidth\", \"searchBoxAutoFocus\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onOpened\", \"onClosed\", \"onItemSelected\", \"onItemClick\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i8.DatePipe, name: \"date\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPanelWidgetComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-reservation-panel', standalone: true, imports: [\n CommonModule,\n FormsModule,\n DatePipe,\n AXButtonModule,\n AXCheckBoxModule,\n AXDataTableModule,\n AXDateTimeBoxModule,\n AXLabelModule,\n AXSelectBoxModule,\n AXTranslationModule,\n ], template: `\n <div class=\"ax-flex ax-flex-col ax-h-full\">\n <!-- Header Toolbar -->\n <div class=\"ax-flex ax-items-center ax-justify-between ax-gap-4 ax-p-4 ax-border-b\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Class Selector -->\n @if (availableClasses().length > 1) {\n <ax-select-box\n class=\"ax-w-64\"\n [dataSource]=\"classDataSource()\"\n [ngModel]=\"selectedClassId() ?? ''\"\n (ngModelChange)=\"selectedClassId.set($event || null)\"\n valueField=\"id\"\n textField=\"title\"\n placeholder=\"Select Class\"\n look=\"outline\"\n ></ax-select-box>\n }\n\n <!-- View Toggle -->\n @if (displayMode() === 'both') {\n <div class=\"ax-flex ax-gap-1 ax-border ax-rounded\">\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'calendar'\"\n [class.ax-text-white]=\"viewMode() === 'calendar'\"\n (onClick)=\"viewMode.set('calendar')\"\n look=\"blank\"\n size=\"sm\"\n >\n Calendar\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'list'\"\n [class.ax-text-white]=\"viewMode() === 'list'\"\n (onClick)=\"viewMode.set('list')\"\n look=\"blank\"\n size=\"sm\"\n >\n List\n </ax-button>\n <ax-button\n [class.ax-bg-primary]=\"viewMode() === 'split'\"\n [class.ax-text-white]=\"viewMode() === 'split'\"\n (onClick)=\"viewMode.set('split')\"\n look=\"blank\"\n size=\"sm\"\n >\n Split\n </ax-button>\n </div>\n }\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Date Range Controller -->\n <ax-button (onClick)=\"setDateRange('today')\" look=\"outline\" size=\"sm\">Today</ax-button>\n <ax-button (onClick)=\"setDateRange('week')\" look=\"outline\" size=\"sm\">Week</ax-button>\n <ax-button (onClick)=\"setDateRange('month')\" look=\"outline\" size=\"sm\">Month</ax-button>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateFrom()\"\n (ngModelChange)=\"dateFrom.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n <span class=\"ax-text-muted\">-</span>\n <ax-datetime-box\n class=\"ax-w-40\"\n [ngModel]=\"dateTo()\"\n (ngModelChange)=\"dateTo.set($event)\"\n [format]=\"'yyyy-MM-dd'\"\n look=\"outline\"\n size=\"sm\"\n ></ax-datetime-box>\n </div>\n\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <!-- Filters -->\n <ax-check-box [ngModel]=\"showReservations()\" (ngModelChange)=\"showReservations.set($event)\">\n <ax-label>Reservations</ax-label>\n </ax-check-box>\n <ax-check-box [ngModel]=\"showHolds()\" (ngModelChange)=\"showHolds.set($event)\">\n <ax-label>Holds</ax-label>\n </ax-check-box>\n <ax-select-box\n class=\"ax-w-48\"\n [dataSource]=\"statusDataSource()\"\n [ngModel]=\"selectedStatusIds()\"\n (ngModelChange)=\"selectedStatusIds.set($event)\"\n valueField=\"id\"\n textField=\"title\"\n [multiple]=\"true\"\n placeholder=\"Filter by Status\"\n look=\"outline\"\n size=\"sm\"\n ></ax-select-box>\n\n <!-- Actions -->\n @if (!readonly()) {\n <ax-button (onClick)=\"openCreateReservationModal()\" look=\"primary\" size=\"sm\"> + New Reservation </ax-button>\n @if (allowHold()) {\n <ax-button (onClick)=\"openCreateHoldModal()\" look=\"outline\" size=\"sm\">+ New Hold</ax-button>\n }\n }\n </div>\n </div>\n\n <!-- Body -->\n <div class=\"ax-flex-1 ax-overflow-auto ax-p-4\">\n @if (viewMode() === 'calendar' || viewMode() === 'split') {\n <div class=\"calendar-view ax-mb-4\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">Calendar</h3>\n }\n <!-- Timeline View -->\n <div class=\"timeline-view\">\n @for (day of timelineDays(); track day.date.getTime()) {\n <div class=\"ax-border-b ax-pb-2 ax-mb-2\">\n <div class=\"ax-font-semibold ax-mb-2\">\n {{ day.date | date: 'EEEE, MMMM d, y' }}\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @for (reservation of day.reservations; track reservation.id) {\n <div\n class=\"ax-p-2 ax-rounded ax-border\"\n [style.border-left-color]=\"reservation.status?.color || '#ccc'\"\n [style.border-left-width]=\"'4px'\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs ax-font-semibold\"\n [class.ax-bg-success]=\"reservation.kind === 'reservation'\"\n [class.ax-bg-danger]=\"reservation.kind === 'hold'\"\n [class.ax-text-white]=\"true\"\n >\n {{ reservation.kind }}\n </span>\n <span\n class=\"ax-px-2 ax-py-1 ax-rounded ax-text-xs\"\n [style.background-color]=\"reservation.status?.color || '#ccc'\"\n [style.color]=\"'white'\"\n >\n {{ reservation.status?.title || 'Unknown' }}\n </span>\n <span class=\"ax-text-sm ax-text-muted\">\n {{ reservation.startDate | date: 'shortTime' }} -\n {{ reservation.endDate | date: 'shortTime' }}\n </span>\n </div>\n @if (reservation.note) {\n <div class=\"ax-text-sm ax-mt-1 ax-text-muted\">{{ reservation.note }}</div>\n }\n </div>\n }\n @if (day.reservations.length === 0) {\n <div class=\"ax-text-sm ax-text-muted ax-p-2\">No reservations</div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (viewMode() === 'list' || viewMode() === 'split') {\n <div class=\"list-view\">\n @if (viewMode() === 'split') {\n <h3 class=\"ax-text-lg ax-font-semibold ax-mb-2\">List</h3>\n }\n <ax-data-table [dataSource]=\"tableDataSource()\" [showFooter]=\"false\" [paging]=\"false\">\n <ax-text-column dataField=\"kind\" [width]=\"'100px'\" caption=\"Kind\"></ax-text-column>\n <ax-text-column dataField=\"startDate\" [width]=\"'150px'\" caption=\"Start\"></ax-text-column>\n <ax-text-column dataField=\"endDate\" [width]=\"'150px'\" caption=\"End\"></ax-text-column>\n <ax-text-column dataField=\"statusTitle\" [width]=\"'120px'\" caption=\"Status\"></ax-text-column>\n <ax-text-column dataField=\"requestedByName\" [width]=\"'150px'\" caption=\"Requested By\"></ax-text-column>\n <ax-text-column dataField=\"approvedByName\" [width]=\"'150px'\" caption=\"Approved By\"></ax-text-column>\n <ax-text-column dataField=\"note\" caption=\"Note\"></ax-text-column>\n <ax-command-column\n fixed=\"end\"\n [width]=\"'200px'\"\n [items]=\"getCommandItems()\"\n (onItemClick)=\"handleCommandClick($event)\"\n ></ax-command-column>\n </ax-data-table>\n </div>\n }\n </div>\n </div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [\".timeline-view{max-height:600px;overflow-y:auto}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7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LGlCQUFpQjt3QkFDakIsbUJBQW1CO3FCQUNwQixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2TFQsbUJBU2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYRGF0YVNvdXJjZSB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEYXRhVGFibGVNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGF0YS10YWJsZSc7XG5pbXBvcnQgeyBBWERhdGVUaW1lQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RhdGV0aW1lLWJveCc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVzZXJ2YXRpb24uc2VydmljZSc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIE5vcm1hbGl6ZWQgUmVzZXJ2YXRpb24gTW9kZWwgICAtLS0tXG5cbmludGVyZmFjZSBOb3JtYWxpemVkUmVzZXJ2YXRpb24ge1xuICBpZDogc3RyaW5nO1xuICBraW5kOiAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnO1xuICBzdGF0dXNJZDogc3RyaW5nO1xuICBzdGF0dXM/OiB7IGlkOiBzdHJpbmc7IHRpdGxlOiBzdHJpbmc7IGNvbG9yOiBzdHJpbmc7IGljb24/OiBzdHJpbmcgfTtcbiAgc3RhcnREYXRlOiBEYXRlO1xuICBlbmREYXRlOiBEYXRlO1xuICByZXF1ZXN0ZWRCeT86IHsgaWQ6IHN0cmluZzsgZGlzcGxheU5hbWU/OiBzdHJpbmc7IG5hbWU/OiBzdHJpbmcgfTtcbiAgYXBwcm92ZWRCeT86IHsgaWQ6IHN0cmluZzsgZGlzcGxheU5hbWU/OiBzdHJpbmc7IG5hbWU/OiBzdHJpbmcgfTtcbiAgbm90ZTogc3RyaW5nO1xuICBpc0Jsb2NraW5nPzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplUmVzZXJ2YXRpb24ocjogYW55KTogTm9ybWFsaXplZFJlc2VydmF0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICBpZDogci5pZCxcbiAgICBraW5kOiAoci5raW5kID8/IHIucmVzZXJ2YXRpb25LaW5kKSBhcyAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnLFxuICAgIHN0YXR1c0lkOiByLnN0YXR1c0lkID8/IHIucmVzZXJ2YXRpb25TdGF0dXNJZCxcbiAgICBzdGF0dXM6IHIuc3RhdHVzID8/IHIucmVzZXJ2YXRpb25TdGF0dXMsXG4gICAgc3RhcnREYXRlOiByLnN0YXJ0RGF0ZSBpbnN0YW5jZW9mIERhdGUgPyByLnN0YXJ0RGF0ZSA6IG5ldyBEYXRlKHIuc3RhcnREYXRlKSxcbiAgICBlbmREYXRlOiByLmVuZERhdGUgaW5zdGFuY2VvZiBEYXRlID8gci5lbmREYXRlIDogbmV3IERhdGUoci5lbmREYXRlKSxcbiAgICByZXF1ZXN0ZWRCeTogci5yZXF1ZXN0ZWRCeVJlZiA/PyByLnJlcXVlc3RlZEJ5LFxuICAgIGFwcHJvdmVkQnk6IHIuYXBwcm92ZWRCeVJlZiA/PyByLmFwcHJvdmVkQnksXG4gICAgbm90ZTogci5ub3RlID8/ICcnLFxuICAgIGlzQmxvY2tpbmc6IHIuaXNCbG9ja2luZyxcbiAgfTtcbn1cblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgQ29tcG9uZW50ICAgLS0tLVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtcmVzZXJ2YXRpb24tcGFuZWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIERhdGVQaXBlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYQ2hlY2tCb3hNb2R1bGUsXG4gICAgQVhEYXRhVGFibGVNb2R1bGUsXG4gICAgQVhEYXRlVGltZUJveE1vZHVsZSxcbiAgICBBWExhYmVsTW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaC1mdWxsXCI+XG4gICAgICA8IS0tIEhlYWRlciBUb29sYmFyIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktYmV0d2VlbiBheC1nYXAtNCBheC1wLTQgYXgtYm9yZGVyLWJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgPCEtLSBDbGFzcyBTZWxlY3RvciAtLT5cbiAgICAgICAgICBAaWYgKGF2YWlsYWJsZUNsYXNzZXMoKS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICA8YXgtc2VsZWN0LWJveFxuICAgICAgICAgICAgICBjbGFzcz1cImF4LXctNjRcIlxuICAgICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJjbGFzc0RhdGFTb3VyY2UoKVwiXG4gICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkQ2xhc3NJZCgpID8/ICcnXCJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VsZWN0ZWRDbGFzc0lkLnNldCgkZXZlbnQgfHwgbnVsbClcIlxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwiaWRcIlxuICAgICAgICAgICAgICB0ZXh0RmllbGQ9XCJ0aXRsZVwiXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IENsYXNzXCJcbiAgICAgICAgICAgICAgbG9vaz1cIm91dGxpbmVcIlxuICAgICAgICAgICAgPjwvYXgtc2VsZWN0LWJveD5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICA8IS0tIFZpZXcgVG9nZ2xlIC0tPlxuICAgICAgICAgIEBpZiAoZGlzcGxheU1vZGUoKSA9PT0gJ2JvdGgnKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMSBheC1ib3JkZXIgYXgtcm91bmRlZFwiPlxuICAgICAgICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LWJnLXByaW1hcnldPVwidmlld01vZGUoKSA9PT0gJ2NhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidmlld01vZGUoKSA9PT0gJ2NhbGVuZGFyJ1wiXG4gICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwidmlld01vZGUuc2V0KCdjYWxlbmRhcicpXCJcbiAgICAgICAgICAgICAgICBsb29rPVwiYmxhbmtcIlxuICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBDYWxlbmRhclxuICAgICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1wcmltYXJ5XT1cInZpZXdNb2RlKCkgPT09ICdsaXN0J1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidmlld01vZGUoKSA9PT0gJ2xpc3QnXCJcbiAgICAgICAgICAgICAgICAob25DbGljayk9XCJ2aWV3TW9kZS5zZXQoJ2xpc3QnKVwiXG4gICAgICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgTGlzdFxuICAgICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1wcmltYXJ5XT1cInZpZXdNb2RlKCkgPT09ICdzcGxpdCdcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC10ZXh0LXdoaXRlXT1cInZpZXdNb2RlKCkgPT09ICdzcGxpdCdcIlxuICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cInZpZXdNb2RlLnNldCgnc3BsaXQnKVwiXG4gICAgICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgU3BsaXRcbiAgICAgICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgIDwhLS0gRGF0ZSBSYW5nZSBDb250cm9sbGVyIC0tPlxuICAgICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwic2V0RGF0ZVJhbmdlKCd0b2RheScpXCIgbG9vaz1cIm91dGxpbmVcIiBzaXplPVwic21cIj5Ub2RheTwvYXgtYnV0dG9uPlxuICAgICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwic2V0RGF0ZVJhbmdlKCd3ZWVrJylcIiBsb29rPVwib3V0bGluZVwiIHNpemU9XCJzbVwiPldlZWs8L2F4LWJ1dHRvbj5cbiAgICAgICAgICA8YXgtYnV0dG9uIChvbkNsaWNrKT1cInNldERhdGVSYW5nZSgnbW9udGgnKVwiIGxvb2s9XCJvdXRsaW5lXCIgc2l6ZT1cInNtXCI+TW9udGg8L2F4LWJ1dHRvbj5cbiAgICAgICAgICA8YXgtZGF0ZXRpbWUtYm94XG4gICAgICAgICAgICBjbGFzcz1cImF4LXctNDBcIlxuICAgICAgICAgICAgW25nTW9kZWxdPVwiZGF0ZUZyb20oKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJkYXRlRnJvbS5zZXQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbZm9ybWF0XT1cIid5eXl5LU1NLWRkJ1wiXG4gICAgICAgICAgICBsb29rPVwib3V0bGluZVwiXG4gICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgID48L2F4LWRhdGV0aW1lLWJveD5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LXRleHQtbXV0ZWRcIj4tPC9zcGFuPlxuICAgICAgICAgIDxheC1kYXRldGltZS1ib3hcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtdy00MFwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJkYXRlVG8oKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJkYXRlVG8uc2V0KCRldmVudClcIlxuICAgICAgICAgICAgW2Zvcm1hdF09XCIneXl5eS1NTS1kZCdcIlxuICAgICAgICAgICAgbG9vaz1cIm91dGxpbmVcIlxuICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICA+PC9heC1kYXRldGltZS1ib3g+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgIDwhLS0gRmlsdGVycyAtLT5cbiAgICAgICAgICA8YXgtY2hlY2stYm94IFtuZ01vZGVsXT1cInNob3dSZXNlcnZhdGlvbnMoKVwiIChuZ01vZGVsQ2hhbmdlKT1cInNob3dSZXNlcnZhdGlvbnMuc2V0KCRldmVudClcIj5cbiAgICAgICAgICAgIDxheC1sYWJlbD5SZXNlcnZhdGlvbnM8L2F4LWxhYmVsPlxuICAgICAgICAgIDwvYXgtY2hlY2stYm94PlxuICAgICAgICAgIDxheC1jaGVjay1ib3ggW25nTW9kZWxdPVwic2hvd0hvbGRzKClcIiAobmdNb2RlbENoYW5nZSk9XCJzaG93SG9sZHMuc2V0KCRldmVudClcIj5cbiAgICAgICAgICAgIDxheC1sYWJlbD5Ib2xkczwvYXgtbGFiZWw+XG4gICAgICAgICAgPC9heC1jaGVjay1ib3g+XG4gICAgICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtdy00OFwiXG4gICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJzdGF0dXNEYXRhU291cmNlKClcIlxuICAgICAgICAgICAgW25nTW9kZWxdPVwic2VsZWN0ZWRTdGF0dXNJZHMoKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RlZFN0YXR1c0lkcy5zZXQoJGV2ZW50KVwiXG4gICAgICAgICAgICB2YWx1ZUZpZWxkPVwiaWRcIlxuICAgICAgICAgICAgdGV4dEZpZWxkPVwidGl0bGVcIlxuICAgICAgICAgICAgW211bHRpcGxlXT1cInRydWVcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJGaWx0ZXIgYnkgU3RhdHVzXCJcbiAgICAgICAgICAgIGxvb2s9XCJvdXRsaW5lXCJcbiAgICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgPjwvYXgtc2VsZWN0LWJveD5cblxuICAgICAgICAgIDwhLS0gQWN0aW9ucyAtLT5cbiAgICAgICAgICBAaWYgKCFyZWFkb25seSgpKSB7XG4gICAgICAgICAgICA8YXgtYnV0dG9uIChvbkNsaWNrKT1cIm9wZW5DcmVhdGVSZXNlcnZhdGlvbk1vZGFsKClcIiBsb29rPVwicHJpbWFyeVwiIHNpemU9XCJzbVwiPiArIE5ldyBSZXNlcnZhdGlvbiA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgIEBpZiAoYWxsb3dIb2xkKCkpIHtcbiAgICAgICAgICAgICAgPGF4LWJ1dHRvbiAob25DbGljayk9XCJvcGVuQ3JlYXRlSG9sZE1vZGFsKClcIiBsb29rPVwib3V0bGluZVwiIHNpemU9XCJzbVwiPisgTmV3IEhvbGQ8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gQm9keSAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtb3ZlcmZsb3ctYXV0byBheC1wLTRcIj5cbiAgICAgICAgQGlmICh2aWV3TW9kZSgpID09PSAnY2FsZW5kYXInIHx8IHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItdmlldyBheC1tYi00XCI+XG4gICAgICAgICAgICBAaWYgKHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5DYWxlbmRhcjwvaDM+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8IS0tIFRpbWVsaW5lIFZpZXcgLS0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmUtdmlld1wiPlxuICAgICAgICAgICAgICBAZm9yIChkYXkgb2YgdGltZWxpbmVEYXlzKCk7IHRyYWNrIGRheS5kYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItYiBheC1wYi0yIGF4LW1iLTJcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfCBkYXRlOiAnRUVFRSwgTU1NTSBkLCB5JyB9fVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMVwiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChyZXNlcnZhdGlvbiBvZiBkYXkucmVzZXJ2YXRpb25zOyB0cmFjayByZXNlcnZhdGlvbi5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXgtcC0yIGF4LXJvdW5kZWQgYXgtYm9yZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXItbGVmdC1jb2xvcl09XCJyZXNlcnZhdGlvbi5zdGF0dXM/LmNvbG9yIHx8ICcjY2NjJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyLWxlZnQtd2lkdGhdPVwiJzRweCdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXgtcHgtMiBheC1weS0xIGF4LXJvdW5kZWQgYXgtdGV4dC14cyBheC1mb250LXNlbWlib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctc3VjY2Vzc109XCJyZXNlcnZhdGlvbi5raW5kID09PSAncmVzZXJ2YXRpb24nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctZGFuZ2VyXT1cInJlc2VydmF0aW9uLmtpbmQgPT09ICdob2xkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtd2hpdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByZXNlcnZhdGlvbi5raW5kIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF4LXB4LTIgYXgtcHktMSBheC1yb3VuZGVkIGF4LXRleHQteHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInJlc2VydmF0aW9uLnN0YXR1cz8uY29sb3IgfHwgJyNjY2MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiJ3doaXRlJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByZXNlcnZhdGlvbi5zdGF0dXM/LnRpdGxlIHx8ICdVbmtub3duJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC1zbSBheC10ZXh0LW11dGVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcmVzZXJ2YXRpb24uc3RhcnREYXRlIHwgZGF0ZTogJ3Nob3J0VGltZScgfX0gLVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJlc2VydmF0aW9uLmVuZERhdGUgfCBkYXRlOiAnc2hvcnRUaW1lJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAocmVzZXJ2YXRpb24ubm90ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1zbSBheC1tdC0xIGF4LXRleHQtbXV0ZWRcIj57eyByZXNlcnZhdGlvbi5ub3RlIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChkYXkucmVzZXJ2YXRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtIGF4LXRleHQtbXV0ZWQgYXgtcC0yXCI+Tm8gcmVzZXJ2YXRpb25zPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAodmlld01vZGUoKSA9PT0gJ2xpc3QnIHx8IHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdC12aWV3XCI+XG4gICAgICAgICAgICBAaWYgKHZpZXdNb2RlKCkgPT09ICdzcGxpdCcpIHtcbiAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LXNlbWlib2xkIGF4LW1iLTJcIj5MaXN0PC9oMz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxheC1kYXRhLXRhYmxlIFtkYXRhU291cmNlXT1cInRhYmxlRGF0YVNvdXJjZSgpXCIgW3Nob3dGb290ZXJdPVwiZmFsc2VcIiBbcGFnaW5nXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJraW5kXCIgW3dpZHRoXT1cIicxMDBweCdcIiBjYXB0aW9uPVwiS2luZFwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJzdGFydERhdGVcIiBbd2lkdGhdPVwiJzE1MHB4J1wiIGNhcHRpb249XCJTdGFydFwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJlbmREYXRlXCIgW3dpZHRoXT1cIicxNTBweCdcIiBjYXB0aW9uPVwiRW5kXCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cInN0YXR1c1RpdGxlXCIgW3dpZHRoXT1cIicxMjBweCdcIiBjYXB0aW9uPVwiU3RhdHVzXCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cInJlcXVlc3RlZEJ5TmFtZVwiIFt3aWR0aF09XCInMTUwcHgnXCIgY2FwdGlvbj1cIlJlcXVlc3RlZCBCeVwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC10ZXh0LWNvbHVtbiBkYXRhRmllbGQ9XCJhcHByb3ZlZEJ5TmFtZVwiIFt3aWR0aF09XCInMTUwcHgnXCIgY2FwdGlvbj1cIkFwcHJvdmVkIEJ5XCI+PC9heC10ZXh0LWNvbHVtbj5cbiAgICAgICAgICAgICAgPGF4LXRleHQtY29sdW1uIGRhdGFGaWVsZD1cIm5vdGVcIiBjYXB0aW9uPVwiTm90ZVwiPjwvYXgtdGV4dC1jb2x1bW4+XG4gICAgICAgICAgICAgIDxheC1jb21tYW5kLWNvbHVtblxuICAgICAgICAgICAgICAgIGZpeGVkPVwiZW5kXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiJzIwMHB4J1wiXG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cImdldENvbW1hbmRJdGVtcygpXCJcbiAgICAgICAgICAgICAgICAob25JdGVtQ2xpY2spPVwiaGFuZGxlQ29tbWFuZENsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICA+PC9heC1jb21tYW5kLWNvbHVtbj5cbiAgICAgICAgICAgIDwvYXgtZGF0YS10YWJsZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIC50aW1lbGluZS12aWV3IHtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxhbnk+IHtcbiAgLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlcyAmIERlcGVuZGVuY2llcyAgIC0tLS1cblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc2VydmF0aW9uU2VydmljZSA9IGluamVjdChBWFBSZXNlcnZhdGlvblNlcnZpY2UpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgQ29tcHV0ZWQgUHJvcGVydGllcyBmcm9tIE9wdGlvbnMgICAtLS0tXG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlc291cmNlRW50aXR5SWQgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNvdXJjZUVudGl0eUlkIHx8ICcnO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVzb3VyY2VJZCA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgY29uc3QgcmVzb3VyY2VJZE9wdGlvbiA9IG9wdHM/LnJlc291cmNlSWQ7XG4gICAgaWYgKHR5cGVvZiByZXNvdXJjZUlkT3B0aW9uID09PSAnc3RyaW5nJyAmJiByZXNvdXJjZUlkT3B0aW9uLmluY2x1ZGVzKCd7eycpKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb250ZXh0SWQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmdldFZhbHVlKHRoaXMuZnVsbFBhdGgoKT8uc3BsaXQoJy4nKS5zbGljZSgwLCAtMSkuam9pbignLicpICsgJy5pZCcpO1xuICAgICAgICBpZiAoY29udGV4dElkKSByZXR1cm4gY29udGV4dElkO1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZS5nZXRWYWx1ZSgnaWQnKSB8fCAnJztcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXNvdXJjZUlkT3B0aW9uIHx8IHRoaXMuY29udGV4dFNlcnZpY2UuZ2V0VmFsdWUoJ2lkJykgfHwgJyc7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByZXNvdXJjZVJlZiA9IGNvbXB1dGVkPHsgdGl0bGU/OiBzdHJpbmc7IGNvZGU/OiBzdHJpbmcgfSB8IHVuZGVmaW5lZD4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgcmV0dXJuIG9wdHM/LnJlc291cmNlUmVmO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVzZXJ2YXRpb25UeXBlSWQgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNlcnZhdGlvblR5cGVJZDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlc2VydmF0aW9uVHlwZUNvZGUgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5yZXNlcnZhdGlvblR5cGVDb2RlO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdENsYXNzSWQgPSBjb21wdXRlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5kZWZhdWx0Q2xhc3NJZDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc3BsYXlNb2RlID0gY29tcHV0ZWQ8J2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdib3RoJz4oKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLm9wdGlvbnMoKSBhcyBhbnk7XG4gICAgcmV0dXJuIG9wdHM/Lm1vZGUgfHwgJ2JvdGgnO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVhZG9ubHkgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMub3B0aW9ucygpIGFzIGFueTtcbiAgICByZXR1cm4gb3B0cz8ucmVhZG9ubHkgfHwgZmFsc2U7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBkYXRlUmFuZ2VEYXlzID0gY29tcHV0ZWQ8bnVtYmVyPigoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMub3B0aW9ucygpIGFzIGFueTtcbiAgICByZXR1cm4gb3B0cz8uZGF0ZVJhbmdlRGF5cyB8fCAzMDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFsbG93SG9sZCA9IGNvbXB1dGVkPGJvb2xlYW4gfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5vcHRpb25zKCkgYXMgYW55O1xuICAgIHJldHVybiBvcHRzPy5hbGxvd0hvbGQ7XG4gIH0pO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU3RhdGUgICAtLS0tXG5cbiAgcmVhZG9ubHkgdmlld01vZGUgPSBzaWduYWw8J2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdzcGxpdCc+KCdzcGxpdCcpO1xuICByZWFkb25seSBzZWxlY3RlZENsYXNzSWQgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHJlYWRvbmx5IGRhdGVGcm9tID0gc2lnbmFsPERhdGU+KG5ldyBEYXRlKCkpO1xuICByZWFkb25seSBkYXRlVG8gPSBzaWduYWw8RGF0ZT4obmV3IERhdGUoKSk7XG4gIHJlYWRvbmx5IHNob3dSZXNlcnZhdGlvbnMgPSBzaWduYWw8Ym9vbGVhbj4odHJ1ZSk7XG4gIHJlYWRvbmx5IHNob3dIb2xkcyA9IHNpZ25hbDxib29sZWFuPih0cnVlKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRTdGF0dXNJZHMgPSBzaWduYWw8c3RyaW5nW10+KFtdKTtcblxuICByZWFkb25seSByZXNlcnZhdGlvbnMgPSBzaWduYWw8Tm9ybWFsaXplZFJlc2VydmF0aW9uW10+KFtdKTtcbiAgcmVhZG9ubHkgYXZhaWxhYmxlQ2xhc3NlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSBhdmFpbGFibGVTdGF0dXNlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSB0cmFuc2l0aW9ucyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuICByZWFkb25seSBwb2xpY3kgPSBzaWduYWw8eyBjb25mbGljdFBvbGljeT86ICdzdHJpY3QnIHwgJ3NvZnQnOyBhbGxvd0hvbGQ/OiBib29sZWFuOyByZXF1aXJlc0FwcHJvdmFsPzogYm9vbGVhbiB9Pih7fSk7XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBDb21wdXRlZCAgIC0tLS1cblxuICByZWFkb25seSBmaWx0ZXJlZFJlc2VydmF0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBsZXQgZmlsdGVyZWQgPSB0aGlzLnJlc2VydmF0aW9ucygpO1xuXG4gICAgaWYgKCF0aGlzLnNob3dSZXNlcnZhdGlvbnMoKSkge1xuICAgICAgZmlsdGVyZWQgPSBmaWx0ZXJlZC5maWx0ZXIoKHIpID0+IHIua2luZCAhPT0gJ3Jlc2VydmF0aW9uJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5zaG93SG9sZHMoKSkge1xuICAgICAgZmlsdGVyZWQgPSBmaWx0ZXJlZC5maWx0ZXIoKHIpID0+IHIua2luZCAhPT0gJ2hvbGQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdGF0dXNJZHMgPSB0aGlzLnNlbGVjdGVkU3RhdHVzSWRzKCk7XG4gICAgaWYgKHN0YXR1c0lkcy5sZW5ndGggPiAwKSB7XG4gICAgICBmaWx0ZXJlZCA9IGZpbHRlcmVkLmZpbHRlcigocikgPT4gc3RhdHVzSWRzLmluY2x1ZGVzKHIuc3RhdHVzSWQpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmlsdGVyZWQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGNsYXNzRGF0YVNvdXJjZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hdmFpbGFibGVDbGFzc2VzKCkubWFwKChjKSA9PiAoeyBpZDogYy5pZCwgdGl0bGU6IGMudGl0bGUgfSkpO1xuICB9KTtcblxuICByZWFkb25seSBzdGF0dXNEYXRhU291cmNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmF2YWlsYWJsZVN0YXR1c2VzKCkubWFwKChzKSA9PiAoeyBpZDogcy5pZCwgdGl0bGU6IHMudGl0bGUsIGNvbG9yOiBzLmNvbG9yIH0pKTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdGFibGVEYXRhU291cmNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5maWx0ZXJlZFJlc2VydmF0aW9ucygpLm1hcCgocikgPT4gKHtcbiAgICAgIC4uLnIsXG4gICAgICBzdGFydERhdGU6IHIuc3RhcnREYXRlLnRvSVNPU3RyaW5nKCksXG4gICAgICBlbmREYXRlOiByLmVuZERhdGUudG9JU09TdHJpbmcoKSxcbiAgICAgIHN0YXR1c1RpdGxlOiByLnN0YXR1cz8udGl0bGUgfHwgJ1Vua25vd24nLFxuICAgICAgcmVxdWVzdGVkQnlOYW1lOiByLnJlcXVlc3RlZEJ5Py5kaXNwbGF5TmFtZSB8fCByLnJlcXVlc3RlZEJ5Py5uYW1lIHx8ICctJyxcbiAgICAgIGFwcHJvdmVkQnlOYW1lOiByLmFwcHJvdmVkQnk/LmRpc3BsYXlOYW1lIHx8IHIuYXBwcm92ZWRCeT8ubmFtZSB8fCAnLScsXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIG5ldyBBWERhdGFTb3VyY2Uoe1xuICAgICAgbG9hZDogYXN5bmMgKCkgPT4gKHtcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIHRvdGFsOiBpdGVtcy5sZW5ndGgsXG4gICAgICB9KSxcbiAgICAgIHBhZ2VTaXplOiBpdGVtcy5sZW5ndGggfHwgMSxcbiAgICAgIGtleTogJ2lkJyxcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdGltZWxpbmVEYXlzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHJlc2VydmF0aW9ucyA9IHRoaXMuZmlsdGVyZWRSZXNlcnZhdGlvbnMoKTtcbiAgICBjb25zdCBkYXlzID0gbmV3IE1hcDxzdHJpbmcsIE5vcm1hbGl6ZWRSZXNlcnZhdGlvbltdPigpO1xuXG4gICAgcmVzZXJ2YXRpb25zLmZvckVhY2goKHJlcykgPT4ge1xuICAgICAgY29uc3Qgc3RhcnQgPSBuZXcgRGF0ZShyZXMuc3RhcnREYXRlKTtcbiAgICAgIGNvbnN0IGVuZCA9IG5ldyBEYXRlKHJlcy5lbmREYXRlKTtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBuZXcgRGF0ZShzdGFydCk7XG5cbiAgICAgIHdoaWxlIChjdXJyZW50IDw9IGVuZCkge1xuICAgICAgICBjb25zdCBrZXkgPSBjdXJyZW50LnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXTtcbiAgICAgICAgaWYgKCFkYXlzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgZGF5cy5zZXQoa2V5LCBbXSk7XG4gICAgICAgIH1cbiAgICAgICAgZGF5cy5nZXQoa2V5KSEucHVzaChyZXMpO1xuICAgICAgICBjdXJyZW50LnNldERhdGUoY3VycmVudC5nZXREYXRlKCkgKyAxKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBBcnJheS5mcm9tKGRheXMuZW50cmllcygpKVxuICAgICAgLm1hcCgoW2RhdGVTdHIsIHJlc0xpc3RdKSA9PiAoe1xuICAgICAgICBkYXRlOiBuZXcgRGF0ZShkYXRlU3RyKSxcbiAgICAgICAgcmVzZXJ2YXRpb25zOiByZXNMaXN0LFxuICAgICAgfSkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5kYXRlLmdldFRpbWUoKSAtIGIuZGF0ZS5nZXRUaW1lKCkpO1xuICB9KTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIEVmZmVjdHMgICAtLS0tXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIC8vIEluaXRpYWxpemUgZGF0ZSByYW5nZVxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBkYXlzID0gdGhpcy5kYXRlUmFuZ2VEYXlzKCk7XG4gICAgdGhpcy5kYXRlRnJvbS5zZXQobmV3IERhdGUodG9kYXkuZ2V0VGltZSgpIC0gZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDApKTtcbiAgICB0aGlzLmRhdGVUby5zZXQobmV3IERhdGUodG9kYXkuZ2V0VGltZSgpICsgZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDApKTtcblxuICAgIC8vIFNldCB2aWV3IG1vZGUgYmFzZWQgb24gaW5wdXRcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgbW9kZSA9IHRoaXMuZGlzcGxheU1vZGUoKTtcbiAgICAgIGlmIChtb2RlID09PSAnY2FsZW5kYXInKSB7XG4gICAgICAgIHRoaXMudmlld01vZGUuc2V0KCdjYWxlbmRhcicpO1xuICAgICAgfSBlbHNlIGlmIChtb2RlID09PSAnbGlzdCcpIHtcbiAgICAgICAgdGhpcy52aWV3TW9kZS5zZXQoJ2xpc3QnKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFJlYWN0aXZlIGRhdGEgbG9hZGluZ1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCByZXNvdXJjZUlkID0gdGhpcy5yZXNvdXJjZUlkKCk7XG4gICAgICBjb25zdCByZXNvdXJjZUVudGl0eUlkID0gdGhpcy5yZXNvdXJjZUVudGl0eUlkKCk7XG4gICAgICBjb25zdCBjbGFzc0lkID0gdGhpcy5zZWxlY3RlZENsYXNzSWQoKTtcbiAgICAgIGNvbnN0IGZyb20gPSB0aGlzLmRhdGVGcm9tKCk7XG4gICAgICBjb25zdCB0byA9IHRoaXMuZGF0ZVRvKCk7XG5cbiAgICAgIGlmIChyZXNvdXJjZUlkICYmIHJlc291cmNlRW50aXR5SWQpIHtcbiAgICAgICAgdGhpcy5sb2FkRGF0YSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBNZXRob2RzICAgLS0tLVxuXG4gIGFzeW5jIGxvYWREYXRhKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFJlc29sdmUgcmVzZXJ2YXRpb24gdHlwZVxuICAgIGxldCB0eXBlSWQgPSB0aGlzLnJlc2VydmF0aW9uVHlwZUlkKCk7XG4gICAgaWYgKCF0eXBlSWQgJiYgdGhpcy5yZXNlcnZhdGlvblR5cGVDb2RlKCkpIHtcbiAgICAgIHR5cGVJZCA9IChhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5yZXNvbHZlUmVzZXJ2YXRpb25UeXBlKHRoaXMucmVzZXJ2YXRpb25UeXBlQ29kZSgpISkpIHx8IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAoIXR5cGVJZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIExvYWQgY2xhc3Nlc1xuICAgIGNvbnN0IGNsYXNzZXMgPSBhd2FpdCB0aGlzLnJlc2VydmF0aW9uU2VydmljZS5nZXRBdmFpbGFibGVDbGFzc2VzKHR5cGVJZCk7XG4gICAgdGhpcy5hdmFpbGFibGVDbGFzc2VzLnNldChjbGFzc2VzKTtcblxuICAgIC8vIEF1dG8tc2VsZWN0IGNsYXNzIGlmIG9ubHkgb25lXG4gICAgaWYgKGNsYXNzZXMubGVuZ3RoID09PSAxICYmICF0aGlzLnNlbGVjdGVkQ2xhc3NJZCgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkQ2xhc3NJZC5zZXQoY2xhc3Nlc1swXS5pZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmRlZmF1bHRDbGFzc0lkKCkgJiYgIXRoaXMuc2VsZWN0ZWRDbGFzc0lkKCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDbGFzc0lkLnNldCh0aGlzLmRlZmF1bHRDbGFzc0lkKCkhKTtcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc0lkID0gdGhpcy5zZWxlY3RlZENsYXNzSWQoKTtcbiAgICBjb25zdCByZXNvdXJjZUlkID0gdGhpcy5yZXNvdXJjZUlkKCk7XG4gICAgY29uc3QgcmVzb3VyY2VFbnRpdHlJZCA9IHRoaXMucmVzb3VyY2VFbnRpdHlJZCgpO1xuXG4gICAgaWYgKCFjbGFzc0lkIHx8ICFyZXNvdXJjZUlkIHx8ICFyZXNvdXJjZUVudGl0eUlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gTG9hZCBjb250ZXh0IChzdGF0dXNlcywgdHJhbnNpdGlvbnMsIHBvbGljeSlcbiAgICBjb25zdCBjb250ZXh0ID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UuZ2V0V2lkZ2V0Q29udGV4dCh7XG4gICAgICByZXNvdXJjZUVudGl0eUlkLFxuICAgICAgcmVzb3VyY2VJZCxcbiAgICAgIHJlc2VydmF0aW9uVHlwZUlkOiB0eXBlSWQsXG4gICAgICBjbGFzc0lkLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hdmFpbGFibGVTdGF0dXNlcy5zZXQoY29udGV4dC5zdGF0dXNlcyk7XG4gICAgdGhpcy50cmFuc2l0aW9ucy5zZXQoY29udGV4dC50cmFuc2l0aW9ucyk7XG4gICAgdGhpcy5wb2xpY3kuc2V0KGNvbnRleHQucG9saWN5KTtcblxuICAgIC8vIExvYWQgcmVzZXJ2YXRpb25zXG4gICAgY29uc3QgcmVzZXJ2YXRpb25zID0gYXdhaXQgdGhpcy5yZXNlcnZhdGlvblNlcnZpY2UuZ2V0UmVzZXJ2YXRpb25zKFxuICAgICAgcmVzb3VyY2VFbnRpdHlJZCxcbiAgICAgIHJlc291cmNlSWQsXG4gICAgICB0aGlzLmRhdGVGcm9tKCksXG4gICAgICB0aGlzLmRhdGVUbygpLFxuICAgICk7XG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IHJlc2VydmF0aW9ucy5tYXAobm9ybWFsaXplUmVzZXJ2YXRpb24pO1xuXG4gICAgLy8gRW5yaWNoIHdpdGggc3RhdHVzIGRhdGFcbiAgICBjb25zdCBlbnJpY2hlZCA9IG5vcm1hbGl6ZWQubWFwKChyZXMpID0+ICh7XG4gICAgICAuLi5yZXMsXG4gICAgICBzdGF0dXM6IHRoaXMuYXZhaWxhYmxlU3RhdHVzZXMoKS5maW5kKChzKSA9PiBzLmlkID09PSByZXMuc3RhdHVzSWQpLFxuICAgIH0pKTtcblxuICAgIHRoaXMucmVzZXJ2YXRpb25zLnNldChlbnJpY2hlZCk7XG4gIH1cblxuICBzZXREYXRlUmFuZ2UocmFuZ2U6ICd0b2RheScgfCAnd2VlaycgfCAnbW9udGgnKTogdm9pZCB7XG4gICAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICAgIGxldCBmcm9tOiBEYXRlO1xuICAgIGxldCB0bzogRGF0ZTtcblxuICAgIHN3aXRjaCAocmFuZ2UpIHtcbiAgICAgIGNhc2UgJ3RvZGF5JzpcbiAgICAgICAgZnJvbSA9IG5ldyBEYXRlKHRvZGF5KTtcbiAgICAgICAgdG8gPSBuZXcgRGF0ZSh0b2RheSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnd2Vlayc6XG4gICAgICAgIGZyb20gPSBuZXcgRGF0ZSh0b2RheSk7XG4gICAgICAgIGZyb20uc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSB0b2RheS5nZXREYXkoKSk7XG4gICAgICAgIHRvID0gbmV3IERhdGUoZnJvbSk7XG4gICAgICAgIHRvLnNldERhdGUoZnJvbS5nZXREYXRlKCkgKyA2KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdtb250aCc6XG4gICAgICAgIGZyb20gPSBuZXcgRGF0ZSh0b2RheS5nZXRGdWxsWWVhcigpLCB0b2RheS5nZXRNb250aCgpLCAxKTtcbiAgICAgICAgdG8gPSBuZXcgRGF0ZSh0b2RheS5nZXRGdWxsWWVhcigpLCB0b2RheS5nZXRNb250aCgpICsgMSwgMCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHRoaXMuZGF0ZUZyb20uc2V0KGZyb20pO1xuICAgIHRoaXMuZGF0ZVRvLnNldCh0byk7XG4gIH1cblxuICBnZXRBdmFpbGFibGVUcmFuc2l0aW9ucyhyZXNlcnZhdGlvbjogTm9ybWFsaXplZFJlc2VydmF0aW9uKTogYW55W10ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zaXRpb25zKCkuZmlsdGVyKCh0KSA9PiB0LmZyb21TdGF0dXNJZCA9PT0gcmVzZXJ2YXRpb24uc3RhdHVzSWQgJiYgdC5pc0FjdGl2ZSk7XG4gIH1cblxuICBvcGVuQ3JlYXRlUmVzZXJ2YXRpb25Nb2RhbCgpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZygnT3BlbiBjcmVhdGUgcmVzZXJ2YXRpb24gbW9kYWwnKTtcbiAgfVxuXG4gIG9wZW5DcmVhdGVIb2xkTW9kYWwoKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ09wZW4gY3JlYXRlIGhvbGQgbW9kYWwnKTtcbiAgfVxuXG4gIG9wZW5SZXNlcnZhdGlvbkRldGFpbHMocmVzZXJ2YXRpb25JZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ09wZW4gcmVzZXJ2YXRpb24gZGV0YWlsczonLCByZXNlcnZhdGlvbklkKTtcbiAgfVxuXG4gIG9wZW5UcmFuc2l0aW9uTW9kYWwocmVzZXJ2YXRpb25JZDogc3RyaW5nLCB0cmFuc2l0aW9uSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKCdPcGVuIHRyYW5zaXRpb24gbW9kYWw6JywgcmVzZXJ2YXRpb25JZCwgdHJhbnNpdGlvbklkKTtcbiAgfVxuXG4gIGdldENvbW1hbmRJdGVtcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgeyBuYW1lOiAndmlldycsIHRleHQ6ICdWaWV3JywgaWNvbjogJ2ZhLWxpZ2h0IGZhLWV5ZScgfSxcbiAgICAgIC8vIFRyYW5zaXRpb25zIHdpbGwgYmUgYWRkZWQgZHluYW1pY2FsbHkgcGVyIHJvd1xuICAgIF07XG4gIH1cblxuICBoYW5kbGVDb21tYW5kQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW0gPSBldmVudC5pdGVtIHx8IGV2ZW50O1xuICAgIGNvbnN0IHJvdyA9IGV2ZW50LnJvdyB8fCBldmVudC5kYXRhSXRlbSB8fCBldmVudC5kYXRhO1xuICAgIGlmIChpdGVtLm5hbWUgPT09ICd2aWV3Jykge1xuICAgICAgdGhpcy5vcGVuUmVzZXJ2YXRpb25EZXRhaWxzKHJvdy5pZCk7XG4gICAgfSBlbHNlIGlmIChpdGVtLm5hbWU/LnN0YXJ0c1dpdGgoJ3RyYW5zaXRpb24tJykpIHtcbiAgICAgIGNvbnN0IHRyYW5zaXRpb25JZCA9IGl0ZW0ubmFtZS5yZXBsYWNlKCd0cmFuc2l0aW9uLScsICcnKTtcbiAgICAgIHRoaXMub3BlblRyYW5zaXRpb25Nb2RhbChyb3cuaWQsIHRyYW5zaXRpb25JZCk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXP_WIDGETS_ADVANCE_CATEGORY, AXPWidgetGroupEnum, createBooleanProperty, createNumberProperty, createStringProperty, } from '@acorex/platform/layout/widget-core';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_NAME_PROPERTY, } from '@acorex/platform/layout/widgets';\n//#endregion\n//#region ---- Widget Config ----\nexport const AXPReservationPanelWidget = {\n name: 'reservation-panel-widget',\n title: 'Reservation Panel',\n description: 'Displays and manages reservations for a resource',\n icon: 'fa-light fa-calendar-check',\n categories: AXP_WIDGETS_ADVANCE_CATEGORY,\n groups: [AXPWidgetGroupEnum.EntityWidget],\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n createStringProperty({\n name: 'resourceEntityId',\n title: 'Resource Entity ID',\n path: 'options.resourceEntityId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'resourceIdPath',\n title: 'Resource ID Path',\n path: 'options.resourceId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'id',\n }),\n createStringProperty({\n name: 'reservationTypeCode',\n title: 'Reservation Type Code',\n path: 'options.reservationTypeCode',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'defaultClassId',\n title: 'Default Class ID',\n path: 'options.defaultClassId',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createStringProperty({\n name: 'mode',\n title: 'Display Mode',\n path: 'options.mode',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'both',\n }),\n createBooleanProperty({\n name: 'readonly',\n title: 'Readonly',\n path: 'options.readonly',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: false,\n }),\n createBooleanProperty({\n name: 'allowHold',\n title: 'Allow Hold',\n path: 'options.allowHold',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n }),\n createNumberProperty({\n name: 'dateRangeDays',\n title: 'Date Range Days',\n path: 'options.dateRangeDays',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 30,\n }),\n ],\n components: {\n view: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n edit: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n designer: {\n component: () => import('./reservation-panel-widget.component').then((c) => c.AXPReservationPanelWidgetComponent),\n },\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFDTCw0QkFBNEIsRUFFNUIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsb0JBQW9CLEdBQ3JCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUNMLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLGlCQUFpQixHQUNsQixNQUFNLGlDQUFpQyxDQUFDO0FBRXpDLFlBQVk7QUFFWixxQ0FBcUM7QUFFckMsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3hELElBQUksRUFBRSwwQkFBMEI7SUFDaEMsS0FBSyxFQUFFLG1CQUFtQjtJQUMxQixXQUFXLEVBQUUsa0RBQWtEO0lBQy9ELElBQUksRUFBRSw0QkFBNEI7SUFDbEMsVUFBVSxFQUFFLDRCQUE0QjtJQUN4QyxNQUFNLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7SUFDekMsSUFBSSxFQUFFLFFBQVE7SUFDZCxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtRQUNyQixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLEtBQUssRUFBRSxvQkFBb0I7WUFDM0IsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsSUFBSSxFQUFFLG9CQUFvQjtZQUMxQixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUscUJBQXFCO1lBQzNCLEtBQUssRUFBRSx1QkFBdUI7WUFDOUIsSUFBSSxFQUFFLDZCQUE2QjtZQUNuQyxLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsSUFBSSxFQUFFLHdCQUF3QjtZQUM5QixLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxjQUFjO1lBQ3JCLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUssRUFBRSwyQkFBMkI7WUFDbEMsWUFBWSxFQUFFLE1BQU07U0FDckIsQ0FBQztRQUNGLHFCQUFxQixDQUFDO1lBQ3BCLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUssRUFBRSxVQUFVO1lBQ2pCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsS0FBSyxFQUFFLDJCQUEyQjtZQUNsQyxZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDO1FBQ0YscUJBQXFCLENBQUM7WUFDcEIsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLFlBQVk7WUFDbkIsSUFBSSxFQUFFLG1CQUFtQjtZQUN6QixLQUFLLEVBQUUsMkJBQTJCO1NBQ25DLENBQUM7UUFDRixvQkFBb0IsQ0FBQztZQUNuQixJQUFJLEVBQUUsZUFBZTtZQUNyQixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLElBQUksRUFBRSx1QkFBdUI7WUFDN0IsS0FBSyxFQUFFLDJCQUEyQjtZQUNsQyxZQUFZLEVBQUUsRUFBRTtTQUNqQixDQUFDO0tBQ0g7SUFDRCxVQUFVLEVBQUU7UUFDVixJQUFJLEVBQUU7WUFDSixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7UUFDRCxJQUFJLEVBQUU7WUFDSixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7UUFDRCxRQUFRLEVBQUU7WUFDUixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLENBQUM7U0FDbEg7S0FDRjtDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQge1xuICBBWFBfV0lER0VUU19BRFZBTkNFX0NBVEVHT1JZLFxuICBBWFBXaWRnZXRDb25maWcsXG4gIEFYUFdpZGdldEdyb3VwRW51bSxcbiAgY3JlYXRlQm9vbGVhblByb3BlcnR5LFxuICBjcmVhdGVOdW1iZXJQcm9wZXJ0eSxcbiAgY3JlYXRlU3RyaW5nUHJvcGVydHksXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7XG4gIEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSxcbiAgQVhQX0RJU0FCTEVEX1BST1BFUlRZLFxuICBBWFBfTkFNRV9QUk9QRVJUWSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvd2lkZ2V0cyc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIFdpZGdldCBDb25maWcgICAtLS0tXG5cbmV4cG9ydCBjb25zdCBBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0OiBBWFBXaWRnZXRDb25maWcgPSB7XG4gIG5hbWU6ICdyZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQnLFxuICB0aXRsZTogJ1Jlc2VydmF0aW9uIFBhbmVsJyxcbiAgZGVzY3JpcHRpb246ICdEaXNwbGF5cyBhbmQgbWFuYWdlcyByZXNlcnZhdGlvbnMgZm9yIGEgcmVzb3VyY2UnLFxuICBpY29uOiAnZmEtbGlnaHQgZmEtY2FsZW5kYXItY2hlY2snLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19BRFZBTkNFX0NBVEVHT1JZLFxuICBncm91cHM6IFtBWFBXaWRnZXRHcm91cEVudW0uRW50aXR5V2lkZ2V0XSxcbiAgdHlwZTogJ2VkaXRvcicsXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgICBjcmVhdGVTdHJpbmdQcm9wZXJ0eSh7XG4gICAgICBuYW1lOiAncmVzb3VyY2VFbnRpdHlJZCcsXG4gICAgICB0aXRsZTogJ1Jlc291cmNlIEVudGl0eSBJRCcsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5yZXNvdXJjZUVudGl0eUlkJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgfSksXG4gICAgY3JlYXRlU3RyaW5nUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3Jlc291cmNlSWRQYXRoJyxcbiAgICAgIHRpdGxlOiAnUmVzb3VyY2UgSUQgUGF0aCcsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5yZXNvdXJjZUlkJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBkZWZhdWx0VmFsdWU6ICdpZCcsXG4gICAgfSksXG4gICAgY3JlYXRlU3RyaW5nUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3Jlc2VydmF0aW9uVHlwZUNvZGUnLFxuICAgICAgdGl0bGU6ICdSZXNlcnZhdGlvbiBUeXBlIENvZGUnLFxuICAgICAgcGF0aDogJ29wdGlvbnMucmVzZXJ2YXRpb25UeXBlQ29kZScsXG4gICAgICBncm91cDogQVhQX0JFSEFWSU9SX1BST1BFUlRZX0dST1VQLFxuICAgIH0pLFxuICAgIGNyZWF0ZVN0cmluZ1Byb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdkZWZhdWx0Q2xhc3NJZCcsXG4gICAgICB0aXRsZTogJ0RlZmF1bHQgQ2xhc3MgSUQnLFxuICAgICAgcGF0aDogJ29wdGlvbnMuZGVmYXVsdENsYXNzSWQnLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICB9KSxcbiAgICBjcmVhdGVTdHJpbmdQcm9wZXJ0eSh7XG4gICAgICBuYW1lOiAnbW9kZScsXG4gICAgICB0aXRsZTogJ0Rpc3BsYXkgTW9kZScsXG4gICAgICBwYXRoOiAnb3B0aW9ucy5tb2RlJyxcbiAgICAgIGdyb3VwOiBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG4gICAgICBkZWZhdWx0VmFsdWU6ICdib3RoJyxcbiAgICB9KSxcbiAgICBjcmVhdGVCb29sZWFuUHJvcGVydHkoe1xuICAgICAgbmFtZTogJ3JlYWRvbmx5JyxcbiAgICAgIHRpdGxlOiAnUmVhZG9ubHknLFxuICAgICAgcGF0aDogJ29wdGlvbnMucmVhZG9ubHknLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgfSksXG4gICAgY3JlYXRlQm9vbGVhblByb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdhbGxvd0hvbGQnLFxuICAgICAgdGl0bGU6ICdBbGxvdyBIb2xkJyxcbiAgICAgIHBhdGg6ICdvcHRpb25zLmFsbG93SG9sZCcsXG4gICAgICBncm91cDogQVhQX0JFSEFWSU9SX1BST1BFUlRZX0dST1VQLFxuICAgIH0pLFxuICAgIGNyZWF0ZU51bWJlclByb3BlcnR5KHtcbiAgICAgIG5hbWU6ICdkYXRlUmFuZ2VEYXlzJyxcbiAgICAgIHRpdGxlOiAnRGF0ZSBSYW5nZSBEYXlzJyxcbiAgICAgIHBhdGg6ICdvcHRpb25zLmRhdGVSYW5nZURheXMnLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIGRlZmF1bHRWYWx1ZTogMzAsXG4gICAgfSksXG4gIF0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICB2aWV3OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9yZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQpLFxuICAgIH0sXG4gICAgZGVzaWduZXI6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3Jlc2VydmF0aW9uLXBhbmVsLXdpZGdldC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUFJlc2VydmF0aW9uUGFuZWxXaWRnZXRDb21wb25lbnQpLFxuICAgIH0sXG4gIH0sXG59O1xuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\n//#endregion\n//#region ---- Plugin ----\nexport const reservationPlugin = {\n name: 'reservation',\n order: 80,\n apply: (ctx, options) => {\n const groupId = options?.groupId ?? 'reservations';\n const title = options?.title ?? '@reservation-management:reservation-plugin.property.title';\n //#region ---- Ensure Reservations Group ----\n const groups = ctx.groups.list() ?? [];\n if (!groups.some((g) => g.id === groupId)) {\n ctx.groups.add({\n id: groupId,\n title: '@reservation-management:reservation-plugin.group.title',\n });\n }\n //#endregion\n //#region ---- Add Reservation Property ----\n const props = ctx.properties.list();\n if (!props.some((p) => p.name === 'reservations')) {\n ctx.properties.add({\n name: 'reservations',\n title,\n groupId,\n schema: {\n dataType: 'object',\n interface: {\n type: 'reservation-panel-widget',\n options: {\n resourceEntityId: `${ctx.entity.module}.${ctx.entity.name}`,\n resourceId: '{{ context.eval(\"id\") }}',\n resourceRef: {\n title: '{{ context.eval(\"title\") }}',\n code: '{{ context.eval(\"code\") }}',\n },\n reservationTypeId: options?.reservationTypeId,\n reservationTypeCode: options?.reservationTypeCode,\n defaultClassId: options?.defaultClassId,\n mode: options?.mode ?? 'both',\n readonly: options?.readonly ?? false,\n dateRangeDays: options?.dateRangeDays ?? 30,\n allowHold: options?.allowHold,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: {\n advance: { enabled: false },\n inline: { enabled: false },\n },\n },\n });\n }\n //#endregion\n //#region ---- Update Interface Layouts ----\n const ensureLayoutProperty = (layout) => {\n layout.sections = layout.sections ?? [];\n if (!layout.sections.some((s) => s.id === groupId)) {\n layout.sections.push({ id: groupId, order: 100 });\n }\n layout.properties = layout.properties ?? [];\n if (!layout.properties.some((p) => p.name === 'reservations')) {\n layout.properties.push({\n name: 'reservations',\n layout: {\n positions: { lg: { colSpan: 12, order: 100 } },\n },\n });\n }\n return layout;\n };\n ctx.interfaces.master.create.update((create) => ensureLayoutProperty((create ?? { sections: [], properties: [] })));\n ctx.interfaces.master.modify.update((modify) => ensureLayoutProperty((modify ?? { sections: [], properties: [] })));\n ctx.interfaces.master.single.update((single) => ensureLayoutProperty((single ?? { title: ctx.entity.title, sections: [], properties: [] })));\n //#endregion\n },\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24ucGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24ucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQXdEL0IsWUFBWTtBQUVaLDhCQUE4QjtBQUU5QixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBMEI7SUFDdEQsSUFBSSxFQUFFLGFBQWE7SUFDbkIsS0FBSyxFQUFFLEVBQUU7SUFDVCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBcUMsRUFBRSxFQUFFO1FBQ3BELE1BQU0sT0FBTyxHQUFHLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxDQUFDO1FBQ25ELE1BQU0sS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksMkRBQTJELENBQUM7UUFFNUYsaURBQWlEO1FBRWpELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDMUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7Z0JBQ2IsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsS0FBSyxFQUFFLHdEQUF3RDthQUNoRSxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsWUFBWTtRQUVaLGdEQUFnRDtRQUVoRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FB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TSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUM3QyxvQkFBb0IsQ0FBQyxDQUFDLE1BQU0sSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFvQyxDQUFDLENBQ3RHLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDN0Msb0JBQW9CLENBQ2xCLENBQUMsTUFBTSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFvQyxDQUN6RyxDQUNGLENBQUM7UUFFRixZQUFZO0lBQ2QsQ0FBQztDQUNGLENBQUM7QUFFRixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQge1xuICBBWFBFbnRpdHlNYXN0ZXJDcmVhdGVMYXlvdXRWaWV3LFxuICBBWFBFbnRpdHlNYXN0ZXJTaW5nbGVMYXlvdXRWaWV3LFxuICBBWFBFbnRpdHlNYXN0ZXJVcGRhdGVMYXlvdXRWaWV3LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlBY3Rpb25QbHVnaW4gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBQbHVnaW4gT3B0aW9ucyAgIC0tLS1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBSZXNlcnZhdGlvblBsdWdpbk9wdGlvbnMge1xuICAvKipcbiAgICogUmVzZXJ2YXRpb24gdHlwZSBJRCBvciBjb2RlXG4gICAqL1xuICByZXNlcnZhdGlvblR5cGVJZD86IHN0cmluZztcbiAgcmVzZXJ2YXRpb25UeXBlQ29kZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmYXVsdCByZXNlcnZhdGlvbiBjbGFzcyBJRFxuICAgKi9cbiAgZGVmYXVsdENsYXNzSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERpc3BsYXkgbW9kZTogJ2NhbGVuZGFyJywgJ2xpc3QnLCBvciAnYm90aCdcbiAgICovXG4gIG1vZGU/OiAnY2FsZW5kYXInIHwgJ2xpc3QnIHwgJ2JvdGgnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB3aWRnZXQgaXMgcmVhZG9ubHlcbiAgICovXG4gIHJlYWRvbmx5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGF0ZSByYW5nZSBpbiBkYXlzIChkZWZhdWx0OiAzMClcbiAgICovXG4gIGRhdGVSYW5nZURheXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEFsbG93IGhvbGQgY3JlYXRpb25cbiAgICovXG4gIGFsbG93SG9sZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGdyb3VwIElEIGZvciB0aGUgcHJvcGVydHlcbiAgICovXG4gIGdyb3VwSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHRpdGxlIGZvciB0aGUgcHJvcGVydHlcbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xufVxuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBQbHVnaW4gICAtLS0tXG5cbmV4cG9ydCBjb25zdCByZXNlcnZhdGlvblBsdWdpbjogQVhQRW50aXR5QWN0aW9uUGx1Z2luID0ge1xuICBuYW1lOiAncmVzZXJ2YXRpb24nLFxuICBvcmRlcjogODAsXG4gIGFwcGx5OiAoY3R4LCBvcHRpb25zPzogQVhQUmVzZXJ2YXRpb25QbHVnaW5PcHRpb25zKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBJZCA9IG9wdGlvbnM/Lmdyb3VwSWQgPz8gJ3Jlc2VydmF0aW9ucyc7XG4gICAgY29uc3QgdGl0bGUgPSBvcHRpb25zPy50aXRsZSA/PyAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tcGx1Z2luLnByb3BlcnR5LnRpdGxlJztcblxuICAgIC8vI3JlZ2lvbiAtLS0tICAgRW5zdXJlIFJlc2VydmF0aW9ucyBHcm91cCAgIC0tLS1cblxuICAgIGNvbnN0IGdyb3VwcyA9IGN0eC5ncm91cHMubGlzdCgpID8/IFtdO1xuICAgIGlmICghZ3JvdXBzLnNvbWUoKGcpID0+IGcuaWQgPT09IGdyb3VwSWQpKSB7XG4gICAgICBjdHguZ3JvdXBzLmFkZCh7XG4gICAgICAgIGlkOiBncm91cElkLFxuICAgICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OnJlc2VydmF0aW9uLXBsdWdpbi5ncm91cC50aXRsZScsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyNlbmRyZWdpb25cblxuICAgIC8vI3JlZ2lvbiAtLS0tICAgQWRkIFJlc2VydmF0aW9uIFByb3BlcnR5ICAgLS0tLVxuXG4gICAgY29uc3QgcHJvcHMgPSBjdHgucHJvcGVydGllcy5saXN0KCk7XG4gICAgaWYgKCFwcm9wcy5zb21lKChwKSA9PiBwLm5hbWUgPT09ICdyZXNlcnZhdGlvbnMnKSkge1xuICAgICAgY3R4LnByb3BlcnRpZXMuYWRkKHtcbiAgICAgICAgbmFtZTogJ3Jlc2VydmF0aW9ucycsXG4gICAgICAgIHRpdGxlLFxuICAgICAgICBncm91cElkLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiAncmVzZXJ2YXRpb24tcGFuZWwtd2lkZ2V0JyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgcmVzb3VyY2VFbnRpdHlJZDogYCR7Y3R4LmVudGl0eS5tb2R1bGV9LiR7Y3R4LmVudGl0eS5uYW1lfWAsXG4gICAgICAgICAgICAgIHJlc291cmNlSWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgIHJlc291cmNlUmVmOiB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICd7eyBjb250ZXh0LmV2YWwoXCJ0aXRsZVwiKSB9fScsXG4gICAgICAgICAgICAgICAgY29kZTogJ3t7IGNvbnRleHQuZXZhbChcImNvZGVcIikgfX0nLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICByZXNlcnZhdGlvblR5cGVJZDogb3B0aW9ucz8ucmVzZXJ2YXRpb25UeXBlSWQsXG4gICAgICAgICAgICAgIHJlc2VydmF0aW9uVHlwZUNvZGU6IG9wdGlvbnM/LnJlc2VydmF0aW9uVHlwZUNvZGUsXG4gICAgICAgICAgICAgIGRlZmF1bHRDbGFzc0lkOiBvcHRpb25zPy5kZWZhdWx0Q2xhc3NJZCxcbiAgICAgICAgICAgICAgbW9kZTogb3B0aW9ucz8ubW9kZSA/PyAnYm90aCcsXG4gICAgICAgICAgICAgIHJlYWRvbmx5OiBvcHRpb25zPy5yZWFkb25seSA/PyBmYWxzZSxcbiAgICAgICAgICAgICAgZGF0ZVJhbmdlRGF5czogb3B0aW9ucz8uZGF0ZVJhbmdlRGF5cyA/PyAzMCxcbiAgICAgICAgICAgICAgYWxsb3dIb2xkOiBvcHRpb25zPy5hbGxvd0hvbGQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgZmlsdGVyOiB7XG4gICAgICAgICAgICBhZHZhbmNlOiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHsgZW5hYmxlZDogZmFsc2UgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSBhcyBhbnkpO1xuICAgIH1cblxuICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgLy8jcmVnaW9uIC0tLS0gICBVcGRhdGUgSW50ZXJmYWNlIExheW91dHMgICAtLS0tXG5cbiAgICBjb25zdCBlbnN1cmVMYXlvdXRQcm9wZXJ0eSA9IDxcbiAgICAgIFQgZXh0ZW5kcyBBWFBFbnRpdHlNYXN0ZXJDcmVhdGVMYXlvdXRWaWV3IHwgQVhQRW50aXR5TWFzdGVyVXBkYXRlTGF5b3V0VmlldyB8IEFYUEVudGl0eU1hc3RlclNpbmdsZUxheW91dFZpZXcsXG4gICAgPihcbiAgICAgIGxheW91dDogVCxcbiAgICApOiBUID0+IHtcbiAgICAgIGxheW91dC5zZWN0aW9ucyA9IGxheW91dC5zZWN0aW9ucyA/PyBbXTtcbiAgICAgIGlmICghbGF5b3V0LnNlY3Rpb25zLnNvbWUoKHMpID0+IHMuaWQgPT09IGdyb3VwSWQpKSB7XG4gICAgICAgIGxheW91dC5zZWN0aW9ucy5wdXNoKHsgaWQ6IGdyb3VwSWQsIG9yZGVyOiAxMDAgfSk7XG4gICAgICB9XG5cbiAgICAgIGxheW91dC5wcm9wZXJ0aWVzID0gbGF5b3V0LnByb3BlcnRpZXMgPz8gW107XG4gICAgICBpZiAoIWxheW91dC5wcm9wZXJ0aWVzLnNvbWUoKHApID0+IHAubmFtZSA9PT0gJ3Jlc2VydmF0aW9ucycpKSB7XG4gICAgICAgIGxheW91dC5wcm9wZXJ0aWVzLnB1c2goe1xuICAgICAgICAgIG5hbWU6ICdyZXNlcnZhdGlvbnMnLFxuICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgcG9zaXRpb25zOiB7IGxnOiB7IGNvbFNwYW46IDEyLCBvcmRlcjogMTAwIH0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGxheW91dDtcbiAgICB9O1xuXG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLmNyZWF0ZS51cGRhdGUoKGNyZWF0ZSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KChjcmVhdGUgPz8geyBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH0pIGFzIEFYUEVudGl0eU1hc3RlckNyZWF0ZUxheW91dFZpZXcpLFxuICAgICk7XG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLm1vZGlmeS51cGRhdGUoKG1vZGlmeSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KChtb2RpZnkgPz8geyBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH0pIGFzIEFYUEVudGl0eU1hc3RlclVwZGF0ZUxheW91dFZpZXcpLFxuICAgICk7XG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLnNpbmdsZS51cGRhdGUoKHNpbmdsZSkgPT5cbiAgICAgIGVuc3VyZUxheW91dFByb3BlcnR5KFxuICAgICAgICAoc2luZ2xlID8/IHsgdGl0bGU6IGN0eC5lbnRpdHkudGl0bGUsIHNlY3Rpb25zOiBbXSwgcHJvcGVydGllczogW10gfSkgYXMgQVhQRW50aXR5TWFzdGVyU2luZ2xlTGF5b3V0VmlldyxcbiAgICAgICksXG4gICAgKTtcblxuICAgIC8vI2VuZHJlZ2lvblxuICB9LFxufTtcblxuLy8jZW5kcmVnaW9uXG4iXX0=","//#region ---- Imports ----\nimport { AXP_ENTITY_ACTION_PLUGIN } from '@acorex/platform/layout/entity';\nimport { AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { NgModule } from '@angular/core';\nimport { AXPReservationPanelWidget } from './reservation-panel-widget.config';\nimport { reservationPlugin } from './reservation.plugin';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/widget-core\";\n//#endregion\n//#region ---- Module ----\nexport class AXPReservationPluginModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, imports: [i1.AXPWidgetCoreModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, providers: [{ provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: reservationPlugin }], imports: [AXPWidgetCoreModule.forChild({\n widgets: [AXPReservationPanelWidget],\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationPluginModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPWidgetCoreModule.forChild({\n widgets: [AXPReservationPanelWidget],\n }),\n ],\n providers: [{ provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: reservationPlugin }],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tcGx1Z2luLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBsdWdpbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUV6RCxZQUFZO0FBRVosOEJBQThCO0FBVTlCLE1BQU0sT0FBTywwQkFBMEI7K0dBQTFCLDBCQUEwQjtnSEFBMUIsMEJBQTBCO2dIQUExQiwwQkFBMEIsYUFGMUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLFlBSjFGLG1CQUFtQixDQUFDLFFBQVEsQ0FBQztnQkFDM0IsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7YUFDckMsQ0FBQzs7NEZBSU8sMEJBQTBCO2tCQVJ0QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7NEJBQzNCLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO3lCQUNyQyxDQUFDO3FCQUNIO29CQUNELFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLENBQUM7aUJBQzdGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBfRU5USVRZX0FDVElPTl9QTFVHSU4gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29yZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L3dpZGdldC1jb3JlJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0IH0gZnJvbSAnLi9yZXNlcnZhdGlvbi1wYW5lbC13aWRnZXQuY29uZmlnJztcbmltcG9ydCB7IHJlc2VydmF0aW9uUGx1Z2luIH0gZnJvbSAnLi9yZXNlcnZhdGlvbi5wbHVnaW4nO1xuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBBWFBXaWRnZXRDb3JlTW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHdpZGdldHM6IFtBWFBSZXNlcnZhdGlvblBhbmVsV2lkZ2V0XSxcbiAgICB9KSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWFBfRU5USVRZX0FDVElPTl9QTFVHSU4sIG11bHRpOiB0cnVlLCB1c2VWYWx1ZTogcmVzZXJ2YXRpb25QbHVnaW4gfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJlc2VydmF0aW9uUGx1Z2luTW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Types ----\nexport {};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9yZXNlcnZhdGlvbi1wbHVnaW4vcmVzZXJ2YXRpb24td2lkZ2V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDZCQUE2Qjs7QUEyRDdCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIFR5cGVzICAgLS0tLVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uUGFuZWxJbnB1dHMge1xuICByZXNvdXJjZUVudGl0eUlkOiBzdHJpbmc7IC8vIGUuZy4gJ0Fzc2V0TWFuYWdlbWVudC5Bc3NldCdcbiAgcmVzb3VyY2VJZDogc3RyaW5nOyAvLyBjdXJyZW50IHJlY29yZCBpZFxuICByZXNvdXJjZVJlZj86IHsgdGl0bGU/OiBzdHJpbmc7IGNvZGU/OiBzdHJpbmcgfTsgLy8gb3B0aW9uYWwgc25hcHNob3QgZm9yIFVJXG5cbiAgcmVzZXJ2YXRpb25UeXBlSWQ/OiBzdHJpbmc7XG4gIHJlc2VydmF0aW9uVHlwZUNvZGU/OiBzdHJpbmc7IC8vIGUuZy4gJ2Fzc2V0J1xuXG4gIGRlZmF1bHRDbGFzc0lkPzogc3RyaW5nOyAvLyBvcHRpb25hbFxuICBtb2RlPzogJ2NhbGVuZGFyJyB8ICdsaXN0JyB8ICdib3RoJzsgLy8gZGVmYXVsdCAnYm90aCdcbiAgcmVhZG9ubHk/OiBib29sZWFuOyAvLyBkZWZhdWx0IGZhbHNlXG5cbiAgZGF0ZVJhbmdlRGF5cz86IG51bWJlcjsgLy8gZGVmYXVsdCAzMCAodG9kYXkgKy8tKVxuICBhbGxvd0hvbGQ/OiBib29sZWFuOyAvLyBvdmVycmlkZSAob3B0aW9uYWwpXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQUmVzZXJ2YXRpb25Db25mbGljdCB7XG4gIHJlc2VydmF0aW9uSWQ6IHN0cmluZztcbiAgc3RhcnREYXRlOiBEYXRlO1xuICBlbmREYXRlOiBEYXRlO1xuICBraW5kOiAncmVzZXJ2YXRpb24nIHwgJ2hvbGQnO1xuICBpc0Jsb2NraW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIGZyb21TdGF0dXNJZDogc3RyaW5nO1xuICB0b1N0YXR1c0lkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICByZXF1aXJlc1Blcm1pc3Npb24/OiBzdHJpbmc7XG4gIGlzQWN0aXZlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uQ3JlYXRlRGF0YSB7XG4gIHJlc2VydmF0aW9uQ2xhc3NJZDogc3RyaW5nO1xuICBzdGFydERhdGVUaW1lOiBEYXRlO1xuICBlbmREYXRlVGltZTogRGF0ZTtcbiAgcHVycG9zZT86IHN0cmluZztcbiAgbm90ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBSZXNlcnZhdGlvbkhvbGRDcmVhdGVEYXRhIHtcbiAgc3RhcnREYXRlVGltZTogRGF0ZTtcbiAgZW5kRGF0ZVRpbWU6IERhdGU7XG4gIGlzQmxvY2tpbmc6IGJvb2xlYW47XG4gIGhvbGRUeXBlQ29kZTogc3RyaW5nO1xuICBob2xkUmVhc29uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFJlc2VydmF0aW9uVHJhbnNpdGlvbkRhdGEge1xuICByZXNlcnZhdGlvbklkOiBzdHJpbmc7XG4gIHRyYW5zaXRpb25JZDogc3RyaW5nO1xuICBub3RlPzogc3RyaW5nO1xufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","export const AXMReservationManagementMenuKeys = {\n ReservationTypes: 'reservation-management:Menu:ReservationTypes',\n ReservationStatuses: 'reservation-management:Menu:ReservationStatuses',\n ReservationClasses: 'reservation-management:Menu:ReservationClasses',\n Reservations: 'reservation-management:Menu:Reservations',\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9tZW51LmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUc7SUFDOUMsZ0JBQWdCLEVBQUUsOENBQThDO0lBQ2hFLG1CQUFtQixFQUFFLGlEQUFpRDtJQUN0RSxrQkFBa0IsRUFBRSxnREFBZ0Q7SUFDcEUsWUFBWSxFQUFFLDBDQUEwQztDQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudE1lbnVLZXlzID0ge1xuICBSZXNlcnZhdGlvblR5cGVzOiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDpNZW51OlJlc2VydmF0aW9uVHlwZXMnLFxuICBSZXNlcnZhdGlvblN0YXR1c2VzOiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDpNZW51OlJlc2VydmF0aW9uU3RhdHVzZXMnLFxuICBSZXNlcnZhdGlvbkNsYXNzZXM6ICdyZXNlcnZhdGlvbi1tYW5hZ2VtZW50Ok1lbnU6UmVzZXJ2YXRpb25DbGFzc2VzJyxcbiAgUmVzZXJ2YXRpb25zOiAncmVzZXJ2YXRpb24tbWFuYWdlbWVudDpNZW51OlJlc2VydmF0aW9ucycsXG59IGFzIGNvbnN0O1xuIl19","export const AXMPermissionsKeys = {\n ReservationManagement: {\n Management: 'ReservationManagement:Permission:Management',\n ReservationType: {\n Management: 'ReservationManagement:Permission:ReservationType.Management',\n },\n ReservationStatus: {\n Management: 'ReservationManagement:Permission:ReservationStatus.Management',\n },\n ReservationClass: {\n Management: 'ReservationManagement:Permission:ReservationClass.Management',\n },\n Reservation: {\n Management: 'ReservationManagement:Permission:Reservation.Management',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9wZXJtaXNzaW9uLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUc7SUFDaEMscUJBQXFCLEVBQUU7UUFDckIsVUFBVSxFQUFFLDZDQUE2QztRQUN6RCxlQUFlLEVBQUU7WUFDZixVQUFVLEVBQUUsNkRBQTZEO1NBQzFFO1FBQ0QsaUJBQWlCLEVBQUU7WUFDakIsVUFBVSxFQUFFLCtEQUErRDtTQUM1RTtRQUNELGdCQUFnQixFQUFFO1lBQ2hCLFVBQVUsRUFBRSw4REFBOEQ7U0FDM0U7UUFDRCxXQUFXLEVBQUU7WUFDWCxVQUFVLEVBQUUseURBQXlEO1NBQ3RFO0tBQ0Y7Q0FDTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYTVBlcm1pc3Npb25zS2V5cyA9IHtcbiAgUmVzZXJ2YXRpb25NYW5hZ2VtZW50OiB7XG4gICAgTWFuYWdlbWVudDogJ1Jlc2VydmF0aW9uTWFuYWdlbWVudDpQZXJtaXNzaW9uOk1hbmFnZW1lbnQnLFxuICAgIFJlc2VydmF0aW9uVHlwZToge1xuICAgICAgTWFuYWdlbWVudDogJ1Jlc2VydmF0aW9uTWFuYWdlbWVudDpQZXJtaXNzaW9uOlJlc2VydmF0aW9uVHlwZS5NYW5hZ2VtZW50JyxcbiAgICB9LFxuICAgIFJlc2VydmF0aW9uU3RhdHVzOiB7XG4gICAgICBNYW5hZ2VtZW50OiAnUmVzZXJ2YXRpb25NYW5hZ2VtZW50OlBlcm1pc3Npb246UmVzZXJ2YXRpb25TdGF0dXMuTWFuYWdlbWVudCcsXG4gICAgfSxcbiAgICBSZXNlcnZhdGlvbkNsYXNzOiB7XG4gICAgICBNYW5hZ2VtZW50OiAnUmVzZXJ2YXRpb25NYW5hZ2VtZW50OlBlcm1pc3Npb246UmVzZXJ2YXRpb25DbGFzcy5NYW5hZ2VtZW50JyxcbiAgICB9LFxuICAgIFJlc2VydmF0aW9uOiB7XG4gICAgICBNYW5hZ2VtZW50OiAnUmVzZXJ2YXRpb25NYW5hZ2VtZW50OlBlcm1pc3Npb246UmVzZXJ2YXRpb24uTWFuYWdlbWVudCcsXG4gICAgfSxcbiAgfSxcbn0gYXMgY29uc3Q7XG4iXX0=","//#region ---- Imports ----\nimport { AXPCommonMenuKeys } from '@acorex/modules/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXMReservationManagementMenuKeys } from './menu.keys';\nimport { AXMPermissionsKeys } from './permission.keys';\n//#endregion\n//#region ---- Menu Provider ----\nexport class AXMReservationManagementMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n }\n async provide(context) {\n const module = RootConfig.module;\n const keys = AXMPermissionsKeys.ReservationManagement;\n // Configuration > Reservation: Types, Statuses, Classes\n const reservationConfigMenu = context.find(AXPCommonMenuKeys.ReservationConfig);\n if (!reservationConfigMenu.exists) {\n context.find(AXPCommonMenuKeys.Configuration).addItems([\n {\n name: AXPCommonMenuKeys.ReservationConfig,\n priority: 8942,\n text: '@general:menus.reservation.title',\n icon: module.icon,\n type: 'menu',\n children: [],\n policy: {\n features: [module.name],\n },\n },\n ]);\n }\n context.find(AXPCommonMenuKeys.ReservationConfig).addItems([\n {\n name: AXMReservationManagementMenuKeys.ReservationTypes,\n text: '@reservation-management:reservation-types.menus.reservation-types.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationType.name),\n icon: 'fa-light fa-list',\n priority: 1,\n policy: {\n permissions: [keys.ReservationType.Management],\n },\n },\n {\n name: AXMReservationManagementMenuKeys.ReservationStatuses,\n text: '@reservation-management:reservation-statuses.menus.reservation-statuses.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationStatus.name),\n icon: 'fa-light fa-flag',\n priority: 2,\n policy: {\n permissions: [keys.ReservationStatus.Management],\n },\n },\n {\n name: AXMReservationManagementMenuKeys.ReservationClasses,\n text: '@reservation-management:reservation-classes.menus.reservation-classes.title',\n path: this.entityService.createPath(module.name, RootConfig.entities.reservationClass.name),\n icon: 'fa-light fa-tag',\n priority: 3,\n policy: {\n permissions: [keys.ReservationClass.Management],\n },\n },\n ]);\n // Root under MODULES: Reservations (operational)\n context.addItems([\n {\n name: AXMReservationManagementMenuKeys.Reservations,\n priority: 9051,\n text: '@general:menus.reservations.title',\n icon: RootConfig.entities.reservation.icon,\n path: this.entityService.createPath(module.name, RootConfig.entities.reservation.name),\n policy: {\n features: [module.name],\n permissions: [keys.Reservation.Management],\n },\n },\n ]);\n }\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbWVudS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFFL0IsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxZQUFZO0FBRVoscUNBQXFDO0FBRXJDLE1BQU0sT0FBTyxvQ0FBb0M7SUFBakQ7UUFDbUIsa0JBQWEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQXdFNUQsQ0FBQztJQXRFQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQStCO1FBQzNDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDakMsTUFBTSxJQUFJLEdBQUcsa0JBQWtCLENBQUMscUJBQXFCLENBQUM7UUFFdEQsd0RBQXdEO1FBQ3hELE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQztnQkFDckQ7b0JBQ0UsSUFBSSxFQUFFLGlCQUFpQixDQUFDLGlCQUFpQjtvQkFDekMsUUFBUSxFQUFFLElBQUk7b0JBQ2QsSUFBSSxFQUFFLGtDQUFrQztvQkFDeEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNqQixJQUFJLEVBQUUsTUFBTTtvQkFDWixRQUFRLEVBQUUsRUFBRTtvQkFDWixNQUFNLEVBQUU7d0JBQ04sUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztxQkFDeEI7aUJBQ0Y7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUN6RDtnQkFDRSxJQUFJLEVBQUUsZ0NBQWdDLENBQUMsZ0JBQWdCO2dCQUN2RCxJQUFJLEVBQUUseUVBQXlFO2dCQUMvRSxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQzFGLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLFFBQVEsRUFBRSxDQUFDO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQztpQkFDL0M7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxnQ0FBZ0MsQ0FBQyxtQkFBbUI7Z0JBQzFELElBQUksRUFBRSwrRUFBK0U7Z0JBQ3JGLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2dCQUM1RixJQUFJLEVBQUUsa0JBQWtCO2dCQUN4QixRQUFRLEVBQUUsQ0FBQztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztpQkFDakQ7YUFDRjtZQUNEO2dCQUNFLElBQUksRUFBRSxnQ0FBZ0MsQ0FBQyxrQkFBa0I7Z0JBQ3pELElBQUksRUFBRSw2RUFBNkU7Z0JBQ25GLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO2dCQUMzRixJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixRQUFRLEVBQUUsQ0FBQztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQztpQkFDaEQ7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILGlEQUFpRDtRQUNqRCxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ2Y7Z0JBQ0UsSUFBSSxFQUFFLGdDQUFnQyxDQUFDLFlBQVk7Z0JBQ25ELFFBQVEsRUFBRSxJQUFJO2dCQUNkLElBQUksRUFBRSxtQ0FBbUM7Z0JBQ3pDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJO2dCQUMxQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RGLE1BQU0sRUFBRTtvQkFDTixRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO29CQUN2QixXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQztpQkFDM0M7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUVELFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYUENvbW1vbk1lbnVLZXlzIH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBNZW51UHJvdmlkZXIsIEFYUE1lbnVQcm92aWRlckNvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuaW1wb3J0IHsgQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMgfSBmcm9tICcuL21lbnUua2V5cyc7XG5pbXBvcnQgeyBBWE1QZXJtaXNzaW9uc0tleXMgfSBmcm9tICcuL3Blcm1pc3Npb24ua2V5cyc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIE1lbnUgUHJvdmlkZXIgICAtLS0tXG5cbmV4cG9ydCBjbGFzcyBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRNZW51UHJvdmlkZXIgaW1wbGVtZW50cyBBWFBNZW51UHJvdmlkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGVudGl0eVNlcnZpY2UgPSBpbmplY3QoQVhQRW50aXR5U2VydmljZSk7XG5cbiAgYXN5bmMgcHJvdmlkZShjb250ZXh0OiBBWFBNZW51UHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGU7XG4gICAgY29uc3Qga2V5cyA9IEFYTVBlcm1pc3Npb25zS2V5cy5SZXNlcnZhdGlvbk1hbmFnZW1lbnQ7XG5cbiAgICAvLyBDb25maWd1cmF0aW9uID4gUmVzZXJ2YXRpb246IFR5cGVzLCBTdGF0dXNlcywgQ2xhc3Nlc1xuICAgIGNvbnN0IHJlc2VydmF0aW9uQ29uZmlnTWVudSA9IGNvbnRleHQuZmluZChBWFBDb21tb25NZW51S2V5cy5SZXNlcnZhdGlvbkNvbmZpZyk7XG4gICAgaWYgKCFyZXNlcnZhdGlvbkNvbmZpZ01lbnUuZXhpc3RzKSB7XG4gICAgICBjb250ZXh0LmZpbmQoQVhQQ29tbW9uTWVudUtleXMuQ29uZmlndXJhdGlvbikuYWRkSXRlbXMoW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogQVhQQ29tbW9uTWVudUtleXMuUmVzZXJ2YXRpb25Db25maWcsXG4gICAgICAgICAgcHJpb3JpdHk6IDg5NDIsXG4gICAgICAgICAgdGV4dDogJ0BnZW5lcmFsOm1lbnVzLnJlc2VydmF0aW9uLnRpdGxlJyxcbiAgICAgICAgICBpY29uOiBtb2R1bGUuaWNvbixcbiAgICAgICAgICB0eXBlOiAnbWVudScsXG4gICAgICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgICAgIHBvbGljeToge1xuICAgICAgICAgICAgZmVhdHVyZXM6IFttb2R1bGUubmFtZV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0pO1xuICAgIH1cblxuICAgIGNvbnRleHQuZmluZChBWFBDb21tb25NZW51S2V5cy5SZXNlcnZhdGlvbkNvbmZpZykuYWRkSXRlbXMoW1xuICAgICAge1xuICAgICAgICBuYW1lOiBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRNZW51S2V5cy5SZXNlcnZhdGlvblR5cGVzLFxuICAgICAgICB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tdHlwZXMubWVudXMucmVzZXJ2YXRpb24tdHlwZXMudGl0bGUnLFxuICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChtb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblR5cGUubmFtZSksXG4gICAgICAgIGljb246ICdmYS1saWdodCBmYS1saXN0JyxcbiAgICAgICAgcHJpb3JpdHk6IDEsXG4gICAgICAgIHBvbGljeToge1xuICAgICAgICAgIHBlcm1pc3Npb25zOiBba2V5cy5SZXNlcnZhdGlvblR5cGUuTWFuYWdlbWVudF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBBWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRNZW51S2V5cy5SZXNlcnZhdGlvblN0YXR1c2VzLFxuICAgICAgICB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tc3RhdHVzZXMubWVudXMucmVzZXJ2YXRpb24tc3RhdHVzZXMudGl0bGUnLFxuICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChtb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvblN0YXR1cy5uYW1lKSxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZsYWcnLFxuICAgICAgICBwcmlvcml0eTogMixcbiAgICAgICAgcG9saWN5OiB7XG4gICAgICAgICAgcGVybWlzc2lvbnM6IFtrZXlzLlJlc2VydmF0aW9uU3RhdHVzLk1hbmFnZW1lbnRdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudUtleXMuUmVzZXJ2YXRpb25DbGFzc2VzLFxuICAgICAgICB0ZXh0OiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6cmVzZXJ2YXRpb24tY2xhc3Nlcy5tZW51cy5yZXNlcnZhdGlvbi1jbGFzc2VzLnRpdGxlJyxcbiAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgobW9kdWxlLm5hbWUsIFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb25DbGFzcy5uYW1lKSxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXRhZycsXG4gICAgICAgIHByaW9yaXR5OiAzLFxuICAgICAgICBwb2xpY3k6IHtcbiAgICAgICAgICBwZXJtaXNzaW9uczogW2tleXMuUmVzZXJ2YXRpb25DbGFzcy5NYW5hZ2VtZW50XSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSk7XG5cbiAgICAvLyBSb290IHVuZGVyIE1PRFVMRVM6IFJlc2VydmF0aW9ucyAob3BlcmF0aW9uYWwpXG4gICAgY29udGV4dC5hZGRJdGVtcyhbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudE1lbnVLZXlzLlJlc2VydmF0aW9ucyxcbiAgICAgICAgcHJpb3JpdHk6IDkwNTEsXG4gICAgICAgIHRleHQ6ICdAZ2VuZXJhbDptZW51cy5yZXNlcnZhdGlvbnMudGl0bGUnLFxuICAgICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLmljb24sXG4gICAgICAgIHBhdGg6IHRoaXMuZW50aXR5U2VydmljZS5jcmVhdGVQYXRoKG1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLnJlc2VydmF0aW9uLm5hbWUpLFxuICAgICAgICBwb2xpY3k6IHtcbiAgICAgICAgICBmZWF0dXJlczogW21vZHVsZS5uYW1lXSxcbiAgICAgICAgICBwZXJtaXNzaW9uczogW2tleXMuUmVzZXJ2YXRpb24uTWFuYWdlbWVudF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0pO1xuICB9XG59XG5cbi8vI2VuZHJlZ2lvblxuIl19","import { AXTranslationService } from '@acorex/core/translation';\nimport { inject } from '@angular/core';\nimport { AXMPermissionsKeys } from './permission.keys';\nimport { RootConfig } from './const';\nexport class AXMReservationManagementPermissionDefinitionProvider {\n constructor() {\n this.translateService = inject(AXTranslationService);\n }\n async define(context) {\n const scope = RootConfig.config.i18n;\n const moduleTitle = await this.translateService.translateAsync(`@${scope}:module.title`);\n const typeTrans = async (key, field = 'title') => await this.translateService.translateAsync(`@${scope}:reservation-types.permissions.${key}.${field}`);\n const statusTrans = async (key, field = 'title') => await this.translateService.translateAsync(`@${scope}:reservation-statuses.permissions.${key}.${field}`);\n const classTrans = async (key, field = 'title') => await this.translateService.translateAsync(`@${scope}:reservation-classes.permissions.${key}.${field}`);\n const reservationTitle = await this.translateService.translateAsync(`@${scope}:reservations.permissions.reservations.title`);\n const reservationDesc = await this.translateService.translateAsync(`@${scope}:reservations.permissions.reservations.description`);\n const keys = AXMPermissionsKeys.ReservationManagement;\n context\n .addGroup(RootConfig.module.name, moduleTitle)\n .addPermission(keys.ReservationType.Management, await typeTrans('manage'), await typeTrans('manage', 'description'))\n .endPermission()\n .addPermission(keys.ReservationStatus.Management, await statusTrans('manage'), await statusTrans('manage', 'description'))\n .endPermission()\n .addPermission(keys.ReservationClass.Management, await classTrans('manage'), await classTrans('manage', 'description'))\n .endPermission()\n .addPermission(keys.Reservation.Management, reservationTitle, reservationDesc)\n .endPermission()\n .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9wZXJtaXNzaW9uLWRlZmluaXRpb24ucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sT0FBTyxvREFBb0Q7SUFBakU7UUFDbUIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFrQ25FLENBQUM7SUFoQ0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUErQztRQUMxRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNyQyxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxDQUFDO1FBRXpGLE1BQU0sU0FBUyxHQUFHLEtBQUssRUFBRSxHQUFXLEVBQUUsUUFBaUMsT0FBTyxFQUFFLEVBQUUsQ0FDaEYsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyxrQ0FBa0MsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEcsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLEdBQVcsRUFBRSxRQUFpQyxPQUFPLEVBQUUsRUFBRSxDQUNsRixNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxLQUFLLHFDQUFxQyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMzRyxNQUFNLFVBQVUsR0FBRyxLQUFLLEVBQUUsR0FBVyxFQUFFLFFBQWlDLE9BQU8sRUFBRSxFQUFFLENBQ2pGLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssb0NBQW9DLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzFHLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyw4Q0FBOEMsQ0FBQyxDQUFDO1FBQzdILE1BQU0sZUFBZSxHQUFHLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssb0RBQW9ELENBQUMsQ0FBQztRQUVsSSxNQUFNLElBQUksR0FBRyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQztRQUV0RCxPQUFPO2FBQ0osUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQzthQUU3QyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxTQUFTLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2FBQ25ILGFBQWEsRUFBRTthQUVmLGFBQWEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sV0FBVyxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQzthQUN6SCxhQUFhLEVBQUU7YUFFZixhQUFhLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLFVBQVUsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUM7YUFDdEgsYUFBYSxFQUFFO2FBRWYsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsQ0FBQzthQUM3RSxhQUFhLEVBQUU7YUFFZixRQUFRLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyLCBBWFBQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTVBlcm1pc3Npb25zS2V5cyB9IGZyb20gJy4vcGVybWlzc2lvbi5rZXlzJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuZXhwb3J0IGNsYXNzIEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudFBlcm1pc3Npb25EZWZpbml0aW9uUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICBhc3luYyBkZWZpbmUoY29udGV4dDogQVhQUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzY29wZSA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG4gICAgY29uc3QgbW9kdWxlVGl0bGUgPSBhd2FpdCB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoYEAke3Njb3BlfTptb2R1bGUudGl0bGVgKTtcblxuICAgIGNvbnN0IHR5cGVUcmFucyA9IGFzeW5jIChrZXk6IHN0cmluZywgZmllbGQ6ICd0aXRsZScgfCAnZGVzY3JpcHRpb24nID0gJ3RpdGxlJykgPT5cbiAgICAgIGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhgQCR7c2NvcGV9OnJlc2VydmF0aW9uLXR5cGVzLnBlcm1pc3Npb25zLiR7a2V5fS4ke2ZpZWxkfWApO1xuICAgIGNvbnN0IHN0YXR1c1RyYW5zID0gYXN5bmMgKGtleTogc3RyaW5nLCBmaWVsZDogJ3RpdGxlJyB8ICdkZXNjcmlwdGlvbicgPSAndGl0bGUnKSA9PlxuICAgICAgYXdhaXQgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKGBAJHtzY29wZX06cmVzZXJ2YXRpb24tc3RhdHVzZXMucGVybWlzc2lvbnMuJHtrZXl9LiR7ZmllbGR9YCk7XG4gICAgY29uc3QgY2xhc3NUcmFucyA9IGFzeW5jIChrZXk6IHN0cmluZywgZmllbGQ6ICd0aXRsZScgfCAnZGVzY3JpcHRpb24nID0gJ3RpdGxlJykgPT5cbiAgICAgIGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhgQCR7c2NvcGV9OnJlc2VydmF0aW9uLWNsYXNzZXMucGVybWlzc2lvbnMuJHtrZXl9LiR7ZmllbGR9YCk7XG4gICAgY29uc3QgcmVzZXJ2YXRpb25UaXRsZSA9IGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhgQCR7c2NvcGV9OnJlc2VydmF0aW9ucy5wZXJtaXNzaW9ucy5yZXNlcnZhdGlvbnMudGl0bGVgKTtcbiAgICBjb25zdCByZXNlcnZhdGlvbkRlc2MgPSBhd2FpdCB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoYEAke3Njb3BlfTpyZXNlcnZhdGlvbnMucGVybWlzc2lvbnMucmVzZXJ2YXRpb25zLmRlc2NyaXB0aW9uYCk7XG5cbiAgICBjb25zdCBrZXlzID0gQVhNUGVybWlzc2lvbnNLZXlzLlJlc2VydmF0aW9uTWFuYWdlbWVudDtcblxuICAgIGNvbnRleHRcbiAgICAgIC5hZGRHcm91cChSb290Q29uZmlnLm1vZHVsZS5uYW1lLCBtb2R1bGVUaXRsZSlcblxuICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5SZXNlcnZhdGlvblR5cGUuTWFuYWdlbWVudCwgYXdhaXQgdHlwZVRyYW5zKCdtYW5hZ2UnKSwgYXdhaXQgdHlwZVRyYW5zKCdtYW5hZ2UnLCAnZGVzY3JpcHRpb24nKSlcbiAgICAgIC5lbmRQZXJtaXNzaW9uKClcblxuICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5SZXNlcnZhdGlvblN0YXR1cy5NYW5hZ2VtZW50LCBhd2FpdCBzdGF0dXNUcmFucygnbWFuYWdlJyksIGF3YWl0IHN0YXR1c1RyYW5zKCdtYW5hZ2UnLCAnZGVzY3JpcHRpb24nKSlcbiAgICAgIC5lbmRQZXJtaXNzaW9uKClcblxuICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5SZXNlcnZhdGlvbkNsYXNzLk1hbmFnZW1lbnQsIGF3YWl0IGNsYXNzVHJhbnMoJ21hbmFnZScpLCBhd2FpdCBjbGFzc1RyYW5zKCdtYW5hZ2UnLCAnZGVzY3JpcHRpb24nKSlcbiAgICAgIC5lbmRQZXJtaXNzaW9uKClcblxuICAgICAgLmFkZFBlcm1pc3Npb24oa2V5cy5SZXNlcnZhdGlvbi5NYW5hZ2VtZW50LCByZXNlcnZhdGlvblRpdGxlLCByZXNlcnZhdGlvbkRlc2MpXG4gICAgICAuZW5kUGVybWlzc2lvbigpXG5cbiAgICAgIC5lbmRHcm91cCgpO1xuICB9XG59XG4iXX0=","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationClassService, AXPReservationManagementReservationClassServiceImpl, } from './reservation-class.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Event Type Entity Module ----\nexport class AXPReservationManagementReservationClassEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationClassService,\n useClass: AXPReservationManagementReservationClassServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationClassEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationClassService,\n useClass: AXPReservationManagementReservationClassServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tY2xhc3MubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLCtDQUErQyxFQUMvQyxtREFBbUQsR0FDcEQsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFckMsWUFBWTtBQUVaLGdEQUFnRDtBQVVoRCxNQUFNLE9BQU8sb0RBQW9EOytHQUFwRCxvREFBb0Q7Z0hBQXBELG9EQUFvRDtnSEFBcEQsb0RBQW9ELGFBUHBEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLCtDQUErQztnQkFDeEQsUUFBUSxFQUFFLG1EQUFtRDthQUM5RDtTQUNGOzs0RkFFVSxvREFBb0Q7a0JBUmhFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwrQ0FBK0M7NEJBQ3hELFFBQVEsRUFBRSxtREFBbUQ7eUJBQzlEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc1NlcnZpY2UsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NTZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi1jbGFzcy5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgRXZlbnQgVHlwZSBFbnRpdHkgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzU2VydmljZUltcGwsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25DbGFzc0VudGl0eU1vZHVsZSB7fVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","//#region ---- Imports ----\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationEventService, AXPReservationManagementReservationEventServiceImpl, } from './reservation-event.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Hold Type Entity Module ----\nexport class AXPReservationManagementReservationEventEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, providers: [\n {\n provide: AXPReservationManagementReservationEventService,\n useClass: AXPReservationManagementReservationEventServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXPReservationManagementReservationEventEntityModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXPReservationManagementReservationEventService,\n useClass: AXPReservationManagementReservationEventServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tZXZlbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9yZXNlcnZhdGlvbi1ldmVudC9yZXNlcnZhdGlvbi1ldmVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLCtDQUErQyxFQUMvQyxtREFBbUQsR0FDcEQsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFckMsWUFBWTtBQUVaLCtDQUErQztBQVUvQyxNQUFNLE9BQU8sb0RBQW9EOytHQUFwRCxvREFBb0Q7Z0hBQXBELG9EQUFvRDtnSEFBcEQsb0RBQW9ELGFBUHBEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLCtDQUErQztnQkFDeEQsUUFBUSxFQUFFLG1EQUFtRDthQUM5RDtTQUNGOzs0RkFFVSxvREFBb0Q7a0JBUmhFLFFBQVE7bUJBQUM7b0JBQ1IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwrQ0FBK0M7NEJBQ3hELFFBQVEsRUFBRSxtREFBbUQ7eUJBQzlEO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudFNlcnZpY2UsXG4gIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlSW1wbCxcbn0gZnJvbSAnLi9yZXNlcnZhdGlvbi1ldmVudC5zZXJ2aWNlJztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgSG9sZCBUeXBlIEVudGl0eSBNb2R1bGUgICAtLS0tXG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uRXZlbnRTZXJ2aWNlSW1wbCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkV2ZW50RW50aXR5TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { RootConfig } from './const';\n//#endregion\n//#region ---- Manifest Definition ----\n/**\n * Reservation Management Module Manifest.\n * Defines module metadata, features, and provider references.\n */\nexport const ReservationManagementManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n required: false,\n // Module dependencies (optional)\n};\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUcvQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLFlBQVk7QUFFWiwyQ0FBMkM7QUFFM0M7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQXNCO0lBQzlELElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7SUFDNUIsT0FBTyxFQUFFLE9BQU87SUFDaEIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSztJQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQzVCLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUk7SUFDNUIsUUFBUSxFQUFFLEtBQUs7SUFDZixpQ0FBaUM7Q0FDbEMsQ0FBQztBQUVGLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYUE1vZHVsZU1hbmlmZXN0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgTWFuaWZlc3QgRGVmaW5pdGlvbiAgIC0tLS1cblxuLyoqXG4gKiBSZXNlcnZhdGlvbiBNYW5hZ2VtZW50IE1vZHVsZSBNYW5pZmVzdC5cbiAqIERlZmluZXMgbW9kdWxlIG1ldGFkYXRhLCBmZWF0dXJlcywgYW5kIHByb3ZpZGVyIHJlZmVyZW5jZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBSZXNlcnZhdGlvbk1hbmFnZW1lbnRNYW5pZmVzdDogQVhQTW9kdWxlTWFuaWZlc3QgPSB7XG4gIG5hbWU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gIHZlcnNpb246ICcxLjAuMCcsXG4gIHRpdGxlOiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgaWNvbjogUm9vdENvbmZpZy5tb2R1bGUuaWNvbixcbiAgaTE4bjogUm9vdENvbmZpZy5jb25maWcuaTE4bixcbiAgcmVxdWlyZWQ6IGZhbHNlLFxuICAvLyBNb2R1bGUgZGVwZW5kZW5jaWVzIChvcHRpb25hbClcbn07XG5cbi8vI2VuZHJlZ2lvblxuIl19","//#region ---- Imports ----\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';\nimport { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider } from '@acorex/platform/core';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { NgModule } from '@angular/core';\nimport { AXPReservationManagementReservationClassEntityModule } from './entities/reservation-class/reservation-class.module';\nimport { AXPReservationManagementReservationEventEntityModule } from './entities/reservation-event/reservation-event.module';\nimport { AXPReservationManagementReservationStatusEntityModule } from './entities/reservation-status/reservation-status.module';\nimport { AXPReservationManagementReservationTypeEntityModule } from './entities/reservation-type/reservation-type.module';\nimport { AXPReservationManagementReservationEntityModule } from './entities/reservation/reservation.module';\nimport { AXPReservationPluginModule } from './features/reservation-plugin/reservation-plugin.module';\nimport { ReservationManagementManifest } from './manifest';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Module ----\nexport class AXMReservationManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, imports: [AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, providers: [\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: ReservationManagementManifest,\n multi: true,\n },\n // Provider references (now using tokens)\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => import('./permission-definition.provider').then((m) => m.AXMReservationManagementPermissionDefinitionProvider)),\n provideLazyProvider(AXP_MENU_PROVIDER, () => import('./menu.provider').then((m) => m.AXMReservationManagementMenuProvider)),\n provideLazyProvider(AXP_ENTITY_DEFINITION_LOADER, () => import('./entity.provider').then((m) => m.AXMReservationManagementEntityProvider)),\n provideLazyProvider(AXP_SEARCH_PROVIDER, () => import('./search.provider').then((m) => m.AXMReservationManagementSearchCommandProvider)),\n ], imports: [AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.16\", ngImport: i0, type: AXMReservationManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPReservationManagementReservationTypeEntityModule,\n AXPReservationManagementReservationStatusEntityModule,\n AXPReservationManagementReservationClassEntityModule,\n AXPReservationManagementReservationEventEntityModule,\n AXPReservationManagementReservationEntityModule,\n AXPReservationPluginModule,\n ],\n providers: [\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: ReservationManagementManifest,\n multi: true,\n },\n // Provider references (now using tokens)\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => import('./permission-definition.provider').then((m) => m.AXMReservationManagementPermissionDefinitionProvider)),\n provideLazyProvider(AXP_MENU_PROVIDER, () => import('./menu.provider').then((m) => m.AXMReservationManagementMenuProvider)),\n provideLazyProvider(AXP_ENTITY_DEFINITION_LOADER, () => import('./entity.provider').then((m) => m.AXMReservationManagementEntityProvider)),\n provideLazyProvider(AXP_SEARCH_PROVIDER, () => import('./search.provider').then((m) => m.AXMReservationManagementSearchCommandProvider)),\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXJ2YXRpb24tbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUUvQixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvREFBb0QsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzdILE9BQU8sRUFBRSxvREFBb0QsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzdILE9BQU8sRUFBRSxxREFBcUQsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxtREFBbUQsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzFILE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFFM0QsWUFBWTtBQUVaLDhCQUE4QjtBQWlDOUIsTUFBTSxPQUFPLDhCQUE4QjsrR0FBOUIsOEJBQThCO2dIQUE5Qiw4QkFBOEIsWUE3QnZDLG1EQUFtRDtZQUNuRCxxREFBcUQ7WUFDckQsb0RBQW9EO1lBQ3BELG9EQUFvRDtZQUNwRCwrQ0FBK0M7WUFDL0MsMEJBQTBCO2dIQXdCakIsOEJBQThCLGFBdEI5QjtZQUNULDJCQUEyQjtZQUMzQjtnQkFDRSxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxRQUFRLEVBQUUsNkJBQTZCO2dCQUN2QyxLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0QseUNBQXlDO1lBQ3pDLG1CQUFtQixDQUFDLGtDQUFrQyxFQUFFLEdBQUcsRUFBRSxDQUMzRCxNQUFNLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvREFBb0QsQ0FBQyxDQUMvRztZQUNELG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUMxQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUM5RTtZQUNELG1CQUFtQixDQUFDLDRCQUE0QixFQUFFLEdBQUcsRUFBRSxDQUNyRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUNsRjtZQUNELG1CQUFtQixDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxDQUM1QyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUN6RjtTQUNGLFlBM0JDLG1EQUFtRDtZQUNuRCxxREFBcUQ7WUFDckQsb0RBQW9EO1lBQ3BELG9EQUFvRDtZQUNwRCwrQ0FBK0M7WUFDL0MsMEJBQTBCOzs0RkF3QmpCLDhCQUE4QjtrQkEvQjFDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLG1EQUFtRDt3QkFDbkQscURBQXFEO3dCQUNyRCxvREFBb0Q7d0JBQ3BELG9EQUFvRDt3QkFDcEQsK0NBQStDO3dCQUMvQywwQkFBMEI7cUJBQzNCO29CQUNELFNBQVMsRUFBRTt3QkFDVCwyQkFBMkI7d0JBQzNCOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFFBQVEsRUFBRSw2QkFBNkI7NEJBQ3ZDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELHlDQUF5Qzt3QkFDekMsbUJBQW1CLENBQUMsa0NBQWtDLEVBQUUsR0FBRyxFQUFFLENBQzNELE1BQU0sQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9EQUFvRCxDQUFDLENBQy9HO3dCQUNELG1CQUFtQixDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUMxQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUM5RTt3QkFDRCxtQkFBbUIsQ0FBQyw0QkFBNEIsRUFBRSxHQUFHLEVBQUUsQ0FDckQsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsc0NBQXNDLENBQUMsQ0FDbEY7d0JBQ0QsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFLENBQzVDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLDZDQUE2QyxDQUFDLENBQ3pGO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIC0tLS0gICBJbXBvcnRzICAgLS0tLVxuXG5pbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUF9NRU5VX1BST1ZJREVSLCBBWFBfU0VBUkNIX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQX01PRFVMRV9NQU5JRkVTVF9QUk9WSURFUiwgcHJvdmlkZUxhenlQcm92aWRlciB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkNsYXNzRW50aXR5TW9kdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1jbGFzcy9yZXNlcnZhdGlvbi1jbGFzcy5tb2R1bGUnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZHVsZSB9IGZyb20gJy4vZW50aXRpZXMvcmVzZXJ2YXRpb24tZXZlbnQvcmVzZXJ2YXRpb24tZXZlbnQubW9kdWxlJztcbmltcG9ydCB7IEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9yZXNlcnZhdGlvbi1zdGF0dXMvcmVzZXJ2YXRpb24tc3RhdHVzLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvblR5cGVFbnRpdHlNb2R1bGUgfSBmcm9tICcuL2VudGl0aWVzL3Jlc2VydmF0aW9uLXR5cGUvcmVzZXJ2YXRpb24tdHlwZS5tb2R1bGUnO1xuaW1wb3J0IHsgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FbnRpdHlNb2R1bGUgfSBmcm9tICcuL2VudGl0aWVzL3Jlc2VydmF0aW9uL3Jlc2VydmF0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFBSZXNlcnZhdGlvblBsdWdpbk1vZHVsZSB9IGZyb20gJy4vZmVhdHVyZXMvcmVzZXJ2YXRpb24tcGx1Z2luL3Jlc2VydmF0aW9uLXBsdWdpbi5tb2R1bGUnO1xuaW1wb3J0IHsgUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWFuaWZlc3QgfSBmcm9tICcuL21hbmlmZXN0JztcblxuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiAtLS0tICAgTW9kdWxlICAgLS0tLVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25UeXBlRW50aXR5TW9kdWxlLFxuICAgIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uU3RhdHVzRW50aXR5TW9kdWxlLFxuICAgIEFYUFJlc2VydmF0aW9uTWFuYWdlbWVudFJlc2VydmF0aW9uQ2xhc3NFbnRpdHlNb2R1bGUsXG4gICAgQVhQUmVzZXJ2YXRpb25NYW5hZ2VtZW50UmVzZXJ2YXRpb25FdmVudEVudGl0eU1vZHVsZSxcbiAgICBBWFBSZXNlcnZhdGlvbk1hbmFnZW1lbnRSZXNlcnZhdGlvbkVudGl0eU1vZHVsZSxcbiAgICBBWFBSZXNlcnZhdGlvblBsdWdpbk1vZHVsZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gTW9kdWxlIE1hbmlmZXN0IFByb3ZpZGVyXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX01PRFVMRV9NQU5JRkVTVF9QUk9WSURFUixcbiAgICAgIHVzZVZhbHVlOiBSZXNlcnZhdGlvbk1hbmFnZW1lbnRNYW5pZmVzdCxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAgLy8gUHJvdmlkZXIgcmVmZXJlbmNlcyAobm93IHVzaW5nIHRva2VucylcbiAgICBwcm92aWRlTGF6eVByb3ZpZGVyKEFYUF9QRVJNSVNTSU9OX0RFRklOSVRJT05fUFJPVklERVIsICgpID0+XG4gICAgICBpbXBvcnQoJy4vcGVybWlzc2lvbi1kZWZpbml0aW9uLnByb3ZpZGVyJykudGhlbigobSkgPT4gbS5BWE1SZXNlcnZhdGlvbk1hbmFnZW1lbnRQZXJtaXNzaW9uRGVmaW5pdGlvblByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX01FTlVfUFJPVklERVIsICgpID0+XG4gICAgICBpbXBvcnQoJy4vbWVudS5wcm92aWRlcicpLnRoZW4oKG0pID0+IG0uQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TWVudVByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUiwgKCkgPT5cbiAgICAgIGltcG9ydCgnLi9lbnRpdHkucHJvdmlkZXInKS50aGVuKChtKSA9PiBtLkFYTVJlc2VydmF0aW9uTWFuYWdlbWVudEVudGl0eVByb3ZpZGVyKSxcbiAgICApLFxuICAgIHByb3ZpZGVMYXp5UHJvdmlkZXIoQVhQX1NFQVJDSF9QUk9WSURFUiwgKCkgPT5cbiAgICAgIGltcG9ydCgnLi9zZWFyY2gucHJvdmlkZXInKS50aGVuKChtKSA9PiBtLkFYTVJlc2VydmF0aW9uTWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlciksXG4gICAgKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNUmVzZXJ2YXRpb25NYW5hZ2VtZW50TW9kdWxlIHt9XG5cbi8vI2VuZHJlZ2lvblxuIl19","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // {\n // group: 'command',\n // title: 'New Form Template',\n // icon: RootConfig.entities.template.icon,\n // description: 'Create a new form template for designing reusable forms.', // Added description\n // commands: {\n // 'create-entity': {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.template.name}`,\n // },\n // },\n // }\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvcmVzZXJ2YXRpb24tbWFuYWdlbWVudC9zcmMvbGliL3NlYXJjaC1jb21tYW5kLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsd0JBQXdCO0lBQXRFOztRQUNFLGFBQVEsR0FBc0I7UUFDNUIsSUFBSTtRQUNKLHNCQUFzQjtRQUN0QiwrQkFBK0I7UUFDL0IsNENBQTRDO1FBQzVDLGlHQUFpRztRQUNqRyxlQUFlO1FBQ2Ysd0JBQXdCO1FBQ3hCLGlGQUFpRjtRQUNqRixRQUFRO1FBQ1IsTUFBTTtRQUNOLElBQUk7U0FDTCxDQUFDO0lBQ0osQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2VhcmNoQ29tbWFuZFByb3ZpZGVyLCBBWFBTZWFyY2hSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBBWE1TZWFyY2hDb21tYW5kUHJvdmlkZXIgZXh0ZW5kcyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIge1xuICBjb21tYW5kczogQVhQU2VhcmNoUmVzdWx0W10gPSBbXG4gICAgLy8ge1xuICAgIC8vICAgZ3JvdXA6ICdjb21tYW5kJyxcbiAgICAvLyAgdGl0bGU6ICdOZXcgRm9ybSBUZW1wbGF0ZScsXG4gICAgLy8gIGljb246IFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUuaWNvbixcbiAgICAvLyAgZGVzY3JpcHRpb246ICdDcmVhdGUgYSBuZXcgZm9ybSB0ZW1wbGF0ZSBmb3IgZGVzaWduaW5nIHJldXNhYmxlIGZvcm1zLicsIC8vIEFkZGVkIGRlc2NyaXB0aW9uXG4gICAgLy8gIGNvbW1hbmRzOiB7XG4gICAgLy8gICAgJ2NyZWF0ZS1lbnRpdHknOiB7XG4gICAgLy8gICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5uYW1lfWAsXG4gICAgLy8gICAgfSxcbiAgICAvLyAgfSxcbiAgICAvLyB9XG4gIF07XG59XG4iXX0=","//#region ---- Imports ----\nimport { AXPSearchCommandProvider } from '@acorex/platform/common';\nimport { RootConfig } from './const';\n//#endregion\n//#region ---- Search Provider ----\nexport class AXMReservationManagementSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n {\n group: 'entity',\n title: '@reservation-management:assets.search.create-asset.title',\n icon: RootConfig.entities.reservation.icon,\n description: '@reservation-management:assets.search.create-asset.description',\n command: {\n name: 'create-entity',\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.reservation.name}`,\n },\n },\n },\n // {\n // group: 'entity',\n // title: '@asset-management:asset-statuses.search.create-asset-status.title',\n // icon: RootConfig.entities.assetStatus.icon,\n // description: '@asset-management:asset-statuses.search.create-asset-status.description',\n // command: {\n // name: 'create-entity',\n // options: {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.assetStatus.name}`,\n // },\n // },\n // },\n ];\n }\n}\n//#endregion\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3Jlc2VydmF0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9zZWFyY2gucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBRS9CLE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLFlBQVk7QUFFWix1Q0FBdUM7QUFFdkMsTUFBTSxPQUFPLDZDQUE4QyxTQUFRLHdCQUF3QjtJQUEzRjs7UUFDRSxhQUFRLEdBQXNCO1lBQzVCO2dCQUNFLEtBQUssRUFBRSxRQUFRO2dCQUNmLEtBQUssRUFBRSwwREFBMEQ7Z0JBQ2pFLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJO2dCQUMxQyxXQUFXLEVBQUUsZ0VBQWdFO2dCQUM3RSxPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLGVBQWU7b0JBQ3JCLE9BQU8sRUFBRTt3QkFDUCxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUU7cUJBQzVFO2lCQUNGO2FBQ0Y7WUFDRCxJQUFJO1lBQ0osdUJBQXVCO1lBQ3ZCLGtGQUFrRjtZQUNsRixrREFBa0Q7WUFDbEQsOEZBQThGO1lBQzlGLGlCQUFpQjtZQUNqQixpQ0FBaUM7WUFDakMscUJBQXFCO1lBQ3JCLDJGQUEyRjtZQUMzRixhQUFhO1lBQ2IsU0FBUztZQUNULEtBQUs7U0FDTixDQUFDO0lBQ0osQ0FBQztDQUFBO0FBRUQsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiAtLS0tICAgSW1wb3J0cyAgIC0tLS1cblxuaW1wb3J0IHsgQVhQU2VhcmNoQ29tbWFuZFByb3ZpZGVyLCBBWFBTZWFyY2hSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi9jb25zdCc7XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIFNlYXJjaCBQcm92aWRlciAgIC0tLS1cblxuZXhwb3J0IGNsYXNzIEFYTVJlc2VydmF0aW9uTWFuYWdlbWVudFNlYXJjaENvbW1hbmRQcm92aWRlciBleHRlbmRzIEFYUFNlYXJjaENvbW1hbmRQcm92aWRlciB7XG4gIGNvbW1hbmRzOiBBWFBTZWFyY2hSZXN1bHRbXSA9IFtcbiAgICB7XG4gICAgICBncm91cDogJ2VudGl0eScsXG4gICAgICB0aXRsZTogJ0ByZXNlcnZhdGlvbi1tYW5hZ2VtZW50OmFzc2V0cy5zZWFyY2guY3JlYXRlLWFzc2V0LnRpdGxlJyxcbiAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmVzZXJ2YXRpb24uaWNvbixcbiAgICAgIGRlc2NyaXB0aW9uOiAnQHJlc2VydmF0aW9uLW1hbmFnZW1lbnQ6YXNzZXRzLnNlYXJjaC5jcmVhdGUtYXNzZXQuZGVzY3JpcHRpb24nLFxuICAgICAgY29tbWFuZDoge1xuICAgICAgICBuYW1lOiAnY3JlYXRlLWVudGl0eScsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXNlcnZhdGlvbi5uYW1lfWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgLy8ge1xuICAgIC8vICAgICBncm91cDogJ2VudGl0eScsXG4gICAgLy8gICAgIHRpdGxlOiAnQGFzc2V0LW1hbmFnZW1lbnQ6YXNzZXQtc3RhdHVzZXMuc2VhcmNoLmNyZWF0ZS1hc3NldC1zdGF0dXMudGl0bGUnLFxuICAgIC8vICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmFzc2V0U3RhdHVzLmljb24sXG4gICAgLy8gICAgIGRlc2NyaXB0aW9uOiAnQGFzc2V0LW1hbmFnZW1lbnQ6YXNzZXQtc3RhdHVzZXMuc2VhcmNoLmNyZWF0ZS1hc3NldC1zdGF0dXMuZGVzY3JpcHRpb24nLFxuICAgIC8vICAgICBjb21tYW5kOiB7XG4gICAgLy8gICAgICAgICBuYW1lOiAnY3JlYXRlLWVudGl0eScsXG4gICAgLy8gICAgICAgICBvcHRpb25zOiB7XG4gICAgLy8gICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuYXNzZXRTdGF0dXMubmFtZX1gLFxuICAgIC8vICAgICAgICAgfSxcbiAgICAvLyAgICAgfSxcbiAgICAvLyB9LFxuICBdO1xufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","export class AXMSettingProvider {\n async provide(context) {\n // context\n // // Add Form Template Group\n // .addGroup('form-template', 'Form Template', 'Settings related to form templates.', RootConfig.module.icon)\n // // Start Interface Section\n // .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n // .addSetting({\n // key: 'history-panel',\n // title: 'Show History Panel',\n // scope: 'U',\n // isInherited: true,\n // defaultValue: false,\n // widget: {\n // type: AXPWidgetsCatalog.toggle,\n // },\n // description: 'Enable or disable the history panel for forms.',\n // validationRules: [\n // {\n // rule: 'required',\n // },\n // ],\n // })\n // .endSection()\n // .endGroup();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvc2V0dGluZy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBNEM7UUFDeEQsVUFBVTtRQUNWLCtCQUErQjtRQUMvQiwrR0FBK0c7UUFDL0csK0JBQStCO1FBQy9CLHdGQUF3RjtRQUN4RixrQkFBa0I7UUFDbEIsNEJBQTRCO1FBQzVCLG1DQUFtQztRQUNuQyxrQkFBa0I7UUFDbEIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixnQkFBZ0I7UUFDaEIsd0NBQXdDO1FBQ3hDLFNBQVM7UUFDVCxxRUFBcUU7UUFDckUseUJBQXlCO1FBQ3pCLFVBQVU7UUFDViw0QkFBNEI7UUFDNUIsV0FBVztRQUNYLFNBQVM7UUFDVCxPQUFPO1FBQ1Asa0JBQWtCO1FBQ2xCLGlCQUFpQjtJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyLCBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNldHRpbmdQcm92aWRlciBpbXBsZW1lbnRzIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIge1xuICBhc3luYyBwcm92aWRlKGNvbnRleHQ6IEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gY29udGV4dFxuICAgIC8vICAgLy8gQWRkIEZvcm0gVGVtcGxhdGUgR3JvdXBcbiAgICAvLyAgIC5hZGRHcm91cCgnZm9ybS10ZW1wbGF0ZScsICdGb3JtIFRlbXBsYXRlJywgJ1NldHRpbmdzIHJlbGF0ZWQgdG8gZm9ybSB0ZW1wbGF0ZXMuJywgUm9vdENvbmZpZy5tb2R1bGUuaWNvbilcbiAgICAvLyAgIC8vIFN0YXJ0IEludGVyZmFjZSBTZWN0aW9uXG4gICAgLy8gICAuYWRkU2VjdGlvbignaW50ZXJmYWNlJywgJ1VJIEludGVyZmFjZScsICdDdXN0b21pemUgdGhlIHVzZXIgaW50ZXJmYWNlIGZvciBmb3Jtcy4nKVxuICAgIC8vICAgLmFkZFNldHRpbmcoe1xuICAgIC8vICAgICBrZXk6ICdoaXN0b3J5LXBhbmVsJyxcbiAgICAvLyAgICAgdGl0bGU6ICdTaG93IEhpc3RvcnkgUGFuZWwnLFxuICAgIC8vICAgICBzY29wZTogJ1UnLFxuICAgIC8vICAgICBpc0luaGVyaXRlZDogdHJ1ZSxcbiAgICAvLyAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAvLyAgICAgd2lkZ2V0OiB7XG4gICAgLy8gICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudG9nZ2xlLFxuICAgIC8vICAgICB9LFxuICAgIC8vICAgICBkZXNjcmlwdGlvbjogJ0VuYWJsZSBvciBkaXNhYmxlIHRoZSBoaXN0b3J5IHBhbmVsIGZvciBmb3Jtcy4nLFxuICAgIC8vICAgICB2YWxpZGF0aW9uUnVsZXM6IFtcbiAgICAvLyAgICAgICB7XG4gICAgLy8gICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgIC8vICAgICAgIH0sXG4gICAgLy8gICAgIF0sXG4gICAgLy8gICB9KVxuICAgIC8vICAgLmVuZFNlY3Rpb24oKVxuICAgIC8vICAgLmVuZEdyb3VwKCk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtcmVzZXJ2YXRpb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9yZXNlcnZhdGlvbi1tYW5hZ2VtZW50L3NyYy9hY29yZXgtbW9kdWxlcy1yZXNlcnZhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1"],"mappings":"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S,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACrM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,kCAAkC,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;AAC7O;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,UAAU,EAAE,CAAC;AAC7I,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;AACnF,wBAAwB,YAAY;AACpC,wBAAwB,WAAW;AACnC,wBAAwB,QAAQ;AAChC,wBAAwB,cAAc;AACtC,wBAAwB,gBAAgB;AACxC,wBAAwB,iBAAiB;AACzC,wBAAwB,mBAAmB;AAC3C,wBAAwB,aAAa;AACrC,wBAAwB,iBAAiB;AACzC,wBAAwB,mBAAmB;AAC3C,qBAAqB,EAAE,QAAQ,EAAE;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,oDAAoD,CAAC,EAAE;AACtH,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;;;;;;AC7rBvC;AAGA;AACA;AACY,MAAC,yBAAyB,GAAG;AACzC,IAAI,IAAI,EAAE,0BAA0B;AACpC,IAAI,KAAK,EAAE,mBAAmB;AAC9B,IAAI,WAAW,EAAE,kDAAkD;AACnE,IAAI,IAAI,EAAE,4BAA4B;AACtC,IAAI,UAAU,EAAE,4BAA4B;AAC5C,IAAI,MAAM,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC;AAC7C,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,UAAU,EAAE;AAChB,QAAQ,iBAAiB;AACzB,QAAQ,sBAAsB;AAC9B,QAAQ,qBAAqB;AAC7B,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,kBAAkB;AACpC,YAAY,KAAK,EAAE,oBAAoB;AACvC,YAAY,IAAI,EAAE,0BAA0B;AAC5C,YAAY,KAAK,EAAE,2BAA2B;AAC9C,SAAS,CAAC;AACV,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,gBAAgB;AAClC,YAAY,KAAK,EAAE,kBAAkB;AACrC,YAAY,IAAI,EAAE,oBAAoB;AACtC,YAAY,KAAK,EAAE,2BAA2B;AAC9C,YAAY,YAAY,EAAE,IAAI;AAC9B,SAAS,CAAC;AACV,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,qBAAqB;AACvC,YAAY,KAAK,EAAE,uBAAuB;AAC1C,YAAY,IAAI,EAAE,6BAA6B;AAC/C,YAAY,KAAK,EAAE,2BAA2B;AAC9C,SAAS,CAAC;AACV,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,gBAAgB;AAClC,YAAY,KAAK,EAAE,kBAAkB;AACrC,YAAY,IAAI,EAAE,wBAAwB;AAC1C,YAAY,KAAK,EAAE,2BAA2B;AAC9C,SAAS,CAAC;AACV,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,MAAM;AACxB,YAAY,KAAK,EAAE,cAAc;AACjC,YAAY,IAAI,EAAE,cAAc;AAChC,YAAY,KAAK,EAAE,2BAA2B;AAC9C,YAAY,YAAY,EAAE,MAAM;AAChC,SAAS,CAAC;AACV,QAAQ,qBAAqB,CAAC;AAC9B,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,KAAK,EAAE,UAAU;AAC7B,YAAY,IAAI,EAAE,kBAAkB;AACpC,YAAY,KAAK,EAAE,2BAA2B;AAC9C,YAAY,YAAY,EAAE,KAAK;AAC/B,SAAS,CAAC;AACV,QAAQ,qBAAqB,CAAC;AAC9B,YAAY,IAAI,EAAE,WAAW;AAC7B,YAAY,KAAK,EAAE,YAAY;AAC/B,YAAY,IAAI,EAAE,mBAAmB;AACrC,YAAY,KAAK,EAAE,2BAA2B;AAC9C,SAAS,CAAC;AACV,QAAQ,oBAAoB,CAAC;AAC7B,YAAY,IAAI,EAAE,eAAe;AACjC,YAAY,KAAK,EAAE,iBAAiB;AACpC,YAAY,IAAI,EAAE,uBAAuB;AACzC,YAAY,KAAK,EAAE,2BAA2B;AAC9C,YAAY,YAAY,EAAE,EAAE;AAC5B,SAAS,CAAC;AACV,KAAK;AACL,IAAI,UAAU,EAAE;AAChB,QAAQ,IAAI,EAAE;AACd,YAAY,SAAS,EAAE,MAAM,gFAA8C,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kCAAkC,CAAC;AAC7H,SAAS;AACT,QAAQ,IAAI,EAAE;AACd,YAAY,SAAS,EAAE,MAAM,gFAA8C,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kCAAkC,CAAC;AAC7H,SAAS;AACT,QAAQ,QAAQ,EAAE;AAClB,YAAY,SAAS,EAAE,MAAM,gFAA8C,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kCAAkC,CAAC;AAC7H,SAAS;AACT,KAAK;AACL;AACA;;AClFA;AACA;AACA;AACY,MAAC,iBAAiB,GAAG;AACjC,IAAI,IAAI,EAAE,aAAa;AACvB,IAAI,KAAK,EAAE,EAAE;AACb,IAAI,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK;AAC7B,QAAQ,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,cAAc;AAC1D,QAAQ,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,2DAA2D;AACnG;AACA,QAAQ,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE;AAC9C,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;AACnD,YAAY,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;AAC3B,gBAAgB,EAAE,EAAE,OAAO;AAC3B,gBAAgB,KAAK,EAAE,wDAAwD;AAC/E,aAAa,CAAC;AACd,QAAQ;AACR;AACA;AACA,QAAQ,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE;AAC3C,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,EAAE;AAC3D,YAAY,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;AAC/B,gBAAgB,IAAI,EAAE,cAAc;AACpC,gBAAgB,KAAK;AACrB,gBAAgB,OAAO;AACvB,gBAAgB,MAAM,EAAE;AACxB,oBAAoB,QAAQ,EAAE,QAAQ;AACtC,oBAAoB,SAAS,EAAE;AAC/B,wBAAwB,IAAI,EAAE,0BAA0B;AACxD,wBAAwB,OAAO,EAAE;AACjC,4BAA4B,gBAAgB,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACvF,4BAA4B,UAAU,EAAE,0BAA0B;AAClE,4BAA4B,WAAW,EAAE;AACzC,gCAAgC,KAAK,EAAE,6BAA6B;AACpE,gCAAgC,IAAI,EAAE,4BAA4B;AAClE,6BAA6B;AAC7B,4BAA4B,iBAAiB,EAAE,OAAO,EAAE,iBAAiB;AACzE,4BAA4B,mBAAmB,EAAE,OAAO,EAAE,mBAAmB;AAC7E,4BAA4B,cAAc,EAAE,OAAO,EAAE,cAAc;AACnE,4BAA4B,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,MAAM;AACzD,4BAA4B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,KAAK;AAChE,4BAA4B,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,EAAE;AACvE,4BAA4B,SAAS,EAAE,OAAO,EAAE,SAAS;AACzD,yBAAyB;AACzB,qBAAqB;AACrB,iBAAiB;AACjB,gBAAgB,OAAO,EAAE;AACzB,oBAAoB,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AAC5C,oBAAoB,MAAM,EAAE;AAC5B,wBAAwB,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AACnD,wBAAwB,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;AAClD,qBAAqB;AACrB,iBAAiB;AACjB,aAAa,CAAC;AACd,QAAQ;AACR;AACA;AACA,QAAQ,MAAM,oBAAoB,GAAG,CAAC,MAAM,KAAK;AACjD,YAAY,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE;AACnD,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;AAChE,gBAAgB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACjE,YAAY;AACZ,YAAY,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE;AACvD,YAAY,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,EAAE;AAC3E,gBAAgB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;AACvC,oBAAoB,IAAI,EAAE,cAAc;AACxC,oBAAoB,MAAM,EAAE;AAC5B,wBAAwB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;AACtE,qBAAqB;AACrB,iBAAiB,CAAC;AAClB,YAAY;AACZ,YAAY,OAAO,MAAM;AACzB,QAAQ,CAAC;AACT,QAAQ,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,oBAAoB,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3H,QAAQ,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,oBAAoB,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3H,QAAQ,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,oBAAoB,EAAE,MAAM,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;AACpJ;AACA,IAAI,CAAC;AACL;AACA;;AC/EA;AAQA;AACA;AACO,MAAM,0BAA0B,CAAC;AACxC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC5L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,CAACA,IAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;AACjL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC;AACjR,gBAAgB,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACpD,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;AACnB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,UAAU,EAAE,CAAC;AACrI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE;AAC7B,wBAAwB,mBAAmB,CAAC,QAAQ,CAAC;AACrD,4BAA4B,OAAO,EAAE,CAAC,yBAAyB,CAAC;AAChE,yBAAyB,CAAC;AAC1B,qBAAqB;AACrB,oBAAoB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;AAChH,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AC3Bb;AAEA;;ACFY,MAAC,gCAAgC,GAAG;AAChD,IAAI,gBAAgB,EAAE,8CAA8C;AACpE,IAAI,mBAAmB,EAAE,iDAAiD;AAC1E,IAAI,kBAAkB,EAAE,gDAAgD;AACxE,IAAI,YAAY,EAAE,0CAA0C;AAC5D;;ACLY,MAAC,kBAAkB,GAAG;AAClC,IAAI,qBAAqB,EAAE;AAC3B,QAAQ,UAAU,EAAE,6CAA6C;AACjE,QAAQ,eAAe,EAAE;AACzB,YAAY,UAAU,EAAE,6DAA6D;AACrF,SAAS;AACT,QAAQ,iBAAiB,EAAE;AAC3B,YAAY,UAAU,EAAE,+DAA+D;AACvF,SAAS;AACT,QAAQ,gBAAgB,EAAE;AAC1B,YAAY,UAAU,EAAE,8DAA8D;AACtF,SAAS;AACT,QAAQ,WAAW,EAAE;AACrB,YAAY,UAAU,EAAE,yDAAyD;AACjF,SAAS;AACT,KAAK;AACL;;AChBA;AAOA;AACA;AACO,MAAM,oCAAoC,CAAC;AAClD,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACrD,IAAI;AACJ,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE;AAC3B,QAAQ,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM;AACxC,QAAQ,MAAM,IAAI,GAAG,kBAAkB,CAAC,qBAAqB;AAC7D;AACA,QAAQ,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC;AACvF,QAAQ,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE;AAC3C,YAAY,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC;AACnE,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,iBAAiB,CAAC,iBAAiB;AAC7D,oBAAoB,QAAQ,EAAE,IAAI;AAClC,oBAAoB,IAAI,EAAE,kCAAkC;AAC5D,oBAAoB,IAAI,EAAE,MAAM,CAAC,IAAI;AACrC,oBAAoB,IAAI,EAAE,MAAM;AAChC,oBAAoB,QAAQ,EAAE,EAAE;AAChC,oBAAoB,MAAM,EAAE;AAC5B,wBAAwB,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;AAC/C,qBAAqB;AACrB,iBAAiB;AACjB,aAAa,CAAC;AACd,QAAQ;AACR,QAAQ,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC;AACnE,YAAY;AACZ,gBAAgB,IAAI,EAAE,gCAAgC,CAAC,gBAAgB;AACvE,gBAAgB,IAAI,EAAE,yEAAyE;AAC/F,gBAAgB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC;AAC1G,gBAAgB,IAAI,EAAE,kBAAkB;AACxC,gBAAgB,QAAQ,EAAE,CAAC;AAC3B,gBAAgB,MAAM,EAAE;AACxB,oBAAoB,WAAW,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;AAClE,iBAAiB;AACjB,aAAa;AACb,YAAY;AACZ,gBAAgB,IAAI,EAAE,gCAAgC,CAAC,mBAAmB;AAC1E,gBAAgB,IAAI,EAAE,+EAA+E;AACrG,gBAAgB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC5G,gBAAgB,IAAI,EAAE,kBAAkB;AACxC,gBAAgB,QAAQ,EAAE,CAAC;AAC3B,gBAAgB,MAAM,EAAE;AACxB,oBAAoB,WAAW,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;AACpE,iBAAiB;AACjB,aAAa;AACb,YAAY;AACZ,gBAAgB,IAAI,EAAE,gCAAgC,CAAC,kBAAkB;AACzE,gBAAgB,IAAI,EAAE,6EAA6E;AACnG,gBAAgB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC;AAC3G,gBAAgB,IAAI,EAAE,iBAAiB;AACvC,gBAAgB,QAAQ,EAAE,CAAC;AAC3B,gBAAgB,MAAM,EAAE;AACxB,oBAAoB,WAAW,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;AACnE,iBAAiB;AACjB,aAAa;AACb,SAAS,CAAC;AACV;AACA,QAAQ,OAAO,CAAC,QAAQ,CAAC;AACzB,YAAY;AACZ,gBAAgB,IAAI,EAAE,gCAAgC,CAAC,YAAY;AACnE,gBAAgB,QAAQ,EAAE,IAAI;AAC9B,gBAAgB,IAAI,EAAE,mCAAmC;AACzD,gBAAgB,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI;AAC1D,gBAAgB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;AACtG,gBAAgB,MAAM,EAAE;AACxB,oBAAoB,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3C,oBAAoB,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;AAC9D,iBAAiB;AACjB,aAAa;AACb,SAAS,CAAC;AACV,IAAI;AACJ;AACA;;;;;;;AC7EO,MAAM,oDAAoD,CAAC;AAClE,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAC5D,IAAI;AACJ,IAAI,MAAM,MAAM,CAAC,OAAO,EAAE;AAC1B,QAAQ,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5C,QAAQ,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;AAChG,QAAQ,MAAM,SAAS,GAAG,OAAO,GAAG,EAAE,KAAK,GAAG,OAAO,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/J,QAAQ,MAAM,WAAW,GAAG,OAAO,GAAG,EAAE,KAAK,GAAG,OAAO,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACpK,QAAQ,MAAM,UAAU,GAAG,OAAO,GAAG,EAAE,KAAK,GAAG,OAAO,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAClK,QAAQ,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,4CAA4C,CAAC,CAAC;AACpI,QAAQ,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACzI,QAAQ,MAAM,IAAI,GAAG,kBAAkB,CAAC,qBAAqB;AAC7D,QAAQ;AACR,aAAa,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW;AACzD,aAAa,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC;AAC/H,aAAa,aAAa;AAC1B,aAAa,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC;AACrI,aAAa,aAAa;AAC1B,aAAa,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC;AAClI,aAAa,aAAa;AAC1B,aAAa,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,gBAAgB,EAAE,eAAe;AACzF,aAAa,aAAa;AAC1B,aAAa,QAAQ,EAAE;AACvB,IAAI;AACJ;;;;;;;AC7BA;AAIA;AACA;AACO,MAAM,oDAAoD,CAAC;AAClE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACtN,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,CAAC,CAAC;AACxK,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,SAAS,EAAE;AACjL,YAAY;AACZ,gBAAgB,OAAO,EAAE,+CAA+C;AACxE,gBAAgB,QAAQ,EAAE,mDAAmD;AAC7E,aAAa;AACb,SAAS,EAAE,CAAC,CAAC;AACb;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,UAAU,EAAE,CAAC;AAC/J,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,SAAS,EAAE;AAC/B,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,+CAA+C;AACpF,4BAA4B,QAAQ,EAAE,mDAAmD;AACzF,yBAAyB;AACzB,qBAAqB;AACrB,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AC1Bb;AAIA;AACA;AACO,MAAM,oDAAoD,CAAC;AAClE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACtN,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,CAAC,CAAC;AACxK,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,SAAS,EAAE;AACjL,YAAY;AACZ,gBAAgB,OAAO,EAAE,+CAA+C;AACxE,gBAAgB,QAAQ,EAAE,mDAAmD;AAC7E,aAAa;AACb,SAAS,EAAE,CAAC,CAAC;AACb;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oDAAoD,EAAE,UAAU,EAAE,CAAC;AAC/J,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,SAAS,EAAE;AAC/B,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,+CAA+C;AACpF,4BAA4B,QAAQ,EAAE,mDAAmD;AACzF,yBAAyB;AACzB,qBAAqB;AACrB,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AC1Bb;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,6BAA6B,GAAG;AAC7C,IAAI,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAChC,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK;AAClC,IAAI,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAChC,IAAI,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAChC,IAAI,QAAQ,EAAE,KAAK;AACnB;AACA,CAAC;AACD;;ACjBA;AAcA;AACA;AACO,MAAM,8BAA8B,CAAC;AAC5C,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AAChM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,OAAO,EAAE,CAAC,mDAAmD;AAC7M,YAAY,qDAAqD;AACjE,YAAY,oDAAoD;AAChE,YAAY,oDAAoD;AAChE,YAAY,+CAA+C;AAC3D,YAAY,0BAA0B,CAAC,EAAE,CAAC,CAAC;AAC3C,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,SAAS,EAAE;AAC3J;AACA,YAAY;AACZ,gBAAgB,OAAO,EAAE,4BAA4B;AACrD,gBAAgB,QAAQ,EAAE,6BAA6B;AACvD,gBAAgB,KAAK,EAAE,IAAI;AAC3B,aAAa;AACb;AACA,YAAY,mBAAmB,CAAC,kCAAkC,EAAE,MAAM,6EAA0C,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oDAAoD,CAAC,CAAC;AACzL,YAAY,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,6DAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oCAAoC,CAAC,CAAC;AACvI,YAAY,mBAAmB,CAAC,4BAA4B,EAAE,MAAM,+DAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,sCAAsC,CAAC,CAAC;AACtJ,YAAY,mBAAmB,CAAC,mBAAmB,EAAE,MAAM,+DAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,6CAA6C,CAAC,CAAC;AACpJ,SAAS,EAAE,OAAO,EAAE,CAAC,mDAAmD;AACxE,YAAY,qDAAqD;AACjE,YAAY,oDAAoD;AAChE,YAAY,oDAAoD;AAChE,YAAY,+CAA+C;AAC3D,YAAY,0BAA0B,CAAC,EAAE,CAAC,CAAC;AAC3C;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,UAAU,EAAE,CAAC;AACzI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE;AAC7B,wBAAwB,mDAAmD;AAC3E,wBAAwB,qDAAqD;AAC7E,wBAAwB,oDAAoD;AAC5E,wBAAwB,oDAAoD;AAC5E,wBAAwB,+CAA+C;AACvE,wBAAwB,0BAA0B;AAClD,qBAAqB;AACrB,oBAAoB,SAAS,EAAE;AAC/B;AACA,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,4BAA4B;AACjE,4BAA4B,QAAQ,EAAE,6BAA6B;AACnE,4BAA4B,KAAK,EAAE,IAAI;AACvC,yBAAyB;AACzB;AACA,wBAAwB,mBAAmB,CAAC,kCAAkC,EAAE,MAAM,6EAA0C,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oDAAoD,CAAC,CAAC;AACrM,wBAAwB,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,6DAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oCAAoC,CAAC,CAAC;AACnJ,wBAAwB,mBAAmB,CAAC,4BAA4B,EAAE,MAAM,+DAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,sCAAsC,CAAC,CAAC;AAClK,wBAAwB,mBAAmB,CAAC,mBAAmB,EAAE,MAAM,+DAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,6CAA6C,CAAC,CAAC;AAChK,qBAAqB;AACrB,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACnEN,MAAM,wBAAwB,SAAS,wBAAwB,CAAC;AACvE,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,GAAG,SAAS,CAAC;AAC3B,QAAQ,IAAI,CAAC,QAAQ,GAAG;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,IAAI;AACJ;;AClBA;AAGA;AACA;AACO,MAAM,6CAA6C,SAAS,wBAAwB,CAAC;AAC5F,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,GAAG,SAAS,CAAC;AAC3B,QAAQ,IAAI,CAAC,QAAQ,GAAG;AACxB,YAAY;AACZ,gBAAgB,KAAK,EAAE,QAAQ;AAC/B,gBAAgB,KAAK,EAAE,0DAA0D;AACjF,gBAAgB,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI;AAC1D,gBAAgB,WAAW,EAAE,gEAAgE;AAC7F,gBAAgB,OAAO,EAAE;AACzB,oBAAoB,IAAI,EAAE,eAAe;AACzC,oBAAoB,OAAO,EAAE;AAC7B,wBAAwB,MAAM,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACnG,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,IAAI;AACJ;AACA;;;;;;;ACpCO,MAAM,kBAAkB,CAAC;AAChC,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AC1BA;AACA;AACA;;;;"}