@acorex/platform 18.2.1 → 18.2.3

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 (454) hide show
  1. package/common/lib/app/application.types.d.ts +8 -0
  2. package/common/lib/app/operators.d.ts +1 -0
  3. package/common/lib/common.module.d.ts +6 -7
  4. package/common/lib/data/entity-storage-service.d.ts +0 -1
  5. package/common/lib/data/filter-middleware.service.d.ts +28 -0
  6. package/common/lib/data/index.d.ts +3 -1
  7. package/common/lib/data/operators.service.d.ts +14 -0
  8. package/common/lib/layout/index.d.ts +0 -2
  9. package/common/lib/layout/menu/index.d.ts +0 -1
  10. package/common/lib/layout/menu/menu.provider.d.ts +11 -4
  11. package/common/lib/layout/menu/menu.service.d.ts +8 -2
  12. package/common/lib/layout/menu/menu.types.d.ts +9 -6
  13. package/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.d.ts +0 -2
  14. package/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.d.ts +1 -0
  15. package/common/lib/schema/widgets/email/email-widget-edit.component.d.ts +0 -2
  16. package/common/lib/schema/widgets/phone/phone-widget-edit.component.d.ts +0 -2
  17. package/common/lib/schema/widgets/text/text-widget-edit.component.d.ts +0 -2
  18. package/common/lib/settings/index.d.ts +2 -1
  19. package/common/lib/settings/setting-definition.provider.d.ts +19 -0
  20. package/common/lib/settings/settings.types.d.ts +51 -0
  21. package/common/lib/utils/index.d.ts +0 -1
  22. package/esm2022/common/lib/app/application.types.mjs +4 -4
  23. package/esm2022/common/lib/app/operators.mjs +16 -1
  24. package/esm2022/common/lib/common.module.mjs +23 -12
  25. package/esm2022/common/lib/data/entity-storage-service.mjs +4 -4
  26. package/esm2022/common/lib/data/filter-middleware.service.mjs +53 -0
  27. package/esm2022/common/lib/data/index.mjs +4 -2
  28. package/esm2022/common/lib/data/operators.service.mjs +15 -0
  29. package/esm2022/common/lib/layout/index.mjs +1 -3
  30. package/esm2022/common/lib/layout/menu/index.mjs +1 -2
  31. package/esm2022/common/lib/layout/menu/menu.provider.mjs +105 -24
  32. package/esm2022/common/lib/layout/menu/menu.service.mjs +43 -11
  33. package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
  34. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +2 -2
  35. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +2 -2
  36. package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +2 -2
  37. package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +2 -2
  38. package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +22 -22
  39. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +7 -8
  40. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +47 -25
  41. package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +6 -7
  42. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +2 -2
  43. package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +2 -2
  44. package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +6 -7
  45. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +2 -2
  46. package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +6 -7
  47. package/esm2022/common/lib/settings/index.mjs +3 -2
  48. package/esm2022/common/lib/settings/setting-definition.provider.mjs +183 -0
  49. package/esm2022/common/lib/settings/settings.types.mjs +1 -1
  50. package/esm2022/common/lib/utils/data-generator.mjs +1 -1
  51. package/esm2022/common/lib/utils/index.mjs +1 -2
  52. package/esm2022/common/lib/workflows/common.workflow.mjs +5 -3
  53. package/esm2022/layout/builder/lib/builder/builder.service.mjs +3 -2
  54. package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +3 -1
  55. package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +7 -5
  56. package/esm2022/layout/builder/lib/builder/widget.types.mjs +17 -8
  57. package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +61 -34
  58. package/esm2022/layout/designer/lib/designer/components/breadcrumbs/breadcrumbs.component.mjs +27 -32
  59. package/esm2022/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.mjs +1 -1
  60. package/esm2022/layout/designer/lib/designer/components/grid-drawer/grid-drawer.component.mjs +2 -2
  61. package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +34 -14
  62. package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +23 -23
  63. package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +3 -3
  64. package/esm2022/layout/designer/lib/designer/designer.component.mjs +10 -4
  65. package/esm2022/layout/designer/lib/designer/index.mjs +2 -1
  66. package/esm2022/layout/designer/lib/designer/shared/designer-connector.service.mjs +5 -6
  67. package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +158 -61
  68. package/esm2022/layout/designer/lib/designer/shared/designer.types.mjs +1 -1
  69. package/esm2022/layout/designer/lib/designer/shared/generic-commands.types.mjs +52 -0
  70. package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +32 -38
  71. package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +3 -3
  72. package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +3 -3
  73. package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +10 -9
  74. package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +4 -3
  75. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +26 -20
  76. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +5 -3
  77. package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +3 -3
  78. package/esm2022/layout/entity/lib/entity.module.mjs +12 -1
  79. package/esm2022/layout/entity/lib/entity.viewmodel.mjs +7 -5
  80. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +10 -4
  81. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +42 -32
  82. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +3 -3
  83. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +1 -2
  84. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +79 -40
  85. package/esm2022/layout/setting/acorex-platform-layout-setting.mjs +5 -0
  86. package/esm2022/layout/setting/index.mjs +2 -0
  87. package/esm2022/layout/setting/lib/setting.viewmodel.mjs +50 -0
  88. package/esm2022/layouts/lib/admin/admin.module.mjs +17 -5
  89. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +2 -2
  90. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +3 -3
  91. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +4 -3
  92. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +8 -23
  93. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +1 -1
  94. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +2 -6
  95. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +4 -5
  96. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +8 -11
  97. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +12 -10
  98. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +2 -2
  99. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +3 -3
  100. package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +1 -3
  101. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +2 -2
  102. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +2 -2
  103. package/esm2022/themes/default/index.mjs +2 -1
  104. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +39 -25
  105. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +2 -2
  106. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +6 -9
  107. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +2 -6
  108. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +24 -18
  109. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +2 -2
  110. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +6 -8
  111. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +3 -3
  112. package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +6 -8
  113. package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +3 -3
  114. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +11 -40
  115. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +3 -2
  116. package/esm2022/themes/default/lib/layouts/setting-layout/convert-setting-data.mjs +49 -0
  117. package/esm2022/themes/default/lib/layouts/setting-layout/index.mjs +3 -0
  118. package/esm2022/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.mjs +104 -0
  119. package/esm2022/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.mjs +44 -0
  120. package/esm2022/themes/shared/lib/services/theme.service.mjs +183 -19
  121. package/esm2022/widgets/lib/properties/editors.props.mjs +2 -2
  122. package/esm2022/widgets/lib/properties/layout.props.mjs +13 -13
  123. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-column.component.mjs +20 -0
  124. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-designer.component.mjs +18 -0
  125. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.mjs +24 -0
  126. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-filter.component.mjs +20 -0
  127. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-print.component.mjs +19 -0
  128. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-view.component.mjs +22 -0
  129. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.mjs +31 -0
  130. package/esm2022/widgets/lib/widgets/advance/cron-job/index.mjs +8 -0
  131. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +2 -2
  132. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +44 -20
  133. package/esm2022/widgets/lib/widgets/editors/contact/popup-component.mjs +1 -1
  134. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +1 -2
  135. package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +1 -2
  136. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +18 -25
  137. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.mjs +7 -11
  138. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +7 -12
  139. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.mjs +24 -15
  140. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +14 -7
  141. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.mjs +3 -3
  142. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.mjs +29 -67
  143. package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +32 -17
  144. package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +6 -7
  145. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +1 -22
  146. package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +3 -3
  147. package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +76 -78
  148. package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +9 -9
  149. package/esm2022/widgets/lib/widgets/layout/template/template-picker/template-picker.component.mjs +120 -0
  150. package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +65 -24
  151. package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +27 -7
  152. package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +18 -1
  153. package/esm2022/widgets/lib/widgets.module.mjs +5 -2
  154. package/fesm2022/acorex-platform-auth.mjs +1 -1
  155. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BYEjzXpW.mjs → acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs} +4 -6
  156. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BYEjzXpW.mjs.map → acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs.map} +1 -1
  157. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-CfHELBLm.mjs → acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs} +5 -7
  158. package/fesm2022/acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs.map +1 -0
  159. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-DRDiIxsn.mjs → acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs} +5 -7
  160. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs.map +1 -0
  161. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs → acorex-platform-common-change-password.component-g_GEw3IZ.mjs} +4 -4
  162. package/fesm2022/{acorex-platform-common-change-password.component-Djd4SeNv.mjs.map → acorex-platform-common-change-password.component-g_GEw3IZ.mjs.map} +1 -1
  163. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Bn0tnHyT.mjs → acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs} +5 -7
  164. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Bn0tnHyT.mjs.map → acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs.map} +1 -1
  165. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-BuS0Pg-j.mjs → acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs} +6 -8
  166. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs.map +1 -0
  167. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-D7kmxXjj.mjs → acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs} +5 -7
  168. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-D7kmxXjj.mjs.map → acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs.map} +1 -1
  169. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-CtS98tbi.mjs → acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs} +5 -7
  170. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs.map +1 -0
  171. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-Dm4QofDq.mjs → acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs} +10 -14
  172. package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs.map +1 -0
  173. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-DDny36SE.mjs → acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs} +50 -30
  174. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs.map +1 -0
  175. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-lzf0fwxr.mjs → acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs} +5 -7
  176. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-lzf0fwxr.mjs.map → acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs.map} +1 -1
  177. package/fesm2022/{acorex-platform-common-email-widget-column.component-Cy_Kj9po.mjs → acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs} +5 -7
  178. package/fesm2022/acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs.map +1 -0
  179. package/fesm2022/{acorex-platform-common-email-widget-edit.component-DTxCX3ok.mjs → acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs} +10 -13
  180. package/fesm2022/acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs.map +1 -0
  181. package/fesm2022/{acorex-platform-common-email-widget-view.component-CvEHLvcT.mjs → acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs} +4 -6
  182. package/fesm2022/{acorex-platform-common-email-widget-view.component-CvEHLvcT.mjs.map → acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs.map} +1 -1
  183. package/fesm2022/{acorex-platform-common-file-widget-column.component-GtbElxmS.mjs → acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs} +5 -7
  184. package/fesm2022/acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs.map +1 -0
  185. package/fesm2022/{acorex-platform-common-file-widget-edit.component-3fR5jRFv.mjs → acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs} +5 -7
  186. package/fesm2022/{acorex-platform-common-file-widget-edit.component-3fR5jRFv.mjs.map → acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs.map} +1 -1
  187. package/fesm2022/{acorex-platform-common-file-widget-filter.component-B7etTIuq.mjs → acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs} +5 -7
  188. package/fesm2022/acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs.map +1 -0
  189. package/fesm2022/{acorex-platform-common-file-widget-view.component-RsQQjlL7.mjs → acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs} +5 -7
  190. package/fesm2022/{acorex-platform-common-file-widget-view.component-RsQQjlL7.mjs.map → acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs.map} +1 -1
  191. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CixJEDUT.mjs → acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs} +4 -6
  192. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CixJEDUT.mjs.map → acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs.map} +1 -1
  193. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-1wzY6U5s.mjs → acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs} +5 -7
  194. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs.map +1 -0
  195. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-YaLJU3Cv.mjs → acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs} +4 -6
  196. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-YaLJU3Cv.mjs.map → acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs.map} +1 -1
  197. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-BeiJZnEv.mjs → acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs} +4 -6
  198. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs.map +1 -0
  199. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-C5DZ-cez.mjs → acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs} +5 -7
  200. package/fesm2022/acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs.map +1 -0
  201. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-uopyJIC1.mjs → acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs} +5 -7
  202. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-uopyJIC1.mjs.map → acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs.map} +1 -1
  203. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-D1lrIkz4.mjs → acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs} +5 -7
  204. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs.map +1 -0
  205. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-DTNcGNir.mjs → acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs} +5 -7
  206. package/fesm2022/acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs.map +1 -0
  207. package/fesm2022/{acorex-platform-common-map-widget-edit.component-h4SRiV6_.mjs → acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs} +5 -7
  208. package/fesm2022/acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs.map +1 -0
  209. package/fesm2022/{acorex-platform-common-map-widget-view.component-Deos8gVy.mjs → acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs} +5 -7
  210. package/fesm2022/acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs.map +1 -0
  211. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-DN8dFLZD.mjs → acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs} +5 -7
  212. package/fesm2022/acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs.map +1 -0
  213. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-m_zxHCw5.mjs → acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs} +5 -7
  214. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs.map +1 -0
  215. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DA9MiNb9.mjs → acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs} +5 -7
  216. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-DA9MiNb9.mjs.map → acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs.map} +1 -1
  217. package/fesm2022/{acorex-platform-common-number-widget-edit.component-B0if4vR4.mjs → acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs} +5 -7
  218. package/fesm2022/acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs.map +1 -0
  219. package/fesm2022/{acorex-platform-common-number-widget-filter.component-BgTJbR2u.mjs → acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs} +6 -8
  220. package/fesm2022/acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs.map +1 -0
  221. package/fesm2022/{acorex-platform-common-number-widget-view.component-Du1oQYBH.mjs → acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs} +5 -7
  222. package/fesm2022/acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs.map +1 -0
  223. package/fesm2022/{acorex-platform-common-password-widget-column.component-CEWtRX1S.mjs → acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs} +5 -7
  224. package/fesm2022/{acorex-platform-common-password-widget-column.component-CEWtRX1S.mjs.map → acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs.map} +1 -1
  225. package/fesm2022/{acorex-platform-common-password-widget-edit.component-B-_m6f_C.mjs → acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs} +5 -7
  226. package/fesm2022/acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs.map +1 -0
  227. package/fesm2022/{acorex-platform-common-password-widget-view.component-BVW-Zak-.mjs → acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs} +6 -7
  228. package/fesm2022/{acorex-platform-common-password-widget-view.component-BVW-Zak-.mjs.map → acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs.map} +1 -1
  229. package/fesm2022/{acorex-platform-common-phone-widget-column.component-DGaGGltV.mjs → acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs} +5 -7
  230. package/fesm2022/{acorex-platform-common-phone-widget-column.component-DGaGGltV.mjs.map → acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs.map} +1 -1
  231. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-BNfAQ_4j.mjs → acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs} +9 -12
  232. package/fesm2022/acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs.map +1 -0
  233. package/fesm2022/{acorex-platform-common-phone-widget-view.component-xGygt5Y9.mjs → acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs} +5 -7
  234. package/fesm2022/{acorex-platform-common-phone-widget-view.component-xGygt5Y9.mjs.map → acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs.map} +1 -1
  235. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BJYxnZm2.mjs → acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs} +5 -7
  236. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-BJYxnZm2.mjs.map → acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs.map} +1 -1
  237. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-Dvv8JnXl.mjs → acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs} +5 -7
  238. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs.map +1 -0
  239. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-B77Y5luo.mjs → acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs} +5 -7
  240. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs.map +1 -0
  241. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-1zPVFgFG.mjs → acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs} +5 -7
  242. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-1zPVFgFG.mjs.map → acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs.map} +1 -1
  243. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-Tdkf-0cn.mjs → acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs} +6 -8
  244. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs.map +1 -0
  245. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-y2aFk-A6.mjs → acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs} +4 -6
  246. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs.map +1 -0
  247. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-DLc1MHex.mjs → acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs} +5 -7
  248. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs.map +1 -0
  249. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-qUuwwYlj.mjs → acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs} +4 -6
  250. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-qUuwwYlj.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs.map} +1 -1
  251. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-D5XVZ88b.mjs → acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs} +5 -7
  252. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs.map +1 -0
  253. package/fesm2022/{acorex-platform-common-string-widget-filter.component-B9h7CnEz.mjs → acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs} +6 -8
  254. package/fesm2022/acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs.map +1 -0
  255. package/fesm2022/{acorex-platform-common-text-widget-column.component-LFKeHZbS.mjs → acorex-platform-common-text-widget-column.component-DVczwvKA.mjs} +5 -7
  256. package/fesm2022/{acorex-platform-common-text-widget-column.component-LFKeHZbS.mjs.map → acorex-platform-common-text-widget-column.component-DVczwvKA.mjs.map} +1 -1
  257. package/fesm2022/{acorex-platform-common-text-widget-edit.component-BiyTKmvV.mjs → acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs} +10 -14
  258. package/fesm2022/acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs.map +1 -0
  259. package/fesm2022/{acorex-platform-common-text-widget-view.component-BDxpsxE6.mjs → acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs} +5 -7
  260. package/fesm2022/{acorex-platform-common-text-widget-view.component-BDxpsxE6.mjs.map → acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs.map} +1 -1
  261. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-BnmR9hFM.mjs → acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs} +5 -7
  262. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-BnmR9hFM.mjs.map → acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs.map} +1 -1
  263. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-Cz7LayX-.mjs → acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs} +5 -7
  264. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs.map +1 -0
  265. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Cq2-5QUg.mjs → acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs} +5 -7
  266. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Cq2-5QUg.mjs.map → acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs.map} +1 -1
  267. package/fesm2022/acorex-platform-common.mjs +1203 -1069
  268. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  269. package/fesm2022/acorex-platform-layout-builder.mjs +25 -11
  270. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  271. package/fesm2022/acorex-platform-layout-designer.mjs +396 -211
  272. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  273. package/fesm2022/acorex-platform-layout-entity.mjs +186 -113
  274. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  275. package/fesm2022/acorex-platform-layout-setting.mjs +57 -0
  276. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -0
  277. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs → acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs} +3 -3
  278. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs.map → acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs.map} +1 -1
  279. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs → acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs} +2 -2
  280. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs.map → acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs.map} +1 -1
  281. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs} +3 -3
  282. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs.map → acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs.map} +1 -1
  283. package/fesm2022/acorex-platform-layouts.mjs +47 -55
  284. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  285. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-dByV3T8-.mjs → acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs} +7 -7
  286. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-dByV3T8-.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs.map} +1 -1
  287. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs +301 -0
  288. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs.map +1 -0
  289. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CdwlY0Fa.mjs → acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs} +7 -7
  290. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CdwlY0Fa.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs.map} +1 -1
  291. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs +148 -0
  292. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs.map +1 -0
  293. package/fesm2022/acorex-platform-themes-default.mjs +240 -79
  294. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  295. package/fesm2022/acorex-platform-themes-shared.mjs +184 -20
  296. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  297. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs → acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs} +2 -2
  298. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs.map → acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs.map} +1 -1
  299. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs} +2 -2
  300. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs.map → acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs.map} +1 -1
  301. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs} +3 -3
  302. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs.map → acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs.map} +1 -1
  303. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs} +2 -2
  304. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs.map → acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs.map} +1 -1
  305. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs → acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs} +2 -2
  306. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs.map → acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs.map} +1 -1
  307. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs → acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs} +2 -2
  308. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs.map → acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs.map} +1 -1
  309. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs → acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs} +76 -78
  310. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs.map +1 -0
  311. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs} +2 -2
  312. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs.map → acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs.map} +1 -1
  313. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs +123 -0
  314. package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs.map +1 -0
  315. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs +136 -0
  316. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs.map +1 -0
  317. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs → acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs} +2 -2
  318. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs.map → acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs.map} +1 -1
  319. package/fesm2022/acorex-platform-widgets.mjs +431 -269
  320. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  321. package/fesm2022/acorex-platform-workflow.mjs +1 -1
  322. package/layout/builder/lib/builder/widget.types.d.ts +4 -3
  323. package/layout/designer/lib/designer/components/board/board.component.d.ts +8 -0
  324. package/layout/designer/lib/designer/designer.component.d.ts +3 -1
  325. package/layout/designer/lib/designer/index.d.ts +1 -0
  326. package/layout/designer/lib/designer/shared/designer-connector.service.d.ts +10 -6
  327. package/layout/designer/lib/designer/shared/designer.service.d.ts +18 -3
  328. package/layout/designer/lib/designer/shared/generic-commands.types.d.ts +9 -0
  329. package/layout/designer/lib/designer/shared/widget-designer-renderer.directive.d.ts +8 -5
  330. package/layout/designer/lib/preview/preview-viewer.component.d.ts +2 -2
  331. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -2
  332. package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +3 -1
  333. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +2 -2
  334. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +3 -3
  335. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -0
  336. package/layout/entity/lib/entity.viewmodel.d.ts +5 -3
  337. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +14 -12
  338. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +13 -10
  339. package/layout/setting/README.md +4 -0
  340. package/layout/setting/index.d.ts +1 -0
  341. package/layout/setting/lib/setting.viewmodel.d.ts +13 -0
  342. package/layouts/lib/admin/admin.module.d.ts +6 -3
  343. package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +42 -9
  344. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.d.ts +0 -2
  345. package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +0 -3
  346. package/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.d.ts +4 -2
  347. package/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.d.ts +0 -1
  348. package/package.json +18 -18
  349. package/themes/default/index.d.ts +1 -0
  350. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +47 -9
  351. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +42 -4
  352. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +0 -2
  353. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.d.ts +1 -1
  354. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +42 -3
  355. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +42 -2
  356. package/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.d.ts +8 -2
  357. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +42 -14
  358. package/themes/default/lib/layouts/setting-layout/convert-setting-data.d.ts +21 -0
  359. package/themes/default/lib/layouts/setting-layout/index.d.ts +2 -0
  360. package/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.d.ts +24 -0
  361. package/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.d.ts +20 -0
  362. package/themes/shared/lib/components/theme-slot.component.d.ts +31 -5
  363. package/themes/shared/lib/services/theme.service.d.ts +45 -5
  364. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-column.component.d.ts +6 -0
  365. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-designer.component.d.ts +6 -0
  366. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.d.ts +8 -0
  367. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-filter.component.d.ts +6 -0
  368. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-print.component.d.ts +6 -0
  369. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-view.component.d.ts +7 -0
  370. package/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.d.ts +7 -0
  371. package/widgets/lib/widgets/advance/cron-job/index.d.ts +7 -0
  372. package/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.d.ts +2 -0
  373. package/widgets/lib/widgets/editors/select/select-box-widget-view.component.d.ts +2 -3
  374. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.d.ts +1 -1
  375. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.d.ts +1 -1
  376. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.d.ts +3 -3
  377. package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +1 -2
  378. package/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.d.ts +1 -1
  379. package/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.d.ts +1 -1
  380. package/widgets/lib/widgets/layout/page/page-widget-designer.component.d.ts +8 -9
  381. package/widgets/lib/widgets/layout/template/template-picker/template-picker.component.d.ts +30 -0
  382. package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +3 -0
  383. package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +1 -0
  384. package/widgets/lib/widgets/layout/template/template.provider.d.ts +3 -0
  385. package/common/lib/layout/layout.service.d.ts +0 -19
  386. package/common/lib/layout/menu/menu.loader.d.ts +0 -17
  387. package/common/lib/layout/theme/store/admin-layout.actions.d.ts +0 -7
  388. package/common/lib/layout/theme/store/admin-layout.effects.d.ts +0 -9
  389. package/common/lib/layout/theme/store/admin-layout.reducers.d.ts +0 -19
  390. package/common/lib/layout/theme/store/admin-layout.selectors.d.ts +0 -4
  391. package/common/lib/layout/theme/store/admin-layout.state.d.ts +0 -11
  392. package/common/lib/layout/theme/store/index.d.ts +0 -5
  393. package/common/lib/utils/router-util.service.d.ts +0 -12
  394. package/esm2022/common/lib/layout/layout.service.mjs +0 -79
  395. package/esm2022/common/lib/layout/menu/menu.loader.mjs +0 -39
  396. package/esm2022/common/lib/layout/theme/store/admin-layout.actions.mjs +0 -11
  397. package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +0 -21
  398. package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +0 -63
  399. package/esm2022/common/lib/layout/theme/store/admin-layout.selectors.mjs +0 -7
  400. package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +0 -13
  401. package/esm2022/common/lib/layout/theme/store/index.mjs +0 -6
  402. package/esm2022/common/lib/utils/router-util.service.mjs +0 -43
  403. package/esm2022/mocks/acorex-platform-mocks.mjs +0 -5
  404. package/esm2022/mocks/index.mjs +0 -7
  405. package/esm2022/mocks/lib/mocks.module.mjs +0 -15
  406. package/esm2022/mocks/lib/services/mocker.service.mjs +0 -114
  407. package/esm2022/mocks/lib/storage/storage.mock.service.mjs +0 -183
  408. package/fesm2022/acorex-platform-common-avatar-widget-view.component-CfHELBLm.mjs.map +0 -1
  409. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-DRDiIxsn.mjs.map +0 -1
  410. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BuS0Pg-j.mjs.map +0 -1
  411. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-CtS98tbi.mjs.map +0 -1
  412. package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-Dm4QofDq.mjs.map +0 -1
  413. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-DDny36SE.mjs.map +0 -1
  414. package/fesm2022/acorex-platform-common-email-widget-column.component-Cy_Kj9po.mjs.map +0 -1
  415. package/fesm2022/acorex-platform-common-email-widget-edit.component-DTxCX3ok.mjs.map +0 -1
  416. package/fesm2022/acorex-platform-common-file-widget-column.component-GtbElxmS.mjs.map +0 -1
  417. package/fesm2022/acorex-platform-common-file-widget-filter.component-B7etTIuq.mjs.map +0 -1
  418. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-1wzY6U5s.mjs.map +0 -1
  419. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BeiJZnEv.mjs.map +0 -1
  420. package/fesm2022/acorex-platform-common-lookup-widget-column.component-C5DZ-cez.mjs.map +0 -1
  421. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-D1lrIkz4.mjs.map +0 -1
  422. package/fesm2022/acorex-platform-common-lookup-widget-view.component-DTNcGNir.mjs.map +0 -1
  423. package/fesm2022/acorex-platform-common-map-widget-edit.component-h4SRiV6_.mjs.map +0 -1
  424. package/fesm2022/acorex-platform-common-map-widget-view.component-Deos8gVy.mjs.map +0 -1
  425. package/fesm2022/acorex-platform-common-messenger-widget-column.component-DN8dFLZD.mjs.map +0 -1
  426. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-m_zxHCw5.mjs.map +0 -1
  427. package/fesm2022/acorex-platform-common-number-widget-edit.component-B0if4vR4.mjs.map +0 -1
  428. package/fesm2022/acorex-platform-common-number-widget-filter.component-BgTJbR2u.mjs.map +0 -1
  429. package/fesm2022/acorex-platform-common-number-widget-view.component-Du1oQYBH.mjs.map +0 -1
  430. package/fesm2022/acorex-platform-common-password-widget-edit.component-B-_m6f_C.mjs.map +0 -1
  431. package/fesm2022/acorex-platform-common-phone-widget-edit.component-BNfAQ_4j.mjs.map +0 -1
  432. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Dvv8JnXl.mjs.map +0 -1
  433. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-B77Y5luo.mjs.map +0 -1
  434. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-Tdkf-0cn.mjs.map +0 -1
  435. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-y2aFk-A6.mjs.map +0 -1
  436. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-DLc1MHex.mjs.map +0 -1
  437. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-D5XVZ88b.mjs.map +0 -1
  438. package/fesm2022/acorex-platform-common-string-widget-filter.component-B9h7CnEz.mjs.map +0 -1
  439. package/fesm2022/acorex-platform-common-text-widget-edit.component-BiyTKmvV.mjs.map +0 -1
  440. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-Cz7LayX-.mjs.map +0 -1
  441. package/fesm2022/acorex-platform-mocks.mjs +0 -319
  442. package/fesm2022/acorex-platform-mocks.mjs.map +0 -1
  443. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-mzb-FV9E.mjs +0 -299
  444. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-mzb-FV9E.mjs.map +0 -1
  445. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-ItkFB3QF.mjs +0 -150
  446. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-ItkFB3QF.mjs.map +0 -1
  447. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs.map +0 -1
  448. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-BWc0_EA0.mjs +0 -96
  449. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-BWc0_EA0.mjs.map +0 -1
  450. package/mocks/README.md +0 -3
  451. package/mocks/index.d.ts +0 -3
  452. package/mocks/lib/mocks.module.d.ts +0 -7
  453. package/mocks/lib/services/mocker.service.d.ts +0 -29
  454. package/mocks/lib/storage/storage.mock.service.d.ts +0 -25
