@public-ui/components 4.2.1 → 4.3.0-rc.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 (1555) hide show
  1. package/assets/kolicons/kolicons.eot +0 -0
  2. package/assets/kolicons/kolicons.ttf +0 -0
  3. package/assets/kolicons/kolicons.woff +0 -0
  4. package/assets/kolicons/kolicons.woff2 +0 -0
  5. package/assets/kolicons/style.css +6 -6
  6. package/custom-elements.json +30 -30
  7. package/dist/cjs/Alert-DGeuWGwx.js +93 -0
  8. package/dist/cjs/Alert-DGeuWGwx.js.map +1 -0
  9. package/dist/cjs/Collapsible-D5MJpSsb.js +27 -0
  10. package/dist/cjs/Collapsible-D5MJpSsb.js.map +1 -0
  11. package/dist/cjs/CustomSuggestionsOptionsGroup-CXqRxSlV.js +31 -0
  12. package/dist/cjs/CustomSuggestionsOptionsGroup-CXqRxSlV.js.map +1 -0
  13. package/dist/cjs/FieldControlStateWrapper-9AbnJdJw.js +123 -0
  14. package/dist/cjs/FieldControlStateWrapper-9AbnJdJw.js.map +1 -0
  15. package/dist/cjs/FormFieldStateWrapper-D8PA3SkL.js +848 -0
  16. package/dist/cjs/FormFieldStateWrapper-D8PA3SkL.js.map +1 -0
  17. package/dist/cjs/Heading-D9SmGbfD.js +41 -0
  18. package/dist/cjs/Heading-D9SmGbfD.js.map +1 -0
  19. package/dist/cjs/Input-7dreufF0.js +29 -0
  20. package/dist/cjs/Input-7dreufF0.js.map +1 -0
  21. package/dist/cjs/InputStateWrapper-ntE05AJl.js +86 -0
  22. package/dist/cjs/InputStateWrapper-ntE05AJl.js.map +1 -0
  23. package/dist/cjs/access-and-short-key-B_Jn8UfN.js +41 -0
  24. package/dist/cjs/access-and-short-key-B_Jn8UfN.js.map +1 -0
  25. package/dist/cjs/align-e4FQ7dUp.js +26 -0
  26. package/dist/cjs/align-e4FQ7dUp.js.map +1 -0
  27. package/dist/cjs/align-floating-elements-DfUaAAqe.js +1672 -0
  28. package/dist/cjs/align-floating-elements-DfUaAAqe.js.map +1 -0
  29. package/dist/cjs/app-globals-DS0A1y3l.js +36 -0
  30. package/dist/cjs/app-globals-DS0A1y3l.js.map +1 -0
  31. package/dist/cjs/aria-expanded-DVEjetkn.js +31 -0
  32. package/dist/cjs/aria-expanded-DVEjetkn.js.map +1 -0
  33. package/dist/cjs/aria-labelledby-BhnM3OnL.js +60 -0
  34. package/dist/cjs/aria-labelledby-BhnM3OnL.js.map +1 -0
  35. package/dist/cjs/associated.controller-CUvZCmFF.js +190 -0
  36. package/dist/cjs/associated.controller-CUvZCmFF.js.map +1 -0
  37. package/dist/cjs/auto-complete-ByyIPPbm.js +18 -0
  38. package/dist/cjs/auto-complete-ByyIPPbm.js.map +1 -0
  39. package/dist/cjs/bem-registry-D9uDM1GJ.js +163 -0
  40. package/dist/cjs/bem-registry-D9uDM1GJ.js.map +1 -0
  41. package/dist/cjs/bootstrap-De2npoa_.js +36 -0
  42. package/dist/cjs/bootstrap-De2npoa_.js.map +1 -0
  43. package/dist/cjs/color-1N4YnPDO.js +101 -0
  44. package/dist/cjs/color-1N4YnPDO.js.map +1 -0
  45. package/dist/cjs/common-DAAt5YQ7.js +1769 -0
  46. package/dist/cjs/common-DAAt5YQ7.js.map +1 -0
  47. package/dist/cjs/component-BEcrKHc2.js +9153 -0
  48. package/dist/cjs/component-BEcrKHc2.js.map +1 -0
  49. package/dist/cjs/component-BpTg8PCv.js +23 -0
  50. package/dist/cjs/component-BpTg8PCv.js.map +1 -0
  51. package/dist/cjs/component-DA5ZXmFP.js +16 -0
  52. package/dist/cjs/component-DA5ZXmFP.js.map +1 -0
  53. package/dist/cjs/component-U7UWIKdR.js +17 -0
  54. package/dist/cjs/component-U7UWIKdR.js.map +1 -0
  55. package/dist/cjs/contrast-CWF2pSYV.js +100 -0
  56. package/dist/cjs/contrast-CWF2pSYV.js.map +1 -0
  57. package/dist/cjs/controller-Br37uto2.js +55 -0
  58. package/dist/cjs/controller-Br37uto2.js.map +1 -0
  59. package/dist/cjs/controller-CWTdHXvg.js +93 -0
  60. package/dist/cjs/controller-CWTdHXvg.js.map +1 -0
  61. package/dist/cjs/controller-DHsc-8t1.js +241 -0
  62. package/dist/cjs/controller-DHsc-8t1.js.map +1 -0
  63. package/dist/cjs/controller-DNlov9_q.js +99 -0
  64. package/dist/cjs/controller-DNlov9_q.js.map +1 -0
  65. package/dist/cjs/controller-DmoMYYzy.js +126 -0
  66. package/dist/cjs/controller-DmoMYYzy.js.map +1 -0
  67. package/dist/cjs/controller-icon-CdwPO8hD.js +169 -0
  68. package/dist/cjs/controller-icon-CdwPO8hD.js.map +1 -0
  69. package/dist/cjs/custom-class-C8GDf7By.js +17 -0
  70. package/dist/cjs/custom-class-C8GDf7By.js.map +1 -0
  71. package/dist/cjs/dev.utils-BaRzDChI.js +86 -0
  72. package/dist/cjs/dev.utils-BaRzDChI.js.map +1 -0
  73. package/dist/cjs/devtools-Ch90JQxx.js +103 -0
  74. package/dist/cjs/devtools-Ch90JQxx.js.map +1 -0
  75. package/dist/cjs/disabled-D8jGjcwY.js +23 -0
  76. package/dist/cjs/disabled-D8jGjcwY.js.map +1 -0
  77. package/dist/cjs/element-focus-B4BhAkh_.js +164 -0
  78. package/dist/cjs/element-focus-B4BhAkh_.js.map +1 -0
  79. package/dist/cjs/element-interaction-CmOQWzhR.js +70 -0
  80. package/dist/cjs/element-interaction-CmOQWzhR.js.map +1 -0
  81. package/dist/cjs/events-DN9qldnr.js +45 -0
  82. package/dist/cjs/events-DN9qldnr.js.map +1 -0
  83. package/dist/cjs/has-closer-CuErOOct.js +15 -0
  84. package/dist/cjs/has-closer-CuErOOct.js.map +1 -0
  85. package/dist/cjs/hide-label-CO4GBDgf.js +15 -0
  86. package/dist/cjs/hide-label-CO4GBDgf.js.map +1 -0
  87. package/dist/cjs/href-DoBpb9Pl.js +15 -0
  88. package/dist/cjs/href-DoBpb9Pl.js.map +1 -0
  89. package/dist/cjs/i18n-DL7vJXNn.js +19 -0
  90. package/dist/cjs/i18n-DL7vJXNn.js.map +1 -0
  91. package/dist/cjs/icons-D80xUBDS.js +86 -0
  92. package/dist/cjs/icons-D80xUBDS.js.map +1 -0
  93. package/dist/cjs/index-Dk00HcEs.js +2908 -0
  94. package/dist/cjs/index-Dk00HcEs.js.map +1 -0
  95. package/dist/cjs/index.cjs.js +4 -4
  96. package/dist/cjs/inline-1X3ssV6v.js +15 -0
  97. package/dist/cjs/inline-1X3ssV6v.js.map +1 -0
  98. package/dist/cjs/kol-abbr.cjs.entry.js +14 -14
  99. package/dist/cjs/kol-accordion.cjs.entry.js +17 -17
  100. package/dist/cjs/kol-accordion.entry.cjs.js.map +1 -1
  101. package/dist/cjs/kol-alert-wc.cjs.entry.js +13 -13
  102. package/dist/cjs/kol-alert.cjs.entry.js +3 -3
  103. package/dist/cjs/kol-avatar.cjs.entry.js +9 -9
  104. package/dist/cjs/kol-badge.cjs.entry.js +15 -15
  105. package/dist/cjs/kol-badge.entry.cjs.js.map +1 -1
  106. package/dist/cjs/kol-breadcrumb.cjs.entry.js +8 -8
  107. package/dist/cjs/kol-button-link.cjs.entry.js +7 -7
  108. package/dist/cjs/kol-button-link.entry.cjs.js.map +1 -1
  109. package/dist/cjs/kol-button-wc.cjs.entry.js +31 -31
  110. package/dist/cjs/kol-button-wc.entry.cjs.js.map +1 -1
  111. package/dist/cjs/kol-button.cjs.entry.js +7 -7
  112. package/dist/cjs/kol-button.entry.cjs.js.map +1 -1
  113. package/dist/cjs/kol-card-wc.cjs.entry.js +16 -16
  114. package/dist/cjs/kol-card.cjs.entry.js +3 -3
  115. package/dist/cjs/kol-click-button.cjs.entry.js +40 -13
  116. package/dist/cjs/kol-click-button.entry.cjs.js.map +1 -1
  117. package/dist/cjs/kol-combobox.cjs.entry.js +48 -42
  118. package/dist/cjs/kol-combobox.entry.cjs.js.map +1 -1
  119. package/dist/cjs/kol-details.cjs.entry.js +17 -17
  120. package/dist/cjs/kol-details.entry.cjs.js.map +1 -1
  121. package/dist/cjs/kol-dialog-wc.cjs.entry.js +8 -8
  122. package/dist/cjs/kol-dialog.cjs.entry.js +3 -3
  123. package/dist/cjs/kol-drawer.cjs.entry.js +12 -12
  124. package/dist/cjs/kol-form.cjs.entry.js +9 -9
  125. package/dist/cjs/kol-heading.cjs.entry.js +5 -5
  126. package/dist/cjs/kol-icon.cjs.entry.js +8 -8
  127. package/dist/cjs/kol-image.cjs.entry.js +24 -8
  128. package/dist/cjs/kol-image.entry.cjs.js.map +1 -1
  129. package/dist/cjs/kol-input-checkbox.cjs.entry.js +37 -37
  130. package/dist/cjs/kol-input-checkbox.entry.cjs.js.map +1 -1
  131. package/dist/cjs/kol-input-color.cjs.entry.js +37 -37
  132. package/dist/cjs/kol-input-color.entry.cjs.js.map +1 -1
  133. package/dist/cjs/kol-input-date.cjs.entry.js +40 -40
  134. package/dist/cjs/kol-input-date.entry.cjs.js.map +1 -1
  135. package/dist/cjs/kol-input-email.cjs.entry.js +46 -46
  136. package/dist/cjs/kol-input-email.entry.cjs.js.map +1 -1
  137. package/dist/cjs/kol-input-file.cjs.entry.js +37 -37
  138. package/dist/cjs/kol-input-file.entry.cjs.js.map +1 -1
  139. package/dist/cjs/kol-input-number.cjs.entry.js +41 -41
  140. package/dist/cjs/kol-input-number.entry.cjs.js.map +1 -1
  141. package/dist/cjs/kol-input-password.cjs.entry.js +42 -42
  142. package/dist/cjs/kol-input-password.entry.cjs.js.map +1 -1
  143. package/dist/cjs/kol-input-radio.cjs.entry.js +38 -37
  144. package/dist/cjs/kol-input-radio.entry.cjs.js.map +1 -1
  145. package/dist/cjs/kol-input-range.cjs.entry.js +38 -38
  146. package/dist/cjs/kol-input-range.entry.cjs.js.map +1 -1
  147. package/dist/cjs/kol-input-text.cjs.entry.js +45 -45
  148. package/dist/cjs/kol-input-text.entry.cjs.js.map +1 -1
  149. package/dist/cjs/kol-kolibri.cjs.entry.js +5 -5
  150. package/dist/cjs/kol-link-button.cjs.entry.js +7 -7
  151. package/dist/cjs/kol-link-button.entry.cjs.js.map +1 -1
  152. package/dist/cjs/kol-link-wc.cjs.entry.js +30 -30
  153. package/dist/cjs/kol-link-wc.entry.cjs.js.map +1 -1
  154. package/dist/cjs/kol-link.cjs.entry.js +7 -7
  155. package/dist/cjs/kol-link.entry.cjs.js.map +1 -1
  156. package/dist/cjs/kol-meter.cjs.entry.js +10 -35
  157. package/dist/cjs/kol-meter.entry.cjs.js.map +1 -1
  158. package/dist/cjs/kol-modal.cjs.entry.js +3 -3
  159. package/dist/cjs/kol-nav.cjs.entry.js +9 -9
  160. package/dist/cjs/kol-pagination-wc.cjs.entry.js +10 -10
  161. package/dist/cjs/kol-pagination.cjs.entry.js +3 -3
  162. package/dist/cjs/kol-popover-button-wc.cjs.entry.js +11 -11
  163. package/dist/cjs/kol-popover-button-wc.entry.cjs.js.map +1 -1
  164. package/dist/cjs/kol-popover-button.cjs.entry.js +7 -7
  165. package/dist/cjs/kol-popover-button.entry.cjs.js.map +1 -1
  166. package/dist/cjs/kol-progress.cjs.entry.js +7 -7
  167. package/dist/cjs/kol-quote.cjs.entry.js +6 -6
  168. package/dist/cjs/kol-select-wc.cjs.entry.js +39 -39
  169. package/dist/cjs/kol-select-wc.entry.cjs.js.map +1 -1
  170. package/dist/cjs/kol-select.cjs.entry.js +7 -7
  171. package/dist/cjs/kol-select.entry.cjs.js.map +1 -1
  172. package/dist/cjs/kol-single-select.cjs.entry.js +42 -42
  173. package/dist/cjs/kol-single-select.entry.cjs.js.map +1 -1
  174. package/dist/cjs/kol-skeleton.cjs.entry.js +23 -19
  175. package/dist/cjs/kol-skeleton.entry.cjs.js.map +1 -1
  176. package/dist/cjs/kol-skip-nav.cjs.entry.js +10 -10
  177. package/dist/cjs/kol-skip-nav.entry.cjs.js.map +1 -1
  178. package/dist/cjs/kol-spin.cjs.entry.js +6 -6
  179. package/dist/cjs/kol-split-button.cjs.entry.js +9 -9
  180. package/dist/cjs/kol-split-button.entry.cjs.js.map +1 -1
  181. package/dist/cjs/kol-table-settings-wc.cjs.entry.js +4 -4
  182. package/dist/cjs/kol-table-stateful.cjs.entry.js +71 -14
  183. package/dist/cjs/kol-table-stateful.entry.cjs.js.map +1 -1
  184. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +45 -58
  185. package/dist/cjs/kol-table-stateless-wc.entry.cjs.js.map +1 -1
  186. package/dist/cjs/kol-table-stateless.cjs.entry.js +4 -4
  187. package/dist/cjs/kol-table-stateless.entry.cjs.js.map +1 -1
  188. package/dist/cjs/kol-tabs.cjs.entry.js +12 -12
  189. package/dist/cjs/kol-tabs.entry.cjs.js.map +1 -1
  190. package/dist/cjs/kol-textarea.cjs.entry.js +39 -39
  191. package/dist/cjs/kol-textarea.entry.cjs.js.map +1 -1
  192. package/dist/cjs/kol-toast-container.cjs.entry.js +25 -19
  193. package/dist/cjs/kol-toast-container.entry.cjs.js.map +1 -1
  194. package/dist/cjs/kol-toolbar.cjs.entry.js +9 -9
  195. package/dist/cjs/kol-toolbar.entry.cjs.js.map +1 -1
  196. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +12 -12
  197. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +13 -13
  198. package/dist/cjs/kol-tree-item-wc.entry.cjs.js.map +1 -1
  199. package/dist/cjs/kol-tree-item.cjs.entry.js +6 -6
  200. package/dist/cjs/kol-tree-item.entry.cjs.js.map +1 -1
  201. package/dist/cjs/kol-tree-wc.cjs.entry.js +6 -6
  202. package/dist/cjs/kol-tree-wc.entry.cjs.js.map +1 -1
  203. package/dist/cjs/kol-tree.cjs.entry.js +6 -6
  204. package/dist/cjs/kol-tree.entry.cjs.js.map +1 -1
  205. package/dist/cjs/kol-version.cjs.entry.js +4 -4
  206. package/dist/cjs/kolibri.cjs.js +4 -4
  207. package/dist/cjs/label-CrUhy8f0.js +13 -0
  208. package/dist/cjs/label-CrUhy8f0.js.map +1 -0
  209. package/dist/cjs/label-VzToxIES.js +50 -0
  210. package/dist/cjs/label-VzToxIES.js.map +1 -0
  211. package/dist/cjs/level-VjfppjxT.js +15 -0
  212. package/dist/cjs/level-VjfppjxT.js.map +1 -0
  213. package/dist/cjs/loader.cjs.js +4 -4
  214. package/dist/cjs/max-length-behavior-BjqOHcK6.js +26 -0
  215. package/dist/cjs/max-length-behavior-BjqOHcK6.js.map +1 -0
  216. package/dist/cjs/multiple-_6n58n0B.js +15 -0
  217. package/dist/cjs/multiple-_6n58n0B.js.map +1 -0
  218. package/dist/cjs/normalizers-R90MJyQR.js +648 -0
  219. package/dist/cjs/normalizers-R90MJyQR.js.map +1 -0
  220. package/dist/cjs/open-CLOzqgir.js +15 -0
  221. package/dist/cjs/open-CLOzqgir.js.map +1 -0
  222. package/dist/cjs/orientation-BUQ3VvMw.js +18 -0
  223. package/dist/cjs/orientation-BUQ3VvMw.js.map +1 -0
  224. package/dist/cjs/placeholder-B7I3KNtq.js +15 -0
  225. package/dist/cjs/placeholder-B7I3KNtq.js.map +1 -0
  226. package/dist/cjs/read-only-BFoDOTZu.js +15 -0
  227. package/dist/cjs/read-only-BFoDOTZu.js.map +1 -0
  228. package/dist/cjs/required-QyEHP_gi.js +15 -0
  229. package/dist/cjs/required-QyEHP_gi.js.map +1 -0
  230. package/dist/cjs/rows-BT28uo_I.js +15 -0
  231. package/dist/cjs/rows-BT28uo_I.js.map +1 -0
  232. package/dist/cjs/spell-check-CnmPp0It.js +17 -0
  233. package/dist/cjs/spell-check-CnmPp0It.js.map +1 -0
  234. package/dist/cjs/src-oMcBX9Z5.js +13 -0
  235. package/dist/cjs/src-oMcBX9Z5.js.map +1 -0
  236. package/dist/cjs/suggestions-hTUeCecL.js +23 -0
  237. package/dist/cjs/suggestions-hTUeCecL.js.map +1 -0
  238. package/dist/cjs/table-selection-BzjiHUz6.js +93 -0
  239. package/dist/cjs/table-selection-BzjiHUz6.js.map +1 -0
  240. package/dist/cjs/test-component.cjs.entry.js +2 -2
  241. package/dist/cjs/tooltip-align-C2v_joNk.js +16 -0
  242. package/dist/cjs/tooltip-align-C2v_joNk.js.map +1 -0
  243. package/dist/cjs/unique-nav-labels-ZxWa1D5d.js +25 -0
  244. package/dist/cjs/unique-nav-labels-ZxWa1D5d.js.map +1 -0
  245. package/dist/cjs/validation-D2EuAues.js +16 -0
  246. package/dist/cjs/validation-D2EuAues.js.map +1 -0
  247. package/dist/cjs/validation-DwarFcC9.js +19 -0
  248. package/dist/cjs/validation-DwarFcC9.js.map +1 -0
  249. package/dist/cjs/value-number-clamped-B6AfADe2.js +28 -0
  250. package/dist/cjs/value-number-clamped-B6AfADe2.js.map +1 -0
  251. package/dist/cjs/variant-class-name-DsZdGPeK.js +18 -0
  252. package/dist/cjs/variant-class-name-DsZdGPeK.js.map +1 -0
  253. package/dist/cjs/variant-quote-DUWZtljE.js +41 -0
  254. package/dist/cjs/variant-quote-DUWZtljE.js.map +1 -0
  255. package/dist/collection/components/_skeleton/web-components/click-button/component.js +19 -6
  256. package/dist/collection/components/_skeleton/web-components/click-button/component.js.map +1 -1
  257. package/dist/collection/components/_skeleton/web-components/skeleton/component.js +22 -6
  258. package/dist/collection/components/_skeleton/web-components/skeleton/component.js.map +1 -1
  259. package/dist/collection/components/abbr/style.css +2 -2
  260. package/dist/collection/components/accordion/shadow.js +13 -4
  261. package/dist/collection/components/accordion/shadow.js.map +1 -1
  262. package/dist/collection/components/accordion/style.css +2 -2
  263. package/dist/collection/components/alert/style.css +2 -2
  264. package/dist/collection/components/badge/shadow.js +14 -5
  265. package/dist/collection/components/badge/shadow.js.map +1 -1
  266. package/dist/collection/components/badge/style.css +2 -2
  267. package/dist/collection/components/breadcrumb/style.css +2 -2
  268. package/dist/collection/components/button/component.js +14 -5
  269. package/dist/collection/components/button/component.js.map +1 -1
  270. package/dist/collection/components/button/shadow.js +13 -4
  271. package/dist/collection/components/button/shadow.js.map +1 -1
  272. package/dist/collection/components/button/style.css +2 -2
  273. package/dist/collection/components/button-link/shadow.js +13 -4
  274. package/dist/collection/components/button-link/shadow.js.map +1 -1
  275. package/dist/collection/components/button-link/style.css +2 -2
  276. package/dist/collection/components/card/style.css +2 -2
  277. package/dist/collection/components/combobox/shadow.js +22 -7
  278. package/dist/collection/components/combobox/shadow.js.map +1 -1
  279. package/dist/collection/components/combobox/style.css +2 -2
  280. package/dist/collection/components/details/shadow.js +13 -4
  281. package/dist/collection/components/details/shadow.js.map +1 -1
  282. package/dist/collection/components/details/style.css +2 -2
  283. package/dist/collection/components/dialog/style.css +2 -2
  284. package/dist/collection/components/drawer/style.css +2 -2
  285. package/dist/collection/components/form/style.css +2 -2
  286. package/dist/collection/components/icon/style.css +2 -2
  287. package/dist/collection/components/image/component.js +40 -1
  288. package/dist/collection/components/image/component.js.map +1 -1
  289. package/dist/collection/components/input-adapter-leanup/associated.controller.js +6 -3
  290. package/dist/collection/components/input-adapter-leanup/associated.controller.js.map +1 -1
  291. package/dist/collection/components/input-checkbox/shadow.js +13 -4
  292. package/dist/collection/components/input-checkbox/shadow.js.map +1 -1
  293. package/dist/collection/components/input-checkbox/style.css +2 -2
  294. package/dist/collection/components/input-color/shadow.js +13 -4
  295. package/dist/collection/components/input-color/shadow.js.map +1 -1
  296. package/dist/collection/components/input-color/style.css +2 -2
  297. package/dist/collection/components/input-date/shadow.js +13 -4
  298. package/dist/collection/components/input-date/shadow.js.map +1 -1
  299. package/dist/collection/components/input-date/style.css +2 -2
  300. package/dist/collection/components/input-email/shadow.js +13 -4
  301. package/dist/collection/components/input-email/shadow.js.map +1 -1
  302. package/dist/collection/components/input-email/style.css +2 -2
  303. package/dist/collection/components/input-file/shadow.js +13 -4
  304. package/dist/collection/components/input-file/shadow.js.map +1 -1
  305. package/dist/collection/components/input-file/style.css +2 -2
  306. package/dist/collection/components/input-number/shadow.js +13 -4
  307. package/dist/collection/components/input-number/shadow.js.map +1 -1
  308. package/dist/collection/components/input-number/style.css +2 -2
  309. package/dist/collection/components/input-password/shadow.js +13 -4
  310. package/dist/collection/components/input-password/shadow.js.map +1 -1
  311. package/dist/collection/components/input-password/style.css +2 -2
  312. package/dist/collection/components/input-radio/shadow.js +15 -5
  313. package/dist/collection/components/input-radio/shadow.js.map +1 -1
  314. package/dist/collection/components/input-radio/style.css +2 -2
  315. package/dist/collection/components/input-range/shadow.js +13 -4
  316. package/dist/collection/components/input-range/shadow.js.map +1 -1
  317. package/dist/collection/components/input-range/style.css +2 -2
  318. package/dist/collection/components/input-text/shadow.js +13 -4
  319. package/dist/collection/components/input-text/shadow.js.map +1 -1
  320. package/dist/collection/components/input-text/style.css +2 -2
  321. package/dist/collection/components/link/component.js +14 -5
  322. package/dist/collection/components/link/component.js.map +1 -1
  323. package/dist/collection/components/link/shadow.js +13 -4
  324. package/dist/collection/components/link/shadow.js.map +1 -1
  325. package/dist/collection/components/link/style.css +2 -2
  326. package/dist/collection/components/link-button/shadow.js +13 -4
  327. package/dist/collection/components/link-button/shadow.js.map +1 -1
  328. package/dist/collection/components/link-button/style.css +2 -2
  329. package/dist/collection/components/meter/component.js +1 -10
  330. package/dist/collection/components/meter/component.js.map +1 -1
  331. package/dist/collection/components/modal/style.css +2 -2
  332. package/dist/collection/components/nav/style.css +2 -2
  333. package/dist/collection/components/pagination/style.css +2 -2
  334. package/dist/collection/components/popover-button/component.js +14 -5
  335. package/dist/collection/components/popover-button/component.js.map +1 -1
  336. package/dist/collection/components/popover-button/shadow.js +13 -4
  337. package/dist/collection/components/popover-button/shadow.js.map +1 -1
  338. package/dist/collection/components/popover-button/style.css +2 -2
  339. package/dist/collection/components/select/component.js +14 -5
  340. package/dist/collection/components/select/component.js.map +1 -1
  341. package/dist/collection/components/select/shadow.js +13 -4
  342. package/dist/collection/components/select/shadow.js.map +1 -1
  343. package/dist/collection/components/select/style.css +2 -2
  344. package/dist/collection/components/single-select/shadow.js +15 -6
  345. package/dist/collection/components/single-select/shadow.js.map +1 -1
  346. package/dist/collection/components/single-select/style.css +2 -2
  347. package/dist/collection/components/skip-nav/shadow.js +13 -4
  348. package/dist/collection/components/skip-nav/shadow.js.map +1 -1
  349. package/dist/collection/components/skip-nav/style.css +2 -2
  350. package/dist/collection/components/split-button/shadow.js +14 -5
  351. package/dist/collection/components/split-button/shadow.js.map +1 -1
  352. package/dist/collection/components/split-button/style.css +2 -2
  353. package/dist/collection/components/table-stateful/shadow.js +64 -6
  354. package/dist/collection/components/table-stateful/shadow.js.map +1 -1
  355. package/dist/collection/components/table-stateful/style.css +6 -2
  356. package/dist/collection/components/table-stateless/component.js +33 -46
  357. package/dist/collection/components/table-stateless/component.js.map +1 -1
  358. package/dist/collection/components/table-stateless/style.css +6 -2
  359. package/dist/collection/components/tabs/shadow.js +14 -5
  360. package/dist/collection/components/tabs/shadow.js.map +1 -1
  361. package/dist/collection/components/tabs/style.css +11 -2
  362. package/dist/collection/components/textarea/shadow.js +13 -4
  363. package/dist/collection/components/textarea/shadow.js.map +1 -1
  364. package/dist/collection/components/textarea/style.css +2 -2
  365. package/dist/collection/components/toaster/shadow.js +13 -7
  366. package/dist/collection/components/toaster/shadow.js.map +1 -1
  367. package/dist/collection/components/toaster/style.css +2 -2
  368. package/dist/collection/components/toolbar/shadow.js +14 -5
  369. package/dist/collection/components/toolbar/shadow.js.map +1 -1
  370. package/dist/collection/components/toolbar/style.css +2 -2
  371. package/dist/collection/components/tree/component.js +14 -5
  372. package/dist/collection/components/tree/component.js.map +1 -1
  373. package/dist/collection/components/tree/shadow.js +13 -4
  374. package/dist/collection/components/tree/shadow.js.map +1 -1
  375. package/dist/collection/components/tree-item/component.js +16 -7
  376. package/dist/collection/components/tree-item/component.js.map +1 -1
  377. package/dist/collection/components/tree-item/shadow.js +14 -5
  378. package/dist/collection/components/tree-item/shadow.js.map +1 -1
  379. package/dist/collection/components/tree-item/style.css +2 -2
  380. package/dist/collection/internal/functional-components/click-button/controller.js +1 -8
  381. package/dist/collection/internal/functional-components/click-button/controller.js.map +1 -1
  382. package/dist/collection/internal/functional-components/generic-types.js.map +1 -1
  383. package/dist/collection/internal/functional-components/image/component.js +2 -2
  384. package/dist/collection/internal/functional-components/image/component.js.map +1 -1
  385. package/dist/collection/internal/functional-components/meter/api.js.map +1 -1
  386. package/dist/collection/internal/functional-components/meter/component.js +2 -7
  387. package/dist/collection/internal/functional-components/meter/component.js.map +1 -1
  388. package/dist/collection/internal/functional-components/meter/controller.js +0 -16
  389. package/dist/collection/internal/functional-components/meter/controller.js.map +1 -1
  390. package/dist/collection/internal/functional-components/skeleton/api.js.map +1 -1
  391. package/dist/collection/internal/functional-components/skeleton/controller.js +6 -9
  392. package/dist/collection/internal/functional-components/skeleton/controller.js.map +1 -1
  393. package/dist/collection/schema/components/image.js.map +1 -1
  394. package/dist/collection/schema/components/input-password.js.map +1 -1
  395. package/dist/collection/schema/interfaces/FocusableElement.js.map +1 -1
  396. package/dist/collection/schema/utils/prop.validators.js +21 -32
  397. package/dist/collection/schema/utils/prop.validators.js.map +1 -1
  398. package/dist/collection/utils/element-focus.js +65 -2
  399. package/dist/collection/utils/element-focus.js.map +1 -1
  400. package/dist/collection/utils/element-interaction.js +29 -7
  401. package/dist/collection/utils/element-interaction.js.map +1 -1
  402. package/dist/collection/utils/events.js +2 -0
  403. package/dist/collection/utils/events.js.map +1 -1
  404. package/dist/components/FieldControlStateWrapper.js +1 -1
  405. package/dist/components/Input.js +1 -1
  406. package/dist/components/InputStateWrapper.js +1 -1
  407. package/dist/components/associated.controller.js +6 -3
  408. package/dist/components/associated.controller.js.map +1 -1
  409. package/dist/components/component4.js +15 -0
  410. package/dist/components/component4.js.map +1 -0
  411. package/dist/components/controller-icon.js +1 -1
  412. package/dist/components/controller3.js +825 -34
  413. package/dist/components/controller3.js.map +1 -1
  414. package/dist/components/controller4.js +77 -796
  415. package/dist/components/controller4.js.map +1 -1
  416. package/dist/components/controller5.js +22 -90
  417. package/dist/components/controller5.js.map +1 -1
  418. package/dist/components/controller6.js +67 -28
  419. package/dist/components/controller6.js.map +1 -1
  420. package/dist/components/element-focus.js +67 -3
  421. package/dist/components/element-focus.js.map +1 -1
  422. package/dist/components/element-interaction.js +23 -8
  423. package/dist/components/element-interaction.js.map +1 -1
  424. package/dist/components/events.js +2 -0
  425. package/dist/components/events.js.map +1 -1
  426. package/dist/components/kol-abbr.js +1 -1
  427. package/dist/components/kol-accordion.js +3 -3
  428. package/dist/components/kol-accordion.js.map +1 -1
  429. package/dist/components/kol-alert.js +1 -1
  430. package/dist/components/kol-badge.js +4 -4
  431. package/dist/components/kol-badge.js.map +1 -1
  432. package/dist/components/kol-breadcrumb.js +1 -1
  433. package/dist/components/kol-button-link.js +3 -3
  434. package/dist/components/kol-button-link.js.map +1 -1
  435. package/dist/components/kol-button-wc.js +3 -3
  436. package/dist/components/kol-button-wc.js.map +1 -1
  437. package/dist/components/kol-button.js +3 -3
  438. package/dist/components/kol-button.js.map +1 -1
  439. package/dist/components/kol-card.js +1 -1
  440. package/dist/components/kol-click-button.js +35 -5
  441. package/dist/components/kol-click-button.js.map +1 -1
  442. package/dist/components/kol-combobox.js +13 -7
  443. package/dist/components/kol-combobox.js.map +1 -1
  444. package/dist/components/kol-details.js +3 -3
  445. package/dist/components/kol-details.js.map +1 -1
  446. package/dist/components/kol-dialog.js +1 -1
  447. package/dist/components/kol-drawer.js +1 -1
  448. package/dist/components/kol-form.js +1 -1
  449. package/dist/components/kol-icon.js +1 -1
  450. package/dist/components/kol-image.js +21 -4
  451. package/dist/components/kol-image.js.map +1 -1
  452. package/dist/components/kol-input-checkbox.js +5 -5
  453. package/dist/components/kol-input-checkbox.js.map +1 -1
  454. package/dist/components/kol-input-color.js +4 -4
  455. package/dist/components/kol-input-color.js.map +1 -1
  456. package/dist/components/kol-input-date.js +4 -4
  457. package/dist/components/kol-input-date.js.map +1 -1
  458. package/dist/components/kol-input-email.js +5 -5
  459. package/dist/components/kol-input-email.js.map +1 -1
  460. package/dist/components/kol-input-file.js +4 -4
  461. package/dist/components/kol-input-file.js.map +1 -1
  462. package/dist/components/kol-input-number.js +4 -4
  463. package/dist/components/kol-input-number.js.map +1 -1
  464. package/dist/components/kol-input-password.js +5 -5
  465. package/dist/components/kol-input-password.js.map +1 -1
  466. package/dist/components/kol-input-radio.js +8 -7
  467. package/dist/components/kol-input-radio.js.map +1 -1
  468. package/dist/components/kol-input-range.js +4 -4
  469. package/dist/components/kol-input-range.js.map +1 -1
  470. package/dist/components/kol-input-text.js +5 -5
  471. package/dist/components/kol-input-text.js.map +1 -1
  472. package/dist/components/kol-link-button.js +3 -3
  473. package/dist/components/kol-link-button.js.map +1 -1
  474. package/dist/components/kol-link-wc.js +3 -3
  475. package/dist/components/kol-link-wc.js.map +1 -1
  476. package/dist/components/kol-link.js +3 -3
  477. package/dist/components/kol-link.js.map +1 -1
  478. package/dist/components/kol-meter.js +4 -30
  479. package/dist/components/kol-meter.js.map +1 -1
  480. package/dist/components/kol-modal.js +1 -1
  481. package/dist/components/kol-nav.js +1 -1
  482. package/dist/components/kol-pagination.js +1 -1
  483. package/dist/components/kol-popover-button-wc.js +3 -3
  484. package/dist/components/kol-popover-button-wc.js.map +1 -1
  485. package/dist/components/kol-popover-button.js +3 -3
  486. package/dist/components/kol-popover-button.js.map +1 -1
  487. package/dist/components/kol-select-wc.js +5 -5
  488. package/dist/components/kol-select-wc.js.map +1 -1
  489. package/dist/components/kol-select.js +3 -3
  490. package/dist/components/kol-select.js.map +1 -1
  491. package/dist/components/kol-single-select.js +7 -7
  492. package/dist/components/kol-single-select.js.map +1 -1
  493. package/dist/components/kol-skeleton.js +17 -12
  494. package/dist/components/kol-skeleton.js.map +1 -1
  495. package/dist/components/kol-skip-nav.js +3 -3
  496. package/dist/components/kol-skip-nav.js.map +1 -1
  497. package/dist/components/kol-split-button.js +4 -4
  498. package/dist/components/kol-split-button.js.map +1 -1
  499. package/dist/components/kol-table-stateful.js +65 -7
  500. package/dist/components/kol-table-stateful.js.map +1 -1
  501. package/dist/components/kol-table-stateless-wc.js +33 -46
  502. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  503. package/dist/components/kol-table-stateless.js +1 -1
  504. package/dist/components/kol-table-stateless.js.map +1 -1
  505. package/dist/components/kol-tabs.js +4 -4
  506. package/dist/components/kol-tabs.js.map +1 -1
  507. package/dist/components/kol-textarea.js +4 -4
  508. package/dist/components/kol-textarea.js.map +1 -1
  509. package/dist/components/kol-toast-container.js +14 -8
  510. package/dist/components/kol-toast-container.js.map +1 -1
  511. package/dist/components/kol-toolbar.js +5 -5
  512. package/dist/components/kol-toolbar.js.map +1 -1
  513. package/dist/components/kol-tree-item-wc.js +5 -5
  514. package/dist/components/kol-tree-item-wc.js.map +1 -1
  515. package/dist/components/kol-tree-item.js +4 -4
  516. package/dist/components/kol-tree-item.js.map +1 -1
  517. package/dist/components/kol-tree-wc.js +3 -3
  518. package/dist/components/kol-tree-wc.js.map +1 -1
  519. package/dist/components/kol-tree.js +2 -2
  520. package/dist/components/kol-tree.js.map +1 -1
  521. package/dist/components/prop.validators.js +21 -32
  522. package/dist/components/prop.validators.js.map +1 -1
  523. package/dist/esm/Alert-2bYvhb8i.js +91 -0
  524. package/dist/esm/Alert-2bYvhb8i.js.map +1 -0
  525. package/dist/esm/Collapsible-OjK6lDr2.js +25 -0
  526. package/dist/esm/Collapsible-OjK6lDr2.js.map +1 -0
  527. package/dist/esm/CustomSuggestionsOptionsGroup-Cw_y_smw.js +28 -0
  528. package/dist/esm/CustomSuggestionsOptionsGroup-Cw_y_smw.js.map +1 -0
  529. package/dist/esm/FieldControlStateWrapper-CU6OjlrU.js +121 -0
  530. package/dist/esm/FieldControlStateWrapper-CU6OjlrU.js.map +1 -0
  531. package/dist/esm/FormFieldStateWrapper-C31luuWs.js +839 -0
  532. package/dist/esm/FormFieldStateWrapper-C31luuWs.js.map +1 -0
  533. package/dist/esm/Heading-C9p_CRv4.js +39 -0
  534. package/dist/esm/Heading-C9p_CRv4.js.map +1 -0
  535. package/dist/esm/Input-CwcyFZhB.js +27 -0
  536. package/dist/esm/Input-CwcyFZhB.js.map +1 -0
  537. package/dist/esm/InputStateWrapper-CcDZH7W5.js +83 -0
  538. package/dist/esm/InputStateWrapper-CcDZH7W5.js.map +1 -0
  539. package/dist/esm/access-and-short-key-CnWGdP5U.js +36 -0
  540. package/dist/esm/access-and-short-key-CnWGdP5U.js.map +1 -0
  541. package/dist/esm/align-ChLoh-Dq.js +22 -0
  542. package/dist/esm/align-ChLoh-Dq.js.map +1 -0
  543. package/dist/esm/align-floating-elements-DTTpkCAK.js +1669 -0
  544. package/dist/esm/align-floating-elements-DTTpkCAK.js.map +1 -0
  545. package/dist/esm/app-globals-Cwf240Bw.js +34 -0
  546. package/dist/esm/app-globals-Cwf240Bw.js.map +1 -0
  547. package/dist/esm/aria-expanded--y6Ce39-.js +26 -0
  548. package/dist/esm/aria-expanded--y6Ce39-.js.map +1 -0
  549. package/dist/esm/aria-labelledby-BUOJRaGL.js +57 -0
  550. package/dist/esm/aria-labelledby-BUOJRaGL.js.map +1 -0
  551. package/dist/esm/associated.controller-D55JWKjs.js +188 -0
  552. package/dist/esm/associated.controller-D55JWKjs.js.map +1 -0
  553. package/dist/esm/auto-complete-CrQJr3SH.js +16 -0
  554. package/dist/esm/auto-complete-CrQJr3SH.js.map +1 -0
  555. package/dist/esm/bem-registry-B9CzNnO1.js +160 -0
  556. package/dist/esm/bem-registry-B9CzNnO1.js.map +1 -0
  557. package/dist/esm/bootstrap-UOb6OarC.js +31 -0
  558. package/dist/esm/bootstrap-UOb6OarC.js.map +1 -0
  559. package/dist/esm/color-Df2awjVY.js +98 -0
  560. package/dist/esm/color-Df2awjVY.js.map +1 -0
  561. package/dist/esm/common-DEEjER7G.js +1715 -0
  562. package/dist/esm/common-DEEjER7G.js.map +1 -0
  563. package/dist/esm/component-4RtkhTfb.js +9148 -0
  564. package/dist/esm/component-4RtkhTfb.js.map +1 -0
  565. package/dist/esm/component-BFsdrctP.js +14 -0
  566. package/dist/esm/component-BFsdrctP.js.map +1 -0
  567. package/dist/esm/component-ijX_kUom.js +21 -0
  568. package/dist/esm/component-ijX_kUom.js.map +1 -0
  569. package/dist/esm/component-j5NhcleS.js +15 -0
  570. package/dist/esm/component-j5NhcleS.js.map +1 -0
  571. package/dist/esm/contrast-C0oqtcfU.js +97 -0
  572. package/dist/esm/contrast-C0oqtcfU.js.map +1 -0
  573. package/dist/esm/controller-B4DO-yV0.js +52 -0
  574. package/dist/esm/controller-B4DO-yV0.js.map +1 -0
  575. package/dist/esm/controller-CcrsrzWi.js +91 -0
  576. package/dist/esm/controller-CcrsrzWi.js.map +1 -0
  577. package/dist/esm/controller-D0y9uwX0.js +96 -0
  578. package/dist/esm/controller-D0y9uwX0.js.map +1 -0
  579. package/dist/esm/controller-DvdfA2RR.js +120 -0
  580. package/dist/esm/controller-DvdfA2RR.js.map +1 -0
  581. package/dist/esm/controller-icon-D3_aQk9W.js +165 -0
  582. package/dist/esm/controller-icon-D3_aQk9W.js.map +1 -0
  583. package/dist/esm/controller-oT8Y98Yc.js +239 -0
  584. package/dist/esm/controller-oT8Y98Yc.js.map +1 -0
  585. package/dist/esm/custom-class-RTVG26D_.js +15 -0
  586. package/dist/esm/custom-class-RTVG26D_.js.map +1 -0
  587. package/dist/esm/dev.utils-Cv9uCwkA.js +81 -0
  588. package/dist/esm/dev.utils-Cv9uCwkA.js.map +1 -0
  589. package/dist/esm/devtools-BOWjtOAI.js +101 -0
  590. package/dist/esm/devtools-BOWjtOAI.js.map +1 -0
  591. package/dist/esm/disabled-CtaJsBT2.js +21 -0
  592. package/dist/esm/disabled-CtaJsBT2.js.map +1 -0
  593. package/dist/esm/element-focus-BQXzaLL9.js +159 -0
  594. package/dist/esm/element-focus-BQXzaLL9.js.map +1 -0
  595. package/dist/esm/element-interaction-C5-6aPzz.js +64 -0
  596. package/dist/esm/element-interaction-C5-6aPzz.js.map +1 -0
  597. package/dist/esm/events-BhfZTW2e.js +43 -0
  598. package/dist/esm/events-BhfZTW2e.js.map +1 -0
  599. package/dist/esm/has-closer-GBI76y-L.js +13 -0
  600. package/dist/esm/has-closer-GBI76y-L.js.map +1 -0
  601. package/dist/esm/hide-label-CWFMK5Iz.js +13 -0
  602. package/dist/esm/hide-label-CWFMK5Iz.js.map +1 -0
  603. package/dist/esm/href-yQN98Z4F.js +13 -0
  604. package/dist/esm/href-yQN98Z4F.js.map +1 -0
  605. package/dist/esm/i18n-CaL2ODdQ.js +19 -0
  606. package/dist/esm/i18n-CaL2ODdQ.js.map +1 -0
  607. package/dist/esm/icons-DOGnS2Iv.js +84 -0
  608. package/dist/esm/icons-DOGnS2Iv.js.map +1 -0
  609. package/dist/esm/index-DqvPZ16l.js +2878 -0
  610. package/dist/esm/index-DqvPZ16l.js.map +1 -0
  611. package/dist/esm/index.js +6 -6
  612. package/dist/esm/inline-D3v7pifU.js +13 -0
  613. package/dist/esm/inline-D3v7pifU.js.map +1 -0
  614. package/dist/esm/kol-abbr.entry.js +14 -14
  615. package/dist/esm/kol-accordion.entry.js +17 -17
  616. package/dist/esm/kol-accordion.entry.js.map +1 -1
  617. package/dist/esm/kol-alert-wc.entry.js +13 -13
  618. package/dist/esm/kol-alert.entry.js +3 -3
  619. package/dist/esm/kol-avatar.entry.js +9 -9
  620. package/dist/esm/kol-badge.entry.js +15 -15
  621. package/dist/esm/kol-badge.entry.js.map +1 -1
  622. package/dist/esm/kol-breadcrumb.entry.js +8 -8
  623. package/dist/esm/kol-button-link.entry.js +7 -7
  624. package/dist/esm/kol-button-link.entry.js.map +1 -1
  625. package/dist/esm/kol-button-wc.entry.js +31 -31
  626. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  627. package/dist/esm/kol-button.entry.js +7 -7
  628. package/dist/esm/kol-button.entry.js.map +1 -1
  629. package/dist/esm/kol-card-wc.entry.js +16 -16
  630. package/dist/esm/kol-card.entry.js +3 -3
  631. package/dist/esm/kol-click-button.entry.js +39 -12
  632. package/dist/esm/kol-click-button.entry.js.map +1 -1
  633. package/dist/esm/kol-combobox.entry.js +48 -42
  634. package/dist/esm/kol-combobox.entry.js.map +1 -1
  635. package/dist/esm/kol-details.entry.js +17 -17
  636. package/dist/esm/kol-details.entry.js.map +1 -1
  637. package/dist/esm/kol-dialog-wc.entry.js +8 -8
  638. package/dist/esm/kol-dialog.entry.js +3 -3
  639. package/dist/esm/kol-drawer.entry.js +12 -12
  640. package/dist/esm/kol-form.entry.js +9 -9
  641. package/dist/esm/kol-heading.entry.js +5 -5
  642. package/dist/esm/kol-icon.entry.js +8 -8
  643. package/dist/esm/kol-image.entry.js +24 -8
  644. package/dist/esm/kol-image.entry.js.map +1 -1
  645. package/dist/esm/kol-input-checkbox.entry.js +37 -37
  646. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  647. package/dist/esm/kol-input-color.entry.js +37 -37
  648. package/dist/esm/kol-input-color.entry.js.map +1 -1
  649. package/dist/esm/kol-input-date.entry.js +40 -40
  650. package/dist/esm/kol-input-date.entry.js.map +1 -1
  651. package/dist/esm/kol-input-email.entry.js +46 -46
  652. package/dist/esm/kol-input-email.entry.js.map +1 -1
  653. package/dist/esm/kol-input-file.entry.js +37 -37
  654. package/dist/esm/kol-input-file.entry.js.map +1 -1
  655. package/dist/esm/kol-input-number.entry.js +41 -41
  656. package/dist/esm/kol-input-number.entry.js.map +1 -1
  657. package/dist/esm/kol-input-password.entry.js +42 -42
  658. package/dist/esm/kol-input-password.entry.js.map +1 -1
  659. package/dist/esm/kol-input-radio.entry.js +38 -37
  660. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  661. package/dist/esm/kol-input-range.entry.js +38 -38
  662. package/dist/esm/kol-input-range.entry.js.map +1 -1
  663. package/dist/esm/kol-input-text.entry.js +45 -45
  664. package/dist/esm/kol-input-text.entry.js.map +1 -1
  665. package/dist/esm/kol-kolibri.entry.js +5 -5
  666. package/dist/esm/kol-link-button.entry.js +7 -7
  667. package/dist/esm/kol-link-button.entry.js.map +1 -1
  668. package/dist/esm/kol-link-wc.entry.js +30 -30
  669. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  670. package/dist/esm/kol-link.entry.js +7 -7
  671. package/dist/esm/kol-link.entry.js.map +1 -1
  672. package/dist/esm/kol-meter.entry.js +10 -35
  673. package/dist/esm/kol-meter.entry.js.map +1 -1
  674. package/dist/esm/kol-modal.entry.js +3 -3
  675. package/dist/esm/kol-nav.entry.js +9 -9
  676. package/dist/esm/kol-pagination-wc.entry.js +10 -10
  677. package/dist/esm/kol-pagination.entry.js +3 -3
  678. package/dist/esm/kol-popover-button-wc.entry.js +11 -11
  679. package/dist/esm/kol-popover-button-wc.entry.js.map +1 -1
  680. package/dist/esm/kol-popover-button.entry.js +7 -7
  681. package/dist/esm/kol-popover-button.entry.js.map +1 -1
  682. package/dist/esm/kol-progress.entry.js +7 -7
  683. package/dist/esm/kol-quote.entry.js +6 -6
  684. package/dist/esm/kol-select-wc.entry.js +39 -39
  685. package/dist/esm/kol-select-wc.entry.js.map +1 -1
  686. package/dist/esm/kol-select.entry.js +7 -7
  687. package/dist/esm/kol-select.entry.js.map +1 -1
  688. package/dist/esm/kol-single-select.entry.js +42 -42
  689. package/dist/esm/kol-single-select.entry.js.map +1 -1
  690. package/dist/esm/kol-skeleton.entry.js +22 -18
  691. package/dist/esm/kol-skeleton.entry.js.map +1 -1
  692. package/dist/esm/kol-skip-nav.entry.js +10 -10
  693. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  694. package/dist/esm/kol-spin.entry.js +6 -6
  695. package/dist/esm/kol-split-button.entry.js +9 -9
  696. package/dist/esm/kol-split-button.entry.js.map +1 -1
  697. package/dist/esm/kol-table-settings-wc.entry.js +4 -4
  698. package/dist/esm/kol-table-stateful.entry.js +71 -14
  699. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  700. package/dist/esm/kol-table-stateless-wc.entry.js +45 -58
  701. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  702. package/dist/esm/kol-table-stateless.entry.js +4 -4
  703. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  704. package/dist/esm/kol-tabs.entry.js +12 -12
  705. package/dist/esm/kol-tabs.entry.js.map +1 -1
  706. package/dist/esm/kol-textarea.entry.js +39 -39
  707. package/dist/esm/kol-textarea.entry.js.map +1 -1
  708. package/dist/esm/kol-toast-container.entry.js +25 -19
  709. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  710. package/dist/esm/kol-toolbar.entry.js +9 -9
  711. package/dist/esm/kol-toolbar.entry.js.map +1 -1
  712. package/dist/esm/kol-tooltip-wc.entry.js +12 -12
  713. package/dist/esm/kol-tree-item-wc.entry.js +13 -13
  714. package/dist/esm/kol-tree-item-wc.entry.js.map +1 -1
  715. package/dist/esm/kol-tree-item.entry.js +6 -6
  716. package/dist/esm/kol-tree-item.entry.js.map +1 -1
  717. package/dist/esm/kol-tree-wc.entry.js +6 -6
  718. package/dist/esm/kol-tree-wc.entry.js.map +1 -1
  719. package/dist/esm/kol-tree.entry.js +6 -6
  720. package/dist/esm/kol-tree.entry.js.map +1 -1
  721. package/dist/esm/kol-version.entry.js +4 -4
  722. package/dist/esm/kolibri.js +5 -5
  723. package/dist/esm/label-Cg7TG_7b.js +45 -0
  724. package/dist/esm/label-Cg7TG_7b.js.map +1 -0
  725. package/dist/esm/label-DPd4-fag.js +11 -0
  726. package/dist/esm/label-DPd4-fag.js.map +1 -0
  727. package/dist/esm/level-CfQolHx4.js +12 -0
  728. package/dist/esm/level-CfQolHx4.js.map +1 -0
  729. package/dist/esm/loader.js +5 -5
  730. package/dist/esm/max-length-behavior-426q5CU6.js +22 -0
  731. package/dist/esm/max-length-behavior-426q5CU6.js.map +1 -0
  732. package/dist/esm/multiple-LEiooHN4.js +13 -0
  733. package/dist/esm/multiple-LEiooHN4.js.map +1 -0
  734. package/dist/esm/normalizers-pgU77mXp.js +641 -0
  735. package/dist/esm/normalizers-pgU77mXp.js.map +1 -0
  736. package/dist/esm/open-Djbpz6kg.js +13 -0
  737. package/dist/esm/open-Djbpz6kg.js.map +1 -0
  738. package/dist/esm/orientation-BzQXB0-V.js +16 -0
  739. package/dist/esm/orientation-BzQXB0-V.js.map +1 -0
  740. package/dist/esm/placeholder-CSgrK1Zh.js +13 -0
  741. package/dist/esm/placeholder-CSgrK1Zh.js.map +1 -0
  742. package/dist/esm/read-only-DyuIPHMt.js +13 -0
  743. package/dist/esm/read-only-DyuIPHMt.js.map +1 -0
  744. package/dist/esm/required-DAsW5lI1.js +13 -0
  745. package/dist/esm/required-DAsW5lI1.js.map +1 -0
  746. package/dist/esm/rows-Bdp885AQ.js +13 -0
  747. package/dist/esm/rows-Bdp885AQ.js.map +1 -0
  748. package/dist/esm/spell-check-CSnDB95u.js +15 -0
  749. package/dist/esm/spell-check-CSnDB95u.js.map +1 -0
  750. package/dist/esm/src-C8dP-FLK.js +11 -0
  751. package/dist/esm/src-C8dP-FLK.js.map +1 -0
  752. package/dist/esm/suggestions-Cnn1r8zc.js +21 -0
  753. package/dist/esm/suggestions-Cnn1r8zc.js.map +1 -0
  754. package/dist/esm/table-selection-DlaNrAWM.js +85 -0
  755. package/dist/esm/table-selection-DlaNrAWM.js.map +1 -0
  756. package/dist/esm/test-component.entry.js +2 -2
  757. package/dist/esm/tooltip-align-DzHPWEpv.js +14 -0
  758. package/dist/esm/tooltip-align-DzHPWEpv.js.map +1 -0
  759. package/dist/esm/unique-nav-labels-7ifGcuBZ.js +22 -0
  760. package/dist/esm/unique-nav-labels-7ifGcuBZ.js.map +1 -0
  761. package/dist/esm/validation-B8MhupBp.js +14 -0
  762. package/dist/esm/validation-B8MhupBp.js.map +1 -0
  763. package/dist/esm/validation-VhuthteS.js +17 -0
  764. package/dist/esm/validation-VhuthteS.js.map +1 -0
  765. package/dist/esm/value-number-clamped-BQ9jw4HR.js +24 -0
  766. package/dist/esm/value-number-clamped-BQ9jw4HR.js.map +1 -0
  767. package/dist/esm/variant-class-name-CkfE8oGZ.js +16 -0
  768. package/dist/esm/variant-class-name-CkfE8oGZ.js.map +1 -0
  769. package/dist/esm/variant-quote-BMV8GZX8.js +37 -0
  770. package/dist/esm/variant-quote-BMV8GZX8.js.map +1 -0
  771. package/dist/kolibri/Alert-2bYvhb8i.js +5 -0
  772. package/dist/kolibri/Alert-2bYvhb8i.js.map +1 -0
  773. package/dist/kolibri/Collapsible-OjK6lDr2.js +5 -0
  774. package/dist/kolibri/Collapsible-OjK6lDr2.js.map +1 -0
  775. package/dist/kolibri/CustomSuggestionsOptionsGroup-Cw_y_smw.js +5 -0
  776. package/dist/kolibri/CustomSuggestionsOptionsGroup-Cw_y_smw.js.map +1 -0
  777. package/dist/kolibri/FieldControlStateWrapper-CU6OjlrU.js +5 -0
  778. package/dist/kolibri/FieldControlStateWrapper-CU6OjlrU.js.map +1 -0
  779. package/dist/kolibri/FormFieldStateWrapper-C31luuWs.js +5 -0
  780. package/dist/kolibri/FormFieldStateWrapper-C31luuWs.js.map +1 -0
  781. package/dist/kolibri/Heading-C9p_CRv4.js +5 -0
  782. package/dist/kolibri/Heading-C9p_CRv4.js.map +1 -0
  783. package/dist/kolibri/Input-CwcyFZhB.js +5 -0
  784. package/dist/kolibri/Input-CwcyFZhB.js.map +1 -0
  785. package/dist/kolibri/InputStateWrapper-CcDZH7W5.js +5 -0
  786. package/dist/kolibri/InputStateWrapper-CcDZH7W5.js.map +1 -0
  787. package/dist/kolibri/access-and-short-key-CnWGdP5U.js +5 -0
  788. package/dist/kolibri/access-and-short-key-CnWGdP5U.js.map +1 -0
  789. package/dist/kolibri/align-ChLoh-Dq.js +5 -0
  790. package/dist/kolibri/align-ChLoh-Dq.js.map +1 -0
  791. package/dist/kolibri/align-floating-elements-DTTpkCAK.js +5 -0
  792. package/dist/kolibri/align-floating-elements-DTTpkCAK.js.map +1 -0
  793. package/dist/kolibri/app-globals-Cwf240Bw.js +5 -0
  794. package/dist/kolibri/app-globals-Cwf240Bw.js.map +1 -0
  795. package/dist/kolibri/aria-expanded--y6Ce39-.js +5 -0
  796. package/dist/kolibri/aria-expanded--y6Ce39-.js.map +1 -0
  797. package/dist/kolibri/aria-labelledby-BUOJRaGL.js +5 -0
  798. package/dist/kolibri/aria-labelledby-BUOJRaGL.js.map +1 -0
  799. package/dist/kolibri/associated.controller-D55JWKjs.js +5 -0
  800. package/dist/kolibri/associated.controller-D55JWKjs.js.map +1 -0
  801. package/dist/kolibri/auto-complete-CrQJr3SH.js +5 -0
  802. package/dist/kolibri/auto-complete-CrQJr3SH.js.map +1 -0
  803. package/dist/kolibri/bem-registry-B9CzNnO1.js +5 -0
  804. package/dist/kolibri/bem-registry-B9CzNnO1.js.map +1 -0
  805. package/dist/kolibri/bootstrap-UOb6OarC.js +5 -0
  806. package/dist/kolibri/bootstrap-UOb6OarC.js.map +1 -0
  807. package/dist/kolibri/color-Df2awjVY.js +5 -0
  808. package/dist/kolibri/color-Df2awjVY.js.map +1 -0
  809. package/dist/kolibri/common-DEEjER7G.js +5 -0
  810. package/dist/kolibri/common-DEEjER7G.js.map +1 -0
  811. package/dist/kolibri/component-4RtkhTfb.js +5 -0
  812. package/dist/kolibri/component-4RtkhTfb.js.map +1 -0
  813. package/dist/kolibri/component-BFsdrctP.js +5 -0
  814. package/dist/kolibri/component-BFsdrctP.js.map +1 -0
  815. package/dist/kolibri/component-ijX_kUom.js +5 -0
  816. package/dist/kolibri/component-ijX_kUom.js.map +1 -0
  817. package/dist/kolibri/component-j5NhcleS.js +5 -0
  818. package/dist/kolibri/component-j5NhcleS.js.map +1 -0
  819. package/dist/kolibri/contrast-C0oqtcfU.js +5 -0
  820. package/dist/kolibri/contrast-C0oqtcfU.js.map +1 -0
  821. package/dist/kolibri/controller-B4DO-yV0.js +5 -0
  822. package/dist/kolibri/controller-B4DO-yV0.js.map +1 -0
  823. package/dist/kolibri/controller-CcrsrzWi.js +5 -0
  824. package/dist/kolibri/controller-CcrsrzWi.js.map +1 -0
  825. package/dist/kolibri/controller-D0y9uwX0.js +5 -0
  826. package/dist/kolibri/controller-D0y9uwX0.js.map +1 -0
  827. package/dist/kolibri/controller-DvdfA2RR.js +5 -0
  828. package/dist/kolibri/controller-DvdfA2RR.js.map +1 -0
  829. package/dist/kolibri/controller-icon-D3_aQk9W.js +5 -0
  830. package/dist/kolibri/controller-icon-D3_aQk9W.js.map +1 -0
  831. package/dist/kolibri/controller-oT8Y98Yc.js +5 -0
  832. package/dist/kolibri/controller-oT8Y98Yc.js.map +1 -0
  833. package/dist/kolibri/custom-class-RTVG26D_.js +5 -0
  834. package/dist/kolibri/custom-class-RTVG26D_.js.map +1 -0
  835. package/dist/kolibri/dev.utils-Cv9uCwkA.js +5 -0
  836. package/dist/kolibri/dev.utils-Cv9uCwkA.js.map +1 -0
  837. package/dist/kolibri/devtools-BOWjtOAI.js +5 -0
  838. package/dist/kolibri/devtools-BOWjtOAI.js.map +1 -0
  839. package/dist/kolibri/disabled-CtaJsBT2.js +5 -0
  840. package/dist/kolibri/disabled-CtaJsBT2.js.map +1 -0
  841. package/dist/kolibri/element-focus-BQXzaLL9.js +5 -0
  842. package/dist/kolibri/element-focus-BQXzaLL9.js.map +1 -0
  843. package/dist/kolibri/element-interaction-C5-6aPzz.js +5 -0
  844. package/dist/kolibri/element-interaction-C5-6aPzz.js.map +1 -0
  845. package/dist/kolibri/events-BhfZTW2e.js +5 -0
  846. package/dist/kolibri/events-BhfZTW2e.js.map +1 -0
  847. package/dist/kolibri/has-closer-GBI76y-L.js +5 -0
  848. package/dist/kolibri/has-closer-GBI76y-L.js.map +1 -0
  849. package/dist/kolibri/hide-label-CWFMK5Iz.js +5 -0
  850. package/dist/kolibri/hide-label-CWFMK5Iz.js.map +1 -0
  851. package/dist/kolibri/href-yQN98Z4F.js +5 -0
  852. package/dist/kolibri/href-yQN98Z4F.js.map +1 -0
  853. package/dist/kolibri/i18n-CaL2ODdQ.js +5 -0
  854. package/dist/kolibri/i18n-CaL2ODdQ.js.map +1 -0
  855. package/dist/kolibri/icons-DOGnS2Iv.js +5 -0
  856. package/dist/kolibri/icons-DOGnS2Iv.js.map +1 -0
  857. package/dist/kolibri/index-DqvPZ16l.js +6 -0
  858. package/dist/kolibri/index-DqvPZ16l.js.map +1 -0
  859. package/dist/kolibri/index.esm.js +1 -1
  860. package/dist/kolibri/inline-D3v7pifU.js +5 -0
  861. package/dist/kolibri/inline-D3v7pifU.js.map +1 -0
  862. package/dist/kolibri/kol-abbr.entry.js +1 -1
  863. package/dist/kolibri/kol-accordion.entry.esm.js.map +1 -1
  864. package/dist/kolibri/kol-accordion.entry.js +1 -1
  865. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  866. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  867. package/dist/kolibri/kol-alert.entry.js +1 -1
  868. package/dist/kolibri/kol-avatar.entry.js +1 -1
  869. package/dist/kolibri/kol-badge.entry.esm.js.map +1 -1
  870. package/dist/kolibri/kol-badge.entry.js +1 -1
  871. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  872. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  873. package/dist/kolibri/kol-button-link.entry.esm.js.map +1 -1
  874. package/dist/kolibri/kol-button-link.entry.js +1 -1
  875. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  876. package/dist/kolibri/kol-button-wc.entry.esm.js.map +1 -1
  877. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  878. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  879. package/dist/kolibri/kol-button.entry.esm.js.map +1 -1
  880. package/dist/kolibri/kol-button.entry.js +1 -1
  881. package/dist/kolibri/kol-button.entry.js.map +1 -1
  882. package/dist/kolibri/kol-card-wc.entry.js +1 -1
  883. package/dist/kolibri/kol-card.entry.js +1 -1
  884. package/dist/kolibri/kol-click-button.entry.esm.js.map +1 -1
  885. package/dist/kolibri/kol-click-button.entry.js +1 -1
  886. package/dist/kolibri/kol-click-button.entry.js.map +1 -1
  887. package/dist/kolibri/kol-combobox.entry.esm.js.map +1 -1
  888. package/dist/kolibri/kol-combobox.entry.js +1 -1
  889. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  890. package/dist/kolibri/kol-details.entry.esm.js.map +1 -1
  891. package/dist/kolibri/kol-details.entry.js +1 -1
  892. package/dist/kolibri/kol-details.entry.js.map +1 -1
  893. package/dist/kolibri/kol-dialog-wc.entry.js +1 -1
  894. package/dist/kolibri/kol-dialog.entry.js +1 -1
  895. package/dist/kolibri/kol-drawer.entry.js +1 -1
  896. package/dist/kolibri/kol-form.entry.js +1 -1
  897. package/dist/kolibri/kol-heading.entry.js +1 -1
  898. package/dist/kolibri/kol-icon.entry.js +1 -1
  899. package/dist/kolibri/kol-image.entry.esm.js.map +1 -1
  900. package/dist/kolibri/kol-image.entry.js +1 -1
  901. package/dist/kolibri/kol-image.entry.js.map +1 -1
  902. package/dist/kolibri/kol-input-checkbox.entry.esm.js.map +1 -1
  903. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  904. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  905. package/dist/kolibri/kol-input-color.entry.esm.js.map +1 -1
  906. package/dist/kolibri/kol-input-color.entry.js +1 -1
  907. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  908. package/dist/kolibri/kol-input-date.entry.esm.js.map +1 -1
  909. package/dist/kolibri/kol-input-date.entry.js +1 -1
  910. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  911. package/dist/kolibri/kol-input-email.entry.esm.js.map +1 -1
  912. package/dist/kolibri/kol-input-email.entry.js +1 -1
  913. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  914. package/dist/kolibri/kol-input-file.entry.esm.js.map +1 -1
  915. package/dist/kolibri/kol-input-file.entry.js +1 -1
  916. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  917. package/dist/kolibri/kol-input-number.entry.esm.js.map +1 -1
  918. package/dist/kolibri/kol-input-number.entry.js +1 -1
  919. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  920. package/dist/kolibri/kol-input-password.entry.esm.js.map +1 -1
  921. package/dist/kolibri/kol-input-password.entry.js +1 -1
  922. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  923. package/dist/kolibri/kol-input-radio.entry.esm.js.map +1 -1
  924. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  925. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  926. package/dist/kolibri/kol-input-range.entry.esm.js.map +1 -1
  927. package/dist/kolibri/kol-input-range.entry.js +1 -1
  928. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  929. package/dist/kolibri/kol-input-text.entry.esm.js.map +1 -1
  930. package/dist/kolibri/kol-input-text.entry.js +1 -1
  931. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  932. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  933. package/dist/kolibri/kol-link-button.entry.esm.js.map +1 -1
  934. package/dist/kolibri/kol-link-button.entry.js +1 -1
  935. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  936. package/dist/kolibri/kol-link-wc.entry.esm.js.map +1 -1
  937. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  938. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  939. package/dist/kolibri/kol-link.entry.esm.js.map +1 -1
  940. package/dist/kolibri/kol-link.entry.js +1 -1
  941. package/dist/kolibri/kol-link.entry.js.map +1 -1
  942. package/dist/kolibri/kol-meter.entry.esm.js.map +1 -1
  943. package/dist/kolibri/kol-meter.entry.js +1 -1
  944. package/dist/kolibri/kol-meter.entry.js.map +1 -1
  945. package/dist/kolibri/kol-modal.entry.js +1 -1
  946. package/dist/kolibri/kol-nav.entry.js +1 -1
  947. package/dist/kolibri/kol-pagination-wc.entry.js +1 -1
  948. package/dist/kolibri/kol-pagination.entry.js +1 -1
  949. package/dist/kolibri/kol-popover-button-wc.entry.esm.js.map +1 -1
  950. package/dist/kolibri/kol-popover-button-wc.entry.js +1 -1
  951. package/dist/kolibri/kol-popover-button-wc.entry.js.map +1 -1
  952. package/dist/kolibri/kol-popover-button.entry.esm.js.map +1 -1
  953. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  954. package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
  955. package/dist/kolibri/kol-progress.entry.js +1 -1
  956. package/dist/kolibri/kol-quote.entry.js +1 -1
  957. package/dist/kolibri/kol-select-wc.entry.esm.js.map +1 -1
  958. package/dist/kolibri/kol-select-wc.entry.js +1 -1
  959. package/dist/kolibri/kol-select-wc.entry.js.map +1 -1
  960. package/dist/kolibri/kol-select.entry.esm.js.map +1 -1
  961. package/dist/kolibri/kol-select.entry.js +1 -1
  962. package/dist/kolibri/kol-select.entry.js.map +1 -1
  963. package/dist/kolibri/kol-single-select.entry.esm.js.map +1 -1
  964. package/dist/kolibri/kol-single-select.entry.js +1 -1
  965. package/dist/kolibri/kol-single-select.entry.js.map +1 -1
  966. package/dist/kolibri/kol-skeleton.entry.esm.js.map +1 -1
  967. package/dist/kolibri/kol-skeleton.entry.js +1 -1
  968. package/dist/kolibri/kol-skeleton.entry.js.map +1 -1
  969. package/dist/kolibri/kol-skip-nav.entry.esm.js.map +1 -1
  970. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  971. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  972. package/dist/kolibri/kol-spin.entry.js +1 -1
  973. package/dist/kolibri/kol-split-button.entry.esm.js.map +1 -1
  974. package/dist/kolibri/kol-split-button.entry.js +1 -1
  975. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  976. package/dist/kolibri/kol-table-settings-wc.entry.js +1 -1
  977. package/dist/kolibri/kol-table-stateful.entry.esm.js.map +1 -1
  978. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  979. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  980. package/dist/kolibri/kol-table-stateless-wc.entry.esm.js.map +1 -1
  981. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  982. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  983. package/dist/kolibri/kol-table-stateless.entry.esm.js.map +1 -1
  984. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  985. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  986. package/dist/kolibri/kol-tabs.entry.esm.js.map +1 -1
  987. package/dist/kolibri/kol-tabs.entry.js +1 -1
  988. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  989. package/dist/kolibri/kol-textarea.entry.esm.js.map +1 -1
  990. package/dist/kolibri/kol-textarea.entry.js +1 -1
  991. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  992. package/dist/kolibri/kol-toast-container.entry.esm.js.map +1 -1
  993. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  994. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  995. package/dist/kolibri/kol-toolbar.entry.esm.js.map +1 -1
  996. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  997. package/dist/kolibri/kol-toolbar.entry.js.map +1 -1
  998. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  999. package/dist/kolibri/kol-tree-item-wc.entry.esm.js.map +1 -1
  1000. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  1001. package/dist/kolibri/kol-tree-item-wc.entry.js.map +1 -1
  1002. package/dist/kolibri/kol-tree-item.entry.esm.js.map +1 -1
  1003. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  1004. package/dist/kolibri/kol-tree-item.entry.js.map +1 -1
  1005. package/dist/kolibri/kol-tree-wc.entry.esm.js.map +1 -1
  1006. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  1007. package/dist/kolibri/kol-tree-wc.entry.js.map +1 -1
  1008. package/dist/kolibri/kol-tree.entry.esm.js.map +1 -1
  1009. package/dist/kolibri/kol-tree.entry.js +1 -1
  1010. package/dist/kolibri/kol-tree.entry.js.map +1 -1
  1011. package/dist/kolibri/kol-version.entry.js +1 -1
  1012. package/dist/kolibri/kolibri.esm.js +1 -1
  1013. package/dist/kolibri/label-Cg7TG_7b.js +5 -0
  1014. package/dist/kolibri/label-Cg7TG_7b.js.map +1 -0
  1015. package/dist/kolibri/label-DPd4-fag.js +5 -0
  1016. package/dist/kolibri/label-DPd4-fag.js.map +1 -0
  1017. package/dist/kolibri/level-CfQolHx4.js +5 -0
  1018. package/dist/kolibri/level-CfQolHx4.js.map +1 -0
  1019. package/dist/kolibri/max-length-behavior-426q5CU6.js +5 -0
  1020. package/dist/kolibri/max-length-behavior-426q5CU6.js.map +1 -0
  1021. package/dist/kolibri/multiple-LEiooHN4.js +5 -0
  1022. package/dist/kolibri/multiple-LEiooHN4.js.map +1 -0
  1023. package/dist/kolibri/normalizers-pgU77mXp.js +5 -0
  1024. package/dist/kolibri/normalizers-pgU77mXp.js.map +1 -0
  1025. package/dist/kolibri/open-Djbpz6kg.js +5 -0
  1026. package/dist/kolibri/open-Djbpz6kg.js.map +1 -0
  1027. package/dist/kolibri/orientation-BzQXB0-V.js +5 -0
  1028. package/dist/kolibri/orientation-BzQXB0-V.js.map +1 -0
  1029. package/dist/kolibri/placeholder-CSgrK1Zh.js +5 -0
  1030. package/dist/kolibri/placeholder-CSgrK1Zh.js.map +1 -0
  1031. package/dist/kolibri/read-only-DyuIPHMt.js +5 -0
  1032. package/dist/kolibri/read-only-DyuIPHMt.js.map +1 -0
  1033. package/dist/kolibri/required-DAsW5lI1.js +5 -0
  1034. package/dist/kolibri/required-DAsW5lI1.js.map +1 -0
  1035. package/dist/kolibri/rows-Bdp885AQ.js +5 -0
  1036. package/dist/kolibri/rows-Bdp885AQ.js.map +1 -0
  1037. package/dist/kolibri/spell-check-CSnDB95u.js +5 -0
  1038. package/dist/kolibri/spell-check-CSnDB95u.js.map +1 -0
  1039. package/dist/kolibri/src-C8dP-FLK.js +5 -0
  1040. package/dist/kolibri/src-C8dP-FLK.js.map +1 -0
  1041. package/dist/kolibri/suggestions-Cnn1r8zc.js +5 -0
  1042. package/dist/kolibri/suggestions-Cnn1r8zc.js.map +1 -0
  1043. package/dist/kolibri/table-selection-DlaNrAWM.js +5 -0
  1044. package/dist/kolibri/table-selection-DlaNrAWM.js.map +1 -0
  1045. package/dist/kolibri/test-component.entry.js +1 -1
  1046. package/dist/kolibri/tooltip-align-DzHPWEpv.js +5 -0
  1047. package/dist/kolibri/tooltip-align-DzHPWEpv.js.map +1 -0
  1048. package/dist/kolibri/unique-nav-labels-7ifGcuBZ.js +5 -0
  1049. package/dist/kolibri/unique-nav-labels-7ifGcuBZ.js.map +1 -0
  1050. package/dist/kolibri/validation-B8MhupBp.js +5 -0
  1051. package/dist/kolibri/validation-B8MhupBp.js.map +1 -0
  1052. package/dist/kolibri/validation-VhuthteS.js +5 -0
  1053. package/dist/kolibri/validation-VhuthteS.js.map +1 -0
  1054. package/dist/kolibri/value-number-clamped-BQ9jw4HR.js +5 -0
  1055. package/dist/kolibri/value-number-clamped-BQ9jw4HR.js.map +1 -0
  1056. package/dist/kolibri/variant-class-name-CkfE8oGZ.js +5 -0
  1057. package/dist/kolibri/variant-class-name-CkfE8oGZ.js.map +1 -0
  1058. package/dist/kolibri/variant-quote-BMV8GZX8.js +5 -0
  1059. package/dist/kolibri/variant-quote-BMV8GZX8.js.map +1 -0
  1060. package/dist/types/components/_skeleton/web-components/click-button/component.d.ts +3 -1
  1061. package/dist/types/components/_skeleton/web-components/skeleton/component.d.ts +3 -1
  1062. package/dist/types/components/accordion/shadow.d.ts +2 -2
  1063. package/dist/types/components/badge/shadow.d.ts +2 -2
  1064. package/dist/types/components/button/component.d.ts +2 -2
  1065. package/dist/types/components/button/shadow.d.ts +2 -2
  1066. package/dist/types/components/button-link/shadow.d.ts +2 -2
  1067. package/dist/types/components/combobox/shadow.d.ts +2 -2
  1068. package/dist/types/components/details/shadow.d.ts +2 -2
  1069. package/dist/types/components/image/component.d.ts +5 -0
  1070. package/dist/types/components/input-adapter-leanup/associated.controller.d.ts +2 -2
  1071. package/dist/types/components/input-checkbox/shadow.d.ts +2 -2
  1072. package/dist/types/components/input-color/shadow.d.ts +2 -2
  1073. package/dist/types/components/input-date/shadow.d.ts +2 -2
  1074. package/dist/types/components/input-email/shadow.d.ts +2 -2
  1075. package/dist/types/components/input-file/shadow.d.ts +2 -2
  1076. package/dist/types/components/input-number/shadow.d.ts +2 -2
  1077. package/dist/types/components/input-password/shadow.d.ts +2 -2
  1078. package/dist/types/components/input-radio/shadow.d.ts +2 -2
  1079. package/dist/types/components/input-range/shadow.d.ts +2 -2
  1080. package/dist/types/components/input-text/shadow.d.ts +2 -2
  1081. package/dist/types/components/link/component.d.ts +2 -2
  1082. package/dist/types/components/link/shadow.d.ts +2 -2
  1083. package/dist/types/components/link-button/shadow.d.ts +2 -2
  1084. package/dist/types/components/meter/component.d.ts +0 -2
  1085. package/dist/types/components/popover-button/component.d.ts +2 -2
  1086. package/dist/types/components/popover-button/shadow.d.ts +2 -2
  1087. package/dist/types/components/select/component.d.ts +2 -2
  1088. package/dist/types/components/select/shadow.d.ts +2 -2
  1089. package/dist/types/components/single-select/shadow.d.ts +2 -2
  1090. package/dist/types/components/skip-nav/shadow.d.ts +2 -2
  1091. package/dist/types/components/split-button/shadow.d.ts +2 -2
  1092. package/dist/types/components/table-stateful/shadow.d.ts +5 -0
  1093. package/dist/types/components/table-stateless/component.d.ts +5 -0
  1094. package/dist/types/components/tabs/shadow.d.ts +2 -2
  1095. package/dist/types/components/textarea/shadow.d.ts +2 -2
  1096. package/dist/types/components/toolbar/shadow.d.ts +2 -2
  1097. package/dist/types/components/tree/component.d.ts +2 -2
  1098. package/dist/types/components/tree/shadow.d.ts +2 -2
  1099. package/dist/types/components/tree-item/component.d.ts +2 -2
  1100. package/dist/types/components/tree-item/shadow.d.ts +2 -2
  1101. package/dist/types/components.d.ts +84 -74
  1102. package/dist/types/internal/functional-components/click-button/controller.d.ts +0 -3
  1103. package/dist/types/internal/functional-components/generic-types.d.ts +1 -4
  1104. package/dist/types/internal/functional-components/image/component.d.ts +12 -3
  1105. package/dist/types/internal/functional-components/meter/api.d.ts +0 -3
  1106. package/dist/types/internal/functional-components/meter/controller.d.ts +0 -3
  1107. package/dist/types/internal/functional-components/skeleton/api.d.ts +2 -1
  1108. package/dist/types/internal/functional-components/skeleton/controller.d.ts +3 -2
  1109. package/dist/types/schema/components/image.d.ts +5 -10
  1110. package/dist/types/schema/components/input-password.d.ts +1 -1
  1111. package/dist/types/schema/interfaces/FocusableElement.d.ts +7 -1
  1112. package/dist/types/utils/element-focus.d.ts +2 -1
  1113. package/dist/types/utils/element-interaction.d.ts +1 -0
  1114. package/dist/types/utils/events.d.ts +3 -1
  1115. package/doc/accordion.md +7 -1
  1116. package/doc/badge.md +7 -1
  1117. package/doc/button-link.md +7 -1
  1118. package/doc/button.md +7 -1
  1119. package/doc/combobox.md +7 -1
  1120. package/doc/details.md +7 -1
  1121. package/doc/image.md +8 -7
  1122. package/doc/input-checkbox.md +7 -1
  1123. package/doc/input-color.md +7 -1
  1124. package/doc/input-date.md +7 -1
  1125. package/doc/input-email.md +7 -1
  1126. package/doc/input-file.md +7 -1
  1127. package/doc/input-number.md +7 -1
  1128. package/doc/input-password.md +7 -1
  1129. package/doc/input-radio.md +7 -1
  1130. package/doc/input-range.md +7 -1
  1131. package/doc/input-text.md +7 -1
  1132. package/doc/link-button.md +7 -1
  1133. package/doc/link.md +7 -1
  1134. package/doc/popover-button.md +7 -1
  1135. package/doc/select.md +7 -1
  1136. package/doc/single-select.md +7 -1
  1137. package/doc/skeleton.md +7 -1
  1138. package/doc/skip-nav.md +7 -1
  1139. package/doc/split-button.md +7 -1
  1140. package/doc/tabs.md +7 -1
  1141. package/doc/textarea.md +7 -1
  1142. package/doc/toolbar.md +7 -1
  1143. package/doc/tree-item.md +7 -1
  1144. package/doc/tree.md +7 -1
  1145. package/package.json +2 -2
  1146. package/dist/cjs/Alert-C5eDyNdi.js +0 -93
  1147. package/dist/cjs/Alert-C5eDyNdi.js.map +0 -1
  1148. package/dist/cjs/Collapsible-CdgPKZnW.js +0 -27
  1149. package/dist/cjs/Collapsible-CdgPKZnW.js.map +0 -1
  1150. package/dist/cjs/CustomSuggestionsOptionsGroup-CStgu1WD.js +0 -31
  1151. package/dist/cjs/CustomSuggestionsOptionsGroup-CStgu1WD.js.map +0 -1
  1152. package/dist/cjs/FieldControlStateWrapper-C3gnJYdM.js +0 -123
  1153. package/dist/cjs/FieldControlStateWrapper-C3gnJYdM.js.map +0 -1
  1154. package/dist/cjs/FormFieldStateWrapper-BZsSDU0S.js +0 -848
  1155. package/dist/cjs/FormFieldStateWrapper-BZsSDU0S.js.map +0 -1
  1156. package/dist/cjs/Heading-Zb8_ekSw.js +0 -41
  1157. package/dist/cjs/Heading-Zb8_ekSw.js.map +0 -1
  1158. package/dist/cjs/Input-CJWa5Pws.js +0 -29
  1159. package/dist/cjs/Input-CJWa5Pws.js.map +0 -1
  1160. package/dist/cjs/InputStateWrapper-DsAJ4d2N.js +0 -86
  1161. package/dist/cjs/InputStateWrapper-DsAJ4d2N.js.map +0 -1
  1162. package/dist/cjs/access-and-short-key-CspEpGOV.js +0 -41
  1163. package/dist/cjs/access-and-short-key-CspEpGOV.js.map +0 -1
  1164. package/dist/cjs/align-B8NMKvjk.js +0 -26
  1165. package/dist/cjs/align-B8NMKvjk.js.map +0 -1
  1166. package/dist/cjs/align-floating-elements-BkrTeMF3.js +0 -1672
  1167. package/dist/cjs/align-floating-elements-BkrTeMF3.js.map +0 -1
  1168. package/dist/cjs/app-globals-CZOtDmo2.js +0 -36
  1169. package/dist/cjs/app-globals-CZOtDmo2.js.map +0 -1
  1170. package/dist/cjs/aria-expanded-CVaHNiQi.js +0 -31
  1171. package/dist/cjs/aria-expanded-CVaHNiQi.js.map +0 -1
  1172. package/dist/cjs/aria-labelledby-DdlFZwyS.js +0 -60
  1173. package/dist/cjs/aria-labelledby-DdlFZwyS.js.map +0 -1
  1174. package/dist/cjs/associated.controller-DLy6rpeW.js +0 -187
  1175. package/dist/cjs/associated.controller-DLy6rpeW.js.map +0 -1
  1176. package/dist/cjs/auto-complete-DkzHjXc-.js +0 -18
  1177. package/dist/cjs/auto-complete-DkzHjXc-.js.map +0 -1
  1178. package/dist/cjs/bem-registry-DevvgGUu.js +0 -163
  1179. package/dist/cjs/bem-registry-DevvgGUu.js.map +0 -1
  1180. package/dist/cjs/bootstrap-ByVQ9oF5.js +0 -36
  1181. package/dist/cjs/bootstrap-ByVQ9oF5.js.map +0 -1
  1182. package/dist/cjs/color-BVcCYLDJ.js +0 -101
  1183. package/dist/cjs/color-BVcCYLDJ.js.map +0 -1
  1184. package/dist/cjs/common-DPb6NWR4.js +0 -1780
  1185. package/dist/cjs/common-DPb6NWR4.js.map +0 -1
  1186. package/dist/cjs/component-BUJSMbIY.js +0 -9153
  1187. package/dist/cjs/component-BUJSMbIY.js.map +0 -1
  1188. package/dist/cjs/component-CuHGwo27.js +0 -23
  1189. package/dist/cjs/component-CuHGwo27.js.map +0 -1
  1190. package/dist/cjs/component-kXVnT0Wy.js +0 -16
  1191. package/dist/cjs/component-kXVnT0Wy.js.map +0 -1
  1192. package/dist/cjs/contrast-BdZHneMx.js +0 -100
  1193. package/dist/cjs/contrast-BdZHneMx.js.map +0 -1
  1194. package/dist/cjs/controller-B6zjPE-P.js +0 -93
  1195. package/dist/cjs/controller-B6zjPE-P.js.map +0 -1
  1196. package/dist/cjs/controller-BMDxsRHs.js +0 -99
  1197. package/dist/cjs/controller-BMDxsRHs.js.map +0 -1
  1198. package/dist/cjs/controller-CHDjVlC1.js +0 -51
  1199. package/dist/cjs/controller-CHDjVlC1.js.map +0 -1
  1200. package/dist/cjs/controller-DLDmoPss.js +0 -55
  1201. package/dist/cjs/controller-DLDmoPss.js.map +0 -1
  1202. package/dist/cjs/controller-DiB9pVnb.js +0 -241
  1203. package/dist/cjs/controller-DiB9pVnb.js.map +0 -1
  1204. package/dist/cjs/controller-TgxV2kV0.js +0 -126
  1205. package/dist/cjs/controller-TgxV2kV0.js.map +0 -1
  1206. package/dist/cjs/controller-icon-j62graYQ.js +0 -169
  1207. package/dist/cjs/controller-icon-j62graYQ.js.map +0 -1
  1208. package/dist/cjs/custom-class-6BetCmYR.js +0 -17
  1209. package/dist/cjs/custom-class-6BetCmYR.js.map +0 -1
  1210. package/dist/cjs/dev.utils-BeTuwcHU.js +0 -86
  1211. package/dist/cjs/dev.utils-BeTuwcHU.js.map +0 -1
  1212. package/dist/cjs/devtools-ZghKOdoO.js +0 -103
  1213. package/dist/cjs/devtools-ZghKOdoO.js.map +0 -1
  1214. package/dist/cjs/disabled-GY6LfYNH.js +0 -23
  1215. package/dist/cjs/disabled-GY6LfYNH.js.map +0 -1
  1216. package/dist/cjs/element-focus-DeVevBcF.js +0 -100
  1217. package/dist/cjs/element-focus-DeVevBcF.js.map +0 -1
  1218. package/dist/cjs/element-interaction-CXkAVgKs.js +0 -55
  1219. package/dist/cjs/element-interaction-CXkAVgKs.js.map +0 -1
  1220. package/dist/cjs/events-Jc2wxPjR.js +0 -43
  1221. package/dist/cjs/events-Jc2wxPjR.js.map +0 -1
  1222. package/dist/cjs/has-closer-DdfOvOk6.js +0 -15
  1223. package/dist/cjs/has-closer-DdfOvOk6.js.map +0 -1
  1224. package/dist/cjs/hide-label-BnMTmbm4.js +0 -15
  1225. package/dist/cjs/hide-label-BnMTmbm4.js.map +0 -1
  1226. package/dist/cjs/href-D8FMmJ7i.js +0 -15
  1227. package/dist/cjs/href-D8FMmJ7i.js.map +0 -1
  1228. package/dist/cjs/i18n-Cjy0vgJA.js +0 -19
  1229. package/dist/cjs/i18n-Cjy0vgJA.js.map +0 -1
  1230. package/dist/cjs/icons-C4O3H4TU.js +0 -86
  1231. package/dist/cjs/icons-C4O3H4TU.js.map +0 -1
  1232. package/dist/cjs/index-BrhW8s5h.js +0 -2908
  1233. package/dist/cjs/index-BrhW8s5h.js.map +0 -1
  1234. package/dist/cjs/inline-D-XZg3UD.js +0 -15
  1235. package/dist/cjs/inline-D-XZg3UD.js.map +0 -1
  1236. package/dist/cjs/label-8vcJJEVI.js +0 -50
  1237. package/dist/cjs/label-8vcJJEVI.js.map +0 -1
  1238. package/dist/cjs/label-DRrPbj-j.js +0 -13
  1239. package/dist/cjs/label-DRrPbj-j.js.map +0 -1
  1240. package/dist/cjs/level-DmIt1w-r.js +0 -15
  1241. package/dist/cjs/level-DmIt1w-r.js.map +0 -1
  1242. package/dist/cjs/max-length-behavior-CqAwfrV8.js +0 -26
  1243. package/dist/cjs/max-length-behavior-CqAwfrV8.js.map +0 -1
  1244. package/dist/cjs/multiple-BEGQDyov.js +0 -15
  1245. package/dist/cjs/multiple-BEGQDyov.js.map +0 -1
  1246. package/dist/cjs/normalizers-BCLslVaT.js +0 -648
  1247. package/dist/cjs/normalizers-BCLslVaT.js.map +0 -1
  1248. package/dist/cjs/open-D-HUKrqZ.js +0 -15
  1249. package/dist/cjs/open-D-HUKrqZ.js.map +0 -1
  1250. package/dist/cjs/orientation-CZeybVrr.js +0 -18
  1251. package/dist/cjs/orientation-CZeybVrr.js.map +0 -1
  1252. package/dist/cjs/placeholder-DrjxGUF5.js +0 -15
  1253. package/dist/cjs/placeholder-DrjxGUF5.js.map +0 -1
  1254. package/dist/cjs/read-only-Dwp456Yc.js +0 -15
  1255. package/dist/cjs/read-only-Dwp456Yc.js.map +0 -1
  1256. package/dist/cjs/required-DriHzqmx.js +0 -15
  1257. package/dist/cjs/required-DriHzqmx.js.map +0 -1
  1258. package/dist/cjs/rows-DS0wBUTI.js +0 -15
  1259. package/dist/cjs/rows-DS0wBUTI.js.map +0 -1
  1260. package/dist/cjs/spell-check-DIEJiRbq.js +0 -17
  1261. package/dist/cjs/spell-check-DIEJiRbq.js.map +0 -1
  1262. package/dist/cjs/src-q91473CI.js +0 -13
  1263. package/dist/cjs/src-q91473CI.js.map +0 -1
  1264. package/dist/cjs/suggestions-CjIs1OMC.js +0 -23
  1265. package/dist/cjs/suggestions-CjIs1OMC.js.map +0 -1
  1266. package/dist/cjs/table-selection-B0zvrQJg.js +0 -93
  1267. package/dist/cjs/table-selection-B0zvrQJg.js.map +0 -1
  1268. package/dist/cjs/tooltip-align-BeYhiCq6.js +0 -16
  1269. package/dist/cjs/tooltip-align-BeYhiCq6.js.map +0 -1
  1270. package/dist/cjs/unique-nav-labels-DEtWDagf.js +0 -25
  1271. package/dist/cjs/unique-nav-labels-DEtWDagf.js.map +0 -1
  1272. package/dist/cjs/validation-4QVpAFd9.js +0 -19
  1273. package/dist/cjs/validation-4QVpAFd9.js.map +0 -1
  1274. package/dist/cjs/validation-DvL99Z_V.js +0 -16
  1275. package/dist/cjs/validation-DvL99Z_V.js.map +0 -1
  1276. package/dist/cjs/value-number-clamped-Ahfs15Fl.js +0 -28
  1277. package/dist/cjs/value-number-clamped-Ahfs15Fl.js.map +0 -1
  1278. package/dist/cjs/variant-class-name-BCWuCRd0.js +0 -18
  1279. package/dist/cjs/variant-class-name-BCWuCRd0.js.map +0 -1
  1280. package/dist/cjs/variant-quote-DpNzmCtr.js +0 -41
  1281. package/dist/cjs/variant-quote-DpNzmCtr.js.map +0 -1
  1282. package/dist/components/controller7.js +0 -92
  1283. package/dist/components/controller7.js.map +0 -1
  1284. package/dist/esm/Alert-BP_7bRZF.js +0 -91
  1285. package/dist/esm/Alert-BP_7bRZF.js.map +0 -1
  1286. package/dist/esm/Collapsible-BpaQSoeN.js +0 -25
  1287. package/dist/esm/Collapsible-BpaQSoeN.js.map +0 -1
  1288. package/dist/esm/CustomSuggestionsOptionsGroup-86r-pE0e.js +0 -28
  1289. package/dist/esm/CustomSuggestionsOptionsGroup-86r-pE0e.js.map +0 -1
  1290. package/dist/esm/FieldControlStateWrapper-DF2tVpwY.js +0 -121
  1291. package/dist/esm/FieldControlStateWrapper-DF2tVpwY.js.map +0 -1
  1292. package/dist/esm/FormFieldStateWrapper-BWTMRKXT.js +0 -839
  1293. package/dist/esm/FormFieldStateWrapper-BWTMRKXT.js.map +0 -1
  1294. package/dist/esm/Heading-q2Ue3Ixd.js +0 -39
  1295. package/dist/esm/Heading-q2Ue3Ixd.js.map +0 -1
  1296. package/dist/esm/Input-DQJln-L5.js +0 -27
  1297. package/dist/esm/Input-DQJln-L5.js.map +0 -1
  1298. package/dist/esm/InputStateWrapper-CDDIvfo0.js +0 -83
  1299. package/dist/esm/InputStateWrapper-CDDIvfo0.js.map +0 -1
  1300. package/dist/esm/access-and-short-key-D734WtlX.js +0 -36
  1301. package/dist/esm/access-and-short-key-D734WtlX.js.map +0 -1
  1302. package/dist/esm/align-DxZmRFcp.js +0 -22
  1303. package/dist/esm/align-DxZmRFcp.js.map +0 -1
  1304. package/dist/esm/align-floating-elements-D5XJiLiU.js +0 -1669
  1305. package/dist/esm/align-floating-elements-D5XJiLiU.js.map +0 -1
  1306. package/dist/esm/app-globals-UWioL0AL.js +0 -34
  1307. package/dist/esm/app-globals-UWioL0AL.js.map +0 -1
  1308. package/dist/esm/aria-expanded-hGdEA1jy.js +0 -26
  1309. package/dist/esm/aria-expanded-hGdEA1jy.js.map +0 -1
  1310. package/dist/esm/aria-labelledby-CEzR68x-.js +0 -57
  1311. package/dist/esm/aria-labelledby-CEzR68x-.js.map +0 -1
  1312. package/dist/esm/associated.controller-Bagx9pCw.js +0 -185
  1313. package/dist/esm/associated.controller-Bagx9pCw.js.map +0 -1
  1314. package/dist/esm/auto-complete-BbMivzAV.js +0 -16
  1315. package/dist/esm/auto-complete-BbMivzAV.js.map +0 -1
  1316. package/dist/esm/bem-registry-CWvl2xho.js +0 -160
  1317. package/dist/esm/bem-registry-CWvl2xho.js.map +0 -1
  1318. package/dist/esm/bootstrap-DPKvOz00.js +0 -31
  1319. package/dist/esm/bootstrap-DPKvOz00.js.map +0 -1
  1320. package/dist/esm/color-CAVnI0e-.js +0 -98
  1321. package/dist/esm/color-CAVnI0e-.js.map +0 -1
  1322. package/dist/esm/common-Cx_AGO_M.js +0 -1726
  1323. package/dist/esm/common-Cx_AGO_M.js.map +0 -1
  1324. package/dist/esm/component-Dh0cPCxF.js +0 -14
  1325. package/dist/esm/component-Dh0cPCxF.js.map +0 -1
  1326. package/dist/esm/component-DvjvBJeK.js +0 -9148
  1327. package/dist/esm/component-DvjvBJeK.js.map +0 -1
  1328. package/dist/esm/component-DzaT2WlJ.js +0 -21
  1329. package/dist/esm/component-DzaT2WlJ.js.map +0 -1
  1330. package/dist/esm/contrast-DlURrMX4.js +0 -97
  1331. package/dist/esm/contrast-DlURrMX4.js.map +0 -1
  1332. package/dist/esm/controller-Bdve6A-Q.js +0 -239
  1333. package/dist/esm/controller-Bdve6A-Q.js.map +0 -1
  1334. package/dist/esm/controller-CJmWOqQQ.js +0 -91
  1335. package/dist/esm/controller-CJmWOqQQ.js.map +0 -1
  1336. package/dist/esm/controller-DKPaX3Tu.js +0 -120
  1337. package/dist/esm/controller-DKPaX3Tu.js.map +0 -1
  1338. package/dist/esm/controller-DRE7PRMK.js +0 -96
  1339. package/dist/esm/controller-DRE7PRMK.js.map +0 -1
  1340. package/dist/esm/controller-icon-DekcIBGR.js +0 -165
  1341. package/dist/esm/controller-icon-DekcIBGR.js.map +0 -1
  1342. package/dist/esm/controller-osuRO7S2.js +0 -48
  1343. package/dist/esm/controller-osuRO7S2.js.map +0 -1
  1344. package/dist/esm/controller-xXHYiOzQ.js +0 -52
  1345. package/dist/esm/controller-xXHYiOzQ.js.map +0 -1
  1346. package/dist/esm/custom-class-DlT-QmWF.js +0 -15
  1347. package/dist/esm/custom-class-DlT-QmWF.js.map +0 -1
  1348. package/dist/esm/dev.utils-02Sl9bQo.js +0 -81
  1349. package/dist/esm/dev.utils-02Sl9bQo.js.map +0 -1
  1350. package/dist/esm/devtools-CTlVZVnW.js +0 -101
  1351. package/dist/esm/devtools-CTlVZVnW.js.map +0 -1
  1352. package/dist/esm/disabled-gyBUQRnY.js +0 -21
  1353. package/dist/esm/disabled-gyBUQRnY.js.map +0 -1
  1354. package/dist/esm/element-focus-CRwW4N4R.js +0 -95
  1355. package/dist/esm/element-focus-CRwW4N4R.js.map +0 -1
  1356. package/dist/esm/element-interaction-Bv-mPSBn.js +0 -49
  1357. package/dist/esm/element-interaction-Bv-mPSBn.js.map +0 -1
  1358. package/dist/esm/events-VVvk1win.js +0 -41
  1359. package/dist/esm/events-VVvk1win.js.map +0 -1
  1360. package/dist/esm/has-closer-B8w7bVjx.js +0 -13
  1361. package/dist/esm/has-closer-B8w7bVjx.js.map +0 -1
  1362. package/dist/esm/hide-label-6Bx1MH20.js +0 -13
  1363. package/dist/esm/hide-label-6Bx1MH20.js.map +0 -1
  1364. package/dist/esm/href-Dp4go7zq.js +0 -13
  1365. package/dist/esm/href-Dp4go7zq.js.map +0 -1
  1366. package/dist/esm/i18n-Br16IAnY.js +0 -19
  1367. package/dist/esm/i18n-Br16IAnY.js.map +0 -1
  1368. package/dist/esm/icons-oAzMYWgV.js +0 -84
  1369. package/dist/esm/icons-oAzMYWgV.js.map +0 -1
  1370. package/dist/esm/index-BQlHOxik.js +0 -2878
  1371. package/dist/esm/index-BQlHOxik.js.map +0 -1
  1372. package/dist/esm/inline-DnwpECF8.js +0 -13
  1373. package/dist/esm/inline-DnwpECF8.js.map +0 -1
  1374. package/dist/esm/label-Fyi30H9j.js +0 -45
  1375. package/dist/esm/label-Fyi30H9j.js.map +0 -1
  1376. package/dist/esm/label-KTv-zMW0.js +0 -11
  1377. package/dist/esm/label-KTv-zMW0.js.map +0 -1
  1378. package/dist/esm/level-1jyaYIAE.js +0 -12
  1379. package/dist/esm/level-1jyaYIAE.js.map +0 -1
  1380. package/dist/esm/max-length-behavior-CpaNmMus.js +0 -22
  1381. package/dist/esm/max-length-behavior-CpaNmMus.js.map +0 -1
  1382. package/dist/esm/multiple-DqCQ-txe.js +0 -13
  1383. package/dist/esm/multiple-DqCQ-txe.js.map +0 -1
  1384. package/dist/esm/normalizers-m3s9sgmq.js +0 -641
  1385. package/dist/esm/normalizers-m3s9sgmq.js.map +0 -1
  1386. package/dist/esm/open-Dw4Y2dzo.js +0 -13
  1387. package/dist/esm/open-Dw4Y2dzo.js.map +0 -1
  1388. package/dist/esm/orientation-CjNmUJp-.js +0 -16
  1389. package/dist/esm/orientation-CjNmUJp-.js.map +0 -1
  1390. package/dist/esm/placeholder-DTOUrN5s.js +0 -13
  1391. package/dist/esm/placeholder-DTOUrN5s.js.map +0 -1
  1392. package/dist/esm/read-only-DUMeby7s.js +0 -13
  1393. package/dist/esm/read-only-DUMeby7s.js.map +0 -1
  1394. package/dist/esm/required-DFzRSWky.js +0 -13
  1395. package/dist/esm/required-DFzRSWky.js.map +0 -1
  1396. package/dist/esm/rows-htbnIG9G.js +0 -13
  1397. package/dist/esm/rows-htbnIG9G.js.map +0 -1
  1398. package/dist/esm/spell-check-BtaQyLZc.js +0 -15
  1399. package/dist/esm/spell-check-BtaQyLZc.js.map +0 -1
  1400. package/dist/esm/src-DkLxm4tr.js +0 -11
  1401. package/dist/esm/src-DkLxm4tr.js.map +0 -1
  1402. package/dist/esm/suggestions-DEcHprcz.js +0 -21
  1403. package/dist/esm/suggestions-DEcHprcz.js.map +0 -1
  1404. package/dist/esm/table-selection-DmmUo33G.js +0 -85
  1405. package/dist/esm/table-selection-DmmUo33G.js.map +0 -1
  1406. package/dist/esm/tooltip-align-mwhvx9nK.js +0 -14
  1407. package/dist/esm/tooltip-align-mwhvx9nK.js.map +0 -1
  1408. package/dist/esm/unique-nav-labels-ZepmMUSu.js +0 -22
  1409. package/dist/esm/unique-nav-labels-ZepmMUSu.js.map +0 -1
  1410. package/dist/esm/validation-D6nATCh8.js +0 -17
  1411. package/dist/esm/validation-D6nATCh8.js.map +0 -1
  1412. package/dist/esm/validation-DGQ9Zja2.js +0 -14
  1413. package/dist/esm/validation-DGQ9Zja2.js.map +0 -1
  1414. package/dist/esm/value-number-clamped-47tM199y.js +0 -24
  1415. package/dist/esm/value-number-clamped-47tM199y.js.map +0 -1
  1416. package/dist/esm/variant-class-name-BCcQYpIV.js +0 -16
  1417. package/dist/esm/variant-class-name-BCcQYpIV.js.map +0 -1
  1418. package/dist/esm/variant-quote-y0Z1TRdz.js +0 -37
  1419. package/dist/esm/variant-quote-y0Z1TRdz.js.map +0 -1
  1420. package/dist/kolibri/Alert-BP_7bRZF.js +0 -5
  1421. package/dist/kolibri/Alert-BP_7bRZF.js.map +0 -1
  1422. package/dist/kolibri/Collapsible-BpaQSoeN.js +0 -5
  1423. package/dist/kolibri/Collapsible-BpaQSoeN.js.map +0 -1
  1424. package/dist/kolibri/CustomSuggestionsOptionsGroup-86r-pE0e.js +0 -5
  1425. package/dist/kolibri/CustomSuggestionsOptionsGroup-86r-pE0e.js.map +0 -1
  1426. package/dist/kolibri/FieldControlStateWrapper-DF2tVpwY.js +0 -5
  1427. package/dist/kolibri/FieldControlStateWrapper-DF2tVpwY.js.map +0 -1
  1428. package/dist/kolibri/FormFieldStateWrapper-BWTMRKXT.js +0 -5
  1429. package/dist/kolibri/FormFieldStateWrapper-BWTMRKXT.js.map +0 -1
  1430. package/dist/kolibri/Heading-q2Ue3Ixd.js +0 -5
  1431. package/dist/kolibri/Heading-q2Ue3Ixd.js.map +0 -1
  1432. package/dist/kolibri/Input-DQJln-L5.js +0 -5
  1433. package/dist/kolibri/Input-DQJln-L5.js.map +0 -1
  1434. package/dist/kolibri/InputStateWrapper-CDDIvfo0.js +0 -5
  1435. package/dist/kolibri/InputStateWrapper-CDDIvfo0.js.map +0 -1
  1436. package/dist/kolibri/access-and-short-key-D734WtlX.js +0 -5
  1437. package/dist/kolibri/access-and-short-key-D734WtlX.js.map +0 -1
  1438. package/dist/kolibri/align-DxZmRFcp.js +0 -5
  1439. package/dist/kolibri/align-DxZmRFcp.js.map +0 -1
  1440. package/dist/kolibri/align-floating-elements-D5XJiLiU.js +0 -5
  1441. package/dist/kolibri/align-floating-elements-D5XJiLiU.js.map +0 -1
  1442. package/dist/kolibri/app-globals-UWioL0AL.js +0 -5
  1443. package/dist/kolibri/app-globals-UWioL0AL.js.map +0 -1
  1444. package/dist/kolibri/aria-expanded-hGdEA1jy.js +0 -5
  1445. package/dist/kolibri/aria-expanded-hGdEA1jy.js.map +0 -1
  1446. package/dist/kolibri/aria-labelledby-CEzR68x-.js +0 -5
  1447. package/dist/kolibri/aria-labelledby-CEzR68x-.js.map +0 -1
  1448. package/dist/kolibri/associated.controller-Bagx9pCw.js +0 -5
  1449. package/dist/kolibri/associated.controller-Bagx9pCw.js.map +0 -1
  1450. package/dist/kolibri/auto-complete-BbMivzAV.js +0 -5
  1451. package/dist/kolibri/auto-complete-BbMivzAV.js.map +0 -1
  1452. package/dist/kolibri/bem-registry-CWvl2xho.js +0 -5
  1453. package/dist/kolibri/bem-registry-CWvl2xho.js.map +0 -1
  1454. package/dist/kolibri/bootstrap-DPKvOz00.js +0 -5
  1455. package/dist/kolibri/bootstrap-DPKvOz00.js.map +0 -1
  1456. package/dist/kolibri/color-CAVnI0e-.js +0 -5
  1457. package/dist/kolibri/color-CAVnI0e-.js.map +0 -1
  1458. package/dist/kolibri/common-Cx_AGO_M.js +0 -5
  1459. package/dist/kolibri/common-Cx_AGO_M.js.map +0 -1
  1460. package/dist/kolibri/component-Dh0cPCxF.js +0 -5
  1461. package/dist/kolibri/component-Dh0cPCxF.js.map +0 -1
  1462. package/dist/kolibri/component-DvjvBJeK.js +0 -5
  1463. package/dist/kolibri/component-DvjvBJeK.js.map +0 -1
  1464. package/dist/kolibri/component-DzaT2WlJ.js +0 -5
  1465. package/dist/kolibri/component-DzaT2WlJ.js.map +0 -1
  1466. package/dist/kolibri/contrast-DlURrMX4.js +0 -5
  1467. package/dist/kolibri/contrast-DlURrMX4.js.map +0 -1
  1468. package/dist/kolibri/controller-Bdve6A-Q.js +0 -5
  1469. package/dist/kolibri/controller-Bdve6A-Q.js.map +0 -1
  1470. package/dist/kolibri/controller-CJmWOqQQ.js +0 -5
  1471. package/dist/kolibri/controller-CJmWOqQQ.js.map +0 -1
  1472. package/dist/kolibri/controller-DKPaX3Tu.js +0 -5
  1473. package/dist/kolibri/controller-DKPaX3Tu.js.map +0 -1
  1474. package/dist/kolibri/controller-DRE7PRMK.js +0 -5
  1475. package/dist/kolibri/controller-DRE7PRMK.js.map +0 -1
  1476. package/dist/kolibri/controller-icon-DekcIBGR.js +0 -5
  1477. package/dist/kolibri/controller-icon-DekcIBGR.js.map +0 -1
  1478. package/dist/kolibri/controller-osuRO7S2.js +0 -5
  1479. package/dist/kolibri/controller-osuRO7S2.js.map +0 -1
  1480. package/dist/kolibri/controller-xXHYiOzQ.js +0 -5
  1481. package/dist/kolibri/controller-xXHYiOzQ.js.map +0 -1
  1482. package/dist/kolibri/custom-class-DlT-QmWF.js +0 -5
  1483. package/dist/kolibri/custom-class-DlT-QmWF.js.map +0 -1
  1484. package/dist/kolibri/dev.utils-02Sl9bQo.js +0 -5
  1485. package/dist/kolibri/dev.utils-02Sl9bQo.js.map +0 -1
  1486. package/dist/kolibri/devtools-CTlVZVnW.js +0 -5
  1487. package/dist/kolibri/devtools-CTlVZVnW.js.map +0 -1
  1488. package/dist/kolibri/disabled-gyBUQRnY.js +0 -5
  1489. package/dist/kolibri/disabled-gyBUQRnY.js.map +0 -1
  1490. package/dist/kolibri/element-focus-CRwW4N4R.js +0 -5
  1491. package/dist/kolibri/element-focus-CRwW4N4R.js.map +0 -1
  1492. package/dist/kolibri/element-interaction-Bv-mPSBn.js +0 -5
  1493. package/dist/kolibri/element-interaction-Bv-mPSBn.js.map +0 -1
  1494. package/dist/kolibri/events-VVvk1win.js +0 -5
  1495. package/dist/kolibri/events-VVvk1win.js.map +0 -1
  1496. package/dist/kolibri/has-closer-B8w7bVjx.js +0 -5
  1497. package/dist/kolibri/has-closer-B8w7bVjx.js.map +0 -1
  1498. package/dist/kolibri/hide-label-6Bx1MH20.js +0 -5
  1499. package/dist/kolibri/hide-label-6Bx1MH20.js.map +0 -1
  1500. package/dist/kolibri/href-Dp4go7zq.js +0 -5
  1501. package/dist/kolibri/href-Dp4go7zq.js.map +0 -1
  1502. package/dist/kolibri/i18n-Br16IAnY.js +0 -5
  1503. package/dist/kolibri/i18n-Br16IAnY.js.map +0 -1
  1504. package/dist/kolibri/icons-oAzMYWgV.js +0 -5
  1505. package/dist/kolibri/icons-oAzMYWgV.js.map +0 -1
  1506. package/dist/kolibri/index-BQlHOxik.js +0 -6
  1507. package/dist/kolibri/index-BQlHOxik.js.map +0 -1
  1508. package/dist/kolibri/inline-DnwpECF8.js +0 -5
  1509. package/dist/kolibri/inline-DnwpECF8.js.map +0 -1
  1510. package/dist/kolibri/label-Fyi30H9j.js +0 -5
  1511. package/dist/kolibri/label-Fyi30H9j.js.map +0 -1
  1512. package/dist/kolibri/label-KTv-zMW0.js +0 -5
  1513. package/dist/kolibri/label-KTv-zMW0.js.map +0 -1
  1514. package/dist/kolibri/level-1jyaYIAE.js +0 -5
  1515. package/dist/kolibri/level-1jyaYIAE.js.map +0 -1
  1516. package/dist/kolibri/max-length-behavior-CpaNmMus.js +0 -5
  1517. package/dist/kolibri/max-length-behavior-CpaNmMus.js.map +0 -1
  1518. package/dist/kolibri/multiple-DqCQ-txe.js +0 -5
  1519. package/dist/kolibri/multiple-DqCQ-txe.js.map +0 -1
  1520. package/dist/kolibri/normalizers-m3s9sgmq.js +0 -5
  1521. package/dist/kolibri/normalizers-m3s9sgmq.js.map +0 -1
  1522. package/dist/kolibri/open-Dw4Y2dzo.js +0 -5
  1523. package/dist/kolibri/open-Dw4Y2dzo.js.map +0 -1
  1524. package/dist/kolibri/orientation-CjNmUJp-.js +0 -5
  1525. package/dist/kolibri/orientation-CjNmUJp-.js.map +0 -1
  1526. package/dist/kolibri/placeholder-DTOUrN5s.js +0 -5
  1527. package/dist/kolibri/placeholder-DTOUrN5s.js.map +0 -1
  1528. package/dist/kolibri/read-only-DUMeby7s.js +0 -5
  1529. package/dist/kolibri/read-only-DUMeby7s.js.map +0 -1
  1530. package/dist/kolibri/required-DFzRSWky.js +0 -5
  1531. package/dist/kolibri/required-DFzRSWky.js.map +0 -1
  1532. package/dist/kolibri/rows-htbnIG9G.js +0 -5
  1533. package/dist/kolibri/rows-htbnIG9G.js.map +0 -1
  1534. package/dist/kolibri/spell-check-BtaQyLZc.js +0 -5
  1535. package/dist/kolibri/spell-check-BtaQyLZc.js.map +0 -1
  1536. package/dist/kolibri/src-DkLxm4tr.js +0 -5
  1537. package/dist/kolibri/src-DkLxm4tr.js.map +0 -1
  1538. package/dist/kolibri/suggestions-DEcHprcz.js +0 -5
  1539. package/dist/kolibri/suggestions-DEcHprcz.js.map +0 -1
  1540. package/dist/kolibri/table-selection-DmmUo33G.js +0 -5
  1541. package/dist/kolibri/table-selection-DmmUo33G.js.map +0 -1
  1542. package/dist/kolibri/tooltip-align-mwhvx9nK.js +0 -5
  1543. package/dist/kolibri/tooltip-align-mwhvx9nK.js.map +0 -1
  1544. package/dist/kolibri/unique-nav-labels-ZepmMUSu.js +0 -5
  1545. package/dist/kolibri/unique-nav-labels-ZepmMUSu.js.map +0 -1
  1546. package/dist/kolibri/validation-D6nATCh8.js +0 -5
  1547. package/dist/kolibri/validation-D6nATCh8.js.map +0 -1
  1548. package/dist/kolibri/validation-DGQ9Zja2.js +0 -5
  1549. package/dist/kolibri/validation-DGQ9Zja2.js.map +0 -1
  1550. package/dist/kolibri/value-number-clamped-47tM199y.js +0 -5
  1551. package/dist/kolibri/value-number-clamped-47tM199y.js.map +0 -1
  1552. package/dist/kolibri/variant-class-name-BCcQYpIV.js +0 -5
  1553. package/dist/kolibri/variant-class-name-BCcQYpIV.js.map +0 -1
  1554. package/dist/kolibri/variant-quote-y0Z1TRdz.js +0 -5
  1555. package/dist/kolibri/variant-quote-y0Z1TRdz.js.map +0 -1
