@acorex/components 7.0.40 → 7.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (759) hide show
  1. package/action-sheet/src/action-sheet.interface.d.ts +1 -1
  2. package/alert/src/alert.component.d.ts +3 -3
  3. package/avatar/src/avatar.component.d.ts +1 -1
  4. package/badge/src/badge.component.d.ts +3 -3
  5. package/breadcrumbs/src/breadcrumbs-item.component.d.ts +7 -7
  6. package/button/src/button-group.component.d.ts +7 -7
  7. package/button/src/button-item.class.d.ts +1 -1
  8. package/button/src/button-item.component.d.ts +7 -7
  9. package/button/src/button.component.d.ts +1 -1
  10. package/calendar/public-api.d.ts +1 -0
  11. package/calendar/src/calendar-range.component.d.ts +29 -0
  12. package/calendar/src/calendar.class.d.ts +55 -6
  13. package/calendar/src/calendar.component.d.ts +17 -24
  14. package/calendar/src/calendar.module.d.ts +4 -3
  15. package/checkbox/src/checkbox.component.d.ts +1 -1
  16. package/chips/src/chips.component.d.ts +7 -7
  17. package/collapse/src/collapse-group.component.d.ts +1 -1
  18. package/collapse/src/collapse.component.d.ts +1 -1
  19. package/color-palette/src/color-palette-swatches.component.d.ts +1 -1
  20. package/color-palette/src/color-palette.class.d.ts +1 -1
  21. package/color-palette/src/color-palette.component.d.ts +1 -1
  22. package/color-picker/src/color-picker.component.d.ts +20 -17
  23. package/common/public-api.d.ts +1 -0
  24. package/common/src/classes/data.class.d.ts +4 -0
  25. package/common/src/classes/events.class.d.ts +9 -0
  26. package/common/src/classes/styles.class.d.ts +5 -5
  27. package/common/src/components/base-component.class.d.ts +6 -9
  28. package/common/src/components/index.d.ts +1 -0
  29. package/common/src/components/value-component.class.d.ts +45 -0
  30. package/common/src/constant/positions.d.ts +1 -1
  31. package/common/src/directives/auto-focus.directive.d.ts +1 -1
  32. package/common/src/directives/debounce-time.directive.d.ts +1 -1
  33. package/common/src/directives/hotkey.directive.d.ts +2 -2
  34. package/common/src/directives/infinite-scroll.directive.d.ts +1 -1
  35. package/common/src/services/hotkey.service.d.ts +1 -1
  36. package/context-menu/src/context-menu.component.d.ts +1 -1
  37. package/data-pager/src/data-pager-base.component.d.ts +1 -1
  38. package/data-pager/src/data-pager-info.component.d.ts +1 -1
  39. package/data-pager/src/data-pager-pagesize-dropdown.component.d.ts +1 -1
  40. package/data-pager/src/data-pager.component.d.ts +1 -1
  41. package/data-table/src/data-column.directive.d.ts +1 -1
  42. package/data-table/src/data-table.component.d.ts +1 -1
  43. package/date-picker/src/datepicker.component.d.ts +15 -15
  44. package/decorators/src/close-button.component.d.ts +1 -1
  45. package/decorators/src/icon.component.d.ts +1 -1
  46. package/decorators/src/overlay.component.d.ts +1 -1
  47. package/decorators/src/sub-title.component.d.ts +1 -1
  48. package/decorators/src/text.component.d.ts +1 -1
  49. package/drawer/src/drawer.component.d.ts +3 -3
  50. package/dropdown/src/dropdown-panel.component.d.ts +1 -1
  51. package/esm2022/action-sheet/src/action-sheet.component.mjs +80 -0
  52. package/{esm2020 → esm2022}/action-sheet/src/action-sheet.module.mjs +5 -5
  53. package/esm2022/action-sheet/src/action-sheet.service.mjs +93 -0
  54. package/esm2022/alert/src/alert.component.mjs +188 -0
  55. package/{esm2020 → esm2022}/alert/src/alert.module.mjs +5 -5
  56. package/{esm2020 → esm2022}/avatar/src/avatar-group.component.mjs +4 -4
  57. package/esm2022/avatar/src/avatar.component.mjs +43 -0
  58. package/{esm2020 → esm2022}/avatar/src/avatar.module.mjs +5 -5
  59. package/esm2022/badge/src/badge.component.mjs +28 -0
  60. package/{esm2020 → esm2022}/badge/src/badge.module.mjs +5 -5
  61. package/esm2022/breadcrumbs/src/breadcrumbs-item.component.mjs +50 -0
  62. package/esm2022/breadcrumbs/src/breadcrumbs.component.mjs +27 -0
  63. package/{esm2020 → esm2022}/breadcrumbs/src/breadcrumbs.module.mjs +5 -5
  64. package/esm2022/button/src/button-group.component.mjs +91 -0
  65. package/esm2022/button/src/button-item.component.mjs +79 -0
  66. package/esm2022/button/src/button.component.mjs +78 -0
  67. package/{esm2020 → esm2022}/button/src/button.module.mjs +9 -9
  68. package/{esm2020 → esm2022}/calendar/public-api.mjs +2 -1
  69. package/esm2022/calendar/src/calendar-range.component.mjs +174 -0
  70. package/esm2022/calendar/src/calendar.class.mjs +280 -0
  71. package/esm2022/calendar/src/calendar.component.mjs +372 -0
  72. package/esm2022/calendar/src/calendar.module.mjs +23 -0
  73. package/esm2022/card/src/card.component.mjs +18 -0
  74. package/{esm2020 → esm2022}/card/src/card.module.mjs +5 -5
  75. package/esm2022/checkbox/src/checkbox.component.mjs +42 -0
  76. package/{esm2020 → esm2022}/checkbox/src/checkbox.module.mjs +5 -5
  77. package/{esm2020 → esm2022}/chips/src/chips.component.mjs +7 -7
  78. package/{esm2020 → esm2022}/chips/src/chips.module.mjs +5 -5
  79. package/esm2022/collapse/src/collapse-group.component.mjs +52 -0
  80. package/esm2022/collapse/src/collapse.component.mjs +47 -0
  81. package/{esm2020 → esm2022}/collapse/src/collapse.module.mjs +5 -5
  82. package/esm2022/color-palette/src/color-palette-input.component.mjs +130 -0
  83. package/esm2022/color-palette/src/color-palette-picker.component.mjs +159 -0
  84. package/esm2022/color-palette/src/color-palette-preview.component.mjs +62 -0
  85. package/esm2022/color-palette/src/color-palette-swatches.component.mjs +304 -0
  86. package/{esm2020 → esm2022}/color-palette/src/color-palette.class.mjs +7 -7
  87. package/esm2022/color-palette/src/color-palette.component.mjs +75 -0
  88. package/{esm2020 → esm2022}/color-palette/src/color-palette.module.mjs +19 -19
  89. package/esm2022/color-picker/src/color-picker.component.mjs +119 -0
  90. package/{esm2020 → esm2022}/color-picker/src/color-picker.module.mjs +25 -25
  91. package/esm2022/common/public-api.mjs +17 -0
  92. package/esm2022/common/src/classes/components.class.mjs +72 -0
  93. package/esm2022/common/src/classes/data.class.mjs +2 -0
  94. package/esm2022/common/src/classes/events.class.mjs +96 -0
  95. package/{esm2020 → esm2022}/common/src/common.module.mjs +13 -13
  96. package/esm2022/common/src/components/base-component.class.mjs +57 -0
  97. package/esm2022/common/src/components/button-base-component.class.mjs +69 -0
  98. package/esm2022/common/src/components/color-component.class.mjs +27 -0
  99. package/{esm2020 → esm2022}/common/src/components/index.mjs +2 -1
  100. package/esm2022/common/src/components/interactive-component.class.mjs +63 -0
  101. package/{esm2020 → esm2022}/common/src/components/look-component.class.mjs +3 -3
  102. package/esm2022/common/src/components/value-component.class.mjs +206 -0
  103. package/esm2022/common/src/directives/auto-focus.directive.mjs +57 -0
  104. package/esm2022/common/src/directives/debounce-time.directive.mjs +49 -0
  105. package/esm2022/common/src/directives/hotkey.directive.mjs +82 -0
  106. package/esm2022/common/src/directives/infinite-scroll.directive.mjs +69 -0
  107. package/esm2022/common/src/directives/responsive.directive.mjs +35 -0
  108. package/esm2022/common/src/services/custom-cdk-overlay.service.mjs +50 -0
  109. package/esm2022/common/src/services/hotkey.service.mjs +40 -0
  110. package/esm2022/common/src/services/overlay.service.mjs +115 -0
  111. package/esm2022/context-menu/src/context-menu.component.mjs +270 -0
  112. package/{esm2020 → esm2022}/context-menu/src/context-menu.module.mjs +9 -9
  113. package/esm2022/data-pager/src/data-pager-base.component.mjs +35 -0
  114. package/esm2022/data-pager/src/data-pager-info.component.mjs +61 -0
  115. package/esm2022/data-pager/src/data-pager-input-selector.component.mjs +53 -0
  116. package/esm2022/data-pager/src/data-pager-next-buttons.components.mjs +66 -0
  117. package/esm2022/data-pager/src/data-pager-numeric-selector.component.mjs +100 -0
  118. package/esm2022/data-pager/src/data-pager-pagesize-dropdown.component.mjs +88 -0
  119. package/esm2022/data-pager/src/data-pager-prev-buttons.component.mjs +61 -0
  120. package/esm2022/data-pager/src/data-pager.component.mjs +146 -0
  121. package/{esm2020 → esm2022}/data-pager/src/data-pager.module.mjs +17 -17
  122. package/esm2022/data-table/src/data-column-cell-template.directive.mjs +18 -0
  123. package/esm2022/data-table/src/data-column.directive.mjs +50 -0
  124. package/esm2022/data-table/src/data-table.component.mjs +139 -0
  125. package/{esm2020 → esm2022}/data-table/src/data-table.module.mjs +5 -5
  126. package/esm2022/date-picker/src/datepicker.component.mjs +240 -0
  127. package/{esm2020 → esm2022}/date-picker/src/datepicker.module.mjs +12 -12
  128. package/esm2022/decorators/src/close-button.component.mjs +51 -0
  129. package/{esm2020 → esm2022}/decorators/src/content.component.mjs +4 -4
  130. package/{esm2020 → esm2022}/decorators/src/decorators.module.mjs +29 -29
  131. package/{esm2020 → esm2022}/decorators/src/footer.component.mjs +5 -5
  132. package/{esm2020 → esm2022}/decorators/src/form-hint.component.mjs +4 -4
  133. package/{esm2020 → esm2022}/decorators/src/header.component.mjs +5 -5
  134. package/esm2022/decorators/src/icon.component.mjs +30 -0
  135. package/esm2022/decorators/src/overlay.component.mjs +20 -0
  136. package/{esm2020 → esm2022}/decorators/src/placeholder.component.mjs +4 -4
  137. package/{esm2020 → esm2022}/decorators/src/prefix.component.mjs +4 -4
  138. package/esm2022/decorators/src/sub-title.component.mjs +27 -0
  139. package/{esm2020 → esm2022}/decorators/src/suffix.component.mjs +4 -4
  140. package/esm2022/decorators/src/text.component.mjs +22 -0
  141. package/{esm2020 → esm2022}/decorators/src/title.component.mjs +4 -4
  142. package/{esm2020 → esm2022}/dialog/src/dialog.component.mjs +7 -4
  143. package/{esm2020 → esm2022}/dialog/src/dialog.module.mjs +5 -5
  144. package/esm2022/dialog/src/dialog.service.mjs +154 -0
  145. package/esm2022/drawer/src/drawer-container.component.mjs +38 -0
  146. package/esm2022/drawer/src/drawer.component.mjs +144 -0
  147. package/{esm2020 → esm2022}/drawer/src/drawer.module.mjs +5 -5
  148. package/esm2022/dropdown/src/dropdown-panel.component.mjs +105 -0
  149. package/{esm2020 → esm2022}/dropdown/src/dropdown.module.mjs +5 -5
  150. package/{esm2020 → esm2022}/form/src/form-field.component.mjs +4 -4
  151. package/esm2022/form/src/form.component.mjs +163 -0
  152. package/{esm2020 → esm2022}/form/src/form.module.mjs +11 -11
  153. package/esm2022/form/src/validation-rule.widget.mjs +113 -0
  154. package/esm2022/form/src/validation-summary.component.mjs +109 -0
  155. package/esm2022/image/src/image.component.mjs +79 -0
  156. package/{esm2020 → esm2022}/image/src/image.module.mjs +5 -5
  157. package/esm2022/label/src/label.component.mjs +48 -0
  158. package/{esm2020 → esm2022}/label/src/label.module.mjs +5 -5
  159. package/{esm2020 → esm2022}/loading/src/loading-spinner.component.mjs +6 -5
  160. package/esm2022/loading/src/loading.component.mjs +67 -0
  161. package/esm2022/loading/src/loading.directive.mjs +76 -0
  162. package/{esm2020 → esm2022}/loading/src/loading.module.mjs +5 -5
  163. package/esm2022/loading/src/loading.service.mjs +158 -0
  164. package/esm2022/menu/src/menu.component.mjs +346 -0
  165. package/{esm2020 → esm2022}/menu/src/menu.module.mjs +8 -8
  166. package/esm2022/mixin/src/base-components.class.mjs +110 -0
  167. package/esm2022/mixin/src/base-menu-mixin.class.mjs +134 -0
  168. package/esm2022/mixin/src/button-mixin.class.mjs +71 -0
  169. package/esm2022/mixin/src/clickable-mixin.class.mjs +24 -0
  170. package/esm2022/mixin/src/color-look-mixing.class.mjs +48 -0
  171. package/esm2022/mixin/src/datalist-component.class.mjs +151 -0
  172. package/esm2022/mixin/src/dropdown-mixin.class.mjs +99 -0
  173. package/esm2022/mixin/src/interactive-mixin.class.mjs +81 -0
  174. package/esm2022/mixin/src/loading-mixin.class.mjs +26 -0
  175. package/esm2022/mixin/src/selection-component.class.mjs +183 -0
  176. package/esm2022/mixin/src/sizable-mixin.class.mjs +22 -0
  177. package/esm2022/mixin/src/textbox-mixin.class.mjs +66 -0
  178. package/esm2022/mixin/src/value-mixin.class.mjs +220 -0
  179. package/esm2022/notification/src/notification.component.mjs +92 -0
  180. package/{esm2020 → esm2022}/notification/src/notification.module.mjs +5 -5
  181. package/esm2022/notification/src/notification.service.mjs +109 -0
  182. package/esm2022/number-box/src/number-box.component.mjs +268 -0
  183. package/{esm2020 → esm2022}/number-box/src/number-box.module.mjs +9 -9
  184. package/esm2022/page/src/base-page.class.mjs +63 -0
  185. package/esm2022/page/src/page.component.mjs +46 -0
  186. package/{esm2020 → esm2022}/page/src/page.module.mjs +5 -5
  187. package/esm2022/password-box/src/password-box.component.mjs +63 -0
  188. package/{esm2020 → esm2022}/password-box/src/password-box.module.mjs +8 -8
  189. package/esm2022/picker/src/picker-column.component.mjs +20 -0
  190. package/{esm2020 → esm2022}/picker/src/picker.component.mjs +4 -4
  191. package/{esm2020 → esm2022}/picker/src/picker.module.mjs +9 -9
  192. package/esm2022/popover/src/popover.component.mjs +262 -0
  193. package/{esm2020 → esm2022}/popover/src/popover.module.mjs +5 -5
  194. package/esm2022/popup/src/popup.component.mjs +145 -0
  195. package/{esm2020 → esm2022}/popup/src/popup.module.mjs +5 -5
  196. package/esm2022/popup/src/popup.service.mjs +116 -0
  197. package/{esm2020 → esm2022}/progress-bar/src/progress-bar.component.mjs +5 -5
  198. package/{esm2020 → esm2022}/progress-bar/src/progress-bar.module.mjs +5 -5
  199. package/{esm2020 → esm2022}/radio/src/radio.component.mjs +4 -4
  200. package/{esm2020 → esm2022}/radio/src/radio.module.mjs +5 -5
  201. package/esm2022/range-slider/src/range-slider.component.mjs +117 -0
  202. package/{esm2020 → esm2022}/range-slider/src/range-slider.module.mjs +5 -5
  203. package/esm2022/rating/src/rating.component.mjs +41 -0
  204. package/{esm2020 → esm2022}/rating/src/rating.component.module.mjs +5 -5
  205. package/esm2022/result/src/result.component.mjs +26 -0
  206. package/{esm2020 → esm2022}/result/src/result.module.mjs +5 -5
  207. package/esm2022/search-box/src/search-box.component.mjs +54 -0
  208. package/{esm2020 → esm2022}/search-box/src/search-box.module.mjs +5 -5
  209. package/esm2022/select-box/src/selectbox.component.mjs +391 -0
  210. package/{esm2020 → esm2022}/select-box/src/selectbox.module.mjs +27 -27
  211. package/{esm2020 → esm2022}/selection-list/src/selection-list.component.mjs +8 -8
  212. package/{esm2020 → esm2022}/selection-list/src/selection-list.module.mjs +5 -5
  213. package/{esm2020 → esm2022}/switch/src/switch-content.component.mjs +4 -4
  214. package/{esm2020 → esm2022}/switch/src/switch.component.mjs +7 -4
  215. package/{esm2020 → esm2022}/switch/src/switch.module.mjs +5 -5
  216. package/esm2022/tabs/src/tab-content.directive.mjs +31 -0
  217. package/esm2022/tabs/src/tab-item.component.mjs +140 -0
  218. package/esm2022/tabs/src/tabs.class.mjs +6 -0
  219. package/{esm2020 → esm2022}/tabs/src/tabs.component.mjs +14 -11
  220. package/{esm2020 → esm2022}/tabs/src/tabs.module.mjs +5 -5
  221. package/{esm2020 → esm2022}/tag/src/tag.component.mjs +6 -6
  222. package/{esm2020 → esm2022}/tag/src/tag.module.mjs +5 -5
  223. package/esm2022/textarea/src/textarea.component.mjs +29 -0
  224. package/{esm2020 → esm2022}/textarea/src/textarea.module.mjs +5 -5
  225. package/esm2022/textbox/src/mask-options.directive.mjs +19 -0
  226. package/esm2022/textbox/src/textbox.component.mjs +95 -0
  227. package/{esm2020 → esm2022}/textbox/src/textbox.module.mjs +13 -13
  228. package/esm2022/time-box/src/time-box.component.mjs +305 -0
  229. package/{esm2020 → esm2022}/time-box/src/time-box.module.mjs +8 -8
  230. package/esm2022/toast/src/toast.component.mjs +67 -0
  231. package/{esm2020 → esm2022}/toast/src/toast.module.mjs +5 -5
  232. package/esm2022/toast/src/toast.service.mjs +136 -0
  233. package/esm2022/tooltip/src/tooltip.component.mjs +21 -0
  234. package/esm2022/tooltip/src/tooltip.directive.mjs +163 -0
  235. package/{esm2020 → esm2022}/tooltip/src/tooltip.module.mjs +5 -5
  236. package/esm2022/tree-view/src/tree-view.component.mjs +107 -0
  237. package/{esm2020 → esm2022}/tree-view/src/tree-view.module.mjs +5 -5
  238. package/esm2022/uploader/src/uploader.component.mjs +101 -0
  239. package/{esm2020 → esm2022}/uploader/src/uploader.module.mjs +5 -5
  240. package/{fesm2020 → fesm2022}/acorex-components-action-sheet.mjs +21 -16
  241. package/{fesm2020 → fesm2022}/acorex-components-action-sheet.mjs.map +1 -1
  242. package/{fesm2020 → fesm2022}/acorex-components-alert.mjs +41 -32
  243. package/{fesm2020 → fesm2022}/acorex-components-alert.mjs.map +1 -1
  244. package/{fesm2020 → fesm2022}/acorex-components-avatar.mjs +12 -11
  245. package/{fesm2020 → fesm2022}/acorex-components-avatar.mjs.map +1 -1
  246. package/{fesm2015 → fesm2022}/acorex-components-badge.mjs +9 -9
  247. package/{fesm2015 → fesm2022}/acorex-components-badge.mjs.map +1 -1
  248. package/{fesm2020 → fesm2022}/acorex-components-breadcrumbs.mjs +16 -11
  249. package/{fesm2020 → fesm2022}/acorex-components-breadcrumbs.mjs.map +1 -1
  250. package/{fesm2020 → fesm2022}/acorex-components-button.mjs +45 -48
  251. package/fesm2022/acorex-components-button.mjs.map +1 -0
  252. package/fesm2022/acorex-components-calendar.mjs +837 -0
  253. package/fesm2022/acorex-components-calendar.mjs.map +1 -0
  254. package/fesm2022/acorex-components-card.mjs +41 -0
  255. package/{fesm2015 → fesm2022}/acorex-components-card.mjs.map +1 -1
  256. package/{fesm2020 → fesm2022}/acorex-components-checkbox.mjs +8 -8
  257. package/{fesm2015 → fesm2022}/acorex-components-checkbox.mjs.map +1 -1
  258. package/{fesm2015 → fesm2022}/acorex-components-chips.mjs +10 -11
  259. package/{fesm2020 → fesm2022}/acorex-components-chips.mjs.map +1 -1
  260. package/{fesm2015 → fesm2022}/acorex-components-collapse.mjs +21 -18
  261. package/{fesm2020 → fesm2022}/acorex-components-collapse.mjs.map +1 -1
  262. package/{fesm2020 → fesm2022}/acorex-components-color-palette.mjs +337 -331
  263. package/{fesm2020 → fesm2022}/acorex-components-color-palette.mjs.map +1 -1
  264. package/fesm2022/acorex-components-color-picker.mjs +182 -0
  265. package/fesm2022/acorex-components-color-picker.mjs.map +1 -0
  266. package/{fesm2020 → fesm2022}/acorex-components-common.mjs +405 -140
  267. package/fesm2022/acorex-components-common.mjs.map +1 -0
  268. package/{fesm2020 → fesm2022}/acorex-components-context-menu.mjs +29 -20
  269. package/{fesm2015 → fesm2022}/acorex-components-context-menu.mjs.map +1 -1
  270. package/{fesm2020 → fesm2022}/acorex-components-data-pager.mjs +95 -80
  271. package/{fesm2020 → fesm2022}/acorex-components-data-pager.mjs.map +1 -1
  272. package/{fesm2020 → fesm2022}/acorex-components-data-table.mjs +40 -31
  273. package/{fesm2020 → fesm2022}/acorex-components-data-table.mjs.map +1 -1
  274. package/fesm2022/acorex-components-date-picker.mjs +285 -0
  275. package/fesm2022/acorex-components-date-picker.mjs.map +1 -0
  276. package/{fesm2020 → fesm2022}/acorex-components-decorators.mjs +80 -80
  277. package/{fesm2015 → fesm2022}/acorex-components-decorators.mjs.map +1 -1
  278. package/{fesm2020 → fesm2022}/acorex-components-dialog.mjs +16 -11
  279. package/{fesm2015 → fesm2022}/acorex-components-dialog.mjs.map +1 -1
  280. package/{fesm2020 → fesm2022}/acorex-components-drawer.mjs +25 -21
  281. package/{fesm2020 → fesm2022}/acorex-components-drawer.mjs.map +1 -1
  282. package/{fesm2020 → fesm2022}/acorex-components-dropdown.mjs +19 -16
  283. package/fesm2022/acorex-components-dropdown.mjs.map +1 -0
  284. package/{fesm2020 → fesm2022}/acorex-components-form.mjs +65 -61
  285. package/fesm2022/acorex-components-form.mjs.map +1 -0
  286. package/{fesm2015 → fesm2022}/acorex-components-image.mjs +17 -15
  287. package/{fesm2015 → fesm2022}/acorex-components-image.mjs.map +1 -1
  288. package/{fesm2015 → fesm2022}/acorex-components-label.mjs +12 -10
  289. package/fesm2022/acorex-components-label.mjs.map +1 -0
  290. package/{fesm2020 → fesm2022}/acorex-components-loading.mjs +42 -29
  291. package/{fesm2020 → fesm2022}/acorex-components-loading.mjs.map +1 -1
  292. package/{fesm2020 → fesm2022}/acorex-components-menu.mjs +26 -19
  293. package/{fesm2020 → fesm2022}/acorex-components-menu.mjs.map +1 -1
  294. package/{fesm2015 → fesm2022}/acorex-components-mixin.mjs +276 -284
  295. package/{fesm2020 → fesm2022}/acorex-components-mixin.mjs.map +1 -1
  296. package/{fesm2020 → fesm2022}/acorex-components-notification.mjs +24 -18
  297. package/{fesm2020 → fesm2022}/acorex-components-notification.mjs.map +1 -1
  298. package/{fesm2020 → fesm2022}/acorex-components-number-box.mjs +42 -35
  299. package/{fesm2015 → fesm2022}/acorex-components-number-box.mjs.map +1 -1
  300. package/{fesm2020 → fesm2022}/acorex-components-page.mjs +20 -17
  301. package/{fesm2020 → fesm2022}/acorex-components-page.mjs.map +1 -1
  302. package/fesm2022/acorex-components-password-box.mjs +99 -0
  303. package/{fesm2015 → fesm2022}/acorex-components-password-box.mjs.map +1 -1
  304. package/{fesm2020 → fesm2022}/acorex-components-picker.mjs +15 -18
  305. package/{fesm2015 → fesm2022}/acorex-components-picker.mjs.map +1 -1
  306. package/{fesm2020 → fesm2022}/acorex-components-popover.mjs +50 -37
  307. package/{fesm2015 → fesm2022}/acorex-components-popover.mjs.map +1 -1
  308. package/{fesm2020 → fesm2022}/acorex-components-popup.mjs +30 -19
  309. package/{fesm2020 → fesm2022}/acorex-components-popup.mjs.map +1 -1
  310. package/{fesm2020 → fesm2022}/acorex-components-progress-bar.mjs +8 -9
  311. package/{fesm2015 → fesm2022}/acorex-components-progress-bar.mjs.map +1 -1
  312. package/fesm2022/acorex-components-radio.mjs +65 -0
  313. package/{fesm2015 → fesm2022}/acorex-components-radio.mjs.map +1 -1
  314. package/{fesm2020 → fesm2022}/acorex-components-range-slider.mjs +16 -16
  315. package/fesm2022/acorex-components-range-slider.mjs.map +1 -0
  316. package/fesm2022/acorex-components-rating.mjs +64 -0
  317. package/{fesm2015 → fesm2022}/acorex-components-rating.mjs.map +1 -1
  318. package/{fesm2020 → fesm2022}/acorex-components-result.mjs +10 -10
  319. package/{fesm2020 → fesm2022}/acorex-components-result.mjs.map +1 -1
  320. package/{fesm2020 → fesm2022}/acorex-components-search-box.mjs +12 -11
  321. package/{fesm2020 → fesm2022}/acorex-components-search-box.mjs.map +1 -1
  322. package/{fesm2020 → fesm2022}/acorex-components-select-box.mjs +56 -46
  323. package/{fesm2020 → fesm2022}/acorex-components-select-box.mjs.map +1 -1
  324. package/{fesm2020 → fesm2022}/acorex-components-selection-list.mjs +11 -12
  325. package/{fesm2015 → fesm2022}/acorex-components-selection-list.mjs.map +1 -1
  326. package/{fesm2020 → fesm2022}/acorex-components-switch.mjs +13 -11
  327. package/{fesm2015 → fesm2022}/acorex-components-switch.mjs.map +1 -1
  328. package/{fesm2020 → fesm2022}/acorex-components-tabs.mjs +36 -26
  329. package/{fesm2015 → fesm2022}/acorex-components-tabs.mjs.map +1 -1
  330. package/{fesm2020 → fesm2022}/acorex-components-tag.mjs +9 -10
  331. package/{fesm2020 → fesm2022}/acorex-components-tag.mjs.map +1 -1
  332. package/fesm2022/acorex-components-textarea.mjs +52 -0
  333. package/{fesm2020 → fesm2022}/acorex-components-textarea.mjs.map +1 -1
  334. package/{fesm2020 → fesm2022}/acorex-components-textbox.mjs +34 -30
  335. package/{fesm2020 → fesm2022}/acorex-components-textbox.mjs.map +1 -1
  336. package/{fesm2020 → fesm2022}/acorex-components-time-box.mjs +30 -22
  337. package/{fesm2020 → fesm2022}/acorex-components-time-box.mjs.map +1 -1
  338. package/{fesm2020 → fesm2022}/acorex-components-toast.mjs +22 -18
  339. package/{fesm2020 → fesm2022}/acorex-components-toast.mjs.map +1 -1
  340. package/{fesm2020 → fesm2022}/acorex-components-tooltip.mjs +20 -14
  341. package/{fesm2020 → fesm2022}/acorex-components-tooltip.mjs.map +1 -1
  342. package/fesm2022/acorex-components-tree-view.mjs +131 -0
  343. package/{fesm2015 → fesm2022}/acorex-components-tree-view.mjs.map +1 -1
  344. package/{fesm2020 → fesm2022}/acorex-components-uploader.mjs +15 -13
  345. package/{fesm2020 → fesm2022}/acorex-components-uploader.mjs.map +1 -1
  346. package/{fesm2015 → fesm2022}/acorex-components.mjs +0 -1
  347. package/form/src/form.component.d.ts +2 -2
  348. package/form/src/validation-rule.widget.d.ts +1 -1
  349. package/form/src/validation-summary.component.d.ts +2 -2
  350. package/form/src/validation.class.d.ts +1 -1
  351. package/image/src/image.component.d.ts +1 -1
  352. package/label/src/label.component.d.ts +1 -1
  353. package/loading/src/loading.component.d.ts +1 -1
  354. package/loading/src/loading.directive.d.ts +1 -1
  355. package/loading/src/loading.service.d.ts +2 -2
  356. package/menu/src/menu.component.d.ts +1 -1
  357. package/mixin/src/base-components.class.d.ts +7 -7
  358. package/mixin/src/base-menu-mixin.class.d.ts +5 -5
  359. package/mixin/src/button-mixin.class.d.ts +2 -2
  360. package/mixin/src/clickable-mixin.class.d.ts +2 -2
  361. package/mixin/src/color-look-mixing.class.d.ts +2 -2
  362. package/mixin/src/constratctor.d.ts +2 -2
  363. package/mixin/src/datalist-component.class.d.ts +10 -10
  364. package/mixin/src/datalist.class.d.ts +2 -2
  365. package/mixin/src/dropdown-mixin.class.d.ts +2 -2
  366. package/mixin/src/interactive-mixin.class.d.ts +4 -4
  367. package/mixin/src/loading-mixin.class.d.ts +2 -2
  368. package/mixin/src/mixin.class.d.ts +61 -61
  369. package/mixin/src/page-component.class.d.ts +2 -2
  370. package/mixin/src/selection-component.class.d.ts +2 -2
  371. package/mixin/src/sizable-mixin.class.d.ts +2 -2
  372. package/mixin/src/textbox-mixin.class.d.ts +2 -2
  373. package/mixin/src/value-mixin.class.d.ts +8 -8
  374. package/notification/src/notification.class.d.ts +1 -1
  375. package/number-box/src/number-box.component.d.ts +1 -1
  376. package/package.json +172 -284
  377. package/password-box/src/password-box.component.d.ts +1 -1
  378. package/picker/src/picker-column.component.d.ts +1 -1
  379. package/popover/src/popover.component.d.ts +1 -1
  380. package/popup/src/popup.service.d.ts +2 -2
  381. package/progress-bar/src/progress-bar.component.d.ts +1 -1
  382. package/radio/src/radio.component.d.ts +1 -1
  383. package/range-slider/src/range-slider.component.d.ts +1 -1
  384. package/result/src/result.component.d.ts +1 -1
  385. package/search-box/src/search-box.component.d.ts +1 -1
  386. package/select-box/src/selectbox.component.d.ts +1 -1
  387. package/selection-list/src/selection-list.component.d.ts +1 -1
  388. package/switch/src/switch.component.d.ts +1 -1
  389. package/tabs/src/tab-content.directive.d.ts +1 -1
  390. package/tabs/src/tab-item.component.d.ts +3 -3
  391. package/tabs/src/tabs.class.d.ts +1 -1
  392. package/tabs/src/tabs.component.d.ts +1 -1
  393. package/tag/src/tag.component.d.ts +1 -1
  394. package/textarea/src/textarea.component.d.ts +1 -1
  395. package/textbox/src/mask-options.directive.d.ts +2 -2
  396. package/textbox/src/textbox.component.d.ts +1 -1
  397. package/time-box/src/time-box.component.d.ts +2 -2
  398. package/tooltip/src/tooltip.component.d.ts +1 -1
  399. package/tooltip/src/tooltip.directive.d.ts +1 -1
  400. package/tree-view/src/tree-view.component.d.ts +1 -1
  401. package/uploader/src/uploader.component.d.ts +1 -1
  402. package/esm2020/action-sheet/src/action-sheet.component.mjs +0 -76
  403. package/esm2020/action-sheet/src/action-sheet.service.mjs +0 -91
  404. package/esm2020/alert/src/alert.component.mjs +0 -178
  405. package/esm2020/avatar/src/avatar.component.mjs +0 -41
  406. package/esm2020/badge/src/badge.component.mjs +0 -27
  407. package/esm2020/breadcrumbs/src/breadcrumbs-item.component.mjs +0 -46
  408. package/esm2020/breadcrumbs/src/breadcrumbs.component.mjs +0 -25
  409. package/esm2020/button/src/button-group.component.mjs +0 -88
  410. package/esm2020/button/src/button-item.component.mjs +0 -77
  411. package/esm2020/button/src/button.component.mjs +0 -85
  412. package/esm2020/calendar/src/calendar.class.mjs +0 -127
  413. package/esm2020/calendar/src/calendar.component.mjs +0 -382
  414. package/esm2020/calendar/src/calendar.module.mjs +0 -22
  415. package/esm2020/card/src/card.component.mjs +0 -17
  416. package/esm2020/checkbox/src/checkbox.component.mjs +0 -41
  417. package/esm2020/collapse/src/collapse-group.component.mjs +0 -50
  418. package/esm2020/collapse/src/collapse.component.mjs +0 -45
  419. package/esm2020/color-palette/src/color-palette-input.component.mjs +0 -129
  420. package/esm2020/color-palette/src/color-palette-picker.component.mjs +0 -158
  421. package/esm2020/color-palette/src/color-palette-preview.component.mjs +0 -60
  422. package/esm2020/color-palette/src/color-palette-swatches.component.mjs +0 -302
  423. package/esm2020/color-palette/src/color-palette.component.mjs +0 -74
  424. package/esm2020/color-picker/src/color-picker.component.mjs +0 -105
  425. package/esm2020/common/public-api.mjs +0 -16
  426. package/esm2020/common/src/classes/components.class.mjs +0 -69
  427. package/esm2020/common/src/classes/events.class.mjs +0 -58
  428. package/esm2020/common/src/components/base-component.class.mjs +0 -57
  429. package/esm2020/common/src/components/button-base-component.class.mjs +0 -68
  430. package/esm2020/common/src/components/color-component.class.mjs +0 -27
  431. package/esm2020/common/src/components/interactive-component.class.mjs +0 -62
  432. package/esm2020/common/src/directives/auto-focus.directive.mjs +0 -55
  433. package/esm2020/common/src/directives/debounce-time.directive.mjs +0 -47
  434. package/esm2020/common/src/directives/hotkey.directive.mjs +0 -79
  435. package/esm2020/common/src/directives/infinite-scroll.directive.mjs +0 -63
  436. package/esm2020/common/src/directives/responsive.directive.mjs +0 -34
  437. package/esm2020/common/src/services/custom-cdk-overlay.service.mjs +0 -48
  438. package/esm2020/common/src/services/hotkey.service.mjs +0 -38
  439. package/esm2020/common/src/services/overlay.service.mjs +0 -111
  440. package/esm2020/context-menu/src/context-menu.component.mjs +0 -260
  441. package/esm2020/data-pager/src/data-pager-base.component.mjs +0 -38
  442. package/esm2020/data-pager/src/data-pager-info.component.mjs +0 -57
  443. package/esm2020/data-pager/src/data-pager-input-selector.component.mjs +0 -51
  444. package/esm2020/data-pager/src/data-pager-next-buttons.components.mjs +0 -63
  445. package/esm2020/data-pager/src/data-pager-numeric-selector.component.mjs +0 -98
  446. package/esm2020/data-pager/src/data-pager-pagesize-dropdown.component.mjs +0 -85
  447. package/esm2020/data-pager/src/data-pager-prev-buttons.component.mjs +0 -59
  448. package/esm2020/data-pager/src/data-pager.component.mjs +0 -143
  449. package/esm2020/data-table/src/data-column-cell-template.directive.mjs +0 -17
  450. package/esm2020/data-table/src/data-column.directive.mjs +0 -43
  451. package/esm2020/data-table/src/data-table.component.mjs +0 -137
  452. package/esm2020/date-picker/src/datepicker.component.mjs +0 -249
  453. package/esm2020/decorators/src/close-button.component.mjs +0 -50
  454. package/esm2020/decorators/src/icon.component.mjs +0 -29
  455. package/esm2020/decorators/src/overlay.component.mjs +0 -22
  456. package/esm2020/decorators/src/sub-title.component.mjs +0 -27
  457. package/esm2020/decorators/src/text.component.mjs +0 -21
  458. package/esm2020/dialog/src/dialog.service.mjs +0 -151
  459. package/esm2020/drawer/src/drawer-container.component.mjs +0 -37
  460. package/esm2020/drawer/src/drawer.component.mjs +0 -140
  461. package/esm2020/dropdown/src/dropdown-panel.component.mjs +0 -101
  462. package/esm2020/form/src/form.component.mjs +0 -160
  463. package/esm2020/form/src/validation-rule.widget.mjs +0 -115
  464. package/esm2020/form/src/validation-summary.component.mjs +0 -105
  465. package/esm2020/image/src/image.component.mjs +0 -76
  466. package/esm2020/label/src/label.component.mjs +0 -45
  467. package/esm2020/loading/src/loading.component.mjs +0 -64
  468. package/esm2020/loading/src/loading.directive.mjs +0 -68
  469. package/esm2020/loading/src/loading.service.mjs +0 -156
  470. package/esm2020/menu/src/menu.component.mjs +0 -338
  471. package/esm2020/mixin/src/base-components.class.mjs +0 -110
  472. package/esm2020/mixin/src/base-menu-mixin.class.mjs +0 -138
  473. package/esm2020/mixin/src/button-mixin.class.mjs +0 -70
  474. package/esm2020/mixin/src/clickable-mixin.class.mjs +0 -24
  475. package/esm2020/mixin/src/color-look-mixing.class.mjs +0 -48
  476. package/esm2020/mixin/src/datalist-component.class.mjs +0 -163
  477. package/esm2020/mixin/src/dropdown-mixin.class.mjs +0 -99
  478. package/esm2020/mixin/src/interactive-mixin.class.mjs +0 -84
  479. package/esm2020/mixin/src/loading-mixin.class.mjs +0 -18
  480. package/esm2020/mixin/src/selection-component.class.mjs +0 -180
  481. package/esm2020/mixin/src/sizable-mixin.class.mjs +0 -18
  482. package/esm2020/mixin/src/textbox-mixin.class.mjs +0 -58
  483. package/esm2020/mixin/src/value-mixin.class.mjs +0 -230
  484. package/esm2020/notification/src/notification.component.mjs +0 -87
  485. package/esm2020/notification/src/notification.service.mjs +0 -107
  486. package/esm2020/number-box/src/number-box.component.mjs +0 -260
  487. package/esm2020/page/src/base-page.class.mjs +0 -61
  488. package/esm2020/page/src/page.component.mjs +0 -44
  489. package/esm2020/password-box/src/password-box.component.mjs +0 -62
  490. package/esm2020/picker/src/picker-column.component.mjs +0 -22
  491. package/esm2020/popover/src/popover.component.mjs +0 -248
  492. package/esm2020/popup/src/popup.component.mjs +0 -135
  493. package/esm2020/popup/src/popup.service.mjs +0 -114
  494. package/esm2020/range-slider/src/range-slider.component.mjs +0 -116
  495. package/esm2020/rating/src/rating.component.mjs +0 -41
  496. package/esm2020/result/src/result.component.mjs +0 -25
  497. package/esm2020/search-box/src/search-box.component.mjs +0 -52
  498. package/esm2020/select-box/src/selectbox.component.mjs +0 -380
  499. package/esm2020/tabs/src/tab-content.directive.mjs +0 -29
  500. package/esm2020/tabs/src/tab-item.component.mjs +0 -136
  501. package/esm2020/tabs/src/tabs.class.mjs +0 -4
  502. package/esm2020/textarea/src/textarea.component.mjs +0 -28
  503. package/esm2020/textbox/src/mask-options.directive.mjs +0 -17
  504. package/esm2020/textbox/src/textbox.component.mjs +0 -92
  505. package/esm2020/time-box/src/time-box.component.mjs +0 -296
  506. package/esm2020/toast/src/toast.component.mjs +0 -64
  507. package/esm2020/toast/src/toast.service.mjs +0 -134
  508. package/esm2020/tooltip/src/tooltip.component.mjs +0 -20
  509. package/esm2020/tooltip/src/tooltip.directive.mjs +0 -157
  510. package/esm2020/tree-view/src/tree-view.component.mjs +0 -108
  511. package/esm2020/uploader/src/uploader.component.mjs +0 -98
  512. package/fesm2015/acorex-components-action-sheet.mjs +0 -193
  513. package/fesm2015/acorex-components-action-sheet.mjs.map +0 -1
  514. package/fesm2015/acorex-components-alert.mjs +0 -208
  515. package/fesm2015/acorex-components-alert.mjs.map +0 -1
  516. package/fesm2015/acorex-components-avatar.mjs +0 -81
  517. package/fesm2015/acorex-components-avatar.mjs.map +0 -1
  518. package/fesm2015/acorex-components-breadcrumbs.mjs +0 -91
  519. package/fesm2015/acorex-components-breadcrumbs.mjs.map +0 -1
  520. package/fesm2015/acorex-components-button.mjs +0 -281
  521. package/fesm2015/acorex-components-button.mjs.map +0 -1
  522. package/fesm2015/acorex-components-calendar.mjs +0 -531
  523. package/fesm2015/acorex-components-calendar.mjs.map +0 -1
  524. package/fesm2015/acorex-components-card.mjs +0 -41
  525. package/fesm2015/acorex-components-checkbox.mjs +0 -67
  526. package/fesm2015/acorex-components-chips.mjs.map +0 -1
  527. package/fesm2015/acorex-components-collapse.mjs.map +0 -1
  528. package/fesm2015/acorex-components-color-palette.mjs +0 -772
  529. package/fesm2015/acorex-components-color-palette.mjs.map +0 -1
  530. package/fesm2015/acorex-components-color-picker.mjs +0 -172
  531. package/fesm2015/acorex-components-color-picker.mjs.map +0 -1
  532. package/fesm2015/acorex-components-common.mjs +0 -955
  533. package/fesm2015/acorex-components-common.mjs.map +0 -1
  534. package/fesm2015/acorex-components-context-menu.mjs +0 -301
  535. package/fesm2015/acorex-components-data-pager.mjs +0 -615
  536. package/fesm2015/acorex-components-data-pager.mjs.map +0 -1
  537. package/fesm2015/acorex-components-data-table.mjs +0 -224
  538. package/fesm2015/acorex-components-data-table.mjs.map +0 -1
  539. package/fesm2015/acorex-components-date-picker.mjs +0 -297
  540. package/fesm2015/acorex-components-date-picker.mjs.map +0 -1
  541. package/fesm2015/acorex-components-decorators.mjs +0 -356
  542. package/fesm2015/acorex-components-dialog.mjs +0 -233
  543. package/fesm2015/acorex-components-drawer.mjs +0 -202
  544. package/fesm2015/acorex-components-drawer.mjs.map +0 -1
  545. package/fesm2015/acorex-components-dropdown.mjs +0 -135
  546. package/fesm2015/acorex-components-dropdown.mjs.map +0 -1
  547. package/fesm2015/acorex-components-form.mjs +0 -450
  548. package/fesm2015/acorex-components-form.mjs.map +0 -1
  549. package/fesm2015/acorex-components-label.mjs.map +0 -1
  550. package/fesm2015/acorex-components-loading.mjs +0 -385
  551. package/fesm2015/acorex-components-loading.mjs.map +0 -1
  552. package/fesm2015/acorex-components-menu.mjs +0 -381
  553. package/fesm2015/acorex-components-menu.mjs.map +0 -1
  554. package/fesm2015/acorex-components-mixin.mjs.map +0 -1
  555. package/fesm2015/acorex-components-notification.mjs +0 -217
  556. package/fesm2015/acorex-components-notification.mjs.map +0 -1
  557. package/fesm2015/acorex-components-number-box.mjs +0 -300
  558. package/fesm2015/acorex-components-page.mjs +0 -127
  559. package/fesm2015/acorex-components-page.mjs.map +0 -1
  560. package/fesm2015/acorex-components-password-box.mjs +0 -99
  561. package/fesm2015/acorex-components-picker.mjs +0 -77
  562. package/fesm2015/acorex-components-popover.mjs +0 -278
  563. package/fesm2015/acorex-components-popup.mjs +0 -275
  564. package/fesm2015/acorex-components-popup.mjs.map +0 -1
  565. package/fesm2015/acorex-components-progress-bar.mjs +0 -57
  566. package/fesm2015/acorex-components-radio.mjs +0 -66
  567. package/fesm2015/acorex-components-range-slider.mjs +0 -148
  568. package/fesm2015/acorex-components-range-slider.mjs.map +0 -1
  569. package/fesm2015/acorex-components-rating.mjs +0 -65
  570. package/fesm2015/acorex-components-result.mjs +0 -49
  571. package/fesm2015/acorex-components-result.mjs.map +0 -1
  572. package/fesm2015/acorex-components-search-box.mjs +0 -84
  573. package/fesm2015/acorex-components-search-box.mjs.map +0 -1
  574. package/fesm2015/acorex-components-select-box.mjs +0 -453
  575. package/fesm2015/acorex-components-select-box.mjs.map +0 -1
  576. package/fesm2015/acorex-components-selection-list.mjs +0 -89
  577. package/fesm2015/acorex-components-switch.mjs +0 -91
  578. package/fesm2015/acorex-components-tabs.mjs +0 -299
  579. package/fesm2015/acorex-components-tag.mjs +0 -53
  580. package/fesm2015/acorex-components-tag.mjs.map +0 -1
  581. package/fesm2015/acorex-components-textarea.mjs +0 -52
  582. package/fesm2015/acorex-components-textarea.mjs.map +0 -1
  583. package/fesm2015/acorex-components-textbox.mjs +0 -149
  584. package/fesm2015/acorex-components-textbox.mjs.map +0 -1
  585. package/fesm2015/acorex-components-time-box.mjs +0 -336
  586. package/fesm2015/acorex-components-time-box.mjs.map +0 -1
  587. package/fesm2015/acorex-components-toast.mjs +0 -222
  588. package/fesm2015/acorex-components-toast.mjs.map +0 -1
  589. package/fesm2015/acorex-components-tooltip.mjs +0 -164
  590. package/fesm2015/acorex-components-tooltip.mjs.map +0 -1
  591. package/fesm2015/acorex-components-tree-view.mjs +0 -133
  592. package/fesm2015/acorex-components-uploader.mjs +0 -129
  593. package/fesm2015/acorex-components-uploader.mjs.map +0 -1
  594. package/fesm2020/acorex-components-badge.mjs +0 -53
  595. package/fesm2020/acorex-components-badge.mjs.map +0 -1
  596. package/fesm2020/acorex-components-button.mjs.map +0 -1
  597. package/fesm2020/acorex-components-calendar.mjs +0 -530
  598. package/fesm2020/acorex-components-calendar.mjs.map +0 -1
  599. package/fesm2020/acorex-components-card.mjs +0 -41
  600. package/fesm2020/acorex-components-card.mjs.map +0 -1
  601. package/fesm2020/acorex-components-checkbox.mjs.map +0 -1
  602. package/fesm2020/acorex-components-chips.mjs +0 -57
  603. package/fesm2020/acorex-components-collapse.mjs +0 -115
  604. package/fesm2020/acorex-components-color-picker.mjs +0 -169
  605. package/fesm2020/acorex-components-color-picker.mjs.map +0 -1
  606. package/fesm2020/acorex-components-common.mjs.map +0 -1
  607. package/fesm2020/acorex-components-context-menu.mjs.map +0 -1
  608. package/fesm2020/acorex-components-date-picker.mjs +0 -295
  609. package/fesm2020/acorex-components-date-picker.mjs.map +0 -1
  610. package/fesm2020/acorex-components-decorators.mjs.map +0 -1
  611. package/fesm2020/acorex-components-dialog.mjs.map +0 -1
  612. package/fesm2020/acorex-components-dropdown.mjs.map +0 -1
  613. package/fesm2020/acorex-components-form.mjs.map +0 -1
  614. package/fesm2020/acorex-components-image.mjs +0 -100
  615. package/fesm2020/acorex-components-image.mjs.map +0 -1
  616. package/fesm2020/acorex-components-label.mjs +0 -71
  617. package/fesm2020/acorex-components-label.mjs.map +0 -1
  618. package/fesm2020/acorex-components-mixin.mjs +0 -1259
  619. package/fesm2020/acorex-components-number-box.mjs.map +0 -1
  620. package/fesm2020/acorex-components-password-box.mjs +0 -99
  621. package/fesm2020/acorex-components-password-box.mjs.map +0 -1
  622. package/fesm2020/acorex-components-picker.mjs.map +0 -1
  623. package/fesm2020/acorex-components-popover.mjs.map +0 -1
  624. package/fesm2020/acorex-components-progress-bar.mjs.map +0 -1
  625. package/fesm2020/acorex-components-radio.mjs +0 -66
  626. package/fesm2020/acorex-components-radio.mjs.map +0 -1
  627. package/fesm2020/acorex-components-range-slider.mjs.map +0 -1
  628. package/fesm2020/acorex-components-rating.mjs +0 -65
  629. package/fesm2020/acorex-components-rating.mjs.map +0 -1
  630. package/fesm2020/acorex-components-selection-list.mjs.map +0 -1
  631. package/fesm2020/acorex-components-switch.mjs.map +0 -1
  632. package/fesm2020/acorex-components-tabs.mjs.map +0 -1
  633. package/fesm2020/acorex-components-textarea.mjs +0 -52
  634. package/fesm2020/acorex-components-tree-view.mjs +0 -133
  635. package/fesm2020/acorex-components-tree-view.mjs.map +0 -1
  636. package/fesm2020/acorex-components.mjs +0 -12
  637. package/fesm2020/acorex-components.mjs.map +0 -1
  638. /package/{esm2020 → esm2022}/acorex-components.mjs +0 -0
  639. /package/{esm2020 → esm2022}/action-sheet/acorex-components-action-sheet.mjs +0 -0
  640. /package/{esm2020 → esm2022}/action-sheet/public-api.mjs +0 -0
  641. /package/{esm2020 → esm2022}/action-sheet/src/action-sheet.interface.mjs +0 -0
  642. /package/{esm2020 → esm2022}/alert/acorex-components-alert.mjs +0 -0
  643. /package/{esm2020 → esm2022}/alert/public-api.mjs +0 -0
  644. /package/{esm2020 → esm2022}/avatar/acorex-components-avatar.mjs +0 -0
  645. /package/{esm2020 → esm2022}/avatar/public-api.mjs +0 -0
  646. /package/{esm2020 → esm2022}/badge/acorex-components-badge.mjs +0 -0
  647. /package/{esm2020 → esm2022}/badge/public-api.mjs +0 -0
  648. /package/{esm2020 → esm2022}/breadcrumbs/acorex-components-breadcrumbs.mjs +0 -0
  649. /package/{esm2020 → esm2022}/breadcrumbs/public-api.mjs +0 -0
  650. /package/{esm2020 → esm2022}/breadcrumbs/src/breadcrumbs-item.class.mjs +0 -0
  651. /package/{esm2020 → esm2022}/button/acorex-components-button.mjs +0 -0
  652. /package/{esm2020 → esm2022}/button/public-api.mjs +0 -0
  653. /package/{esm2020 → esm2022}/button/src/button-item.class.mjs +0 -0
  654. /package/{esm2020 → esm2022}/calendar/acorex-components-calendar.mjs +0 -0
  655. /package/{esm2020 → esm2022}/card/acorex-components-card.mjs +0 -0
  656. /package/{esm2020 → esm2022}/card/public-api.mjs +0 -0
  657. /package/{esm2020 → esm2022}/checkbox/acorex-components-checkbox.mjs +0 -0
  658. /package/{esm2020 → esm2022}/checkbox/public-api.mjs +0 -0
  659. /package/{esm2020 → esm2022}/chips/acorex-components-chips.mjs +0 -0
  660. /package/{esm2020 → esm2022}/chips/public-api.mjs +0 -0
  661. /package/{esm2020 → esm2022}/collapse/acorex-components-collapse.mjs +0 -0
  662. /package/{esm2020 → esm2022}/collapse/public-api.mjs +0 -0
  663. /package/{esm2020 → esm2022}/color-palette/acorex-components-color-palette.mjs +0 -0
  664. /package/{esm2020 → esm2022}/color-palette/public-api.mjs +0 -0
  665. /package/{esm2020 → esm2022}/color-picker/acorex-components-color-picker.mjs +0 -0
  666. /package/{esm2020 → esm2022}/color-picker/public-api.mjs +0 -0
  667. /package/{esm2020 → esm2022}/common/acorex-components-common.mjs +0 -0
  668. /package/{esm2020 → esm2022}/common/src/classes/drawing.class.mjs +0 -0
  669. /package/{esm2020 → esm2022}/common/src/classes/styles.class.mjs +0 -0
  670. /package/{esm2020 → esm2022}/common/src/components/colorlook-component.class.mjs +0 -0
  671. /package/{esm2020 → esm2022}/common/src/constant/positions.mjs +0 -0
  672. /package/{esm2020 → esm2022}/context-menu/acorex-components-context-menu.mjs +0 -0
  673. /package/{esm2020 → esm2022}/context-menu/public-api.mjs +0 -0
  674. /package/{esm2020 → esm2022}/data-pager/acorex-components-data-pager.mjs +0 -0
  675. /package/{esm2020 → esm2022}/data-pager/public-api.mjs +0 -0
  676. /package/{esm2020 → esm2022}/data-table/acorex-components-data-table.mjs +0 -0
  677. /package/{esm2020 → esm2022}/data-table/public-api.mjs +0 -0
  678. /package/{esm2020 → esm2022}/date-picker/acorex-components-date-picker.mjs +0 -0
  679. /package/{esm2020 → esm2022}/date-picker/public-api.mjs +0 -0
  680. /package/{esm2020 → esm2022}/decorators/acorex-components-decorators.mjs +0 -0
  681. /package/{esm2020 → esm2022}/decorators/public-api.mjs +0 -0
  682. /package/{esm2020 → esm2022}/dialog/acorex-components-dialog.mjs +0 -0
  683. /package/{esm2020 → esm2022}/dialog/public-api.mjs +0 -0
  684. /package/{esm2020 → esm2022}/dialog/src/dialog.class.mjs +0 -0
  685. /package/{esm2020 → esm2022}/drawer/acorex-components-drawer.mjs +0 -0
  686. /package/{esm2020 → esm2022}/drawer/public-api.mjs +0 -0
  687. /package/{esm2020 → esm2022}/dropdown/acorex-components-dropdown.mjs +0 -0
  688. /package/{esm2020 → esm2022}/dropdown/public-api.mjs +0 -0
  689. /package/{esm2020 → esm2022}/form/acorex-components-form.mjs +0 -0
  690. /package/{esm2020 → esm2022}/form/public-api.mjs +0 -0
  691. /package/{esm2020 → esm2022}/form/src/validation.class.mjs +0 -0
  692. /package/{esm2020 → esm2022}/image/acorex-components-image.mjs +0 -0
  693. /package/{esm2020 → esm2022}/image/public-api.mjs +0 -0
  694. /package/{esm2020 → esm2022}/label/acorex-components-label.mjs +0 -0
  695. /package/{esm2020 → esm2022}/label/public-api.mjs +0 -0
  696. /package/{esm2020 → esm2022}/loading/acorex-components-loading.mjs +0 -0
  697. /package/{esm2020 → esm2022}/loading/public-api.mjs +0 -0
  698. /package/{esm2020 → esm2022}/menu/acorex-components-menu.mjs +0 -0
  699. /package/{esm2020 → esm2022}/menu/public-api.mjs +0 -0
  700. /package/{esm2020 → esm2022}/mixin/acorex-components-mixin.mjs +0 -0
  701. /package/{esm2020 → esm2022}/mixin/public-api.mjs +0 -0
  702. /package/{esm2020 → esm2022}/mixin/src/constratctor.mjs +0 -0
  703. /package/{esm2020 → esm2022}/mixin/src/datalist.class.mjs +0 -0
  704. /package/{esm2020 → esm2022}/mixin/src/mixin.class.mjs +0 -0
  705. /package/{esm2020 → esm2022}/mixin/src/page-component.class.mjs +0 -0
  706. /package/{esm2020 → esm2022}/notification/acorex-components-notification.mjs +0 -0
  707. /package/{esm2020 → esm2022}/notification/public-api.mjs +0 -0
  708. /package/{esm2020 → esm2022}/notification/src/notification.class.mjs +0 -0
  709. /package/{esm2020 → esm2022}/number-box/acorex-components-number-box.mjs +0 -0
  710. /package/{esm2020 → esm2022}/number-box/public-api.mjs +0 -0
  711. /package/{esm2020 → esm2022}/page/acorex-components-page.mjs +0 -0
  712. /package/{esm2020 → esm2022}/page/public-api.mjs +0 -0
  713. /package/{esm2020 → esm2022}/password-box/acorex-components-password-box.mjs +0 -0
  714. /package/{esm2020 → esm2022}/password-box/public-api.mjs +0 -0
  715. /package/{esm2020 → esm2022}/picker/acorex-components-picker.mjs +0 -0
  716. /package/{esm2020 → esm2022}/picker/public-api.mjs +0 -0
  717. /package/{esm2020 → esm2022}/popover/acorex-components-popover.mjs +0 -0
  718. /package/{esm2020 → esm2022}/popover/public-api.mjs +0 -0
  719. /package/{esm2020 → esm2022}/popup/acorex-components-popup.mjs +0 -0
  720. /package/{esm2020 → esm2022}/popup/public-api.mjs +0 -0
  721. /package/{esm2020 → esm2022}/progress-bar/acorex-components-progress-bar.mjs +0 -0
  722. /package/{esm2020 → esm2022}/progress-bar/public-api.mjs +0 -0
  723. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  724. /package/{esm2020 → esm2022}/radio/acorex-components-radio.mjs +0 -0
  725. /package/{esm2020 → esm2022}/radio/public-api.mjs +0 -0
  726. /package/{esm2020 → esm2022}/range-slider/acorex-components-range-slider.mjs +0 -0
  727. /package/{esm2020 → esm2022}/range-slider/public-api.mjs +0 -0
  728. /package/{esm2020 → esm2022}/rating/acorex-components-rating.mjs +0 -0
  729. /package/{esm2020 → esm2022}/rating/public-api.mjs +0 -0
  730. /package/{esm2020 → esm2022}/result/acorex-components-result.mjs +0 -0
  731. /package/{esm2020 → esm2022}/result/public-api.mjs +0 -0
  732. /package/{esm2020 → esm2022}/search-box/acorex-components-search-box.mjs +0 -0
  733. /package/{esm2020 → esm2022}/search-box/public-api.mjs +0 -0
  734. /package/{esm2020 → esm2022}/select-box/acorex-components-select-box.mjs +0 -0
  735. /package/{esm2020 → esm2022}/select-box/public-api.mjs +0 -0
  736. /package/{esm2020 → esm2022}/selection-list/acorex-components-selection-list.mjs +0 -0
  737. /package/{esm2020 → esm2022}/selection-list/public-api.mjs +0 -0
  738. /package/{esm2020 → esm2022}/switch/acorex-components-switch.mjs +0 -0
  739. /package/{esm2020 → esm2022}/switch/public-api.mjs +0 -0
  740. /package/{esm2020 → esm2022}/tabs/acorex-components-tabs.mjs +0 -0
  741. /package/{esm2020 → esm2022}/tabs/public-api.mjs +0 -0
  742. /package/{esm2020 → esm2022}/tag/acorex-components-tag.mjs +0 -0
  743. /package/{esm2020 → esm2022}/tag/public-api.mjs +0 -0
  744. /package/{esm2020 → esm2022}/textarea/acorex-components-textarea.mjs +0 -0
  745. /package/{esm2020 → esm2022}/textarea/public-api.mjs +0 -0
  746. /package/{esm2020 → esm2022}/textbox/acorex-components-textbox.mjs +0 -0
  747. /package/{esm2020 → esm2022}/textbox/public-api.mjs +0 -0
  748. /package/{esm2020 → esm2022}/time-box/acorex-components-time-box.mjs +0 -0
  749. /package/{esm2020 → esm2022}/time-box/public-api.mjs +0 -0
  750. /package/{esm2020 → esm2022}/toast/acorex-components-toast.mjs +0 -0
  751. /package/{esm2020 → esm2022}/toast/public-api.mjs +0 -0
  752. /package/{esm2020 → esm2022}/toast/src/toast.class.mjs +0 -0
  753. /package/{esm2020 → esm2022}/tooltip/acorex-components-tooltip.mjs +0 -0
  754. /package/{esm2020 → esm2022}/tooltip/public-api.mjs +0 -0
  755. /package/{esm2020 → esm2022}/tree-view/acorex-components-tree-view.mjs +0 -0
  756. /package/{esm2020 → esm2022}/tree-view/public-api.mjs +0 -0
  757. /package/{esm2020 → esm2022}/uploader/acorex-components-uploader.mjs +0 -0
  758. /package/{esm2020 → esm2022}/uploader/public-api.mjs +0 -0
  759. /package/{fesm2015 → fesm2022}/acorex-components.mjs.map +0 -0
