@acorex/components 7.0.41 → 7.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (759) hide show
  1. package/action-sheet/src/action-sheet.interface.d.ts +1 -1
  2. package/alert/src/alert.component.d.ts +3 -3
  3. package/avatar/src/avatar.component.d.ts +1 -1
  4. package/badge/src/badge.component.d.ts +3 -3
  5. package/breadcrumbs/src/breadcrumbs-item.component.d.ts +7 -7
  6. package/button/src/button-group.component.d.ts +7 -7
  7. package/button/src/button-item.class.d.ts +1 -1
  8. package/button/src/button-item.component.d.ts +7 -7
  9. package/button/src/button.component.d.ts +1 -1
  10. package/calendar/public-api.d.ts +1 -0
  11. package/calendar/src/calendar-range.component.d.ts +29 -0
  12. package/calendar/src/calendar.class.d.ts +55 -6
  13. package/calendar/src/calendar.component.d.ts +17 -24
  14. package/calendar/src/calendar.module.d.ts +4 -3
  15. package/checkbox/src/checkbox.component.d.ts +1 -1
  16. package/chips/src/chips.component.d.ts +7 -7
  17. package/collapse/src/collapse-group.component.d.ts +1 -1
  18. package/collapse/src/collapse.component.d.ts +1 -1
  19. package/color-palette/src/color-palette-swatches.component.d.ts +1 -1
  20. package/color-palette/src/color-palette.class.d.ts +1 -1
  21. package/color-palette/src/color-palette.component.d.ts +1 -1
  22. package/color-picker/src/color-picker.component.d.ts +20 -17
  23. package/common/public-api.d.ts +1 -0
  24. package/common/src/classes/data.class.d.ts +4 -0
  25. package/common/src/classes/events.class.d.ts +9 -0
  26. package/common/src/classes/styles.class.d.ts +5 -5
  27. package/common/src/components/base-component.class.d.ts +6 -9
  28. package/common/src/components/index.d.ts +1 -0
  29. package/common/src/components/value-component.class.d.ts +45 -0
  30. package/common/src/constant/positions.d.ts +1 -1
  31. package/common/src/directives/auto-focus.directive.d.ts +1 -1
  32. package/common/src/directives/debounce-time.directive.d.ts +1 -1
  33. package/common/src/directives/hotkey.directive.d.ts +2 -2
  34. package/common/src/directives/infinite-scroll.directive.d.ts +1 -1
  35. package/common/src/services/hotkey.service.d.ts +1 -1
  36. package/context-menu/src/context-menu.component.d.ts +1 -1
  37. package/data-pager/src/data-pager-base.component.d.ts +1 -1
  38. package/data-pager/src/data-pager-info.component.d.ts +1 -1
  39. package/data-pager/src/data-pager-pagesize-dropdown.component.d.ts +1 -1
  40. package/data-pager/src/data-pager.component.d.ts +1 -1
  41. package/data-table/src/data-column.directive.d.ts +1 -1
  42. package/data-table/src/data-table.component.d.ts +1 -1
  43. package/date-picker/src/datepicker.component.d.ts +15 -15
  44. package/decorators/src/close-button.component.d.ts +1 -1
  45. package/decorators/src/icon.component.d.ts +1 -1
  46. package/decorators/src/overlay.component.d.ts +1 -1
  47. package/decorators/src/sub-title.component.d.ts +1 -1
  48. package/decorators/src/text.component.d.ts +1 -1
  49. package/drawer/src/drawer.component.d.ts +3 -3
  50. package/dropdown/src/dropdown-panel.component.d.ts +1 -1
  51. package/esm2022/action-sheet/src/action-sheet.component.mjs +80 -0
  52. package/{esm2020 → esm2022}/action-sheet/src/action-sheet.module.mjs +5 -5
  53. package/esm2022/action-sheet/src/action-sheet.service.mjs +93 -0
  54. package/esm2022/alert/src/alert.component.mjs +188 -0
  55. package/{esm2020 → esm2022}/alert/src/alert.module.mjs +5 -5
  56. package/{esm2020 → esm2022}/avatar/src/avatar-group.component.mjs +4 -4
  57. package/esm2022/avatar/src/avatar.component.mjs +43 -0
  58. package/{esm2020 → esm2022}/avatar/src/avatar.module.mjs +5 -5
  59. package/esm2022/badge/src/badge.component.mjs +28 -0
  60. package/{esm2020 → esm2022}/badge/src/badge.module.mjs +5 -5
  61. package/esm2022/breadcrumbs/src/breadcrumbs-item.component.mjs +50 -0
  62. package/esm2022/breadcrumbs/src/breadcrumbs.component.mjs +27 -0
  63. package/{esm2020 → esm2022}/breadcrumbs/src/breadcrumbs.module.mjs +5 -5
  64. package/esm2022/button/src/button-group.component.mjs +91 -0
  65. package/esm2022/button/src/button-item.component.mjs +79 -0
  66. package/esm2022/button/src/button.component.mjs +78 -0
  67. package/{esm2020 → esm2022}/button/src/button.module.mjs +9 -9
  68. package/{esm2020 → esm2022}/calendar/public-api.mjs +2 -1
  69. package/esm2022/calendar/src/calendar-range.component.mjs +174 -0
  70. package/esm2022/calendar/src/calendar.class.mjs +280 -0
  71. package/esm2022/calendar/src/calendar.component.mjs +372 -0
  72. package/esm2022/calendar/src/calendar.module.mjs +23 -0
  73. package/esm2022/card/src/card.component.mjs +18 -0
  74. package/{esm2020 → esm2022}/card/src/card.module.mjs +5 -5
  75. package/esm2022/checkbox/src/checkbox.component.mjs +42 -0
  76. package/{esm2020 → esm2022}/checkbox/src/checkbox.module.mjs +5 -5
  77. package/{esm2020 → esm2022}/chips/src/chips.component.mjs +7 -7
  78. package/{esm2020 → esm2022}/chips/src/chips.module.mjs +5 -5
  79. package/esm2022/collapse/src/collapse-group.component.mjs +52 -0
  80. package/esm2022/collapse/src/collapse.component.mjs +47 -0
  81. package/{esm2020 → esm2022}/collapse/src/collapse.module.mjs +5 -5
  82. package/esm2022/color-palette/src/color-palette-input.component.mjs +130 -0
  83. package/esm2022/color-palette/src/color-palette-picker.component.mjs +159 -0
  84. package/esm2022/color-palette/src/color-palette-preview.component.mjs +62 -0
  85. package/esm2022/color-palette/src/color-palette-swatches.component.mjs +304 -0
  86. package/{esm2020 → esm2022}/color-palette/src/color-palette.class.mjs +7 -7
  87. package/esm2022/color-palette/src/color-palette.component.mjs +75 -0
  88. package/{esm2020 → esm2022}/color-palette/src/color-palette.module.mjs +19 -19
  89. package/esm2022/color-picker/src/color-picker.component.mjs +119 -0
  90. package/{esm2020 → esm2022}/color-picker/src/color-picker.module.mjs +25 -25
  91. package/esm2022/common/public-api.mjs +17 -0
  92. package/esm2022/common/src/classes/components.class.mjs +72 -0
  93. package/esm2022/common/src/classes/data.class.mjs +2 -0
  94. package/esm2022/common/src/classes/events.class.mjs +96 -0
  95. package/{esm2020 → esm2022}/common/src/common.module.mjs +13 -13
  96. package/esm2022/common/src/components/base-component.class.mjs +57 -0
  97. package/esm2022/common/src/components/button-base-component.class.mjs +69 -0
  98. package/esm2022/common/src/components/color-component.class.mjs +27 -0
  99. package/{esm2020 → esm2022}/common/src/components/index.mjs +2 -1
  100. package/esm2022/common/src/components/interactive-component.class.mjs +63 -0
  101. package/{esm2020 → esm2022}/common/src/components/look-component.class.mjs +3 -3
  102. package/esm2022/common/src/components/value-component.class.mjs +206 -0
  103. package/esm2022/common/src/directives/auto-focus.directive.mjs +57 -0
  104. package/esm2022/common/src/directives/debounce-time.directive.mjs +49 -0
  105. package/esm2022/common/src/directives/hotkey.directive.mjs +82 -0
  106. package/esm2022/common/src/directives/infinite-scroll.directive.mjs +69 -0
  107. package/esm2022/common/src/directives/responsive.directive.mjs +35 -0
  108. package/esm2022/common/src/services/custom-cdk-overlay.service.mjs +50 -0
  109. package/esm2022/common/src/services/hotkey.service.mjs +40 -0
  110. package/esm2022/common/src/services/overlay.service.mjs +115 -0
  111. package/esm2022/context-menu/src/context-menu.component.mjs +270 -0
  112. package/{esm2020 → esm2022}/context-menu/src/context-menu.module.mjs +9 -9
  113. package/esm2022/data-pager/src/data-pager-base.component.mjs +35 -0
  114. package/esm2022/data-pager/src/data-pager-info.component.mjs +61 -0
  115. package/esm2022/data-pager/src/data-pager-input-selector.component.mjs +53 -0
  116. package/esm2022/data-pager/src/data-pager-next-buttons.components.mjs +66 -0
  117. package/esm2022/data-pager/src/data-pager-numeric-selector.component.mjs +100 -0
  118. package/esm2022/data-pager/src/data-pager-pagesize-dropdown.component.mjs +88 -0
  119. package/esm2022/data-pager/src/data-pager-prev-buttons.component.mjs +61 -0
  120. package/esm2022/data-pager/src/data-pager.component.mjs +146 -0
  121. package/{esm2020 → esm2022}/data-pager/src/data-pager.module.mjs +17 -17
  122. package/esm2022/data-table/src/data-column-cell-template.directive.mjs +18 -0
  123. package/esm2022/data-table/src/data-column.directive.mjs +50 -0
  124. package/esm2022/data-table/src/data-table.component.mjs +139 -0
  125. package/{esm2020 → esm2022}/data-table/src/data-table.module.mjs +5 -5
  126. package/esm2022/date-picker/src/datepicker.component.mjs +240 -0
  127. package/{esm2020 → esm2022}/date-picker/src/datepicker.module.mjs +12 -12
  128. package/esm2022/decorators/src/close-button.component.mjs +51 -0
  129. package/{esm2020 → esm2022}/decorators/src/content.component.mjs +4 -4
  130. package/{esm2020 → esm2022}/decorators/src/decorators.module.mjs +29 -29
  131. package/{esm2020 → esm2022}/decorators/src/footer.component.mjs +5 -5
  132. package/{esm2020 → esm2022}/decorators/src/form-hint.component.mjs +4 -4
  133. package/{esm2020 → esm2022}/decorators/src/header.component.mjs +5 -5
  134. package/esm2022/decorators/src/icon.component.mjs +30 -0
  135. package/esm2022/decorators/src/overlay.component.mjs +20 -0
  136. package/{esm2020 → esm2022}/decorators/src/placeholder.component.mjs +4 -4
  137. package/{esm2020 → esm2022}/decorators/src/prefix.component.mjs +4 -4
  138. package/esm2022/decorators/src/sub-title.component.mjs +27 -0
  139. package/{esm2020 → esm2022}/decorators/src/suffix.component.mjs +4 -4
  140. package/esm2022/decorators/src/text.component.mjs +22 -0
  141. package/{esm2020 → esm2022}/decorators/src/title.component.mjs +4 -4
  142. package/{esm2020 → esm2022}/dialog/src/dialog.component.mjs +7 -4
  143. package/{esm2020 → esm2022}/dialog/src/dialog.module.mjs +5 -5
  144. package/esm2022/dialog/src/dialog.service.mjs +154 -0
  145. package/esm2022/drawer/src/drawer-container.component.mjs +38 -0
  146. package/esm2022/drawer/src/drawer.component.mjs +144 -0
  147. package/{esm2020 → esm2022}/drawer/src/drawer.module.mjs +5 -5
  148. package/esm2022/dropdown/src/dropdown-panel.component.mjs +105 -0
  149. package/{esm2020 → esm2022}/dropdown/src/dropdown.module.mjs +5 -5
  150. package/{esm2020 → esm2022}/form/src/form-field.component.mjs +4 -4
  151. package/esm2022/form/src/form.component.mjs +163 -0
  152. package/{esm2020 → esm2022}/form/src/form.module.mjs +11 -11
  153. package/esm2022/form/src/validation-rule.widget.mjs +113 -0
  154. package/esm2022/form/src/validation-summary.component.mjs +109 -0
  155. package/esm2022/image/src/image.component.mjs +79 -0
  156. package/{esm2020 → esm2022}/image/src/image.module.mjs +5 -5
  157. package/esm2022/label/src/label.component.mjs +48 -0
  158. package/{esm2020 → esm2022}/label/src/label.module.mjs +5 -5
  159. package/{esm2020 → esm2022}/loading/src/loading-spinner.component.mjs +6 -5
  160. package/esm2022/loading/src/loading.component.mjs +67 -0
  161. package/esm2022/loading/src/loading.directive.mjs +76 -0
  162. package/{esm2020 → esm2022}/loading/src/loading.module.mjs +5 -5
  163. package/esm2022/loading/src/loading.service.mjs +158 -0
  164. package/esm2022/menu/src/menu.component.mjs +346 -0
  165. package/{esm2020 → esm2022}/menu/src/menu.module.mjs +8 -8
  166. package/esm2022/mixin/src/base-components.class.mjs +110 -0
  167. package/esm2022/mixin/src/base-menu-mixin.class.mjs +134 -0
  168. package/esm2022/mixin/src/button-mixin.class.mjs +71 -0
  169. package/esm2022/mixin/src/clickable-mixin.class.mjs +24 -0
  170. package/esm2022/mixin/src/color-look-mixing.class.mjs +48 -0
  171. package/esm2022/mixin/src/datalist-component.class.mjs +151 -0
  172. package/esm2022/mixin/src/dropdown-mixin.class.mjs +99 -0
  173. package/esm2022/mixin/src/interactive-mixin.class.mjs +81 -0
  174. package/esm2022/mixin/src/loading-mixin.class.mjs +26 -0
  175. package/esm2022/mixin/src/selection-component.class.mjs +183 -0
  176. package/esm2022/mixin/src/sizable-mixin.class.mjs +22 -0
  177. package/esm2022/mixin/src/textbox-mixin.class.mjs +66 -0
  178. package/esm2022/mixin/src/value-mixin.class.mjs +220 -0
  179. package/esm2022/notification/src/notification.component.mjs +92 -0
  180. package/{esm2020 → esm2022}/notification/src/notification.module.mjs +5 -5
  181. package/esm2022/notification/src/notification.service.mjs +109 -0
  182. package/esm2022/number-box/src/number-box.component.mjs +268 -0
  183. package/{esm2020 → esm2022}/number-box/src/number-box.module.mjs +9 -9
  184. package/esm2022/page/src/base-page.class.mjs +63 -0
  185. package/esm2022/page/src/page.component.mjs +46 -0
  186. package/{esm2020 → esm2022}/page/src/page.module.mjs +5 -5
  187. package/esm2022/password-box/src/password-box.component.mjs +63 -0
  188. package/{esm2020 → esm2022}/password-box/src/password-box.module.mjs +8 -8
  189. package/esm2022/picker/src/picker-column.component.mjs +20 -0
  190. package/{esm2020 → esm2022}/picker/src/picker.component.mjs +4 -4
  191. package/{esm2020 → esm2022}/picker/src/picker.module.mjs +9 -9
  192. package/esm2022/popover/src/popover.component.mjs +262 -0
  193. package/{esm2020 → esm2022}/popover/src/popover.module.mjs +5 -5
  194. package/esm2022/popup/src/popup.component.mjs +145 -0
  195. package/{esm2020 → esm2022}/popup/src/popup.module.mjs +5 -5
  196. package/esm2022/popup/src/popup.service.mjs +116 -0
  197. package/{esm2020 → esm2022}/progress-bar/src/progress-bar.component.mjs +5 -5
  198. package/{esm2020 → esm2022}/progress-bar/src/progress-bar.module.mjs +5 -5
  199. package/{esm2020 → esm2022}/radio/src/radio.component.mjs +4 -4
  200. package/{esm2020 → esm2022}/radio/src/radio.module.mjs +5 -5
  201. package/esm2022/range-slider/src/range-slider.component.mjs +117 -0
  202. package/{esm2020 → esm2022}/range-slider/src/range-slider.module.mjs +5 -5
  203. package/esm2022/rating/src/rating.component.mjs +41 -0
  204. package/{esm2020 → esm2022}/rating/src/rating.component.module.mjs +5 -5
  205. package/esm2022/result/src/result.component.mjs +26 -0
  206. package/{esm2020 → esm2022}/result/src/result.module.mjs +5 -5
  207. package/esm2022/search-box/src/search-box.component.mjs +54 -0
  208. package/{esm2020 → esm2022}/search-box/src/search-box.module.mjs +5 -5
  209. package/esm2022/select-box/src/selectbox.component.mjs +391 -0
  210. package/{esm2020 → esm2022}/select-box/src/selectbox.module.mjs +27 -27
  211. package/{esm2020 → esm2022}/selection-list/src/selection-list.component.mjs +8 -8
  212. package/{esm2020 → esm2022}/selection-list/src/selection-list.module.mjs +5 -5
  213. package/{esm2020 → esm2022}/switch/src/switch-content.component.mjs +4 -4
  214. package/{esm2020 → esm2022}/switch/src/switch.component.mjs +7 -4
  215. package/{esm2020 → esm2022}/switch/src/switch.module.mjs +5 -5
  216. package/esm2022/tabs/src/tab-content.directive.mjs +31 -0
  217. package/esm2022/tabs/src/tab-item.component.mjs +140 -0
  218. package/esm2022/tabs/src/tabs.class.mjs +6 -0
  219. package/{esm2020 → esm2022}/tabs/src/tabs.component.mjs +14 -11
  220. package/{esm2020 → esm2022}/tabs/src/tabs.module.mjs +5 -5
  221. package/{esm2020 → esm2022}/tag/src/tag.component.mjs +6 -6
  222. package/{esm2020 → esm2022}/tag/src/tag.module.mjs +5 -5
  223. package/esm2022/textarea/src/textarea.component.mjs +29 -0
  224. package/{esm2020 → esm2022}/textarea/src/textarea.module.mjs +5 -5
  225. package/esm2022/textbox/src/mask-options.directive.mjs +19 -0
  226. package/esm2022/textbox/src/textbox.component.mjs +95 -0
  227. package/{esm2020 → esm2022}/textbox/src/textbox.module.mjs +13 -13
  228. package/esm2022/time-box/src/time-box.component.mjs +305 -0
  229. package/{esm2020 → esm2022}/time-box/src/time-box.module.mjs +8 -8
  230. package/esm2022/toast/src/toast.component.mjs +67 -0
  231. package/{esm2020 → esm2022}/toast/src/toast.module.mjs +5 -5
  232. package/esm2022/toast/src/toast.service.mjs +136 -0
  233. package/esm2022/tooltip/src/tooltip.component.mjs +21 -0
  234. package/esm2022/tooltip/src/tooltip.directive.mjs +163 -0
  235. package/{esm2020 → esm2022}/tooltip/src/tooltip.module.mjs +5 -5
  236. package/esm2022/tree-view/src/tree-view.component.mjs +107 -0
  237. package/{esm2020 → esm2022}/tree-view/src/tree-view.module.mjs +5 -5
  238. package/esm2022/uploader/src/uploader.component.mjs +101 -0
  239. package/{esm2020 → esm2022}/uploader/src/uploader.module.mjs +5 -5
  240. package/{fesm2020 → fesm2022}/acorex-components-action-sheet.mjs +21 -16
  241. package/{fesm2020 → fesm2022}/acorex-components-action-sheet.mjs.map +1 -1
  242. package/{fesm2020 → fesm2022}/acorex-components-alert.mjs +41 -32
  243. package/{fesm2020 → fesm2022}/acorex-components-alert.mjs.map +1 -1
  244. package/{fesm2020 → fesm2022}/acorex-components-avatar.mjs +12 -11
  245. package/{fesm2020 → fesm2022}/acorex-components-avatar.mjs.map +1 -1
  246. package/{fesm2015 → fesm2022}/acorex-components-badge.mjs +9 -9
  247. package/{fesm2015 → fesm2022}/acorex-components-badge.mjs.map +1 -1
  248. package/{fesm2020 → fesm2022}/acorex-components-breadcrumbs.mjs +16 -11
  249. package/{fesm2020 → fesm2022}/acorex-components-breadcrumbs.mjs.map +1 -1
  250. package/{fesm2020 → fesm2022}/acorex-components-button.mjs +45 -48
  251. package/fesm2022/acorex-components-button.mjs.map +1 -0
  252. package/fesm2022/acorex-components-calendar.mjs +837 -0
  253. package/fesm2022/acorex-components-calendar.mjs.map +1 -0
  254. package/fesm2022/acorex-components-card.mjs +41 -0
  255. package/{fesm2015 → fesm2022}/acorex-components-card.mjs.map +1 -1
  256. package/{fesm2020 → fesm2022}/acorex-components-checkbox.mjs +8 -8
  257. package/{fesm2015 → fesm2022}/acorex-components-checkbox.mjs.map +1 -1
  258. package/{fesm2015 → fesm2022}/acorex-components-chips.mjs +10 -11
  259. package/{fesm2020 → fesm2022}/acorex-components-chips.mjs.map +1 -1
  260. package/{fesm2015 → fesm2022}/acorex-components-collapse.mjs +21 -18
  261. package/{fesm2020 → fesm2022}/acorex-components-collapse.mjs.map +1 -1
  262. package/{fesm2020 → fesm2022}/acorex-components-color-palette.mjs +337 -331
  263. package/{fesm2020 → fesm2022}/acorex-components-color-palette.mjs.map +1 -1
  264. package/fesm2022/acorex-components-color-picker.mjs +182 -0
  265. package/fesm2022/acorex-components-color-picker.mjs.map +1 -0
  266. package/{fesm2020 → fesm2022}/acorex-components-common.mjs +405 -140
  267. package/fesm2022/acorex-components-common.mjs.map +1 -0
  268. package/{fesm2020 → fesm2022}/acorex-components-context-menu.mjs +29 -20
  269. package/{fesm2015 → fesm2022}/acorex-components-context-menu.mjs.map +1 -1
  270. package/{fesm2020 → fesm2022}/acorex-components-data-pager.mjs +95 -80
  271. package/{fesm2020 → fesm2022}/acorex-components-data-pager.mjs.map +1 -1
  272. package/{fesm2020 → fesm2022}/acorex-components-data-table.mjs +40 -31
  273. package/{fesm2020 → fesm2022}/acorex-components-data-table.mjs.map +1 -1
  274. package/fesm2022/acorex-components-date-picker.mjs +285 -0
  275. package/fesm2022/acorex-components-date-picker.mjs.map +1 -0
  276. package/{fesm2020 → fesm2022}/acorex-components-decorators.mjs +80 -80
  277. package/{fesm2015 → fesm2022}/acorex-components-decorators.mjs.map +1 -1
  278. package/{fesm2020 → fesm2022}/acorex-components-dialog.mjs +16 -11
  279. package/{fesm2015 → fesm2022}/acorex-components-dialog.mjs.map +1 -1
  280. package/{fesm2020 → fesm2022}/acorex-components-drawer.mjs +25 -21
  281. package/{fesm2020 → fesm2022}/acorex-components-drawer.mjs.map +1 -1
  282. package/{fesm2020 → fesm2022}/acorex-components-dropdown.mjs +19 -16
  283. package/fesm2022/acorex-components-dropdown.mjs.map +1 -0
  284. package/{fesm2020 → fesm2022}/acorex-components-form.mjs +65 -61
  285. package/fesm2022/acorex-components-form.mjs.map +1 -0
  286. package/{fesm2015 → fesm2022}/acorex-components-image.mjs +17 -15
  287. package/{fesm2015 → fesm2022}/acorex-components-image.mjs.map +1 -1
  288. package/{fesm2015 → fesm2022}/acorex-components-label.mjs +12 -10
  289. package/fesm2022/acorex-components-label.mjs.map +1 -0
  290. package/{fesm2020 → fesm2022}/acorex-components-loading.mjs +42 -29
  291. package/{fesm2020 → fesm2022}/acorex-components-loading.mjs.map +1 -1
  292. package/{fesm2020 → fesm2022}/acorex-components-menu.mjs +26 -19
  293. package/{fesm2020 → fesm2022}/acorex-components-menu.mjs.map +1 -1
  294. package/{fesm2015 → fesm2022}/acorex-components-mixin.mjs +276 -284
  295. package/{fesm2020 → fesm2022}/acorex-components-mixin.mjs.map +1 -1
  296. package/{fesm2020 → fesm2022}/acorex-components-notification.mjs +24 -18
  297. package/{fesm2020 → fesm2022}/acorex-components-notification.mjs.map +1 -1
  298. package/{fesm2020 → fesm2022}/acorex-components-number-box.mjs +42 -35
  299. package/{fesm2015 → fesm2022}/acorex-components-number-box.mjs.map +1 -1
  300. package/{fesm2020 → fesm2022}/acorex-components-page.mjs +20 -17
  301. package/{fesm2020 → fesm2022}/acorex-components-page.mjs.map +1 -1
  302. package/fesm2022/acorex-components-password-box.mjs +99 -0
  303. package/{fesm2015 → fesm2022}/acorex-components-password-box.mjs.map +1 -1
  304. package/{fesm2020 → fesm2022}/acorex-components-picker.mjs +15 -18
  305. package/{fesm2015 → fesm2022}/acorex-components-picker.mjs.map +1 -1
  306. package/{fesm2020 → fesm2022}/acorex-components-popover.mjs +50 -37
  307. package/{fesm2015 → fesm2022}/acorex-components-popover.mjs.map +1 -1
  308. package/{fesm2020 → fesm2022}/acorex-components-popup.mjs +30 -19
  309. package/{fesm2020 → fesm2022}/acorex-components-popup.mjs.map +1 -1
  310. package/{fesm2020 → fesm2022}/acorex-components-progress-bar.mjs +8 -9
  311. package/{fesm2015 → fesm2022}/acorex-components-progress-bar.mjs.map +1 -1
  312. package/fesm2022/acorex-components-radio.mjs +65 -0
  313. package/{fesm2015 → fesm2022}/acorex-components-radio.mjs.map +1 -1
  314. package/{fesm2020 → fesm2022}/acorex-components-range-slider.mjs +16 -16
  315. package/fesm2022/acorex-components-range-slider.mjs.map +1 -0
  316. package/fesm2022/acorex-components-rating.mjs +64 -0
  317. package/{fesm2015 → fesm2022}/acorex-components-rating.mjs.map +1 -1
  318. package/{fesm2020 → fesm2022}/acorex-components-result.mjs +10 -10
  319. package/{fesm2020 → fesm2022}/acorex-components-result.mjs.map +1 -1
  320. package/{fesm2020 → fesm2022}/acorex-components-search-box.mjs +12 -11
  321. package/{fesm2020 → fesm2022}/acorex-components-search-box.mjs.map +1 -1
  322. package/{fesm2020 → fesm2022}/acorex-components-select-box.mjs +56 -46
  323. package/{fesm2020 → fesm2022}/acorex-components-select-box.mjs.map +1 -1
  324. package/{fesm2020 → fesm2022}/acorex-components-selection-list.mjs +11 -12
  325. package/{fesm2015 → fesm2022}/acorex-components-selection-list.mjs.map +1 -1
  326. package/{fesm2020 → fesm2022}/acorex-components-switch.mjs +13 -11
  327. package/{fesm2015 → fesm2022}/acorex-components-switch.mjs.map +1 -1
  328. package/{fesm2020 → fesm2022}/acorex-components-tabs.mjs +36 -26
  329. package/{fesm2015 → fesm2022}/acorex-components-tabs.mjs.map +1 -1
  330. package/{fesm2020 → fesm2022}/acorex-components-tag.mjs +9 -10
  331. package/{fesm2020 → fesm2022}/acorex-components-tag.mjs.map +1 -1
  332. package/fesm2022/acorex-components-textarea.mjs +52 -0
  333. package/{fesm2020 → fesm2022}/acorex-components-textarea.mjs.map +1 -1
  334. package/{fesm2020 → fesm2022}/acorex-components-textbox.mjs +34 -30
  335. package/{fesm2020 → fesm2022}/acorex-components-textbox.mjs.map +1 -1
  336. package/{fesm2020 → fesm2022}/acorex-components-time-box.mjs +30 -22
  337. package/{fesm2020 → fesm2022}/acorex-components-time-box.mjs.map +1 -1
  338. package/{fesm2020 → fesm2022}/acorex-components-toast.mjs +22 -18
  339. package/{fesm2020 → fesm2022}/acorex-components-toast.mjs.map +1 -1
  340. package/{fesm2020 → fesm2022}/acorex-components-tooltip.mjs +20 -14
  341. package/{fesm2020 → fesm2022}/acorex-components-tooltip.mjs.map +1 -1
  342. package/fesm2022/acorex-components-tree-view.mjs +131 -0
  343. package/{fesm2015 → fesm2022}/acorex-components-tree-view.mjs.map +1 -1
  344. package/{fesm2020 → fesm2022}/acorex-components-uploader.mjs +15 -13
  345. package/{fesm2020 → fesm2022}/acorex-components-uploader.mjs.map +1 -1
  346. package/{fesm2015 → fesm2022}/acorex-components.mjs +0 -1
  347. package/form/src/form.component.d.ts +2 -2
  348. package/form/src/validation-rule.widget.d.ts +1 -1
  349. package/form/src/validation-summary.component.d.ts +2 -2
  350. package/form/src/validation.class.d.ts +1 -1
  351. package/image/src/image.component.d.ts +1 -1
  352. package/label/src/label.component.d.ts +1 -1
  353. package/loading/src/loading.component.d.ts +1 -1
  354. package/loading/src/loading.directive.d.ts +1 -1
  355. package/loading/src/loading.service.d.ts +2 -2
  356. package/menu/src/menu.component.d.ts +1 -1
  357. package/mixin/src/base-components.class.d.ts +7 -7
  358. package/mixin/src/base-menu-mixin.class.d.ts +5 -5
  359. package/mixin/src/button-mixin.class.d.ts +2 -2
  360. package/mixin/src/clickable-mixin.class.d.ts +2 -2
  361. package/mixin/src/color-look-mixing.class.d.ts +2 -2
  362. package/mixin/src/constratctor.d.ts +2 -2
  363. package/mixin/src/datalist-component.class.d.ts +10 -10
  364. package/mixin/src/datalist.class.d.ts +2 -2
  365. package/mixin/src/dropdown-mixin.class.d.ts +2 -2
  366. package/mixin/src/interactive-mixin.class.d.ts +4 -4
  367. package/mixin/src/loading-mixin.class.d.ts +2 -2
  368. package/mixin/src/mixin.class.d.ts +61 -61
  369. package/mixin/src/page-component.class.d.ts +2 -2
  370. package/mixin/src/selection-component.class.d.ts +2 -2
  371. package/mixin/src/sizable-mixin.class.d.ts +2 -2
  372. package/mixin/src/textbox-mixin.class.d.ts +2 -2
  373. package/mixin/src/value-mixin.class.d.ts +8 -8
  374. package/notification/src/notification.class.d.ts +1 -1
  375. package/number-box/src/number-box.component.d.ts +1 -1
  376. package/package.json +172 -284
  377. package/password-box/src/password-box.component.d.ts +1 -1
  378. package/picker/src/picker-column.component.d.ts +1 -1
  379. package/popover/src/popover.component.d.ts +1 -1
  380. package/popup/src/popup.service.d.ts +2 -2
  381. package/progress-bar/src/progress-bar.component.d.ts +1 -1
  382. package/radio/src/radio.component.d.ts +1 -1
  383. package/range-slider/src/range-slider.component.d.ts +1 -1
  384. package/result/src/result.component.d.ts +1 -1
  385. package/search-box/src/search-box.component.d.ts +1 -1
  386. package/select-box/src/selectbox.component.d.ts +1 -1
  387. package/selection-list/src/selection-list.component.d.ts +1 -1
  388. package/switch/src/switch.component.d.ts +1 -1
  389. package/tabs/src/tab-content.directive.d.ts +1 -1
  390. package/tabs/src/tab-item.component.d.ts +3 -3
  391. package/tabs/src/tabs.class.d.ts +1 -1
  392. package/tabs/src/tabs.component.d.ts +1 -1
  393. package/tag/src/tag.component.d.ts +1 -1
  394. package/textarea/src/textarea.component.d.ts +1 -1
  395. package/textbox/src/mask-options.directive.d.ts +2 -2
  396. package/textbox/src/textbox.component.d.ts +1 -1
  397. package/time-box/src/time-box.component.d.ts +2 -2
  398. package/tooltip/src/tooltip.component.d.ts +1 -1
  399. package/tooltip/src/tooltip.directive.d.ts +1 -1
  400. package/tree-view/src/tree-view.component.d.ts +1 -1
  401. package/uploader/src/uploader.component.d.ts +1 -1
  402. package/esm2020/action-sheet/src/action-sheet.component.mjs +0 -76
  403. package/esm2020/action-sheet/src/action-sheet.service.mjs +0 -91
  404. package/esm2020/alert/src/alert.component.mjs +0 -178
  405. package/esm2020/avatar/src/avatar.component.mjs +0 -41
  406. package/esm2020/badge/src/badge.component.mjs +0 -27
  407. package/esm2020/breadcrumbs/src/breadcrumbs-item.component.mjs +0 -46
  408. package/esm2020/breadcrumbs/src/breadcrumbs.component.mjs +0 -25
  409. package/esm2020/button/src/button-group.component.mjs +0 -88
  410. package/esm2020/button/src/button-item.component.mjs +0 -77
  411. package/esm2020/button/src/button.component.mjs +0 -85
  412. package/esm2020/calendar/src/calendar.class.mjs +0 -127
  413. package/esm2020/calendar/src/calendar.component.mjs +0 -382
  414. package/esm2020/calendar/src/calendar.module.mjs +0 -22
  415. package/esm2020/card/src/card.component.mjs +0 -17
  416. package/esm2020/checkbox/src/checkbox.component.mjs +0 -41
  417. package/esm2020/collapse/src/collapse-group.component.mjs +0 -50
  418. package/esm2020/collapse/src/collapse.component.mjs +0 -45
  419. package/esm2020/color-palette/src/color-palette-input.component.mjs +0 -129
  420. package/esm2020/color-palette/src/color-palette-picker.component.mjs +0 -158
  421. package/esm2020/color-palette/src/color-palette-preview.component.mjs +0 -60
  422. package/esm2020/color-palette/src/color-palette-swatches.component.mjs +0 -302
  423. package/esm2020/color-palette/src/color-palette.component.mjs +0 -74
  424. package/esm2020/color-picker/src/color-picker.component.mjs +0 -105
  425. package/esm2020/common/public-api.mjs +0 -16
  426. package/esm2020/common/src/classes/components.class.mjs +0 -69
  427. package/esm2020/common/src/classes/events.class.mjs +0 -58
  428. package/esm2020/common/src/components/base-component.class.mjs +0 -57
  429. package/esm2020/common/src/components/button-base-component.class.mjs +0 -68
  430. package/esm2020/common/src/components/color-component.class.mjs +0 -27
  431. package/esm2020/common/src/components/interactive-component.class.mjs +0 -62
  432. package/esm2020/common/src/directives/auto-focus.directive.mjs +0 -55
  433. package/esm2020/common/src/directives/debounce-time.directive.mjs +0 -47
  434. package/esm2020/common/src/directives/hotkey.directive.mjs +0 -79
  435. package/esm2020/common/src/directives/infinite-scroll.directive.mjs +0 -63
  436. package/esm2020/common/src/directives/responsive.directive.mjs +0 -34
  437. package/esm2020/common/src/services/custom-cdk-overlay.service.mjs +0 -48
  438. package/esm2020/common/src/services/hotkey.service.mjs +0 -38
  439. package/esm2020/common/src/services/overlay.service.mjs +0 -111
  440. package/esm2020/context-menu/src/context-menu.component.mjs +0 -260
  441. package/esm2020/data-pager/src/data-pager-base.component.mjs +0 -38
  442. package/esm2020/data-pager/src/data-pager-info.component.mjs +0 -57
  443. package/esm2020/data-pager/src/data-pager-input-selector.component.mjs +0 -51
  444. package/esm2020/data-pager/src/data-pager-next-buttons.components.mjs +0 -63
  445. package/esm2020/data-pager/src/data-pager-numeric-selector.component.mjs +0 -98
  446. package/esm2020/data-pager/src/data-pager-pagesize-dropdown.component.mjs +0 -85
  447. package/esm2020/data-pager/src/data-pager-prev-buttons.component.mjs +0 -59
  448. package/esm2020/data-pager/src/data-pager.component.mjs +0 -143
  449. package/esm2020/data-table/src/data-column-cell-template.directive.mjs +0 -17
  450. package/esm2020/data-table/src/data-column.directive.mjs +0 -43
  451. package/esm2020/data-table/src/data-table.component.mjs +0 -137
  452. package/esm2020/date-picker/src/datepicker.component.mjs +0 -249
  453. package/esm2020/decorators/src/close-button.component.mjs +0 -50
  454. package/esm2020/decorators/src/icon.component.mjs +0 -29
  455. package/esm2020/decorators/src/overlay.component.mjs +0 -22
  456. package/esm2020/decorators/src/sub-title.component.mjs +0 -27
  457. package/esm2020/decorators/src/text.component.mjs +0 -21
  458. package/esm2020/dialog/src/dialog.service.mjs +0 -151
  459. package/esm2020/drawer/src/drawer-container.component.mjs +0 -37
  460. package/esm2020/drawer/src/drawer.component.mjs +0 -140
  461. package/esm2020/dropdown/src/dropdown-panel.component.mjs +0 -101
  462. package/esm2020/form/src/form.component.mjs +0 -160
  463. package/esm2020/form/src/validation-rule.widget.mjs +0 -115
  464. package/esm2020/form/src/validation-summary.component.mjs +0 -105
  465. package/esm2020/image/src/image.component.mjs +0 -76
  466. package/esm2020/label/src/label.component.mjs +0 -45
  467. package/esm2020/loading/src/loading.component.mjs +0 -64
  468. package/esm2020/loading/src/loading.directive.mjs +0 -68
  469. package/esm2020/loading/src/loading.service.mjs +0 -156
  470. package/esm2020/menu/src/menu.component.mjs +0 -338
  471. package/esm2020/mixin/src/base-components.class.mjs +0 -110
  472. package/esm2020/mixin/src/base-menu-mixin.class.mjs +0 -138
  473. package/esm2020/mixin/src/button-mixin.class.mjs +0 -70
  474. package/esm2020/mixin/src/clickable-mixin.class.mjs +0 -24
  475. package/esm2020/mixin/src/color-look-mixing.class.mjs +0 -48
  476. package/esm2020/mixin/src/datalist-component.class.mjs +0 -163
  477. package/esm2020/mixin/src/dropdown-mixin.class.mjs +0 -99
  478. package/esm2020/mixin/src/interactive-mixin.class.mjs +0 -84
  479. package/esm2020/mixin/src/loading-mixin.class.mjs +0 -18
  480. package/esm2020/mixin/src/selection-component.class.mjs +0 -180
  481. package/esm2020/mixin/src/sizable-mixin.class.mjs +0 -18
  482. package/esm2020/mixin/src/textbox-mixin.class.mjs +0 -58
  483. package/esm2020/mixin/src/value-mixin.class.mjs +0 -230
  484. package/esm2020/notification/src/notification.component.mjs +0 -87
  485. package/esm2020/notification/src/notification.service.mjs +0 -107
  486. package/esm2020/number-box/src/number-box.component.mjs +0 -260
  487. package/esm2020/page/src/base-page.class.mjs +0 -61
  488. package/esm2020/page/src/page.component.mjs +0 -44
  489. package/esm2020/password-box/src/password-box.component.mjs +0 -62
  490. package/esm2020/picker/src/picker-column.component.mjs +0 -22
  491. package/esm2020/popover/src/popover.component.mjs +0 -248
  492. package/esm2020/popup/src/popup.component.mjs +0 -135
  493. package/esm2020/popup/src/popup.service.mjs +0 -114
  494. package/esm2020/range-slider/src/range-slider.component.mjs +0 -116
  495. package/esm2020/rating/src/rating.component.mjs +0 -41
  496. package/esm2020/result/src/result.component.mjs +0 -25
  497. package/esm2020/search-box/src/search-box.component.mjs +0 -52
  498. package/esm2020/select-box/src/selectbox.component.mjs +0 -380
  499. package/esm2020/tabs/src/tab-content.directive.mjs +0 -29
  500. package/esm2020/tabs/src/tab-item.component.mjs +0 -136
  501. package/esm2020/tabs/src/tabs.class.mjs +0 -4
  502. package/esm2020/textarea/src/textarea.component.mjs +0 -28
  503. package/esm2020/textbox/src/mask-options.directive.mjs +0 -17
  504. package/esm2020/textbox/src/textbox.component.mjs +0 -92
  505. package/esm2020/time-box/src/time-box.component.mjs +0 -296
  506. package/esm2020/toast/src/toast.component.mjs +0 -64
  507. package/esm2020/toast/src/toast.service.mjs +0 -134
  508. package/esm2020/tooltip/src/tooltip.component.mjs +0 -20
  509. package/esm2020/tooltip/src/tooltip.directive.mjs +0 -157
  510. package/esm2020/tree-view/src/tree-view.component.mjs +0 -108
  511. package/esm2020/uploader/src/uploader.component.mjs +0 -98
  512. package/fesm2015/acorex-components-action-sheet.mjs +0 -193
  513. package/fesm2015/acorex-components-action-sheet.mjs.map +0 -1
  514. package/fesm2015/acorex-components-alert.mjs +0 -208
  515. package/fesm2015/acorex-components-alert.mjs.map +0 -1
  516. package/fesm2015/acorex-components-avatar.mjs +0 -81
  517. package/fesm2015/acorex-components-avatar.mjs.map +0 -1
  518. package/fesm2015/acorex-components-breadcrumbs.mjs +0 -91
  519. package/fesm2015/acorex-components-breadcrumbs.mjs.map +0 -1
  520. package/fesm2015/acorex-components-button.mjs +0 -281
  521. package/fesm2015/acorex-components-button.mjs.map +0 -1
  522. package/fesm2015/acorex-components-calendar.mjs +0 -531
  523. package/fesm2015/acorex-components-calendar.mjs.map +0 -1
  524. package/fesm2015/acorex-components-card.mjs +0 -41
  525. package/fesm2015/acorex-components-checkbox.mjs +0 -67
  526. package/fesm2015/acorex-components-chips.mjs.map +0 -1
  527. package/fesm2015/acorex-components-collapse.mjs.map +0 -1
  528. package/fesm2015/acorex-components-color-palette.mjs +0 -772
  529. package/fesm2015/acorex-components-color-palette.mjs.map +0 -1
  530. package/fesm2015/acorex-components-color-picker.mjs +0 -172
  531. package/fesm2015/acorex-components-color-picker.mjs.map +0 -1
  532. package/fesm2015/acorex-components-common.mjs +0 -955
  533. package/fesm2015/acorex-components-common.mjs.map +0 -1
  534. package/fesm2015/acorex-components-context-menu.mjs +0 -301
  535. package/fesm2015/acorex-components-data-pager.mjs +0 -615
  536. package/fesm2015/acorex-components-data-pager.mjs.map +0 -1
  537. package/fesm2015/acorex-components-data-table.mjs +0 -224
  538. package/fesm2015/acorex-components-data-table.mjs.map +0 -1
  539. package/fesm2015/acorex-components-date-picker.mjs +0 -297
  540. package/fesm2015/acorex-components-date-picker.mjs.map +0 -1
  541. package/fesm2015/acorex-components-decorators.mjs +0 -356
  542. package/fesm2015/acorex-components-dialog.mjs +0 -233
  543. package/fesm2015/acorex-components-drawer.mjs +0 -202
  544. package/fesm2015/acorex-components-drawer.mjs.map +0 -1
  545. package/fesm2015/acorex-components-dropdown.mjs +0 -135
  546. package/fesm2015/acorex-components-dropdown.mjs.map +0 -1
  547. package/fesm2015/acorex-components-form.mjs +0 -450
  548. package/fesm2015/acorex-components-form.mjs.map +0 -1
  549. package/fesm2015/acorex-components-label.mjs.map +0 -1
  550. package/fesm2015/acorex-components-loading.mjs +0 -385
  551. package/fesm2015/acorex-components-loading.mjs.map +0 -1
  552. package/fesm2015/acorex-components-menu.mjs +0 -381
  553. package/fesm2015/acorex-components-menu.mjs.map +0 -1
  554. package/fesm2015/acorex-components-mixin.mjs.map +0 -1
  555. package/fesm2015/acorex-components-notification.mjs +0 -217
  556. package/fesm2015/acorex-components-notification.mjs.map +0 -1
  557. package/fesm2015/acorex-components-number-box.mjs +0 -300
  558. package/fesm2015/acorex-components-page.mjs +0 -127
  559. package/fesm2015/acorex-components-page.mjs.map +0 -1
  560. package/fesm2015/acorex-components-password-box.mjs +0 -99
  561. package/fesm2015/acorex-components-picker.mjs +0 -77
  562. package/fesm2015/acorex-components-popover.mjs +0 -278
  563. package/fesm2015/acorex-components-popup.mjs +0 -275
  564. package/fesm2015/acorex-components-popup.mjs.map +0 -1
  565. package/fesm2015/acorex-components-progress-bar.mjs +0 -57
  566. package/fesm2015/acorex-components-radio.mjs +0 -66
  567. package/fesm2015/acorex-components-range-slider.mjs +0 -148
  568. package/fesm2015/acorex-components-range-slider.mjs.map +0 -1
  569. package/fesm2015/acorex-components-rating.mjs +0 -65
  570. package/fesm2015/acorex-components-result.mjs +0 -49
  571. package/fesm2015/acorex-components-result.mjs.map +0 -1
  572. package/fesm2015/acorex-components-search-box.mjs +0 -84
  573. package/fesm2015/acorex-components-search-box.mjs.map +0 -1
  574. package/fesm2015/acorex-components-select-box.mjs +0 -453
  575. package/fesm2015/acorex-components-select-box.mjs.map +0 -1
  576. package/fesm2015/acorex-components-selection-list.mjs +0 -89
  577. package/fesm2015/acorex-components-switch.mjs +0 -91
  578. package/fesm2015/acorex-components-tabs.mjs +0 -299
  579. package/fesm2015/acorex-components-tag.mjs +0 -53
  580. package/fesm2015/acorex-components-tag.mjs.map +0 -1
  581. package/fesm2015/acorex-components-textarea.mjs +0 -52
  582. package/fesm2015/acorex-components-textarea.mjs.map +0 -1
  583. package/fesm2015/acorex-components-textbox.mjs +0 -149
  584. package/fesm2015/acorex-components-textbox.mjs.map +0 -1
  585. package/fesm2015/acorex-components-time-box.mjs +0 -336
  586. package/fesm2015/acorex-components-time-box.mjs.map +0 -1
  587. package/fesm2015/acorex-components-toast.mjs +0 -222
  588. package/fesm2015/acorex-components-toast.mjs.map +0 -1
  589. package/fesm2015/acorex-components-tooltip.mjs +0 -164
  590. package/fesm2015/acorex-components-tooltip.mjs.map +0 -1
  591. package/fesm2015/acorex-components-tree-view.mjs +0 -133
  592. package/fesm2015/acorex-components-uploader.mjs +0 -129
  593. package/fesm2015/acorex-components-uploader.mjs.map +0 -1
  594. package/fesm2020/acorex-components-badge.mjs +0 -53
  595. package/fesm2020/acorex-components-badge.mjs.map +0 -1
  596. package/fesm2020/acorex-components-button.mjs.map +0 -1
  597. package/fesm2020/acorex-components-calendar.mjs +0 -530
  598. package/fesm2020/acorex-components-calendar.mjs.map +0 -1
  599. package/fesm2020/acorex-components-card.mjs +0 -41
  600. package/fesm2020/acorex-components-card.mjs.map +0 -1
  601. package/fesm2020/acorex-components-checkbox.mjs.map +0 -1
  602. package/fesm2020/acorex-components-chips.mjs +0 -57
  603. package/fesm2020/acorex-components-collapse.mjs +0 -115
  604. package/fesm2020/acorex-components-color-picker.mjs +0 -169
  605. package/fesm2020/acorex-components-color-picker.mjs.map +0 -1
  606. package/fesm2020/acorex-components-common.mjs.map +0 -1
  607. package/fesm2020/acorex-components-context-menu.mjs.map +0 -1
  608. package/fesm2020/acorex-components-date-picker.mjs +0 -295
  609. package/fesm2020/acorex-components-date-picker.mjs.map +0 -1
  610. package/fesm2020/acorex-components-decorators.mjs.map +0 -1
  611. package/fesm2020/acorex-components-dialog.mjs.map +0 -1
  612. package/fesm2020/acorex-components-dropdown.mjs.map +0 -1
  613. package/fesm2020/acorex-components-form.mjs.map +0 -1
  614. package/fesm2020/acorex-components-image.mjs +0 -100
  615. package/fesm2020/acorex-components-image.mjs.map +0 -1
  616. package/fesm2020/acorex-components-label.mjs +0 -71
  617. package/fesm2020/acorex-components-label.mjs.map +0 -1
  618. package/fesm2020/acorex-components-mixin.mjs +0 -1259
  619. package/fesm2020/acorex-components-number-box.mjs.map +0 -1
  620. package/fesm2020/acorex-components-password-box.mjs +0 -99
  621. package/fesm2020/acorex-components-password-box.mjs.map +0 -1
  622. package/fesm2020/acorex-components-picker.mjs.map +0 -1
  623. package/fesm2020/acorex-components-popover.mjs.map +0 -1
  624. package/fesm2020/acorex-components-progress-bar.mjs.map +0 -1
  625. package/fesm2020/acorex-components-radio.mjs +0 -66
  626. package/fesm2020/acorex-components-radio.mjs.map +0 -1
  627. package/fesm2020/acorex-components-range-slider.mjs.map +0 -1
  628. package/fesm2020/acorex-components-rating.mjs +0 -65
  629. package/fesm2020/acorex-components-rating.mjs.map +0 -1
  630. package/fesm2020/acorex-components-selection-list.mjs.map +0 -1
  631. package/fesm2020/acorex-components-switch.mjs.map +0 -1
  632. package/fesm2020/acorex-components-tabs.mjs.map +0 -1
  633. package/fesm2020/acorex-components-textarea.mjs +0 -52
  634. package/fesm2020/acorex-components-tree-view.mjs +0 -133
  635. package/fesm2020/acorex-components-tree-view.mjs.map +0 -1
  636. package/fesm2020/acorex-components.mjs +0 -12
  637. package/fesm2020/acorex-components.mjs.map +0 -1
  638. /package/{esm2020 → esm2022}/acorex-components.mjs +0 -0
  639. /package/{esm2020 → esm2022}/action-sheet/acorex-components-action-sheet.mjs +0 -0
  640. /package/{esm2020 → esm2022}/action-sheet/public-api.mjs +0 -0
  641. /package/{esm2020 → esm2022}/action-sheet/src/action-sheet.interface.mjs +0 -0
  642. /package/{esm2020 → esm2022}/alert/acorex-components-alert.mjs +0 -0
  643. /package/{esm2020 → esm2022}/alert/public-api.mjs +0 -0
  644. /package/{esm2020 → esm2022}/avatar/acorex-components-avatar.mjs +0 -0
  645. /package/{esm2020 → esm2022}/avatar/public-api.mjs +0 -0
  646. /package/{esm2020 → esm2022}/badge/acorex-components-badge.mjs +0 -0
  647. /package/{esm2020 → esm2022}/badge/public-api.mjs +0 -0
  648. /package/{esm2020 → esm2022}/breadcrumbs/acorex-components-breadcrumbs.mjs +0 -0
  649. /package/{esm2020 → esm2022}/breadcrumbs/public-api.mjs +0 -0
  650. /package/{esm2020 → esm2022}/breadcrumbs/src/breadcrumbs-item.class.mjs +0 -0
  651. /package/{esm2020 → esm2022}/button/acorex-components-button.mjs +0 -0
  652. /package/{esm2020 → esm2022}/button/public-api.mjs +0 -0
  653. /package/{esm2020 → esm2022}/button/src/button-item.class.mjs +0 -0
  654. /package/{esm2020 → esm2022}/calendar/acorex-components-calendar.mjs +0 -0
  655. /package/{esm2020 → esm2022}/card/acorex-components-card.mjs +0 -0
  656. /package/{esm2020 → esm2022}/card/public-api.mjs +0 -0
  657. /package/{esm2020 → esm2022}/checkbox/acorex-components-checkbox.mjs +0 -0
  658. /package/{esm2020 → esm2022}/checkbox/public-api.mjs +0 -0
  659. /package/{esm2020 → esm2022}/chips/acorex-components-chips.mjs +0 -0
  660. /package/{esm2020 → esm2022}/chips/public-api.mjs +0 -0
  661. /package/{esm2020 → esm2022}/collapse/acorex-components-collapse.mjs +0 -0
  662. /package/{esm2020 → esm2022}/collapse/public-api.mjs +0 -0
  663. /package/{esm2020 → esm2022}/color-palette/acorex-components-color-palette.mjs +0 -0
  664. /package/{esm2020 → esm2022}/color-palette/public-api.mjs +0 -0
  665. /package/{esm2020 → esm2022}/color-picker/acorex-components-color-picker.mjs +0 -0
  666. /package/{esm2020 → esm2022}/color-picker/public-api.mjs +0 -0
  667. /package/{esm2020 → esm2022}/common/acorex-components-common.mjs +0 -0
  668. /package/{esm2020 → esm2022}/common/src/classes/drawing.class.mjs +0 -0
  669. /package/{esm2020 → esm2022}/common/src/classes/styles.class.mjs +0 -0
  670. /package/{esm2020 → esm2022}/common/src/components/colorlook-component.class.mjs +0 -0
  671. /package/{esm2020 → esm2022}/common/src/constant/positions.mjs +0 -0
  672. /package/{esm2020 → esm2022}/context-menu/acorex-components-context-menu.mjs +0 -0
  673. /package/{esm2020 → esm2022}/context-menu/public-api.mjs +0 -0
  674. /package/{esm2020 → esm2022}/data-pager/acorex-components-data-pager.mjs +0 -0
  675. /package/{esm2020 → esm2022}/data-pager/public-api.mjs +0 -0
  676. /package/{esm2020 → esm2022}/data-table/acorex-components-data-table.mjs +0 -0
  677. /package/{esm2020 → esm2022}/data-table/public-api.mjs +0 -0
  678. /package/{esm2020 → esm2022}/date-picker/acorex-components-date-picker.mjs +0 -0
  679. /package/{esm2020 → esm2022}/date-picker/public-api.mjs +0 -0
  680. /package/{esm2020 → esm2022}/decorators/acorex-components-decorators.mjs +0 -0
  681. /package/{esm2020 → esm2022}/decorators/public-api.mjs +0 -0
  682. /package/{esm2020 → esm2022}/dialog/acorex-components-dialog.mjs +0 -0
  683. /package/{esm2020 → esm2022}/dialog/public-api.mjs +0 -0
  684. /package/{esm2020 → esm2022}/dialog/src/dialog.class.mjs +0 -0
  685. /package/{esm2020 → esm2022}/drawer/acorex-components-drawer.mjs +0 -0
  686. /package/{esm2020 → esm2022}/drawer/public-api.mjs +0 -0
  687. /package/{esm2020 → esm2022}/dropdown/acorex-components-dropdown.mjs +0 -0
  688. /package/{esm2020 → esm2022}/dropdown/public-api.mjs +0 -0
  689. /package/{esm2020 → esm2022}/form/acorex-components-form.mjs +0 -0
  690. /package/{esm2020 → esm2022}/form/public-api.mjs +0 -0
  691. /package/{esm2020 → esm2022}/form/src/validation.class.mjs +0 -0
  692. /package/{esm2020 → esm2022}/image/acorex-components-image.mjs +0 -0
  693. /package/{esm2020 → esm2022}/image/public-api.mjs +0 -0
  694. /package/{esm2020 → esm2022}/label/acorex-components-label.mjs +0 -0
  695. /package/{esm2020 → esm2022}/label/public-api.mjs +0 -0
  696. /package/{esm2020 → esm2022}/loading/acorex-components-loading.mjs +0 -0
  697. /package/{esm2020 → esm2022}/loading/public-api.mjs +0 -0
  698. /package/{esm2020 → esm2022}/menu/acorex-components-menu.mjs +0 -0
  699. /package/{esm2020 → esm2022}/menu/public-api.mjs +0 -0
  700. /package/{esm2020 → esm2022}/mixin/acorex-components-mixin.mjs +0 -0
  701. /package/{esm2020 → esm2022}/mixin/public-api.mjs +0 -0
  702. /package/{esm2020 → esm2022}/mixin/src/constratctor.mjs +0 -0
  703. /package/{esm2020 → esm2022}/mixin/src/datalist.class.mjs +0 -0
  704. /package/{esm2020 → esm2022}/mixin/src/mixin.class.mjs +0 -0
  705. /package/{esm2020 → esm2022}/mixin/src/page-component.class.mjs +0 -0
  706. /package/{esm2020 → esm2022}/notification/acorex-components-notification.mjs +0 -0
  707. /package/{esm2020 → esm2022}/notification/public-api.mjs +0 -0
  708. /package/{esm2020 → esm2022}/notification/src/notification.class.mjs +0 -0
  709. /package/{esm2020 → esm2022}/number-box/acorex-components-number-box.mjs +0 -0
  710. /package/{esm2020 → esm2022}/number-box/public-api.mjs +0 -0
  711. /package/{esm2020 → esm2022}/page/acorex-components-page.mjs +0 -0
  712. /package/{esm2020 → esm2022}/page/public-api.mjs +0 -0
  713. /package/{esm2020 → esm2022}/password-box/acorex-components-password-box.mjs +0 -0
  714. /package/{esm2020 → esm2022}/password-box/public-api.mjs +0 -0
  715. /package/{esm2020 → esm2022}/picker/acorex-components-picker.mjs +0 -0
  716. /package/{esm2020 → esm2022}/picker/public-api.mjs +0 -0
  717. /package/{esm2020 → esm2022}/popover/acorex-components-popover.mjs +0 -0
  718. /package/{esm2020 → esm2022}/popover/public-api.mjs +0 -0
  719. /package/{esm2020 → esm2022}/popup/acorex-components-popup.mjs +0 -0
  720. /package/{esm2020 → esm2022}/popup/public-api.mjs +0 -0
  721. /package/{esm2020 → esm2022}/progress-bar/acorex-components-progress-bar.mjs +0 -0
  722. /package/{esm2020 → esm2022}/progress-bar/public-api.mjs +0 -0
  723. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  724. /package/{esm2020 → esm2022}/radio/acorex-components-radio.mjs +0 -0
  725. /package/{esm2020 → esm2022}/radio/public-api.mjs +0 -0
  726. /package/{esm2020 → esm2022}/range-slider/acorex-components-range-slider.mjs +0 -0
  727. /package/{esm2020 → esm2022}/range-slider/public-api.mjs +0 -0
  728. /package/{esm2020 → esm2022}/rating/acorex-components-rating.mjs +0 -0
  729. /package/{esm2020 → esm2022}/rating/public-api.mjs +0 -0
  730. /package/{esm2020 → esm2022}/result/acorex-components-result.mjs +0 -0
  731. /package/{esm2020 → esm2022}/result/public-api.mjs +0 -0
  732. /package/{esm2020 → esm2022}/search-box/acorex-components-search-box.mjs +0 -0
  733. /package/{esm2020 → esm2022}/search-box/public-api.mjs +0 -0
  734. /package/{esm2020 → esm2022}/select-box/acorex-components-select-box.mjs +0 -0
  735. /package/{esm2020 → esm2022}/select-box/public-api.mjs +0 -0
  736. /package/{esm2020 → esm2022}/selection-list/acorex-components-selection-list.mjs +0 -0
  737. /package/{esm2020 → esm2022}/selection-list/public-api.mjs +0 -0
  738. /package/{esm2020 → esm2022}/switch/acorex-components-switch.mjs +0 -0
  739. /package/{esm2020 → esm2022}/switch/public-api.mjs +0 -0
  740. /package/{esm2020 → esm2022}/tabs/acorex-components-tabs.mjs +0 -0
  741. /package/{esm2020 → esm2022}/tabs/public-api.mjs +0 -0
  742. /package/{esm2020 → esm2022}/tag/acorex-components-tag.mjs +0 -0
  743. /package/{esm2020 → esm2022}/tag/public-api.mjs +0 -0
  744. /package/{esm2020 → esm2022}/textarea/acorex-components-textarea.mjs +0 -0
  745. /package/{esm2020 → esm2022}/textarea/public-api.mjs +0 -0
  746. /package/{esm2020 → esm2022}/textbox/acorex-components-textbox.mjs +0 -0
  747. /package/{esm2020 → esm2022}/textbox/public-api.mjs +0 -0
  748. /package/{esm2020 → esm2022}/time-box/acorex-components-time-box.mjs +0 -0
  749. /package/{esm2020 → esm2022}/time-box/public-api.mjs +0 -0
  750. /package/{esm2020 → esm2022}/toast/acorex-components-toast.mjs +0 -0
  751. /package/{esm2020 → esm2022}/toast/public-api.mjs +0 -0
  752. /package/{esm2020 → esm2022}/toast/src/toast.class.mjs +0 -0
  753. /package/{esm2020 → esm2022}/tooltip/acorex-components-tooltip.mjs +0 -0
  754. /package/{esm2020 → esm2022}/tooltip/public-api.mjs +0 -0
  755. /package/{esm2020 → esm2022}/tree-view/acorex-components-tree-view.mjs +0 -0
  756. /package/{esm2020 → esm2022}/tree-view/public-api.mjs +0 -0
  757. /package/{esm2020 → esm2022}/uploader/acorex-components-uploader.mjs +0 -0
  758. /package/{esm2020 → esm2022}/uploader/public-api.mjs +0 -0
  759. /package/{fesm2015 → fesm2022}/acorex-components.mjs.map +0 -0