@@ -20,14 +20,6 @@ export class MeterController extends BaseController {
20
20
  this.watchOrientation(orientation);
21
21
  this.watchUnit(unit);
22
22
  this.watchValue(value);
23
- this.setState('liveValue', this.getRenderProp('value'));
24
- this.startLiveValueInterval();
25
- }
26
- destroy() {
27
- if (this.interval) {
28
- clearInterval(this.interval);
29
- this.interval = undefined;
30
- }
31
23
  }
32
24
  getMeterData() {
33
25
  return this.meterData;
@@ -95,13 +87,5 @@ export class MeterController extends BaseController {
95
87
  this.setRenderProp('value', v);
96
88
  }, { min: this.getRenderProp('min'), max: this.getRenderProp('max') });
97
89
  }
98
- startLiveValueInterval() {
99
- this.interval = setInterval(() => {
100
- const value = this.getRenderProp('value');
101
- if (this.getState('liveValue') !== value) {
102
- this.setState('liveValue', value);
103
- }
104
- }, 5000);
105
- }
106
90
  }
107
91
  //# sourceMappingURL=controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/meter/controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { clampedNumberValueProp, highProp, labelProp, lowProp, maxProp, minProp, optimumProp, orientationProp, unitProp } from '../../props';\nimport { BaseController } from '../base-controller';\nimport type { ControllerInterface, ResolvedInputProps, StateAccess } from '../generic-types';\nimport type { MeterApi } from './api';\nimport { meterPropsConfig } from './api';\n\ntype MeterData = {\n\thigh: number | undefined;\n\tlow: number | undefined;\n\toptimum: number | undefined;\n};\n\nexport class MeterController extends BaseController<MeterApi> implements ControllerInterface<MeterApi> {\n\tprivate interval?: ReturnType<typeof setInterval>;\n\tprivate meterData: MeterData = { high: undefined, low: undefined, optimum: undefined };\n\n\tpublic constructor(stateAccess: StateAccess<MeterApi>) {\n\t\tsuper(stateAccess, meterPropsConfig);\n\t}\n\n\tpublic componentWillLoad(props: ResolvedInputProps<MeterApi>): void {\n\t\tconst { high, label, low, max, min, optimum, orientation, unit, value } = props;\n\t\tthis.watchHigh(high);\n\t\tthis.watchLabel(label);\n\t\tthis.watchLow(low);\n\t\tthis.watchMax(max);\n\t\tthis.watchMin(min);\n\t\tthis.watchOptimum(optimum);\n\t\tthis.watchOrientation(orientation);\n\t\tthis.watchUnit(unit);\n\t\tthis.watchValue(value);\n\n\t\tthis.setState('liveValue', this.getRenderProp('value'));\n\t\tthis.startLiveValueInterval();\n\t}\n\n\tpublic destroy(): void {\n\t\tif (this.interval) {\n\t\t\tclearInterval(this.interval);\n\t\t\tthis.interval = undefined;\n\t\t}\n\t}\n\n\tpublic getMeterData(): MeterData {\n\t\treturn this.meterData;\n\t}\n\n\tpublic watchHigh(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.high = undefined;\n\t\t} else {\n\t\t\thighProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.high = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchLabel(value?: string): void {\n\t\tlabelProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('label', v);\n\t\t});\n\t}\n\n\tpublic watchLow(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.low = undefined;\n\t\t} else {\n\t\t\tlowProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.low = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchMax(value?: number): void {\n\t\tmaxProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('max', v);\n\t\t\tthis.watchValue(this.getRawProp('value'));\n\t\t});\n\t}\n\n\tpublic watchMin(value?: number): void {\n\t\tminProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('min', v);\n\t\t\tthis.watchValue(this.getRawProp('value'));\n\t\t});\n\t}\n\n\tpublic watchOptimum(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.optimum = undefined;\n\t\t} else {\n\t\t\toptimumProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.optimum = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchOrientation(value?: string): void {\n\t\torientationProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('orientation', v);\n\t\t});\n\t}\n\n\tpublic watchUnit(value?: string): void {\n\t\tunitProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('unit', v);\n\t\t});\n\t}\n\n\tpublic watchValue(value?: number): void {\n\t\tthis.setRawProp('value', value);\n\t\tclampedNumberValueProp.apply(\n\t\t\tvalue,\n\t\t\t(v) => {\n\t\t\t\tthis.setRenderProp('value', v);\n\t\t\t},\n\t\t\t{ min: this.getRenderProp('min'), max: this.getRenderProp('max') },\n\t\t);\n\t}\n\n\tprivate startLiveValueInterval(): void {\n\t\tthis.interval = setInterval(() => {\n\t\t\tconst value = this.getRenderProp('value');\n\t\t\tif (this.getState('liveValue') !== value) {\n\t\t\t\tthis.setState('liveValue', value);\n\t\t\t}\n\t\t}, 5000);\n\t}\n}\n"]}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/meter/controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { clampedNumberValueProp, highProp, labelProp, lowProp, maxProp, minProp, optimumProp, orientationProp, unitProp } from '../../props';\nimport { BaseController } from '../base-controller';\nimport type { ControllerInterface, ResolvedInputProps, StateAccess } from '../generic-types';\nimport type { MeterApi } from './api';\nimport { meterPropsConfig } from './api';\n\ntype MeterData = {\n\thigh: number | undefined;\n\tlow: number | undefined;\n\toptimum: number | undefined;\n};\n\nexport class MeterController extends BaseController<MeterApi> implements ControllerInterface<MeterApi> {\n\tprivate meterData: MeterData = { high: undefined, low: undefined, optimum: undefined };\n\n\tpublic constructor(stateAccess: StateAccess<MeterApi>) {\n\t\tsuper(stateAccess, meterPropsConfig);\n\t}\n\n\tpublic componentWillLoad(props: ResolvedInputProps<MeterApi>): void {\n\t\tconst { high, label, low, max, min, optimum, orientation, unit, value } = props;\n\t\tthis.watchHigh(high);\n\t\tthis.watchLabel(label);\n\t\tthis.watchLow(low);\n\t\tthis.watchMax(max);\n\t\tthis.watchMin(min);\n\t\tthis.watchOptimum(optimum);\n\t\tthis.watchOrientation(orientation);\n\t\tthis.watchUnit(unit);\n\t\tthis.watchValue(value);\n\t}\n\n\tpublic getMeterData(): MeterData {\n\t\treturn this.meterData;\n\t}\n\n\tpublic watchHigh(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.high = undefined;\n\t\t} else {\n\t\t\thighProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.high = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchLabel(value?: string): void {\n\t\tlabelProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('label', v);\n\t\t});\n\t}\n\n\tpublic watchLow(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.low = undefined;\n\t\t} else {\n\t\t\tlowProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.low = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchMax(value?: number): void {\n\t\tmaxProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('max', v);\n\t\t\tthis.watchValue(this.getRawProp('value'));\n\t\t});\n\t}\n\n\tpublic watchMin(value?: number): void {\n\t\tminProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('min', v);\n\t\t\tthis.watchValue(this.getRawProp('value'));\n\t\t});\n\t}\n\n\tpublic watchOptimum(value?: number): void {\n\t\tif (value === undefined) {\n\t\t\tthis.meterData.optimum = undefined;\n\t\t} else {\n\t\t\toptimumProp.apply(value, (v) => {\n\t\t\t\tthis.meterData.optimum = v;\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic watchOrientation(value?: string): void {\n\t\torientationProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('orientation', v);\n\t\t});\n\t}\n\n\tpublic watchUnit(value?: string): void {\n\t\tunitProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('unit', v);\n\t\t});\n\t}\n\n\tpublic watchValue(value?: number): void {\n\t\tthis.setRawProp('value', value);\n\t\tclampedNumberValueProp.apply(\n\t\t\tvalue,\n\t\t\t(v) => {\n\t\t\t\tthis.setRenderProp('value', v);\n\t\t\t},\n\t\t\t{ min: this.getRenderProp('min'), max: this.getRenderProp('max') },\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/skeleton/api.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAClC,QAAQ,EAAE,CAAC,QAAQ,CAAC;CACgB,CAAC","sourcesContent":["import { nameProp } from '../../props';\nimport type { ApiFromConfig, PropsConfigShape } from '../generic-types';\n\nexport const skeletonPropsConfig = {\n\trequired: [nameProp],\n} as const satisfies PropsConfigShape;\n\nexport type SkeletonApi = ApiFromConfig<\n\ttypeof skeletonPropsConfig,\n\t{\n\t\tCallbacks: {\n\t\t\tclick: () => void;\n\t\t};\n\t\tEmitters: {\n\t\t\tloaded: number;\n\t\t\trendered: void;\n\t\t};\n\t\tListeners: {\n\t\t\tkeydown: KeyboardEvent;\n\t\t};\n\t\tMethods: {\n\t\t\tfocus: () => void;\n\t\t\ttoggle: () => void;\n\t\t};\n\t\tRefs: {\n\t\t\tbutton: HTMLButtonElement;\n\t\t};\n\t\tStates: {\n\t\t\tcount: number;\n\t\t\tlabel: string;\n\t\t\tshow: boolean;\n\t\t};\n\t}\n>;\n"]}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/skeleton/api.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAClC,QAAQ,EAAE,CAAC,QAAQ,CAAC;CACgB,CAAC","sourcesContent":["import type { KolFocusOptions } from '../../../schema';\nimport { nameProp } from '../../props';\nimport type { ApiFromConfig, PropsConfigShape } from '../generic-types';\n\nexport const skeletonPropsConfig = {\n\trequired: [nameProp],\n} as const satisfies PropsConfigShape;\n\nexport type SkeletonApi = ApiFromConfig<\n\ttypeof skeletonPropsConfig,\n\t{\n\t\tCallbacks: {\n\t\t\tclick: () => void;\n\t\t};\n\t\tEmitters: {\n\t\t\tloaded: number;\n\t\t\trendered: void;\n\t\t};\n\t\tListeners: {\n\t\t\tkeydown: KeyboardEvent;\n\t\t};\n\t\tMethods: {\n\t\t\tfocus: (options?: KolFocusOptions) => void;\n\t\t\ttoggle: () => void;\n\t\t};\n\t\tRefs: {\n\t\t\tbutton: HTMLButtonElement;\n\t\t};\n\t\tStates: {\n\t\t\tcount: number;\n\t\t\tlabel: string;\n\t\t\tshow: boolean;\n\t\t};\n\t}\n>;\n"]}
