@acorex/components 7.0.41 → 7.1.1

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 (1251) hide show
  1. package/action-sheet/index.d.ts +5 -5
  2. package/action-sheet/public-api.d.ts +3 -3
  3. package/action-sheet/src/action-sheet.component.d.ts +25 -25
  4. package/action-sheet/src/action-sheet.interface.d.ts +20 -20
  5. package/action-sheet/src/action-sheet.module.d.ts +14 -14
  6. package/action-sheet/src/action-sheet.service.d.ts +13 -13
  7. package/alert/index.d.ts +5 -5
  8. package/alert/public-api.d.ts +2 -2
  9. package/alert/src/alert.component.d.ts +88 -88
  10. package/alert/src/alert.module.d.ts +9 -9
  11. package/avatar/index.d.ts +5 -5
  12. package/avatar/public-api.d.ts +3 -3
  13. package/avatar/src/avatar-group.component.d.ts +8 -8
  14. package/avatar/src/avatar.component.d.ts +20 -20
  15. package/avatar/src/avatar.module.d.ts +9 -9
  16. package/badge/index.d.ts +5 -5
  17. package/badge/public-api.d.ts +2 -2
  18. package/badge/src/badge.component.d.ts +41 -41
  19. package/badge/src/badge.module.d.ts +8 -8
  20. package/breadcrumbs/index.d.ts +5 -5
  21. package/breadcrumbs/public-api.d.ts +4 -4
  22. package/breadcrumbs/src/breadcrumbs-item.class.d.ts +9 -9
  23. package/breadcrumbs/src/breadcrumbs-item.component.d.ts +77 -79
  24. package/breadcrumbs/src/breadcrumbs.component.d.ts +13 -13
  25. package/breadcrumbs/src/breadcrumbs.module.d.ts +9 -9
  26. package/button/index.d.ts +5 -5
  27. package/button/public-api.d.ts +5 -5
  28. package/button/src/button-group.component.d.ts +86 -86
  29. package/button/src/button-item.class.d.ts +24 -24
  30. package/button/src/button-item.component.d.ts +82 -80
  31. package/button/src/button.component.d.ts +23 -23
  32. package/button/src/button.module.d.ts +11 -11
  33. package/calendar/index.d.ts +5 -5
  34. package/calendar/public-api.d.ts +4 -3
  35. package/calendar/src/calendar-range.component.d.ts +29 -0
  36. package/calendar/src/calendar.class.d.ts +100 -51
  37. package/calendar/src/calendar.component.d.ts +44 -51
  38. package/calendar/src/calendar.module.d.ts +10 -9
  39. package/card/index.d.ts +5 -5
  40. package/card/public-api.d.ts +2 -2
  41. package/card/src/card.component.d.ts +10 -10
  42. package/card/src/card.module.d.ts +8 -8
  43. package/checkbox/index.d.ts +5 -5
  44. package/checkbox/public-api.d.ts +2 -2
  45. package/checkbox/src/checkbox.component.d.ts +12 -12
  46. package/checkbox/src/checkbox.module.d.ts +10 -10
  47. package/chips/index.d.ts +5 -5
  48. package/chips/public-api.d.ts +2 -2
  49. package/chips/src/chips.component.d.ts +72 -72
  50. package/chips/src/chips.module.d.ts +8 -8
  51. package/collapse/index.d.ts +5 -5
  52. package/collapse/public-api.d.ts +3 -3
  53. package/collapse/src/collapse-group.component.d.ts +15 -15
  54. package/collapse/src/collapse.component.d.ts +17 -17
  55. package/collapse/src/collapse.module.d.ts +9 -9
  56. package/color-palette/index.d.ts +5 -5
  57. package/color-palette/public-api.d.ts +7 -7
  58. package/color-palette/src/color-palette-input.component.d.ts +22 -22
  59. package/color-palette/src/color-palette-picker.component.d.ts +32 -32
  60. package/color-palette/src/color-palette-preview.component.d.ts +11 -11
  61. package/color-palette/src/color-palette-swatches.component.d.ts +18 -18
  62. package/color-palette/src/color-palette.class.d.ts +22 -22
  63. package/color-palette/src/color-palette.component.d.ts +16 -16
  64. package/color-palette/src/color-palette.module.d.ts +19 -19
  65. package/color-picker/index.d.ts +5 -5
  66. package/color-picker/public-api.d.ts +2 -2
  67. package/color-picker/src/color-picker.component.d.ts +190 -190
  68. package/color-picker/src/color-picker.module.d.ts +18 -18
  69. package/common/index.d.ts +5 -5
  70. package/common/public-api.d.ts +16 -15
  71. package/common/src/classes/components.class.d.ts +62 -62
  72. package/common/src/classes/data.class.d.ts +4 -0
  73. package/common/src/classes/drawing.class.d.ts +9 -9
  74. package/common/src/classes/events.class.d.ts +95 -86
  75. package/common/src/classes/styles.class.d.ts +17 -17
  76. package/common/src/common.module.d.ts +11 -11
  77. package/common/src/components/base-component.class.d.ts +28 -31
  78. package/common/src/components/button-base-component.class.d.ts +36 -36
  79. package/common/src/components/color-component.class.d.ts +15 -15
  80. package/common/src/components/colorlook-component.class.d.ts +9 -9
  81. package/common/src/components/index.d.ts +7 -6
  82. package/common/src/components/interactive-component.class.d.ts +37 -37
  83. package/common/src/components/look-component.class.d.ts +15 -15
  84. package/common/src/components/value-component.class.d.ts +45 -0
  85. package/common/src/constant/positions.d.ts +75 -75
  86. package/common/src/directives/auto-focus.directive.d.ts +13 -13
  87. package/common/src/directives/debounce-time.directive.d.ts +17 -17
  88. package/common/src/directives/hotkey.directive.d.ts +22 -22
  89. package/common/src/directives/infinite-scroll.directive.d.ts +25 -25
  90. package/common/src/directives/responsive.directive.d.ts +10 -10
  91. package/common/src/services/custom-cdk-overlay.service.d.ts +19 -19
  92. package/common/src/services/hotkey.service.d.ts +17 -17
  93. package/common/src/services/overlay.service.d.ts +34 -34
  94. package/context-menu/index.d.ts +5 -5
  95. package/context-menu/public-api.d.ts +2 -2
  96. package/context-menu/src/context-menu.component.d.ts +34 -34
  97. package/context-menu/src/context-menu.module.d.ts +13 -13
  98. package/data-pager/index.d.ts +5 -5
  99. package/data-pager/public-api.d.ts +9 -9
  100. package/data-pager/src/data-pager-base.component.d.ts +49 -49
  101. package/data-pager/src/data-pager-info.component.d.ts +15 -15
  102. package/data-pager/src/data-pager-input-selector.component.d.ts +15 -15
  103. package/data-pager/src/data-pager-next-buttons.components.d.ts +16 -16
  104. package/data-pager/src/data-pager-numeric-selector.component.d.ts +18 -18
  105. package/data-pager/src/data-pager-pagesize-dropdown.component.d.ts +18 -18
  106. package/data-pager/src/data-pager-prev-buttons.component.d.ts +15 -15
  107. package/data-pager/src/data-pager.component.d.ts +35 -35
  108. package/data-pager/src/data-pager.module.d.ts +18 -18
  109. package/data-table/index.d.ts +5 -5
  110. package/data-table/public-api.d.ts +4 -4
  111. package/data-table/src/data-column-cell-template.directive.d.ts +8 -8
  112. package/data-table/src/data-column.directive.d.ts +16 -16
  113. package/data-table/src/data-table.component.d.ts +37 -37
  114. package/data-table/src/data-table.module.d.ts +14 -14
  115. package/date-picker/index.d.ts +5 -5
  116. package/date-picker/public-api.d.ts +2 -2
  117. package/date-picker/src/datepicker.component.d.ts +154 -154
  118. package/date-picker/src/datepicker.module.d.ts +15 -15
  119. package/decorators/index.d.ts +5 -5
  120. package/decorators/public-api.d.ts +14 -14
  121. package/decorators/src/close-button.component.d.ts +14 -14
  122. package/decorators/src/content.component.d.ts +8 -8
  123. package/decorators/src/decorators.module.d.ts +20 -20
  124. package/decorators/src/footer.component.d.ts +8 -8
  125. package/decorators/src/form-hint.component.d.ts +8 -8
  126. package/decorators/src/header.component.d.ts +8 -8
  127. package/decorators/src/icon.component.d.ts +10 -10
  128. package/decorators/src/overlay.component.d.ts +6 -6
  129. package/decorators/src/placeholder.component.d.ts +5 -5
  130. package/decorators/src/prefix.component.d.ts +8 -8
  131. package/decorators/src/sub-title.component.d.ts +9 -9
  132. package/decorators/src/suffix.component.d.ts +8 -8
  133. package/decorators/src/text.component.d.ts +9 -9
  134. package/decorators/src/title.component.d.ts +8 -8
  135. package/dialog/index.d.ts +5 -5
  136. package/dialog/public-api.d.ts +4 -4
  137. package/dialog/src/dialog.class.d.ts +13 -13
  138. package/dialog/src/dialog.component.d.ts +16 -16
  139. package/dialog/src/dialog.module.d.ts +14 -14
  140. package/dialog/src/dialog.service.d.ts +38 -38
  141. package/drawer/index.d.ts +5 -5
  142. package/drawer/public-api.d.ts +3 -3
  143. package/drawer/src/drawer-container.component.d.ts +10 -10
  144. package/drawer/src/drawer.component.d.ts +36 -36
  145. package/drawer/src/drawer.module.d.ts +9 -9
  146. package/dropdown/index.d.ts +5 -5
  147. package/dropdown/public-api.d.ts +2 -2
  148. package/dropdown/src/dropdown-panel.component.d.ts +30 -30
  149. package/dropdown/src/dropdown.module.d.ts +14 -14
  150. package/esm2022/acorex-components.mjs +5 -0
  151. package/esm2022/action-sheet/acorex-components-action-sheet.mjs +5 -0
  152. package/esm2022/action-sheet/public-api.mjs +4 -0
  153. package/esm2022/action-sheet/src/action-sheet.component.mjs +81 -0
  154. package/esm2022/action-sheet/src/action-sheet.interface.mjs +3 -0
  155. package/esm2022/action-sheet/src/action-sheet.module.mjs +27 -0
  156. package/esm2022/action-sheet/src/action-sheet.service.mjs +94 -0
  157. package/esm2022/alert/acorex-components-alert.mjs +5 -0
  158. package/esm2022/alert/public-api.mjs +3 -0
  159. package/esm2022/alert/src/alert.component.mjs +189 -0
  160. package/esm2022/alert/src/alert.module.mjs +23 -0
  161. package/esm2022/avatar/acorex-components-avatar.mjs +5 -0
  162. package/esm2022/avatar/public-api.mjs +4 -0
  163. package/esm2022/avatar/src/avatar-group.component.mjs +17 -0
  164. package/esm2022/avatar/src/avatar.component.mjs +44 -0
  165. package/esm2022/avatar/src/avatar.module.mjs +23 -0
  166. package/esm2022/badge/acorex-components-badge.mjs +5 -0
  167. package/esm2022/badge/public-api.mjs +3 -0
  168. package/esm2022/badge/src/badge.component.mjs +29 -0
  169. package/esm2022/badge/src/badge.module.mjs +22 -0
  170. package/esm2022/breadcrumbs/acorex-components-breadcrumbs.mjs +5 -0
  171. package/esm2022/breadcrumbs/public-api.mjs +5 -0
  172. package/esm2022/breadcrumbs/src/breadcrumbs-item.class.mjs +2 -0
  173. package/esm2022/breadcrumbs/src/breadcrumbs-item.component.mjs +51 -0
  174. package/esm2022/breadcrumbs/src/breadcrumbs.component.mjs +28 -0
  175. package/esm2022/breadcrumbs/src/breadcrumbs.module.mjs +21 -0
  176. package/esm2022/button/acorex-components-button.mjs +5 -0
  177. package/esm2022/button/public-api.mjs +6 -0
  178. package/esm2022/button/src/button-group.component.mjs +92 -0
  179. package/esm2022/button/src/button-item.class.mjs +2 -0
  180. package/esm2022/button/src/button-item.component.mjs +80 -0
  181. package/esm2022/button/src/button.component.mjs +79 -0
  182. package/esm2022/button/src/button.module.mjs +33 -0
  183. package/esm2022/calendar/acorex-components-calendar.mjs +5 -0
  184. package/esm2022/calendar/public-api.mjs +5 -0
  185. package/esm2022/calendar/src/calendar-range.component.mjs +175 -0
  186. package/esm2022/calendar/src/calendar.class.mjs +282 -0
  187. package/esm2022/calendar/src/calendar.component.mjs +373 -0
  188. package/esm2022/calendar/src/calendar.module.mjs +24 -0
  189. package/esm2022/card/acorex-components-card.mjs +5 -0
  190. package/esm2022/card/public-api.mjs +3 -0
  191. package/esm2022/card/src/card.component.mjs +19 -0
  192. package/esm2022/card/src/card.module.mjs +20 -0
  193. package/esm2022/checkbox/acorex-components-checkbox.mjs +5 -0
  194. package/esm2022/checkbox/public-api.mjs +3 -0
  195. package/esm2022/checkbox/src/checkbox.component.mjs +43 -0
  196. package/esm2022/checkbox/src/checkbox.module.mjs +22 -0
  197. package/esm2022/chips/acorex-components-chips.mjs +5 -0
  198. package/esm2022/chips/public-api.mjs +3 -0
  199. package/esm2022/chips/src/chips.component.mjs +34 -0
  200. package/esm2022/chips/src/chips.module.mjs +20 -0
  201. package/esm2022/collapse/acorex-components-collapse.mjs +5 -0
  202. package/esm2022/collapse/public-api.mjs +4 -0
  203. package/esm2022/collapse/src/collapse-group.component.mjs +53 -0
  204. package/esm2022/collapse/src/collapse.component.mjs +48 -0
  205. package/esm2022/collapse/src/collapse.module.mjs +21 -0
  206. package/esm2022/color-palette/acorex-components-color-palette.mjs +5 -0
  207. package/esm2022/color-palette/public-api.mjs +8 -0
  208. package/esm2022/color-palette/src/color-palette-input.component.mjs +131 -0
  209. package/esm2022/color-palette/src/color-palette-picker.component.mjs +160 -0
  210. package/esm2022/color-palette/src/color-palette-preview.component.mjs +63 -0
  211. package/esm2022/color-palette/src/color-palette-swatches.component.mjs +305 -0
  212. package/esm2022/color-palette/src/color-palette.class.mjs +19 -0
  213. package/esm2022/color-palette/src/color-palette.component.mjs +76 -0
  214. package/esm2022/color-palette/src/color-palette.module.mjs +61 -0
  215. package/esm2022/color-picker/acorex-components-color-picker.mjs +5 -0
  216. package/esm2022/color-picker/public-api.mjs +3 -0
  217. package/esm2022/color-picker/src/color-picker.component.mjs +120 -0
  218. package/esm2022/color-picker/src/color-picker.module.mjs +62 -0
  219. package/esm2022/common/acorex-components-common.mjs +5 -0
  220. package/esm2022/common/public-api.mjs +17 -0
  221. package/esm2022/common/src/classes/components.class.mjs +78 -0
  222. package/esm2022/common/src/classes/data.class.mjs +2 -0
  223. package/esm2022/common/src/classes/drawing.class.mjs +2 -0
  224. package/esm2022/common/src/classes/events.class.mjs +96 -0
  225. package/esm2022/common/src/classes/styles.class.mjs +13 -0
  226. package/esm2022/common/src/common.module.mjs +43 -0
  227. package/esm2022/common/src/components/base-component.class.mjs +57 -0
  228. package/esm2022/common/src/components/button-base-component.class.mjs +69 -0
  229. package/esm2022/common/src/components/color-component.class.mjs +27 -0
  230. package/esm2022/common/src/components/colorlook-component.class.mjs +11 -0
  231. package/esm2022/common/src/components/index.mjs +8 -0
  232. package/esm2022/common/src/components/interactive-component.class.mjs +63 -0
  233. package/esm2022/common/src/components/look-component.class.mjs +27 -0
  234. package/esm2022/common/src/components/value-component.class.mjs +207 -0
  235. package/esm2022/common/src/constant/positions.mjs +75 -0
  236. package/esm2022/common/src/directives/auto-focus.directive.mjs +58 -0
  237. package/esm2022/common/src/directives/debounce-time.directive.mjs +50 -0
  238. package/esm2022/common/src/directives/hotkey.directive.mjs +83 -0
  239. package/esm2022/common/src/directives/infinite-scroll.directive.mjs +70 -0
  240. package/esm2022/common/src/directives/responsive.directive.mjs +36 -0
  241. package/esm2022/common/src/services/custom-cdk-overlay.service.mjs +52 -0
  242. package/esm2022/common/src/services/hotkey.service.mjs +41 -0
  243. package/esm2022/common/src/services/overlay.service.mjs +116 -0
  244. package/esm2022/context-menu/acorex-components-context-menu.mjs +5 -0
  245. package/esm2022/context-menu/public-api.mjs +3 -0
  246. package/esm2022/context-menu/src/context-menu.component.mjs +271 -0
  247. package/esm2022/context-menu/src/context-menu.module.mjs +37 -0
  248. package/esm2022/data-pager/acorex-components-data-pager.mjs +5 -0
  249. package/esm2022/data-pager/public-api.mjs +10 -0
  250. package/esm2022/data-pager/src/data-pager-base.component.mjs +37 -0
  251. package/esm2022/data-pager/src/data-pager-info.component.mjs +62 -0
  252. package/esm2022/data-pager/src/data-pager-input-selector.component.mjs +54 -0
  253. package/esm2022/data-pager/src/data-pager-next-buttons.components.mjs +67 -0
  254. package/esm2022/data-pager/src/data-pager-numeric-selector.component.mjs +101 -0
  255. package/esm2022/data-pager/src/data-pager-pagesize-dropdown.component.mjs +89 -0
  256. package/esm2022/data-pager/src/data-pager-prev-buttons.component.mjs +62 -0
  257. package/esm2022/data-pager/src/data-pager.component.mjs +147 -0
  258. package/esm2022/data-pager/src/data-pager.module.mjs +52 -0
  259. package/esm2022/data-table/acorex-components-data-table.mjs +5 -0
  260. package/esm2022/data-table/public-api.mjs +5 -0
  261. package/esm2022/data-table/src/data-column-cell-template.directive.mjs +19 -0
  262. package/esm2022/data-table/src/data-column.directive.mjs +51 -0
  263. package/esm2022/data-table/src/data-table.component.mjs +140 -0
  264. package/esm2022/data-table/src/data-table.module.mjs +28 -0
  265. package/esm2022/date-picker/acorex-components-date-picker.mjs +5 -0
  266. package/esm2022/date-picker/public-api.mjs +3 -0
  267. package/esm2022/date-picker/src/datepicker.component.mjs +241 -0
  268. package/esm2022/date-picker/src/datepicker.module.mjs +45 -0
  269. package/esm2022/decorators/acorex-components-decorators.mjs +5 -0
  270. package/esm2022/decorators/public-api.mjs +15 -0
  271. package/esm2022/decorators/src/close-button.component.mjs +52 -0
  272. package/esm2022/decorators/src/content.component.mjs +22 -0
  273. package/esm2022/decorators/src/decorators.module.mjs +72 -0
  274. package/esm2022/decorators/src/footer.component.mjs +30 -0
  275. package/esm2022/decorators/src/form-hint.component.mjs +21 -0
  276. package/esm2022/decorators/src/header.component.mjs +30 -0
  277. package/esm2022/decorators/src/icon.component.mjs +31 -0
  278. package/esm2022/decorators/src/overlay.component.mjs +21 -0
  279. package/esm2022/decorators/src/placeholder.component.mjs +15 -0
  280. package/esm2022/decorators/src/prefix.component.mjs +22 -0
  281. package/esm2022/decorators/src/sub-title.component.mjs +28 -0
  282. package/esm2022/decorators/src/suffix.component.mjs +22 -0
  283. package/esm2022/decorators/src/text.component.mjs +23 -0
  284. package/esm2022/decorators/src/title.component.mjs +21 -0
  285. package/esm2022/dialog/acorex-components-dialog.mjs +5 -0
  286. package/esm2022/dialog/public-api.mjs +5 -0
  287. package/esm2022/dialog/src/dialog.class.mjs +2 -0
  288. package/esm2022/dialog/src/dialog.component.mjs +56 -0
  289. package/esm2022/dialog/src/dialog.module.mjs +28 -0
  290. package/esm2022/dialog/src/dialog.service.mjs +155 -0
  291. package/esm2022/drawer/acorex-components-drawer.mjs +5 -0
  292. package/esm2022/drawer/public-api.mjs +4 -0
  293. package/esm2022/drawer/src/drawer-container.component.mjs +39 -0
  294. package/esm2022/drawer/src/drawer.component.mjs +145 -0
  295. package/esm2022/drawer/src/drawer.module.mjs +23 -0
  296. package/esm2022/dropdown/acorex-components-dropdown.mjs +5 -0
  297. package/esm2022/dropdown/public-api.mjs +3 -0
  298. package/esm2022/dropdown/src/dropdown-panel.component.mjs +106 -0
  299. package/esm2022/dropdown/src/dropdown.module.mjs +26 -0
  300. package/esm2022/form/acorex-components-form.mjs +5 -0
  301. package/esm2022/form/public-api.mjs +7 -0
  302. package/esm2022/form/src/form-field.component.mjs +16 -0
  303. package/esm2022/form/src/form.component.mjs +164 -0
  304. package/esm2022/form/src/form.module.mjs +64 -0
  305. package/esm2022/form/src/validation-rule.widget.mjs +114 -0
  306. package/esm2022/form/src/validation-summary.component.mjs +110 -0
  307. package/esm2022/form/src/validation.class.mjs +2 -0
  308. package/esm2022/image/acorex-components-image.mjs +5 -0
  309. package/esm2022/image/public-api.mjs +3 -0
  310. package/esm2022/image/src/image.component.mjs +80 -0
  311. package/esm2022/image/src/image.module.mjs +20 -0
  312. package/esm2022/label/acorex-components-label.mjs +5 -0
  313. package/esm2022/label/public-api.mjs +3 -0
  314. package/esm2022/label/src/label.component.mjs +49 -0
  315. package/esm2022/label/src/label.module.mjs +22 -0
  316. package/esm2022/loading/acorex-components-loading.mjs +5 -0
  317. package/esm2022/loading/public-api.mjs +6 -0
  318. package/esm2022/loading/src/loading-spinner.component.mjs +70 -0
  319. package/esm2022/loading/src/loading.component.mjs +68 -0
  320. package/esm2022/loading/src/loading.directive.mjs +77 -0
  321. package/esm2022/loading/src/loading.module.mjs +36 -0
  322. package/esm2022/loading/src/loading.service.mjs +159 -0
  323. package/esm2022/menu/acorex-components-menu.mjs +5 -0
  324. package/esm2022/menu/public-api.mjs +3 -0
  325. package/esm2022/menu/src/menu.component.mjs +347 -0
  326. package/esm2022/menu/src/menu.module.mjs +34 -0
  327. package/esm2022/mixin/acorex-components-mixin.mjs +5 -0
  328. package/esm2022/mixin/public-api.mjs +18 -0
  329. package/esm2022/mixin/src/base-components.class.mjs +111 -0
  330. package/esm2022/mixin/src/base-menu-mixin.class.mjs +134 -0
  331. package/esm2022/mixin/src/button-mixin.class.mjs +71 -0
  332. package/esm2022/mixin/src/clickable-mixin.class.mjs +24 -0
  333. package/esm2022/mixin/src/color-look-mixing.class.mjs +48 -0
  334. package/esm2022/mixin/src/constratctor.mjs +2 -0
  335. package/esm2022/mixin/src/datalist-component.class.mjs +151 -0
  336. package/esm2022/mixin/src/datalist.class.mjs +3 -0
  337. package/esm2022/mixin/src/dropdown-mixin.class.mjs +99 -0
  338. package/esm2022/mixin/src/interactive-mixin.class.mjs +81 -0
  339. package/esm2022/mixin/src/loading-mixin.class.mjs +26 -0
  340. package/esm2022/mixin/src/mixin.class.mjs +26 -0
  341. package/esm2022/mixin/src/page-component.class.mjs +11 -0
  342. package/esm2022/mixin/src/selection-component.class.mjs +183 -0
  343. package/esm2022/mixin/src/sizable-mixin.class.mjs +22 -0
  344. package/esm2022/mixin/src/textbox-mixin.class.mjs +66 -0
  345. package/esm2022/mixin/src/value-mixin.class.mjs +220 -0
  346. package/esm2022/notification/acorex-components-notification.mjs +5 -0
  347. package/esm2022/notification/public-api.mjs +5 -0
  348. package/esm2022/notification/src/notification.class.mjs +2 -0
  349. package/esm2022/notification/src/notification.component.mjs +93 -0
  350. package/esm2022/notification/src/notification.module.mjs +24 -0
  351. package/esm2022/notification/src/notification.service.mjs +110 -0
  352. package/esm2022/number-box/acorex-components-number-box.mjs +5 -0
  353. package/esm2022/number-box/public-api.mjs +3 -0
  354. package/esm2022/number-box/src/number-box.component.mjs +269 -0
  355. package/esm2022/number-box/src/number-box.module.mjs +36 -0
  356. package/esm2022/page/acorex-components-page.mjs +5 -0
  357. package/esm2022/page/public-api.mjs +4 -0
  358. package/esm2022/page/src/base-page.class.mjs +64 -0
  359. package/esm2022/page/src/page.component.mjs +47 -0
  360. package/esm2022/page/src/page.module.mjs +19 -0
  361. package/esm2022/password-box/acorex-components-password-box.mjs +5 -0
  362. package/esm2022/password-box/public-api.mjs +3 -0
  363. package/esm2022/password-box/src/password-box.component.mjs +64 -0
  364. package/esm2022/password-box/src/password-box.module.mjs +33 -0
  365. package/esm2022/picker/acorex-components-picker.mjs +5 -0
  366. package/esm2022/picker/public-api.mjs +4 -0
  367. package/esm2022/picker/src/picker-column.component.mjs +21 -0
  368. package/esm2022/picker/src/picker.component.mjs +17 -0
  369. package/esm2022/picker/src/picker.module.mjs +38 -0
  370. package/esm2022/popover/acorex-components-popover.mjs +5 -0
  371. package/esm2022/popover/public-api.mjs +3 -0
  372. package/esm2022/popover/src/popover.component.mjs +263 -0
  373. package/esm2022/popover/src/popover.module.mjs +20 -0
  374. package/esm2022/popup/acorex-components-popup.mjs +5 -0
  375. package/esm2022/popup/public-api.mjs +4 -0
  376. package/esm2022/popup/src/popup.component.mjs +146 -0
  377. package/esm2022/popup/src/popup.module.mjs +28 -0
  378. package/esm2022/popup/src/popup.service.mjs +117 -0
  379. package/esm2022/progress-bar/acorex-components-progress-bar.mjs +5 -0
  380. package/esm2022/progress-bar/public-api.mjs +3 -0
  381. package/esm2022/progress-bar/src/progress-bar.component.mjs +34 -0
  382. package/esm2022/progress-bar/src/progress-bar.module.mjs +20 -0
  383. package/esm2022/public-api.mjs +5 -0
  384. package/esm2022/radio/acorex-components-radio.mjs +5 -0
  385. package/esm2022/radio/public-api.mjs +3 -0
  386. package/esm2022/radio/src/radio.component.mjs +40 -0
  387. package/esm2022/radio/src/radio.module.mjs +23 -0
  388. package/esm2022/range-slider/acorex-components-range-slider.mjs +5 -0
  389. package/esm2022/range-slider/public-api.mjs +3 -0
  390. package/esm2022/range-slider/src/range-slider.component.mjs +118 -0
  391. package/esm2022/range-slider/src/range-slider.module.mjs +23 -0
  392. package/esm2022/rating/acorex-components-rating.mjs +5 -0
  393. package/esm2022/rating/public-api.mjs +3 -0
  394. package/esm2022/rating/src/rating.component.mjs +42 -0
  395. package/esm2022/rating/src/rating.component.module.mjs +20 -0
  396. package/esm2022/result/acorex-components-result.mjs +5 -0
  397. package/esm2022/result/public-api.mjs +3 -0
  398. package/esm2022/result/src/result.component.mjs +27 -0
  399. package/esm2022/result/src/result.module.mjs +20 -0
  400. package/esm2022/search-box/acorex-components-search-box.mjs +5 -0
  401. package/esm2022/search-box/public-api.mjs +3 -0
  402. package/esm2022/search-box/src/search-box.component.mjs +55 -0
  403. package/esm2022/search-box/src/search-box.module.mjs +26 -0
  404. package/esm2022/select-box/acorex-components-select-box.mjs +5 -0
  405. package/esm2022/select-box/public-api.mjs +3 -0
  406. package/esm2022/select-box/src/selectbox.component.mjs +392 -0
  407. package/esm2022/select-box/src/selectbox.module.mjs +65 -0
  408. package/esm2022/selection-list/acorex-components-selection-list.mjs +5 -0
  409. package/esm2022/selection-list/public-api.mjs +3 -0
  410. package/esm2022/selection-list/src/selection-list.component.mjs +60 -0
  411. package/esm2022/selection-list/src/selection-list.module.mjs +25 -0
  412. package/esm2022/switch/acorex-components-switch.mjs +5 -0
  413. package/esm2022/switch/public-api.mjs +4 -0
  414. package/esm2022/switch/src/switch-content.component.mjs +17 -0
  415. package/esm2022/switch/src/switch.component.mjs +55 -0
  416. package/esm2022/switch/src/switch.module.mjs +23 -0
  417. package/esm2022/tabs/acorex-components-tabs.mjs +5 -0
  418. package/esm2022/tabs/public-api.mjs +6 -0
  419. package/esm2022/tabs/src/tab-content.directive.mjs +32 -0
  420. package/esm2022/tabs/src/tab-item.component.mjs +141 -0
  421. package/esm2022/tabs/src/tabs.class.mjs +6 -0
  422. package/esm2022/tabs/src/tabs.component.mjs +111 -0
  423. package/esm2022/tabs/src/tabs.module.mjs +26 -0
  424. package/esm2022/tag/acorex-components-tag.mjs +5 -0
  425. package/esm2022/tag/public-api.mjs +3 -0
  426. package/esm2022/tag/src/tag.component.mjs +30 -0
  427. package/esm2022/tag/src/tag.module.mjs +20 -0
  428. package/esm2022/textarea/acorex-components-textarea.mjs +5 -0
  429. package/esm2022/textarea/public-api.mjs +3 -0
  430. package/esm2022/textarea/src/textarea.component.mjs +30 -0
  431. package/esm2022/textarea/src/textarea.module.mjs +20 -0
  432. package/esm2022/textbox/acorex-components-textbox.mjs +5 -0
  433. package/esm2022/textbox/public-api.mjs +4 -0
  434. package/esm2022/textbox/src/mask-options.directive.mjs +20 -0
  435. package/esm2022/textbox/src/textbox.component.mjs +96 -0
  436. package/esm2022/textbox/src/textbox.module.mjs +39 -0
  437. package/esm2022/time-box/acorex-components-time-box.mjs +5 -0
  438. package/esm2022/time-box/public-api.mjs +3 -0
  439. package/esm2022/time-box/src/time-box.component.mjs +306 -0
  440. package/esm2022/time-box/src/time-box.module.mjs +33 -0
  441. package/esm2022/toast/acorex-components-toast.mjs +5 -0
  442. package/esm2022/toast/public-api.mjs +5 -0
  443. package/esm2022/toast/src/toast.class.mjs +2 -0
  444. package/esm2022/toast/src/toast.component.mjs +68 -0
  445. package/esm2022/toast/src/toast.module.mjs +23 -0
  446. package/esm2022/toast/src/toast.service.mjs +137 -0
  447. package/esm2022/tooltip/acorex-components-tooltip.mjs +5 -0
  448. package/esm2022/tooltip/public-api.mjs +4 -0
  449. package/esm2022/tooltip/src/tooltip.component.mjs +22 -0
  450. package/esm2022/tooltip/src/tooltip.directive.mjs +164 -0
  451. package/esm2022/tooltip/src/tooltip.module.mjs +23 -0
  452. package/esm2022/tree-view/acorex-components-tree-view.mjs +5 -0
  453. package/esm2022/tree-view/public-api.mjs +3 -0
  454. package/esm2022/tree-view/src/tree-view.component.mjs +108 -0
  455. package/esm2022/tree-view/src/tree-view.module.mjs +21 -0
  456. package/esm2022/uploader/acorex-components-uploader.mjs +5 -0
  457. package/esm2022/uploader/public-api.mjs +3 -0
  458. package/esm2022/uploader/src/uploader.component.mjs +102 -0
  459. package/esm2022/uploader/src/uploader.module.mjs +21 -0
  460. package/fesm2022/acorex-components-action-sheet.mjs +197 -0
  461. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -0
  462. package/fesm2022/acorex-components-alert.mjs +213 -0
  463. package/fesm2022/acorex-components-alert.mjs.map +1 -0
  464. package/fesm2022/acorex-components-avatar.mjs +82 -0
  465. package/fesm2022/acorex-components-avatar.mjs.map +1 -0
  466. package/fesm2022/acorex-components-badge.mjs +53 -0
  467. package/fesm2022/acorex-components-badge.mjs.map +1 -0
  468. package/fesm2022/acorex-components-breadcrumbs.mjs +94 -0
  469. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -0
  470. package/fesm2022/acorex-components-button.mjs +275 -0
  471. package/fesm2022/acorex-components-button.mjs.map +1 -0
  472. package/fesm2022/acorex-components-calendar.mjs +837 -0
  473. package/fesm2022/acorex-components-calendar.mjs.map +1 -0
  474. package/fesm2022/acorex-components-card.mjs +41 -0
  475. package/fesm2022/acorex-components-card.mjs.map +1 -0
  476. package/fesm2022/acorex-components-checkbox.mjs +67 -0
  477. package/fesm2022/acorex-components-checkbox.mjs.map +1 -0
  478. package/fesm2022/acorex-components-chips.mjs +56 -0
  479. package/fesm2022/acorex-components-chips.mjs.map +1 -0
  480. package/fesm2022/acorex-components-collapse.mjs +118 -0
  481. package/fesm2022/acorex-components-collapse.mjs.map +1 -0
  482. package/fesm2022/acorex-components-color-palette.mjs +771 -0
  483. package/fesm2022/acorex-components-color-palette.mjs.map +1 -0
  484. package/fesm2022/acorex-components-color-picker.mjs +182 -0
  485. package/fesm2022/acorex-components-color-picker.mjs.map +1 -0
  486. package/fesm2022/acorex-components-common.mjs +1211 -0
  487. package/fesm2022/acorex-components-common.mjs.map +1 -0
  488. package/fesm2022/acorex-components-context-menu.mjs +310 -0
  489. package/fesm2022/acorex-components-context-menu.mjs.map +1 -0
  490. package/fesm2022/acorex-components-data-pager.mjs +613 -0
  491. package/fesm2022/acorex-components-data-pager.mjs.map +1 -0
  492. package/fesm2022/acorex-components-data-table.mjs +231 -0
  493. package/fesm2022/acorex-components-data-table.mjs.map +1 -0
  494. package/fesm2022/acorex-components-date-picker.mjs +285 -0
  495. package/fesm2022/acorex-components-date-picker.mjs.map +1 -0
  496. package/fesm2022/acorex-components-decorators.mjs +353 -0
  497. package/fesm2022/acorex-components-decorators.mjs.map +1 -0
  498. package/fesm2022/acorex-components-dialog.mjs +237 -0
  499. package/fesm2022/acorex-components-dialog.mjs.map +1 -0
  500. package/fesm2022/acorex-components-drawer.mjs +204 -0
  501. package/fesm2022/acorex-components-drawer.mjs.map +1 -0
  502. package/fesm2022/acorex-components-dropdown.mjs +132 -0
  503. package/fesm2022/acorex-components-dropdown.mjs.map +1 -0
  504. package/fesm2022/acorex-components-form.mjs +450 -0
  505. package/fesm2022/acorex-components-form.mjs.map +1 -0
  506. package/fesm2022/acorex-components-image.mjs +102 -0
  507. package/fesm2022/acorex-components-image.mjs.map +1 -0
  508. package/fesm2022/acorex-components-label.mjs +73 -0
  509. package/fesm2022/acorex-components-label.mjs.map +1 -0
  510. package/fesm2022/acorex-components-loading.mjs +397 -0
  511. package/fesm2022/acorex-components-loading.mjs.map +1 -0
  512. package/fesm2022/acorex-components-menu.mjs +383 -0
  513. package/fesm2022/acorex-components-menu.mjs.map +1 -0
  514. package/fesm2022/acorex-components-mixin.mjs +1257 -0
  515. package/fesm2022/acorex-components-mixin.mjs.map +1 -0
  516. package/fesm2022/acorex-components-notification.mjs +223 -0
  517. package/fesm2022/acorex-components-notification.mjs.map +1 -0
  518. package/fesm2022/acorex-components-number-box.mjs +306 -0
  519. package/fesm2022/acorex-components-number-box.mjs.map +1 -0
  520. package/fesm2022/acorex-components-page.mjs +128 -0
  521. package/fesm2022/acorex-components-page.mjs.map +1 -0
  522. package/fesm2022/acorex-components-password-box.mjs +99 -0
  523. package/fesm2022/acorex-components-password-box.mjs.map +1 -0
  524. package/fesm2022/acorex-components-picker.mjs +74 -0
  525. package/fesm2022/acorex-components-picker.mjs.map +1 -0
  526. package/fesm2022/acorex-components-popover.mjs +285 -0
  527. package/fesm2022/acorex-components-popover.mjs.map +1 -0
  528. package/fesm2022/acorex-components-popup.mjs +286 -0
  529. package/fesm2022/acorex-components-popup.mjs.map +1 -0
  530. package/fesm2022/acorex-components-progress-bar.mjs +56 -0
  531. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -0
  532. package/fesm2022/acorex-components-radio.mjs +65 -0
  533. package/fesm2022/acorex-components-radio.mjs.map +1 -0
  534. package/fesm2022/acorex-components-range-slider.mjs +143 -0
  535. package/fesm2022/acorex-components-range-slider.mjs.map +1 -0
  536. package/fesm2022/acorex-components-rating.mjs +64 -0
  537. package/fesm2022/acorex-components-rating.mjs.map +1 -0
  538. package/fesm2022/acorex-components-result.mjs +49 -0
  539. package/fesm2022/acorex-components-result.mjs.map +1 -0
  540. package/fesm2022/acorex-components-search-box.mjs +82 -0
  541. package/fesm2022/acorex-components-search-box.mjs.map +1 -0
  542. package/fesm2022/acorex-components-select-box.mjs +456 -0
  543. package/fesm2022/acorex-components-select-box.mjs.map +1 -0
  544. package/fesm2022/acorex-components-selection-list.mjs +87 -0
  545. package/fesm2022/acorex-components-selection-list.mjs.map +1 -0
  546. package/fesm2022/acorex-components-switch.mjs +93 -0
  547. package/fesm2022/acorex-components-switch.mjs.map +1 -0
  548. package/fesm2022/acorex-components-tabs.mjs +308 -0
  549. package/fesm2022/acorex-components-tabs.mjs.map +1 -0
  550. package/fesm2022/acorex-components-tag.mjs +52 -0
  551. package/fesm2022/acorex-components-tag.mjs.map +1 -0
  552. package/fesm2022/acorex-components-textarea.mjs +52 -0
  553. package/fesm2022/acorex-components-textarea.mjs.map +1 -0
  554. package/fesm2022/acorex-components-textbox.mjs +151 -0
  555. package/fesm2022/acorex-components-textbox.mjs.map +1 -0
  556. package/fesm2022/acorex-components-time-box.mjs +340 -0
  557. package/fesm2022/acorex-components-time-box.mjs.map +1 -0
  558. package/fesm2022/acorex-components-toast.mjs +226 -0
  559. package/fesm2022/acorex-components-toast.mjs.map +1 -0
  560. package/fesm2022/acorex-components-tooltip.mjs +206 -0
  561. package/fesm2022/acorex-components-tooltip.mjs.map +1 -0
  562. package/fesm2022/acorex-components-tree-view.mjs +131 -0
  563. package/fesm2022/acorex-components-tree-view.mjs.map +1 -0
  564. package/fesm2022/acorex-components-uploader.mjs +125 -0
  565. package/fesm2022/acorex-components-uploader.mjs.map +1 -0
  566. package/fesm2022/acorex-components.mjs +11 -0
  567. package/form/index.d.ts +5 -5
  568. package/form/public-api.d.ts +6 -6
  569. package/form/src/form-field.component.d.ts +8 -8
  570. package/form/src/form.component.d.ts +51 -51
  571. package/form/src/form.module.d.ts +15 -15
  572. package/form/src/validation-rule.widget.d.ts +18 -18
  573. package/form/src/validation-summary.component.d.ts +23 -23
  574. package/form/src/validation.class.d.ts +18 -18
  575. package/image/index.d.ts +5 -5
  576. package/image/public-api.d.ts +2 -2
  577. package/image/src/image.component.d.ts +27 -27
  578. package/image/src/image.module.d.ts +8 -8
  579. package/index.d.ts +5 -5
  580. package/label/index.d.ts +5 -5
  581. package/label/public-api.d.ts +2 -2
  582. package/label/src/label.component.d.ts +17 -17
  583. package/label/src/label.module.d.ts +8 -8
  584. package/loading/index.d.ts +5 -5
  585. package/loading/public-api.d.ts +5 -5
  586. package/loading/src/loading-spinner.component.d.ts +6 -6
  587. package/loading/src/loading.component.d.ts +21 -21
  588. package/loading/src/loading.directive.d.ts +22 -22
  589. package/loading/src/loading.module.d.ts +13 -13
  590. package/loading/src/loading.service.d.ts +48 -48
  591. package/menu/index.d.ts +5 -5
  592. package/menu/public-api.d.ts +2 -2
  593. package/menu/src/menu.component.d.ts +39 -39
  594. package/menu/src/menu.module.d.ts +12 -12
  595. package/mixin/index.d.ts +5 -5
  596. package/mixin/public-api.d.ts +17 -17
  597. package/mixin/src/base-components.class.d.ts +84 -84
  598. package/mixin/src/base-menu-mixin.class.d.ts +53 -53
  599. package/mixin/src/button-mixin.class.d.ts +53 -53
  600. package/mixin/src/clickable-mixin.class.d.ts +36 -36
  601. package/mixin/src/color-look-mixing.class.d.ts +44 -44
  602. package/mixin/src/constratctor.d.ts +4 -4
  603. package/mixin/src/datalist-component.class.d.ts +59 -59
  604. package/mixin/src/datalist.class.d.ts +11 -11
  605. package/mixin/src/dropdown-mixin.class.d.ts +47 -47
  606. package/mixin/src/interactive-mixin.class.d.ts +63 -63
  607. package/mixin/src/loading-mixin.class.d.ts +40 -40
  608. package/mixin/src/mixin.class.d.ts +679 -679
  609. package/mixin/src/page-component.class.d.ts +28 -28
  610. package/mixin/src/selection-component.class.d.ts +61 -61
  611. package/mixin/src/sizable-mixin.class.d.ts +34 -34
  612. package/mixin/src/textbox-mixin.class.d.ts +72 -72
  613. package/mixin/src/value-mixin.class.d.ts +63 -63
  614. package/notification/index.d.ts +5 -5
  615. package/notification/public-api.d.ts +4 -4
  616. package/notification/src/notification.class.d.ts +18 -18
  617. package/notification/src/notification.component.d.ts +30 -30
  618. package/notification/src/notification.module.d.ts +10 -10
  619. package/notification/src/notification.service.d.ts +16 -16
  620. package/number-box/index.d.ts +5 -5
  621. package/number-box/public-api.d.ts +2 -2
  622. package/number-box/src/number-box.component.d.ts +77 -77
  623. package/number-box/src/number-box.module.d.ts +12 -12
  624. package/package.json +173 -285
  625. package/page/index.d.ts +5 -5
  626. package/page/public-api.d.ts +3 -3
  627. package/page/src/base-page.class.d.ts +25 -25
  628. package/page/src/page.component.d.ts +14 -14
  629. package/page/src/page.module.d.ts +6 -6
  630. package/password-box/index.d.ts +5 -5
  631. package/password-box/public-api.d.ts +2 -2
  632. package/password-box/src/password-box.component.d.ts +25 -25
  633. package/password-box/src/password-box.module.d.ts +11 -11
  634. package/picker/index.d.ts +5 -5
  635. package/picker/public-api.d.ts +3 -3
  636. package/picker/src/picker-column.component.d.ts +11 -11
  637. package/picker/src/picker.component.d.ts +10 -10
  638. package/picker/src/picker.module.d.ts +14 -14
  639. package/popover/index.d.ts +5 -5
  640. package/popover/public-api.d.ts +2 -2
  641. package/popover/src/popover.component.d.ts +51 -51
  642. package/popover/src/popover.module.d.ts +8 -8
  643. package/popup/index.d.ts +5 -5
  644. package/popup/public-api.d.ts +3 -3
  645. package/popup/src/popup.component.d.ts +45 -45
  646. package/popup/src/popup.module.d.ts +14 -14
  647. package/popup/src/popup.service.d.ts +42 -42
  648. package/progress-bar/index.d.ts +5 -5
  649. package/progress-bar/public-api.d.ts +2 -2
  650. package/progress-bar/src/progress-bar.component.d.ts +18 -18
  651. package/progress-bar/src/progress-bar.module.d.ts +8 -8
  652. package/public-api.d.ts +1 -1
  653. package/radio/index.d.ts +5 -5
  654. package/radio/public-api.d.ts +2 -2
  655. package/radio/src/radio.component.d.ts +18 -18
  656. package/radio/src/radio.module.d.ts +9 -9
  657. package/range-slider/index.d.ts +5 -5
  658. package/range-slider/public-api.d.ts +2 -2
  659. package/range-slider/src/range-slider.component.d.ts +41 -41
  660. package/range-slider/src/range-slider.module.d.ts +9 -9
  661. package/rating/index.d.ts +5 -5
  662. package/rating/public-api.d.ts +2 -2
  663. package/rating/src/rating.component.d.ts +21 -21
  664. package/rating/src/rating.component.module.d.ts +8 -8
  665. package/result/index.d.ts +5 -5
  666. package/result/public-api.d.ts +2 -2
  667. package/result/src/result.component.d.ts +12 -12
  668. package/result/src/result.module.d.ts +8 -8
  669. package/search-box/index.d.ts +5 -5
  670. package/search-box/public-api.d.ts +2 -2
  671. package/search-box/src/search-box.component.d.ts +18 -18
  672. package/search-box/src/search-box.module.d.ts +12 -12
  673. package/select-box/index.d.ts +5 -5
  674. package/select-box/public-api.d.ts +2 -2
  675. package/select-box/src/selectbox.component.d.ts +66 -66
  676. package/select-box/src/selectbox.module.d.ts +19 -19
  677. package/selection-list/index.d.ts +5 -5
  678. package/selection-list/public-api.d.ts +2 -2
  679. package/selection-list/src/selection-list.component.d.ts +23 -23
  680. package/selection-list/src/selection-list.module.d.ts +13 -13
  681. package/switch/index.d.ts +5 -5
  682. package/switch/public-api.d.ts +3 -3
  683. package/switch/src/switch-content.component.d.ts +8 -8
  684. package/switch/src/switch.component.d.ts +13 -13
  685. package/switch/src/switch.module.d.ts +11 -11
  686. package/tabs/index.d.ts +5 -5
  687. package/tabs/public-api.d.ts +5 -5
  688. package/tabs/src/tab-content.directive.d.ts +11 -11
  689. package/tabs/src/tab-item.component.d.ts +48 -48
  690. package/tabs/src/tabs.class.d.ts +7 -7
  691. package/tabs/src/tabs.component.d.ts +29 -29
  692. package/tabs/src/tabs.module.d.ts +12 -12
  693. package/tag/index.d.ts +5 -5
  694. package/tag/public-api.d.ts +2 -2
  695. package/tag/src/tag.component.d.ts +11 -11
  696. package/tag/src/tag.module.d.ts +8 -8
  697. package/textarea/index.d.ts +5 -5
  698. package/textarea/public-api.d.ts +2 -2
  699. package/textarea/src/textarea.component.d.ts +14 -14
  700. package/textarea/src/textarea.module.d.ts +9 -9
  701. package/textbox/index.d.ts +5 -5
  702. package/textbox/public-api.d.ts +3 -3
  703. package/textbox/src/mask-options.directive.d.ts +13 -13
  704. package/textbox/src/textbox.component.d.ts +27 -27
  705. package/textbox/src/textbox.module.d.ts +13 -13
  706. package/time-box/index.d.ts +5 -5
  707. package/time-box/public-api.d.ts +2 -2
  708. package/time-box/src/time-box.component.d.ts +50 -50
  709. package/time-box/src/time-box.module.d.ts +11 -11
  710. package/toast/index.d.ts +5 -5
  711. package/toast/public-api.d.ts +4 -4
  712. package/toast/src/toast.class.d.ts +15 -15
  713. package/toast/src/toast.component.d.ts +25 -25
  714. package/toast/src/toast.module.d.ts +9 -9
  715. package/toast/src/toast.service.d.ts +21 -21
  716. package/tooltip/index.d.ts +5 -5
  717. package/tooltip/public-api.d.ts +3 -3
  718. package/tooltip/src/tooltip.component.d.ts +11 -11
  719. package/tooltip/src/tooltip.directive.d.ts +22 -22
  720. package/tooltip/src/tooltip.module.d.ts +10 -10
  721. package/tree-view/index.d.ts +5 -5
  722. package/tree-view/public-api.d.ts +2 -2
  723. package/tree-view/src/tree-view.component.d.ts +33 -33
  724. package/tree-view/src/tree-view.module.d.ts +9 -9
  725. package/uploader/index.d.ts +5 -5
  726. package/uploader/public-api.d.ts +2 -2
  727. package/uploader/src/uploader.component.d.ts +28 -28
  728. package/uploader/src/uploader.module.d.ts +9 -9
  729. package/esm2020/acorex-components.mjs +0 -5
  730. package/esm2020/action-sheet/acorex-components-action-sheet.mjs +0 -5
  731. package/esm2020/action-sheet/public-api.mjs +0 -4
  732. package/esm2020/action-sheet/src/action-sheet.component.mjs +0 -76
  733. package/esm2020/action-sheet/src/action-sheet.interface.mjs +0 -3
  734. package/esm2020/action-sheet/src/action-sheet.module.mjs +0 -26
  735. package/esm2020/action-sheet/src/action-sheet.service.mjs +0 -91
  736. package/esm2020/alert/acorex-components-alert.mjs +0 -5
  737. package/esm2020/alert/public-api.mjs +0 -3
  738. package/esm2020/alert/src/alert.component.mjs +0 -178
  739. package/esm2020/alert/src/alert.module.mjs +0 -22
  740. package/esm2020/avatar/acorex-components-avatar.mjs +0 -5
  741. package/esm2020/avatar/public-api.mjs +0 -4
  742. package/esm2020/avatar/src/avatar-group.component.mjs +0 -16
  743. package/esm2020/avatar/src/avatar.component.mjs +0 -41
  744. package/esm2020/avatar/src/avatar.module.mjs +0 -22
  745. package/esm2020/badge/acorex-components-badge.mjs +0 -5
  746. package/esm2020/badge/public-api.mjs +0 -3
  747. package/esm2020/badge/src/badge.component.mjs +0 -27
  748. package/esm2020/badge/src/badge.module.mjs +0 -21
  749. package/esm2020/breadcrumbs/acorex-components-breadcrumbs.mjs +0 -5
  750. package/esm2020/breadcrumbs/public-api.mjs +0 -5
  751. package/esm2020/breadcrumbs/src/breadcrumbs-item.class.mjs +0 -2
  752. package/esm2020/breadcrumbs/src/breadcrumbs-item.component.mjs +0 -46
  753. package/esm2020/breadcrumbs/src/breadcrumbs.component.mjs +0 -25
  754. package/esm2020/breadcrumbs/src/breadcrumbs.module.mjs +0 -20
  755. package/esm2020/button/acorex-components-button.mjs +0 -5
  756. package/esm2020/button/public-api.mjs +0 -6
  757. package/esm2020/button/src/button-group.component.mjs +0 -88
  758. package/esm2020/button/src/button-item.class.mjs +0 -2
  759. package/esm2020/button/src/button-item.component.mjs +0 -77
  760. package/esm2020/button/src/button.component.mjs +0 -85
  761. package/esm2020/button/src/button.module.mjs +0 -32
  762. package/esm2020/calendar/acorex-components-calendar.mjs +0 -5
  763. package/esm2020/calendar/public-api.mjs +0 -4
  764. package/esm2020/calendar/src/calendar.class.mjs +0 -127
  765. package/esm2020/calendar/src/calendar.component.mjs +0 -382
  766. package/esm2020/calendar/src/calendar.module.mjs +0 -22
  767. package/esm2020/card/acorex-components-card.mjs +0 -5
  768. package/esm2020/card/public-api.mjs +0 -3
  769. package/esm2020/card/src/card.component.mjs +0 -17
  770. package/esm2020/card/src/card.module.mjs +0 -19
  771. package/esm2020/checkbox/acorex-components-checkbox.mjs +0 -5
  772. package/esm2020/checkbox/public-api.mjs +0 -3
  773. package/esm2020/checkbox/src/checkbox.component.mjs +0 -41
  774. package/esm2020/checkbox/src/checkbox.module.mjs +0 -21
  775. package/esm2020/chips/acorex-components-chips.mjs +0 -5
  776. package/esm2020/chips/public-api.mjs +0 -3
  777. package/esm2020/chips/src/chips.component.mjs +0 -33
  778. package/esm2020/chips/src/chips.module.mjs +0 -19
  779. package/esm2020/collapse/acorex-components-collapse.mjs +0 -5
  780. package/esm2020/collapse/public-api.mjs +0 -4
  781. package/esm2020/collapse/src/collapse-group.component.mjs +0 -50
  782. package/esm2020/collapse/src/collapse.component.mjs +0 -45
  783. package/esm2020/collapse/src/collapse.module.mjs +0 -20
  784. package/esm2020/color-palette/acorex-components-color-palette.mjs +0 -5
  785. package/esm2020/color-palette/public-api.mjs +0 -8
  786. package/esm2020/color-palette/src/color-palette-input.component.mjs +0 -129
  787. package/esm2020/color-palette/src/color-palette-picker.component.mjs +0 -158
  788. package/esm2020/color-palette/src/color-palette-preview.component.mjs +0 -60
  789. package/esm2020/color-palette/src/color-palette-swatches.component.mjs +0 -302
  790. package/esm2020/color-palette/src/color-palette.class.mjs +0 -17
  791. package/esm2020/color-palette/src/color-palette.component.mjs +0 -74
  792. package/esm2020/color-palette/src/color-palette.module.mjs +0 -60
  793. package/esm2020/color-picker/acorex-components-color-picker.mjs +0 -5
  794. package/esm2020/color-picker/public-api.mjs +0 -3
  795. package/esm2020/color-picker/src/color-picker.component.mjs +0 -105
  796. package/esm2020/color-picker/src/color-picker.module.mjs +0 -61
  797. package/esm2020/common/acorex-components-common.mjs +0 -5
  798. package/esm2020/common/public-api.mjs +0 -16
  799. package/esm2020/common/src/classes/components.class.mjs +0 -69
  800. package/esm2020/common/src/classes/drawing.class.mjs +0 -2
  801. package/esm2020/common/src/classes/events.class.mjs +0 -58
  802. package/esm2020/common/src/classes/styles.class.mjs +0 -13
  803. package/esm2020/common/src/common.module.mjs +0 -42
  804. package/esm2020/common/src/components/base-component.class.mjs +0 -57
  805. package/esm2020/common/src/components/button-base-component.class.mjs +0 -68
  806. package/esm2020/common/src/components/color-component.class.mjs +0 -27
  807. package/esm2020/common/src/components/colorlook-component.class.mjs +0 -11
  808. package/esm2020/common/src/components/index.mjs +0 -7
  809. package/esm2020/common/src/components/interactive-component.class.mjs +0 -62
  810. package/esm2020/common/src/components/look-component.class.mjs +0 -27
  811. package/esm2020/common/src/constant/positions.mjs +0 -75
  812. package/esm2020/common/src/directives/auto-focus.directive.mjs +0 -55
  813. package/esm2020/common/src/directives/debounce-time.directive.mjs +0 -47
  814. package/esm2020/common/src/directives/hotkey.directive.mjs +0 -79
  815. package/esm2020/common/src/directives/infinite-scroll.directive.mjs +0 -63
  816. package/esm2020/common/src/directives/responsive.directive.mjs +0 -34
  817. package/esm2020/common/src/services/custom-cdk-overlay.service.mjs +0 -48
  818. package/esm2020/common/src/services/hotkey.service.mjs +0 -38
  819. package/esm2020/common/src/services/overlay.service.mjs +0 -111
  820. package/esm2020/context-menu/acorex-components-context-menu.mjs +0 -5
  821. package/esm2020/context-menu/public-api.mjs +0 -3
  822. package/esm2020/context-menu/src/context-menu.component.mjs +0 -260
  823. package/esm2020/context-menu/src/context-menu.module.mjs +0 -36
  824. package/esm2020/data-pager/acorex-components-data-pager.mjs +0 -5
  825. package/esm2020/data-pager/public-api.mjs +0 -10
  826. package/esm2020/data-pager/src/data-pager-base.component.mjs +0 -38
  827. package/esm2020/data-pager/src/data-pager-info.component.mjs +0 -57
  828. package/esm2020/data-pager/src/data-pager-input-selector.component.mjs +0 -51
  829. package/esm2020/data-pager/src/data-pager-next-buttons.components.mjs +0 -63
  830. package/esm2020/data-pager/src/data-pager-numeric-selector.component.mjs +0 -98
  831. package/esm2020/data-pager/src/data-pager-pagesize-dropdown.component.mjs +0 -85
  832. package/esm2020/data-pager/src/data-pager-prev-buttons.component.mjs +0 -59
  833. package/esm2020/data-pager/src/data-pager.component.mjs +0 -143
  834. package/esm2020/data-pager/src/data-pager.module.mjs +0 -51
  835. package/esm2020/data-table/acorex-components-data-table.mjs +0 -5
  836. package/esm2020/data-table/public-api.mjs +0 -5
  837. package/esm2020/data-table/src/data-column-cell-template.directive.mjs +0 -17
  838. package/esm2020/data-table/src/data-column.directive.mjs +0 -43
  839. package/esm2020/data-table/src/data-table.component.mjs +0 -137
  840. package/esm2020/data-table/src/data-table.module.mjs +0 -27
  841. package/esm2020/date-picker/acorex-components-date-picker.mjs +0 -5
  842. package/esm2020/date-picker/public-api.mjs +0 -3
  843. package/esm2020/date-picker/src/datepicker.component.mjs +0 -249
  844. package/esm2020/date-picker/src/datepicker.module.mjs +0 -44
  845. package/esm2020/decorators/acorex-components-decorators.mjs +0 -5
  846. package/esm2020/decorators/public-api.mjs +0 -15
  847. package/esm2020/decorators/src/close-button.component.mjs +0 -50
  848. package/esm2020/decorators/src/content.component.mjs +0 -21
  849. package/esm2020/decorators/src/decorators.module.mjs +0 -71
  850. package/esm2020/decorators/src/footer.component.mjs +0 -29
  851. package/esm2020/decorators/src/form-hint.component.mjs +0 -20
  852. package/esm2020/decorators/src/header.component.mjs +0 -29
  853. package/esm2020/decorators/src/icon.component.mjs +0 -29
  854. package/esm2020/decorators/src/overlay.component.mjs +0 -22
  855. package/esm2020/decorators/src/placeholder.component.mjs +0 -14
  856. package/esm2020/decorators/src/prefix.component.mjs +0 -21
  857. package/esm2020/decorators/src/sub-title.component.mjs +0 -27
  858. package/esm2020/decorators/src/suffix.component.mjs +0 -21
  859. package/esm2020/decorators/src/text.component.mjs +0 -21
  860. package/esm2020/decorators/src/title.component.mjs +0 -20
  861. package/esm2020/dialog/acorex-components-dialog.mjs +0 -5
  862. package/esm2020/dialog/public-api.mjs +0 -5
  863. package/esm2020/dialog/src/dialog.class.mjs +0 -2
  864. package/esm2020/dialog/src/dialog.component.mjs +0 -52
  865. package/esm2020/dialog/src/dialog.module.mjs +0 -27
  866. package/esm2020/dialog/src/dialog.service.mjs +0 -151
  867. package/esm2020/drawer/acorex-components-drawer.mjs +0 -5
  868. package/esm2020/drawer/public-api.mjs +0 -4
  869. package/esm2020/drawer/src/drawer-container.component.mjs +0 -37
  870. package/esm2020/drawer/src/drawer.component.mjs +0 -140
  871. package/esm2020/drawer/src/drawer.module.mjs +0 -22
  872. package/esm2020/dropdown/acorex-components-dropdown.mjs +0 -5
  873. package/esm2020/dropdown/public-api.mjs +0 -3
  874. package/esm2020/dropdown/src/dropdown-panel.component.mjs +0 -101
  875. package/esm2020/dropdown/src/dropdown.module.mjs +0 -25
  876. package/esm2020/form/acorex-components-form.mjs +0 -5
  877. package/esm2020/form/public-api.mjs +0 -7
  878. package/esm2020/form/src/form-field.component.mjs +0 -15
  879. package/esm2020/form/src/form.component.mjs +0 -160
  880. package/esm2020/form/src/form.module.mjs +0 -63
  881. package/esm2020/form/src/validation-rule.widget.mjs +0 -115
  882. package/esm2020/form/src/validation-summary.component.mjs +0 -105
  883. package/esm2020/form/src/validation.class.mjs +0 -2
  884. package/esm2020/image/acorex-components-image.mjs +0 -5
  885. package/esm2020/image/public-api.mjs +0 -3
  886. package/esm2020/image/src/image.component.mjs +0 -76
  887. package/esm2020/image/src/image.module.mjs +0 -19
  888. package/esm2020/label/acorex-components-label.mjs +0 -5
  889. package/esm2020/label/public-api.mjs +0 -3
  890. package/esm2020/label/src/label.component.mjs +0 -45
  891. package/esm2020/label/src/label.module.mjs +0 -21
  892. package/esm2020/loading/acorex-components-loading.mjs +0 -5
  893. package/esm2020/loading/public-api.mjs +0 -6
  894. package/esm2020/loading/src/loading-spinner.component.mjs +0 -68
  895. package/esm2020/loading/src/loading.component.mjs +0 -64
  896. package/esm2020/loading/src/loading.directive.mjs +0 -68
  897. package/esm2020/loading/src/loading.module.mjs +0 -35
  898. package/esm2020/loading/src/loading.service.mjs +0 -156
  899. package/esm2020/menu/acorex-components-menu.mjs +0 -5
  900. package/esm2020/menu/public-api.mjs +0 -3
  901. package/esm2020/menu/src/menu.component.mjs +0 -338
  902. package/esm2020/menu/src/menu.module.mjs +0 -33
  903. package/esm2020/mixin/acorex-components-mixin.mjs +0 -5
  904. package/esm2020/mixin/public-api.mjs +0 -18
  905. package/esm2020/mixin/src/base-components.class.mjs +0 -110
  906. package/esm2020/mixin/src/base-menu-mixin.class.mjs +0 -138
  907. package/esm2020/mixin/src/button-mixin.class.mjs +0 -70
  908. package/esm2020/mixin/src/clickable-mixin.class.mjs +0 -24
  909. package/esm2020/mixin/src/color-look-mixing.class.mjs +0 -48
  910. package/esm2020/mixin/src/constratctor.mjs +0 -2
  911. package/esm2020/mixin/src/datalist-component.class.mjs +0 -163
  912. package/esm2020/mixin/src/datalist.class.mjs +0 -3
  913. package/esm2020/mixin/src/dropdown-mixin.class.mjs +0 -99
  914. package/esm2020/mixin/src/interactive-mixin.class.mjs +0 -84
  915. package/esm2020/mixin/src/loading-mixin.class.mjs +0 -18
  916. package/esm2020/mixin/src/mixin.class.mjs +0 -26
  917. package/esm2020/mixin/src/page-component.class.mjs +0 -11
  918. package/esm2020/mixin/src/selection-component.class.mjs +0 -180
  919. package/esm2020/mixin/src/sizable-mixin.class.mjs +0 -18
  920. package/esm2020/mixin/src/textbox-mixin.class.mjs +0 -58
  921. package/esm2020/mixin/src/value-mixin.class.mjs +0 -230
  922. package/esm2020/notification/acorex-components-notification.mjs +0 -5
  923. package/esm2020/notification/public-api.mjs +0 -5
  924. package/esm2020/notification/src/notification.class.mjs +0 -2
  925. package/esm2020/notification/src/notification.component.mjs +0 -87
  926. package/esm2020/notification/src/notification.module.mjs +0 -23
  927. package/esm2020/notification/src/notification.service.mjs +0 -107
  928. package/esm2020/number-box/acorex-components-number-box.mjs +0 -5
  929. package/esm2020/number-box/public-api.mjs +0 -3
  930. package/esm2020/number-box/src/number-box.component.mjs +0 -260
  931. package/esm2020/number-box/src/number-box.module.mjs +0 -35
  932. package/esm2020/page/acorex-components-page.mjs +0 -5
  933. package/esm2020/page/public-api.mjs +0 -4
  934. package/esm2020/page/src/base-page.class.mjs +0 -61
  935. package/esm2020/page/src/page.component.mjs +0 -44
  936. package/esm2020/page/src/page.module.mjs +0 -18
  937. package/esm2020/password-box/acorex-components-password-box.mjs +0 -5
  938. package/esm2020/password-box/public-api.mjs +0 -3
  939. package/esm2020/password-box/src/password-box.component.mjs +0 -62
  940. package/esm2020/password-box/src/password-box.module.mjs +0 -32
  941. package/esm2020/picker/acorex-components-picker.mjs +0 -5
  942. package/esm2020/picker/public-api.mjs +0 -4
  943. package/esm2020/picker/src/picker-column.component.mjs +0 -22
  944. package/esm2020/picker/src/picker.component.mjs +0 -16
  945. package/esm2020/picker/src/picker.module.mjs +0 -37
  946. package/esm2020/popover/acorex-components-popover.mjs +0 -5
  947. package/esm2020/popover/public-api.mjs +0 -3
  948. package/esm2020/popover/src/popover.component.mjs +0 -248
  949. package/esm2020/popover/src/popover.module.mjs +0 -19
  950. package/esm2020/popup/acorex-components-popup.mjs +0 -5
  951. package/esm2020/popup/public-api.mjs +0 -4
  952. package/esm2020/popup/src/popup.component.mjs +0 -135
  953. package/esm2020/popup/src/popup.module.mjs +0 -27
  954. package/esm2020/popup/src/popup.service.mjs +0 -114
  955. package/esm2020/progress-bar/acorex-components-progress-bar.mjs +0 -5
  956. package/esm2020/progress-bar/public-api.mjs +0 -3
  957. package/esm2020/progress-bar/src/progress-bar.component.mjs +0 -33
  958. package/esm2020/progress-bar/src/progress-bar.module.mjs +0 -19
  959. package/esm2020/public-api.mjs +0 -5
  960. package/esm2020/radio/acorex-components-radio.mjs +0 -5
  961. package/esm2020/radio/public-api.mjs +0 -3
  962. package/esm2020/radio/src/radio.component.mjs +0 -39
  963. package/esm2020/radio/src/radio.module.mjs +0 -22
  964. package/esm2020/range-slider/acorex-components-range-slider.mjs +0 -5
  965. package/esm2020/range-slider/public-api.mjs +0 -3
  966. package/esm2020/range-slider/src/range-slider.component.mjs +0 -116
  967. package/esm2020/range-slider/src/range-slider.module.mjs +0 -22
  968. package/esm2020/rating/acorex-components-rating.mjs +0 -5
  969. package/esm2020/rating/public-api.mjs +0 -3
  970. package/esm2020/rating/src/rating.component.mjs +0 -41
  971. package/esm2020/rating/src/rating.component.module.mjs +0 -19
  972. package/esm2020/result/acorex-components-result.mjs +0 -5
  973. package/esm2020/result/public-api.mjs +0 -3
  974. package/esm2020/result/src/result.component.mjs +0 -25
  975. package/esm2020/result/src/result.module.mjs +0 -19
  976. package/esm2020/search-box/acorex-components-search-box.mjs +0 -5
  977. package/esm2020/search-box/public-api.mjs +0 -3
  978. package/esm2020/search-box/src/search-box.component.mjs +0 -52
  979. package/esm2020/search-box/src/search-box.module.mjs +0 -25
  980. package/esm2020/select-box/acorex-components-select-box.mjs +0 -5
  981. package/esm2020/select-box/public-api.mjs +0 -3
  982. package/esm2020/select-box/src/selectbox.component.mjs +0 -380
  983. package/esm2020/select-box/src/selectbox.module.mjs +0 -64
  984. package/esm2020/selection-list/acorex-components-selection-list.mjs +0 -5
  985. package/esm2020/selection-list/public-api.mjs +0 -3
  986. package/esm2020/selection-list/src/selection-list.component.mjs +0 -60
  987. package/esm2020/selection-list/src/selection-list.module.mjs +0 -24
  988. package/esm2020/switch/acorex-components-switch.mjs +0 -5
  989. package/esm2020/switch/public-api.mjs +0 -4
  990. package/esm2020/switch/src/switch-content.component.mjs +0 -16
  991. package/esm2020/switch/src/switch.component.mjs +0 -51
  992. package/esm2020/switch/src/switch.module.mjs +0 -22
  993. package/esm2020/tabs/acorex-components-tabs.mjs +0 -5
  994. package/esm2020/tabs/public-api.mjs +0 -6
  995. package/esm2020/tabs/src/tab-content.directive.mjs +0 -29
  996. package/esm2020/tabs/src/tab-item.component.mjs +0 -136
  997. package/esm2020/tabs/src/tabs.class.mjs +0 -4
  998. package/esm2020/tabs/src/tabs.component.mjs +0 -107
  999. package/esm2020/tabs/src/tabs.module.mjs +0 -25
  1000. package/esm2020/tag/acorex-components-tag.mjs +0 -5
  1001. package/esm2020/tag/public-api.mjs +0 -3
  1002. package/esm2020/tag/src/tag.component.mjs +0 -29
  1003. package/esm2020/tag/src/tag.module.mjs +0 -19
  1004. package/esm2020/textarea/acorex-components-textarea.mjs +0 -5
  1005. package/esm2020/textarea/public-api.mjs +0 -3
  1006. package/esm2020/textarea/src/textarea.component.mjs +0 -28
  1007. package/esm2020/textarea/src/textarea.module.mjs +0 -19
  1008. package/esm2020/textbox/acorex-components-textbox.mjs +0 -5
  1009. package/esm2020/textbox/public-api.mjs +0 -4
  1010. package/esm2020/textbox/src/mask-options.directive.mjs +0 -17
  1011. package/esm2020/textbox/src/textbox.component.mjs +0 -92
  1012. package/esm2020/textbox/src/textbox.module.mjs +0 -38
  1013. package/esm2020/time-box/acorex-components-time-box.mjs +0 -5
  1014. package/esm2020/time-box/public-api.mjs +0 -3
  1015. package/esm2020/time-box/src/time-box.component.mjs +0 -296
  1016. package/esm2020/time-box/src/time-box.module.mjs +0 -32
  1017. package/esm2020/toast/acorex-components-toast.mjs +0 -5
  1018. package/esm2020/toast/public-api.mjs +0 -5
  1019. package/esm2020/toast/src/toast.class.mjs +0 -2
  1020. package/esm2020/toast/src/toast.component.mjs +0 -64
  1021. package/esm2020/toast/src/toast.module.mjs +0 -22
  1022. package/esm2020/toast/src/toast.service.mjs +0 -134
  1023. package/esm2020/tooltip/acorex-components-tooltip.mjs +0 -5
  1024. package/esm2020/tooltip/public-api.mjs +0 -4
  1025. package/esm2020/tooltip/src/tooltip.component.mjs +0 -20
  1026. package/esm2020/tooltip/src/tooltip.directive.mjs +0 -157
  1027. package/esm2020/tooltip/src/tooltip.module.mjs +0 -22
  1028. package/esm2020/tree-view/acorex-components-tree-view.mjs +0 -5
  1029. package/esm2020/tree-view/public-api.mjs +0 -3
  1030. package/esm2020/tree-view/src/tree-view.component.mjs +0 -108
  1031. package/esm2020/tree-view/src/tree-view.module.mjs +0 -20
  1032. package/esm2020/uploader/acorex-components-uploader.mjs +0 -5
  1033. package/esm2020/uploader/public-api.mjs +0 -3
  1034. package/esm2020/uploader/src/uploader.component.mjs +0 -98
  1035. package/esm2020/uploader/src/uploader.module.mjs +0 -20
  1036. package/fesm2015/acorex-components-action-sheet.mjs +0 -193
  1037. package/fesm2015/acorex-components-action-sheet.mjs.map +0 -1
  1038. package/fesm2015/acorex-components-alert.mjs +0 -208
  1039. package/fesm2015/acorex-components-alert.mjs.map +0 -1
  1040. package/fesm2015/acorex-components-avatar.mjs +0 -81
  1041. package/fesm2015/acorex-components-avatar.mjs.map +0 -1
  1042. package/fesm2015/acorex-components-badge.mjs +0 -53
  1043. package/fesm2015/acorex-components-badge.mjs.map +0 -1
  1044. package/fesm2015/acorex-components-breadcrumbs.mjs +0 -91
  1045. package/fesm2015/acorex-components-breadcrumbs.mjs.map +0 -1
  1046. package/fesm2015/acorex-components-button.mjs +0 -281
  1047. package/fesm2015/acorex-components-button.mjs.map +0 -1
  1048. package/fesm2015/acorex-components-calendar.mjs +0 -531
  1049. package/fesm2015/acorex-components-calendar.mjs.map +0 -1
  1050. package/fesm2015/acorex-components-card.mjs +0 -41
  1051. package/fesm2015/acorex-components-card.mjs.map +0 -1
  1052. package/fesm2015/acorex-components-checkbox.mjs +0 -67
  1053. package/fesm2015/acorex-components-checkbox.mjs.map +0 -1
  1054. package/fesm2015/acorex-components-chips.mjs +0 -57
  1055. package/fesm2015/acorex-components-chips.mjs.map +0 -1
  1056. package/fesm2015/acorex-components-collapse.mjs +0 -115
  1057. package/fesm2015/acorex-components-collapse.mjs.map +0 -1
  1058. package/fesm2015/acorex-components-color-palette.mjs +0 -772
  1059. package/fesm2015/acorex-components-color-palette.mjs.map +0 -1
  1060. package/fesm2015/acorex-components-color-picker.mjs +0 -172
  1061. package/fesm2015/acorex-components-color-picker.mjs.map +0 -1
  1062. package/fesm2015/acorex-components-common.mjs +0 -955
  1063. package/fesm2015/acorex-components-common.mjs.map +0 -1
  1064. package/fesm2015/acorex-components-context-menu.mjs +0 -301
  1065. package/fesm2015/acorex-components-context-menu.mjs.map +0 -1
  1066. package/fesm2015/acorex-components-data-pager.mjs +0 -615
  1067. package/fesm2015/acorex-components-data-pager.mjs.map +0 -1
  1068. package/fesm2015/acorex-components-data-table.mjs +0 -224
  1069. package/fesm2015/acorex-components-data-table.mjs.map +0 -1
  1070. package/fesm2015/acorex-components-date-picker.mjs +0 -297
  1071. package/fesm2015/acorex-components-date-picker.mjs.map +0 -1
  1072. package/fesm2015/acorex-components-decorators.mjs +0 -356
  1073. package/fesm2015/acorex-components-decorators.mjs.map +0 -1
  1074. package/fesm2015/acorex-components-dialog.mjs +0 -233
  1075. package/fesm2015/acorex-components-dialog.mjs.map +0 -1
  1076. package/fesm2015/acorex-components-drawer.mjs +0 -202
  1077. package/fesm2015/acorex-components-drawer.mjs.map +0 -1
  1078. package/fesm2015/acorex-components-dropdown.mjs +0 -135
  1079. package/fesm2015/acorex-components-dropdown.mjs.map +0 -1
  1080. package/fesm2015/acorex-components-form.mjs +0 -450
  1081. package/fesm2015/acorex-components-form.mjs.map +0 -1
  1082. package/fesm2015/acorex-components-image.mjs +0 -100
  1083. package/fesm2015/acorex-components-image.mjs.map +0 -1
  1084. package/fesm2015/acorex-components-label.mjs +0 -71
  1085. package/fesm2015/acorex-components-label.mjs.map +0 -1
  1086. package/fesm2015/acorex-components-loading.mjs +0 -385
  1087. package/fesm2015/acorex-components-loading.mjs.map +0 -1
  1088. package/fesm2015/acorex-components-menu.mjs +0 -381
  1089. package/fesm2015/acorex-components-menu.mjs.map +0 -1
  1090. package/fesm2015/acorex-components-mixin.mjs +0 -1265
  1091. package/fesm2015/acorex-components-mixin.mjs.map +0 -1
  1092. package/fesm2015/acorex-components-notification.mjs +0 -217
  1093. package/fesm2015/acorex-components-notification.mjs.map +0 -1
  1094. package/fesm2015/acorex-components-number-box.mjs +0 -300
  1095. package/fesm2015/acorex-components-number-box.mjs.map +0 -1
  1096. package/fesm2015/acorex-components-page.mjs +0 -127
  1097. package/fesm2015/acorex-components-page.mjs.map +0 -1
  1098. package/fesm2015/acorex-components-password-box.mjs +0 -99
  1099. package/fesm2015/acorex-components-password-box.mjs.map +0 -1
  1100. package/fesm2015/acorex-components-picker.mjs +0 -77
  1101. package/fesm2015/acorex-components-picker.mjs.map +0 -1
  1102. package/fesm2015/acorex-components-popover.mjs +0 -278
  1103. package/fesm2015/acorex-components-popover.mjs.map +0 -1
  1104. package/fesm2015/acorex-components-popup.mjs +0 -275
  1105. package/fesm2015/acorex-components-popup.mjs.map +0 -1
  1106. package/fesm2015/acorex-components-progress-bar.mjs +0 -57
  1107. package/fesm2015/acorex-components-progress-bar.mjs.map +0 -1
  1108. package/fesm2015/acorex-components-radio.mjs +0 -66
  1109. package/fesm2015/acorex-components-radio.mjs.map +0 -1
  1110. package/fesm2015/acorex-components-range-slider.mjs +0 -148
  1111. package/fesm2015/acorex-components-range-slider.mjs.map +0 -1
  1112. package/fesm2015/acorex-components-rating.mjs +0 -65
  1113. package/fesm2015/acorex-components-rating.mjs.map +0 -1
  1114. package/fesm2015/acorex-components-result.mjs +0 -49
  1115. package/fesm2015/acorex-components-result.mjs.map +0 -1
  1116. package/fesm2015/acorex-components-search-box.mjs +0 -84
  1117. package/fesm2015/acorex-components-search-box.mjs.map +0 -1
  1118. package/fesm2015/acorex-components-select-box.mjs +0 -453
  1119. package/fesm2015/acorex-components-select-box.mjs.map +0 -1
  1120. package/fesm2015/acorex-components-selection-list.mjs +0 -89
  1121. package/fesm2015/acorex-components-selection-list.mjs.map +0 -1
  1122. package/fesm2015/acorex-components-switch.mjs +0 -91
  1123. package/fesm2015/acorex-components-switch.mjs.map +0 -1
  1124. package/fesm2015/acorex-components-tabs.mjs +0 -299
  1125. package/fesm2015/acorex-components-tabs.mjs.map +0 -1
  1126. package/fesm2015/acorex-components-tag.mjs +0 -53
  1127. package/fesm2015/acorex-components-tag.mjs.map +0 -1
  1128. package/fesm2015/acorex-components-textarea.mjs +0 -52
  1129. package/fesm2015/acorex-components-textarea.mjs.map +0 -1
  1130. package/fesm2015/acorex-components-textbox.mjs +0 -149
  1131. package/fesm2015/acorex-components-textbox.mjs.map +0 -1
  1132. package/fesm2015/acorex-components-time-box.mjs +0 -336
  1133. package/fesm2015/acorex-components-time-box.mjs.map +0 -1
  1134. package/fesm2015/acorex-components-toast.mjs +0 -222
  1135. package/fesm2015/acorex-components-toast.mjs.map +0 -1
  1136. package/fesm2015/acorex-components-tooltip.mjs +0 -164
  1137. package/fesm2015/acorex-components-tooltip.mjs.map +0 -1
  1138. package/fesm2015/acorex-components-tree-view.mjs +0 -133
  1139. package/fesm2015/acorex-components-tree-view.mjs.map +0 -1
  1140. package/fesm2015/acorex-components-uploader.mjs +0 -129
  1141. package/fesm2015/acorex-components-uploader.mjs.map +0 -1
  1142. package/fesm2015/acorex-components.mjs +0 -12
  1143. package/fesm2020/acorex-components-action-sheet.mjs +0 -192
  1144. package/fesm2020/acorex-components-action-sheet.mjs.map +0 -1
  1145. package/fesm2020/acorex-components-alert.mjs +0 -204
  1146. package/fesm2020/acorex-components-alert.mjs.map +0 -1
  1147. package/fesm2020/acorex-components-avatar.mjs +0 -81
  1148. package/fesm2020/acorex-components-avatar.mjs.map +0 -1
  1149. package/fesm2020/acorex-components-badge.mjs +0 -53
  1150. package/fesm2020/acorex-components-badge.mjs.map +0 -1
  1151. package/fesm2020/acorex-components-breadcrumbs.mjs +0 -89
  1152. package/fesm2020/acorex-components-breadcrumbs.mjs.map +0 -1
  1153. package/fesm2020/acorex-components-button.mjs +0 -278
  1154. package/fesm2020/acorex-components-button.mjs.map +0 -1
  1155. package/fesm2020/acorex-components-calendar.mjs +0 -530
  1156. package/fesm2020/acorex-components-calendar.mjs.map +0 -1
  1157. package/fesm2020/acorex-components-card.mjs +0 -41
  1158. package/fesm2020/acorex-components-card.mjs.map +0 -1
  1159. package/fesm2020/acorex-components-checkbox.mjs +0 -67
  1160. package/fesm2020/acorex-components-checkbox.mjs.map +0 -1
  1161. package/fesm2020/acorex-components-chips.mjs +0 -57
  1162. package/fesm2020/acorex-components-chips.mjs.map +0 -1
  1163. package/fesm2020/acorex-components-collapse.mjs +0 -115
  1164. package/fesm2020/acorex-components-collapse.mjs.map +0 -1
  1165. package/fesm2020/acorex-components-color-palette.mjs +0 -765
  1166. package/fesm2020/acorex-components-color-palette.mjs.map +0 -1
  1167. package/fesm2020/acorex-components-color-picker.mjs +0 -169
  1168. package/fesm2020/acorex-components-color-picker.mjs.map +0 -1
  1169. package/fesm2020/acorex-components-common.mjs +0 -946
  1170. package/fesm2020/acorex-components-common.mjs.map +0 -1
  1171. package/fesm2020/acorex-components-context-menu.mjs +0 -301
  1172. package/fesm2020/acorex-components-context-menu.mjs.map +0 -1
  1173. package/fesm2020/acorex-components-data-pager.mjs +0 -598
  1174. package/fesm2020/acorex-components-data-pager.mjs.map +0 -1
  1175. package/fesm2020/acorex-components-data-table.mjs +0 -222
  1176. package/fesm2020/acorex-components-data-table.mjs.map +0 -1
  1177. package/fesm2020/acorex-components-date-picker.mjs +0 -295
  1178. package/fesm2020/acorex-components-date-picker.mjs.map +0 -1
  1179. package/fesm2020/acorex-components-decorators.mjs +0 -353
  1180. package/fesm2020/acorex-components-decorators.mjs.map +0 -1
  1181. package/fesm2020/acorex-components-dialog.mjs +0 -232
  1182. package/fesm2020/acorex-components-dialog.mjs.map +0 -1
  1183. package/fesm2020/acorex-components-drawer.mjs +0 -200
  1184. package/fesm2020/acorex-components-drawer.mjs.map +0 -1
  1185. package/fesm2020/acorex-components-dropdown.mjs +0 -129
  1186. package/fesm2020/acorex-components-dropdown.mjs.map +0 -1
  1187. package/fesm2020/acorex-components-form.mjs +0 -446
  1188. package/fesm2020/acorex-components-form.mjs.map +0 -1
  1189. package/fesm2020/acorex-components-image.mjs +0 -100
  1190. package/fesm2020/acorex-components-image.mjs.map +0 -1
  1191. package/fesm2020/acorex-components-label.mjs +0 -71
  1192. package/fesm2020/acorex-components-label.mjs.map +0 -1
  1193. package/fesm2020/acorex-components-loading.mjs +0 -384
  1194. package/fesm2020/acorex-components-loading.mjs.map +0 -1
  1195. package/fesm2020/acorex-components-menu.mjs +0 -376
  1196. package/fesm2020/acorex-components-menu.mjs.map +0 -1
  1197. package/fesm2020/acorex-components-mixin.mjs +0 -1259
  1198. package/fesm2020/acorex-components-mixin.mjs.map +0 -1
  1199. package/fesm2020/acorex-components-notification.mjs +0 -217
  1200. package/fesm2020/acorex-components-notification.mjs.map +0 -1
  1201. package/fesm2020/acorex-components-number-box.mjs +0 -299
  1202. package/fesm2020/acorex-components-number-box.mjs.map +0 -1
  1203. package/fesm2020/acorex-components-page.mjs +0 -125
  1204. package/fesm2020/acorex-components-page.mjs.map +0 -1
  1205. package/fesm2020/acorex-components-password-box.mjs +0 -99
  1206. package/fesm2020/acorex-components-password-box.mjs.map +0 -1
  1207. package/fesm2020/acorex-components-picker.mjs +0 -77
  1208. package/fesm2020/acorex-components-picker.mjs.map +0 -1
  1209. package/fesm2020/acorex-components-popover.mjs +0 -272
  1210. package/fesm2020/acorex-components-popover.mjs.map +0 -1
  1211. package/fesm2020/acorex-components-popup.mjs +0 -275
  1212. package/fesm2020/acorex-components-popup.mjs.map +0 -1
  1213. package/fesm2020/acorex-components-progress-bar.mjs +0 -57
  1214. package/fesm2020/acorex-components-progress-bar.mjs.map +0 -1
  1215. package/fesm2020/acorex-components-radio.mjs +0 -66
  1216. package/fesm2020/acorex-components-radio.mjs.map +0 -1
  1217. package/fesm2020/acorex-components-range-slider.mjs +0 -143
  1218. package/fesm2020/acorex-components-range-slider.mjs.map +0 -1
  1219. package/fesm2020/acorex-components-rating.mjs +0 -65
  1220. package/fesm2020/acorex-components-rating.mjs.map +0 -1
  1221. package/fesm2020/acorex-components-result.mjs +0 -49
  1222. package/fesm2020/acorex-components-result.mjs.map +0 -1
  1223. package/fesm2020/acorex-components-search-box.mjs +0 -81
  1224. package/fesm2020/acorex-components-search-box.mjs.map +0 -1
  1225. package/fesm2020/acorex-components-select-box.mjs +0 -446
  1226. package/fesm2020/acorex-components-select-box.mjs.map +0 -1
  1227. package/fesm2020/acorex-components-selection-list.mjs +0 -89
  1228. package/fesm2020/acorex-components-selection-list.mjs.map +0 -1
  1229. package/fesm2020/acorex-components-switch.mjs +0 -91
  1230. package/fesm2020/acorex-components-switch.mjs.map +0 -1
  1231. package/fesm2020/acorex-components-tabs.mjs +0 -298
  1232. package/fesm2020/acorex-components-tabs.mjs.map +0 -1
  1233. package/fesm2020/acorex-components-tag.mjs +0 -53
  1234. package/fesm2020/acorex-components-tag.mjs.map +0 -1
  1235. package/fesm2020/acorex-components-textarea.mjs +0 -52
  1236. package/fesm2020/acorex-components-textarea.mjs.map +0 -1
  1237. package/fesm2020/acorex-components-textbox.mjs +0 -147
  1238. package/fesm2020/acorex-components-textbox.mjs.map +0 -1
  1239. package/fesm2020/acorex-components-time-box.mjs +0 -332
  1240. package/fesm2020/acorex-components-time-box.mjs.map +0 -1
  1241. package/fesm2020/acorex-components-toast.mjs +0 -222
  1242. package/fesm2020/acorex-components-toast.mjs.map +0 -1
  1243. package/fesm2020/acorex-components-tooltip.mjs +0 -200
  1244. package/fesm2020/acorex-components-tooltip.mjs.map +0 -1
  1245. package/fesm2020/acorex-components-tree-view.mjs +0 -133
  1246. package/fesm2020/acorex-components-tree-view.mjs.map +0 -1
  1247. package/fesm2020/acorex-components-uploader.mjs +0 -123
  1248. package/fesm2020/acorex-components-uploader.mjs.map +0 -1
  1249. package/fesm2020/acorex-components.mjs +0 -12
  1250. package/fesm2020/acorex-components.mjs.map +0 -1
  1251. /package/{fesm2015 → fesm2022}/acorex-components.mjs.map +0 -0
