@ardium-ui/ui 4.4.1 → 5.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/fesm2022/ardium-ui-ui.mjs +2525 -2413
  2. package/fesm2022/ardium-ui-ui.mjs.map +1 -1
  3. package/lib/_internal/boolean-component.d.ts +1 -1
  4. package/lib/_internal/disablable-component.d.ts +1 -1
  5. package/lib/_internal/focusable-component.d.ts +1 -1
  6. package/lib/_internal/form-field-component.d.ts +1 -1
  7. package/lib/_internal/ngmodel-component.d.ts +2 -2
  8. package/lib/_internal/selectable-list-component.d.ts +1 -1
  9. package/lib/_internal/utils/date.utils.d.ts +3 -0
  10. package/lib/buttons/_button-base.d.ts +1 -1
  11. package/lib/calendar/calendar.component.d.ts +8 -2
  12. package/lib/file-inputs/file-input-base.d.ts +7 -3
  13. package/lib/form-field/form-field-base.d.ts +1 -1
  14. package/lib/inputs/_simple-input-base.d.ts +3 -3
  15. package/lib/inputs/autocomplete-input/autocomplete-input.component.d.ts +66 -0
  16. package/lib/inputs/autocomplete-input/autocomplete-input.defaults.d.ts +15 -0
  17. package/lib/inputs/autocomplete-input/autocomplete-input.directives.d.ts +33 -0
  18. package/lib/inputs/autocomplete-input/autocomplete-input.module.d.ts +13 -0
  19. package/lib/inputs/autocomplete-input/index.d.ts +3 -0
  20. package/lib/inputs/date-input/date-input.component.d.ts +5 -2
  21. package/lib/inputs/input/index.d.ts +2 -1
  22. package/lib/inputs/input/input.component.d.ts +3 -56
  23. package/lib/inputs/input/input.defaults.d.ts +1 -10
  24. package/lib/inputs/input/input.directives.d.ts +0 -13
  25. package/lib/inputs/input/input.module.d.ts +3 -5
  26. package/lib/inputs/input-utils.d.ts +8 -8
  27. package/lib/inputs/number-input/number-input.component.d.ts +1 -0
  28. package/lib/option/option.component.d.ts +1 -1
  29. package/lib/slider/abstract-slider.d.ts +1 -1
  30. package/package.json +1 -3
  31. package/prebuilt-themes/default/inputs/{simple-input.css → autocomplete-input.css} +40 -15
  32. package/prebuilt-themes/default/inputs/autocomplete-input.css.map +1 -0
  33. package/prebuilt-themes/default/inputs/file-input.css +9 -4
  34. package/prebuilt-themes/default/inputs/file-input.css.map +1 -1
  35. package/prebuilt-themes/default/inputs/input.css +0 -25
  36. package/prebuilt-themes/default/inputs/input.css.map +1 -1
  37. package/public-api.d.ts +1 -1
  38. package/themes/default/inputs/autocomplete-input.scss +46 -0
  39. package/themes/default/inputs/file-input.scss +10 -2
  40. package/themes/default/inputs/input.scss +0 -34
  41. package/esm2022/ardium-ui-ui.mjs +0 -5
  42. package/esm2022/lib/_internal/boolean-component.mjs +0 -95
  43. package/esm2022/lib/_internal/clear-button/clear-button.component.mjs +0 -15
  44. package/esm2022/lib/_internal/clear-button/clear-button.module.mjs +0 -18
  45. package/esm2022/lib/_internal/disablable-component.mjs +0 -51
  46. package/esm2022/lib/_internal/focusable-component.mjs +0 -85
  47. package/esm2022/lib/_internal/form-field-component.mjs +0 -33
  48. package/esm2022/lib/_internal/item-storages/dropdown-item-storage.mjs +0 -453
  49. package/esm2022/lib/_internal/item-storages/simple-item-storage.mjs +0 -370
  50. package/esm2022/lib/_internal/item-storages/simplest-item-storage.mjs +0 -157
  51. package/esm2022/lib/_internal/models/pagination.model.mjs +0 -90
  52. package/esm2022/lib/_internal/models/queue.mjs +0 -59
  53. package/esm2022/lib/_internal/ngmodel-component.mjs +0 -99
  54. package/esm2022/lib/_internal/public-api.mjs +0 -2
  55. package/esm2022/lib/_internal/selectable-list-component.mjs +0 -271
  56. package/esm2022/lib/badge/badge.defaults.mjs +0 -20
  57. package/esm2022/lib/badge/badge.directive.mjs +0 -97
  58. package/esm2022/lib/badge/badge.module.mjs +0 -18
  59. package/esm2022/lib/badge/badge.types.mjs +0 -16
  60. package/esm2022/lib/badge/index.mjs +0 -5
  61. package/esm2022/lib/buttons/_button-base.defaults.mjs +0 -17
  62. package/esm2022/lib/buttons/_button-base.mjs +0 -26
  63. package/esm2022/lib/buttons/button/button.component.mjs +0 -38
  64. package/esm2022/lib/buttons/button/button.defaults.mjs +0 -17
  65. package/esm2022/lib/buttons/button/button.module.mjs +0 -18
  66. package/esm2022/lib/buttons/button/index.mjs +0 -4
  67. package/esm2022/lib/buttons/fab/fab.component.mjs +0 -33
  68. package/esm2022/lib/buttons/fab/fab.defaults.mjs +0 -17
  69. package/esm2022/lib/buttons/fab/fab.module.mjs +0 -18
  70. package/esm2022/lib/buttons/fab/index.mjs +0 -4
  71. package/esm2022/lib/buttons/general-button.types.mjs +0 -55
  72. package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +0 -39
  73. package/esm2022/lib/buttons/icon-button/icon-button.defaults.mjs +0 -9
  74. package/esm2022/lib/buttons/icon-button/icon-button.module.mjs +0 -18
  75. package/esm2022/lib/buttons/icon-button/index.mjs +0 -4
  76. package/esm2022/lib/calendar/calendar.component.mjs +0 -466
  77. package/esm2022/lib/calendar/calendar.defaults.mjs +0 -26
  78. package/esm2022/lib/calendar/calendar.directives.mjs +0 -107
  79. package/esm2022/lib/calendar/calendar.internal-directives.mjs +0 -22
  80. package/esm2022/lib/calendar/calendar.internal-types.mjs +0 -2
  81. package/esm2022/lib/calendar/calendar.module.mjs +0 -71
  82. package/esm2022/lib/calendar/calendar.types.mjs +0 -6
  83. package/esm2022/lib/calendar/index.mjs +0 -6
  84. package/esm2022/lib/calendar/views/days-view/days-view.component.mjs +0 -282
  85. package/esm2022/lib/calendar/views/days-view/days-view.helpers.mjs +0 -65
  86. package/esm2022/lib/calendar/views/months-view/months-view.component.mjs +0 -245
  87. package/esm2022/lib/calendar/views/months-view/months-view.helpers.mjs +0 -22
  88. package/esm2022/lib/calendar/views/years-view/years-view.component.mjs +0 -244
  89. package/esm2022/lib/calendar/views/years-view/years-view.helpers.mjs +0 -14
  90. package/esm2022/lib/card/card.children.mjs +0 -96
  91. package/esm2022/lib/card/card.component.mjs +0 -38
  92. package/esm2022/lib/card/card.defaults.mjs +0 -17
  93. package/esm2022/lib/card/card.module.mjs +0 -59
  94. package/esm2022/lib/card/card.types.mjs +0 -9
  95. package/esm2022/lib/card/index.mjs +0 -6
  96. package/esm2022/lib/checkbox/checkbox.component.mjs +0 -68
  97. package/esm2022/lib/checkbox/checkbox.defaults.mjs +0 -17
  98. package/esm2022/lib/checkbox/checkbox.directives.mjs +0 -14
  99. package/esm2022/lib/checkbox/checkbox.internal-directives.mjs +0 -15
  100. package/esm2022/lib/checkbox/checkbox.module.mjs +0 -20
  101. package/esm2022/lib/checkbox/checkbox.types.mjs +0 -6
  102. package/esm2022/lib/checkbox/index.mjs +0 -6
  103. package/esm2022/lib/checkbox-list/checkbox-list.component.mjs +0 -116
  104. package/esm2022/lib/checkbox-list/checkbox-list.defaults.mjs +0 -25
  105. package/esm2022/lib/checkbox-list/checkbox-list.directives.mjs +0 -14
  106. package/esm2022/lib/checkbox-list/checkbox-list.module.mjs +0 -21
  107. package/esm2022/lib/checkbox-list/checkbox-list.types.mjs +0 -7
  108. package/esm2022/lib/checkbox-list/index.mjs +0 -6
  109. package/esm2022/lib/chip/chip.component.mjs +0 -36
  110. package/esm2022/lib/chip/chip.defaults.mjs +0 -20
  111. package/esm2022/lib/chip/chip.module.mjs +0 -21
  112. package/esm2022/lib/chip/deletable-chip/deletable-chip.component.mjs +0 -53
  113. package/esm2022/lib/chip/deletable-chip/deletable-chip.defaults.mjs +0 -17
  114. package/esm2022/lib/chip/index.mjs +0 -8
  115. package/esm2022/lib/chip/selectable-chip/selectable-chip.component.mjs +0 -53
  116. package/esm2022/lib/chip/selectable-chip/selectable-chip.defaults.mjs +0 -18
  117. package/esm2022/lib/dialog/dialog.component.mjs +0 -109
  118. package/esm2022/lib/dialog/dialog.defaults.mjs +0 -26
  119. package/esm2022/lib/dialog/dialog.directives.mjs +0 -25
  120. package/esm2022/lib/dialog/dialog.module.mjs +0 -21
  121. package/esm2022/lib/dialog/dialog.types.mjs +0 -10
  122. package/esm2022/lib/dialog/index.mjs +0 -6
  123. package/esm2022/lib/divider/divider.component.mjs +0 -19
  124. package/esm2022/lib/divider/divider.defaults.mjs +0 -13
  125. package/esm2022/lib/divider/divider.module.mjs +0 -18
  126. package/esm2022/lib/divider/index.mjs +0 -4
  127. package/esm2022/lib/dropdown-panel/dropdown-panel.component.mjs +0 -112
  128. package/esm2022/lib/dropdown-panel/dropdown-panel.defaults.mjs +0 -17
  129. package/esm2022/lib/dropdown-panel/dropdown-panel.module.mjs +0 -18
  130. package/esm2022/lib/dropdown-panel/dropdown-panel.types.mjs +0 -10
  131. package/esm2022/lib/dropdown-panel/index.mjs +0 -5
  132. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.component.mjs +0 -70
  133. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.defaults.mjs +0 -18
  134. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.directives.mjs +0 -42
  135. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.module.mjs +0 -52
  136. package/esm2022/lib/file-inputs/file-drop-area/index.mjs +0 -5
  137. package/esm2022/lib/file-inputs/file-input/file-input.component.mjs +0 -120
  138. package/esm2022/lib/file-inputs/file-input/file-input.defaults.mjs +0 -23
  139. package/esm2022/lib/file-inputs/file-input/file-input.directives.mjs +0 -86
  140. package/esm2022/lib/file-inputs/file-input/file-input.module.mjs +0 -55
  141. package/esm2022/lib/file-inputs/file-input/index.mjs +0 -5
  142. package/esm2022/lib/file-inputs/file-input-base.defaults.mjs +0 -8
  143. package/esm2022/lib/file-inputs/file-input-base.mjs +0 -333
  144. package/esm2022/lib/file-inputs/file-input-types.mjs +0 -8
  145. package/esm2022/lib/form-field/error/error.component.mjs +0 -17
  146. package/esm2022/lib/form-field/error/error.directive.mjs +0 -17
  147. package/esm2022/lib/form-field/form-field-base.mjs +0 -53
  148. package/esm2022/lib/form-field/form-field-child.token.mjs +0 -3
  149. package/esm2022/lib/form-field/form-field-native-inputs.mjs +0 -80
  150. package/esm2022/lib/form-field/form-field.component.mjs +0 -12
  151. package/esm2022/lib/form-field/form-field.defaults.mjs +0 -17
  152. package/esm2022/lib/form-field/form-field.module.mjs +0 -49
  153. package/esm2022/lib/form-field/hint/hint.component.mjs +0 -17
  154. package/esm2022/lib/form-field/hint/hint.directive.mjs +0 -30
  155. package/esm2022/lib/form-field/horizontal-form-field.component.mjs +0 -12
  156. package/esm2022/lib/form-field/index.mjs +0 -10
  157. package/esm2022/lib/form-field/label/label.component.mjs +0 -27
  158. package/esm2022/lib/form-field-frame/form-field-frame.component.mjs +0 -58
  159. package/esm2022/lib/form-field-frame/form-field-frame.defaults.mjs +0 -18
  160. package/esm2022/lib/form-field-frame/form-field-frame.directives.mjs +0 -25
  161. package/esm2022/lib/form-field-frame/form-field-frame.module.mjs +0 -19
  162. package/esm2022/lib/form-field-frame/index.mjs +0 -5
  163. package/esm2022/lib/icon/icon.component.mjs +0 -52
  164. package/esm2022/lib/icon/icon.defaults.mjs +0 -17
  165. package/esm2022/lib/icon/icon.module.mjs +0 -19
  166. package/esm2022/lib/icon/icon.pipe.mjs +0 -18
  167. package/esm2022/lib/icon/index.mjs +0 -5
  168. package/esm2022/lib/inputs/_simple-input-base.mjs +0 -153
  169. package/esm2022/lib/inputs/date-input/date-input.component.mjs +0 -375
  170. package/esm2022/lib/inputs/date-input/date-input.defaults.mjs +0 -38
  171. package/esm2022/lib/inputs/date-input/date-input.directive.mjs +0 -163
  172. package/esm2022/lib/inputs/date-input/date-input.module.mjs +0 -108
  173. package/esm2022/lib/inputs/date-input/date-input.serializers.mjs +0 -49
  174. package/esm2022/lib/inputs/date-input/date-input.types.mjs +0 -5
  175. package/esm2022/lib/inputs/date-input/index.mjs +0 -6
  176. package/esm2022/lib/inputs/digit-input/digit-input.component.mjs +0 -265
  177. package/esm2022/lib/inputs/digit-input/digit-input.defaults.mjs +0 -24
  178. package/esm2022/lib/inputs/digit-input/digit-input.model.mjs +0 -267
  179. package/esm2022/lib/inputs/digit-input/digit-input.module.mjs +0 -19
  180. package/esm2022/lib/inputs/digit-input/digit-input.types.mjs +0 -15
  181. package/esm2022/lib/inputs/digit-input/digit-input.utils.mjs +0 -8
  182. package/esm2022/lib/inputs/digit-input/index.mjs +0 -5
  183. package/esm2022/lib/inputs/hex-input/hex-input.component.mjs +0 -180
  184. package/esm2022/lib/inputs/hex-input/hex-input.defaults.mjs +0 -26
  185. package/esm2022/lib/inputs/hex-input/hex-input.directives.mjs +0 -36
  186. package/esm2022/lib/inputs/hex-input/hex-input.model.mjs +0 -97
  187. package/esm2022/lib/inputs/hex-input/hex-input.module.mjs +0 -37
  188. package/esm2022/lib/inputs/hex-input/index.mjs +0 -5
  189. package/esm2022/lib/inputs/input/index.mjs +0 -4
  190. package/esm2022/lib/inputs/input/input.component.mjs +0 -278
  191. package/esm2022/lib/inputs/input/input.defaults.mjs +0 -21
  192. package/esm2022/lib/inputs/input/input.directives.mjs +0 -58
  193. package/esm2022/lib/inputs/input/input.module.mjs +0 -61
  194. package/esm2022/lib/inputs/input-transformers.mjs +0 -66
  195. package/esm2022/lib/inputs/input-types.mjs +0 -6
  196. package/esm2022/lib/inputs/input-utils.mjs +0 -186
  197. package/esm2022/lib/inputs/number-input/index.mjs +0 -5
  198. package/esm2022/lib/inputs/number-input/number-input.component.mjs +0 -245
  199. package/esm2022/lib/inputs/number-input/number-input.defaults.mjs +0 -27
  200. package/esm2022/lib/inputs/number-input/number-input.directives.mjs +0 -14
  201. package/esm2022/lib/inputs/number-input/number-input.module.mjs +0 -21
  202. package/esm2022/lib/inputs/password-input/index.mjs +0 -6
  203. package/esm2022/lib/inputs/password-input/password-input.component.mjs +0 -167
  204. package/esm2022/lib/inputs/password-input/password-input.defaults.mjs +0 -24
  205. package/esm2022/lib/inputs/password-input/password-input.directives.mjs +0 -49
  206. package/esm2022/lib/inputs/password-input/password-input.module.mjs +0 -41
  207. package/esm2022/lib/inputs/password-input/password-input.types.mjs +0 -2
  208. package/esm2022/lib/inputs/simple-input/index.mjs +0 -5
  209. package/esm2022/lib/inputs/simple-input/simple-input.component.mjs +0 -50
  210. package/esm2022/lib/inputs/simple-input/simple-input.defaults.mjs +0 -25
  211. package/esm2022/lib/inputs/simple-input/simple-input.directives.mjs +0 -36
  212. package/esm2022/lib/inputs/simple-input/simple-input.module.mjs +0 -37
  213. package/esm2022/lib/kbd/index.mjs +0 -6
  214. package/esm2022/lib/kbd/kbd.component.mjs +0 -30
  215. package/esm2022/lib/kbd/kbd.defaults.mjs +0 -15
  216. package/esm2022/lib/kbd/kbd.directive.mjs +0 -33
  217. package/esm2022/lib/kbd/kbd.module.mjs +0 -20
  218. package/esm2022/lib/kbd/kbd.pipe.mjs +0 -21
  219. package/esm2022/lib/kbd-shortcut/index.mjs +0 -4
  220. package/esm2022/lib/kbd-shortcut/kbd-shortcut.component.mjs +0 -36
  221. package/esm2022/lib/kbd-shortcut/kbd-shortcut.defaults.mjs +0 -8
  222. package/esm2022/lib/kbd-shortcut/kbd-shortcut.module.mjs +0 -19
  223. package/esm2022/lib/modal/index.mjs +0 -5
  224. package/esm2022/lib/modal/modal.component.mjs +0 -95
  225. package/esm2022/lib/modal/modal.defaults.mjs +0 -20
  226. package/esm2022/lib/modal/modal.directives.mjs +0 -14
  227. package/esm2022/lib/modal/modal.module.mjs +0 -22
  228. package/esm2022/lib/option/index.mjs +0 -3
  229. package/esm2022/lib/option/option.component.mjs +0 -55
  230. package/esm2022/lib/option/option.module.mjs +0 -18
  231. package/esm2022/lib/progress-bar/index.mjs +0 -6
  232. package/esm2022/lib/progress-bar/progress-bar.component.mjs +0 -58
  233. package/esm2022/lib/progress-bar/progress-bar.defaults.mjs +0 -21
  234. package/esm2022/lib/progress-bar/progress-bar.directive.mjs +0 -14
  235. package/esm2022/lib/progress-bar/progress-bar.module.mjs +0 -19
  236. package/esm2022/lib/progress-bar/progress-bar.types.mjs +0 -19
  237. package/esm2022/lib/progress-circle/index.mjs +0 -6
  238. package/esm2022/lib/progress-circle/progress-circle.component.mjs +0 -45
  239. package/esm2022/lib/progress-circle/progress-circle.defaults.mjs +0 -21
  240. package/esm2022/lib/progress-circle/progress-circle.directive.mjs +0 -14
  241. package/esm2022/lib/progress-circle/progress-circle.module.mjs +0 -19
  242. package/esm2022/lib/progress-circle/progress-circle.types.mjs +0 -10
  243. package/esm2022/lib/radio/index.mjs +0 -5
  244. package/esm2022/lib/radio/radio/radio.component.mjs +0 -119
  245. package/esm2022/lib/radio/radio/radio.defaults.mjs +0 -16
  246. package/esm2022/lib/radio/radio-group.component.mjs +0 -203
  247. package/esm2022/lib/radio/radio.module.mjs +0 -19
  248. package/esm2022/lib/search-functions.mjs +0 -64
  249. package/esm2022/lib/segment/index.mjs +0 -6
  250. package/esm2022/lib/segment/segment.component.mjs +0 -125
  251. package/esm2022/lib/segment/segment.defaults.mjs +0 -26
  252. package/esm2022/lib/segment/segment.directives.mjs +0 -14
  253. package/esm2022/lib/segment/segment.module.mjs +0 -19
  254. package/esm2022/lib/segment/segment.types.mjs +0 -13
  255. package/esm2022/lib/select/index.mjs +0 -6
  256. package/esm2022/lib/select/select.component.mjs +0 -836
  257. package/esm2022/lib/select/select.defaults.mjs +0 -53
  258. package/esm2022/lib/select/select.directive.mjs +0 -171
  259. package/esm2022/lib/select/select.module.mjs +0 -112
  260. package/esm2022/lib/select/select.types.mjs +0 -2
  261. package/esm2022/lib/slide-toggle/index.mjs +0 -5
  262. package/esm2022/lib/slide-toggle/slide-toggle.component.mjs +0 -43
  263. package/esm2022/lib/slide-toggle/slide-toggle.defaults.mjs +0 -21
  264. package/esm2022/lib/slide-toggle/slide-toggle.module.mjs +0 -18
  265. package/esm2022/lib/slide-toggle/slide-toggle.types.mjs +0 -5
  266. package/esm2022/lib/slider/abstract-slider.mjs +0 -251
  267. package/esm2022/lib/slider/index.mjs +0 -8
  268. package/esm2022/lib/slider/range-slider/range-slider.component.mjs +0 -151
  269. package/esm2022/lib/slider/range-slider/range-slider.module.mjs +0 -18
  270. package/esm2022/lib/slider/slider.component.mjs +0 -100
  271. package/esm2022/lib/slider/slider.defaults.mjs +0 -14
  272. package/esm2022/lib/slider/slider.directive.mjs +0 -16
  273. package/esm2022/lib/slider/slider.module.mjs +0 -20
  274. package/esm2022/lib/slider/slider.types.mjs +0 -10
  275. package/esm2022/lib/snackbar/index.mjs +0 -5
  276. package/esm2022/lib/snackbar/snackbar-ref.mjs +0 -51
  277. package/esm2022/lib/snackbar/snackbar.component.mjs +0 -48
  278. package/esm2022/lib/snackbar/snackbar.service.mjs +0 -224
  279. package/esm2022/lib/snackbar/snackbar.token.mjs +0 -26
  280. package/esm2022/lib/snackbar/snackbar.types.mjs +0 -25
  281. package/esm2022/lib/spinner/index.mjs +0 -4
  282. package/esm2022/lib/spinner/spinner.component.mjs +0 -19
  283. package/esm2022/lib/spinner/spinner.defaults.mjs +0 -14
  284. package/esm2022/lib/spinner/spinner.module.mjs +0 -18
  285. package/esm2022/lib/star/index.mjs +0 -6
  286. package/esm2022/lib/star/rating-display/index.mjs +0 -6
  287. package/esm2022/lib/star/rating-display/rating-display.component.mjs +0 -71
  288. package/esm2022/lib/star/rating-display/rating-display.defaults.mjs +0 -16
  289. package/esm2022/lib/star/rating-display/rating-display.directives.mjs +0 -16
  290. package/esm2022/lib/star/rating-display/rating-display.module.mjs +0 -20
  291. package/esm2022/lib/star/rating-display/rating-display.types.mjs +0 -2
  292. package/esm2022/lib/star/rating-input/index.mjs +0 -6
  293. package/esm2022/lib/star/rating-input/rating-input.component.mjs +0 -191
  294. package/esm2022/lib/star/rating-input/rating-input.defaults.mjs +0 -17
  295. package/esm2022/lib/star/rating-input/rating-input.directives.mjs +0 -16
  296. package/esm2022/lib/star/rating-input/rating-input.module.mjs +0 -20
  297. package/esm2022/lib/star/rating-input/rating-input.types.mjs +0 -2
  298. package/esm2022/lib/star/star-button/index.mjs +0 -6
  299. package/esm2022/lib/star/star-button/star-button.component.mjs +0 -55
  300. package/esm2022/lib/star/star-button/star-button.defaults.mjs +0 -18
  301. package/esm2022/lib/star/star-button/star-button.directives.mjs +0 -16
  302. package/esm2022/lib/star/star-button/star-button.module.mjs +0 -20
  303. package/esm2022/lib/star/star-button/star-button.types.mjs +0 -2
  304. package/esm2022/lib/star/star.component.mjs +0 -36
  305. package/esm2022/lib/star/star.defaults.mjs +0 -15
  306. package/esm2022/lib/star/star.directives.mjs +0 -16
  307. package/esm2022/lib/star/star.module.mjs +0 -20
  308. package/esm2022/lib/star/star.types.mjs +0 -23
  309. package/esm2022/lib/statebox/index.mjs +0 -4
  310. package/esm2022/lib/statebox/statebox.component.mjs +0 -114
  311. package/esm2022/lib/statebox/statebox.defaults.mjs +0 -20
  312. package/esm2022/lib/statebox/statebox.module.mjs +0 -18
  313. package/esm2022/lib/statebox/statebox.types.mjs +0 -2
  314. package/esm2022/lib/tabber/index.mjs +0 -6
  315. package/esm2022/lib/tabber/tab/tab.component.mjs +0 -44
  316. package/esm2022/lib/tabber/tab/tab.defaults.mjs +0 -13
  317. package/esm2022/lib/tabber/tabber.component.mjs +0 -90
  318. package/esm2022/lib/tabber/tabber.defaults.mjs +0 -19
  319. package/esm2022/lib/tabber/tabber.module.mjs +0 -19
  320. package/esm2022/lib/table/index.mjs +0 -6
  321. package/esm2022/lib/table/table-item-storage.mjs +0 -564
  322. package/esm2022/lib/table/table.component.mjs +0 -367
  323. package/esm2022/lib/table/table.defaults.mjs +0 -53
  324. package/esm2022/lib/table/table.directives.mjs +0 -62
  325. package/esm2022/lib/table/table.module.mjs +0 -47
  326. package/esm2022/lib/table/table.types.mjs +0 -30
  327. package/esm2022/lib/table/utils.mjs +0 -18
  328. package/esm2022/lib/table-from-csv/index.mjs +0 -4
  329. package/esm2022/lib/table-from-csv/table-from-csv.component.mjs +0 -120
  330. package/esm2022/lib/table-from-csv/table-from-csv.defaults.mjs +0 -15
  331. package/esm2022/lib/table-from-csv/table-from-csv.module.mjs +0 -19
  332. package/esm2022/lib/table-pagination/index.mjs +0 -5
  333. package/esm2022/lib/table-pagination/table-pagination.component.mjs +0 -108
  334. package/esm2022/lib/table-pagination/table-pagination.defaults.mjs +0 -25
  335. package/esm2022/lib/table-pagination/table-pagination.module.mjs +0 -21
  336. package/esm2022/lib/table-pagination/table-pagination.types.mjs +0 -7
  337. package/esm2022/lib/text-list/index.mjs +0 -4
  338. package/esm2022/lib/text-list/text-list.component.mjs +0 -18
  339. package/esm2022/lib/text-list/text-list.module.mjs +0 -19
  340. package/esm2022/lib/text-list/text-list.pipe.mjs +0 -16
  341. package/esm2022/lib/types/alignment.types.mjs +0 -10
  342. package/esm2022/lib/types/button.types.mjs +0 -6
  343. package/esm2022/lib/types/colors.types.mjs +0 -43
  344. package/esm2022/lib/types/item-storage.types.mjs +0 -6
  345. package/esm2022/lib/types/theming.types.mjs +0 -48
  346. package/esm2022/lib/types/utility.types.mjs +0 -5
  347. package/esm2022/public-api.mjs +0 -74
  348. package/lib/inputs/simple-input/index.d.ts +0 -4
  349. package/lib/inputs/simple-input/simple-input.component.d.ts +0 -13
  350. package/lib/inputs/simple-input/simple-input.defaults.d.ts +0 -6
  351. package/lib/inputs/simple-input/simple-input.directives.d.ts +0 -20
  352. package/lib/inputs/simple-input/simple-input.module.d.ts +0 -11
  353. package/prebuilt-themes/default/inputs/simple-input.css.map +0 -1
  354. package/themes/default/inputs/simple-input.scss +0 -12
