@ardium-ui/ui 1.0.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 (491) hide show
  1. package/README.md +25 -0
  2. package/esm2022/ardium-ui-ui.mjs +5 -0
  3. package/esm2022/lib/_internal/boolean-component.mjs +108 -0
  4. package/esm2022/lib/_internal/clear-button/clear-button.component.mjs +12 -0
  5. package/esm2022/lib/_internal/clear-button/clear-button.module.mjs +18 -0
  6. package/esm2022/lib/_internal/disablable-component.mjs +44 -0
  7. package/esm2022/lib/_internal/focusable-component.mjs +91 -0
  8. package/esm2022/lib/_internal/item-storages/dropdown-item-storage.mjs +436 -0
  9. package/esm2022/lib/_internal/item-storages/simple-item-storage.mjs +349 -0
  10. package/esm2022/lib/_internal/item-storages/simplest-item-storage.mjs +155 -0
  11. package/esm2022/lib/_internal/models/pagination.model.mjs +124 -0
  12. package/esm2022/lib/_internal/ngmodel-component.mjs +42 -0
  13. package/esm2022/lib/_internal/queue.mjs +59 -0
  14. package/esm2022/lib/_internal/selectable-list-component.mjs +304 -0
  15. package/esm2022/lib/badge/badge.directive.mjs +123 -0
  16. package/esm2022/lib/badge/badge.module.mjs +18 -0
  17. package/esm2022/lib/badge/badge.types.mjs +16 -0
  18. package/esm2022/lib/buttons/_button-base.mjs +45 -0
  19. package/esm2022/lib/buttons/button/button.component.mjs +49 -0
  20. package/esm2022/lib/buttons/button/button.module.mjs +18 -0
  21. package/esm2022/lib/buttons/fab/fab.component.mjs +40 -0
  22. package/esm2022/lib/buttons/fab/fab.module.mjs +18 -0
  23. package/esm2022/lib/buttons/general-button.types.mjs +55 -0
  24. package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +37 -0
  25. package/esm2022/lib/buttons/icon-button/icon-button.module.mjs +18 -0
  26. package/esm2022/lib/calendar/calendar.component.mjs +982 -0
  27. package/esm2022/lib/calendar/calendar.directives.mjs +107 -0
  28. package/esm2022/lib/calendar/calendar.helpers.mjs +47 -0
  29. package/esm2022/lib/calendar/calendar.module.mjs +21 -0
  30. package/esm2022/lib/calendar/calendar.types.mjs +11 -0
  31. package/esm2022/lib/card/card.children.mjs +97 -0
  32. package/esm2022/lib/card/card.component.mjs +40 -0
  33. package/esm2022/lib/card/card.module.mjs +59 -0
  34. package/esm2022/lib/card/card.types.mjs +9 -0
  35. package/esm2022/lib/checkbox/checkbox.component.mjs +73 -0
  36. package/esm2022/lib/checkbox/checkbox.module.mjs +18 -0
  37. package/esm2022/lib/checkbox/checkbox.types.mjs +6 -0
  38. package/esm2022/lib/checkbox-list/checkbox-list.component.mjs +139 -0
  39. package/esm2022/lib/checkbox-list/checkbox-list.module.mjs +19 -0
  40. package/esm2022/lib/checkbox-list/checkbox-list.types.mjs +7 -0
  41. package/esm2022/lib/chip/chip.component.mjs +55 -0
  42. package/esm2022/lib/chip/chip.module.mjs +21 -0
  43. package/esm2022/lib/chip/deletable-chip/deletable-chip.component.mjs +80 -0
  44. package/esm2022/lib/chip/selectable-chip/selectable-chip.component.mjs +77 -0
  45. package/esm2022/lib/color/color-display/color-display.component.mjs +48 -0
  46. package/esm2022/lib/color/color-display/color-display.module.mjs +18 -0
  47. package/esm2022/lib/color/color-display/color-display.types.mjs +9 -0
  48. package/esm2022/lib/color/color-picker/color-picker.component.mjs +484 -0
  49. package/esm2022/lib/color/color-picker/color-picker.directives.mjs +55 -0
  50. package/esm2022/lib/color/color-picker/color-picker.module.mjs +43 -0
  51. package/esm2022/lib/color/color-picker/color-picker.types.mjs +11 -0
  52. package/esm2022/lib/dialog/dialog.component.mjs +167 -0
  53. package/esm2022/lib/dialog/dialog.directives.mjs +14 -0
  54. package/esm2022/lib/dialog/dialog.module.mjs +21 -0
  55. package/esm2022/lib/dialog/dialog.types.mjs +6 -0
  56. package/esm2022/lib/divider/divider.component.mjs +26 -0
  57. package/esm2022/lib/divider/divider.module.mjs +18 -0
  58. package/esm2022/lib/dropdown-panel/dropdown-panel.component.mjs +130 -0
  59. package/esm2022/lib/dropdown-panel/dropdown-panel.module.mjs +18 -0
  60. package/esm2022/lib/dropdown-panel/dropdown-panel.types.mjs +10 -0
  61. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.component.mjs +82 -0
  62. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.directives.mjs +42 -0
  63. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.module.mjs +58 -0
  64. package/esm2022/lib/file-inputs/file-input/file-input.component.mjs +153 -0
  65. package/esm2022/lib/file-inputs/file-input/file-input.directives.mjs +73 -0
  66. package/esm2022/lib/file-inputs/file-input/file-input.module.mjs +21 -0
  67. package/esm2022/lib/file-inputs/file-input-base.mjs +187 -0
  68. package/esm2022/lib/file-inputs/file-input-types.mjs +2 -0
  69. package/esm2022/lib/form-field-frame/form-field-frame.component.mjs +74 -0
  70. package/esm2022/lib/form-field-frame/form-field-frame.directives.mjs +25 -0
  71. package/esm2022/lib/form-field-frame/form-field-frame.module.mjs +19 -0
  72. package/esm2022/lib/icon/icon.component.mjs +85 -0
  73. package/esm2022/lib/icon/icon.module.mjs +19 -0
  74. package/esm2022/lib/icon/icon.pipe.mjs +18 -0
  75. package/esm2022/lib/inputs/color-input/color-input.component.mjs +421 -0
  76. package/esm2022/lib/inputs/color-input/color-input.directives.mjs +101 -0
  77. package/esm2022/lib/inputs/color-input/color-input.module.mjs +85 -0
  78. package/esm2022/lib/inputs/color-input/color-input.types.mjs +2 -0
  79. package/esm2022/lib/inputs/digit-input/digit-input.component.mjs +218 -0
  80. package/esm2022/lib/inputs/digit-input/digit-input.model.mjs +217 -0
  81. package/esm2022/lib/inputs/digit-input/digit-input.module.mjs +18 -0
  82. package/esm2022/lib/inputs/digit-input/digit-input.types.mjs +15 -0
  83. package/esm2022/lib/inputs/digit-input/digit-input.utils.mjs +8 -0
  84. package/esm2022/lib/inputs/hex-input/hex-input.component.mjs +234 -0
  85. package/esm2022/lib/inputs/hex-input/hex-input.directives.mjs +36 -0
  86. package/esm2022/lib/inputs/hex-input/hex-input.module.mjs +21 -0
  87. package/esm2022/lib/inputs/hex-input.model.mjs +106 -0
  88. package/esm2022/lib/inputs/input/input.component.mjs +344 -0
  89. package/esm2022/lib/inputs/input/input.directives.mjs +58 -0
  90. package/esm2022/lib/inputs/input/input.module.mjs +47 -0
  91. package/esm2022/lib/inputs/input-transformers.mjs +66 -0
  92. package/esm2022/lib/inputs/input-types.mjs +6 -0
  93. package/esm2022/lib/inputs/input-utils.mjs +205 -0
  94. package/esm2022/lib/inputs/number-input/number-input.component.mjs +289 -0
  95. package/esm2022/lib/inputs/number-input/number-input.directives.mjs +14 -0
  96. package/esm2022/lib/inputs/number-input/number-input.module.mjs +21 -0
  97. package/esm2022/lib/inputs/password-input/password-input.component.mjs +222 -0
  98. package/esm2022/lib/inputs/password-input/password-input.directives.mjs +49 -0
  99. package/esm2022/lib/inputs/password-input/password-input.module.mjs +41 -0
  100. package/esm2022/lib/inputs/password-input/password-input.types.mjs +2 -0
  101. package/esm2022/lib/inputs/simple-input/simple-input.component.mjs +219 -0
  102. package/esm2022/lib/inputs/simple-input/simple-input.directives.mjs +36 -0
  103. package/esm2022/lib/inputs/simple-input/simple-input.module.mjs +37 -0
  104. package/esm2022/lib/kbd/kbd.component.mjs +42 -0
  105. package/esm2022/lib/kbd/kbd.module.mjs +19 -0
  106. package/esm2022/lib/kbd/kbd.pipe.mjs +17 -0
  107. package/esm2022/lib/kbd-shortcut/kbd-shortcut.component.mjs +55 -0
  108. package/esm2022/lib/kbd-shortcut/kbd-shortcut.module.mjs +19 -0
  109. package/esm2022/lib/modal/modal.component.mjs +120 -0
  110. package/esm2022/lib/modal/modal.module.mjs +21 -0
  111. package/esm2022/lib/option/option.component.mjs +77 -0
  112. package/esm2022/lib/option/option.module.mjs +18 -0
  113. package/esm2022/lib/progress-bar/progress-bar.component.mjs +95 -0
  114. package/esm2022/lib/progress-bar/progress-bar.directive.mjs +14 -0
  115. package/esm2022/lib/progress-bar/progress-bar.module.mjs +19 -0
  116. package/esm2022/lib/progress-bar/progress-bar.types.mjs +19 -0
  117. package/esm2022/lib/progress-circle/progress-circle.component.mjs +94 -0
  118. package/esm2022/lib/progress-circle/progress-circle.directive.mjs +14 -0
  119. package/esm2022/lib/progress-circle/progress-circle.module.mjs +19 -0
  120. package/esm2022/lib/progress-circle/progress-circle.types.mjs +10 -0
  121. package/esm2022/lib/radio/radio/radio.component.mjs +53 -0
  122. package/esm2022/lib/radio/radio-group.component.mjs +207 -0
  123. package/esm2022/lib/radio/radio.module.mjs +19 -0
  124. package/esm2022/lib/search-functions.mjs +64 -0
  125. package/esm2022/lib/segment/segment.component.mjs +168 -0
  126. package/esm2022/lib/segment/segment.directives.mjs +14 -0
  127. package/esm2022/lib/segment/segment.module.mjs +19 -0
  128. package/esm2022/lib/segment/segment.types.mjs +12 -0
  129. package/esm2022/lib/select/select.component.mjs +1160 -0
  130. package/esm2022/lib/select/select.directive.mjs +171 -0
  131. package/esm2022/lib/select/select.module.mjs +112 -0
  132. package/esm2022/lib/select/select.types.mjs +2 -0
  133. package/esm2022/lib/slide-toggle/slide-toggle.component.mjs +46 -0
  134. package/esm2022/lib/slide-toggle/slide-toggle.module.mjs +18 -0
  135. package/esm2022/lib/slider/abstract-slider.mjs +330 -0
  136. package/esm2022/lib/slider/range-slider/range-slider.component.mjs +143 -0
  137. package/esm2022/lib/slider/range-slider/range-slider.module.mjs +18 -0
  138. package/esm2022/lib/slider/slider.component.mjs +93 -0
  139. package/esm2022/lib/slider/slider.directive.mjs +16 -0
  140. package/esm2022/lib/slider/slider.module.mjs +20 -0
  141. package/esm2022/lib/slider/slider.types.mjs +10 -0
  142. package/esm2022/lib/snackbar/index.mjs +5 -0
  143. package/esm2022/lib/snackbar/snackbar-ref.mjs +51 -0
  144. package/esm2022/lib/snackbar/snackbar.component.mjs +48 -0
  145. package/esm2022/lib/snackbar/snackbar.service.mjs +227 -0
  146. package/esm2022/lib/snackbar/snackbar.token.mjs +20 -0
  147. package/esm2022/lib/snackbar/snackbar.types.mjs +25 -0
  148. package/esm2022/lib/spinner/spinner.component.mjs +22 -0
  149. package/esm2022/lib/spinner/spinner.module.mjs +18 -0
  150. package/esm2022/lib/star/star-button/star-button.component.mjs +53 -0
  151. package/esm2022/lib/star/star-button/star-button.module.mjs +19 -0
  152. package/esm2022/lib/star/star-display/star-display.component.mjs +66 -0
  153. package/esm2022/lib/star/star-display/star-display.module.mjs +19 -0
  154. package/esm2022/lib/star/star-input/star-input.component.mjs +221 -0
  155. package/esm2022/lib/star/star-input/star-input.module.mjs +19 -0
  156. package/esm2022/lib/star/star.component.mjs +28 -0
  157. package/esm2022/lib/star/star.module.mjs +18 -0
  158. package/esm2022/lib/star/star.types.mjs +23 -0
  159. package/esm2022/lib/statebox/statebox.component.mjs +158 -0
  160. package/esm2022/lib/statebox/statebox.module.mjs +18 -0
  161. package/esm2022/lib/statebox/statebox.types.mjs +2 -0
  162. package/esm2022/lib/table/table-item-storage.mjs +560 -0
  163. package/esm2022/lib/table/table.component.mjs +468 -0
  164. package/esm2022/lib/table/table.directives.mjs +64 -0
  165. package/esm2022/lib/table/table.module.mjs +46 -0
  166. package/esm2022/lib/table/table.types.mjs +30 -0
  167. package/esm2022/lib/table/utils.mjs +18 -0
  168. package/esm2022/lib/table-from-csv/table-from-csv.component.mjs +64 -0
  169. package/esm2022/lib/table-from-csv/table-from-csv.module.mjs +19 -0
  170. package/esm2022/lib/table-pagination/table-pagination.component.mjs +172 -0
  171. package/esm2022/lib/table-pagination/table-pagination.module.mjs +21 -0
  172. package/esm2022/lib/table-pagination/table-pagination.types.mjs +7 -0
  173. package/esm2022/lib/types/alignment.types.mjs +10 -0
  174. package/esm2022/lib/types/colors.types.mjs +43 -0
  175. package/esm2022/lib/types/item-storage.types.mjs +6 -0
  176. package/esm2022/lib/types/theming.types.mjs +48 -0
  177. package/esm2022/lib/types/utility.types.mjs +5 -0
  178. package/esm2022/public-api.mjs +194 -0
  179. package/fesm2022/ardium-ui-ui.mjs +14316 -0
  180. package/fesm2022/ardium-ui-ui.mjs.map +1 -0
  181. package/index.d.ts +5 -0
  182. package/lib/_internal/boolean-component.d.ts +50 -0
  183. package/lib/_internal/clear-button/clear-button.component.d.ts +6 -0
  184. package/lib/_internal/clear-button/clear-button.module.d.ts +8 -0
  185. package/lib/_internal/disablable-component.d.ts +11 -0
  186. package/lib/_internal/focusable-component.d.ts +52 -0
  187. package/lib/_internal/item-storages/dropdown-item-storage.d.ts +87 -0
  188. package/lib/_internal/item-storages/simple-item-storage.d.ts +159 -0
  189. package/lib/_internal/item-storages/simplest-item-storage.d.ts +70 -0
  190. package/lib/_internal/models/pagination.model.d.ts +53 -0
  191. package/lib/_internal/ngmodel-component.d.ts +42 -0
  192. package/lib/_internal/queue.d.ts +21 -0
  193. package/lib/_internal/selectable-list-component.d.ts +71 -0
  194. package/lib/badge/badge.directive.d.ts +31 -0
  195. package/lib/badge/badge.module.d.ts +8 -0
  196. package/lib/badge/badge.types.d.ts +17 -0
  197. package/lib/buttons/_button-base.d.ts +18 -0
  198. package/lib/buttons/button/button.component.d.ts +15 -0
  199. package/lib/buttons/button/button.module.d.ts +8 -0
  200. package/lib/buttons/fab/fab.component.d.ts +12 -0
  201. package/lib/buttons/fab/fab.module.d.ts +8 -0
  202. package/lib/buttons/general-button.types.d.ts +57 -0
  203. package/lib/buttons/icon-button/icon-button.component.d.ts +13 -0
  204. package/lib/buttons/icon-button/icon-button.module.d.ts +8 -0
  205. package/lib/calendar/calendar.component.d.ts +155 -0
  206. package/lib/calendar/calendar.directives.d.ts +51 -0
  207. package/lib/calendar/calendar.helpers.d.ts +15 -0
  208. package/lib/calendar/calendar.module.d.ts +11 -0
  209. package/lib/calendar/calendar.types.d.ts +80 -0
  210. package/lib/card/card.children.d.ts +43 -0
  211. package/lib/card/card.component.d.ts +13 -0
  212. package/lib/card/card.module.d.ts +9 -0
  213. package/lib/card/card.types.d.ts +10 -0
  214. package/lib/checkbox/checkbox.component.d.ts +21 -0
  215. package/lib/checkbox/checkbox.module.d.ts +8 -0
  216. package/lib/checkbox/checkbox.types.d.ts +6 -0
  217. package/lib/checkbox-list/checkbox-list.component.d.ts +50 -0
  218. package/lib/checkbox-list/checkbox-list.module.d.ts +9 -0
  219. package/lib/checkbox-list/checkbox-list.types.d.ts +7 -0
  220. package/lib/chip/chip.component.d.ts +18 -0
  221. package/lib/chip/chip.module.d.ts +11 -0
  222. package/lib/chip/deletable-chip/deletable-chip.component.d.ts +24 -0
  223. package/lib/chip/selectable-chip/selectable-chip.component.d.ts +24 -0
  224. package/lib/color/color-display/color-display.component.d.ts +17 -0
  225. package/lib/color/color-display/color-display.module.d.ts +8 -0
  226. package/lib/color/color-display/color-display.types.d.ts +9 -0
  227. package/lib/color/color-picker/color-picker.component.d.ts +125 -0
  228. package/lib/color/color-picker/color-picker.directives.d.ts +27 -0
  229. package/lib/color/color-picker/color-picker.module.d.ts +13 -0
  230. package/lib/color/color-picker/color-picker.types.d.ts +21 -0
  231. package/lib/dialog/dialog.component.d.ts +44 -0
  232. package/lib/dialog/dialog.directives.d.ts +9 -0
  233. package/lib/dialog/dialog.module.d.ts +11 -0
  234. package/lib/dialog/dialog.types.d.ts +28 -0
  235. package/lib/divider/divider.component.d.ts +8 -0
  236. package/lib/divider/divider.module.d.ts +8 -0
  237. package/lib/dropdown-panel/dropdown-panel.component.d.ts +37 -0
  238. package/lib/dropdown-panel/dropdown-panel.module.d.ts +8 -0
  239. package/lib/dropdown-panel/dropdown-panel.types.d.ts +12 -0
  240. package/lib/file-inputs/file-drop-area/file-drop-area.component.d.ts +22 -0
  241. package/lib/file-inputs/file-drop-area/file-drop-area.directives.d.ts +21 -0
  242. package/lib/file-inputs/file-drop-area/file-drop-area.module.d.ts +12 -0
  243. package/lib/file-inputs/file-input/file-input.component.d.ts +41 -0
  244. package/lib/file-inputs/file-input/file-input.directives.d.ts +39 -0
  245. package/lib/file-inputs/file-input/file-input.module.d.ts +11 -0
  246. package/lib/file-inputs/file-input-base.d.ts +43 -0
  247. package/lib/file-inputs/file-input-types.d.ts +10 -0
  248. package/lib/form-field-frame/form-field-frame.component.d.ts +32 -0
  249. package/lib/form-field-frame/form-field-frame.directives.d.ts +14 -0
  250. package/lib/form-field-frame/form-field-frame.module.d.ts +9 -0
  251. package/lib/icon/icon.component.d.ts +32 -0
  252. package/lib/icon/icon.module.d.ts +9 -0
  253. package/lib/icon/icon.pipe.d.ts +7 -0
  254. package/lib/inputs/color-input/color-input.component.d.ts +147 -0
  255. package/lib/inputs/color-input/color-input.directives.d.ts +52 -0
  256. package/lib/inputs/color-input/color-input.module.d.ts +16 -0
  257. package/lib/inputs/color-input/color-input.types.d.ts +5 -0
  258. package/lib/inputs/digit-input/digit-input.component.d.ts +50 -0
  259. package/lib/inputs/digit-input/digit-input.model.d.ts +26 -0
  260. package/lib/inputs/digit-input/digit-input.module.d.ts +8 -0
  261. package/lib/inputs/digit-input/digit-input.types.d.ts +27 -0
  262. package/lib/inputs/digit-input/digit-input.utils.d.ts +17 -0
  263. package/lib/inputs/hex-input/hex-input.component.d.ts +60 -0
  264. package/lib/inputs/hex-input/hex-input.directives.d.ts +20 -0
  265. package/lib/inputs/hex-input/hex-input.module.d.ts +11 -0
  266. package/lib/inputs/hex-input.model.d.ts +27 -0
  267. package/lib/inputs/input/input.component.d.ts +79 -0
  268. package/lib/inputs/input/input.directives.d.ts +33 -0
  269. package/lib/inputs/input/input.module.d.ts +13 -0
  270. package/lib/inputs/input-transformers.d.ts +24 -0
  271. package/lib/inputs/input-types.d.ts +6 -0
  272. package/lib/inputs/input-utils.d.ts +58 -0
  273. package/lib/inputs/number-input/number-input.component.d.ts +70 -0
  274. package/lib/inputs/number-input/number-input.directives.d.ts +8 -0
  275. package/lib/inputs/number-input/number-input.module.d.ts +11 -0
  276. package/lib/inputs/password-input/password-input.component.d.ts +54 -0
  277. package/lib/inputs/password-input/password-input.directives.d.ts +27 -0
  278. package/lib/inputs/password-input/password-input.module.d.ts +11 -0
  279. package/lib/inputs/password-input/password-input.types.d.ts +3 -0
  280. package/lib/inputs/simple-input/simple-input.component.d.ts +58 -0
  281. package/lib/inputs/simple-input/simple-input.directives.d.ts +20 -0
  282. package/lib/inputs/simple-input/simple-input.module.d.ts +11 -0
  283. package/lib/kbd/kbd.component.d.ts +15 -0
  284. package/lib/kbd/kbd.module.d.ts +9 -0
  285. package/lib/kbd/kbd.pipe.d.ts +7 -0
  286. package/lib/kbd-shortcut/kbd-shortcut.component.d.ts +18 -0
  287. package/lib/kbd-shortcut/kbd-shortcut.module.d.ts +9 -0
  288. package/lib/modal/modal.component.d.ts +36 -0
  289. package/lib/modal/modal.module.d.ts +11 -0
  290. package/lib/option/option.component.d.ts +29 -0
  291. package/lib/option/option.module.d.ts +8 -0
  292. package/lib/progress-bar/progress-bar.component.d.ts +26 -0
  293. package/lib/progress-bar/progress-bar.directive.d.ts +9 -0
  294. package/lib/progress-bar/progress-bar.module.d.ts +9 -0
  295. package/lib/progress-bar/progress-bar.types.d.ts +26 -0
  296. package/lib/progress-circle/progress-circle.component.d.ts +28 -0
  297. package/lib/progress-circle/progress-circle.directive.d.ts +9 -0
  298. package/lib/progress-circle/progress-circle.module.d.ts +9 -0
  299. package/lib/progress-circle/progress-circle.types.d.ts +17 -0
  300. package/lib/radio/radio/radio.component.d.ts +23 -0
  301. package/lib/radio/radio-group.component.d.ts +43 -0
  302. package/lib/radio/radio.module.d.ts +9 -0
  303. package/lib/search-functions.d.ts +10 -0
  304. package/lib/segment/segment.component.d.ts +48 -0
  305. package/lib/segment/segment.directives.d.ts +9 -0
  306. package/lib/segment/segment.module.d.ts +9 -0
  307. package/lib/segment/segment.types.d.ts +16 -0
  308. package/lib/select/select.component.d.ts +255 -0
  309. package/lib/select/select.directive.d.ts +94 -0
  310. package/lib/select/select.module.d.ts +14 -0
  311. package/lib/select/select.types.d.ts +109 -0
  312. package/lib/slide-toggle/slide-toggle.component.d.ts +14 -0
  313. package/lib/slide-toggle/slide-toggle.module.d.ts +8 -0
  314. package/lib/slider/abstract-slider.d.ts +88 -0
  315. package/lib/slider/range-slider/range-slider.component.d.ts +29 -0
  316. package/lib/slider/range-slider/range-slider.module.d.ts +8 -0
  317. package/lib/slider/slider.component.d.ts +18 -0
  318. package/lib/slider/slider.directive.d.ts +9 -0
  319. package/lib/slider/slider.module.d.ts +10 -0
  320. package/lib/slider/slider.types.d.ts +28 -0
  321. package/lib/snackbar/index.d.ts +4 -0
  322. package/lib/snackbar/snackbar-ref.d.ts +37 -0
  323. package/lib/snackbar/snackbar.component.d.ts +16 -0
  324. package/lib/snackbar/snackbar.service.d.ts +31 -0
  325. package/lib/snackbar/snackbar.token.d.ts +5 -0
  326. package/lib/snackbar/snackbar.types.d.ts +48 -0
  327. package/lib/spinner/spinner.component.d.ts +8 -0
  328. package/lib/spinner/spinner.module.d.ts +8 -0
  329. package/lib/star/star-button/star-button.component.d.ts +16 -0
  330. package/lib/star/star-button/star-button.module.d.ts +9 -0
  331. package/lib/star/star-display/star-display.component.d.ts +16 -0
  332. package/lib/star/star-display/star-display.module.d.ts +9 -0
  333. package/lib/star/star-input/star-input.component.d.ts +51 -0
  334. package/lib/star/star-input/star-input.module.d.ts +9 -0
  335. package/lib/star/star.component.d.ts +10 -0
  336. package/lib/star/star.module.d.ts +8 -0
  337. package/lib/star/star.types.d.ts +30 -0
  338. package/lib/statebox/statebox.component.d.ts +31 -0
  339. package/lib/statebox/statebox.module.d.ts +8 -0
  340. package/lib/statebox/statebox.types.d.ts +22 -0
  341. package/lib/table/table-item-storage.d.ts +266 -0
  342. package/lib/table/table.component.d.ts +127 -0
  343. package/lib/table/table.directives.d.ts +35 -0
  344. package/lib/table/table.module.d.ts +12 -0
  345. package/lib/table/table.types.d.ts +83 -0
  346. package/lib/table/utils.d.ts +4 -0
  347. package/lib/table-from-csv/table-from-csv.component.d.ts +16 -0
  348. package/lib/table-from-csv/table-from-csv.module.d.ts +9 -0
  349. package/lib/table-pagination/table-pagination.component.d.ts +48 -0
  350. package/lib/table-pagination/table-pagination.module.d.ts +11 -0
  351. package/lib/table-pagination/table-pagination.types.d.ts +9 -0
  352. package/lib/types/alignment.types.d.ts +11 -0
  353. package/lib/types/colors.types.d.ts +71 -0
  354. package/lib/types/item-storage.types.d.ts +98 -0
  355. package/lib/types/theming.types.d.ts +61 -0
  356. package/lib/types/utility.types.d.ts +11 -0
  357. package/package.json +36 -0
  358. package/prebuilt-themes/default/badge.css +208 -0
  359. package/prebuilt-themes/default/badge.css.map +1 -0
  360. package/prebuilt-themes/default/buttons/button.css +290 -0
  361. package/prebuilt-themes/default/buttons/button.css.map +1 -0
  362. package/prebuilt-themes/default/buttons/fab.css +307 -0
  363. package/prebuilt-themes/default/buttons/fab.css.map +1 -0
  364. package/prebuilt-themes/default/buttons/icon-button.css +288 -0
  365. package/prebuilt-themes/default/buttons/icon-button.css.map +1 -0
  366. package/prebuilt-themes/default/calendar.css +293 -0
  367. package/prebuilt-themes/default/calendar.css.map +1 -0
  368. package/prebuilt-themes/default/card.css +122 -0
  369. package/prebuilt-themes/default/card.css.map +1 -0
  370. package/prebuilt-themes/default/checkbox-list.css +65 -0
  371. package/prebuilt-themes/default/checkbox-list.css.map +1 -0
  372. package/prebuilt-themes/default/checkbox.css +365 -0
  373. package/prebuilt-themes/default/checkbox.css.map +1 -0
  374. package/prebuilt-themes/default/chips.css +367 -0
  375. package/prebuilt-themes/default/chips.css.map +1 -0
  376. package/prebuilt-themes/default/color-display.css +29 -0
  377. package/prebuilt-themes/default/color-display.css.map +1 -0
  378. package/prebuilt-themes/default/color-picker.css +106 -0
  379. package/prebuilt-themes/default/color-picker.css.map +1 -0
  380. package/prebuilt-themes/default/core.css +84 -0
  381. package/prebuilt-themes/default/core.css.map +1 -0
  382. package/prebuilt-themes/default/dialog.css +18 -0
  383. package/prebuilt-themes/default/dialog.css.map +1 -0
  384. package/prebuilt-themes/default/divider.css +11 -0
  385. package/prebuilt-themes/default/divider.css.map +1 -0
  386. package/prebuilt-themes/default/dropdown-panel.css +37 -0
  387. package/prebuilt-themes/default/dropdown-panel.css.map +1 -0
  388. package/prebuilt-themes/default/file-drop-area.css +279 -0
  389. package/prebuilt-themes/default/file-drop-area.css.map +1 -0
  390. package/prebuilt-themes/default/form-field-frame.css +84 -0
  391. package/prebuilt-themes/default/form-field-frame.css.map +1 -0
  392. package/prebuilt-themes/default/inputs/color-input.css +139 -0
  393. package/prebuilt-themes/default/inputs/color-input.css.map +1 -0
  394. package/prebuilt-themes/default/inputs/digit-input.css +45 -0
  395. package/prebuilt-themes/default/inputs/digit-input.css.map +1 -0
  396. package/prebuilt-themes/default/inputs/file-input.css +169 -0
  397. package/prebuilt-themes/default/inputs/file-input.css.map +1 -0
  398. package/prebuilt-themes/default/inputs/hex-input.css +119 -0
  399. package/prebuilt-themes/default/inputs/hex-input.css.map +1 -0
  400. package/prebuilt-themes/default/inputs/input.css +139 -0
  401. package/prebuilt-themes/default/inputs/input.css.map +1 -0
  402. package/prebuilt-themes/default/inputs/number-input.css +150 -0
  403. package/prebuilt-themes/default/inputs/number-input.css.map +1 -0
  404. package/prebuilt-themes/default/inputs/password-input.css +73 -0
  405. package/prebuilt-themes/default/inputs/password-input.css.map +1 -0
  406. package/prebuilt-themes/default/inputs/search-bar.css +114 -0
  407. package/prebuilt-themes/default/inputs/search-bar.css.map +1 -0
  408. package/prebuilt-themes/default/inputs/simple-input.css +114 -0
  409. package/prebuilt-themes/default/inputs/simple-input.css.map +1 -0
  410. package/prebuilt-themes/default/kbd-shortcut.css +12 -0
  411. package/prebuilt-themes/default/kbd-shortcut.css.map +1 -0
  412. package/prebuilt-themes/default/kbd.css +17 -0
  413. package/prebuilt-themes/default/kbd.css.map +1 -0
  414. package/prebuilt-themes/default/modal.css +73 -0
  415. package/prebuilt-themes/default/modal.css.map +1 -0
  416. package/prebuilt-themes/default/progress-bar.css +267 -0
  417. package/prebuilt-themes/default/progress-bar.css.map +1 -0
  418. package/prebuilt-themes/default/progress-circle.css +167 -0
  419. package/prebuilt-themes/default/progress-circle.css.map +1 -0
  420. package/prebuilt-themes/default/radio.css +226 -0
  421. package/prebuilt-themes/default/radio.css.map +1 -0
  422. package/prebuilt-themes/default/segment.css +391 -0
  423. package/prebuilt-themes/default/segment.css.map +1 -0
  424. package/prebuilt-themes/default/select.css +275 -0
  425. package/prebuilt-themes/default/select.css.map +1 -0
  426. package/prebuilt-themes/default/slide-toggle.css +264 -0
  427. package/prebuilt-themes/default/slide-toggle.css.map +1 -0
  428. package/prebuilt-themes/default/slider.css +354 -0
  429. package/prebuilt-themes/default/slider.css.map +1 -0
  430. package/prebuilt-themes/default/snackbar.css +183 -0
  431. package/prebuilt-themes/default/snackbar.css.map +1 -0
  432. package/prebuilt-themes/default/spinner.css +151 -0
  433. package/prebuilt-themes/default/spinner.css.map +1 -0
  434. package/prebuilt-themes/default/stars.css +291 -0
  435. package/prebuilt-themes/default/stars.css.map +1 -0
  436. package/prebuilt-themes/default/statebox.css +235 -0
  437. package/prebuilt-themes/default/statebox.css.map +1 -0
  438. package/prebuilt-themes/default/table-pagination.css +48 -0
  439. package/prebuilt-themes/default/table-pagination.css.map +1 -0
  440. package/prebuilt-themes/default/table.css +418 -0
  441. package/prebuilt-themes/default/table.css.map +1 -0
  442. package/public-api.d.ts +145 -0
  443. package/themes/_variables.scss +121 -0
  444. package/themes/default/_clear-button.scss +73 -0
  445. package/themes/default/_coloring.scss +137 -0
  446. package/themes/default/_dropdown-arrow.scss +12 -0
  447. package/themes/default/_mixins.scss +70 -0
  448. package/themes/default/badge.scss +94 -0
  449. package/themes/default/buttons/_button-mixins.scss +144 -0
  450. package/themes/default/buttons/button.scss +62 -0
  451. package/themes/default/buttons/fab.scss +72 -0
  452. package/themes/default/buttons/icon-button.scss +59 -0
  453. package/themes/default/calendar.scss +182 -0
  454. package/themes/default/card.scss +126 -0
  455. package/themes/default/checkbox-list.scss +83 -0
  456. package/themes/default/checkbox.scss +109 -0
  457. package/themes/default/chips.scss +206 -0
  458. package/themes/default/color-display.scss +41 -0
  459. package/themes/default/color-picker.scss +111 -0
  460. package/themes/default/core.scss +96 -0
  461. package/themes/default/dialog.scss +16 -0
  462. package/themes/default/divider.scss +13 -0
  463. package/themes/default/dropdown-panel.scss +45 -0
  464. package/themes/default/file-drop-area.scss +162 -0
  465. package/themes/default/form-field-frame.scss +78 -0
  466. package/themes/default/inputs/_shared.scss +46 -0
  467. package/themes/default/inputs/color-input.scss +46 -0
  468. package/themes/default/inputs/digit-input.scss +56 -0
  469. package/themes/default/inputs/file-input.scss +78 -0
  470. package/themes/default/inputs/hex-input.scss +27 -0
  471. package/themes/default/inputs/input.scss +52 -0
  472. package/themes/default/inputs/number-input.scss +121 -0
  473. package/themes/default/inputs/password-input.scss +43 -0
  474. package/themes/default/inputs/search-bar.scss +19 -0
  475. package/themes/default/inputs/simple-input.scss +19 -0
  476. package/themes/default/kbd-shortcut.scss +13 -0
  477. package/themes/default/kbd.scss +20 -0
  478. package/themes/default/modal.scss +93 -0
  479. package/themes/default/progress-bar.scss +166 -0
  480. package/themes/default/progress-circle.scss +56 -0
  481. package/themes/default/radio.scss +112 -0
  482. package/themes/default/segment.scss +339 -0
  483. package/themes/default/select.scss +253 -0
  484. package/themes/default/slide-toggle.scss +151 -0
  485. package/themes/default/slider.scss +224 -0
  486. package/themes/default/snackbar.scss +60 -0
  487. package/themes/default/spinner.scss +21 -0
  488. package/themes/default/stars.scss +122 -0
  489. package/themes/default/statebox.scss +109 -0
  490. package/themes/default/table-pagination.scss +56 -0
  491. package/themes/default/table.scss +403 -0
