@ardium-ui/ui 1.0.2 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/esm2022/lib/_internal/boolean-component.mjs +28 -42
  2. package/esm2022/lib/_internal/clear-button/clear-button.component.mjs +5 -5
  3. package/esm2022/lib/_internal/clear-button/clear-button.module.mjs +4 -4
  4. package/esm2022/lib/_internal/disablable-component.mjs +24 -22
  5. package/esm2022/lib/_internal/focusable-component.mjs +12 -25
  6. package/esm2022/lib/_internal/item-storages/dropdown-item-storage.mjs +172 -169
  7. package/esm2022/lib/_internal/item-storages/simple-item-storage.mjs +115 -120
  8. package/esm2022/lib/_internal/item-storages/simplest-item-storage.mjs +56 -53
  9. package/esm2022/lib/_internal/models/pagination.model.mjs +72 -106
  10. package/esm2022/lib/_internal/ngmodel-component.mjs +5 -5
  11. package/esm2022/lib/_internal/queue.mjs +1 -1
  12. package/esm2022/lib/_internal/selectable-list-component.mjs +74 -98
  13. package/esm2022/lib/badge/badge.directive.mjs +70 -99
  14. package/esm2022/lib/badge/badge.module.mjs +4 -4
  15. package/esm2022/lib/badge/index.mjs +4 -0
  16. package/esm2022/lib/buttons/_button-base.mjs +13 -35
  17. package/esm2022/lib/buttons/button/button.component.mjs +22 -37
  18. package/esm2022/lib/buttons/button/button.module.mjs +4 -4
  19. package/esm2022/lib/buttons/button/index.mjs +3 -0
  20. package/esm2022/lib/buttons/fab/fab.component.mjs +16 -28
  21. package/esm2022/lib/buttons/fab/fab.module.mjs +4 -4
  22. package/esm2022/lib/buttons/fab/index.mjs +3 -0
  23. package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +17 -25
  24. package/esm2022/lib/buttons/icon-button/icon-button.module.mjs +4 -4
  25. package/esm2022/lib/buttons/icon-button/index.mjs +3 -0
  26. package/esm2022/lib/card/card.children.mjs +32 -33
  27. package/esm2022/lib/card/card.component.mjs +14 -17
  28. package/esm2022/lib/card/card.module.mjs +4 -4
  29. package/esm2022/lib/card/index.mjs +5 -0
  30. package/esm2022/lib/checkbox/checkbox.component.mjs +33 -46
  31. package/esm2022/lib/checkbox/checkbox.module.mjs +4 -4
  32. package/esm2022/lib/checkbox/index.mjs +4 -0
  33. package/esm2022/lib/checkbox-list/checkbox-list.component.mjs +31 -57
  34. package/esm2022/lib/checkbox-list/checkbox-list.module.mjs +4 -4
  35. package/esm2022/lib/checkbox-list/index.mjs +4 -0
  36. package/esm2022/lib/chip/chip.component.mjs +22 -42
  37. package/esm2022/lib/chip/chip.module.mjs +4 -4
  38. package/esm2022/lib/chip/deletable-chip/deletable-chip.component.mjs +28 -53
  39. package/esm2022/lib/chip/index.mjs +5 -0
  40. package/esm2022/lib/chip/selectable-chip/selectable-chip.component.mjs +25 -49
  41. package/esm2022/lib/color/color-display/color-display.component.mjs +15 -32
  42. package/esm2022/lib/color/color-display/color-display.module.mjs +4 -4
  43. package/esm2022/lib/color/color-display/index.mjs +4 -0
  44. package/esm2022/lib/color/color-picker/color-picker.types.mjs +1 -1
  45. package/esm2022/lib/dialog/dialog.component.mjs +54 -130
  46. package/esm2022/lib/dialog/dialog.directives.mjs +3 -3
  47. package/esm2022/lib/dialog/dialog.module.mjs +4 -4
  48. package/esm2022/lib/dialog/dialog.types.mjs +1 -1
  49. package/esm2022/lib/dialog/index.mjs +5 -0
  50. package/esm2022/lib/divider/divider.component.mjs +9 -14
  51. package/esm2022/lib/divider/divider.module.mjs +4 -4
  52. package/esm2022/lib/divider/index.mjs +3 -0
  53. package/esm2022/lib/dropdown-panel/dropdown-panel.component.mjs +40 -59
  54. package/esm2022/lib/dropdown-panel/dropdown-panel.module.mjs +4 -4
  55. package/esm2022/lib/dropdown-panel/index.mjs +4 -0
  56. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.component.mjs +12 -17
  57. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.directives.mjs +9 -9
  58. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.module.mjs +6 -6
  59. package/esm2022/lib/file-inputs/file-drop-area/index.mjs +4 -0
  60. package/esm2022/lib/file-inputs/file-input/file-input.component.mjs +24 -50
  61. package/esm2022/lib/file-inputs/file-input/file-input.directives.mjs +18 -18
  62. package/esm2022/lib/file-inputs/file-input/file-input.module.mjs +4 -4
  63. package/esm2022/lib/file-inputs/file-input/index.mjs +4 -0
  64. package/esm2022/lib/file-inputs/file-input-base.mjs +38 -72
  65. package/esm2022/lib/form-field-frame/form-field-frame.component.mjs +20 -47
  66. package/esm2022/lib/form-field-frame/form-field-frame.directives.mjs +6 -6
  67. package/esm2022/lib/form-field-frame/form-field-frame.module.mjs +4 -4
  68. package/esm2022/lib/form-field-frame/index.mjs +4 -0
  69. package/esm2022/lib/icon/icon.component.mjs +32 -67
  70. package/esm2022/lib/icon/icon.module.mjs +4 -4
  71. package/esm2022/lib/icon/icon.pipe.mjs +3 -3
  72. package/esm2022/lib/icon/index.mjs +4 -0
  73. package/esm2022/lib/inputs/color-input/color-input.directives.mjs +24 -24
  74. package/esm2022/lib/inputs/color-input/color-input.types.mjs +1 -1
  75. package/esm2022/lib/inputs/digit-input/digit-input.component.mjs +65 -115
  76. package/esm2022/lib/inputs/digit-input/digit-input.model.mjs +83 -92
  77. package/esm2022/lib/inputs/digit-input/digit-input.module.mjs +4 -4
  78. package/esm2022/lib/inputs/digit-input/digit-input.types.mjs +1 -1
  79. package/esm2022/lib/inputs/digit-input/digit-input.utils.mjs +1 -1
  80. package/esm2022/lib/inputs/digit-input/index.mjs +4 -0
  81. package/esm2022/lib/inputs/hex-input/hex-input.component.mjs +59 -122
  82. package/esm2022/lib/inputs/hex-input/hex-input.directives.mjs +9 -9
  83. package/esm2022/lib/inputs/hex-input/hex-input.module.mjs +24 -8
  84. package/esm2022/lib/inputs/hex-input/index.mjs +4 -0
  85. package/esm2022/lib/inputs/hex-input.model.mjs +24 -33
  86. package/esm2022/lib/inputs/input/index.mjs +4 -0
  87. package/esm2022/lib/inputs/input/input.component.mjs +95 -154
  88. package/esm2022/lib/inputs/input/input.directives.mjs +16 -16
  89. package/esm2022/lib/inputs/input/input.module.mjs +21 -7
  90. package/esm2022/lib/inputs/input-transformers.mjs +6 -6
  91. package/esm2022/lib/inputs/input-utils.mjs +75 -94
  92. package/esm2022/lib/inputs/number-input/index.mjs +4 -0
  93. package/esm2022/lib/inputs/number-input/number-input.component.mjs +106 -170
  94. package/esm2022/lib/inputs/number-input/number-input.directives.mjs +3 -3
  95. package/esm2022/lib/inputs/number-input/number-input.module.mjs +4 -4
  96. package/esm2022/lib/inputs/password-input/index.mjs +5 -0
  97. package/esm2022/lib/inputs/password-input/password-input.component.mjs +74 -144
  98. package/esm2022/lib/inputs/password-input/password-input.directives.mjs +12 -12
  99. package/esm2022/lib/inputs/password-input/password-input.module.mjs +4 -4
  100. package/esm2022/lib/inputs/password-input/password-input.types.mjs +1 -1
  101. package/esm2022/lib/inputs/simple-input/index.mjs +4 -0
  102. package/esm2022/lib/inputs/simple-input/simple-input.component.mjs +57 -110
  103. package/esm2022/lib/inputs/simple-input/simple-input.directives.mjs +9 -9
  104. package/esm2022/lib/inputs/simple-input/simple-input.module.mjs +4 -4
  105. package/esm2022/lib/kbd/index.mjs +4 -0
  106. package/esm2022/lib/kbd/kbd.component.mjs +15 -29
  107. package/esm2022/lib/kbd/kbd.module.mjs +4 -4
  108. package/esm2022/lib/kbd/kbd.pipe.mjs +3 -3
  109. package/esm2022/lib/kbd-shortcut/index.mjs +3 -0
  110. package/esm2022/lib/kbd-shortcut/kbd-shortcut.component.mjs +23 -40
  111. package/esm2022/lib/kbd-shortcut/kbd-shortcut.module.mjs +4 -4
  112. package/esm2022/lib/modal/index.mjs +3 -0
  113. package/esm2022/lib/modal/modal.component.mjs +42 -83
  114. package/esm2022/lib/modal/modal.module.mjs +4 -4
  115. package/esm2022/lib/option/index.mjs +3 -0
  116. package/esm2022/lib/option/option.component.mjs +24 -46
  117. package/esm2022/lib/option/option.module.mjs +4 -4
  118. package/esm2022/lib/progress-bar/index.mjs +5 -0
  119. package/esm2022/lib/progress-bar/progress-bar.component.mjs +43 -81
  120. package/esm2022/lib/progress-bar/progress-bar.directive.mjs +3 -3
  121. package/esm2022/lib/progress-bar/progress-bar.module.mjs +4 -4
  122. package/esm2022/lib/progress-bar/progress-bar.types.mjs +1 -1
  123. package/esm2022/lib/progress-circle/index.mjs +5 -0
  124. package/esm2022/lib/progress-circle/progress-circle.component.mjs +33 -78
  125. package/esm2022/lib/progress-circle/progress-circle.directive.mjs +3 -3
  126. package/esm2022/lib/progress-circle/progress-circle.module.mjs +4 -4
  127. package/esm2022/lib/progress-circle/progress-circle.types.mjs +1 -1
  128. package/esm2022/lib/radio/index.mjs +4 -0
  129. package/esm2022/lib/radio/radio/radio.component.mjs +16 -25
  130. package/esm2022/lib/radio/radio-group.component.mjs +71 -85
  131. package/esm2022/lib/radio/radio.module.mjs +4 -4
  132. package/esm2022/lib/search-functions.mjs +7 -7
  133. package/esm2022/lib/segment/index.mjs +5 -0
  134. package/esm2022/lib/segment/segment.component.mjs +70 -137
  135. package/esm2022/lib/segment/segment.directives.mjs +4 -4
  136. package/esm2022/lib/segment/segment.module.mjs +4 -4
  137. package/esm2022/lib/select/index.mjs +5 -0
  138. package/esm2022/lib/select/select.component.mjs +348 -655
  139. package/esm2022/lib/select/select.directive.mjs +46 -46
  140. package/esm2022/lib/select/select.module.mjs +4 -4
  141. package/esm2022/lib/select/select.types.mjs +1 -1
  142. package/esm2022/lib/slide-toggle/index.mjs +4 -0
  143. package/esm2022/lib/slide-toggle/slide-toggle.component.mjs +19 -24
  144. package/esm2022/lib/slide-toggle/slide-toggle.module.mjs +4 -4
  145. package/esm2022/lib/slide-toggle/slide-toggle.types.mjs +5 -0
  146. package/esm2022/lib/slider/abstract-slider.mjs +111 -200
  147. package/esm2022/lib/slider/index.mjs +7 -0
  148. package/esm2022/lib/slider/range-slider/range-slider.component.mjs +26 -23
  149. package/esm2022/lib/slider/range-slider/range-slider.module.mjs +4 -4
  150. package/esm2022/lib/slider/slider.component.mjs +13 -10
  151. package/esm2022/lib/slider/slider.directive.mjs +3 -3
  152. package/esm2022/lib/slider/slider.module.mjs +7 -7
  153. package/esm2022/lib/slider/slider.types.mjs +1 -1
  154. package/esm2022/lib/snackbar/snackbar-ref.mjs +1 -1
  155. package/esm2022/lib/snackbar/snackbar.component.mjs +8 -8
  156. package/esm2022/lib/snackbar/snackbar.service.mjs +13 -12
  157. package/esm2022/lib/snackbar/snackbar.types.mjs +1 -1
  158. package/esm2022/lib/spinner/index.mjs +3 -0
  159. package/esm2022/lib/spinner/spinner.component.mjs +9 -13
  160. package/esm2022/lib/spinner/spinner.module.mjs +4 -4
  161. package/esm2022/lib/star/index.mjs +4 -0
  162. package/esm2022/lib/star/star-button/index.mjs +3 -0
  163. package/esm2022/lib/star/star-button/star-button.component.mjs +17 -26
  164. package/esm2022/lib/star/star-button/star-button.module.mjs +4 -4
  165. package/esm2022/lib/star/star-display/index.mjs +3 -0
  166. package/esm2022/lib/star/star-display/star-display.component.mjs +48 -55
  167. package/esm2022/lib/star/star-display/star-display.module.mjs +4 -4
  168. package/esm2022/lib/star/star-input/index.mjs +3 -0
  169. package/esm2022/lib/star/star-input/star-input.component.mjs +70 -106
  170. package/esm2022/lib/star/star-input/star-input.module.mjs +4 -4
  171. package/esm2022/lib/star/star.component.mjs +12 -20
  172. package/esm2022/lib/star/star.module.mjs +4 -4
  173. package/esm2022/lib/statebox/index.mjs +3 -0
  174. package/esm2022/lib/statebox/statebox.component.mjs +64 -102
  175. package/esm2022/lib/statebox/statebox.module.mjs +4 -4
  176. package/esm2022/lib/statebox/statebox.types.mjs +1 -1
  177. package/esm2022/lib/tabber/index.mjs +4 -0
  178. package/esm2022/lib/tabber/tab/tab.component.mjs +42 -0
  179. package/esm2022/lib/tabber/tabber.component.mjs +83 -0
  180. package/esm2022/lib/tabber/tabber.module.mjs +19 -0
  181. package/esm2022/lib/table/index.mjs +5 -0
  182. package/esm2022/lib/table/table-item-storage.mjs +204 -200
  183. package/esm2022/lib/table/table.component.mjs +184 -304
  184. package/esm2022/lib/table/table.directives.mjs +19 -21
  185. package/esm2022/lib/table/table.module.mjs +4 -4
  186. package/esm2022/lib/table/utils.mjs +1 -1
  187. package/esm2022/lib/table-from-csv/index.mjs +3 -0
  188. package/esm2022/lib/table-from-csv/table-from-csv.component.mjs +85 -29
  189. package/esm2022/lib/table-from-csv/table-from-csv.module.mjs +4 -4
  190. package/esm2022/lib/table-pagination/index.mjs +4 -0
  191. package/esm2022/lib/table-pagination/table-pagination.component.mjs +46 -114
  192. package/esm2022/lib/table-pagination/table-pagination.module.mjs +4 -4
  193. package/esm2022/lib/types/item-storage.types.mjs +1 -1
  194. package/esm2022/lib/types/utility.types.mjs +2 -2
  195. package/esm2022/public-api.mjs +58 -182
  196. package/fesm2022/ardium-ui-ui.mjs +7847 -11692
  197. package/fesm2022/ardium-ui-ui.mjs.map +1 -1
  198. package/lib/_internal/boolean-component.d.ts +8 -9
  199. package/lib/_internal/clear-button/clear-button.component.d.ts +1 -1
  200. package/lib/_internal/disablable-component.d.ts +12 -7
  201. package/lib/_internal/focusable-component.d.ts +5 -7
  202. package/lib/_internal/item-storages/dropdown-item-storage.d.ts +43 -41
  203. package/lib/_internal/item-storages/simple-item-storage.d.ts +28 -25
  204. package/lib/_internal/item-storages/simplest-item-storage.d.ts +14 -9
  205. package/lib/_internal/models/pagination.model.d.ts +38 -42
  206. package/lib/_internal/ngmodel-component.d.ts +1 -1
  207. package/lib/_internal/selectable-list-component.d.ts +30 -30
  208. package/lib/badge/badge.directive.d.ts +15 -20
  209. package/lib/badge/index.d.ts +3 -0
  210. package/lib/buttons/_button-base.d.ts +9 -12
  211. package/lib/buttons/button/button.component.d.ts +6 -8
  212. package/lib/buttons/button/index.d.ts +2 -0
  213. package/lib/buttons/fab/fab.component.d.ts +4 -6
  214. package/lib/buttons/fab/index.d.ts +2 -0
  215. package/lib/buttons/icon-button/icon-button.component.d.ts +6 -7
  216. package/lib/buttons/icon-button/index.d.ts +2 -0
  217. package/lib/card/card.children.d.ts +4 -3
  218. package/lib/card/card.component.d.ts +5 -4
  219. package/lib/card/index.d.ts +4 -0
  220. package/lib/checkbox/checkbox.component.d.ts +8 -12
  221. package/lib/checkbox/index.d.ts +3 -0
  222. package/lib/checkbox-list/checkbox-list.component.d.ts +22 -21
  223. package/lib/checkbox-list/index.d.ts +3 -0
  224. package/lib/chip/chip.component.d.ts +8 -10
  225. package/lib/chip/deletable-chip/deletable-chip.component.d.ts +11 -14
  226. package/lib/chip/index.d.ts +4 -0
  227. package/lib/chip/selectable-chip/selectable-chip.component.d.ts +10 -12
  228. package/lib/color/color-display/color-display.component.d.ts +6 -9
  229. package/lib/color/color-display/index.d.ts +3 -0
  230. package/lib/color/color-picker/color-picker.types.d.ts +4 -4
  231. package/lib/dialog/dialog.component.d.ts +25 -35
  232. package/lib/dialog/dialog.types.d.ts +2 -2
  233. package/lib/dialog/index.d.ts +4 -0
  234. package/lib/divider/divider.component.d.ts +3 -4
  235. package/lib/divider/index.d.ts +2 -0
  236. package/lib/dropdown-panel/dropdown-panel.component.d.ts +17 -20
  237. package/lib/dropdown-panel/index.d.ts +3 -0
  238. package/lib/file-inputs/file-drop-area/file-drop-area.component.d.ts +5 -4
  239. package/lib/file-inputs/file-drop-area/index.d.ts +3 -0
  240. package/lib/file-inputs/file-input/file-input.component.d.ts +13 -17
  241. package/lib/file-inputs/file-input/index.d.ts +3 -0
  242. package/lib/file-inputs/file-input-base.d.ts +13 -18
  243. package/lib/form-field-frame/form-field-frame.component.d.ts +12 -16
  244. package/lib/form-field-frame/index.d.ts +3 -0
  245. package/lib/icon/icon.component.d.ts +10 -19
  246. package/lib/icon/index.d.ts +3 -0
  247. package/lib/inputs/color-input/color-input.types.d.ts +2 -2
  248. package/lib/inputs/digit-input/digit-input.component.d.ts +22 -30
  249. package/lib/inputs/digit-input/digit-input.model.d.ts +8 -12
  250. package/lib/inputs/digit-input/digit-input.types.d.ts +4 -4
  251. package/lib/inputs/digit-input/digit-input.utils.d.ts +4 -5
  252. package/lib/inputs/digit-input/index.d.ts +3 -0
  253. package/lib/inputs/hex-input/hex-input.component.d.ts +32 -38
  254. package/lib/inputs/hex-input/index.d.ts +3 -0
  255. package/lib/inputs/hex-input.model.d.ts +10 -11
  256. package/lib/inputs/input/index.d.ts +3 -0
  257. package/lib/inputs/input/input.component.d.ts +34 -40
  258. package/lib/inputs/input/input.directives.d.ts +3 -3
  259. package/lib/inputs/input-utils.d.ts +24 -27
  260. package/lib/inputs/number-input/index.d.ts +3 -0
  261. package/lib/inputs/number-input/number-input.component.d.ts +38 -48
  262. package/lib/inputs/password-input/index.d.ts +4 -0
  263. package/lib/inputs/password-input/password-input.component.d.ts +28 -40
  264. package/lib/inputs/password-input/password-input.types.d.ts +2 -2
  265. package/lib/inputs/simple-input/index.d.ts +3 -0
  266. package/lib/inputs/simple-input/simple-input.component.d.ts +30 -35
  267. package/lib/kbd/index.d.ts +3 -0
  268. package/lib/kbd/kbd.component.d.ts +6 -8
  269. package/lib/kbd-shortcut/index.d.ts +2 -0
  270. package/lib/kbd-shortcut/kbd-shortcut.component.d.ts +7 -10
  271. package/lib/modal/index.d.ts +2 -0
  272. package/lib/modal/modal.component.d.ts +22 -30
  273. package/lib/option/index.d.ts +2 -0
  274. package/lib/option/option.component.d.ts +11 -16
  275. package/lib/progress-bar/index.d.ts +4 -0
  276. package/lib/progress-bar/progress-bar.component.d.ts +14 -20
  277. package/lib/progress-bar/progress-bar.types.d.ts +2 -2
  278. package/lib/progress-circle/index.d.ts +4 -0
  279. package/lib/progress-circle/progress-circle.component.d.ts +12 -20
  280. package/lib/progress-circle/progress-circle.types.d.ts +2 -2
  281. package/lib/radio/index.d.ts +3 -0
  282. package/lib/radio/radio/radio.component.d.ts +7 -8
  283. package/lib/radio/radio-group.component.d.ts +13 -16
  284. package/lib/segment/index.d.ts +4 -0
  285. package/lib/segment/segment.component.d.ts +22 -34
  286. package/lib/segment/segment.directives.d.ts +2 -3
  287. package/lib/select/index.d.ts +4 -0
  288. package/lib/select/select.component.d.ts +114 -160
  289. package/lib/select/select.directive.d.ts +3 -3
  290. package/lib/select/select.types.d.ts +2 -76
  291. package/lib/slide-toggle/index.d.ts +3 -0
  292. package/lib/slide-toggle/slide-toggle.component.d.ts +9 -7
  293. package/lib/slide-toggle/slide-toggle.types.d.ts +5 -0
  294. package/lib/slider/abstract-slider.d.ts +38 -55
  295. package/lib/slider/index.d.ts +6 -0
  296. package/lib/slider/range-slider/range-slider.component.d.ts +3 -1
  297. package/lib/slider/slider.component.d.ts +2 -0
  298. package/lib/slider/slider.types.d.ts +8 -8
  299. package/lib/snackbar/snackbar-ref.d.ts +1 -2
  300. package/lib/snackbar/snackbar.component.d.ts +3 -3
  301. package/lib/snackbar/snackbar.service.d.ts +2 -2
  302. package/lib/snackbar/snackbar.types.d.ts +4 -4
  303. package/lib/spinner/index.d.ts +2 -0
  304. package/lib/spinner/spinner.component.d.ts +3 -3
  305. package/lib/star/index.d.ts +3 -0
  306. package/lib/star/star-button/index.d.ts +2 -0
  307. package/lib/star/star-button/star-button.component.d.ts +7 -7
  308. package/lib/star/star-display/index.d.ts +2 -0
  309. package/lib/star/star-display/star-display.component.d.ts +8 -12
  310. package/lib/star/star-input/index.d.ts +2 -0
  311. package/lib/star/star-input/star-input.component.d.ts +17 -22
  312. package/lib/star/star.component.d.ts +5 -5
  313. package/lib/statebox/index.d.ts +3 -0
  314. package/lib/statebox/statebox.component.d.ts +15 -21
  315. package/lib/statebox/statebox.types.d.ts +12 -8
  316. package/lib/tabber/index.d.ts +3 -0
  317. package/lib/tabber/tab/tab.component.d.ts +18 -0
  318. package/lib/tabber/tabber.component.d.ts +25 -0
  319. package/lib/tabber/tabber.module.d.ts +9 -0
  320. package/lib/table/index.d.ts +4 -0
  321. package/lib/table/table-item-storage.d.ts +70 -58
  322. package/lib/table/table.component.d.ts +59 -78
  323. package/lib/table/table.directives.d.ts +4 -3
  324. package/lib/table-from-csv/index.d.ts +2 -0
  325. package/lib/table-from-csv/table-from-csv.component.d.ts +46 -9
  326. package/lib/table-pagination/index.d.ts +3 -0
  327. package/lib/table-pagination/table-pagination.component.d.ts +21 -30
  328. package/lib/types/item-storage.types.d.ts +19 -18
  329. package/lib/types/utility.types.d.ts +2 -1
  330. package/package.json +8 -9
  331. package/prebuilt-themes/default/badge.css +5 -5
  332. package/prebuilt-themes/default/buttons/fab.css +4 -3
  333. package/prebuilt-themes/default/buttons/fab.css.map +1 -1
  334. package/prebuilt-themes/default/card.css +7 -7
  335. package/prebuilt-themes/default/chips.css +3 -8
  336. package/prebuilt-themes/default/chips.css.map +1 -1
  337. package/prebuilt-themes/default/core.css +6 -3
  338. package/prebuilt-themes/default/core.css.map +1 -1
  339. package/prebuilt-themes/default/inputs/color-input.css +1 -1
  340. package/prebuilt-themes/default/inputs/digit-input.css +1 -1
  341. package/prebuilt-themes/default/inputs/file-input.css +139 -2
  342. package/prebuilt-themes/default/inputs/file-input.css.map +1 -1
  343. package/prebuilt-themes/default/inputs/hex-input.css +2 -2
  344. package/prebuilt-themes/default/inputs/input.css +1 -1
  345. package/prebuilt-themes/default/inputs/search-bar.css +1 -1
  346. package/prebuilt-themes/default/inputs/simple-input.css +1 -1
  347. package/prebuilt-themes/default/modal.css +1 -1
  348. package/prebuilt-themes/default/segment.css +2 -2
  349. package/prebuilt-themes/default/segment.css.map +1 -1
  350. package/prebuilt-themes/default/select.css +5 -3
  351. package/prebuilt-themes/default/select.css.map +1 -1
  352. package/prebuilt-themes/default/snackbar.css +0 -1
  353. package/prebuilt-themes/default/snackbar.css.map +1 -1
  354. package/prebuilt-themes/default/tabber.css +207 -0
  355. package/prebuilt-themes/default/tabber.css.map +1 -0
  356. package/public-api.d.ts +43 -136
  357. package/themes/default/_clear-button.scss +1 -1
  358. package/themes/default/badge.scss +5 -5
  359. package/themes/default/buttons/fab.scss +5 -3
  360. package/themes/default/card.scss +7 -7
  361. package/themes/default/chips.scss +2 -8
  362. package/themes/default/core.scss +6 -3
  363. package/themes/default/inputs/digit-input.scss +1 -1
  364. package/themes/default/inputs/file-input.scss +8 -1
  365. package/themes/default/inputs/hex-input.scss +1 -1
  366. package/themes/default/modal.scss +1 -1
  367. package/themes/default/segment.scss +2 -1
  368. package/themes/default/select.scss +4 -2
  369. package/themes/default/snackbar.scss +0 -2
  370. package/themes/default/tabber.scss +86 -0
  371. package/esm2022/lib/calendar/calendar.component.mjs +0 -979
  372. package/esm2022/lib/calendar/calendar.directives.mjs +0 -107
  373. package/esm2022/lib/calendar/calendar.helpers.mjs +0 -47
  374. package/esm2022/lib/calendar/calendar.module.mjs +0 -21
  375. package/esm2022/lib/calendar/calendar.types.mjs +0 -11
  376. package/esm2022/lib/color/color-picker/color-picker.component.mjs +0 -484
  377. package/esm2022/lib/color/color-picker/color-picker.directives.mjs +0 -55
  378. package/esm2022/lib/color/color-picker/color-picker.module.mjs +0 -43
  379. package/esm2022/lib/inputs/color-input/color-input.component.mjs +0 -421
  380. package/esm2022/lib/inputs/color-input/color-input.module.mjs +0 -85
  381. package/lib/calendar/calendar.component.d.ts +0 -155
  382. package/lib/calendar/calendar.directives.d.ts +0 -51
  383. package/lib/calendar/calendar.helpers.d.ts +0 -15
  384. package/lib/calendar/calendar.module.d.ts +0 -11
  385. package/lib/calendar/calendar.types.d.ts +0 -80
  386. package/lib/color/color-picker/color-picker.component.d.ts +0 -125
  387. package/lib/color/color-picker/color-picker.directives.d.ts +0 -27
  388. package/lib/color/color-picker/color-picker.module.d.ts +0 -13
  389. package/lib/inputs/color-input/color-input.component.d.ts +0 -147
  390. package/lib/inputs/color-input/color-input.module.d.ts +0 -16