@@ -1,29 +1,27 @@
1
- import { AXPLayoutRootDrawerToggle, getRootDrawer } from '@acorex/platform/common';
1
+ import { AXPLayoutThemeService } from '@acorex/platform/themes/shared';
2
2
  import { Component, ViewEncapsulation, inject } from '@angular/core';
3
3
  import { Router } from '@angular/router';
4
- import { Store } from '@ngrx/store';
5
4
  import * as i0 from "@angular/core";
6
5
  import * as i1 from "@angular/common";
7
6
  import * as i2 from "@acorex/platform/common";
8
7
  export class AXPRootLayoutHeaderComponent {
9
8
  constructor() {
10
- this.store = inject((Store));
9
+ this.store = inject(AXPLayoutThemeService);
11
10
  this.router = inject(Router);
12
- this.isOpen = this.store.select(getRootDrawer());
13
11
  }
14
12
  menuClick() {
15
- this.store.dispatch(AXPLayoutRootDrawerToggle());
13
+ this.store.toggleSideMenu();
16
14
  }
17
15
  logoClick() {
18
16
  this.router.navigate(['/']);
19
17
  }
20
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header", host: { classAttribute: "ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b" }, ngImport: i0, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !(isOpen | async) }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header", host: { classAttribute: "ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b" }, ngImport: i0, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !store.isSideMenuOpen() }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity, 1));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name"] }], encapsulation: i0.ViewEncapsulation.None }); }
22
20
  }