package/README.md ADDED
@@ -0,0 +1,25 @@
1
+ # Ui
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project ui` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ui`.
8
+
9
+ > Note: Don't forget to add `--project ui` or else it will be added to the default project in your `angular.json` file.
10
+
11
+ ## Build
12
+
13
+ Run `ng build ui` to build the project. The build artifacts will be stored in the `dist/` directory.
14
+
15
+ ## Publishing
16
+
17
+ After building your library with `ng build ui`, go to the dist folder `cd dist/ui` and run `npm publish`.
18
+
19
+ ## Running unit tests
20
+
21
+ Run `ng test ui` to execute the unit tests via [Karma](https://karma-runner.github.io).
22
+
23
+ ## Further help
24
+
25
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJkaXVtLXVpLXVpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2FyZGl1bS11aS11aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,108 @@
1
+ import { EventEmitter, HostBinding, Input, Output, Directive } from '@angular/core';
2
+ import { coerceBooleanProperty } from '@ardium-ui/devkit';
3
+ import { _NgModelComponentBase } from './ngmodel-component';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Common code for components, which only operate on the "selected" state.
7
+ */
8
+ export class _BooleanComponentBase extends _NgModelComponentBase {
9
+ constructor() {
10
+ super(...arguments);
11
+ //! events
12
+ /**
13
+ * The event emitter responsible for firing `select` events. Fired when the `selected` state is set to true.
14
+ */
15
+ this.selectEvent = new EventEmitter();
16
+ /**
17
+ * The event emitter responsible for firing `unselect` events. Fired when the `selected` state is set to false.
18
+ */
19
+ this.unselectEvent = new EventEmitter();
20
+ /**
21
+ * The event emitter responsible for firing `change` events. Fired when the `selected` state is changed.
22
+ */
23
+ this.changeEvent = new EventEmitter();
24
+ //! [(selected)] two-way binding
25
+ // can be set using a no-value argument
26
+ this._selected = false;
27
+ /**
28
+ * The event emitter responsible for firing `selectedChange` events. Fired when the `selected` state is changed.
29
+ */
30
+ this.selectedChange = new EventEmitter();
31
+ }
32
+ //! control value accessor
33
+ writeValue(v) {
34
+ this.selected = v;
35
+ }
36
+ //emitter function
37
+ /**
38
+ * Emits all select-state-related events.
39
+ */
40
+ _emitChange() {
41
+ this._onChangeRegistered?.(this.selected);
42
+ if (this._selected)
43
+ this.selectEvent.emit(null);
44
+ else
45
+ this.unselectEvent.emit(null);
46
+ this.selectedChange.emit(this.selected);
47
+ this.changeEvent.emit(this.selected);
48
+ }
49
+ /**
50
+ * The selection state of the component. Coercible into a boolean.
51
+ */
52
+ get selected() {
53
+ return this._selected;
54
+ }
55
+ set selected(v) {
56
+ this._selected = coerceBooleanProperty(v);
57
+ }
58
+ /**
59
+ * Toggles the selected state. Emits all appropriate events.
60
+ */
61
+ toggleSelected() {
62
+ this._selected = !this._selected;
63
+ this._emitChange();
64
+ }
65
+ /**
66
+ * Sets the state to "selected". Emits all appropriate events only if the state changes.
67
+ */
68
+ select() {
69
+ const oldState = this._selected;
70
+ this._selected = true;
71
+ if (oldState != true)
72
+ this._emitChange();
73
+ }
74
+ /**
75
+ * Sets the state to "unselected". Emits all appropriate events only if the state changes.
76
+ */
77
+ unselect() {
78
+ const oldState = this._selected;
79
+ this._selected = false;
80
+ if (oldState != false)
81
+ this._emitChange();
82
+ }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _BooleanComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
84
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: _BooleanComponentBase, inputs: { selected: "selected" }, outputs: { selectEvent: "select", unselectEvent: "unselect", changeEvent: "change", selectedChange: "selectedChange" }, host: { properties: { "attr.selected": "this.selected", "class.ard-selected": "this.selected" } }, usesInheritance: true, ngImport: i0 }); }
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _BooleanComponentBase, decorators: [{
87
+ type: Directive
88
+ }], propDecorators: { selectEvent: [{
89
+ type: Output,
90
+ args: ['select']
91
+ }], unselectEvent: [{
92
+ type: Output,
93
+ args: ['unselect']
94
+ }], changeEvent: [{
95
+ type: Output,
96
+ args: ['change']
97
+ }], selected: [{
98
+ type: Input
99
+ }, {
100
+ type: HostBinding,
101
+ args: ['attr.selected']
102
+ }, {
103
+ type: HostBinding,
104
+ args: ['class.ard-selected']
105
+ }], selectedChange: [{
106
+ type: Output
107
+ }] } });
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL19pbnRlcm5hbC9ib29sZWFuLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFNUQ7O0dBRUc7QUFFSCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLHFCQUFxQjtJQUR6RTs7UUFvQkksVUFBVTtRQUNWOztXQUVHO1FBQ2UsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3pEOztXQUVHO1FBQ2lCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUM3RDs7V0FFRztRQUNlLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU1RCxnQ0FBZ0M7UUFDaEMsdUNBQXVDO1FBQzdCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFhckM7O1dBRUc7UUFDTyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0E2QjFEO0lBL0VHLDBCQUEwQjtJQUMxQixVQUFVLENBQUMsQ0FBTTtRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxrQkFBa0I7SUFDbEI7O09BRUc7SUFDTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUxQyxJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7O1lBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQW1CRDs7T0FFRztJQUNILElBR0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsQ0FBTTtRQUNmLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQU1EOztPQUVHO0lBQ0gsY0FBYztRQUNWLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBRWpDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0YsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUV0QixJQUFJLFFBQVEsSUFBSSxJQUFJO1lBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFDRDs7T0FFRztJQUNILFFBQVE7UUFDSixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBRXZCLElBQUksUUFBUSxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDOUMsQ0FBQzs4R0EvRWlCLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUQxQyxTQUFTOzhCQXdCWSxXQUFXO3NCQUE1QixNQUFNO3VCQUFDLFFBQVE7Z0JBSUksYUFBYTtzQkFBaEMsTUFBTTt1QkFBQyxVQUFVO2dCQUlBLFdBQVc7c0JBQTVCLE1BQU07dUJBQUMsUUFBUTtnQkFXWixRQUFRO3NCQUhYLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZUFBZTs7c0JBQzNCLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVV2QixjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcbmltcG9ydCB7IF9OZ01vZGVsQ29tcG9uZW50QmFzZSB9IGZyb20gJy4vbmdtb2RlbC1jb21wb25lbnQnO1xuXG4vKipcbiAqIENvbW1vbiBjb2RlIGZvciBjb21wb25lbnRzLCB3aGljaCBvbmx5IG9wZXJhdGUgb24gdGhlIFwic2VsZWN0ZWRcIiBzdGF0ZS5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgX0Jvb2xlYW5Db21wb25lbnRCYXNlIGV4dGVuZHMgX05nTW9kZWxDb21wb25lbnRCYXNlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIC8vISBjb250cm9sIHZhbHVlIGFjY2Vzc29yXG4gICAgd3JpdGVWYWx1ZSh2OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHY7XG4gICAgfVxuICAgIC8vZW1pdHRlciBmdW5jdGlvblxuICAgIC8qKlxuICAgICAqIEVtaXRzIGFsbCBzZWxlY3Qtc3RhdGUtcmVsYXRlZCBldmVudHMuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCkge1xuICAgICAgICB0aGlzLl9vbkNoYW5nZVJlZ2lzdGVyZWQ/Lih0aGlzLnNlbGVjdGVkKTtcblxuICAgICAgICBpZiAodGhpcy5fc2VsZWN0ZWQpIHRoaXMuc2VsZWN0RXZlbnQuZW1pdChudWxsKTtcbiAgICAgICAgZWxzZSB0aGlzLnVuc2VsZWN0RXZlbnQuZW1pdChudWxsKTtcblxuICAgICAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRXZlbnQuZW1pdCh0aGlzLnNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICAvLyEgZXZlbnRzXG4gICAgLyoqXG4gICAgICogVGhlIGV2ZW50IGVtaXR0ZXIgcmVzcG9uc2libGUgZm9yIGZpcmluZyBgc2VsZWN0YCBldmVudHMuIEZpcmVkIHdoZW4gdGhlIGBzZWxlY3RlZGAgc3RhdGUgaXMgc2V0IHRvIHRydWUuXG4gICAgICovXG4gICAgQE91dHB1dCgnc2VsZWN0Jykgc2VsZWN0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XG4gICAgLyoqXG4gICAgICogVGhlIGV2ZW50IGVtaXR0ZXIgcmVzcG9uc2libGUgZm9yIGZpcmluZyBgdW5zZWxlY3RgIGV2ZW50cy4gRmlyZWQgd2hlbiB0aGUgYHNlbGVjdGVkYCBzdGF0ZSBpcyBzZXQgdG8gZmFsc2UuXG4gICAgICovXG4gICAgQE91dHB1dCgndW5zZWxlY3QnKSB1bnNlbGVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudWxsPigpO1xuICAgIC8qKlxuICAgICAqIFRoZSBldmVudCBlbWl0dGVyIHJlc3BvbnNpYmxlIGZvciBmaXJpbmcgYGNoYW5nZWAgZXZlbnRzLiBGaXJlZCB3aGVuIHRoZSBgc2VsZWN0ZWRgIHN0YXRlIGlzIGNoYW5nZWQuXG4gICAgICovXG4gICAgQE91dHB1dCgnY2hhbmdlJykgY2hhbmdlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvLyEgWyhzZWxlY3RlZCldIHR3by13YXkgYmluZGluZ1xuICAgIC8vIGNhbiBiZSBzZXQgdXNpbmcgYSBuby12YWx1ZSBhcmd1bWVudFxuICAgIHByb3RlY3RlZCBfc2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBUaGUgc2VsZWN0aW9uIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuIENvZXJjaWJsZSBpbnRvIGEgYm9vbGVhbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5zZWxlY3RlZCcpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hcmQtc2VsZWN0ZWQnKVxuICAgIGdldCBzZWxlY3RlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkO1xuICAgIH1cbiAgICBzZXQgc2VsZWN0ZWQodjogYW55KSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBUaGUgZXZlbnQgZW1pdHRlciByZXNwb25zaWJsZSBmb3IgZmlyaW5nIGBzZWxlY3RlZENoYW5nZWAgZXZlbnRzLiBGaXJlZCB3aGVuIHRoZSBgc2VsZWN0ZWRgIHN0YXRlIGlzIGNoYW5nZWQuXG4gICAgICovXG4gICAgQE91dHB1dCgpIHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlcyB0aGUgc2VsZWN0ZWQgc3RhdGUuIEVtaXRzIGFsbCBhcHByb3ByaWF0ZSBldmVudHMuXG4gICAgICovXG4gICAgdG9nZ2xlU2VsZWN0ZWQoKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkID0gIXRoaXMuX3NlbGVjdGVkO1xuXG4gICAgICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBzdGF0ZSB0byBcInNlbGVjdGVkXCIuIEVtaXRzIGFsbCBhcHByb3ByaWF0ZSBldmVudHMgb25seSBpZiB0aGUgc3RhdGUgY2hhbmdlcy5cbiAgICAgKi9cbiAgICBzZWxlY3QoKSB7XG4gICAgICAgIGNvbnN0IG9sZFN0YXRlID0gdGhpcy5fc2VsZWN0ZWQ7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkID0gdHJ1ZTtcblxuICAgICAgICBpZiAob2xkU3RhdGUgIT0gdHJ1ZSkgdGhpcy5fZW1pdENoYW5nZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBzdGF0ZSB0byBcInVuc2VsZWN0ZWRcIi4gRW1pdHMgYWxsIGFwcHJvcHJpYXRlIGV2ZW50cyBvbmx5IGlmIHRoZSBzdGF0ZSBjaGFuZ2VzLlxuICAgICAqL1xuICAgIHVuc2VsZWN0KCkge1xuICAgICAgICBjb25zdCBvbGRTdGF0ZSA9IHRoaXMuX3NlbGVjdGVkO1xuICAgICAgICB0aGlzLl9zZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgICAgIGlmIChvbGRTdGF0ZSAhPSBmYWxzZSkgdGhpcy5fZW1pdENoYW5nZSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ import { Component } from '@angular/core';
2
+ import { _FocusableComponentBase } from './../focusable-component';
3
+ import * as i0 from "@angular/core";
4
+ export class _ClearButtonComponent extends _FocusableComponentBase {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: _ClearButtonComponent, selector: "ard-_clear-button", usesInheritance: true, ngImport: i0, template: "<button #focusableElement\r\n class=\"ard-clear-btn-wrapper\"\r\n [tabindex]=\"tabIndex\"\r\n>\r\n <div class=\"ard-hitbox\"></div>\r\n <div class=\"ard-focus-overlay\"></div>\r\n <div class=\"ard-clear-btn\" aria-hidden=\"true\"></div>\r\n</button>", styles: [""] }); }
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonComponent, decorators: [{
9
+ type: Component,
10
+ args: [{ selector: 'ard-_clear-button', template: "<button #focusableElement\r\n class=\"ard-clear-btn-wrapper\"\r\n [tabindex]=\"tabIndex\"\r\n>\r\n <div class=\"ard-hitbox\"></div>\r\n <div class=\"ard-focus-overlay\"></div>\r\n <div class=\"ard-clear-btn\" aria-hidden=\"true\"></div>\r\n</button>" }]
11
+ }] });
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL2NsZWFyLWJ1dHRvbi9jbGVhci1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9faW50ZXJuYWwvY2xlYXItYnV0dG9uL2NsZWFyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQU9uRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsdUJBQXVCOzhHQUFyRCxxQkFBcUI7a0dBQXJCLHFCQUFxQixnRkNSbEMsMFFBT1M7OzJGRENJLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDSSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IF9Gb2N1c2FibGVDb21wb25lbnRCYXNlIH0gZnJvbSAnLi8uLi9mb2N1c2FibGUtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcmQtX2NsZWFyLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NsZWFyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2xlYXItYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIF9DbGVhckJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIF9Gb2N1c2FibGVDb21wb25lbnRCYXNlIHt9XG4iLCI8YnV0dG9uICNmb2N1c2FibGVFbGVtZW50XHJcbiAgICBjbGFzcz1cImFyZC1jbGVhci1idG4td3JhcHBlclwiXHJcbiAgICBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIlxyXG4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXJkLWhpdGJveFwiPjwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImFyZC1mb2N1cy1vdmVybGF5XCI+PC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXJkLWNsZWFyLWJ0blwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZGl2PlxyXG48L2J1dHRvbj4iXX0=
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { _ClearButtonComponent } from './clear-button.component';
4
+ import * as i0 from "@angular/core";
5
+ export class _ClearButtonModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonModule, declarations: [_ClearButtonComponent], imports: [CommonModule], exports: [_ClearButtonComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonModule, imports: [CommonModule] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _ClearButtonModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ declarations: [_ClearButtonComponent],
14
+ imports: [CommonModule],
15
+ exports: [_ClearButtonComponent],
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItYnV0dG9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL2NsZWFyLWJ1dHRvbi9jbGVhci1idXR0b24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQU9qRSxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixpQkFKWixxQkFBcUIsYUFDMUIsWUFBWSxhQUNaLHFCQUFxQjsrR0FFdEIsa0JBQWtCLFlBSGpCLFlBQVk7OzJGQUdiLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IF9DbGVhckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY2xlYXItYnV0dG9uLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbX0NsZWFyQnV0dG9uQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbX0NsZWFyQnV0dG9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgX0NsZWFyQnV0dG9uTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,44 @@
1
+ import { Directive, HostBinding, Input } from '@angular/core';
2
+ import { coerceBooleanProperty } from '@ardium-ui/devkit';
3
+ import * as i0 from "@angular/core";
4
+ export class _DisablableComponentBase {
5
+ constructor() {
6
+ //! no value arguments
7
+ this._readonly = false;
8
+ this._disabled = false;
9
+ }
10
+ get readonly() {
11
+ return this._readonly;
12
+ }
13
+ set readonly(v) {
14
+ this._readonly = coerceBooleanProperty(v);
15
+ }
16
+ get disabled() {
17
+ return this.readonly || this._disabled;
18
+ }
19
+ set disabled(v) {
20
+ this._disabled = coerceBooleanProperty(v);
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _DisablableComponentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: _DisablableComponentBase, inputs: { readonly: "readonly", disabled: "disabled" }, host: { properties: { "attr.readonly": "this.readonly", "class.ard-readonly": "this.readonly", "attr.disabled": "this.disabled", "class.ard-disabled": "this.disabled" } }, ngImport: i0 }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _DisablableComponentBase, decorators: [{
26
+ type: Directive
27
+ }], propDecorators: { readonly: [{
28
+ type: Input
29
+ }, {
30
+ type: HostBinding,
31
+ args: ['attr.readonly']
32
+ }, {
33
+ type: HostBinding,
34
+ args: ['class.ard-readonly']
35
+ }], disabled: [{
36
+ type: Input
37
+ }, {
38
+ type: HostBinding,
39
+ args: ['attr.disabled']
40
+ }, {
41
+ type: HostBinding,
42
+ args: ['class.ard-disabled']
43
+ }] } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzYWJsYWJsZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL19pbnRlcm5hbC9kaXNhYmxhYmxlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRzFELE1BQU0sT0FBZ0Isd0JBQXdCO0lBRDlDO1FBRUksc0JBQXNCO1FBQ1osY0FBUyxHQUFZLEtBQUssQ0FBQztRQWMzQixjQUFTLEdBQVksS0FBSyxDQUFDO0tBYXhDO0lBMUJHLElBTUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsQ0FBTTtRQUNmLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUdELElBTUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzNDLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxDQUFNO1FBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxDQUFDOzhHQTVCaUIsd0JBQXdCO2tHQUF4Qix3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBRDdDLFNBQVM7OEJBVUYsUUFBUTtzQkFOWCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGVBQWU7O3NCQUMzQixXQUFXO3VCQUFDLG9CQUFvQjtnQkFrQjdCLFFBQVE7c0JBTlgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxlQUFlOztzQkFDM0IsV0FBVzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBfRGlzYWJsYWJsZUNvbXBvbmVudEJhc2Uge1xuICAgIC8vISBubyB2YWx1ZSBhcmd1bWVudHNcbiAgICBwcm90ZWN0ZWQgX3JlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucmVhZG9ubHknKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYXJkLXJlYWRvbmx5JylcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBjb21wb25lbnQgaXMgcmVhZC1vbmx5LiBEZWZpbmVzIHRoZSBgcmVhZG9ubHlgIGhvc3QgYXR0cmlidXRlIGFuZCBgYXJkLXJlYWRvbmx5YCBob3N0IGNsYXNzLiBDb2VhcmNpYmxlIGludG8gYSBib29sZWFuLlxuICAgICAqL1xuICAgIGdldCByZWFkb25seSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xuICAgIH1cbiAgICBzZXQgcmVhZG9ubHkodjogYW55KSB7XG4gICAgICAgIHRoaXMuX3JlYWRvbmx5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hcmQtZGlzYWJsZWQnKVxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZC4gRGVmaW5lcyB0aGUgYGRpc2FibGVkYCBob3N0IGF0dHJpYnV0ZSBhbmQgYGFyZC1kaXNhYmxlZGAgaG9zdCBjbGFzcy4gQ29lYXJjaWJsZSBpbnRvIGEgYm9vbGVhbi5cbiAgICAgKi9cbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWRvbmx5IHx8IHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cbiAgICBzZXQgZGlzYWJsZWQodjogYW55KSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,91 @@
1
+ import { Directive, EventEmitter, Input, Output, ViewChildren } from '@angular/core';
2
+ import { coerceNumberProperty } from '@ardium-ui/devkit';
3
+ import { _DisablableComponentBase } from './disablable-component';
4
+ import * as i0 from "@angular/core";
5
+ export class _FocusableComponentBase extends _DisablableComponentBase {
6
+ constructor() {
7
+ super(...arguments);
8
+ //! tabindex
9
+ this._tabIndex = 0;
10
+ //! events
11
+ /**
12
+ * The event emitter responsible for firing `focus` events.
13
+ */
14
+ this.focusEvent = new EventEmitter();
15
+ /**
16
+ * The event emitter responsible for firing `blur` events.
17
+ */
18
+ this.blurEvent = new EventEmitter();
19
+ //! focus event handlers
20
+ /**
21
+ * Whether the component is currently focused.
22
+ */
23
+ this.isFocused = false;
24
+ }
25
+ /**
26
+ * Focuses the correct element in the component.
27
+ */
28
+ focus() {
29
+ this._focusableElement?.first?.nativeElement.focus();
30
+ }
31
+ /**
32
+ * Focuses the first of all available elements in the component.
33
+ */
34
+ focusFirst() {
35
+ this.focus();
36
+ }
37
+ /**
38
+ * Focuses the last of all available elements in the component.
39
+ */
40
+ focusLast() {
41
+ this._focusableElement?.last?.nativeElement.focus();
42
+ }
43
+ /**
44
+ * Blurs all focusable elements in the component.
45
+ */
46
+ blur() {
47
+ this._focusableElement?.forEach(el => el.nativeElement.blur());
48
+ }
49
+ /**
50
+ * The component's overall tab index. If the component is disabled, it is always `-1`. Coercible into a number, defaults to `0`.
51
+ */
52
+ get tabIndex() {
53
+ return this.disabled ? -1 : this._tabIndex;
54
+ }
55
+ set tabIndex(v) {
56
+ this._tabIndex = coerceNumberProperty(v, 0);
57
+ }
58
+ /**
59
+ * Function to handle when an element is focused. Sets `isFocused` and fires the `focus` event.
60
+ * @param event The focus event to emit.
61
+ */
62
+ onFocus(event) {
63
+ this.isFocused = true;
64
+ this.focusEvent.emit(event);
65
+ }
66
+ /**
67
+ * Function to handle when an element is blurred. Sets `isFocused` and fires the `blur` event.
68
+ * @param event The focus event to emit.
69
+ */
70
+ onBlur(event) {
71
+ this.isFocused = false;
72
+ this.blurEvent.emit(event);
73
+ }
74
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _FocusableComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
75
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: _FocusableComponentBase, inputs: { tabIndex: "tabIndex" }, outputs: { focusEvent: "focus", blurEvent: "blur" }, viewQueries: [{ propertyName: "_focusableElement", predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
76
+ }
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: _FocusableComponentBase, decorators: [{
78
+ type: Directive
79
+ }], propDecorators: { _focusableElement: [{
80
+ type: ViewChildren,
81
+ args: ['focusableElement']
82
+ }], tabIndex: [{
83
+ type: Input
84
+ }], focusEvent: [{
85
+ type: Output,
86
+ args: ['focus']
87
+ }], blurEvent: [{
88
+ type: Output,
89
+ args: ['blur']
90
+ }] } });
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXNhYmxlLWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL2ZvY3VzYWJsZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBR2xFLE1BQU0sT0FBZ0IsdUJBQXdCLFNBQVEsd0JBQXdCO0lBRDlFOztRQStCSSxZQUFZO1FBQ0YsY0FBUyxHQUFXLENBQUMsQ0FBQztRQVloQyxVQUFVO1FBQ1Y7O1dBRUc7UUFDYyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUM3RDs7V0FFRztRQUNhLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRTNELHdCQUF3QjtRQUN4Qjs7V0FFRztRQUNJLGNBQVMsR0FBWSxLQUFLLENBQUM7S0FrQnJDO0lBdEVHOztPQUVHO0lBQ0ksS0FBSztRQUNSLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFDRDs7T0FFRztJQUNJLFVBQVU7UUFDYixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUNEOztPQUVHO0lBQ0ksU0FBUztRQUNaLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFDRDs7T0FFRztJQUNJLElBQUk7UUFDUCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFJRDs7T0FFRztJQUNILElBQ0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDL0MsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLENBQU07UUFDZixJQUFJLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBa0JEOzs7T0FHRztJQUNILE9BQU8sQ0FBQyxLQUFpQjtRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEtBQWlCO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7OEdBMUVpQix1QkFBdUI7a0dBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFENUMsU0FBUzs4QkFJVyxpQkFBaUI7c0JBRGpDLFlBQVk7dUJBQUMsa0JBQWtCO2dCQWtDNUIsUUFBUTtzQkFEWCxLQUFLO2dCQVlXLFVBQVU7c0JBQTFCLE1BQU07dUJBQUMsT0FBTztnQkFJQyxTQUFTO3NCQUF4QixNQUFNO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xuaW1wb3J0IHsgX0Rpc2FibGFibGVDb21wb25lbnRCYXNlIH0gZnJvbSAnLi9kaXNhYmxhYmxlLWNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIF9Gb2N1c2FibGVDb21wb25lbnRCYXNlIGV4dGVuZHMgX0Rpc2FibGFibGVDb21wb25lbnRCYXNlIHtcbiAgICAvLyEgbWFrZSB0aGUgY29tcG9uZW50IGZvY3VzYWJsZSBwcm9ncmFtbWF0aWNhbGx5XG4gICAgQFZpZXdDaGlsZHJlbignZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZm9jdXNhYmxlRWxlbWVudCE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj47XG5cbiAgICAvKipcbiAgICAgKiBGb2N1c2VzIHRoZSBjb3JyZWN0IGVsZW1lbnQgaW4gdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZvY3VzYWJsZUVsZW1lbnQ/LmZpcnN0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEZvY3VzZXMgdGhlIGZpcnN0IG9mIGFsbCBhdmFpbGFibGUgZWxlbWVudHMgaW4gdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZm9jdXNGaXJzdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBGb2N1c2VzIHRoZSBsYXN0IG9mIGFsbCBhdmFpbGFibGUgZWxlbWVudHMgaW4gdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZm9jdXNMYXN0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb2N1c2FibGVFbGVtZW50Py5sYXN0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEJsdXJzIGFsbCBmb2N1c2FibGUgZWxlbWVudHMgaW4gdGhlIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9jdXNhYmxlRWxlbWVudD8uZm9yRWFjaChlbCA9PiBlbC5uYXRpdmVFbGVtZW50LmJsdXIoKSk7XG4gICAgfVxuXG4gICAgLy8hIHRhYmluZGV4XG4gICAgcHJvdGVjdGVkIF90YWJJbmRleDogbnVtYmVyID0gMDtcbiAgICAvKipcbiAgICAgKiBUaGUgY29tcG9uZW50J3Mgb3ZlcmFsbCB0YWIgaW5kZXguIElmIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQsIGl0IGlzIGFsd2F5cyBgLTFgLiBDb2VyY2libGUgaW50byBhIG51bWJlciwgZGVmYXVsdHMgdG8gYDBgLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gLTEgOiB0aGlzLl90YWJJbmRleDtcbiAgICB9XG4gICAgc2V0IHRhYkluZGV4KHY6IGFueSkge1xuICAgICAgICB0aGlzLl90YWJJbmRleCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApO1xuICAgIH1cblxuICAgIC8vISBldmVudHNcbiAgICAvKipcbiAgICAgKiBUaGUgZXZlbnQgZW1pdHRlciByZXNwb25zaWJsZSBmb3IgZmlyaW5nIGBmb2N1c2AgZXZlbnRzLlxuICAgICAqL1xuICAgIEBPdXRwdXQoJ2ZvY3VzJykgZm9jdXNFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcbiAgICAvKipcbiAgICAgKiBUaGUgZXZlbnQgZW1pdHRlciByZXNwb25zaWJsZSBmb3IgZmlyaW5nIGBibHVyYCBldmVudHMuXG4gICAgICovXG4gICAgQE91dHB1dCgnYmx1cicpIGJsdXJFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcblxuICAgIC8vISBmb2N1cyBldmVudCBoYW5kbGVyc1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBjdXJyZW50bHkgZm9jdXNlZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNGb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBoYW5kbGUgd2hlbiBhbiBlbGVtZW50IGlzIGZvY3VzZWQuIFNldHMgYGlzRm9jdXNlZGAgYW5kIGZpcmVzIHRoZSBgZm9jdXNgIGV2ZW50LlxuICAgICAqIEBwYXJhbSBldmVudCBUaGUgZm9jdXMgZXZlbnQgdG8gZW1pdC5cbiAgICAgKi9cbiAgICBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5mb2N1c0V2ZW50LmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBoYW5kbGUgd2hlbiBhbiBlbGVtZW50IGlzIGJsdXJyZWQuIFNldHMgYGlzRm9jdXNlZGAgYW5kIGZpcmVzIHRoZSBgYmx1cmAgZXZlbnQuXG4gICAgICogQHBhcmFtIGV2ZW50IFRoZSBmb2N1cyBldmVudCB0byBlbWl0LlxuICAgICAqL1xuICAgIG9uQmx1cihldmVudDogRm9jdXNFdmVudCkge1xuICAgICAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJsdXJFdmVudC5lbWl0KGV2ZW50KTtcbiAgICB9XG59XG4iXX0=