@acorex/platform 18.0.11 → 18.0.13

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 (545) hide show
  1. package/auth/lib/session.service.d.ts +2 -2
  2. package/common/lib/app/application.types.d.ts +3 -2
  3. package/common/lib/layout/sticky.directive.d.ts +1 -1
  4. package/common/lib/schema/widget/widget-renderer.d.ts +1 -0
  5. package/core/utils/countdown-timer.d.ts +4 -2
  6. package/esm2022/auth/lib/session.service.mjs +23 -38
  7. package/esm2022/common/lib/app/application.types.mjs +1 -1
  8. package/esm2022/common/lib/layout/sticky.directive.mjs +2 -2
  9. package/esm2022/common/lib/schema/widget/widget-renderer.mjs +20 -16
  10. package/esm2022/common/lib/schema/widgets/text/text-widget-column.component.mjs +3 -3
  11. package/esm2022/core/utils/countdown-timer.mjs +10 -3
  12. package/esm2022/layout/builder/lib/builder/builder.service.mjs +15 -12
  13. package/esm2022/layout/builder/lib/builder/index.mjs +7 -6
  14. package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +33 -0
  15. package/esm2022/layout/builder/lib/builder/widget-groups.mjs +27 -0
  16. package/esm2022/layout/builder/lib/builder/widget-registery.service.mjs +3 -3
  17. package/esm2022/layout/builder/lib/builder/widget.types.mjs +7 -6
  18. package/esm2022/layout/designer/index.mjs +3 -3
  19. package/esm2022/layout/designer/lib/board/board.component.mjs +69 -45
  20. package/esm2022/layout/designer/lib/command.mjs +185 -0
  21. package/esm2022/layout/designer/lib/designer/designer.component.mjs +64 -38
  22. package/esm2022/layout/designer/lib/designer.service.mjs +142 -115
  23. package/esm2022/layout/designer/lib/header-menu/header-menu.component.mjs +24 -0
  24. package/esm2022/layout/designer/lib/helpers/add-widget-button/add-widget-button.component.mjs +37 -0
  25. package/esm2022/layout/designer/lib/helpers/grid-drawer/grid-drawer.component.mjs +82 -0
  26. package/esm2022/layout/designer/lib/history/history.component.mjs +28 -0
  27. package/esm2022/layout/designer/lib/outline/outline.component.mjs +17 -17
  28. package/esm2022/layout/designer/lib/pages/pages.component.mjs +28 -0
  29. package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +5 -2
  30. package/esm2022/layout/designer/lib/widget-designer-renderer.component.mjs +3 -3
  31. package/esm2022/layout/designer/lib/widget-picker/widget-picker.component.mjs +80 -6
  32. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget.config.mjs +6 -4
  33. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +17 -7
  34. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +1 -1
  35. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +12 -6
  36. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +1 -2
  37. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +2 -2
  38. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +1 -1
  39. package/esm2022/widgets/lib/properties/editors.props.mjs +114 -44
  40. package/esm2022/widgets/lib/properties/layout.props.mjs +60 -0
  41. package/esm2022/widgets/lib/properties/table-column.props.mjs +3 -2
  42. package/esm2022/widgets/lib/widgets/actions/button/button-widget-view.component.mjs +52 -0
  43. package/esm2022/widgets/lib/widgets/actions/button/button-widget.config.mjs +27 -0
  44. package/esm2022/widgets/lib/widgets/actions/button/index.mjs +3 -0
  45. package/esm2022/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-column.component.mjs +1 -1
  46. package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-edit.component.mjs +122 -0
  47. package/esm2022/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-filter.component.mjs +1 -1
  48. package/esm2022/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-print.component.mjs +1 -1
  49. package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-view.component.mjs +215 -0
  50. package/esm2022/widgets/lib/widgets/advance/file/file-box-widget.config.mjs +51 -0
  51. package/esm2022/widgets/lib/widgets/advance/file/file-box-widget.service.mjs +3 -0
  52. package/esm2022/widgets/lib/widgets/advance/file/index.mjs +8 -0
  53. package/esm2022/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-column.component.mjs +1 -1
  54. package/esm2022/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-edit.component.mjs +1 -1
  55. package/esm2022/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-filter.component.mjs +1 -1
  56. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-print.component.mjs +19 -0
  57. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-types.mjs +2 -0
  58. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-view.component.mjs +160 -0
  59. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget.config.mjs +29 -0
  60. package/esm2022/widgets/lib/widgets/advance/gallery/index.mjs +7 -0
  61. package/esm2022/widgets/lib/widgets/advance/map/index.mjs +7 -0
  62. package/esm2022/widgets/lib/widgets/{editors/link-widget/link-widget-print.component.mjs → advance/map/map-box-widget-column.component.mjs} +5 -5
  63. package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-edit.component.mjs +171 -0
  64. package/esm2022/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-filter.component.mjs +1 -1
  65. package/esm2022/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-print.component.mjs +1 -1
  66. package/esm2022/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-view.component.mjs +3 -3
  67. package/esm2022/widgets/lib/widgets/advance/map/map-box-widget.config.mjs +31 -0
  68. package/esm2022/widgets/lib/widgets/advance/qrcode/index.mjs +3 -0
  69. package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.mjs +51 -0
  70. package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget.config.mjs +62 -0
  71. package/esm2022/widgets/lib/widgets/advance/signature/index.mjs +7 -0
  72. package/esm2022/widgets/lib/widgets/{editors/select-box-widget/select-box-widget-print.component.mjs → advance/signature/signature-pad-widget-column.component.mjs} +5 -5
  73. package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-edit.component.mjs +142 -0
  74. package/esm2022/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-filter.component.mjs +1 -1
  75. package/esm2022/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-print.component.mjs +1 -1
  76. package/esm2022/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-view.component.mjs +1 -1
  77. package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget.config.mjs +31 -0
  78. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget.config.mjs +10 -12
  79. package/esm2022/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-column.component.mjs +1 -1
  80. package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-edit.component.mjs +48 -0
  81. package/esm2022/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-filter.component.mjs +1 -1
  82. package/esm2022/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-print.component.mjs +1 -1
  83. package/esm2022/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-view.component.mjs +1 -1
  84. package/esm2022/widgets/lib/widgets/editors/color/color-box-widget.config.mjs +31 -0
  85. package/esm2022/widgets/lib/widgets/editors/color/index.mjs +7 -0
  86. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-column.component.mjs +36 -0
  87. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +297 -0
  88. package/esm2022/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-filter.component.mjs +1 -1
  89. package/esm2022/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-print.component.mjs +1 -1
  90. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-view.component.mjs +122 -0
  91. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget.config.mjs +81 -0
  92. package/esm2022/widgets/lib/widgets/editors/contact/contact.type.mjs +2 -0
  93. package/esm2022/widgets/lib/widgets/editors/contact/index.mjs +7 -0
  94. package/esm2022/widgets/lib/widgets/editors/{contact-widget → contact}/popup-component.mjs +1 -1
  95. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +44 -0
  96. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.mjs +133 -0
  97. package/esm2022/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-filter.component.mjs +1 -1
  98. package/esm2022/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-print.component.mjs +1 -1
  99. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-view.component.mjs +54 -0
  100. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget.config.mjs +40 -0
  101. package/esm2022/widgets/lib/widgets/editors/date-time/index.mjs +7 -0
  102. package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-column.component.mjs +66 -0
  103. package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-edit.component.mjs +249 -0
  104. package/esm2022/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-filter.component.mjs +1 -1
  105. package/esm2022/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-print.component.mjs +1 -1
  106. package/esm2022/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-view.component.mjs +1 -1
  107. package/esm2022/widgets/lib/widgets/editors/email/email-box-widget.config.mjs +39 -0
  108. package/esm2022/widgets/lib/widgets/editors/email/index.mjs +7 -0
  109. package/esm2022/widgets/lib/widgets/editors/large-text/index.mjs +7 -0
  110. package/esm2022/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-column.component.mjs +1 -1
  111. package/esm2022/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-edit.component.mjs +1 -1
  112. package/esm2022/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-filter.component.mjs +1 -1
  113. package/esm2022/widgets/lib/widgets/editors/{map-box-widget/map-box-widget-column.component.mjs → large-text/large-text-widget-print.component.mjs} +5 -5
  114. package/esm2022/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-view.component.mjs +1 -1
  115. package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget.config.mjs +39 -0
  116. package/esm2022/widgets/lib/widgets/editors/link/index.mjs +7 -0
  117. package/esm2022/widgets/lib/widgets/editors/{link-widget → link}/link-widget-column.component.mjs +1 -1
  118. package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +391 -0
  119. package/esm2022/widgets/lib/widgets/editors/link/link-widget-filter.component.mjs +20 -0
  120. package/esm2022/widgets/lib/widgets/editors/link/link-widget-print.component.mjs +19 -0
  121. package/esm2022/widgets/lib/widgets/editors/{link-widget → link}/link-widget-view.component.mjs +1 -1
  122. package/esm2022/widgets/lib/widgets/editors/link/link-widget.config.mjs +29 -0
  123. package/esm2022/widgets/lib/widgets/editors/number/index.mjs +7 -0
  124. package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-column.component.mjs +38 -0
  125. package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-edit.component.mjs +157 -0
  126. package/esm2022/widgets/lib/widgets/{layout/repeater-widget/repeater-widget-edit.component.mjs → editors/number/number-box-widget-filter.component.mjs} +5 -5
  127. package/esm2022/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-print.component.mjs +1 -1
  128. package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-view.component.mjs +56 -0
  129. package/esm2022/widgets/lib/widgets/editors/number/number-box-widget.config.mjs +39 -0
  130. package/esm2022/widgets/lib/widgets/editors/password/index.mjs +7 -0
  131. package/esm2022/widgets/lib/widgets/editors/{phone-box-widget/phone-box-widget-print.component.mjs → password/password-box-widget-column.component.mjs} +5 -5
  132. package/esm2022/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-edit.component.mjs +1 -1
  133. package/esm2022/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-filter.component.mjs +1 -1
  134. package/esm2022/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-print.component.mjs +1 -1
  135. package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-view.component.mjs +76 -0
  136. package/esm2022/widgets/lib/widgets/editors/password/password-box-widget.config.mjs +38 -0
  137. package/esm2022/widgets/lib/widgets/editors/phone/index.mjs +7 -0
  138. package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-column.component.mjs +66 -0
  139. package/esm2022/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-edit.component.mjs +1 -1
  140. package/esm2022/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-filter.component.mjs +1 -1
  141. package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-print.component.mjs +19 -0
  142. package/esm2022/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-view.component.mjs +1 -1
  143. package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget.config.mjs +32 -0
  144. package/esm2022/widgets/lib/widgets/editors/rich-text/index.mjs +7 -0
  145. package/esm2022/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-popup.component.mjs +1 -1
  146. package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-column.component.mjs +46 -0
  147. package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.mjs +67 -0
  148. package/esm2022/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-filter.component.mjs +1 -1
  149. package/esm2022/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-print.component.mjs +1 -1
  150. package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-view.component.mjs +45 -0
  151. package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget.config.mjs +39 -0
  152. package/esm2022/widgets/lib/widgets/editors/select/index.mjs +7 -0
  153. package/esm2022/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-column.component.mjs +1 -1
  154. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-edit.component.mjs +85 -0
  155. package/esm2022/widgets/lib/widgets/editors/{gallery-widget/gallery-widget-print.component.mjs → select/select-box-widget-filter.component.mjs} +5 -5
  156. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-print.component.mjs +19 -0
  157. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +60 -0
  158. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget.config.mjs +38 -0
  159. package/esm2022/widgets/lib/widgets/editors/selection-list/index.mjs +7 -0
  160. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-column.component.mjs +41 -0
  161. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +72 -0
  162. package/esm2022/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-filter.component.mjs +1 -1
  163. package/esm2022/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-print.component.mjs +1 -1
  164. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.mjs +44 -0
  165. package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget.config.mjs +29 -0
  166. package/esm2022/widgets/lib/widgets/editors/text/index.mjs +7 -0
  167. package/esm2022/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-column.component.mjs +1 -1
  168. package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-edit.component.mjs +121 -0
  169. package/esm2022/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-filter.component.mjs +1 -1
  170. package/esm2022/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-print.component.mjs +1 -1
  171. package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-view.component.mjs +47 -0
  172. package/esm2022/widgets/lib/widgets/editors/text/text-box-widget.config.mjs +41 -0
  173. package/esm2022/widgets/lib/widgets/editors/toggle/index.mjs +7 -0
  174. package/esm2022/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-column.component.mjs +1 -1
  175. package/esm2022/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-edit.component.mjs +1 -1
  176. package/esm2022/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-filter.component.mjs +1 -1
  177. package/esm2022/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-print.component.mjs +1 -1
  178. package/esm2022/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-view.component.mjs +1 -1
  179. package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget.config.mjs +40 -0
  180. package/esm2022/widgets/lib/widgets/index.mjs +23 -22
  181. package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +65 -0
  182. package/esm2022/widgets/lib/widgets/layout/{block-widget → block}/block-widget-view.component.mjs +1 -1
  183. package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +26 -0
  184. package/esm2022/widgets/lib/widgets/layout/block/index.mjs +4 -0
  185. package/esm2022/widgets/lib/widgets/layout/document/document-widget.config.mjs +13 -0
  186. package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.mjs +56 -0
  187. package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-view.component.mjs +41 -0
  188. package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget.config.mjs +25 -0
  189. package/esm2022/widgets/lib/widgets/layout/form-field/index.mjs +4 -0
  190. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +101 -0
  191. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-print.component.mjs +19 -0
  192. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-view.component.mjs +18 -0
  193. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget.config.mjs +26 -0
  194. package/esm2022/widgets/lib/widgets/layout/grid/index.mjs +5 -0
  195. package/esm2022/widgets/lib/widgets/layout/page/index.mjs +3 -0
  196. package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +65 -0
  197. package/esm2022/widgets/lib/widgets/layout/{page-widget → page}/page-widget-view.component.mjs +1 -1
  198. package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +27 -0
  199. package/esm2022/widgets/lib/widgets/layout/repeater/index.mjs +6 -0
  200. package/esm2022/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-designer.component.mjs +1 -1
  201. package/esm2022/widgets/lib/widgets/{editors/link-widget/link-widget-filter.component.mjs → layout/repeater/repeater-widget-edit.component.mjs} +5 -5
  202. package/esm2022/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-print.component.mjs +1 -1
  203. package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-view.component.mjs +52 -0
  204. package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget.config.mjs +24 -0
  205. package/esm2022/widgets/lib/widgets/layout/text-block/index.mjs +3 -0
  206. package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget-view.component.mjs +29 -0
  207. package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget.config.mjs +42 -0
  208. package/esm2022/widgets/lib/widgets.module.mjs +17 -3
  209. package/fesm2022/acorex-platform-auth.mjs +22 -37
  210. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  211. package/fesm2022/{acorex-platform-common-text-widget-column.component-D-mLfzKJ.mjs → acorex-platform-common-text-widget-column.component-ytX4OqZX.mjs} +3 -3
  212. package/fesm2022/acorex-platform-common-text-widget-column.component-ytX4OqZX.mjs.map +1 -0
  213. package/fesm2022/acorex-platform-common.mjs +21 -17
  214. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  215. package/fesm2022/acorex-platform-core.mjs +9 -2
  216. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  217. package/fesm2022/acorex-platform-layout-builder.mjs +163 -129
  218. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  219. package/fesm2022/acorex-platform-layout-designer-widget-picker.component-CaMaBGON.mjs +100 -0
  220. package/fesm2022/acorex-platform-layout-designer-widget-picker.component-CaMaBGON.mjs.map +1 -0
  221. package/fesm2022/acorex-platform-layout-designer.mjs +640 -265
  222. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  223. package/fesm2022/acorex-platform-layout-entity.mjs +5 -4
  224. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  225. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-B2XtNJo1.mjs → acorex-platform-layouts-entity-create-view.component-C2pYReAo.mjs} +17 -7
  226. package/fesm2022/acorex-platform-layouts-entity-create-view.component-C2pYReAo.mjs.map +1 -0
  227. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-CjofXJku.mjs → acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs} +12 -5
  228. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs.map +1 -0
  229. package/fesm2022/acorex-platform-layouts.mjs +4 -4
  230. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  231. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Cv0mt0pU.mjs → acorex-platform-themes-default-entity-master-create-view.component-DKNRxpQk.mjs} +1 -2
  232. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-DKNRxpQk.mjs.map +1 -0
  233. package/fesm2022/acorex-platform-themes-default.mjs +4 -4
  234. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  235. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DYb6bilD.mjs → acorex-platform-widgets-page-widget-designer.component-DlfG4EP1.mjs} +14 -4
  236. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DlfG4EP1.mjs.map +1 -0
  237. package/fesm2022/acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs.map +1 -1
  238. package/fesm2022/acorex-platform-widgets.mjs +3989 -3315
  239. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  240. package/layout/builder/lib/builder/builder.service.d.ts +1 -1
  241. package/layout/builder/lib/builder/index.d.ts +6 -5
  242. package/layout/builder/lib/builder/widget-catalog.d.ts +3 -0
  243. package/layout/builder/lib/builder/widget-groups.d.ts +6 -0
  244. package/layout/builder/lib/builder/widget-registery.service.d.ts +1 -1
  245. package/layout/builder/lib/builder/widget.types.d.ts +44 -6
  246. package/layout/designer/index.d.ts +2 -2
  247. package/layout/designer/lib/board/board.component.d.ts +7 -2
  248. package/layout/designer/lib/command.d.ts +70 -0
  249. package/layout/designer/lib/designer/designer.component.d.ts +4 -10
  250. package/layout/designer/lib/designer.service.d.ts +34 -19
  251. package/layout/designer/lib/header-menu/header-menu.component.d.ts +7 -0
  252. package/layout/designer/lib/helpers/grid-drawer/grid-drawer.component.d.ts +19 -0
  253. package/layout/designer/lib/history/history.component.d.ts +7 -0
  254. package/layout/designer/lib/outline/outline.component.d.ts +1 -0
  255. package/layout/designer/lib/pages/pages.component.d.ts +7 -0
  256. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +1 -0
  257. package/layout/designer/lib/widget-picker/widget-picker.component.d.ts +22 -4
  258. package/layout/entity/lib/widgets/lookup-widget/lookup-widget.config.d.ts +5 -0
  259. package/package.json +12 -12
  260. package/widgets/lib/properties/editors.props.d.ts +5 -1
  261. package/widgets/lib/properties/layout.props.d.ts +4 -0
  262. package/widgets/lib/widgets/actions/{button-widget → button}/button-widget-view.component.d.ts +1 -0
  263. package/widgets/lib/widgets/actions/button/button-widget.config.d.ts +7 -0
  264. package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget.config.d.ts +5 -0
  265. package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget.config.d.ts +5 -0
  266. package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +37 -0
  267. package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget.config.d.ts +5 -0
  268. package/widgets/lib/widgets/advance/qrcode/index.d.ts +2 -0
  269. package/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.d.ts +12 -0
  270. package/widgets/lib/widgets/advance/qrcode/qrcode-widget.config.d.ts +7 -0
  271. package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget.config.d.ts +5 -0
  272. package/widgets/lib/widgets/editors/checkbox/checkbox-widget.config.d.ts +5 -0
  273. package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-edit.component.d.ts +2 -4
  274. package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget.config.d.ts +5 -0
  275. package/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-edit.component.d.ts +1 -1
  276. package/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-view.component.d.ts +1 -1
  277. package/widgets/lib/widgets/editors/contact/contact-widget.config.d.ts +7 -0
  278. package/widgets/lib/widgets/editors/date-time/date-time-box-widget.config.d.ts +7 -0
  279. package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget.config.d.ts +5 -0
  280. package/widgets/lib/widgets/editors/large-text/large-text-widget.config.d.ts +7 -0
  281. package/widgets/lib/widgets/editors/link/link-widget.config.d.ts +7 -0
  282. package/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-edit.component.d.ts +2 -0
  283. package/widgets/lib/widgets/editors/number/number-box-widget.config.d.ts +7 -0
  284. package/widgets/lib/widgets/editors/password/password-box-widget.config.d.ts +7 -0
  285. package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget.config.d.ts +5 -0
  286. package/widgets/lib/widgets/editors/rich-text/rich-text-widget.config.d.ts +7 -0
  287. package/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-edit.component.d.ts +2 -0
  288. package/widgets/lib/widgets/editors/select/select-box-widget.config.d.ts +7 -0
  289. package/widgets/lib/widgets/editors/selection-list/selection-list-widget.config.d.ts +7 -0
  290. package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-edit.component.d.ts +1 -1
  291. package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget.config.d.ts +5 -0
  292. package/widgets/lib/widgets/editors/toggle/toggle-widget.config.d.ts +7 -0
  293. package/widgets/lib/widgets/index.d.ts +21 -21
  294. package/widgets/lib/widgets/layout/block/block-widget.config.d.ts +7 -0
  295. package/widgets/lib/widgets/layout/document/document-widget.config.d.ts +7 -0
  296. package/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.d.ts +7 -0
  297. package/widgets/lib/widgets/layout/form-field/form-field-widget-view.component.d.ts +7 -0
  298. package/widgets/lib/widgets/layout/form-field/form-field-widget.config.d.ts +7 -0
  299. package/widgets/lib/widgets/layout/form-field/index.d.ts +3 -0
  300. package/widgets/lib/widgets/layout/grid/grid-widget-designer.component.d.ts +20 -0
  301. package/widgets/lib/widgets/layout/grid/grid-widget-print.component.d.ts +6 -0
  302. package/widgets/lib/widgets/layout/grid/grid-widget-view.component.d.ts +6 -0
  303. package/widgets/lib/widgets/layout/grid/grid-widget.config.d.ts +7 -0
  304. package/widgets/lib/widgets/layout/grid/index.d.ts +4 -0
  305. package/widgets/lib/widgets/layout/{page-widget → page}/page-widget-designer.component.d.ts +2 -0
  306. package/widgets/lib/widgets/layout/page/page-widget.config.d.ts +7 -0
  307. package/widgets/lib/widgets/layout/repeater/repeater-widget.config.d.ts +7 -0
  308. package/widgets/lib/widgets/layout/text-block/text-block-widget.config.d.ts +7 -0
  309. package/esm2022/layout/builder/lib/builder/layout.types.mjs +0 -30
  310. package/esm2022/layout/designer/lib/buttons/add-widget-button/add-widget-button.component.mjs +0 -37
  311. package/esm2022/layout/designer/lib/designer.module.mjs +0 -16
  312. package/esm2022/widgets/lib/widgets/actions/button-widget/button-widget-view.component.mjs +0 -37
  313. package/esm2022/widgets/lib/widgets/actions/button-widget/button-widget.config.mjs +0 -25
  314. package/esm2022/widgets/lib/widgets/actions/button-widget/index.mjs +0 -3
  315. package/esm2022/widgets/lib/widgets/editors/color-box-widget/color-box-widget-edit.component.mjs +0 -54
  316. package/esm2022/widgets/lib/widgets/editors/color-box-widget/color-box-widget.config.mjs +0 -34
  317. package/esm2022/widgets/lib/widgets/editors/color-box-widget/index.mjs +0 -7
  318. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-column.component.mjs +0 -36
  319. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-edit.component.mjs +0 -297
  320. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-view.component.mjs +0 -122
  321. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget.config.mjs +0 -78
  322. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact.type.mjs +0 -2
  323. package/esm2022/widgets/lib/widgets/editors/contact-widget/index.mjs +0 -7
  324. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +0 -44
  325. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +0 -133
  326. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +0 -54
  327. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget.config.mjs +0 -38
  328. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/index.mjs +0 -7
  329. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-column.component.mjs +0 -66
  330. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-edit.component.mjs +0 -249
  331. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget.config.mjs +0 -36
  332. package/esm2022/widgets/lib/widgets/editors/email-box-widget/index.mjs +0 -7
  333. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-edit.component.mjs +0 -122
  334. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-view.component.mjs +0 -215
  335. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget.config.mjs +0 -48
  336. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget.service.mjs +0 -3
  337. package/esm2022/widgets/lib/widgets/editors/file-box-widget/index.mjs +0 -8
  338. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-types.mjs +0 -2
  339. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-view.component.mjs +0 -160
  340. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget.config.mjs +0 -26
  341. package/esm2022/widgets/lib/widgets/editors/gallery-widget/index.mjs +0 -7
  342. package/esm2022/widgets/lib/widgets/editors/large-text-widget/index.mjs +0 -7
  343. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-print.component.mjs +0 -19
  344. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget.config.mjs +0 -37
  345. package/esm2022/widgets/lib/widgets/editors/link-widget/index.mjs +0 -7
  346. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-edit.component.mjs +0 -391
  347. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget.config.mjs +0 -26
  348. package/esm2022/widgets/lib/widgets/editors/map-box-widget/index.mjs +0 -7
  349. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget-edit.component.mjs +0 -96
  350. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget.config.mjs +0 -28
  351. package/esm2022/widgets/lib/widgets/editors/number-box-widget/index.mjs +0 -7
  352. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-column.component.mjs +0 -38
  353. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-edit.component.mjs +0 -151
  354. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-filter.component.mjs +0 -20
  355. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-view.component.mjs +0 -56
  356. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget.config.mjs +0 -37
  357. package/esm2022/widgets/lib/widgets/editors/password-box-widget/index.mjs +0 -7
  358. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-column.component.mjs +0 -19
  359. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-view.component.mjs +0 -76
  360. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget.config.mjs +0 -35
  361. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/index.mjs +0 -7
  362. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-column.component.mjs +0 -66
  363. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget.config.mjs +0 -29
  364. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/index.mjs +0 -7
  365. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-column.component.mjs +0 -46
  366. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-edit.component.mjs +0 -67
  367. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-view.component.mjs +0 -45
  368. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget.config.mjs +0 -37
  369. package/esm2022/widgets/lib/widgets/editors/select-box-widget/index.mjs +0 -7
  370. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-edit.component.mjs +0 -75
  371. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-filter.component.mjs +0 -19
  372. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-view.component.mjs +0 -60
  373. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget.config.mjs +0 -28
  374. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/index.mjs +0 -7
  375. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-column.component.mjs +0 -41
  376. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-edit.component.mjs +0 -72
  377. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-view.component.mjs +0 -44
  378. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget.config.mjs +0 -25
  379. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/index.mjs +0 -7
  380. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-column.component.mjs +0 -19
  381. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +0 -142
  382. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget.config.mjs +0 -34
  383. package/esm2022/widgets/lib/widgets/editors/text-box-widget/index.mjs +0 -7
  384. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-edit.component.mjs +0 -119
  385. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-view.component.mjs +0 -47
  386. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget.config.mjs +0 -38
  387. package/esm2022/widgets/lib/widgets/editors/toggle-widget/index.mjs +0 -7
  388. package/esm2022/widgets/lib/widgets/editors/toggle-widget/toggle-widget.config.mjs +0 -36
  389. package/esm2022/widgets/lib/widgets/layout/block-widget/block-widget-designer.component.mjs +0 -65
  390. package/esm2022/widgets/lib/widgets/layout/block-widget/block-widget.config.mjs +0 -27
  391. package/esm2022/widgets/lib/widgets/layout/block-widget/index.mjs +0 -4
  392. package/esm2022/widgets/lib/widgets/layout/page-widget/index.mjs +0 -3
  393. package/esm2022/widgets/lib/widgets/layout/page-widget/page-widget-designer.component.mjs +0 -55
  394. package/esm2022/widgets/lib/widgets/layout/page-widget/page-widget.config.mjs +0 -27
  395. package/esm2022/widgets/lib/widgets/layout/repeater-widget/index.mjs +0 -6
  396. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-view.component.mjs +0 -52
  397. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget.config.mjs +0 -20
  398. package/esm2022/widgets/lib/widgets/layout/text-block-widget/index.mjs +0 -3
  399. package/esm2022/widgets/lib/widgets/layout/text-block-widget/text-block-widget-view.component.mjs +0 -29
  400. package/esm2022/widgets/lib/widgets/layout/text-block-widget/text-block-widget.config.mjs +0 -39
  401. package/fesm2022/acorex-platform-common-text-widget-column.component-D-mLfzKJ.mjs.map +0 -1
  402. package/fesm2022/acorex-platform-layout-designer-widget-picker.component-DkZGbnkz.mjs +0 -26
  403. package/fesm2022/acorex-platform-layout-designer-widget-picker.component-DkZGbnkz.mjs.map +0 -1
  404. package/fesm2022/acorex-platform-layouts-entity-create-view.component-B2XtNJo1.mjs.map +0 -1
  405. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-CjofXJku.mjs.map +0 -1
  406. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cv0mt0pU.mjs.map +0 -1
  407. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DYb6bilD.mjs.map +0 -1
  408. package/layout/builder/lib/builder/layout.types.d.ts +0 -1
  409. package/layout/designer/lib/designer.module.d.ts +0 -6
  410. package/widgets/lib/widgets/actions/button-widget/button-widget.config.d.ts +0 -2
  411. package/widgets/lib/widgets/editors/contact-widget/contact-widget.config.d.ts +0 -2
  412. package/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget.config.d.ts +0 -2
  413. package/widgets/lib/widgets/editors/large-text-widget/large-text-widget.config.d.ts +0 -2
  414. package/widgets/lib/widgets/editors/link-widget/link-widget.config.d.ts +0 -2
  415. package/widgets/lib/widgets/editors/map-box-widget/map-box-widget-edit.component.d.ts +0 -15
  416. package/widgets/lib/widgets/editors/number-box-widget/number-box-widget.config.d.ts +0 -2
  417. package/widgets/lib/widgets/editors/password-box-widget/password-box-widget.config.d.ts +0 -2
  418. package/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget.config.d.ts +0 -2
  419. package/widgets/lib/widgets/editors/select-box-widget/select-box-widget.config.d.ts +0 -2
  420. package/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget.config.d.ts +0 -2
  421. package/widgets/lib/widgets/editors/toggle-widget/toggle-widget.config.d.ts +0 -2
  422. package/widgets/lib/widgets/layout/block-widget/block-widget.config.d.ts +0 -2
  423. package/widgets/lib/widgets/layout/page-widget/page-widget.config.d.ts +0 -2
  424. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget.config.d.ts +0 -2
  425. package/widgets/lib/widgets/layout/text-block-widget/text-block-widget.config.d.ts +0 -2
  426. /package/layout/designer/lib/{buttons → helpers}/add-widget-button/add-widget-button.component.d.ts +0 -0
  427. /package/widgets/lib/widgets/actions/{button-widget → button}/index.d.ts +0 -0
  428. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-column.component.d.ts +0 -0
  429. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-edit.component.d.ts +0 -0
  430. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-filter.component.d.ts +0 -0
  431. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-print.component.d.ts +0 -0
  432. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget-view.component.d.ts +0 -0
  433. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/file-box-widget.service.d.ts +0 -0
  434. /package/widgets/lib/widgets/{editors/file-box-widget → advance/file}/index.d.ts +0 -0
  435. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-column.component.d.ts +0 -0
  436. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-edit.component.d.ts +0 -0
  437. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-filter.component.d.ts +0 -0
  438. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-print.component.d.ts +0 -0
  439. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-types.d.ts +0 -0
  440. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/gallery-widget-view.component.d.ts +0 -0
  441. /package/widgets/lib/widgets/{editors/gallery-widget → advance/gallery}/index.d.ts +0 -0
  442. /package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/index.d.ts +0 -0
  443. /package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-column.component.d.ts +0 -0
  444. /package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-filter.component.d.ts +0 -0
  445. /package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-print.component.d.ts +0 -0
  446. /package/widgets/lib/widgets/{editors/map-box-widget → advance/map}/map-box-widget-view.component.d.ts +0 -0
  447. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/index.d.ts +0 -0
  448. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-column.component.d.ts +0 -0
  449. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-edit.component.d.ts +0 -0
  450. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-filter.component.d.ts +0 -0
  451. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-print.component.d.ts +0 -0
  452. /package/widgets/lib/widgets/{editors/signature-pad-widget → advance/signature}/signature-pad-widget-view.component.d.ts +0 -0
  453. /package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-column.component.d.ts +0 -0
  454. /package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-filter.component.d.ts +0 -0
  455. /package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-print.component.d.ts +0 -0
  456. /package/widgets/lib/widgets/editors/{color-box-widget → color}/color-box-widget-view.component.d.ts +0 -0
  457. /package/widgets/lib/widgets/editors/{color-box-widget → color}/index.d.ts +0 -0
  458. /package/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-column.component.d.ts +0 -0
  459. /package/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-filter.component.d.ts +0 -0
  460. /package/widgets/lib/widgets/editors/{contact-widget → contact}/contact-widget-print.component.d.ts +0 -0
  461. /package/widgets/lib/widgets/editors/{contact-widget → contact}/contact.type.d.ts +0 -0
  462. /package/widgets/lib/widgets/editors/{contact-widget → contact}/index.d.ts +0 -0
  463. /package/widgets/lib/widgets/editors/{contact-widget → contact}/popup-component.d.ts +0 -0
  464. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-column.component.d.ts +0 -0
  465. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-edit.component.d.ts +0 -0
  466. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-filter.component.d.ts +0 -0
  467. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-print.component.d.ts +0 -0
  468. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/date-time-box-widget-view.component.d.ts +0 -0
  469. /package/widgets/lib/widgets/editors/{date-time-box-widget → date-time}/index.d.ts +0 -0
  470. /package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-column.component.d.ts +0 -0
  471. /package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-edit.component.d.ts +0 -0
  472. /package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-filter.component.d.ts +0 -0
  473. /package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-print.component.d.ts +0 -0
  474. /package/widgets/lib/widgets/editors/{email-box-widget → email}/email-box-widget-view.component.d.ts +0 -0
  475. /package/widgets/lib/widgets/editors/{email-box-widget → email}/index.d.ts +0 -0
  476. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/index.d.ts +0 -0
  477. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-column.component.d.ts +0 -0
  478. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-edit.component.d.ts +0 -0
  479. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-filter.component.d.ts +0 -0
  480. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-print.component.d.ts +0 -0
  481. /package/widgets/lib/widgets/editors/{large-text-widget → large-text}/large-text-widget-view.component.d.ts +0 -0
  482. /package/widgets/lib/widgets/editors/{link-widget → link}/index.d.ts +0 -0
  483. /package/widgets/lib/widgets/editors/{link-widget → link}/link-widget-column.component.d.ts +0 -0
  484. /package/widgets/lib/widgets/editors/{link-widget → link}/link-widget-edit.component.d.ts +0 -0
  485. /package/widgets/lib/widgets/editors/{link-widget → link}/link-widget-filter.component.d.ts +0 -0
  486. /package/widgets/lib/widgets/editors/{link-widget → link}/link-widget-print.component.d.ts +0 -0
  487. /package/widgets/lib/widgets/editors/{link-widget → link}/link-widget-view.component.d.ts +0 -0
  488. /package/widgets/lib/widgets/editors/{number-box-widget → number}/index.d.ts +0 -0
  489. /package/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-column.component.d.ts +0 -0
  490. /package/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-filter.component.d.ts +0 -0
  491. /package/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-print.component.d.ts +0 -0
  492. /package/widgets/lib/widgets/editors/{number-box-widget → number}/number-box-widget-view.component.d.ts +0 -0
  493. /package/widgets/lib/widgets/editors/{password-box-widget → password}/index.d.ts +0 -0
  494. /package/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-column.component.d.ts +0 -0
  495. /package/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-edit.component.d.ts +0 -0
  496. /package/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-filter.component.d.ts +0 -0
  497. /package/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-print.component.d.ts +0 -0
  498. /package/widgets/lib/widgets/editors/{password-box-widget → password}/password-box-widget-view.component.d.ts +0 -0
  499. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/index.d.ts +0 -0
  500. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-column.component.d.ts +0 -0
  501. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-edit.component.d.ts +0 -0
  502. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-filter.component.d.ts +0 -0
  503. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-print.component.d.ts +0 -0
  504. /package/widgets/lib/widgets/editors/{phone-box-widget → phone}/phone-box-widget-view.component.d.ts +0 -0
  505. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/index.d.ts +0 -0
  506. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-popup.component.d.ts +0 -0
  507. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-column.component.d.ts +0 -0
  508. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-edit.component.d.ts +0 -0
  509. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-filter.component.d.ts +0 -0
  510. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-print.component.d.ts +0 -0
  511. /package/widgets/lib/widgets/editors/{rich-text-widget → rich-text}/rich-text-widget-view.component.d.ts +0 -0
  512. /package/widgets/lib/widgets/editors/{select-box-widget → select}/index.d.ts +0 -0
  513. /package/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-column.component.d.ts +0 -0
  514. /package/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-filter.component.d.ts +0 -0
  515. /package/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-print.component.d.ts +0 -0
  516. /package/widgets/lib/widgets/editors/{select-box-widget → select}/select-box-widget-view.component.d.ts +0 -0
  517. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/index.d.ts +0 -0
  518. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-column.component.d.ts +0 -0
  519. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-edit.component.d.ts +0 -0
  520. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-filter.component.d.ts +0 -0
  521. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-print.component.d.ts +0 -0
  522. /package/widgets/lib/widgets/editors/{selection-list-widget → selection-list}/selection-list-widget-view.component.d.ts +0 -0
  523. /package/widgets/lib/widgets/editors/{text-box-widget → text}/index.d.ts +0 -0
  524. /package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-column.component.d.ts +0 -0
  525. /package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-filter.component.d.ts +0 -0
  526. /package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-print.component.d.ts +0 -0
  527. /package/widgets/lib/widgets/editors/{text-box-widget → text}/text-box-widget-view.component.d.ts +0 -0
  528. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/index.d.ts +0 -0
  529. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-column.component.d.ts +0 -0
  530. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-edit.component.d.ts +0 -0
  531. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-filter.component.d.ts +0 -0
  532. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-print.component.d.ts +0 -0
  533. /package/widgets/lib/widgets/editors/{toggle-widget → toggle}/toggle-widget-view.component.d.ts +0 -0
  534. /package/widgets/lib/widgets/layout/{block-widget → block}/block-widget-designer.component.d.ts +0 -0
  535. /package/widgets/lib/widgets/layout/{block-widget → block}/block-widget-view.component.d.ts +0 -0
  536. /package/widgets/lib/widgets/layout/{block-widget → block}/index.d.ts +0 -0
  537. /package/widgets/lib/widgets/layout/{page-widget → page}/index.d.ts +0 -0
  538. /package/widgets/lib/widgets/layout/{page-widget → page}/page-widget-view.component.d.ts +0 -0
  539. /package/widgets/lib/widgets/layout/{repeater-widget → repeater}/index.d.ts +0 -0
  540. /package/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-designer.component.d.ts +0 -0
  541. /package/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-edit.component.d.ts +0 -0
  542. /package/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-print.component.d.ts +0 -0
  543. /package/widgets/lib/widgets/layout/{repeater-widget → repeater}/repeater-widget-view.component.d.ts +0 -0
  544. /package/widgets/lib/widgets/layout/{text-block-widget → text-block}/index.d.ts +0 -0
  545. /package/widgets/lib/widgets/layout/{text-block-widget → text-block}/text-block-widget-view.component.d.ts +0 -0
