@acorex/components 21.0.2-next.34 → 21.0.2-next.35

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 (339) hide show
  1. package/{types/acorex-components-accordion.d.ts → accordion/index.d.ts} +1 -0
  2. package/{types/acorex-components-button.d.ts → button/index.d.ts} +3 -3
  3. package/{types/acorex-components-button-group.d.ts → button-group/index.d.ts} +12 -20
  4. package/{types/acorex-components-calendar.d.ts → calendar/index.d.ts} +11 -4
  5. package/{types/acorex-components-check-box.d.ts → check-box/index.d.ts} +1 -1
  6. package/{types/acorex-components-chips.d.ts → chips/index.d.ts} +8 -3
  7. package/collapse/README.md +3 -0
  8. package/collapse/index.d.ts +174 -0
  9. package/{types/acorex-components-color-palette.d.ts → color-palette/index.d.ts} +0 -2
  10. package/{types/acorex-components-conversation2.d.ts → conversation2/index.d.ts} +667 -667
  11. package/{types/acorex-components-data-pager.d.ts → data-pager/index.d.ts} +6 -25
  12. package/{types/acorex-components-data-table.d.ts → data-table/index.d.ts} +262 -4
  13. package/{types/acorex-components-datetime-box.d.ts → datetime-box/index.d.ts} +4 -5
  14. package/drawer-legacy/README.md +3 -0
  15. package/drawer-legacy/index.d.ts +86 -0
  16. package/{types/acorex-components-dropdown-button.d.ts → dropdown-button/index.d.ts} +2 -4
  17. package/fesm2022/acorex-components-accordion.mjs +37 -32
  18. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  19. package/fesm2022/acorex-components-action-sheet.mjs +32 -32
  20. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  21. package/fesm2022/acorex-components-alert.mjs +21 -21
  22. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  23. package/fesm2022/acorex-components-aspect-ratio.mjs +6 -6
  24. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  25. package/fesm2022/acorex-components-audio-wave.mjs +14 -15
  26. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  27. package/fesm2022/acorex-components-autocomplete.mjs +16 -16
  28. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  29. package/fesm2022/acorex-components-avatar.mjs +17 -17
  30. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  31. package/fesm2022/acorex-components-badge.mjs +11 -11
  32. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  33. package/fesm2022/acorex-components-bottom-navigation.mjs +15 -15
  34. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  35. package/fesm2022/acorex-components-breadcrumbs.mjs +14 -14
  36. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  37. package/fesm2022/acorex-components-button-group.mjs +28 -63
  38. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  39. package/fesm2022/acorex-components-button.mjs +31 -31
  40. package/fesm2022/acorex-components-button.mjs.map +1 -1
  41. package/fesm2022/acorex-components-calendar.mjs +59 -41
  42. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  43. package/fesm2022/acorex-components-check-box.mjs +12 -12
  44. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  45. package/fesm2022/acorex-components-chips.mjs +15 -13
  46. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  47. package/fesm2022/acorex-components-circular-progress.mjs +16 -18
  48. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  49. package/fesm2022/acorex-components-code-editor.mjs +30 -30
  50. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  51. package/fesm2022/acorex-components-collapse.mjs +366 -0
  52. package/fesm2022/acorex-components-collapse.mjs.map +1 -0
  53. package/fesm2022/acorex-components-color-box.mjs +16 -16
  54. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  55. package/fesm2022/acorex-components-color-palette.mjs +44 -85
  56. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  57. package/fesm2022/acorex-components-command.mjs +20 -20
  58. package/fesm2022/acorex-components-command.mjs.map +1 -1
  59. package/fesm2022/acorex-components-comment.mjs +37 -37
  60. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  61. package/fesm2022/acorex-components-conversation.mjs +119 -119
  62. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  63. package/fesm2022/acorex-components-conversation2.mjs +708 -720
  64. package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
  65. package/fesm2022/acorex-components-cron-job.mjs +60 -60
  66. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  67. package/fesm2022/acorex-components-data-list.mjs +34 -34
  68. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  69. package/fesm2022/acorex-components-data-pager.mjs +85 -94
  70. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  71. package/fesm2022/acorex-components-data-table.mjs +516 -69
  72. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  73. package/fesm2022/acorex-components-datetime-box.mjs +27 -27
  74. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  75. package/fesm2022/acorex-components-datetime-input.mjs +24 -24
  76. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  77. package/fesm2022/acorex-components-datetime-picker.mjs +30 -30
  78. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  79. package/fesm2022/acorex-components-decorators.mjs +49 -56
  80. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  81. package/fesm2022/acorex-components-dialog.mjs +16 -16
  82. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  83. package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
  84. package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
  85. package/fesm2022/acorex-components-drawer.mjs +26 -25
  86. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  87. package/fesm2022/acorex-components-dropdown-button.mjs +11 -19
  88. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  89. package/fesm2022/acorex-components-dropdown.mjs +22 -22
  90. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  91. package/fesm2022/acorex-components-editor.mjs +15 -15
  92. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  93. package/fesm2022/acorex-components-fab.mjs +18 -18
  94. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  95. package/fesm2022/acorex-components-file-explorer.mjs +307 -0
  96. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -0
  97. package/fesm2022/acorex-components-flow-chart.mjs +63 -80
  98. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  99. package/fesm2022/acorex-components-form.mjs +39 -47
  100. package/fesm2022/acorex-components-form.mjs.map +1 -1
  101. package/fesm2022/acorex-components-grid-layout-builder.mjs +19 -18
  102. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  103. package/fesm2022/acorex-components-image-editor.mjs +93 -93
  104. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  105. package/fesm2022/acorex-components-image.mjs +12 -12
  106. package/fesm2022/acorex-components-image.mjs.map +1 -1
  107. package/fesm2022/acorex-components-json-viewer.mjs +13 -13
  108. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  109. package/fesm2022/acorex-components-kanban.mjs +26 -28
  110. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  111. package/fesm2022/acorex-components-kbd.mjs +17 -17
  112. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  113. package/fesm2022/acorex-components-label.mjs +9 -9
  114. package/fesm2022/acorex-components-label.mjs.map +1 -1
  115. package/fesm2022/acorex-components-list.mjs +16 -16
  116. package/fesm2022/acorex-components-list.mjs.map +1 -1
  117. package/fesm2022/acorex-components-loading-dialog.mjs +20 -20
  118. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  119. package/fesm2022/acorex-components-loading.mjs +23 -23
  120. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  121. package/fesm2022/acorex-components-map.mjs +47 -47
  122. package/fesm2022/acorex-components-map.mjs.map +1 -1
  123. package/fesm2022/acorex-components-media-viewer.mjs +85 -85
  124. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  125. package/fesm2022/acorex-components-menu.mjs +49 -49
  126. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  127. package/fesm2022/{acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs → acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs} +29 -29
  128. package/fesm2022/acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs.map +1 -0
  129. package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs +212 -0
  130. package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs.map +1 -0
  131. package/fesm2022/acorex-components-modal.mjs +1 -1
  132. package/fesm2022/acorex-components-navbar.mjs +9 -9
  133. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  134. package/fesm2022/acorex-components-notification.mjs +29 -29
  135. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  136. package/fesm2022/acorex-components-number-box-legacy.mjs +430 -0
  137. package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
  138. package/fesm2022/acorex-components-number-box.mjs +21 -21
  139. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  140. package/fesm2022/acorex-components-otp.mjs +13 -13
  141. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  142. package/fesm2022/acorex-components-page.mjs +10 -10
  143. package/fesm2022/acorex-components-page.mjs.map +1 -1
  144. package/fesm2022/acorex-components-paint.mjs +65 -60
  145. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  146. package/fesm2022/acorex-components-password-box.mjs +39 -31
  147. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  148. package/fesm2022/acorex-components-pdf-reader.mjs +10 -10
  149. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  150. package/fesm2022/acorex-components-phone-box.mjs +20 -20
  151. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  152. package/fesm2022/acorex-components-picker.mjs +33 -33
  153. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  154. package/fesm2022/acorex-components-popover.mjs +11 -11
  155. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  156. package/fesm2022/acorex-components-popup.mjs +25 -25
  157. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  158. package/fesm2022/acorex-components-progress-bar.mjs +9 -11
  159. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  160. package/fesm2022/acorex-components-qrcode.mjs +21 -38
  161. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  162. package/fesm2022/acorex-components-query-builder.mjs +15 -16
  163. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  164. package/fesm2022/acorex-components-radio.mjs +9 -10
  165. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  166. package/fesm2022/acorex-components-rail-navigation.mjs +51 -53
  167. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  168. package/fesm2022/acorex-components-range-slider.mjs +36 -36
  169. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  170. package/fesm2022/acorex-components-rate-picker.mjs +42 -27
  171. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  172. package/fesm2022/acorex-components-rest-api-generator.mjs +39 -39
  173. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  174. package/fesm2022/acorex-components-result.mjs +8 -8
  175. package/fesm2022/acorex-components-result.mjs.map +1 -1
  176. package/fesm2022/acorex-components-routing-progress.mjs +8 -8
  177. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  178. package/fesm2022/acorex-components-rrule.mjs +38 -38
  179. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  180. package/fesm2022/acorex-components-scheduler-picker.mjs +234 -228
  181. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  182. package/fesm2022/acorex-components-scheduler.mjs +406 -334
  183. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  184. package/fesm2022/acorex-components-scss.mjs +22 -0
  185. package/fesm2022/acorex-components-scss.mjs.map +1 -0
  186. package/fesm2022/acorex-components-search-box.mjs +13 -19
  187. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  188. package/fesm2022/acorex-components-select-box.mjs +25 -27
  189. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  190. package/fesm2022/acorex-components-selection-list-2.mjs +15 -15
  191. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  192. package/fesm2022/acorex-components-selection-list.mjs +12 -12
  193. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  194. package/fesm2022/acorex-components-side-menu.mjs +44 -44
  195. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  196. package/fesm2022/acorex-components-skeleton.mjs +8 -8
  197. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  198. package/fesm2022/acorex-components-slider.mjs +13 -13
  199. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  200. package/fesm2022/acorex-components-sliding-item.mjs +28 -28
  201. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  202. package/fesm2022/acorex-components-step-wizard.mjs +41 -41
  203. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  204. package/fesm2022/acorex-components-switch.mjs +14 -14
  205. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  206. package/fesm2022/acorex-components-tabs.mjs +22 -22
  207. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  208. package/fesm2022/acorex-components-tag-box.mjs +20 -20
  209. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  210. package/fesm2022/acorex-components-tag.mjs +10 -10
  211. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  212. package/fesm2022/acorex-components-text-area.mjs +9 -9
  213. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  214. package/fesm2022/acorex-components-text-box.mjs +14 -14
  215. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  216. package/fesm2022/acorex-components-time-duration.mjs +31 -29
  217. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  218. package/fesm2022/acorex-components-time-line.mjs +21 -21
  219. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  220. package/fesm2022/acorex-components-toast.mjs +27 -27
  221. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  222. package/fesm2022/acorex-components-toolbar.mjs +14 -14
  223. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  224. package/fesm2022/acorex-components-tooltip.mjs +17 -17
  225. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  226. package/fesm2022/acorex-components-tree-view-legacy.mjs +511 -0
  227. package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -0
  228. package/fesm2022/acorex-components-tree-view.mjs +57 -57
  229. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  230. package/fesm2022/acorex-components-uploader.mjs +18 -18
  231. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  232. package/fesm2022/acorex-components-video-player.mjs +10 -10
  233. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  234. package/fesm2022/acorex-components-wysiwyg.mjs +58 -58
  235. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  236. package/fesm2022/acorex-components.mjs.map +1 -1
  237. package/file-explorer/README.md +3 -0
  238. package/file-explorer/index.d.ts +103 -0
  239. package/{types/acorex-components-flow-chart.d.ts → flow-chart/index.d.ts} +0 -4
  240. package/{types/acorex-components-form.d.ts → form/index.d.ts} +24 -24
  241. package/{types/acorex-components-grid-layout-builder.d.ts → grid-layout-builder/index.d.ts} +1 -0
  242. package/{types/acorex-components-loading.d.ts → loading/index.d.ts} +1 -1
  243. package/{types/acorex-components-menu.d.ts → menu/index.d.ts} +6 -6
  244. package/number-box-legacy/README.md +3 -0
  245. package/number-box-legacy/index.d.ts +191 -0
  246. package/package.json +138 -115
  247. package/{types/acorex-components-paint.d.ts → paint/index.d.ts} +6 -1
  248. package/{types/acorex-components-qrcode.d.ts → qrcode/index.d.ts} +0 -1
  249. package/{types/acorex-components-radio.d.ts → radio/index.d.ts} +1 -1
  250. package/{types/acorex-components-rate-picker.d.ts → rate-picker/index.d.ts} +15 -5
  251. package/{types/acorex-components-scheduler.d.ts → scheduler/index.d.ts} +20 -2
  252. package/{types/acorex-components-scheduler-picker.d.ts → scheduler-picker/index.d.ts} +81 -82
  253. package/scss/README.md +3 -0
  254. package/scss/index.d.ts +10 -0
  255. package/{types/acorex-components-select-box.d.ts → select-box/index.d.ts} +1 -2
  256. package/{types/acorex-components-slider.d.ts → slider/index.d.ts} +2 -2
  257. package/{types/acorex-components-tabs.d.ts → tabs/index.d.ts} +1 -1
  258. package/{types/acorex-components-tag.d.ts → tag/index.d.ts} +3 -3
  259. package/tree-view-legacy/README.md +3 -0
  260. package/tree-view-legacy/index.d.ts +184 -0
  261. package/fesm2022/acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs.map +0 -1
  262. package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs +0 -214
  263. package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs.map +0 -1
  264. package/{types/acorex-components-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
  265. package/{types/acorex-components-alert.d.ts → alert/index.d.ts} +0 -0
  266. package/{types/acorex-components-aspect-ratio.d.ts → aspect-ratio/index.d.ts} +0 -0
  267. package/{types/acorex-components-audio-wave.d.ts → audio-wave/index.d.ts} +0 -0
  268. package/{types/acorex-components-autocomplete.d.ts → autocomplete/index.d.ts} +0 -0
  269. package/{types/acorex-components-avatar.d.ts → avatar/index.d.ts} +0 -0
  270. package/{types/acorex-components-badge.d.ts → badge/index.d.ts} +0 -0
  271. package/{types/acorex-components-bottom-navigation.d.ts → bottom-navigation/index.d.ts} +0 -0
  272. package/{types/acorex-components-breadcrumbs.d.ts → breadcrumbs/index.d.ts} +0 -0
  273. package/{types/acorex-components-circular-progress.d.ts → circular-progress/index.d.ts} +0 -0
  274. package/{types/acorex-components-code-editor.d.ts → code-editor/index.d.ts} +0 -0
  275. package/{types/acorex-components-color-box.d.ts → color-box/index.d.ts} +0 -0
  276. package/{types/acorex-components-command.d.ts → command/index.d.ts} +0 -0
  277. package/{types/acorex-components-comment.d.ts → comment/index.d.ts} +0 -0
  278. package/{types/acorex-components-conversation.d.ts → conversation/index.d.ts} +0 -0
  279. package/{types/acorex-components-cron-job.d.ts → cron-job/index.d.ts} +0 -0
  280. package/{types/acorex-components-data-list.d.ts → data-list/index.d.ts} +0 -0
  281. package/{types/acorex-components-datetime-input.d.ts → datetime-input/index.d.ts} +0 -0
  282. package/{types/acorex-components-datetime-picker.d.ts → datetime-picker/index.d.ts} +0 -0
  283. package/{types/acorex-components-decorators.d.ts → decorators/index.d.ts} +0 -0
  284. package/{types/acorex-components-dialog.d.ts → dialog/index.d.ts} +0 -0
  285. package/{types/acorex-components-drawer.d.ts → drawer/index.d.ts} +0 -0
  286. package/{types/acorex-components-dropdown.d.ts → dropdown/index.d.ts} +0 -0
  287. package/{types/acorex-components-editor.d.ts → editor/index.d.ts} +0 -0
  288. package/{types/acorex-components-fab.d.ts → fab/index.d.ts} +0 -0
  289. package/{types/acorex-components-image.d.ts → image/index.d.ts} +0 -0
  290. package/{types/acorex-components-image-editor.d.ts → image-editor/index.d.ts} +0 -0
  291. package/{types/acorex-components.d.ts → index.d.ts} +0 -0
  292. package/{types/acorex-components-json-viewer.d.ts → json-viewer/index.d.ts} +0 -0
  293. package/{types/acorex-components-kanban.d.ts → kanban/index.d.ts} +0 -0
  294. package/{types/acorex-components-kbd.d.ts → kbd/index.d.ts} +0 -0
  295. package/{types/acorex-components-label.d.ts → label/index.d.ts} +0 -0
  296. package/{types/acorex-components-list.d.ts → list/index.d.ts} +0 -0
  297. package/{types/acorex-components-loading-dialog.d.ts → loading-dialog/index.d.ts} +0 -0
  298. package/{types/acorex-components-map.d.ts → map/index.d.ts} +0 -0
  299. package/{types/acorex-components-media-viewer.d.ts → media-viewer/index.d.ts} +0 -0
  300. package/{types/acorex-components-modal.d.ts → modal/index.d.ts} +0 -0
  301. package/{types/acorex-components-navbar.d.ts → navbar/index.d.ts} +0 -0
  302. package/{types/acorex-components-notification.d.ts → notification/index.d.ts} +0 -0
  303. package/{types/acorex-components-number-box.d.ts → number-box/index.d.ts} +0 -0
  304. package/{types/acorex-components-otp.d.ts → otp/index.d.ts} +0 -0
  305. package/{types/acorex-components-page.d.ts → page/index.d.ts} +0 -0
  306. package/{types/acorex-components-password-box.d.ts → password-box/index.d.ts} +0 -0
  307. package/{types/acorex-components-pdf-reader.d.ts → pdf-reader/index.d.ts} +0 -0
  308. package/{types/acorex-components-phone-box.d.ts → phone-box/index.d.ts} +0 -0
  309. package/{types/acorex-components-picker.d.ts → picker/index.d.ts} +0 -0
  310. package/{types/acorex-components-popover.d.ts → popover/index.d.ts} +0 -0
  311. package/{types/acorex-components-popup.d.ts → popup/index.d.ts} +0 -0
  312. package/{types/acorex-components-progress-bar.d.ts → progress-bar/index.d.ts} +0 -0
  313. package/{types/acorex-components-query-builder.d.ts → query-builder/index.d.ts} +1 -1
  314. /package/{types/acorex-components-rail-navigation.d.ts → rail-navigation/index.d.ts} +0 -0
  315. /package/{types/acorex-components-range-slider.d.ts → range-slider/index.d.ts} +0 -0
  316. /package/{types/acorex-components-rest-api-generator.d.ts → rest-api-generator/index.d.ts} +0 -0
  317. /package/{types/acorex-components-result.d.ts → result/index.d.ts} +0 -0
  318. /package/{types/acorex-components-routing-progress.d.ts → routing-progress/index.d.ts} +0 -0
  319. /package/{types/acorex-components-rrule.d.ts → rrule/index.d.ts} +0 -0
  320. /package/{types/acorex-components-search-box.d.ts → search-box/index.d.ts} +0 -0
  321. /package/{types/acorex-components-selection-list.d.ts → selection-list/index.d.ts} +0 -0
  322. /package/{types/acorex-components-selection-list-2.d.ts → selection-list-2/index.d.ts} +0 -0
  323. /package/{types/acorex-components-side-menu.d.ts → side-menu/index.d.ts} +0 -0
  324. /package/{types/acorex-components-skeleton.d.ts → skeleton/index.d.ts} +0 -0
  325. /package/{types/acorex-components-sliding-item.d.ts → sliding-item/index.d.ts} +0 -0
  326. /package/{types/acorex-components-step-wizard.d.ts → step-wizard/index.d.ts} +0 -0
  327. /package/{types/acorex-components-switch.d.ts → switch/index.d.ts} +0 -0
  328. /package/{types/acorex-components-tag-box.d.ts → tag-box/index.d.ts} +0 -0
  329. /package/{types/acorex-components-text-area.d.ts → text-area/index.d.ts} +0 -0
  330. /package/{types/acorex-components-text-box.d.ts → text-box/index.d.ts} +0 -0
  331. /package/{types/acorex-components-time-duration.d.ts → time-duration/index.d.ts} +0 -0
  332. /package/{types/acorex-components-time-line.d.ts → time-line/index.d.ts} +0 -0
  333. /package/{types/acorex-components-toast.d.ts → toast/index.d.ts} +0 -0
  334. /package/{types/acorex-components-toolbar.d.ts → toolbar/index.d.ts} +0 -0
  335. /package/{types/acorex-components-tooltip.d.ts → tooltip/index.d.ts} +0 -0
  336. /package/{types/acorex-components-tree-view.d.ts → tree-view/index.d.ts} +0 -0
  337. /package/{types/acorex-components-uploader.d.ts → uploader/index.d.ts} +0 -0
  338. /package/{types/acorex-components-video-player.d.ts → video-player/index.d.ts} +0 -0
  339. /package/{types/acorex-components-wysiwyg.d.ts → wysiwyg/index.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-popover.mjs","sources":["../../../../packages/components/popover/src/lib/popover.component.ts","../../../../packages/components/popover/src/lib/popover.component.html","../../../../packages/components/popover/src/lib/popover.module.ts","../../../../packages/components/popover/src/acorex-components-popover.ts"],"sourcesContent":["import {\n AXComponent,\n AXConnectedPosition,\n AXEvent,\n AXFocusableComponent,\n AXPlacementType,\n MXBaseComponent,\n convertToPlacement,\n} from '@acorex/cdk/common';\nimport { AXOverlayRef, AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentType } from '@acorex/core/components';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n DOCUMENT,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n PLATFORM_ID,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n afterNextRender,\n inject,\n input,\n} from '@angular/core';\nimport { Subject, Subscription, delay, fromEvent } from 'rxjs';\n\nexport type AXPopoverOpenTrigger = 'manual' | 'click' | 'hover' | 'toggle';\n\nexport type AXPopoverCloseTrigger = 'manual' | 'clickOut' | 'leave';\n\n/**\n * @category Components\n * A popover component with custom encapsulation and change detection settings.\n */\n@Component({\n selector: 'ax-popover',\n templateUrl: './popover.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: AXFocusableComponent, useExisting: AXPopoverComponent },\n { provide: AXComponent, useExisting: AXPopoverComponent },\n ],\n})\nexport class AXPopoverComponent extends MXBaseComponent implements OnDestroy {\n private platform = inject(AXPlatform);\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private overlayService = inject(AXOverlayService);\n\n private onKeyDownHandler: ((e: KeyboardEvent) => void) | null = null;\n\n /** @ignore */\n private _overlayRef: AXOverlayRef<unknown> | null = null;\n\n /** @ignore */\n private _lastActiveElement: Element | null = null;\n\n /** @ignore */\n private _targetEvents: {\n mouseenter?: Subscription;\n mouseleave?: Subscription;\n click?: Subscription;\n } = {};\n\n /** @ignore */\n private _outsideClickHandler: ((e: MouseEvent) => void) | null = null;\n\n /** @ignore */\n private _scrollHandler: ((e: Event) => void) | null = null;\n\n /** @ignore */\n private _scrollListenerActive = false;\n\n /** @ignore */\n private _scrollActivationFrame: number | null = null;\n\n /** @ignore */\n private resizeObserver: ResizeObserver | null = null;\n /** @ignore */\n private resize$ = new Subject<void>();\n\n /** @ignore */\n private _disabled = false;\n\n readonly width = input('fit-content');\n\n readonly disablePanelClass = input(false);\n\n private translateService = inject(AXTranslationService);\n\n #init = afterNextRender(() => {\n const lang = this.translateService.getActiveLang();\n\n let defaultPlacementDirection: AXPlacementType;\n\n if (lang === 'en-US') {\n defaultPlacementDirection = 'bottom-start';\n } else {\n defaultPlacementDirection = 'bottom-end';\n }\n\n if (!this.placement) this.placement = defaultPlacementDirection;\n\n const converted = this.placement\n ? convertToPlacement(this.placement)\n : convertToPlacement(defaultPlacementDirection);\n\n this._placements = converted;\n\n this.resize$.subscribe(() => {\n if (this.isOpen) {\n this.updatePosition();\n }\n });\n });\n\n /**\n * Gets or sets whether the popover is disabled.\n * When disabled, the popover will not open and will close if already open.\n */\n @Input()\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(v: boolean) {\n this._disabled = v;\n if (this._disabled && this.isOpen) {\n this.close();\n }\n }\n\n /** @ignore */\n private _offsetX = 0;\n\n /**\n * Gets or sets the horizontal offset and updates it accordingly.\n */\n @Input()\n public get offsetX(): number {\n return this._offsetX;\n }\n\n /**\n * Sets the horizontal offset and updates it with a callback.\n */\n public set offsetX(v: number) {\n this.setOption({\n name: 'offsetX',\n value: v,\n afterCallback: () => {\n this.updateOffset();\n },\n });\n }\n\n /** @ignore */\n private _offsetY = 0;\n\n /**\n * Vertical offset with update callback.\n */\n @Input()\n public get offsetY(): number {\n return this._offsetY;\n }\n\n /**\n * Sets the vertical offset and updates the component position.\n */\n public set offsetY(v: number) {\n this.setOption({\n name: 'offsetY',\n value: v,\n afterCallback: () => {\n this.updateOffset();\n },\n });\n }\n\n /** @ignore */\n private _target!: Element;\n\n /**\n * Gets or sets the target element, supporting Element, ElementRef, or MXBaseComponent.\n */\n @Input()\n public get target(): Element | ElementRef | MXBaseComponent {\n return this._target;\n }\n\n /**\n * Sets the target element and updates event bindings.\n */\n public set target(v: Element | ElementRef | MXBaseComponent) {\n this.removeTargetEvents();\n if (v instanceof Element) this._target = v;\n else if (v instanceof ElementRef) this._target = v.nativeElement;\n else if (typeof v?.getHostElement == 'function') this._target = v.getHostElement();\n this.bindTargetEvents();\n }\n\n /** @ignore */\n private _placements: AXConnectedPosition[] = [];\n\n /** @ignore */\n private _placement: AXPlacementType = null;\n\n /**\n * Gets the current placement of the component.\n */\n @Input()\n public get placement(): AXPlacementType {\n return this._placement;\n }\n\n /**\n * Sets the component's placement and updates its position settings.\n */\n public set placement(v: AXPlacementType) {\n this.setOption({\n name: 'placement',\n value: v,\n afterCallback: (o, n) => {\n if (!n) return;\n const converted = convertToPlacement(n);\n this._placements = converted;\n this.updateOffset();\n if (this._overlayRef) {\n this._overlayRef.updatePosition();\n }\n },\n });\n }\n\n /** @ignore */\n private _componentRef: ComponentRef<unknown> | null = null;\n\n /**\n * Gets the reference to the component.\n */\n public get componentRef(): ComponentRef<unknown> | null {\n return this._componentRef;\n }\n\n /**\n * Holds the context data for the component.\n */\n public context: unknown;\n\n /** @ignore */\n @ViewChild('baseTemplate', { static: true })\n _baseTemplate: TemplateRef<unknown>;\n\n /**\n * Defines the content to be displayed, which can be a template or a component.\n */\n @Input()\n content: TemplateRef<unknown> | AXComponentType<unknown>;\n\n /** @ignore */\n private _openOn: AXPopoverOpenTrigger = 'toggle';\n\n /**\n * Gets or sets the trigger for opening the popover and updates target events.\n */\n @Input()\n public get openOn(): AXPopoverOpenTrigger {\n return this._openOn;\n }\n\n /**\n * Sets the trigger for opening the popover and updates target events.\n */\n public set openOn(v: AXPopoverOpenTrigger) {\n this.setOption({\n name: 'openOn',\n value: v,\n afterCallback: () => {\n this.bindTargetEvents();\n },\n });\n }\n\n /** @ignore */\n private _closeOn: AXPopoverCloseTrigger = 'clickOut';\n\n /**\n * Gets or sets the trigger for closing the popover.\n */\n @Input()\n public get closeOn(): AXPopoverCloseTrigger {\n return this._closeOn;\n }\n\n /**\n * Sets the trigger for closing the popover and rebinds target events.\n */\n public set closeOn(v: AXPopoverCloseTrigger) {\n this.setOption({\n name: 'closeOn',\n value: v,\n afterCallback: () => {\n this.bindTargetEvents();\n },\n });\n }\n\n /**\n * Determines if a backdrop should be displayed behind the popover.\n */\n @Input()\n hasBackdrop = false;\n\n /**\n * Delay in milliseconds before the popover opens after a trigger event.\n */\n private _openAfter = 200;\n\n @Input()\n public get openAfter() {\n return this._openAfter;\n }\n\n public set openAfter(value) {\n this._openAfter = value;\n this.bindTargetEvents();\n }\n\n /**\n * Delay in milliseconds before the popover closes after a trigger event.\n */\n private _closeAfter = 200;\n\n @Input()\n public get closeAfter() {\n return this._closeAfter;\n }\n\n public set closeAfter(value) {\n this._closeAfter = value;\n this.bindTargetEvents();\n }\n\n /**\n * Whether to close the popover when scrolling occurs outside of it.\n * Scrolling within the popover (or any nested overlay) will not close it.\n */\n @Input()\n closeOnScroll = true;\n\n /**\n * CSS class to apply to the backdrop element.\n */\n @Input()\n backdropClass: string;\n\n /**\n * CSS class to apply to the panel element.\n */\n @Input()\n panelClass: string;\n\n /**\n * Enables or disables adaptivity.\n */\n @Input()\n adaptivityEnabled = false;\n\n /**\n * Emits when the component is opened.\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emits when the component is closed.\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /** @ignore */\n private _emitOnOpenedEvent() {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /** @ignore */\n private _emitOnClosedEvent() {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /** @ignore */\n private removeTargetEvents(): void {\n Object.entries(this._targetEvents).forEach((e) => {\n e[1]?.unsubscribe();\n });\n this._targetEvents = {};\n }\n\n /** @ignore */\n private bindTargetEvents() {\n this.removeTargetEvents();\n if (!this._target) return;\n const targetMouseEnter$ = fromEvent(this._target, 'mouseenter');\n const targetMouseLeave$ = fromEvent(this._target, 'mouseleave');\n\n if (this.openOn === 'hover') {\n this._targetEvents.mouseenter = targetMouseEnter$.pipe(delay(this.openAfter)).subscribe(() => {\n this.open();\n });\n }\n\n if (this.closeOn === 'leave') {\n this._targetEvents.mouseleave = targetMouseLeave$.pipe(delay(this.closeAfter)).subscribe(() => {\n this.close();\n });\n }\n\n if (this.openOn === 'click' || this.openOn === 'toggle') {\n const click$ = fromEvent<MouseEvent>(this._target, 'click');\n this._targetEvents.click = click$.subscribe(() => {\n this.openOn === 'toggle' ? this.toggle() : this.open();\n });\n }\n }\n\n /** @ignore */\n private bindOverlayEvents() {\n const overlayElement = this._overlayRef?.overlayElement;\n if (!overlayElement) return;\n overlayElement.style.pointerEvents = 'none';\n\n // Outside click handler\n if (this.closeOn === 'clickOut') {\n this._outsideClickHandler = (e: MouseEvent) => {\n const el = e.target as Element;\n if (this.isOpen && !this._target?.contains(el) && !overlayElement?.contains(el)) {\n // Check if the click is inside a child overlay (e.g., selectbox dropdown)\n // Child overlays have a higher z-index than this popover\n if (this.isInsideChildOverlay(el)) {\n return;\n }\n this.close();\n }\n };\n this.document.addEventListener('mousedown', this._outsideClickHandler);\n }\n\n // Scroll listener to close popover when scrolling outside\n this.setupScrollListener(overlayElement);\n\n // Resize observer\n this.initializeResizeObserver();\n\n setTimeout(() => {\n overlayElement.style.pointerEvents = 'auto';\n }, this.openAfter);\n }\n\n /** @ignore */\n private removeOverlayEvents() {\n if (this._outsideClickHandler) {\n this.document.removeEventListener('mousedown', this._outsideClickHandler);\n this._outsideClickHandler = null;\n }\n this.removeScrollListener();\n }\n\n /** @ignore */\n private setupScrollListener(overlayElement: HTMLElement) {\n if (!this.closeOnScroll || !isPlatformBrowser(this.platformID)) {\n return;\n }\n\n this._scrollHandler = (e: Event) => {\n // Ignore scroll events fired during the initial open frame\n if (!this._scrollListenerActive || !this.isOpen) {\n return;\n }\n\n // Resolve the scroll target. For document/window scrolls, e.target is the document.\n const target = e.target as Node | null;\n\n // Don't close when scrolling occurs inside the popover itself\n if (target && overlayElement.contains(target)) {\n return;\n }\n\n // Don't close when scrolling occurs inside a nested/child overlay\n // (e.g., a selectbox dropdown opened from within this popover).\n if (target instanceof Element && this.isInsideChildOverlay(target)) {\n return;\n }\n\n this.close();\n };\n\n // Capture phase so we receive scroll events from any scrollable ancestor\n this.document.addEventListener('scroll', this._scrollHandler, true);\n\n // Delay activation to ignore layout/scroll events fired right after opening\n this._scrollActivationFrame = requestAnimationFrame(() => {\n this._scrollListenerActive = true;\n this._scrollActivationFrame = null;\n });\n }\n\n /** @ignore */\n private removeScrollListener() {\n if (this._scrollActivationFrame !== null) {\n cancelAnimationFrame(this._scrollActivationFrame);\n this._scrollActivationFrame = null;\n }\n if (this._scrollHandler) {\n this.document.removeEventListener('scroll', this._scrollHandler, true);\n this._scrollHandler = null;\n }\n this._scrollListenerActive = false;\n }\n\n /**\n * Checks whether the given element lives inside a child overlay\n * (an overlay stacked on top of this popover, e.g. a selectbox dropdown).\n * Child overlays are identified by having a higher z-index than this popover's overlay.\n * @ignore\n */\n private isInsideChildOverlay(element: Element): boolean {\n const overlayElement = this._overlayRef?.overlayElement;\n if (!overlayElement) return false;\n\n const otherOverlay = element.closest('.ax-overlay-container');\n if (!otherOverlay || otherOverlay === overlayElement) return false;\n\n const popoverZIndex = parseInt(overlayElement.style.zIndex || '0', 10);\n const otherZIndex = parseInt((otherOverlay as HTMLElement).style.zIndex || '0', 10);\n\n return otherZIndex > popoverZIndex;\n }\n\n /** @ignore */\n private handleOverlayDisposed() {\n // Called when overlay is disposed externally (e.g., by scroll)\n this.disconnectResizeObserver();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n this._overlayRef = null;\n this._componentRef = null;\n this.restoreFocus();\n this._emitOnClosedEvent();\n }\n\n /**\n * Toggles the component's open state.\n */\n toggle() {\n this.isOpen ? this.close() : this.open();\n }\n\n /**\n * Closes the component if it's open, detaches the overlay, restores focus, and emits the closed event.\n */\n close() {\n if (!this.isOpen) {\n return;\n }\n this.disconnectResizeObserver();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n\n this._componentRef = null;\n this.restoreFocus();\n this._emitOnClosedEvent();\n }\n\n /**\n * Opens the component if it's not already open, saves focus, opens the overlay, and emits the opened event.\n */\n async open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.addKeyDownListener();\n this.saveFocus();\n await this.openOverlayInternal();\n this._emitOnOpenedEvent();\n }\n\n /** @ignore */\n private addKeyDownListener() {\n if (isPlatformBrowser(this.platformID)) {\n this.onKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n this.close();\n }\n };\n this.document.addEventListener('keydown', this.onKeyDownHandler);\n }\n }\n\n /** @ignore */\n private removeKeyDownListener() {\n if (this.onKeyDownHandler) {\n this.document.removeEventListener('keydown', this.onKeyDownHandler);\n this.onKeyDownHandler = null;\n }\n }\n\n /** @ignore */\n private saveFocus() {\n if (isPlatformBrowser(this.platformID)) {\n this._lastActiveElement = this.document.activeElement as Element;\n }\n }\n\n /** @ignore */\n private restoreFocus() {\n if (this._lastActiveElement instanceof HTMLElement) {\n this._lastActiveElement?.focus?.();\n }\n }\n\n /** @ignore */\n private async openOverlayInternal() {\n const targetRef = this._target;\n if (!targetRef) return;\n\n // Build panel classes\n const panelClasses = ['animate-fadeIn', 'animate-faster'];\n if (this.platform.isDark()) {\n panelClasses.push('ax-dark');\n }\n if (this.panelClass) {\n panelClasses.push(this.panelClass);\n }\n\n // Determine content to display\n let contentToRender: TemplateRef<unknown> | AXComponentType<unknown>;\n let inputs: Record<string, unknown> | undefined;\n\n if (this.content instanceof TemplateRef) {\n contentToRender = this.content;\n } else if (typeof this.content === 'function') {\n contentToRender = this.content;\n inputs = this.context as Record<string, unknown>;\n } else {\n contentToRender = this._baseTemplate;\n }\n\n // Create the overlay\n this._overlayRef = await this.overlayService.create(contentToRender, {\n inputs,\n anchorOptions: {\n anchor: targetRef as HTMLElement,\n placement: this._placement,\n offsetX: this._offsetX,\n offsetY: this._offsetY,\n autoFlip: true,\n },\n panelClass: !this.disablePanelClass() ? panelClasses : '',\n width: this.width(),\n onDispose: () => this.handleOverlayDisposed(),\n actionSheetStyle: this.adaptivityEnabled,\n });\n\n // Store component ref if it's a component\n if (this._overlayRef.instance && 'instance' in this._overlayRef.instance) {\n this._componentRef = this._overlayRef.instance as unknown as ComponentRef<unknown>;\n if (this.context && this._componentRef.instance) {\n Object.assign(this._componentRef.instance, this.context);\n }\n }\n\n // Bind overlay events\n this.bindOverlayEvents();\n }\n\n /**\n * Checks if the overlay is currently open.\n * @returns {boolean}\n */\n get isOpen(): boolean {\n return this._overlayRef !== null;\n }\n\n /** @ignore */\n private updateOffset() {\n this._placements?.forEach((p) => {\n if (this._offsetY != null) p.offsetY = this._offsetY;\n if (this._offsetX != null) p.offsetX = this._offsetX;\n });\n }\n\n /**\n * Updates the position of the overlay and focuses on it.\n */\n public updatePosition(): void {\n this._overlayRef?.updatePosition();\n this.focus();\n }\n\n /**\n * Focuses the overlay element.\n */\n public focus(): void {\n // Optional focus behavior\n }\n\n /**\n * Brings this popover to the front of all other overlays.\n */\n public bringToFront(): void {\n this._overlayRef?.bringToFront();\n }\n\n /** @ignore */\n private initializeResizeObserver(): void {\n if (!isPlatformBrowser(this.platformID) || !this._overlayRef?.overlayElement) {\n return;\n }\n this.disconnectResizeObserver();\n this.resizeObserver = new ResizeObserver(() => {\n this.resize$.next();\n });\n this.resizeObserver.observe(this._overlayRef.overlayElement);\n }\n\n /** @ignore */\n private disconnectResizeObserver(): void {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n }\n\n /** @ignore */\n ngOnDestroy(): void {\n this.disconnectResizeObserver();\n this.resize$.complete();\n this.removeTargetEvents();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n }\n}\n","<ng-template #baseTemplate>\n <ng-content></ng-content>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXPopoverComponent } from './popover.component';\n\n@NgModule({\n imports: [CommonModule, AXPopoverComponent],\n exports: [AXPopoverComponent],\n providers: [],\n})\nexport class AXPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-popover.mjs","sources":["../tmp-esm2022/popover/lib/popover.component.js","../tmp-esm2022/popover/lib/popover.module.js","../tmp-esm2022/popover/acorex-components-popover.js"],"sourcesContent":["import { AXComponent, AXFocusableComponent, MXBaseComponent, convertToPlacement, } from '@acorex/cdk/common';\nimport { AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { isPlatformBrowser } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, DOCUMENT, ElementRef, EventEmitter, Input, Output, PLATFORM_ID, TemplateRef, ViewChild, ViewEncapsulation, afterNextRender, inject, input, } from '@angular/core';\nimport { Subject, delay, fromEvent } from 'rxjs';\nimport * as i0 from \"@angular/core\";\n/**\n * @category Components\n * A popover component with custom encapsulation and change detection settings.\n */\nexport class AXPopoverComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.platform = inject(AXPlatform);\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n this.overlayService = inject(AXOverlayService);\n this.onKeyDownHandler = null;\n /** @ignore */\n this._overlayRef = null;\n /** @ignore */\n this._lastActiveElement = null;\n /** @ignore */\n this._targetEvents = {};\n /** @ignore */\n this._outsideClickHandler = null;\n /** @ignore */\n this._scrollHandler = null;\n /** @ignore */\n this._scrollListenerActive = false;\n /** @ignore */\n this._scrollActivationFrame = null;\n /** @ignore */\n this.resizeObserver = null;\n /** @ignore */\n this.resize$ = new Subject();\n /** @ignore */\n this._disabled = false;\n this.width = input('fit-content', ...(ngDevMode ? [{ debugName: \"width\" }] : []));\n this.disablePanelClass = input(false, ...(ngDevMode ? [{ debugName: \"disablePanelClass\" }] : []));\n this.translateService = inject(AXTranslationService);\n this.#init = afterNextRender(() => {\n const lang = this.translateService.getActiveLang();\n let defaultPlacementDirection;\n if (lang === 'en-US') {\n defaultPlacementDirection = 'bottom-start';\n }\n else {\n defaultPlacementDirection = 'bottom-end';\n }\n if (!this.placement)\n this.placement = defaultPlacementDirection;\n const converted = this.placement\n ? convertToPlacement(this.placement)\n : convertToPlacement(defaultPlacementDirection);\n this._placements = converted;\n this.resize$.subscribe(() => {\n if (this.isOpen) {\n this.updatePosition();\n }\n });\n });\n /** @ignore */\n this._offsetX = 0;\n /** @ignore */\n this._offsetY = 0;\n /** @ignore */\n this._placements = [];\n /** @ignore */\n this._placement = null;\n /** @ignore */\n this._componentRef = null;\n /** @ignore */\n this._openOn = 'toggle';\n /** @ignore */\n this._closeOn = 'clickOut';\n /**\n * Determines if a backdrop should be displayed behind the popover.\n */\n this.hasBackdrop = false;\n /**\n * Delay in milliseconds before the popover opens after a trigger event.\n */\n this._openAfter = 200;\n /**\n * Delay in milliseconds before the popover closes after a trigger event.\n */\n this._closeAfter = 200;\n /**\n * Whether to close the popover when scrolling occurs outside of it.\n * Scrolling within the popover (or any nested overlay) will not close it.\n */\n this.closeOnScroll = true;\n /**\n * Enables or disables adaptivity.\n */\n this.adaptivityEnabled = false;\n /**\n * Emits when the component is opened.\n * @event\n */\n this.onOpened = new EventEmitter();\n /**\n * Emits when the component is closed.\n * @event\n */\n this.onClosed = new EventEmitter();\n }\n #init;\n /**\n * Gets or sets whether the popover is disabled.\n * When disabled, the popover will not open and will close if already open.\n */\n get disabled() {\n return this._disabled;\n }\n set disabled(v) {\n this._disabled = v;\n if (this._disabled && this.isOpen) {\n this.close();\n }\n }\n /**\n * Gets or sets the horizontal offset and updates it accordingly.\n */\n get offsetX() {\n return this._offsetX;\n }\n /**\n * Sets the horizontal offset and updates it with a callback.\n */\n set offsetX(v) {\n this.setOption({\n name: 'offsetX',\n value: v,\n afterCallback: () => {\n this.updateOffset();\n },\n });\n }\n /**\n * Vertical offset with update callback.\n */\n get offsetY() {\n return this._offsetY;\n }\n /**\n * Sets the vertical offset and updates the component position.\n */\n set offsetY(v) {\n this.setOption({\n name: 'offsetY',\n value: v,\n afterCallback: () => {\n this.updateOffset();\n },\n });\n }\n /**\n * Gets or sets the target element, supporting Element, ElementRef, or MXBaseComponent.\n */\n get target() {\n return this._target;\n }\n /**\n * Sets the target element and updates event bindings.\n */\n set target(v) {\n this.removeTargetEvents();\n if (v instanceof Element)\n this._target = v;\n else if (v instanceof ElementRef)\n this._target = v.nativeElement;\n else if (typeof v?.getHostElement == 'function')\n this._target = v.getHostElement();\n this.bindTargetEvents();\n }\n /**\n * Gets the current placement of the component.\n */\n get placement() {\n return this._placement;\n }\n /**\n * Sets the component's placement and updates its position settings.\n */\n set placement(v) {\n this.setOption({\n name: 'placement',\n value: v,\n afterCallback: (o, n) => {\n if (!n)\n return;\n const converted = convertToPlacement(n);\n this._placements = converted;\n this.updateOffset();\n if (this._overlayRef) {\n this._overlayRef.updatePosition();\n }\n },\n });\n }\n /**\n * Gets the reference to the component.\n */\n get componentRef() {\n return this._componentRef;\n }\n /**\n * Gets or sets the trigger for opening the popover and updates target events.\n */\n get openOn() {\n return this._openOn;\n }\n /**\n * Sets the trigger for opening the popover and updates target events.\n */\n set openOn(v) {\n this.setOption({\n name: 'openOn',\n value: v,\n afterCallback: () => {\n this.bindTargetEvents();\n },\n });\n }\n /**\n * Gets or sets the trigger for closing the popover.\n */\n get closeOn() {\n return this._closeOn;\n }\n /**\n * Sets the trigger for closing the popover and rebinds target events.\n */\n set closeOn(v) {\n this.setOption({\n name: 'closeOn',\n value: v,\n afterCallback: () => {\n this.bindTargetEvents();\n },\n });\n }\n get openAfter() {\n return this._openAfter;\n }\n set openAfter(value) {\n this._openAfter = value;\n this.bindTargetEvents();\n }\n get closeAfter() {\n return this._closeAfter;\n }\n set closeAfter(value) {\n this._closeAfter = value;\n this.bindTargetEvents();\n }\n /** @ignore */\n _emitOnOpenedEvent() {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n /** @ignore */\n _emitOnClosedEvent() {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n /** @ignore */\n removeTargetEvents() {\n Object.entries(this._targetEvents).forEach((e) => {\n e[1]?.unsubscribe();\n });\n this._targetEvents = {};\n }\n /** @ignore */\n bindTargetEvents() {\n this.removeTargetEvents();\n if (!this._target)\n return;\n const targetMouseEnter$ = fromEvent(this._target, 'mouseenter');\n const targetMouseLeave$ = fromEvent(this._target, 'mouseleave');\n if (this.openOn === 'hover') {\n this._targetEvents.mouseenter = targetMouseEnter$.pipe(delay(this.openAfter)).subscribe(() => {\n this.open();\n });\n }\n if (this.closeOn === 'leave') {\n this._targetEvents.mouseleave = targetMouseLeave$.pipe(delay(this.closeAfter)).subscribe(() => {\n this.close();\n });\n }\n if (this.openOn === 'click' || this.openOn === 'toggle') {\n const click$ = fromEvent(this._target, 'click');\n this._targetEvents.click = click$.subscribe(() => {\n this.openOn === 'toggle' ? this.toggle() : this.open();\n });\n }\n }\n /** @ignore */\n bindOverlayEvents() {\n const overlayElement = this._overlayRef?.overlayElement;\n if (!overlayElement)\n return;\n overlayElement.style.pointerEvents = 'none';\n // Outside click handler\n if (this.closeOn === 'clickOut') {\n this._outsideClickHandler = (e) => {\n const el = e.target;\n if (this.isOpen && !this._target?.contains(el) && !overlayElement?.contains(el)) {\n // Check if the click is inside a child overlay (e.g., selectbox dropdown)\n // Child overlays have a higher z-index than this popover\n if (this.isInsideChildOverlay(el)) {\n return;\n }\n this.close();\n }\n };\n this.document.addEventListener('mousedown', this._outsideClickHandler);\n }\n // Scroll listener to close popover when scrolling outside\n this.setupScrollListener(overlayElement);\n // Resize observer\n this.initializeResizeObserver();\n setTimeout(() => {\n overlayElement.style.pointerEvents = 'auto';\n }, this.openAfter);\n }\n /** @ignore */\n removeOverlayEvents() {\n if (this._outsideClickHandler) {\n this.document.removeEventListener('mousedown', this._outsideClickHandler);\n this._outsideClickHandler = null;\n }\n this.removeScrollListener();\n }\n /** @ignore */\n setupScrollListener(overlayElement) {\n if (!this.closeOnScroll || !isPlatformBrowser(this.platformID)) {\n return;\n }\n this._scrollHandler = (e) => {\n // Ignore scroll events fired during the initial open frame\n if (!this._scrollListenerActive || !this.isOpen) {\n return;\n }\n // Resolve the scroll target. For document/window scrolls, e.target is the document.\n const target = e.target;\n // Don't close when scrolling occurs inside the popover itself\n if (target && overlayElement.contains(target)) {\n return;\n }\n // Don't close when scrolling occurs inside a nested/child overlay\n // (e.g., a selectbox dropdown opened from within this popover).\n if (target instanceof Element && this.isInsideChildOverlay(target)) {\n return;\n }\n this.close();\n };\n // Capture phase so we receive scroll events from any scrollable ancestor\n this.document.addEventListener('scroll', this._scrollHandler, true);\n // Delay activation to ignore layout/scroll events fired right after opening\n this._scrollActivationFrame = requestAnimationFrame(() => {\n this._scrollListenerActive = true;\n this._scrollActivationFrame = null;\n });\n }\n /** @ignore */\n removeScrollListener() {\n if (this._scrollActivationFrame !== null) {\n cancelAnimationFrame(this._scrollActivationFrame);\n this._scrollActivationFrame = null;\n }\n if (this._scrollHandler) {\n this.document.removeEventListener('scroll', this._scrollHandler, true);\n this._scrollHandler = null;\n }\n this._scrollListenerActive = false;\n }\n /**\n * Checks whether the given element lives inside a child overlay\n * (an overlay stacked on top of this popover, e.g. a selectbox dropdown).\n * Child overlays are identified by having a higher z-index than this popover's overlay.\n * @ignore\n */\n isInsideChildOverlay(element) {\n const overlayElement = this._overlayRef?.overlayElement;\n if (!overlayElement)\n return false;\n const otherOverlay = element.closest('.ax-overlay-container');\n if (!otherOverlay || otherOverlay === overlayElement)\n return false;\n const popoverZIndex = parseInt(overlayElement.style.zIndex || '0', 10);\n const otherZIndex = parseInt(otherOverlay.style.zIndex || '0', 10);\n return otherZIndex > popoverZIndex;\n }\n /** @ignore */\n handleOverlayDisposed() {\n // Called when overlay is disposed externally (e.g., by scroll)\n this.disconnectResizeObserver();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n this._overlayRef = null;\n this._componentRef = null;\n this.restoreFocus();\n this._emitOnClosedEvent();\n }\n /**\n * Toggles the component's open state.\n */\n toggle() {\n this.isOpen ? this.close() : this.open();\n }\n /**\n * Closes the component if it's open, detaches the overlay, restores focus, and emits the closed event.\n */\n close() {\n if (!this.isOpen) {\n return;\n }\n this.disconnectResizeObserver();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n this._componentRef = null;\n this.restoreFocus();\n this._emitOnClosedEvent();\n }\n /**\n * Opens the component if it's not already open, saves focus, opens the overlay, and emits the opened event.\n */\n async open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.addKeyDownListener();\n this.saveFocus();\n await this.openOverlayInternal();\n this._emitOnOpenedEvent();\n }\n /** @ignore */\n addKeyDownListener() {\n if (isPlatformBrowser(this.platformID)) {\n this.onKeyDownHandler = (e) => {\n if (e.key === 'Escape') {\n this.close();\n }\n };\n this.document.addEventListener('keydown', this.onKeyDownHandler);\n }\n }\n /** @ignore */\n removeKeyDownListener() {\n if (this.onKeyDownHandler) {\n this.document.removeEventListener('keydown', this.onKeyDownHandler);\n this.onKeyDownHandler = null;\n }\n }\n /** @ignore */\n saveFocus() {\n if (isPlatformBrowser(this.platformID)) {\n this._lastActiveElement = this.document.activeElement;\n }\n }\n /** @ignore */\n restoreFocus() {\n if (this._lastActiveElement instanceof HTMLElement) {\n this._lastActiveElement?.focus?.();\n }\n }\n /** @ignore */\n async openOverlayInternal() {\n const targetRef = this._target;\n if (!targetRef)\n return;\n // Build panel classes\n const panelClasses = ['ax-animate-fadeIn', 'ax-animate-faster'];\n if (this.platform.isDark()) {\n panelClasses.push('ax-dark');\n }\n if (this.panelClass) {\n panelClasses.push(this.panelClass);\n }\n // Determine content to display\n let contentToRender;\n let inputs;\n if (this.content instanceof TemplateRef) {\n contentToRender = this.content;\n }\n else if (typeof this.content === 'function') {\n contentToRender = this.content;\n inputs = this.context;\n }\n else {\n contentToRender = this._baseTemplate;\n }\n // Create the overlay\n this._overlayRef = await this.overlayService.create(contentToRender, {\n inputs,\n anchorOptions: {\n anchor: targetRef,\n placement: this._placement,\n offsetX: this._offsetX,\n offsetY: this._offsetY,\n autoFlip: true,\n },\n panelClass: !this.disablePanelClass() ? panelClasses : '',\n width: this.width(),\n onDispose: () => this.handleOverlayDisposed(),\n actionSheetStyle: this.adaptivityEnabled,\n });\n // Store component ref if it's a component\n if (this._overlayRef.instance && 'instance' in this._overlayRef.instance) {\n this._componentRef = this._overlayRef.instance;\n if (this.context && this._componentRef.instance) {\n Object.assign(this._componentRef.instance, this.context);\n }\n }\n // Bind overlay events\n this.bindOverlayEvents();\n }\n /**\n * Checks if the overlay is currently open.\n * @returns {boolean}\n */\n get isOpen() {\n return this._overlayRef !== null;\n }\n /** @ignore */\n updateOffset() {\n this._placements?.forEach((p) => {\n if (this._offsetY != null)\n p.offsetY = this._offsetY;\n if (this._offsetX != null)\n p.offsetX = this._offsetX;\n });\n }\n /**\n * Updates the position of the overlay and focuses on it.\n */\n updatePosition() {\n this._overlayRef?.updatePosition();\n this.focus();\n }\n /**\n * Focuses the overlay element.\n */\n focus() {\n // Optional focus behavior\n }\n /**\n * Brings this popover to the front of all other overlays.\n */\n bringToFront() {\n this._overlayRef?.bringToFront();\n }\n /** @ignore */\n initializeResizeObserver() {\n if (!isPlatformBrowser(this.platformID) || !this._overlayRef?.overlayElement) {\n return;\n }\n this.disconnectResizeObserver();\n this.resizeObserver = new ResizeObserver(() => {\n this.resize$.next();\n });\n this.resizeObserver.observe(this._overlayRef.overlayElement);\n }\n /** @ignore */\n disconnectResizeObserver() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n }\n /** @ignore */\n ngOnDestroy() {\n this.disconnectResizeObserver();\n this.resize$.complete();\n this.removeTargetEvents();\n this.removeOverlayEvents();\n this.removeKeyDownListener();\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._overlayRef = null;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.3.3\", type: AXPopoverComponent, isStandalone: true, selector: \"ax-popover\", inputs: { width: { classPropertyName: \"width\", publicName: \"width\", isSignal: true, isRequired: false, transformFunction: null }, disablePanelClass: { classPropertyName: \"disablePanelClass\", publicName: \"disablePanelClass\", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, offsetX: { classPropertyName: \"offsetX\", publicName: \"offsetX\", isSignal: false, isRequired: false, transformFunction: null }, offsetY: { classPropertyName: \"offsetY\", publicName: \"offsetY\", isSignal: false, isRequired: false, transformFunction: null }, target: { classPropertyName: \"target\", publicName: \"target\", isSignal: false, isRequired: false, transformFunction: null }, placement: { classPropertyName: \"placement\", publicName: \"placement\", isSignal: false, isRequired: false, transformFunction: null }, content: { classPropertyName: \"content\", publicName: \"content\", isSignal: false, isRequired: false, transformFunction: null }, openOn: { classPropertyName: \"openOn\", publicName: \"openOn\", isSignal: false, isRequired: false, transformFunction: null }, closeOn: { classPropertyName: \"closeOn\", publicName: \"closeOn\", isSignal: false, isRequired: false, transformFunction: null }, hasBackdrop: { classPropertyName: \"hasBackdrop\", publicName: \"hasBackdrop\", isSignal: false, isRequired: false, transformFunction: null }, openAfter: { classPropertyName: \"openAfter\", publicName: \"openAfter\", isSignal: false, isRequired: false, transformFunction: null }, closeAfter: { classPropertyName: \"closeAfter\", publicName: \"closeAfter\", isSignal: false, isRequired: false, transformFunction: null }, closeOnScroll: { classPropertyName: \"closeOnScroll\", publicName: \"closeOnScroll\", isSignal: false, isRequired: false, transformFunction: null }, backdropClass: { classPropertyName: \"backdropClass\", publicName: \"backdropClass\", isSignal: false, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: \"panelClass\", publicName: \"panelClass\", isSignal: false, isRequired: false, transformFunction: null }, adaptivityEnabled: { classPropertyName: \"adaptivityEnabled\", publicName: \"adaptivityEnabled\", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onOpened: \"onOpened\", onClosed: \"onClosed\" }, providers: [\n { provide: AXFocusableComponent, useExisting: AXPopoverComponent },\n { provide: AXComponent, useExisting: AXPopoverComponent },\n ], viewQueries: [{ propertyName: \"_baseTemplate\", first: true, predicate: [\"baseTemplate\"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: \"<ng-template #baseTemplate>\\n <ng-content></ng-content>\\n</ng-template>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n { provide: AXFocusableComponent, useExisting: AXPopoverComponent },\n { provide: AXComponent, useExisting: AXPopoverComponent },\n ], template: \"<ng-template #baseTemplate>\\n <ng-content></ng-content>\\n</ng-template>\\n\" }]\n }], propDecorators: { disabled: [{\n type: Input\n }], offsetX: [{\n type: Input\n }], offsetY: [{\n type: Input\n }], target: [{\n type: Input\n }], placement: [{\n type: Input\n }], _baseTemplate: [{\n type: ViewChild,\n args: ['baseTemplate', { static: true }]\n }], content: [{\n type: Input\n }], openOn: [{\n type: Input\n }], closeOn: [{\n type: Input\n }], hasBackdrop: [{\n type: Input\n }], openAfter: [{\n type: Input\n }], closeAfter: [{\n type: Input\n }], closeOnScroll: [{\n type: Input\n }], backdropClass: [{\n type: Input\n }], panelClass: [{\n type: Input\n }], adaptivityEnabled: [{\n type: Input\n }], onOpened: [{\n type: Output\n }], onClosed: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvc3JjL2xpYi9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcG9wb3Zlci9zcmMvbGliL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFdBQVcsRUFHWCxvQkFBb0IsRUFFcEIsZUFBZSxFQUNmLGtCQUFrQixHQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBZ0IsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsUUFBUSxFQUNSLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixXQUFXLEVBQ1gsV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsZUFBZSxFQUNmLE1BQU0sRUFDTixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNL0Q7OztHQUdHO0FBV0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGVBQWU7SUFWdkQ7O1FBV1UsYUFBUSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGVBQVUsR0FBRyxNQUFN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T04saUJBQWlCO3NCQURoQixLQUFLO2dCQVFOLFFBQVE7c0JBRFAsTUFBTTtnQkFRUCxRQUFRO3NCQURQLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBWENvbXBvbmVudCxcbiAgQVhDb25uZWN0ZWRQb3NpdGlvbixcbiAgQVhFdmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYUGxhY2VtZW50VHlwZSxcbiAgTVhCYXNlQ29tcG9uZW50LFxuICBjb252ZXJ0VG9QbGFjZW1lbnQsXG59IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWE92ZXJsYXlSZWYsIEFYT3ZlcmxheVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEFYQ29tcG9uZW50VHlwZSB9IGZyb20gJ0BhY29yZXgvY29yZS9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYUGxhdGZvcm0gfSBmcm9tICdAYWNvcmV4L2NvcmUvcGxhdGZvcm0nO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBET0NVTUVOVCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFBMQVRGT1JNX0lELFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBpbmplY3QsXG4gIGlucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgZGVsYXksIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBBWFBvcG92ZXJPcGVuVHJpZ2dlciA9ICdtYW51YWwnIHwgJ2NsaWNrJyB8ICdob3ZlcicgfCAndG9nZ2xlJztcblxuZXhwb3J0IHR5cGUgQVhQb3BvdmVyQ2xvc2VUcmlnZ2VyID0gJ21hbnVhbCcgfCAnY2xpY2tPdXQnIHwgJ2xlYXZlJztcblxuLyoqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICogQSBwb3BvdmVyIGNvbXBvbmVudCB3aXRoIGN1c3RvbSBlbmNhcHN1bGF0aW9uIGFuZCBjaGFuZ2UgZGV0ZWN0aW9uIHNldHRpbmdzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1wb3BvdmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBBWEZvY3VzYWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYUG9wb3ZlckNvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFBvcG92ZXJDb21wb25lbnQgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBwbGF0Zm9ybSA9IGluamVjdChBWFBsYXRmb3JtKTtcbiAgcHJpdmF0ZSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcGxhdGZvcm1JRCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHByaXZhdGUgb3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoQVhPdmVybGF5U2VydmljZSk7XG5cbiAgcHJpdmF0ZSBvbktleURvd25IYW5kbGVyOiAoKGU6IEtleWJvYXJkRXZlbnQpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogQVhPdmVybGF5UmVmPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfbGFzdEFjdGl2ZUVsZW1lbnQ6IEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF90YXJnZXRFdmVudHM6IHtcbiAgICBtb3VzZWVudGVyPzogU3Vic2NyaXB0aW9uO1xuICAgIG1vdXNlbGVhdmU/OiBTdWJzY3JpcHRpb247XG4gICAgY2xpY2s/OiBTdWJzY3JpcHRpb247XG4gIH0gPSB7fTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9vdXRzaWRlQ2xpY2tIYW5kbGVyOiAoKGU6IE1vdXNlRXZlbnQpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfc2Nyb2xsSGFuZGxlcjogKChlOiBFdmVudCkgPT4gdm9pZCkgfCBudWxsID0gbnVsbDtcblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9zY3JvbGxMaXN0ZW5lckFjdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX3Njcm9sbEFjdGl2YXRpb25GcmFtZTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZXNpemVPYnNlcnZlcjogUmVzaXplT2JzZXJ2ZXIgfCBudWxsID0gbnVsbDtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZXNpemUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoJ2ZpdC1jb250ZW50Jyk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZVBhbmVsQ2xhc3MgPSBpbnB1dChmYWxzZSk7XG5cbiAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICAjaW5pdCA9IGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgY29uc3QgbGFuZyA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXRBY3RpdmVMYW5nKCk7XG5cbiAgICBsZXQgZGVmYXVsdFBsYWNlbWVudERpcmVjdGlvbjogQVhQbGFjZW1lbnRUeXBlO1xuXG4gICAgaWYgKGxhbmcgPT09ICdlbi1VUycpIHtcbiAgICAgIGRlZmF1bHRQbGFjZW1lbnREaXJlY3Rpb24gPSAnYm90dG9tLXN0YXJ0JztcbiAgICB9IGVsc2Uge1xuICAgICAgZGVmYXVsdFBsYWNlbWVudERpcmVjdGlvbiA9ICdib3R0b20tZW5kJztcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucGxhY2VtZW50KSB0aGlzLnBsYWNlbWVudCA9IGRlZmF1bHRQbGFjZW1lbnREaXJlY3Rpb247XG5cbiAgICBjb25zdCBjb252ZXJ0ZWQgPSB0aGlzLnBsYWNlbWVudFxuICAgICAgPyBjb252ZXJ0VG9QbGFjZW1lbnQodGhpcy5wbGFjZW1lbnQpXG4gICAgICA6IGNvbnZlcnRUb1BsYWNlbWVudChkZWZhdWx0UGxhY2VtZW50RGlyZWN0aW9uKTtcblxuICAgIHRoaXMuX3BsYWNlbWVudHMgPSBjb252ZXJ0ZWQ7XG5cbiAgICB0aGlzLnJlc2l6ZSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBHZXRzIG9yIHNldHMgd2hldGhlciB0aGUgcG9wb3ZlciBpcyBkaXNhYmxlZC5cbiAgICogV2hlbiBkaXNhYmxlZCwgdGhlIHBvcG92ZXIgd2lsbCBub3Qgb3BlbiBhbmQgd2lsbCBjbG9zZSBpZiBhbHJlYWR5IG9wZW4uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHY7XG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkICYmIHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfb2Zmc2V0WCA9IDA7XG5cbiAgLyoqXG4gICAqIEdldHMgb3Igc2V0cyB0aGUgaG9yaXpvbnRhbCBvZmZzZXQgYW5kIHVwZGF0ZXMgaXQgYWNjb3JkaW5nbHkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IG9mZnNldFgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fb2Zmc2V0WDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBob3Jpem9udGFsIG9mZnNldCBhbmQgdXBkYXRlcyBpdCB3aXRoIGEgY2FsbGJhY2suXG4gICAqL1xuICBwdWJsaWMgc2V0IG9mZnNldFgodjogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ29mZnNldFgnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlT2Zmc2V0KCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfb2Zmc2V0WSA9IDA7XG5cbiAgLyoqXG4gICAqIFZlcnRpY2FsIG9mZnNldCB3aXRoIHVwZGF0ZSBjYWxsYmFjay5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgb2Zmc2V0WSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9vZmZzZXRZO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZlcnRpY2FsIG9mZnNldCBhbmQgdXBkYXRlcyB0aGUgY29tcG9uZW50IHBvc2l0aW9uLlxuICAgKi9cbiAgcHVibGljIHNldCBvZmZzZXRZKHY6IG51bWJlcikge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdvZmZzZXRZJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZU9mZnNldCgpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX3RhcmdldCE6IEVsZW1lbnQ7XG5cbiAgLyoqXG4gICAqIEdldHMgb3Igc2V0cyB0aGUgdGFyZ2V0IGVsZW1lbnQsIHN1cHBvcnRpbmcgRWxlbWVudCwgRWxlbWVudFJlZiwgb3IgTVhCYXNlQ29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdldCB0YXJnZXQoKTogRWxlbWVudCB8IEVsZW1lbnRSZWYgfCBNWEJhc2VDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdGFyZ2V0IGVsZW1lbnQgYW5kIHVwZGF0ZXMgZXZlbnQgYmluZGluZ3MuXG4gICAqL1xuICBwdWJsaWMgc2V0IHRhcmdldCh2OiBFbGVtZW50IHwgRWxlbWVudFJlZiB8IE1YQmFzZUNvbXBvbmVudCkge1xuICAgIHRoaXMucmVtb3ZlVGFyZ2V0RXZlbnRzKCk7XG4gICAgaWYgKHYgaW5zdGFuY2VvZiBFbGVtZW50KSB0aGlzLl90YXJnZXQgPSB2O1xuICAgIGVsc2UgaWYgKHYgaW5zdGFuY2VvZiBFbGVtZW50UmVmKSB0aGlzLl90YXJnZXQgPSB2Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgZWxzZSBpZiAodHlwZW9mIHY/LmdldEhvc3RFbGVtZW50ID09ICdmdW5jdGlvbicpIHRoaXMuX3RhcmdldCA9IHYuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICB0aGlzLmJpbmRUYXJnZXRFdmVudHMoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX3BsYWNlbWVudHM6IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtdO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX3BsYWNlbWVudDogQVhQbGFjZW1lbnRUeXBlID0gbnVsbDtcblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBwbGFjZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgcGxhY2VtZW50KCk6IEFYUGxhY2VtZW50VHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX3BsYWNlbWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb21wb25lbnQncyBwbGFjZW1lbnQgYW5kIHVwZGF0ZXMgaXRzIHBvc2l0aW9uIHNldHRpbmdzLlxuICAgKi9cbiAgcHVibGljIHNldCBwbGFjZW1lbnQodjogQVhQbGFjZW1lbnRUeXBlKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3BsYWNlbWVudCcsXG4gICAgICB2YWx1ZTogdixcbiAgICAgIGFmdGVyQ2FsbGJhY2s6IChvLCBuKSA9PiB7XG4gICAgICAgIGlmICghbikgcmV0dXJuO1xuICAgICAgICBjb25zdCBjb252ZXJ0ZWQgPSBjb252ZXJ0VG9QbGFjZW1lbnQobik7XG4gICAgICAgIHRoaXMuX3BsYWNlbWVudHMgPSBjb252ZXJ0ZWQ7XG4gICAgICAgIHRoaXMudXBkYXRlT2Zmc2V0KCk7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogR2V0cyB0aGUgcmVmZXJlbmNlIHRvIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGNvbXBvbmVudFJlZigpOiBDb21wb25lbnRSZWY8dW5rbm93bj4gfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fY29tcG9uZW50UmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIEhvbGRzIHRoZSBjb250ZXh0IGRhdGEgZm9yIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29udGV4dDogdW5rbm93bjtcblxuICAvKiogQGlnbm9yZSAqL1xuICBAVmlld0NoaWxkKCdiYXNlVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBfYmFzZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgY29udGVudCB0byBiZSBkaXNwbGF5ZWQsIHdoaWNoIGNhbiBiZSBhIHRlbXBsYXRlIG9yIGEgY29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgY29udGVudDogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBBWENvbXBvbmVudFR5cGU8dW5rbm93bj47XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfb3Blbk9uOiBBWFBvcG92ZXJPcGVuVHJpZ2dlciA9ICd0b2dnbGUnO1xuXG4gIC8qKlxuICAgKiBHZXRzIG9yIHNldHMgdGhlIHRyaWdnZXIgZm9yIG9wZW5pbmcgdGhlIHBvcG92ZXIgYW5kIHVwZGF0ZXMgdGFyZ2V0IGV2ZW50cy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgb3Blbk9uKCk6IEFYUG9wb3Zlck9wZW5UcmlnZ2VyIHtcbiAgICByZXR1cm4gdGhpcy5fb3Blbk9uO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHRyaWdnZXIgZm9yIG9wZW5pbmcgdGhlIHBvcG92ZXIgYW5kIHVwZGF0ZXMgdGFyZ2V0IGV2ZW50cy5cbiAgICovXG4gIHB1YmxpYyBzZXQgb3Blbk9uKHY6IEFYUG9wb3Zlck9wZW5UcmlnZ2VyKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ29wZW5PbicsXG4gICAgICB2YWx1ZTogdixcbiAgICAgIGFmdGVyQ2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5iaW5kVGFyZ2V0RXZlbnRzKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY2xvc2VPbjogQVhQb3BvdmVyQ2xvc2VUcmlnZ2VyID0gJ2NsaWNrT3V0JztcblxuICAvKipcbiAgICogR2V0cyBvciBzZXRzIHRoZSB0cmlnZ2VyIGZvciBjbG9zaW5nIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBjbG9zZU9uKCk6IEFYUG9wb3ZlckNsb3NlVHJpZ2dlciB7XG4gICAgcmV0dXJuIHRoaXMuX2Nsb3NlT247XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdHJpZ2dlciBmb3IgY2xvc2luZyB0aGUgcG9wb3ZlciBhbmQgcmViaW5kcyB0YXJnZXQgZXZlbnRzLlxuICAgKi9cbiAgcHVibGljIHNldCBjbG9zZU9uKHY6IEFYUG9wb3ZlckNsb3NlVHJpZ2dlcikge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdjbG9zZU9uJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLmJpbmRUYXJnZXRFdmVudHMoKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGJhY2tkcm9wIHNob3VsZCBiZSBkaXNwbGF5ZWQgYmVoaW5kIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgaGFzQmFja2Ryb3AgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGVsYXkgaW4gbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgcG9wb3ZlciBvcGVucyBhZnRlciBhIHRyaWdnZXIgZXZlbnQuXG4gICAqL1xuICBwcml2YXRlIF9vcGVuQWZ0ZXIgPSAyMDA7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBvcGVuQWZ0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX29wZW5BZnRlcjtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgb3BlbkFmdGVyKHZhbHVlKSB7XG4gICAgdGhpcy5fb3BlbkFmdGVyID0gdmFsdWU7XG4gICAgdGhpcy5iaW5kVGFyZ2V0RXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogRGVsYXkgaW4gbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgcG9wb3ZlciBjbG9zZXMgYWZ0ZXIgYSB0cmlnZ2VyIGV2ZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfY2xvc2VBZnRlciA9IDIwMDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGNsb3NlQWZ0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nsb3NlQWZ0ZXI7XG4gIH1cblxuICBwdWJsaWMgc2V0IGNsb3NlQWZ0ZXIodmFsdWUpIHtcbiAgICB0aGlzLl9jbG9zZUFmdGVyID0gdmFsdWU7XG4gICAgdGhpcy5iaW5kVGFyZ2V0RXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0byBjbG9zZSB0aGUgcG9wb3ZlciB3aGVuIHNjcm9sbGluZyBvY2N1cnMgb3V0c2lkZSBvZiBpdC5cbiAgICogU2Nyb2xsaW5nIHdpdGhpbiB0aGUgcG9wb3ZlciAob3IgYW55IG5lc3RlZCBvdmVybGF5KSB3aWxsIG5vdCBjbG9zZSBpdC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGNsb3NlT25TY3JvbGwgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBDU1MgY2xhc3MgdG8gYXBwbHkgdG8gdGhlIGJhY2tkcm9wIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBiYWNrZHJvcENsYXNzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENTUyBjbGFzcyB0byBhcHBseSB0byB0aGUgcGFuZWwgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHBhbmVsQ2xhc3M6IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlcyBvciBkaXNhYmxlcyBhZGFwdGl2aXR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgYWRhcHRpdml0eUVuYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiB0aGUgY29tcG9uZW50IGlzIG9wZW5lZC5cbiAgICogQGV2ZW50XG4gICAqL1xuICBAT3V0cHV0KClcbiAgb25PcGVuZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNsb3NlZC5cbiAgICogQGV2ZW50XG4gICAqL1xuICBAT3V0cHV0KClcbiAgb25DbG9zZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9lbWl0T25PcGVuZWRFdmVudCgpIHtcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX2VtaXRPbkNsb3NlZEV2ZW50KCkge1xuICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZW1vdmVUYXJnZXRFdmVudHMoKTogdm9pZCB7XG4gICAgT2JqZWN0LmVudHJpZXModGhpcy5fdGFyZ2V0RXZlbnRzKS5mb3JFYWNoKChlKSA9PiB7XG4gICAgICBlWzFdPy51bnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICAgIHRoaXMuX3RhcmdldEV2ZW50cyA9IHt9O1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBiaW5kVGFyZ2V0RXZlbnRzKCkge1xuICAgIHRoaXMucmVtb3ZlVGFyZ2V0RXZlbnRzKCk7XG4gICAgaWYgKCF0aGlzLl90YXJnZXQpIHJldHVybjtcbiAgICBjb25zdCB0YXJnZXRNb3VzZUVudGVyJCA9IGZyb21FdmVudCh0aGlzLl90YXJnZXQsICdtb3VzZWVudGVyJyk7XG4gICAgY29uc3QgdGFyZ2V0TW91c2VMZWF2ZSQgPSBmcm9tRXZlbnQodGhpcy5fdGFyZ2V0LCAnbW91c2VsZWF2ZScpO1xuXG4gICAgaWYgKHRoaXMub3Blbk9uID09PSAnaG92ZXInKSB7XG4gICAgICB0aGlzLl90YXJnZXRFdmVudHMubW91c2VlbnRlciA9IHRhcmdldE1vdXNlRW50ZXIkLnBpcGUoZGVsYXkodGhpcy5vcGVuQWZ0ZXIpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNsb3NlT24gPT09ICdsZWF2ZScpIHtcbiAgICAgIHRoaXMuX3RhcmdldEV2ZW50cy5tb3VzZWxlYXZlID0gdGFyZ2V0TW91c2VMZWF2ZSQucGlwZShkZWxheSh0aGlzLmNsb3NlQWZ0ZXIpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vcGVuT24gPT09ICdjbGljaycgfHwgdGhpcy5vcGVuT24gPT09ICd0b2dnbGUnKSB7XG4gICAgICBjb25zdCBjbGljayQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fdGFyZ2V0LCAnY2xpY2snKTtcbiAgICAgIHRoaXMuX3RhcmdldEV2ZW50cy5jbGljayA9IGNsaWNrJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLm9wZW5PbiA9PT0gJ3RvZ2dsZScgPyB0aGlzLnRvZ2dsZSgpIDogdGhpcy5vcGVuKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGJpbmRPdmVybGF5RXZlbnRzKCkge1xuICAgIGNvbnN0IG92ZXJsYXlFbGVtZW50ID0gdGhpcy5fb3ZlcmxheVJlZj8ub3ZlcmxheUVsZW1lbnQ7XG4gICAgaWYgKCFvdmVybGF5RWxlbWVudCkgcmV0dXJuO1xuICAgIG92ZXJsYXlFbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnbm9uZSc7XG5cbiAgICAvLyBPdXRzaWRlIGNsaWNrIGhhbmRsZXJcbiAgICBpZiAodGhpcy5jbG9zZU9uID09PSAnY2xpY2tPdXQnKSB7XG4gICAgICB0aGlzLl9vdXRzaWRlQ2xpY2tIYW5kbGVyID0gKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgY29uc3QgZWwgPSBlLnRhcmdldCBhcyBFbGVtZW50O1xuICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgIXRoaXMuX3RhcmdldD8uY29udGFpbnMoZWwpICYmICFvdmVybGF5RWxlbWVudD8uY29udGFpbnMoZWwpKSB7XG4gICAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrIGlzIGluc2lkZSBhIGNoaWxkIG92ZXJsYXkgKGUuZy4sIHNlbGVjdGJveCBkcm9wZG93bilcbiAgICAgICAgICAvLyBDaGlsZCBvdmVybGF5cyBoYXZlIGEgaGlnaGVyIHotaW5kZXggdGhhbiB0aGlzIHBvcG92ZXJcbiAgICAgICAgICBpZiAodGhpcy5pc0luc2lkZUNoaWxkT3ZlcmxheShlbCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgdGhpcy5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLl9vdXRzaWRlQ2xpY2tIYW5kbGVyKTtcbiAgICB9XG5cbiAgICAvLyBTY3JvbGwgbGlzdGVuZXIgdG8gY2xvc2UgcG9wb3ZlciB3aGVuIHNjcm9sbGluZyBvdXRzaWRlXG4gICAgdGhpcy5zZXR1cFNjcm9sbExpc3RlbmVyKG92ZXJsYXlFbGVtZW50KTtcblxuICAgIC8vIFJlc2l6ZSBvYnNlcnZlclxuICAgIHRoaXMuaW5pdGlhbGl6ZVJlc2l6ZU9ic2VydmVyKCk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIG92ZXJsYXlFbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnYXV0byc7XG4gICAgfSwgdGhpcy5vcGVuQWZ0ZXIpO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZW1vdmVPdmVybGF5RXZlbnRzKCkge1xuICAgIGlmICh0aGlzLl9vdXRzaWRlQ2xpY2tIYW5kbGVyKSB7XG4gICAgICB0aGlzLmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMuX291dHNpZGVDbGlja0hhbmRsZXIpO1xuICAgICAgdGhpcy5fb3V0c2lkZUNsaWNrSGFuZGxlciA9IG51bGw7XG4gICAgfVxuICAgIHRoaXMucmVtb3ZlU2Nyb2xsTGlzdGVuZXIoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgc2V0dXBTY3JvbGxMaXN0ZW5lcihvdmVybGF5RWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAoIXRoaXMuY2xvc2VPblNjcm9sbCB8fCAhaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlEKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIgPSAoZTogRXZlbnQpID0+IHtcbiAgICAgIC8vIElnbm9yZSBzY3JvbGwgZXZlbnRzIGZpcmVkIGR1cmluZyB0aGUgaW5pdGlhbCBvcGVuIGZyYW1lXG4gICAgICBpZiAoIXRoaXMuX3Njcm9sbExpc3RlbmVyQWN0aXZlIHx8ICF0aGlzLmlzT3Blbikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc29sdmUgdGhlIHNjcm9sbCB0YXJnZXQuIEZvciBkb2N1bWVudC93aW5kb3cgc2Nyb2xscywgZS50YXJnZXQgaXMgdGhlIGRvY3VtZW50LlxuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgTm9kZSB8IG51bGw7XG5cbiAgICAgIC8vIERvbid0IGNsb3NlIHdoZW4gc2Nyb2xsaW5nIG9jY3VycyBpbnNpZGUgdGhlIHBvcG92ZXIgaXRzZWxmXG4gICAgICBpZiAodGFyZ2V0ICYmIG92ZXJsYXlFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBEb24ndCBjbG9zZSB3aGVuIHNjcm9sbGluZyBvY2N1cnMgaW5zaWRlIGEgbmVzdGVkL2NoaWxkIG92ZXJsYXlcbiAgICAgIC8vIChlLmcuLCBhIHNlbGVjdGJveCBkcm9wZG93biBvcGVuZWQgZnJvbSB3aXRoaW4gdGhpcyBwb3BvdmVyKS5cbiAgICAgIGlmICh0YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50ICYmIHRoaXMuaXNJbnNpZGVDaGlsZE92ZXJsYXkodGFyZ2V0KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9O1xuXG4gICAgLy8gQ2FwdHVyZSBwaGFzZSBzbyB3ZSByZWNlaXZlIHNjcm9sbCBldmVudHMgZnJvbSBhbnkgc2Nyb2xsYWJsZSBhbmNlc3RvclxuICAgIHRoaXMuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5fc2Nyb2xsSGFuZGxlciwgdHJ1ZSk7XG5cbiAgICAvLyBEZWxheSBhY3RpdmF0aW9uIHRvIGlnbm9yZSBsYXlvdXQvc2Nyb2xsIGV2ZW50cyBmaXJlZCByaWdodCBhZnRlciBvcGVuaW5nXG4gICAgdGhpcy5fc2Nyb2xsQWN0aXZhdGlvbkZyYW1lID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuX3Njcm9sbExpc3RlbmVyQWN0aXZlID0gdHJ1ZTtcbiAgICAgIHRoaXMuX3Njcm9sbEFjdGl2YXRpb25GcmFtZSA9IG51bGw7XG4gICAgfSk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIHJlbW92ZVNjcm9sbExpc3RlbmVyKCkge1xuICAgIGlmICh0aGlzLl9zY3JvbGxBY3RpdmF0aW9uRnJhbWUgIT09IG51bGwpIHtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3Njcm9sbEFjdGl2YXRpb25GcmFtZSk7XG4gICAgICB0aGlzLl9zY3JvbGxBY3RpdmF0aW9uRnJhbWUgPSBudWxsO1xuICAgIH1cbiAgICBpZiAodGhpcy5fc2Nyb2xsSGFuZGxlcikge1xuICAgICAgdGhpcy5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLl9zY3JvbGxIYW5kbGVyLCB0cnVlKTtcbiAgICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIgPSBudWxsO1xuICAgIH1cbiAgICB0aGlzLl9zY3JvbGxMaXN0ZW5lckFjdGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBlbGVtZW50IGxpdmVzIGluc2lkZSBhIGNoaWxkIG92ZXJsYXlcbiAgICogKGFuIG92ZXJsYXkgc3RhY2tlZCBvbiB0b3Agb2YgdGhpcyBwb3BvdmVyLCBlLmcuIGEgc2VsZWN0Ym94IGRyb3Bkb3duKS5cbiAgICogQ2hpbGQgb3ZlcmxheXMgYXJlIGlkZW50aWZpZWQgYnkgaGF2aW5nIGEgaGlnaGVyIHotaW5kZXggdGhhbiB0aGlzIHBvcG92ZXIncyBvdmVybGF5LlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIGlzSW5zaWRlQ2hpbGRPdmVybGF5KGVsZW1lbnQ6IEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBvdmVybGF5RWxlbWVudCA9IHRoaXMuX292ZXJsYXlSZWY/Lm92ZXJsYXlFbGVtZW50O1xuICAgIGlmICghb3ZlcmxheUVsZW1lbnQpIHJldHVybiBmYWxzZTtcblxuICAgIGNvbnN0IG90aGVyT3ZlcmxheSA9IGVsZW1lbnQuY2xvc2VzdCgnLmF4LW92ZXJsYXktY29udGFpbmVyJyk7XG4gICAgaWYgKCFvdGhlck92ZXJsYXkgfHwgb3RoZXJPdmVybGF5ID09PSBvdmVybGF5RWxlbWVudCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgcG9wb3ZlclpJbmRleCA9IHBhcnNlSW50KG92ZXJsYXlFbGVtZW50LnN0eWxlLnpJbmRleCB8fCAnMCcsIDEwKTtcbiAgICBjb25zdCBvdGhlclpJbmRleCA9IHBhcnNlSW50KChvdGhlck92ZXJsYXkgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnpJbmRleCB8fCAnMCcsIDEwKTtcblxuICAgIHJldHVybiBvdGhlclpJbmRleCA+IHBvcG92ZXJaSW5kZXg7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGhhbmRsZU92ZXJsYXlEaXNwb3NlZCgpIHtcbiAgICAvLyBDYWxsZWQgd2hlbiBvdmVybGF5IGlzIGRpc3Bvc2VkIGV4dGVybmFsbHkgKGUuZy4sIGJ5IHNjcm9sbClcbiAgICB0aGlzLmRpc2Nvbm5lY3RSZXNpemVPYnNlcnZlcigpO1xuICAgIHRoaXMucmVtb3ZlT3ZlcmxheUV2ZW50cygpO1xuICAgIHRoaXMucmVtb3ZlS2V5RG93bkxpc3RlbmVyKCk7XG4gICAgdGhpcy5fb3ZlcmxheVJlZiA9IG51bGw7XG4gICAgdGhpcy5fY29tcG9uZW50UmVmID0gbnVsbDtcbiAgICB0aGlzLnJlc3RvcmVGb2N1cygpO1xuICAgIHRoaXMuX2VtaXRPbkNsb3NlZEV2ZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlcyB0aGUgY29tcG9uZW50J3Mgb3BlbiBzdGF0ZS5cbiAgICovXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLmlzT3BlbiA/IHRoaXMuY2xvc2UoKSA6IHRoaXMub3BlbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgY29tcG9uZW50IGlmIGl0J3Mgb3BlbiwgZGV0YWNoZXMgdGhlIG92ZXJsYXksIHJlc3RvcmVzIGZvY3VzLCBhbmQgZW1pdHMgdGhlIGNsb3NlZCBldmVudC5cbiAgICovXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5kaXNjb25uZWN0UmVzaXplT2JzZXJ2ZXIoKTtcbiAgICB0aGlzLnJlbW92ZU92ZXJsYXlFdmVudHMoKTtcbiAgICB0aGlzLnJlbW92ZUtleURvd25MaXN0ZW5lcigpO1xuXG4gICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5fY29tcG9uZW50UmVmID0gbnVsbDtcbiAgICB0aGlzLnJlc3RvcmVGb2N1cygpO1xuICAgIHRoaXMuX2VtaXRPbkNsb3NlZEV2ZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgdGhlIGNvbXBvbmVudCBpZiBpdCdzIG5vdCBhbHJlYWR5IG9wZW4sIHNhdmVzIGZvY3VzLCBvcGVucyB0aGUgb3ZlcmxheSwgYW5kIGVtaXRzIHRoZSBvcGVuZWQgZXZlbnQuXG4gICAqL1xuICBhc3luYyBvcGVuKCkge1xuICAgIGlmICh0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYWRkS2V5RG93bkxpc3RlbmVyKCk7XG4gICAgdGhpcy5zYXZlRm9jdXMoKTtcbiAgICBhd2FpdCB0aGlzLm9wZW5PdmVybGF5SW50ZXJuYWwoKTtcbiAgICB0aGlzLl9lbWl0T25PcGVuZWRFdmVudCgpO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBhZGRLZXlEb3duTGlzdGVuZXIoKSB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JRCkpIHtcbiAgICAgIHRoaXMub25LZXlEb3duSGFuZGxlciA9IChlOiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICB0aGlzLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLm9uS2V5RG93bkhhbmRsZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgcmVtb3ZlS2V5RG93bkxpc3RlbmVyKCkge1xuICAgIGlmICh0aGlzLm9uS2V5RG93bkhhbmRsZXIpIHtcbiAgICAgIHRoaXMuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMub25LZXlEb3duSGFuZGxlcik7XG4gICAgICB0aGlzLm9uS2V5RG93bkhhbmRsZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgc2F2ZUZvY3VzKCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSUQpKSB7XG4gICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBFbGVtZW50O1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgcmVzdG9yZUZvY3VzKCkge1xuICAgIGlmICh0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudD8uZm9jdXM/LigpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgYXN5bmMgb3Blbk92ZXJsYXlJbnRlcm5hbCgpIHtcbiAgICBjb25zdCB0YXJnZXRSZWYgPSB0aGlzLl90YXJnZXQ7XG4gICAgaWYgKCF0YXJnZXRSZWYpIHJldHVybjtcblxuICAgIC8vIEJ1aWxkIHBhbmVsIGNsYXNzZXNcbiAgICBjb25zdCBwYW5lbENsYXNzZXMgPSBbJ2F4LWFuaW1hdGUtZmFkZUluJywgJ2F4LWFuaW1hdGUtZmFzdGVyJ107XG4gICAgaWYgKHRoaXMucGxhdGZvcm0uaXNEYXJrKCkpIHtcbiAgICAgIHBhbmVsQ2xhc3Nlcy5wdXNoKCdheC1kYXJrJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLnBhbmVsQ2xhc3MpIHtcbiAgICAgIHBhbmVsQ2xhc3Nlcy5wdXNoKHRoaXMucGFuZWxDbGFzcyk7XG4gICAgfVxuXG4gICAgLy8gRGV0ZXJtaW5lIGNvbnRlbnQgdG8gZGlzcGxheVxuICAgIGxldCBjb250ZW50VG9SZW5kZXI6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgQVhDb21wb25lbnRUeXBlPHVua25vd24+O1xuICAgIGxldCBpbnB1dHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkO1xuXG4gICAgaWYgKHRoaXMuY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICBjb250ZW50VG9SZW5kZXIgPSB0aGlzLmNvbnRlbnQ7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5jb250ZW50ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb250ZW50VG9SZW5kZXIgPSB0aGlzLmNvbnRlbnQ7XG4gICAgICBpbnB1dHMgPSB0aGlzLmNvbnRleHQgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRlbnRUb1JlbmRlciA9IHRoaXMuX2Jhc2VUZW1wbGF0ZTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgdGhlIG92ZXJsYXlcbiAgICB0aGlzLl9vdmVybGF5UmVmID0gYXdhaXQgdGhpcy5vdmVybGF5U2VydmljZS5jcmVhdGUoY29udGVudFRvUmVuZGVyLCB7XG4gICAgICBpbnB1dHMsXG4gICAgICBhbmNob3JPcHRpb25zOiB7XG4gICAgICAgIGFuY2hvcjogdGFyZ2V0UmVmIGFzIEhUTUxFbGVtZW50LFxuICAgICAgICBwbGFjZW1lbnQ6IHRoaXMuX3BsYWNlbWVudCxcbiAgICAgICAgb2Zmc2V0WDogdGhpcy5fb2Zmc2V0WCxcbiAgICAgICAgb2Zmc2V0WTogdGhpcy5fb2Zmc2V0WSxcbiAgICAgICAgYXV0b0ZsaXA6IHRydWUsXG4gICAgICB9LFxuICAgICAgcGFuZWxDbGFzczogIXRoaXMuZGlzYWJsZVBhbmVsQ2xhc3MoKSA/IHBhbmVsQ2xhc3NlcyA6ICcnLFxuICAgICAgd2lkdGg6IHRoaXMud2lkdGgoKSxcbiAgICAgIG9uRGlzcG9zZTogKCkgPT4gdGhpcy5oYW5kbGVPdmVybGF5RGlzcG9zZWQoKSxcbiAgICAgIGFjdGlvblNoZWV0U3R5bGU6IHRoaXMuYWRhcHRpdml0eUVuYWJsZWQsXG4gICAgfSk7XG5cbiAgICAvLyBTdG9yZSBjb21wb25lbnQgcmVmIGlmIGl0J3MgYSBjb21wb25lbnRcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZi5pbnN0YW5jZSAmJiAnaW5zdGFuY2UnIGluIHRoaXMuX292ZXJsYXlSZWYuaW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuX2NvbXBvbmVudFJlZiA9IHRoaXMuX292ZXJsYXlSZWYuaW5zdGFuY2UgYXMgdW5rbm93biBhcyBDb21wb25lbnRSZWY8dW5rbm93bj47XG4gICAgICBpZiAodGhpcy5jb250ZXh0ICYmIHRoaXMuX2NvbXBvbmVudFJlZi5pbnN0YW5jZSkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuX2NvbXBvbmVudFJlZi5pbnN0YW5jZSwgdGhpcy5jb250ZXh0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCaW5kIG92ZXJsYXkgZXZlbnRzXG4gICAgdGhpcy5iaW5kT3ZlcmxheUV2ZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgb3ZlcmxheSBpcyBjdXJyZW50bHkgb3Blbi5cbiAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAqL1xuICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vdmVybGF5UmVmICE9PSBudWxsO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSB1cGRhdGVPZmZzZXQoKSB7XG4gICAgdGhpcy5fcGxhY2VtZW50cz8uZm9yRWFjaCgocCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX29mZnNldFkgIT0gbnVsbCkgcC5vZmZzZXRZID0gdGhpcy5fb2Zmc2V0WTtcbiAgICAgIGlmICh0aGlzLl9vZmZzZXRYICE9IG51bGwpIHAub2Zmc2V0WCA9IHRoaXMuX29mZnNldFg7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgcG9zaXRpb24gb2YgdGhlIG92ZXJsYXkgYW5kIGZvY3VzZXMgb24gaXQuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8udXBkYXRlUG9zaXRpb24oKTtcbiAgICB0aGlzLmZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogRm9jdXNlcyB0aGUgb3ZlcmxheSBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIC8vIE9wdGlvbmFsIGZvY3VzIGJlaGF2aW9yXG4gIH1cblxuICAvKipcbiAgICogQnJpbmdzIHRoaXMgcG9wb3ZlciB0byB0aGUgZnJvbnQgb2YgYWxsIG90aGVyIG92ZXJsYXlzLlxuICAgKi9cbiAgcHVibGljIGJyaW5nVG9Gcm9udCgpOiB2b2lkIHtcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5icmluZ1RvRnJvbnQoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgaW5pdGlhbGl6ZVJlc2l6ZU9ic2VydmVyKCk6IHZvaWQge1xuICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlEKSB8fCAhdGhpcy5fb3ZlcmxheVJlZj8ub3ZlcmxheUVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5kaXNjb25uZWN0UmVzaXplT2JzZXJ2ZXIoKTtcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHtcbiAgICAgIHRoaXMucmVzaXplJC5uZXh0KCk7XG4gICAgfSk7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX292ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQpO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBkaXNjb25uZWN0UmVzaXplT2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVzaXplT2JzZXJ2ZXIpIHtcbiAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kaXNjb25uZWN0UmVzaXplT2JzZXJ2ZXIoKTtcbiAgICB0aGlzLnJlc2l6ZSQuY29tcGxldGUoKTtcbiAgICB0aGlzLnJlbW92ZVRhcmdldEV2ZW50cygpO1xuICAgIHRoaXMucmVtb3ZlT3ZlcmxheUV2ZW50cygpO1xuICAgIHRoaXMucmVtb3ZlS2V5RG93bkxpc3RlbmVyKCk7XG4gICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IG51bGw7XG4gICAgfVxuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2Jhc2VUZW1wbGF0ZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXPopoverComponent } from './popover.component';\nimport * as i0 from \"@angular/core\";\nexport class AXPopoverModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverModule, imports: [CommonModule, AXPopoverComponent], exports: [AXPopoverComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXPopoverModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, AXPopoverComponent],\n exports: [AXPopoverComponent],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvc3JjL2xpYi9wb3BvdmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPekQsTUFBTSxPQUFPLGVBQWU7OEdBQWYsZUFBZTsrR0FBZixlQUFlLFlBSmhCLFlBQVksRUFBRSxrQkFBa0IsYUFDaEMsa0JBQWtCOytHQUdqQixlQUFlLFlBSmhCLFlBQVk7OzJGQUlYLGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQixDQUFDO29CQUMzQyxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDN0IsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vcG9wb3Zlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBWFBvcG92ZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQVhQb3BvdmVyQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQb3BvdmVyTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtcG9wb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcG9wb3Zlci9zcmMvYWNvcmV4LWNvbXBvbmVudHMtcG9wb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
@@ -29,10 +29,10 @@ class AXPopupComponent extends MXBaseComponent {
29
29
  this._router = inject(Router, { optional: true });
30
30
  this._destroyRef = inject(DestroyRef);
31
31
  // Inputs from overlay service
32
- this.__content__ = input(...(ngDevMode ? [undefined, { debugName: "__content__" }] : /* istanbul ignore next */ []));
33
- this.__config__ = input(...(ngDevMode ? [undefined, { debugName: "__config__" }] : /* istanbul ignore next */ []));
34
- this.__popupRef__ = input(...(ngDevMode ? [undefined, { debugName: "__popupRef__" }] : /* istanbul ignore next */ []));
35
- this.__id__ = input(...(ngDevMode ? [undefined, { debugName: "__id__" }] : /* istanbul ignore next */ []));
32
+ this.__content__ = input(...(ngDevMode ? [undefined, { debugName: "__content__" }] : []));
33
+ this.__config__ = input(...(ngDevMode ? [undefined, { debugName: "__config__" }] : []));
34
+ this.__popupRef__ = input(...(ngDevMode ? [undefined, { debugName: "__popupRef__" }] : []));
35
+ this.__id__ = input(...(ngDevMode ? [undefined, { debugName: "__id__" }] : []));
36
36
  /**
37
37
  * Indicates whether the component is loading.
38
38
  * @defaultValue true
@@ -41,11 +41,11 @@ class AXPopupComponent extends MXBaseComponent {
41
41
  /** @ignore */
42
42
  this._componentRef = null;
43
43
  /** Current title */
44
- this.title = signal('', ...(ngDevMode ? [{ debugName: "title" }] : /* istanbul ignore next */ []));
44
+ this.title = signal('', ...(ngDevMode ? [{ debugName: "title" }] : []));
45
45
  /** @ignore */
46
- this.isDragging = signal(false, ...(ngDevMode ? [{ debugName: "isDragging" }] : /* istanbul ignore next */ []));
46
+ this.isDragging = signal(false, ...(ngDevMode ? [{ debugName: "isDragging" }] : []));
47
47
  /** @ignore */
48
- this.dragOffset = signal({ x: 0, y: 0 }, ...(ngDevMode ? [{ debugName: "dragOffset" }] : /* istanbul ignore next */ []));
48
+ this.dragOffset = signal({ x: 0, y: 0 }, ...(ngDevMode ? [{ debugName: "dragOffset" }] : []));
49
49
  /** @ignore */
50
50
  this.dragStartPos = { x: 0, y: 0 };
51
51
  /** @ignore */
@@ -272,25 +272,25 @@ class AXPopupComponent extends MXBaseComponent {
272
272
  onDragEnd() {
273
273
  this.isDragging.set(false);
274
274
  }
275
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
276
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPopupComponent, isStandalone: true, selector: "ax-popup", inputs: { __content__: { classPropertyName: "__content__", publicName: "__content__", isSignal: true, isRequired: false, transformFunction: null }, __config__: { classPropertyName: "__config__", publicName: "__config__", isSignal: true, isRequired: false, transformFunction: null }, __popupRef__: { classPropertyName: "__popupRef__", publicName: "__popupRef__", isSignal: true, isRequired: false, transformFunction: null }, __id__: { classPropertyName: "__id__", publicName: "__id__", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.escape": "onKeydownHandler()", "document:mousemove": "onDragMove($event)", "document:mouseup": "onDragEnd()" } }, providers: [
275
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
276
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXPopupComponent, isStandalone: true, selector: "ax-popup", inputs: { __content__: { classPropertyName: "__content__", publicName: "__content__", isSignal: true, isRequired: false, transformFunction: null }, __config__: { classPropertyName: "__config__", publicName: "__config__", isSignal: true, isRequired: false, transformFunction: null }, __popupRef__: { classPropertyName: "__popupRef__", publicName: "__popupRef__", isSignal: true, isRequired: false, transformFunction: null }, __id__: { classPropertyName: "__id__", publicName: "__id__", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.escape": "onKeydownHandler()", "document:mousemove": "onDragMove($event)", "document:mouseup": "onDragEnd()" } }, providers: [
277
277
  { provide: AXClosableComponent, useExisting: AXPopupComponent },
278
278
  { provide: AXComponent, useExisting: AXPopupComponent },
279
- ], viewQueries: [{ propertyName: "contentContainerRef", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "contentContainerEl", first: true, predicate: ["contentContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" axFocusTrap>\n <div\n class=\"ax-popup ax-popup-{{ __config__()?.size || 'md' }}\"\n tabindex=\"0\"\n [class.ax-popup-dragging]=\"isDragging()\"\n [style.position]=\"dragOffset().x || dragOffset().y ? 'fixed' : null\"\n [style.left.px]=\"dragOffset().x || null\"\n [style.top.px]=\"dragOffset().y || null\"\n [style.transform]=\"dragOffset().x || dragOffset().y ? 'none' : null\"\n >\n <div\n class=\"ax-popup-header-container\"\n [class.ax-popup-draggable]=\"__config__()?.draggable\"\n (mousedown)=\"onDragStart($event)\"\n >\n @if (__config__()?.header) {\n <div class=\"ax-popup-header\">\n <span class=\"ax-popup-title\">{{ title() | translate | async }}</span>\n @if (__config__()?.closeButton) {\n <ax-close-button tabindex=\"1\" (click)=\"_handleCloseClick()\"></ax-close-button>\n }\n </div>\n }\n </div>\n <div class=\"ax-popup-main-container ax-loading-container\">\n <div class=\"ax-popup-body-container\" #contentContainer></div>\n <div class=\"ax-popup-footer-container\"></div>\n </div>\n </div>\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-outline-style:solid;--tw-font-weight:initial;--tw-leading:initial}}}:root{--ax-comp-popup-border-radius:var(--ax-sys-border-radius);--ax-comp-popup-border-color:var(--ax-sys-color-border-lightest-surface);--ax-comp-popup-body-bg-color:var(--ax-sys-color-lightest-surface);--ax-comp-popup-body-text-color:var(--ax-sys-color-on-lightest-surface);--ax-comp-popup-header-bg-color:var(--ax-sys-color-lighter-surface);--ax-comp-popup-header-border-color:var(--ax-sys-color-border-lighter-surface);--ax-comp-popup-footer-bg-color:var(--ax-sys-color-lighter-surface);--ax-comp-popup-footer-border-color:var(--ax-sys-color-border-lighter-surface)}@layer components{.ax-popup-overlay.ax-overlay-centered .ax-overlay-content{flex-direction:column;width:100%;max-width:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.ax-popup-wrapper{display:contents}.ax-popup-header-container.ax-popup-draggable{cursor:move}.ax-popup.ax-popup-dragging{-webkit-user-select:none;user-select:none}.ax-popup{min-height:calc(var(--spacing,.25rem) * 0);border-style:var(--tw-border-style);width:auto;padding:calc(var(--spacing,.25rem) * 0);outline-style:var(--tw-outline-style);outline-offset:2px;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-popup-border-color));background-color:rgba(var(--ax-comp-popup-body-bg-color));color:rgba(var(--ax-comp-popup-body-text-color));--ax-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ax-shadow-colored:0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow,0 0 #0000),var(--ax-ring-shadow,0 0 #0000),var(--ax-shadow);--ax-comp-popup-fluid-factor:clamp(0, (100vw - 40rem) / 56rem, 1);outline-width:2px;outline-color:#0000;flex-direction:column;margin-inline:auto;display:flex;overflow:hidden}.ax-popup .ax-popup-header-container{background-color:rgba(var(--ax-comp-popup-header-bg-color));flex-shrink:0}.ax-popup .ax-popup-header-container .ax-popup-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 3);border-bottom-width:1px;border-color:rgba(var(--ax-comp-popup-header-border-color));justify-content:space-between;align-items:center;display:flex}.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}@media(min-width:48rem){.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}}.ax-popup ax-footer{border-top-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 3);border-top-width:1px;border-color:rgba(var(--ax-comp-popup-footer-border-color));background-color:rgba(var(--ax-comp-popup-footer-bg-color));justify-content:space-between;align-items:center;display:flex;box-shadow:0 2px 10px #0000004d}.ax-popup:focus{outline-style:var(--tw-outline-style);outline-offset:2px;outline-width:2px;outline-color:#0000}.ax-popup:focus-visible{border-color:rgba(var(--ax-sys-color-primary-surface))}.ax-popup .ax-popup-main-container{min-height:calc(var(--spacing,.25rem) * 0);flex-direction:column;flex:1;display:flex;overflow:hidden}.ax-popup .ax-popup-main-container .ax-popup-body-container{min-height:calc(var(--spacing,.25rem) * 0);background-color:rgba(var(--ax-comp-popup-body-bg-color));flex:1;overflow:auto}.ax-popup .ax-popup-main-container .ax-popup-footer-container{background-color:rgba(var(--ax-comp-popup-footer-bg-color));flex-shrink:0}.ax-popup.ax-popup-full{width:100vw;max-height:calc(100 * var(--ax-vh));height:calc(100 * var(--ax-vh));border-radius:0!important}.ax-popup.ax-popup-fit{width:fit-content!important}.ax-popup.ax-popup-fit .ax-popup-body-container{max-height:calc(100 * var(--ax-vh))}.ax-popup.ax-popup-fit .ax-popup-body-container>ng-component>div{width:fit-content!important}.ax-popup.ax-popup-xs{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 18vw))!important}.ax-popup.ax-popup-sm{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 25vw))!important}.ax-popup.ax-popup-md{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 40vw))!important}.ax-popup.ax-popup-lg{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 65vw))!important}.ax-popup.ax-popup-xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 75vw))!important}.ax-popup.ax-popup-2xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 85vw))!important}@media not all and (min-width:48rem){.ax-popup:not(.ax-popup-fit){border-radius:var(--ax-comp-popup-border-radius);width:calc(var(--ax-overlay-full-width) * 1vw)!important;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh))!important}.ax-popup:not(.ax-popup-fit):not(.ax-popup-full) .ax-popup-body-container>ng-component>div{width:100%}.ax-popup:not(.ax-popup-fit).ax-popup-full{height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius)!important}}}:where(.ax-dark,.ax-dark *) .ax-popup{--ax-comp-popup-border-color:var(--ax-sys-color-border-darkest-surface);--ax-comp-popup-body-bg-color:var(--ax-sys-color-darker-surface);--ax-comp-popup-body-text-color:var(--ax-sys-color-on-darker-surface);--ax-comp-popup-header-bg-color:var(--ax-sys-color-dark-surface);--ax-comp-popup-header-border-color:var(--ax-sys-color-border-dark-surface);--ax-comp-popup-footer-bg-color:var(--ax-sys-color-dark-surface);--ax-comp-popup-footer-border-color:var(--ax-sys-color-border-dark-surface)}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-leading{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["closeAll", "icon"] }, { kind: "directive", type: AXFocusTrapDirective, selector: "[axFocusTrap]", inputs: ["axFocusTrapArrowNavigation"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
279
+ ], viewQueries: [{ propertyName: "contentContainerRef", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "contentContainerEl", first: true, predicate: ["contentContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" axFocusTrap>\n <div\n class=\"ax-popup ax-popup-{{ __config__()?.size || 'md' }}\"\n tabindex=\"0\"\n [class.ax-popup-dragging]=\"isDragging()\"\n [style.position]=\"dragOffset().x || dragOffset().y ? 'fixed' : null\"\n [style.left.px]=\"dragOffset().x || null\"\n [style.top.px]=\"dragOffset().y || null\"\n [style.transform]=\"dragOffset().x || dragOffset().y ? 'none' : null\"\n >\n <div\n class=\"ax-popup-header-container\"\n [class.ax-popup-draggable]=\"__config__()?.draggable\"\n (mousedown)=\"onDragStart($event)\"\n >\n @if (__config__()?.header) {\n <div class=\"ax-popup-header\">\n <span class=\"ax-popup-title\">{{ title() | translate | async }}</span>\n @if (__config__()?.closeButton) {\n <ax-close-button tabindex=\"1\" (click)=\"_handleCloseClick()\"></ax-close-button>\n }\n </div>\n }\n </div>\n <div class=\"ax-popup-main-container ax-loading-container\">\n <div class=\"ax-popup-body-container\" #contentContainer></div>\n <div class=\"ax-popup-footer-container\"></div>\n </div>\n </div>\n</div>\n", styles: [":root{--ax-comp-popup-border-radius: var(--ax-sys-border-radius);--ax-comp-popup-border-color: var(--ax-sys-color-border-lightest-surface);--ax-comp-popup-body-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-popup-body-text-color: var(--ax-sys-color-on-lightest-surface);--ax-comp-popup-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-popup-header-border-color: var(--ax-sys-color-border-lighter-surface);--ax-comp-popup-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-popup-footer-border-color: var(--ax-sys-color-border-lighter-surface)}.ax-popup-overlay.ax-overlay-centered .ax-overlay-content{display:flex;flex-direction:column;width:100%;max-width:100%;max-height:100%;min-height:0;overflow:hidden}.ax-popup-wrapper{display:contents}.ax-popup-header-container.ax-popup-draggable{cursor:move}.ax-popup.ax-popup-dragging{-webkit-user-select:none;user-select:none}.ax-popup{max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh));margin-left:auto;margin-right:auto;display:flex;width:auto;flex-direction:column;min-height:0;overflow:hidden;border-radius:var(--ax-comp-popup-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-popup-border-color));background-color:rgba(var(--ax-comp-popup-body-bg-color));padding:0;--ax-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--ax-shadow-colored: 0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);outline:2px solid transparent;outline-offset:2px;color:rgba(var(--ax-comp-popup-body-text-color));--ax-comp-popup-fluid-factor: clamp(0, (100vw - 40rem) / 56rem, 1)}.ax-popup .ax-popup-header-container{flex-shrink:0;background-color:rgba(var(--ax-comp-popup-header-bg-color))}.ax-popup .ax-popup-header-container .ax-popup-header{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;border-color:rgba(var(--ax-comp-popup-header-border-color));padding:.75rem}.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:1rem;font-weight:500}@media (min-width: 768px){.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:1.125rem;line-height:1.75rem}}.ax-popup ax-footer{box-shadow:0 2px 10px #0000004d;display:flex;align-items:center;justify-content:space-between;border-top-width:1px;border-color:rgba(var(--ax-comp-popup-footer-border-color));background-color:rgba(var(--ax-comp-popup-footer-bg-color));padding:.75rem}.ax-popup:focus{outline:2px solid transparent;outline-offset:2px}.ax-popup:focus-visible{border-color:rgba(var(--ax-sys-color-primary-surface))}.ax-popup .ax-popup-main-container{display:flex;flex:1 1 0%;flex-direction:column;min-height:0;overflow:hidden}.ax-popup .ax-popup-main-container .ax-popup-body-container{flex:1 1 0%;min-height:0;overflow:auto;background-color:rgba(var(--ax-comp-popup-body-bg-color))}.ax-popup .ax-popup-main-container .ax-popup-footer-container{flex-shrink:0;background-color:rgba(var(--ax-comp-popup-footer-bg-color))}.ax-popup.ax-popup-full{width:100vw;max-height:calc(100 * var(--ax-vh));height:calc(100 * var(--ax-vh));border-radius:0!important}.ax-popup.ax-popup-fit{width:fit-content!important}.ax-popup.ax-popup-fit .ax-popup-body-container{max-height:calc(100 * var(--ax-vh))}.ax-popup.ax-popup-fit .ax-popup-body-container>ng-component>div{width:fit-content!important}.ax-popup.ax-popup-xs{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 18vw))!important}.ax-popup.ax-popup-sm{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 25vw))!important}.ax-popup.ax-popup-md{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 40vw))!important}.ax-popup.ax-popup-lg{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 65vw))!important}.ax-popup.ax-popup-xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 75vw))!important}.ax-popup.ax-popup-2xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 85vw))!important}@media screen and (max-width: 768px){.ax-popup:not(.ax-popup-fit){width:calc(var(--ax-overlay-full-width) * 1vw)!important;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh))!important;border-radius:var(--ax-comp-popup-border-radius)}.ax-popup:not(.ax-popup-fit):not(.ax-popup-full) .ax-popup-body-container>ng-component>div{width:100%}.ax-popup:not(.ax-popup-fit).ax-popup-full{height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius)!important}}.ax-dark .ax-popup{--ax-comp-popup-border-color: var(--ax-sys-color-border-darkest-surface);--ax-comp-popup-body-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-popup-body-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-popup-header-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-popup-header-border-color: var(--ax-sys-color-border-dark-surface);--ax-comp-popup-footer-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-popup-footer-border-color: var(--ax-sys-color-border-dark-surface)}\n"], dependencies: [{ kind: "component", type: AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["closeAll", "icon"] }, { kind: "directive", type: AXFocusTrapDirective, selector: "[axFocusTrap]", inputs: ["axFocusTrapArrowNavigation"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
280
280
  }
281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupComponent, decorators: [{
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupComponent, decorators: [{
282
282
  type: Component,
283
283
  args: [{ selector: 'ax-popup', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
284
284
  { provide: AXClosableComponent, useExisting: AXPopupComponent },
285
285
  { provide: AXComponent, useExisting: AXPopupComponent },
286
- ], imports: [AXDecoratorCloseButtonComponent, AsyncPipe, AXTranslatorPipe, AXFocusTrapDirective], template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" axFocusTrap>\n <div\n class=\"ax-popup ax-popup-{{ __config__()?.size || 'md' }}\"\n tabindex=\"0\"\n [class.ax-popup-dragging]=\"isDragging()\"\n [style.position]=\"dragOffset().x || dragOffset().y ? 'fixed' : null\"\n [style.left.px]=\"dragOffset().x || null\"\n [style.top.px]=\"dragOffset().y || null\"\n [style.transform]=\"dragOffset().x || dragOffset().y ? 'none' : null\"\n >\n <div\n class=\"ax-popup-header-container\"\n [class.ax-popup-draggable]=\"__config__()?.draggable\"\n (mousedown)=\"onDragStart($event)\"\n >\n @if (__config__()?.header) {\n <div class=\"ax-popup-header\">\n <span class=\"ax-popup-title\">{{ title() | translate | async }}</span>\n @if (__config__()?.closeButton) {\n <ax-close-button tabindex=\"1\" (click)=\"_handleCloseClick()\"></ax-close-button>\n }\n </div>\n }\n </div>\n <div class=\"ax-popup-main-container ax-loading-container\">\n <div class=\"ax-popup-body-container\" #contentContainer></div>\n <div class=\"ax-popup-footer-container\"></div>\n </div>\n </div>\n</div>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-outline-style:solid;--tw-font-weight:initial;--tw-leading:initial}}}:root{--ax-comp-popup-border-radius:var(--ax-sys-border-radius);--ax-comp-popup-border-color:var(--ax-sys-color-border-lightest-surface);--ax-comp-popup-body-bg-color:var(--ax-sys-color-lightest-surface);--ax-comp-popup-body-text-color:var(--ax-sys-color-on-lightest-surface);--ax-comp-popup-header-bg-color:var(--ax-sys-color-lighter-surface);--ax-comp-popup-header-border-color:var(--ax-sys-color-border-lighter-surface);--ax-comp-popup-footer-bg-color:var(--ax-sys-color-lighter-surface);--ax-comp-popup-footer-border-color:var(--ax-sys-color-border-lighter-surface)}@layer components{.ax-popup-overlay.ax-overlay-centered .ax-overlay-content{flex-direction:column;width:100%;max-width:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.ax-popup-wrapper{display:contents}.ax-popup-header-container.ax-popup-draggable{cursor:move}.ax-popup.ax-popup-dragging{-webkit-user-select:none;user-select:none}.ax-popup{min-height:calc(var(--spacing,.25rem) * 0);border-style:var(--tw-border-style);width:auto;padding:calc(var(--spacing,.25rem) * 0);outline-style:var(--tw-outline-style);outline-offset:2px;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-popup-border-color));background-color:rgba(var(--ax-comp-popup-body-bg-color));color:rgba(var(--ax-comp-popup-body-text-color));--ax-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ax-shadow-colored:0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow,0 0 #0000),var(--ax-ring-shadow,0 0 #0000),var(--ax-shadow);--ax-comp-popup-fluid-factor:clamp(0, (100vw - 40rem) / 56rem, 1);outline-width:2px;outline-color:#0000;flex-direction:column;margin-inline:auto;display:flex;overflow:hidden}.ax-popup .ax-popup-header-container{background-color:rgba(var(--ax-comp-popup-header-bg-color));flex-shrink:0}.ax-popup .ax-popup-header-container .ax-popup-header{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 3);border-bottom-width:1px;border-color:rgba(var(--ax-comp-popup-header-border-color));justify-content:space-between;align-items:center;display:flex}.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}@media(min-width:48rem){.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:calc(var(--spacing,.25rem) * 7);line-height:calc(var(--spacing,.25rem) * 7)}}.ax-popup ax-footer{border-top-style:var(--tw-border-style);padding:calc(var(--spacing,.25rem) * 3);border-top-width:1px;border-color:rgba(var(--ax-comp-popup-footer-border-color));background-color:rgba(var(--ax-comp-popup-footer-bg-color));justify-content:space-between;align-items:center;display:flex;box-shadow:0 2px 10px #0000004d}.ax-popup:focus{outline-style:var(--tw-outline-style);outline-offset:2px;outline-width:2px;outline-color:#0000}.ax-popup:focus-visible{border-color:rgba(var(--ax-sys-color-primary-surface))}.ax-popup .ax-popup-main-container{min-height:calc(var(--spacing,.25rem) * 0);flex-direction:column;flex:1;display:flex;overflow:hidden}.ax-popup .ax-popup-main-container .ax-popup-body-container{min-height:calc(var(--spacing,.25rem) * 0);background-color:rgba(var(--ax-comp-popup-body-bg-color));flex:1;overflow:auto}.ax-popup .ax-popup-main-container .ax-popup-footer-container{background-color:rgba(var(--ax-comp-popup-footer-bg-color));flex-shrink:0}.ax-popup.ax-popup-full{width:100vw;max-height:calc(100 * var(--ax-vh));height:calc(100 * var(--ax-vh));border-radius:0!important}.ax-popup.ax-popup-fit{width:fit-content!important}.ax-popup.ax-popup-fit .ax-popup-body-container{max-height:calc(100 * var(--ax-vh))}.ax-popup.ax-popup-fit .ax-popup-body-container>ng-component>div{width:fit-content!important}.ax-popup.ax-popup-xs{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 18vw))!important}.ax-popup.ax-popup-sm{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 25vw))!important}.ax-popup.ax-popup-md{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 40vw))!important}.ax-popup.ax-popup-lg{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 65vw))!important}.ax-popup.ax-popup-xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 75vw))!important}.ax-popup.ax-popup-2xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 85vw))!important}@media not all and (min-width:48rem){.ax-popup:not(.ax-popup-fit){border-radius:var(--ax-comp-popup-border-radius);width:calc(var(--ax-overlay-full-width) * 1vw)!important;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh))!important}.ax-popup:not(.ax-popup-fit):not(.ax-popup-full) .ax-popup-body-container>ng-component>div{width:100%}.ax-popup:not(.ax-popup-fit).ax-popup-full{height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius)!important}}}:where(.ax-dark,.ax-dark *) .ax-popup{--ax-comp-popup-border-color:var(--ax-sys-color-border-darkest-surface);--ax-comp-popup-body-bg-color:var(--ax-sys-color-darker-surface);--ax-comp-popup-body-text-color:var(--ax-sys-color-on-darker-surface);--ax-comp-popup-header-bg-color:var(--ax-sys-color-dark-surface);--ax-comp-popup-header-border-color:var(--ax-sys-color-border-dark-surface);--ax-comp-popup-footer-bg-color:var(--ax-sys-color-dark-surface);--ax-comp-popup-footer-border-color:var(--ax-sys-color-border-dark-surface)}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-leading{syntax:\"*\";inherits:false}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
286
+ ], imports: [AXDecoratorCloseButtonComponent, AsyncPipe, AXTranslatorPipe, AXFocusTrapDirective], template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" axFocusTrap>\n <div\n class=\"ax-popup ax-popup-{{ __config__()?.size || 'md' }}\"\n tabindex=\"0\"\n [class.ax-popup-dragging]=\"isDragging()\"\n [style.position]=\"dragOffset().x || dragOffset().y ? 'fixed' : null\"\n [style.left.px]=\"dragOffset().x || null\"\n [style.top.px]=\"dragOffset().y || null\"\n [style.transform]=\"dragOffset().x || dragOffset().y ? 'none' : null\"\n >\n <div\n class=\"ax-popup-header-container\"\n [class.ax-popup-draggable]=\"__config__()?.draggable\"\n (mousedown)=\"onDragStart($event)\"\n >\n @if (__config__()?.header) {\n <div class=\"ax-popup-header\">\n <span class=\"ax-popup-title\">{{ title() | translate | async }}</span>\n @if (__config__()?.closeButton) {\n <ax-close-button tabindex=\"1\" (click)=\"_handleCloseClick()\"></ax-close-button>\n }\n </div>\n }\n </div>\n <div class=\"ax-popup-main-container ax-loading-container\">\n <div class=\"ax-popup-body-container\" #contentContainer></div>\n <div class=\"ax-popup-footer-container\"></div>\n </div>\n </div>\n</div>\n", styles: [":root{--ax-comp-popup-border-radius: var(--ax-sys-border-radius);--ax-comp-popup-border-color: var(--ax-sys-color-border-lightest-surface);--ax-comp-popup-body-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-popup-body-text-color: var(--ax-sys-color-on-lightest-surface);--ax-comp-popup-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-popup-header-border-color: var(--ax-sys-color-border-lighter-surface);--ax-comp-popup-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-popup-footer-border-color: var(--ax-sys-color-border-lighter-surface)}.ax-popup-overlay.ax-overlay-centered .ax-overlay-content{display:flex;flex-direction:column;width:100%;max-width:100%;max-height:100%;min-height:0;overflow:hidden}.ax-popup-wrapper{display:contents}.ax-popup-header-container.ax-popup-draggable{cursor:move}.ax-popup.ax-popup-dragging{-webkit-user-select:none;user-select:none}.ax-popup{max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh));margin-left:auto;margin-right:auto;display:flex;width:auto;flex-direction:column;min-height:0;overflow:hidden;border-radius:var(--ax-comp-popup-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-popup-border-color));background-color:rgba(var(--ax-comp-popup-body-bg-color));padding:0;--ax-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--ax-shadow-colored: 0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);outline:2px solid transparent;outline-offset:2px;color:rgba(var(--ax-comp-popup-body-text-color));--ax-comp-popup-fluid-factor: clamp(0, (100vw - 40rem) / 56rem, 1)}.ax-popup .ax-popup-header-container{flex-shrink:0;background-color:rgba(var(--ax-comp-popup-header-bg-color))}.ax-popup .ax-popup-header-container .ax-popup-header{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;border-color:rgba(var(--ax-comp-popup-header-border-color));padding:.75rem}.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:1rem;font-weight:500}@media (min-width: 768px){.ax-popup .ax-popup-header-container .ax-popup-header .ax-popup-title{font-size:1.125rem;line-height:1.75rem}}.ax-popup ax-footer{box-shadow:0 2px 10px #0000004d;display:flex;align-items:center;justify-content:space-between;border-top-width:1px;border-color:rgba(var(--ax-comp-popup-footer-border-color));background-color:rgba(var(--ax-comp-popup-footer-bg-color));padding:.75rem}.ax-popup:focus{outline:2px solid transparent;outline-offset:2px}.ax-popup:focus-visible{border-color:rgba(var(--ax-sys-color-primary-surface))}.ax-popup .ax-popup-main-container{display:flex;flex:1 1 0%;flex-direction:column;min-height:0;overflow:hidden}.ax-popup .ax-popup-main-container .ax-popup-body-container{flex:1 1 0%;min-height:0;overflow:auto;background-color:rgba(var(--ax-comp-popup-body-bg-color))}.ax-popup .ax-popup-main-container .ax-popup-footer-container{flex-shrink:0;background-color:rgba(var(--ax-comp-popup-footer-bg-color))}.ax-popup.ax-popup-full{width:100vw;max-height:calc(100 * var(--ax-vh));height:calc(100 * var(--ax-vh));border-radius:0!important}.ax-popup.ax-popup-fit{width:fit-content!important}.ax-popup.ax-popup-fit .ax-popup-body-container{max-height:calc(100 * var(--ax-vh))}.ax-popup.ax-popup-fit .ax-popup-body-container>ng-component>div{width:fit-content!important}.ax-popup.ax-popup-xs{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 18vw))!important}.ax-popup.ax-popup-sm{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 25vw))!important}.ax-popup.ax-popup-md{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 40vw))!important}.ax-popup.ax-popup-lg{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 65vw))!important}.ax-popup.ax-popup-xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 75vw))!important}.ax-popup.ax-popup-2xl{width:calc(100vw - var(--ax-comp-popup-fluid-factor) * (100vw - 85vw))!important}@media screen and (max-width: 768px){.ax-popup:not(.ax-popup-fit){width:calc(var(--ax-overlay-full-width) * 1vw)!important;max-height:calc(var(--ax-overlay-full-width) * var(--ax-vh))!important;border-radius:var(--ax-comp-popup-border-radius)}.ax-popup:not(.ax-popup-fit):not(.ax-popup-full) .ax-popup-body-container>ng-component>div{width:100%}.ax-popup:not(.ax-popup-fit).ax-popup-full{height:calc(var(--ax-overlay-full-width) * var(--ax-vh));border-radius:var(--ax-comp-popup-border-radius)!important}}.ax-dark .ax-popup{--ax-comp-popup-border-color: var(--ax-sys-color-border-darkest-surface);--ax-comp-popup-body-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-popup-body-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-popup-header-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-popup-header-border-color: var(--ax-sys-color-border-dark-surface);--ax-comp-popup-footer-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-popup-footer-border-color: var(--ax-sys-color-border-dark-surface)}\n"] }]
287
287
  }], propDecorators: { contentContainerRef: [{
288
288
  type: ViewChild,
289
289
  args: ['contentContainer', { read: ViewContainerRef, static: true }]
290
290
  }], contentContainerEl: [{
291
291
  type: ViewChild,
292
292
  args: ['contentContainer', { static: true }]
293
- }], __content__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__content__", required: false }] }], __config__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__config__", required: false }] }], __popupRef__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__popupRef__", required: false }] }], __id__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__id__", required: false }] }], onKeydownHandler: [{
293
+ }], onKeydownHandler: [{
294
294
  type: HostListener,
295
295
  args: ['keydown.escape']
296
296
  }], onDragMove: [{
@@ -303,7 +303,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
303
303
 
304
304
  class AXPopupComponentBase {
305
305
  constructor() {
306
- this.__popup__ = input(...(ngDevMode ? [undefined, { debugName: "__popup__" }] : /* istanbul ignore next */ []));
306
+ this.__popup__ = input(...(ngDevMode ? [undefined, { debugName: "__popup__" }] : []));
307
307
  }
308
308
  close(data = null) {
309
309
  this.__popup__().close(data);
@@ -314,12 +314,12 @@ class AXPopupComponentBase {
314
314
  bringToFront() {
315
315
  this.__popup__().bringToFront();
316
316
  }
317
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupComponentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
318
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXPopupComponentBase, isStandalone: true, inputs: { __popup__: { classPropertyName: "__popup__", publicName: "__popup__", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
317
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupComponentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
318
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.3", type: AXPopupComponentBase, isStandalone: true, inputs: { __popup__: { classPropertyName: "__popup__", publicName: "__popup__", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
319
319
  }
320
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupComponentBase, decorators: [{
320
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupComponentBase, decorators: [{
321
321
  type: Directive
322
- }], propDecorators: { __popup__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__popup__", required: false }] }] } });
322
+ }] });
323
323
 
324
324
  /**
325
325
  * This is a service which you can create popup with it
@@ -464,10 +464,10 @@ class AXPopupService {
464
464
  return;
465
465
  ref.overlay.bringToFront();
466
466
  }
467
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
468
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupService, providedIn: 'root' }); }
467
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
468
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupService, providedIn: 'root' }); }
469
469
  }
470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupService, decorators: [{
470
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupService, decorators: [{
471
471
  type: Injectable,
472
472
  args: [{
473
473
  providedIn: 'root',
@@ -477,11 +477,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
477
477
  const COMPONENT = [AXPopupComponent];
478
478
  const MODULES = [CommonModule, AXCommonModule, AXDecoratorModule, AXTranslationModule];
479
479
  class AXPopupModule {
480
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
481
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPopupModule, imports: [CommonModule, AXCommonModule, AXDecoratorModule, AXTranslationModule, AXPopupComponent], exports: [AXPopupComponent] }); }
482
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupModule, providers: [AXPopupService], imports: [MODULES, COMPONENT] }); }
480
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
481
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.3", ngImport: i0, type: AXPopupModule, imports: [CommonModule, AXCommonModule, AXDecoratorModule, AXTranslationModule, AXPopupComponent], exports: [AXPopupComponent] }); }
482
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupModule, providers: [AXPopupService], imports: [MODULES, COMPONENT] }); }
483
483
  }
484
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPopupModule, decorators: [{
484
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXPopupModule, decorators: [{
485
485
  type: NgModule,
486
486
  args: [{
487
487
  imports: [...MODULES, ...COMPONENT],