@@ -1,66 +1,59 @@
1
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core';
2
+ import { coerceNumberProperty } from '@ardium-ui/devkit';
2
3
  import { isArray } from 'simple-bool';
3
- import { StarColor } from './../star.types';
4
+ import { StarColor, StarFillMode } from './../star.types';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
6
7
  import * as i2 from "../star.component";
7
8
  export class ArdiumStarDisplayComponent {
8
9
  constructor() {
9
- this.wrapperClasses = '';
10
- //* appearance
11
- this.color = StarColor.Star;
12
- //* stars
13
- this.starArray = this.setStarArrayFromNumber(0);
14
- this.max = 5;
15
- this.value = 0;
16
- }
17
- get ngClasses() {
18
- return [`ard-color-${this.color}`].join(' ');
19
- }
20
- setStarArrayFromArray(starArr) {
21
- this.starArray = [...starArr];
22
- while (this.starArray.length < this.max) {
23
- this.starArray.push('none');
24
- }
25
- }
26
- setStarArrayFromNumber(stars) {
27
- this.starArray = [];
28
- while (this.starArray.length < this.max) {
29
- if (stars >= 1) {
30
- this.starArray.push('filled');
10
+ this.wrapperClasses = input('');
11
+ //! appearance
12
+ this.color = input(StarColor.Star);
13
+ this.ngClasses = computed(() => [this.wrapperClasses(), `ard-color-${this.color}`].join(' '));
14
+ //! stars
15
+ this.max = input(5, { transform: v => coerceNumberProperty(v, 0) });
16
+ this.value = input(0, {
17
+ transform: v => {
18
+ if (isArray(v)) {
19
+ return v;
20
+ }
21
+ return coerceNumberProperty(v, 0);
22
+ },
23
+ });
24
+ this.starArray = computed(() => {
25
+ let v = this.value();
26
+ let newArr;
27
+ // pad the array with non-filled stars and return it
28
+ if (isArray(v)) {
29
+ newArr = [...v];
30
+ while (newArr.length < this.max()) {
31
+ newArr.push(StarFillMode.None);
32
+ }
33
+ return newArr;
31
34
  }
32
- else if (Math.round(stars) == 1) {
33
- this.starArray.push('half');
34
- }
35
- else {
36
- this.starArray.push('none');
37
- }
38
- stars--;
39
- }
40
- return this.starArray;
41
- }
42
- ngOnChanges(changes) {
43
- if (changes['max'] || changes['value']) {
44
- if (isArray(this.value)) {
45
- this.setStarArrayFromArray(this.value);
35
+ // create an array from a numeric value
36
+ newArr = [];
37
+ while (newArr.length < this.max()) {
38
+ v--;
39
+ if (v + 1 >= 1) {
40
+ newArr.push(StarFillMode.Filled);
41
+ continue;
42
+ }
43
+ if (Math.round(v + 1) === 1) {
44
+ newArr.push(StarFillMode.Half);
45
+ continue;
46
+ }
47
+ newArr.push(StarFillMode.None);
46
48
  }
47
- else
48
- this.setStarArrayFromNumber(this.value);
49
- }
49
+ return newArr;
50
+ });
50
51
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
52
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: ArdiumStarDisplayComponent, selector: "ard-star-display", inputs: { wrapperClasses: "wrapperClasses", color: "color", max: "max", value: "value" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"ard-star-display\"\r\n [ngClass]=\"ngClasses\"\r\n [class]=\"wrapperClasses\"\r\n>\r\n <ard-star\r\n *ngFor=\"let fillMode of starArray\"\r\n [fill]=\"fillMode\"\r\n [color]=\"color\"\r\n ></ard-star>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.ArdiumStarComponent, selector: "ard-star", inputs: ["wrapperClasses", "fill", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
53
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: ArdiumStarDisplayComponent, selector: "ard-star-display", inputs: { wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"ard-star-display\"\n [ngClass]=\"ngClasses()\"\n>\n @for (fillMode of starArray(); track $index) {\n <ard-star\n [fill]=\"fillMode\"\n [color]=\"color()\"\n />\n }\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ArdiumStarComponent, selector: "ard-star", inputs: ["wrapperClasses", "color", "fill"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
53
54
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayComponent, decorators: [{
55
56
  type: Component,
56
- args: [{ selector: 'ard-star-display', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ard-star-display\"\r\n [ngClass]=\"ngClasses\"\r\n [class]=\"wrapperClasses\"\r\n>\r\n <ard-star\r\n *ngFor=\"let fillMode of starArray\"\r\n [fill]=\"fillMode\"\r\n [color]=\"color\"\r\n ></ard-star>\r\n</div>" }]
57
- }], propDecorators: { wrapperClasses: [{
58
- type: Input
59
- }], color: [{
60
- type: Input
61
- }], max: [{
62
- type: Input
63
- }], value: [{
64
- type: Input
65
- }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1kaXNwbGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFTMUQsTUFBTSxPQUFPLDBCQUEwQjtJQVB2QztRQVFXLG1CQUFjLEdBQVcsRUFBRSxDQUFDO1FBRXJDLGNBQWM7UUFDTCxVQUFLLEdBQWMsU0FBUyxDQUFDLElBQUksQ0FBQztRQU0zQyxTQUFTO1FBQ1QsY0FBUyxHQUFtQixJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsUUFBRyxHQUFXLENBQUMsQ0FBQztRQUNoQixVQUFLLEdBQTRCLENBQUMsQ0FBQztLQTZCN0M7SUFwQ0MsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFPRCxxQkFBcUIsQ0FBQyxPQUF1QjtRQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUM5QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBQ0Qsc0JBQXNCLENBQUMsS0FBYTtRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO2dCQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQy9CO2lCQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzdCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzdCO1lBQ0QsS0FBSyxFQUFFLENBQUM7U0FDVDtRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN0QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDeEM7O2dCQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDOzhHQXpDVSwwQkFBMEI7a0dBQTFCLDBCQUEwQix1S0NYdkMsa1FBU007OzJGREVPLDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsY0FBYztzQkFBdEIsS0FBSztnQkFHRyxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpc0FycmF5IH0gZnJvbSAnc2ltcGxlLWJvb2wnO1xuaW1wb3J0IHsgU3RhckNvbG9yLCBTdGFyRmlsbE1vZGUgfSBmcm9tICcuLy4uL3N0YXIudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcmQtc3Rhci1kaXNwbGF5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXItZGlzcGxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0YXItZGlzcGxheS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXJkaXVtU3RhckRpc3BsYXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSB3cmFwcGVyQ2xhc3Nlczogc3RyaW5nID0gJyc7XG5cbiAgLy8qIGFwcGVhcmFuY2VcbiAgQElucHV0KCkgY29sb3I6IFN0YXJDb2xvciA9IFN0YXJDb2xvci5TdGFyO1xuXG4gIGdldCBuZ0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW2BhcmQtY29sb3ItJHt0aGlzLmNvbG9yfWBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIC8vKiBzdGFyc1xuICBzdGFyQXJyYXk6IFN0YXJGaWxsTW9kZVtdID0gdGhpcy5zZXRTdGFyQXJyYXlGcm9tTnVtYmVyKDApO1xuICBASW5wdXQoKSBtYXg6IG51bWJlciA9IDU7XG4gIEBJbnB1dCgpIHZhbHVlOiBudW1iZXIgfCBTdGFyRmlsbE1vZGVbXSA9IDA7XG5cbiAgc2V0U3RhckFycmF5RnJvbUFycmF5KHN0YXJBcnI6IFN0YXJGaWxsTW9kZVtdKTogdm9pZCB7XG4gICAgdGhpcy5zdGFyQXJyYXkgPSBbLi4uc3RhckFycl07XG4gICAgd2hpbGUgKHRoaXMuc3RhckFycmF5Lmxlbmd0aCA8IHRoaXMubWF4KSB7XG4gICAgICB0aGlzLnN0YXJBcnJheS5wdXNoKCdub25lJyk7XG4gICAgfVxuICB9XG4gIHNldFN0YXJBcnJheUZyb21OdW1iZXIoc3RhcnM6IG51bWJlcik6IFN0YXJGaWxsTW9kZVtdIHtcbiAgICB0aGlzLnN0YXJBcnJheSA9IFtdO1xuICAgIHdoaWxlICh0aGlzLnN0YXJBcnJheS5sZW5ndGggPCB0aGlzLm1heCkge1xuICAgICAgaWYgKHN0YXJzID49IDEpIHtcbiAgICAgICAgdGhpcy5zdGFyQXJyYXkucHVzaCgnZmlsbGVkJyk7XG4gICAgICB9IGVsc2UgaWYgKE1hdGgucm91bmQoc3RhcnMpID09IDEpIHtcbiAgICAgICAgdGhpcy5zdGFyQXJyYXkucHVzaCgnaGFsZicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zdGFyQXJyYXkucHVzaCgnbm9uZScpO1xuICAgICAgfVxuICAgICAgc3RhcnMtLTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc3RhckFycmF5O1xuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snbWF4J10gfHwgY2hhbmdlc1sndmFsdWUnXSkge1xuICAgICAgaWYgKGlzQXJyYXkodGhpcy52YWx1ZSkpIHtcbiAgICAgICAgdGhpcy5zZXRTdGFyQXJyYXlGcm9tQXJyYXkodGhpcy52YWx1ZSk7XG4gICAgICB9IGVsc2UgdGhpcy5zZXRTdGFyQXJyYXlGcm9tTnVtYmVyKHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFyZC1zdGFyLWRpc3BsYXlcIlxyXG4gICAgW25nQ2xhc3NdPVwibmdDbGFzc2VzXCJcclxuICAgIFtjbGFzc109XCJ3cmFwcGVyQ2xhc3Nlc1wiXHJcbj5cclxuICAgIDxhcmQtc3RhclxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBmaWxsTW9kZSBvZiBzdGFyQXJyYXlcIlxyXG4gICAgICAgIFtmaWxsXT1cImZpbGxNb2RlXCJcclxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxyXG4gICAgPjwvYXJkLXN0YXI+XHJcbjwvZGl2PiJdfQ==
57
+ args: [{ selector: 'ard-star-display', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ard-star-display\"\n [ngClass]=\"ngClasses()\"\n>\n @for (fillMode of starArray(); track $index) {\n <ard-star\n [fill]=\"fillMode\"\n [color]=\"color()\"\n />\n }\n</div>\n" }]
58
+ }] });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1kaXNwbGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFTMUQsTUFBTSxPQUFPLDBCQUEwQjtJQVB2QztRQVFXLG1CQUFjLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRTVDLGNBQWM7UUFDTCxVQUFLLEdBQUcsS0FBSyxDQUFZLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6QyxjQUFTLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFMUcsU0FBUztRQUNBLFFBQUcsR0FBRyxLQUFLLENBQWMsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU1RSxVQUFLLEdBQUcsS0FBSyxDQUE0RCxDQUFDLEVBQUU7WUFDbkYsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFO2dCQUNiLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2YsT0FBTyxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztnQkFDRCxPQUFPLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwQyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBRU0sY0FBUyxHQUFHLFFBQVEsQ0FBaUIsR0FBRyxFQUFFO1lBQ2pELElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQixJQUFJLE1BQXNCLENBQUM7WUFFM0Isb0RBQW9EO1lBQ3BELElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDaEIsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO29CQUNsQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakMsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1lBRUQsdUNBQXVDO1lBQ3ZDLE1BQU0sR0FBRyxFQUFFLENBQUM7WUFDWixPQUFPLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7Z0JBQ2xDLENBQUMsRUFBRSxDQUFDO2dCQUNKLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDZixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDakMsU0FBUztnQkFDWCxDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMvQixTQUFTO2dCQUNYLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakMsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0tBQ0o7OEdBakRZLDBCQUEwQjtrR0FBMUIsMEJBQTBCLHlqQkNadkMsa05BV0E7OzJGRENhLDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ3NpbXBsZS1ib29sJztcbmltcG9ydCB7IFN0YXJDb2xvciwgU3RhckZpbGxNb2RlIH0gZnJvbSAnLi8uLi9zdGFyLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXJkLXN0YXItZGlzcGxheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGFyLWRpc3BsYXkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGFyLWRpc3BsYXkuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFyZGl1bVN0YXJEaXNwbGF5Q29tcG9uZW50IHtcbiAgcmVhZG9ubHkgd3JhcHBlckNsYXNzZXMgPSBpbnB1dDxzdHJpbmc+KCcnKTtcblxuICAvLyEgYXBwZWFyYW5jZVxuICByZWFkb25seSBjb2xvciA9IGlucHV0PFN0YXJDb2xvcj4oU3RhckNvbG9yLlN0YXIpO1xuXG4gIHJlYWRvbmx5IG5nQ2xhc3NlcyA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4gW3RoaXMud3JhcHBlckNsYXNzZXMoKSwgYGFyZC1jb2xvci0ke3RoaXMuY29sb3J9YF0uam9pbignICcpKTtcblxuICAvLyEgc3RhcnNcbiAgcmVhZG9ubHkgbWF4ID0gaW5wdXQ8bnVtYmVyLCBhbnk+KDUsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApIH0pO1xuXG4gIHJlYWRvbmx5IHZhbHVlID0gaW5wdXQ8bnVtYmVyIHwgU3RhckZpbGxNb2RlW10sIHN0cmluZyB8IG51bWJlciB8IFN0YXJGaWxsTW9kZVtdPigwLCB7XG4gICAgdHJhbnNmb3JtOiB2ID0+IHtcbiAgICAgIGlmIChpc0FycmF5KHYpKSB7XG4gICAgICAgIHJldHVybiB2O1xuICAgICAgfVxuICAgICAgcmV0dXJuIGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApO1xuICAgIH0sXG4gIH0pO1xuXG4gIHJlYWRvbmx5IHN0YXJBcnJheSA9IGNvbXB1dGVkPFN0YXJGaWxsTW9kZVtdPigoKSA9PiB7XG4gICAgbGV0IHYgPSB0aGlzLnZhbHVlKCk7XG4gICAgbGV0IG5ld0FycjogU3RhckZpbGxNb2RlW107XG5cbiAgICAvLyBwYWQgdGhlIGFycmF5IHdpdGggbm9uLWZpbGxlZCBzdGFycyBhbmQgcmV0dXJuIGl0XG4gICAgaWYgKGlzQXJyYXkodikpIHtcbiAgICAgIG5ld0FyciA9IFsuLi52XTtcbiAgICAgIHdoaWxlIChuZXdBcnIubGVuZ3RoIDwgdGhpcy5tYXgoKSkge1xuICAgICAgICBuZXdBcnIucHVzaChTdGFyRmlsbE1vZGUuTm9uZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV3QXJyO1xuICAgIH1cblxuICAgIC8vIGNyZWF0ZSBhbiBhcnJheSBmcm9tIGEgbnVtZXJpYyB2YWx1ZVxuICAgIG5ld0FyciA9IFtdO1xuICAgIHdoaWxlIChuZXdBcnIubGVuZ3RoIDwgdGhpcy5tYXgoKSkge1xuICAgICAgdi0tO1xuICAgICAgaWYgKHYgKyAxID49IDEpIHtcbiAgICAgICAgbmV3QXJyLnB1c2goU3RhckZpbGxNb2RlLkZpbGxlZCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKE1hdGgucm91bmQodiArIDEpID09PSAxKSB7XG4gICAgICAgIG5ld0Fyci5wdXNoKFN0YXJGaWxsTW9kZS5IYWxmKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBuZXdBcnIucHVzaChTdGFyRmlsbE1vZGUuTm9uZSk7XG4gICAgfVxuICAgIHJldHVybiBuZXdBcnI7XG4gIH0pO1xufVxuIiwiPGRpdlxuICBjbGFzcz1cImFyZC1zdGFyLWRpc3BsYXlcIlxuICBbbmdDbGFzc109XCJuZ0NsYXNzZXMoKVwiXG4+XG4gIEBmb3IgKGZpbGxNb2RlIG9mIHN0YXJBcnJheSgpOyB0cmFjayAkaW5kZXgpIHtcbiAgICA8YXJkLXN0YXJcbiAgICAgIFtmaWxsXT1cImZpbGxNb2RlXCJcbiAgICAgIFtjb2xvcl09XCJjb2xvcigpXCJcbiAgICAvPlxuICB9XG48L2Rpdj5cbiJdfQ==
@@ -4,11 +4,11 @@ import { ArdiumStarDisplayComponent } from './star-display.component';
4
4
  import { ArdiumStarModule } from '../star.module';
5
5
  import * as i0 from "@angular/core";
6
6
  export class ArdiumStarDisplayModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayModule, declarations: [ArdiumStarDisplayComponent], imports: [CommonModule, ArdiumStarModule], exports: [ArdiumStarDisplayComponent] }); }
9
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayModule, imports: [CommonModule, ArdiumStarModule] }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayModule, declarations: [ArdiumStarDisplayComponent], imports: [CommonModule, ArdiumStarModule], exports: [ArdiumStarDisplayComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayModule, imports: [CommonModule, ArdiumStarModule] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarDisplayModule, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarDisplayModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [ArdiumStarDisplayComponent],
@@ -0,0 +1,3 @@
1
+ export * from './star-input.module';
2
+ export * from './star-input.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N0YXItaW5wdXQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3Rhci1pbnB1dC5jb21wb25lbnQnO1xuIl19
@@ -1,5 +1,6 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, HostListener, ViewEncapsulation, ViewChildren, forwardRef, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, HostListener, ViewEncapsulation, computed, effect, forwardRef, input, model, output, signal, viewChildren, } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { coerceNumberProperty } from '@ardium-ui/devkit';
3
4
  import { _NgModelComponentBase } from './../../_internal/ngmodel-component';