@@ -0,0 +1,24 @@
1
+ import { AXDecoratorModule } from '@acorex/components/decorators';
2
+ import { AXMenuModule } from '@acorex/components/menu';
3
+ import { CommonModule } from '@angular/common';
4
+ import { Component, inject } from '@angular/core';
5
+ import { AXPDesignerService } from '../designer.service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@acorex/components/decorators";
8
+ import * as i2 from "@acorex/components/menu";
9
+ export class AXPDesignerHeaderMenuComponent {
10
+ constructor() {
11
+ this.service = inject(AXPDesignerService);
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHeaderMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerHeaderMenuComponent, isStandalone: true, selector: "axp-designer-header-menu", ngImport: i0, template: "<ax-menu [openOn]=\"'hover'\">\n <ax-menu-item text=\"Home\">\n <ax-menu-item text=\"New\"></ax-menu-item>\n <ax-menu-item text=\"Export\">\n <ax-menu-item text=\"Download JSON\" (onClick)=\"service.download()\">\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item text=\"Edit\">\n <ax-menu-item text=\"Undo\" [disabled]=\"!service.canUndo()\" (onClick)=\"service.undo()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-left\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+Z\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Redo\" [disabled]=\"!service.canRedo()\" (onClick)=\"service.redo()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-right\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+Y\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item text=\"Cut\" [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.cut()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-cut\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+X\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Copy\" [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.copy()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-copy\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+C\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Paste\" [disabled]=\"!service.canPaste()\" (onClick)=\"service.paste()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-paste\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+V\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item text=\"Help\">\n <ax-menu-item text=\"About\"></ax-menu-item>\n </ax-menu-item>\n</ax-menu>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1.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: AXMenuModule }, { kind: "component", type: i2.AXMenuItemComponent, selector: "ax-menu-item", inputs: ["disabled", "text", "active"], outputs: ["activeChange", "onClick"] }, { kind: "component", type: i2.AXMenuComponent, selector: "ax-menu", inputs: ["orientation", "openOn"] }] }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHeaderMenuComponent, decorators: [{
17
+ type: Component,
18
+ args: [{ standalone: true, imports: [
19
+ CommonModule,
20
+ AXDecoratorModule,
21
+ AXMenuModule,
22
+ ], selector: 'axp-designer-header-menu', template: "<ax-menu [openOn]=\"'hover'\">\n <ax-menu-item text=\"Home\">\n <ax-menu-item text=\"New\"></ax-menu-item>\n <ax-menu-item text=\"Export\">\n <ax-menu-item text=\"Download JSON\" (onClick)=\"service.download()\">\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item text=\"Edit\">\n <ax-menu-item text=\"Undo\" [disabled]=\"!service.canUndo()\" (onClick)=\"service.undo()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-left\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+Z\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Redo\" [disabled]=\"!service.canRedo()\" (onClick)=\"service.redo()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-right\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+Y\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item text=\"Cut\" [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.cut()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-cut\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+X\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Copy\" [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.copy()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-copy\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+C\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item text=\"Paste\" [disabled]=\"!service.canPaste()\" (onClick)=\"service.paste()\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-paste\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>\n Ctrl+V\n </ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item text=\"Help\">\n <ax-menu-item text=\"About\"></ax-menu-item>\n </ax-menu-item>\n</ax-menu>" }]
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9oZWFkZXItbWVudS9oZWFkZXItbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2hlYWRlci1tZW51L2hlYWRlci1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFhekQsTUFBTSxPQUFPLDhCQUE4QjtJQVgzQztRQVljLFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQUNsRDs4R0FGWSw4QkFBOEI7a0dBQTlCLDhCQUE4QixvRkNqQjNDLG9tRkEwRVUsMkNEakVGLFlBQVksOEJBQ1osaUJBQWlCLHVWQUNqQixZQUFZOzsyRkFNUCw4QkFBOEI7a0JBWDFDLFNBQVM7aUNBQ00sSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixZQUFZO3FCQUNmLFlBQ1MsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWE1lbnVNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVudSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGVzaWduZXIuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgICAgICBBWE1lbnVNb2R1bGUsXG4gICAgXSxcbiAgICBzZWxlY3RvcjogJ2F4cC1kZXNpZ25lci1oZWFkZXItbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICdoZWFkZXItbWVudS5jb21wb25lbnQuaHRtbCdcbn0pXG5cbmV4cG9ydCBjbGFzcyBBWFBEZXNpZ25lckhlYWRlck1lbnVDb21wb25lbnQge1xuICAgIHByb3RlY3RlZCBzZXJ2aWNlID0gaW5qZWN0KEFYUERlc2lnbmVyU2VydmljZSk7XG59IiwiPGF4LW1lbnUgW29wZW5Pbl09XCInaG92ZXInXCI+XG4gICAgPGF4LW1lbnUtaXRlbSB0ZXh0PVwiSG9tZVwiPlxuICAgICAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJOZXdcIj48L2F4LW1lbnUtaXRlbT5cbiAgICAgICAgPGF4LW1lbnUtaXRlbSB0ZXh0PVwiRXhwb3J0XCI+XG4gICAgICAgICAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJEb3dubG9hZCBKU09OXCIgKG9uQ2xpY2spPVwic2VydmljZS5kb3dubG9hZCgpXCI+XG4gICAgICAgICAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICAgICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPGF4LW1lbnUtaXRlbSB0ZXh0PVwiRWRpdFwiPlxuICAgICAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJVbmRvXCIgW2Rpc2FibGVkXT1cIiFzZXJ2aWNlLmNhblVuZG8oKVwiIChvbkNsaWNrKT1cInNlcnZpY2UudW5kbygpXCI+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICAgIDxheC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXJvdGF0ZS1sZWZ0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgICAgICAgICA8YXgtdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgQ3RybCtaXG4gICAgICAgICAgICAgICAgPC9heC10ZXh0PlxuICAgICAgICAgICAgPC9heC1zdWZmaXg+XG4gICAgICAgIDwvYXgtbWVudS1pdGVtPlxuICAgICAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJSZWRvXCIgW2Rpc2FibGVkXT1cIiFzZXJ2aWNlLmNhblJlZG8oKVwiIChvbkNsaWNrKT1cInNlcnZpY2UucmVkbygpXCI+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICAgIDxheC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXJvdGF0ZS1yaWdodFwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgICAgICAgICAgPGF4LXRleHQ+XG4gICAgICAgICAgICAgICAgICAgIEN0cmwrWVxuICAgICAgICAgICAgICAgIDwvYXgtdGV4dD5cbiAgICAgICAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICAgICAgPGF4LWRpdmlkZXI+PC9heC1kaXZpZGVyPlxuICAgICAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJDdXRcIiBbZGlzYWJsZWRdPVwiIXNlcnZpY2UuY2FuQ3V0Q29weSgpXCIgKG9uQ2xpY2spPVwic2VydmljZS5jdXQoKVwiPlxuICAgICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1jdXRcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9heC1pY29uPlxuICAgICAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgICAgICA8YXgtc3VmZml4PlxuICAgICAgICAgICAgICAgIDxheC10ZXh0PlxuICAgICAgICAgICAgICAgICAgICBDdHJsK1hcbiAgICAgICAgICAgICAgICA8L2F4LXRleHQ+XG4gICAgICAgICAgICA8L2F4LXN1ZmZpeD5cbiAgICAgICAgPC9heC1tZW51LWl0ZW0+XG4gICAgICAgIDxheC1tZW51LWl0ZW0gdGV4dD1cIkNvcHlcIiBbZGlzYWJsZWRdPVwiIXNlcnZpY2UuY2FuQ3V0Q29weSgpXCIgKG9uQ2xpY2spPVwic2VydmljZS5jb3B5KClcIj5cbiAgICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtY29weVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgICAgICAgICAgPGF4LXRleHQ+XG4gICAgICAgICAgICAgICAgICAgIEN0cmwrQ1xuICAgICAgICAgICAgICAgIDwvYXgtdGV4dD5cbiAgICAgICAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICAgICAgPGF4LW1lbnUtaXRlbSB0ZXh0PVwiUGFzdGVcIiBbZGlzYWJsZWRdPVwiIXNlcnZpY2UuY2FuUGFzdGUoKVwiIChvbkNsaWNrKT1cInNlcnZpY2UucGFzdGUoKVwiPlxuICAgICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1wYXN0ZVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgICAgICAgICAgPGF4LXRleHQ+XG4gICAgICAgICAgICAgICAgICAgIEN0cmwrVlxuICAgICAgICAgICAgICAgIDwvYXgtdGV4dD5cbiAgICAgICAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8YXgtbWVudS1pdGVtIHRleHQ9XCJIZWxwXCI+XG4gICAgICAgIDxheC1tZW51LWl0ZW0gdGV4dD1cIkFib3V0XCI+PC9heC1tZW51LWl0ZW0+XG4gICAgPC9heC1tZW51LWl0ZW0+XG48L2F4LW1lbnU+Il19
@@ -0,0 +1,37 @@
1
+ import { AXButtonModule } from '@acorex/components/button';
2
+ import { AXDecoratorModule } from '@acorex/components/decorators';
3
+ import { AXPContainerWidgetComponent } from '@acorex/platform/layout/builder';
4
+ import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';
5
+ import { AXPDesignerService } from '../../designer.service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@acorex/components/button";
8
+ import * as i2 from "@acorex/components/decorators";
9
+ export class AXPDesignerAddWidgetButtonComponent {
10
+ constructor() {
11
+ this.designerService = inject(AXPDesignerService);
12
+ this.parent = inject(AXPContainerWidgetComponent);
13
+ }
14
+ async handleClick(e) {
15
+ e.nativeEvent.stopPropagation();
16
+ await this.designerService.showPicker(this.parent.node);
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerAddWidgetButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerAddWidgetButtonComponent, isStandalone: true, selector: "axp-designer-add-widget-button", ngImport: i0, template: `
20
+ <div class="ax-container">
21
+ <ax-button [text]="'Add New Element'" (onClick)="handleClick($event)" [look]="'twotone'">
22
+ <ax-icon icon="fa-solid fa-plus"></ax-icon>
23
+ </ax-button>
24
+ </div>
25
+ `, isInline: true, styles: ["axp-designer-add-widget-button .ax-container{margin-left:auto;margin-right:auto;display:flex;justify-content:center;padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerAddWidgetButtonComponent, decorators: [{
28
+ type: Component,
29
+ args: [{ selector: 'axp-designer-add-widget-button', template: `
30
+ <div class="ax-container">
31
+ <ax-button [text]="'Add New Element'" (onClick)="handleClick($event)" [look]="'twotone'">
32
+ <ax-icon icon="fa-solid fa-plus"></ax-icon>
33
+ </ax-button>
34
+ </div>
35
+ `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonModule, AXDecoratorModule], encapsulation: ViewEncapsulation.None, styles: ["axp-designer-add-widget-button .ax-container{margin-left:auto;margin-right:auto;display:flex;justify-content:center;padding:.5rem}\n"] }]
36
+ }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXdpZGdldC1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9oZWxwZXJzL2FkZC13aWRnZXQtYnV0dG9uL2FkZC13aWRnZXQtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFpQjVELE1BQU0sT0FBTyxtQ0FBbUM7SUFmaEQ7UUFnQlUsb0JBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUM3QyxXQUFNLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7S0FNdEQ7SUFKQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQWU7UUFDL0IsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQzs4R0FQVSxtQ0FBbUM7a0dBQW5DLG1DQUFtQywwRkFacEM7Ozs7OztHQU1ULDZNQUdTLGNBQWMsdVpBQUUsaUJBQWlCOzsyRkFHaEMsbUNBQW1DO2tCQWYvQyxTQUFTOytCQUNFLGdDQUFnQyxZQUVoQzs7Ozs7O0dBTVQsY0FDVyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLENBQUMsaUJBQzdCLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDbGlja0V2ZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUENvbnRhaW5lcldpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGVzaWduZXIuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1kZXNpZ25lci1hZGQtd2lkZ2V0LWJ1dHRvbicsXG4gIHN0eWxlVXJsczogWycuL2FkZC13aWRnZXQtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4LWNvbnRhaW5lclwiPlxuICAgICAgPGF4LWJ1dHRvbiBbdGV4dF09XCInQWRkIE5ldyBFbGVtZW50J1wiIChvbkNsaWNrKT1cImhhbmRsZUNsaWNrKCRldmVudClcIiBbbG9va109XCIndHdvdG9uZSdcIj5cbiAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLXNvbGlkIGZhLXBsdXNcIj48L2F4LWljb24+XG4gICAgICA8L2F4LWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtBWEJ1dHRvbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBEZXNpZ25lckFkZFdpZGdldEJ1dHRvbkNvbXBvbmVudCB7XG4gIHByaXZhdGUgZGVzaWduZXJTZXJ2aWNlID0gaW5qZWN0KEFYUERlc2lnbmVyU2VydmljZSk7XG4gIHByaXZhdGUgcGFyZW50ID0gaW5qZWN0KEFYUENvbnRhaW5lcldpZGdldENvbXBvbmVudCk7XG5cbiAgYXN5bmMgaGFuZGxlQ2xpY2soZTogQVhDbGlja0V2ZW50KSB7XG4gICAgZS5uYXRpdmVFdmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBhd2FpdCB0aGlzLmRlc2lnbmVyU2VydmljZS5zaG93UGlja2VyKHRoaXMucGFyZW50Lm5vZGUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,82 @@
1
+ import { ChangeDetectionStrategy, Component, computed, HostBinding, HostListener, model, output, signal } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AXPDesignerGridDrawerComponent {
4
+ constructor() {
5
+ this.rowsCount = model(5, { alias: "rows" });
6
+ this.colsCount = model(12, { alias: "columns" });
7
+ this.onSelect = output();
8
+ this.rows = computed(() => Array.from({ length: this.rowsCount() }).map((v, index) => index + 1));
9
+ this.columns = computed(() => Array.from({ length: this.colsCount() }).map((v, index) => index + 1));
10
+ this.rangeR = signal(0);
11
+ this.rangeC = signal(0);
12
+ }
13
+ handleMouseHover(r, c) {
14
+ this.rangeR.set(r);
15
+ this.rangeC.set(c);
16
+ }
17
+ handleClick(r, c) {
18
+ this.onSelect.emit({ rows: r, cols: c });
19
+ }
20
+ handleMouseLeave(event) {
21
+ this.rangeR.set(0);
22
+ this.rangeC.set(0);
23
+ }
24
+ get __style() {
25
+ return {
26
+ "--cols-width": `${this.colsCount() == 0 ? 0 : (100 / this.colsCount())}%`
27
+ };
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerGridDrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerGridDrawerComponent, isStandalone: true, selector: "axp-designer-grid-drawer", inputs: { rowsCount: { classPropertyName: "rowsCount", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, colsCount: { classPropertyName: "colsCount", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { rowsCount: "rowsChange", colsCount: "columnsChange", onSelect: "onSelect" }, host: { listeners: { "mouseleave": "handleMouseLeave($event)" }, properties: { "style": "this.__style" } }, ngImport: i0, template: `
31
+ <table class="table-picker" >
32
+ <tbody>
33
+ @for(r of rows();track $index)
34
+ {
35
+ <tr >
36
+ @for(c of columns();track $index)
37
+ {
38
+ <td (mouseenter)="handleMouseHover(r,c)" [class.picked]="c<=rangeC() && r<=rangeR()" (click)="handleClick(r,c)">
39
+ </td>
40
+ }
41
+ </tr>
42
+ }
43
+ <tr>
44
+ <td [attr.colspan]="columns().length" class="ax-text-center">
45
+ <small >{{rangeR()}}*{{rangeC()}}</small>
46
+ </td>
47
+ </tr>
48
+ </tbody>
49
+ </table>
50
+ `, isInline: true, styles: [":host table{width:100%;border-collapse:collapse;--tw-border-spacing-x: 0px;--tw-border-spacing-y: 0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}:host table td{height:2.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));width:var(--cols-width)}:host table td:after{content:\"\";display:block}:host table td.picked{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary-100),var(--tw-bg-opacity))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerGridDrawerComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'axp-designer-grid-drawer', template: `
55
+ <table class="table-picker" >
56
+ <tbody>
57
+ @for(r of rows();track $index)
58
+ {
59
+ <tr >
60
+ @for(c of columns();track $index)
61
+ {
62
+ <td (mouseenter)="handleMouseHover(r,c)" [class.picked]="c<=rangeC() && r<=rangeR()" (click)="handleClick(r,c)">
63
+ </td>
64
+ }
65
+ </tr>
66
+ }
67
+ <tr>
68
+ <td [attr.colspan]="columns().length" class="ax-text-center">
69
+ <small >{{rangeR()}}*{{rangeC()}}</small>
70
+ </td>
71
+ </tr>
72
+ </tbody>
73
+ </table>
74
+ `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [], styles: [":host table{width:100%;border-collapse:collapse;--tw-border-spacing-x: 0px;--tw-border-spacing-y: 0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}:host table td{height:2.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));width:var(--cols-width)}:host table td:after{content:\"\";display:block}:host table td.picked{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-border-default),var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary-100),var(--tw-bg-opacity))}\n"] }]
75
+ }], propDecorators: { handleMouseLeave: [{
76
+ type: HostListener,
77
+ args: ['mouseleave', ['$event']]
78
+ }], __style: [{
79
+ type: HostBinding,
80
+ args: ['style']
81
+ }] } });
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1kcmF3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9oZWxwZXJzL2dyaWQtZHJhd2VyL2dyaWQtZHJhd2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQThCL0gsTUFBTSxPQUFPLDhCQUE4QjtJQTVCM0M7UUE4QkksY0FBUyxHQUFHLEtBQUssQ0FBUyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNoRCxjQUFTLEdBQUcsS0FBSyxDQUFTLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXBELGFBQVEsR0FBRyxNQUFNLEVBQWtDLENBQUM7UUFHMUMsU0FBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0YsWUFBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFaEcsV0FBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQixXQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBd0JoQztJQXJCYSxnQkFBZ0IsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRVMsV0FBVyxDQUFDLENBQVMsRUFBRSxDQUFTO1FBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBR08sZ0JBQWdCLENBQUMsS0FBb0I7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQ1ksT0FBTztRQUNmLE9BQU87WUFDSCxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHO1NBQzdFLENBQUM7SUFDTixDQUFDOzhHQW5DUSw4QkFBOEI7a0dBQTlCLDhCQUE4QixxaUJBekI3Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlg7OzJGQUtVLDhCQUE4QjtrQkE1QjFDLFNBQVM7K0JBQ0ksMEJBQTBCLFlBRTFCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CWCxjQUNhLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxFQUFFOzhCQTJCSCxnQkFBZ0I7c0JBRHZCLFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU8xQixPQUFPO3NCQURsQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgbW9kZWwsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLWRlc2lnbmVyLWdyaWQtZHJhd2VyJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ncmlkLWRyYXdlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlOiBgXG4gICA8dGFibGUgY2xhc3M9XCJ0YWJsZS1waWNrZXJcIiA+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IociBvZiByb3dzKCk7dHJhY2sgJGluZGV4KVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgPHRyID5cbiAgICAgICAgICAgICAgICBAZm9yKGMgb2YgY29sdW1ucygpO3RyYWNrICRpbmRleClcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIDx0ZCAobW91c2VlbnRlcik9XCJoYW5kbGVNb3VzZUhvdmVyKHIsYylcIiAgW2NsYXNzLnBpY2tlZF09XCJjPD1yYW5nZUMoKSAmJiByPD1yYW5nZVIoKVwiIChjbGljayk9XCJoYW5kbGVDbGljayhyLGMpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zKCkubGVuZ3RoXCIgY2xhc3M9XCJheC10ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8c21hbGwgPnt7cmFuZ2VSKCl9fSp7e3JhbmdlQygpfX08L3NtYWxsPlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG4gIGAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBpbXBvcnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJHcmlkRHJhd2VyQ29tcG9uZW50IHtcblxuICAgIHJvd3NDb3VudCA9IG1vZGVsPG51bWJlcj4oNSwgeyBhbGlhczogXCJyb3dzXCIgfSk7XG4gICAgY29sc0NvdW50ID0gbW9kZWw8bnVtYmVyPigxMiwgeyBhbGlhczogXCJjb2x1bW5zXCIgfSk7XG5cbiAgICBvblNlbGVjdCA9IG91dHB1dDx7IHJvd3M6IG51bWJlciwgY29sczogbnVtYmVyIH0+KCk7XG5cblxuICAgIHByb3RlY3RlZCByb3dzID0gY29tcHV0ZWQoKCkgPT4gQXJyYXkuZnJvbSh7IGxlbmd0aDogdGhpcy5yb3dzQ291bnQoKSB9KS5tYXAoKHYsIGluZGV4KSA9PiBpbmRleCArIDEpKTtcbiAgICBwcm90ZWN0ZWQgY29sdW1ucyA9IGNvbXB1dGVkKCgpID0+IEFycmF5LmZyb20oeyBsZW5ndGg6IHRoaXMuY29sc0NvdW50KCkgfSkubWFwKCh2LCBpbmRleCkgPT4gaW5kZXggKyAxKSk7XG5cbiAgICBwcm90ZWN0ZWQgcmFuZ2VSID0gc2lnbmFsKDApO1xuICAgIHByb3RlY3RlZCByYW5nZUMgPSBzaWduYWwoMCk7XG5cblxuICAgIHByb3RlY3RlZCBoYW5kbGVNb3VzZUhvdmVyKHI6IG51bWJlciwgYzogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMucmFuZ2VSLnNldChyKTtcbiAgICAgICAgdGhpcy5yYW5nZUMuc2V0KGMpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBoYW5kbGVDbGljayhyOiBudW1iZXIsIGM6IG51bWJlcikge1xuICAgICAgICB0aGlzLm9uU2VsZWN0LmVtaXQoeyByb3dzOiByLCBjb2xzOiBjIH0pO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBbJyRldmVudCddKVxuICAgIHByaXZhdGUgaGFuZGxlTW91c2VMZWF2ZShldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICB0aGlzLnJhbmdlUi5zZXQoMCk7XG4gICAgICAgIHRoaXMucmFuZ2VDLnNldCgwKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlJylcbiAgICBwcml2YXRlIGdldCBfX3N0eWxlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBcIi0tY29scy13aWR0aFwiOiBgJHt0aGlzLmNvbHNDb3VudCgpID09IDAgPyAwIDogKDEwMCAvIHRoaXMuY29sc0NvdW50KCkpfSVgXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
@@ -0,0 +1,28 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';
3
+ import { AXPDesignerService } from '../designer.service';
4
+ import { AXDecoratorModule } from '@acorex/components/decorators';
5
+ import { AXButtonModule } from '@acorex/components/button';
6
+ import { AXDropdownModule } from '@acorex/components/dropdown';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ import * as i2 from "@acorex/components/decorators";
10
+ import * as i3 from "@acorex/components/button";
11
+ import * as i4 from "@acorex/components/dropdown";
12
+ export class AXPDesignerHistoryComponent {
13
+ constructor() {
14
+ this.service = inject(AXPDesignerService);
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHistoryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerHistoryComponent, isStandalone: true, selector: "axp-designer-history", ngImport: i0, template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <!-- Header -->\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">History</span>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <ax-button look=\"ghost\" class=\"ax-xs\">\n <ax-icon class=\"fa-light fa-ellipsis\"></ax-icon>\n <ax-dropdown-panel class=\"ax-xs\">\n <ax-button-item-list>\n <ax-button-item text=\"Clear\" name=\"add\" (onClick)=\"service.clearHistory()\"> </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <ax-close-button></ax-close-button>\n </div>\n </div>\n\n <!-- History List or Empty State -->\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @if(service.history().length)\n {\n <!-- History Items -->\n <ul class=\"ax-space-y-1 ax-p-1 ax-text-white ax-text-sm\">\n @for (step of service.history(); track $index) {\n <li (click)=\"service.navigateTo($index)\"\n class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm\"\n [class.ax-italic]=\"step.isFuture\" [class.ax-text-neutral-400]=\"step.isFuture\"\n [class.ax-bg-neutral-700]=\"step.isCurrent\">\n <i class=\"ax-me-1\" [ngClass]=\"step.icon\"></i>\n {{ step.description }}\n </li>\n }\n </ul>\n }\n @else {\n <!-- No History Found -->\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">\n No changes have been made yet.\n </div>\n }\n </div>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }, { 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: "component", type: i3.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i3.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHistoryComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 'axp-designer-history', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
22
+ CommonModule,
23
+ AXDecoratorModule,
24
+ AXButtonModule,
25
+ AXDropdownModule
26
+ ], template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <!-- Header -->\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">History</span>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <ax-button look=\"ghost\" class=\"ax-xs\">\n <ax-icon class=\"fa-light fa-ellipsis\"></ax-icon>\n <ax-dropdown-panel class=\"ax-xs\">\n <ax-button-item-list>\n <ax-button-item text=\"Clear\" name=\"add\" (onClick)=\"service.clearHistory()\"> </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <ax-close-button></ax-close-button>\n </div>\n </div>\n\n <!-- History List or Empty State -->\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @if(service.history().length)\n {\n <!-- History Items -->\n <ul class=\"ax-space-y-1 ax-p-1 ax-text-white ax-text-sm\">\n @for (step of service.history(); track $index) {\n <li (click)=\"service.navigateTo($index)\"\n class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm\"\n [class.ax-italic]=\"step.isFuture\" [class.ax-text-neutral-400]=\"step.isFuture\"\n [class.ax-bg-neutral-700]=\"step.isCurrent\">\n <i class=\"ax-me-1\" [ngClass]=\"step.icon\"></i>\n {{ step.description }}\n </li>\n }\n </ul>\n }\n @else {\n <!-- No History Found -->\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">\n No changes have been made yet.\n </div>\n }\n </div>\n</div>" }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2hpc3RvcnkvaGlzdG9yeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2hpc3RvcnkvaGlzdG9yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBWSxNQUFNLEVBQWtCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7O0FBZ0IvRCxNQUFNLE9BQU8sMkJBQTJCO0lBZHhDO1FBZWMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBQ2xEOzhHQUZZLDJCQUEyQjtrR0FBM0IsMkJBQTJCLGdGQ3RCeEMsdThEQTJDTSwyQ0Q1QkUsWUFBWSw0SEFDWixpQkFBaUIsK09BQ2pCLGNBQWMsOHZCQUNkLGdCQUFnQjs7MkZBSVgsMkJBQTJCO2tCQWR2QyxTQUFTOytCQUNJLHNCQUFzQixpQkFFakIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGNBQWM7d0JBQ2QsZ0JBQWdCO3FCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUsIEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIE9uSW5pdCwgc2lnbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGVzaWduZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdheHAtZGVzaWduZXItaGlzdG9yeScsXG4gICAgdGVtcGxhdGVVcmw6ICdoaXN0b3J5LmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgICAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQVhEcm9wZG93bk1vZHVsZVxuICAgIF0sXG59KVxuXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJIaXN0b3J5Q29tcG9uZW50IHtcbiAgICBwcm90ZWN0ZWQgc2VydmljZSA9IGluamVjdChBWFBEZXNpZ25lclNlcnZpY2UpO1xufSIsIjxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWJvcmRlci1lIGF4LXctNzJcIj5cbiAgICA8IS0tIEhlYWRlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LXJvdyBheC13LWZ1bGwgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LXRleHQtd2hpdGUgYXgtcC0yIGF4LWJvcmRlci1iXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtcm93IGF4LWdhcC0yIGF4LWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1mb250LXNlbWlib2xkXCI+SGlzdG9yeTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWdhcC0xIGF4LWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiZ2hvc3RcIiBjbGFzcz1cImF4LXhzXCI+XG4gICAgICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJmYS1saWdodCBmYS1lbGxpcHNpc1wiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgICAgICA8YXgtZHJvcGRvd24tcGFuZWwgY2xhc3M9XCJheC14c1wiPlxuICAgICAgICAgICAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW0tbGlzdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1idXR0b24taXRlbSB0ZXh0PVwiQ2xlYXJcIiBuYW1lPVwiYWRkXCIgKG9uQ2xpY2spPVwic2VydmljZS5jbGVhckhpc3RvcnkoKVwiPiA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtLWxpc3Q+XG4gICAgICAgICAgICAgICAgPC9heC1kcm9wZG93bi1wYW5lbD5cbiAgICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgICAgPGF4LWNsb3NlLWJ1dHRvbj48L2F4LWNsb3NlLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIEhpc3RvcnkgTGlzdCBvciBFbXB0eSBTdGF0ZSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LWgtZnVsbCBheC1vdmVyZmxvdy1hdXRvXCI+XG4gICAgICAgIEBpZihzZXJ2aWNlLmhpc3RvcnkoKS5sZW5ndGgpXG4gICAgICAgIHtcbiAgICAgICAgPCEtLSBIaXN0b3J5IEl0ZW1zIC0tPlxuICAgICAgICA8dWwgY2xhc3M9XCJheC1zcGFjZS15LTEgYXgtcC0xIGF4LXRleHQtd2hpdGUgYXgtdGV4dC1zbVwiPlxuICAgICAgICAgICAgQGZvciAoc3RlcCBvZiBzZXJ2aWNlLmhpc3RvcnkoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8bGkgKGNsaWNrKT1cInNlcnZpY2UubmF2aWdhdGVUbygkaW5kZXgpXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImF4LWN1cnNvci1wb2ludGVyIGF4LXRyYW5zaXRpb24gYXgtZHVyYXRpb24tMTUwIGF4LWVhc2UtaW4tb3V0IGF4LWhvdmVyOmJnLWdyYXktNzAwIGF4LXB5LTEgYXgtcHgtMiBheC1yb3VuZGVkLXNtXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuYXgtaXRhbGljXT1cInN0ZXAuaXNGdXR1cmVcIiBbY2xhc3MuYXgtdGV4dC1uZXV0cmFsLTQwMF09XCJzdGVwLmlzRnV0dXJlXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctbmV1dHJhbC03MDBdPVwic3RlcC5pc0N1cnJlbnRcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImF4LW1lLTFcIiBbbmdDbGFzc109XCJzdGVwLmljb25cIj48L2k+XG4gICAgICAgICAgICAgICAge3sgc3RlcC5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC91bD5cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgIDwhLS0gTm8gSGlzdG9yeSBGb3VuZCAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtanVzdGlmeS1jZW50ZXIgYXgtaXRlbXMtY2VudGVyIGF4LXRleHQtZ3JheS0zMDAgYXgtcC00XCI+XG4gICAgICAgICAgICBObyBjaGFuZ2VzIGhhdmUgYmVlbiBtYWRlIHlldC5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -1,23 +1,28 @@
1
- import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
1
+ import { AXDecoratorModule } from '@acorex/components/decorators';
2
+ import { AXPLayoutBuilderModule, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
2
3
  import { CommonModule } from '@angular/common';
3
4
  import { ChangeDetectionStrategy, Component, inject, signal, ViewEncapsulation } from '@angular/core';
4
- import { AXPDesignerService } from '../designer.service';
5
5
  import { get } from 'lodash-es';
6
- import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
7
- import { AXDecoratorModule } from '@acorex/components/decorators';
8
6
  import { merge } from 'rxjs';
7
+ import { AXPDesignerService } from '../designer.service';
9
8
  import * as i0 from "@angular/core";
10
9
  import * as i1 from "@angular/common";
10
+ import * as i2 from "@acorex/components/decorators";
11
11
  export class AXPDesignerOutlineComponent {
12
12
  constructor() {
13
13
  this.service = inject(AXPDesignerService);
14
14
  this.collapsedStates = new Map();
15
- this.root = signal(this.service.root());
16
- merge(this.service.onRefresh, this.service.onUpdate)
17
- .subscribe(() => {
18
- this.root.update(c => ({ ...this.service.root() }));
15
+ this.root = signal(this.getTree());
16
+ merge(this.service.onRefresh, this.service.onUpdate).subscribe(() => {
17
+ this.root.update((c) => ({ ...this.getTree() }));
19
18
  });
20
19
  }
20
+ getTree() {
21
+ return {
22
+ type: AXPWidgetsCatalog.document,
23
+ children: [this.service.currentPage()],
24
+ };
25
+ }
21
26
  toggleCollapse(node) {
22
27
  // Toggle the current state or set to true if undefined
23
28
  this.collapsedStates.set(node, !this.collapsedStates.get(node));
@@ -27,7 +32,7 @@ export class AXPDesignerOutlineComponent {
27
32
  return !!this.collapsedStates.get(node);
28
33
  }
29
34
  getConfig(node) {
30
- return get(node, "__meta__.config");
35
+ return get(node, '__meta__.config');
31
36
  }
32
37
  handleClick(e, node) {
33
38
  e.stopPropagation();
@@ -42,15 +47,10 @@ export class AXPDesignerOutlineComponent {
42
47
  this.service.focus({ widget: node });
43
48
  }
44
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerOutlineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerOutlineComponent, isStandalone: true, selector: "axp-designer-outline", ngImport: i0, template: "@if(root().children?.length)\n{\n<ul class=\"ax-text-white ax-text-sm ax-bg-gray-800 ax-p-2 ax-rounded-md ax-space-y-1\">\n @for( node of root().children;track $index)\n {\n <ng-container [ngTemplateOutlet]=\"sideMenu\" [ngTemplateOutletContext]=\"{ $implicit: node }\">\n </ng-container>\n }\n</ul>\n<ng-template #sideMenu let-item>\n <li class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700\"\n (click)=\"handleClick($event,item)\" (mouseover)=\"handleMouseOver($event,item)\">\n <div [class.ax-bg-blue-200]=\"item === service.selectedNode()\"\n [class.ax-text-blue-900]=\"item === service.selectedNode()\"\n class=\"ax-flex ax-flex-row ax-items-center ax-p-1 ax-px-2\">\n <span class=\"ax-w-5\">\n @if(item.children?.length)\n {\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"isCollapsed(item)\"\n (click)=\"handleToggleClick($event, item)\" [class.fa-chevron-down]=\"!isCollapsed(item)\"></i>\n }\n </span>\n @let config= getConfig(item);\n <span class=\"ax-w-5\">\n @if(config.icon)\n {\n <i [ngClass]=\"config.icon\"></i>\n }\n </span>\n <span>{{config.title}} : {{item.name}}</span>\n </div>\n @if(item.children?.length && !isCollapsed(item)) {\n <ul class=\"ax-pl-5 ax-space-y-1\">\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\n </ng-container>\n </ul>\n }\n </li>\n</ng-template>\n}\n@else {\n<div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No widgets found in the page</div>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "ngmodule", type: AXDecoratorModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerOutlineComponent, isStandalone: true, selector: "axp-designer-outline", ngImport: i0, template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">Outline</span>\n </div>\n <ax-close-button></ax-close-button>\n </div>\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @if(root().children?.length)\n {\n <ul class=\"ax-space-y-1 ax-p-1 ax-text-white ax-text-sm\">\n @for( node of root().children;track $index)\n {\n <ng-container [ngTemplateOutlet]=\"sideMenu\" [ngTemplateOutletContext]=\"{ $implicit: node }\">\n </ng-container>\n }\n </ul>\n <ng-template #sideMenu let-item>\n <li (click)=\"handleClick($event,item)\" (mouseover)=\"handleMouseOver($event,item)\">\n <div [class.ax-bg-neutral-700]=\"item === service.selectedNode()\"\n class=\"ax-flex ax-flex-row ax-items-center ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm\">\n <span class=\"ax-w-5\">\n @if(item.children?.length)\n {\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"isCollapsed(item)\"\n (click)=\"handleToggleClick($event, item)\" [class.fa-chevron-down]=\"!isCollapsed(item)\"></i>\n }\n </span>\n @let config = getConfig(item);\n <span class=\"ax-w-5\">\n @if(config.icon)\n {\n <i [ngClass]=\"config.icon\"></i>\n }\n </span>\n <span class=\"ax-truncate\">{{config.title}} : {{item.name}}</span>\n </div>\n @if(item.children?.length && !isCollapsed(item)) {\n <ul class=\"ax-space-y-1 ax-ps-3 ax-text-white ax-text-sm\">\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\n </ng-container>\n </ul>\n }\n </li>\n </ng-template>\n }\n @else {\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No widgets found in the page\n </div>\n }\n </div>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
46
51
  }
47
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerOutlineComponent, decorators: [{
48
53
  type: Component,
49
- args: [{ selector: 'axp-designer-outline', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
50
- CommonModule,
51
- AXPLayoutBuilderModule,
52
- AXBreadcrumbsModule,
53
- AXDecoratorModule,
54
- ], template: "@if(root().children?.length)\n{\n<ul class=\"ax-text-white ax-text-sm ax-bg-gray-800 ax-p-2 ax-rounded-md ax-space-y-1\">\n @for( node of root().children;track $index)\n {\n <ng-container [ngTemplateOutlet]=\"sideMenu\" [ngTemplateOutletContext]=\"{ $implicit: node }\">\n </ng-container>\n }\n</ul>\n<ng-template #sideMenu let-item>\n <li class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700\"\n (click)=\"handleClick($event,item)\" (mouseover)=\"handleMouseOver($event,item)\">\n <div [class.ax-bg-blue-200]=\"item === service.selectedNode()\"\n [class.ax-text-blue-900]=\"item === service.selectedNode()\"\n class=\"ax-flex ax-flex-row ax-items-center ax-p-1 ax-px-2\">\n <span class=\"ax-w-5\">\n @if(item.children?.length)\n {\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"isCollapsed(item)\"\n (click)=\"handleToggleClick($event, item)\" [class.fa-chevron-down]=\"!isCollapsed(item)\"></i>\n }\n </span>\n @let config= getConfig(item);\n <span class=\"ax-w-5\">\n @if(config.icon)\n {\n <i [ngClass]=\"config.icon\"></i>\n }\n </span>\n <span>{{config.title}} : {{item.name}}</span>\n </div>\n @if(item.children?.length && !isCollapsed(item)) {\n <ul class=\"ax-pl-5 ax-space-y-1\">\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\n </ng-container>\n </ul>\n }\n </li>\n</ng-template>\n}\n@else {\n<div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No widgets found in the page</div>\n}" }]
54
+ args: [{ selector: 'axp-designer-outline', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, AXPLayoutBuilderModule, AXDecoratorModule], template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">Outline</span>\n </div>\n <ax-close-button></ax-close-button>\n </div>\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @if(root().children?.length)\n {\n <ul class=\"ax-space-y-1 ax-p-1 ax-text-white ax-text-sm\">\n @for( node of root().children;track $index)\n {\n <ng-container [ngTemplateOutlet]=\"sideMenu\" [ngTemplateOutletContext]=\"{ $implicit: node }\">\n </ng-container>\n }\n </ul>\n <ng-template #sideMenu let-item>\n <li (click)=\"handleClick($event,item)\" (mouseover)=\"handleMouseOver($event,item)\">\n <div [class.ax-bg-neutral-700]=\"item === service.selectedNode()\"\n class=\"ax-flex ax-flex-row ax-items-center ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm\">\n <span class=\"ax-w-5\">\n @if(item.children?.length)\n {\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"isCollapsed(item)\"\n (click)=\"handleToggleClick($event, item)\" [class.fa-chevron-down]=\"!isCollapsed(item)\"></i>\n }\n </span>\n @let config = getConfig(item);\n <span class=\"ax-w-5\">\n @if(config.icon)\n {\n <i [ngClass]=\"config.icon\"></i>\n }\n </span>\n <span class=\"ax-truncate\">{{config.title}} : {{item.name}}</span>\n </div>\n @if(item.children?.length && !isCollapsed(item)) {\n <ul class=\"ax-space-y-1 ax-ps-3 ax-text-white ax-text-sm\">\n <ng-container *ngFor=\"let child of item.children\" [ngTemplateOutlet]=\"sideMenu\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\">\n </ng-container>\n </ul>\n }\n </li>\n </ng-template>\n }\n @else {\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No widgets found in the page\n </div>\n }\n </div>\n</div>" }]
55
55
  }], ctorParameters: () => [] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0bGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL291dGxpbmUvb3V0bGluZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL291dGxpbmUvb3V0bGluZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQWtDLE1BQU0saUNBQWlDLENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQWdCN0IsTUFBTSxPQUFPLDJCQUEyQjtJQVFwQztRQU5VLFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVyQyxvQkFBZSxHQUFzQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRS9DLFNBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBR3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQzthQUMvQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFBO0lBQ1YsQ0FBQztJQUdPLGNBQWMsQ0FBQyxJQUFTO1FBQzVCLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFUyxXQUFXLENBQUMsSUFBUztRQUMzQiwwREFBMEQ7UUFDMUQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVTLFNBQVMsQ0FBQyxJQUFtQjtRQUNuQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLENBQTJCLENBQUM7SUFDbEUsQ0FBQztJQUVTLFdBQVcsQ0FBQyxDQUFhLEVBQUUsSUFBbUI7UUFDcEQsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVTLGlCQUFpQixDQUFDLEtBQWlCLEVBQUUsSUFBUztRQUNwRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyx5REFBeUQ7UUFDbEYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRVMsZUFBZSxDQUFDLENBQWEsRUFBRSxJQUFtQjtRQUN4RCxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDOzhHQTNDUSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnRkN2QnhDLHMyREEyQ0MsMkNEM0JPLFlBQVksZ2FBQ1osc0JBQXNCLDhCQUN0QixtQkFBbUIsOEJBQ25CLGlCQUFpQjs7MkZBSVosMkJBQTJCO2tCQWR2QyxTQUFTOytCQUNJLHNCQUFzQixpQkFFakIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3FCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUsIEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgT25Jbml0LCBzaWduYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBEZXNpZ25lclNlcnZpY2UgfSBmcm9tICcuLi9kZXNpZ25lci5zZXJ2aWNlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBBWEJyZWFkY3J1bWJzTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdheHAtZGVzaWduZXItb3V0bGluZScsXG4gICAgdGVtcGxhdGVVcmw6ICdvdXRsaW5lLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFYUExheW91dEJ1aWxkZXJNb2R1bGUsXG4gICAgICAgIEFYQnJlYWRjcnVtYnNNb2R1bGUsXG4gICAgICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIF0sXG59KVxuXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJPdXRsaW5lQ29tcG9uZW50IHtcblxuICAgIHByb3RlY3RlZCBzZXJ2aWNlID0gaW5qZWN0KEFYUERlc2lnbmVyU2VydmljZSk7XG5cbiAgICBwcm90ZWN0ZWQgY29sbGFwc2VkU3RhdGVzOiBNYXA8YW55LCBib29sZWFuPiA9IG5ldyBNYXAoKTtcblxuICAgIHByb3RlY3RlZCByb290ID0gc2lnbmFsKHRoaXMuc2VydmljZS5yb290KCkpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIG1lcmdlKHRoaXMuc2VydmljZS5vblJlZnJlc2gsIHRoaXMuc2VydmljZS5vblVwZGF0ZSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucm9vdC51cGRhdGUoYyA9PiAoeyAuLi50aGlzLnNlcnZpY2Uucm9vdCgpIH0pKTtcbiAgICAgICAgICAgIH0pXG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHRvZ2dsZUNvbGxhcHNlKG5vZGU6IGFueSkge1xuICAgICAgICAvLyBUb2dnbGUgdGhlIGN1cnJlbnQgc3RhdGUgb3Igc2V0IHRvIHRydWUgaWYgdW5kZWZpbmVkXG4gICAgICAgIHRoaXMuY29sbGFwc2VkU3RhdGVzLnNldChub2RlLCAhdGhpcy5jb2xsYXBzZWRTdGF0ZXMuZ2V0KG5vZGUpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXNDb2xsYXBzZWQobm9kZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIC8vIFJldHVybiB0aGUgY29sbGFwc2VkIHN0YXRlLCBkZWZhdWx0IGlzIGZhbHNlIChleHBhbmRlZClcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jb2xsYXBzZWRTdGF0ZXMuZ2V0KG5vZGUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRDb25maWcobm9kZTogQVhQV2lkZ2V0Tm9kZSk6IEFYUFdpZGdldENvbmZpZyB7XG4gICAgICAgIHJldHVybiBnZXQobm9kZSwgXCJfX21ldGFfXy5jb25maWdcIikgYXMgYW55IGFzIEFYUFdpZGdldENvbmZpZztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaGFuZGxlQ2xpY2soZTogTW91c2VFdmVudCwgbm9kZTogQVhQV2lkZ2V0Tm9kZSkge1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnNlcnZpY2Uuc2VsZWN0KHsgd2lkZ2V0OiBub2RlIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBoYW5kbGVUb2dnbGVDbGljayhldmVudDogTW91c2VFdmVudCwgaXRlbTogYW55KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyAvLyBQcmV2ZW50cyB0aGUgZXZlbnQgZnJvbSBidWJibGluZyB1cCB0byBwYXJlbnQgZWxlbWVudHNcbiAgICAgICAgdGhpcy50b2dnbGVDb2xsYXBzZShpdGVtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaGFuZGxlTW91c2VPdmVyKGU6IE1vdXNlRXZlbnQsIG5vZGU6IEFYUFdpZGdldE5vZGUpIHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLmZvY3VzKHsgd2lkZ2V0OiBub2RlIH0pO1xuICAgIH1cbn0iLCJAaWYocm9vdCgpLmNoaWxkcmVuPy5sZW5ndGgpXG57XG48dWwgY2xhc3M9XCJheC10ZXh0LXdoaXRlIGF4LXRleHQtc20gYXgtYmctZ3JheS04MDAgYXgtcC0yIGF4LXJvdW5kZWQtbWQgYXgtc3BhY2UteS0xXCI+XG4gICAgQGZvciggbm9kZSBvZiByb290KCkuY2hpbGRyZW47dHJhY2sgJGluZGV4KVxuICAgIHtcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNpZGVNZW51XCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBub2RlIH1cIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICB9XG48L3VsPlxuPG5nLXRlbXBsYXRlICNzaWRlTWVudSBsZXQtaXRlbT5cbiAgICA8bGkgY2xhc3M9XCJheC1jdXJzb3ItcG9pbnRlciBheC10cmFuc2l0aW9uIGF4LWR1cmF0aW9uLTE1MCBheC1lYXNlLWluLW91dCBheC1ob3ZlcjpiZy1ncmF5LTcwMFwiXG4gICAgICAgIChjbGljayk9XCJoYW5kbGVDbGljaygkZXZlbnQsaXRlbSlcIiAobW91c2VvdmVyKT1cImhhbmRsZU1vdXNlT3ZlcigkZXZlbnQsaXRlbSlcIj5cbiAgICAgICAgPGRpdiBbY2xhc3MuYXgtYmctYmx1ZS0yMDBdPVwiaXRlbSA9PT0gc2VydmljZS5zZWxlY3RlZE5vZGUoKVwiXG4gICAgICAgICAgICBbY2xhc3MuYXgtdGV4dC1ibHVlLTkwMF09XCJpdGVtID09PSBzZXJ2aWNlLnNlbGVjdGVkTm9kZSgpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LXJvdyBheC1pdGVtcy1jZW50ZXIgYXgtcC0xIGF4LXB4LTJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdy01XCI+XG4gICAgICAgICAgICAgICAgQGlmKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aClcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZFwiIFtjbGFzcy5mYS1jaGV2cm9uLXJpZ2h0XT1cImlzQ29sbGFwc2VkKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVRvZ2dsZUNsaWNrKCRldmVudCwgaXRlbSlcIiBbY2xhc3MuZmEtY2hldnJvbi1kb3duXT1cIiFpc0NvbGxhcHNlZChpdGVtKVwiPjwvaT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICBAbGV0IGNvbmZpZz0gZ2V0Q29uZmlnKGl0ZW0pO1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC13LTVcIj5cbiAgICAgICAgICAgICAgICBAaWYoY29uZmlnLmljb24pXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cImNvbmZpZy5pY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPnt7Y29uZmlnLnRpdGxlfX0gOiB7e2l0ZW0ubmFtZX19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCAmJiAhaXNDb2xsYXBzZWQoaXRlbSkpIHtcbiAgICAgICAgPHVsIGNsYXNzPVwiYXgtcGwtNSBheC1zcGFjZS15LTFcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGl0ZW0uY2hpbGRyZW5cIiBbbmdUZW1wbGF0ZU91dGxldF09XCJzaWRlTWVudVwiXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBjaGlsZCB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC91bD5cbiAgICAgICAgfVxuICAgIDwvbGk+XG48L25nLXRlbXBsYXRlPlxufVxuQGVsc2Uge1xuPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtanVzdGlmeS1jZW50ZXIgYXgtaXRlbXMtY2VudGVyIGF4LXRleHQtZ3JheS0zMDAgYXgtcC00XCI+Tm8gd2lkZ2V0cyBmb3VuZCBpbiB0aGUgcGFnZTwvZGl2PlxufSJdfQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0bGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL291dGxpbmUvb3V0bGluZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL291dGxpbmUvb3V0bGluZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQWtDLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFVekQsTUFBTSxPQUFPLDJCQUEyQjtJQU90QztRQU5VLFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVyQyxvQkFBZSxHQUFzQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRS9DLFNBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFHdEMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLE9BQU87UUFDYixPQUFPO1lBQ0wsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFFBQVE7WUFDaEMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN0QixDQUFDO0lBQ3JCLENBQUM7SUFFTyxjQUFjLENBQUMsSUFBUztRQUM5Qix1REFBdUQ7UUFDdkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRVMsV0FBVyxDQUFDLElBQVM7UUFDN0IsMERBQTBEO1FBQzFELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFUyxTQUFTLENBQUMsSUFBbUI7UUFDckMsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUEyQixDQUFDO0lBQ2hFLENBQUM7SUFFUyxXQUFXLENBQUMsQ0FBYSxFQUFFLElBQW1CO1FBQ3RELENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxLQUFpQixFQUFFLElBQVM7UUFDdEQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMseURBQXlEO1FBQ2xGLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVTLGVBQWUsQ0FBQyxDQUFhLEVBQUUsSUFBbUI7UUFDMUQsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs4R0EvQ1UsMkJBQTJCO2tHQUEzQiwyQkFBMkIsZ0ZDaEJ4Qyxra0ZBb0RNLDJDRHRDTSxZQUFZLGdhQUFFLHNCQUFzQiw4QkFBRSxpQkFBaUI7OzJGQUV0RCwyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0Usc0JBQXNCLGlCQUVqQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSwgQVhQV2lkZ2V0Q29uZmlnLCBBWFBXaWRnZXROb2RlLCBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgc2lnbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBEZXNpZ25lclNlcnZpY2UgfSBmcm9tICcuLi9kZXNpZ25lci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLWRlc2lnbmVyLW91dGxpbmUnLFxuICB0ZW1wbGF0ZVVybDogJ291dGxpbmUuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBEZXNpZ25lck91dGxpbmVDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgc2VydmljZSA9IGluamVjdChBWFBEZXNpZ25lclNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCBjb2xsYXBzZWRTdGF0ZXM6IE1hcDxhbnksIGJvb2xlYW4+ID0gbmV3IE1hcCgpO1xuXG4gIHByb3RlY3RlZCByb290ID0gc2lnbmFsKHRoaXMuZ2V0VHJlZSgpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBtZXJnZSh0aGlzLnNlcnZpY2Uub25SZWZyZXNoLCB0aGlzLnNlcnZpY2Uub25VcGRhdGUpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJvb3QudXBkYXRlKChjKSA9PiAoeyAuLi50aGlzLmdldFRyZWUoKSB9KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFRyZWUoKTogQVhQV2lkZ2V0Tm9kZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmRvY3VtZW50LFxuICAgICAgY2hpbGRyZW46IFt0aGlzLnNlcnZpY2UuY3VycmVudFBhZ2UoKV0sXG4gICAgfSBhcyBBWFBXaWRnZXROb2RlO1xuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVDb2xsYXBzZShub2RlOiBhbnkpIHtcbiAgICAvLyBUb2dnbGUgdGhlIGN1cnJlbnQgc3RhdGUgb3Igc2V0IHRvIHRydWUgaWYgdW5kZWZpbmVkXG4gICAgdGhpcy5jb2xsYXBzZWRTdGF0ZXMuc2V0KG5vZGUsICF0aGlzLmNvbGxhcHNlZFN0YXRlcy5nZXQobm9kZSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzQ29sbGFwc2VkKG5vZGU6IGFueSk6IGJvb2xlYW4ge1xuICAgIC8vIFJldHVybiB0aGUgY29sbGFwc2VkIHN0YXRlLCBkZWZhdWx0IGlzIGZhbHNlIChleHBhbmRlZClcbiAgICByZXR1cm4gISF0aGlzLmNvbGxhcHNlZFN0YXRlcy5nZXQobm9kZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Q29uZmlnKG5vZGU6IEFYUFdpZGdldE5vZGUpOiBBWFBXaWRnZXRDb25maWcge1xuICAgIHJldHVybiBnZXQobm9kZSwgJ19fbWV0YV9fLmNvbmZpZycpIGFzIGFueSBhcyBBWFBXaWRnZXRDb25maWc7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ2xpY2soZTogTW91c2VFdmVudCwgbm9kZTogQVhQV2lkZ2V0Tm9kZSkge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5zZXJ2aWNlLnNlbGVjdCh7IHdpZGdldDogbm9kZSB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVUb2dnbGVDbGljayhldmVudDogTW91c2VFdmVudCwgaXRlbTogYW55KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IC8vIFByZXZlbnRzIHRoZSBldmVudCBmcm9tIGJ1YmJsaW5nIHVwIHRvIHBhcmVudCBlbGVtZW50c1xuICAgIHRoaXMudG9nZ2xlQ29sbGFwc2UoaXRlbSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlTW91c2VPdmVyKGU6IE1vdXNlRXZlbnQsIG5vZGU6IEFYUFdpZGdldE5vZGUpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuc2VydmljZS5mb2N1cyh7IHdpZGdldDogbm9kZSB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtYm9yZGVyLWUgYXgtdy03MlwiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtcm93IGF4LXctZnVsbCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtdGV4dC13aGl0ZSBheC1wLTIgYXgtYm9yZGVyLWJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1yb3cgYXgtZ2FwLTIgYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGRcIj5PdXRsaW5lPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGF4LWNsb3NlLWJ1dHRvbj48L2F4LWNsb3NlLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LWgtZnVsbCBheC1vdmVyZmxvdy1hdXRvXCI+XG4gICAgICAgIEBpZihyb290KCkuY2hpbGRyZW4/Lmxlbmd0aClcbiAgICAgICAge1xuICAgICAgICA8dWwgY2xhc3M9XCJheC1zcGFjZS15LTEgYXgtcC0xIGF4LXRleHQtd2hpdGUgYXgtdGV4dC1zbVwiPlxuICAgICAgICAgICAgQGZvciggbm9kZSBvZiByb290KCkuY2hpbGRyZW47dHJhY2sgJGluZGV4KVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzaWRlTWVudVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbm9kZSB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC91bD5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNzaWRlTWVudSBsZXQtaXRlbT5cbiAgICAgICAgICAgIDxsaSAoY2xpY2spPVwiaGFuZGxlQ2xpY2soJGV2ZW50LGl0ZW0pXCIgKG1vdXNlb3Zlcik9XCJoYW5kbGVNb3VzZU92ZXIoJGV2ZW50LGl0ZW0pXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBbY2xhc3MuYXgtYmctbmV1dHJhbC03MDBdPVwiaXRlbSA9PT0gc2VydmljZS5zZWxlY3RlZE5vZGUoKVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LXJvdyBheC1pdGVtcy1jZW50ZXIgYXgtY3Vyc29yLXBvaW50ZXIgYXgtdHJhbnNpdGlvbiBheC1kdXJhdGlvbi0xNTAgYXgtZWFzZS1pbi1vdXQgYXgtaG92ZXI6YmctZ3JheS03MDAgYXgtcHktMSBheC1weC0yIGF4LXJvdW5kZWQtc21cIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC13LTVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZihpdGVtLmNoaWxkcmVuPy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkXCIgW2NsYXNzLmZhLWNoZXZyb24tcmlnaHRdPVwiaXNDb2xsYXBzZWQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVUb2dnbGVDbGljaygkZXZlbnQsIGl0ZW0pXCIgW2NsYXNzLmZhLWNoZXZyb24tZG93bl09XCIhaXNDb2xsYXBzZWQoaXRlbSlcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgQGxldCBjb25maWcgPSBnZXRDb25maWcoaXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdy01XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYoY29uZmlnLmljb24pXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBbbmdDbGFzc109XCJjb25maWcuaWNvblwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LXRydW5jYXRlXCI+e3tjb25maWcudGl0bGV9fSA6IHt7aXRlbS5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgQGlmKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCAmJiAhaXNDb2xsYXBzZWQoaXRlbSkpIHtcbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJheC1zcGFjZS15LTEgYXgtcHMtMyBheC10ZXh0LXdoaXRlIGF4LXRleHQtc21cIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hpbGQgb2YgaXRlbS5jaGlsZHJlblwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNpZGVNZW51XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogY2hpbGQgfVwiPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1qdXN0aWZ5LWNlbnRlciBheC1pdGVtcy1jZW50ZXIgYXgtdGV4dC1ncmF5LTMwMCBheC1wLTRcIj5ObyB3aWRnZXRzIGZvdW5kIGluIHRoZSBwYWdlXG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -0,0 +1,28 @@
1
+ import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';
4
+ import { AXPDesignerService } from '../designer.service';
5
+ import { AXDecoratorModule } from '@acorex/components/decorators';
6
+ import { AXButtonModule } from '@acorex/components/button';
7
+ import { AXDropdownModule } from '@acorex/components/dropdown';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@acorex/components/decorators";
10
+ import * as i2 from "@acorex/components/button";
11
+ export class AXPDesignerPagesComponent {
12
+ constructor() {
13
+ this.service = inject(AXPDesignerService);
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerPagesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerPagesComponent, isStandalone: true, selector: "axp-designer-pages", ngImport: i0, template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">Pages</span>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <ax-button look=\"ghost\" class=\"ax-xs\" (onClick)=\"service.addNewPage()\" title=\"Add New Page\">\n <ax-icon class=\"fa-light fa-file-circle-plus\"></ax-icon>\n </ax-button>\n <ax-close-button></ax-close-button>\n </div>\n </div>\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @let count = service.document().children?.length ?? 0;\n @if(count)\n {\n <ul class=\"ax-text-white ax-text-sm ax-bg-gray-800 ax-p-2 ax-rounded-md ax-space-y-1\">\n @for( page of service.document().children;track $index)\n {\n <li (click)=\"service.goToPage($index)\"\n class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm ax-group ax-flex ax-justify-between ax-items-center\"\n [class.ax-bg-neutral-700]=\"$index==service.currentPageIndex()\">\n <div>\n <i class=\"fa-light fa-file ax-me-1\"></i>\n Page {{$index + 1}}\n </div>\n <div class=\"ax-invisible group-hover:ax-visible ax-flex ax-gap-2\">\n @if(count>1)\n {\n <i class=\"fa-light fa-xmark hover:ax-text-danger-500\" (click)=\"service.removePage($index)\"></i>\n }\n <i class=\"fa-light fa-clone hover:ax-text-primary-500\" (click)=\"service.clonePage($index)\"></i>\n </div>\n </li>\n }\n </ul>\n }\n @else {\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No pages found in the document\n </div>\n }\n </div>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.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: AXDropdownModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerPagesComponent, decorators: [{
19
+ type: Component,
20
+ args: [{ selector: 'axp-designer-pages', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
21
+ CommonModule,
22
+ AXPLayoutBuilderModule,
23
+ AXDecoratorModule,
24
+ AXButtonModule,
25
+ AXDropdownModule
26
+ ], template: "<div class=\"ax-flex ax-flex-col ax-border-e ax-w-72\">\n <div class=\"ax-flex ax-flex-row ax-w-full ax-justify-between ax-text-white ax-p-2 ax-border-b\">\n <div class=\"ax-flex ax-flex-row ax-gap-2 ax-items-center\">\n <span class=\"ax-font-semibold\">Pages</span>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <ax-button look=\"ghost\" class=\"ax-xs\" (onClick)=\"service.addNewPage()\" title=\"Add New Page\">\n <ax-icon class=\"fa-light fa-file-circle-plus\"></ax-icon>\n </ax-button>\n <ax-close-button></ax-close-button>\n </div>\n </div>\n <div class=\"ax-flex-1 ax-h-full ax-overflow-auto\">\n @let count = service.document().children?.length ?? 0;\n @if(count)\n {\n <ul class=\"ax-text-white ax-text-sm ax-bg-gray-800 ax-p-2 ax-rounded-md ax-space-y-1\">\n @for( page of service.document().children;track $index)\n {\n <li (click)=\"service.goToPage($index)\"\n class=\"ax-cursor-pointer ax-transition ax-duration-150 ax-ease-in-out ax-hover:bg-gray-700 ax-py-1 ax-px-2 ax-rounded-sm ax-group ax-flex ax-justify-between ax-items-center\"\n [class.ax-bg-neutral-700]=\"$index==service.currentPageIndex()\">\n <div>\n <i class=\"fa-light fa-file ax-me-1\"></i>\n Page {{$index + 1}}\n </div>\n <div class=\"ax-invisible group-hover:ax-visible ax-flex ax-gap-2\">\n @if(count>1)\n {\n <i class=\"fa-light fa-xmark hover:ax-text-danger-500\" (click)=\"service.removePage($index)\"></i>\n }\n <i class=\"fa-light fa-clone hover:ax-text-primary-500\" (click)=\"service.clonePage($index)\"></i>\n </div>\n </li>\n }\n </ul>\n }\n @else {\n <div class=\"ax-flex ax-justify-center ax-items-center ax-text-gray-300 ax-p-4\">No pages found in the document\n </div>\n }\n </div>\n</div>" }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9wYWdlcy9wYWdlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL3BhZ2VzL3BhZ2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFpQi9ELE1BQU0sT0FBTyx5QkFBeUI7SUFmdEM7UUFpQmMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBRWxEOzhHQUpZLHlCQUF5QjtrR0FBekIseUJBQXlCLDhFQ3ZCdEMsd21FQTBDTSwyQ0QzQkUsWUFBWSw4QkFDWixzQkFBc0IsOEJBQ3RCLGlCQUFpQiwrT0FDakIsY0FBYyx1WkFDZCxnQkFBZ0I7OzJGQUlYLHlCQUF5QjtrQkFmckMsU0FBUzsrQkFDSSxvQkFBb0IsaUJBRWYsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxnQkFBZ0I7cUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUERlc2lnbmVyU2VydmljZSB9IGZyb20gJy4uL2Rlc2lnbmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcm9wZG93bic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLWRlc2lnbmVyLXBhZ2VzJyxcbiAgICB0ZW1wbGF0ZVVybDogJ3BhZ2VzLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFYUExheW91dEJ1aWxkZXJNb2R1bGUsXG4gICAgICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgICAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQVhEcm9wZG93bk1vZHVsZVxuICAgIF0sXG59KVxuXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJQYWdlc0NvbXBvbmVudCB7XG5cbiAgICBwcm90ZWN0ZWQgc2VydmljZSA9IGluamVjdChBWFBEZXNpZ25lclNlcnZpY2UpO1xuXG59IiwiPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtYm9yZGVyLWUgYXgtdy03MlwiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtcm93IGF4LXctZnVsbCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtdGV4dC13aGl0ZSBheC1wLTIgYXgtYm9yZGVyLWJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1yb3cgYXgtZ2FwLTIgYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGRcIj5QYWdlczwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWdhcC0xIGF4LWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiZ2hvc3RcIiBjbGFzcz1cImF4LXhzXCIgKG9uQ2xpY2spPVwic2VydmljZS5hZGROZXdQYWdlKClcIiB0aXRsZT1cIkFkZCBOZXcgUGFnZVwiPlxuICAgICAgICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtbGlnaHQgIGZhLWZpbGUtY2lyY2xlLXBsdXNcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICAgIDxheC1jbG9zZS1idXR0b24+PC9heC1jbG9zZS1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtaC1mdWxsIGF4LW92ZXJmbG93LWF1dG9cIj5cbiAgICAgICAgQGxldCBjb3VudCA9IHNlcnZpY2UuZG9jdW1lbnQoKS5jaGlsZHJlbj8ubGVuZ3RoID8/IDA7XG4gICAgICAgIEBpZihjb3VudClcbiAgICAgICAge1xuICAgICAgICA8dWwgY2xhc3M9XCJheC10ZXh0LXdoaXRlIGF4LXRleHQtc20gYXgtYmctZ3JheS04MDAgYXgtcC0yIGF4LXJvdW5kZWQtbWQgYXgtc3BhY2UteS0xXCI+XG4gICAgICAgICAgICBAZm9yKCBwYWdlIG9mIHNlcnZpY2UuZG9jdW1lbnQoKS5jaGlsZHJlbjt0cmFjayAkaW5kZXgpXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICA8bGkgKGNsaWNrKT1cInNlcnZpY2UuZ29Ub1BhZ2UoJGluZGV4KVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJheC1jdXJzb3ItcG9pbnRlciBheC10cmFuc2l0aW9uIGF4LWR1cmF0aW9uLTE1MCBheC1lYXNlLWluLW91dCBheC1ob3ZlcjpiZy1ncmF5LTcwMCBheC1weS0xIGF4LXB4LTIgYXgtcm91bmRlZC1zbSBheC1ncm91cCBheC1mbGV4IGF4LWp1c3RpZnktYmV0d2VlbiBheC1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1uZXV0cmFsLTcwMF09XCIkaW5kZXg9PXNlcnZpY2UuY3VycmVudFBhZ2VJbmRleCgpXCI+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1saWdodCBmYS1maWxlIGF4LW1lLTFcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIFBhZ2Uge3skaW5kZXggKyAxfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtaW52aXNpYmxlIGdyb3VwLWhvdmVyOmF4LXZpc2libGUgYXgtZmxleCBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICBAaWYoY291bnQ+MSlcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLWxpZ2h0IGZhLXhtYXJrIGhvdmVyOmF4LXRleHQtZGFuZ2VyLTUwMFwiIChjbGljayk9XCJzZXJ2aWNlLnJlbW92ZVBhZ2UoJGluZGV4KVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLWxpZ2h0IGZhLWNsb25lICBob3ZlcjpheC10ZXh0LXByaW1hcnktNTAwXCIgKGNsaWNrKT1cInNlcnZpY2UuY2xvbmVQYWdlKCRpbmRleClcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L3VsPlxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtanVzdGlmeS1jZW50ZXIgYXgtaXRlbXMtY2VudGVyIGF4LXRleHQtZ3JheS0zMDAgYXgtcC00XCI+Tm8gcGFnZXMgZm91bmQgaW4gdGhlIGRvY3VtZW50XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -36,6 +36,9 @@ export class AXPWidgetPropertyViewerComponent {
36
36
  }
37
37
  }, { allowSignalWrites: true });
38
38
  }
39
+ update(values) {
40
+ this.context.set(merge(cloneDeep(this.context()), values));
41
+ }
39
42
  fillTabs() {
40
43
  const tabs = [
41
44
  {
@@ -82,8 +85,8 @@ export class AXPWidgetPropertyViewerComponent {
82
85
  handleContextChange(e) {
83
86
  untracked(() => {
84
87
  this.context.set(e.data);
88
+ this.onChanged.emit({ values: this.context(), mode: e.init ? 'init' : 'update' });
85
89
  });
86
- this.onChanged.emit({ values: e.data, mode: 'update' });
87
90
  }
88
91
  handleTabChange(event) {
89
92
  const indx = event.index;
@@ -100,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
100
103
  }], ctorParameters: () => [], propDecorators: { onChanged: [{
101
104
  type: Output
102
105
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByb3BlcnR5LXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL3Byb3BlcnR5LXZpZXdlci93aWRnZXQtcHJvcGVydHktdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2Rlc2lnbmVyL3NyYy9saWIvcHJvcGVydHktdmlld2VyL3dpZGdldC1wcm9wZXJ0eS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBMEIsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQTRFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0ssT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFTLEtBQUssRUFBUyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDM0ssT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQU8sT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7OztBQTJCN0csTUFBTSxPQUFPLGdDQUFnQztJQXlCM0M7UUF4QkEsV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWlCLENBQUM7UUFFakMsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixD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SUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7OEdBaEhVLGdDQUFnQztrR0FBaEMsZ0NBQWdDLGlRQ2pDN0MsdW1EQStCd0IsMkdEQVosWUFBWSw4QkFBRSxnQkFBZ0IsOGJBQUUsWUFBWSxrYUFBRSxzQkFBc0I7OzJGQUVuRSxnQ0FBZ0M7a0JBUjVDLFNBQVM7K0JBQ0UsNEJBQTRCLG1CQUdyQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLENBQUM7d0RBb0IvRSxTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbGxhcHNlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbGxhcHNlJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSwgQVhUYWJTdHJpcENoYW5nZWRFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUsIEFYUExheW91dENvbnRleHRFdmVudCwgQVhQV2lkZ2V0Q29uZmlnLCBBWFBXaWRnZXROb2RlLCBBWFBXaWRnZXRQcm9wZXJ0eSwgQVhQV2lkZ2V0UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgZWZmZWN0LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIGlucHV0LCBtb2RlbCwgT3V0cHV0LCBzaWduYWwsIHVudHJhY2tlZCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNhcGl0YWxpemUsIGNsb25lRGVlcCwgZ2V0LCBpc0FycmF5LCBpc0VtcHR5LCBpc05pbCwgbWVyZ2UsIHNldCwgc29ydEJ5LCB1bmlvbkJ5IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRQcm9wZXJ0eVRhYiB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZ3JvdXBzOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgaXNDb2xsYXBzZWQ6IGJvb2xlYW47XG4gICAgcHJvcHM6IEFYUFdpZGdldFByb3BlcnR5W107XG4gIH1bXTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldFByb3BlcnRpZXNDaGFuZ2VkRXZlbnQge1xuICB2YWx1ZXM6IGFueSxcbiAgbW9kZTogJ2luaXQnIHwgJ3VwZGF0ZSdcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLXdpZGdldC1wcm9wZXJ0eS12aWV3ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vd2lkZ2V0LXByb3BlcnR5LXZpZXdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3dpZGdldC1wcm9wZXJ0eS12aWV3ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFYQ29sbGFwc2VNb2R1bGUsIEFYVGFic01vZHVsZSwgQVhQTGF5b3V0QnVpbGRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFdpZGdldFByb3BlcnR5Vmlld2VyQ29tcG9uZW50IHtcbiAgd2lkZ2V0ID0gaW5wdXQucmVxdWlyZWQ8QVhQV2lkZ2V0Tm9kZT4oKTtcblxuICBwcml2YXRlIHdpZGdldFJlZ2lzdHJ5U2VydmljZSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCBjdXJyZW50VGFiSW5kZXg6IFdyaXRhYmxlU2lnbmFsPG51bWJlcj4gPSBzaWduYWwoMCk7XG5cbiAgcHJvdGVjdGVkIGNvbmZpZyA9IHNpZ25hbDxBWFBXaWRnZXRDb25maWcgfCBudWxsPihudWxsKTtcbiAgcHJvdGVjdGVkIGFsbFBvcGVydGllczogQVhQV2lkZ2V0UHJvcGVydHlbXSA9IFtdO1xuXG4gIHByb3RlY3RlZCB0YWJzID0gc2lnbmFsPEFYUFdpZGdldFByb3BlcnR5VGFiW10+KFtdKTtcblxuICBwcm90ZWN0ZWQgZ3JvdXBzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLnRhYnMoKS5sZW5ndGggPyB0aGlzLnRhYnMoKVt0aGlzLmN1cnJlbnRUYWJJbmRleCgpXS5ncm91cHMgOiBbXTtcbiAgfSk7XG5cblxuICBAT3V0cHV0KClcbiAgb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxBWFBXaWRnZXRQcm9wZXJ0aWVzQ2hhbmdlZEV2ZW50PigpO1xuXG4gIHByb3RlY3RlZCBjb250ZXh0ID0gc2lnbmFsPGFueT4oe30pO1xuXG5cbiAgcHJvdGVjdGVkIGluaXRpYWxDb250ZXh0OiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy53aWRnZXQoKSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy53aWRnZXRSZWdpc3RyeVNlcnZpY2UucmVzb2x2ZSh0aGlzLndpZGdldCgpPy50eXBlKTtcbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgIHRoaXMuaW5pdGlhbENvbnRleHQgPSB7fTtcbiAgICAgICAgICB0aGlzLmNvbmZpZy5zZXQoY29uZmlnKTtcbiAgICAgICAgICB0aGlzLmZpbGxUYWJzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgSW52YWxpZCB3aWRnZXQgbmFtZTogJHt0aGlzLndpZGdldCgpfWApO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsbFRhYnMoKSB7XG4gICAgY29uc3QgdGFiczogQVhQV2lkZ2V0UHJvcGVydHlUYWJbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2dlbmVyYWwnLFxuICAgICAgICB0aXRsZTogJ0dlbmVyYWwnLFxuICAgICAgICBncm91cHM6IFtdLFxuICAgICAgfSxcbiAgICBdO1xuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuY29uZmlnKCk/LmNvbXBvbmVudHMgPz8ge30pLmZvckVhY2goKGMpID0+IHtcbiAgICAgIGlmIChjWzFdLmNvbXBvbmVudCAhPSBudWxsICYmIGNbMV0ucHJvcGVydGllcz8ubGVuZ3RoKSB7XG4gICAgICAgIHRhYnMucHVzaCh7IG5hbWU6IGNbMF0sIHRpdGxlOiBjYXBpdGFsaXplKGNbMF0pLCBncm91cHM6IFtdIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vL1xuICAgIHRoaXMuYWxsUG9wZXJ0aWVzID0gW107XG4gICAgLy8vXG4gICAgdGFicy5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgIGNvbnN0IHByb3BzID1cbiAgICAgICAgdGFiLm5hbWUgPT0gJ2dlbmVyYWwnXG4gICAgICAgICAgPyB0aGlzLmNvbmZpZygpPy5wcm9wZXJ0aWVzID8/IFtdXG4gICAgICAgICAgOiAoKCh0aGlzLmNvbmZpZygpPy5jb21wb25lbnRzIGFzIGFueSlbdGFiLm5hbWVdPy5wcm9wZXJ0aWVzIGFzIEFYUFdpZGdldFByb3BlcnR5W10pID8/IFtdKS5maWx0ZXIoKGMpID0+IGMudmlzaWJsZSk7XG4gICAgICAvL1xuICAgICAgdGhpcy5hbGxQb3BlcnRpZXMucHVzaCguLi5wcm9wcyk7XG4gICAgICB0YWIuZ3JvdXBzID0gdW5pb25CeShcbiAgICAgICAgc29ydEJ5KFxuICAgICAgICAgIHByb3BzLm1hcCgocGcpID0+ICh7XG4gICAgICAgICAgICBpc0NvbGxhcHNlZDogZmFsc2UsXG4gICAgICAgICAgICBuYW1lOiBwZy5ncm91cC5uYW1lLFxuICAgICAgICAgICAgdGl0bGU6IHBnLmdyb3VwLnRpdGxlLFxuICAgICAgICAgICAgcHJvcHM6IHNvcnRCeShcbiAgICAgICAgICAgICAgcHJvcHMuZmlsdGVyKChwKSA9PiBwLmdyb3VwLm5hbWUgPT0gcGcuZ3JvdXAubmFtZSksXG4gICAgICAgICAgICAgICd0aXRsZSdcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSkpLFxuICAgICAgICAgICd0aXRsZSdcbiAgICAgICAgKSxcbiAgICAgICAgJ25hbWUnXG4gICAgICApO1xuICAgIH0pO1xuICAgIHRoaXMudGFicy5zZXQodGFicy5maWx0ZXIoKGMpID0+IGMuZ3JvdXBzLmxlbmd0aCkpO1xuICAgIC8vXG4gICAgdGhpcy5pbml0aWFsQ29udGV4dCA9IHRoaXMuYWxsUG9wZXJ0aWVzXG4gICAgICAuZmlsdGVyKFxuICAgICAgICAoYykgPT5cbiAgICAgICAgICAoIWlzQXJyYXkoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSAmJiAhaXNOaWwoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSkgfHwgKGlzQXJyYXkoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSAmJiAhaXNFbXB0eShjLnNjaGVtYS5kZWZhdWx0VmFsdWUpKVxuICAgICAgKVxuICAgICAgLnJlZHVjZSgoYWNjLCBjKSA9PiB7XG4gICAgICAgIHNldChhY2MsIGMuc2NoZW1hLmludGVyZmFjZS5wYXRoLCBjLnNjaGVtYS5kZWZhdWx0VmFsdWUpOyAvLyBVc2UgbG9kYXNoJ3Mgc2V0XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSk7XG4gICAgLy9cbiAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0LnNldChtZXJnZShjbG9uZURlZXAodGhpcy5pbml0aWFsQ29udGV4dCksIHRoaXMud2lkZ2V0KCkpKTtcbiAgICAgIHRoaXMub25DaGFuZ2VkLmVtaXQoeyB2YWx1ZXM6IHRoaXMuY29udGV4dCgpLCBtb2RlOiAnaW5pdCcgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ29udGV4dENoYW5nZShlOiBBWFBMYXlvdXRDb250ZXh0RXZlbnQpIHtcbiAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0LnNldChlLmRhdGEpO1xuICAgIH0pO1xuICAgIHRoaXMub25DaGFuZ2VkLmVtaXQoeyB2YWx1ZXM6IGUuZGF0YSwgbW9kZTogJ3VwZGF0ZScgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlVGFiQ2hhbmdlKGV2ZW50OiBBWFRhYlN0cmlwQ2hhbmdlZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5keCA9IGV2ZW50LmluZGV4O1xuICAgIGlmICh0aGlzLmN1cnJlbnRUYWJJbmRleCgpICE9IGluZHgpIHtcbiAgICAgIHRoaXMuY3VycmVudFRhYkluZGV4LnNldChpbmR4KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxheHAtd2lkZ2V0cy1jb250YWluZXIgW2NvbnRleHRdPVwiY29udGV4dCgpXCIgKG9uQ2hhbmdlZCk9XCJoYW5kbGVDb250ZXh0Q2hhbmdlKCRldmVudClcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcGItMlwiPlxuICAgICAgICAgICAgPGF4LXRhYnMgbG9vaz1cImRlZmF1bHRcIiAob25BY3RpdmVUYWJDaGFuZ2VkKT1cImhhbmRsZVRhYkNoYW5nZSgkZXZlbnQpXCIgW2xvb2tdPVwiJ3dpdGgtbGluZSdcIj5cbiAgICAgICAgICAgICAgICBAZm9yKCB0YWIgb2YgdGFicygpO3RyYWNrICRpbmRleCl7XG4gICAgICAgICAgICAgICAgPGF4LXRhYi1pdGVtIFt0ZXh0XT1cInRhYi50aXRsZVwiIFtrZXldPVwiJGluZGV4LnRvU3RyaW5nKClcIiBbYWN0aXZlXT1cImN1cnJlbnRUYWJJbmRleCgpID09PSAkaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8L2F4LXRhYi1pdGVtPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvYXgtdGFicz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4LTEgYXgtb3ZlcmZsb3ctYXV0b1wiPlxuICAgICAgICAgICAgPGF4LWNvbGxhcHNlLWdyb3VwIGNsYXNzPVwiYXgtaC1maXRcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgICAgICAgICBAZm9yKCBncm91cCBvZiBncm91cHMoKTt0cmFjayAkaW5kZXgpe1xuICAgICAgICAgICAgICAgIDxheC1jb2xsYXBzZSBbY2FwdGlvbl09XCJncm91cC50aXRsZVwiIGxvb2s9XCJzb2xpZFwiIFsoaXNDb2xsYXBzZWQpXT1cImdyb3VwLmlzQ29sbGFwc2VkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWRpdmlkZS15XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yKCBwIG9mIGdyb3VwLnByb3BzO3RyYWNrICRpbmRleCl7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMSBheC1weS0yIGZpcnN0OmF4LXB0LTAgbGFzdDpheC1wYi0wXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1mb250LXNlbWlib2xkXCI+e3twLnRpdGxlfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmKHAuc2NoZW1hLmludGVyZmFjZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4cC13aWRnZXQtcmVuZGVyZXIgW25vZGVdPVwicC5zY2hlbWEuaW50ZXJmYWNlXCIgW21vZGVdPVwiJ2VkaXQnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9heHAtd2lkZ2V0LXJlbmRlcmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2F4LWNvbGxhcHNlPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvYXgtY29sbGFwc2UtZ3JvdXA+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9heHAtd2lkZ2V0cy1jb250YWluZXI+Il19
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByb3BlcnR5LXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL3Byb3BlcnR5LXZpZXdlci93aWRnZXQtcHJvcGVydHktdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2Rlc2lnbmVyL3NyYy9saWIvcHJvcGVydHktdmlld2VyL3dpZGdldC1wcm9wZXJ0eS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBMEIsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQTRFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0ssT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFTLEtBQUssRUFBUyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBNkIsTUFBTSxlQUFlLENBQUM7QUFDdEwsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQU8sT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7OztBQTJCN0csTUFBTSxPQUFPLGdDQUFnQztJQTBCM0M7UUF6QkEsV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWlCLENBQUM7UUFFakMsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixD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QyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsZUFBZSxDQUFDLEtBQTZCO1FBQ3JELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7OEdBckhVLGdDQUFnQztrR0FBaEMsZ0NBQWdDLGlRQ2pDN0MsdW1EQStCd0IsMkdEQVosWUFBWSw4QkFBRSxnQkFBZ0IsOGJBQUUsWUFBWSxrYUFBRSxzQkFBc0I7OzJGQUVuRSxnQ0FBZ0M7a0JBUjVDLFNBQVM7K0JBQ0UsNEJBQTRCLG1CQUdyQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLENBQUM7d0RBb0IvRSxTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbGxhcHNlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbGxhcHNlJztcbmltcG9ydCB7IEFYVGFic01vZHVsZSwgQVhUYWJTdHJpcENoYW5nZWRFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90YWJzJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUsIEFYUExheW91dENvbnRleHRFdmVudCwgQVhQV2lkZ2V0Q29uZmlnLCBBWFBXaWRnZXROb2RlLCBBWFBXaWRnZXRQcm9wZXJ0eSwgQVhQV2lkZ2V0UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgZWZmZWN0LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIGlucHV0LCBtb2RlbCwgT3V0cHV0LCBzaWduYWwsIHVudHJhY2tlZCwgdmlld0NoaWxkLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2FwaXRhbGl6ZSwgY2xvbmVEZWVwLCBnZXQsIGlzQXJyYXksIGlzRW1wdHksIGlzTmlsLCBtZXJnZSwgc2V0LCBzb3J0QnksIHVuaW9uQnkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldFByb3BlcnR5VGFiIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBncm91cHM6IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBpc0NvbGxhcHNlZDogYm9vbGVhbjtcbiAgICBwcm9wczogQVhQV2lkZ2V0UHJvcGVydHlbXTtcbiAgfVtdO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0UHJvcGVydGllc0NoYW5nZWRFdmVudCB7XG4gIHZhbHVlczogYW55LFxuICBtb2RlOiAnaW5pdCcgfCAndXBkYXRlJ1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtd2lkZ2V0LXByb3BlcnR5LXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi93aWRnZXQtcHJvcGVydHktdmlld2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2lkZ2V0LXByb3BlcnR5LXZpZXdlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhDb2xsYXBzZU1vZHVsZSwgQVhUYWJzTW9kdWxlLCBBWFBMYXlvdXRCdWlsZGVyTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV2lkZ2V0UHJvcGVydHlWaWV3ZXJDb21wb25lbnQge1xuICB3aWRnZXQgPSBpbnB1dC5yZXF1aXJlZDxBWFBXaWRnZXROb2RlPigpO1xuXG4gIHByaXZhdGUgd2lkZ2V0UmVnaXN0cnlTZXJ2aWNlID0gaW5qZWN0KEFYUFdpZGdldFJlZ2lzdHJ5U2VydmljZSk7XG5cbiAgcHJvdGVjdGVkIGN1cnJlbnRUYWJJbmRleDogV3JpdGFibGVTaWduYWw8bnVtYmVyPiA9IHNpZ25hbCgwKTtcblxuICBwcm90ZWN0ZWQgY29uZmlnID0gc2lnbmFsPEFYUFdpZGdldENvbmZpZyB8IG51bGw+KG51bGwpO1xuICBwcm90ZWN0ZWQgYWxsUG9wZXJ0aWVzOiBBWFBXaWRnZXRQcm9wZXJ0eVtdID0gW107XG5cbiAgcHJvdGVjdGVkIHRhYnMgPSBzaWduYWw8QVhQV2lkZ2V0UHJvcGVydHlUYWJbXT4oW10pO1xuXG4gIHByb3RlY3RlZCBncm91cHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMudGFicygpLmxlbmd0aCA/IHRoaXMudGFicygpW3RoaXMuY3VycmVudFRhYkluZGV4KCldLmdyb3VwcyA6IFtdO1xuICB9KTtcblxuXG4gIEBPdXRwdXQoKVxuICBvbkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFYUFdpZGdldFByb3BlcnRpZXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgcHJvdGVjdGVkIGNvbnRleHQgPSBzaWduYWw8YW55Pih7fSk7XG5cblxuICBwcm90ZWN0ZWQgaW5pdGlhbENvbnRleHQ6IGFueSA9IHt9O1xuXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KFxuICAgICAgKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMud2lkZ2V0KCkpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMud2lkZ2V0UmVnaXN0cnlTZXJ2aWNlLnJlc29sdmUodGhpcy53aWRnZXQoKT8udHlwZSk7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICB0aGlzLmluaXRpYWxDb250ZXh0ID0ge307XG4gICAgICAgICAgdGhpcy5jb25maWcuc2V0KGNvbmZpZyk7XG4gICAgICAgICAgdGhpcy5maWxsVGFicygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEludmFsaWQgd2lkZ2V0IG5hbWU6ICR7dGhpcy53aWRnZXQoKX1gKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlKHZhbHVlczogYW55KSB7XG4gICAgdGhpcy5jb250ZXh0LnNldChtZXJnZShjbG9uZURlZXAodGhpcy5jb250ZXh0KCkpLCB2YWx1ZXMpKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsbFRhYnMoKSB7XG4gICAgY29uc3QgdGFiczogQVhQV2lkZ2V0UHJvcGVydHlUYWJbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2dlbmVyYWwnLFxuICAgICAgICB0aXRsZTogJ0dlbmVyYWwnLFxuICAgICAgICBncm91cHM6IFtdLFxuICAgICAgfSxcbiAgICBdO1xuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuY29uZmlnKCk/LmNvbXBvbmVudHMgPz8ge30pLmZvckVhY2goKGMpID0+IHtcbiAgICAgIGlmIChjWzFdLmNvbXBvbmVudCAhPSBudWxsICYmIGNbMV0ucHJvcGVydGllcz8ubGVuZ3RoKSB7XG4gICAgICAgIHRhYnMucHVzaCh7IG5hbWU6IGNbMF0sIHRpdGxlOiBjYXBpdGFsaXplKGNbMF0pLCBncm91cHM6IFtdIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vL1xuICAgIHRoaXMuYWxsUG9wZXJ0aWVzID0gW107XG4gICAgLy8vXG4gICAgdGFicy5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgIGNvbnN0IHByb3BzID1cbiAgICAgICAgdGFiLm5hbWUgPT0gJ2dlbmVyYWwnXG4gICAgICAgICAgPyB0aGlzLmNvbmZpZygpPy5wcm9wZXJ0aWVzID8/IFtdXG4gICAgICAgICAgOiAoKCh0aGlzLmNvbmZpZygpPy5jb21wb25lbnRzIGFzIGFueSlbdGFiLm5hbWVdPy5wcm9wZXJ0aWVzIGFzIEFYUFdpZGdldFByb3BlcnR5W10pID8/IFtdKS5maWx0ZXIoKGMpID0+IGMudmlzaWJsZSk7XG4gICAgICAvL1xuICAgICAgdGhpcy5hbGxQb3BlcnRpZXMucHVzaCguLi5wcm9wcyk7XG4gICAgICB0YWIuZ3JvdXBzID0gdW5pb25CeShcbiAgICAgICAgc29ydEJ5KFxuICAgICAgICAgIHByb3BzLm1hcCgocGcpID0+ICh7XG4gICAgICAgICAgICBpc0NvbGxhcHNlZDogZmFsc2UsXG4gICAgICAgICAgICBuYW1lOiBwZy5ncm91cC5uYW1lLFxuICAgICAgICAgICAgdGl0bGU6IHBnLmdyb3VwLnRpdGxlLFxuICAgICAgICAgICAgcHJvcHM6IHNvcnRCeShcbiAgICAgICAgICAgICAgcHJvcHMuZmlsdGVyKChwKSA9PiBwLmdyb3VwLm5hbWUgPT0gcGcuZ3JvdXAubmFtZSksXG4gICAgICAgICAgICAgICd0aXRsZSdcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSkpLFxuICAgICAgICAgICd0aXRsZSdcbiAgICAgICAgKSxcbiAgICAgICAgJ25hbWUnXG4gICAgICApO1xuICAgIH0pO1xuICAgIHRoaXMudGFicy5zZXQodGFicy5maWx0ZXIoKGMpID0+IGMuZ3JvdXBzLmxlbmd0aCkpO1xuICAgIC8vXG4gICAgdGhpcy5pbml0aWFsQ29udGV4dCA9IHRoaXMuYWxsUG9wZXJ0aWVzXG4gICAgICAuZmlsdGVyKFxuICAgICAgICAoYykgPT5cbiAgICAgICAgICAoIWlzQXJyYXkoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSAmJiAhaXNOaWwoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSkgfHwgKGlzQXJyYXkoYy5zY2hlbWEuZGVmYXVsdFZhbHVlKSAmJiAhaXNFbXB0eShjLnNjaGVtYS5kZWZhdWx0VmFsdWUpKVxuICAgICAgKVxuICAgICAgLnJlZHVjZSgoYWNjLCBjKSA9PiB7XG4gICAgICAgIHNldChhY2MsIGMuc2NoZW1hLmludGVyZmFjZS5wYXRoLCBjLnNjaGVtYS5kZWZhdWx0VmFsdWUpOyAvLyBVc2UgbG9kYXNoJ3Mgc2V0XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSk7XG4gICAgLy9cbiAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0LnNldChtZXJnZShjbG9uZURlZXAodGhpcy5pbml0aWFsQ29udGV4dCksIHRoaXMud2lkZ2V0KCkpKTtcbiAgICAgIHRoaXMub25DaGFuZ2VkLmVtaXQoeyB2YWx1ZXM6IHRoaXMuY29udGV4dCgpLCBtb2RlOiAnaW5pdCcgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ29udGV4dENoYW5nZShlOiBBWFBMYXlvdXRDb250ZXh0RXZlbnQpIHtcbiAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0LnNldChlLmRhdGEpO1xuICAgICAgdGhpcy5vbkNoYW5nZWQuZW1pdCh7IHZhbHVlczogdGhpcy5jb250ZXh0KCksIG1vZGU6IGUuaW5pdCA/ICdpbml0JyA6ICd1cGRhdGUnIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVRhYkNoYW5nZShldmVudDogQVhUYWJTdHJpcENoYW5nZWRFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGluZHggPSBldmVudC5pbmRleDtcbiAgICBpZiAodGhpcy5jdXJyZW50VGFiSW5kZXgoKSAhPSBpbmR4KSB7XG4gICAgICB0aGlzLmN1cnJlbnRUYWJJbmRleC5zZXQoaW5keCk7XG4gICAgfVxuICB9XG59XG4iLCI8YXhwLXdpZGdldHMtY29udGFpbmVyIFtjb250ZXh0XT1cImNvbnRleHQoKVwiIChvbkNoYW5nZWQpPVwiaGFuZGxlQ29udGV4dENoYW5nZSgkZXZlbnQpXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2xcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LXBiLTJcIj5cbiAgICAgICAgICAgIDxheC10YWJzIGxvb2s9XCJkZWZhdWx0XCIgKG9uQWN0aXZlVGFiQ2hhbmdlZCk9XCJoYW5kbGVUYWJDaGFuZ2UoJGV2ZW50KVwiIFtsb29rXT1cIid3aXRoLWxpbmUnXCI+XG4gICAgICAgICAgICAgICAgQGZvciggdGFiIG9mIHRhYnMoKTt0cmFjayAkaW5kZXgpe1xuICAgICAgICAgICAgICAgIDxheC10YWItaXRlbSBbdGV4dF09XCJ0YWIudGl0bGVcIiBba2V5XT1cIiRpbmRleC50b1N0cmluZygpXCIgW2FjdGl2ZV09XCJjdXJyZW50VGFiSW5kZXgoKSA9PT0gJGluZGV4XCI+XG4gICAgICAgICAgICAgICAgPC9heC10YWItaXRlbT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2F4LXRhYnM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleC0xIGF4LW92ZXJmbG93LWF1dG9cIj5cbiAgICAgICAgICAgIDxheC1jb2xsYXBzZS1ncm91cCBjbGFzcz1cImF4LWgtZml0XCIgbG9vaz1cImJsYW5rXCI+XG4gICAgICAgICAgICAgICAgQGZvciggZ3JvdXAgb2YgZ3JvdXBzKCk7dHJhY2sgJGluZGV4KXtcbiAgICAgICAgICAgICAgICA8YXgtY29sbGFwc2UgW2NhcHRpb25dPVwiZ3JvdXAudGl0bGVcIiBsb29rPVwic29saWRcIiBbKGlzQ29sbGFwc2VkKV09XCJncm91cC5pc0NvbGxhcHNlZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1kaXZpZGUteVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciggcCBvZiBncm91cC5wcm9wczt0cmFjayAkaW5kZXgpe1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTEgYXgtcHktMiBmaXJzdDpheC1wdC0wIGxhc3Q6YXgtcGItMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtZm9udC1zZW1pYm9sZFwiPnt7cC50aXRsZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZihwLnNjaGVtYS5pbnRlcmZhY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheHAtd2lkZ2V0LXJlbmRlcmVyIFtub2RlXT1cInAuc2NoZW1hLmludGVyZmFjZVwiIFttb2RlXT1cIidlZGl0J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXhwLXdpZGdldC1yZW5kZXJlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2F4LWNvbGxhcHNlLWdyb3VwPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvYXhwLXdpZGdldHMtY29udGFpbmVyPiJdfQ==