@@ -2,14 +2,15 @@
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
4
  import { Log } from "../../../schema";
5
+ import { setFocus } from "../../../utils/element-focus";
6
+ import { createCtaRef } from "../../../utils/element-interaction";
5
7
  import { nameProp } from "../../props";
6
8
  import { BaseController } from "../base-controller";
7
- import { BaseWebComponent } from "../base-web-component";
8
- import { ClickButtonController } from "../click-button/controller";
9
9
  import { skeletonPropsConfig } from "./api";
10
10
  export class SkeletonController extends BaseController {
11
11
  constructor(stateAccess) {
12
12
  super(stateAccess, skeletonPropsConfig);
13
+ this.buttonRef = createCtaRef();
13
14
  this.onKeydown = (event) => {
14
15
  if (event.key === 'Escape') {
15
16
  console.log('Show should be toggled');
@@ -22,17 +23,13 @@ export class SkeletonController extends BaseController {
22
23
  this.setState('count', ((_b = (_a = this.getState) === null || _a === void 0 ? void 0 : _a.call(this, 'count')) !== null && _b !== void 0 ? _b : 0) + 1);
23
24
  };
24
25
  this.setButtonRef = (element) => {
25
- this.clickButtonCtrl.setButtonRef(element);
26
+ this.buttonRef(element);
26
27
  };
27
- this.clickButtonCtrl = new ClickButtonController(BaseWebComponent.stateLess);
28
28
  this.startLoadedEventInterval();
29
29
  }
30
30
  componentWillLoad(props) {
31
31
  const { name } = props;
32
32
  this.watchName(name);
33
- this.clickButtonCtrl.componentWillLoad({
34
- label: 'Click me',
35
- });
36
33
  }
37
34
  watchName(value) {
38
35
  nameProp.apply(value, (v) => {
@@ -43,8 +40,8 @@ export class SkeletonController extends BaseController {
43
40
  var _a, _b;
44
41
  this.setState('show', !((_b = (_a = this.getState) === null || _a === void 0 ? void 0 : _a.call(this, 'show')) !== null && _b !== void 0 ? _b : false));
45
42
  }
46
- focus() {
47
- return this.clickButtonCtrl.focus();
43
+ focus(options) {
44
+ void setFocus(this.buttonRef.el, options);
48
45
  }
49
46
  startLoadedEventInterval() {
50
47
  this.intervalId = setInterval(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/skeleton/controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { Log } from '../../../schema';\nimport { nameProp } from '../../props';\nimport { BaseController } from '../base-controller';\nimport { BaseWebComponent } from '../base-web-component';\nimport { ClickButtonController } from '../click-button/controller';\nimport type { ControllerInterface, ResolvedInputProps, StateAccess } from '../generic-types';\nimport type { SkeletonApi } from './api';\nimport { skeletonPropsConfig } from './api';\n\nexport class SkeletonController extends BaseController<SkeletonApi> implements ControllerInterface<SkeletonApi> {\n\tprivate readonly clickButtonCtrl: ClickButtonController;\n\tprivate intervalId?: ReturnType<typeof setTimeout>;\n\n\tpublic constructor(stateAccess: StateAccess<SkeletonApi>) {\n\t\tsuper(stateAccess, skeletonPropsConfig);\n\n\t\tthis.clickButtonCtrl = new ClickButtonController(BaseWebComponent.stateLess);\n\t\tthis.startLoadedEventInterval();\n\t}\n\n\tpublic componentWillLoad(props: ResolvedInputProps<SkeletonApi>): void {\n\t\tconst { name } = props;\n\t\tthis.watchName(name);\n\n\t\tthis.clickButtonCtrl.componentWillLoad({\n\t\t\tlabel: 'Click me',\n\t\t});\n\t}\n\n\tpublic watchName(value?: string): void {\n\t\tnameProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('name', v);\n\t\t});\n\t}\n\n\tpublic toggle(): void {\n\t\tthis.setState('show', !(this.getState?.('show') ?? false));\n\t}\n\n\tpublic onKeydown = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log('Show should be toggled');\n\t\t\tvoid this.toggle();\n\t\t}\n\t};\n\n\tpublic handleClick = (): void => {\n\t\tLog.debug('Button clicked, count should be increased');\n\t\tthis.setState('count', (this.getState?.('count') ?? 0) + 1);\n\t};\n\n\tpublic focus(): void {\n\t\treturn this.clickButtonCtrl.focus();\n\t}\n\n\tpublic setButtonRef = (element?: HTMLButtonElement): void => {\n\t\tthis.clickButtonCtrl.setButtonRef(element);\n\t};\n\n\tprivate startLoadedEventInterval(): void {\n\t\t// Emit loaded event every 2 seconds with current count value\n\t\tthis.intervalId = setInterval(() => {\n\t\t\tthis.emitLoaded(this.getState?.('count') ?? 0);\n\t\t}, 2000);\n\t}\n\n\tprivate emitLoaded(count: number): void {\n\t\t// This method will be used by the web component to emit the loaded event\n\t\t// The web component needs to call this method to actually emit the event\n\t\t// We use a callback approach to let the web component handle the emission\n\t\tif (this.onLoadedCallback) {\n\t\t\tthis.onLoadedCallback(count);\n\t\t}\n\t}\n\n\tprivate onLoadedCallback?: (count: number) => void;\n\n\tpublic setOnLoadedCallback(callback: (count: number) => void): void {\n\t\tthis.onLoadedCallback = callback;\n\t}\n\n\tpublic destroy(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t\tthis.intervalId = undefined;\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../src/internal/functional-components/skeleton/controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,OAAO,kBAAmB,SAAQ,cAA2B;IAIlE,YAAmB,WAAqC;QACvD,KAAK,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAJxB,cAAS,GAAG,YAAY,EAAqB,CAAC;QAuBxD,cAAS,GAAG,CAAC,KAAoB,EAAQ,EAAE;YACjD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAE5B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;gBACtC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,CAAC;QACF,CAAC,CAAC;QAEK,gBAAW,GAAG,GAAS,EAAE;;YAC/B,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAA,MAAA,IAAI,CAAC,QAAQ,qDAAG,OAAO,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC;QAMK,iBAAY,GAAG,CAAC,OAA2B,EAAQ,EAAE;YAC3D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC,CAAC;QArCD,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACjC,CAAC;IAEM,iBAAiB,CAAC,KAAsC;QAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAEM,SAAS,CAAC,KAAc;QAC9B,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YAC3B,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM;;QACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAA,MAAA,IAAI,CAAC,QAAQ,qDAAG,MAAM,CAAC,mCAAI,KAAK,CAAC,CAAC,CAAC;IAC5D,CAAC;IAeM,KAAK,CAAC,OAAyB;QACrC,KAAK,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAMO,wBAAwB;QAE/B,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;;YAClC,IAAI,CAAC,UAAU,CAAC,MAAA,MAAA,IAAI,CAAC,QAAQ,qDAAG,OAAO,CAAC,mCAAI,CAAC,CAAC,CAAC;QAChD,CAAC,EAAE,IAAI,CAAC,CAAC;IACV,CAAC;IAEO,UAAU,CAAC,KAAa;QAI/B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAIM,mBAAmB,CAAC,QAAiC;QAC3D,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IAClC,CAAC;IAEM,OAAO;QACb,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,CAAC;IACF,CAAC;CACD","sourcesContent":["import type { KolFocusOptions } from '../../../schema';\nimport { Log } from '../../../schema';\nimport { setFocus } from '../../../utils/element-focus';\nimport { createCtaRef } from '../../../utils/element-interaction';\nimport { nameProp } from '../../props';\nimport { BaseController } from '../base-controller';\nimport type { ControllerInterface, ResolvedInputProps, StateAccess } from '../generic-types';\nimport type { SkeletonApi } from './api';\nimport { skeletonPropsConfig } from './api';\n\nexport class SkeletonController extends BaseController<SkeletonApi> implements ControllerInterface<SkeletonApi> {\n\tprivate readonly buttonRef = createCtaRef<HTMLButtonElement>();\n\tprivate intervalId?: ReturnType<typeof setTimeout>;\n\n\tpublic constructor(stateAccess: StateAccess<SkeletonApi>) {\n\t\tsuper(stateAccess, skeletonPropsConfig);\n\t\tthis.startLoadedEventInterval();\n\t}\n\n\tpublic componentWillLoad(props: ResolvedInputProps<SkeletonApi>): void {\n\t\tconst { name } = props;\n\t\tthis.watchName(name);\n\t}\n\n\tpublic watchName(value?: string): void {\n\t\tnameProp.apply(value, (v) => {\n\t\t\tthis.setRenderProp('name', v);\n\t\t});\n\t}\n\n\tpublic toggle(): void {\n\t\tthis.setState('show', !(this.getState?.('show') ?? false));\n\t}\n\n\tpublic onKeydown = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log('Show should be toggled');\n\t\t\tvoid this.toggle();\n\t\t}\n\t};\n\n\tpublic handleClick = (): void => {\n\t\tLog.debug('Button clicked, count should be increased');\n\t\tthis.setState('count', (this.getState?.('count') ?? 0) + 1);\n\t};\n\n\tpublic focus(options?: KolFocusOptions): void {\n\t\tvoid setFocus(this.buttonRef.el, options);\n\t}\n\n\tpublic setButtonRef = (element?: HTMLButtonElement): void => {\n\t\tthis.buttonRef(element);\n\t};\n\n\tprivate startLoadedEventInterval(): void {\n\t\t// Emit loaded event every 2 seconds with current count value\n\t\tthis.intervalId = setInterval(() => {\n\t\t\tthis.emitLoaded(this.getState?.('count') ?? 0);\n\t\t}, 2000);\n\t}\n\n\tprivate emitLoaded(count: number): void {\n\t\t// This method will be used by the web component to emit the loaded event\n\t\t// The web component needs to call this method to actually emit the event\n\t\t// We use a callback approach to let the web component handle the emission\n\t\tif (this.onLoadedCallback) {\n\t\t\tthis.onLoadedCallback(count);\n\t\t}\n\t}\n\n\tprivate onLoadedCallback?: (count: number) => void;\n\n\tpublic setOnLoadedCallback(callback: (count: number) => void): void {\n\t\tthis.onLoadedCallback = callback;\n\t}\n\n\tpublic destroy(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t\tthis.intervalId = undefined;\n\t\t}\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/schema/components/image.ts"],"names":[],"mappings":"","sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { PropAlt, PropImageSizes, PropImageSource, PropImageSrcset, PropLoading } from '../props';\n\ntype RequiredProps = PropAlt & PropImageSource;\ntype OptionalProps = PropLoading & PropImageSizes & PropImageSrcset;\n\ntype RequiredStates = RequiredProps & PropLoading;\ntype OptionalStates = PropImageSizes & PropImageSrcset;\n\nexport type ImageProps = Generic.Element.Members<RequiredProps, OptionalProps>;\nexport type ImageStates = Generic.Element.Members<RequiredStates, OptionalStates>;\nexport type ImageAPI = Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates>;\n"]}
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/schema/components/image.ts"],"names":[],"mappings":"","sourcesContent":["import type { EventCallback } from '../types';\n\nexport type KoliBriImageEventCallbacks = {\n\tonError?: EventCallback<Event>;\n\tonLoad?: EventCallback<Event>;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"input-password.js","sourceRoot":"","sources":["../../../src/schema/components/input-password.ts"],"names":[],"mappings":"","sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tMsgPropType,\n\tPropAccessKey,\n\tPropAutoComplete,\n\tPropDisabled,\n\tPropHasCounter,\n\tPropHideLabel,\n\tPropHideMsg,\n\tPropHint,\n\tPropHorizontalIcons,\n\tPropId,\n\tPropLabelWithExpertSlot,\n\tPropMaxLengthBehavior,\n\tPropMsg,\n\tPropName,\n\tPropReadOnly,\n\tPropRequired,\n\tPropShortKey,\n\tPropSyncValueBySelector,\n\tPropTouched,\n\tPropVariantClassName,\n} from '../props';\nimport { PropVisibilityToggle } from '../props/visibility-toggle';\nimport type { InputTypeOnDefault, KoliBriHIcons, Stringified } from '../types';\nimport type { InternalButtonProps } from './button';\n\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\tmaxLength: number;\n\ton: InputTypeOnDefault;\n\tpattern: string;\n\tplaceholder: string;\n\tsmartButton: Stringified<InternalButtonProps>;\n\tvalue: string;\n\tmsg: Stringified<MsgPropType>;\n} & PropAccessKey &\n\tPropAutoComplete &\n\tPropDisabled &\n\tPropHasCounter &\n\tPropHideMsg &\n\tPropHideLabel &\n\tPropHint &\n\tPropHorizontalIcons &\n\tPropMaxLengthBehavior &\n\tPropName &\n\tPropReadOnly &\n\tPropRequired &\n\tPropShortKey &\n\tPropSyncValueBySelector &\n\tPropTouched &\n\tPropVariantClassName &\n\tPropVisibilityToggle;\n\ntype RequiredStates = {\n\tcurrentLength: number;\n\tcurrentLengthDebounced: number;\n\thasValue: boolean;\n} & PropId &\n\tPropHideMsg &\n\tPropLabelWithExpertSlot;\ntype OptionalStates = {\n\tmaxLength: number;\n\ton: InputTypeOnDefault;\n\tpattern: string;\n\tplaceholder: string;\n\tsmartButton: InternalButtonProps;\n\tvalue: string | null;\n} & PropAccessKey &\n\tPropAutoComplete &\n\tPropDisabled &\n\tPropHasCounter &\n\tPropHideLabel &\n\tPropHint &\n\tKoliBriHIcons &\n\tPropMaxLengthBehavior &\n\tPropMsg &\n\tPropName &\n\tPropReadOnly &\n\tPropRequired &\n\tPropShortKey &\n\tPropSyncValueBySelector &\n\tPropTouched &\n\tPropVariantClassName &\n\tPropVisibilityToggle;\n\nexport type InputPasswordProps = Generic.Element.Members<RequiredProps, OptionalProps>;\nexport type InputPasswordStates = Generic.Element.Members<RequiredStates, OptionalStates>;\nexport type InputPasswordWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\nexport type InputPasswordAPI = Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates>;\n"]}
1
+ {"version":3,"file":"input-password.js","sourceRoot":"","sources":["../../../src/schema/components/input-password.ts"],"names":[],"mappings":"","sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tMsgPropType,\n\tPropAccessKey,\n\tPropAutoComplete,\n\tPropDisabled,\n\tPropHasCounter,\n\tPropHideLabel,\n\tPropHideMsg,\n\tPropHint,\n\tPropHorizontalIcons,\n\tPropId,\n\tPropLabelWithExpertSlot,\n\tPropMaxLengthBehavior,\n\tPropMsg,\n\tPropName,\n\tPropReadOnly,\n\tPropRequired,\n\tPropShortKey,\n\tPropSyncValueBySelector,\n\tPropTouched,\n\tPropVariantClassName,\n} from '../props';\nimport type { PropVisibilityToggle } from '../props/visibility-toggle';\nimport type { InputTypeOnDefault, KoliBriHIcons, Stringified } from '../types';\nimport type { InternalButtonProps } from './button';\n\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\tmaxLength: number;\n\ton: InputTypeOnDefault;\n\tpattern: string;\n\tplaceholder: string;\n\tsmartButton: Stringified<InternalButtonProps>;\n\tvalue: string;\n\tmsg: Stringified<MsgPropType>;\n} & PropAccessKey &\n\tPropAutoComplete &\n\tPropDisabled &\n\tPropHasCounter &\n\tPropHideMsg &\n\tPropHideLabel &\n\tPropHint &\n\tPropHorizontalIcons &\n\tPropMaxLengthBehavior &\n\tPropName &\n\tPropReadOnly &\n\tPropRequired &\n\tPropShortKey &\n\tPropSyncValueBySelector &\n\tPropTouched &\n\tPropVariantClassName &\n\tPropVisibilityToggle;\n\ntype RequiredStates = {\n\tcurrentLength: number;\n\tcurrentLengthDebounced: number;\n\thasValue: boolean;\n} & PropId &\n\tPropHideMsg &\n\tPropLabelWithExpertSlot;\ntype OptionalStates = {\n\tmaxLength: number;\n\ton: InputTypeOnDefault;\n\tpattern: string;\n\tplaceholder: string;\n\tsmartButton: InternalButtonProps;\n\tvalue: string | null;\n} & PropAccessKey &\n\tPropAutoComplete &\n\tPropDisabled &\n\tPropHasCounter &\n\tPropHideLabel &\n\tPropHint &\n\tKoliBriHIcons &\n\tPropMaxLengthBehavior &\n\tPropMsg &\n\tPropName &\n\tPropReadOnly &\n\tPropRequired &\n\tPropShortKey &\n\tPropSyncValueBySelector &\n\tPropTouched &\n\tPropVariantClassName &\n\tPropVisibilityToggle;\n\nexport type InputPasswordProps = Generic.Element.Members<RequiredProps, OptionalProps>;\nexport type InputPasswordStates = Generic.Element.Members<RequiredStates, OptionalStates>;\nexport type InputPasswordWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\nexport type InputPasswordAPI = Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates>;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FocusableElement.js","sourceRoot":"","sources":["../../../src/schema/interfaces/FocusableElement.ts"],"names":[],"mappings":"","sourcesContent":["export interface FocusableElement {\n\tfocus(): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"FocusableElement.js","sourceRoot":"","sources":["../../../src/schema/interfaces/FocusableElement.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Scroll options for the {@link FocusableElement.focus} method.\n * Merges scroll-into-view options ({@link Element.scrollIntoView}).\n *\n * Note: `preventScroll` and `focusVisible` are always enabled internally for consistent focus behavior.\n * They are intentionally typed as `true` only: callers may omit them or explicitly opt in with `true`,\n * but `false` is not supported by this API contract.\n */\nexport type KolFocusOptions = {\n\t/** Prevents the browser from scrolling when focus is set — scroll is then handled manually. */\n\tpreventScroll?: true;\n\t/** Hints whether focus should be visible (e.g. focus ring). */\n\tfocusVisible?: true;\n} & ScrollIntoViewOptions & {\n\t\t/**\n\t\t * Callback invoked after focus and (if smooth scroll is requested) after scrolling settles.\n\t\t * Waits for smooth scroll completion only if `behavior: 'smooth'` is explicitly provided.\n\t\t */\n\t\tafterFocus?: () => void;\n\t};\n\nexport interface FocusableElement {\n\tfocus(options?: KolFocusOptions): Promise<void>;\n}\n"]}
@@ -173,7 +173,10 @@ export const mapBoolean2String = (value) => {
173
173
  export const mapStringOrBoolean2String = (value) => {
174
174
  return typeof value === 'string' ? value : mapBoolean2String(value);
175
175
  };
176
- const querySelectorShadow = (selector, rootNode) => {
176
+ const traverseShadowDom = (rootNode, onNode) => {
177
+ if (!rootNode) {
178
+ return;
179
+ }
177
180
  const visited = new Set();
178
181
  const queue = [rootNode];
179
182
  let index = 0;
@@ -183,8 +186,8 @@ const querySelectorShadow = (selector, rootNode) => {
183
186
  continue;
184
187
  }
185
188
  visited.add(current);
186
- if (current instanceof Element && current.matches(selector)) {
187
- return current;
189
+ if (onNode(current)) {
190
+ return;
188
191
  }
189
192
  const children = Array.from(current.children || []);
190
193
  for (let i = 0; i < children.length; i++) {
@@ -202,40 +205,26 @@ const querySelectorShadow = (selector, rootNode) => {
202
205
  }
203
206
  }
204
207
  }
205
- return null;
208
+ };
209
+ const querySelectorShadow = (selector, rootNode) => {
210
+ let result = null;
211
+ traverseShadowDom(rootNode, (current) => {
212
+ if (current instanceof Element && current.matches(selector)) {
213
+ result = current;
214
+ return true;
215
+ }
216
+ return false;
217
+ });
218
+ return result;
206
219
  };
207
220
  const querySelectorAllShadow = (selector, rootNode) => {
208
- const visited = new Set();
209
221
  const results = [];
210
- const resultSet = new Set();
211
- const queue = [rootNode];
212
- let index = 0;
213
- while (index < queue.length) {
214
- const current = queue[index++];
215
- if (visited.has(current)) {
216
- continue;
217
- }
218
- visited.add(current);
219
- if (current instanceof Element && current.matches(selector) && !resultSet.has(current)) {
222
+ traverseShadowDom(rootNode, (current) => {
223
+ if (current instanceof Element && current.matches(selector)) {
220
224
  results.push(current);
221
- resultSet.add(current);
222
- }
223
- const children = Array.from(current.children || []);
224
- for (let i = 0; i < children.length; i++) {
225
- queue.push(children[i]);
226
- }
227
- if (current instanceof HTMLElement && current.shadowRoot) {
228
- queue.push(current.shadowRoot);
229
- }
230
- if (current instanceof HTMLSlotElement) {
231
- const assigned = current.assignedNodes({ flatten: true });
232
- for (let i = 0; i < assigned.length; i++) {
233
- if (assigned[i] instanceof Element) {
234
- queue.push(assigned[i]);
235
- }
236
- }
237
225
  }
238
- }
226
+ return false;
227
+ });
239
228
  return results;
240
229
  };
241
230
  export const koliBriQuerySelector = (selector, node) => querySelectorShadow(selector, node || getDocument());
@@ -1 +1 @@
1
- {"version":3,"file":"prop.validators.js","sourceRoot":"","sources":["../../../src/schema/utils/prop.validators.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport { getCssStyle, patchTheme, patchThemeTag } from 'adopted-style-sheets';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\n\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\nimport type { Stringified } from '../types/common';\nimport { devHint } from './a11y.tipps';\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\t// event.preventDefault(); /* WHY? */\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\nexport type SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tconst nextHooks = component.nextHooks.get(propName);\n\tif (nextHooks instanceof Map === false) {\n\t\tcomponent.nextHooks.set(propName, new Map());\n\t}\n\tif (typeof hooks.afterPatch === 'function') {\n\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t}\n\tif (typeof hooks.beforePatch === 'function') {\n\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t}\n\tcomponent.nextState.set(propName, value);\n\t/**\n\t * Muss erst einmal in sync bleiben, da sonst der\n\t * Tooltip nicht korrekt ausgerichtet wird.\n\t */\n\t// if (component.hydrated === true || !isTestMode()) {\n\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t// component.timeout = setTimeout(() => {\n\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t// \tpatchState(component);\n\t// }, 50);\n\t// } else {\n\tpatchState(component);\n\t// }\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] The property value: (${value as string}) for '${propName}' is not valid. Allowed values are: ${Array.from(\n\t\t\trequiredGeneric,\n\t\t).join(', ')}`,\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {},\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if (value === undefined && options.required !== true && validationFunction(options.defaultValue as T)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions,\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions,\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {},\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t} catch {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ The schema for the property (_options) is not valid. The value will not be changed.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ The schema for the property (_options) is not valid. The value will not be changed.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: String array (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ The JSON could not be converted to a string. A stringifiable JSON is expected.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ The JSON string could not be parsed. Make sure that single quotes in the text are escaped (&#8216;).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nconst querySelectorShadow = <T extends Element>(selector: string, rootNode: Document | HTMLElement | ShadowRoot): T | null => {\n\tconst visited = new Set<Node>();\n\tconst queue: ParentNode[] = [rootNode];\n\tlet index = 0;\n\twhile (index < queue.length) {\n\t\tconst current = queue[index++];\n\t\tif (visited.has(current)) {\n\t\t\tcontinue;\n\t\t}\n\t\tvisited.add(current);\n\t\tif (current instanceof Element && current.matches(selector)) {\n\t\t\treturn current as T;\n\t\t}\n\t\tconst children = Array.from(current.children || []);\n\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\tqueue.push(children[i]);\n\t\t}\n\t\tif (current instanceof HTMLElement && current.shadowRoot) {\n\t\t\tqueue.push(current.shadowRoot);\n\t\t}\n\t\tif (current instanceof HTMLSlotElement) {\n\t\t\tconst assigned = current.assignedNodes({ flatten: true });\n\t\t\tfor (let i = 0; i < assigned.length; i++) {\n\t\t\t\tif (assigned[i] instanceof Element) {\n\t\t\t\t\tqueue.push(assigned[i] as HTMLElement);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n};\n\nconst querySelectorAllShadow = <T extends Element>(selector: string, rootNode: Document | HTMLElement | ShadowRoot): T[] => {\n\tconst visited = new Set<Node>();\n\tconst results: T[] = [];\n\tconst resultSet = new Set<Element>();\n\tconst queue: ParentNode[] = [rootNode];\n\tlet index = 0;\n\twhile (index < queue.length) {\n\t\tconst current = queue[index++];\n\t\tif (visited.has(current)) {\n\t\t\tcontinue;\n\t\t}\n\t\tvisited.add(current);\n\t\tif (current instanceof Element && current.matches(selector) && !resultSet.has(current)) {\n\t\t\tresults.push(current as T);\n\t\t\tresultSet.add(current);\n\t\t}\n\t\tconst children = Array.from(current.children || []);\n\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\tqueue.push(children[i]);\n\t\t}\n\t\tif (current instanceof HTMLElement && current.shadowRoot) {\n\t\t\tqueue.push(current.shadowRoot);\n\t\t}\n\t\tif (current instanceof HTMLSlotElement) {\n\t\t\tconst assigned = current.assignedNodes({ flatten: true });\n\t\t\tfor (let i = 0; i < assigned.length; i++) {\n\t\t\t\tif (assigned[i] instanceof Element) {\n\t\t\t\t\tqueue.push(assigned[i] as HTMLElement);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn results;\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelectorShadow<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAllShadow<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly getCssStyle = getCssStyle;\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"]}
1
+ {"version":3,"file":"prop.validators.js","sourceRoot":"","sources":["../../../src/schema/utils/prop.validators.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport { getCssStyle, patchTheme, patchThemeTag } from 'adopted-style-sheets';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\n\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\nimport type { Stringified } from '../types/common';\nimport { devHint } from './a11y.tipps';\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\t// event.preventDefault(); /* WHY? */\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\nexport type SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tconst nextHooks = component.nextHooks.get(propName);\n\tif (nextHooks instanceof Map === false) {\n\t\tcomponent.nextHooks.set(propName, new Map());\n\t}\n\tif (typeof hooks.afterPatch === 'function') {\n\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t}\n\tif (typeof hooks.beforePatch === 'function') {\n\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t}\n\tcomponent.nextState.set(propName, value);\n\t/**\n\t * Muss erst einmal in sync bleiben, da sonst der\n\t * Tooltip nicht korrekt ausgerichtet wird.\n\t */\n\t// if (component.hydrated === true || !isTestMode()) {\n\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t// component.timeout = setTimeout(() => {\n\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t// \tpatchState(component);\n\t// }, 50);\n\t// } else {\n\tpatchState(component);\n\t// }\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] The property value: (${value as string}) for '${propName}' is not valid. Allowed values are: ${Array.from(\n\t\t\trequiredGeneric,\n\t\t).join(', ')}`,\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {},\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if (value === undefined && options.required !== true && validationFunction(options.defaultValue as T)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions,\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions,\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {},\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t} catch {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ The schema for the property (_options) is not valid. The value will not be changed.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ The schema for the property (_options) is not valid. The value will not be changed.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: String array (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ The JSON could not be converted to a string. A stringifiable JSON is expected.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ The JSON string could not be parsed. Make sure that single quotes in the text are escaped (&#8216;).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\n/**\n * Traverses the DOM including shadow roots and slotted elements via BFS.\n * `onNode` is called once per node; returning `true` stops traversal early.\n */\nconst traverseShadowDom = (rootNode: ParentNode, onNode: (node: ParentNode) => boolean): void => {\n\tif (!rootNode) {\n\t\treturn;\n\t}\n\tconst visited = new Set<Node>();\n\tconst queue: ParentNode[] = [rootNode];\n\tlet index = 0;\n\twhile (index < queue.length) {\n\t\tconst current = queue[index++];\n\t\tif (visited.has(current)) {\n\t\t\tcontinue;\n\t\t}\n\t\tvisited.add(current);\n\t\tif (onNode(current)) {\n\t\t\treturn;\n\t\t}\n\t\tconst children = Array.from(current.children || []);\n\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\tqueue.push(children[i]);\n\t\t}\n\t\tif (current instanceof HTMLElement && current.shadowRoot) {\n\t\t\tqueue.push(current.shadowRoot);\n\t\t}\n\t\tif (current instanceof HTMLSlotElement) {\n\t\t\tconst assigned = current.assignedNodes({ flatten: true });\n\t\t\tfor (let i = 0; i < assigned.length; i++) {\n\t\t\t\tif (assigned[i] instanceof Element) {\n\t\t\t\t\tqueue.push(assigned[i] as HTMLElement);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nconst querySelectorShadow = <T extends Element>(selector: string, rootNode: ParentNode): T | null => {\n\tlet result: T | null = null;\n\ttraverseShadowDom(rootNode, (current) => {\n\t\tif (current instanceof Element && current.matches(selector)) {\n\t\t\tresult = current as T;\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t});\n\treturn result;\n};\n\nconst querySelectorAllShadow = <T extends Element>(selector: string, rootNode: ParentNode): T[] => {\n\tconst results: T[] = [];\n\ttraverseShadowDom(rootNode, (current) => {\n\t\tif (current instanceof Element && current.matches(selector)) {\n\t\t\tresults.push(current as T);\n\t\t}\n\t\treturn false;\n\t});\n\treturn results;\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelectorShadow<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAllShadow<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly getCssStyle = getCssStyle;\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"]}
@@ -1,8 +1,52 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
+ import { __rest } from "tslib";
4
5
  import { waitForThemed } from "./element-themed";
5
6
  const MAX_FOCUS_ATTEMPTS = 10;
7
+ function waitForElementInViewport(element, timeoutMs = 2000) {
8
+ return new Promise((resolve) => {
9
+ let resolved = false;
10
+ let observer;
11
+ let removeScrollEndListener;
12
+ const done = () => {
13
+ if (resolved) {
14
+ return;
15
+ }
16
+ resolved = true;
17
+ clearTimeout(timeoutId);
18
+ removeScrollEndListener === null || removeScrollEndListener === void 0 ? void 0 : removeScrollEndListener();
19
+ removeScrollEndListener = undefined;
20
+ observer === null || observer === void 0 ? void 0 : observer.disconnect();
21
+ resolve();
22
+ };
23
+ const timeoutId = setTimeout(done, timeoutMs);
24
+ if (typeof window !== 'undefined' && 'onscrollend' in window) {
25
+ const handleScrollEnd = (event) => {
26
+ const target = event.target;
27
+ if (!(target instanceof Node) || !target.contains(element)) {
28
+ return;
29
+ }
30
+ done();
31
+ };
32
+ document.addEventListener('scrollend', handleScrollEnd, { capture: true });
33
+ removeScrollEndListener = () => {
34
+ document.removeEventListener('scrollend', handleScrollEnd, { capture: true });
35
+ };
36
+ return;
37
+ }
38
+ if (typeof IntersectionObserver === 'undefined') {
39
+ done();
40
+ return;
41
+ }
42
+ observer = new IntersectionObserver((entries) => {
43
+ if (entries.some((entry) => entry.isIntersecting)) {
44
+ done();
45
+ }
46
+ }, { threshold: 0 });
47
+ observer.observe(element);
48
+ });
49
+ }
6
50
  export async function delegateFocus(host, callback) {
7
51
  try {
8
52
  if (!host.hasAttribute('data-themed')) {
@@ -21,14 +65,33 @@ function isActiveElement(element) {
21
65
  }
22
66
  return document.activeElement === element;
23
67
  }
24
- export async function setFocus(element) {
68
+ const FOCUS_OPTIONS = {
69
+ preventScroll: true,
70
+ };
71
+ export async function setFocus(element, options) {
72
+ if (!element) {
73
+ return;
74
+ }
75
+ const _a = options !== null && options !== void 0 ? options : {}, { afterFocus } = _a, scrollOptions = __rest(_a, ["afterFocus"]);
76
+ const hasScrollOptions = options && ('behavior' in scrollOptions || 'block' in scrollOptions || 'inline' in scrollOptions);
25
77
  let attempts = 0;
26
78
  do {
27
79
  if (element) {
28
- element.focus();
80
+ element.focus(FOCUS_OPTIONS);
29
81
  }
30
82
  await new Promise((r) => requestAnimationFrame(r));
31
83
  attempts++;
32
84
  } while (!isActiveElement(element) && attempts < MAX_FOCUS_ATTEMPTS);
85
+ const focused = isActiveElement(element);
86
+ if (hasScrollOptions) {
87
+ const scrollIntoViewOptions = Object.assign(Object.assign({}, scrollOptions), { behavior: scrollOptions.behavior });
88
+ element.scrollIntoView(scrollIntoViewOptions);
89
+ }
90
+ if (afterFocus && focused) {
91
+ if (hasScrollOptions && scrollOptions.behavior === 'smooth') {
92
+ await waitForElementInViewport(element);
93
+ }
94
+ afterFocus();
95
+ }
33
96
  }
34
97
  //# sourceMappingURL=element-focus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"element-focus.js","sourceRoot":"","sources":["../../src/utils/element-focus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAU9B,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB,EAAE,QAA6B;IACnF,IAAI,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;YACvC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,QAAQ,EAAE,CAAC;IAClB,CAAC;IAAC,WAAM,CAAC;QACR,MAAM,IAAI,KAAK,CACd,6JAA6J,CAC7J,CAAC;IACH,CAAC;AACF,CAAC;AASD,SAAS,eAAe,CAAC,OAAoB;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,IAAI,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,aAAa,KAAK,OAAO,CAAC;IACvC,CAAC;IACD,OAAO,QAAQ,CAAC,aAAa,KAAK,OAAO,CAAC;AAC3C,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAoB;IAClD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,GAAG,CAAC;QACH,IAAI,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,QAAQ,EAAE,CAAC;IACZ,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,QAAQ,GAAG,kBAAkB,EAAE;AACtE,CAAC","sourcesContent":["import { waitForThemed } from './element-themed';\n\nconst MAX_FOCUS_ATTEMPTS = 10;\n\n/**\n * Delegates focus after the component is themed and ready.\n * Waits for the `data-themed` attribute on the host element before invoking the callback.\n *\n * @param host - The Stencil host element\n * @param callback - Async function that applies focus to the desired inner element\n * @throws {Error} If theming times out or the callback fails\n */\nexport async function delegateFocus(host: HTMLElement, callback: () => Promise<void>): Promise<void> {\n\ttry {\n\t\tif (!host.hasAttribute('data-themed')) {\n\t\t\tawait waitForThemed(host);\n\t\t}\n\t\tawait callback();\n\t} catch {\n\t\tthrow new Error(\n\t\t\t`The interactive element inside the KoliBri web component could not be focused. Try calling the focus method on the web component after a short delay again.`,\n\t\t);\n\t}\n}\n\n/**\n * Checks whether the given element is currently the active element.\n * Handles elements inside a Shadow DOM by querying the shadow root's `activeElement`\n * instead of `document.activeElement`, which only reflects the shadow host in that case.\n *\n * @param element - The element to check\n */\nfunction isActiveElement(element: HTMLElement): boolean {\n\tconst root = element.getRootNode();\n\tif (root instanceof ShadowRoot) {\n\t\treturn root.activeElement === element;\n\t}\n\treturn document.activeElement === element;\n}\n\n/**\n * Attempts to focus the given element on each animation frame until\n * it becomes the active element or the maximum number of attempts is reached.\n * Uses {@link isActiveElement} to correctly detect focus inside Shadow DOM.\n *\n * @param element - The element to focus\n * @see MAX_FOCUS_ATTEMPTS\n */\nexport async function setFocus(element: HTMLElement): Promise<void> {\n\tlet attempts = 0;\n\tdo {\n\t\tif (element) {\n\t\t\telement.focus();\n\t\t}\n\t\tawait new Promise((r) => requestAnimationFrame(r));\n\t\tattempts++;\n\t} while (!isActiveElement(element) && attempts < MAX_FOCUS_ATTEMPTS);\n}\n"]}
1
+ {"version":3,"file":"element-focus.js","sourceRoot":"","sources":["../../src/utils/element-focus.ts"],"names":[],"mappings":"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","sourcesContent":["import type { KolFocusOptions } from '../schema';\nimport { waitForThemed } from './element-themed';\n\nconst MAX_FOCUS_ATTEMPTS = 10;\n\n/**\n * Waits for scroll completion affecting the given element.\n * Uses the native `scrollend` event when available and falls back to viewport\n * intersection detection via {@link IntersectionObserver}.\n * A safety timeout guarantees the promise always resolves.\n *\n * @param element - The element to observe\n * @param timeoutMs - Maximum time to wait before resolving regardless of visibility (default 2000 ms)\n */\nfunction waitForElementInViewport(element: HTMLElement, timeoutMs = 2000): Promise<void> {\n\treturn new Promise<void>((resolve) => {\n\t\tlet resolved = false;\n\t\tlet observer: IntersectionObserver | undefined;\n\t\tlet removeScrollEndListener: (() => void) | undefined;\n\n\t\tconst done = () => {\n\t\t\tif (resolved) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresolved = true;\n\t\t\tclearTimeout(timeoutId);\n\t\t\tremoveScrollEndListener?.();\n\t\t\tremoveScrollEndListener = undefined;\n\t\t\tobserver?.disconnect();\n\t\t\tresolve();\n\t\t};\n\n\t\tconst timeoutId = setTimeout(done, timeoutMs);\n\n\t\tif (typeof window !== 'undefined' && 'onscrollend' in window) {\n\t\t\tconst handleScrollEnd = (event: Event): void => {\n\t\t\t\tconst target = event.target;\n\t\t\t\tif (!(target instanceof Node) || !target.contains(element)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tdone();\n\t\t\t};\n\n\t\t\tdocument.addEventListener('scrollend', handleScrollEnd, { capture: true });\n\t\t\tremoveScrollEndListener = () => {\n\t\t\t\tdocument.removeEventListener('scrollend', handleScrollEnd, { capture: true });\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tif (typeof IntersectionObserver === 'undefined') {\n\t\t\tdone();\n\t\t\treturn;\n\t\t}\n\n\t\tobserver = new IntersectionObserver(\n\t\t\t(entries) => {\n\t\t\t\tif (entries.some((entry) => entry.isIntersecting)) {\n\t\t\t\t\tdone();\n\t\t\t\t}\n\t\t\t},\n\t\t\t{ threshold: 0 },\n\t\t);\n\n\t\tobserver.observe(element);\n\t});\n}\n\n/**\n * Delegates focus after the component is themed and ready.\n * Waits for the `data-themed` attribute on the host element before invoking the callback.\n *\n * @param host - The Stencil host element\n * @param callback - Async function that applies focus to the desired inner element\n * @throws {Error} If theming times out or the callback fails\n */\nexport async function delegateFocus(host: HTMLElement, callback: () => Promise<void>): Promise<void> {\n\ttry {\n\t\tif (!host.hasAttribute('data-themed')) {\n\t\t\tawait waitForThemed(host);\n\t\t}\n\t\tawait callback();\n\t} catch {\n\t\tthrow new Error(\n\t\t\t`The interactive element inside the KoliBri web component could not be focused. Try calling the focus method on the web component after a short delay again.`,\n\t\t);\n\t}\n}\n\n/**\n * Checks whether the given element is currently the active element.\n * Handles elements inside a Shadow DOM by querying the shadow root's `activeElement`\n * instead of `document.activeElement`, which only reflects the shadow host in that case.\n *\n * @param element - The element to check\n */\nfunction isActiveElement(element: HTMLElement): boolean {\n\tconst root = element.getRootNode();\n\tif (root instanceof ShadowRoot) {\n\t\treturn root.activeElement === element;\n\t}\n\treturn document.activeElement === element;\n}\n\nconst FOCUS_OPTIONS = {\n\tpreventScroll: true,\n} satisfies FocusOptions;\n\n/**\n * Attempts to focus the given element on each animation frame until\n * it becomes the active element or the maximum number of attempts is reached.\n * Uses {@link isActiveElement} to correctly detect focus inside Shadow DOM.\n *\n * When `options` are provided the element is scrolled into view using the supplied\n * {@link ScrollIntoViewOptions} (preventing the browser's default scroll triggered by\n * `focus()` to avoid a double-scroll). If `options.afterFocus` is set, the callback is\n * invoked after the element is focused and – for smooth-scroll transitions – after\n * scrolling settles (`scrollend`, with {@link IntersectionObserver} fallback).\n *\n * @param element - The element to focus\n * @param options - Optional scroll behaviour and completion callback\n * @see MAX_FOCUS_ATTEMPTS\n */\nexport async function setFocus(element: HTMLElement | undefined | null, options?: KolFocusOptions): Promise<void> {\n\tif (!element) {\n\t\treturn;\n\t}\n\tconst { afterFocus, ...scrollOptions } = options ?? {};\n\tconst hasScrollOptions = options && ('behavior' in scrollOptions || 'block' in scrollOptions || 'inline' in scrollOptions);\n\n\tlet attempts = 0;\n\tdo {\n\t\tif (element) {\n\t\t\telement.focus(FOCUS_OPTIONS);\n\t\t}\n\t\tawait new Promise((r) => requestAnimationFrame(r));\n\t\tattempts++;\n\t} while (!isActiveElement(element) && attempts < MAX_FOCUS_ATTEMPTS);\n\n\tconst focused = isActiveElement(element);\n\n\tif (hasScrollOptions) {\n\t\tconst scrollIntoViewOptions: ScrollIntoViewOptions = { ...scrollOptions, behavior: scrollOptions.behavior };\n\t\telement.scrollIntoView(scrollIntoViewOptions);\n\t}\n\n\tif (afterFocus && focused) {\n\t\tif (hasScrollOptions && scrollOptions.behavior === 'smooth') {\n\t\t\tawait waitForElementInViewport(element);\n\t\t}\n\t\tafterFocus();\n\t}\n}\n"]}
@@ -18,10 +18,19 @@ function makeMethodDecorator(fn) {
18
18
  return descriptor;
19
19
  };
20
20
  }
21
+ function makeFocusDecorator(fn) {
22
+ return (_target, _key, descriptor) => {
23
+ descriptor.value = async function (options) {
24
+ return fn(this, options);
25
+ };
26
+ return descriptor;
27
+ };
28
+ }
21
29
  export function directFocus(refPropName) {
22
- return makeMethodDecorator((self) => {
23
- const element = self[refPropName].el;
24
- return element ? setFocus(element) : Promise.resolve();
30
+ return makeFocusDecorator((self, options) => {
31
+ var _a;
32
+ const element = (_a = self[refPropName]) === null || _a === void 0 ? void 0 : _a.el;
33
+ return element ? setFocus(element, options) : Promise.resolve();
25
34
  });
26
35
  }
27
36
  export function directClick(refPropName) {
@@ -31,10 +40,23 @@ export function directClick(refPropName) {
31
40
  });
32
41
  }
33
42
  export function delegateFocus(refPropName) {
34
- return makeMethodDecorator((self) => delegateFocusImpl(self['host'], () => {
35
- const element = self[refPropName].el;
36
- return element ? setFocus(element) : Promise.resolve();
37
- }));
43
+ return makeFocusDecorator((self, options) => {
44
+ const host = self['host'];
45
+ if (!host)
46
+ return Promise.resolve();
47
+ return delegateFocusImpl(host, () => {
48
+ var _a;
49
+ const element = (_a = self[refPropName]) === null || _a === void 0 ? void 0 : _a.el;
50
+ return element ? setFocus(element, options) : Promise.resolve();
51
+ });
52
+ });
53
+ }
54
+ export function ctrlFocus(ctrlPropName) {
55
+ return makeFocusDecorator(async (self, options) => {
56
+ var _a;
57
+ const ctrl = self[ctrlPropName];
58
+ await ((_a = ctrl === null || ctrl === void 0 ? void 0 : ctrl.focus) === null || _a === void 0 ? void 0 : _a.call(ctrl, options));
59
+ });
38
60
  }
39
61
  export function delegateClick(refPropName) {
40
62
  return makeMethodDecorator((self) => delegateClickImpl(self['host'], () => {