4
5
  import { StarColor } from './../star.types';
5
6
  import * as i0 from "@angular/core";
@@ -7,113 +8,95 @@ import * as i1 from "@angular/common";
7
8
  import * as i2 from "../star-button/star-button.component";
8
9
  export class ArdiumStarInputComponent extends _NgModelComponentBase {
9
10
  constructor() {
10
- super(...arguments);
11
- this.wrapperClasses = '';
12
- //* appearance
13
- this.color = StarColor.Star;
14
- //* events
15
- this.changeEvent = new EventEmitter();
16
- this.highlightEvent = new EventEmitter();
17
- this.value = 0;
18
- this.valueChange = new EventEmitter();
19
- //* stars
20
- this.max = 5;
21
- this.starArray = this.createFirstStarArray();
22
- this._currentHoverIndex = null;
11
+ super();
12
+ this.wrapperClasses = input('');
13
+ //! appearance
14
+ this.color = input(StarColor.Star);
15
+ this.ngClasses = computed(() => [this.wrapperClasses(), `ard-color-${this.color()}`].join(' '));
16
+ //! events
17
+ this.changeEvent = output({ alias: 'change' });
18
+ this.highlightEvent = output({ alias: 'highlight' });
19
+ this.value = model(0);
20
+ //! stars
21
+ this.max = input(0, { transform: v => coerceNumberProperty(v, 0) });
22
+ this.starButtonInstances = viewChildren('starButton');
23
+ this._highlightedStarIndex = signal(null);
24
+ this.starArray = computed(() => {
25
+ const v = this.value();
26
+ const max = this.max();
27
+ const hi = Math.round(this._highlightedStarIndex() ?? -1);
28
+ const arr = new Array(max);
29
+ for (let i = 0; i < max; i++) {
30
+ if (i <= hi) {
31
+ arr[i] = { filled: true, isInValue: true };
32
+ continue;
33
+ }
34
+ if (i < v) {
35
+ arr[i] = { filled: hi === -1, isInValue: true };
36
+ continue;
37
+ }
38
+ arr[i] = { filled: false, isInValue: false };
39
+ }
40
+ return arr;
41
+ });
23
42
  //* focus handlers
24
43
  this._isFocusEventSuppressed = false;
25
44
  this._isBlurEventSuppressed = false;
26
- this._wasComponentBlurred = true;
27
45
  this._currentFocusIndex = null;
28
- }
29
- get ngClasses() {
30
- return [`ard-color-${this.color}`].join(' ');
31
- }
32
- setStarArrayFromNumber(targetIndex) {
33
- targetIndex = Math.round(targetIndex);
34
- this.starArray.forEach((v, i) => {
35
- if (i < targetIndex) {
36
- v.filled = true;
37
- v.isInValue = true;
38
- }
39
- else if (i < this.value) {
40
- v.filled = false;
41
- v.isInValue = true;
42
- }
43
- else {
44
- v.filled = false;
45
- v.isInValue = false;
46
+ effect(() => {
47
+ const hi = this._highlightedStarIndex();
48
+ if (hi !== null) {
49
+ this.highlightEvent.emit(hi);
46
50
  }
47
51
  });
52
+ effect(() => {
53
+ this.value(); // let the effect know when to fire
54
+ this._emitChange();
55
+ });
48
56
  }
49
- createFirstStarArray() {
50
- let arr = new Array(this.max);
51
- for (let i = 0; i < this.max; i++) {
52
- arr[i] = { filled: false, isInValue: false };
53
- }
54
- return arr;
55
- }
56
- ngOnChanges(changes) {
57
- if (changes['max']) {
58
- this.starArray = this.createFirstStarArray();
59
- }
60
- if (changes['value']) {
61
- this.setStarArrayFromNumber(this.value);
62
- }
63
- }
64
- //* implement ControlValueAccessor's writeValue
57
+ //! ControlValueAccessor's writeValue
65
58
  writeValue(v) {
66
- this.setStarArrayFromNumber(v);
59
+ this.value.set(v);
67
60
  }
68
61
  onStarClick(index) {
69
- this.value = index + 1;
70
- this.setStarArrayFromNumber(this.value);
71
- this._emitChange();
62
+ this.value.set(index + 1);
72
63
  }
73
64
  onStarHighlight(index) {
74
- if (this._currentHoverIndex == index)
75
- return;
76
- this._currentHoverIndex = index;
77
- this.setStarArrayFromNumber(index + 1);
78
- this.highlightEvent.emit(index + 1);
65
+ this._highlightedStarIndex.set(index);
79
66
  }
80
67
  setDisplayToValue() {
81
- this._currentHoverIndex = null;
82
- this.setStarArrayFromNumber(this.value);
68
+ this._highlightedStarIndex.set(null);
83
69
  }
84
70
  _emitChange() {
85
- this._onChangeRegistered?.(this.value);
86
- this.changeEvent.emit(this.value);
87
- this.valueChange.emit(this.value);
71
+ this._onChangeRegistered?.(this.value());
72
+ this.changeEvent.emit(this.value());
88
73
  }
89
- onStarButtonFocus(index) {
74
+ onStarButtonFocus(index, event) {
90
75
  this._currentFocusIndex = index;
91
- this._wasComponentBlurred = false;
92
76
  if (this._isFocusEventSuppressed) {
93
77
  this._isFocusEventSuppressed = false;
94
78
  return;
95
79
  }
96
- this.focusEvent.emit();
80
+ this.focusEvent.emit(event);
97
81
  }
98
- onStarButtonBlur() {
82
+ onStarButtonBlur(event) {
99
83
  this._currentFocusIndex = null;
100
84
  if (this._isBlurEventSuppressed) {
101
85
  this._isBlurEventSuppressed = false;
102
86
  return;
103
87
  }
104
- this._wasComponentBlurred = true;
105
- this.blurEvent.emit();
88
+ this.blurEvent.emit(event);
106
89
  }
107
90
  focusStarButtonByIndex(index) {
108
- if (!this.starButtonInstances)
91
+ if (!this.starButtonInstances())
109
92
  return;
110
- this.starButtonInstances.get(index).focus();
93
+ this.starButtonInstances()[index].focus();
111
94
  }
112
95
  focusNextStarButton(offset) {
113
- if (!this.starButtonInstances || this._currentFocusIndex == null)
96
+ if (!this.starButtonInstances() || this._currentFocusIndex === null)
114
97
  return;
115
98
  let nextIndex = this._currentFocusIndex + offset;
116
- nextIndex = Math.min(nextIndex, this.max - 1);
99
+ nextIndex = Math.min(nextIndex, this.max() - 1);
117
100
  nextIndex = Math.max(nextIndex, 0);
118
101
  this.focusStarButtonByIndex(nextIndex);
119
102
  }
@@ -125,15 +108,15 @@ export class ArdiumStarInputComponent extends _NgModelComponentBase {
125
108
  this.focusStarButtonByIndex(0);
126
109
  }
127
110
  blur() {
128
- if (!this.starButtonInstances || this._currentFocusIndex == null)
111
+ if (!this.starButtonInstances() || this._currentFocusIndex === null)
129
112
  return;
130
- this.starButtonInstances.get(this._currentFocusIndex).blur();
113
+ this.starButtonInstances()[this._currentFocusIndex].blur();
131
114
  }
132
- //* key press handlers
115
+ //! key press handlers
133
116
  onKeyPress(event) {
134
117
  switch (event.code) {
135
118
  case 'Tab': {
136
- this._onTabPress(event);
119
+ this._onTabPress();
137
120
  return;
138
121
  }
139
122
  case 'ArrowRight': {
@@ -172,21 +155,21 @@ export class ArdiumStarInputComponent extends _NgModelComponentBase {
172
155
  _onEndPress(event) {
173
156
  event.preventDefault();
174
157
  this._suppressFocusEvents();
175
- this._onTabPress(event);
158
+ this._onTabPress();
176
159
  }
177
- _onTabPress(event) {
178
- this.focusStarButtonByIndex(this.max - 1);
160
+ _onTabPress() {
161
+ this.focusStarButtonByIndex(this.max() - 1);
179
162
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
181
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: ArdiumStarInputComponent, selector: "ard-star-input", inputs: { wrapperClasses: "wrapperClasses", color: "color", value: "value", max: "max" }, outputs: { changeEvent: "change", highlightEvent: "highlight", valueChange: "valueChange" }, host: { listeners: { "keydown": "onKeyPress($event)" } }, providers: [
163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
164
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: ArdiumStarInputComponent, selector: "ard-star-input", inputs: { wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { changeEvent: "change", highlightEvent: "highlight", value: "valueChange" }, host: { listeners: { "keydown": "onKeyPress($event)" } }, providers: [
182
165
  {
183
166
  provide: NG_VALUE_ACCESSOR,
184
167
  useExisting: forwardRef(() => ArdiumStarInputComponent),
185
168
  multi: true,
186
169
  },
187
- ], viewQueries: [{ propertyName: "starButtonInstances", predicate: ["starButton"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"ard-star-input\"\r\n [ngClass]=\"ngClasses\"\r\n [class]=\"wrapperClasses\"\r\n (mouseleave)=\"setDisplayToValue()\"\r\n>\r\n <ard-star-button\r\n *ngFor=\"let object of starArray; let index = index\"\r\n #starButton\r\n [class.ard-star-not-in-value]=\"!(object.isInValue)\"\r\n [color]=\"object.isInValue ? color : 'none'\"\r\n clickStrategy=\"none\"\r\n [selected]=\"object.filled\"\r\n (click)=\"onStarClick(index)\"\r\n (focus)=\"onStarButtonFocus(index)\"\r\n (blur)=\"onStarButtonBlur()\"\r\n (mouseenter)=\"onStarHighlight(index)\"\r\n [tabIndex]=\"tabIndex\"\r\n ></ard-star-button>\r\n</div>", styles: [".ard-star-input{width:max-content}\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: "component", type: i2.ArdiumStarButtonComponent, selector: "ard-star-button", inputs: ["wrapperClasses", "clickStrategy", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
170
+ ], viewQueries: [{ propertyName: "starButtonInstances", predicate: ["starButton"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"ard-star-input\"\n [ngClass]=\"ngClasses()\"\n (mouseleave)=\"setDisplayToValue()\"\n>\n @for (object of starArray(); track $index) {\n <ard-star-button\n #starButton\n [class.ard-star-not-in-value]=\"!object.isInValue\"\n [color]=\"object.isInValue ? color() : 'none'\"\n clickStrategy=\"noop\"\n [selected]=\"object.filled\"\n (click)=\"onStarClick($index)\"\n (focus)=\"onStarButtonFocus($index, $event)\"\n (blur)=\"onStarButtonBlur($event)\"\n (mouseenter)=\"onStarHighlight($index)\"\n [tabIndex]=\"tabIndex()\"\n />\n }\n</div>\n", styles: [".ard-star-input{width:max-content}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ArdiumStarButtonComponent, selector: "ard-star-button", inputs: ["wrapperClasses", "clickStrategy", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
188
171
  }
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputComponent, decorators: [{
172
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputComponent, decorators: [{
190
173
  type: Component,
191
174
  args: [{ selector: 'ard-star-input', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
192
175
  {
@@ -194,28 +177,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImpor
194
177
  useExisting: forwardRef(() => ArdiumStarInputComponent),
195
178
  multi: true,
196
179
  },
197
- ], template: "<div class=\"ard-star-input\"\r\n [ngClass]=\"ngClasses\"\r\n [class]=\"wrapperClasses\"\r\n (mouseleave)=\"setDisplayToValue()\"\r\n>\r\n <ard-star-button\r\n *ngFor=\"let object of starArray; let index = index\"\r\n #starButton\r\n [class.ard-star-not-in-value]=\"!(object.isInValue)\"\r\n [color]=\"object.isInValue ? color : 'none'\"\r\n clickStrategy=\"none\"\r\n [selected]=\"object.filled\"\r\n (click)=\"onStarClick(index)\"\r\n (focus)=\"onStarButtonFocus(index)\"\r\n (blur)=\"onStarButtonBlur()\"\r\n (mouseenter)=\"onStarHighlight(index)\"\r\n [tabIndex]=\"tabIndex\"\r\n ></ard-star-button>\r\n</div>", styles: [".ard-star-input{width:max-content}\n"] }]
198
- }], propDecorators: { wrapperClasses: [{
199
- type: Input
200
- }], color: [{
201
- type: Input
202
- }], starButtonInstances: [{
203
- type: ViewChildren,
204
- args: ['starButton']
205
- }], changeEvent: [{
206
- type: Output,
207
- args: ['change']
208
- }], highlightEvent: [{
209
- type: Output,
210
- args: ['highlight']
211
- }], value: [{
212
- type: Input
213
- }], valueChange: [{
214
- type: Output
215
- }], max: [{
216
- type: Input
217
- }], onKeyPress: [{
180
+ ], template: "<div\n class=\"ard-star-input\"\n [ngClass]=\"ngClasses()\"\n (mouseleave)=\"setDisplayToValue()\"\n>\n @for (object of starArray(); track $index) {\n <ard-star-button\n #starButton\n [class.ard-star-not-in-value]=\"!object.isInValue\"\n [color]=\"object.isInValue ? color() : 'none'\"\n clickStrategy=\"noop\"\n [selected]=\"object.filled\"\n (click)=\"onStarClick($index)\"\n (focus)=\"onStarButtonFocus($index, $event)\"\n (blur)=\"onStarButtonBlur($event)\"\n (mouseenter)=\"onStarHighlight($index)\"\n [tabIndex]=\"tabIndex()\"\n />\n }\n</div>\n", styles: [".ard-star-input{width:max-content}\n"] }]
181
+ }], ctorParameters: () => [], propDecorators: { onKeyPress: [{
218
182
  type: HostListener,
219
183
  args: ['keydown', ['$event']]
220
184
  }] } });
221
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9zdGFyLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWlucHV0L3N0YXItaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRU4sWUFBWSxFQUNaLGlCQUFpQixFQUNqQixZQUFZLEVBR1osVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFxQjVDLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxxQkFBcUI7SUFkbkU7O1FBZVcsbUJBQWMsR0FBVyxFQUFFLENBQUM7UUFFckMsY0FBYztRQUNMLFVBQUssR0FBYyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBUzNDLFVBQVU7UUFDUSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDdEMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXhELFVBQUssR0FBVyxDQUFDLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRW5ELFNBQVM7UUFDQSxRQUFHLEdBQVcsQ0FBQyxDQUFDO1FBQ3pCLGNBQVMsR0FBc0IsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUF5Q25ELHVCQUFrQixHQUFrQixJQUFJLENBQUM7UUFpQmpE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T0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDdkQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDRLQ3JDSCxtc0JBa0JNOzsyRkRxQk8sd0JBQXdCO2tCQWRwQyxTQUFTOytCQUNFLGdCQUFnQixpQkFHWCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkFHUSxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFPTixtQkFBbUI7c0JBRGxCLFlBQVk7dUJBQUMsWUFBWTtnQkFJUixXQUFXO3NCQUE1QixNQUFNO3VCQUFDLFFBQVE7Z0JBQ0ssY0FBYztzQkFBbEMsTUFBTTt1QkFBQyxXQUFXO2dCQUVWLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdFLEdBQUc7c0JBQVgsS0FBSztnQkE4R04sVUFBVTtzQkFEVCxZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBIb3N0TGlzdGVuZXIsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBWaWV3Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBcmRpdW1TdGFyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vc3Rhci1idXR0b24vc3Rhci1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IF9OZ01vZGVsQ29tcG9uZW50QmFzZSB9IGZyb20gJy4vLi4vLi4vX2ludGVybmFsL25nbW9kZWwtY29tcG9uZW50JztcbmltcG9ydCB7IFN0YXJDb2xvciB9IGZyb20gJy4vLi4vc3Rhci50eXBlcyc7XG5cbnR5cGUgU3RhcklucHV0T2JqZWN0ID0ge1xuICBmaWxsZWQ6IGJvb2xlYW47XG4gIGlzSW5WYWx1ZTogYm9vbGVhbjtcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FyZC1zdGFyLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGFyLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEFyZGl1bVN0YXJJbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBcmRpdW1TdGFySW5wdXRDb21wb25lbnQgZXh0ZW5kcyBfTmdNb2RlbENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQElucHV0KCkgd3JhcHBlckNsYXNzZXM6IHN0cmluZyA9ICcnO1xuXG4gIC8vKiBhcHBlYXJhbmNlXG4gIEBJbnB1dCgpIGNvbG9yOiBTdGFyQ29sb3IgPSBTdGFyQ29sb3IuU3RhcjtcblxuICBnZXQgbmdDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtgYXJkLWNvbG9yLSR7dGhpcy5jb2xvcn1gXS5qb2luKCcgJyk7XG4gIH1cblxuICBAVmlld0NoaWxkcmVuKCdzdGFyQnV0dG9uJylcbiAgc3RhckJ1dHRvbkluc3RhbmNlcyE6IFF1ZXJ5TGlzdDxBcmRpdW1TdGFyQnV0dG9uQ29tcG9uZW50PjtcblxuICAvLyogZXZlbnRzXG4gIEBPdXRwdXQoJ2NoYW5nZScpIGNoYW5nZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIEBPdXRwdXQoJ2hpZ2hsaWdodCcpIGhpZ2hsaWdodEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQElucHV0KCkgdmFsdWU6IG51bWJlciA9IDA7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIC8vKiBzdGFyc1xuICBASW5wdXQoKSBtYXg6IG51bWJlciA9IDU7XG4gIHN0YXJBcnJheTogU3RhcklucHV0T2JqZWN0W10gPSB0aGlzLmNyZWF0ZUZpcnN0U3RhckFycmF5KCk7XG5cbiAgc2V0U3RhckFycmF5RnJvbU51bWJlcih0YXJnZXRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGFyZ2V0SW5kZXggPSBNYXRoLnJvdW5kKHRhcmdldEluZGV4KTtcbiAgICB0aGlzLnN0YXJBcnJheS5mb3JFYWNoKCh2LCBpKSA9PiB7XG4gICAgICBpZiAoaSA8IHRhcmdldEluZGV4KSB7XG4gICAgICAgIHYuZmlsbGVkID0gdHJ1ZTtcbiAgICAgICAgdi5pc0luVmFsdWUgPSB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChpIDwgdGhpcy52YWx1ZSkge1xuICAgICAgICB2LmZpbGxlZCA9IGZhbHNlO1xuICAgICAgICB2LmlzSW5WYWx1ZSA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2LmZpbGxlZCA9IGZhbHNlO1xuICAgICAgICB2LmlzSW5WYWx1ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIGNyZWF0ZUZpcnN0U3RhckFycmF5KCk6IFN0YXJJbnB1dE9iamVjdFtdIHtcbiAgICBsZXQgYXJyID0gbmV3IEFycmF5KHRoaXMubWF4KTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMubWF4OyBpKyspIHtcbiAgICAgIGFycltpXSA9IHsgZmlsbGVkOiBmYWxzZSwgaXNJblZhbHVlOiBmYWxzZSB9O1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snbWF4J10pIHtcbiAgICAgIHRoaXMuc3RhckFycmF5ID0gdGhpcy5jcmVhdGVGaXJzdFN0YXJBcnJheSgpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlc1sndmFsdWUnXSkge1xuICAgICAgdGhpcy5zZXRTdGFyQXJyYXlGcm9tTnVtYmVyKHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuICAvLyogaW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yJ3Mgd3JpdGVWYWx1ZVxuICB3cml0ZVZhbHVlKHY6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuc2V0U3RhckFycmF5RnJvbU51bWJlcih2KTtcbiAgfVxuICBvblN0YXJDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IGluZGV4ICsgMTtcbiAgICB0aGlzLnNldFN0YXJBcnJheUZyb21OdW1iZXIodGhpcy52YWx1ZSk7XG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xuICB9XG4gIHByaXZhdGUgX2N1cnJlbnRIb3ZlckluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgb25TdGFySGlnaGxpZ2h0KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fY3VycmVudEhvdmVySW5kZXggPT0gaW5kZXgpIHJldHVybjtcbiAgICB0aGlzLl9jdXJyZW50SG92ZXJJbmRleCA9IGluZGV4O1xuICAgIHRoaXMuc2V0U3RhckFycmF5RnJvbU51bWJlcihpbmRleCArIDEpO1xuICAgIHRoaXMuaGlnaGxpZ2h0RXZlbnQuZW1pdChpbmRleCArIDEpO1xuICB9XG4gIHNldERpc3BsYXlUb1ZhbHVlKCkge1xuICAgIHRoaXMuX2N1cnJlbnRIb3ZlckluZGV4ID0gbnVsbDtcbiAgICB0aGlzLnNldFN0YXJBcnJheUZyb21OdW1iZXIodGhpcy52YWx1ZSk7XG4gIH1cbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMuX29uQ2hhbmdlUmVnaXN0ZXJlZD8uKHRoaXMudmFsdWUpO1xuICAgIHRoaXMuY2hhbmdlRXZlbnQuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICAvLyogZm9jdXMgaGFuZGxlcnNcbiAgcHJpdmF0ZSBfaXNGb2N1c0V2ZW50U3VwcHJlc3NlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9pc0JsdXJFdmVudFN1cHByZXNzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfd2FzQ29tcG9uZW50Qmx1cnJlZDogYm9vbGVhbiA9IHRydWU7XG4gIHByaXZhdGUgX2N1cnJlbnRGb2N1c0luZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgb25TdGFyQnV0dG9uRm9jdXMoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuX2N1cnJlbnRGb2N1c0luZGV4ID0gaW5kZXg7XG4gICAgdGhpcy5fd2FzQ29tcG9uZW50Qmx1cnJlZCA9IGZhbHNlO1xuICAgIGlmICh0aGlzLl9pc0ZvY3VzRXZlbnRTdXBwcmVzc2VkKSB7XG4gICAgICB0aGlzLl9pc0ZvY3VzRXZlbnRTdXBwcmVzc2VkID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZm9jdXNFdmVudC5lbWl0KCk7XG4gIH1cbiAgb25TdGFyQnV0dG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9IG51bGw7XG4gICAgaWYgKHRoaXMuX2lzQmx1ckV2ZW50U3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy5faXNCbHVyRXZlbnRTdXBwcmVzc2VkID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3dhc0NvbXBvbmVudEJsdXJyZWQgPSB0cnVlO1xuICAgIHRoaXMuYmx1ckV2ZW50LmVtaXQoKTtcbiAgfVxuICBmb2N1c1N0YXJCdXR0b25CeUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcykgcmV0dXJuO1xuICAgIHRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcy5nZXQoaW5kZXgpIS5mb2N1cygpO1xuICB9XG4gIGZvY3VzTmV4dFN0YXJCdXR0b24ob2Zmc2V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcyB8fCB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9PSBudWxsKSByZXR1cm47XG5cbiAgICBsZXQgbmV4dEluZGV4ID0gdGhpcy5fY3VycmVudEZvY3VzSW5kZXggKyBvZmZzZXQ7XG4gICAgbmV4dEluZGV4ID0gTWF0aC5taW4obmV4dEluZGV4LCB0aGlzLm1heCAtIDEpO1xuICAgIG5leHRJbmRleCA9IE1hdGgubWF4KG5leHRJbmRleCwgMCk7XG5cbiAgICB0aGlzLmZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgobmV4dEluZGV4KTtcbiAgfVxuICBwcml2YXRlIF9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX2lzRm9jdXNFdmVudFN1cHByZXNzZWQgPSB0cnVlO1xuICAgIHRoaXMuX2lzQmx1ckV2ZW50U3VwcHJlc3NlZCA9IHRydWU7XG4gIH1cblxuICBvdmVycmlkZSBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgoMCk7XG4gIH1cbiAgb3ZlcnJpZGUgYmx1cigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcyB8fCB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9PSBudWxsKSByZXR1cm47XG4gICAgdGhpcy5zdGFyQnV0dG9uSW5zdGFuY2VzLmdldCh0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCkhLmJsdXIoKTtcbiAgfVxuXG4gIC8vKiBrZXkgcHJlc3MgaGFuZGxlcnNcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIG9uS2V5UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmNvZGUpIHtcbiAgICAgIGNhc2UgJ1RhYic6IHtcbiAgICAgICAgdGhpcy5fb25UYWJQcmVzcyhldmVudCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOiB7XG4gICAgICAgIHRoaXMuX29uQXJyb3dSaWdodFByZXNzKGV2ZW50KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAnQXJyb3dMZWZ0Jzoge1xuICAgICAgICB0aGlzLl9vbkFycm93TGVmdFByZXNzKGV2ZW50KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAnSG9tZSc6IHtcbiAgICAgICAgdGhpcy5fb25Ib21lUHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjYXNlICdFbmQnOiB7XG4gICAgICAgIHRoaXMuX29uRW5kUHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX29uQXJyb3dSaWdodFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5mb2N1c05leHRTdGFyQnV0dG9uKCsxKTtcbiAgfVxuICBwcml2YXRlIF9vbkFycm93TGVmdFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5mb2N1c05leHRTdGFyQnV0dG9uKC0xKTtcbiAgfVxuICBwcml2YXRlIF9vbkhvbWVQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5fc3VwcHJlc3NGb2N1c0V2ZW50cygpO1xuICAgIHRoaXMuZm9jdXNTdGFyQnV0dG9uQnlJbmRleCgwKTtcbiAgfVxuICBwcml2YXRlIF9vbkVuZFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5fb25UYWJQcmVzcyhldmVudCk7XG4gIH1cbiAgcHJpdmF0ZSBfb25UYWJQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNTdGFyQnV0dG9uQnlJbmRleCh0aGlzLm1heCAtIDEpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXJkLXN0YXItaW5wdXRcIlxyXG4gICAgW25nQ2xhc3NdPVwibmdDbGFzc2VzXCJcclxuICAgIFtjbGFzc109XCJ3cmFwcGVyQ2xhc3Nlc1wiXHJcbiAgICAobW91c2VsZWF2ZSk9XCJzZXREaXNwbGF5VG9WYWx1ZSgpXCJcclxuPlxyXG4gICAgPGFyZC1zdGFyLWJ1dHRvblxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBvYmplY3Qgb2Ygc3RhckFycmF5OyBsZXQgaW5kZXggPSBpbmRleFwiXHJcbiAgICAgICAgI3N0YXJCdXR0b25cclxuICAgICAgICBbY2xhc3MuYXJkLXN0YXItbm90LWluLXZhbHVlXT1cIiEob2JqZWN0LmlzSW5WYWx1ZSlcIlxyXG4gICAgICAgIFtjb2xvcl09XCJvYmplY3QuaXNJblZhbHVlID8gY29sb3IgOiAnbm9uZSdcIlxyXG4gICAgICAgIGNsaWNrU3RyYXRlZ3k9XCJub25lXCJcclxuICAgICAgICBbc2VsZWN0ZWRdPVwib2JqZWN0LmZpbGxlZFwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uU3RhckNsaWNrKGluZGV4KVwiXHJcbiAgICAgICAgKGZvY3VzKT1cIm9uU3RhckJ1dHRvbkZvY3VzKGluZGV4KVwiXHJcbiAgICAgICAgKGJsdXIpPVwib25TdGFyQnV0dG9uQmx1cigpXCJcclxuICAgICAgICAobW91c2VlbnRlcik9XCJvblN0YXJIaWdobGlnaHQoaW5kZXgpXCJcclxuICAgICAgICBbdGFiSW5kZXhdPVwidGFiSW5kZXhcIlxyXG4gICAgPjwvYXJkLXN0YXItYnV0dG9uPlxyXG48L2Rpdj4iXX0=
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9zdGFyLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWlucHV0L3N0YXItaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQ0wsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFxQjVDLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxxQkFBcUI7SUFjakU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQWRELG1CQUFjLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRTVDLGNBQWM7UUFDTCxVQUFLLEdBQUcsS0FBSyxDQUFZLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6QyxjQUFTLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FB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QUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7OEdBdEtVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLDJyQkFSeEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO2dCQUN2RCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsdUtDckNILHNtQkFvQkE7OzJGRG1CYSx3QkFBd0I7a0JBZHBDLFNBQVM7K0JBQ0UsZ0JBQWdCLGlCQUdYLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUM7NEJBQ3ZELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO3dEQTBIRCxVQUFVO3NCQURULFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSG9zdExpc3RlbmVyLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgZm9yd2FyZFJlZixcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbiAgdmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xuaW1wb3J0IHsgQXJkaXVtU3RhckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL3N0YXItYnV0dG9uL3N0YXItYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBfTmdNb2RlbENvbXBvbmVudEJhc2UgfSBmcm9tICcuLy4uLy4uL19pbnRlcm5hbC9uZ21vZGVsLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdGFyQ29sb3IgfSBmcm9tICcuLy4uL3N0YXIudHlwZXMnO1xuXG5pbnRlcmZhY2UgU3RhcklucHV0T2JqZWN0IHtcbiAgZmlsbGVkOiBib29sZWFuO1xuICBpc0luVmFsdWU6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FyZC1zdGFyLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGFyLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEFyZGl1bVN0YXJJbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBcmRpdW1TdGFySW5wdXRDb21wb25lbnQgZXh0ZW5kcyBfTmdNb2RlbENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHJlYWRvbmx5IHdyYXBwZXJDbGFzc2VzID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cbiAgLy8hIGFwcGVhcmFuY2VcbiAgcmVhZG9ubHkgY29sb3IgPSBpbnB1dDxTdGFyQ29sb3I+KFN0YXJDb2xvci5TdGFyKTtcblxuICByZWFkb25seSBuZ0NsYXNzZXMgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IFt0aGlzLndyYXBwZXJDbGFzc2VzKCksIGBhcmQtY29sb3ItJHt0aGlzLmNvbG9yKCl9YF0uam9pbignICcpKTtcblxuICAvLyEgZXZlbnRzXG4gIHJlYWRvbmx5IGNoYW5nZUV2ZW50ID0gb3V0cHV0PG51bWJlcj4oeyBhbGlhczogJ2NoYW5nZScgfSk7XG4gIHJlYWRvbmx5IGhpZ2hsaWdodEV2ZW50ID0gb3V0cHV0PG51bWJlcj4oeyBhbGlhczogJ2hpZ2hsaWdodCcgfSk7XG5cbiAgcmVhZG9ubHkgdmFsdWUgPSBtb2RlbDxudW1iZXI+KDApO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhpID0gdGhpcy5faGlnaGxpZ2h0ZWRTdGFySW5kZXgoKTtcbiAgICAgIGlmIChoaSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmhpZ2hsaWdodEV2ZW50LmVtaXQoaGkpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLnZhbHVlKCk7IC8vIGxldCB0aGUgZWZmZWN0IGtub3cgd2hlbiB0byBmaXJlXG4gICAgICB0aGlzLl9lbWl0Q2hhbmdlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvLyEgc3RhcnNcbiAgcmVhZG9ubHkgbWF4ID0gaW5wdXQ8bnVtYmVyLCBhbnk+KDAsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApIH0pO1xuXG4gIHJlYWRvbmx5IHN0YXJCdXR0b25JbnN0YW5jZXMgPSB2aWV3Q2hpbGRyZW48QXJkaXVtU3RhckJ1dHRvbkNvbXBvbmVudD4oJ3N0YXJCdXR0b24nKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGlnaGxpZ2h0ZWRTdGFySW5kZXggPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XG5cbiAgcmVhZG9ubHkgc3RhckFycmF5ID0gY29tcHV0ZWQ8U3RhcklucHV0T2JqZWN0W10+KCgpID0+IHtcbiAgICBjb25zdCB2ID0gdGhpcy52YWx1ZSgpO1xuICAgIGNvbnN0IG1heCA9IHRoaXMubWF4KCk7XG4gICAgY29uc3QgaGkgPSBNYXRoLnJvdW5kKHRoaXMuX2hpZ2hsaWdodGVkU3RhckluZGV4KCkgPz8gLTEpO1xuXG4gICAgY29uc3QgYXJyID0gbmV3IEFycmF5KG1heCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBtYXg7IGkrKykge1xuICAgICAgaWYgKGkgPD0gaGkpIHtcbiAgICAgICAgYXJyW2ldID0geyBmaWxsZWQ6IHRydWUsIGlzSW5WYWx1ZTogdHJ1ZSB9O1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGlmIChpIDwgdikge1xuICAgICAgICBhcnJbaV0gPSB7IGZpbGxlZDogaGkgPT09IC0xLCBpc0luVmFsdWU6IHRydWUgfTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBhcnJbaV0gPSB7IGZpbGxlZDogZmFsc2UsIGlzSW5WYWx1ZTogZmFsc2UgfTtcbiAgICB9XG4gICAgcmV0dXJuIGFycjtcbiAgfSk7XG5cbiAgLy8hIENvbnRyb2xWYWx1ZUFjY2Vzc29yJ3Mgd3JpdGVWYWx1ZVxuICB3cml0ZVZhbHVlKHY6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudmFsdWUuc2V0KHYpO1xuICB9XG4gIG9uU3RhckNsaWNrKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlLnNldChpbmRleCArIDEpO1xuICB9XG4gIG9uU3RhckhpZ2hsaWdodChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5faGlnaGxpZ2h0ZWRTdGFySW5kZXguc2V0KGluZGV4KTtcbiAgfVxuICBzZXREaXNwbGF5VG9WYWx1ZSgpIHtcbiAgICB0aGlzLl9oaWdobGlnaHRlZFN0YXJJbmRleC5zZXQobnVsbCk7XG4gIH1cbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMuX29uQ2hhbmdlUmVnaXN0ZXJlZD8uKHRoaXMudmFsdWUoKSk7XG4gICAgdGhpcy5jaGFuZ2VFdmVudC5lbWl0KHRoaXMudmFsdWUoKSk7XG4gIH1cblxuICAvLyogZm9jdXMgaGFuZGxlcnNcbiAgcHJpdmF0ZSBfaXNGb2N1c0V2ZW50U3VwcHJlc3NlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9pc0JsdXJFdmVudFN1cHByZXNzZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfY3VycmVudEZvY3VzSW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBvblN0YXJCdXR0b25Gb2N1cyhpbmRleDogbnVtYmVyLCBldmVudDogRm9jdXNFdmVudCkge1xuICAgIHRoaXMuX2N1cnJlbnRGb2N1c0luZGV4ID0gaW5kZXg7XG4gICAgaWYgKHRoaXMuX2lzRm9jdXNFdmVudFN1cHByZXNzZWQpIHtcbiAgICAgIHRoaXMuX2lzRm9jdXNFdmVudFN1cHByZXNzZWQgPSBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5mb2N1c0V2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG4gIG9uU3RhckJ1dHRvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9IG51bGw7XG4gICAgaWYgKHRoaXMuX2lzQmx1ckV2ZW50U3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy5faXNCbHVyRXZlbnRTdXBwcmVzc2VkID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYmx1ckV2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG4gIGZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5zdGFyQnV0dG9uSW5zdGFuY2VzKCkpIHJldHVybjtcbiAgICB0aGlzLnN0YXJCdXR0b25JbnN0YW5jZXMoKVtpbmRleF0hLmZvY3VzKCk7XG4gIH1cbiAgZm9jdXNOZXh0U3RhckJ1dHRvbihvZmZzZXQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5zdGFyQnV0dG9uSW5zdGFuY2VzKCkgfHwgdGhpcy5fY3VycmVudEZvY3VzSW5kZXggPT09IG51bGwpIHJldHVybjtcblxuICAgIGxldCBuZXh0SW5kZXggPSB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCArIG9mZnNldDtcbiAgICBuZXh0SW5kZXggPSBNYXRoLm1pbihuZXh0SW5kZXgsIHRoaXMubWF4KCkgLSAxKTtcbiAgICBuZXh0SW5kZXggPSBNYXRoLm1heChuZXh0SW5kZXgsIDApO1xuXG4gICAgdGhpcy5mb2N1c1N0YXJCdXR0b25CeUluZGV4KG5leHRJbmRleCk7XG4gIH1cbiAgcHJpdmF0ZSBfc3VwcHJlc3NGb2N1c0V2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9pc0ZvY3VzRXZlbnRTdXBwcmVzc2VkID0gdHJ1ZTtcbiAgICB0aGlzLl9pc0JsdXJFdmVudFN1cHByZXNzZWQgPSB0cnVlO1xuICB9XG5cbiAgb3ZlcnJpZGUgZm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c1N0YXJCdXR0b25CeUluZGV4KDApO1xuICB9XG4gIG92ZXJyaWRlIGJsdXIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXJCdXR0b25JbnN0YW5jZXMoKSB8fCB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9PT0gbnVsbCkgcmV0dXJuO1xuICAgIHRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcygpW3RoaXMuX2N1cnJlbnRGb2N1c0luZGV4XSEuYmx1cigpO1xuICB9XG5cbiAgLy8hIGtleSBwcmVzcyBoYW5kbGVyc1xuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXlQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHN3aXRjaCAoZXZlbnQuY29kZSkge1xuICAgICAgY2FzZSAnVGFiJzoge1xuICAgICAgICB0aGlzLl9vblRhYlByZXNzKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOiB7XG4gICAgICAgIHRoaXMuX29uQXJyb3dSaWdodFByZXNzKGV2ZW50KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAnQXJyb3dMZWZ0Jzoge1xuICAgICAgICB0aGlzLl9vbkFycm93TGVmdFByZXNzKGV2ZW50KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAnSG9tZSc6IHtcbiAgICAgICAgdGhpcy5fb25Ib21lUHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjYXNlICdFbmQnOiB7XG4gICAgICAgIHRoaXMuX29uRW5kUHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX29uQXJyb3dSaWdodFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5mb2N1c05leHRTdGFyQnV0dG9uKCsxKTtcbiAgfVxuICBwcml2YXRlIF9vbkFycm93TGVmdFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5mb2N1c05leHRTdGFyQnV0dG9uKC0xKTtcbiAgfVxuICBwcml2YXRlIF9vbkhvbWVQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5fc3VwcHJlc3NGb2N1c0V2ZW50cygpO1xuICAgIHRoaXMuZm9jdXNTdGFyQnV0dG9uQnlJbmRleCgwKTtcbiAgfVxuICBwcml2YXRlIF9vbkVuZFByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5fb25UYWJQcmVzcygpO1xuICB9XG4gIHByaXZhdGUgX29uVGFiUHJlc3MoKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c1N0YXJCdXR0b25CeUluZGV4KHRoaXMubWF4KCkgLSAxKTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImFyZC1zdGFyLWlucHV0XCJcbiAgW25nQ2xhc3NdPVwibmdDbGFzc2VzKClcIlxuICAobW91c2VsZWF2ZSk9XCJzZXREaXNwbGF5VG9WYWx1ZSgpXCJcbj5cbiAgQGZvciAob2JqZWN0IG9mIHN0YXJBcnJheSgpOyB0cmFjayAkaW5kZXgpIHtcbiAgICA8YXJkLXN0YXItYnV0dG9uXG4gICAgICAjc3RhckJ1dHRvblxuICAgICAgW2NsYXNzLmFyZC1zdGFyLW5vdC1pbi12YWx1ZV09XCIhb2JqZWN0LmlzSW5WYWx1ZVwiXG4gICAgICBbY29sb3JdPVwib2JqZWN0LmlzSW5WYWx1ZSA/IGNvbG9yKCkgOiAnbm9uZSdcIlxuICAgICAgY2xpY2tTdHJhdGVneT1cIm5vb3BcIlxuICAgICAgW3NlbGVjdGVkXT1cIm9iamVjdC5maWxsZWRcIlxuICAgICAgKGNsaWNrKT1cIm9uU3RhckNsaWNrKCRpbmRleClcIlxuICAgICAgKGZvY3VzKT1cIm9uU3RhckJ1dHRvbkZvY3VzKCRpbmRleCwgJGV2ZW50KVwiXG4gICAgICAoYmx1cik9XCJvblN0YXJCdXR0b25CbHVyKCRldmVudClcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwib25TdGFySGlnaGxpZ2h0KCRpbmRleClcIlxuICAgICAgW3RhYkluZGV4XT1cInRhYkluZGV4KClcIlxuICAgIC8+XG4gIH1cbjwvZGl2PlxuIl19
@@ -4,11 +4,11 @@ import { ArdiumStarButtonModule } from '../star-button/star-button.module';
4
4
  import { ArdiumStarInputComponent } from './star-input.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class ArdiumStarInputModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputModule, declarations: [ArdiumStarInputComponent], imports: [CommonModule, ArdiumStarButtonModule], exports: [ArdiumStarInputComponent] }); }
9
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputModule, imports: [CommonModule, ArdiumStarButtonModule] }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputModule, declarations: [ArdiumStarInputComponent], imports: [CommonModule, ArdiumStarButtonModule], exports: [ArdiumStarInputComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputModule, imports: [CommonModule, ArdiumStarButtonModule] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarInputModule, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarInputModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [ArdiumStarInputComponent],
@@ -1,28 +1,20 @@
1
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core';
2
2
  import { StarColor, StarFillMode } from './star.types';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  export class ArdiumStarComponent {
6
6
  constructor() {
7
- this.wrapperClasses = '';
8
- this.fill = StarFillMode.Filled;
9
- //* appearance
10
- this.color = StarColor.Star;
7
+ this.wrapperClasses = input('');
8
+ //! appearance
9
+ this.color = input(StarColor.Star);
10
+ this.fill = input(StarFillMode.Filled);
11
+ this.ngClasses = computed(() => [this.wrapperClasses(), `ard-color-${this.color()}`, `ard-star-fill-${this.fill()}`].join(' '));
11
12
  }
12
- get ngClasses() {
13
- return [`ard-color-${this.color}`, `ard-star-fill-${this.fill}`].join(' ');
14
- }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: ArdiumStarComponent, selector: "ard-star", inputs: { wrapperClasses: "wrapperClasses", fill: "fill", color: "color" }, ngImport: i0, template: "<div\r\n class=\"ard-star\"\r\n [class]=\"wrapperClasses\"\r\n [ngClass]=\"ngClasses\"\r\n>\r\n <div class=\"ard-star-icon ard-star-selected\"></div>\r\n <div class=\"ard-star-icon ard-star-half\"></div>\r\n <div class=\"ard-star-icon ard-star-unselected\"></div>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.2", type: ArdiumStarComponent, selector: "ard-star", inputs: { wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, fill: { classPropertyName: "fill", publicName: "fill", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"ard-star\"\n [ngClass]=\"ngClasses()\"\n>\n <div class=\"ard-star-icon ard-star-selected\"></div>\n <div class=\"ard-star-icon ard-star-half\"></div>\n <div class=\"ard-star-icon ard-star-unselected\"></div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
17
15
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarComponent, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarComponent, decorators: [{
19
17
  type: Component,
20
- args: [{ selector: 'ard-star', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"ard-star\"\r\n [class]=\"wrapperClasses\"\r\n [ngClass]=\"ngClasses\"\r\n>\r\n <div class=\"ard-star-icon ard-star-selected\"></div>\r\n <div class=\"ard-star-icon ard-star-half\"></div>\r\n <div class=\"ard-star-icon ard-star-unselected\"></div>\r\n</div>" }]
21
- }], propDecorators: { wrapperClasses: [{
22
- type: Input
23
- }], fill: [{
24
- type: Input
25
- }], color: [{
26
- type: Input
27
- }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBU3ZELE1BQU0sT0FBTyxtQkFBbUI7SUFQaEM7UUFRVyxtQkFBYyxHQUFXLEVBQUUsQ0FBQztRQUM1QixTQUFJLEdBQWlCLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFFbEQsY0FBYztRQUNMLFVBQUssR0FBYyxTQUFTLENBQUMsSUFBSSxDQUFDO0tBSzVDO0lBSEMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLGlCQUFpQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDN0UsQ0FBQzs4R0FUVSxtQkFBbUI7a0dBQW5CLG1CQUFtQiw0SENWaEMscVNBUU07OzJGREVPLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDRSxVQUFVLGlCQUdMLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RhckNvbG9yLCBTdGFyRmlsbE1vZGUgfSBmcm9tICcuL3N0YXIudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcmQtc3RhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Rhci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXJkaXVtU3RhckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHdyYXBwZXJDbGFzc2VzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgZmlsbDogU3RhckZpbGxNb2RlID0gU3RhckZpbGxNb2RlLkZpbGxlZDtcblxuICAvLyogYXBwZWFyYW5jZVxuICBASW5wdXQoKSBjb2xvcjogU3RhckNvbG9yID0gU3RhckNvbG9yLlN0YXI7XG5cbiAgZ2V0IG5nQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbYGFyZC1jb2xvci0ke3RoaXMuY29sb3J9YCwgYGFyZC1zdGFyLWZpbGwtJHt0aGlzLmZpbGx9YF0uam9pbignICcpO1xuICB9XG59XG4iLCI8ZGl2XHJcbiAgICBjbGFzcz1cImFyZC1zdGFyXCJcclxuICAgIFtjbGFzc109XCJ3cmFwcGVyQ2xhc3Nlc1wiXHJcbiAgICBbbmdDbGFzc109XCJuZ0NsYXNzZXNcIlxyXG4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXJkLXN0YXItaWNvbiBhcmQtc3Rhci1zZWxlY3RlZFwiPjwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImFyZC1zdGFyLWljb24gYXJkLXN0YXItaGFsZlwiPjwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImFyZC1zdGFyLWljb24gYXJkLXN0YXItdW5zZWxlY3RlZFwiPjwvZGl2PlxyXG48L2Rpdj4iXX0=
18
+ args: [{ selector: 'ard-star', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ard-star\"\n [ngClass]=\"ngClasses()\"\n>\n <div class=\"ard-star-icon ard-star-selected\"></div>\n <div class=\"ard-star-icon ard-star-half\"></div>\n <div class=\"ard-star-icon ard-star-unselected\"></div>\n</div>\n" }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQVN2RCxNQUFNLE9BQU8sbUJBQW1CO0lBUGhDO1FBUVcsbUJBQWMsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFNUMsY0FBYztRQUNMLFVBQUssR0FBRyxLQUFLLENBQVksU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLFNBQUksR0FBRyxLQUFLLENBQWUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWhELGNBQVMsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQ3pDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsaUJBQWlCLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUMvRixDQUFDO0tBQ0g7OEdBVlksbUJBQW1CO2tHQUFuQixtQkFBbUIsNGJDVmhDLCtPQVFBOzsyRkRFYSxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0UsVUFBVSxpQkFHTCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RhckNvbG9yLCBTdGFyRmlsbE1vZGUgfSBmcm9tICcuL3N0YXIudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcmQtc3RhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Rhci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXJkaXVtU3RhckNvbXBvbmVudCB7XG4gIHJlYWRvbmx5IHdyYXBwZXJDbGFzc2VzID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cbiAgLy8hIGFwcGVhcmFuY2VcbiAgcmVhZG9ubHkgY29sb3IgPSBpbnB1dDxTdGFyQ29sb3I+KFN0YXJDb2xvci5TdGFyKTtcbiAgcmVhZG9ubHkgZmlsbCA9IGlucHV0PFN0YXJGaWxsTW9kZT4oU3RhckZpbGxNb2RlLkZpbGxlZCk7XG5cbiAgcmVhZG9ubHkgbmdDbGFzc2VzID0gY29tcHV0ZWQ8c3RyaW5nPigoKSA9PlxuICAgIFt0aGlzLndyYXBwZXJDbGFzc2VzKCksIGBhcmQtY29sb3ItJHt0aGlzLmNvbG9yKCl9YCwgYGFyZC1zdGFyLWZpbGwtJHt0aGlzLmZpbGwoKX1gXS5qb2luKCcgJylcbiAgKTtcbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhcmQtc3RhclwiXG4gIFtuZ0NsYXNzXT1cIm5nQ2xhc3NlcygpXCJcbj5cbiAgPGRpdiBjbGFzcz1cImFyZC1zdGFyLWljb24gYXJkLXN0YXItc2VsZWN0ZWRcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImFyZC1zdGFyLWljb24gYXJkLXN0YXItaGFsZlwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXJkLXN0YXItaWNvbiBhcmQtc3Rhci11bnNlbGVjdGVkXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -3,11 +3,11 @@ import { CommonModule } from '@angular/common';
3
3
  import { ArdiumStarComponent } from './star.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class ArdiumStarModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarModule, declarations: [ArdiumStarComponent], imports: [CommonModule], exports: [ArdiumStarComponent] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarModule, imports: [CommonModule] }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarModule, declarations: [ArdiumStarComponent], imports: [CommonModule], exports: [ArdiumStarComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarModule, imports: [CommonModule] }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: ArdiumStarModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: ArdiumStarModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [ArdiumStarComponent],
@@ -0,0 +1,3 @@
1
+ export * from './statebox.component';
2
+ export * from './statebox.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXRlYm94L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3RhdGVib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGVib3gubW9kdWxlJztcbmV4cG9ydCB7IFN0YXRlYm94U3RhdGUsIFN0YXRlYm94VmFsdWUgfSBmcm9tICcuL3N0YXRlYm94LnR5cGVzJztcbiJdfQ==