23
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutHeaderComponent, decorators: [{
24
22
  type: Component,
25
23
  args: [{ selector: 'axp-dashboard-admin-header', encapsulation: ViewEncapsulation.None, host: {
26
24
  class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',
27
- }, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !(isOpen | async) }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"] }]
25
+ }, template: "<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !store.isSideMenuOpen() }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>", styles: [".profile-menus ul{margin-top:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity, 1));padding-left:.5rem;padding-right:.5rem}.profile-menus ul:last-child{border-width:0px}.profile-menus ul li{display:flex;cursor:pointer;border-radius:.375rem;padding:.5rem}.profile-menus ul li:last-child{margin-bottom:.5rem}.profile-menus ul li:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.profile-menus ul li:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.profile-menus ul li i{margin-inline-end:.75rem;display:grid;height:1.5rem;width:1.5rem;place-items:center;font-size:1.25rem;line-height:1.75rem}\n"] }]
28
26
  }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3Jvb3QtbGF5b3V0L2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9yb290LWxheW91dC9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUF1Qix5QkFBeUIsRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQVlwQyxNQUFNLE9BQU8sNEJBQTRCO0lBVHpDO1FBV1UsVUFBSyxHQUFHLE1BQU0sQ0FBQyxDQUFBLEtBQTBCLENBQUEsQ0FBQyxDQUFDO1FBQzNDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdEIsV0FBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7S0FTdkQ7SUFQQyxTQUFTO1FBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBYlUsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsa01DaEJ6QyxzeEJBZU07OzJGRENPLDRCQUE0QjtrQkFUeEMsU0FBUzsrQkFDRSw0QkFBNEIsaUJBR3ZCLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osS0FBSyxFQUFFLG9HQUFvRztxQkFDNUciLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEFYUEFkbWluTGF5b3V0U3RhdGUsIEFYUExheW91dFJvb3REcmF3ZXJUb2dnbGUsIGdldFJvb3REcmF3ZXIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtZGFzaGJvYXJkLWFkbWluLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYXgtaC0xNiBheC1mbGV4IGF4LWp1c3RpZnktYmV0d2VlbiBheC1weC00IG1kOmF4LXB4LTAgbWQ6YXgtcGUtNiBheC1weS00IGF4LWJnLXN1cmZhY2UgYXgtYm9yZGVyLWInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSb290TGF5b3V0SGVhZGVyQ29tcG9uZW50IHtcblxuICBwcml2YXRlIHN0b3JlID0gaW5qZWN0KFN0b3JlPEFYUEFkbWluTGF5b3V0U3RhdGU+KTtcbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBwcm90ZWN0ZWQgaXNPcGVuID0gdGhpcy5zdG9yZS5zZWxlY3QoZ2V0Um9vdERyYXdlcigpKTtcblxuICBtZW51Q2xpY2soKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBWFBMYXlvdXRSb290RHJhd2VyVG9nZ2xlKCkpO1xuICB9XG5cbiAgbG9nb0NsaWNrKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLyddKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXctZnVsbCBheC1mbGV4IGF4LWp1c3RpZnktYmV0d2VlblwiPlxuICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgbWQ6YXgtaGlkZGVuXCI+XG4gICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1iYXJzIGF4LXRleHQtbGcgYXgtbWUtM1wiIChjbGljayk9XCJtZW51Q2xpY2soKVwiPjwvaT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlclwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYXgtaGlkZGVuIG1kOmF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LXctOCBheC1oLTggYXgtYmctb24tc3VyZmFjZSBheC1yb3VuZGVkIGF4LXJvdW5kZWQtcy1ub25lIGF4LW1lLTggYXgtY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cIm1lbnVDbGljaygpXCI+XG4gICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWNoZXZyb25zLWxlZnQgYXgtdGV4dC1zbVwiIFtuZ0NsYXNzXT1cInsgJ2F4LXJvdGF0ZS0xODAnOiAhKGlzT3BlbiB8IGFzeW5jKSB9XCI+IDwvaT5cbiAgICA8L2Rpdj5cbiAgICA8YXhwLWNvbXBvbmVudC1zbG90IG5hbWU9XCJoZWFkZXItc3RhcnRcIj48L2F4cC1jb21wb25lbnQtc2xvdD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMVwiPlxuICAgIDxheHAtY29tcG9uZW50LXNsb3QgbmFtZT1cImhlYWRlci1lbmRcIj48L2F4cC1jb21wb25lbnQtc2xvdD5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3Jvb3QtbGF5b3V0L2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9yb290LWxheW91dC9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBWXpDLE1BQU0sT0FBTyw0QkFBNEI7SUFUekM7UUFXWSxVQUFLLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDeEMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztLQVVqQztJQVBDLFNBQVM7UUFDUCxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBWlUsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsa01DZnpDLDR4QkFlTTs7MkZEQU8sNEJBQTRCO2tCQVR4QyxTQUFTOytCQUNFLDRCQUE0QixpQkFHdkIsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsb0dBQW9HO3FCQUM1RyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS90aGVtZXMvc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtZGFzaGJvYXJkLWFkbWluLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYXgtaC0xNiBheC1mbGV4IGF4LWp1c3RpZnktYmV0d2VlbiBheC1weC00IG1kOmF4LXB4LTAgbWQ6YXgtcGUtNiBheC1weS00IGF4LWJnLXN1cmZhY2UgYXgtYm9yZGVyLWInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSb290TGF5b3V0SGVhZGVyQ29tcG9uZW50IHtcblxuICBwcm90ZWN0ZWQgc3RvcmUgPSBpbmplY3QoQVhQTGF5b3V0VGhlbWVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuXG4gIG1lbnVDbGljaygpIHtcbiAgICB0aGlzLnN0b3JlLnRvZ2dsZVNpZGVNZW51KCk7XG4gIH1cblxuICBsb2dvQ2xpY2soKSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtdy1mdWxsIGF4LWZsZXggYXgtanVzdGlmeS1iZXR3ZWVuXCI+XG4gIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBtZDpheC1oaWRkZW5cIj5cbiAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWJhcnMgYXgtdGV4dC1sZyBheC1tZS0zXCIgKGNsaWNrKT1cIm1lbnVDbGljaygpXCI+PC9pPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJheC1oaWRkZW4gbWQ6YXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtdy04IGF4LWgtOCBheC1iZy1vbi1zdXJmYWNlIGF4LXJvdW5kZWQgYXgtcm91bmRlZC1zLW5vbmUgYXgtbWUtOCBheC1jdXJzb3ItcG9pbnRlclwiXG4gICAgICAoY2xpY2spPVwibWVudUNsaWNrKClcIj5cbiAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtY2hldnJvbnMtbGVmdCBheC10ZXh0LXNtXCIgW25nQ2xhc3NdPVwieyAnYXgtcm90YXRlLTE4MCc6ICFzdG9yZS5pc1NpZGVNZW51T3BlbigpIH1cIj4gPC9pPlxuICAgIDwvZGl2PlxuICAgIDxheHAtY29tcG9uZW50LXNsb3QgbmFtZT1cImhlYWRlci1zdGFydFwiPjwvYXhwLWNvbXBvbmVudC1zbG90PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0xXCI+XG4gICAgPGF4cC1jb21wb25lbnQtc2xvdCBuYW1lPVwiaGVhZGVyLWVuZFwiPjwvYXhwLWNvbXBvbmVudC1zbG90PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -31,10 +31,10 @@ export class AXPRootLayoutMenuComponent {
31
31
  return sortBy(items, [c => c.priority ?? 0, c => c.text]);
32
32
  }
33
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPRootLayoutMenuComponent, selector: "axp-root-menu", ngImport: i0, template: "<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\" >\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem()\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXSideMenuComponent, selector: "ax-side-menu" }, { kind: "component", type: i3.AXSideMenuItemComponent, selector: "ax-side-menu-item", inputs: ["disabled", "color", "isLoading", "text", "isCollapsed", "active"], outputs: ["isLoadingChange", "textChange", "isCollapsedChange", "activeChange", "onClick"] }, { kind: "directive", type: i4.AXPPermissionDirective, selector: "[permission]", inputs: ["permission", "permissionElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }] }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPRootLayoutMenuComponent, selector: "axp-root-menu", ngImport: i0, template: "<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\">\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem().item\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXSideMenuComponent, selector: "ax-side-menu" }, { kind: "component", type: i3.AXSideMenuItemComponent, selector: "ax-side-menu-item", inputs: ["disabled", "color", "isLoading", "text", "isCollapsed", "active"], outputs: ["isLoadingChange", "textChange", "isCollapsedChange", "activeChange", "onClick"] }, { kind: "directive", type: i4.AXPPermissionDirective, selector: "[permission]", inputs: ["permission", "permissionElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }] }); }
35
35
  }
36
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutMenuComponent, decorators: [{
37
37
  type: Component,
38
- args: [{ selector: 'axp-root-menu', template: "<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\" >\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem()\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>" }]
38
+ args: [{ selector: 'axp-root-menu', template: "<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\">\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem().item\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>" }]
39
39
  }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3Jvb3QtbGF5b3V0L2NvbXBvbmVudHMvbWVudS9yb290LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvY29tcG9uZW50cy9tZW51L3Jvb3QtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7Ozs7QUFPbkMsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU1jLGNBQVMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztLQXdCckM7SUF0QkcsZUFBZSxDQUFDLElBQWlCO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNKLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFdEQsMkRBQTJEO1FBQzNELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxDQUNsRCxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdTLElBQUksQ0FBQyxLQUFvQjtRQUMvQixPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0F6QlEsMEJBQTBCO2tHQUExQiwwQkFBMEIscURDWHZDLGdsQ0F1QmM7OzJGRFpELDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDSSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUE1lbnVJdGVtLCBBWFBNZW51U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNvcnRCeSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLXJvb3QtbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Jvb3QtbWVudS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcm9vdC1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJvb3RMYXlvdXRNZW51Q29tcG9uZW50IHtcbiAgICBwcm90ZWN0ZWQgbWVudVN0b3JlID0gaW5qZWN0KEFYUE1lbnVTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgICBvbk1lbnVJdGVtQ2xpY2soaXRlbTogQVhQTWVudUl0ZW0pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMubWVudVN0b3JlLmV4ZWN1dGVDb21tYW5kKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIFNlbGVjdCB0aGUgbWVudSBpdGVtIGJhc2VkIG9uIHRoZSBjdXJyZW50IHJvdXRlIHdoZW4gdGhlIHBhZ2UgbG9hZHNcbiAgICAgICAgdGhpcy5tZW51U3RvcmUuc2VsZWN0TWVudUl0ZW1CeVJvdXRlKHRoaXMucm91dGVyLnVybCk7XG5cbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBtZW51IGl0ZW0gd2hlbmV2ZXIgdGhlIHJvdXRlIGNoYW5nZXNcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKVxuICAgICAgICApLnN1YnNjcmliZSgoZXZlbnQ6IE5hdmlnYXRpb25FbmQpID0+IHtcbiAgICAgICAgICAgIHRoaXMubWVudVN0b3JlLnNlbGVjdE1lbnVJdGVtQnlSb3V0ZShldmVudC51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgcHJvdGVjdGVkIHNvcnQoaXRlbXM6IEFYUE1lbnVJdGVtW10pOiBBWFBNZW51SXRlbVtdIHtcbiAgICAgICAgcmV0dXJuIHNvcnRCeShpdGVtcywgW2MgPT4gYy5wcmlvcml0eSA/PyAwLCBjID0+IGMudGV4dF0pO1xuICAgIH1cbn0iLCI8YXgtc2lkZS1tZW51PlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc29ydChtZW51U3RvcmUuaXRlbXMoKSlcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJyZWN1cnNpdmVNZW51XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbTogaXRlbSB9XCI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2F4LXNpZGUtbWVudT5cblxuPG5nLXRlbXBsYXRlICNyZWN1cnNpdmVNZW51IGxldC1pdGVtPVwiaXRlbVwiID5cbiAgICBAaWYoaXRlbS50eXBlPT0nZ3JvdXAnKSB7XG4gICAgPGF4LXRpdGxlICpwZXJtaXNzaW9uPVwiaXRlbS5kYXRhPy5yZXF1aXJlZFBlcm1pc3Npb25cIj57eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfCBhc3luYyB9fTwvYXgtdGl0bGU+XG4gICAgfSBAZWxzZSB7XG4gICAgPGF4LXNpZGUtbWVudS1pdGVtICpwZXJtaXNzaW9uPVwiaXRlbS5kYXRhPy5yZXF1aXJlZFBlcm1pc3Npb25cIiAob25DbGljayk9XCJvbk1lbnVJdGVtQ2xpY2soIGl0ZW0pXCJcbiAgICAgICAgW2FjdGl2ZV09XCJpdGVtID09PW1lbnVTdG9yZS5zZWxlY3RlZE1lbnVJdGVtKClcIiBbaXNDb2xsYXBzZWRdPVwiIW1lbnVTdG9yZS5pc0l0ZW1PcGVuKGl0ZW0pXCI+XG4gICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICA8YXgtaWNvbiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9heC1pY29uPlxuICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAge3sgaXRlbS50ZXh0IHwgdHJhbnNsYXRlIHwgYXN5bmMgfX1cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uY2hpbGRyZW4/Lmxlbmd0aFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hpbGQgb2Ygc29ydChpdGVtLmNoaWxkcmVuKVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJlY3Vyc2l2ZU1lbnVcIlxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW06IGNoaWxkIH1cIj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2F4LXNpZGUtbWVudS1pdGVtPlxuICAgIH1cbjwvbmctdGVtcGxhdGU+Il19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3Jvb3QtbGF5b3V0L2NvbXBvbmVudHMvbWVudS9yb290LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvY29tcG9uZW50cy9tZW51L3Jvb3QtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7Ozs7QUFPbkMsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU1jLGNBQVMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztLQXdCckM7SUF0QkcsZUFBZSxDQUFDLElBQWlCO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNKLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFdEQsMkRBQTJEO1FBQzNELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxDQUNsRCxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdTLElBQUksQ0FBQyxLQUFvQjtRQUMvQixPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0F6QlEsMEJBQTBCO2tHQUExQiwwQkFBMEIscURDWHZDLG9sQ0F1QmM7OzJGRFpELDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDSSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUE1lbnVJdGVtLCBBWFBNZW51U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNvcnRCeSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLXJvb3QtbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Jvb3QtbWVudS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcm9vdC1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJvb3RMYXlvdXRNZW51Q29tcG9uZW50IHtcbiAgICBwcm90ZWN0ZWQgbWVudVN0b3JlID0gaW5qZWN0KEFYUE1lbnVTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgICBvbk1lbnVJdGVtQ2xpY2soaXRlbTogQVhQTWVudUl0ZW0pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMubWVudVN0b3JlLmV4ZWN1dGVDb21tYW5kKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIFNlbGVjdCB0aGUgbWVudSBpdGVtIGJhc2VkIG9uIHRoZSBjdXJyZW50IHJvdXRlIHdoZW4gdGhlIHBhZ2UgbG9hZHNcbiAgICAgICAgdGhpcy5tZW51U3RvcmUuc2VsZWN0TWVudUl0ZW1CeVJvdXRlKHRoaXMucm91dGVyLnVybCk7XG5cbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBtZW51IGl0ZW0gd2hlbmV2ZXIgdGhlIHJvdXRlIGNoYW5nZXNcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKVxuICAgICAgICApLnN1YnNjcmliZSgoZXZlbnQ6IE5hdmlnYXRpb25FbmQpID0+IHtcbiAgICAgICAgICAgIHRoaXMubWVudVN0b3JlLnNlbGVjdE1lbnVJdGVtQnlSb3V0ZShldmVudC51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgcHJvdGVjdGVkIHNvcnQoaXRlbXM6IEFYUE1lbnVJdGVtW10pOiBBWFBNZW51SXRlbVtdIHtcbiAgICAgICAgcmV0dXJuIHNvcnRCeShpdGVtcywgW2MgPT4gYy5wcmlvcml0eSA/PyAwLCBjID0+IGMudGV4dF0pO1xuICAgIH1cbn0iLCI8YXgtc2lkZS1tZW51PlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc29ydChtZW51U3RvcmUuaXRlbXMoKSlcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJyZWN1cnNpdmVNZW51XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbTogaXRlbSB9XCI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2F4LXNpZGUtbWVudT5cblxuPG5nLXRlbXBsYXRlICNyZWN1cnNpdmVNZW51IGxldC1pdGVtPVwiaXRlbVwiPlxuICAgIEBpZihpdGVtLnR5cGU9PSdncm91cCcpIHtcbiAgICA8YXgtdGl0bGUgKnBlcm1pc3Npb249XCJpdGVtLmRhdGE/LnJlcXVpcmVkUGVybWlzc2lvblwiPnt7IGl0ZW0udGV4dCB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19PC9heC10aXRsZT5cbiAgICB9IEBlbHNlIHtcbiAgICA8YXgtc2lkZS1tZW51LWl0ZW0gKnBlcm1pc3Npb249XCJpdGVtLmRhdGE/LnJlcXVpcmVkUGVybWlzc2lvblwiIChvbkNsaWNrKT1cIm9uTWVudUl0ZW1DbGljayggaXRlbSlcIlxuICAgICAgICBbYWN0aXZlXT1cIml0ZW0gPT09bWVudVN0b3JlLnNlbGVjdGVkTWVudUl0ZW0oKS5pdGVtXCIgW2lzQ29sbGFwc2VkXT1cIiFtZW51U3RvcmUuaXNJdGVtT3BlbihpdGVtKVwiPlxuICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgPGF4LWljb24gW2NsYXNzXT1cIml0ZW0uaWNvblwiPjwvYXgtaWNvbj5cbiAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgIHt7IGl0ZW0udGV4dCB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmNoaWxkcmVuPy5sZW5ndGhcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIHNvcnQoaXRlbS5jaGlsZHJlbilcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJyZWN1cnNpdmVNZW51XCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBjaGlsZCB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9heC1zaWRlLW1lbnUtaXRlbT5cbiAgICB9XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -1,8 +1,7 @@
1
1
  import { AXDrawerComponent } from '@acorex/components/drawer';
2
- import { AXUnsubscriber } from '@acorex/core/utils';
3
- import { AXPLayoutRootDrawerClose, AXPLayoutService, AXPRouteUtilityService, AXP_PLATFORM_CONFIG_TOKEN, getRootDrawer, isSmallScreen, } from '@acorex/platform/common';
4
- import { Component, ViewChild, ViewEncapsulation, inject, signal } from '@angular/core';
5
- import { Store } from '@ngrx/store';
2
+ import { AXP_PLATFORM_CONFIG_TOKEN, } from '@acorex/platform/common';
3
+ import { AXPLayoutThemeService } from '@acorex/platform/themes/shared';
4
+ import { Component, ViewChild, ViewEncapsulation, inject } from '@angular/core';
6
5
  import * as i0 from "@angular/core";
7
6
  import * as i1 from "@angular/router";
8
7
  import * as i2 from "@acorex/components/decorators";
@@ -12,54 +11,26 @@ import * as i5 from "@acorex/platform/common";
12
11
  import * as i6 from "./components/footer/footer.component";
13
12
  import * as i7 from "./components/header/header.component";
14
13
  import * as i8 from "./components/menu/root-menu.component";
15
- import * as i9 from "@angular/common";
16
14
  export class AXPRootLayoutComponent {
17
- get layoutService() {
18
- return this._layoutService;
19
- }
20
- set layoutService(value) {
21
- this._layoutService = value;
22
- }
23
15
  constructor() {
24
16
  this.config = inject(AXP_PLATFORM_CONFIG_TOKEN);
25
- this._layoutService = inject(AXPLayoutService);
26
- this.subscriber = inject(AXUnsubscriber);
27
- this.store = inject((Store));
28
- this.routeUtilService = inject(AXPRouteUtilityService);
29
- this.isActiveRoute = (item) => this.routeUtilService.isRouteActive(item);
17
+ this.store = inject(AXPLayoutThemeService);
30
18
  this.logo = this.config.logo;
31
- this.isOpen = this.store.select(getRootDrawer());
32
- this.isSM = this.store.select(isSmallScreen());
33
- this.isLoading = signal(false);
34
- this.showNavigationProgress = signal(false);
35
- this.layoutService.navigationLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {
36
- this.showNavigationProgress.set(value);
37
- });
38
- //
39
- this.layoutService.overlayLoading$.pipe(this.subscriber.takeUntilDestroy).subscribe((value) => {
40
- this.isLoading.set(value);
41
- });
42
19
  }
43
20
  handleCollapsedChange(value) {
44
- if (value)
45
- this.store.dispatch(AXPLayoutRootDrawerClose());
21
+ if (value) {
22
+ this.store.closeSideMenu();
23
+ }
24
+ ;
46
25
  }
47
26
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPRootLayoutComponent, selector: "ng-component", providers: [
49
- {
50
- provide: AXUnsubscriber,
51
- },
52
- ], viewQueries: [{ propertyName: "drawer", first: true, predicate: ["drawer"], descendants: true }], ngImport: i0, template: "<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\"(isSM | async) ? 'overlay' : 'push'\"\n (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(showNavigationProgress()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"isLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>", dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i3.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "directive", type: i4.AXLoadingDirective, selector: "[axIsLoading]", inputs: ["axIsLoading"] }, { kind: "component", type: i5.AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "component", type: i6.AXPRootLayoutFooterComponent, selector: "axp-dashboard-admin-footer" }, { kind: "component", type: i7.AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header" }, { kind: "component", type: i8.AXPRootLayoutMenuComponent, selector: "axp-root-menu" }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPRootLayoutComponent, selector: "ng-component", viewQueries: [{ propertyName: "drawer", first: true, predicate: ["drawer"], descendants: true }], ngImport: i0, template: "<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!store.isSideMenuOpen()\"\n [mode]=\"store.isSmall() ? 'overlay' : 'push'\" (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(store.isNavigationLoading()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"store.isOverlayLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>", dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i3.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "directive", type: i4.AXLoadingDirective, selector: "[axIsLoading]", inputs: ["axIsLoading"] }, { kind: "component", type: i5.AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "component", type: i6.AXPRootLayoutFooterComponent, selector: "axp-dashboard-admin-footer" }, { kind: "component", type: i7.AXPRootLayoutHeaderComponent, selector: "axp-dashboard-admin-header" }, { kind: "component", type: i8.AXPRootLayoutMenuComponent, selector: "axp-root-menu" }], encapsulation: i0.ViewEncapsulation.None }); }
53
28
  }