@@ -0,0 +1,372 @@
1
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, } from '@angular/core';
2
+ import { AXDateTime, AXDateTimeRange } from '@acorex/core/dateTime';
3
+ import { MXInteractiveComponent, MXValueComponent } from '@acorex/components/common';
4
+ import { AXConfig } from '@acorex/core/config';
5
+ import { classes } from 'polytype';
6
+ import { MXCalendarBaseComponent } from './calendar.class';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ export class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveComponent, MXCalendarBaseComponent) {
10
+ get displayRange() {
11
+ const current = this._viewStartDate || this._today;
12
+ switch (this.activeView) {
13
+ case 'years':
14
+ // let y = current.startOf('year').year;
15
+ // let min = y - 3;
16
+ // let max = min + 11;
17
+ let y = current.startOf('year').year;
18
+ let min = y - (y % 10);
19
+ let max = min + 9;
20
+ return new AXDateTimeRange(AXDateTime.from({
21
+ year: min,
22
+ month: 1,
23
+ date: 1,
24
+ calendar: this._viewStartDate.calendar.name(),
25
+ }), AXDateTime.from({
26
+ year: max,
27
+ month: 12,
28
+ date: 28,
29
+ calendar: this._viewStartDate.calendar.name(),
30
+ }));
31
+ case 'months':
32
+ return new AXDateTimeRange(current.startOf('year'), current.endOf('year').add('day', -1));
33
+ default:
34
+ return new AXDateTimeRange(current.startOf('month'), current.endOf('month'));
35
+ }
36
+ }
37
+ _today = new AXDateTime(new Date(), this.type);
38
+ _viewStartDate;
39
+ _navText = '';
40
+ _todayText = '';
41
+ _slots = [];
42
+ _dayNames = [];
43
+ _initValues() {
44
+ this._today = new AXDateTime(new Date(), this.type);
45
+ this._dayNames = this._today.calendar.dayShortNames;
46
+ }
47
+ _refresh() {
48
+ this._initValues();
49
+ this.navTo(this.value || this._today);
50
+ }
51
+ ngOnInit() {
52
+ super.ngOnInit();
53
+ this.onValueChanged.subscribe(this._handleOnValueChanged.bind(this));
54
+ this.onOptionChanged.subscribe(this._handleOnOptionChanged.bind(this));
55
+ this._initValues();
56
+ if (!this.value)
57
+ this.goToday();
58
+ }
59
+ render() {
60
+ if (!this._viewStartDate)
61
+ return;
62
+ const vr = this.displayRange;
63
+ const applyCellClass = (slot, cellClass = this.cellClass) => {
64
+ switch (typeof cellClass) {
65
+ case 'string':
66
+ cellClass.split(' ').forEach(c => slot.cssClass[c] = true);
67
+ break;
68
+ case 'object':
69
+ Object.assign(slot.cssClass, cellClass);
70
+ break;
71
+ case 'function':
72
+ applyCellClass(slot, cellClass(slot.date));
73
+ break;
74
+ }
75
+ };
76
+ // year view
77
+ if (this.activeView == 'years') {
78
+ const a = vr.enumurate('year');
79
+ this._slots = a.map((d, i) => {
80
+ const r = {};
81
+ r.date = d.date;
82
+ //
83
+ r.text = d.format('YYYY');
84
+ r.tooltip = d.format('YYYY');
85
+ //
86
+ r.today = d.equal(this._today, 'year');
87
+ //
88
+ r.selected =
89
+ this.value &&
90
+ this.depth == 'years' &&
91
+ d.equal(this.value, 'year');
92
+ //
93
+ r.disabled =
94
+ (this.min && d.compare(this.min, 'year') == -1) ||
95
+ (this.max && d.compare(this.max, 'year') == 1);
96
+ //
97
+ if (r.disabled) {
98
+ r.cssClass = {
99
+ 'ax-state-disabled': r.disabled,
100
+ };
101
+ }
102
+ else {
103
+ r.cssClass = {
104
+ 'ax-state-today': r.today,
105
+ 'ax-state-selected': r.selected,
106
+ };
107
+ }
108
+ applyCellClass(r);
109
+ return r;
110
+ });
111
+ this._navText = `${vr.startTime.year} - ${vr.endTime.year}`;
112
+ this._todayText = this._today.format('YYYY');
113
+ }
114
+ // month view
115
+ else if (this.activeView == 'months') {
116
+ const a = vr.enumurate('month');
117
+ this._slots = a.map((d, i) => {
118
+ const r = {};
119
+ r.date = d.date;
120
+ r.text = d.format('MMM');
121
+ r.tooltip = d.format('MMMM YYYY');
122
+ r.today = d.equal(this._today, 'month');
123
+ //
124
+ r.disabled =
125
+ (this.min && d.compare(this.min, 'month') == -1) ||
126
+ (this.max && d.compare(this.max, 'month') == 1);
127
+ //
128
+ r.selected =
129
+ this.value &&
130
+ this.depth == 'months' &&
131
+ d.equal(this.value, 'month');
132
+ //
133
+ if (r.disabled) {
134
+ r.cssClass = {
135
+ 'ax-state-disabled': r.disabled,
136
+ };
137
+ }
138
+ else {
139
+ r.cssClass = {
140
+ 'ax-state-today': r.today,
141
+ 'ax-state-selected': r.selected,
142
+ 'ax-state-other': d.year != this._viewStartDate.year,
143
+ };
144
+ }
145
+ applyCellClass(r);
146
+ return r;
147
+ });
148
+ this._navText = this._viewStartDate.format('YYYY');
149
+ this._todayText = this._today.format('MMMM YYYY');
150
+ }
151
+ // day view
152
+ else {
153
+ const a = vr.enumurate('day');
154
+ this._slots = a.map((d, i) => {
155
+ const r = {};
156
+ r.date = d.date;
157
+ r.text = d.dayOfMonth;
158
+ r.tooltip = d.format();
159
+ r.today = d.equal(this._today, 'day');
160
+ r.selected = this.value && d.equal(this.value, 'day');
161
+ r.holiday = this.isHoliday(d) || this.isWeekend(d);
162
+ r.disabled =
163
+ (this.min && d.compare(this.min, 'day') == -1) ||
164
+ (this.max && d.compare(this.max, 'day') == 1) ||
165
+ this.isDisabled(d);
166
+ //
167
+ if (r.disabled) {
168
+ r.cssClass = {
169
+ 'ax-state-disabled': true,
170
+ };
171
+ }
172
+ else {
173
+ r.cssClass = {
174
+ 'ax-state-today': r.today,
175
+ 'ax-state-selected': r.selected,
176
+ 'ax-state-holiday': r.holiday
177
+ };
178
+ }
179
+ r.cssClass[`ax-col-start-${vr.startTime.dayOfWeek}`] = i == 0;
180
+ if (this.cellClass)
181
+ applyCellClass(r);
182
+ return r;
183
+ });
184
+ this._navText = this._viewStartDate.format('MMMM YYYY');
185
+ this._todayText = this._today.format();
186
+ }
187
+ this.cdr.markForCheck();
188
+ }
189
+ _handlePrevClick() {
190
+ this.isUserInteraction = true;
191
+ this.prev();
192
+ this.isUserInteraction = false;
193
+ }
194
+ _handleNextClick() {
195
+ this.isUserInteraction = true;
196
+ this.next();
197
+ this.isUserInteraction = false;
198
+ }
199
+ _handleSlotClick(e, slot) {
200
+ if (slot.disabled || this.disabled)
201
+ return;
202
+ //
203
+ this.onSlotClick.emit({
204
+ component: this,
205
+ item: slot.date,
206
+ isUserInteraction: true,
207
+ nativeEvent: e,
208
+ });
209
+ //
210
+ if (this.activeView == 'days') {
211
+ this._setDate(slot.date);
212
+ }
213
+ else if (this.activeView == 'months' && this.depth == 'days') {
214
+ this.activeView = 'days';
215
+ this.navTo(slot.date);
216
+ }
217
+ else if (this.activeView == 'months' && this.depth == 'months') {
218
+ this._setDate(slot.date);
219
+ }
220
+ else if (this.activeView == 'years' &&
221
+ (this.depth == 'days' || this.depth == 'months')) {
222
+ this.activeView = 'months';
223
+ this.navTo(slot.date);
224
+ }
225
+ else if (this.activeView == 'years' && this.depth == 'years') {
226
+ this._setDate(slot.date);
227
+ }
228
+ }
229
+ _handleNavClick(e) {
230
+ this.isUserInteraction = true;
231
+ this.toggleView();
232
+ this.isUserInteraction = false;
233
+ }
234
+ toggleView() {
235
+ if (this.activeView == 'days')
236
+ this.activeView = 'months';
237
+ else if (this.activeView == 'months')
238
+ this.activeView = 'years';
239
+ }
240
+ _handleOnOptionChanged(e) {
241
+ if (e.name == 'depth' ||
242
+ e.name == 'activeView' ||
243
+ e.name == 'disabledDates' ||
244
+ e.name == 'holidayDates') {
245
+ this.render();
246
+ }
247
+ if (e.name == 'type') {
248
+ this._refresh();
249
+ }
250
+ }
251
+ _handleOnValueChanged(e) {
252
+ this._viewStartDate = new AXDateTime(e.value, this.type);
253
+ this.render();
254
+ }
255
+ _handleGoToday() {
256
+ this.isUserInteraction = true;
257
+ this._setDate(this._today.date);
258
+ this.goToday();
259
+ this.isUserInteraction = false;
260
+ }
261
+ next() {
262
+ this._navNextPrev(false);
263
+ }
264
+ prev() {
265
+ this._navNextPrev(true);
266
+ }
267
+ focus() {
268
+ const func = (s) => this.getHostElement().querySelector(s);
269
+ const div = func('.ax-calendar-slots>div.ax-state-selected') ||
270
+ func('.ax-calendar-slots>div');
271
+ div?.focus();
272
+ }
273
+ _navNextPrev(prev) {
274
+ const sign = prev ? -1 : 1;
275
+ if (this.activeView == 'days')
276
+ this.navTo(this._viewStartDate.add('month', sign * 1));
277
+ else if (this.activeView == 'months')
278
+ this.navTo(this._viewStartDate.add('year', sign * 1));
279
+ else
280
+ this.navTo(this._viewStartDate.add('year', sign * 10));
281
+ }
282
+ goToday() {
283
+ this.navTo(this._today);
284
+ }
285
+ navTo(date) {
286
+ this._viewStartDate = AXDateTime.convert(date, this._today.calendar.name()).startOf();
287
+ const vr = this.displayRange;
288
+ this.render();
289
+ this.onNavigate.emit({
290
+ component: this,
291
+ isUserInteraction: this.isUserInteraction,
292
+ start: vr.startTime?.date,
293
+ end: vr.endTime?.date,
294
+ htmlElement: this.getHostElement(),
295
+ });
296
+ }
297
+ get __hostClass() {
298
+ const _classes = {
299
+ 'ax-state-disabled': this.disabled,
300
+ };
301
+ return Object.entries(_classes)
302
+ .filter(c => c[1])
303
+ .map(c => c[0])
304
+ .join(' ');
305
+ }
306
+ _setDate(value) {
307
+ if (this.readonly || this.disabled)
308
+ return;
309
+ this.value = AXDateTime.convert(value, this._today.calendar.name()).startOf().date;
310
+ }
311
+ isDisabled(date) {
312
+ if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {
313
+ return this.disabledDates.some(d => date.equal(d, 'day'));
314
+ }
315
+ else if (typeof this.disabledDates == 'function') {
316
+ return this.disabledDates(date.date);
317
+ }
318
+ return false;
319
+ }
320
+ isHoliday(date) {
321
+ if (Array.isArray(this.holidayDates) && this.holidayDates.length != 0) {
322
+ return this.holidayDates.some(d => date.equal(d, 'day'));
323
+ }
324
+ else if (typeof this.holidayDates == 'function') {
325
+ return this.holidayDates(date.date);
326
+ }
327
+ return false;
328
+ }
329
+ isWeekend(date) {
330
+ const weekend = AXConfig.get(`dateTime.calendars.${this.type}.weekend`);
331
+ return weekend.includes(date.dayOfWeek);
332
+ }
333
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
334
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCalendarComponent, selector: "ax-calendar", inputs: { rtl: "rtl", readonly: "readonly", value: "value", name: "name", disabled: "disabled", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", type: "type", cellTemplate: "cellTemplate", cellClass: "cellClass", showNavigation: "showNavigation" }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick" }, host: { properties: { "class": "this.__hostClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <ng-container *ngIf=\"showNavigation\">\r\n <ng-content select=\"ax-header\"></ng-content>\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #yearTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\r\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #monthTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <ng-container *ngFor=\"let slot of _slots\">\r\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #dayTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <ng-content select=\"ax-footer\"></ng-content>\r\n <!-- <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
335
+ }
336
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarComponent, decorators: [{
337
+ type: Component,
338
+ args: [{ selector: 'ax-calendar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: [
339
+ 'rtl',
340
+ 'readonly',
341
+ 'value',
342
+ 'name',
343
+ 'disabled',
344
+ 'depth',
345
+ 'activeView',
346
+ 'min',
347
+ 'max',
348
+ 'disabledDates',
349
+ 'holidayDates',
350
+ 'type',
351
+ 'cellTemplate',
352
+ 'cellClass',
353
+ 'showNavigation'
354
+ ], outputs: [
355
+ 'onOptionChanged',
356
+ 'valueChange',
357
+ 'onValueChanged',
358
+ 'onBlur',
359
+ 'onFocus',
360
+ 'depthChange',
361
+ 'typeChange',
362
+ 'activeViewChange',
363
+ 'disabledDatesChange',
364
+ 'holidayDatesChange',
365
+ 'onNavigate',
366
+ 'onSlotClick'
367
+ ], template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <ng-container *ngIf=\"showNavigation\">\r\n <ng-content select=\"ax-header\"></ng-content>\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #yearTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\r\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #monthTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <ng-container *ngFor=\"let slot of _slots\">\r\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #dayTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <ng-content select=\"ax-footer\"></ng-content>\r\n <!-- <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"] }]
368
+ }], propDecorators: { __hostClass: [{
369
+ type: HostBinding,
370
+ args: ['class']
371
+ }] } });
372
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2NhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL2NhbGVuZGFyL3NyYy9jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsV0FBVyxHQUdaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEUsT0FBTyxFQUlMLHNCQUFzQixFQUN0QixnQkFBZ0IsRUFDakIsTUFBTSwyQkFBMkIsQ0FBQztBQUduQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBd0MzRCxNQUFNLE9BQU8sbUJBQ1gsU0FDQSxPQUFPLENBQUMsQ0FBQSxnQkFBc0IsQ0FBQSxFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixDQUFDO0lBRWhGLElBQVcsWUFBWTtRQUNyQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDbkQsUUFBUSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3ZCLEtBQUssT0FBTztnQkFDVix3Q0FBd0M7Z0JBQ3hDLG1CQUFtQjtnQkFDbkIsc0JBQXNCO2dCQUN0QixJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFD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dEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYRGF0ZVRpbWUsIEFYRGF0ZVRpbWVSYW5nZSB9IGZyb20gJ0BhY29yZXgvY29yZS9kYXRlVGltZSc7XHJcbmltcG9ydCB7XHJcbiAgQVhDbGlja0V2ZW50LFxyXG4gIEFYT3B0aW9uQ2hhbmdlZEV2ZW50LFxyXG4gIEFYVmFsdWVDaGFuZ2VkRXZlbnQsXHJcbiAgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCxcclxuICBNWFZhbHVlQ29tcG9uZW50XHJcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XHJcblxyXG5cclxuaW1wb3J0IHsgQVhDb25maWcgfSBmcm9tICdAYWNvcmV4L2NvcmUvY29uZmlnJztcclxuXHJcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XHJcbmltcG9ydCB7IE1YQ2FsZW5kYXJCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9jYWxlbmRhci5jbGFzcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4LWNhbGVuZGFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBpbnB1dHM6IFtcclxuICAgICdydGwnLFxyXG4gICAgJ3JlYWRvbmx5JyxcclxuICAgICd2YWx1ZScsXHJcbiAgICAnbmFtZScsXHJcbiAgICAnZGlzYWJsZWQnLFxyXG4gICAgJ2RlcHRoJyxcclxuICAgICdhY3RpdmVWaWV3JyxcclxuICAgICdtaW4nLFxyXG4gICAgJ21heCcsXHJcbiAgICAnZGlzYWJsZWREYXRlcycsXHJcbiAgICAnaG9saWRheURhdGVzJyxcclxuICAgICd0eXBlJyxcclxuICAgICdjZWxsVGVtcGxhdGUnLFxyXG4gICAgJ2NlbGxDbGFzcycsXHJcbiAgICAnc2hvd05hdmlnYXRpb24nXHJcbiAgXSxcclxuICBvdXRwdXRzOiBbXHJcbiAgICAnb25PcHRpb25DaGFuZ2VkJyxcclxuICAgICd2YWx1ZUNoYW5nZScsXHJcbiAgICAnb25WYWx1ZUNoYW5nZWQnLFxyXG4gICAgJ29uQmx1cicsXHJcbiAgICAnb25Gb2N1cycsXHJcbiAgICAnZGVwdGhDaGFuZ2UnLFxyXG4gICAgJ3R5cGVDaGFuZ2UnLFxyXG4gICAgJ2FjdGl2ZVZpZXdDaGFuZ2UnLFxyXG4gICAgJ2Rpc2FibGVkRGF0ZXNDaGFuZ2UnLFxyXG4gICAgJ2hvbGlkYXlEYXRlc0NoYW5nZScsXHJcbiAgICAnb25OYXZpZ2F0ZScsXHJcbiAgICAnb25TbG90Q2xpY2snXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhDYWxlbmRhckNvbXBvbmVudFxyXG4gIGV4dGVuZHNcclxuICBjbGFzc2VzKE1YVmFsdWVDb21wb25lbnQ8RGF0ZT4sIE1YSW50ZXJhY3RpdmVDb21wb25lbnQsIE1YQ2FsZW5kYXJCYXNlQ29tcG9uZW50KVxyXG57XHJcbiAgcHVibGljIGdldCBkaXNwbGF5UmFuZ2UoKTogQVhEYXRlVGltZVJhbmdlIHtcclxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLl92aWV3U3RhcnREYXRlIHx8IHRoaXMuX3RvZGF5O1xyXG4gICAgc3dpdGNoICh0aGlzLmFjdGl2ZVZpZXcpIHtcclxuICAgICAgY2FzZSAneWVhcnMnOlxyXG4gICAgICAgIC8vIGxldCB5ID0gY3VycmVudC5zdGFydE9mKCd5ZWFyJykueWVhcjtcclxuICAgICAgICAvLyBsZXQgbWluID0geSAtIDM7XHJcbiAgICAgICAgLy8gbGV0IG1heCA9IG1pbiArIDExO1xyXG4gICAgICAgIGxldCB5ID0gY3VycmVudC5zdGFydE9mKCd5ZWFyJykueWVhcjtcclxuICAgICAgICBsZXQgbWluID0geSAtICh5ICUgMTApO1xyXG4gICAgICAgIGxldCBtYXggPSBtaW4gKyA5O1xyXG4gICAgICAgIHJldHVybiBuZXcgQVhEYXRlVGltZVJhbmdlKFxyXG4gICAgICAgICAgQVhEYXRlVGltZS5mcm9tKHtcclxuICAgICAgICAgICAgeWVhcjogbWluLFxyXG4gICAgICAgICAgICBtb250aDogMSxcclxuICAgICAgICAgICAgZGF0ZTogMSxcclxuICAgICAgICAgICAgY2FsZW5kYXI6IHRoaXMuX3ZpZXdTdGFydERhdGUuY2FsZW5kYXIubmFtZSgpLFxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBBWERhdGVUaW1lLmZyb20oe1xyXG4gICAgICAgICAgICB5ZWFyOiBtYXgsXHJcbiAgICAgICAgICAgIG1vbnRoOiAxMixcclxuICAgICAgICAgICAgZGF0ZTogMjgsXHJcbiAgICAgICAgICAgIGNhbGVuZGFyOiB0aGlzLl92aWV3U3RhcnREYXRlLmNhbGVuZGFyLm5hbWUoKSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgY2FzZSAnbW9udGhzJzpcclxuICAgICAgICByZXR1cm4gbmV3IEFYRGF0ZVRpbWVSYW5nZShcclxuICAgICAgICAgIGN1cnJlbnQuc3RhcnRPZigneWVhcicpLFxyXG4gICAgICAgICAgY3VycmVudC5lbmRPZigneWVhcicpLmFkZCgnZGF5JywgLTEpXHJcbiAgICAgICAgKTtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gbmV3IEFYRGF0ZVRpbWVSYW5nZShcclxuICAgICAgICAgIGN1cnJlbnQuc3RhcnRPZignbW9udGgnKSxcclxuICAgICAgICAgIGN1cnJlbnQuZW5kT2YoJ21vbnRoJylcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF90b2RheSA9IG5ldyBBWERhdGVUaW1lKG5ldyBEYXRlKCksIHRoaXMudHlwZSk7XHJcbiAgcHJpdmF0ZSBfdmlld1N0YXJ0RGF0ZSE6IEFYRGF0ZVRpbWU7XHJcblxyXG4gIHByb3RlY3RlZCBfbmF2VGV4dDogc3RyaW5nID0gJyc7XHJcbiAgcHJvdGVjdGVkIF90b2RheVRleHQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICBwcm90ZWN0ZWQgX3Nsb3RzOiBhbnlbXSA9IFtdO1xyXG4gIHByb3RlY3RlZCBfZGF5TmFtZXM6IHN0cmluZ1tdID0gW107XHJcblxyXG5cclxuICBwcml2YXRlIF9pbml0VmFsdWVzKCkge1xyXG4gICAgdGhpcy5fdG9kYXkgPSBuZXcgQVhEYXRlVGltZShuZXcgRGF0ZSgpLCB0aGlzLnR5cGUpO1xyXG4gICAgdGhpcy5fZGF5TmFtZXMgPSB0aGlzLl90b2RheS5jYWxlbmRhci5kYXlTaG9ydE5hbWVzO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVmcmVzaCgpIHtcclxuICAgIHRoaXMuX2luaXRWYWx1ZXMoKTtcclxuICAgIHRoaXMubmF2VG8odGhpcy52YWx1ZSB8fCB0aGlzLl90b2RheSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgbmdPbkluaXQoKSB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5vblZhbHVlQ2hhbmdlZC5zdWJzY3JpYmUodGhpcy5faGFuZGxlT25WYWx1ZUNoYW5nZWQuYmluZCh0aGlzKSk7XHJcbiAgICB0aGlzLm9uT3B0aW9uQ2hhbmdlZC5zdWJzY3JpYmUodGhpcy5faGFuZGxlT25PcHRpb25DaGFuZ2VkLmJpbmQodGhpcykpO1xyXG4gICAgdGhpcy5faW5pdFZhbHVlcygpO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB0aGlzLmdvVG9kYXkoKTtcclxuICB9XHJcblxyXG5cclxuICByZW5kZXIoKSB7XHJcbiAgICBpZiAoIXRoaXMuX3ZpZXdTdGFydERhdGUpIHJldHVybjtcclxuICAgIGNvbnN0IHZyID0gdGhpcy5kaXNwbGF5UmFuZ2U7XHJcbiAgICBjb25zdCBhcHBseUNlbGxDbGFzcyA9IChzbG90OiBhbnksIGNlbGxDbGFzczogYW55ID0gdGhpcy5jZWxsQ2xhc3MpID0+IHtcclxuICAgICAgc3dpdGNoICh0eXBlb2YgY2VsbENsYXNzKSB7XHJcbiAgICAgICAgY2FzZSAnc3RyaW5nJzpcclxuICAgICAgICAgIGNlbGxDbGFzcy5zcGxpdCgnICcpLmZvckVhY2goYyA9PiBzbG90LmNzc0NsYXNzW2NdID0gdHJ1ZSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdvYmplY3QnOlxyXG4gICAgICAgICAgT2JqZWN0LmFzc2lnbihzbG90LmNzc0NsYXNzLCBjZWxsQ2xhc3MpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnZnVuY3Rpb24nOlxyXG4gICAgICAgICAgYXBwbHlDZWxsQ2xhc3Moc2xvdCwgY2VsbENsYXNzKHNsb3QuZGF0ZSkpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIHllYXIgdmlld1xyXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldyA9PSAneWVhcnMnKSB7XHJcbiAgICAgIGNvbnN0IGEgPSB2ci5lbnVtdXJhdGUoJ3llYXInKTtcclxuICAgICAgdGhpcy5fc2xvdHMgPSBhLm1hcCgoZCwgaSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHI6IGFueSA9IHt9O1xyXG4gICAgICAgIHIuZGF0ZSA9IGQuZGF0ZTtcclxuICAgICAgICAvL1xyXG4gICAgICAgIHIudGV4dCA9IGQuZm9ybWF0KCdZWVlZJyk7XHJcbiAgICAgICAgci50b29sdGlwID0gZC5mb3JtYXQoJ1lZWVknKTtcclxuICAgICAgICAvL1xyXG4gICAgICAgIHIudG9kYXkgPSBkLmVxdWFsKHRoaXMuX3RvZGF5LCAneWVhcicpO1xyXG4gICAgICAgIC8vXHJcbiAgICAgICAgci5zZWxlY3RlZCA9XHJcbiAgICAgICAgICB0aGlzLnZhbHVlICYmXHJcbiAgICAgICAgICB0aGlzLmRlcHRoID09ICd5ZWFycycgJiZcclxuICAgICAgICAgIGQuZXF1YWwodGhpcy52YWx1ZSwgJ3llYXInKVxyXG4gICAgICAgIC8vXHJcbiAgICAgICAgci5kaXNhYmxlZCA9XHJcbiAgICAgICAgICAodGhpcy5taW4gJiYgZC5jb21wYXJlKHRoaXMubWluLCAneWVhcicpID09IC0xKSB8fFxyXG4gICAgICAgICAgKHRoaXMubWF4ICYmIGQuY29tcGFyZSh0aGlzLm1heCwgJ3llYXInKSA9PSAxKTtcclxuICAgICAgICAvL1xyXG4gICAgICAgIGlmIChyLmRpc2FibGVkKSB7XHJcbiAgICAgICAgICByLmNzc0NsYXNzID0ge1xyXG4gICAgICAgICAgICAnYXgtc3RhdGUtZGlzYWJsZWQnOiByLmRpc2FibGVkLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgci5jc3NDbGFzcyA9IHtcclxuICAgICAgICAgICAgJ2F4LXN0YXRlLXRvZGF5Jzogci50b2RheSxcclxuICAgICAgICAgICAgJ2F4LXN0YXRlLXNlbGVjdGVkJzogci5zZWxlY3RlZCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFwcGx5Q2VsbENsYXNzKHIpO1xyXG4gICAgICAgIHJldHVybiByO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5fbmF2VGV4dCA9IGAke3ZyLnN0YXJ0VGltZS55ZWFyfSAtICR7dnIuZW5kVGltZS55ZWFyfWA7XHJcbiAgICAgIHRoaXMuX3RvZGF5VGV4dCA9IHRoaXMuX3RvZGF5LmZvcm1hdCgnWVlZWScpO1xyXG4gICAgfVxyXG4gICAgLy8gbW9udGggdmlld1xyXG4gICAgZWxzZSBpZiAodGhpcy5hY3RpdmVWaWV3ID09ICdtb250aHMnKSB7XHJcbiAgICAgIGNvbnN0IGEgPSB2ci5lbnVtdXJhdGUoJ21vbnRoJyk7XHJcbiAgICAgIHRoaXMuX3Nsb3RzID0gYS5tYXAoKGQsIGkpID0+IHtcclxuICAgICAgICBjb25zdCByOiBhbnkgPSB7fTtcclxuICAgICAgICByLmRhdGUgPSBkLmRhdGU7XHJcbiAgICAgICAgci50ZXh0ID0gZC5mb3JtYXQoJ01NTScpO1xyXG4gICAgICAgIHIudG9vbHRpcCA9IGQuZm9ybWF0KCdNTU1NIFlZWVknKTtcclxuICAgICAgICByLnRvZGF5ID0gZC5lcXVhbCh0aGlzLl90b2RheSwgJ21vbnRoJyk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICByLmRpc2FibGVkID1cclxuICAgICAgICAgICh0aGlzLm1pbiAmJiBkLmNvbXBhcmUodGhpcy5taW4sICdtb250aCcpID09IC0xKSB8fFxyXG4gICAgICAgICAgKHRoaXMubWF4ICYmIGQuY29tcGFyZSh0aGlzLm1heCwgJ21vbnRoJykgPT0gMSk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICByLnNlbGVjdGVkID1cclxuICAgICAgICAgIHRoaXMudmFsdWUgJiZcclxuICAgICAgICAgIHRoaXMuZGVwdGggPT0gJ21vbnRocycgJiZcclxuICAgICAgICAgIGQuZXF1YWwodGhpcy52YWx1ZSwgJ21vbnRoJyk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICBpZiAoci5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgci5jc3NDbGFzcyA9IHtcclxuICAgICAgICAgICAgJ2F4LXN0YXRlLWRpc2FibGVkJzogci5kaXNhYmxlZCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHIuY3NzQ2xhc3MgPSB7XHJcbiAgICAgICAgICAgICdheC1zdGF0ZS10b2RheSc6IHIudG9kYXksXHJcbiAgICAgICAgICAgICdheC1zdGF0ZS1zZWxlY3RlZCc6IHIuc2VsZWN0ZWQsXHJcbiAgICAgICAgICAgICdheC1zdGF0ZS1vdGhlcic6IGQueWVhciAhPSB0aGlzLl92aWV3U3RhcnREYXRlLnllYXIsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhcHBseUNlbGxDbGFzcyhyKTtcclxuICAgICAgICByZXR1cm4gcjtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuX25hdlRleHQgPSB0aGlzLl92aWV3U3RhcnREYXRlLmZvcm1hdCgnWVlZWScpO1xyXG4gICAgICB0aGlzLl90b2RheVRleHQgPSB0aGlzLl90b2RheS5mb3JtYXQoJ01NTU0gWVlZWScpO1xyXG4gICAgfVxyXG4gICAgLy8gZGF5IHZpZXdcclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zdCBhID0gdnIuZW51bXVyYXRlKCdkYXknKTtcclxuICAgICAgdGhpcy5fc2xvdHMgPSBhLm1hcCgoZCwgaSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHI6IGFueSA9IHt9O1xyXG4gICAgICAgIHIuZGF0ZSA9IGQuZGF0ZTtcclxuICAgICAgICByLnRleHQgPSBkLmRheU9mTW9udGg7XHJcbiAgICAgICAgci50b29sdGlwID0gZC5mb3JtYXQoKTtcclxuICAgICAgICByLnRvZGF5ID0gZC5lcXVhbCh0aGlzLl90b2RheSwgJ2RheScpO1xyXG4gICAgICAgIHIuc2VsZWN0ZWQgPSB0aGlzLnZhbHVlICYmIGQuZXF1YWwodGhpcy52YWx1ZSwgJ2RheScpO1xyXG4gICAgICAgIHIuaG9saWRheSA9IHRoaXMuaXNIb2xpZGF5KGQpIHx8IHRoaXMuaXNXZWVrZW5kKGQpO1xyXG4gICAgICAgIHIuZGlzYWJsZWQgPVxyXG4gICAgICAgICAgKHRoaXMubWluICYmIGQuY29tcGFyZSh0aGlzLm1pbiwgJ2RheScpID09IC0xKSB8fFxyXG4gICAgICAgICAgKHRoaXMubWF4ICYmIGQuY29tcGFyZSh0aGlzLm1heCwgJ2RheScpID09IDEpIHx8XHJcbiAgICAgICAgICB0aGlzLmlzRGlzYWJsZWQoZCk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICBpZiAoci5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgci5jc3NDbGFzcyA9IHtcclxuICAgICAgICAgICAgJ2F4LXN0YXRlLWRpc2FibGVkJzogdHJ1ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHIuY3NzQ2xhc3MgPSB7XHJcbiAgICAgICAgICAgICdheC1zdGF0ZS10b2RheSc6IHIudG9kYXksXHJcbiAgICAgICAgICAgICdheC1zdGF0ZS1zZWxlY3RlZCc6IHIuc2VsZWN0ZWQsXHJcbiAgICAgICAgICAgICdheC1zdGF0ZS1ob2xpZGF5Jzogci5ob2xpZGF5XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICByLmNzc0NsYXNzW2BheC1jb2wtc3RhcnQtJHt2ci5zdGFydFRpbWUuZGF5T2ZXZWVrfWBdID0gaSA9PSAwO1xyXG4gICAgICAgIGlmICh0aGlzLmNlbGxDbGFzcylcclxuICAgICAgICAgIGFwcGx5Q2VsbENsYXNzKHIpO1xyXG4gICAgICAgIHJldHVybiByO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5fbmF2VGV4dCA9IHRoaXMuX3ZpZXdTdGFydERhdGUuZm9ybWF0KCdNTU1NIFlZWVknKTtcclxuICAgICAgdGhpcy5fdG9kYXlUZXh0ID0gdGhpcy5fdG9kYXkuZm9ybWF0KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfaGFuZGxlUHJldkNsaWNrKCkge1xyXG4gICAgdGhpcy5pc1VzZXJJbnRlcmFjdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLnByZXYoKTtcclxuICAgIHRoaXMuaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfaGFuZGxlTmV4dENsaWNrKCkge1xyXG4gICAgdGhpcy5pc1VzZXJJbnRlcmFjdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLm5leHQoKTtcclxuICAgIHRoaXMuaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfaGFuZGxlU2xvdENsaWNrKGU6IE1vdXNlRXZlbnQsIHNsb3QpIHtcclxuICAgIGlmIChzbG90LmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQpIHJldHVybjtcclxuICAgIC8vXHJcbiAgICB0aGlzLm9uU2xvdENsaWNrLmVtaXQoe1xyXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgIGl0ZW06IHNsb3QuZGF0ZSxcclxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IHRydWUsXHJcbiAgICAgIG5hdGl2ZUV2ZW50OiBlLFxyXG4gICAgfSk7XHJcbiAgICAvL1xyXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldyA9PSAnZGF5cycpIHtcclxuICAgICAgdGhpcy5fc2V0RGF0ZShzbG90LmRhdGUpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmFjdGl2ZVZpZXcgPT0gJ21vbnRocycgJiYgdGhpcy5kZXB0aCA9PSAnZGF5cycpIHtcclxuICAgICAgdGhpcy5hY3RpdmVWaWV3ID0gJ2RheXMnO1xyXG4gICAgICB0aGlzLm5hdlRvKHNsb3QuZGF0ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVmlldyA9PSAnbW9udGhzJyAmJiB0aGlzLmRlcHRoID09ICdtb250aHMnKSB7XHJcbiAgICAgIHRoaXMuX3NldERhdGUoc2xvdC5kYXRlKTtcclxuICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgIHRoaXMuYWN0aXZlVmlldyA9PSAneWVhcnMnICYmXHJcbiAgICAgICh0aGlzLmRlcHRoID09ICdkYXlzJyB8fCB0aGlzLmRlcHRoID09ICdtb250aHMnKVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlVmlldyA9ICdtb250aHMnO1xyXG4gICAgICB0aGlzLm5hdlRvKHNsb3QuZGF0ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVmlldyA9PSAneWVhcnMnICYmIHRoaXMuZGVwdGggPT0gJ3llYXJzJykge1xyXG4gICAgICB0aGlzLl9zZXREYXRlKHNsb3QuZGF0ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2hhbmRsZU5hdkNsaWNrKGU6IEFYQ2xpY2tFdmVudCB8IGFueSkge1xyXG4gICAgdGhpcy5pc1VzZXJJbnRlcmFjdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLnRvZ2dsZVZpZXcoKTtcclxuICAgIHRoaXMuaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVWaWV3KCkge1xyXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldyA9PSAnZGF5cycpXHJcbiAgICAgIHRoaXMuYWN0aXZlVmlldyA9ICdtb250aHMnO1xyXG4gICAgZWxzZSBpZiAodGhpcy5hY3RpdmVWaWV3ID09ICdtb250aHMnKVxyXG4gICAgICB0aGlzLmFjdGl2ZVZpZXcgPSAneWVhcnMnO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9oYW5kbGVPbk9wdGlvbkNoYW5nZWQoZTogQVhPcHRpb25DaGFuZ2VkRXZlbnQpIHtcclxuICAgIGlmIChcclxuICAgICAgZS5uYW1lID09ICdkZXB0aCcgfHxcclxuICAgICAgZS5uYW1lID09ICdhY3RpdmVWaWV3JyB8fFxyXG4gICAgICBlLm5hbWUgPT0gJ2Rpc2FibGVkRGF0ZXMnIHx8XHJcbiAgICAgIGUubmFtZSA9PSAnaG9saWRheURhdGVzJ1xyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoZS5uYW1lID09ICd0eXBlJykge1xyXG4gICAgICB0aGlzLl9yZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVPblZhbHVlQ2hhbmdlZChlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50KSB7XHJcbiAgICB0aGlzLl92aWV3U3RhcnREYXRlID0gbmV3IEFYRGF0ZVRpbWUoZS52YWx1ZSwgdGhpcy50eXBlKTtcclxuICAgIHRoaXMucmVuZGVyKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2hhbmRsZUdvVG9kYXkoKSB7XHJcbiAgICB0aGlzLmlzVXNlckludGVyYWN0aW9uID0gdHJ1ZTtcclxuICAgIHRoaXMuX3NldERhdGUodGhpcy5fdG9kYXkuZGF0ZSk7XHJcbiAgICB0aGlzLmdvVG9kYXkoKTtcclxuICAgIHRoaXMuaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIG5leHQoKSB7XHJcbiAgICB0aGlzLl9uYXZOZXh0UHJldihmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBwcmV2KCkge1xyXG4gICAgdGhpcy5fbmF2TmV4dFByZXYodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBmb2N1cygpIHtcclxuICAgIGNvbnN0IGZ1bmMgPSAoczogc3RyaW5nKSA9PiB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4ocyk7XHJcbiAgICBjb25zdCBkaXYgPVxyXG4gICAgICBmdW5jKCcuYXgtY2FsZW5kYXItc2xvdHM+ZGl2LmF4LXN0YXRlLXNlbGVjdGVkJykgfHxcclxuICAgICAgZnVuYygnLmF4LWNhbGVuZGFyLXNsb3RzPmRpdicpO1xyXG4gICAgZGl2Py5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbmF2TmV4dFByZXYocHJldjogYm9vbGVhbikge1xyXG4gICAgY29uc3Qgc2lnbiA9IHByZXYgPyAtMSA6IDE7XHJcbiAgICBpZiAodGhpcy5hY3RpdmVWaWV3ID09ICdkYXlzJylcclxuICAgICAgdGhpcy5uYXZUbyh0aGlzLl92aWV3U3RhcnREYXRlLmFkZCgnbW9udGgnLCBzaWduICogMSkpO1xyXG4gICAgZWxzZSBpZiAodGhpcy5hY3RpdmVWaWV3ID09ICdtb250aHMnKVxyXG4gICAgICB0aGlzLm5hdlRvKHRoaXMuX3ZpZXdTdGFydERhdGUuYWRkKCd5ZWFyJywgc2lnbiAqIDEpKTtcclxuICAgIGVsc2UgdGhpcy5uYXZUbyh0aGlzLl92aWV3U3RhcnREYXRlLmFkZCgneWVhcicsIHNpZ24gKiAxMCkpO1xyXG4gIH1cclxuXHJcbiAgZ29Ub2RheSgpIHtcclxuICAgIHRoaXMubmF2VG8odGhpcy5fdG9kYXkpO1xyXG4gIH1cclxuXHJcbiAgbmF2VG8oZGF0ZTogRGF0ZSB8IEFYRGF0ZVRpbWUpIHtcclxuICAgIHRoaXMuX3ZpZXdTdGFydERhdGUgPSBBWERhdGVUaW1lLmNvbnZlcnQoXHJcbiAgICAgIGRhdGUsXHJcbiAgICAgIHRoaXMuX3RvZGF5LmNhbGVuZGFyLm5hbWUoKVxyXG4gICAgKS5zdGFydE9mKCk7XHJcbiAgICBjb25zdCB2ciA9IHRoaXMuZGlzcGxheVJhbmdlO1xyXG4gICAgdGhpcy5yZW5kZXIoKTtcclxuICAgIHRoaXMub25OYXZpZ2F0ZS5lbWl0KHtcclxuICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogdGhpcy5pc1VzZXJJbnRlcmFjdGlvbixcclxuICAgICAgc3RhcnQ6IHZyLnN0YXJ0VGltZT8uZGF0ZSxcclxuICAgICAgZW5kOiB2ci5lbmRUaW1lPy5kYXRlLFxyXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICBwcml2YXRlIGdldCBfX2hvc3RDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgX2NsYXNzZXMgPSB7XHJcbiAgICAgICdheC1zdGF0ZS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKF9jbGFzc2VzKVxyXG4gICAgICAuZmlsdGVyKGMgPT4gY1sxXSlcclxuICAgICAgLm1hcChjID0+IGNbMF0pXHJcbiAgICAgIC5qb2luKCcgJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXREYXRlKHZhbHVlOiBEYXRlKSB7XHJcbiAgICBpZiAodGhpcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkKSByZXR1cm47XHJcbiAgICB0aGlzLnZhbHVlID0gQVhEYXRlVGltZS5jb252ZXJ0KFxyXG4gICAgICB2YWx1ZSxcclxuICAgICAgdGhpcy5fdG9kYXkuY2FsZW5kYXIubmFtZSgpXHJcbiAgICApLnN0YXJ0T2YoKS5kYXRlO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGlzRGlzYWJsZWQoZGF0ZTogQVhEYXRlVGltZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5kaXNhYmxlZERhdGVzKSAmJiB0aGlzLmRpc2FibGVkRGF0ZXMubGVuZ3RoICE9IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWREYXRlcy5zb21lKGQgPT4gZGF0ZS5lcXVhbChkLCAnZGF5JykpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5kaXNhYmxlZERhdGVzID09ICdmdW5jdGlvbicpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWREYXRlcyhkYXRlLmRhdGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGlzSG9saWRheShkYXRlOiBBWERhdGVUaW1lKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmhvbGlkYXlEYXRlcykgJiYgdGhpcy5ob2xpZGF5RGF0ZXMubGVuZ3RoICE9IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaG9saWRheURhdGVzLnNvbWUoZCA9PiBkYXRlLmVxdWFsKGQsICdkYXknKSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLmhvbGlkYXlEYXRlcyA9PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmhvbGlkYXlEYXRlcyhkYXRlLmRhdGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGlzV2Vla2VuZChkYXRlOiBBWERhdGVUaW1lKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCB3ZWVrZW5kID0gQVhDb25maWcuZ2V0KFxyXG4gICAgICBgZGF0ZVRpbWUuY2FsZW5kYXJzLiR7dGhpcy50eXBlfS53ZWVrZW5kYFxyXG4gICAgKSBhcyBudW1iZXJbXTtcclxuICAgIHJldHVybiB3ZWVrZW5kLmluY2x1ZGVzKGRhdGUuZGF5T2ZXZWVrKTtcclxuICB9XHJcblxyXG4gIC8vIHByb3RlY3RlZCBfcGlja2VyRGF5czogbnVtYmVyW10gPSBbXTtcclxuICAvLyBwcm90ZWN0ZWQgX3BpY2tlck1vbnRoczogeyB0ZXh0OiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfVtdID0gW107XHJcbiAgLy8gcHJvdGVjdGVkIF9waWNrZXJZZWFyczogbnVtYmVyW10gPSBbXTtcclxuXHJcbiAgLy8gcHJpdmF0ZSBfZ2VuZXJhdGVQaWNrZXJJdGVtcyh2aWV3KSB7XHJcbiAgLy8gICBzd2l0Y2ggKHZpZXcpIHtcclxuICAvLyAgICAgY2FzZSAneWVhcic6XHJcbiAgLy8gICAgICAgdGhpcy5fcGlja2VyWWVhcnMgPSByYW5nZSgyMDAwLCAyMDUwLCAxKTtcclxuICAvLyAgICAgICBicmVhaztcclxuICAvLyAgICAgY2FzZSAnbW9udGgnOlxyXG4gIC8vICAgICAgIHRoaXMuX3BpY2tlck1vbnRocyA9IG5ldyBBWERhdGVUaW1lUmFuZ2UoXHJcbiAgLy8gICAgICAgICB0aGlzLmRpc3BsYXlSYW5nZS5zdGFydFRpbWUuc3RhcnRPZigneWVhcicpLFxyXG4gIC8vICAgICAgICAgdGhpcy5kaXNwbGF5UmFuZ2Uuc3RhcnRUaW1lLmVuZE9mKCd5ZWFyJylcclxuICAvLyAgICAgICApXHJcbiAgLy8gICAgICAgICAuZW51bXVyYXRlKCdtb250aCcpXHJcbiAgLy8gICAgICAgICAubWFwKGMgPT4gKHtcclxuICAvLyAgICAgICAgICAgdGV4dDogYy5mb3JtYXQoJ01NTScpLFxyXG4gIC8vICAgICAgICAgICB2YWx1ZTogYy5tb250aE9mWWVhcixcclxuICAvLyAgICAgICAgIH0pKTtcclxuICAvLyAgICAgICBicmVhaztcclxuICAvLyAgICAgZGVmYXVsdDpcclxuICAvLyAgICAgICB0aGlzLl9waWNrZXJEYXlzID0gbmV3IEFYRGF0ZVRpbWVSYW5nZShcclxuICAvLyAgICAgICAgIHRoaXMuZGlzcGxheVJhbmdlLnN0YXJ0VGltZS5zdGFydE9mKCdtb250aCcpLFxyXG4gIC8vICAgICAgICAgdGhpcy5kaXNwbGF5UmFuZ2Uuc3RhcnRUaW1lLmVuZE9mKCdtb250aCcpXHJcbiAgLy8gICAgICAgKVxyXG4gIC8vICAgICAgICAgLmVudW11cmF0ZSgnZGF5JylcclxuICAvLyAgICAgICAgIC5tYXAoYyA9PiBjLmRheU9mTW9udGgpO1xyXG4gIC8vICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAvLyAgICAgICBicmVhaztcclxuICAvLyAgIH1cclxuICAvLyB9XHJcblxyXG4gIC8vIHByb3RlY3RlZCBfaGFuZGxlUGlja2VyQ2hhbmdlKGl0ZW06IGFueSwgdmlldykge1xyXG4gIC8vICAgaWYgKCFpdGVtKSByZXR1cm47XHJcbiAgLy8gICBjb25zdCBkYXRlID0gdGhpcy5kaXNwbGF5UmFuZ2Uuc3RhcnRUaW1lO1xyXG4gIC8vICAgc3dpdGNoICh2aWV3KSB7XHJcbiAgLy8gICAgIGNhc2UgJ3llYXInOlxyXG4gIC8vICAgICAgIHRoaXMuX3NldERhdGUoZGF0ZS5zZXQoJ3llYXInLCBpdGVtLnZhbHVlKS5kYXRlKTtcclxuICAvLyAgICAgICBicmVhaztcclxuICAvLyAgICAgY2FzZSAnbW9udGgnOlxyXG4gIC8vICAgICAgIHRoaXMuX3NldERhdGUoZGF0ZS5zZXQoJ21vbnRoJywgaXRlbS52YWx1ZS52YWx1ZSkuZGF0ZSk7XHJcbiAgLy8gICAgICAgdGhpcy5fZ2VuZXJhdGVQaWNrZXJJdGVtcygnZGF5Jyk7XHJcbiAgLy8gICAgICAgYnJlYWs7XHJcbiAgLy8gICAgIGRlZmF1bHQ6XHJcbiAgLy8gICAgICAgdGhpcy5fc2V0RGF0ZShkYXRlLnNldCgnZGF5JywgaXRlbS52YWx1ZSkuZGF0ZSk7XHJcbiAgLy8gICAgICAgYnJlYWs7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpbnRlcmZhY2UgPT09ICdjYWxlbmRhcic7IGVsc2UgcGlja2VyVGVtcGxhdGVcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd05hdmlnYXRpb25cIj5cclxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWhlYWRlclwiPjwvbmctY29udGVudD5cclxuICAgIDxkaXYgY2xhc3M9XCJheC1jYWxlbmRhci1oZWFkZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLWhlYWRlci1pbmZvXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFjdGl2ZVZpZXcgPT0gJ2RheXMnOyBlbHNlIGVsc2VUZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgPGJ1dHRvbiBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiIGNsYXNzPVwiYXgtZ2VuZXJhbC1idXR0b25cIiAoY2xpY2spPVwiX2hhbmRsZU5hdkNsaWNrKCRldmVudClcIj5cclxuICAgICAgICAgICAge3sgX25hdlRleHQuc3BsaXQoJyAnKVsxXSB9fVxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCIgY2xhc3M9XCJheC1nZW5lcmFsLWJ1dHRvblwiIChjbGljayk9XCJfaGFuZGxlTmF2Q2xpY2soJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICB7eyBfbmF2VGV4dC5zcGxpdCgnICcpWzBdIH19XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VUZW1wbGF0ZT5cclxuICAgICAgICAgIDxidXR0b24gW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnJyA6IG51bGxcIiBjbGFzcz1cImF4LWdlbmVyYWwtYnV0dG9uXCIgKGNsaWNrKT1cIl9oYW5kbGVOYXZDbGljaygkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgIHt7IF9uYXZUZXh0IH19XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLWhlYWRlci1idXR0b25zXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiIGNsYXNzPVwiYXgtZ2VuZXJhbC1idXR0b24gYXgtYnV0dG9uLWljb25cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIl9oYW5kbGVQcmV2Q2xpY2soKVwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uXCIgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICdheC1pY29uLWNoZXZyb24tbGVmdCc6ICFydGwsXHJcbiAgICAgICAgICAgICAgJ2F4LWljb24tY2hldnJvbi1yaWdodCc6IHJ0bFxyXG4gICAgICAgICAgICB9XCI+PC9pPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnJyA6IG51bGxcIiBjbGFzcz1cImF4LWdlbmVyYWwtYnV0dG9uIGF4LWJ1dHRvbi1pY29uXCJcclxuICAgICAgICAgIChjbGljayk9XCJfaGFuZGxlTmV4dENsaWNrKClcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvblwiIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAnYXgtaWNvbi1jaGV2cm9uLWxlZnQnOiBydGwsXHJcbiAgICAgICAgICAgICAgJ2F4LWljb24tY2hldnJvbi1yaWdodCc6ICFydGxcclxuICAgICAgICAgICAgfVwiPjwvaT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwiYXgtY2FsZW5kYXItYm9keVwiPlxyXG4gICAgPGRpdiBbbmdTd2l0Y2hdPVwiYWN0aXZlVmlld1wiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIneWVhcnMnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLXNsb3RzIGF4LWNhbGVuZGFyLXNsb3RzLXllYXJcIiBbbmdDbGFzc109XCJ7J2F4LWRlZmF1bHQnOiFjZWxsVGVtcGxhdGV9XCI+XHJcbiAgICAgICAgICA8ZGl2IHRhYmluZGV4PVwiMFwiICpuZ0Zvcj1cImxldCBzbG90IG9mIF9zbG90c1wiIGNsYXNzPVwiYXgtY2FsZW5kYXItc2xvdFwiIFtuZ0NsYXNzXT1cInNsb3QuY3NzQ2xhc3NcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiX2hhbmRsZVNsb3RDbGljaygkZXZlbnQsIHNsb3QpXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjZWxsVGVtcGxhdGU7IGVsc2UgeWVhclRwbFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNlbGxUZW1wbGF0ZTtjb250ZXh0OiB7ICRpbXBsaWNpdDoge3Nsb3Q6c2xvdH0gfVwiPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3llYXJUcGw+XHJcbiAgICAgICAgICAgICAgPGRpdiBbdGl0bGVdPVwic2xvdC50b29sdGlwXCIgPlxyXG4gICAgICAgICAgICAgICAge3sgc2xvdC50ZXh0IH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtb250aHMnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLXNsb3RzIGF4LWNhbGVuZGFyLXNsb3RzLW1vbnRoXCIgW25nQ2xhc3NdPVwieydheC1kZWZhdWx0JzohY2VsbFRlbXBsYXRlfVwiPlxyXG4gICAgICAgICAgPGRpdiB0YWJpbmRleD1cIjBcIiAqbmdGb3I9XCJsZXQgc2xvdCBvZiBfc2xvdHNcIiAgY2xhc3M9XCJheC1jYWxlbmRhci1zbG90XCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwic2xvdC5jc3NDbGFzc1wiIChjbGljayk9XCJfaGFuZGxlU2xvdENsaWNrKCRldmVudCwgc2xvdClcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNlbGxUZW1wbGF0ZTsgZWxzZSBtb250aFRwbFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNlbGxUZW1wbGF0ZTtjb250ZXh0OiB7ICRpbXBsaWNpdDoge3Nsb3Q6c2xvdH0gfVwiPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI21vbnRoVHBsPlxyXG4gICAgICAgICAgICAgIDxkaXYgW3RpdGxlXT1cInNsb3QudG9vbHRpcFwiID5cclxuICAgICAgICAgICAgICAgIHt7IHNsb3QudGV4dCB9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLXdlZWtcIj5cclxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGQgb2YgX2RheU5hbWVzXCI+e3sgZCB9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1jYWxlbmRhci1zbG90cyBheC1jYWxlbmRhci1zbG90cy1kYXlcIiBbbmdDbGFzc109XCJ7J2F4LWRlZmF1bHQnOiFjZWxsVGVtcGxhdGV9XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzbG90IG9mIF9zbG90c1wiPlxyXG4gICAgICAgICAgICA8ZGl2IHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiYXgtY2FsZW5kYXItc2xvdFwiIFtuZ0NsYXNzXT1cInNsb3QuY3NzQ2xhc3NcIiAgXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIl9oYW5kbGVTbG90Q2xpY2soJGV2ZW50LCBzbG90KVwiPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjZWxsVGVtcGxhdGU7IGVsc2UgZGF5VHBsXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ID5cclxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNlbGxUZW1wbGF0ZTtjb250ZXh0OiB7ICRpbXBsaWNpdDoge3Nsb3Q6c2xvdH0gfVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGF5VHBsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBbdGl0bGVdPVwic2xvdC50b29sdGlwXCIgPlxyXG4gICAgICAgICAgICAgICAgICB7eyBzbG90LnRleHQgfX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtZm9vdGVyXCI+PC9uZy1jb250ZW50PlxyXG4gIDwhLS0gPGRpdiBjbGFzcz1cImF4LWNhbGVuZGFyLWZvb3RlclwiPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBjbGFzcz1cImF4LXRvZGF5LWJ1dHRvblwiXHJcbiAgICAgIHRhYmluZGV4PVwiLTFcIlxyXG4gICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICBbYXR0ci5kaXNhYmxlZF09XCIoZGlzYWJsZWQgfHwgaXNEaXNhYmxlZChfdG9kYXkpP3RydWU6bnVsbClcIlxyXG4gICAgICAoY2xpY2spPVwiX2hhbmRsZUdvVG9kYXkoKVwiXHJcbiAgICAgICpuZ0lmPVwiYWN0aXZlVmlldyA9PSAnZGF5cydcIj5cclxuICAgICAge3sgX3RvZGF5VGV4dCB9fVxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+IC0tPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNwaWNrZXJUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiYXgtY2FsZW5kYXItcGlja2VyXCI+Ly9UT0RPOiBwaWNrZXI8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,23 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { AXDateTimeModule } from '@acorex/core/dateTime';
4
+ import { AXCalendarComponent } from './calendar.component';
5
+ import { AXCalendarRangeComponent } from './calendar-range.component';
6
+ import * as i0 from "@angular/core";
7
+ const COMPONENT = [AXCalendarComponent, AXCalendarRangeComponent];
8
+ const MODULES = [CommonModule, AXDateTimeModule];
9
+ export class AXCalendarModule {
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarModule, declarations: [AXCalendarComponent, AXCalendarRangeComponent], imports: [CommonModule, AXDateTimeModule], exports: [AXCalendarComponent, AXCalendarRangeComponent] });
12
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarModule, imports: [MODULES] });
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarModule, decorators: [{
15
+ type: NgModule,
16
+ args: [{
17
+ declarations: [...COMPONENT],
18
+ imports: [...MODULES],
19
+ exports: [...COMPONENT],
20
+ providers: [],
21
+ }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvY2FsZW5kYXIvc3JjL2NhbGVuZGFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFdEUsTUFBTSxTQUFTLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0FBQ2xFLE1BQU0sT0FBTyxHQUFHLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFRakQsTUFBTSxPQUFPLGdCQUFnQjt1R0FBaEIsZ0JBQWdCO3dHQUFoQixnQkFBZ0IsaUJBVFYsbUJBQW1CLEVBQUUsd0JBQXdCLGFBQy9DLFlBQVksRUFBRSxnQkFBZ0IsYUFENUIsbUJBQW1CLEVBQUUsd0JBQXdCO3dHQVNuRCxnQkFBZ0IsWUFKWixPQUFPOzsyRkFJWCxnQkFBZ0I7a0JBTjVCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO29CQUNyQixPQUFPLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsU0FBUyxFQUFFLEVBQUU7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQVhEYXRlVGltZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9kYXRlVGltZSc7XHJcbmltcG9ydCB7IEFYQ2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL2NhbGVuZGFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYQ2FsZW5kYXJSYW5nZUNvbXBvbmVudCB9IGZyb20gJy4vY2FsZW5kYXItcmFuZ2UuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IENPTVBPTkVOVCA9IFtBWENhbGVuZGFyQ29tcG9uZW50LCBBWENhbGVuZGFyUmFuZ2VDb21wb25lbnRdO1xyXG5jb25zdCBNT0RVTEVTID0gW0NvbW1vbk1vZHVsZSwgQVhEYXRlVGltZU1vZHVsZV07XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UXSxcclxuICAgIGltcG9ydHM6IFsuLi5NT0RVTEVTXSxcclxuICAgIGV4cG9ydHM6IFsuLi5DT01QT05FTlRdLFxyXG4gICAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYQ2FsZW5kYXJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { AXBaseComponent } from '@acorex/components/mixin';
2
+ import { Component, ViewEncapsulation, } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class AXCardComponent extends AXBaseComponent {
5
+ cdr;
6
+ constructor(elementRef, cdr) {
7
+ super(elementRef, cdr);
8
+ this.cdr = cdr;
9
+ }
10
+ ngOnInit() { }
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCardComponent, selector: "ax-card", usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"], encapsulation: i0.ViewEncapsulation.None });
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'ax-card', encapsulation: ViewEncapsulation.None, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"] }]
17
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9jYXJkL3NyYy9jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL2NhcmQvc3JjL2NhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFFTCxTQUFTLEVBR1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOztBQVF2QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUFlO0lBQ047SUFBNUMsWUFBWSxVQUFzQixFQUFVLEdBQXNCO1FBQ2hFLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFEbUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFFbEUsQ0FBQztJQUVELFFBQVEsS0FBVSxDQUFDO3VHQUxSLGVBQWU7MkZBQWYsZUFBZSxzRUNmNUIsNE1BS0E7OzJGRFVhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0UsU0FBUyxpQkFHSixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL21peGluJztcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbnB1dCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtY2FyZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhDYXJkQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlQ29tcG9uZW50IHtcclxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKGVsZW1lbnRSZWYsIGNkcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcbn1cclxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtaW1hZ2UsaW1nXCI+PC9uZy1jb250ZW50PlxyXG48ZGl2IGNsYXNzPVwiYXgtY2FyZC1jb250ZW50XCI+XHJcbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdGl0bGVcIj48L25nLWNvbnRlbnQ+XHJcbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtY29udGVudFwiPjwvbmctY29udGVudD5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -3,11 +3,11 @@ import { CommonModule } from '@angular/common';
3
3
  import { AXCardComponent } from './card.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class AXCardModule {
6
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: AXCardModule, declarations: [AXCardComponent], imports: [CommonModule], exports: [AXCardComponent] });
8
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardModule, imports: [CommonModule] });
6
9
  }