@@ -0,0 +1,220 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { EventEmitter } from '@angular/core';
3
+ import { AXObjectUtil } from '@acorex/core/utils';
4
+ export function _ValueComponenetMixin(Base) {
5
+ return class extends Base {
6
+ /**
7
+ * Fires each time the user press a key.
8
+ * @event
9
+ */
10
+ onValueChanged = new EventEmitter();
11
+ valueChange = new EventEmitter();
12
+ stateChange = new EventEmitter();
13
+ #readonly = false;
14
+ /**
15
+ * If set to true, user cannot change the value of component.
16
+ */
17
+ get readonly() {
18
+ return this.#readonly;
19
+ }
20
+ set readonly(value) {
21
+ this.#readonly = coerceBooleanProperty(value);
22
+ }
23
+ #allowNull = true;
24
+ get allowNull() {
25
+ return this.#allowNull;
26
+ }
27
+ set allowNull(value) {
28
+ this.#allowNull = coerceBooleanProperty(value);
29
+ }
30
+ #name;
31
+ get name() {
32
+ return this.#name;
33
+ }
34
+ set name(value) {
35
+ this.#name = value;
36
+ }
37
+ #isUserInteraction = false;
38
+ get isUserInteraction() {
39
+ return this.#isUserInteraction;
40
+ }
41
+ #value;
42
+ get value() {
43
+ return this._internalGetValue();
44
+ }
45
+ set value(v) {
46
+ v = this._internalSetValue(v);
47
+ //if (!this._isInited ) {
48
+ const old = AXObjectUtil.deepJSONClone(this.value);
49
+ // TODO: check real equality
50
+ if (v != old) {
51
+ this.#value = v;
52
+ this._emitOnValueChangedEvent(old, this.value);
53
+ this._cdr.markForCheck();
54
+ if (v == null || v == undefined || v == '' || (Array.isArray(v) && v.length == 0)) {
55
+ this._setState('clear');
56
+ }
57
+ // else {
58
+ // if (this._isInited) {
59
+ // this.validate();
60
+ // }
61
+ // }
62
+ }
63
+ this.#isUserInteraction = false;
64
+ //}
65
+ }
66
+ #state = 'clear';
67
+ get state() {
68
+ return this.#state;
69
+ }
70
+ set state(value) {
71
+ this._setState(value);
72
+ this.stateChange.emit(value);
73
+ }
74
+ _emitOnValueChangedEvent(oldValue, newValue) {
75
+ this.valueChange.emit(newValue);
76
+ this.onValueChanged.emit({
77
+ component: this,
78
+ value: newValue,
79
+ oldValue: oldValue,
80
+ name: this.name,
81
+ isUserInteraction: this.isUserInteraction,
82
+ });
83
+ this._onValueChanged(oldValue, this.#value);
84
+ this.#isUserInteraction = false;
85
+ }
86
+ _internalSetValue(value) {
87
+ return this._setValue(value);
88
+ }
89
+ _internalGetValue() {
90
+ return this._getValue(this.#value);
91
+ }
92
+ _setValue(value) {
93
+ return value;
94
+ }
95
+ _getValue(value) {
96
+ return value;
97
+ }
98
+ _setUserInteraction() {
99
+ this.#isUserInteraction = true;
100
+ }
101
+ _onValueChanged(oldValue, newValue) { }
102
+ _onInternalInit() {
103
+ this._getHostElement().setAttribute('ax-form-input', 'true');
104
+ super._onInternalInit();
105
+ }
106
+ _onInternalViewInit() {
107
+ this._checkRequired();
108
+ super._onInternalViewInit();
109
+ }
110
+ _onInternalDestroy() {
111
+ super.onDestroy();
112
+ }
113
+ clear() {
114
+ this.value = null;
115
+ }
116
+ _checkRequired() {
117
+ const isRequired = Array.from(this._getHostElement().querySelectorAll('ax-validation-rule')).some(c => c.__axContext__.enabled && c.__axContext__.rule == 'required');
118
+ //
119
+ if (isRequired) {
120
+ const container = this._getHostElement().classList.contains('ax-editor-container')
121
+ ? this._getHostElement()
122
+ : this._getHostElement().querySelector('.ax-editor-container');
123
+ const formField = container?.closest('.ax-form-field');
124
+ const label = formField?.querySelector('ax-label')?.__axContext__;
125
+ if (label)
126
+ label.required = true;
127
+ }
128
+ }
129
+ validate() {
130
+ const rules = Array.from(this._getHostElement().querySelectorAll('ax-validation-rule')).filter(c => c.__axContext__.enabled);
131
+ //
132
+ if (!rules || rules.length === 0) {
133
+ this._setState('clear');
134
+ return Promise.resolve({
135
+ result: true,
136
+ value: this.value,
137
+ name: this.name,
138
+ id: this.id,
139
+ });
140
+ }
141
+ return new Promise(resolve => {
142
+ Promise.all(rules
143
+ .filter(c => typeof c?.validate === 'function')
144
+ .map(c => {
145
+ return c.validate(this.value);
146
+ })).then(d => {
147
+ const error = d.find(c => c.result === false);
148
+ if (error) {
149
+ this._setState('error', error.message);
150
+ resolve({
151
+ result: false,
152
+ value: this.value,
153
+ message: error.message,
154
+ name: this.name,
155
+ id: this.id,
156
+ });
157
+ }
158
+ else {
159
+ this._setState('success');
160
+ resolve({
161
+ result: true,
162
+ value: this.value,
163
+ name: this.name,
164
+ id: this.id,
165
+ });
166
+ }
167
+ });
168
+ });
169
+ }
170
+ /**
171
+ * @ignore
172
+ */
173
+ constructor(...args) {
174
+ super(...args);
175
+ }
176
+ _setState(state, ...args) {
177
+ const container = this._getHostElement().classList.contains('ax-editor-container')
178
+ ? this._getHostElement()
179
+ : this._getHostElement().querySelector('.ax-editor-container');
180
+ const formField = container?.closest('.ax-form-field');
181
+ const label = formField?.querySelector('ax-label') || formField?.querySelector('label');
182
+ let target = container || this._getInnerElement();
183
+ if (target?.querySelector('.ax-error-container')) {
184
+ target = target.querySelector('.ax-error-container');
185
+ }
186
+ const parent = target?.parentElement;
187
+ if (!target || !parent)
188
+ return;
189
+ switch (state) {
190
+ case 'clear':
191
+ this.#state = 'clear';
192
+ if (parent.querySelector('span.ax-error-message')) {
193
+ parent.removeChild(parent.querySelector('span.ax-error-message'));
194
+ }
195
+ label?.classList.remove('ax-state-error');
196
+ target.classList.remove('ax-state-error', 'ax-state-success');
197
+ break;
198
+ case 'success':
199
+ this._setState('clear');
200
+ target.classList.add('ax-state-success');
201
+ this.#state = 'success';
202
+ break;
203
+ case 'error':
204
+ this._setState('clear');
205
+ if (args[0]) {
206
+ const span = document.createElement('span');
207
+ span.innerText = args[0];
208
+ span.classList.add('ax-error-message');
209
+ parent.appendChild(span);
210
+ }
211
+ label?.classList.add('ax-state-error');
212
+ target.classList.add('ax-state-error');
213
+ this.#state = 'error';
214
+ break;
215
+ }
216
+ this._cdr.markForCheck();
217
+ }
218
+ };
219
+ }
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtbWl4aW4uY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9taXhpbi9zcmMvdmFsdWUtbWl4aW4uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsTUFBTSxVQUFVLHFCQUFxQixDQUE2QyxJQUFXO0lBQzNGLE9BQU8sS0FBTSxTQUFRLElBQUk7UUFDdkI7OztXQUdHO1FBQ0gsY0FBYyxHQUEyQyxJQUFJLFlBQVksRUFBNEIsQ0FBQztRQUV0RyxXQUFXLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDekQsV0FBVyxHQUFtQyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUVuRixTQUFTLEdBQVksS0FBSyxDQUFDO1FBRTNCOztXQUVHO1FBQ0gsSUFBSSxRQUFRO1lBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLENBQUM7UUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1lBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELFVBQVUsR0FBWSxJQUFJLENBQUM7UUFDM0IsSUFBSSxTQUFTO1lBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ3pCLENBQUM7UUFDRCxJQUFJLFNBQVMsQ0FBQyxLQUFjO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUVELEtBQUssQ0FBUztRQUNkLElBQUksSUFBSTtZQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztR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QixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDWCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQzt3QkFDdkMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztxQkFDMUI7b0JBQ0QsS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztvQkFDdkMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztvQkFFdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7b0JBQ3RCLE1BQU07YUFDVDtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcclxuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYQmFzZUNvbXBvbmVudCwgQVhDb21wb25lbnRTdGF0ZSB9IGZyb20gJy4vYmFzZS1jb21wb25lbnRzLmNsYXNzJztcclxuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cmF0Y3Rvcic7XHJcbmltcG9ydCB7IEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcclxuaW1wb3J0IHsgQVhPYmplY3RVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlL3V0aWxzJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfVmFsdWVDb21wb25lbmV0TWl4aW48VEJhc2UgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxBWEJhc2VDb21wb25lbnQ+PihCYXNlOiBUQmFzZSkge1xyXG4gIHJldHVybiBjbGFzcyBleHRlbmRzIEJhc2Uge1xyXG4gICAgLyoqXHJcbiAgICAgKiAgRmlyZXMgZWFjaCB0aW1lIHRoZSB1c2VyIHByZXNzIGEga2V5LlxyXG4gICAgICogIEBldmVudFxyXG4gICAgICovXHJcbiAgICBvblZhbHVlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYVmFsdWVDaGFuZ2VkRXZlbnQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYVmFsdWVDaGFuZ2VkRXZlbnQ8YW55Pj4oKTtcclxuXHJcbiAgICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIHN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhDb21wb25lbnRTdGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYQ29tcG9uZW50U3RhdGU+KCk7XHJcblxyXG4gICAgI3JlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgSWYgc2V0IHRvIHRydWUsIHVzZXIgY2Fubm90IGNoYW5nZSB0aGUgdmFsdWUgb2YgY29tcG9uZW50LlxyXG4gICAgICovXHJcbiAgICBnZXQgcmVhZG9ubHkoKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLiNyZWFkb25seTtcclxuICAgIH1cclxuICAgIHNldCByZWFkb25seSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICB0aGlzLiNyZWFkb25seSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgI2FsbG93TnVsbDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBnZXQgYWxsb3dOdWxsKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy4jYWxsb3dOdWxsO1xyXG4gICAgfVxyXG4gICAgc2V0IGFsbG93TnVsbCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICB0aGlzLiNhbGxvd051bGwgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgICNuYW1lOiBzdHJpbmc7XHJcbiAgICBnZXQgbmFtZSgpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuI25hbWU7XHJcbiAgICB9XHJcbiAgICBzZXQgbmFtZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuI25hbWUgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAjaXNVc2VySW50ZXJhY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBnZXQgaXNVc2VySW50ZXJhY3Rpb24oKTogYm9vbGVhbiB7XHJcbiAgICAgIHJldHVybiB0aGlzLiNpc1VzZXJJbnRlcmFjdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICAjdmFsdWU6IGFueTtcclxuICAgIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgICByZXR1cm4gdGhpcy5faW50ZXJuYWxHZXRWYWx1ZSgpO1xyXG4gICAgfVxyXG4gICAgc2V0IHZhbHVlKHY6IGFueSkge1xyXG4gICAgICB2ID0gdGhpcy5faW50ZXJuYWxTZXRWYWx1ZSh2KTtcclxuICAgICAgLy9pZiAoIXRoaXMuX2lzSW5pdGVkICkge1xyXG4gICAgICBjb25zdCBvbGQgPSBBWE9iamVjdFV0aWwuZGVlcEpTT05DbG9uZSh0aGlzLnZhbHVlKTtcclxuICAgICAgLy8gVE9ETzogY2hlY2sgcmVhbCBlcXVhbGl0eVxyXG4gICAgICBpZiAodiAhPSBvbGQpIHtcclxuICAgICAgICB0aGlzLiN2YWx1ZSA9IHY7XHJcbiAgICAgICAgdGhpcy5fZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkLCB0aGlzLnZhbHVlKTtcclxuICAgICAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgaWYgKHYgPT0gbnVsbCB8fCB2ID09IHVuZGVmaW5lZCB8fCB2ID09ICcnIHx8IChBcnJheS5pc0FycmF5KHYpICYmIHYubGVuZ3RoID09IDApKSB7XHJcbiAgICAgICAgICB0aGlzLl9zZXRTdGF0ZSgnY2xlYXInKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gZWxzZSB7XHJcbiAgICAgICAgLy8gICBpZiAodGhpcy5faXNJbml0ZWQpIHtcclxuICAgICAgICAvLyAgICAgdGhpcy52YWxpZGF0ZSgpO1xyXG4gICAgICAgIC8vICAgfVxyXG4gICAgICAgIC8vIH1cclxuICAgICAgfVxyXG4gICAgICB0aGlzLiNpc1VzZXJJbnRlcmFjdGlvbiA9IGZhbHNlO1xyXG4gICAgICAvL31cclxuICAgIH1cclxuXHJcbiAgICAjc3RhdGU6IEFYQ29tcG9uZW50U3RhdGUgPSAnY2xlYXInO1xyXG5cclxuICAgIGdldCBzdGF0ZSgpOiBBWENvbXBvbmVudFN0YXRlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuI3N0YXRlO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBzdGF0ZSh2YWx1ZTogQVhDb21wb25lbnRTdGF0ZSkge1xyXG4gICAgICB0aGlzLl9zZXRTdGF0ZSh2YWx1ZSk7XHJcbiAgICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgX2VtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZFZhbHVlPzogYW55LCBuZXdWYWx1ZT86IGFueSkge1xyXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xyXG4gICAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkLmVtaXQoe1xyXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgICB2YWx1ZTogbmV3VmFsdWUsXHJcbiAgICAgICAgb2xkVmFsdWU6IG9sZFZhbHVlLFxyXG4gICAgICAgIG5hbWU6IHRoaXMubmFtZSxcclxuICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogdGhpcy5pc1VzZXJJbnRlcmFjdGlvbixcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuX29uVmFsdWVDaGFuZ2VkKG9sZFZhbHVlLCB0aGlzLiN2YWx1ZSk7XHJcbiAgICAgIHRoaXMuI2lzVXNlckludGVyYWN0aW9uID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgX2ludGVybmFsU2V0VmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fc2V0VmFsdWUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIF9pbnRlcm5hbEdldFZhbHVlKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fZ2V0VmFsdWUodGhpcy4jdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIF9zZXRWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBfZ2V0VmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgX3NldFVzZXJJbnRlcmFjdGlvbigpIHtcclxuICAgICAgdGhpcy4jaXNVc2VySW50ZXJhY3Rpb24gPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIF9vblZhbHVlQ2hhbmdlZChvbGRWYWx1ZTogYW55LCBuZXdWYWx1ZTogYW55KTogdm9pZCB7fVxyXG5cclxuICAgIF9vbkludGVybmFsSW5pdCgpIHtcclxuICAgICAgdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKS5zZXRBdHRyaWJ1dGUoJ2F4LWZvcm0taW5wdXQnLCAndHJ1ZScpO1xyXG4gICAgICBzdXBlci5fb25JbnRlcm5hbEluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBfb25JbnRlcm5hbFZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICB0aGlzLl9jaGVja1JlcXVpcmVkKCk7XHJcbiAgICAgIHN1cGVyLl9vbkludGVybmFsVmlld0luaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBfb25JbnRlcm5hbERlc3Ryb3koKSB7XHJcbiAgICAgIHN1cGVyLm9uRGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyKCkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBfY2hlY2tSZXF1aXJlZCgpIHtcclxuICAgICAgY29uc3QgaXNSZXF1aXJlZCA9IEFycmF5LmZyb20odGhpcy5fZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yQWxsKCdheC12YWxpZGF0aW9uLXJ1bGUnKSkuc29tZShcclxuICAgICAgICBjID0+IChjIGFzIGFueSkuX19heENvbnRleHRfXy5lbmFibGVkICYmIChjIGFzIGFueSkuX19heENvbnRleHRfXy5ydWxlID09ICdyZXF1aXJlZCdcclxuICAgICAgKTtcclxuICAgICAgLy9cclxuICAgICAgaWYgKGlzUmVxdWlyZWQpIHtcclxuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9nZXRIb3N0RWxlbWVudCgpLmNsYXNzTGlzdC5jb250YWlucygnYXgtZWRpdG9yLWNvbnRhaW5lcicpXHJcbiAgICAgICAgICA/IHRoaXMuX2dldEhvc3RFbGVtZW50KClcclxuICAgICAgICAgIDogdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCcuYXgtZWRpdG9yLWNvbnRhaW5lcicpO1xyXG4gICAgICAgIGNvbnN0IGZvcm1GaWVsZCA9IGNvbnRhaW5lcj8uY2xvc2VzdCgnLmF4LWZvcm0tZmllbGQnKTtcclxuICAgICAgICBjb25zdCBsYWJlbCA9IChmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgYXMgYW55KT8uX19heENvbnRleHRfXztcclxuICAgICAgICBpZiAobGFiZWwpIGxhYmVsLnJlcXVpcmVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlKCk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgIGNvbnN0IHJ1bGVzID0gQXJyYXkuZnJvbSh0aGlzLl9nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3JBbGwoJ2F4LXZhbGlkYXRpb24tcnVsZScpKS5maWx0ZXIoYyA9PiAoYyBhcyBhbnkpLl9fYXhDb250ZXh0X18uZW5hYmxlZCk7XHJcbiAgICAgIC8vXHJcbiAgICAgIGlmICghcnVsZXMgfHwgcnVsZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0U3RhdGUoJ2NsZWFyJyk7XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XHJcbiAgICAgICAgICByZXN1bHQ6IHRydWUsXHJcbiAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcclxuICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcclxuICAgICAgICAgIGlkOiB0aGlzLmlkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PihyZXNvbHZlID0+IHtcclxuICAgICAgICBQcm9taXNlLmFsbChcclxuICAgICAgICAgIHJ1bGVzXHJcbiAgICAgICAgICAgIC5maWx0ZXIoYyA9PiB0eXBlb2YgKGMgYXMgYW55KT8udmFsaWRhdGUgPT09ICdmdW5jdGlvbicpXHJcbiAgICAgICAgICAgIC5tYXAoYyA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIChjIGFzIGFueSkudmFsaWRhdGUodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKS50aGVuKGQgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZXJyb3IgPSBkLmZpbmQoYyA9PiBjLnJlc3VsdCA9PT0gZmFsc2UpO1xyXG4gICAgICAgICAgaWYgKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFN0YXRlKCdlcnJvcicsIGVycm9yLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICByZXNvbHZlKHtcclxuICAgICAgICAgICAgICByZXN1bHQ6IGZhbHNlLFxyXG4gICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UsXHJcbiAgICAgICAgICAgICAgbmFtZTogdGhpcy5uYW1lLFxyXG4gICAgICAgICAgICAgIGlkOiB0aGlzLmlkLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFN0YXRlKCdzdWNjZXNzJyk7XHJcbiAgICAgICAgICAgIHJlc29sdmUoe1xyXG4gICAgICAgICAgICAgIHJlc3VsdDogdHJ1ZSxcclxuICAgICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcclxuICAgICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUsXHJcbiAgICAgICAgICAgICAgaWQ6IHRoaXMuaWQsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqICBAaWdub3JlXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKC4uLmFyZ3M6IGFueVtdKSB7XHJcbiAgICAgIHN1cGVyKC4uLmFyZ3MpO1xyXG4gICAgfVxyXG5cclxuICAgIF9zZXRTdGF0ZShzdGF0ZTogQVhDb21wb25lbnRTdGF0ZSwgLi4uYXJncykge1xyXG4gICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9nZXRIb3N0RWxlbWVudCgpLmNsYXNzTGlzdC5jb250YWlucygnYXgtZWRpdG9yLWNvbnRhaW5lcicpXHJcbiAgICAgICAgPyB0aGlzLl9nZXRIb3N0RWxlbWVudCgpXHJcbiAgICAgICAgOiB0aGlzLl9nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3IoJy5heC1lZGl0b3ItY29udGFpbmVyJyk7XHJcbiAgICAgIGNvbnN0IGZvcm1GaWVsZCA9IGNvbnRhaW5lcj8uY2xvc2VzdCgnLmF4LWZvcm0tZmllbGQnKTtcclxuICAgICAgY29uc3QgbGFiZWwgPSBmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgfHwgZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdsYWJlbCcpO1xyXG4gICAgICBsZXQgdGFyZ2V0ID0gY29udGFpbmVyIHx8IHRoaXMuX2dldElubmVyRWxlbWVudCgpO1xyXG4gICAgICBpZiAodGFyZ2V0Py5xdWVyeVNlbGVjdG9yKCcuYXgtZXJyb3ItY29udGFpbmVyJykpIHtcclxuICAgICAgICB0YXJnZXQgPSB0YXJnZXQucXVlcnlTZWxlY3RvcignLmF4LWVycm9yLWNvbnRhaW5lcicpO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IHBhcmVudCA9IHRhcmdldD8ucGFyZW50RWxlbWVudDtcclxuICAgICAgaWYgKCF0YXJnZXQgfHwgIXBhcmVudCkgcmV0dXJuO1xyXG5cclxuICAgICAgc3dpdGNoIChzdGF0ZSkge1xyXG4gICAgICAgIGNhc2UgJ2NsZWFyJzpcclxuICAgICAgICAgIHRoaXMuI3N0YXRlID0gJ2NsZWFyJztcclxuICAgICAgICAgIGlmIChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykpIHtcclxuICAgICAgICAgICAgcGFyZW50LnJlbW92ZUNoaWxkKHBhcmVudC5xdWVyeVNlbGVjdG9yKCdzcGFuLmF4LWVycm9yLW1lc3NhZ2UnKSEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJyk7XHJcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LnJlbW92ZSgnYXgtc3RhdGUtZXJyb3InLCAnYXgtc3RhdGUtc3VjY2VzcycpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XHJcbiAgICAgICAgICB0aGlzLl9zZXRTdGF0ZSgnY2xlYXInKTtcclxuICAgICAgICAgIHRhcmdldC5jbGFzc0xpc3QuYWRkKCdheC1zdGF0ZS1zdWNjZXNzJyk7XHJcbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2Vycm9yJzpcclxuICAgICAgICAgIHRoaXMuX3NldFN0YXRlKCdjbGVhcicpO1xyXG4gICAgICAgICAgaWYgKGFyZ3NbMF0pIHtcclxuICAgICAgICAgICAgY29uc3Qgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcclxuICAgICAgICAgICAgc3Bhbi5pbm5lclRleHQgPSBhcmdzWzBdO1xyXG4gICAgICAgICAgICBzcGFuLmNsYXNzTGlzdC5hZGQoJ2F4LWVycm9yLW1lc3NhZ2UnKTtcclxuICAgICAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKHNwYW4pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XHJcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgnYXgtc3RhdGUtZXJyb3InKTtcclxuXHJcbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9ICdlcnJvcic7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -0,0 +1,92 @@
1
+ import { AXClosbaleComponent } from '@acorex/components/common';
2
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, TemplateRef, } from '@angular/core';
3
+ import { AXBaseComponentMixin } from '@acorex/components/mixin';
4
+ import { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@angular/cdk/portal";
8
+ import * as i3 from "@acorex/components/button";
9
+ /**
10
+ * The Button is a component which detects user interaction and triggers a corresponding event
11
+ *
12
+ * @category Components
13
+ */
14
+ export class AXNotificationComponent extends AXBaseComponentMixin {
15
+ viewRef;
16
+ options;
17
+ _selectedPortal;
18
+ _icon;
19
+ close;
20
+ /**
21
+ * @ignore
22
+ */
23
+ constructor(elementRef, cdr, viewRef) {
24
+ super(elementRef, cdr);
25
+ this.viewRef = viewRef;
26
+ }
27
+ onInit() {
28
+ this._initContent();
29
+ this._initIcon();
30
+ this._handleTimeOut();
31
+ }
32
+ _handleTimeOut() {
33
+ if (this.options.timeOut) {
34
+ setTimeout(() => {
35
+ this.close();
36
+ }, this.options.timeOut);
37
+ }
38
+ }
39
+ _initContent() {
40
+ if (this.options.content instanceof (TemplateRef)) {
41
+ this._selectedPortal = new TemplatePortal(this.options.content, this.viewRef);
42
+ this._cdr.markForCheck();
43
+ }
44
+ else if (typeof this.options.content === 'function') {
45
+ this._selectedPortal = new ComponentPortal(this.options.content);
46
+ this._cdr.markForCheck();
47
+ }
48
+ }
49
+ _initIcon() {
50
+ if (!this.options.icon) {
51
+ switch (this.options.color) {
52
+ case 'success':
53
+ this._icon = 'ax-icon ax-icon-check-circle-fill';
54
+ break;
55
+ case 'warning':
56
+ this._icon = 'ax-icon ax-icon-warning-fill';
57
+ break;
58
+ case 'danger':
59
+ this._icon = 'ax-icon ax-icon-error-fill';
60
+ break;
61
+ default:
62
+ this._icon = this.options.icon || 'ax-icon ax-icon-check-circle-fill';
63
+ break;
64
+ }
65
+ }
66
+ else {
67
+ this._icon = this.options.icon;
68
+ }
69
+ }
70
+ _handleButtonClick(button) {
71
+ if (button.onClick) {
72
+ button.onClick(this);
73
+ }
74
+ }
75
+ get __hostClass() {
76
+ return `ax-${this.options.color}`;
77
+ }
78
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
79
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXNotificationComponent, selector: "ax-notification", host: { properties: { "class": "this.__hostClass" } }, providers: [
80
+ { provide: AXClosbaleComponent, useExisting: AXNotificationComponent },
81
+ ], usesInheritance: true, ngImport: i0, template: "<span [class]=\"'ax-notification-icon' + ' ' + _icon\"></span>\r\n<div class=\"ax-notification-content\">\r\n <div class=\"ax-notification-title\">{{ options.title }}</div>\r\n <ng-template *ngIf=\"_selectedPortal\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\r\n </ng-template>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\r\n <div *ngIf=\"!_selectedPortal\">{{ options.content }}</div>\r\n <div class=\"ax-notification-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <ax-button\r\n *ngFor=\"let button of options.buttons\"\r\n class=\"ax-xs\"\r\n [text]=\"button.text\"\r\n [color]=\"button.color\"\r\n [look]=\"button.look\"\r\n (onClick)=\"_handleButtonClick(button)\">\r\n {{ button.text }}\r\n </ax-button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div\r\n class=\"ax-notification-progress\"\r\n [style.animation-duration.ms]=\"options.timeOut\"\r\n *ngIf=\"options.timeOut\"></div>\r\n", styles: [".ax-dark ax-notification{background-color:rgba(var(--ax-color-on-surface))}ax-notification{width:max(20vw,380px);display:flex;padding:1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgba(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-notification.ax-primary .ax-notification-icon{color:rgba(var(--ax-color-primary-500))}ax-notification.ax-primary .ax-notification-progress{background-color:rgba(var(--ax-color-primary-500))}ax-notification.ax-secondary .ax-notification-icon{color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-secondary .ax-notification-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-success .ax-notification-icon{color:rgba(var(--ax-color-success-500))}ax-notification.ax-success .ax-notification-progress{background-color:rgba(var(--ax-color-success-500))}ax-notification.ax-warning .ax-notification-icon{color:rgba(var(--ax-color-warning-500))}ax-notification.ax-warning .ax-notification-progress{background-color:rgba(var(--ax-color-warning-500))}ax-notification.ax-danger .ax-notification-icon{color:rgba(var(--ax-color-danger-500))}ax-notification.ax-danger .ax-notification-progress{background-color:rgba(var(--ax-color-danger-500))}ax-notification.ax-info .ax-notification-icon{color:rgba(var(--ax-color-info-500))}ax-notification.ax-info .ax-notification-progress{background-color:rgba(var(--ax-color-info-500))}@media (max-width: 599px){ax-notification{width:98vw}}ax-notification .ax-notification-icon,ax-notification .ax-icon-close{font-size:1.25rem}ax-notification .ax-notification-icon{padding-inline-end:.75rem}ax-notification .ax-notification-content{display:flex;flex-direction:column;flex:1;color:rgba(var(--ax-color-surface-fore));font-weight:400}ax-notification .ax-notification-content .ax-notification-title{font-weight:500;margin-bottom:.25rem;color:rgba(var(--ax-color-surface-fore))}ax-notification .ax-notification-content .ax-notification-buttons{margin-top:.75rem;display:flex;gap:.75rem}ax-notification .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content;color:rgba(var(--ax-color-surface-fore))}ax-notification .ax-icon-close:hover{opacity:.6}ax-notification .ax-notification-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationComponent, decorators: [{
84
+ type: Component,
85
+ args: [{ selector: 'ax-notification', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
86
+ { provide: AXClosbaleComponent, useExisting: AXNotificationComponent },
87
+ ], template: "<span [class]=\"'ax-notification-icon' + ' ' + _icon\"></span>\r\n<div class=\"ax-notification-content\">\r\n <div class=\"ax-notification-title\">{{ options.title }}</div>\r\n <ng-template *ngIf=\"_selectedPortal\">\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\r\n </ng-template>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\r\n <div *ngIf=\"!_selectedPortal\">{{ options.content }}</div>\r\n <div class=\"ax-notification-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <ax-button\r\n *ngFor=\"let button of options.buttons\"\r\n class=\"ax-xs\"\r\n [text]=\"button.text\"\r\n [color]=\"button.color\"\r\n [look]=\"button.look\"\r\n (onClick)=\"_handleButtonClick(button)\">\r\n {{ button.text }}\r\n </ax-button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div\r\n class=\"ax-notification-progress\"\r\n [style.animation-duration.ms]=\"options.timeOut\"\r\n *ngIf=\"options.timeOut\"></div>\r\n", styles: [".ax-dark ax-notification{background-color:rgba(var(--ax-color-on-surface))}ax-notification{width:max(20vw,380px);display:flex;padding:1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgba(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-notification.ax-primary .ax-notification-icon{color:rgba(var(--ax-color-primary-500))}ax-notification.ax-primary .ax-notification-progress{background-color:rgba(var(--ax-color-primary-500))}ax-notification.ax-secondary .ax-notification-icon{color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-secondary .ax-notification-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-success .ax-notification-icon{color:rgba(var(--ax-color-success-500))}ax-notification.ax-success .ax-notification-progress{background-color:rgba(var(--ax-color-success-500))}ax-notification.ax-warning .ax-notification-icon{color:rgba(var(--ax-color-warning-500))}ax-notification.ax-warning .ax-notification-progress{background-color:rgba(var(--ax-color-warning-500))}ax-notification.ax-danger .ax-notification-icon{color:rgba(var(--ax-color-danger-500))}ax-notification.ax-danger .ax-notification-progress{background-color:rgba(var(--ax-color-danger-500))}ax-notification.ax-info .ax-notification-icon{color:rgba(var(--ax-color-info-500))}ax-notification.ax-info .ax-notification-progress{background-color:rgba(var(--ax-color-info-500))}@media (max-width: 599px){ax-notification{width:98vw}}ax-notification .ax-notification-icon,ax-notification .ax-icon-close{font-size:1.25rem}ax-notification .ax-notification-icon{padding-inline-end:.75rem}ax-notification .ax-notification-content{display:flex;flex-direction:column;flex:1;color:rgba(var(--ax-color-surface-fore));font-weight:400}ax-notification .ax-notification-content .ax-notification-title{font-weight:500;margin-bottom:.25rem;color:rgba(var(--ax-color-surface-fore))}ax-notification .ax-notification-content .ax-notification-buttons{margin-top:.75rem;display:flex;gap:.75rem}ax-notification .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content;color:rgba(var(--ax-color-surface-fore))}ax-notification .ax-icon-close:hover{opacity:.6}ax-notification .ax-notification-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
88
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }]; }, propDecorators: { __hostClass: [{
89
+ type: HostBinding,
90
+ args: ['class']
91
+ }] } });
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9zcmMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9zcmMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWhFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUd2QixXQUFXLEVBQ1gsV0FBVyxHQUVaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxlQUFlLEVBQVUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBRTlFOzs7O0dBSUc7QUFXSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsb0JBQW9CO0lBWXJEO0lBWFYsT0FBTyxDQUF3QjtJQUMvQixlQUFlLENBQWM7SUFDN0IsS0FBSyxDQUFTO0lBRWQsS0FBSyxDQUFhO0lBQ2xCOztPQUVHO0lBQ0gsWUFDRSxVQUFzQixFQUN0QixHQUFzQixFQUNkLE9BQXlCO1FBRWpDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFGZixZQUFPLEdBQVAsT0FBTyxDQUFrQjtJQUduQyxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDeEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixDQUFDLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFDTyxZQUFZO1FBQ2xCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLGFBQVksV0FBZ0IsQ0FBQSxFQUFFO1lBQ3BELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQ3ZDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBMkIsRUFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FDYixDQUFDO1lBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUMxQjthQUFNLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sS0FBSyxVQUFVLEVBQUU7WUFDckQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQWMsQ0FBQyxDQUFDO1lBQ3hFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtZQUN0QixRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFO2dCQUMxQixLQUFLLFNBQVM7b0JBQ1osSUFBSSxDQUFDLEtBQUssR0FBRyxtQ0FBbUMsQ0FBQztvQkFDakQsTUFBTTtnQkFDUixLQUFLLFNBQVM7b0JBQ1osSUFBSSxDQUFDLEtBQUssR0FBRyw4QkFBOEIsQ0FBQztvQkFDNUMsTUFBTTtnQkFDUixLQUFLLFFBQVE7b0JBQ1gsSUFBSSxDQUFDLEtBQUssR0FBRyw0QkFBNEIsQ0FBQztvQkFDMUMsTUFBTTtnQkFDUjtvQkFDRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLG1DQUFtQyxDQUFDO29CQUN0RSxNQUFNO2FBQ1Q7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztTQUNoQztJQUNILENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxNQUFvQjtRQUNyQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUU7WUFDbEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN0QjtJQUNILENBQUM7SUFFRCxJQUNZLFdBQVc7UUFDckIsT0FBTyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEMsQ0FBQzt1R0F6RVUsdUJBQXVCOzJGQUF2Qix1QkFBdUIsaUdBSnZCO1lBQ1QsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLHVCQUF1QixFQUFFO1NBQ3ZFLGlEQzdCSCw4aENBeUJBOzsyRkRNYSx1QkFBdUI7a0JBVm5DLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyx5QkFBeUIsRUFBRTtxQkFDdkU7Z0tBeUVXLFdBQVc7c0JBRHRCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ2xvc2JhbGVDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcclxuaW1wb3J0IHsgQVhCdXR0b25JdGVtIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50TWl4aW4gfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWl4aW4nO1xyXG5pbXBvcnQgeyBBWE5vdGlmaWNhdGlvbk9wdGlvbnMgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5jbGFzcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCwgUG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBCdXR0b24gaXMgYSBjb21wb25lbnQgd2hpY2ggZGV0ZWN0cyB1c2VyIGludGVyYWN0aW9uIGFuZCB0cmlnZ2VycyBhIGNvcnJlc3BvbmRpbmcgZXZlbnRcclxuICpcclxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtbm90aWZpY2F0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBBWENsb3NiYWxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhOb3RpZmljYXRpb25Db21wb25lbnQgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhOb3RpZmljYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBWEJhc2VDb21wb25lbnRNaXhpbiB7XHJcbiAgb3B0aW9uczogQVhOb3RpZmljYXRpb25PcHRpb25zO1xyXG4gIF9zZWxlY3RlZFBvcnRhbDogUG9ydGFsPGFueT47XHJcbiAgX2ljb246IHN0cmluZztcclxuXHJcbiAgY2xvc2U6ICgpID0+IHZvaWQ7XHJcbiAgLyoqXHJcbiAgICogIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSB2aWV3UmVmOiBWaWV3Q29udGFpbmVyUmVmXHJcbiAgKSB7XHJcbiAgICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xyXG4gIH1cclxuXHJcbiAgb25Jbml0KCkge1xyXG4gICAgdGhpcy5faW5pdENvbnRlbnQoKTtcclxuICAgIHRoaXMuX2luaXRJY29uKCk7XHJcbiAgICB0aGlzLl9oYW5kbGVUaW1lT3V0KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVUaW1lT3V0KCkge1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy50aW1lT3V0KSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgfSwgdGhpcy5vcHRpb25zLnRpbWVPdXQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBwcml2YXRlIF9pbml0Q29udGVudCgpIHtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMuY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmPGFueT4pIHtcclxuICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwoXHJcbiAgICAgICAgdGhpcy5vcHRpb25zLmNvbnRlbnQgYXMgVGVtcGxhdGVSZWY8YW55PixcclxuICAgICAgICB0aGlzLnZpZXdSZWZcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5vcHRpb25zLmNvbnRlbnQgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHRoaXMub3B0aW9ucy5jb250ZW50IGFzIGFueSk7XHJcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2luaXRJY29uKCkge1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuaWNvbikge1xyXG4gICAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxyXG4gICAgICAgICAgdGhpcy5faWNvbiA9ICdheC1pY29uIGF4LWljb24tY2hlY2stY2lyY2xlLWZpbGwnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnd2FybmluZyc6XHJcbiAgICAgICAgICB0aGlzLl9pY29uID0gJ2F4LWljb24gYXgtaWNvbi13YXJuaW5nLWZpbGwnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnZGFuZ2VyJzpcclxuICAgICAgICAgIHRoaXMuX2ljb24gPSAnYXgtaWNvbiBheC1pY29uLWVycm9yLWZpbGwnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHRoaXMuX2ljb24gPSB0aGlzLm9wdGlvbnMuaWNvbiB8fCAnYXgtaWNvbiBheC1pY29uLWNoZWNrLWNpcmNsZS1maWxsJztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9pY29uID0gdGhpcy5vcHRpb25zLmljb247XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBfaGFuZGxlQnV0dG9uQ2xpY2soYnV0dG9uOiBBWEJ1dHRvbkl0ZW0pIHtcclxuICAgIGlmIChidXR0b24ub25DbGljaykge1xyXG4gICAgICBidXR0b24ub25DbGljayh0aGlzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxyXG4gIHByaXZhdGUgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYGF4LSR7dGhpcy5vcHRpb25zLmNvbG9yfWA7XHJcbiAgfVxyXG59XHJcbiIsIjxzcGFuIFtjbGFzc109XCInYXgtbm90aWZpY2F0aW9uLWljb24nICsgJyAnICsgX2ljb25cIj48L3NwYW4+XHJcbjxkaXYgY2xhc3M9XCJheC1ub3RpZmljYXRpb24tY29udGVudFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJheC1ub3RpZmljYXRpb24tdGl0bGVcIj57eyBvcHRpb25zLnRpdGxlIH19PC9kaXY+XHJcbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiX3NlbGVjdGVkUG9ydGFsXCI+XHJcbiAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfc2VsZWN0ZWRQb3J0YWxcIj48L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX3NlbGVjdGVkUG9ydGFsXCI+PC9uZy10ZW1wbGF0ZT5cclxuICA8ZGl2ICpuZ0lmPVwiIV9zZWxlY3RlZFBvcnRhbFwiPnt7IG9wdGlvbnMuY29udGVudCB9fTwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJheC1ub3RpZmljYXRpb24tYnV0dG9uc1wiICpuZ0lmPVwib3B0aW9ucz8uYnV0dG9ucz8ubGVuZ3RoXCI+XHJcbiAgICA8YXgtYnV0dG9uXHJcbiAgICAgICpuZ0Zvcj1cImxldCBidXR0b24gb2Ygb3B0aW9ucy5idXR0b25zXCJcclxuICAgICAgY2xhc3M9XCJheC14c1wiXHJcbiAgICAgIFt0ZXh0XT1cImJ1dHRvbi50ZXh0XCJcclxuICAgICAgW2NvbG9yXT1cImJ1dHRvbi5jb2xvclwiXHJcbiAgICAgIFtsb29rXT1cImJ1dHRvbi5sb29rXCJcclxuICAgICAgKG9uQ2xpY2spPVwiX2hhbmRsZUJ1dHRvbkNsaWNrKGJ1dHRvbilcIj5cclxuICAgICAge3sgYnV0dG9uLnRleHQgfX1cclxuICAgIDwvYXgtYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuPHNwYW4gY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2xvc2VcIiAoY2xpY2spPVwiY2xvc2UoKVwiPjwvc3Bhbj5cclxuPGRpdlxyXG4gIGNsYXNzPVwiYXgtbm90aWZpY2F0aW9uLXByb2dyZXNzXCJcclxuICBbc3R5bGUuYW5pbWF0aW9uLWR1cmF0aW9uLm1zXT1cIm9wdGlvbnMudGltZU91dFwiXHJcbiAgKm5nSWY9XCJvcHRpb25zLnRpbWVPdXRcIj48L2Rpdj5cclxuIl19
@@ -7,11 +7,11 @@ import * as i0 from "@angular/core";
7
7
  const COMPONENT = [AXNotificationComponent];
8
8
  const MODULES = [CommonModule, PortalModule, AXButtonModule];
9
9
  export class AXNotificationModule {
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationModule, declarations: [AXNotificationComponent], imports: [CommonModule, PortalModule, AXButtonModule], exports: [AXNotificationComponent] });
12
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationModule, imports: [MODULES] });
10
13
  }