@@ -1,156 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { asyncScheduler, BehaviorSubject } from 'rxjs';
3
- import { finalize, observeOn } from 'rxjs/operators';
4
- import { AXLoadingComponent } from './loading.component';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@acorex/components/common";
7
- const DEFAULT_LOADER_ID = '_DEFAULT';
8
- /**
9
- * Used for centrally setting/unsetting loading flags for components or services.
10
- * Should be connected to global HTTP interceptor which will unset
11
- * the loading flags in case an error happens using the clearLoadings() method.
12
- *
13
- * FAQ:
14
- * Q: How to change loading flag for a parent component?
15
- * A: Inject the parent component as a dependency to your constructor and
16
- * call loadingService.setLoading(parentComponent, STATE).
17
- *
18
- * Q: How to change loading flag for a child component?
19
- * A: Use a @ViewChild with component selector and pass the
20
- * reference of the child to setLoading method.
21
- *
22
- * Q: I need more loading indicators in my components. How to?
23
- * A: Assign a LoaderId to each indicator and then use them
24
- * with calls to methods of this service.
25
- */
26
- export class AXLoadingService {
27
- constructor(zoneRef, overlayService) {
28
- this.zoneRef = zoneRef;
29
- this.overlayService = overlayService;
30
- // WeakMap will remove components from itself upon
31
- // their garbage collection by JS runtime.
32
- this.loadingStates = new WeakMap();
33
- // Both loading state maps are kept in-sync such that
34
- // they can be used by both sync and async methods.
35
- this.loadingStates$ = new WeakMap();
36
- this._stack = [];
37
- }
38
- show(location) {
39
- let host;
40
- if (location) {
41
- host = location.closest('.ax-loading-host');
42
- }
43
- const containerElement = (host || location);
44
- const com = this.overlayService.show(AXLoadingComponent, {}, {
45
- closeOnClickOutside: false,
46
- containerElement,
47
- hasBackdrop: true,
48
- backdropClass: ['ax-loading-overlay'],
49
- scroll: 'block',
50
- });
51
- com.instance.visible = true;
52
- const id = new Date().getTime();
53
- this._stack.push({ id, component: com });
54
- return id;
55
- }
56
- hide(id) {
57
- const f = this._stack.find((c) => c.id === id);
58
- if (f) {
59
- f.component.dispose();
60
- this._stack = this._stack.filter((c) => c.id !== id);
61
- }
62
- }
63
- // Observable creation operator.
64
- // LoaderId can be used when there are multiple loading indicators associated to a single context.
65
- // Context can be any object, though in practice, components and services will be the most common contexts.
66
- // loaderId is a non-mandatory parameter - when not specified, a default loaderId is used.
67
- // Such a scenario is used when your context has contains only one loading indicator.
68
- doLoading(source$, context, loaderId) {
69
- this.startLoading(context, loaderId);
70
- return source$.pipe(observeOn(asyncScheduler), finalize(() => this.endLoading(context, loaderId)));
71
- }
72
- // To be used in your html templates.
73
- // Returns a boolean indicating whether a given loader is active in a given context.
74
- // If loaderId is unspecified, the method will return a logical disjunction of all
75
- // loader states in the context.
76
- isLoading(context, loaderId) {
77
- const loaderStates = this.loadingStates.get(context);
78
- if (!loaderStates) {
79
- return false;
80
- }
81
- else {
82
- if (loaderId !== undefined) {
83
- return loaderStates.get(this.getLoaderId(loaderId)) ?? false;
84
- }
85
- else {
86
- return [...loaderStates.values()].filter((state) => state).length > 0;
87
- }
88
- }
89
- }
90
- // To be used in your html templates with async pipes.
91
- // Returns an Observable of booleans indicating whether a given loader is active in a given context.
92
- isLoading$(context, loaderId) {
93
- const coalescedLoaderId = this.getLoaderId(loaderId);
94
- if (!this.hasLoadingStates(context, coalescedLoaderId)) {
95
- this.setLoadingState(context, false, loaderId);
96
- }
97
- return this.loadingStates$.get(context).get(coalescedLoaderId);
98
- }
99
- // The startLoading and endLoading methods are intended to be used when handling
100
- // complex scenarios where a need for extended usage flexibility is desired.
101
- startLoading(context, loaderId) {
102
- this.setLoadingState(context, true, this.getLoaderId(loaderId));
103
- }
104
- endLoading(context, loaderId) {
105
- this.setLoadingState(context, false, this.getLoaderId(loaderId));
106
- }
107
- // To be called by middleware code (HTTP interceptors/routing listeners, etc.).
108
- clearLoadings() {
109
- this.loadingStates = new WeakMap();
110
- this.loadingStates$ = new WeakMap();
111
- }
112
- setLoadingState(context, state, loaderId) {
113
- if (!this.hasLoadingStates(context, loaderId)) {
114
- if (this.hasContextLoadingState(context)) {
115
- this.loadingStates.get(context).set(loaderId, state);
116
- this.loadingStates$
117
- .get(context)
118
- .set(loaderId, new BehaviorSubject(state));
119
- }
120
- else {
121
- this.loadingStates.set(context, new Map([[loaderId, state]]));
122
- this.loadingStates$.set(context, new Map([
123
- [loaderId, new BehaviorSubject(state)],
124
- ]));
125
- }
126
- }
127
- else {
128
- // @ts-ignore - loadingStates[context] is surely defined in this branch
129
- this.loadingStates.get(context).set(loaderId, state);
130
- this.loadingStates$.get(context).get(loaderId).next(state);
131
- }
132
- }
133
- hasLoadingStates(context, loaderId) {
134
- return (this.hasContextLoadingState(context) &&
135
- this.hasLoaderLoadingState(context, loaderId));
136
- }
137
- hasContextLoadingState(context) {
138
- return this.loadingStates.has(context) && this.loadingStates$.has(context);
139
- }
140
- hasLoaderLoadingState(context, loaderId) {
141
- return (this.loadingStates.get(context).has(loaderId) &&
142
- this.loadingStates$.get(context).has(loaderId));
143
- }
144
- getLoaderId(loaderId) {
145
- return loaderId ?? DEFAULT_LOADER_ID;
146
- }
147
- }
148
- AXLoadingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXLoadingService, deps: [{ token: i0.NgZone }, { token: i1.AXOverlayService }], target: i0.ɵɵFactoryTarget.Injectable });
149
- AXLoadingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXLoadingService, providedIn: 'root' });
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXLoadingService, decorators: [{
151
- type: Injectable,
152
- args: [{
153
- providedIn: 'root',
154
- }]
155
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.AXOverlayService }]; } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZy9zcmMvbG9hZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBSXpELE1BQU0saUJBQWlCLEdBQWEsVUFBVSxDQUFDO0FBRS9DOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUlILE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0IsWUFDWSxPQUFlLEVBQ2pCLGNBQWdDO1FBRDlCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBZjFDLGtEQUFrRDtRQUNsRCwwQ0FBMEM7UUFDaEMsa0JBQWEsR0FBUSxJQUFJLE9BQU8sRUFHdkMsQ0FBQztRQUNKLHFEQUFxRDtRQUNyRCxtREFBbUQ7UUFDekMsbUJBQWMsR0FBUSxJQUFJLE9BQU8sRUFHeEMsQ0FBQztRQU9JLFdBQU0sR0FBa0QsRUFBRSxDQUFDO0lBRmhFLENBQUM7SUFJSixJQUFJLENBQUMsUUFBa0I7UUFDckIsSUFBSSxJQUFtQixDQUFDO1FBQ3hCLElBQUksUUFBUSxFQUFFO1lBQ1osSUFBSSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUM3QztRQUNELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFtQixDQUFDO1FBQzlELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFj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QyxPQUFPLFFBQVEsSUFBSSxpQkFBaUIsQ0FBQztJQUN2QyxDQUFDOzs2R0E1S1UsZ0JBQWdCO2lIQUFoQixnQkFBZ0IsY0FGZixNQUFNOzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgYXN5bmNTY2hlZHVsZXIsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgb2JzZXJ2ZU9uIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBWE92ZXJsYXlTZXJ2aWNlLCBBWE92ZXJsYXlWaWV3UmVmIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XHJcbmltcG9ydCB7IEFYTG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJy4vbG9hZGluZy5jb21wb25lbnQnO1xyXG5cclxudHlwZSBMb2FkaW5nQ29udGV4dCA9IG9iamVjdDtcclxudHlwZSBMb2FkZXJJZCA9IHN0cmluZyB8IG51bWJlcjsgLy8gZXhwZWN0ZWQgZW51bSB2YWx1ZXNcclxuY29uc3QgREVGQVVMVF9MT0FERVJfSUQ6IExvYWRlcklkID0gJ19ERUZBVUxUJztcclxuXHJcbi8qKlxyXG4gKiBVc2VkIGZvciBjZW50cmFsbHkgc2V0dGluZy91bnNldHRpbmcgbG9hZGluZyBmbGFncyBmb3IgY29tcG9uZW50cyBvciBzZXJ2aWNlcy5cclxuICogU2hvdWxkIGJlIGNvbm5lY3RlZCB0byBnbG9iYWwgSFRUUCBpbnRlcmNlcHRvciB3aGljaCB3aWxsIHVuc2V0XHJcbiAqIHRoZSBsb2FkaW5nIGZsYWdzIGluIGNhc2UgYW4gZXJyb3IgaGFwcGVucyB1c2luZyB0aGUgY2xlYXJMb2FkaW5ncygpIG1ldGhvZC5cclxuICpcclxuICogRkFROlxyXG4gKiBROiBIb3cgdG8gY2hhbmdlIGxvYWRpbmcgZmxhZyBmb3IgYSBwYXJlbnQgY29tcG9uZW50P1xyXG4gKiBBOiBJbmplY3QgdGhlIHBhcmVudCBjb21wb25lbnQgYXMgYSBkZXBlbmRlbmN5IHRvIHlvdXIgY29uc3RydWN0b3IgYW5kXHJcbiAqICAgIGNhbGwgbG9hZGluZ1NlcnZpY2Uuc2V0TG9hZGluZyhwYXJlbnRDb21wb25lbnQsIFNUQVRFKS5cclxuICpcclxuICogUTogSG93IHRvIGNoYW5nZSBsb2FkaW5nIGZsYWcgZm9yIGEgY2hpbGQgY29tcG9uZW50P1xyXG4gKiBBOiBVc2UgYSBAVmlld0NoaWxkIHdpdGggY29tcG9uZW50IHNlbGVjdG9yIGFuZCBwYXNzIHRoZVxyXG4gKiAgICByZWZlcmVuY2Ugb2YgdGhlIGNoaWxkIHRvIHNldExvYWRpbmcgbWV0aG9kLlxyXG4gKlxyXG4gKiBROiBJIG5lZWQgbW9yZSBsb2FkaW5nIGluZGljYXRvcnMgaW4gbXkgY29tcG9uZW50cy4gSG93IHRvP1xyXG4gKiBBOiBBc3NpZ24gYSBMb2FkZXJJZCB0byBlYWNoIGluZGljYXRvciBhbmQgdGhlbiB1c2UgdGhlbVxyXG4gKiAgICB3aXRoIGNhbGxzIHRvIG1ldGhvZHMgb2YgdGhpcyBzZXJ2aWNlLlxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYTG9hZGluZ1NlcnZpY2Uge1xyXG4gIC8vIFdlYWtNYXAgd2lsbCByZW1vdmUgY29tcG9uZW50cyBmcm9tIGl0c2VsZiB1cG9uXHJcbiAgLy8gdGhlaXIgZ2FyYmFnZSBjb2xsZWN0aW9uIGJ5IEpTIHJ1bnRpbWUuXHJcbiAgcHJvdGVjdGVkIGxvYWRpbmdTdGF0ZXM6IGFueSA9IG5ldyBXZWFrTWFwPFxyXG4gICAgTG9hZGluZ0NvbnRleHQsXHJcbiAgICBNYXA8TG9hZGVySWQsIGJvb2xlYW4+XHJcbiAgPigpO1xyXG4gIC8vIEJvdGggbG9hZGluZyBzdGF0ZSBtYXBzIGFyZSBrZXB0IGluLXN5bmMgc3VjaCB0aGF0XHJcbiAgLy8gdGhleSBjYW4gYmUgdXNlZCBieSBib3RoIHN5bmMgYW5kIGFzeW5jIG1ldGhvZHMuXHJcbiAgcHJvdGVjdGVkIGxvYWRpbmdTdGF0ZXMkOiBhbnkgPSBuZXcgV2Vha01hcDxcclxuICAgIExvYWRpbmdDb250ZXh0LFxyXG4gICAgTWFwPExvYWRlcklkLCBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4+XHJcbiAgPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCB6b25lUmVmOiBOZ1pvbmUsXHJcbiAgICBwcml2YXRlIG92ZXJsYXlTZXJ2aWNlOiBBWE92ZXJsYXlTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBwcml2YXRlIF9zdGFjazogeyBpZDogbnVtYmVyOyBjb21wb25lbnQ6IEFYT3ZlcmxheVZpZXdSZWYgfVtdID0gW107XHJcblxyXG4gIHNob3cobG9jYXRpb24/OiBFbGVtZW50KTogbnVtYmVyIHtcclxuICAgIGxldCBob3N0OiBFbGVtZW50IHwgYW55O1xyXG4gICAgaWYgKGxvY2F0aW9uKSB7XHJcbiAgICAgIGhvc3QgPSBsb2NhdGlvbi5jbG9zZXN0KCcuYXgtbG9hZGluZy1ob3N0Jyk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gKGhvc3QgfHwgbG9jYXRpb24pIGFzIEhUTUxEaXZFbGVtZW50O1xyXG4gICAgY29uc3QgY29tID0gdGhpcy5vdmVybGF5U2VydmljZS5zaG93KFxyXG4gICAgICBBWExvYWRpbmdDb21wb25lbnQsXHJcbiAgICAgIHt9LFxyXG4gICAgICB7XHJcbiAgICAgICAgY2xvc2VPbkNsaWNrT3V0c2lkZTogZmFsc2UsXHJcbiAgICAgICAgY29udGFpbmVyRWxlbWVudCxcclxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgICBiYWNrZHJvcENsYXNzOiBbJ2F4LWxvYWRpbmctb3ZlcmxheSddLFxyXG4gICAgICAgIHNjcm9sbDogJ2Jsb2NrJyxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICAgIGNvbS5pbnN0YW5jZS52aXNpYmxlID0gdHJ1ZTtcclxuICAgIGNvbnN0IGlkID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICB0aGlzLl9zdGFjay5wdXNoKHsgaWQsIGNvbXBvbmVudDogY29tIH0pO1xyXG4gICAgcmV0dXJuIGlkO1xyXG4gIH1cclxuXHJcbiAgaGlkZShpZCk6IHZvaWQge1xyXG4gICAgY29uc3QgZiA9IHRoaXMuX3N0YWNrLmZpbmQoKGMpID0+IGMuaWQgPT09IGlkKTtcclxuICAgIGlmIChmKSB7XHJcbiAgICAgIGYuY29tcG9uZW50LmRpc3Bvc2UoKTtcclxuICAgICAgdGhpcy5fc3RhY2sgPSB0aGlzLl9zdGFjay5maWx0ZXIoKGMpID0+IGMuaWQgIT09IGlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE9ic2VydmFibGUgY3JlYXRpb24gb3BlcmF0b3IuXHJcbiAgLy8gTG9hZGVySWQgY2FuIGJlIHVzZWQgd2hlbiB0aGVyZSBhcmUgbXVsdGlwbGUgbG9hZGluZyBpbmRpY2F0b3JzIGFzc29jaWF0ZWQgdG8gYSBzaW5nbGUgY29udGV4dC5cclxuICAvLyBDb250ZXh0IGNhbiBiZSBhbnkgb2JqZWN0LCB0aG91Z2ggaW4gcHJhY3RpY2UsIGNvbXBvbmVudHMgYW5kIHNlcnZpY2VzIHdpbGwgYmUgdGhlIG1vc3QgY29tbW9uIGNvbnRleHRzLlxyXG4gIC8vIGxvYWRlcklkIGlzIGEgbm9uLW1hbmRhdG9yeSBwYXJhbWV0ZXIgLSB3aGVuIG5vdCBzcGVjaWZpZWQsIGEgZGVmYXVsdCBsb2FkZXJJZCBpcyB1c2VkLlxyXG4gIC8vIFN1Y2ggYSBzY2VuYXJpbyBpcyB1c2VkIHdoZW4geW91ciBjb250ZXh0IGhhcyBjb250YWlucyBvbmx5IG9uZSBsb2FkaW5nIGluZGljYXRvci5cclxuICBkb0xvYWRpbmc8Vj4oXHJcbiAgICBzb3VyY2UkOiBPYnNlcnZhYmxlPFY+LFxyXG4gICAgY29udGV4dDogTG9hZGluZ0NvbnRleHQsXHJcbiAgICBsb2FkZXJJZD86IExvYWRlcklkXHJcbiAgKTogT2JzZXJ2YWJsZTxWPiB7XHJcbiAgICB0aGlzLnN0YXJ0TG9hZGluZyhjb250ZXh0LCBsb2FkZXJJZCk7XHJcblxyXG4gICAgcmV0dXJuIHNvdXJjZSQucGlwZShcclxuICAgICAgb2JzZXJ2ZU9uKGFzeW5jU2NoZWR1bGVyKSxcclxuICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5lbmRMb2FkaW5nKGNvbnRleHQsIGxvYWRlcklkKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyBUbyBiZSB1c2VkIGluIHlvdXIgaHRtbCB0ZW1wbGF0ZXMuXHJcbiAgLy8gUmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIGEgZ2l2ZW4gbG9hZGVyIGlzIGFjdGl2ZSBpbiBhIGdpdmVuIGNvbnRleHQuXHJcbiAgLy8gSWYgbG9hZGVySWQgaXMgdW5zcGVjaWZpZWQsIHRoZSBtZXRob2Qgd2lsbCByZXR1cm4gYSBsb2dpY2FsIGRpc2p1bmN0aW9uIG9mIGFsbFxyXG4gIC8vIGxvYWRlciBzdGF0ZXMgaW4gdGhlIGNvbnRleHQuXHJcbiAgaXNMb2FkaW5nKGNvbnRleHQ6IExvYWRpbmdDb250ZXh0LCBsb2FkZXJJZD86IExvYWRlcklkKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBsb2FkZXJTdGF0ZXMgPSB0aGlzLmxvYWRpbmdTdGF0ZXMuZ2V0KGNvbnRleHQpO1xyXG5cclxuICAgIGlmICghbG9hZGVyU3RhdGVzKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChsb2FkZXJJZCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgcmV0dXJuIGxvYWRlclN0YXRlcy5nZXQodGhpcy5nZXRMb2FkZXJJZChsb2FkZXJJZCkpID8/IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBbLi4ubG9hZGVyU3RhdGVzLnZhbHVlcygpXS5maWx0ZXIoKHN0YXRlKSA9PiBzdGF0ZSkubGVuZ3RoID4gMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVG8gYmUgdXNlZCBpbiB5b3VyIGh0bWwgdGVtcGxhdGVzIHdpdGggYXN5bmMgcGlwZXMuXHJcbiAgLy8gUmV0dXJucyBhbiBPYnNlcnZhYmxlIG9mIGJvb2xlYW5zIGluZGljYXRpbmcgd2hldGhlciBhIGdpdmVuIGxvYWRlciBpcyBhY3RpdmUgaW4gYSBnaXZlbiBjb250ZXh0LlxyXG4gIGlzTG9hZGluZyQoXHJcbiAgICBjb250ZXh0OiBMb2FkaW5nQ29udGV4dCxcclxuICAgIGxvYWRlcklkPzogTG9hZGVySWQgfCBhbnlcclxuICApOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIGNvbnN0IGNvYWxlc2NlZExvYWRlcklkID0gdGhpcy5nZXRMb2FkZXJJZChsb2FkZXJJZCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLmhhc0xvYWRpbmdTdGF0ZXMoY29udGV4dCwgY29hbGVzY2VkTG9hZGVySWQpKSB7XHJcbiAgICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKGNvbnRleHQsIGZhbHNlLCBsb2FkZXJJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMubG9hZGluZ1N0YXRlcyQuZ2V0KGNvbnRleHQpLmdldChjb2FsZXNjZWRMb2FkZXJJZCk7XHJcbiAgfVxyXG5cclxuICAvLyBUaGUgc3RhcnRMb2FkaW5nIGFuZCBlbmRMb2FkaW5nIG1ldGhvZHMgYXJlIGludGVuZGVkIHRvIGJlIHVzZWQgd2hlbiBoYW5kbGluZ1xyXG4gIC8vIGNvbXBsZXggc2NlbmFyaW9zIHdoZXJlIGEgbmVlZCBmb3IgZXh0ZW5kZWQgdXNhZ2UgZmxleGliaWxpdHkgaXMgZGVzaXJlZC5cclxuICBzdGFydExvYWRpbmcoY29udGV4dDogTG9hZGluZ0NvbnRleHQsIGxvYWRlcklkPzogTG9hZGVySWQpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKGNvbnRleHQsIHRydWUsIHRoaXMuZ2V0TG9hZGVySWQobG9hZGVySWQpKTtcclxuICB9XHJcblxyXG4gIGVuZExvYWRpbmcoY29udGV4dDogTG9hZGluZ0NvbnRleHQsIGxvYWRlcklkPzogTG9hZGVySWQpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKGNvbnRleHQsIGZhbHNlLCB0aGlzLmdldExvYWRlcklkKGxvYWRlcklkKSk7XHJcbiAgfVxyXG5cclxuICAvLyBUbyBiZSBjYWxsZWQgYnkgbWlkZGxld2FyZSBjb2RlIChIVFRQIGludGVyY2VwdG9ycy9yb3V0aW5nIGxpc3RlbmVycywgZXRjLikuXHJcbiAgY2xlYXJMb2FkaW5ncygpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZGluZ1N0YXRlcyA9IG5ldyBXZWFrTWFwPExvYWRpbmdDb250ZXh0LCBNYXA8TG9hZGVySWQsIGJvb2xlYW4+PigpO1xyXG4gICAgdGhpcy5sb2FkaW5nU3RhdGVzJCA9IG5ldyBXZWFrTWFwPFxyXG4gICAgICBMb2FkaW5nQ29udGV4dCxcclxuICAgICAgTWFwPExvYWRlcklkLCBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4+XHJcbiAgICA+KCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgc2V0TG9hZGluZ1N0YXRlKFxyXG4gICAgY29udGV4dDogTG9hZGluZ0NvbnRleHQsXHJcbiAgICBzdGF0ZTogYm9vbGVhbixcclxuICAgIGxvYWRlcklkOiBMb2FkZXJJZFxyXG4gICk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmhhc0xvYWRpbmdTdGF0ZXMoY29udGV4dCwgbG9hZGVySWQpKSB7XHJcbiAgICAgIGlmICh0aGlzLmhhc0NvbnRleHRMb2FkaW5nU3RhdGUoY29udGV4dCkpIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZXMuZ2V0KGNvbnRleHQpLnNldChsb2FkZXJJZCwgc3RhdGUpO1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1N0YXRlcyRcclxuICAgICAgICAgIC5nZXQoY29udGV4dClcclxuICAgICAgICAgIC5zZXQobG9hZGVySWQsIG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oc3RhdGUpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZXMuc2V0KFxyXG4gICAgICAgICAgY29udGV4dCxcclxuICAgICAgICAgIG5ldyBNYXA8TG9hZGVySWQsIGJvb2xlYW4+KFtbbG9hZGVySWQsIHN0YXRlXV0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZXMkLnNldChcclxuICAgICAgICAgIGNvbnRleHQsXHJcbiAgICAgICAgICBuZXcgTWFwPExvYWRlcklkLCBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4+KFtcclxuICAgICAgICAgICAgW2xvYWRlcklkLCBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHN0YXRlKV0sXHJcbiAgICAgICAgICBdKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIEB0cy1pZ25vcmUgLSBsb2FkaW5nU3RhdGVzW2NvbnRleHRdIGlzIHN1cmVseSBkZWZpbmVkIGluIHRoaXMgYnJhbmNoXHJcbiAgICAgIHRoaXMubG9hZGluZ1N0YXRlcy5nZXQoY29udGV4dCkuc2V0KGxvYWRlcklkLCBzdGF0ZSk7XHJcbiAgICAgIHRoaXMubG9hZGluZ1N0YXRlcyQuZ2V0KGNvbnRleHQpLmdldChsb2FkZXJJZCkubmV4dChzdGF0ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgaGFzTG9hZGluZ1N0YXRlcyhjb250ZXh0OiBMb2FkaW5nQ29udGV4dCwgbG9hZGVySWQ6IExvYWRlcklkKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLmhhc0NvbnRleHRMb2FkaW5nU3RhdGUoY29udGV4dCkgJiZcclxuICAgICAgdGhpcy5oYXNMb2FkZXJMb2FkaW5nU3RhdGUoY29udGV4dCwgbG9hZGVySWQpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGhhc0NvbnRleHRMb2FkaW5nU3RhdGUoY29udGV4dDogTG9hZGluZ0NvbnRleHQpIHtcclxuICAgIHJldHVybiB0aGlzLmxvYWRpbmdTdGF0ZXMuaGFzKGNvbnRleHQpICYmIHRoaXMubG9hZGluZ1N0YXRlcyQuaGFzKGNvbnRleHQpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGhhc0xvYWRlckxvYWRpbmdTdGF0ZShjb250ZXh0OiBMb2FkaW5nQ29udGV4dCwgbG9hZGVySWQ6IExvYWRlcklkKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLmxvYWRpbmdTdGF0ZXMuZ2V0KGNvbnRleHQpLmhhcyhsb2FkZXJJZCkgJiZcclxuICAgICAgdGhpcy5sb2FkaW5nU3RhdGVzJC5nZXQoY29udGV4dCkuaGFzKGxvYWRlcklkKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRMb2FkZXJJZChsb2FkZXJJZD86IExvYWRlcklkKTogTG9hZGVySWQge1xyXG4gICAgcmV0dXJuIGxvYWRlcklkID8/IERFRkFVTFRfTE9BREVSX0lEO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtbWVudS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL21lbnUvYWNvcmV4LWNvbXBvbmVudHMtbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,3 +0,0 @@
1
- export * from './src/menu.component';
2
- export * from './src/menu.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL21lbnUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUubW9kdWxlJztcclxuIl19
@@ -1,338 +0,0 @@
1
- import { ComponentPortal } from '@angular/cdk/portal';
2
- import { Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChild, } from '@angular/core';
3
- import { AXBaseMenuMixin } from '@acorex/components/mixin';
4
- import { AXPlatform } from '@acorex/core/platform';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/cdk/overlay";
7
- import * as i2 from "@acorex/core/platform";
8
- import * as i3 from "@angular/common";
9
- import * as i4 from "@acorex/components/loading";
10
- import * as i5 from "@acorex/core/translation";
11
- /**
12
- * The Button is a component which detects user interaction and triggers a corresponding event
13
- *
14
- * @category Components
15
- */
16
- export class AXMenuComponent extends AXBaseMenuMixin {
17
- constructor(_elementRef, cdr, _overlay, _platform) {
18
- super(_elementRef, cdr);
19
- this._elementRef = _elementRef;
20
- this.cdr = cdr;
21
- this._overlay = _overlay;
22
- this._platform = _platform;
23
- this.rtl = new AXPlatform().isRtl();
24
- this._levelCount = 0;
25
- }
26
- get emptyTemplate() {
27
- return this._contentEmptyTemplate;
28
- }
29
- get itemTemplate() {
30
- return this._contentItemTemplate;
31
- }
32
- onInit() {
33
- super.onInit();
34
- }
35
- ngAfterViewInit() {
36
- super.onViewInit();
37
- }
38
- _onMenuMouseEnter(e, item) {
39
- const targetElement = e.target;
40
- if (this.isLoading || targetElement.tagName === 'UL') {
41
- return;
42
- }
43
- if (this.openMode === 'hover') {
44
- this._handelMenuLogic(e, item);
45
- }
46
- e.stopPropagation();
47
- e.preventDefault();
48
- }
49
- _onMenuClick(e, item) {
50
- const targetElement = e.target;
51
- if (this.isLoading || targetElement.tagName === 'UL') {
52
- return;
53
- }
54
- if (this.openMode === 'click') {
55
- this._handelMenuLogic(e, item);
56
- }
57
- this.onMenuItemClick.emit({
58
- component: this,
59
- item: item,
60
- nativeEvent: e,
61
- });
62
- e.stopPropagation();
63
- e.preventDefault();
64
- }
65
- _getDirection() {
66
- if (this.displayMode === 'horizontal' && this._levelCount === 0) {
67
- return 'ax-horizontal';
68
- }
69
- else if (this._levelCount > 0) {
70
- return 'ax-vertical ax-submenu-ul';
71
- }
72
- else if (this.displayMode === 'sidemenu') {
73
- return 'ax-side-menu';
74
- }
75
- else {
76
- return 'ax-vertical';
77
- }
78
- }
79
- _removeActive(items) {
80
- items.forEach(element => {
81
- element.active = false;
82
- if (element?.children?.length > 0) {
83
- this._removeActive(element.children);
84
- }
85
- });
86
- }
87
- _closeOpenChild(items) {
88
- items.forEach(element => {
89
- element.opened = false;
90
- if (element?.children?.length > 0) {
91
- this._closeOpenChild(element.children);
92
- }
93
- });
94
- }
95
- _initParent(items, parentId) {
96
- items.forEach(element => {
97
- element.parentId = parentId;
98
- });
99
- }
100
- _handelMenuLogic(e, item) {
101
- if (!item[this.disableField] || item[this.dividerField] === false) {
102
- const targetElement = e.target;
103
- if ((targetElement.closest('li') && this.openMode === 'click') || (targetElement.closest('li') && this.openMode === 'hover')) {
104
- if (this._overlayRef && this._oldItem !== item) {
105
- this._overlayRef.detach();
106
- }
107
- if (this.displayMode === 'horizontal') {
108
- this.displayItems.forEach(element => {
109
- if (!item.parentId && item[this.valueField] !== element[this.valueField]) {
110
- element.opened = false;
111
- }
112
- });
113
- }
114
- if (item?.children?.length > 0) {
115
- if (this.displayMode === 'horizontal') {
116
- this._initParent(item.children, item[this.valueField]);
117
- }
118
- if (this.displayMode === 'horizontal' || this.displayMode === 'vertical') {
119
- if (this._oldItem !== item) {
120
- this._openAsOverlay(targetElement.closest('li'), item.children);
121
- }
122
- }
123
- this._closeOpenChild(item.children);
124
- if (this.displayMode === 'horizontal' || this.displayMode === 'vertical') {
125
- item.opened = true;
126
- }
127
- else {
128
- item.opened = !item.opened;
129
- }
130
- }
131
- this._removeActive(this.displayItems);
132
- if (e.type !== 'mouseenter')
133
- item.active = !item.active;
134
- if (this.displayMode === 'horizontal' || this.displayMode === 'vertical') {
135
- if (this._oldItem && this._oldItem?.opened && item[this.valueField] !== this._oldItem[this.valueField]) {
136
- this._oldItem.opened = false;
137
- }
138
- this._oldItem = item;
139
- }
140
- }
141
- }
142
- }
143
- _openAsOverlay(targetRef, overlayItems) {
144
- let positions = [];
145
- if (this.displayMode === 'vertical') {
146
- if (this._levelCount >= 1) {
147
- positions = [
148
- {
149
- originX: 'end',
150
- originY: 'center',
151
- overlayX: 'start',
152
- overlayY: 'top',
153
- },
154
- {
155
- originX: 'end',
156
- originY: 'center',
157
- overlayX: 'start',
158
- overlayY: 'bottom',
159
- },
160
- {
161
- originX: 'center',
162
- originY: 'center',
163
- overlayX: 'center',
164
- overlayY: 'center',
165
- },
166
- ];
167
- }
168
- else {
169
- positions = [
170
- {
171
- originX: 'end',
172
- originY: 'center',
173
- overlayX: 'start',
174
- overlayY: 'top',
175
- },
176
- {
177
- originX: 'end',
178
- originY: 'top',
179
- overlayX: 'start',
180
- overlayY: 'bottom',
181
- },
182
- {
183
- originX: 'center',
184
- originY: 'center',
185
- overlayX: 'center',
186
- overlayY: 'center',
187
- },
188
- ];
189
- }
190
- }
191
- else {
192
- if (this._levelCount >= 1) {
193
- positions = [
194
- {
195
- originX: 'end',
196
- originY: 'top',
197
- overlayX: 'start',
198
- overlayY: 'top',
199
- },
200
- {
201
- originX: 'end',
202
- originY: 'center',
203
- overlayX: 'start',
204
- overlayY: 'bottom',
205
- },
206
- {
207
- originX: 'end',
208
- originY: 'top',
209
- overlayX: 'center',
210
- overlayY: 'top',
211
- },
212
- {
213
- originX: 'center',
214
- originY: 'top',
215
- overlayX: 'center',
216
- overlayY: 'top',
217
- },
218
- ];
219
- }
220
- else {
221
- positions = [
222
- {
223
- originX: 'start',
224
- originY: 'bottom',
225
- overlayX: 'start',
226
- overlayY: 'top',
227
- },
228
- {
229
- originX: 'end',
230
- originY: 'center',
231
- overlayX: 'start',
232
- overlayY: 'bottom',
233
- },
234
- {
235
- originX: 'end',
236
- originY: 'top',
237
- overlayX: 'center',
238
- overlayY: 'top',
239
- },
240
- {
241
- originX: 'center',
242
- originY: 'top',
243
- overlayX: 'center',
244
- overlayY: 'top',
245
- },
246
- ];
247
- }
248
- }
249
- this._overlayRef = this._overlay.create({
250
- scrollStrategy: this._overlay.scrollStrategies.close(),
251
- positionStrategy: this._overlay
252
- .position()
253
- .flexibleConnectedTo(targetRef)
254
- .withPositions([...positions])
255
- .withPush(false)
256
- .withDefaultOffsetX(12),
257
- direction: this._platform.isRtl() ? 'rtl' : 'ltr',
258
- disposeOnNavigation: true,
259
- panelClass: ['ax-animate-fadeIn', 'ax-animate-faster', 'ax-overlay-menu'],
260
- maxHeight: 'unset',
261
- hasBackdrop: false,
262
- backdropClass: ['cdk-overlay-transparent-backdrop'],
263
- });
264
- const ref = this._overlayRef.attach(new ComponentPortal(AXMenuComponent));
265
- ref.instance.items = overlayItems;
266
- ref.instance.displayMode = this.displayMode;
267
- ref.instance.openMode = 'hover';
268
- ref.instance._levelCount = this._levelCount + 1;
269
- ref.instance.disableField = this.disableField;
270
- ref.instance.visibleField = this.visibleField;
271
- ref.instance.valueField = this.valueField;
272
- ref.instance.textField = this.textField;
273
- ref.instance.iconField = this.iconField;
274
- ref.instance.dividerField = this.dividerField;
275
- ref.onDestroy(() => {
276
- ref.instance?._overlayRef?.dispose();
277
- });
278
- this._overlayRef.outsidePointerEvents().subscribe(e => {
279
- if (this._overlayRef && this.openMode === 'click') {
280
- this._close();
281
- e.stopPropagation();
282
- }
283
- });
284
- this._platform.scroll.subscribe(() => {
285
- if (this._overlayRef) {
286
- this._close();
287
- }
288
- });
289
- this._platform.resize.subscribe(() => {
290
- if (this._overlayRef) {
291
- this._close();
292
- }
293
- });
294
- }
295
- _close() {
296
- this._overlayRef.detach();
297
- this._oldItem = null;
298
- this.displayItems.forEach(element => {
299
- element.opened = false;
300
- element.active = false;
301
- });
302
- this.cdr.detectChanges();
303
- }
304
- onDestroy() {
305
- this._overlayRef?.detach();
306
- }
307
- }
308
- AXMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXMenuComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
309
- AXMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXMenuComponent, selector: "ax-menu", inputs: { disabled: "disabled", tabIndex: "tabIndex", textField: "textField", valueField: "valueField", items: "items", parentId: "parentId", iconField: "iconField", tooltip: "tooltip", opened: "opened", active: "active", visibleField: "visibleField", disableField: "disableField", hasChildField: "hasChildField", dividerField: "dividerField", openMode: "openMode", displayMode: "displayMode", showModal: "showModal" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onMenuItemClick: "onMenuItemClick" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }, { propertyName: "_contentItemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li\r\n *ngIf=\"item[visibleField] != false\"\r\n [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event, item)\"\r\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\r\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\r\n <div\r\n class=\"ax-menu-item\"\r\n [ngClass]=\"{\r\n 'ax-is-parent': item?.children?.length,\r\n 'ax-is-child': !isRoot\r\n }\"\r\n *ngIf=\"itemTemplate == null; else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\r\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <span\r\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-down': item?.children?.length > 0,\r\n 'ax-menu-active-icon': item.opened\r\n }\"\r\n *ngIf=\"!item.isLoading\"></span>\r\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n</ng-container>\r\n\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n {{ 'common.no-result-found' | trans }}\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>\r\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column;color:rgba(var(--ax-color-text-default))}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXMenuComponent, decorators: [{
311
- type: Component,
312
- args: [{ selector: 'ax-menu', inputs: [
313
- 'disabled',
314
- 'tabIndex',
315
- 'textField',
316
- 'valueField',
317
- 'items',
318
- 'parentId',
319
- 'iconField',
320
- 'tooltip',
321
- 'opened',
322
- 'active',
323
- 'visibleField',
324
- 'disableField',
325
- 'hasChildField',
326
- 'dividerField',
327
- 'openMode',
328
- 'displayMode',
329
- 'showModal',
330
- ], outputs: ['onBlur', 'onFocus', 'onMenuItemClick'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li\r\n *ngIf=\"item[visibleField] != false\"\r\n [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event, item)\"\r\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\r\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\r\n <div\r\n class=\"ax-menu-item\"\r\n [ngClass]=\"{\r\n 'ax-is-parent': item?.children?.length,\r\n 'ax-is-child': !isRoot\r\n }\"\r\n *ngIf=\"itemTemplate == null; else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\r\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <span\r\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-down': item?.children?.length > 0,\r\n 'ax-menu-active-icon': item.opened\r\n }\"\r\n *ngIf=\"!item.isLoading\"></span>\r\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n</ng-container>\r\n\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n {{ 'common.no-result-found' | trans }}\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>\r\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column;color:rgba(var(--ax-color-text-default))}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"] }]
331
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i2.AXPlatform }]; }, propDecorators: { _contentEmptyTemplate: [{
332
- type: ContentChild,
333
- args: ['emptyTemplate']
334
- }], _contentItemTemplate: [{
335
- type: ContentChild,
336
- args: ['itemTemplate']
337
- }] } });
338
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9tZW51L3NyYy9tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL21lbnUvc3JjL21lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUVqQixZQUFZLEdBSWIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7OztBQUVuRDs7OztHQUlHO0FBNEJILE1BQU0sT0FBTyxlQUFnQixTQUFRLGVBQWU7SUF1QmxELFlBQW9CLFdBQXVCLEVBQVUsR0FBc0IsRUFBVSxRQUFpQixFQUFVLFNBQXFCO1FBQ25JLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFETixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUFVLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFOckksUUFBRyxHQUFZLElBQUksVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFaEMsZ0JBQVcsR0FBVyxDQUFDLENBQUM7SUFNaEMsQ0FBQztJQWhCRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJ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WSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNsQyxPQUFPLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN2QixPQUFPLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzdCLENBQUM7OzRHQTVVVSxlQUFlO2dHQUFmLGVBQWUsNHhCQ2hENUIsb2tHQW1FQTsyRkRuQmEsZUFBZTtrQkEzQjNCLFNBQVM7K0JBQ0UsU0FBUyxVQUdYO3dCQUNOLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxVQUFVO3dCQUNWLFdBQVc7d0JBQ1gsU0FBUzt3QkFDVCxRQUFRO3dCQUNSLFFBQVE7d0JBQ1IsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsV0FBVztxQkFDWixXQUNRLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxtQkFDaEMsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTtnTEFJN0IscUJBQXFCO3NCQUQ1QixZQUFZO3VCQUFDLGVBQWU7Z0JBSXJCLG9CQUFvQjtzQkFEM0IsWUFBWTt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcblxyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBPbkluaXQsXHJcbiAgQ29udGVudENoaWxkLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYQmFzZU1lbnVNaXhpbiB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9taXhpbic7XHJcbmltcG9ydCB7IEFYUGxhdGZvcm0gfSBmcm9tICdAYWNvcmV4L2NvcmUvcGxhdGZvcm0nO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBCdXR0b24gaXMgYSBjb21wb25lbnQgd2hpY2ggZGV0ZWN0cyB1c2VyIGludGVyYWN0aW9uIGFuZCB0cmlnZ2VycyBhIGNvcnJlc3BvbmRpbmcgZXZlbnRcclxuICpcclxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtbWVudScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcclxuICBpbnB1dHM6IFtcclxuICAgICdkaXNhYmxlZCcsXHJcbiAgICAndGFiSW5kZXgnLFxyXG4gICAgJ3RleHRGaWVsZCcsXHJcbiAgICAndmFsdWVGaWVsZCcsXHJcbiAgICAnaXRlbXMnLFxyXG4gICAgJ3BhcmVudElkJyxcclxuICAgICdpY29uRmllbGQnLFxyXG4gICAgJ3Rvb2x0aXAnLFxyXG4gICAgJ29wZW5lZCcsXHJcbiAgICAnYWN0aXZlJyxcclxuICAgICd2aXNpYmxlRmllbGQnLFxyXG4gICAgJ2Rpc2FibGVGaWVsZCcsXHJcbiAgICAnaGFzQ2hpbGRGaWVsZCcsXHJcbiAgICAnZGl2aWRlckZpZWxkJyxcclxuICAgICdvcGVuTW9kZScsXHJcbiAgICAnZGlzcGxheU1vZGUnLFxyXG4gICAgJ3Nob3dNb2RhbCcsXHJcbiAgXSxcclxuICBvdXRwdXRzOiBbJ29uQmx1cicsICdvbkZvY3VzJywgJ29uTWVudUl0ZW1DbGljayddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWE1lbnVDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VNZW51TWl4aW4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBDb250ZW50Q2hpbGQoJ2VtcHR5VGVtcGxhdGUnKVxyXG4gIHByaXZhdGUgX2NvbnRlbnRFbXB0eVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBAQ29udGVudENoaWxkKCdpdGVtVGVtcGxhdGUnKVxyXG4gIHByaXZhdGUgX2NvbnRlbnRJdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHB1YmxpYyBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcclxuXHJcbiAgZ2V0IGVtcHR5VGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fY29udGVudEVtcHR5VGVtcGxhdGU7XHJcbiAgfVxyXG5cclxuICBnZXQgaXRlbVRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbnRlbnRJdGVtVGVtcGxhdGU7XHJcbiAgfVxyXG5cclxuICBydGw6IGJvb2xlYW4gPSBuZXcgQVhQbGF0Zm9ybSgpLmlzUnRsKCk7XHJcblxyXG4gIHByaXZhdGUgX2xldmVsQ291bnQ6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgX29sZEl0ZW06IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIF9vdmVybGF5OiBPdmVybGF5LCBwcml2YXRlIF9wbGF0Zm9ybTogQVhQbGF0Zm9ybSkge1xyXG4gICAgc3VwZXIoX2VsZW1lbnRSZWYsIGNkcik7XHJcbiAgfVxyXG5cclxuICBvbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5vbkluaXQoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm9uVmlld0luaXQoKTtcclxuICB9XHJcblxyXG4gIF9vbk1lbnVNb3VzZUVudGVyKGU6IE1vdXNlRXZlbnQsIGl0ZW06IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGUudGFyZ2V0IGFzIEhUTUxEaXZFbGVtZW50O1xyXG5cclxuICAgIGlmICh0aGlzLmlzTG9hZGluZyB8fCB0YXJnZXRFbGVtZW50LnRhZ05hbWUgPT09ICdVTCcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm9wZW5Nb2RlID09PSAnaG92ZXInKSB7XHJcbiAgICAgIHRoaXMuX2hhbmRlbE1lbnVMb2dpYyhlLCBpdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgX29uTWVudUNsaWNrKGU6IE1vdXNlRXZlbnQsIGl0ZW06IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGUudGFyZ2V0IGFzIEhUTUxEaXZFbGVtZW50O1xyXG5cclxuICAgIGlmICh0aGlzLmlzTG9hZGluZyB8fCB0YXJnZXRFbGVtZW50LnRhZ05hbWUgPT09ICdVTCcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm9wZW5Nb2RlID09PSAnY2xpY2snKSB7XHJcbiAgICAgIHRoaXMuX2hhbmRlbE1lbnVMb2dpYyhlLCBpdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm9uTWVudUl0ZW1DbGljay5lbWl0KHtcclxuICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICBpdGVtOiBpdGVtLFxyXG4gICAgICBuYXRpdmVFdmVudDogZSxcclxuICAgIH0pO1xyXG5cclxuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICBfZ2V0RGlyZWN0aW9uKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5kaXNwbGF5TW9kZSA9PT0gJ2hvcml6b250YWwnICYmIHRoaXMuX2xldmVsQ291bnQgPT09IDApIHtcclxuICAgICAgcmV0dXJuICdheC1ob3Jpem9udGFsJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5fbGV2ZWxDb3VudCA+IDApIHtcclxuICAgICAgcmV0dXJuICdheC12ZXJ0aWNhbCBheC1zdWJtZW51LXVsJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5kaXNwbGF5TW9kZSA9PT0gJ3NpZGVtZW51Jykge1xyXG4gICAgICByZXR1cm4gJ2F4LXNpZGUtbWVudSc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJ2F4LXZlcnRpY2FsJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3JlbW92ZUFjdGl2ZShpdGVtczogYW55KTogdm9pZCB7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGVsZW1lbnQgPT4ge1xyXG4gICAgICBlbGVtZW50LmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICBpZiAoZWxlbWVudD8uY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0aGlzLl9yZW1vdmVBY3RpdmUoZWxlbWVudC5jaGlsZHJlbik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY2xvc2VPcGVuQ2hpbGQoaXRlbXM6IGFueSk6IHZvaWQge1xyXG4gICAgaXRlbXMuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgZWxlbWVudC5vcGVuZWQgPSBmYWxzZTtcclxuICAgICAgaWYgKGVsZW1lbnQ/LmNoaWxkcmVuPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5fY2xvc2VPcGVuQ2hpbGQoZWxlbWVudC5jaGlsZHJlbik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdFBhcmVudChpdGVtczogYW55LCBwYXJlbnRJZDogYW55KTogdm9pZCB7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGVsZW1lbnQgPT4ge1xyXG4gICAgICBlbGVtZW50LnBhcmVudElkID0gcGFyZW50SWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRlbE1lbnVMb2dpYyhlOiBNb3VzZUV2ZW50LCBpdGVtOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICghaXRlbVt0aGlzLmRpc2FibGVGaWVsZF0gfHwgaXRlbVt0aGlzLmRpdmlkZXJGaWVsZF0gPT09IGZhbHNlKSB7XHJcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBlLnRhcmdldCBhcyBIVE1MRGl2RWxlbWVudDtcclxuICAgICAgaWYgKCh0YXJnZXRFbGVtZW50LmNsb3Nlc3QoJ2xpJykgJiYgdGhpcy5vcGVuTW9kZSA9PT0gJ2NsaWNrJykgfHwgKHRhcmdldEVsZW1lbnQuY2xvc2VzdCgnbGknKSAmJiB0aGlzLm9wZW5Nb2RlID09PSAnaG92ZXInKSkge1xyXG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmICYmIHRoaXMuX29sZEl0ZW0gIT09IGl0ZW0pIHtcclxuICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmRpc3BsYXlNb2RlID09PSAnaG9yaXpvbnRhbCcpIHtcclxuICAgICAgICAgIHRoaXMuZGlzcGxheUl0ZW1zLmZvckVhY2goZWxlbWVudCA9PiB7XHJcbiAgICAgICAgICAgIGlmICghaXRlbS5wYXJlbnRJZCAmJiBpdGVtW3RoaXMudmFsdWVGaWVsZF0gIT09IGVsZW1lbnRbdGhpcy52YWx1ZUZpZWxkXSkge1xyXG4gICAgICAgICAgICAgIGVsZW1lbnQub3BlbmVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIGlmICh0aGlzLmRpc3BsYXlNb2RlID09PSAnaG9yaXpvbnRhbCcpIHtcclxuICAgICAgICAgICAgdGhpcy5faW5pdFBhcmVudChpdGVtLmNoaWxkcmVuLCBpdGVtW3RoaXMudmFsdWVGaWVsZF0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuZGlzcGxheU1vZGUgPT09ICdob3Jpem9udGFsJyB8fCB0aGlzLmRpc3BsYXlNb2RlID09PSAndmVydGljYWwnKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9vbGRJdGVtICE9PSBpdGVtKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5fb3BlbkFzT3ZlcmxheSh0YXJnZXRFbGVtZW50LmNsb3Nlc3QoJ2xpJyksIGl0ZW0uY2hpbGRyZW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLl9jbG9zZU9wZW5DaGlsZChpdGVtLmNoaWxkcmVuKTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5kaXNwbGF5TW9kZSA9PT0gJ2hvcml6b250YWwnIHx8IHRoaXMuZGlzcGxheU1vZGUgPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgICAgICAgaXRlbS5vcGVuZWQgPSB0cnVlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaXRlbS5vcGVuZWQgPSAhaXRlbS5vcGVuZWQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9yZW1vdmVBY3RpdmUodGhpcy5kaXNwbGF5SXRlbXMpO1xyXG5cclxuICAgICAgICBpZiAoZS50eXBlICE9PSAnbW91c2VlbnRlcicpIGl0ZW0uYWN0aXZlID0gIWl0ZW0uYWN0aXZlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5kaXNwbGF5TW9kZSA9PT0gJ2hvcml6b250YWwnIHx8IHRoaXMuZGlzcGxheU1vZGUgPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgICAgIGlmICh0aGlzLl9vbGRJdGVtICYmIHRoaXMuX29sZEl0ZW0/Lm9wZW5lZCAmJiBpdGVtW3RoaXMudmFsdWVGaWVsZF0gIT09IHRoaXMuX29sZEl0ZW1bdGhpcy52YWx1ZUZpZWxkXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9vbGRJdGVtLm9wZW5lZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5fb2xkSXRlbSA9IGl0ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9vcGVuQXNPdmVybGF5KHRhcmdldFJlZiwgb3ZlcmxheUl0ZW1zOiBhbnlbXSk6IHZvaWQge1xyXG4gICAgbGV0IHBvc2l0aW9ucyA9IFtdO1xyXG4gICAgaWYgKHRoaXMuZGlzcGxheU1vZGUgPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgaWYgKHRoaXMuX2xldmVsQ291bnQgPj0gMSkge1xyXG4gICAgICAgIHBvc2l0aW9ucyA9IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXHJcbiAgICAgICAgICAgIG9yaWdpblk6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXHJcbiAgICAgICAgICAgIG9yaWdpblk6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgb3JpZ2luWDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIG9yaWdpblk6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvdmVybGF5WDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnY2VudGVyJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBwb3NpdGlvbnMgPSBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvdmVybGF5WTogJ2NlbnRlcicsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF07XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLl9sZXZlbENvdW50ID49IDEpIHtcclxuICAgICAgICBwb3NpdGlvbnMgPSBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgICAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBvcmlnaW5YOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHBvc2l0aW9ucyA9IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXHJcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxyXG4gICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcclxuICAgICAgICAgICAgb3JpZ2luWTogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxyXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcclxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXHJcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgb3JpZ2luWDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxyXG4gICAgICAgICAgICBvdmVybGF5WDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuY2xvc2UoKSxcclxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheVxyXG4gICAgICAgIC5wb3NpdGlvbigpXHJcbiAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGFyZ2V0UmVmKVxyXG4gICAgICAgIC53aXRoUG9zaXRpb25zKFsuLi5wb3NpdGlvbnNdKVxyXG4gICAgICAgIC53aXRoUHVzaChmYWxzZSlcclxuICAgICAgICAud2l0aERlZmF1bHRPZmZzZXRYKDEyKSxcclxuXHJcbiAgICAgIGRpcmVjdGlvbjogdGhpcy5fcGxhdGZvcm0uaXNSdGwoKSA/ICdydGwnIDogJ2x0cicsXHJcbiAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRydWUsXHJcbiAgICAgIHBhbmVsQ2xhc3M6IFsnYXgtYW5pbWF0ZS1mYWRlSW4nLCAnYXgtYW5pbWF0ZS1mYXN0ZXInLCAnYXgtb3ZlcmxheS1tZW51J10sXHJcbiAgICAgIG1heEhlaWdodDogJ3Vuc2V0JyxcclxuICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxyXG4gICAgICBiYWNrZHJvcENsYXNzOiBbJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJ10sXHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCByZWYgPSB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaChuZXcgQ29tcG9uZW50UG9ydGFsKEFYTWVudUNvbXBvbmVudCkpO1xyXG5cclxuICAgIHJlZi5pbnN0YW5jZS5pdGVtcyA9IG92ZXJsYXlJdGVtcztcclxuXHJcbiAgICByZWYuaW5zdGFuY2UuZGlzcGxheU1vZGUgPSB0aGlzLmRpc3BsYXlNb2RlO1xyXG5cclxuICAgIHJlZi5pbnN0YW5jZS5vcGVuTW9kZSA9ICdob3Zlcic7XHJcblxyXG4gICAgcmVmLmluc3RhbmNlLl9sZXZlbENvdW50ID0gdGhpcy5fbGV2ZWxDb3VudCArIDE7XHJcblxyXG4gICAgcmVmLmluc3RhbmNlLmRpc2FibGVGaWVsZCA9IHRoaXMuZGlzYWJsZUZpZWxkO1xyXG5cclxuICAgIHJlZi5pbnN0YW5jZS52aXNpYmxlRmllbGQgPSB0aGlzLnZpc2libGVGaWVsZDtcclxuXHJcbiAgICByZWYuaW5zdGFuY2UudmFsdWVGaWVsZCA9IHRoaXMudmFsdWVGaWVsZDtcclxuXHJcbiAgICByZWYuaW5zdGFuY2UudGV4dEZpZWxkID0gdGhpcy50ZXh0RmllbGQ7XHJcblxyXG4gICAgcmVmLmluc3RhbmNlLmljb25GaWVsZCA9IHRoaXMuaWNvbkZpZWxkO1xyXG5cclxuICAgIHJlZi5pbnN0YW5jZS5kaXZpZGVyRmllbGQgPSB0aGlzLmRpdmlkZXJGaWVsZDtcclxuXHJcbiAgICByZWYub25EZXN0cm95KCgpID0+IHtcclxuICAgICAgcmVmLmluc3RhbmNlPy5fb3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi5vdXRzaWRlUG9pbnRlckV2ZW50cygpLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWYgJiYgdGhpcy5vcGVuTW9kZSA9PT0gJ2NsaWNrJykge1xyXG4gICAgICAgIHRoaXMuX2Nsb3NlKCk7XHJcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fcGxhdGZvcm0uc2Nyb2xsLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XHJcbiAgICAgICAgdGhpcy5fY2xvc2UoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fcGxhdGZvcm0ucmVzaXplLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XHJcbiAgICAgICAgdGhpcy5fY2xvc2UoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jbG9zZSgpIHtcclxuICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoKCk7XHJcbiAgICB0aGlzLl9vbGRJdGVtID0gbnVsbDtcclxuICAgIHRoaXMuZGlzcGxheUl0ZW1zLmZvckVhY2goZWxlbWVudCA9PiB7XHJcbiAgICAgIGVsZW1lbnQub3BlbmVkID0gZmFsc2U7XHJcbiAgICAgIGVsZW1lbnQuYWN0aXZlID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX292ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZGlzcGxheUl0ZW1zLmxlbmd0aDsgZWxzZSB0bXBFbXB0eVwiPlxyXG4gIDx1bCBbbmdDbGFzc109XCJfZ2V0RGlyZWN0aW9uKClcIiBbY2xhc3MuYXgtcnRsXT1cInJ0bFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInJlY3Vyc2l2ZUxpc3RUbXBsOyBjb250ZXh0OiB7IGxpc3Q6IGRpc3BsYXlJdGVtcywgaXNSb290OiB0cnVlIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICA8L3VsPlxyXG4gIDxuZy10ZW1wbGF0ZSAjcmVjdXJzaXZlTGlzdFRtcGwgbGV0LWxpc3Q9XCJsaXN0XCIgbGV0LWlzUm9vdD1cImlzUm9vdFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsaXN0XCI+XHJcbiAgICAgIDxsaVxyXG4gICAgICAgICpuZ0lmPVwiaXRlbVt2aXNpYmxlRmllbGRdICE9IGZhbHNlXCJcclxuICAgICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiaXRlbVtkaXNhYmxlRmllbGRdXCJcclxuICAgICAgICAoY2xpY2spPVwiX29uTWVudUNsaWNrKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICAgIChtb3VzZWVudGVyKT1cIl9vbk1lbnVNb3VzZUVudGVyKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2F4LXN0YXRlLWFjdGl2ZSAnOiBpdGVtLmFjdGl2ZSB9XCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJheC1tZW51LWl0ZW1cIlxyXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAnYXgtaXMtcGFyZW50JzogaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCxcclxuICAgICAgICAgICAgJ2F4LWlzLWNoaWxkJzogIWlzUm9vdFxyXG4gICAgICAgICAgfVwiXHJcbiAgICAgICAgICAqbmdJZj1cIml0ZW1UZW1wbGF0ZSA9PSBudWxsOyBlbHNlIHRtcEl0ZW1cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1tZW51LWl0ZW0tcHJlZml4XCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtbWVudS1pdGVtLWljb25cIiAqbmdJZj1cIml0ZW1baWNvbkZpZWxkXVwiIFtjbGFzc109XCJpdGVtW2ljb25GaWVsZF1cIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7IF9nZXRJdGVtRGlzcGxheVRleHRUZW1wbHRlKGl0ZW0pIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtbWVudS1pdGVtLXN1ZmZpeFwiPlxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiYXgtbWVudS1pdGVtLWljb24gYXgtaWNvbiBheC1tZW51LWl0ZW0taWNvbi1jaGV2cm9uXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAnYXgtaWNvbi1jaGV2cm9uLWRvd24nOiBpdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID4gMCxcclxuICAgICAgICAgICAgICAgICdheC1tZW51LWFjdGl2ZS1pY29uJzogaXRlbS5vcGVuZWRcclxuICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAqbmdJZj1cIiFpdGVtLmlzTG9hZGluZ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPGF4LWxvYWRpbmcgKm5nSWY9XCJpdGVtLmlzTG9hZGluZ1wiPiA8L2F4LWxvYWRpbmc+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tLS0tLS0tLS0tLS0tLSBjaGVjayBmb3IgY3VzdG9tICBpdGVtIHRlbXBsYXRlICAtLS0tLS0tLS0tLS0tLS0+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICN0bXBJdGVtPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRpbmdcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiPiA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPHVsICpuZ0lmPVwiaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDAgJiYgaXRlbS5vcGVuZWQgJiYgIV9vdmVybGF5UmVmXCIgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cIml0ZW1bZGlzYWJsZUZpZWxkXVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInJlY3Vyc2l2ZUxpc3RUbXBsOyBjb250ZXh0OiB7IGxpc3Q6IGl0ZW0uY2hpbGRyZW4gfVwiPiA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICA8L2xpPlxyXG4gICAgICA8bGkgY2xhc3M9XCJheC1tZW51LWl0ZW0tZGl2aWRlclwiICpuZ0lmPVwiaXRlbVt0aGlzLmRpdmlkZXJGaWVsZF1cIj48L2xpPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9uZy1jb250YWluZXI+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJpc0xvYWRpbmdcIj5cclxuICA8bmctdGVtcGxhdGU+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtcC00XCI+XHJcbiAgICAgIDxheC1sb2FkaW5nIHRleHQ9XCJ7eyAnbGF5b3V0LmxvYWRpbmcudGV4dCcgfCB0cmFucyB9fVwiPjwvYXgtbG9hZGluZz5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPG5nLXRlbXBsYXRlICN0bXBFbXB0eT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZ1wiPlxyXG4gICAgPCEtLS0tLS0tLS0tLS0tLS0gY2hlY2sgZm9yIGN1c3RvbSB0ZW1wbGF0ZSAgLS0tLS0tLS0tLS0tLS0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVtcHR5VGVtcGxhdGU7IGVsc2UgZWxzZUVtcHR5VGVtcGxhdGVcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVtcHR5VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUVtcHR5VGVtcGxhdGU+XHJcbiAgICAgIHt7ICdjb21tb24ubm8tcmVzdWx0LWZvdW5kJyB8IHRyYW5zIH19XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=