@@ -1,90 +0,0 @@
1
- import { computed } from '@angular/core';
2
- import { isDefined } from 'simple-bool';
3
- export class PaginationModel {
4
- constructor(_ardHostCmp) {
5
- this._ardHostCmp = _ardHostCmp;
6
- this.isTotalItemsDefined = computed(() => isDefined(this._ardHostCmp.totalItems()));
7
- this.lastPageNum = computed(() => {
8
- const total = this._ardHostCmp.totalItems();
9
- if (!total)
10
- return null;
11
- return Math.ceil(total / this._ardHostCmp.itemsPerPage());
12
- });
13
- this.isLastPage = computed(() => {
14
- return !isDefined(this._ardHostCmp.totalItems()) || this.lastPageNum() === this._ardHostCmp.page();
15
- });
16
- this.itemsOnCurrentPage = computed(() => {
17
- const total = this._ardHostCmp.totalItems();
18
- if (!total)
19
- return null;
20
- return [
21
- Math.min(total, (this._ardHostCmp.page() - 1) * this._ardHostCmp.itemsPerPage() + 1),
22
- Math.min(total, this._ardHostCmp.page() * this._ardHostCmp.itemsPerPage()),
23
- ];
24
- });
25
- //! action disabled states
26
- this.firstPageDisabled = computed(() => {
27
- return !isDefined(this._ardHostCmp.totalItems()) || this._ardHostCmp.page() === 1;
28
- });
29
- this.lastPageDisabled = computed(() => {
30
- return !isDefined(this._ardHostCmp.totalItems()) || this._ardHostCmp.page() === this.lastPageNum();
31
- });
32
- //! context
33
- this.getCurrentItemsContext = computed(() => {
34
- const total = this._ardHostCmp.totalItems();
35
- if (!total)
36
- throw new Error(`ARD-FT${this._ardHostCmp.componentId}90: Cannot use pagination model without defining total items first.`);
37
- const pageItems = this.itemsOnCurrentPage();
38
- return {
39
- totalPages: this.lastPageNum(),
40
- totalItems: total,
41
- page: this._ardHostCmp.page(),
42
- currentItemsFrom: pageItems[0],
43
- currentItemsTo: pageItems[1],
44
- };
45
- });
46
- this.getPartialContext = computed(() => {
47
- return {
48
- ...this.getCurrentItemsContext(),
49
- itemsPerPageOptions: this._ardHostCmp.options(),
50
- itemsPerPage: this._ardHostCmp.itemsPerPage(),
51
- firstPageDisabled: this.firstPageDisabled(),
52
- prevPageDisabled: this.firstPageDisabled(),
53
- nextPageDisabled: this.lastPageDisabled(),
54
- lastPageDisabled: this.lastPageDisabled(),
55
- };
56
- });
57
- }
58
- //! current page
59
- setPage(v) {
60
- this._ardHostCmp.page.set(v);
61
- }
62
- getPage() {
63
- return this._ardHostCmp.page();
64
- }
65
- goToFirstPage() {
66
- if (this.firstPageDisabled())
67
- return null;
68
- this.setPage(1);
69
- return 1;
70
- }
71
- goToPrevPage() {
72
- if (this.firstPageDisabled())
73
- return null;
74
- this.setPage(this._ardHostCmp.page() - 1);
75
- return this._ardHostCmp.page();
76
- }
77
- goToNextPage() {
78
- if (this.lastPageDisabled())
79
- return null;
80
- this.setPage(this._ardHostCmp.page() + 1);
81
- return this._ardHostCmp.page();
82
- }
83
- goToLastPage() {
84
- if (this.lastPageDisabled())
85
- return null;
86
- this.setPage(this.lastPageNum());
87
- return this._ardHostCmp.page();
88
- }
89
- }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL21vZGVscy9wYWdpbmF0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUE2QnhDLE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQTZCLFdBQWdDO1FBQWhDLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtRQUVwRCx3QkFBbUIsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXhGLGdCQUFXLEdBQUcsUUFBUSxDQUFnQixHQUFHLEVBQUU7WUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPLElBQUksQ0FBQztZQUN4QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUM1RCxDQUFDLENBQUMsQ0FBQztRQUNNLGVBQVUsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFO1lBQzNDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JHLENBQUMsQ0FBQyxDQUFDO1FBQ00sdUJBQWtCLEdBQUcsUUFBUSxDQUEwQixHQUFHLEVBQUU7WUFDbkUsTUFBTSxLQUFLLEdBQUcsSUFB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QUFPLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7Q0E0QkYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbFNpZ25hbCwgU2lnbmFsLCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc0RlZmluZWQgfSBmcm9tICdzaW1wbGUtYm9vbCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luYXRpb25Nb2RlbEhvc3Qge1xyXG4gIHJlYWRvbmx5IGNvbXBvbmVudElkOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgdG90YWxJdGVtczogU2lnbmFsPG51bWJlcj47XHJcbiAgcmVhZG9ubHkgb3B0aW9uczogU2lnbmFsPG51bWJlcltdIHwgeyB2YWx1ZTogbnVtYmVyOyBsYWJlbDogc3RyaW5nIH1bXT47XHJcbiAgcmVhZG9ubHkgaXRlbXNQZXJQYWdlOiBNb2RlbFNpZ25hbDxudW1iZXI+O1xyXG4gIHJlYWRvbmx5IHBhZ2U6IE1vZGVsU2lnbmFsPG51bWJlcj47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGlvbkN1cnJlbnRJdGVtc0NvbnRleHQge1xyXG4gIHJlYWRvbmx5IGN1cnJlbnRJdGVtc0Zyb206IG51bWJlcjtcclxuICByZWFkb25seSBjdXJyZW50SXRlbXNUbzogbnVtYmVyO1xyXG4gIHJlYWRvbmx5IHRvdGFsSXRlbXM6IG51bWJlcjtcclxuICByZWFkb25seSB0b3RhbFBhZ2VzOiBudW1iZXI7XHJcbiAgcmVhZG9ubHkgcGFnZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luYXRpb25Db250ZXh0IGV4dGVuZHMgUGFnaW5hdGlvbkN1cnJlbnRJdGVtc0NvbnRleHQge1xyXG4gIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZU9wdGlvbnM6IG51bWJlcltdIHwgeyB2YWx1ZTogbnVtYmVyOyBsYWJlbDogc3RyaW5nIH1bXTtcclxuICByZWFkb25seSBpdGVtc1BlclBhZ2U6IG51bWJlcjtcclxuICByZWFkb25seSBvbkl0ZW1zUGVyUGFnZUNoYW5nZTogKG5ld1ZhbHVlOiBudW1iZXIpID0+IHZvaWQ7XHJcbiAgcmVhZG9ubHkgZmlyc3RQYWdlRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgcmVhZG9ubHkgcHJldlBhZ2VEaXNhYmxlZDogYm9vbGVhbjtcclxuICByZWFkb25seSBuZXh0UGFnZURpc2FibGVkOiBib29sZWFuO1xyXG4gIHJlYWRvbmx5IGxhc3RQYWdlRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgcmVhZG9ubHkgb25QYWdlQ2hhbmdlOiAobmV3UGFnZTogbnVtYmVyKSA9PiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk1vZGVsIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9hcmRIb3N0Q21wOiBQYWdpbmF0aW9uTW9kZWxIb3N0KSB7fVxyXG5cclxuICByZWFkb25seSBpc1RvdGFsSXRlbXNEZWZpbmVkID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gaXNEZWZpbmVkKHRoaXMuX2FyZEhvc3RDbXAudG90YWxJdGVtcygpKSk7XHJcblxyXG4gIHJlYWRvbmx5IGxhc3RQYWdlTnVtID0gY29tcHV0ZWQ8bnVtYmVyIHwgbnVsbD4oKCkgPT4ge1xyXG4gICAgY29uc3QgdG90YWwgPSB0aGlzLl9hcmRIb3N0Q21wLnRvdGFsSXRlbXMoKTtcclxuICAgIGlmICghdG90YWwpIHJldHVybiBudWxsO1xyXG4gICAgcmV0dXJuIE1hdGguY2VpbCh0b3RhbCAvIHRoaXMuX2FyZEhvc3RDbXAuaXRlbXNQZXJQYWdlKCkpO1xyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IGlzTGFzdFBhZ2UgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB7XHJcbiAgICByZXR1cm4gIWlzRGVmaW5lZCh0aGlzLl9hcmRIb3N0Q21wLnRvdGFsSXRlbXMoKSkgfHwgdGhpcy5sYXN0UGFnZU51bSgpID09PSB0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKTtcclxuICB9KTtcclxuICByZWFkb25seSBpdGVtc09uQ3VycmVudFBhZ2UgPSBjb21wdXRlZDxbbnVtYmVyLCBudW1iZXJdIHwgbnVsbD4oKCkgPT4ge1xyXG4gICAgY29uc3QgdG90YWwgPSB0aGlzLl9hcmRIb3N0Q21wLnRvdGFsSXRlbXMoKTtcclxuICAgIGlmICghdG90YWwpIHJldHVybiBudWxsO1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgTWF0aC5taW4odG90YWwsICh0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKSAtIDEpICogdGhpcy5fYXJkSG9zdENtcC5pdGVtc1BlclBhZ2UoKSArIDEpLFxyXG4gICAgICBNYXRoLm1pbih0b3RhbCwgdGhpcy5fYXJkSG9zdENtcC5wYWdlKCkgKiB0aGlzLl9hcmRIb3N0Q21wLml0ZW1zUGVyUGFnZSgpKSxcclxuICAgIF07XHJcbiAgfSk7XHJcblxyXG4gIC8vISBhY3Rpb24gZGlzYWJsZWQgc3RhdGVzXHJcbiAgcmVhZG9ubHkgZmlyc3RQYWdlRGlzYWJsZWQgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB7XHJcbiAgICByZXR1cm4gIWlzRGVmaW5lZCh0aGlzLl9hcmRIb3N0Q21wLnRvdGFsSXRlbXMoKSkgfHwgdGhpcy5fYXJkSG9zdENtcC5wYWdlKCkgPT09IDE7XHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgbGFzdFBhZ2VEaXNhYmxlZCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHtcclxuICAgIHJldHVybiAhaXNEZWZpbmVkKHRoaXMuX2FyZEhvc3RDbXAudG90YWxJdGVtcygpKSB8fCB0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKSA9PT0gdGhpcy5sYXN0UGFnZU51bSgpO1xyXG4gIH0pO1xyXG5cclxuICAvLyEgY3VycmVudCBwYWdlXHJcbiAgc2V0UGFnZSh2OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuX2FyZEhvc3RDbXAucGFnZS5zZXQodik7XHJcbiAgfVxyXG4gIGdldFBhZ2UoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKTtcclxuICB9XHJcbiAgZ29Ub0ZpcnN0UGFnZSgpOiBudW1iZXIgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmZpcnN0UGFnZURpc2FibGVkKCkpIHJldHVybiBudWxsO1xyXG4gICAgdGhpcy5zZXRQYWdlKDEpO1xyXG4gICAgcmV0dXJuIDE7XHJcbiAgfVxyXG4gIGdvVG9QcmV2UGFnZSgpOiBudW1iZXIgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmZpcnN0UGFnZURpc2FibGVkKCkpIHJldHVybiBudWxsO1xyXG4gICAgdGhpcy5zZXRQYWdlKHRoaXMuX2FyZEhvc3RDbXAucGFnZSgpIC0gMSk7XHJcbiAgICByZXR1cm4gdGhpcy5fYXJkSG9zdENtcC5wYWdlKCk7XHJcbiAgfVxyXG4gIGdvVG9OZXh0UGFnZSgpOiBudW1iZXIgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLmxhc3RQYWdlRGlzYWJsZWQoKSkgcmV0dXJuIG51bGw7XHJcbiAgICB0aGlzLnNldFBhZ2UodGhpcy5fYXJkSG9zdENtcC5wYWdlKCkgKyAxKTtcclxuICAgIHJldHVybiB0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKTtcclxuICB9XHJcbiAgZ29Ub0xhc3RQYWdlKCk6IG51bWJlciB8IG51bGwge1xyXG4gICAgaWYgKHRoaXMubGFzdFBhZ2VEaXNhYmxlZCgpKSByZXR1cm4gbnVsbDtcclxuICAgIHRoaXMuc2V0UGFnZSh0aGlzLmxhc3RQYWdlTnVtKCkhKTtcclxuICAgIHJldHVybiB0aGlzLl9hcmRIb3N0Q21wLnBhZ2UoKTtcclxuICB9XHJcblxyXG4gIC8vISBjb250ZXh0XHJcbiAgcmVhZG9ubHkgZ2V0Q3VycmVudEl0ZW1zQ29udGV4dCA9IGNvbXB1dGVkPFBhZ2luYXRpb25DdXJyZW50SXRlbXNDb250ZXh0PigoKSA9PiB7XHJcbiAgICBjb25zdCB0b3RhbCA9IHRoaXMuX2FyZEhvc3RDbXAudG90YWxJdGVtcygpO1xyXG4gICAgaWYgKCF0b3RhbClcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBBUkQtRlQke3RoaXMuX2FyZEhvc3RDbXAuY29tcG9uZW50SWR9OTA6IENhbm5vdCB1c2UgcGFnaW5hdGlvbiBtb2RlbCB3aXRob3V0IGRlZmluaW5nIHRvdGFsIGl0ZW1zIGZpcnN0LmApO1xyXG5cclxuICAgIGNvbnN0IHBhZ2VJdGVtcyA9IHRoaXMuaXRlbXNPbkN1cnJlbnRQYWdlKCkhO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdG90YWxQYWdlczogdGhpcy5sYXN0UGFnZU51bSgpISxcclxuICAgICAgdG90YWxJdGVtczogdG90YWwsXHJcbiAgICAgIHBhZ2U6IHRoaXMuX2FyZEhvc3RDbXAucGFnZSgpLFxyXG4gICAgICBjdXJyZW50SXRlbXNGcm9tOiBwYWdlSXRlbXNbMF0sXHJcbiAgICAgIGN1cnJlbnRJdGVtc1RvOiBwYWdlSXRlbXNbMV0sXHJcbiAgICB9O1xyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IGdldFBhcnRpYWxDb250ZXh0ID0gY29tcHV0ZWQ8T21pdDxQYWdpbmF0aW9uQ29udGV4dCwgJ29uSXRlbXNQZXJQYWdlQ2hhbmdlJyB8ICdvblBhZ2VDaGFuZ2UnPj4oKCkgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgLi4udGhpcy5nZXRDdXJyZW50SXRlbXNDb250ZXh0KCksXHJcbiAgICAgIGl0ZW1zUGVyUGFnZU9wdGlvbnM6IHRoaXMuX2FyZEhvc3RDbXAub3B0aW9ucygpLFxyXG4gICAgICBpdGVtc1BlclBhZ2U6IHRoaXMuX2FyZEhvc3RDbXAuaXRlbXNQZXJQYWdlKCksXHJcbiAgICAgIGZpcnN0UGFnZURpc2FibGVkOiB0aGlzLmZpcnN0UGFnZURpc2FibGVkKCksXHJcbiAgICAgIHByZXZQYWdlRGlzYWJsZWQ6IHRoaXMuZmlyc3RQYWdlRGlzYWJsZWQoKSxcclxuICAgICAgbmV4dFBhZ2VEaXNhYmxlZDogdGhpcy5sYXN0UGFnZURpc2FibGVkKCksXHJcbiAgICAgIGxhc3RQYWdlRGlzYWJsZWQ6IHRoaXMubGFzdFBhZ2VEaXNhYmxlZCgpLFxyXG4gICAgfTtcclxuICB9KTtcclxufVxyXG4iXX0=
@@ -1,59 +0,0 @@
1
- export class Queue {
2
- push(item) {
3
- if (!this.tail)
4
- return this.pushFront(item);
5
- this.tail.next = new QueueItem(item);
6
- this.tail = this.tail.next;
7
- }
8
- pushFront(item) {
9
- this.head = new QueueItem(item, this.head);
10
- if (!this.tail)
11
- this.tail = this.head;
12
- }
13
- pop() {
14
- const head = this.head;
15
- if (!head)
16
- return;
17
- //replace head with the next item
18
- this.head = head.next;
19
- //delete the tail if there are no next items
20
- if (!this.head)
21
- this.tail = undefined;
22
- return head.value;
23
- }
24
- peek() {
25
- return this.head?.value;
26
- }
27
- clear() {
28
- this.head = undefined;
29
- this.tail = undefined;
30
- }
31
- get length() {
32
- let length = 0;
33
- let currentNode = this.head;
34
- while (currentNode) {
35
- length++;
36
- currentNode = currentNode.next;
37
- }
38
- return length;
39
- }
40
- isEmpty() {
41
- return !this.head;
42
- }
43
- toArray() {
44
- const array = [];
45
- let currentNode = this.head;
46
- while (currentNode) {
47
- array.push(currentNode.value);
48
- currentNode = currentNode.next;
49
- }
50
- return array;
51
- }
52
- }
53
- export class QueueItem {
54
- constructor(value, next) {
55
- this.value = value;
56
- this.next = next;
57
- }
58
- }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL19pbnRlcm5hbC9tb2RlbHMvcXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLEtBQUs7SUFJaEIsSUFBSSxDQUFDLElBQU87UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLElBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSyxDQUFDLElBQUssQ0FBQztJQUMvQixDQUFDO0lBQ0QsU0FBUyxDQUFDLElBQU87UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3hDLENBQUM7SUFDRCxHQUFHO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU87UUFDbEIsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN0Qiw0Q0FBNEM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFFdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJO1FBQ0YsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLE1BQU07UUFDUixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLE9BQU8sV0FBVyxFQUFFLENBQUM7WUFDbkIsTUFBTSxFQUFFLENBQUM7WUFDVCxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztRQUNqQyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU87UUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNwQixDQUFDO0lBQ0QsT0FBTztRQUNMLE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUN0QixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLE9BQU8sV0FBVyxFQUFFLENBQUM7WUFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUIsV0FBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDakMsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFNBQVM7SUFDcEIsWUFDUyxLQUFRLEVBQ1IsSUFBbUI7UUFEbkIsVUFBSyxHQUFMLEtBQUssQ0FBRztRQUNSLFNBQUksR0FBSixJQUFJLENBQWU7SUFDekIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW50ZXJmYWNlIElRdWV1ZSB7XHJcbiAgcmVhZG9ubHkgbGVuZ3RoOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBRdWV1ZTxUID0gdW5rbm93bj4gaW1wbGVtZW50cyBJUXVldWUge1xyXG4gIHByaXZhdGUgaGVhZD86IFF1ZXVlSXRlbTxUPjtcclxuICBwcml2YXRlIHRhaWw/OiBRdWV1ZUl0ZW08VD47XHJcblxyXG4gIHB1c2goaXRlbTogVCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnRhaWwpIHJldHVybiB0aGlzLnB1c2hGcm9udChpdGVtKTtcclxuICAgIHRoaXMudGFpbCEubmV4dCA9IG5ldyBRdWV1ZUl0ZW0oaXRlbSk7XHJcbiAgICB0aGlzLnRhaWwgPSB0aGlzLnRhaWwhLm5leHQhO1xyXG4gIH1cclxuICBwdXNoRnJvbnQoaXRlbTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5oZWFkID0gbmV3IFF1ZXVlSXRlbShpdGVtLCB0aGlzLmhlYWQpO1xyXG4gICAgaWYgKCF0aGlzLnRhaWwpIHRoaXMudGFpbCA9IHRoaXMuaGVhZDtcclxuICB9XHJcbiAgcG9wKCk6IFQgfCB1bmRlZmluZWQge1xyXG4gICAgY29uc3QgaGVhZCA9IHRoaXMuaGVhZDtcclxuICAgIGlmICghaGVhZCkgcmV0dXJuO1xyXG4gICAgLy9yZXBsYWNlIGhlYWQgd2l0aCB0aGUgbmV4dCBpdGVtXHJcbiAgICB0aGlzLmhlYWQgPSBoZWFkLm5leHQ7XHJcbiAgICAvL2RlbGV0ZSB0aGUgdGFpbCBpZiB0aGVyZSBhcmUgbm8gbmV4dCBpdGVtc1xyXG4gICAgaWYgKCF0aGlzLmhlYWQpIHRoaXMudGFpbCA9IHVuZGVmaW5lZDtcclxuXHJcbiAgICByZXR1cm4gaGVhZC52YWx1ZTtcclxuICB9XHJcbiAgcGVlaygpOiBUIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLmhlYWQ/LnZhbHVlO1xyXG4gIH1cclxuICBjbGVhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuaGVhZCA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMudGFpbCA9IHVuZGVmaW5lZDtcclxuICB9XHJcbiAgZ2V0IGxlbmd0aCgpOiBudW1iZXIge1xyXG4gICAgbGV0IGxlbmd0aCA9IDA7XHJcbiAgICBsZXQgY3VycmVudE5vZGUgPSB0aGlzLmhlYWQ7XHJcbiAgICB3aGlsZSAoY3VycmVudE5vZGUpIHtcclxuICAgICAgbGVuZ3RoKys7XHJcbiAgICAgIGN1cnJlbnROb2RlID0gY3VycmVudE5vZGUubmV4dDtcclxuICAgIH1cclxuICAgIHJldHVybiBsZW5ndGg7XHJcbiAgfVxyXG4gIGlzRW1wdHkoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuaGVhZDtcclxuICB9XHJcbiAgdG9BcnJheSgpOiBUW10ge1xyXG4gICAgY29uc3QgYXJyYXk6IFRbXSA9IFtdO1xyXG4gICAgbGV0IGN1cnJlbnROb2RlID0gdGhpcy5oZWFkO1xyXG4gICAgd2hpbGUgKGN1cnJlbnROb2RlKSB7XHJcbiAgICAgIGFycmF5LnB1c2goY3VycmVudE5vZGUudmFsdWUpO1xyXG4gICAgICBjdXJyZW50Tm9kZSA9IGN1cnJlbnROb2RlLm5leHQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYXJyYXk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUXVldWVJdGVtPFQ+IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB2YWx1ZTogVCxcclxuICAgIHB1YmxpYyBuZXh0PzogUXVldWVJdGVtPFQ+XHJcbiAgKSB7fVxyXG59XHJcbiJdfQ==
@@ -1,99 +0,0 @@
1
- import { computed, Directive, inject, Injector, input, runInInjectionContext, signal, } from '@angular/core';
2
- import { toObservable } from '@angular/core/rxjs-interop';
3
- import { NgControl } from '@angular/forms';
4
- import { coerceBooleanProperty } from '@ardium-ui/devkit';
5
- import { map } from 'rxjs';
6
- import { TakeChance as Random } from 'take-chance';
7
- import { _FocusableComponentBase, _focusableComponentDefaults } from './focusable-component';
8
- import * as i0 from "@angular/core";
9
- export const _ngModelComponentDefaults = {
10
- ..._focusableComponentDefaults,
11
- };
12
- /**
13
- * Common code for components which implement the ControlValueAccessor.
14
- *
15
- * **Warning**: `writeValue` function should be implemented on the child component!
16
- */
17
- export class _NgModelComponentBase extends _FocusableComponentBase {
18
- constructor() {
19
- super(...arguments);
20
- //! event handlers
21
- this.wasTouched = signal(false);
22
- this._shouldEmitTouched = false;
23
- //! form field related
24
- this._injector = inject(Injector);
25
- this._ngControl = null;
26
- this.htmlId = input(Random.id());
27
- this._hasError = input(undefined, {
28
- transform: v => coerceBooleanProperty(v),
29
- alias: 'hasError',
30
- });
31
- this._hasErrorInControl = signal(false);
32
- this.hasError = computed(() => this._hasError() ?? (this.wasTouched() && this._hasErrorInControl()));
33
- }
34
- /**
35
- * Registers a function to handle touched state. Required by ControlValueAccessor.
36
- * @param fn The function to register.
37
- */
38
- registerOnTouched(fn) {
39
- this._onTouchedRegistered = fn;
40
- }
41
- /**
42
- * Registers a function to handle value change. Required by ControlValueAccessor.
43
- * @param fn The function to register.
44
- */
45
- registerOnChange(fn) {
46
- this._onChangeRegistered = fn;
47
- }
48
- /**
49
- * Sets the component's disabled state. Required by ControlValueAccessor.
50
- * @param isDisabled the new disabled state.
51
- */
52
- setDisabledState(isDisabled) {
53
- this.disabled.set(isDisabled);
54
- }
55
- onFocus(event) {
56
- super.onFocus(event);
57
- this._shouldEmitTouched = false;
58
- }
59
- onBlur(event) {
60
- this._shouldEmitTouched = true;
61
- super.onBlur(event);
62
- setTimeout(() => {
63
- if (!this._shouldEmitTouched)
64
- return;
65
- this.wasTouched.set(true);
66
- this._onTouchedRegistered?.();
67
- }, 0);
68
- }
69
- ngOnInit() {
70
- this._ngControl = this._injector.get(NgControl, null);
71
- if (this._ngControl) {
72
- if (!this._ngControl.valueAccessor || (this && this instanceof this._ngControl.valueAccessor.constructor)) {
73
- this._ngControl.valueAccessor = this;
74
- }
75
- this._hasErrorInControl.set(this._ngControl.status === 'INVALID');
76
- this._statusChangesSub = this._ngControl.statusChanges
77
- ?.pipe(map(v => v === 'INVALID'))
78
- .subscribe(v => this._hasErrorInControl.set(v));
79
- if (!this._ngControl.control)
80
- return;
81
- runInInjectionContext(this._injector, () => {
82
- // do not read the next line of code if you are easily frightened
83
- // I'm not proud of this part, but it had to be done. God please forgive me
84
- // I didn't find any other feasible way to detect when the control changes its touched state
85
- // so it had to be hacked like this
86
- toObservable(this._ngControl?.control?.touchedReactive)?.subscribe(v => this.wasTouched.set(v));
87
- });
88
- }
89
- }
90
- ngOnDestroy() {
91
- this._statusChangesSub?.unsubscribe();
92
- }
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: _NgModelComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
94
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: _NgModelComponentBase, inputs: { htmlId: { classPropertyName: "htmlId", publicName: "htmlId", isSignal: true, isRequired: false, transformFunction: null }, _hasError: { classPropertyName: "_hasError", publicName: "hasError", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
95
- }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: _NgModelComponentBase, decorators: [{
97
- type: Directive
98
- }] });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdtb2RlbC1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL19pbnRlcm5hbC9uZ21vZGVsLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFHTCxxQkFBcUIsRUFFckIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxHQUFHLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLElBQUksTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSwyQkFBMkIsRUFBK0IsTUFBTSx1QkFBdUIsQ0FBQzs7QUFLMUgsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQThCO0lBQ2xFLEdBQUcsMkJBQTJCO0NBQy9CLENBQUM7QUFFRjs7OztHQUlHO0FBRUgsTUFBTSxPQUFnQixxQkFBc0IsU0FBUSx1QkFBdUI7SUFEM0U7O1FBMkNFLGtCQUFrQjtRQUNULGVBQVUsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7UUFPckMsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBWW5DLHNCQUFzQjtRQUNILGNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUE4QnRDLGVBQVUsR0FBcUIsSUFBSSxDQUFDO1FBRXJDLFdBQU0sR0FBRyxLQUFLLENBQVMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFcEMsY0FBUyxHQUFH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LFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUM3RyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FDdkIsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFZRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7K0dBMUdtQixxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFEMUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgY29tcHV0ZWQsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIGluamVjdCxcclxuICBJbmplY3RvcixcclxuICBpbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcclxuICBTaWduYWwsXHJcbiAgc2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcclxuaW1wb3J0IHsgbWFwLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVGFrZUNoYW5jZSBhcyBSYW5kb20gfSBmcm9tICd0YWtlLWNoYW5jZSc7XHJcbmltcG9ydCB7IF9Gb2N1c2FibGVDb21wb25lbnRCYXNlLCBfZm9jdXNhYmxlQ29tcG9uZW50RGVmYXVsdHMsIF9Gb2N1c2FibGVDb21wb25lbnREZWZhdWx0cyB9IGZyb20gJy4vZm9jdXNhYmxlLWNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIF9OZ01vZGVsQ29tcG9uZW50RGVmYXVsdHMgZXh0ZW5kcyBfRm9jdXNhYmxlQ29tcG9uZW50RGVmYXVsdHMge1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgX25nTW9kZWxDb21wb25lbnREZWZhdWx0czogX05nTW9kZWxDb21wb25lbnREZWZhdWx0cyA9IHtcclxuICAuLi5fZm9jdXNhYmxlQ29tcG9uZW50RGVmYXVsdHMsXHJcbn07XHJcblxyXG4vKipcclxuICogQ29tbW9uIGNvZGUgZm9yIGNvbXBvbmVudHMgd2hpY2ggaW1wbGVtZW50IHRoZSBDb250cm9sVmFsdWVBY2Nlc3Nvci5cclxuICpcclxuICogKipXYXJuaW5nKio6IGB3cml0ZVZhbHVlYCBmdW5jdGlvbiBzaG91bGQgYmUgaW1wbGVtZW50ZWQgb24gdGhlIGNoaWxkIGNvbXBvbmVudCFcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgX05nTW9kZWxDb21wb25lbnRCYXNlIGV4dGVuZHMgX0ZvY3VzYWJsZUNvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBfREVGQVVMVFMhOiBfTmdNb2RlbENvbXBvbmVudERlZmF1bHRzO1xyXG5cclxuICAvLyEgY29udHJvbCB2YWx1ZSBhY2Nlc3NvclxyXG4gIHByb3RlY3RlZCBfb25DaGFuZ2VSZWdpc3RlcmVkITogKF86IGFueSkgPT4gdm9pZDtcclxuICBwcm90ZWN0ZWQgX29uVG91Y2hlZFJlZ2lzdGVyZWQhOiAoKSA9PiB2b2lkO1xyXG4gIC8qKlxyXG4gICAqIFJlZ2lzdGVycyBhIGZ1bmN0aW9uIHRvIGhhbmRsZSB0b3VjaGVkIHN0YXRlLiBSZXF1aXJlZCBieSBDb250cm9sVmFsdWVBY2Nlc3Nvci5cclxuICAgKiBAcGFyYW0gZm4gVGhlIGZ1bmN0aW9uIHRvIHJlZ2lzdGVyLlxyXG4gICAqL1xyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLl9vblRvdWNoZWRSZWdpc3RlcmVkID0gZm47XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFJlZ2lzdGVycyBhIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2UuIFJlcXVpcmVkIGJ5IENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxyXG4gICAqIEBwYXJhbSBmbiBUaGUgZnVuY3Rpb24gdG8gcmVnaXN0ZXIuXHJcbiAgICovXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgdGhpcy5fb25DaGFuZ2VSZWdpc3RlcmVkID0gZm47XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIGNvbXBvbmVudCdzIGRpc2FibGVkIHN0YXRlLiBSZXF1aXJlZCBieSBDb250cm9sVmFsdWVBY2Nlc3Nvci5cclxuICAgKiBAcGFyYW0gaXNEaXNhYmxlZCB0aGUgbmV3IGRpc2FibGVkIHN0YXRlLlxyXG4gICAqL1xyXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZC5zZXQoaXNEaXNhYmxlZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXcml0ZXMgdGhlIGEgbmV3IHZhbHVlIGludG8gdGhlIGNvbXBvbmVudC4gUmVxdWlyZWQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3IuXHJcbiAgICogQGFic3RyYWN0XHJcbiAgICogQHBhcmFtIHYgVGhlIG5ldyB2YWx1ZSB0byB3cml0ZS5cclxuICAgKi9cclxuICBhYnN0cmFjdCB3cml0ZVZhbHVlKHY6IGFueSk6IHZvaWQ7IC8vKiBhYnN0cmFjdFxyXG5cclxuICAvKipcclxuICAgKiBXcml0ZXMgdGhlIGEgbmV3IHZhbHVlIGludG8gdGhlIGNvbXBvbmVudC4gUmVxdWlyZWQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3IuXHJcbiAgICogQGFic3RyYWN0XHJcbiAgICogQHBhcmFtIHYgVGhlIG5ldyB2YWx1ZSB0byB3cml0ZS5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgX2VtaXRDaGFuZ2UoKTogdm9pZDsgLy8qIGFic3RyYWN0XHJcblxyXG4gIC8vISBldmVudCBoYW5kbGVyc1xyXG4gIHJlYWRvbmx5IHdhc1RvdWNoZWQgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBvdmVycmlkZSBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XHJcbiAgICBzdXBlci5vbkZvY3VzKGV2ZW50KTtcclxuICAgIHRoaXMuX3Nob3VsZEVtaXRUb3VjaGVkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zaG91bGRFbWl0VG91Y2hlZCA9IGZhbHNlO1xyXG4gIG92ZXJyaWRlIG9uQmx1cihldmVudDogRm9jdXNFdmVudCkge1xyXG4gICAgdGhpcy5fc2hvdWxkRW1pdFRvdWNoZWQgPSB0cnVlO1xyXG4gICAgc3VwZXIub25CbHVyKGV2ZW50KTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKCF0aGlzLl9zaG91bGRFbWl0VG91Y2hlZCkgcmV0dXJuO1xyXG4gICAgICB0aGlzLndhc1RvdWNoZWQuc2V0KHRydWUpO1xyXG4gICAgICB0aGlzLl9vblRvdWNoZWRSZWdpc3RlcmVkPy4oKTtcclxuICAgIH0sIDApO1xyXG4gIH1cclxuXHJcbiAgLy8hIGZvcm0gZmllbGQgcmVsYXRlZFxyXG4gIHByb3RlY3RlZCByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xyXG5cclxuICBwcml2YXRlIF9zdGF0dXNDaGFuZ2VzU3ViPzogU3Vic2NyaXB0aW9uO1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbmdDb250cm9sID0gdGhpcy5faW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCk7XHJcblxyXG4gICAgaWYgKHRoaXMuX25nQ29udHJvbCkge1xyXG4gICAgICBpZiAoIXRoaXMuX25nQ29udHJvbC52YWx1ZUFjY2Vzc29yIHx8ICh0aGlzICYmIHRoaXMgaW5zdGFuY2VvZiAodGhpcy5fbmdDb250cm9sLnZhbHVlQWNjZXNzb3IgYXMgYW55KS5jb25zdHJ1Y3RvcikpIHtcclxuICAgICAgICB0aGlzLl9uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuX2hhc0Vycm9ySW5Db250cm9sLnNldCh0aGlzLl9uZ0NvbnRyb2wuc3RhdHVzID09PSAnSU5WQUxJRCcpO1xyXG5cclxuICAgICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YiA9IHRoaXMuX25nQ29udHJvbC5zdGF0dXNDaGFuZ2VzXHJcbiAgICAgICAgPy5waXBlKG1hcCh2ID0+IHYgPT09ICdJTlZBTElEJykpXHJcbiAgICAgICAgLnN1YnNjcmliZSh2ID0+IHRoaXMuX2hhc0Vycm9ySW5Db250cm9sLnNldCh2KSk7XHJcblxyXG4gICAgICBpZiAoIXRoaXMuX25nQ29udHJvbC5jb250cm9sKSByZXR1cm47XHJcblxyXG4gICAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IHtcclxuICAgICAgICAvLyBkbyBub3QgcmVhZCB0aGUgbmV4dCBsaW5lIG9mIGNvZGUgaWYgeW91IGFyZSBlYXNpbHkgZnJpZ2h0ZW5lZFxyXG4gICAgICAgIC8vIEknbSBub3QgcHJvdWQgb2YgdGhpcyBwYXJ0LCBidXQgaXQgaGFkIHRvIGJlIGRvbmUuIEdvZCBwbGVhc2UgZm9yZ2l2ZSBtZVxyXG4gICAgICAgIC8vIEkgZGlkbid0IGZpbmQgYW55IG90aGVyIGZlYXNpYmxlIHdheSB0byBkZXRlY3Qgd2hlbiB0aGUgY29udHJvbCBjaGFuZ2VzIGl0cyB0b3VjaGVkIHN0YXRlXHJcbiAgICAgICAgLy8gc28gaXQgaGFkIHRvIGJlIGhhY2tlZCBsaWtlIHRoaXNcclxuICAgICAgICB0b09ic2VydmFibGUoKHRoaXMuX25nQ29udHJvbD8uY29udHJvbCBhcyBhbnkgfCB1bmRlZmluZWQpPy50b3VjaGVkUmVhY3RpdmUgYXMgU2lnbmFsPGJvb2xlYW4+KT8uc3Vic2NyaWJlKHYgPT5cclxuICAgICAgICAgIHRoaXMud2FzVG91Y2hlZC5zZXQodilcclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJvdGVjdGVkIF9uZ0NvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwgPSBudWxsO1xyXG5cclxuICByZWFkb25seSBodG1sSWQgPSBpbnB1dDxzdHJpbmc+KFJhbmRvbS5pZCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgX2hhc0Vycm9yID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZCwgYW55Pih1bmRlZmluZWQsIHtcclxuICAgIHRyYW5zZm9ybTogdiA9PiBjb2VyY2VCb29sZWFuUHJvcGVydHkodiksXHJcbiAgICBhbGlhczogJ2hhc0Vycm9yJyxcclxuICB9KTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9oYXNFcnJvckluQ29udHJvbCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcbiAgcmVhZG9ubHkgaGFzRXJyb3IgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLl9oYXNFcnJvcigpID8/ICh0aGlzLndhc1RvdWNoZWQoKSAmJiB0aGlzLl9oYXNFcnJvckluQ29udHJvbCgpKSk7XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1Yj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi9mb3JtLWZpZWxkLWNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFyZEZvcm1GaWVsZENvbXBvbmVudCBleHRlbmRzIF9Gb3JtRmllbGRDb21wb25lbnRCYXNlIHt9XHJcbiJdfQ==
@@ -1,271 +0,0 @@
1
- import { ChangeDetectorRef, Directive, HostBinding, HostListener, Input, computed, inject, input, output, signal, } from '@angular/core';
2
- import { coerceArrayProperty, coerceBooleanProperty, coerceNumberProperty } from '@ardium-ui/devkit';
3
- import { _FormFieldComponentBase, _formFieldComponentDefaults } from './form-field-component';
4
- import { SimpleItemStorage } from './item-storages/simple-item-storage';
5
- import * as i0 from "@angular/core";
6
- export const _selectableListComponentDefaults = {
7
- ..._formFieldComponentDefaults,
8
- valueFrom: 'value',
9
- labelFrom: 'label',
10
- disabledFrom: 'disabled',
11
- compareWith: undefined,
12
- multiselectable: false,
13
- requireValue: false,
14
- invertDisabled: false,
15
- maxSelectedItems: undefined,
16
- };
17
- export class _SelectableListComponentBase extends _FormFieldComponentBase {
18
- constructor() {
19
- super(...arguments);
20
- //! public constants
21
- this.itemStorage = new SimpleItemStorage(this);
22
- this.DEFAULTS = this._DEFAULTS;
23
- this._cd = inject(ChangeDetectorRef);
24
- //! binding-related inputs
25
- this.valueFrom = input(this._DEFAULTS.valueFrom);
26
- this.labelFrom = input(this._DEFAULTS.labelFrom);
27
- this.disabledFrom = input(this._DEFAULTS.disabledFrom);
28
- this.compareWith = input(this._DEFAULTS.compareWith);
29
- //! multiselectable
30
- this.multiselectable = input(this._DEFAULTS.multiselectable, { transform: v => coerceBooleanProperty(v) });
31
- this.singleselectable = computed(() => !this.multiselectable());
32
- //! require value
33
- this.requireValue = input(this._DEFAULTS.requireValue, { transform: v => coerceBooleanProperty(v) });
34
- this.isValueRequired = computed(() => this.requireValue() || !this.multiselectable());
35
- //! coerced properties
36
- this.invertDisabled = input(this._DEFAULTS.invertDisabled, { transform: v => coerceBooleanProperty(v) });
37
- this.maxSelectedItems = input(this._DEFAULTS.maxSelectedItems, {
38
- transform: v => coerceNumberProperty(v, undefined),
39
- });
40
- //! change & touch event emitters
41
- this.touched = signal(false);
42
- //! focus & blur handlers
43
- this.lastBlurTimestamp = signal(undefined);
44
- //! getters
45
- this.highlightedItems = computed(() => this.itemStorage.highlightedItems());
46
- this.firstHighlightedItem = computed(() => this.highlightedItems()?.first());
47
- this.isItemLimitReached = computed(() => this.itemStorage.isItemLimitReached());
48
- this.valueChange = output();
49
- //! output events
50
- this.changeEvent = output({ alias: 'change' });
51
- this.addEvent = output({ alias: 'add' });
52
- this.removeEvent = output({ alias: 'remove' });
53
- //! highligh-related
54
- this.isMouseBeingUsed = signal(false);
55
- }
56
- //! items setter/getter
57
- get items() {
58
- return this.itemStorage.items();
59
- }
60
- set items(value) {
61
- if (!Array.isArray(value))
62
- value = coerceArrayProperty(value);
63
- this.itemStorage.setItems(value);
64
- }
65
- get _multiselectableHostAttribute() {
66
- return this.multiselectable();
67
- }
68
- get _requireValueHostAttribute() {
69
- return this.requireValue();
70
- }
71
- //! control value accessor
72
- //override the writeValue and setDisabledState defined in _NgModelComponent
73
- setDisabledState(state) {
74
- this.disabled.set(state);
75
- this._cd.markForCheck();
76
- }
77
- writeValue(ngModel) {
78
- this.itemStorage.writeValue(ngModel);
79
- this._cd.markForCheck();
80
- }
81
- get _touchedHostAttribute() {
82
- return this.touched();
83
- }
84
- _emitChange() {
85
- const value = this.singleselectable() ? this.itemStorage.value()[0] : this.itemStorage.value();
86
- this._onChangeRegistered?.(value);
87
- this.changeEvent.emit(value);
88
- this.valueChange.emit(value);
89
- }
90
- _onTouched() {
91
- if (this.touched())
92
- return;
93
- this._onTouchedRegistered?.();
94
- this.touched.set(true);
95
- }
96
- onFocus(event) {
97
- super.onFocus(event);
98
- const lbt = this.lastBlurTimestamp();
99
- if (this.touched() || !lbt || lbt + 1 < Date.now())
100
- return;
101
- this.lastBlurTimestamp.set(null);
102
- this._onTouched();
103
- }
104
- onBlur(event) {
105
- super.onBlur(event);
106
- if (!this.touched())
107
- this.lastBlurTimestamp.set(Date.now());
108
- }
109
- //! context providers
110
- getOptionContext(item) {
111
- return {
112
- $implicit: item,
113
- item,
114
- itemData: item.itemData(),
115
- };
116
- }
117
- //! value input & output
118
- set value(newValue) {
119
- if (this.multiselectable() && !Array.isArray(newValue))
120
- newValue = coerceArrayProperty(newValue);
121
- this.writeValue(newValue);
122
- }
123
- //! item selection handlers
124
- toggleItem(item) {
125
- if (item.selected()) {
126
- if (this.singleselectable())
127
- return;
128
- this.unselectItem(item);
129
- return;
130
- }
131
- this.selectItem(item);
132
- }
133
- selectItem(...items) {
134
- const [selected, unselected] = this.itemStorage.selectItem(...items);
135
- if (unselected.length > 0)
136
- this.removeEvent.emit(unselected);
137
- if (selected.length > 0) {
138
- this.addEvent.emit(selected);
139
- this._emitChange();
140
- }
141
- }
142
- unselectItem(...items) {
143
- const unselected = this.itemStorage.unselectItem(...items);
144
- if (unselected.length > 0)
145
- this.removeEvent.emit(unselected);
146
- this._emitChange();
147
- }
148
- onMouseMove() {
149
- this.isMouseBeingUsed.set(true);
150
- }
151
- onItemMouseEnter(option, event) {
152
- if (!this.isMouseBeingUsed)
153
- return;
154
- this.itemStorage.highlightSingleItem(option);
155
- event.stopPropagation();
156
- }
157
- onItemMouseLeave(option, event) {
158
- if (!this.isMouseBeingUsed)
159
- return;
160
- this.itemStorage.unhighlightItem(option);
161
- event.stopPropagation();
162
- }
163
- //! click handlers
164
- onItemClick(option, event) {
165
- event.stopPropagation();
166
- this.toggleItem(option);
167
- }
168
- //! key press handlers
169
- onKeyPress(event) {
170
- switch (event.code) {
171
- case 'Space':
172
- case 'Enter': {
173
- this._toggleHighlightedItems(event);
174
- return;
175
- }
176
- case 'ArrowRight': {
177
- this._highlightNext(event);
178
- return;
179
- }
180
- case 'ArrowLeft': {
181
- this._highlightPrevious(event);
182
- return;
183
- }
184
- case 'Home': {
185
- this._highlightFirst(event);
186
- return;
187
- }
188
- case 'End': {
189
- this._highlightLast(event);
190
- return;
191
- }
192
- case 'KeyA': {
193
- if (event.ctrlKey) {
194
- this._highlightAll();
195
- return;
196
- }
197
- }
198
- }
199
- }
200
- _toggleHighlightedItems(event) {
201
- if (!this.isFocused())
202
- return;
203
- event.preventDefault();
204
- const highlightedItems = this.highlightedItems();
205
- if (highlightedItems.every(item => item.selected)) {
206
- this.unselectItem(...highlightedItems);
207
- }
208
- else {
209
- this.selectItem(...highlightedItems);
210
- }
211
- }
212
- _highlightPrevious(event) {
213
- if (!this.isFocused())
214
- return;
215
- event.preventDefault();
216
- this.isMouseBeingUsed.set(false);
217
- this.itemStorage.highlightNextItem(-1, event.shiftKey);
218
- }
219
- _highlightNext(event) {
220
- if (!this.isFocused())
221
- return;
222
- event.preventDefault();
223
- this.isMouseBeingUsed.set(false);
224
- this.itemStorage.highlightNextItem(+1, event.shiftKey);
225
- }
226
- _highlightFirst(event) {
227
- if (!this.isFocused())
228
- return;
229
- event.preventDefault();
230
- this.isMouseBeingUsed.set(false);
231
- this.itemStorage.highlightFirstItem();
232
- }
233
- _highlightLast(event) {
234
- if (!this.isFocused())
235
- return;
236
- event.preventDefault();
237
- this.isMouseBeingUsed.set(false);
238
- this.itemStorage.highlightLastItem();
239
- }
240
- _highlightAll() {
241
- this.itemStorage.highlightAllItems();
242
- }
243
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: _SelectableListComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
244
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: _SelectableListComponentBase, inputs: { valueFrom: { classPropertyName: "valueFrom", publicName: "valueFrom", isSignal: true, isRequired: false, transformFunction: null }, labelFrom: { classPropertyName: "labelFrom", publicName: "labelFrom", isSignal: true, isRequired: false, transformFunction: null }, disabledFrom: { classPropertyName: "disabledFrom", publicName: "disabledFrom", isSignal: true, isRequired: false, transformFunction: null }, compareWith: { classPropertyName: "compareWith", publicName: "compareWith", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: false, isRequired: false, transformFunction: null }, multiselectable: { classPropertyName: "multiselectable", publicName: "multiselectable", isSignal: true, isRequired: false, transformFunction: null }, requireValue: { classPropertyName: "requireValue", publicName: "requireValue", isSignal: true, isRequired: false, transformFunction: null }, invertDisabled: { classPropertyName: "invertDisabled", publicName: "invertDisabled", isSignal: true, isRequired: false, transformFunction: null }, maxSelectedItems: { classPropertyName: "maxSelectedItems", publicName: "maxSelectedItems", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", changeEvent: "change", addEvent: "add", removeEvent: "remove" }, host: { listeners: { "mousemove": "onMouseMove()", "keydown": "onKeyPress($event)" }, properties: { "attr.multiple": "this._multiselectableHostAttribute", "class.ard-multiselect": "this._multiselectableHostAttribute", "class.ard-require-value": "this._requireValueHostAttribute", "class.ard-touched": "this._touchedHostAttribute" } }, usesInheritance: true, ngImport: i0 }); }
245
- }
246
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: _SelectableListComponentBase, decorators: [{
247
- type: Directive
248
- }], propDecorators: { items: [{
249
- type: Input
250
- }], _multiselectableHostAttribute: [{
251
- type: HostBinding,
252
- args: ['attr.multiple']
253
- }, {
254
- type: HostBinding,
255
- args: ['class.ard-multiselect']
256
- }], _requireValueHostAttribute: [{
257
- type: HostBinding,
258
- args: ['class.ard-require-value']
259
- }], _touchedHostAttribute: [{
260
- type: HostBinding,
261
- args: ['class.ard-touched']
262
- }], value: [{
263
- type: Input
264
- }], onMouseMove: [{
265
- type: HostListener,
266
- args: ['mousemove']
267
- }], onKeyPress: [{
268
- type: HostListener,
269
- args: ['keydown', ['$event']]
270
- }] } });
271
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvX2ludGVybmFsL3NlbGVjdGFibGUtbGlzdC1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUlyRyxPQUFPLEVBQUUsdUJBQXVCLEVBQStCLDJCQUEyQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0gsT0FBTyxFQUFFLGlCQUFpQixFQUF5QixNQUFNLHFDQUFxQyxDQUFDOztBQVkvRixNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBcUM7SUFDaEYsR0FBRywyQkFBMkI7SUFDOUIsU0FBUyxFQUFFLE9BQU87SUFDbEIsU0FBUyxFQUFFLE9BQU87SUFDbEIsWUFBWSxFQUFFLFVBQVU7SUFDeEIsV0FBVyxFQUFFLFNBQVM7SUFDdEIsZUFBZSxFQUFFLEtBQUs7SUFDdEIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsY0FBYyxFQUFFLEtBQUs7SUFDckIsZ0JBQWdCLEVBQUUsU0FBUztDQUM1QixDQUFDO0FBR0YsTUFBTSxPQUFnQiw0QkFDcEIsU0FBUSx1QkFBdUI7SUFGakM7O1FBT0Usb0JBQW9CO1FBQ1gsZ0JBQVcsR0FBRyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTFDLGFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBS2xCLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztR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QUMsZUFBZTs7c0JBQzNCLFdBQVc7dUJBQUMsdUJBQXVCO2dCQWFoQywwQkFBMEI7c0JBRDdCLFdBQVc7dUJBQUMseUJBQXlCO2dCQTBCbEMscUJBQXFCO3NCQUR4QixXQUFXO3VCQUFDLG1CQUFtQjtnQkFtRDVCLEtBQUs7c0JBRFIsS0FBSztnQkE0Q04sV0FBVztzQkFEVixZQUFZO3VCQUFDLFdBQVc7Z0JBdUJ6QixVQUFVO3NCQURULFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBEaXJlY3RpdmUsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIGNvbXB1dGVkLFxyXG4gIGluamVjdCxcclxuICBpbnB1dCxcclxuICBvdXRwdXQsXHJcbiAgc2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29lcmNlQXJyYXlQcm9wZXJ0eSwgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcclxuaW1wb3J0IHsgQXJkRm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC1jaGlsZC50b2tlbic7XHJcbmltcG9ydCB7IEFyZE9wdGlvblNpbXBsZSwgQ29tcGFyZVdpdGhGbiwgT3B0aW9uQ29udGV4dCB9IGZyb20gJy4uL3R5cGVzL2l0ZW0tc3RvcmFnZS50eXBlcyc7XHJcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnLi4vdHlwZXMvdXRpbGl0eS50eXBlcyc7XHJcbmltcG9ydCB7IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlLCBfRm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMsIF9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB9IGZyb20gJy4vZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaW1wbGVJdGVtU3RvcmFnZSwgU2ltcGxlSXRlbVN0b3JhZ2VIb3N0IH0gZnJvbSAnLi9pdGVtLXN0b3JhZ2VzL3NpbXBsZS1pdGVtLXN0b3JhZ2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBfU2VsZWN0YWJsZUxpc3RDb21wb25lbnREZWZhdWx0cyBleHRlbmRzIF9Gb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB7XHJcbiAgdmFsdWVGcm9tOiBzdHJpbmc7XHJcbiAgbGFiZWxGcm9tOiBzdHJpbmc7XHJcbiAgZGlzYWJsZWRGcm9tOiBzdHJpbmc7XHJcbiAgY29tcGFyZVdpdGg6IE51bGxhYmxlPENvbXBhcmVXaXRoRm4+O1xyXG4gIG11bHRpc2VsZWN0YWJsZTogYm9vbGVhbjtcclxuICByZXF1aXJlVmFsdWU6IGJvb2xlYW47XHJcbiAgaW52ZXJ0RGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgbWF4U2VsZWN0ZWRJdGVtczogTnVsbGFibGU8bnVtYmVyPjtcclxufVxyXG5leHBvcnQgY29uc3QgX3NlbGVjdGFibGVMaXN0Q29tcG9uZW50RGVmYXVsdHM6IF9TZWxlY3RhYmxlTGlzdENvbXBvbmVudERlZmF1bHRzID0ge1xyXG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcclxuICB2YWx1ZUZyb206ICd2YWx1ZScsXHJcbiAgbGFiZWxGcm9tOiAnbGFiZWwnLFxyXG4gIGRpc2FibGVkRnJvbTogJ2Rpc2FibGVkJyxcclxuICBjb21wYXJlV2l0aDogdW5kZWZpbmVkLFxyXG4gIG11bHRpc2VsZWN0YWJsZTogZmFsc2UsXHJcbiAgcmVxdWlyZVZhbHVlOiBmYWxzZSxcclxuICBpbnZlcnREaXNhYmxlZDogZmFsc2UsXHJcbiAgbWF4U2VsZWN0ZWRJdGVtczogdW5kZWZpbmVkLFxyXG59O1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBfU2VsZWN0YWJsZUxpc3RDb21wb25lbnRCYXNlXHJcbiAgZXh0ZW5kcyBfRm9ybUZpZWxkQ29tcG9uZW50QmFzZVxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFNpbXBsZUl0ZW1TdG9yYWdlSG9zdCwgQXJkRm9ybUZpZWxkQ29udHJvbFxyXG57XHJcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IF9ERUZBVUxUUyE6IF9TZWxlY3RhYmxlTGlzdENvbXBvbmVudERlZmF1bHRzO1xyXG5cclxuICAvLyEgcHVibGljIGNvbnN0YW50c1xyXG4gIHJlYWRvbmx5IGl0ZW1TdG9yYWdlID0gbmV3IFNpbXBsZUl0ZW1TdG9yYWdlKHRoaXMpO1xyXG4gIHJlYWRvbmx5IGVsZW1lbnQhOiBIVE1MRWxlbWVudDtcclxuICByZWFkb25seSBERUZBVUxUUyA9IHRoaXMuX0RFRkFVTFRTO1xyXG5cclxuICBhYnN0cmFjdCByZWFkb25seSBfY29tcG9uZW50SWQ6IHN0cmluZztcclxuICBhYnN0cmFjdCByZWFkb25seSBfY29tcG9uZW50TmFtZTogc3RyaW5nO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9jZCA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcblxyXG4gIC8vISBiaW5kaW5nLXJlbGF0ZWQgaW5wdXRzXHJcbiAgcmVhZG9ubHkgdmFsdWVGcm9tID0gaW5wdXQ8c3RyaW5nPih0aGlzLl9ERUZBVUxUUy52YWx1ZUZyb20pO1xyXG4gIHJlYWRvbmx5IGxhYmVsRnJvbSA9IGlucHV0PHN0cmluZz4odGhpcy5fREVGQVVMVFMubGFiZWxGcm9tKTtcclxuICByZWFkb25seSBkaXNhYmxlZEZyb20gPSBpbnB1dDxzdHJpbmc+KHRoaXMuX0RFRkFVTFRTLmRpc2FibGVkRnJvbSk7XHJcbiAgcmVhZG9ubHkgY29tcGFyZVdpdGggPSBpbnB1dDxOdWxsYWJsZTxDb21wYXJlV2l0aEZuPj4odGhpcy5fREVGQVVMVFMuY29tcGFyZVdpdGgpO1xyXG5cclxuICAvLyEgaXRlbXMgc2V0dGVyL2dldHRlclxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGl0ZW1zKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1TdG9yYWdlLml0ZW1zKCk7XHJcbiAgfVxyXG4gIHNldCBpdGVtcyh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB2YWx1ZSA9IGNvZXJjZUFycmF5UHJvcGVydHkodmFsdWUpO1xyXG5cclxuICAgIHRoaXMuaXRlbVN0b3JhZ2Uuc2V0SXRlbXModmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgLy8hIG11bHRpc2VsZWN0YWJsZVxyXG4gIHJlYWRvbmx5IG11bHRpc2VsZWN0YWJsZSA9IGlucHV0PGJvb2xlYW4sIGFueT4odGhpcy5fREVGQVVMVFMubXVsdGlzZWxlY3RhYmxlLCB7IHRyYW5zZm9ybTogdiA9PiBjb2VyY2VCb29sZWFuUHJvcGVydHkodikgfSk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnYXR0ci5tdWx0aXBsZScpXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hcmQtbXVsdGlzZWxlY3QnKVxyXG4gIGdldCBfbXVsdGlzZWxlY3RhYmxlSG9zdEF0dHJpYnV0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLm11bHRpc2VsZWN0YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgc2luZ2xlc2VsZWN0YWJsZSA9IGNvbXB1dGVkKCgpID0+ICF0aGlzLm11bHRpc2VsZWN0YWJsZSgpKTtcclxuXHJcbiAgLy8hIHJlcXVpcmUgdmFsdWVcclxuICByZWFkb25seSByZXF1aXJlVmFsdWUgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLnJlcXVpcmVWYWx1ZSwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBpc1ZhbHVlUmVxdWlyZWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnJlcXVpcmVWYWx1ZSgpIHx8ICF0aGlzLm11bHRpc2VsZWN0YWJsZSgpKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hcmQtcmVxdWlyZS12YWx1ZScpXHJcbiAgZ2V0IF9yZXF1aXJlVmFsdWVIb3N0QXR0cmlidXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucmVxdWlyZVZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvLyEgY29lcmNlZCBwcm9wZXJ0aWVzXHJcbiAgcmVhZG9ubHkgaW52ZXJ0RGlzYWJsZWQgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLmludmVydERpc2FibGVkLCB7IHRyYW5zZm9ybTogdiA9PiBjb2VyY2VCb29sZWFuUHJvcGVydHkodikgfSk7XHJcbiAgcmVhZG9ubHkgbWF4U2VsZWN0ZWRJdGVtcyA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIGFueT4odGhpcy5fREVGQVVMVFMubWF4U2VsZWN0ZWRJdGVtcywge1xyXG4gICAgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIHVuZGVmaW5lZCksXHJcbiAgfSk7XHJcblxyXG4gIC8vISBjb250cm9sIHZhbHVlIGFjY2Vzc29yXHJcbiAgLy9vdmVycmlkZSB0aGUgd3JpdGVWYWx1ZSBhbmQgc2V0RGlzYWJsZWRTdGF0ZSBkZWZpbmVkIGluIF9OZ01vZGVsQ29tcG9uZW50XHJcbiAgb3ZlcnJpZGUgc2V0RGlzYWJsZWRTdGF0ZShzdGF0ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZC5zZXQoc3RhdGUpO1xyXG4gICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG4gIHdyaXRlVmFsdWUobmdNb2RlbDogYW55W10pOiB2b2lkIHtcclxuICAgIHRoaXMuaXRlbVN0b3JhZ2Uud3JpdGVWYWx1ZShuZ01vZGVsKTtcclxuICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgLy8hIGNoYW5nZSAmIHRvdWNoIGV2ZW50IGVtaXR0ZXJzXHJcbiAgcmVhZG9ubHkgdG91Y2hlZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYXJkLXRvdWNoZWQnKVxyXG4gIGdldCBfdG91Y2hlZEhvc3RBdHRyaWJ1dGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50b3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2VtaXRDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuc2luZ2xlc2VsZWN0YWJsZSgpID8gdGhpcy5pdGVtU3RvcmFnZS52YWx1ZSgpWzBdIDogdGhpcy5pdGVtU3RvcmFnZS52YWx1ZSgpO1xyXG4gICAgdGhpcy5fb25DaGFuZ2VSZWdpc3RlcmVkPy4odmFsdWUpO1xyXG4gICAgdGhpcy5jaGFuZ2VFdmVudC5lbWl0KHZhbHVlKTtcclxuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHByb3RlY3RlZCBfb25Ub3VjaGVkKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudG91Y2hlZCgpKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fb25Ub3VjaGVkUmVnaXN0ZXJlZD8uKCk7XHJcbiAgICB0aGlzLnRvdWNoZWQuc2V0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLy8hIGZvY3VzICYgYmx1ciBoYW5kbGVyc1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgbGFzdEJsdXJUaW1lc3RhbXAgPSBzaWduYWw8TnVsbGFibGU8bnVtYmVyPj4odW5kZWZpbmVkKTtcclxuICBvdmVycmlkZSBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XHJcbiAgICBzdXBlci5vbkZvY3VzKGV2ZW50KTtcclxuXHJcbiAgICBjb25zdCBsYnQgPSB0aGlzLmxhc3RCbHVyVGltZXN0YW1wKCk7XHJcbiAgICBpZiAodGhpcy50b3VjaGVkKCkgfHwgIWxidCB8fCBsYnQgKyAxIDwgRGF0ZS5ub3coKSkgcmV0dXJuO1xyXG4gICAgdGhpcy5sYXN0Qmx1clRpbWVzdGFtcC5zZXQobnVsbCk7XHJcblxyXG4gICAgdGhpcy5fb25Ub3VjaGVkKCk7XHJcbiAgfVxyXG4gIG92ZXJyaWRlIG9uQmx1cihldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xyXG4gICAgc3VwZXIub25CbHVyKGV2ZW50KTtcclxuXHJcbiAgICBpZiAoIXRoaXMudG91Y2hlZCgpKSB0aGlzLmxhc3RCbHVyVGltZXN0YW1wLnNldChEYXRlLm5vdygpKTtcclxuICB9XHJcblxyXG4gIC8vISBnZXR0ZXJzXHJcbiAgcmVhZG9ubHkgaGlnaGxpZ2h0ZWRJdGVtcyA9IGNvbXB1dGVkPEFyZE9wdGlvblNpbXBsZVtdPigoKSA9PiB0aGlzLml0ZW1TdG9yYWdlLmhpZ2hsaWdodGVkSXRlbXMoKSk7XHJcbiAgcmVhZG9ubHkgZmlyc3RIaWdobGlnaHRlZEl0ZW0gPSBjb21wdXRlZDxOdWxsYWJsZTxBcmRPcHRpb25TaW1wbGU+PigoKSA9PiB0aGlzLmhpZ2hsaWdodGVkSXRlbXMoKT8uZmlyc3QoKSk7XHJcbiAgcmVhZG9ubHkgaXNJdGVtTGltaXRSZWFjaGVkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pdGVtU3RvcmFnZS5pc0l0ZW1MaW1pdFJlYWNoZWQoKSk7XHJcblxyXG4gIC8vISBjb250ZXh0IHByb3ZpZGVyc1xyXG4gIGdldE9wdGlvbkNvbnRleHQoaXRlbTogQXJkT3B0aW9uU2ltcGxlKTogT3B0aW9uQ29udGV4dDxBcmRPcHRpb25TaW1wbGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICRpbXBsaWNpdDogaXRlbSxcclxuICAgICAgaXRlbSxcclxuICAgICAgaXRlbURhdGE6IGl0ZW0uaXRlbURhdGEoKSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvLyEgdmFsdWUgaW5wdXQgJiBvdXRwdXRcclxuICBASW5wdXQoKVxyXG4gIHNldCB2YWx1ZShuZXdWYWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXNlbGVjdGFibGUoKSAmJiAhQXJyYXkuaXNBcnJheShuZXdWYWx1ZSkpIG5ld1ZhbHVlID0gY29lcmNlQXJyYXlQcm9wZXJ0eShuZXdWYWx1ZSk7XHJcbiAgICB0aGlzLndyaXRlVmFsdWUobmV3VmFsdWUpO1xyXG4gIH1cclxuICByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG91dHB1dDxhbnlbXSB8IGFueT4oKTtcclxuXHJcbiAgLy8hIG91dHB1dCBldmVudHNcclxuICByZWFkb25seSBjaGFuZ2VFdmVudCA9IG91dHB1dDxhbnlbXSB8IGFueT4oeyBhbGlhczogJ2NoYW5nZScgfSk7XHJcbiAgcmVhZG9ubHkgYWRkRXZlbnQgPSBvdXRwdXQ8YW55W10+KHsgYWxpYXM6ICdhZGQnIH0pO1xyXG4gIHJlYWRvbmx5IHJlbW92ZUV2ZW50ID0gb3V0cHV0PGFueVtdPih7IGFsaWFzOiAncmVtb3ZlJyB9KTtcclxuXHJcbiAgLy8hIGl0ZW0gc2VsZWN0aW9uIGhhbmRsZXJzXHJcbiAgdG9nZ2xlSXRlbShpdGVtOiBBcmRPcHRpb25TaW1wbGUpOiB2b2lkIHtcclxuICAgIGlmIChpdGVtLnNlbGVjdGVkKCkpIHtcclxuICAgICAgaWYgKHRoaXMuc2luZ2xlc2VsZWN0YWJsZSgpKSByZXR1cm47XHJcblxyXG4gICAgICB0aGlzLnVuc2VsZWN0SXRlbShpdGVtKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWxlY3RJdGVtKGl0ZW0pO1xyXG4gIH1cclxuICBzZWxlY3RJdGVtKC4uLml0ZW1zOiBBcmRPcHRpb25TaW1wbGVbXSk6IHZvaWQge1xyXG4gICAgY29uc3QgW3NlbGVjdGVkLCB1bnNlbGVjdGVkXSA9IHRoaXMuaXRlbVN0b3JhZ2Uuc2VsZWN0SXRlbSguLi5pdGVtcyk7XHJcblxyXG4gICAgaWYgKHVuc2VsZWN0ZWQubGVuZ3RoID4gMCkgdGhpcy5yZW1vdmVFdmVudC5lbWl0KHVuc2VsZWN0ZWQpO1xyXG5cclxuICAgIGlmIChzZWxlY3RlZC5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuYWRkRXZlbnQuZW1pdChzZWxlY3RlZCk7XHJcbiAgICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcclxuICAgIH1cclxuICB9XHJcbiAgdW5zZWxlY3RJdGVtKC4uLml0ZW1zOiBBcmRPcHRpb25TaW1wbGVbXSk6IHZvaWQge1xyXG4gICAgY29uc3QgdW5zZWxlY3RlZCA9IHRoaXMuaXRlbVN0b3JhZ2UudW5zZWxlY3RJdGVtKC4uLml0ZW1zKTtcclxuXHJcbiAgICBpZiAodW5zZWxlY3RlZC5sZW5ndGggPiAwKSB0aGlzLnJlbW92ZUV2ZW50LmVtaXQodW5zZWxlY3RlZCk7XHJcblxyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgLy8hIGhpZ2hsaWdoLXJlbGF0ZWRcclxuXHJcbiAgcmVhZG9ubHkgaXNNb3VzZUJlaW5nVXNlZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vtb3ZlJylcclxuICBvbk1vdXNlTW92ZSgpIHtcclxuICAgIHRoaXMuaXNNb3VzZUJlaW5nVXNlZC5zZXQodHJ1ZSk7XHJcbiAgfVxyXG4gIG9uSXRlbU1vdXNlRW50ZXIob3B0aW9uOiBBcmRPcHRpb25TaW1wbGUsIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNNb3VzZUJlaW5nVXNlZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5pdGVtU3RvcmFnZS5oaWdobGlnaHRTaW5nbGVJdGVtKG9wdGlvbik7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcbiAgb25JdGVtTW91c2VMZWF2ZShvcHRpb246IEFyZE9wdGlvblNpbXBsZSwgZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pc01vdXNlQmVpbmdVc2VkKSByZXR1cm47XHJcbiAgICB0aGlzLml0ZW1TdG9yYWdlLnVuaGlnaGxpZ2h0SXRlbShvcHRpb24pO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAvLyEgY2xpY2sgaGFuZGxlcnNcclxuICBvbkl0ZW1DbGljayhvcHRpb246IEFyZE9wdGlvblNpbXBsZSwgZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy50b2dnbGVJdGVtKG9wdGlvbik7XHJcbiAgfVxyXG5cclxuICAvLyEga2V5IHByZXNzIGhhbmRsZXJzXHJcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25LZXlQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgc3dpdGNoIChldmVudC5jb2RlKSB7XHJcbiAgICAgIGNhc2UgJ1NwYWNlJzpcclxuICAgICAgY2FzZSAnRW50ZXInOiB7XHJcbiAgICAgICAgdGhpcy5fdG9nZ2xlSGlnaGxpZ2h0ZWRJdGVtcyhldmVudCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOiB7XHJcbiAgICAgICAgdGhpcy5faGlnaGxpZ2h0TmV4dChldmVudCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ0Fycm93TGVmdCc6IHtcclxuICAgICAgICB0aGlzLl9oaWdobGlnaHRQcmV2aW91cyhldmVudCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ0hvbWUnOiB7XHJcbiAgICAgICAgdGhpcy5faGlnaGxpZ2h0Rmlyc3QoZXZlbnQpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdFbmQnOiB7XHJcbiAgICAgICAgdGhpcy5faGlnaGxpZ2h0TGFzdChldmVudCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ0tleUEnOiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmN0cmxLZXkpIHtcclxuICAgICAgICAgIHRoaXMuX2hpZ2hsaWdodEFsbCgpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBwcml2YXRlIF90b2dnbGVIaWdobGlnaHRlZEl0ZW1zKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNGb2N1c2VkKCkpIHJldHVybjtcclxuXHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgIGNvbnN0IGhpZ2hsaWdodGVkSXRlbXMgPSB0aGlzLmhpZ2hsaWdodGVkSXRlbXMoKTtcclxuXHJcbiAgICBpZiAoaGlnaGxpZ2h0ZWRJdGVtcy5ldmVyeShpdGVtID0+IGl0ZW0uc2VsZWN0ZWQpKSB7XHJcbiAgICAgIHRoaXMudW5zZWxlY3RJdGVtKC4uLmhpZ2hsaWdodGVkSXRlbXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RJdGVtKC4uLmhpZ2hsaWdodGVkSXRlbXMpO1xyXG4gICAgfVxyXG4gIH1cclxuICBwcml2YXRlIF9oaWdobGlnaHRQcmV2aW91cyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzRm9jdXNlZCgpKSByZXR1cm47XHJcblxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuaXNNb3VzZUJlaW5nVXNlZC5zZXQoZmFsc2UpO1xyXG5cclxuICAgIHRoaXMuaXRlbVN0b3JhZ2UuaGlnaGxpZ2h0TmV4dEl0ZW0oLTEsIGV2ZW50LnNoaWZ0S2V5KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0TmV4dChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzRm9jdXNlZCgpKSByZXR1cm47XHJcblxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuaXNNb3VzZUJlaW5nVXNlZC5zZXQoZmFsc2UpO1xyXG5cclxuICAgIHRoaXMuaXRlbVN0b3JhZ2UuaGlnaGxpZ2h0TmV4dEl0ZW0oKzEsIGV2ZW50LnNoaWZ0S2V5KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0Rmlyc3QoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pc0ZvY3VzZWQoKSkgcmV0dXJuO1xyXG5cclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLmlzTW91c2VCZWluZ1VzZWQuc2V0KGZhbHNlKTtcclxuXHJcbiAgICB0aGlzLml0ZW1TdG9yYWdlLmhpZ2hsaWdodEZpcnN0SXRlbSgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9oaWdobGlnaHRMYXN0KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNGb2N1c2VkKCkpIHJldHVybjtcclxuXHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdGhpcy5pc01vdXNlQmVpbmdVc2VkLnNldChmYWxzZSk7XHJcblxyXG4gICAgdGhpcy5pdGVtU3RvcmFnZS5oaWdobGlnaHRMYXN0SXRlbSgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9oaWdobGlnaHRBbGwoKTogdm9pZCB7XHJcbiAgICB0aGlzLml0ZW1TdG9yYWdlLmhpZ2hsaWdodEFsbEl0ZW1zKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { ComponentColor } from './../types/colors.types';
3
- import { FormElementVariant } from './../types/theming.types';
4
- import { BadgePosition, BadgeSize } from './badge.types';
5
- const _badgeDefaults = {
6
- color: ComponentColor.Primary,
7
- variant: FormElementVariant.Rounded,
8
- size: BadgeSize.Medium,
9
- position: BadgePosition.AboveAfter,
10
- overlap: false,
11
- };
12
- export const ARD_BADGE_DEFAULTS = new InjectionToken('ard-badge-defaults', {
13
- factory: () => ({
14
- ..._badgeDefaults,
15
- }),
16
- });
17
- export function provideBadgeDefaults(config) {
18
- return { provide: ARD_BADGE_DEFAULTS, useValue: { ..._badgeDefaults, ...config } };
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2JhZGdlL2JhZGdlLmRlZmF1bHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBVXpELE1BQU0sY0FBYyxHQUFxQjtJQUN2QyxLQUFLLEVBQUUsY0FBYyxDQUFDLE9BQU87SUFDN0IsT0FBTyxFQUFFLGtCQUFrQixDQUFDLE9BQU87SUFDbkMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNO0lBQ3RCLFFBQVEsRUFBRSxhQUFhLENBQUMsVUFBVTtJQUNsQyxPQUFPLEVBQUUsS0FBSztDQUNmLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBbUIsb0JBQW9CLEVBQUU7SUFDM0YsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDZCxHQUFHLGNBQWM7S0FDbEIsQ0FBQztDQUNILENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUFpQztJQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsY0FBYyxFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNyRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudENvbG9yIH0gZnJvbSAnLi8uLi90eXBlcy9jb2xvcnMudHlwZXMnO1xyXG5pbXBvcnQgeyBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBCYWRnZVBvc2l0aW9uLCBCYWRnZVNpemUgfSBmcm9tICcuL2JhZGdlLnR5cGVzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQXJkQmFkZ2VEZWZhdWx0cyB7XHJcbiAgY29sb3I6IENvbXBvbmVudENvbG9yO1xyXG4gIHZhcmlhbnQ6IEZvcm1FbGVtZW50VmFyaWFudDtcclxuICBzaXplOiBCYWRnZVNpemU7XHJcbiAgcG9zaXRpb246IEJhZGdlUG9zaXRpb247XHJcbiAgb3ZlcmxhcDogYm9vbGVhbjtcclxufVxyXG5cclxuY29uc3QgX2JhZGdlRGVmYXVsdHM6IEFyZEJhZGdlRGVmYXVsdHMgPSB7XHJcbiAgY29sb3I6IENvbXBvbmVudENvbG9yLlByaW1hcnksXHJcbiAgdmFyaWFudDogRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQsXHJcbiAgc2l6ZTogQmFkZ2VTaXplLk1lZGl1bSxcclxuICBwb3NpdGlvbjogQmFkZ2VQb3NpdGlvbi5BYm92ZUFmdGVyLFxyXG4gIG92ZXJsYXA6IGZhbHNlLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IEFSRF9CQURHRV9ERUZBVUxUUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBcmRCYWRnZURlZmF1bHRzPignYXJkLWJhZGdlLWRlZmF1bHRzJywge1xyXG4gIGZhY3Rvcnk6ICgpID0+ICh7XHJcbiAgICAuLi5fYmFkZ2VEZWZhdWx0cyxcclxuICB9KSxcclxufSk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUJhZGdlRGVmYXVsdHMoY29uZmlnOiBQYXJ0aWFsPEFyZEJhZGdlRGVmYXVsdHM+KTogUHJvdmlkZXIge1xyXG4gIHJldHVybiB7IHByb3ZpZGU6IEFSRF9CQURHRV9ERUZBVUxUUywgdXNlVmFsdWU6IHsgLi4uX2JhZGdlRGVmYXVsdHMsIC4uLmNvbmZpZyB9IH07XHJcbn1cclxuIl19