7
- AXCardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- AXCardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: AXCardModule, declarations: [AXCardComponent], imports: [CommonModule], exports: [AXCardComponent] });
9
- AXCardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXCardModule, imports: [CommonModule] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXCardModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [AXCardComponent],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
16
16
  providers: [],
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9jYXJkL3NyYy9jYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBUW5ELE1BQU0sT0FBTyxZQUFZOzt5R0FBWixZQUFZOzBHQUFaLFlBQVksaUJBTFIsZUFBZSxhQUNwQixZQUFZLGFBQ1osZUFBZTswR0FHZCxZQUFZLFlBSmIsWUFBWTsyRkFJWCxZQUFZO2tCQU54QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQzFCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQVhDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0FYQ2FyZENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgZXhwb3J0czogW0FYQ2FyZENvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYQ2FyZE1vZHVsZSB7fVxyXG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9jYXJkL3NyYy9jYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBUW5ELE1BQU0sT0FBTyxZQUFZO3VHQUFaLFlBQVk7d0dBQVosWUFBWSxpQkFMUixlQUFlLGFBQ3BCLFlBQVksYUFDWixlQUFlO3dHQUdkLFlBQVksWUFKYixZQUFZOzsyRkFJWCxZQUFZO2tCQU54QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQzFCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQVhDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0FYQ2FyZENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgZXhwb3J0czogW0FYQ2FyZENvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYQ2FyZE1vZHVsZSB7fVxyXG4iXX0=