54
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPRootLayoutComponent, decorators: [{
55
30
  type: Component,
56
- args: [{ encapsulation: ViewEncapsulation.None, providers: [
57
- {
58
- provide: AXUnsubscriber,
59
- },
60
- ], template: "<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!(isOpen | async)\" [mode]=\"(isSM | async) ? 'overlay' : 'push'\"\n (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(showNavigationProgress()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"isLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>" }]
31
+ args: [{ encapsulation: ViewEncapsulation.None, template: "<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!store.isSideMenuOpen()\"\n [mode]=\"store.isSmall() ? 'overlay' : 'push'\" (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(store.isNavigationLoading()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"store.isOverlayLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>" }]
61
32
  }], ctorParameters: () => [], propDecorators: { drawer: [{
62
33
  type: ViewChild,
63
34
  args: ['drawer']
64
35
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFFTCx3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBRWhCLHNCQUFzQixFQUV0Qix5QkFBeUIsRUFDekIsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFrQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7O0FBWXBDLE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFBVyxhQUFhLENBQUMsS0FBSztRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBYUQ7UUFwQlEsV0FBTSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzNDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFPMUMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVwQyxVQUFLLEdBQUcsTUFBTSxDQUFDLENBQUEsS0FBMEIsQ0FBQSxDQUFDLENBQUM7UUFDM0MscUJBQWdCLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDaEQsa0JBQWEsR0FBRyxDQUFDLElBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakYsU0FBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBRXhCLFdBQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLFNBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLGNBQVMsR0FBNEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELDJCQUFzQixHQUE0QixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFHeEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQy9GLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUM1RixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxxQkFBcUIsQ0FBQyxLQUFjO1FBQzVDLElBQUksS0FBSztZQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDOzhHQW5DVSxzQkFBc0I7a0dBQXRCLHNCQUFzQix1Q0FOdEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsY0FBYzthQUN4QjtTQUNGLDRIQ3hCSCxpc0NBeUJzQjs7MkZEQ1Qsc0JBQXNCO2tCQVRsQyxTQUFTO29DQUVPLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7eUJBQ3hCO3FCQUNGO3dEQUdvQixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERyYXdlckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHsgQVhVbnN1YnNjcmliZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtcbiAgQVhQQWRtaW5MYXlvdXRTdGF0ZSxcbiAgQVhQTGF5b3V0Um9vdERyYXdlckNsb3NlLFxuICBBWFBMYXlvdXRTZXJ2aWNlLFxuICBBWFBNZW51SXRlbSxcbiAgQVhQUm91dGVVdGlsaXR5U2VydmljZSxcbiAgQVhQX01FTlVfTE9BREVSLFxuICBBWFBfUExBVEZPUk1fQ09ORklHX1RPS0VOLFxuICBnZXRSb290RHJhd2VyLFxuICBpc1NtYWxsU2NyZWVuLFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIFdyaXRhYmxlU2lnbmFsLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vcm9vdC1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFVuc3Vic2NyaWJlcixcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSb290TGF5b3V0Q29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZCgnZHJhd2VyJykgZHJhd2VyITogQVhEcmF3ZXJDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBjb25maWcgPSBpbmplY3QoQVhQX1BMQVRGT1JNX0NPTkZJR19UT0tFTik7XG4gIHByaXZhdGUgX2xheW91dFNlcnZpY2UgPSBpbmplY3QoQVhQTGF5b3V0U2VydmljZSk7XG4gIHB1YmxpYyBnZXQgbGF5b3V0U2VydmljZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0U2VydmljZTtcbiAgfVxuICBwdWJsaWMgc2V0IGxheW91dFNlcnZpY2UodmFsdWUpIHtcbiAgICB0aGlzLl9sYXlvdXRTZXJ2aWNlID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBzdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcml2YXRlIHN0b3JlID0gaW5qZWN0KFN0b3JlPEFYUEFkbWluTGF5b3V0U3RhdGU+KTtcbiAgcHJpdmF0ZSByb3V0ZVV0aWxTZXJ2aWNlID0gaW5qZWN0KEFYUFJvdXRlVXRpbGl0eVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgaXNBY3RpdmVSb3V0ZSA9IChpdGVtOiBBWFBNZW51SXRlbSkgPT4gdGhpcy5yb3V0ZVV0aWxTZXJ2aWNlLmlzUm91dGVBY3RpdmUoaXRlbSk7XG4gIHByb3RlY3RlZCBsb2dvID0gdGhpcy5jb25maWcubG9nbztcblxuICBwcm90ZWN0ZWQgaXNPcGVuID0gdGhpcy5zdG9yZS5zZWxlY3QoZ2V0Um9vdERyYXdlcigpKTtcbiAgcHJvdGVjdGVkIGlzU00gPSB0aGlzLnN0b3JlLnNlbGVjdChpc1NtYWxsU2NyZWVuKCkpO1xuICBwcm90ZWN0ZWQgaXNMb2FkaW5nOiBXcml0YWJsZVNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG4gIHByb3RlY3RlZCBzaG93TmF2aWdhdGlvblByb2dyZXNzOiBXcml0YWJsZVNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sYXlvdXRTZXJ2aWNlLm5hdmlnYXRpb25Mb2FkaW5nJC5waXBlKHRoaXMuc3Vic2NyaWJlci50YWtlVW50aWxEZXN0cm95KS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLnNob3dOYXZpZ2F0aW9uUHJvZ3Jlc3Muc2V0KHZhbHVlKTtcbiAgICB9KTtcbiAgICAvL1xuICAgIHRoaXMubGF5b3V0U2VydmljZS5vdmVybGF5TG9hZGluZyQucGlwZSh0aGlzLnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgdGhpcy5pc0xvYWRpbmcuc2V0KHZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVDb2xsYXBzZWRDaGFuZ2UodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodmFsdWUpIHRoaXMuc3RvcmUuZGlzcGF0Y2goQVhQTGF5b3V0Um9vdERyYXdlckNsb3NlKCkpO1xuICB9XG59XG4iLCI8YXgtZHJhd2VyLWNvbnRhaW5lcj5cbiAgPGF4LWRyYXdlciAjZHJhd2VyIGxvY2F0aW9uPVwic3RhcnRcIiBbY29sbGFwc2VkXT1cIiEoaXNPcGVuIHwgYXN5bmMpXCIgW21vZGVdPVwiKGlzU00gfCBhc3luYykgPyAnb3ZlcmxheScgOiAncHVzaCdcIlxuICAgIChjb2xsYXBzZWRDaGFuZ2UpPVwiaGFuZGxlQ29sbGFwc2VkQ2hhbmdlKCRldmVudClcIj5cbiAgICA8YXgtY29udGVudFxuICAgICAgY2xhc3M9XCJheC13LTcyIGF4LWgtZnVsbCBheC1mbGV4IGF4LWZsZXgtY29sIGF4LWJnLXNlY29uZGFyeS02MDAgZGFyazpheC1iZy1zdXJmYWNlIGF4LXRleHQtcHJpbWFyeS1mb3JlIGF4LWJvcmRlci1lIGF4LWJvcmRlci1wcmltYXJ5LTcwMCBkYXJrOmF4LWJvcmRlci1kZWZhdWx0XCI+XG4gICAgICA8aGVhZGVyIGNsYXNzPVwiYXgtcHgtNyBheC1oLTE2IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWJvcmRlci1iIGF4LWJvcmRlci13aGl0ZS8xMFwiPlxuICAgICAgICA8YXhwLWxvZ28gW3NvdXJjZV09XCJsb2dvPy5saWdodFwiPjwvYXhwLWxvZ28+XG4gICAgICA8L2hlYWRlcj5cbiAgICAgIDxuYXYgY2xhc3M9XCJheC1weC0yIGF4LXB5LTQgYXgtb3ZlcmZsb3cteS1hdXRvIGF4LWZsZXgtMSBheC1oLWZ1bGxcIj5cbiAgICAgICAgPGF4cC1yb290LW1lbnU+PC9heHAtcm9vdC1tZW51PlxuICAgICAgPC9uYXY+XG4gICAgPC9heC1jb250ZW50PlxuICA8L2F4LWRyYXdlcj5cbiAgPGF4LWNvbnRlbnQgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LXJlbGF0aXZlXCI+XG4gICAgQGlmKHNob3dOYXZpZ2F0aW9uUHJvZ3Jlc3MoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJheHAtbmF2aWdhdGluZy1wcm9ncmVzc1wiPlxuICAgICAgPGRpdj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICB9XG4gICAgPGF4cC1kYXNoYm9hcmQtYWRtaW4taGVhZGVyPjwvYXhwLWRhc2hib2FyZC1hZG1pbi1oZWFkZXI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXgtMSBheC1vdmVyZmxvdy1hdXRvIGF4LXJlbGF0aXZlXCIgW2F4SXNMb2FkaW5nXT1cImlzTG9hZGluZygpXCI+XG4gICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgPC9kaXY+XG4gICAgPGF4cC1kYXNoYm9hcmQtYWRtaW4tZm9vdGVyPjwvYXhwLWRhc2hib2FyZC1hZG1pbi1mb290ZXI+XG4gIDwvYXgtY29udGVudD5cbjwvYXgtZHJhd2VyLWNvbnRhaW5lcj4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUNMLHlCQUF5QixHQUMxQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7OztBQU9oRixNQUFNLE9BQU8sc0JBQXNCO0lBV2pDO1FBUlEsV0FBTSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBR3pDLFVBQUssR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN0QyxTQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFLbEMsQ0FBQztJQUVTLHFCQUFxQixDQUFDLEtBQWM7UUFDNUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQztRQUFBLENBQUM7SUFDSixDQUFDOzhHQWxCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixzSkNabkMsd3RDQXlCc0I7OzJGRGJULHNCQUFzQjtrQkFKbEMsU0FBUztvQ0FFTyxpQkFBaUIsQ0FBQyxJQUFJO3dEQUdoQixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERyYXdlckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHtcbiAgQVhQX1BMQVRGT1JNX0NPTkZJR19UT0tFTixcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS90aGVtZXMvc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9yb290LWxheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFJvb3RMYXlvdXRDb21wb25lbnQge1xuICBAVmlld0NoaWxkKCdkcmF3ZXInKSBkcmF3ZXIhOiBBWERyYXdlckNvbXBvbmVudDtcblxuICBwcml2YXRlIGNvbmZpZyA9IGluamVjdChBWFBfUExBVEZPUk1fQ09ORklHX1RPS0VOKTtcblxuXG4gIHByb3RlY3RlZCBzdG9yZSA9IGluamVjdChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgbG9nbyA9IHRoaXMuY29uZmlnLmxvZ287XG5cblxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNvbGxhcHNlZENoYW5nZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zdG9yZS5jbG9zZVNpZGVNZW51KCk7XG4gICAgfTtcbiAgfVxufVxuIiwiPGF4LWRyYXdlci1jb250YWluZXI+XG4gIDxheC1kcmF3ZXIgI2RyYXdlciBsb2NhdGlvbj1cInN0YXJ0XCIgW2NvbGxhcHNlZF09XCIhc3RvcmUuaXNTaWRlTWVudU9wZW4oKVwiXG4gICAgW21vZGVdPVwic3RvcmUuaXNTbWFsbCgpID8gJ292ZXJsYXknIDogJ3B1c2gnXCIgKGNvbGxhcHNlZENoYW5nZSk9XCJoYW5kbGVDb2xsYXBzZWRDaGFuZ2UoJGV2ZW50KVwiPlxuICAgIDxheC1jb250ZW50XG4gICAgICBjbGFzcz1cImF4LXctNzIgYXgtaC1mdWxsIGF4LWZsZXggYXgtZmxleC1jb2wgYXgtYmctc2Vjb25kYXJ5LTYwMCBkYXJrOmF4LWJnLXN1cmZhY2UgYXgtdGV4dC1wcmltYXJ5LWZvcmUgYXgtYm9yZGVyLWUgYXgtYm9yZGVyLXByaW1hcnktNzAwIGRhcms6YXgtYm9yZGVyLWRlZmF1bHRcIj5cbiAgICAgIDxoZWFkZXIgY2xhc3M9XCJheC1weC03IGF4LWgtMTYgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtYm9yZGVyLWIgYXgtYm9yZGVyLXdoaXRlLzEwXCI+XG4gICAgICAgIDxheHAtbG9nbyBbc291cmNlXT1cImxvZ28/LmxpZ2h0XCI+PC9heHAtbG9nbz5cbiAgICAgIDwvaGVhZGVyPlxuICAgICAgPG5hdiBjbGFzcz1cImF4LXB4LTIgYXgtcHktNCBheC1vdmVyZmxvdy15LWF1dG8gYXgtZmxleC0xIGF4LWgtZnVsbFwiPlxuICAgICAgICA8YXhwLXJvb3QtbWVudT48L2F4cC1yb290LW1lbnU+XG4gICAgICA8L25hdj5cbiAgICA8L2F4LWNvbnRlbnQ+XG4gIDwvYXgtZHJhd2VyPlxuICA8YXgtY29udGVudCBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtcmVsYXRpdmVcIj5cbiAgICBAaWYoc3RvcmUuaXNOYXZpZ2F0aW9uTG9hZGluZygpKSB7XG4gICAgPGRpdiBjbGFzcz1cImF4cC1uYXZpZ2F0aW5nLXByb2dyZXNzXCI+XG4gICAgICA8ZGl2PjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIH1cbiAgICA8YXhwLWRhc2hib2FyZC1hZG1pbi1oZWFkZXI+PC9heHAtZGFzaGJvYXJkLWFkbWluLWhlYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LW92ZXJmbG93LWF1dG8gYXgtcmVsYXRpdmVcIiBbYXhJc0xvYWRpbmddPVwic3RvcmUuaXNPdmVybGF5TG9hZGluZygpXCI+XG4gICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgPC9kaXY+XG4gICAgPGF4cC1kYXNoYm9hcmQtYWRtaW4tZm9vdGVyPjwvYXhwLWRhc2hib2FyZC1hZG1pbi1mb290ZXI+XG4gIDwvYXgtY29udGVudD5cbjwvYXgtZHJhd2VyLWNvbnRhaW5lcj4iXX0=
@@ -9,6 +9,7 @@ import { AXLoadingModule } from '@acorex/components/loading';
9
9
  import { AXPopoverModule } from '@acorex/components/popover';
10
10
  import { AXSideMenuModule } from '@acorex/components/side-menu';
11
11
  import { AXTabsModule } from '@acorex/components/tabs';
12
+ import { AXTranslationModule } from '@acorex/core/translation';
12
13
  import { AXPAuthModule } from '@acorex/platform/auth';
13
14
  import { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';
14
15
  import { CommonModule } from '@angular/common';
@@ -18,7 +19,6 @@ import { AXPRootLayoutFooterComponent } from './components/footer/footer.compone
18
19
  import { AXPRootLayoutHeaderComponent } from './components/header/header.component';
19
20
  import { AXPRootLayoutMenuComponent } from './components/menu/root-menu.component';
20
21
  import { AXPRootLayoutComponent } from './root-layout.component';
21
- import { AXTranslationModule } from '@acorex/core/translation';
22
22
  import * as i0 from "@angular/core";
23
23
  export class AXPAdminRootLayoutModule {
24
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPAdminRootLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -84,6 +84,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
84
84
  AXPLogoComponent,
85
85
  AXPAuthModule,
86
86
  AXPComponentSlotModule,
87
+ // AXMConversationModule
87
88
  ],
88
89
  exports: [],
89
90
  declarations: [
@@ -95,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
95
96
  providers: [],
96
97
  }]
97
98
  }] });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFnQy9ELE1BQU0sT0FBTyx3QkFBd0I7OEdBQXhCLHdCQUF3QjsrR0FBeEIsd0JBQXdCLGlCQVBqQyw0QkFBNEI7WUFDNUIsNEJBQTRCO1lBQzVCLHNCQUFzQjtZQUN0QiwwQkFBMEIsYUF4QjFCLFlBQVk7WUFDWixZQUFZO1lBQ1osY0FBYztZQUNkLG1CQUFtQjtZQUNuQixpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2Isc0JBQXNCOytHQVdiLHdCQUF3QixZQTVCakMsWUFBWTtZQUNaLFlBQVk7WUFDWixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixZQUFZO1lBQ1osY0FBYztZQUNkLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixzQkFBc0I7OzJGQVdiLHdCQUF3QjtrQkE5QnBDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRTt3QkFDWiw0QkFBNEI7d0JBQzVCLDRCQUE0Qjt3QkFDNUIsc0JBQXNCO3dCQUN0QiwwQkFBMEI7cUJBQzNCO29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhBdmF0YXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEFYQmFkZ2VNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYmFkZ2UnO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhEcmF3ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZHJhd2VyJztcbmltcG9ydCB7IEFYRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgQVhJbWFnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9pbWFnZSc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFNpZGVNZW51TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NpZGUtbWVudSc7XG5pbXBvcnQgeyBBWFRhYnNNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGFicyc7XG5pbXBvcnQgeyBBWFBBdXRoTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUENvbXBvbmVudFNsb3RNb2R1bGUsIEFYUExvZ29Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBWFBSb290TGF5b3V0Rm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhQUm9vdExheW91dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS9yb290LW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWERyb3Bkb3duTW9kdWxlLFxuICAgIEFYQXZhdGFyTW9kdWxlLFxuICAgIEFYSW1hZ2VNb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWFBvcG92ZXJNb2R1bGUsXG4gICAgQVhCYWRnZU1vZHVsZSxcbiAgICBBWFRhYnNNb2R1bGUsXG4gICAgQVhEcmF3ZXJNb2R1bGUsXG4gICAgQVhTaWRlTWVudU1vZHVsZSxcbiAgICBBWExvYWRpbmdNb2R1bGUsXG4gICAgQVhQTG9nb0NvbXBvbmVudCxcbiAgICBBWFBBdXRoTW9kdWxlLFxuICAgIEFYUENvbXBvbmVudFNsb3RNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBBWFBSb290TGF5b3V0Rm9vdGVyQ29tcG9uZW50LFxuICAgIEFYUFJvb3RMYXlvdXRIZWFkZXJDb21wb25lbnQsXG4gICAgQVhQUm9vdExheW91dENvbXBvbmVudCxcbiAgICBBWFBSb290TGF5b3V0TWVudUNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQQWRtaW5Sb290TGF5b3V0TW9kdWxlIHsgfVxuIl19
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvcm9vdC1sYXlvdXQvcm9vdC1sYXlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFpQ2pFLE1BQU0sT0FBTyx3QkFBd0I7OEdBQXhCLHdCQUF3QjsrR0FBeEIsd0JBQXdCLGlCQVBqQyw0QkFBNEI7WUFDNUIsNEJBQTRCO1lBQzVCLHNCQUFzQjtZQUN0QiwwQkFBMEIsYUF6QjFCLFlBQVk7WUFDWixZQUFZO1lBQ1osY0FBYztZQUNkLG1CQUFtQjtZQUNuQixpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2Isc0JBQXNCOytHQVliLHdCQUF3QixZQTdCakMsWUFBWTtZQUNaLFlBQVk7WUFDWixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixZQUFZO1lBQ1osY0FBYztZQUNkLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixzQkFBc0I7OzJGQVliLHdCQUF3QjtrQkEvQnBDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixzQkFBc0I7d0JBQ3RCLHdCQUF3QjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFO3dCQUNaLDRCQUE0Qjt3QkFDNUIsNEJBQTRCO3dCQUM1QixzQkFBc0I7d0JBQ3RCLDBCQUEwQjtxQkFDM0I7b0JBQ0QsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEF2YXRhck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdmF0YXInO1xuaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyYXdlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHsgQVhEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcm9wZG93bic7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYTG9hZGluZ01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sb2FkaW5nJztcbmltcG9ydCB7IEFYUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IEFYU2lkZU1lbnVNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2lkZS1tZW51JztcbmltcG9ydCB7IEFYVGFic01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQQXV0aE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBBWFBDb21wb25lbnRTbG90TW9kdWxlLCBBWFBMb2dvQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQVhQUm9vdExheW91dEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFBSb290TGF5b3V0SGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFYUFJvb3RMYXlvdXRNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUvcm9vdC1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFBSb290TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9yb290LWxheW91dC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYRHJvcGRvd25Nb2R1bGUsXG4gICAgQVhBdmF0YXJNb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWEltYWdlTW9kdWxlLFxuICAgIEFYUG9wb3Zlck1vZHVsZSxcbiAgICBBWEJhZGdlTW9kdWxlLFxuICAgIEFYVGFic01vZHVsZSxcbiAgICBBWERyYXdlck1vZHVsZSxcbiAgICBBWFNpZGVNZW51TW9kdWxlLFxuICAgIEFYTG9hZGluZ01vZHVsZSxcbiAgICBBWFBMb2dvQ29tcG9uZW50LFxuICAgIEFYUEF1dGhNb2R1bGUsXG4gICAgQVhQQ29tcG9uZW50U2xvdE1vZHVsZSxcbiAgICAvLyBBWE1Db252ZXJzYXRpb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW10sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEFYUFJvb3RMYXlvdXRGb290ZXJDb21wb25lbnQsXG4gICAgQVhQUm9vdExheW91dEhlYWRlckNvbXBvbmVudCxcbiAgICBBWFBSb290TGF5b3V0Q29tcG9uZW50LFxuICAgIEFYUFJvb3RMYXlvdXRNZW51Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBBZG1pblJvb3RMYXlvdXRNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Converts a list of AXPSettingDefinitionGroup into a tree structure of AXTreeViewSchema.
3
+ * This function processes groups and their nested sub-groups, recursively creating a tree.
4
+ *
5
+ * @param groups - Array of top-level setting groups to be converted into tree view schema.
6
+ * @param parentId - The parent ID for nested groups, passed down recursively. (Optional, default is undefined)
7
+ *
8
+ * @returns An array of AXTreeViewSchema representing the hierarchical structure of groups.
9
+ */
10
+ export function convertToTreeViewSchema(groups, parentId) {
11
+ // Helper function to traverse and convert a single group (and its sub-groups)
12
+ const traverseGroups = (group, parent) => {
13
+ const currentId = group.name;
14
+ // Schema for the current group
15
+ const schema = {
16
+ id: currentId, // Unique identifier for the group (using group name)
17
+ parentId: parent, // Parent group ID, passed down recursively
18
+ text: group.title, // Display title of the group
19
+ tooltip: group.description, // Optional description as tooltip
20
+ hasChild: group.groups.length > 0, // Whether the group has child groups
21
+ isExpanded: false, // Default state for expansion (optional)
22
+ childrens: group.groups.length > 0 ? [] : undefined, // Child groups array (undefined if no children)
23
+ };
24
+ // Recursively process nested groups (sub-groups inside the current group)
25
+ group.groups.forEach((subGroup) => {
26
+ const childSchema = traverseGroups(subGroup, currentId); // Create schema for sub-group
27
+ schema.childrens?.push(childSchema); // Add the child schema to the parent group's children
28
+ });
29
+ return schema; // Return the group schema with its children (if any)
30
+ };
31
+ // Initialize an array to hold the top-level groups' schemas
32
+ const treeViewSchemas = [];
33
+ // Process each top-level group and convert it into tree view schema
34
+ groups.forEach((group) => {
35
+ treeViewSchemas.push(traverseGroups(group, parentId)); // Add the schema for each group
36
+ });
37
+ // Return the resulting hierarchical structure
38
+ return treeViewSchemas;
39
+ }
40
+ /**
41
+ * Converts nested groups into breadcrumb-like paths.
42
+ * Each path represents the hierarchy of group names leading to a specific group.
43
+ *
44
+ * @param groups - The input array of AXPSettingDefinitionGroup.
45
+ * @param basePath - The current path prefix (optional, default is an empty array).
46
+ *
47
+ * @returns An array of paths where each path is an array of strings representing the breadcrumb.
48
+ */
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC1zZXR0aW5nLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9zZXR0aW5nLWxheW91dC9jb252ZXJ0LXNldHRpbmctZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsTUFBbUMsRUFDbkMsUUFBMEI7SUFFMUIsOEVBQThFO0lBQzlFLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBZ0MsRUFBRSxNQUF3QixFQUFvQixFQUFFO1FBQ3RHLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFN0IsK0JBQStCO1FBQy9CLE1BQU0sTUFBTSxHQUFxQjtZQUMvQixFQUFFLEVBQUUsU0FBUyxFQUFFLHFEQUFxRDtZQUNwRSxRQUFRLEVBQUUsTUFBTSxFQUFFLDJDQUEyQztZQUM3RCxJQUFJLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSw2QkFBNkI7WUFDaEQsT0FBTyxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsa0NBQWtDO1lBQzlELFFBQVEsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUscUNBQXFDO1lBQ3hFLFVBQVUsRUFBRSxLQUFLLEVBQUUseUNBQXlDO1lBQzVELFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLGdEQUFnRDtTQUN0RyxDQUFDO1FBRUYsMEVBQTBFO1FBQzFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLDhCQUE4QjtZQUN2RixNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLHNEQUFzRDtRQUM3RixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDLENBQUMscURBQXFEO0lBQ3RFLENBQUMsQ0FBQztJQUVGLDREQUE0RDtJQUM1RCxNQUFNLGVBQWUsR0FBdUIsRUFBRSxDQUFDO0lBRS9DLG9FQUFvRTtJQUNwRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDdkIsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0M7SUFDekYsQ0FBQyxDQUFDLENBQUM7SUFFSCw4Q0FBOEM7SUFDOUMsT0FBTyxlQUFlLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7Ozs7OztHQVFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhUcmVlVmlld1NjaGVtYSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90cmVlLXZpZXcvbGliL3RyZWUtdmlldy5jbGFzcyc7XG5pbXBvcnQgeyBBWFBTZXR0aW5nRGVmaW5pdGlvbkdyb3VwIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG4vKipcbiAqIENvbnZlcnRzIGEgbGlzdCBvZiBBWFBTZXR0aW5nRGVmaW5pdGlvbkdyb3VwIGludG8gYSB0cmVlIHN0cnVjdHVyZSBvZiBBWFRyZWVWaWV3U2NoZW1hLlxuICogVGhpcyBmdW5jdGlvbiBwcm9jZXNzZXMgZ3JvdXBzIGFuZCB0aGVpciBuZXN0ZWQgc3ViLWdyb3VwcywgcmVjdXJzaXZlbHkgY3JlYXRpbmcgYSB0cmVlLlxuICpcbiAqIEBwYXJhbSBncm91cHMgLSBBcnJheSBvZiB0b3AtbGV2ZWwgc2V0dGluZyBncm91cHMgdG8gYmUgY29udmVydGVkIGludG8gdHJlZSB2aWV3IHNjaGVtYS5cbiAqIEBwYXJhbSBwYXJlbnRJZCAtIFRoZSBwYXJlbnQgSUQgZm9yIG5lc3RlZCBncm91cHMsIHBhc3NlZCBkb3duIHJlY3Vyc2l2ZWx5LiAoT3B0aW9uYWwsIGRlZmF1bHQgaXMgdW5kZWZpbmVkKVxuICpcbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIEFYVHJlZVZpZXdTY2hlbWEgcmVwcmVzZW50aW5nIHRoZSBoaWVyYXJjaGljYWwgc3RydWN0dXJlIG9mIGdyb3Vwcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRUb1RyZWVWaWV3U2NoZW1hKFxuICBncm91cHM6IEFYUFNldHRpbmdEZWZpbml0aW9uR3JvdXBbXSxcbiAgcGFyZW50SWQ/OiBzdHJpbmcgfCBudW1iZXJcbik6IEFYVHJlZVZpZXdTY2hlbWFbXSB7XG4gIC8vIEhlbHBlciBmdW5jdGlvbiB0byB0cmF2ZXJzZSBhbmQgY29udmVydCBhIHNpbmdsZSBncm91cCAoYW5kIGl0cyBzdWItZ3JvdXBzKVxuICBjb25zdCB0cmF2ZXJzZUdyb3VwcyA9IChncm91cDogQVhQU2V0dGluZ0RlZmluaXRpb25Hcm91cCwgcGFyZW50Pzogc3RyaW5nIHwgbnVtYmVyKTogQVhUcmVlVmlld1NjaGVtYSA9PiB7XG4gICAgY29uc3QgY3VycmVudElkID0gZ3JvdXAubmFtZTtcblxuICAgIC8vIFNjaGVtYSBmb3IgdGhlIGN1cnJlbnQgZ3JvdXBcbiAgICBjb25zdCBzY2hlbWE6IEFYVHJlZVZpZXdTY2hlbWEgPSB7XG4gICAgICBpZDogY3VycmVudElkLCAvLyBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGdyb3VwICh1c2luZyBncm91cCBuYW1lKVxuICAgICAgcGFyZW50SWQ6IHBhcmVudCwgLy8gUGFyZW50IGdyb3VwIElELCBwYXNzZWQgZG93biByZWN1cnNpdmVseVxuICAgICAgdGV4dDogZ3JvdXAudGl0bGUsIC8vIERpc3BsYXkgdGl0bGUgb2YgdGhlIGdyb3VwXG4gICAgICB0b29sdGlwOiBncm91cC5kZXNjcmlwdGlvbiwgLy8gT3B0aW9uYWwgZGVzY3JpcHRpb24gYXMgdG9vbHRpcFxuICAgICAgaGFzQ2hpbGQ6IGdyb3VwLmdyb3Vwcy5sZW5ndGggPiAwLCAvLyBXaGV0aGVyIHRoZSBncm91cCBoYXMgY2hpbGQgZ3JvdXBzXG4gICAgICBpc0V4cGFuZGVkOiBmYWxzZSwgLy8gRGVmYXVsdCBzdGF0ZSBmb3IgZXhwYW5zaW9uIChvcHRpb25hbClcbiAgICAgIGNoaWxkcmVuczogZ3JvdXAuZ3JvdXBzLmxlbmd0aCA+IDAgPyBbXSA6IHVuZGVmaW5lZCwgLy8gQ2hpbGQgZ3JvdXBzIGFycmF5ICh1bmRlZmluZWQgaWYgbm8gY2hpbGRyZW4pXG4gICAgfTtcblxuICAgIC8vIFJlY3Vyc2l2ZWx5IHByb2Nlc3MgbmVzdGVkIGdyb3VwcyAoc3ViLWdyb3VwcyBpbnNpZGUgdGhlIGN1cnJlbnQgZ3JvdXApXG4gICAgZ3JvdXAuZ3JvdXBzLmZvckVhY2goKHN1Ykdyb3VwKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZFNjaGVtYSA9IHRyYXZlcnNlR3JvdXBzKHN1Ykdyb3VwLCBjdXJyZW50SWQpOyAvLyBDcmVhdGUgc2NoZW1hIGZvciBzdWItZ3JvdXBcbiAgICAgIHNjaGVtYS5jaGlsZHJlbnM/LnB1c2goY2hpbGRTY2hlbWEpOyAvLyBBZGQgdGhlIGNoaWxkIHNjaGVtYSB0byB0aGUgcGFyZW50IGdyb3VwJ3MgY2hpbGRyZW5cbiAgICB9KTtcblxuICAgIHJldHVybiBzY2hlbWE7IC8vIFJldHVybiB0aGUgZ3JvdXAgc2NoZW1hIHdpdGggaXRzIGNoaWxkcmVuIChpZiBhbnkpXG4gIH07XG5cbiAgLy8gSW5pdGlhbGl6ZSBhbiBhcnJheSB0byBob2xkIHRoZSB0b3AtbGV2ZWwgZ3JvdXBzJyBzY2hlbWFzXG4gIGNvbnN0IHRyZWVWaWV3U2NoZW1hczogQVhUcmVlVmlld1NjaGVtYVtdID0gW107XG5cbiAgLy8gUHJvY2VzcyBlYWNoIHRvcC1sZXZlbCBncm91cCBhbmQgY29udmVydCBpdCBpbnRvIHRyZWUgdmlldyBzY2hlbWFcbiAgZ3JvdXBzLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgdHJlZVZpZXdTY2hlbWFzLnB1c2godHJhdmVyc2VHcm91cHMoZ3JvdXAsIHBhcmVudElkKSk7IC8vIEFkZCB0aGUgc2NoZW1hIGZvciBlYWNoIGdyb3VwXG4gIH0pO1xuXG4gIC8vIFJldHVybiB0aGUgcmVzdWx0aW5nIGhpZXJhcmNoaWNhbCBzdHJ1Y3R1cmVcbiAgcmV0dXJuIHRyZWVWaWV3U2NoZW1hcztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBuZXN0ZWQgZ3JvdXBzIGludG8gYnJlYWRjcnVtYi1saWtlIHBhdGhzLlxuICogRWFjaCBwYXRoIHJlcHJlc2VudHMgdGhlIGhpZXJhcmNoeSBvZiBncm91cCBuYW1lcyBsZWFkaW5nIHRvIGEgc3BlY2lmaWMgZ3JvdXAuXG4gKlxuICogQHBhcmFtIGdyb3VwcyAtIFRoZSBpbnB1dCBhcnJheSBvZiBBWFBTZXR0aW5nRGVmaW5pdGlvbkdyb3VwLlxuICogQHBhcmFtIGJhc2VQYXRoIC0gVGhlIGN1cnJlbnQgcGF0aCBwcmVmaXggKG9wdGlvbmFsLCBkZWZhdWx0IGlzIGFuIGVtcHR5IGFycmF5KS5cbiAqXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBwYXRocyB3aGVyZSBlYWNoIHBhdGggaXMgYW4gYXJyYXkgb2Ygc3RyaW5ncyByZXByZXNlbnRpbmcgdGhlIGJyZWFkY3J1bWIuXG4gKi9cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './setting-view/setting-menu.component';
2
+ export * from './setting-preview/setting-preview.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvbGF5b3V0cy9zZXR0aW5nLWxheW91dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NldHRpbmctdmlldy9zZXR0aW5nLW1lbnUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2V0dGluZy1wcmV2aWV3L3NldHRpbmctcHJldmlldy5jb21wb25lbnQnO1xuIl19
@@ -0,0 +1,104 @@
1
+ import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
2
+ import { AXButtonModule } from '@acorex/components/button';
3
+ import { AXDecoratorModule } from '@acorex/components/decorators';
4
+ import { AXToastService } from '@acorex/components/toast';
5
+ import { AXTranslationModule } from '@acorex/core/translation';
6
+ import { AXPSettingDefinitionProviderService, AXPStickyDirective } from '@acorex/platform/common';
7
+ import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
8
+ import { AsyncPipe } from '@angular/common';
9
+ import { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';
10
+ import { ActivatedRoute, Router, RouterLink } from '@angular/router';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@acorex/platform/layout/builder";
13
+ import * as i2 from "@acorex/components/breadcrumbs";
14
+ import * as i3 from "@acorex/components/button";
15
+ import * as i4 from "@acorex/core/translation";
16
+ export class AXPSettingsPreviewComponent {
17
+ setContext(value) {
18
+ this.context.set(value);
19
+ }
20
+ constructor() {
21
+ this.activatedRoute = inject(ActivatedRoute);
22
+ this.router = inject(Router);
23
+ this.toastService = inject(AXToastService);
24
+ this.settingService = inject(AXPSettingDefinitionProviderService);
25
+ this.data = signal(null);
26
+ this.context = signal({});
27
+ this.isSaving = signal(false);
28
+ this.previousContext = signal({});
29
+ this.canCancel = computed(() => this.isObjectEmpty(this.context()));
30
+ this.canSave = computed(() => !this.isSaving() &&
31
+ !this.isObjectEmpty(this.context()) &&
32
+ !this.areObjectsEqual(this.context(), this.previousContext()));
33
+ this.fullRoute = this.router.url.split('/settings')[0] + '/settings/';
34
+ this.eff = effect(() => console.log(this.context()));
35
+ debugger;
36
+ this.activatedRoute.params.subscribe((i) => {
37
+ const apiData = this.settingService.findGroupDetails(i?.['group']);
38
+ // console.log(apiData);
39
+ this.data.set(apiData);
40
+ });
41
+ }
42
+ isObjectEmpty(obj) {
43
+ // Check if the object has any own properties
44
+ return Object.keys(obj).length === 0;
45
+ }
46
+ areObjectsEqual(obj1, obj2) {
47
+ // Check if both are not objects or are null, compare directly
48
+ if (typeof obj1 !== 'object' || typeof obj2 !== 'object' || obj1 === null || obj2 === null) {
49
+ return obj1 === obj2;
50
+ }
51
+ // Check if the keys' lengths match
52
+ const keys1 = Object.keys(obj1);
53
+ const keys2 = Object.keys(obj2);
54
+ if (keys1.length !== keys2.length) {
55
+ return false;
56
+ }
57
+ // Recursively compare each key and value
58
+ for (const key of keys1) {
59
+ const keyTyped = key;
60
+ if (!obj2.hasOwnProperty(key) || !this.areObjectsEqual(obj1[keyTyped], obj2[keyTyped])) {
61
+ return false;
62
+ }
63
+ }
64
+ return true;
65
+ }
66
+ onCancel() {
67
+ this.context.set({});
68
+ }
69
+ onSave() {
70
+ this.previousContext.set(this.context());
71
+ //call api
72
+ this.isSaving.set(true);
73
+ this.toastService.show({
74
+ color: 'success',
75
+ title: `saved successfully`,
76
+ location: 'bottom-center',
77
+ closeButton: true,
78
+ timeOut: 3000,
79
+ timeOutProgress: false,
80
+ });
81
+ //simulate wait until api call is responded
82
+ setTimeout(() => {
83
+ this.isSaving.set(false);
84
+ }, 500);
85
+ }
86
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPSettingsPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
87
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPSettingsPreviewComponent, isStandalone: true, selector: "ng-component", host: { classAttribute: "ax-w-full" }, ngImport: i0, template: "<div #content>\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 ax-mx-6 ax-shadow-xl'\"\n [stickyOffset]=\"30\"\n [stickyParent]=\"content\"\n >\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">{{ data()?.breadcrumb?.[0]?.title }}</div>\n @if(false) {\n <div class=\"ax-text-sm ax-text-neutral-600\">description</div>\n }\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\">\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n <ax-breadcrumbs-item [active]=\"false\" [routerLink]=\"fullRoute\"> Home </ax-breadcrumbs-item>\n @for(b of data()?.breadcrumb;track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [class.!dark:ax-text-neutral-200]=\"last\"\n [routerLink]=\"fullRoute + b.name\"\n >\n {{ b.title }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n </div>\n </div>\n <axp-widgets-container\n class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4 ax-h-full ax-w-full\"\n [context]=\"context()\"\n (contextChange)=\"setContext($event)\"\n >\n <div class=\"ax-bg-surface ax-my-5 ax-border ax-rounded-xl\">\n @if(data()?.sections){ @for(i of data()?.sections; track i.name){\n <div class=\"ax-p-2 ax-w-full\">\n <div class=\"ax-py-4 ax-px-2\">\n <span class=\"ax-font-bold ax-text-xl\">{{ i.title }}</span>\n </div>\n @for(j of i.settings; track j.name){\n <div class=\"ax-p-2\">\n <p class=\"ax-text-sm ax-pb-1 ax-pl-1\">{{ j.title }}:</p>\n <div class=\"ax-max-w-[50%]\">\n <ng-container axp-widget-renderer [node]=\"j.widget\" [mode]=\"'edit'\"> </ng-container>\n </div>\n </div>\n }\n </div>\n }\n <div class=\"ax-w-full ax-gap-3 ax-p-4 ax-pt-6 ax-border-t ax-flex ax-justify-end ax-items-center\">\n <ax-button [disabled]=\"canCancel()\" (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button\n [disabled]=\"!canSave()\"\n (onClick)=\"onSave()\"\n color=\"primary\"\n [text]=\"'save-changes' | translate | async\"\n ></ax-button>\n </div>\n }@else {\n <div class=\"ax-p-3\">\n @for(group of data()?.childGroups; track $index){\n <div class=\"ax-p-4\">\n <a [routerLink]=\"fullRoute + group.name\" class=\"ax-text-primary-600 ax-underline ax-font-bold ax-text-xl\">{{\n group.title\n }}</a>\n </div>\n }\n </div>\n }\n </div></axp-widgets-container\n >\n</div>\n", dependencies: [{ kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "variables", "functions"], outputs: ["onChanged", "contextChange"] }, { kind: "directive", type: i1.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "component", type: i2.AXBreadCrumbsComponent, selector: "ax-breadcrumbs" }, { kind: "component", type: i2.AXBreadCrumbsItemComponent, selector: "ax-breadcrumbs-item", inputs: ["disabled", "active"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
88
+ }
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPSettingsPreviewComponent, decorators: [{
90
+ type: Component,
91
+ args: [{ standalone: true, imports: [
92
+ AXPLayoutBuilderModule,
93
+ AXDecoratorModule,
94
+ AXBreadcrumbsModule,
95
+ RouterLink,
96
+ AXButtonModule,
97
+ AXTranslationModule,
98
+ AsyncPipe,
99
+ AXPStickyDirective,
100
+ ], changeDetection: ChangeDetectionStrategy.OnPush, host: {
101
+ class: 'ax-w-full',
102
+ }, template: "<div #content>\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 ax-mx-6 ax-shadow-xl'\"\n [stickyOffset]=\"30\"\n [stickyParent]=\"content\"\n >\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">{{ data()?.breadcrumb?.[0]?.title }}</div>\n @if(false) {\n <div class=\"ax-text-sm ax-text-neutral-600\">description</div>\n }\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\">\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n <ax-breadcrumbs-item [active]=\"false\" [routerLink]=\"fullRoute\"> Home </ax-breadcrumbs-item>\n @for(b of data()?.breadcrumb;track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [class.!dark:ax-text-neutral-200]=\"last\"\n [routerLink]=\"fullRoute + b.name\"\n >\n {{ b.title }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n </div>\n </div>\n <axp-widgets-container\n class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4 ax-h-full ax-w-full\"\n [context]=\"context()\"\n (contextChange)=\"setContext($event)\"\n >\n <div class=\"ax-bg-surface ax-my-5 ax-border ax-rounded-xl\">\n @if(data()?.sections){ @for(i of data()?.sections; track i.name){\n <div class=\"ax-p-2 ax-w-full\">\n <div class=\"ax-py-4 ax-px-2\">\n <span class=\"ax-font-bold ax-text-xl\">{{ i.title }}</span>\n </div>\n @for(j of i.settings; track j.name){\n <div class=\"ax-p-2\">\n <p class=\"ax-text-sm ax-pb-1 ax-pl-1\">{{ j.title }}:</p>\n <div class=\"ax-max-w-[50%]\">\n <ng-container axp-widget-renderer [node]=\"j.widget\" [mode]=\"'edit'\"> </ng-container>\n </div>\n </div>\n }\n </div>\n }\n <div class=\"ax-w-full ax-gap-3 ax-p-4 ax-pt-6 ax-border-t ax-flex ax-justify-end ax-items-center\">\n <ax-button [disabled]=\"canCancel()\" (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button\n [disabled]=\"!canSave()\"\n (onClick)=\"onSave()\"\n color=\"primary\"\n [text]=\"'save-changes' | translate | async\"\n ></ax-button>\n </div>\n }@else {\n <div class=\"ax-p-3\">\n @for(group of data()?.childGroups; track $index){\n <div class=\"ax-p-4\">\n <a [routerLink]=\"fullRoute + group.name\" class=\"ax-text-primary-600 ax-underline ax-font-bold ax-text-xl\">{{\n group.title\n }}</a>\n </div>\n }\n </div>\n }\n </div></axp-widgets-container\n >\n</div>\n" }]
103
+ }], ctorParameters: () => [] });
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3NldHRpbmctbGF5b3V0L3NldHRpbmctcHJldmlldy9zZXR0aW5nLXByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvc2V0dGluZy1sYXlvdXQvc2V0dGluZy1wcmV2aWV3L3NldHRpbmctcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBbUIsbUNBQW1DLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7OztBQW9CckUsTUFBTSxPQUFPLDJCQUEyQjtJQVM1QixVQUFVLENBQUMsS0FBVTtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBZUQ7UUF6QmlCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsaUJBQVksR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFdEMsbUJBQWMsR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUVwRSxTQUFJLEdBQUcsTUFBTSxDQUF5QixJQUFJLENBQUMsQ0FBQztRQUM1QyxZQUFPLEdBQUcsTUFBTSxDQUFtQixFQUFFLENBQUMsQ0FBQztRQUt6QyxhQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLG9CQUFlLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9ELFlBQU8sR0FBRyxRQUFRLENBQzFCLEdBQUcsRUFBRSxDQUNILENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ25DLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQ2hFLENBQUM7UUFFRixjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQztRQUNqRSxRQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUc5QyxRQUFRLENBQUM7UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDbkUsd0JBQXdCO1lBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxHQUFXO1FBQy9CLDZDQUE2QztRQUM3QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8sZUFBZSxDQUFJLElBQU8sRUFBRSxJQUFPO1FBQ3pDLDhEQUE4RDtRQUM5RCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDM0YsT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFFRCxtQ0FBbUM7UUFDbkMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQseUNBQXlDO1FBQ3pDLEtBQUssTUFBTSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7WUFDeEIsTUFBTSxRQUFRLEdBQUcsR0FBYyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDdkYsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVTLFFBQVE7UUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVTLE1BQU07UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN6QyxVQUFVO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7WUFDckIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsS0FBSyxFQUFFLG9CQUFvQjtZQUMzQixRQUFRLEVBQUUsZUFBZTtZQUN6QixXQUFXLEVBQUUsSUFBSTtZQUNqQixPQUFPLEVBQUUsSUFBSTtZQUNiLGVBQWUsRUFBRSxLQUFLO1NBQ3ZCLENBQUMsQ0FBQztRQUNILDJDQUEyQztRQUMzQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQzs4R0FyRlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsK0dDN0J4Qyw2cUdBZ0ZBLDJDRGpFSSxzQkFBc0Isc1dBQ3RCLGlCQUFpQiw4QkFDakIsbUJBQW1CLGdQQUNuQixVQUFVLG1PQUNWLGNBQWMsdVpBQ2QsbUJBQW1CLDBGQUNuQixTQUFTLDhDQUNULGtCQUFrQjs7MkZBT1QsMkJBQTJCO2tCQWxCdkMsU0FBUztpQ0FFSSxJQUFJLFdBQ1A7d0JBQ1Asc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsVUFBVTt3QkFDVixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxrQkFBa0I7cUJBQ25CLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxXQUFXO3FCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnJlYWRjcnVtYnNNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhUb2FzdFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdG9hc3QnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBHcm91cERldGFpbHMsIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJTZXJ2aWNlLCBBWFBTdGlja3lEaXJlY3RpdmUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICdzZXR0aW5nLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWEJyZWFkY3J1bWJzTW9kdWxlLFxuICAgIFJvdXRlckxpbmssXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBc3luY1BpcGUsXG4gICAgQVhQU3RpY2t5RGlyZWN0aXZlLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYXgtdy1mdWxsJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQU2V0dGluZ3NQcmV2aWV3Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmF0ZWRSb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9hc3RTZXJ2aWNlID0gaW5qZWN0KEFYVG9hc3RTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdTZXJ2aWNlID0gaW5qZWN0KEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgZGF0YSA9IHNpZ25hbDxBWFBHcm91cERldGFpbHMgfCBudWxsPihudWxsKTtcbiAgcHJvdGVjdGVkIGNvbnRleHQgPSBzaWduYWw8UmVjb3JkPGFueSwgYW55Pj4oe30pO1xuICBwcm90ZWN0ZWQgc2V0Q29udGV4dCh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5jb250ZXh0LnNldCh2YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGlzU2F2aW5nID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJpdmF0ZSBwcmV2aW91c0NvbnRleHQgPSBzaWduYWwoe30pO1xuICBwcm90ZWN0ZWQgY2FuQ2FuY2VsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pc09iamVjdEVtcHR5KHRoaXMuY29udGV4dCgpKSk7XG4gIHByb3RlY3RlZCBjYW5TYXZlID0gY29tcHV0ZWQoXG4gICAgKCkgPT5cbiAgICAgICF0aGlzLmlzU2F2aW5nKCkgJiZcbiAgICAgICF0aGlzLmlzT2JqZWN0RW1wdHkodGhpcy5jb250ZXh0KCkpICYmXG4gICAgICAhdGhpcy5hcmVPYmplY3RzRXF1YWwodGhpcy5jb250ZXh0KCksIHRoaXMucHJldmlvdXNDb250ZXh0KCkpXG4gICk7XG5cbiAgZnVsbFJvdXRlID0gdGhpcy5yb3V0ZXIudXJsLnNwbGl0KCcvc2V0dGluZ3MnKVswXSArICcvc2V0dGluZ3MvJztcbiAgZWZmID0gZWZmZWN0KCgpID0+IGNvbnNvbGUubG9nKHRoaXMuY29udGV4dCgpKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZGVidWdnZXI7XG4gICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKChpKSA9PiB7XG4gICAgICBjb25zdCBhcGlEYXRhID0gdGhpcy5zZXR0aW5nU2VydmljZS5maW5kR3JvdXBEZXRhaWxzKGk/LlsnZ3JvdXAnXSk7XG4gICAgICAvLyBjb25zb2xlLmxvZyhhcGlEYXRhKTtcbiAgICAgIHRoaXMuZGF0YS5zZXQoYXBpRGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzT2JqZWN0RW1wdHkob2JqOiBvYmplY3QpOiBib29sZWFuIHtcbiAgICAvLyBDaGVjayBpZiB0aGUgb2JqZWN0IGhhcyBhbnkgb3duIHByb3BlcnRpZXNcbiAgICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7XG4gIH1cblxuICBwcml2YXRlIGFyZU9iamVjdHNFcXVhbDxUPihvYmoxOiBULCBvYmoyOiBUKTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgYm90aCBhcmUgbm90IG9iamVjdHMgb3IgYXJlIG51bGwsIGNvbXBhcmUgZGlyZWN0bHlcbiAgICBpZiAodHlwZW9mIG9iajEgIT09ICdvYmplY3QnIHx8IHR5cGVvZiBvYmoyICE9PSAnb2JqZWN0JyB8fCBvYmoxID09PSBudWxsIHx8IG9iajIgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBvYmoxID09PSBvYmoyO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGlmIHRoZSBrZXlzJyBsZW5ndGhzIG1hdGNoXG4gICAgY29uc3Qga2V5czEgPSBPYmplY3Qua2V5cyhvYmoxKTtcbiAgICBjb25zdCBrZXlzMiA9IE9iamVjdC5rZXlzKG9iajIpO1xuXG4gICAgaWYgKGtleXMxLmxlbmd0aCAhPT0ga2V5czIubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gUmVjdXJzaXZlbHkgY29tcGFyZSBlYWNoIGtleSBhbmQgdmFsdWVcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzMSkge1xuICAgICAgY29uc3Qga2V5VHlwZWQgPSBrZXkgYXMga2V5b2YgVDtcbiAgICAgIGlmICghb2JqMi5oYXNPd25Qcm9wZXJ0eShrZXkpIHx8ICF0aGlzLmFyZU9iamVjdHNFcXVhbChvYmoxW2tleVR5cGVkXSwgb2JqMltrZXlUeXBlZF0pKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuc2V0KHt9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvblNhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5wcmV2aW91c0NvbnRleHQuc2V0KHRoaXMuY29udGV4dCgpKTtcbiAgICAvL2NhbGwgYXBpXG4gICAgdGhpcy5pc1NhdmluZy5zZXQodHJ1ZSk7XG4gICAgdGhpcy50b2FzdFNlcnZpY2Uuc2hvdyh7XG4gICAgICBjb2xvcjogJ3N1Y2Nlc3MnLFxuICAgICAgdGl0bGU6IGBzYXZlZCBzdWNjZXNzZnVsbHlgLFxuICAgICAgbG9jYXRpb246ICdib3R0b20tY2VudGVyJyxcbiAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgdGltZU91dDogMzAwMCxcbiAgICAgIHRpbWVPdXRQcm9ncmVzczogZmFsc2UsXG4gICAgfSk7XG4gICAgLy9zaW11bGF0ZSB3YWl0IHVudGlsIGFwaSBjYWxsIGlzIHJlc3BvbmRlZFxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pc1NhdmluZy5zZXQoZmFsc2UpO1xuICAgIH0sIDUwMCk7XG4gIH1cbn1cbiIsIjxkaXYgI2NvbnRlbnQ+XG4gIDxkaXZcbiAgICBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtcHQtNCBheC1zdGlja3kgYXgtdG9wLTAgYXgtei0xMCBheC10cmFuc2l0aW9uLWFsbFwiXG4gICAgI3N0aWNreT1cImF4cFN0aWNreVwiXG4gICAgW2F4cFN0aWNreV09XCInYXgtYmctc3VyZmFjZSBheC1weC02IGF4LXB5LTMgYXgtbXgtNiBheC1zaGFkb3cteGwnXCJcbiAgICBbc3RpY2t5T2Zmc2V0XT1cIjMwXCJcbiAgICBbc3RpY2t5UGFyZW50XT1cImNvbnRlbnRcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtanVzdGlmeS1iZXR3ZWVuIGF4LWl0ZW1zLWNlbnRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTEgYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yIGF4LXRyYW5zaXRpb25cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC14bCBtZDpheC10ZXh0LTJ4bCBheC1mb250LWJvbGRcIj57eyBkYXRhKCk/LmJyZWFkY3J1bWI/LlswXT8udGl0bGUgIH19PC9kaXY+XG4gICAgICAgICAgQGlmKGZhbHNlKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQtc20gYXgtdGV4dC1uZXV0cmFsLTYwMFwiPmRlc2NyaXB0aW9uPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxheC1icmVhZGNydW1icyBjbGFzcz1cImNoaWxkOmF4LWZvbnQtbm9ybWFsIGNoaWxkOmF4LXRleHQtbmV1dHJhbC00MDBcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGl2aWRlcj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1jaGV2cm9uLXJpZ2h0IGF4LXRleHQteHMgYXgtbXgtMlwiPjwvaT5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8YXgtYnJlYWRjcnVtYnMtaXRlbSBbYWN0aXZlXT1cImZhbHNlXCIgW3JvdXRlckxpbmtdPVwiZnVsbFJvdXRlXCI+IEhvbWUgPC9heC1icmVhZGNydW1icy1pdGVtPlxuICAgICAgICAgICAgQGZvcihiIG9mIGRhdGEoKT8uYnJlYWRjcnVtYjt0cmFjayAkaW5kZXg7bGV0IGxhc3Q9JGxhc3QpIHtcbiAgICAgICAgICAgIDxheC1icmVhZGNydW1icy1pdGVtXG4gICAgICAgICAgICAgIFthY3RpdmVdPVwibGFzdFwiXG4gICAgICAgICAgICAgIFtjbGFzcy4hYXgtZm9udC1zZW1pYm9sZF09XCJsYXN0XCJcbiAgICAgICAgICAgICAgW2NsYXNzLiFheC10ZXh0LW5ldXRyYWwtNjAwXT1cImxhc3RcIlxuICAgICAgICAgICAgICBbY2xhc3MuIWRhcms6YXgtdGV4dC1uZXV0cmFsLTIwMF09XCJsYXN0XCJcbiAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiZnVsbFJvdXRlICsgYi5uYW1lXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgYi50aXRsZSB9fVxuICAgICAgICAgICAgPC9heC1icmVhZGNydW1icy1pdGVtPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvYXgtYnJlYWRjcnVtYnM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8YXhwLXdpZGdldHMtY29udGFpbmVyXG4gICAgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yIGF4LXAtNCBheC1oLWZ1bGwgYXgtdy1mdWxsXCJcbiAgICBbY29udGV4dF09XCJjb250ZXh0KClcIlxuICAgIChjb250ZXh0Q2hhbmdlKT1cInNldENvbnRleHQoJGV2ZW50KVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYmctc3VyZmFjZSBheC1teS01IGF4LWJvcmRlciBheC1yb3VuZGVkLXhsXCI+XG4gICAgICBAaWYoZGF0YSgpPy5zZWN0aW9ucyl7IEBmb3IoaSBvZiBkYXRhKCk/LnNlY3Rpb25zOyB0cmFjayBpLm5hbWUpe1xuICAgICAgPGRpdiBjbGFzcz1cImF4LXAtMiBheC13LWZ1bGxcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LXB5LTQgYXgtcHgtMlwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtZm9udC1ib2xkIGF4LXRleHQteGxcIj57eyBpLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGZvcihqIG9mIGkuc2V0dGluZ3M7IHRyYWNrIGoubmFtZSl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1wLTJcIj5cbiAgICAgICAgICA8cCBjbGFzcz1cImF4LXRleHQtc20gYXgtcGItMSBheC1wbC0xXCI+e3sgai50aXRsZSB9fTo8L3A+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LW1heC13LVs1MCVdXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIGF4cC13aWRnZXQtcmVuZGVyZXIgW25vZGVdPVwiai53aWRnZXRcIiBbbW9kZV09XCInZWRpdCdcIj4gPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICAgIDxkaXYgY2xhc3M9XCJheC13LWZ1bGwgYXgtZ2FwLTMgYXgtcC00IGF4LXB0LTYgYXgtYm9yZGVyLXQgYXgtZmxleCBheC1qdXN0aWZ5LWVuZCBheC1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiBbZGlzYWJsZWRdPVwiY2FuQ2FuY2VsKClcIiAob25DbGljayk9XCJvbkNhbmNlbCgpXCIgW3RleHRdPVwiJ2NhbmNlbCcgfCB0cmFuc2xhdGUgfCBhc3luY1wiPjwvYXgtYnV0dG9uPlxuICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFjYW5TYXZlKClcIlxuICAgICAgICAgIChvbkNsaWNrKT1cIm9uU2F2ZSgpXCJcbiAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgIFt0ZXh0XT1cIidzYXZlLWNoYW5nZXMnIHwgdHJhbnNsYXRlIHwgYXN5bmNcIlxuICAgICAgICA+PC9heC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIH1AZWxzZSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtcC0zXCI+XG4gICAgICAgIEBmb3IoZ3JvdXAgb2YgZGF0YSgpPy5jaGlsZEdyb3VwczsgdHJhY2sgJGluZGV4KXtcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LXAtNFwiPlxuICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cImZ1bGxSb3V0ZSArIGdyb3VwLm5hbWVcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeS02MDAgYXgtdW5kZXJsaW5lIGF4LWZvbnQtYm9sZCBheC10ZXh0LXhsXCI+e3tcbiAgICAgICAgICAgIGdyb3VwLnRpdGxlXG4gICAgICAgICAgfX08L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj48L2F4cC13aWRnZXRzLWNvbnRhaW5lclxuICA+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,44 @@
1
+ import { AXDecoratorModule } from '@acorex/components/decorators';
2
+ import { AXDrawerModule } from '@acorex/components/drawer';
3
+ import { AXTreeViewModule } from '@acorex/components/tree-view';
4
+ import { AXPSettingDefinitionProviderService } from '@acorex/platform/common';
5
+ import { CommonModule } from '@angular/common';
6
+ import { afterNextRender, ChangeDetectionStrategy, Component, computed, inject, signal, viewChild, } from '@angular/core';
7
+ import { ActivatedRoute, Router, RouterOutlet } from '@angular/router';
8
+ import { convertToTreeViewSchema } from '../convert-setting-data';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@acorex/components/drawer";
11
+ import * as i2 from "@acorex/components/decorators";
12
+ import * as i3 from "@acorex/components/tree-view";
13
+ export class AXPSettingsMenuComponent {
14
+ constructor() {
15
+ this.drawerComp = viewChild('drawer');
16
+ this.settingService = inject(AXPSettingDefinitionProviderService);
17
+ this.activatedRoute = inject(ActivatedRoute);
18
+ this.router = inject(Router);
19
+ this.data = signal([]);
20
+ this.formattedData = computed(() => convertToTreeViewSchema(this.data()));
21
+ this.activatedRoute.params.subscribe((i) => {
22
+ i?.['group'];
23
+ });
24
+ afterNextRender(() => {
25
+ this.drawerComp()?.open();
26
+ });
27
+ }
28
+ async ngOnInit() {
29
+ await this.getData();
30
+ }
31
+ async getData() {
32
+ this.data.set(await this.settingService.items());
33
+ }
34
+ onClick(item) {
35
+ this.router.navigate([item.data?.['id']], { relativeTo: this.activatedRoute });
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPSettingsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPSettingsMenuComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "drawerComp", first: true, predicate: ["drawer"], descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container class=\"ax-min-w-96 ax-flex ax-items-center ax-h-[100vh-104px]\">\n <ax-drawer #drawer location=\"start\" mode=\"push\" [collapsed]=\"true\">\n <ax-content class=\"ax-flex ax-min-w-[300px] ax-flex-col ax-p-6 ax-border-r\">\n <p class=\"ax-text-xl ax-font-bold ax-pb-6\">Settings</p>\n @if(data()){\n <ax-tree-view\n (onNodeClick)=\"onClick($event)\"\n [hasChildField]=\"'hasChild'\"\n [selectable]=\"false\"\n [items]=\"formattedData()\"\n ></ax-tree-view>\n }\n </ax-content>\n </ax-drawer>\n\n <ax-content class=\"ax-bg-light-100 dark:ax-bg-dark-500 ax-flex ax-h-full ax-w-full ax-p-3 dark:ax-border-white/30\">\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n", dependencies: [{ kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i1.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i1.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTreeViewModule }, { kind: "component", type: i3.AXTreeViewComponent, selector: "ax-tree-view", inputs: ["items", "selectable", "selectionMode", "selectionBehavior", "showActiveNode", "valueField", "textField", "visibleField", "disableField", "hasChildField", "iconField"], outputs: ["onSelectionChange", "onItemClick", "onNodeClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPSettingsMenuComponent, decorators: [{
41
+ type: Component,
42
+ args: [{ standalone: true, imports: [AXDrawerModule, CommonModule, RouterOutlet, AXDecoratorModule, AXTreeViewModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ax-drawer-container class=\"ax-min-w-96 ax-flex ax-items-center ax-h-[100vh-104px]\">\n <ax-drawer #drawer location=\"start\" mode=\"push\" [collapsed]=\"true\">\n <ax-content class=\"ax-flex ax-min-w-[300px] ax-flex-col ax-p-6 ax-border-r\">\n <p class=\"ax-text-xl ax-font-bold ax-pb-6\">Settings</p>\n @if(data()){\n <ax-tree-view\n (onNodeClick)=\"onClick($event)\"\n [hasChildField]=\"'hasChild'\"\n [selectable]=\"false\"\n [items]=\"formattedData()\"\n ></ax-tree-view>\n }\n </ax-content>\n </ax-drawer>\n\n <ax-content class=\"ax-bg-light-100 dark:ax-bg-dark-500 ax-flex ax-h-full ax-w-full ax-p-3 dark:ax-border-white/30\">\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n" }]
43
+ }], ctorParameters: () => [] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9sYXlvdXRzL3NldHRpbmctbGF5b3V0L3NldHRpbmctdmlldy9zZXR0aW5nLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS90aGVtZXMvZGVmYXVsdC9zcmMvbGliL2xheW91dHMvc2V0dGluZy1sYXlvdXQvc2V0dGluZy12aWV3L3NldHRpbmctbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQXFCLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhFLE9BQU8sRUFBNEIsbUNBQW1DLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBRU4sTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7QUFRbEUsTUFBTSxPQUFPLHdCQUF3QjtJQVFuQztRQVBBLGVBQVUsR0FBRyxTQUFTLENBQW9CLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELG1CQUFjLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7UUFDN0QsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixTQUFJLEdBQUcsTUFBTSxDQUE2QixFQUFFLENBQUMsQ0FBQztRQUM5QyxrQkFBYSxHQUFHLFFBQVEsQ0FBcUIsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUd2RixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6QyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNkLENBQUMsQ0FBQyxDQUFBO1FBQ0YsZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsS0FBSyxDQUFDLFFBQVE7UUFDWixNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQThCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDakYsQ0FBQzs4R0ExQlUsd0JBQXdCO2tHQUF4Qix3QkFBd0IsOExDekJyQywwd0JBbUJBLDJDREdZLGNBQWMsNlVBQUUsWUFBWSwrQkFBRSxZQUFZLDBKQUFFLGlCQUFpQixzUEFBRSxnQkFBZ0I7OzJGQUc5RSx3QkFBd0I7a0JBTnBDLFNBQVM7aUNBRUksSUFBSSxXQUNQLENBQUMsY0FBYyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsbUJBQ3pFLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYRHJhd2VyQ29tcG9uZW50LCBBWERyYXdlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHsgQVhUcmVlVmlld01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90cmVlLXZpZXcnO1xuaW1wb3J0IHsgQVhUcmVlSXRlbUNsaWNrQmFzZUV2ZW50LCBBWFRyZWVWaWV3U2NoZW1hIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RyZWUtdmlldy9saWIvdHJlZS12aWV3LmNsYXNzJztcbmltcG9ydCB7IEFYUFNldHRpbmdEZWZpbml0aW9uSXRlbSwgQVhQU2V0dGluZ0RlZmluaXRpb25Qcm92aWRlclNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgaW5qZWN0LFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbiAgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlck91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBjb252ZXJ0VG9UcmVlVmlld1NjaGVtYSB9IGZyb20gJy4uL2NvbnZlcnQtc2V0dGluZy1kYXRhJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnc2V0dGluZy1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0FYRHJhd2VyTW9kdWxlLCBDb21tb25Nb2R1bGUsIFJvdXRlck91dGxldCwgQVhEZWNvcmF0b3JNb2R1bGUsIEFYVHJlZVZpZXdNb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQVhQU2V0dGluZ3NNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZHJhd2VyQ29tcCA9IHZpZXdDaGlsZDxBWERyYXdlckNvbXBvbmVudD4oJ2RyYXdlcicpO1xuICBzZXR0aW5nU2VydmljZSA9IGluamVjdChBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyU2VydmljZSk7XG4gIGFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIGRhdGEgPSBzaWduYWw8QVhQU2V0dGluZ0RlZmluaXRpb25JdGVtW10+KFtdKTtcbiAgZm9ybWF0dGVkRGF0YSA9IGNvbXB1dGVkPEFYVHJlZVZpZXdTY2hlbWFbXT4oKCkgPT4gY29udmVydFRvVHJlZVZpZXdTY2hlbWEodGhpcy5kYXRhKCkpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnBhcmFtcy5zdWJzY3JpYmUoKGkpID0+IHtcbiAgICAgIGk/LlsnZ3JvdXAnXVxuICAgIH0pXG4gICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHRoaXMuZHJhd2VyQ29tcCgpPy5vcGVuKCk7XG4gICAgfSk7XG4gIH1cbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5nZXREYXRhKCk7XG4gIH1cblxuICBhc3luYyBnZXREYXRhKCkge1xuICAgIHRoaXMuZGF0YS5zZXQoYXdhaXQgdGhpcy5zZXR0aW5nU2VydmljZS5pdGVtcygpKTtcbiAgfVxuXG4gIG9uQ2xpY2soaXRlbTogQVhUcmVlSXRlbUNsaWNrQmFzZUV2ZW50KSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2l0ZW0uZGF0YT8uWydpZCddXSwgeyByZWxhdGl2ZVRvOiB0aGlzLmFjdGl2YXRlZFJvdXRlIH0pO1xuICB9XG5cbiAgLy8gcHJpdmF0ZSB2aWV3TW9kZWwgPSBpbmplY3QoQVhQU2V0dGluZ3NWaWV3TW9kZWwpO1xuICAvLyBwcm90ZWN0ZWQgZGF0YVNvdXJjZSA9IHRoaXMudmlld01vZGVsLmRhdGFTb3VyY2U7XG4gIC8vIEBWaWV3Q2hpbGQoJ2dyaWQnKSBncmlkITogQVhEYXRhVGFibGVDb21wb25lbnQ7XG4gIC8vIC8vINi52YbZiNin2YYg2LXZgdit2Ycg2KrZhti424zZhdin2KpcbiAgLy8gcHJvdGVjdGVkIHRpdGxlID0gdGhpcy52aWV3TW9kZWwudGl0bGU7XG4gIC8vIC8vINmF2YLYr9in2LEg2KzYs9iq2KzZiNuMINiq2YbYuNuM2YXYp9iqXG4gIC8vIHByb3RlY3RlZCBzZWFyY2hWYWx1ZSA9ICcnO1xuICAvLyBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG4gIC8vIC8vINmH2YbYr9mEINiq2LrbjNuM2LHYp9iqINis2LPYqtis2YhcbiAgLy8gaGFuZGxlU2VhcmNoVmFsdWVDaGFuZ2UoZXZlbnQ6IEFYVmFsdWVDaGFuZ2VkRXZlbnQpIHtcbiAgLy8gICBpZiAoZXZlbnQuaXNVc2VySW50ZXJhY3Rpb24pIHtcbiAgLy8gICAgIHRoaXMudmlld01vZGVsLmFwcGx5U2VhcmNoKGV2ZW50LnZhbHVlKTtcbiAgLy8gICB9XG4gIC8vIH1cbiAgLy8gLy8g2KfZhtiq2K7Yp9ioINiq2YbYuNuM2YUg24zYpyDar9ix2YjZhyDYqtmG2LjbjNmFXG4gIC8vIGhhbmRsZVJvd0RiQ2xpY2socm93RGF0YTogYW55KSB7XG4gIC8vICAgdGhpcy52aWV3TW9kZWwuc2VsZWN0U2V0dGluZyhyb3dEYXRhKTtcbiAgLy8gfVxuICAvLyAvLyDYsNiu24zYsdmHINiq2LrbjNuM2LHYp9iqINiq2YbYuNuM2YXYp9iqXG4gIC8vIHNhdmVTZXR0aW5nKHNldHRpbmdLZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAvLyAgIHRoaXMudmlld01vZGVsLnNhdmVTZXR0aW5nKHsga2V5OiBzZXR0aW5nS2V5LCB2YWx1ZSB9KTtcbiAgLy8gfVxufVxuIiwiPGF4LWRyYXdlci1jb250YWluZXIgY2xhc3M9XCJheC1taW4tdy05NiBheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1oLVsxMDB2aC0xMDRweF1cIj5cbiAgPGF4LWRyYXdlciAjZHJhd2VyIGxvY2F0aW9uPVwic3RhcnRcIiBtb2RlPVwicHVzaFwiIFtjb2xsYXBzZWRdPVwidHJ1ZVwiPlxuICAgIDxheC1jb250ZW50IGNsYXNzPVwiYXgtZmxleCBheC1taW4tdy1bMzAwcHhdIGF4LWZsZXgtY29sIGF4LXAtNiBheC1ib3JkZXItclwiPlxuICAgICAgPHAgY2xhc3M9XCJheC10ZXh0LXhsIGF4LWZvbnQtYm9sZCBheC1wYi02XCI+U2V0dGluZ3M8L3A+XG4gICAgICBAaWYoZGF0YSgpKXtcbiAgICAgIDxheC10cmVlLXZpZXdcbiAgICAgICAgKG9uTm9kZUNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIFtoYXNDaGlsZEZpZWxkXT1cIidoYXNDaGlsZCdcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgIFtpdGVtc109XCJmb3JtYXR0ZWREYXRhKClcIlxuICAgICAgPjwvYXgtdHJlZS12aWV3PlxuICAgICAgfVxuICAgIDwvYXgtY29udGVudD5cbiAgPC9heC1kcmF3ZXI+XG5cbiAgPGF4LWNvbnRlbnQgY2xhc3M9XCJheC1iZy1saWdodC0xMDAgZGFyazpheC1iZy1kYXJrLTUwMCBheC1mbGV4IGF4LWgtZnVsbCBheC13LWZ1bGwgYXgtcC0zIGRhcms6YXgtYm9yZGVyLXdoaXRlLzMwXCI+XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICA8L2F4LWNvbnRlbnQ+XG48L2F4LWRyYXdlci1jb250YWluZXI+XG4iXX0=