11
- AXNotificationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- AXNotificationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: AXNotificationModule, declarations: [AXNotificationComponent], imports: [CommonModule, PortalModule, AXButtonModule], exports: [AXNotificationComponent] });
13
- AXNotificationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXNotificationModule, imports: [MODULES] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXNotificationModule, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  declarations: [...COMPONENT],
@@ -20,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
20
20
  providers: [],
21
21
  }]
22
22
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9zcmMvbm90aWZpY2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUUzRCxNQUFNLFNBQVMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUFDNUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBUTdELE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFUZCx1QkFBdUIsYUFDekIsWUFBWSxFQUFFLFlBQVksRUFBRSxjQUFjLGFBRHhDLHVCQUF1QjtrSEFTN0Isb0JBQW9CLFlBSmxCLE9BQU87MkZBSVQsb0JBQW9CO2tCQU5oQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO29CQUM1QixPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztvQkFDckIsT0FBTyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQ3ZCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQVhOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcclxuXHJcbmNvbnN0IENPTVBPTkVOVCA9IFtBWE5vdGlmaWNhdGlvbkNvbXBvbmVudF07XHJcbmNvbnN0IE1PRFVMRVMgPSBbQ29tbW9uTW9kdWxlLCBQb3J0YWxNb2R1bGUsIEFYQnV0dG9uTW9kdWxlXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UXSxcclxuICBpbXBvcnRzOiBbLi4uTU9EVUxFU10sXHJcbiAgZXhwb3J0czogWy4uLkNPTVBPTkVOVF0sXHJcbiAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYTm90aWZpY2F0aW9uTW9kdWxlIHt9XHJcbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9zcmMvbm90aWZpY2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUUzRCxNQUFNLFNBQVMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUFDNUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBUTdELE1BQU0sT0FBTyxvQkFBb0I7dUdBQXBCLG9CQUFvQjt3R0FBcEIsb0JBQW9CLGlCQVRkLHVCQUF1QixhQUN6QixZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsYUFEeEMsdUJBQXVCO3dHQVM3QixvQkFBb0IsWUFKbEIsT0FBTzs7MkZBSVQsb0JBQW9CO2tCQU5oQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO29CQUM1QixPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztvQkFDckIsT0FBTyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQ3ZCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQVhOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcclxuXHJcbmNvbnN0IENPTVBPTkVOVCA9IFtBWE5vdGlmaWNhdGlvbkNvbXBvbmVudF07XHJcbmNvbnN0IE1PRFVMRVMgPSBbQ29tbW9uTW9kdWxlLCBQb3J0YWxNb2R1bGUsIEFYQnV0dG9uTW9kdWxlXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UXSxcclxuICBpbXBvcnRzOiBbLi4uTU9EVUxFU10sXHJcbiAgZXhwb3J0czogWy4uLkNPTVBPTkVOVF0sXHJcbiAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYTm90aWZpY2F0aW9uTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,109 @@
1
+ import { AXConfig } from '@acorex/core/config';
2
+ import { ComponentPortal } from '@angular/cdk/portal';
3
+ import { Injectable } from '@angular/core';
4
+ import { AXNotificationComponent } from './notification.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/overlay";
7
+ export class AXNotificationService {
8
+ overlayService;
9
+ parentInjector;
10
+ _defaults = {
11
+ gap: 5,
12
+ location: 'top-end',
13
+ };
14
+ constructor(overlayService, parentInjector) {
15
+ this.overlayService = overlayService;
16
+ this.parentInjector = parentInjector;
17
+ }
18
+ _activeList = [];
19
+ show(options) {
20
+ const opt = Object.assign({
21
+ closeable: true,
22
+ location: AXConfig.get('notification.location') || this._defaults.location,
23
+ }, options);
24
+ const gap = AXConfig.get('notification.gap') || this._defaults.gap;
25
+ let positionStrategy = this.overlayService.position().global();
26
+ const pos = this.getPosition(opt.location) + gap + 'px';
27
+ switch (opt.location) {
28
+ case 'bottom-center':
29
+ positionStrategy = positionStrategy.bottom(pos).centerHorizontally();
30
+ break;
31
+ case 'bottom-end':
32
+ positionStrategy = positionStrategy.bottom(pos).right(gap + 'px');
33
+ break;
34
+ case 'bottom-start':
35
+ positionStrategy = positionStrategy.bottom(pos).left(gap + 'px');
36
+ break;
37
+ case 'top-center':
38
+ positionStrategy = positionStrategy.top(pos).centerHorizontally();
39
+ break;
40
+ case 'top-end':
41
+ positionStrategy = positionStrategy.top(pos).right(gap + 'px');
42
+ break;
43
+ case 'top-start':
44
+ positionStrategy = positionStrategy.top(pos).left(gap + 'px');
45
+ break;
46
+ case 'center-start':
47
+ positionStrategy = positionStrategy.centerVertically().left(gap + 'px');
48
+ break;
49
+ case 'center-end':
50
+ positionStrategy = positionStrategy
51
+ .centerVertically()
52
+ .right(gap + 'px');
53
+ break;
54
+ default:
55
+ break;
56
+ }
57
+ const overlayRef = this.overlayService.create({
58
+ positionStrategy,
59
+ panelClass: [
60
+ 'ax-animate-animated',
61
+ 'ax-animate-fadeIn',
62
+ 'ax-animate-faster',
63
+ ],
64
+ });
65
+ const notificationPortal = new ComponentPortal(AXNotificationComponent, null, this.parentInjector);
66
+ const host = overlayRef.attach(notificationPortal);
67
+ host.instance.visibleIndex = this._activeList.length;
68
+ this._activeList.push(host.instance);
69
+ if (host.instance) {
70
+ Object.assign(host.instance, {
71
+ options: opt,
72
+ close: () => {
73
+ this._activeList = this._activeList.filter(c => c != host.instance);
74
+ overlayRef.dispose();
75
+ },
76
+ });
77
+ setTimeout(() => {
78
+ host.changeDetectorRef.detectChanges();
79
+ }, 0);
80
+ }
81
+ return {
82
+ close: () => {
83
+ host.instance.close();
84
+ },
85
+ };
86
+ }
87
+ hideAll() {
88
+ this._activeList.forEach(c => c.close());
89
+ }
90
+ getPosition(location) {
91
+ const list = this._activeList.filter(c => c.options.location == location);
92
+ if (list.length == 0)
93
+ return 0;
94
+ if (location.split('-')[0] == 'bottom') {
95
+ return (window.innerHeight - list[list.length - 1]._getHostElement().offsetTop);
96
+ }
97
+ else {
98
+ return (list[list.length - 1]._getHostElement().offsetTop +
99
+ list[list.length - 1]._getHostElement().offsetHeight);
100
+ }
101
+ }
102
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
103
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationService, providedIn: 'root' });
104
+ }
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXNotificationService, decorators: [{
106
+ type: Injectable,
107
+ args: [{ providedIn: 'root' }]
108
+ }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }]; } });
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9ub3RpZmljYXRpb24vc3JjL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFFbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUduRSxNQUFNLE9BQU8scUJBQXFCO0lBT3RCO0lBQ0E7SUFQTyxTQUFTLEdBQUc7UUFDM0IsR0FBRyxFQUFFLENBQUM7UUFDTixRQUFRLEVBQUUsU0FBUztLQUNwQixDQUFDO0lBRUYsWUFDVSxjQUF1QixFQUN2QixjQUF3QjtRQUR4QixtQkFBYyxHQUFkLGNBQWMsQ0FBUztRQUN2QixtQkFBYyxHQUFkLGNBQWMsQ0FBVTtJQUMvQixDQUFDO0lBRUksV0FBVyxHQUE4QixFQUFFLENBQUM7SUFFcEQsSUFBSSxDQUFDLE9BQThCO1FBQ2pDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQ3ZCO1lBQ0UsU0FBUyxFQUFFLElBQUk7WUFDZixRQUFRLEVBQ04sUUFBUSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUTtTQUNuRSxFQUNELE9BQU8sQ0FDUixDQUFDO1FBQ0YsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1FBRW5FLElBQUksZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ3hELFFBQVEsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNwQixLQUFLLGVBQWU7Z0JBQ2xCLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUNyRSxNQUFNO1lBQ1IsS0FBSyxZQUFZO2dCQUNmLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUNsRSxNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDakUsTUFBTTtZQUNSLEtBQUssWUFBWTtnQkFDZixnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDbEUsTUFBTTtZQUNSLEtBQUssU0FBUztnQkFDWixnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDL0QsTUFBTTtZQUNSLEtBQUssV0FBVztnQkFDZCxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDOUQsTUFBTTtZQUNSLEtBQUssY0FBYztnQkFDakIsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUN4RSxNQUFNO1lBQ1IsS0FBSyxZQUFZO2dCQUNmLGdCQUFnQixHQUFHLGdCQUFnQjtxQkFDaEMsZ0JBQWdCLEVBQUU7cUJBQ2xCLEtBQUssQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ3JCLE1BQU07WUFDUjtnQkFDRSxNQUFNO1NBQ1Q7UUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztZQUM1QyxnQkFBZ0I7WUFDaEIsVUFBVSxFQUFFO2dCQUNWLHFCQUFxQjtnQkFDckIsbUJBQW1CO2dCQUNuQixtQkFBbUI7YUFDcEI7U0FDRixDQUFDLENBQUM7UUFDSCxNQUFNLGtCQUFrQixHQUFHLElBQUksZUFBZSxDQUM1Qyx1QkFBdUIsRUFDdkIsSUFBSSxFQUNKLElBQUksQ0FBQyxjQUFjLENBQ3BCLENBQUM7UUFFRixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQWdCLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDO1FBQzlELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUMzQixPQUFPLEVBQUUsR0FBRztnQkFDWixLQUFLLEVBQUUsR0FBRyxFQUFFO29CQUNWLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNwRSxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3ZCLENBQUM7YUFDRixDQUFDLENBQUM7WUFDSCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6QyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDUDtRQUVELE9BQU87WUFDTCxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDeEIsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUFnQjtRQUNsQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxDQUFDO1FBQzFFLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUM7UUFDL0IsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRTtZQUN0QyxPQUFPLENBQ0wsTUFBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQ3ZFLENBQUM7U0FDSDthQUFNO1lBQ0wsT0FBTyxDQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVM7Z0JBQ2pELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLFlBQVksQ0FDckQsQ0FBQztTQUNIO0lBQ0gsQ0FBQzt1R0E5R1UscUJBQXFCOzJHQUFyQixxQkFBcUIsY0FEUixNQUFNOzsyRkFDbkIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ29uZmlnIH0gZnJvbSAnQGFjb3JleC9jb3JlL2NvbmZpZyc7XHJcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhOb3RpZmljYXRpb25PcHRpb25zLCBBWE5vdGlmaWNhdGlvblJlZiB9IGZyb20gJy4vbm90aWZpY2F0aW9uLmNsYXNzJztcclxuaW1wb3J0IHsgQVhOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEFYTm90aWZpY2F0aW9uU2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVmYXVsdHMgPSB7XHJcbiAgICBnYXA6IDUsXHJcbiAgICBsb2NhdGlvbjogJ3RvcC1lbmQnLFxyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5U2VydmljZTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgcGFyZW50SW5qZWN0b3I6IEluamVjdG9yXHJcbiAgKSB7fVxyXG5cclxuICBwcml2YXRlIF9hY3RpdmVMaXN0OiBBWE5vdGlmaWNhdGlvbkNvbXBvbmVudFtdID0gW107XHJcblxyXG4gIHNob3cob3B0aW9uczogQVhOb3RpZmljYXRpb25PcHRpb25zKTogQVhOb3RpZmljYXRpb25SZWYge1xyXG4gICAgY29uc3Qgb3B0ID0gT2JqZWN0LmFzc2lnbihcclxuICAgICAge1xyXG4gICAgICAgIGNsb3NlYWJsZTogdHJ1ZSxcclxuICAgICAgICBsb2NhdGlvbjpcclxuICAgICAgICAgIEFYQ29uZmlnLmdldCgnbm90aWZpY2F0aW9uLmxvY2F0aW9uJykgfHwgdGhpcy5fZGVmYXVsdHMubG9jYXRpb24sXHJcbiAgICAgIH0sXHJcbiAgICAgIG9wdGlvbnNcclxuICAgICk7XHJcbiAgICBjb25zdCBnYXAgPSBBWENvbmZpZy5nZXQoJ25vdGlmaWNhdGlvbi5nYXAnKSB8fCB0aGlzLl9kZWZhdWx0cy5nYXA7XHJcblxyXG4gICAgbGV0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlTZXJ2aWNlLnBvc2l0aW9uKCkuZ2xvYmFsKCk7XHJcbiAgICBjb25zdCBwb3MgPSB0aGlzLmdldFBvc2l0aW9uKG9wdC5sb2NhdGlvbikgKyBnYXAgKyAncHgnO1xyXG4gICAgc3dpdGNoIChvcHQubG9jYXRpb24pIHtcclxuICAgICAgY2FzZSAnYm90dG9tLWNlbnRlcic6XHJcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneSA9IHBvc2l0aW9uU3RyYXRlZ3kuYm90dG9tKHBvcykuY2VudGVySG9yaXpvbnRhbGx5KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2JvdHRvbS1lbmQnOlxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLnJpZ2h0KGdhcCArICdweCcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdib3R0b20tc3RhcnQnOlxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLmxlZnQoZ2FwICsgJ3B4Jyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3RvcC1jZW50ZXInOlxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LnRvcChwb3MpLmNlbnRlckhvcml6b250YWxseSgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICd0b3AtZW5kJzpcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5yaWdodChnYXAgKyAncHgnKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAndG9wLXN0YXJ0JzpcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5sZWZ0KGdhcCArICdweCcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdjZW50ZXItc3RhcnQnOlxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmNlbnRlclZlcnRpY2FsbHkoKS5sZWZ0KGdhcCArICdweCcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdjZW50ZXItZW5kJzpcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneVxyXG4gICAgICAgICAgLmNlbnRlclZlcnRpY2FsbHkoKVxyXG4gICAgICAgICAgLnJpZ2h0KGdhcCArICdweCcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheVNlcnZpY2UuY3JlYXRlKHtcclxuICAgICAgcG9zaXRpb25TdHJhdGVneSxcclxuICAgICAgcGFuZWxDbGFzczogW1xyXG4gICAgICAgICdheC1hbmltYXRlLWFuaW1hdGVkJyxcclxuICAgICAgICAnYXgtYW5pbWF0ZS1mYWRlSW4nLFxyXG4gICAgICAgICdheC1hbmltYXRlLWZhc3RlcicsXHJcbiAgICAgIF0sXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IG5vdGlmaWNhdGlvblBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoXHJcbiAgICAgIEFYTm90aWZpY2F0aW9uQ29tcG9uZW50LFxyXG4gICAgICBudWxsLFxyXG4gICAgICB0aGlzLnBhcmVudEluamVjdG9yXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0IGhvc3QgPSBvdmVybGF5UmVmLmF0dGFjaChub3RpZmljYXRpb25Qb3J0YWwpO1xyXG4gICAgKGhvc3QuaW5zdGFuY2UgYXMgYW55KS52aXNpYmxlSW5kZXggPSB0aGlzLl9hY3RpdmVMaXN0Lmxlbmd0aDtcclxuICAgIHRoaXMuX2FjdGl2ZUxpc3QucHVzaChob3N0Lmluc3RhbmNlKTtcclxuICAgIGlmIChob3N0Lmluc3RhbmNlKSB7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24oaG9zdC5pbnN0YW5jZSwge1xyXG4gICAgICAgIG9wdGlvbnM6IG9wdCxcclxuICAgICAgICBjbG9zZTogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5fYWN0aXZlTGlzdCA9IHRoaXMuX2FjdGl2ZUxpc3QuZmlsdGVyKGMgPT4gYyAhPSBob3N0Lmluc3RhbmNlKTtcclxuICAgICAgICAgIG92ZXJsYXlSZWYuZGlzcG9zZSgpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBob3N0LmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2xvc2U6ICgpID0+IHtcclxuICAgICAgICBob3N0Lmluc3RhbmNlLmNsb3NlKCk7XHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhpZGVBbGwoKSB7XHJcbiAgICB0aGlzLl9hY3RpdmVMaXN0LmZvckVhY2goYyA9PiBjLmNsb3NlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQb3NpdGlvbihsb2NhdGlvbjogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBsaXN0ID0gdGhpcy5fYWN0aXZlTGlzdC5maWx0ZXIoYyA9PiBjLm9wdGlvbnMubG9jYXRpb24gPT0gbG9jYXRpb24pO1xyXG4gICAgaWYgKGxpc3QubGVuZ3RoID09IDApIHJldHVybiAwO1xyXG4gICAgaWYgKGxvY2F0aW9uLnNwbGl0KCctJylbMF0gPT0gJ2JvdHRvbScpIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICB3aW5kb3cuaW5uZXJIZWlnaHQgLSBsaXN0W2xpc3QubGVuZ3RoIC0gMV0uX2dldEhvc3RFbGVtZW50KCkub2Zmc2V0VG9wXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIGxpc3RbbGlzdC5sZW5ndGggLSAxXS5fZ2V0SG9zdEVsZW1lbnQoKS5vZmZzZXRUb3AgK1xyXG4gICAgICAgIGxpc3RbbGlzdC5sZW5ndGggLSAxXS5fZ2V0SG9zdEVsZW1lbnQoKS5vZmZzZXRIZWlnaHRcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19