@public-ui/components 4.3.0-rc.1 → 4.3.0-rc.2

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 (1315) 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/copy-assets.mjs +93 -0
  7. package/custom-elements.json +86 -2
  8. package/dist/cjs/{Alert-DGeuWGwx.js → Alert-sCyOqN4Y.js} +7 -7
  9. package/dist/cjs/{Alert-DGeuWGwx.js.map → Alert-sCyOqN4Y.js.map} +1 -1
  10. package/dist/cjs/{Collapsible-D5MJpSsb.js → Collapsible-CXL7ivPf.js} +5 -5
  11. package/dist/cjs/{Collapsible-D5MJpSsb.js.map → Collapsible-CXL7ivPf.js.map} +1 -1
  12. package/dist/cjs/{CustomSuggestionsOptionsGroup-CXqRxSlV.js → CustomSuggestionsOptionsGroup-IZUE2a0s.js} +3 -3
  13. package/dist/cjs/{CustomSuggestionsOptionsGroup-CXqRxSlV.js.map → CustomSuggestionsOptionsGroup-IZUE2a0s.js.map} +1 -1
  14. package/dist/cjs/{FieldControlStateWrapper-9AbnJdJw.js → FieldControlStateWrapper-BO2aCnw8.js} +10 -10
  15. package/dist/cjs/{FieldControlStateWrapper-9AbnJdJw.js.map → FieldControlStateWrapper-BO2aCnw8.js.map} +1 -1
  16. package/dist/cjs/{FormFieldStateWrapper-D8PA3SkL.js → FormFieldStateWrapper-6k6Tq8hj.js} +37 -26
  17. package/dist/cjs/FormFieldStateWrapper-6k6Tq8hj.js.map +1 -0
  18. package/dist/cjs/{Heading-D9SmGbfD.js → Heading-B6Xi_fyv.js} +3 -3
  19. package/dist/cjs/{Heading-D9SmGbfD.js.map → Heading-B6Xi_fyv.js.map} +1 -1
  20. package/dist/cjs/{Input-7dreufF0.js → Input-C1rCVtkO.js} +5 -5
  21. package/dist/cjs/{Input-7dreufF0.js.map → Input-C1rCVtkO.js.map} +1 -1
  22. package/dist/cjs/{InputStateWrapper-ntE05AJl.js → InputStateWrapper-CpejkP8n.js} +6 -6
  23. package/dist/cjs/{InputStateWrapper-ntE05AJl.js.map → InputStateWrapper-CpejkP8n.js.map} +1 -1
  24. package/dist/cjs/{app-globals-DS0A1y3l.js → app-globals-DY0OQlRq.js} +4 -4
  25. package/dist/cjs/{app-globals-DS0A1y3l.js.map → app-globals-DY0OQlRq.js.map} +1 -1
  26. package/dist/cjs/aria-details-BmkDULud.js +26 -0
  27. package/dist/cjs/aria-details-BmkDULud.js.map +1 -0
  28. package/dist/cjs/{aria-labelledby-BhnM3OnL.js → aria-labelledby-B9XsjpBQ.js} +3 -19
  29. package/dist/cjs/aria-labelledby-B9XsjpBQ.js.map +1 -0
  30. package/dist/cjs/aria-labelledby-BcORen6I.js +26 -0
  31. package/dist/cjs/aria-labelledby-BcORen6I.js.map +1 -0
  32. package/dist/cjs/{associated.controller-CUvZCmFF.js → associated.controller-CszW50pZ.js} +9 -3
  33. package/dist/cjs/associated.controller-CszW50pZ.js.map +1 -0
  34. package/dist/cjs/{variant-quote-DUWZtljE.js → base-web-component-BJNHmpIo.js} +10 -10
  35. package/dist/cjs/base-web-component-BJNHmpIo.js.map +1 -0
  36. package/dist/cjs/{bem-registry-D9uDM1GJ.js → bem-registry-bkUwdl0m.js} +5 -2
  37. package/dist/cjs/bem-registry-bkUwdl0m.js.map +1 -0
  38. package/dist/cjs/{bootstrap-De2npoa_.js → bootstrap-C8choj80.js} +3 -3
  39. package/dist/cjs/{bootstrap-De2npoa_.js.map → bootstrap-C8choj80.js.map} +1 -1
  40. package/dist/cjs/{component-BpTg8PCv.js → component-D25hbRHL.js} +4 -4
  41. package/dist/cjs/{component-BpTg8PCv.js.map → component-D25hbRHL.js.map} +1 -1
  42. package/dist/cjs/{component-BEcrKHc2.js → component-D40K1uIa.js} +5 -5
  43. package/dist/cjs/{component-BEcrKHc2.js.map → component-D40K1uIa.js.map} +1 -1
  44. package/dist/cjs/{component-DA5ZXmFP.js → component-DprxeWfH.js} +4 -4
  45. package/dist/cjs/{component-DA5ZXmFP.js.map → component-DprxeWfH.js.map} +1 -1
  46. package/dist/cjs/{component-U7UWIKdR.js → component-b-BmClT0.js} +4 -4
  47. package/dist/cjs/{component-U7UWIKdR.js.map → component-b-BmClT0.js.map} +1 -1
  48. package/dist/cjs/{controller-DmoMYYzy.js → controller-DZKfoc-4.js} +3 -3
  49. package/dist/cjs/{controller-DmoMYYzy.js.map → controller-DZKfoc-4.js.map} +1 -1
  50. package/dist/cjs/{controller-DHsc-8t1.js → controller-Dkyvgyzl.js} +15 -15
  51. package/dist/cjs/controller-Dkyvgyzl.js.map +1 -0
  52. package/dist/cjs/{controller-CWTdHXvg.js → controller-DmyMo0CO.js} +3 -3
  53. package/dist/cjs/{controller-CWTdHXvg.js.map → controller-DmyMo0CO.js.map} +1 -1
  54. package/dist/cjs/{controller-Br37uto2.js → controller-MC2o6IAB.js} +3 -3
  55. package/dist/cjs/{controller-Br37uto2.js.map → controller-MC2o6IAB.js.map} +1 -1
  56. package/dist/cjs/{controller-icon-CdwPO8hD.js → controller-icon-DyQbzU-v.js} +6 -6
  57. package/dist/cjs/{controller-icon-CdwPO8hD.js.map → controller-icon-DyQbzU-v.js.map} +1 -1
  58. package/dist/cjs/{dev.utils-BaRzDChI.js → dev.utils-DvNz4B2G.js} +3 -3
  59. package/dist/cjs/{dev.utils-BaRzDChI.js.map → dev.utils-DvNz4B2G.js.map} +1 -1
  60. package/dist/cjs/{devtools-Ch90JQxx.js → devtools-DpjUkBF_.js} +4 -4
  61. package/dist/cjs/{devtools-Ch90JQxx.js.map → devtools-DpjUkBF_.js.map} +1 -1
  62. package/dist/cjs/element-focus-B4BhAkh_.js.map +1 -1
  63. package/dist/cjs/{i18n-DL7vJXNn.js → i18n-BVrSOH9l.js} +3 -3
  64. package/dist/cjs/{i18n-DL7vJXNn.js.map → i18n-BVrSOH9l.js.map} +1 -1
  65. package/dist/cjs/{i18n-CgUN6lev.js → i18n-D1iTbPTC.js} +4 -2
  66. package/dist/cjs/i18n-D1iTbPTC.js.map +1 -0
  67. package/dist/cjs/{index-Dk00HcEs.js → index-Bo9_lDIt.js} +3 -3
  68. package/dist/cjs/{index-Dk00HcEs.js.map → index-Bo9_lDIt.js.map} +1 -1
  69. package/dist/cjs/index.cjs.js +3 -3
  70. package/dist/cjs/kol-abbr.cjs.entry.js +45 -26
  71. package/dist/cjs/kol-abbr.entry.cjs.js.map +1 -1
  72. package/dist/cjs/kol-accordion.cjs.entry.js +6 -6
  73. package/dist/cjs/kol-accordion.entry.cjs.js.map +1 -1
  74. package/dist/cjs/kol-alert-wc.cjs.entry.js +8 -8
  75. package/dist/cjs/kol-alert.cjs.entry.js +3 -3
  76. package/dist/cjs/kol-alert.entry.cjs.js.map +1 -1
  77. package/dist/cjs/kol-avatar.cjs.entry.js +8 -8
  78. package/dist/cjs/kol-avatar.entry.cjs.js.map +1 -1
  79. package/dist/cjs/kol-badge.cjs.entry.js +8 -8
  80. package/dist/cjs/kol-badge.entry.cjs.js.map +1 -1
  81. package/dist/cjs/kol-breadcrumb.cjs.entry.js +5 -5
  82. package/dist/cjs/kol-breadcrumb.entry.cjs.js.map +1 -1
  83. package/dist/cjs/kol-button-link.cjs.entry.js +3 -3
  84. package/dist/cjs/kol-button-link.entry.cjs.js.map +1 -1
  85. package/dist/cjs/kol-button-wc.cjs.entry.js +15 -13
  86. package/dist/cjs/kol-button-wc.entry.cjs.js.map +1 -1
  87. package/dist/cjs/kol-button.cjs.entry.js +3 -3
  88. package/dist/cjs/kol-button.entry.cjs.js.map +1 -1
  89. package/dist/cjs/kol-card-wc.cjs.entry.js +11 -11
  90. package/dist/cjs/kol-card.cjs.entry.js +3 -3
  91. package/dist/cjs/kol-card.entry.cjs.js.map +1 -1
  92. package/dist/cjs/kol-click-button.cjs.entry.js +7 -7
  93. package/dist/cjs/kol-click-button.entry.cjs.js.map +1 -1
  94. package/dist/cjs/kol-combobox.cjs.entry.js +53 -44
  95. package/dist/cjs/kol-combobox.entry.cjs.js.map +1 -1
  96. package/dist/cjs/kol-details.cjs.entry.js +6 -6
  97. package/dist/cjs/kol-details.entry.cjs.js.map +1 -1
  98. package/dist/cjs/kol-dialog-wc.cjs.entry.js +4 -4
  99. package/dist/cjs/kol-dialog.cjs.entry.js +3 -3
  100. package/dist/cjs/kol-dialog.entry.cjs.js.map +1 -1
  101. package/dist/cjs/kol-drawer.cjs.entry.js +4 -4
  102. package/dist/cjs/kol-drawer.entry.cjs.js.map +1 -1
  103. package/dist/cjs/kol-form.cjs.entry.js +20 -22
  104. package/dist/cjs/kol-form.entry.cjs.js.map +1 -1
  105. package/dist/cjs/kol-heading.cjs.entry.js +5 -5
  106. package/dist/cjs/kol-heading.entry.cjs.js.map +1 -1
  107. package/dist/cjs/kol-icon.cjs.entry.js +7 -7
  108. package/dist/cjs/kol-icon.entry.cjs.js.map +1 -1
  109. package/dist/cjs/kol-image.cjs.entry.js +7 -7
  110. package/dist/cjs/kol-image.entry.cjs.js.map +1 -1
  111. package/dist/cjs/kol-input-checkbox.cjs.entry.js +27 -20
  112. package/dist/cjs/kol-input-checkbox.entry.cjs.js.map +1 -1
  113. package/dist/cjs/kol-input-color.cjs.entry.js +27 -20
  114. package/dist/cjs/kol-input-color.entry.cjs.js.map +1 -1
  115. package/dist/cjs/kol-input-date.cjs.entry.js +27 -20
  116. package/dist/cjs/kol-input-date.entry.cjs.js.map +1 -1
  117. package/dist/cjs/kol-input-email.cjs.entry.js +29 -22
  118. package/dist/cjs/kol-input-email.entry.cjs.js.map +1 -1
  119. package/dist/cjs/kol-input-file.cjs.entry.js +27 -20
  120. package/dist/cjs/kol-input-file.entry.cjs.js.map +1 -1
  121. package/dist/cjs/kol-input-number.cjs.entry.js +27 -20
  122. package/dist/cjs/kol-input-number.entry.cjs.js.map +1 -1
  123. package/dist/cjs/kol-input-password.cjs.entry.js +28 -21
  124. package/dist/cjs/kol-input-password.entry.cjs.js.map +1 -1
  125. package/dist/cjs/kol-input-radio.cjs.entry.js +27 -20
  126. package/dist/cjs/kol-input-radio.entry.cjs.js.map +1 -1
  127. package/dist/cjs/kol-input-range.cjs.entry.js +29 -21
  128. package/dist/cjs/kol-input-range.entry.cjs.js.map +1 -1
  129. package/dist/cjs/kol-input-text.cjs.entry.js +29 -22
  130. package/dist/cjs/kol-input-text.entry.cjs.js.map +1 -1
  131. package/dist/cjs/kol-kolibri.cjs.entry.js +5 -5
  132. package/dist/cjs/kol-kolibri.entry.cjs.js.map +1 -1
  133. package/dist/cjs/kol-link-button.cjs.entry.js +3 -3
  134. package/dist/cjs/kol-link-button.entry.cjs.js.map +1 -1
  135. package/dist/cjs/kol-link-wc.cjs.entry.js +12 -12
  136. package/dist/cjs/kol-link-wc.entry.cjs.js.map +1 -1
  137. package/dist/cjs/kol-link.cjs.entry.js +3 -3
  138. package/dist/cjs/kol-link.entry.cjs.js.map +1 -1
  139. package/dist/cjs/kol-meter.cjs.entry.js +13 -9
  140. package/dist/cjs/kol-meter.entry.cjs.js.map +1 -1
  141. package/dist/cjs/kol-modal.cjs.entry.js +3 -3
  142. package/dist/cjs/kol-modal.entry.cjs.js.map +1 -1
  143. package/dist/cjs/kol-nav.cjs.entry.js +7 -7
  144. package/dist/cjs/kol-nav.entry.cjs.js.map +1 -1
  145. package/dist/cjs/kol-pagination-wc.cjs.entry.js +4 -4
  146. package/dist/cjs/kol-pagination.cjs.entry.js +3 -3
  147. package/dist/cjs/kol-pagination.entry.cjs.js.map +1 -1
  148. package/dist/cjs/kol-popover-button-wc.cjs.entry.js +4 -4
  149. package/dist/cjs/kol-popover-button-wc.entry.cjs.js.map +1 -1
  150. package/dist/cjs/kol-popover-button.cjs.entry.js +3 -3
  151. package/dist/cjs/kol-popover-button.entry.cjs.js.map +1 -1
  152. package/dist/cjs/kol-progress.cjs.entry.js +7 -7
  153. package/dist/cjs/kol-progress.entry.cjs.js.map +1 -1
  154. package/dist/cjs/kol-quote.cjs.entry.js +8 -8
  155. package/dist/cjs/kol-quote.entry.cjs.js.map +1 -1
  156. package/dist/cjs/kol-select-wc.cjs.entry.js +27 -20
  157. package/dist/cjs/kol-select-wc.entry.cjs.js.map +1 -1
  158. package/dist/cjs/kol-select.cjs.entry.js +11 -3
  159. package/dist/cjs/kol-select.entry.cjs.js.map +1 -1
  160. package/dist/cjs/kol-single-select.cjs.entry.js +31 -24
  161. package/dist/cjs/kol-single-select.entry.cjs.js.map +1 -1
  162. package/dist/cjs/kol-skeleton.cjs.entry.js +6 -6
  163. package/dist/cjs/kol-skeleton.entry.cjs.js.map +1 -1
  164. package/dist/cjs/kol-skip-nav.cjs.entry.js +3 -3
  165. package/dist/cjs/kol-skip-nav.entry.cjs.js.map +1 -1
  166. package/dist/cjs/kol-spin.cjs.entry.js +9 -17
  167. package/dist/cjs/kol-spin.entry.cjs.js.map +1 -1
  168. package/dist/cjs/kol-split-button.cjs.entry.js +6 -6
  169. package/dist/cjs/kol-split-button.entry.cjs.js.map +1 -1
  170. package/dist/cjs/kol-table-settings-wc.cjs.entry.js +6 -5
  171. package/dist/cjs/kol-table-settings-wc.entry.cjs.js.map +1 -1
  172. package/dist/cjs/kol-table-stateful.cjs.entry.js +8 -7
  173. package/dist/cjs/kol-table-stateful.entry.cjs.js.map +1 -1
  174. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +14 -14
  175. package/dist/cjs/kol-table-stateless-wc.entry.cjs.js.map +1 -1
  176. package/dist/cjs/kol-table-stateless.cjs.entry.js +6 -5
  177. package/dist/cjs/kol-table-stateless.entry.cjs.js.map +1 -1
  178. package/dist/cjs/kol-tabs.cjs.entry.js +6 -6
  179. package/dist/cjs/kol-tabs.entry.cjs.js.map +1 -1
  180. package/dist/cjs/kol-textarea.cjs.entry.js +25 -18
  181. package/dist/cjs/kol-textarea.entry.cjs.js.map +1 -1
  182. package/dist/cjs/kol-toast-container.cjs.entry.js +12 -12
  183. package/dist/cjs/kol-toast-container.entry.cjs.js.map +1 -1
  184. package/dist/cjs/kol-toolbar.cjs.entry.js +3 -3
  185. package/dist/cjs/kol-toolbar.entry.cjs.js.map +1 -1
  186. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +9 -9
  187. package/dist/cjs/kol-tooltip-wc.entry.cjs.js.map +1 -1
  188. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +7 -7
  189. package/dist/cjs/kol-tree-item.cjs.entry.js +3 -3
  190. package/dist/cjs/kol-tree-item.entry.cjs.js.map +1 -1
  191. package/dist/cjs/kol-tree-wc.cjs.entry.js +2 -2
  192. package/dist/cjs/kol-tree-wc.entry.cjs.js.map +1 -1
  193. package/dist/cjs/kol-tree.cjs.entry.js +3 -3
  194. package/dist/cjs/kol-tree.entry.cjs.js.map +1 -1
  195. package/dist/cjs/kol-version.cjs.entry.js +5 -5
  196. package/dist/cjs/kol-version.entry.cjs.js.map +1 -1
  197. package/dist/cjs/kolibri.cjs.js +3 -3
  198. package/dist/cjs/loader.cjs.js +3 -3
  199. package/dist/cjs/test-component.cjs.entry.js +1 -1
  200. package/dist/collection/collection-manifest.json +1 -1
  201. package/dist/collection/components/@deprecated/input/controller.js +25 -14
  202. package/dist/collection/components/@deprecated/input/controller.js.map +1 -1
  203. package/dist/collection/components/_skeleton/web-components/click-button/component.js +2 -2
  204. package/dist/collection/components/_skeleton/web-components/click-button/component.js.map +1 -1
  205. package/dist/collection/components/_skeleton/web-components/skeleton/component.js +1 -1
  206. package/dist/collection/components/abbr/{shadow.js → component.js} +15 -21
  207. package/dist/collection/components/abbr/component.js.map +1 -0
  208. package/dist/collection/components/abbr/style.css +11 -5
  209. package/dist/collection/components/accordion/shadow.js +1 -1
  210. package/dist/collection/components/accordion/shadow.js.map +1 -1
  211. package/dist/collection/components/accordion/style.css +11 -5
  212. package/dist/collection/components/alert/component.js +1 -1
  213. package/dist/collection/components/alert/shadow.js +1 -1
  214. package/dist/collection/components/alert/style.css +10 -5
  215. package/dist/collection/components/avatar/component.js +1 -1
  216. package/dist/collection/components/avatar/style.css +9 -3
  217. package/dist/collection/components/badge/shadow.js +2 -2
  218. package/dist/collection/components/badge/style.css +11 -5
  219. package/dist/collection/components/breadcrumb/shadow.js +1 -1
  220. package/dist/collection/components/breadcrumb/style.css +11 -5
  221. package/dist/collection/components/button/component.js +2 -2
  222. package/dist/collection/components/button/component.js.map +1 -1
  223. package/dist/collection/components/button/shadow.js +1 -1
  224. package/dist/collection/components/button/shadow.js.map +1 -1
  225. package/dist/collection/components/button/style.css +10 -5
  226. package/dist/collection/components/button-link/shadow.js +1 -1
  227. package/dist/collection/components/button-link/shadow.js.map +1 -1
  228. package/dist/collection/components/button-link/style.css +11 -5
  229. package/dist/collection/components/card/component.js +1 -1
  230. package/dist/collection/components/card/shadow.js +1 -1
  231. package/dist/collection/components/card/style.css +10 -5
  232. package/dist/collection/components/combobox/shadow.js +58 -24
  233. package/dist/collection/components/combobox/shadow.js.map +1 -1
  234. package/dist/collection/components/combobox/style.css +11 -6
  235. package/dist/collection/components/component-list.js +1 -1
  236. package/dist/collection/components/component-list.js.map +1 -1
  237. package/dist/collection/components/details/shadow.js +1 -1
  238. package/dist/collection/components/details/shadow.js.map +1 -1
  239. package/dist/collection/components/details/style.css +10 -5
  240. package/dist/collection/components/dialog/component.js +2 -2
  241. package/dist/collection/components/dialog/shadow.js +1 -1
  242. package/dist/collection/components/dialog/style.css +10 -5
  243. package/dist/collection/components/drawer/shadow.js +1 -1
  244. package/dist/collection/components/drawer/style.css +10 -5
  245. package/dist/collection/components/form/shadow.js +23 -16
  246. package/dist/collection/components/form/shadow.js.map +1 -1
  247. package/dist/collection/components/form/style.css +10 -5
  248. package/dist/collection/components/heading/component.js +1 -1
  249. package/dist/collection/components/heading/style.css +9 -3
  250. package/dist/collection/components/icon/component.js +1 -1
  251. package/dist/collection/components/icon/style.css +2 -2
  252. package/dist/collection/components/image/component.js +1 -1
  253. package/dist/collection/components/image/style.css +9 -3
  254. package/dist/collection/components/input-adapter-leanup/associated.controller.js +6 -0
  255. package/dist/collection/components/input-adapter-leanup/associated.controller.js.map +1 -1
  256. package/dist/collection/components/input-checkbox/shadow.js +33 -1
  257. package/dist/collection/components/input-checkbox/shadow.js.map +1 -1
  258. package/dist/collection/components/input-checkbox/style.css +13 -10
  259. package/dist/collection/components/input-color/shadow.js +33 -1
  260. package/dist/collection/components/input-color/shadow.js.map +1 -1
  261. package/dist/collection/components/input-color/style.css +11 -6
  262. package/dist/collection/components/input-date/controller.js.map +1 -1
  263. package/dist/collection/components/input-date/shadow.js +33 -1
  264. package/dist/collection/components/input-date/shadow.js.map +1 -1
  265. package/dist/collection/components/input-date/style.css +11 -6
  266. package/dist/collection/components/input-email/shadow.js +33 -1
  267. package/dist/collection/components/input-email/shadow.js.map +1 -1
  268. package/dist/collection/components/input-email/style.css +11 -6
  269. package/dist/collection/components/input-file/shadow.js +33 -1
  270. package/dist/collection/components/input-file/shadow.js.map +1 -1
  271. package/dist/collection/components/input-file/style.css +11 -6
  272. package/dist/collection/components/input-number/shadow.js +33 -1
  273. package/dist/collection/components/input-number/shadow.js.map +1 -1
  274. package/dist/collection/components/input-number/style.css +11 -6
  275. package/dist/collection/components/input-password/shadow.js +33 -1
  276. package/dist/collection/components/input-password/shadow.js.map +1 -1
  277. package/dist/collection/components/input-password/style.css +11 -6
  278. package/dist/collection/components/input-radio/shadow.js +33 -1
  279. package/dist/collection/components/input-radio/shadow.js.map +1 -1
  280. package/dist/collection/components/input-radio/style.css +13 -10
  281. package/dist/collection/components/input-range/shadow.js +35 -2
  282. package/dist/collection/components/input-range/shadow.js.map +1 -1
  283. package/dist/collection/components/input-range/style.css +14 -6
  284. package/dist/collection/components/input-text/shadow.js +33 -1
  285. package/dist/collection/components/input-text/shadow.js.map +1 -1
  286. package/dist/collection/components/input-text/style.css +11 -6
  287. package/dist/collection/components/kolibri/shadow.js +1 -1
  288. package/dist/collection/components/kolibri/style.css +9 -3
  289. package/dist/collection/components/link/component.js +2 -2
  290. package/dist/collection/components/link/component.js.map +1 -1
  291. package/dist/collection/components/link/shadow.js +1 -1
  292. package/dist/collection/components/link/shadow.js.map +1 -1
  293. package/dist/collection/components/link/style.css +11 -5
  294. package/dist/collection/components/link-button/shadow.js +1 -1
  295. package/dist/collection/components/link-button/shadow.js.map +1 -1
  296. package/dist/collection/components/link-button/style.css +10 -5
  297. package/dist/collection/components/meter/component.js +2 -2
  298. package/dist/collection/components/meter/component.js.map +1 -1
  299. package/dist/collection/components/meter/style.css +9 -3
  300. package/dist/collection/components/modal/shadow.js +1 -1
  301. package/dist/collection/components/modal/style.css +10 -5
  302. package/dist/collection/components/nav/shadow.js +2 -2
  303. package/dist/collection/components/nav/style.css +11 -5
  304. package/dist/collection/components/pagination/shadow.js +1 -1
  305. package/dist/collection/components/pagination/style.css +11 -6
  306. package/dist/collection/components/popover-button/component.js +2 -2
  307. package/dist/collection/components/popover-button/component.js.map +1 -1
  308. package/dist/collection/components/popover-button/shadow.js +1 -1
  309. package/dist/collection/components/popover-button/shadow.js.map +1 -1
  310. package/dist/collection/components/popover-button/style.css +10 -5
  311. package/dist/collection/components/progress/component.js +1 -1
  312. package/dist/collection/components/progress/style.css +9 -3
  313. package/dist/collection/components/quote/component.js +1 -1
  314. package/dist/collection/components/quote/style.css +8 -3
  315. package/dist/collection/components/select/component.js +34 -2
  316. package/dist/collection/components/select/component.js.map +1 -1
  317. package/dist/collection/components/select/shadow.js +36 -1
  318. package/dist/collection/components/select/shadow.js.map +1 -1
  319. package/dist/collection/components/select/style.css +11 -6
  320. package/dist/collection/components/single-select/shadow.js +35 -3
  321. package/dist/collection/components/single-select/shadow.js.map +1 -1
  322. package/dist/collection/components/single-select/style.css +11 -6
  323. package/dist/collection/components/skip-nav/shadow.js +1 -1
  324. package/dist/collection/components/skip-nav/shadow.js.map +1 -1
  325. package/dist/collection/components/skip-nav/style.css +11 -5
  326. package/dist/collection/components/spin/component.js +1 -1
  327. package/dist/collection/components/spin/component.js.map +1 -1
  328. package/dist/collection/components/spin/style.css +9 -3
  329. package/dist/collection/components/split-button/shadow.js +2 -2
  330. package/dist/collection/components/split-button/shadow.js.map +1 -1
  331. package/dist/collection/components/split-button/style.css +11 -5
  332. package/dist/collection/components/table-stateful/shadow.js +1 -1
  333. package/dist/collection/components/table-stateful/style.css +11 -6
  334. package/dist/collection/components/table-stateless/component.js +6 -6
  335. package/dist/collection/components/table-stateless/component.js.map +1 -1
  336. package/dist/collection/components/table-stateless/shadow.js +1 -1
  337. package/dist/collection/components/table-stateless/style.css +10 -5
  338. package/dist/collection/components/table-stateless/table-settings.js +3 -2
  339. package/dist/collection/components/table-stateless/table-settings.js.map +1 -1
  340. package/dist/collection/components/tabs/shadow.js +2 -2
  341. package/dist/collection/components/tabs/shadow.js.map +1 -1
  342. package/dist/collection/components/tabs/style.css +11 -5
  343. package/dist/collection/components/textarea/shadow.js +33 -1
  344. package/dist/collection/components/textarea/shadow.js.map +1 -1
  345. package/dist/collection/components/textarea/style.css +11 -6
  346. package/dist/collection/components/toaster/shadow.js +1 -1
  347. package/dist/collection/components/toaster/style.css +10 -5
  348. package/dist/collection/components/toolbar/shadow.js +1 -1
  349. package/dist/collection/components/toolbar/shadow.js.map +1 -1
  350. package/dist/collection/components/toolbar/style.css +10 -5
  351. package/dist/collection/components/tooltip/component.js +1 -1
  352. package/dist/collection/components/tree/component.js +1 -1
  353. package/dist/collection/components/tree/component.js.map +1 -1
  354. package/dist/collection/components/tree/shadow.js +1 -1
  355. package/dist/collection/components/tree/shadow.js.map +1 -1
  356. package/dist/collection/components/tree/style.css +9 -3
  357. package/dist/collection/components/tree-item/component.js +3 -3
  358. package/dist/collection/components/tree-item/shadow.js +1 -1
  359. package/dist/collection/components/tree-item/style.css +11 -5
  360. package/dist/collection/components/version/shadow.js +1 -1
  361. package/dist/collection/components/version/style.css +9 -3
  362. package/dist/collection/e2e/index.js +0 -1
  363. package/dist/collection/e2e/index.js.map +1 -1
  364. package/dist/collection/functional-component-wrappers/SelectStateWrapper/SelectStateWrapper.js +1 -1
  365. package/dist/collection/functional-component-wrappers/SelectStateWrapper/SelectStateWrapper.js.map +1 -1
  366. package/dist/collection/index.js.map +1 -1
  367. package/dist/collection/internal/functional-components/abbr/api.js +8 -0
  368. package/dist/collection/internal/functional-components/abbr/api.js.map +1 -0
  369. package/dist/collection/internal/functional-components/abbr/component.js +9 -0
  370. package/dist/collection/internal/functional-components/abbr/component.js.map +1 -0
  371. package/dist/collection/internal/functional-components/abbr/controller.js +20 -0
  372. package/dist/collection/internal/functional-components/abbr/controller.js.map +1 -0
  373. package/dist/collection/internal/functional-components/meter/component.js +5 -1
  374. package/dist/collection/internal/functional-components/meter/component.js.map +1 -1
  375. package/dist/collection/internal/functional-components/meter/controller.js.map +1 -1
  376. package/dist/collection/internal/functional-components/progress/controller.js.map +1 -1
  377. package/dist/collection/internal/functional-components/spin/api.js.map +1 -1
  378. package/dist/collection/internal/functional-components/spin/component.js +3 -2
  379. package/dist/collection/internal/functional-components/spin/component.js.map +1 -1
  380. package/dist/collection/internal/functional-components/spin/controller.js +0 -9
  381. package/dist/collection/internal/functional-components/spin/controller.js.map +1 -1
  382. package/dist/collection/locales/de.js +1 -0
  383. package/dist/collection/locales/de.js.map +1 -1
  384. package/dist/collection/locales/en.js +1 -0
  385. package/dist/collection/locales/en.js.map +1 -1
  386. package/dist/collection/schema/bem-registry.js +3 -0
  387. package/dist/collection/schema/bem-registry.js.map +1 -1
  388. package/dist/collection/schema/components/combobox.js.map +1 -1
  389. package/dist/collection/schema/components/input-checkbox.js.map +1 -1
  390. package/dist/collection/schema/components/input-color.js.map +1 -1
  391. package/dist/collection/schema/components/input-date.js.map +1 -1
  392. package/dist/collection/schema/components/input-email.js.map +1 -1
  393. package/dist/collection/schema/components/input-file.js.map +1 -1
  394. package/dist/collection/schema/components/input-number.js.map +1 -1
  395. package/dist/collection/schema/components/input-password.js.map +1 -1
  396. package/dist/collection/schema/components/input-radio.js.map +1 -1
  397. package/dist/collection/schema/components/input-range.js.map +1 -1
  398. package/dist/collection/schema/components/input-text.js.map +1 -1
  399. package/dist/collection/schema/components/select.js.map +1 -1
  400. package/dist/collection/schema/components/single-select.js.map +1 -1
  401. package/dist/collection/schema/components/textarea.js.map +1 -1
  402. package/dist/collection/schema/interfaces/ClickableElement.js +2 -0
  403. package/dist/collection/schema/interfaces/ClickableElement.js.map +1 -0
  404. package/dist/collection/schema/interfaces/index.js +1 -0
  405. package/dist/collection/schema/interfaces/index.js.map +1 -1
  406. package/dist/collection/schema/props/aria-details.js +19 -0
  407. package/dist/collection/schema/props/aria-details.js.map +1 -0
  408. package/dist/collection/schema/props/error-list.js.map +1 -1
  409. package/dist/collection/schema/props/index.js +1 -0
  410. package/dist/collection/schema/props/index.js.map +1 -1
  411. package/dist/collection/utils/aria-labelledby.js.map +1 -1
  412. package/dist/collection/utils/element-click.js.map +1 -1
  413. package/dist/components/FieldControlStateWrapper.js +1 -1
  414. package/dist/components/access-and-short-key.js +1 -1
  415. package/dist/components/align-floating-elements.js +1 -1
  416. package/dist/components/aria-details.js +24 -0
  417. package/dist/components/aria-details.js.map +1 -0
  418. package/dist/components/aria-labelledby.js +1 -17
  419. package/dist/components/aria-labelledby.js.map +1 -1
  420. package/dist/components/aria-labelledby2.js +24 -0
  421. package/dist/components/aria-labelledby2.js.map +1 -0
  422. package/dist/components/associated.controller.js +6 -0
  423. package/dist/components/associated.controller.js.map +1 -1
  424. package/dist/components/{variant-quote.js → base-web-component.js} +11 -11
  425. package/dist/components/base-web-component.js.map +1 -0
  426. package/dist/components/bem-registry.js +3 -0
  427. package/dist/components/bem-registry.js.map +1 -1
  428. package/dist/components/color.js +1 -1
  429. package/dist/components/controller.js +14 -14
  430. package/dist/components/controller.js.map +1 -1
  431. package/dist/components/controller3.js +28 -17
  432. package/dist/components/controller3.js.map +1 -1
  433. package/dist/components/controller4.js +2 -2
  434. package/dist/components/dev.utils.js +1 -1
  435. package/dist/components/disabled.js +1 -1
  436. package/dist/components/element-focus.js.map +1 -1
  437. package/dist/components/i18n.js +1 -1
  438. package/dist/components/i18n2.js +2 -0
  439. package/dist/components/i18n2.js.map +1 -1
  440. package/dist/components/kol-abbr.js +45 -25
  441. package/dist/components/kol-abbr.js.map +1 -1
  442. package/dist/components/kol-accordion.js +3 -3
  443. package/dist/components/kol-accordion.js.map +1 -1
  444. package/dist/components/kol-alert-wc.js +2 -2
  445. package/dist/components/kol-alert.js +2 -2
  446. package/dist/components/kol-alert.js.map +1 -1
  447. package/dist/components/kol-avatar.js +4 -4
  448. package/dist/components/kol-avatar.js.map +1 -1
  449. package/dist/components/kol-badge.js +3 -3
  450. package/dist/components/kol-badge.js.map +1 -1
  451. package/dist/components/kol-breadcrumb.js +3 -3
  452. package/dist/components/kol-breadcrumb.js.map +1 -1
  453. package/dist/components/kol-button-link.js +2 -2
  454. package/dist/components/kol-button-link.js.map +1 -1
  455. package/dist/components/kol-button-wc.js +4 -4
  456. package/dist/components/kol-button-wc.js.map +1 -1
  457. package/dist/components/kol-button.js +2 -2
  458. package/dist/components/kol-button.js.map +1 -1
  459. package/dist/components/kol-card-wc.js +3 -3
  460. package/dist/components/kol-card.js +2 -2
  461. package/dist/components/kol-card.js.map +1 -1
  462. package/dist/components/kol-click-button.js +4 -4
  463. package/dist/components/kol-click-button.js.map +1 -1
  464. package/dist/components/kol-combobox.js +34 -25
  465. package/dist/components/kol-combobox.js.map +1 -1
  466. package/dist/components/kol-details.js +3 -3
  467. package/dist/components/kol-details.js.map +1 -1
  468. package/dist/components/kol-dialog-wc.js +3 -3
  469. package/dist/components/kol-dialog.js +2 -2
  470. package/dist/components/kol-dialog.js.map +1 -1
  471. package/dist/components/kol-drawer.js +3 -3
  472. package/dist/components/kol-drawer.js.map +1 -1
  473. package/dist/components/kol-form.js +13 -15
  474. package/dist/components/kol-form.js.map +1 -1
  475. package/dist/components/kol-heading.js +3 -3
  476. package/dist/components/kol-heading.js.map +1 -1
  477. package/dist/components/kol-icon.js +4 -4
  478. package/dist/components/kol-image.js +3 -3
  479. package/dist/components/kol-image.js.map +1 -1
  480. package/dist/components/kol-input-checkbox.js +9 -2
  481. package/dist/components/kol-input-checkbox.js.map +1 -1
  482. package/dist/components/kol-input-color.js +9 -2
  483. package/dist/components/kol-input-color.js.map +1 -1
  484. package/dist/components/kol-input-date.js +9 -2
  485. package/dist/components/kol-input-date.js.map +1 -1
  486. package/dist/components/kol-input-email.js +9 -2
  487. package/dist/components/kol-input-email.js.map +1 -1
  488. package/dist/components/kol-input-file.js +9 -2
  489. package/dist/components/kol-input-file.js.map +1 -1
  490. package/dist/components/kol-input-number.js +9 -2
  491. package/dist/components/kol-input-number.js.map +1 -1
  492. package/dist/components/kol-input-password.js +9 -2
  493. package/dist/components/kol-input-password.js.map +1 -1
  494. package/dist/components/kol-input-radio.js +9 -2
  495. package/dist/components/kol-input-radio.js.map +1 -1
  496. package/dist/components/kol-input-range.js +11 -3
  497. package/dist/components/kol-input-range.js.map +1 -1
  498. package/dist/components/kol-input-text.js +9 -2
  499. package/dist/components/kol-input-text.js.map +1 -1
  500. package/dist/components/kol-kolibri.js +2 -2
  501. package/dist/components/kol-kolibri.js.map +1 -1
  502. package/dist/components/kol-link-button.js +2 -2
  503. package/dist/components/kol-link-button.js.map +1 -1
  504. package/dist/components/kol-link-wc.js +4 -4
  505. package/dist/components/kol-link-wc.js.map +1 -1
  506. package/dist/components/kol-link.js +2 -2
  507. package/dist/components/kol-link.js.map +1 -1
  508. package/dist/components/kol-meter.js +10 -6
  509. package/dist/components/kol-meter.js.map +1 -1
  510. package/dist/components/kol-modal.js +2 -2
  511. package/dist/components/kol-modal.js.map +1 -1
  512. package/dist/components/kol-nav.js +4 -4
  513. package/dist/components/kol-nav.js.map +1 -1
  514. package/dist/components/kol-pagination-wc.js +1 -1
  515. package/dist/components/kol-pagination.js +2 -2
  516. package/dist/components/kol-pagination.js.map +1 -1
  517. package/dist/components/kol-popover-button-wc.js +2 -2
  518. package/dist/components/kol-popover-button-wc.js.map +1 -1
  519. package/dist/components/kol-popover-button.js +2 -2
  520. package/dist/components/kol-popover-button.js.map +1 -1
  521. package/dist/components/kol-progress.js +4 -4
  522. package/dist/components/kol-progress.js.map +1 -1
  523. package/dist/components/kol-quote.js +4 -4
  524. package/dist/components/kol-quote.js.map +1 -1
  525. package/dist/components/kol-select-wc.js +10 -3
  526. package/dist/components/kol-select-wc.js.map +1 -1
  527. package/dist/components/kol-select.js +12 -2
  528. package/dist/components/kol-select.js.map +1 -1
  529. package/dist/components/kol-single-select.js +11 -4
  530. package/dist/components/kol-single-select.js.map +1 -1
  531. package/dist/components/kol-skeleton.js +2 -2
  532. package/dist/components/kol-skip-nav.js +3 -3
  533. package/dist/components/kol-skip-nav.js.map +1 -1
  534. package/dist/components/kol-spin.js +6 -14
  535. package/dist/components/kol-spin.js.map +1 -1
  536. package/dist/components/kol-split-button.js +3 -3
  537. package/dist/components/kol-split-button.js.map +1 -1
  538. package/dist/components/kol-table-settings-wc.js +3 -2
  539. package/dist/components/kol-table-settings-wc.js.map +1 -1
  540. package/dist/components/kol-table-stateful.js +5 -4
  541. package/dist/components/kol-table-stateful.js.map +1 -1
  542. package/dist/components/kol-table-stateless-wc.js +7 -7
  543. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  544. package/dist/components/kol-table-stateless.js +4 -3
  545. package/dist/components/kol-table-stateless.js.map +1 -1
  546. package/dist/components/kol-tabs.js +4 -4
  547. package/dist/components/kol-tabs.js.map +1 -1
  548. package/dist/components/kol-textarea.js +9 -2
  549. package/dist/components/kol-textarea.js.map +1 -1
  550. package/dist/components/kol-toast-container.js +3 -3
  551. package/dist/components/kol-toast-container.js.map +1 -1
  552. package/dist/components/kol-toolbar.js +3 -3
  553. package/dist/components/kol-toolbar.js.map +1 -1
  554. package/dist/components/kol-tooltip-wc.js +2 -2
  555. package/dist/components/kol-tree-item-wc.js +4 -4
  556. package/dist/components/kol-tree-item.js +2 -2
  557. package/dist/components/kol-tree-item.js.map +1 -1
  558. package/dist/components/kol-tree-wc.js +2 -2
  559. package/dist/components/kol-tree-wc.js.map +1 -1
  560. package/dist/components/kol-tree.js +2 -2
  561. package/dist/components/kol-tree.js.map +1 -1
  562. package/dist/components/kol-version.js +3 -3
  563. package/dist/components/kol-version.js.map +1 -1
  564. package/dist/components/label.js +3 -37
  565. package/dist/components/label.js.map +1 -1
  566. package/dist/components/label2.js +37 -3
  567. package/dist/components/label2.js.map +1 -1
  568. package/dist/components/prop.validators.js +1 -1
  569. package/dist/components/suggestions.js +1 -1
  570. package/dist/esm/{Alert-2bYvhb8i.js → Alert-LeFfZ8Oj.js} +7 -7
  571. package/dist/{kolibri/Alert-2bYvhb8i.js.map → esm/Alert-LeFfZ8Oj.js.map} +1 -1
  572. package/dist/esm/{Collapsible-OjK6lDr2.js → Collapsible-BG8kZny4.js} +5 -5
  573. package/dist/{kolibri/Collapsible-OjK6lDr2.js.map → esm/Collapsible-BG8kZny4.js.map} +1 -1
  574. package/dist/esm/{CustomSuggestionsOptionsGroup-Cw_y_smw.js → CustomSuggestionsOptionsGroup--3PdjAdp.js} +3 -3
  575. package/dist/{kolibri/CustomSuggestionsOptionsGroup-Cw_y_smw.js.map → esm/CustomSuggestionsOptionsGroup--3PdjAdp.js.map} +1 -1
  576. package/dist/esm/{FieldControlStateWrapper-CU6OjlrU.js → FieldControlStateWrapper-BJghqA8K.js} +10 -10
  577. package/dist/{kolibri/FieldControlStateWrapper-CU6OjlrU.js.map → esm/FieldControlStateWrapper-BJghqA8K.js.map} +1 -1
  578. package/dist/esm/{FormFieldStateWrapper-C31luuWs.js → FormFieldStateWrapper-D1Q6Lpff.js} +43 -32
  579. package/dist/esm/FormFieldStateWrapper-D1Q6Lpff.js.map +1 -0
  580. package/dist/esm/{Heading-C9p_CRv4.js → Heading-uCdB_mbH.js} +3 -3
  581. package/dist/esm/{Heading-C9p_CRv4.js.map → Heading-uCdB_mbH.js.map} +1 -1
  582. package/dist/esm/{Input-CwcyFZhB.js → Input-Cu811opH.js} +6 -6
  583. package/dist/{kolibri/Input-CwcyFZhB.js.map → esm/Input-Cu811opH.js.map} +1 -1
  584. package/dist/esm/{InputStateWrapper-CcDZH7W5.js → InputStateWrapper-Cl_V9Vuo.js} +6 -6
  585. package/dist/esm/{InputStateWrapper-CcDZH7W5.js.map → InputStateWrapper-Cl_V9Vuo.js.map} +1 -1
  586. package/dist/esm/{access-and-short-key-CnWGdP5U.js → access-and-short-key-C7QS_Tel.js} +3 -3
  587. package/dist/esm/{access-and-short-key-CnWGdP5U.js.map → access-and-short-key-C7QS_Tel.js.map} +1 -1
  588. package/dist/esm/{align-ChLoh-Dq.js → align-DdWzcKWR.js} +3 -3
  589. package/dist/esm/{align-ChLoh-Dq.js.map → align-DdWzcKWR.js.map} +1 -1
  590. package/dist/esm/{align-floating-elements-DTTpkCAK.js → align-floating-elements-CqZdcuwL.js} +3 -3
  591. package/dist/{kolibri/align-floating-elements-DTTpkCAK.js.map → esm/align-floating-elements-CqZdcuwL.js.map} +1 -1
  592. package/dist/esm/{app-globals-Cwf240Bw.js → app-globals-DMlUA9Gw.js} +5 -5
  593. package/dist/esm/{app-globals-Cwf240Bw.js.map → app-globals-DMlUA9Gw.js.map} +1 -1
  594. package/dist/esm/aria-details-CG4GFq8t.js +24 -0
  595. package/dist/esm/aria-details-CG4GFq8t.js.map +1 -0
  596. package/dist/esm/{aria-expanded--y6Ce39-.js → aria-expanded-BwKOdsiZ.js} +3 -3
  597. package/dist/{kolibri/aria-expanded--y6Ce39-.js.map → esm/aria-expanded-BwKOdsiZ.js.map} +1 -1
  598. package/dist/esm/{aria-labelledby-BUOJRaGL.js → aria-labelledby-6-ki3akM.js} +3 -19
  599. package/dist/esm/aria-labelledby-6-ki3akM.js.map +1 -0
  600. package/dist/esm/aria-labelledby-BuvPnlu7.js +24 -0
  601. package/dist/esm/aria-labelledby-BuvPnlu7.js.map +1 -0
  602. package/dist/esm/{associated.controller-D55JWKjs.js → associated.controller-Da2zylzp.js} +10 -4
  603. package/dist/esm/associated.controller-Da2zylzp.js.map +1 -0
  604. package/dist/esm/{auto-complete-CrQJr3SH.js → auto-complete-p-8iouPy.js} +3 -3
  605. package/dist/esm/{auto-complete-CrQJr3SH.js.map → auto-complete-p-8iouPy.js.map} +1 -1
  606. package/dist/esm/{variant-quote-BMV8GZX8.js → base-web-component-CArCAUxk.js} +11 -11
  607. package/dist/esm/base-web-component-CArCAUxk.js.map +1 -0
  608. package/dist/esm/{bem-registry-B9CzNnO1.js → bem-registry-CqAKWtWY.js} +6 -3
  609. package/dist/esm/bem-registry-CqAKWtWY.js.map +1 -0
  610. package/dist/esm/{bootstrap-UOb6OarC.js → bootstrap-C2nJoN6K.js} +4 -4
  611. package/dist/esm/{bootstrap-UOb6OarC.js.map → bootstrap-C2nJoN6K.js.map} +1 -1
  612. package/dist/esm/{color-Df2awjVY.js → color-CftCtla8.js} +4 -4
  613. package/dist/{kolibri/color-Df2awjVY.js.map → esm/color-CftCtla8.js.map} +1 -1
  614. package/dist/esm/{common-DEEjER7G.js → common-DyILLof-.js} +3 -3
  615. package/dist/esm/{common-DEEjER7G.js.map → common-DyILLof-.js.map} +1 -1
  616. package/dist/esm/{component-j5NhcleS.js → component-2ImIjrdm.js} +4 -4
  617. package/dist/{kolibri/component-j5NhcleS.js.map → esm/component-2ImIjrdm.js.map} +1 -1
  618. package/dist/esm/{component-ijX_kUom.js → component-DI3pO3QY.js} +4 -4
  619. package/dist/esm/{component-ijX_kUom.js.map → component-DI3pO3QY.js.map} +1 -1
  620. package/dist/esm/{component-4RtkhTfb.js → component-DbrY6RW_.js} +6 -6
  621. package/dist/{kolibri/component-4RtkhTfb.js.map → esm/component-DbrY6RW_.js.map} +1 -1
  622. package/dist/esm/{component-BFsdrctP.js → component-fsnfw59D.js} +4 -4
  623. package/dist/esm/{component-BFsdrctP.js.map → component-fsnfw59D.js.map} +1 -1
  624. package/dist/esm/{contrast-C0oqtcfU.js → contrast-D1msrkD4.js} +3 -3
  625. package/dist/esm/{contrast-C0oqtcfU.js.map → contrast-D1msrkD4.js.map} +1 -1
  626. package/dist/esm/{controller-D0y9uwX0.js → controller-B21n_zqt.js} +3 -3
  627. package/dist/esm/{controller-D0y9uwX0.js.map → controller-B21n_zqt.js.map} +1 -1
  628. package/dist/esm/{controller-DvdfA2RR.js → controller-B2Qb2oqz.js} +7 -7
  629. package/dist/{kolibri/controller-DvdfA2RR.js.map → esm/controller-B2Qb2oqz.js.map} +1 -1
  630. package/dist/esm/{controller-B4DO-yV0.js → controller-BuikHDKh.js} +6 -6
  631. package/dist/{kolibri/controller-B4DO-yV0.js.map → esm/controller-BuikHDKh.js.map} +1 -1
  632. package/dist/esm/{controller-oT8Y98Yc.js → controller-CJs4fTO0.js} +20 -20
  633. package/dist/esm/controller-CJs4fTO0.js.map +1 -0
  634. package/dist/esm/{controller-CcrsrzWi.js → controller-DiWO-Gw_.js} +10 -10
  635. package/dist/esm/{controller-CcrsrzWi.js.map → controller-DiWO-Gw_.js.map} +1 -1
  636. package/dist/esm/{controller-icon-D3_aQk9W.js → controller-icon-DaBPXypo.js} +8 -8
  637. package/dist/esm/{controller-icon-D3_aQk9W.js.map → controller-icon-DaBPXypo.js.map} +1 -1
  638. package/dist/esm/{custom-class-RTVG26D_.js → custom-class-DRA8ZYTU.js} +3 -3
  639. package/dist/esm/{custom-class-RTVG26D_.js.map → custom-class-DRA8ZYTU.js.map} +1 -1
  640. package/dist/esm/{dev.utils-Cv9uCwkA.js → dev.utils-Ce_5C3Pe.js} +4 -4
  641. package/dist/{kolibri/dev.utils-Cv9uCwkA.js.map → esm/dev.utils-Ce_5C3Pe.js.map} +1 -1
  642. package/dist/esm/{devtools-BOWjtOAI.js → devtools-yLGw7QsN.js} +5 -5
  643. package/dist/esm/{devtools-BOWjtOAI.js.map → devtools-yLGw7QsN.js.map} +1 -1
  644. package/dist/esm/{disabled-CtaJsBT2.js → disabled-DzYBnXfG.js} +3 -3
  645. package/dist/esm/{disabled-CtaJsBT2.js.map → disabled-DzYBnXfG.js.map} +1 -1
  646. package/dist/esm/element-focus-BQXzaLL9.js.map +1 -1
  647. package/dist/esm/{has-closer-GBI76y-L.js → has-closer-COzVY-FT.js} +3 -3
  648. package/dist/esm/{has-closer-GBI76y-L.js.map → has-closer-COzVY-FT.js.map} +1 -1
  649. package/dist/esm/{hide-label-CWFMK5Iz.js → hide-label-jbOZNqJV.js} +3 -3
  650. package/dist/esm/{hide-label-CWFMK5Iz.js.map → hide-label-jbOZNqJV.js.map} +1 -1
  651. package/dist/esm/{href-yQN98Z4F.js → href-CMm8l_Io.js} +3 -3
  652. package/dist/esm/{href-yQN98Z4F.js.map → href-CMm8l_Io.js.map} +1 -1
  653. package/dist/esm/{i18n-CaL2ODdQ.js → i18n-BkwRYsvE.js} +4 -4
  654. package/dist/esm/{i18n-CaL2ODdQ.js.map → i18n-BkwRYsvE.js.map} +1 -1
  655. package/dist/esm/{i18n-B2d_exHc.js → i18n-CMA39edx.js} +4 -2
  656. package/dist/esm/i18n-CMA39edx.js.map +1 -0
  657. package/dist/esm/{icons-DOGnS2Iv.js → icons-BfxrxChI.js} +3 -3
  658. package/dist/{kolibri/icons-DOGnS2Iv.js.map → esm/icons-BfxrxChI.js.map} +1 -1
  659. package/dist/esm/{index-DqvPZ16l.js → index-CwtGN7ID.js} +4 -4
  660. package/dist/esm/{index-DqvPZ16l.js.map → index-CwtGN7ID.js.map} +1 -1
  661. package/dist/esm/index.js +6 -6
  662. package/dist/esm/{inline-D3v7pifU.js → inline-CIEtzpMz.js} +3 -3
  663. package/dist/esm/{inline-D3v7pifU.js.map → inline-CIEtzpMz.js.map} +1 -1
  664. package/dist/esm/kol-abbr.entry.js +48 -29
  665. package/dist/esm/kol-abbr.entry.js.map +1 -1
  666. package/dist/esm/kol-accordion.entry.js +13 -13
  667. package/dist/esm/kol-accordion.entry.js.map +1 -1
  668. package/dist/esm/kol-alert-wc.entry.js +14 -14
  669. package/dist/esm/kol-alert.entry.js +4 -4
  670. package/dist/esm/kol-alert.entry.js.map +1 -1
  671. package/dist/esm/kol-avatar.entry.js +12 -12
  672. package/dist/esm/kol-avatar.entry.js.map +1 -1
  673. package/dist/esm/kol-badge.entry.js +12 -12
  674. package/dist/esm/kol-badge.entry.js.map +1 -1
  675. package/dist/esm/kol-breadcrumb.entry.js +9 -9
  676. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  677. package/dist/esm/kol-button-link.entry.js +4 -4
  678. package/dist/esm/kol-button-link.entry.js.map +1 -1
  679. package/dist/esm/kol-button-wc.entry.js +30 -28
  680. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  681. package/dist/esm/kol-button.entry.js +4 -4
  682. package/dist/esm/kol-button.entry.js.map +1 -1
  683. package/dist/esm/kol-card-wc.entry.js +17 -17
  684. package/dist/esm/kol-card.entry.js +4 -4
  685. package/dist/esm/kol-card.entry.js.map +1 -1
  686. package/dist/esm/kol-click-button.entry.js +9 -9
  687. package/dist/esm/kol-click-button.entry.js.map +1 -1
  688. package/dist/esm/kol-combobox.entry.js +68 -59
  689. package/dist/esm/kol-combobox.entry.js.map +1 -1
  690. package/dist/esm/kol-details.entry.js +13 -13
  691. package/dist/esm/kol-details.entry.js.map +1 -1
  692. package/dist/esm/kol-dialog-wc.entry.js +9 -9
  693. package/dist/esm/kol-dialog.entry.js +4 -4
  694. package/dist/esm/kol-dialog.entry.js.map +1 -1
  695. package/dist/esm/kol-drawer.entry.js +12 -12
  696. package/dist/esm/kol-drawer.entry.js.map +1 -1
  697. package/dist/esm/kol-form.entry.js +21 -23
  698. package/dist/esm/kol-form.entry.js.map +1 -1
  699. package/dist/esm/kol-heading.entry.js +7 -7
  700. package/dist/esm/kol-heading.entry.js.map +1 -1
  701. package/dist/esm/kol-icon.entry.js +9 -9
  702. package/dist/esm/kol-image.entry.js +7 -7
  703. package/dist/esm/kol-image.entry.js.map +1 -1
  704. package/dist/esm/kol-input-checkbox.entry.js +41 -34
  705. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  706. package/dist/esm/kol-input-color.entry.js +41 -34
  707. package/dist/esm/kol-input-color.entry.js.map +1 -1
  708. package/dist/esm/kol-input-date.entry.js +44 -37
  709. package/dist/esm/kol-input-date.entry.js.map +1 -1
  710. package/dist/esm/kol-input-email.entry.js +50 -43
  711. package/dist/esm/kol-input-email.entry.js.map +1 -1
  712. package/dist/esm/kol-input-file.entry.js +41 -34
  713. package/dist/esm/kol-input-file.entry.js.map +1 -1
  714. package/dist/esm/kol-input-number.entry.js +45 -38
  715. package/dist/esm/kol-input-number.entry.js.map +1 -1
  716. package/dist/esm/kol-input-password.entry.js +46 -39
  717. package/dist/esm/kol-input-password.entry.js.map +1 -1
  718. package/dist/esm/kol-input-radio.entry.js +41 -34
  719. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  720. package/dist/esm/kol-input-range.entry.js +44 -36
  721. package/dist/esm/kol-input-range.entry.js.map +1 -1
  722. package/dist/esm/kol-input-text.entry.js +49 -42
  723. package/dist/esm/kol-input-text.entry.js.map +1 -1
  724. package/dist/esm/kol-kolibri.entry.js +8 -8
  725. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  726. package/dist/esm/kol-link-button.entry.js +4 -4
  727. package/dist/esm/kol-link-button.entry.js.map +1 -1
  728. package/dist/esm/kol-link-wc.entry.js +27 -27
  729. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  730. package/dist/esm/kol-link.entry.js +4 -4
  731. package/dist/esm/kol-link.entry.js.map +1 -1
  732. package/dist/esm/kol-meter.entry.js +16 -12
  733. package/dist/esm/kol-meter.entry.js.map +1 -1
  734. package/dist/esm/kol-modal.entry.js +4 -4
  735. package/dist/esm/kol-modal.entry.js.map +1 -1
  736. package/dist/esm/kol-nav.entry.js +12 -12
  737. package/dist/esm/kol-nav.entry.js.map +1 -1
  738. package/dist/esm/kol-pagination-wc.entry.js +10 -10
  739. package/dist/esm/kol-pagination.entry.js +4 -4
  740. package/dist/esm/kol-pagination.entry.js.map +1 -1
  741. package/dist/esm/kol-popover-button-wc.entry.js +8 -8
  742. package/dist/esm/kol-popover-button-wc.entry.js.map +1 -1
  743. package/dist/esm/kol-popover-button.entry.js +4 -4
  744. package/dist/esm/kol-popover-button.entry.js.map +1 -1
  745. package/dist/esm/kol-progress.entry.js +10 -10
  746. package/dist/esm/kol-progress.entry.js.map +1 -1
  747. package/dist/esm/kol-quote.entry.js +8 -8
  748. package/dist/esm/kol-quote.entry.js.map +1 -1
  749. package/dist/esm/kol-select-wc.entry.js +44 -37
  750. package/dist/esm/kol-select-wc.entry.js.map +1 -1
  751. package/dist/esm/kol-select.entry.js +12 -4
  752. package/dist/esm/kol-select.entry.js.map +1 -1
  753. package/dist/esm/kol-single-select.entry.js +46 -39
  754. package/dist/esm/kol-single-select.entry.js.map +1 -1
  755. package/dist/esm/kol-skeleton.entry.js +7 -7
  756. package/dist/esm/kol-skip-nav.entry.js +7 -7
  757. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  758. package/dist/esm/kol-spin.entry.js +11 -19
  759. package/dist/esm/kol-spin.entry.js.map +1 -1
  760. package/dist/esm/kol-split-button.entry.js +7 -7
  761. package/dist/esm/kol-split-button.entry.js.map +1 -1
  762. package/dist/esm/kol-table-settings-wc.entry.js +7 -6
  763. package/dist/esm/kol-table-settings-wc.entry.js.map +1 -1
  764. package/dist/esm/kol-table-stateful.entry.js +10 -9
  765. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  766. package/dist/esm/kol-table-stateless-wc.entry.js +18 -18
  767. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  768. package/dist/esm/kol-table-stateless.entry.js +6 -5
  769. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  770. package/dist/esm/kol-tabs.entry.js +9 -9
  771. package/dist/esm/kol-tabs.entry.js.map +1 -1
  772. package/dist/esm/kol-textarea.entry.js +43 -36
  773. package/dist/esm/kol-textarea.entry.js.map +1 -1
  774. package/dist/esm/kol-toast-container.entry.js +14 -14
  775. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  776. package/dist/esm/kol-toolbar.entry.js +6 -6
  777. package/dist/esm/kol-toolbar.entry.js.map +1 -1
  778. package/dist/esm/kol-tooltip-wc.entry.js +13 -13
  779. package/dist/esm/kol-tree-item-wc.entry.js +11 -11
  780. package/dist/esm/kol-tree-item.entry.js +4 -4
  781. package/dist/esm/kol-tree-item.entry.js.map +1 -1
  782. package/dist/esm/kol-tree-wc.entry.js +4 -4
  783. package/dist/esm/kol-tree-wc.entry.js.map +1 -1
  784. package/dist/esm/kol-tree.entry.js +4 -4
  785. package/dist/esm/kol-tree.entry.js.map +1 -1
  786. package/dist/esm/kol-version.entry.js +7 -7
  787. package/dist/esm/kol-version.entry.js.map +1 -1
  788. package/dist/esm/kolibri.js +5 -5
  789. package/dist/esm/{label-DPd4-fag.js → label-BT-6lb8r.js} +3 -3
  790. package/dist/esm/{label-DPd4-fag.js.map → label-BT-6lb8r.js.map} +1 -1
  791. package/dist/esm/{label-Cg7TG_7b.js → label-BiOix5de.js} +3 -3
  792. package/dist/{kolibri/label-Cg7TG_7b.js.map → esm/label-BiOix5de.js.map} +1 -1
  793. package/dist/esm/{level-CfQolHx4.js → level-Kr0RFikR.js} +3 -3
  794. package/dist/esm/{level-CfQolHx4.js.map → level-Kr0RFikR.js.map} +1 -1
  795. package/dist/esm/loader.js +5 -5
  796. package/dist/esm/{max-length-behavior-426q5CU6.js → max-length-behavior-CRJOkECl.js} +3 -3
  797. package/dist/esm/{max-length-behavior-426q5CU6.js.map → max-length-behavior-CRJOkECl.js.map} +1 -1
  798. package/dist/esm/{multiple-LEiooHN4.js → multiple-hxH51udE.js} +3 -3
  799. package/dist/esm/{multiple-LEiooHN4.js.map → multiple-hxH51udE.js.map} +1 -1
  800. package/dist/esm/{normalizers-pgU77mXp.js → normalizers-B5NKuJgN.js} +3 -3
  801. package/dist/esm/{normalizers-pgU77mXp.js.map → normalizers-B5NKuJgN.js.map} +1 -1
  802. package/dist/esm/{open-Djbpz6kg.js → open-DZ2Z5a7z.js} +3 -3
  803. package/dist/esm/{open-Djbpz6kg.js.map → open-DZ2Z5a7z.js.map} +1 -1
  804. package/dist/esm/{orientation-BzQXB0-V.js → orientation-BptN6AOK.js} +3 -3
  805. package/dist/esm/{orientation-BzQXB0-V.js.map → orientation-BptN6AOK.js.map} +1 -1
  806. package/dist/esm/{placeholder-CSgrK1Zh.js → placeholder-B4wceSsL.js} +3 -3
  807. package/dist/esm/{placeholder-CSgrK1Zh.js.map → placeholder-B4wceSsL.js.map} +1 -1
  808. package/dist/esm/{read-only-DyuIPHMt.js → read-only-DIC7Vhiy.js} +3 -3
  809. package/dist/esm/{read-only-DyuIPHMt.js.map → read-only-DIC7Vhiy.js.map} +1 -1
  810. package/dist/esm/{required-DAsW5lI1.js → required-By197yB9.js} +3 -3
  811. package/dist/esm/{required-DAsW5lI1.js.map → required-By197yB9.js.map} +1 -1
  812. package/dist/esm/{rows-Bdp885AQ.js → rows-BwZCT-gJ.js} +3 -3
  813. package/dist/esm/{rows-Bdp885AQ.js.map → rows-BwZCT-gJ.js.map} +1 -1
  814. package/dist/esm/{spell-check-CSnDB95u.js → spell-check-CKvoSTJE.js} +3 -3
  815. package/dist/esm/{spell-check-CSnDB95u.js.map → spell-check-CKvoSTJE.js.map} +1 -1
  816. package/dist/esm/{src-C8dP-FLK.js → src-DH5c0A9H.js} +3 -3
  817. package/dist/esm/{src-C8dP-FLK.js.map → src-DH5c0A9H.js.map} +1 -1
  818. package/dist/esm/{suggestions-Cnn1r8zc.js → suggestions-C2o-U3UR.js} +3 -3
  819. package/dist/esm/{suggestions-Cnn1r8zc.js.map → suggestions-C2o-U3UR.js.map} +1 -1
  820. package/dist/esm/{table-selection-DlaNrAWM.js → table-selection-G45AEZGP.js} +3 -3
  821. package/dist/esm/{table-selection-DlaNrAWM.js.map → table-selection-G45AEZGP.js.map} +1 -1
  822. package/dist/esm/test-component.entry.js +2 -2
  823. package/dist/esm/{tooltip-align-DzHPWEpv.js → tooltip-align-BZrIplzz.js} +4 -4
  824. package/dist/esm/{tooltip-align-DzHPWEpv.js.map → tooltip-align-BZrIplzz.js.map} +1 -1
  825. package/dist/esm/{unique-nav-labels-7ifGcuBZ.js → unique-nav-labels-OKhw3uEq.js} +3 -3
  826. package/dist/esm/{unique-nav-labels-7ifGcuBZ.js.map → unique-nav-labels-OKhw3uEq.js.map} +1 -1
  827. package/dist/esm/{validation-B8MhupBp.js → validation-DFynMQYA.js} +3 -3
  828. package/dist/esm/{validation-B8MhupBp.js.map → validation-DFynMQYA.js.map} +1 -1
  829. package/dist/esm/{validation-VhuthteS.js → validation-D_PYegRV.js} +4 -4
  830. package/dist/esm/{validation-VhuthteS.js.map → validation-D_PYegRV.js.map} +1 -1
  831. package/dist/esm/{value-number-clamped-BQ9jw4HR.js → value-number-clamped-eznLHU11.js} +3 -3
  832. package/dist/esm/{value-number-clamped-BQ9jw4HR.js.map → value-number-clamped-eznLHU11.js.map} +1 -1
  833. package/dist/esm/{variant-class-name-CkfE8oGZ.js → variant-class-name-B1jsQGPM.js} +3 -3
  834. package/dist/esm/{variant-class-name-CkfE8oGZ.js.map → variant-class-name-B1jsQGPM.js.map} +1 -1
  835. package/dist/kolibri/Alert-LeFfZ8Oj.js +5 -0
  836. package/dist/{esm/Alert-2bYvhb8i.js.map → kolibri/Alert-LeFfZ8Oj.js.map} +1 -1
  837. package/dist/kolibri/{Collapsible-OjK6lDr2.js → Collapsible-BG8kZny4.js} +2 -2
  838. package/dist/{esm/Collapsible-OjK6lDr2.js.map → kolibri/Collapsible-BG8kZny4.js.map} +1 -1
  839. package/dist/kolibri/{CustomSuggestionsOptionsGroup-Cw_y_smw.js → CustomSuggestionsOptionsGroup--3PdjAdp.js} +2 -2
  840. package/dist/{esm/CustomSuggestionsOptionsGroup-Cw_y_smw.js.map → kolibri/CustomSuggestionsOptionsGroup--3PdjAdp.js.map} +1 -1
  841. package/dist/kolibri/FieldControlStateWrapper-BJghqA8K.js +5 -0
  842. package/dist/{esm/FieldControlStateWrapper-CU6OjlrU.js.map → kolibri/FieldControlStateWrapper-BJghqA8K.js.map} +1 -1
  843. package/dist/kolibri/FormFieldStateWrapper-D1Q6Lpff.js +5 -0
  844. package/dist/kolibri/FormFieldStateWrapper-D1Q6Lpff.js.map +1 -0
  845. package/dist/kolibri/{Heading-C9p_CRv4.js → Heading-uCdB_mbH.js} +2 -2
  846. package/dist/kolibri/{Heading-C9p_CRv4.js.map → Heading-uCdB_mbH.js.map} +1 -1
  847. package/dist/kolibri/Input-Cu811opH.js +5 -0
  848. package/dist/{esm/Input-CwcyFZhB.js.map → kolibri/Input-Cu811opH.js.map} +1 -1
  849. package/dist/kolibri/{InputStateWrapper-CcDZH7W5.js → InputStateWrapper-Cl_V9Vuo.js} +2 -2
  850. package/dist/kolibri/{InputStateWrapper-CcDZH7W5.js.map → InputStateWrapper-Cl_V9Vuo.js.map} +1 -1
  851. package/dist/kolibri/{access-and-short-key-CnWGdP5U.js → access-and-short-key-C7QS_Tel.js} +2 -2
  852. package/dist/kolibri/{access-and-short-key-CnWGdP5U.js.map → access-and-short-key-C7QS_Tel.js.map} +1 -1
  853. package/dist/kolibri/{align-ChLoh-Dq.js → align-DdWzcKWR.js} +2 -2
  854. package/dist/kolibri/{align-ChLoh-Dq.js.map → align-DdWzcKWR.js.map} +1 -1
  855. package/dist/kolibri/{align-floating-elements-DTTpkCAK.js → align-floating-elements-CqZdcuwL.js} +2 -2
  856. package/dist/{esm/align-floating-elements-DTTpkCAK.js.map → kolibri/align-floating-elements-CqZdcuwL.js.map} +1 -1
  857. package/dist/kolibri/app-globals-DMlUA9Gw.js +5 -0
  858. package/dist/kolibri/{app-globals-Cwf240Bw.js.map → app-globals-DMlUA9Gw.js.map} +1 -1
  859. package/dist/kolibri/aria-details-CG4GFq8t.js +5 -0
  860. package/dist/kolibri/aria-details-CG4GFq8t.js.map +1 -0
  861. package/dist/kolibri/aria-expanded-BwKOdsiZ.js +5 -0
  862. package/dist/{esm/aria-expanded--y6Ce39-.js.map → kolibri/aria-expanded-BwKOdsiZ.js.map} +1 -1
  863. package/dist/kolibri/aria-labelledby-6-ki3akM.js +5 -0
  864. package/dist/kolibri/aria-labelledby-6-ki3akM.js.map +1 -0
  865. package/dist/kolibri/aria-labelledby-BuvPnlu7.js +5 -0
  866. package/dist/kolibri/aria-labelledby-BuvPnlu7.js.map +1 -0
  867. package/dist/kolibri/associated.controller-Da2zylzp.js +5 -0
  868. package/dist/kolibri/associated.controller-Da2zylzp.js.map +1 -0
  869. package/dist/kolibri/{auto-complete-CrQJr3SH.js → auto-complete-p-8iouPy.js} +2 -2
  870. package/dist/kolibri/{auto-complete-CrQJr3SH.js.map → auto-complete-p-8iouPy.js.map} +1 -1
  871. package/dist/kolibri/base-web-component-CArCAUxk.js +5 -0
  872. package/dist/kolibri/base-web-component-CArCAUxk.js.map +1 -0
  873. package/dist/kolibri/bem-registry-CqAKWtWY.js +5 -0
  874. package/dist/kolibri/bem-registry-CqAKWtWY.js.map +1 -0
  875. package/dist/kolibri/{bootstrap-UOb6OarC.js → bootstrap-C2nJoN6K.js} +2 -2
  876. package/dist/kolibri/{bootstrap-UOb6OarC.js.map → bootstrap-C2nJoN6K.js.map} +1 -1
  877. package/dist/kolibri/{color-Df2awjVY.js → color-CftCtla8.js} +2 -2
  878. package/dist/{esm/color-Df2awjVY.js.map → kolibri/color-CftCtla8.js.map} +1 -1
  879. package/dist/kolibri/{common-DEEjER7G.js → common-DyILLof-.js} +2 -2
  880. package/dist/kolibri/{common-DEEjER7G.js.map → common-DyILLof-.js.map} +1 -1
  881. package/dist/kolibri/component-2ImIjrdm.js +5 -0
  882. package/dist/{esm/component-j5NhcleS.js.map → kolibri/component-2ImIjrdm.js.map} +1 -1
  883. package/dist/kolibri/component-DI3pO3QY.js +5 -0
  884. package/dist/kolibri/{component-ijX_kUom.js.map → component-DI3pO3QY.js.map} +1 -1
  885. package/dist/kolibri/{component-4RtkhTfb.js → component-DbrY6RW_.js} +2 -2
  886. package/dist/{esm/component-4RtkhTfb.js.map → kolibri/component-DbrY6RW_.js.map} +1 -1
  887. package/dist/kolibri/component-fsnfw59D.js +5 -0
  888. package/dist/kolibri/{component-BFsdrctP.js.map → component-fsnfw59D.js.map} +1 -1
  889. package/dist/kolibri/{contrast-C0oqtcfU.js → contrast-D1msrkD4.js} +2 -2
  890. package/dist/kolibri/{contrast-C0oqtcfU.js.map → contrast-D1msrkD4.js.map} +1 -1
  891. package/dist/kolibri/{controller-D0y9uwX0.js → controller-B21n_zqt.js} +2 -2
  892. package/dist/kolibri/{controller-D0y9uwX0.js.map → controller-B21n_zqt.js.map} +1 -1
  893. package/dist/kolibri/controller-B2Qb2oqz.js +5 -0
  894. package/dist/{esm/controller-DvdfA2RR.js.map → kolibri/controller-B2Qb2oqz.js.map} +1 -1
  895. package/dist/kolibri/controller-BuikHDKh.js +5 -0
  896. package/dist/{esm/controller-B4DO-yV0.js.map → kolibri/controller-BuikHDKh.js.map} +1 -1
  897. package/dist/kolibri/controller-CJs4fTO0.js +5 -0
  898. package/dist/kolibri/controller-CJs4fTO0.js.map +1 -0
  899. package/dist/kolibri/{controller-CcrsrzWi.js → controller-DiWO-Gw_.js} +2 -2
  900. package/dist/kolibri/{controller-CcrsrzWi.js.map → controller-DiWO-Gw_.js.map} +1 -1
  901. package/dist/kolibri/{controller-icon-D3_aQk9W.js → controller-icon-DaBPXypo.js} +2 -2
  902. package/dist/kolibri/{controller-icon-D3_aQk9W.js.map → controller-icon-DaBPXypo.js.map} +1 -1
  903. package/dist/kolibri/custom-class-DRA8ZYTU.js +5 -0
  904. package/dist/kolibri/{custom-class-RTVG26D_.js.map → custom-class-DRA8ZYTU.js.map} +1 -1
  905. package/dist/kolibri/dev.utils-Ce_5C3Pe.js +5 -0
  906. package/dist/{esm/dev.utils-Cv9uCwkA.js.map → kolibri/dev.utils-Ce_5C3Pe.js.map} +1 -1
  907. package/dist/kolibri/devtools-yLGw7QsN.js +5 -0
  908. package/dist/kolibri/{devtools-BOWjtOAI.js.map → devtools-yLGw7QsN.js.map} +1 -1
  909. package/dist/kolibri/{disabled-CtaJsBT2.js → disabled-DzYBnXfG.js} +2 -2
  910. package/dist/kolibri/{disabled-CtaJsBT2.js.map → disabled-DzYBnXfG.js.map} +1 -1
  911. package/dist/kolibri/element-focus-BQXzaLL9.js.map +1 -1
  912. package/dist/kolibri/has-closer-COzVY-FT.js +5 -0
  913. package/dist/kolibri/{has-closer-GBI76y-L.js.map → has-closer-COzVY-FT.js.map} +1 -1
  914. package/dist/kolibri/hide-label-jbOZNqJV.js +5 -0
  915. package/dist/kolibri/{hide-label-CWFMK5Iz.js.map → hide-label-jbOZNqJV.js.map} +1 -1
  916. package/dist/kolibri/href-CMm8l_Io.js +5 -0
  917. package/dist/kolibri/{href-yQN98Z4F.js.map → href-CMm8l_Io.js.map} +1 -1
  918. package/dist/kolibri/i18n-BkwRYsvE.js +5 -0
  919. package/dist/kolibri/{i18n-CaL2ODdQ.js.map → i18n-BkwRYsvE.js.map} +1 -1
  920. package/dist/kolibri/i18n-CMA39edx.js +5 -0
  921. package/dist/kolibri/i18n-CMA39edx.js.map +1 -0
  922. package/dist/kolibri/{icons-DOGnS2Iv.js → icons-BfxrxChI.js} +2 -2
  923. package/dist/{esm/icons-DOGnS2Iv.js.map → kolibri/icons-BfxrxChI.js.map} +1 -1
  924. package/dist/kolibri/{index-DqvPZ16l.js → index-CwtGN7ID.js} +3 -3
  925. package/dist/kolibri/{index-DqvPZ16l.js.map → index-CwtGN7ID.js.map} +1 -1
  926. package/dist/kolibri/index.esm.js +1 -1
  927. package/dist/kolibri/inline-CIEtzpMz.js +5 -0
  928. package/dist/kolibri/{inline-D3v7pifU.js.map → inline-CIEtzpMz.js.map} +1 -1
  929. package/dist/kolibri/kol-abbr.entry.esm.js.map +1 -1
  930. package/dist/kolibri/kol-abbr.entry.js +1 -1
  931. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  932. package/dist/kolibri/kol-accordion.entry.esm.js.map +1 -1
  933. package/dist/kolibri/kol-accordion.entry.js +1 -1
  934. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  935. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  936. package/dist/kolibri/kol-alert.entry.esm.js.map +1 -1
  937. package/dist/kolibri/kol-alert.entry.js +1 -1
  938. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  939. package/dist/kolibri/kol-avatar.entry.esm.js.map +1 -1
  940. package/dist/kolibri/kol-avatar.entry.js +1 -1
  941. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  942. package/dist/kolibri/kol-badge.entry.esm.js.map +1 -1
  943. package/dist/kolibri/kol-badge.entry.js +1 -1
  944. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  945. package/dist/kolibri/kol-breadcrumb.entry.esm.js.map +1 -1
  946. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  947. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  948. package/dist/kolibri/kol-button-link.entry.esm.js.map +1 -1
  949. package/dist/kolibri/kol-button-link.entry.js +1 -1
  950. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  951. package/dist/kolibri/kol-button-wc.entry.esm.js.map +1 -1
  952. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  953. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  954. package/dist/kolibri/kol-button.entry.esm.js.map +1 -1
  955. package/dist/kolibri/kol-button.entry.js +1 -1
  956. package/dist/kolibri/kol-button.entry.js.map +1 -1
  957. package/dist/kolibri/kol-card-wc.entry.js +1 -1
  958. package/dist/kolibri/kol-card-wc.entry.js.map +1 -1
  959. package/dist/kolibri/kol-card.entry.esm.js.map +1 -1
  960. package/dist/kolibri/kol-card.entry.js +1 -1
  961. package/dist/kolibri/kol-card.entry.js.map +1 -1
  962. package/dist/kolibri/kol-click-button.entry.esm.js.map +1 -1
  963. package/dist/kolibri/kol-click-button.entry.js +1 -1
  964. package/dist/kolibri/kol-click-button.entry.js.map +1 -1
  965. package/dist/kolibri/kol-combobox.entry.esm.js.map +1 -1
  966. package/dist/kolibri/kol-combobox.entry.js +1 -1
  967. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  968. package/dist/kolibri/kol-details.entry.esm.js.map +1 -1
  969. package/dist/kolibri/kol-details.entry.js +1 -1
  970. package/dist/kolibri/kol-details.entry.js.map +1 -1
  971. package/dist/kolibri/kol-dialog-wc.entry.js +1 -1
  972. package/dist/kolibri/kol-dialog.entry.esm.js.map +1 -1
  973. package/dist/kolibri/kol-dialog.entry.js +1 -1
  974. package/dist/kolibri/kol-dialog.entry.js.map +1 -1
  975. package/dist/kolibri/kol-drawer.entry.esm.js.map +1 -1
  976. package/dist/kolibri/kol-drawer.entry.js +1 -1
  977. package/dist/kolibri/kol-drawer.entry.js.map +1 -1
  978. package/dist/kolibri/kol-form.entry.esm.js.map +1 -1
  979. package/dist/kolibri/kol-form.entry.js +1 -1
  980. package/dist/kolibri/kol-form.entry.js.map +1 -1
  981. package/dist/kolibri/kol-heading.entry.esm.js.map +1 -1
  982. package/dist/kolibri/kol-heading.entry.js +1 -1
  983. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  984. package/dist/kolibri/kol-icon.entry.js +1 -1
  985. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  986. package/dist/kolibri/kol-image.entry.esm.js.map +1 -1
  987. package/dist/kolibri/kol-image.entry.js +1 -1
  988. package/dist/kolibri/kol-image.entry.js.map +1 -1
  989. package/dist/kolibri/kol-input-checkbox.entry.esm.js.map +1 -1
  990. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  991. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  992. package/dist/kolibri/kol-input-color.entry.esm.js.map +1 -1
  993. package/dist/kolibri/kol-input-color.entry.js +1 -1
  994. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  995. package/dist/kolibri/kol-input-date.entry.esm.js.map +1 -1
  996. package/dist/kolibri/kol-input-date.entry.js +1 -1
  997. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  998. package/dist/kolibri/kol-input-email.entry.esm.js.map +1 -1
  999. package/dist/kolibri/kol-input-email.entry.js +1 -1
  1000. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  1001. package/dist/kolibri/kol-input-file.entry.esm.js.map +1 -1
  1002. package/dist/kolibri/kol-input-file.entry.js +1 -1
  1003. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  1004. package/dist/kolibri/kol-input-number.entry.esm.js.map +1 -1
  1005. package/dist/kolibri/kol-input-number.entry.js +1 -1
  1006. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  1007. package/dist/kolibri/kol-input-password.entry.esm.js.map +1 -1
  1008. package/dist/kolibri/kol-input-password.entry.js +1 -1
  1009. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  1010. package/dist/kolibri/kol-input-radio.entry.esm.js.map +1 -1
  1011. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  1012. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  1013. package/dist/kolibri/kol-input-range.entry.esm.js.map +1 -1
  1014. package/dist/kolibri/kol-input-range.entry.js +1 -1
  1015. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  1016. package/dist/kolibri/kol-input-text.entry.esm.js.map +1 -1
  1017. package/dist/kolibri/kol-input-text.entry.js +1 -1
  1018. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  1019. package/dist/kolibri/kol-kolibri.entry.esm.js.map +1 -1
  1020. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  1021. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  1022. package/dist/kolibri/kol-link-button.entry.esm.js.map +1 -1
  1023. package/dist/kolibri/kol-link-button.entry.js +1 -1
  1024. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  1025. package/dist/kolibri/kol-link-wc.entry.esm.js.map +1 -1
  1026. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  1027. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  1028. package/dist/kolibri/kol-link.entry.esm.js.map +1 -1
  1029. package/dist/kolibri/kol-link.entry.js +1 -1
  1030. package/dist/kolibri/kol-link.entry.js.map +1 -1
  1031. package/dist/kolibri/kol-meter.entry.esm.js.map +1 -1
  1032. package/dist/kolibri/kol-meter.entry.js +1 -1
  1033. package/dist/kolibri/kol-meter.entry.js.map +1 -1
  1034. package/dist/kolibri/kol-modal.entry.esm.js.map +1 -1
  1035. package/dist/kolibri/kol-modal.entry.js +1 -1
  1036. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  1037. package/dist/kolibri/kol-nav.entry.esm.js.map +1 -1
  1038. package/dist/kolibri/kol-nav.entry.js +1 -1
  1039. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  1040. package/dist/kolibri/kol-pagination-wc.entry.js +1 -1
  1041. package/dist/kolibri/kol-pagination.entry.esm.js.map +1 -1
  1042. package/dist/kolibri/kol-pagination.entry.js +1 -1
  1043. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  1044. package/dist/kolibri/kol-popover-button-wc.entry.esm.js.map +1 -1
  1045. package/dist/kolibri/kol-popover-button-wc.entry.js +1 -1
  1046. package/dist/kolibri/kol-popover-button-wc.entry.js.map +1 -1
  1047. package/dist/kolibri/kol-popover-button.entry.esm.js.map +1 -1
  1048. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  1049. package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
  1050. package/dist/kolibri/kol-progress.entry.esm.js.map +1 -1
  1051. package/dist/kolibri/kol-progress.entry.js +1 -1
  1052. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  1053. package/dist/kolibri/kol-quote.entry.esm.js.map +1 -1
  1054. package/dist/kolibri/kol-quote.entry.js +1 -1
  1055. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  1056. package/dist/kolibri/kol-select-wc.entry.esm.js.map +1 -1
  1057. package/dist/kolibri/kol-select-wc.entry.js +1 -1
  1058. package/dist/kolibri/kol-select-wc.entry.js.map +1 -1
  1059. package/dist/kolibri/kol-select.entry.esm.js.map +1 -1
  1060. package/dist/kolibri/kol-select.entry.js +1 -1
  1061. package/dist/kolibri/kol-select.entry.js.map +1 -1
  1062. package/dist/kolibri/kol-single-select.entry.esm.js.map +1 -1
  1063. package/dist/kolibri/kol-single-select.entry.js +1 -1
  1064. package/dist/kolibri/kol-single-select.entry.js.map +1 -1
  1065. package/dist/kolibri/kol-skeleton.entry.js +1 -1
  1066. package/dist/kolibri/kol-skeleton.entry.js.map +1 -1
  1067. package/dist/kolibri/kol-skip-nav.entry.esm.js.map +1 -1
  1068. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  1069. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  1070. package/dist/kolibri/kol-spin.entry.esm.js.map +1 -1
  1071. package/dist/kolibri/kol-spin.entry.js +1 -1
  1072. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  1073. package/dist/kolibri/kol-split-button.entry.esm.js.map +1 -1
  1074. package/dist/kolibri/kol-split-button.entry.js +1 -1
  1075. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  1076. package/dist/kolibri/kol-table-settings-wc.entry.esm.js.map +1 -1
  1077. package/dist/kolibri/kol-table-settings-wc.entry.js +1 -1
  1078. package/dist/kolibri/kol-table-settings-wc.entry.js.map +1 -1
  1079. package/dist/kolibri/kol-table-stateful.entry.esm.js.map +1 -1
  1080. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  1081. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  1082. package/dist/kolibri/kol-table-stateless-wc.entry.esm.js.map +1 -1
  1083. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  1084. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  1085. package/dist/kolibri/kol-table-stateless.entry.esm.js.map +1 -1
  1086. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  1087. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  1088. package/dist/kolibri/kol-tabs.entry.esm.js.map +1 -1
  1089. package/dist/kolibri/kol-tabs.entry.js +1 -1
  1090. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  1091. package/dist/kolibri/kol-textarea.entry.esm.js.map +1 -1
  1092. package/dist/kolibri/kol-textarea.entry.js +1 -1
  1093. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  1094. package/dist/kolibri/kol-toast-container.entry.esm.js.map +1 -1
  1095. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  1096. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  1097. package/dist/kolibri/kol-toolbar.entry.esm.js.map +1 -1
  1098. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  1099. package/dist/kolibri/kol-toolbar.entry.js.map +1 -1
  1100. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  1101. package/dist/kolibri/kol-tooltip-wc.entry.js.map +1 -1
  1102. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  1103. package/dist/kolibri/kol-tree-item.entry.esm.js.map +1 -1
  1104. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  1105. package/dist/kolibri/kol-tree-item.entry.js.map +1 -1
  1106. package/dist/kolibri/kol-tree-wc.entry.esm.js.map +1 -1
  1107. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  1108. package/dist/kolibri/kol-tree.entry.esm.js.map +1 -1
  1109. package/dist/kolibri/kol-tree.entry.js +1 -1
  1110. package/dist/kolibri/kol-tree.entry.js.map +1 -1
  1111. package/dist/kolibri/kol-version.entry.esm.js.map +1 -1
  1112. package/dist/kolibri/kol-version.entry.js +1 -1
  1113. package/dist/kolibri/kol-version.entry.js.map +1 -1
  1114. package/dist/kolibri/kolibri.esm.js +1 -1
  1115. package/dist/kolibri/{label-DPd4-fag.js → label-BT-6lb8r.js} +2 -2
  1116. package/dist/kolibri/{label-DPd4-fag.js.map → label-BT-6lb8r.js.map} +1 -1
  1117. package/dist/kolibri/label-BiOix5de.js +5 -0
  1118. package/dist/{esm/label-Cg7TG_7b.js.map → kolibri/label-BiOix5de.js.map} +1 -1
  1119. package/dist/kolibri/{level-CfQolHx4.js → level-Kr0RFikR.js} +2 -2
  1120. package/dist/kolibri/{level-CfQolHx4.js.map → level-Kr0RFikR.js.map} +1 -1
  1121. package/dist/kolibri/max-length-behavior-CRJOkECl.js +5 -0
  1122. package/dist/kolibri/{max-length-behavior-426q5CU6.js.map → max-length-behavior-CRJOkECl.js.map} +1 -1
  1123. package/dist/kolibri/multiple-hxH51udE.js +5 -0
  1124. package/dist/kolibri/{multiple-LEiooHN4.js.map → multiple-hxH51udE.js.map} +1 -1
  1125. package/dist/kolibri/{normalizers-pgU77mXp.js → normalizers-B5NKuJgN.js} +2 -2
  1126. package/dist/kolibri/{normalizers-pgU77mXp.js.map → normalizers-B5NKuJgN.js.map} +1 -1
  1127. package/dist/kolibri/open-DZ2Z5a7z.js +5 -0
  1128. package/dist/kolibri/{open-Djbpz6kg.js.map → open-DZ2Z5a7z.js.map} +1 -1
  1129. package/dist/kolibri/{orientation-BzQXB0-V.js → orientation-BptN6AOK.js} +2 -2
  1130. package/dist/kolibri/{orientation-BzQXB0-V.js.map → orientation-BptN6AOK.js.map} +1 -1
  1131. package/dist/kolibri/placeholder-B4wceSsL.js +5 -0
  1132. package/dist/kolibri/{placeholder-CSgrK1Zh.js.map → placeholder-B4wceSsL.js.map} +1 -1
  1133. package/dist/kolibri/read-only-DIC7Vhiy.js +5 -0
  1134. package/dist/kolibri/{read-only-DyuIPHMt.js.map → read-only-DIC7Vhiy.js.map} +1 -1
  1135. package/dist/kolibri/required-By197yB9.js +5 -0
  1136. package/dist/kolibri/{required-DAsW5lI1.js.map → required-By197yB9.js.map} +1 -1
  1137. package/dist/kolibri/rows-BwZCT-gJ.js +5 -0
  1138. package/dist/kolibri/{rows-Bdp885AQ.js.map → rows-BwZCT-gJ.js.map} +1 -1
  1139. package/dist/kolibri/spell-check-CKvoSTJE.js +5 -0
  1140. package/dist/kolibri/{spell-check-CSnDB95u.js.map → spell-check-CKvoSTJE.js.map} +1 -1
  1141. package/dist/kolibri/src-DH5c0A9H.js +5 -0
  1142. package/dist/kolibri/{src-C8dP-FLK.js.map → src-DH5c0A9H.js.map} +1 -1
  1143. package/dist/kolibri/suggestions-C2o-U3UR.js +5 -0
  1144. package/dist/kolibri/{suggestions-Cnn1r8zc.js.map → suggestions-C2o-U3UR.js.map} +1 -1
  1145. package/dist/kolibri/{table-selection-DlaNrAWM.js → table-selection-G45AEZGP.js} +2 -2
  1146. package/dist/kolibri/{table-selection-DlaNrAWM.js.map → table-selection-G45AEZGP.js.map} +1 -1
  1147. package/dist/kolibri/test-component.entry.js +1 -1
  1148. package/dist/kolibri/tooltip-align-BZrIplzz.js +5 -0
  1149. package/dist/kolibri/{tooltip-align-DzHPWEpv.js.map → tooltip-align-BZrIplzz.js.map} +1 -1
  1150. package/dist/kolibri/unique-nav-labels-OKhw3uEq.js +5 -0
  1151. package/dist/kolibri/{unique-nav-labels-7ifGcuBZ.js.map → unique-nav-labels-OKhw3uEq.js.map} +1 -1
  1152. package/dist/kolibri/validation-DFynMQYA.js +5 -0
  1153. package/dist/kolibri/{validation-B8MhupBp.js.map → validation-DFynMQYA.js.map} +1 -1
  1154. package/dist/kolibri/validation-D_PYegRV.js +5 -0
  1155. package/dist/kolibri/{validation-VhuthteS.js.map → validation-D_PYegRV.js.map} +1 -1
  1156. package/dist/kolibri/value-number-clamped-eznLHU11.js +5 -0
  1157. package/dist/kolibri/{value-number-clamped-BQ9jw4HR.js.map → value-number-clamped-eznLHU11.js.map} +1 -1
  1158. package/dist/kolibri/{variant-class-name-CkfE8oGZ.js → variant-class-name-B1jsQGPM.js} +2 -2
  1159. package/dist/kolibri/{variant-class-name-CkfE8oGZ.js.map → variant-class-name-B1jsQGPM.js.map} +1 -1
  1160. package/dist/types/components/@deprecated/input/controller.d.ts +5 -4
  1161. package/dist/types/components/abbr/component.d.ts +17 -0
  1162. package/dist/types/components/accordion/shadow.d.ts +2 -2
  1163. package/dist/types/components/button/component.d.ts +2 -2
  1164. package/dist/types/components/button/shadow.d.ts +2 -2
  1165. package/dist/types/components/button-link/shadow.d.ts +2 -2
  1166. package/dist/types/components/combobox/shadow.d.ts +4 -2
  1167. package/dist/types/components/component-list.d.ts +1 -1
  1168. package/dist/types/components/details/shadow.d.ts +2 -2
  1169. package/dist/types/components/form/shadow.d.ts +3 -2
  1170. package/dist/types/components/input-adapter-leanup/associated.controller.d.ts +3 -0
  1171. package/dist/types/components/input-checkbox/shadow.d.ts +4 -2
  1172. package/dist/types/components/input-color/shadow.d.ts +4 -2
  1173. package/dist/types/components/input-date/controller.d.ts +1 -1
  1174. package/dist/types/components/input-date/shadow.d.ts +4 -2
  1175. package/dist/types/components/input-email/shadow.d.ts +4 -2
  1176. package/dist/types/components/input-file/shadow.d.ts +4 -2
  1177. package/dist/types/components/input-number/shadow.d.ts +4 -2
  1178. package/dist/types/components/input-password/shadow.d.ts +4 -2
  1179. package/dist/types/components/input-radio/shadow.d.ts +4 -2
  1180. package/dist/types/components/input-range/shadow.d.ts +4 -2
  1181. package/dist/types/components/input-text/shadow.d.ts +4 -2
  1182. package/dist/types/components/link/component.d.ts +2 -2
  1183. package/dist/types/components/link/shadow.d.ts +1 -1
  1184. package/dist/types/components/link-button/shadow.d.ts +2 -2
  1185. package/dist/types/components/popover-button/component.d.ts +2 -2
  1186. package/dist/types/components/popover-button/shadow.d.ts +2 -2
  1187. package/dist/types/components/select/component.d.ts +4 -2
  1188. package/dist/types/components/select/shadow.d.ts +4 -2
  1189. package/dist/types/components/single-select/shadow.d.ts +4 -2
  1190. package/dist/types/components/skip-nav/shadow.d.ts +1 -1
  1191. package/dist/types/components/split-button/shadow.d.ts +2 -2
  1192. package/dist/types/components/tabs/shadow.d.ts +2 -2
  1193. package/dist/types/components/textarea/shadow.d.ts +4 -2
  1194. package/dist/types/components/toolbar/shadow.d.ts +2 -2
  1195. package/dist/types/components/tree/component.d.ts +1 -1
  1196. package/dist/types/components/tree/shadow.d.ts +1 -1
  1197. package/dist/types/components.d.ts +123 -3
  1198. package/dist/types/e2e/index.d.ts +0 -1
  1199. package/dist/types/index.d.ts +1 -1
  1200. package/dist/types/internal/functional-components/abbr/api.d.ts +9 -0
  1201. package/dist/types/internal/functional-components/abbr/component.d.ts +4 -0
  1202. package/dist/types/internal/functional-components/abbr/controller.d.ts +8 -0
  1203. package/dist/types/internal/functional-components/meter/controller.d.ts +2 -1
  1204. package/dist/types/internal/functional-components/progress/controller.d.ts +2 -1
  1205. package/dist/types/internal/functional-components/spin/api.d.ts +0 -4
  1206. package/dist/types/internal/functional-components/spin/controller.d.ts +2 -5
  1207. package/dist/types/locales/de.d.ts +1 -0
  1208. package/dist/types/locales/en.d.ts +1 -0
  1209. package/dist/types/schema/bem-registry.d.ts +3 -0
  1210. package/dist/types/schema/components/combobox.d.ts +2 -2
  1211. package/dist/types/schema/components/input-checkbox.d.ts +2 -2
  1212. package/dist/types/schema/components/input-color.d.ts +2 -2
  1213. package/dist/types/schema/components/input-date.d.ts +2 -2
  1214. package/dist/types/schema/components/input-email.d.ts +2 -2
  1215. package/dist/types/schema/components/input-file.d.ts +2 -2
  1216. package/dist/types/schema/components/input-number.d.ts +2 -2
  1217. package/dist/types/schema/components/input-password.d.ts +2 -2
  1218. package/dist/types/schema/components/input-radio.d.ts +2 -2
  1219. package/dist/types/schema/components/input-range.d.ts +2 -2
  1220. package/dist/types/schema/components/input-text.d.ts +3 -3
  1221. package/dist/types/schema/components/select.d.ts +3 -3
  1222. package/dist/types/schema/components/single-select.d.ts +2 -2
  1223. package/dist/types/schema/components/textarea.d.ts +2 -2
  1224. package/dist/types/schema/interfaces/ClickableElement.d.ts +3 -0
  1225. package/dist/types/schema/interfaces/index.d.ts +1 -0
  1226. package/dist/types/schema/props/aria-details.d.ts +6 -0
  1227. package/dist/types/schema/props/error-list.d.ts +2 -0
  1228. package/dist/types/schema/props/index.d.ts +1 -0
  1229. package/dist/types/utils/aria-labelledby.d.ts +3 -2
  1230. package/dist/types/utils/element-click.d.ts +0 -3
  1231. package/doc/combobox.md +1 -0
  1232. package/doc/form.md +7 -1
  1233. package/doc/input-checkbox.md +22 -21
  1234. package/doc/input-color.md +21 -20
  1235. package/doc/input-date.md +27 -26
  1236. package/doc/input-email.md +29 -28
  1237. package/doc/input-file.md +21 -20
  1238. package/doc/input-number.md +27 -26
  1239. package/doc/input-password.md +28 -27
  1240. package/doc/input-radio.md +18 -17
  1241. package/doc/input-range.md +23 -22
  1242. package/doc/input-text.md +1 -0
  1243. package/doc/select.md +1 -0
  1244. package/doc/single-select.md +23 -22
  1245. package/doc/textarea.md +1 -0
  1246. package/package.json +12 -14
  1247. package/vscode-custom-data.json +56 -0
  1248. package/dist/cjs/FormFieldStateWrapper-D8PA3SkL.js.map +0 -1
  1249. package/dist/cjs/aria-labelledby-BhnM3OnL.js.map +0 -1
  1250. package/dist/cjs/associated.controller-CUvZCmFF.js.map +0 -1
  1251. package/dist/cjs/bem-registry-D9uDM1GJ.js.map +0 -1
  1252. package/dist/cjs/controller-DHsc-8t1.js.map +0 -1
  1253. package/dist/cjs/i18n-CgUN6lev.js.map +0 -1
  1254. package/dist/cjs/variant-quote-DUWZtljE.js.map +0 -1
  1255. package/dist/collection/components/abbr/shadow.js.map +0 -1
  1256. package/dist/collection/e2e/input-callbacks-and-events.js +0 -56
  1257. package/dist/collection/e2e/input-callbacks-and-events.js.map +0 -1
  1258. package/dist/components/variant-quote.js.map +0 -1
  1259. package/dist/esm/FormFieldStateWrapper-C31luuWs.js.map +0 -1
  1260. package/dist/esm/aria-labelledby-BUOJRaGL.js.map +0 -1
  1261. package/dist/esm/associated.controller-D55JWKjs.js.map +0 -1
  1262. package/dist/esm/bem-registry-B9CzNnO1.js.map +0 -1
  1263. package/dist/esm/controller-oT8Y98Yc.js.map +0 -1
  1264. package/dist/esm/i18n-B2d_exHc.js.map +0 -1
  1265. package/dist/esm/variant-quote-BMV8GZX8.js.map +0 -1
  1266. package/dist/kolibri/Alert-2bYvhb8i.js +0 -5
  1267. package/dist/kolibri/FieldControlStateWrapper-CU6OjlrU.js +0 -5
  1268. package/dist/kolibri/FormFieldStateWrapper-C31luuWs.js +0 -5
  1269. package/dist/kolibri/FormFieldStateWrapper-C31luuWs.js.map +0 -1
  1270. package/dist/kolibri/Input-CwcyFZhB.js +0 -5
  1271. package/dist/kolibri/app-globals-Cwf240Bw.js +0 -5
  1272. package/dist/kolibri/aria-expanded--y6Ce39-.js +0 -5
  1273. package/dist/kolibri/aria-labelledby-BUOJRaGL.js +0 -5
  1274. package/dist/kolibri/aria-labelledby-BUOJRaGL.js.map +0 -1
  1275. package/dist/kolibri/associated.controller-D55JWKjs.js +0 -5
  1276. package/dist/kolibri/associated.controller-D55JWKjs.js.map +0 -1
  1277. package/dist/kolibri/bem-registry-B9CzNnO1.js +0 -5
  1278. package/dist/kolibri/bem-registry-B9CzNnO1.js.map +0 -1
  1279. package/dist/kolibri/component-BFsdrctP.js +0 -5
  1280. package/dist/kolibri/component-ijX_kUom.js +0 -5
  1281. package/dist/kolibri/component-j5NhcleS.js +0 -5
  1282. package/dist/kolibri/controller-B4DO-yV0.js +0 -5
  1283. package/dist/kolibri/controller-DvdfA2RR.js +0 -5
  1284. package/dist/kolibri/controller-oT8Y98Yc.js +0 -5
  1285. package/dist/kolibri/controller-oT8Y98Yc.js.map +0 -1
  1286. package/dist/kolibri/custom-class-RTVG26D_.js +0 -5
  1287. package/dist/kolibri/dev.utils-Cv9uCwkA.js +0 -5
  1288. package/dist/kolibri/devtools-BOWjtOAI.js +0 -5
  1289. package/dist/kolibri/has-closer-GBI76y-L.js +0 -5
  1290. package/dist/kolibri/hide-label-CWFMK5Iz.js +0 -5
  1291. package/dist/kolibri/href-yQN98Z4F.js +0 -5
  1292. package/dist/kolibri/i18n-B2d_exHc.js +0 -5
  1293. package/dist/kolibri/i18n-B2d_exHc.js.map +0 -1
  1294. package/dist/kolibri/i18n-CaL2ODdQ.js +0 -5
  1295. package/dist/kolibri/inline-D3v7pifU.js +0 -5
  1296. package/dist/kolibri/label-Cg7TG_7b.js +0 -5
  1297. package/dist/kolibri/max-length-behavior-426q5CU6.js +0 -5
  1298. package/dist/kolibri/multiple-LEiooHN4.js +0 -5
  1299. package/dist/kolibri/open-Djbpz6kg.js +0 -5
  1300. package/dist/kolibri/placeholder-CSgrK1Zh.js +0 -5
  1301. package/dist/kolibri/read-only-DyuIPHMt.js +0 -5
  1302. package/dist/kolibri/required-DAsW5lI1.js +0 -5
  1303. package/dist/kolibri/rows-Bdp885AQ.js +0 -5
  1304. package/dist/kolibri/spell-check-CSnDB95u.js +0 -5
  1305. package/dist/kolibri/src-C8dP-FLK.js +0 -5
  1306. package/dist/kolibri/suggestions-Cnn1r8zc.js +0 -5
  1307. package/dist/kolibri/tooltip-align-DzHPWEpv.js +0 -5
  1308. package/dist/kolibri/unique-nav-labels-7ifGcuBZ.js +0 -5
  1309. package/dist/kolibri/validation-B8MhupBp.js +0 -5
  1310. package/dist/kolibri/validation-VhuthteS.js +0 -5
  1311. package/dist/kolibri/value-number-clamped-BQ9jw4HR.js +0 -5
  1312. package/dist/kolibri/variant-quote-BMV8GZX8.js +0 -5
  1313. package/dist/kolibri/variant-quote-BMV8GZX8.js.map +0 -1
  1314. package/dist/types/components/abbr/shadow.d.ts +0 -14
  1315. package/dist/types/e2e/input-callbacks-and-events.d.ts +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/button/shadow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAoB5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAc7F,MAAM,OAAO,SAAS;IAPtB;QASoB,WAAM,GAAG,YAAY,EAA0B,CAAC;QAyFpD,cAAS,GAAa,KAAK,CAAC;QAO5B,eAAU,GAAa,KAAK,CAAC;QAU7B,YAAO,GAAoB,KAAK,CAAC;QAsCjC,kBAAa,GAA0B,KAAK,CAAC;QAK7C,UAAK,GAAwB,QAAQ,CAAC;QAUtC,aAAQ,GAA2B,QAAQ,CAAC;KAC3D;IAzJO,KAAK,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAOlD,AAAN,KAAK,CAAC,KAAK,KAAmB,CAAC;IAE/B,MAAM;QACZ,OAAO,CACN,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,MAAM,EAChB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACjB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0GD;AA9Ia;IAHZ,aAAa,CAAC,QAAQ,CAAC;sCAGuC;AAOlD;IADZ,aAAa,CAAC,QAAQ,CAAC;sCACc","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonProps,\n\tButtonTypePropType,\n\tButtonVariantPropType,\n\tCustomClassPropType,\n\tFocusableElement,\n\tIconsPropType,\n\tInlinePropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **Button** component is used to present users with action options and arrange them in a clear hierarchy. It helps users find the most important actions on a page or within a viewport and allows them to execute those actions. The button label clearly indicates which action will be triggered. Buttons allow users to confirm a change, complete steps in a task, or make decisions.\n *\n * @slot expert - Custom label content, e.g. for rich text or icons.\n */\n@Component({\n\ttag: 'kol-button',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolButton implements ButtonProps, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolButtonElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<StencilUnknown> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\tref={this.ctaRef}\n\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t_customClass={this._customClass}\n\t\t\t\t_disabled={this._disabled}\n\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t_icons={this._icons}\n\t\t\t\t_inline={this._inline}\n\t\t\t\t_label={this._label}\n\t\t\t\t_name={this._name}\n\t\t\t\t_on={this._on}\n\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t_type={this._type}\n\t\t\t\t_value={this._value}\n\t\t\t\t_variant={this._variant}\n\t\t\t>\n\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t</KolButtonWcTag>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Defines the custom class attribute if _variant=\"custom\" is set.\n\t */\n\t@Prop() public _customClass?: CustomClassPropType;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines whether the component is displayed as a standalone block or inline without enforcing a minimum size of 44px.\n\t */\n\t@Prop() public _inline?: InlinePropType = false;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Defines the callback functions for button events.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop() public _value?: StencilUnknown;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: ButtonVariantPropType = 'normal';\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/button/shadow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAqB5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAc7F,MAAM,OAAO,SAAS;IAPtB;QASoB,WAAM,GAAG,YAAY,EAA0B,CAAC;QAyFpD,cAAS,GAAa,KAAK,CAAC;QAO5B,eAAU,GAAa,KAAK,CAAC;QAU7B,YAAO,GAAoB,KAAK,CAAC;QAsCjC,kBAAa,GAA0B,KAAK,CAAC;QAK7C,UAAK,GAAwB,QAAQ,CAAC;QAUtC,aAAQ,GAA2B,QAAQ,CAAC;KAC3D;IAzJO,KAAK,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAOlD,AAAN,KAAK,CAAC,KAAK,KAAmB,CAAC;IAE/B,MAAM;QACZ,OAAO,CACN,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,MAAM,EAChB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACjB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0GD;AA9Ia;IAHZ,aAAa,CAAC,QAAQ,CAAC;sCAGuC;AAOlD;IADZ,aAAa,CAAC,QAAQ,CAAC;sCACc","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonProps,\n\tButtonTypePropType,\n\tButtonVariantPropType,\n\tClickableElement,\n\tCustomClassPropType,\n\tFocusableElement,\n\tIconsPropType,\n\tInlinePropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **Button** component is used to present users with action options and arrange them in a clear hierarchy. It helps users find the most important actions on a page or within a viewport and allows them to execute those actions. The button label clearly indicates which action will be triggered. Buttons allow users to confirm a change, complete steps in a task, or make decisions.\n *\n * @slot expert - Custom label content, e.g. for rich text or icons.\n */\n@Component({\n\ttag: 'kol-button',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolButton implements ButtonProps, ClickableElement, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolButtonElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<StencilUnknown> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\tref={this.ctaRef}\n\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t_customClass={this._customClass}\n\t\t\t\t_disabled={this._disabled}\n\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t_icons={this._icons}\n\t\t\t\t_inline={this._inline}\n\t\t\t\t_label={this._label}\n\t\t\t\t_name={this._name}\n\t\t\t\t_on={this._on}\n\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t_type={this._type}\n\t\t\t\t_value={this._value}\n\t\t\t\t_variant={this._variant}\n\t\t\t>\n\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t</KolButtonWcTag>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Defines the custom class attribute if _variant=\"custom\" is set.\n\t */\n\t@Prop() public _customClass?: CustomClassPropType;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines whether the component is displayed as a standalone block or inline without enforcing a minimum size of 44px.\n\t */\n\t@Prop() public _inline?: InlinePropType = false;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Defines the callback functions for button events.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop() public _value?: StencilUnknown;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: ButtonVariantPropType = 'normal';\n}\n"]}
@@ -18,9 +18,14 @@
18
18
  @layer kol-a11y {
19
19
  :host {
20
20
  /*
21
- * Minimum size of interactive elements.
22
- */
23
- --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));
21
+ * Minimum size of interactive elements.
22
+ *
23
+ * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:
24
+ * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose
25
+ * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's
26
+ * rounding, dropping just below the required minimum.
27
+ */
28
+ --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);
24
29
  /*
25
30
  * No element should be used without verifying the contrast ratio of its background and font colors.
26
31
  * By initially setting the background color to white and the font color to black,
@@ -202,8 +207,8 @@
202
207
  }
203
208
  @font-face {
204
209
  font-family: "kolicons";
205
- src: url("kolicons.eot?t=1780919027063"); /* IE9*/
206
- src: url("kolicons.eot?t=1780919027063#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1780919027063") format("woff2"), url("kolicons.woff?t=1780919027063") format("woff"), url("kolicons.ttf?t=1780919027063") format("truetype"), url("kolicons.svg?t=1780919027063#kolicons") format("svg"); /* iOS 4.1- */
210
+ src: url("kolicons.eot?t=1782311579243"); /* IE9*/
211
+ src: url("kolicons.eot?t=1782311579243#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1782311579243") format("woff2"), url("kolicons.woff?t=1782311579243") format("woff"), url("kolicons.ttf?t=1782311579243") format("truetype"), url("kolicons.svg?t=1782311579243#kolicons") format("svg"); /* iOS 4.1- */
207
212
  }
208
213
  @layer kol-component {
209
214
  [class^=kolicon-], [class*=" kolicon-"] {
@@ -20,7 +20,7 @@ export class KolButtonLink {
20
20
  async focus(options) { }
21
21
  async click() { }
22
22
  render() {
23
- return (h(KolButtonWcTag, { key: '5fee74186f345d4686b9fe6e2152535fcee9b396', ref: this.ctaRef, _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _inline: this._inline, _label: this._label, _name: this._name, _on: this._on, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }, h("slot", { key: '0006b8420f9f5e12eb7abb341c808b44a982a4a1', name: "expert", slot: "expert" })));
23
+ return (h(KolButtonWcTag, { key: 'df23fa8f5f67dc5dce1220da351022df66a0258a', ref: this.ctaRef, _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _inline: this._inline, _label: this._label, _name: this._name, _on: this._on, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }, h("slot", { key: '08cc099a46b194d65d93998cfb7410147502c988', name: "expert", slot: "expert" })));
24
24
  }
25
25
  static get is() { return "kol-button-link"; }
26
26
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/button-link/shadow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAoB5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAsB7F,MAAM,OAAO,aAAa;IAP1B;QASoB,WAAM,GAAG,YAAY,EAA0B,CAAC;QAsFpD,cAAS,GAAa,KAAK,CAAC;QAO5B,eAAU,GAAa,KAAK,CAAC;QAU7B,YAAO,GAAoB,IAAI,CAAC;QAsChC,kBAAa,GAA0B,KAAK,CAAC;QAK7C,UAAK,GAAwB,QAAQ,CAAC;KAWrD;IAtJO,KAAK,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAOlD,AAAN,KAAK,CAAC,KAAK,KAAmB,CAAC;IAE/B,MAAM;QACZ,OAAO,CACN,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,MAAM,EAChB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACjB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwGD;AA3Ia;IAHZ,aAAa,CAAC,QAAQ,CAAC;0CAGuC;AAOlD;IADZ,aAAa,CAAC,QAAQ,CAAC;0CACc","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonLinkProps,\n\tButtonTypePropType,\n\tFocusableElement,\n\tIconsPropType,\n\tInlinePropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tNamePropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n} from '../../schema';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **ButtonLink** component is semantically a button but has the appearance of a link. All relevant properties of the Button component are adopted and extended with the design-defining properties of a link.\n *\n * A button can be disabled, therefore the **ButtonLink** also has the `_disabled` property. How this is styled visually is determined by the UX designer.\n *\n * Instead of using `_href` as with a regular link, the **ButtonLink**'s behavior is controlled via a click callback using the `_on` property.\n *\n * A link has the `target` property which optionally opens the link in a new window/tab. This behavior is not yet implemented.\n *\n * Since a link, unlike a button, is not offered in multiple variants (`primary`, `secondary`, etc.), the `_customClass` and `_variant` properties are not available.\n *\n * @slot expert - Custom label content, e.g. for rich text or icons.\n */\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements ButtonLinkProps, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolButtonLinkElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<StencilUnknown> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\tref={this.ctaRef}\n\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t_disabled={this._disabled}\n\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t_icons={this._icons}\n\t\t\t\t_inline={this._inline}\n\t\t\t\t_label={this._label}\n\t\t\t\t_name={this._name}\n\t\t\t\t_on={this._on}\n\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t_type={this._type}\n\t\t\t\t_value={this._value}\n\t\t\t\t_variant={this._variant}\n\t\t\t>\n\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t</KolButtonWcTag>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t * @TODO: Change type back to `AriaExpandedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t * @TODO: Change type back to `AriaSelectedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines whether the component is displayed as a standalone block or inline without enforcing a minimum size of 44px.\n\t */\n\t@Prop() public _inline?: InlinePropType = true;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop() public _value?: StencilUnknown;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: VariantClassNamePropType;\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/button-link/shadow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAqB5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAsB7F,MAAM,OAAO,aAAa;IAP1B;QASoB,WAAM,GAAG,YAAY,EAA0B,CAAC;QAsFpD,cAAS,GAAa,KAAK,CAAC;QAO5B,eAAU,GAAa,KAAK,CAAC;QAU7B,YAAO,GAAoB,IAAI,CAAC;QAsChC,kBAAa,GAA0B,KAAK,CAAC;QAK7C,UAAK,GAAwB,QAAQ,CAAC;KAWrD;IAtJO,KAAK,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAOlD,AAAN,KAAK,CAAC,KAAK,KAAmB,CAAC;IAE/B,MAAM;QACZ,OAAO,CACN,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,MAAM,EAChB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YAEvB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACjB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwGD;AA3Ia;IAHZ,aAAa,CAAC,QAAQ,CAAC;0CAGuC;AAOlD;IADZ,aAAa,CAAC,QAAQ,CAAC;0CACc","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonLinkProps,\n\tButtonTypePropType,\n\tClickableElement,\n\tFocusableElement,\n\tIconsPropType,\n\tInlinePropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tNamePropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n} from '../../schema';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **ButtonLink** component is semantically a button but has the appearance of a link. All relevant properties of the Button component are adopted and extended with the design-defining properties of a link.\n *\n * A button can be disabled, therefore the **ButtonLink** also has the `_disabled` property. How this is styled visually is determined by the UX designer.\n *\n * Instead of using `_href` as with a regular link, the **ButtonLink**'s behavior is controlled via a click callback using the `_on` property.\n *\n * A link has the `target` property which optionally opens the link in a new window/tab. This behavior is not yet implemented.\n *\n * Since a link, unlike a button, is not offered in multiple variants (`primary`, `secondary`, etc.), the `_customClass` and `_variant` properties are not available.\n *\n * @slot expert - Custom label content, e.g. for rich text or icons.\n */\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements ButtonLinkProps, ClickableElement, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolButtonLinkElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<StencilUnknown> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\tref={this.ctaRef}\n\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t_disabled={this._disabled}\n\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t_icons={this._icons}\n\t\t\t\t_inline={this._inline}\n\t\t\t\t_label={this._label}\n\t\t\t\t_name={this._name}\n\t\t\t\t_on={this._on}\n\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t_type={this._type}\n\t\t\t\t_value={this._value}\n\t\t\t\t_variant={this._variant}\n\t\t\t>\n\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t</KolButtonWcTag>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t * @TODO: Change type back to `AriaExpandedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t * @TODO: Change type back to `AriaSelectedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines whether the component is displayed as a standalone block or inline without enforcing a minimum size of 44px.\n\t */\n\t@Prop() public _inline?: InlinePropType = true;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop() public _value?: StencilUnknown;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: VariantClassNamePropType;\n}\n"]}
@@ -1,3 +1,4 @@
1
+ @charset "UTF-8";
1
2
  /* forward the rem function */
2
3
  /*
3
4
  * This file defines the layer order for all CSS layers used in KoliBri.
@@ -17,9 +18,14 @@
17
18
  @layer kol-a11y {
18
19
  :host {
19
20
  /*
20
- * Minimum size of interactive elements.
21
- */
22
- --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));
21
+ * Minimum size of interactive elements.
22
+ *
23
+ * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:
24
+ * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose
25
+ * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's
26
+ * rounding, dropping just below the required minimum.
27
+ */
28
+ --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);
23
29
  /*
24
30
  * No element should be used without verifying the contrast ratio of its background and font colors.
25
31
  * By initially setting the background color to white and the font color to black,
@@ -201,8 +207,8 @@
201
207
  }
202
208
  @font-face {
203
209
  font-family: "kolicons";
204
- src: url("kolicons.eot?t=1780919027063"); /* IE9*/
205
- src: url("kolicons.eot?t=1780919027063#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1780919027063") format("woff2"), url("kolicons.woff?t=1780919027063") format("woff"), url("kolicons.ttf?t=1780919027063") format("truetype"), url("kolicons.svg?t=1780919027063#kolicons") format("svg"); /* iOS 4.1- */
210
+ src: url("kolicons.eot?t=1782311579243"); /* IE9*/
211
+ src: url("kolicons.eot?t=1782311579243#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1782311579243") format("woff2"), url("kolicons.woff?t=1782311579243") format("woff"), url("kolicons.ttf?t=1782311579243") format("truetype"), url("kolicons.svg?t=1782311579243#kolicons") format("svg"); /* iOS 4.1- */
206
212
  }
207
213
  @layer kol-component {
208
214
  [class^=kolicon-], [class*=" kolicon-"] {
@@ -33,7 +33,7 @@ export class KolCardWc {
33
33
  this.validateOnValue = (value) => typeof value === 'object' && value !== null && typeof value.onClose === 'function';
34
34
  }
35
35
  render() {
36
- return (h(Host, { key: '909cc395209bdb2eba2f674f5fe9f4b8750fccef' }, h("article", { key: '8bbd3d853a4ea8bc6f83dedf245414e8d9421461', "aria-labelledby": this._headingId, class: "kol-card" }, h(KolHeadingFc, { key: '2609f6812d8d909de20b00162cb119b32c0d7f23', class: "kol-card__header", id: this._headingId, level: this.state._level }, this.state._label), h("div", { key: 'a953cb61794cf76980111256849685184cc5dcf9', class: "kol-card__content" }, h("slot", { key: '31d86a46cb4e9d9cee62692aeea43f08db236ccb' })), this.state._hasCloser && (h(KolButtonWcTag, { key: '763993312892b16856634e6d0d10de5cb1454629', class: "kol-card__close-button kol-close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
36
+ return (h(Host, { key: '905724688ad5dfff280a7eeede9fdceb73de3e0c' }, h("article", { key: '0e7e76ab026256aa23be06e344ae4c03f04a4c28', "aria-labelledby": this._headingId, class: "kol-card" }, h(KolHeadingFc, { key: '2a1973bf10c9fb2fe586c6088d423c592900e070', class: "kol-card__header", id: this._headingId, level: this.state._level }, this.state._label), h("div", { key: '1baec62ec367f3f485c600a492a4774ed4d79295', class: "kol-card__content" }, h("slot", { key: 'd76c9377075c7cda65d85c14b5ed06cac4f04a58' })), this.state._hasCloser && (h(KolButtonWcTag, { key: 'df56bebb19cb1c99f48fe66fd6bfa265e779a028', class: "kol-card__close-button kol-close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
37
37
  left: {
38
38
  icon: 'kolicon-cross',
39
39
  },
@@ -9,7 +9,7 @@ export class KolCard {
9
9
  this._level = 0;
10
10
  }
11
11
  render() {
12
- return (h(KolCardWcTag, { key: 'f62c4259173d32d200f56a4e8b5d94e80d125a7c', _on: this._on, _hasCloser: this._hasCloser, _label: this._label, _level: this._level }, h("slot", { key: '20ba15197879de826bbd47dca19616ec30267f6a' })));
12
+ return (h(KolCardWcTag, { key: 'b7e95eac842a1cbcfb328656f17596283f17284a', _on: this._on, _hasCloser: this._hasCloser, _label: this._label, _level: this._level }, h("slot", { key: '7b686b0f83c138ab0d497f9b6a0d7d5927bce63c' })));
13
13
  }
14
14
  static get is() { return "kol-card"; }
15
15
  static get encapsulation() { return "shadow"; }
@@ -18,9 +18,14 @@
18
18
  @layer kol-a11y {
19
19
  :host {
20
20
  /*
21
- * Minimum size of interactive elements.
22
- */
23
- --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));
21
+ * Minimum size of interactive elements.
22
+ *
23
+ * The `max(…, 44px)` floor guarantees the WCAG 2.5.5 (AAA) target size of 44px:
24
+ * `to-rem(44)` runs the value through a `calc()` rem round-trip which can lose
25
+ * sub-pixel precision and resolve to e.g. 43.99px depending on the browser's
26
+ * rounding, dropping just below the required minimum.
27
+ */
28
+ --a11y-min-size: max(calc(44 * 1rem / var(--kolibri-root-font-size, 16)), 44px);
24
29
  /*
25
30
  * No element should be used without verifying the contrast ratio of its background and font colors.
26
31
  * By initially setting the background color to white and the font color to black,
@@ -202,8 +207,8 @@
202
207
  }
203
208
  @font-face {
204
209
  font-family: "kolicons";
205
- src: url("kolicons.eot?t=1780919027063"); /* IE9*/
206
- src: url("kolicons.eot?t=1780919027063#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1780919027063") format("woff2"), url("kolicons.woff?t=1780919027063") format("woff"), url("kolicons.ttf?t=1780919027063") format("truetype"), url("kolicons.svg?t=1780919027063#kolicons") format("svg"); /* iOS 4.1- */
210
+ src: url("kolicons.eot?t=1782311579243"); /* IE9*/
211
+ src: url("kolicons.eot?t=1782311579243#iefix") format("embedded-opentype"), url("kolicons.woff2?t=1782311579243") format("woff2"), url("kolicons.woff?t=1782311579243") format("woff"), url("kolicons.ttf?t=1782311579243") format("truetype"), url("kolicons.svg?t=1782311579243#kolicons") format("svg"); /* iOS 4.1- */
207
212
  }
208
213
  @layer kol-component {
209
214
  [class^=kolicon-], [class*=" kolicon-"] {
@@ -51,11 +51,13 @@ export class KolCombobox {
51
51
  }
52
52
  onInput(event) {
53
53
  const target = event.target;
54
- this.state._value = target.value;
55
- this._value = target.value;
56
- this.controller.onFacade.onInput(event);
57
- this.setFilteredSuggestionsByQuery(target.value);
54
+ const value = target.value;
55
+ this.state._value = value;
56
+ this._value = value;
57
+ this.controller.onFacade.onInput(event, true, value);
58
+ this.setFilteredSuggestionsByQuery(value);
58
59
  this._focusedOptionIndex = -1;
60
+ event.stopImmediatePropagation();
59
61
  }
60
62
  handleKeyDownDropdown(event) {
61
63
  if (event.key.length === 1 && /[a-z0-9]/i.test(event.key)) {
@@ -141,7 +143,7 @@ export class KolCombobox {
141
143
  }
142
144
  render() {
143
145
  const isDisabled = this.state._disabled === true;
144
- return (h(KolFormFieldStateWrapperFc, Object.assign({ key: 'e1c1d276012a120aecbc27dd85d6b7b94362b181' }, this.getFormFieldProps()), h(KolInputContainerFc, { key: 'bea446c68e3fbfab3a3a0546dcd2d4d8f7c50506', state: this.state }, h("div", { key: '2c25083a888a6ddfc48ca92f55034baf5c94992e', class: "kol-combobox__group" }, h(KolInputStateWrapperFc, Object.assign({ key: 'e5746f2a32c8a3b7e009787e7b4b27d8ebfeddeb' }, this.getInputProps())), this.state._value && this.state._hasClearButton && (h(KolButtonWcTag, { key: '172fafcd61333c6ea2cf827829aaa81fced2f31c', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _variant: "ghost", _disabled: isDisabled, "data-testid": "combobox-delete", class: "kol-combobox__delete", hidden: isDisabled, _on: {
146
+ return (h(KolFormFieldStateWrapperFc, Object.assign({ key: '0617897b0eb7dab9914467d1a70a18abee705750' }, this.getFormFieldProps()), h(KolInputContainerFc, { key: '11db0e080c401390d710d8562bed29fa62013b2f', state: this.state }, h("div", { key: 'd21daa250b70a9a37d4d73c26af069a426e9b89e', class: "kol-combobox__group" }, h(KolInputStateWrapperFc, Object.assign({ key: '843a71c0f5760301179a60692e3f83d302d251a7' }, this.getInputProps())), this.state._value && this.state._hasClearButton && (h(KolButtonWcTag, { key: 'a8e6e4337b2a4b08f13ff811c7193e24aba92a51', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _variant: "ghost", _disabled: isDisabled, "data-testid": "combobox-delete", class: "kol-combobox__delete", hidden: isDisabled, _on: {
145
147
  onClick: () => {
146
148
  this.clearSelection();
147
149
  },
@@ -151,7 +153,7 @@ export class KolCombobox {
151
153
  onBlur: () => {
152
154
  this.clearButtonFocused = false;
153
155
  },
154
- } })), h("button", { key: '7222700ca0fec7067df00c7e4f6e8169a5ac6515', type: "button", tabIndex: -1, class: "kol-combobox-toggle", onClick: this.toggleListbox.bind(this), disabled: this._disabled, hidden: isDisabled }, h(IconFC, { key: '4d2180b057ab9cf6a174f4ba4a2e45f01e16aebb', icons: "kolicon-chevron-down", label: "" }))), h(CustomSuggestionsOptionsGroupFc, { key: 'fff87981e43cda06221984f45f2198a305a4f828', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), hidden: !this._isOpen || isDisabled, id: this.state._id + '-listbox' }, Array.isArray(this._filteredSuggestions) &&
156
+ } })), h("button", { key: 'd2eaaa6e43af3e35fa61813d50ca25e87ccb86cb', type: "button", tabIndex: -1, class: "kol-combobox-toggle", onClick: this.toggleListbox.bind(this), disabled: this._disabled, hidden: isDisabled }, h(IconFC, { key: 'db649c7f98aed2f51775b47b8023b9a5bd0e1167', icons: "kolicon-chevron-down", label: "" }))), h(CustomSuggestionsOptionsGroupFc, { key: '612551e4511599b7245661e442e64954285c74a5', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), hidden: !this._isOpen || isDisabled, id: this.state._id + '-listbox' }, Array.isArray(this._filteredSuggestions) &&
155
157
  this._filteredSuggestions.length > 0 &&
156
158
  this._filteredSuggestions.map((option, index) => (h(CustomSuggestionsOptionFc, { disabled: false, index: index, option: option, searchTerm: this.state._value, ref: (el) => {
157
159
  if (el)
@@ -271,6 +273,9 @@ export class KolCombobox {
271
273
  this._isOpen = false;
272
274
  }
273
275
  }
276
+ validateAriaDetails(value) {
277
+ this.controller.validateAriaDetails(value);
278
+ }
274
279
  constructor() {
275
280
  this.ctaRef = createCtaRef();
276
281
  this.refSuggestions = [];
@@ -383,6 +388,7 @@ export class KolCombobox {
383
388
  this.controller.validateVariant(value);
384
389
  }
385
390
  componentWillLoad() {
391
+ this.validateAriaDetails(this._ariaDetails);
386
392
  this.refSuggestions = [];
387
393
  this._touched = this._touched === true;
388
394
  this.controller.componentWillLoad();
@@ -394,29 +400,29 @@ export class KolCombobox {
394
400
  this.blockSuggestionMouseOver = false;
395
401
  }
396
402
  handleFocusIn(event) {
397
- setTimeout(() => {
398
- var _a;
399
- if (((_a = this.host) === null || _a === void 0 ? void 0 : _a.contains(document.activeElement)) && !this.inputHasFocus) {
400
- this.controller.onFacade.onFocus(event);
401
- this.inputHasFocus = true;
402
- }
403
- });
403
+ var _a;
404
+ if (((_a = this.host) === null || _a === void 0 ? void 0 : _a.contains(document.activeElement)) && !this.inputHasFocus) {
405
+ this.controller.onFacade.onFocus(event);
406
+ this.inputHasFocus = true;
407
+ }
404
408
  }
405
409
  handleFocusOut(event) {
406
- setTimeout(() => {
407
- var _a;
408
- if (this.inputHasFocus && !((_a = this.host) === null || _a === void 0 ? void 0 : _a.contains(document.activeElement))) {
409
- this.controller.onFacade.onBlur(event);
410
- this.inputHasFocus = false;
411
- if (this._isOpen) {
412
- this._isOpen = false;
413
- }
410
+ var _a;
411
+ const relatedTarget = event.relatedTarget;
412
+ const isFocusInside = relatedTarget && (relatedTarget === this.host || ((_a = this.host) === null || _a === void 0 ? void 0 : _a.contains(relatedTarget)));
413
+ if (this.inputHasFocus && !isFocusInside) {
414
+ this.controller.onFacade.onBlur(event);
415
+ this.inputHasFocus = false;
416
+ if (this._isOpen) {
417
+ this._isOpen = false;
414
418
  }
415
- });
419
+ }
416
420
  }
417
421
  onChange(event) {
418
- this.controller.onFacade.onChange(event);
419
- this.controller.setFormAssociatedValue(this.state._value);
422
+ event.stopPropagation();
423
+ const value = this.state._value;
424
+ this.controller.onFacade.onChange(event, value);
425
+ this.controller.setFormAssociatedValue(value);
420
426
  }
421
427
  static get is() { return "kol-combobox"; }
422
428
  static get encapsulation() { return "shadow"; }
@@ -451,6 +457,31 @@ export class KolCombobox {
451
457
  "reflect": false,
452
458
  "attribute": "_access-key"
453
459
  },
460
+ "_ariaDetails": {
461
+ "type": "string",
462
+ "mutable": false,
463
+ "complexType": {
464
+ "original": "AriaDetailsPropType",
465
+ "resolved": "string | undefined",
466
+ "references": {
467
+ "AriaDetailsPropType": {
468
+ "location": "import",
469
+ "path": "../../schema",
470
+ "id": "src/schema/index.ts::AriaDetailsPropType"
471
+ }
472
+ }
473
+ },
474
+ "required": false,
475
+ "optional": true,
476
+ "docs": {
477
+ "tags": [],
478
+ "text": "References an external element by ID that provides accessible details for this combobox."
479
+ },
480
+ "getter": false,
481
+ "setter": false,
482
+ "reflect": false,
483
+ "attribute": "_aria-details"
484
+ },
454
485
  "_placeholder": {
455
486
  "type": "string",
456
487
  "mutable": false,
@@ -976,6 +1007,9 @@ export class KolCombobox {
976
1007
  static get elementRef() { return "host"; }
977
1008
  static get watchers() {
978
1009
  return [{
1010
+ "propName": "_ariaDetails",
1011
+ "methodName": "validateAriaDetails"
1012
+ }, {
979
1013
  "propName": "_placeholder",
980
1014
  "methodName": "validatePlaceholder"
981
1015
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/combobox/shadow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport { getRenderStates } from '../../functional-component-wrappers/_helpers/getRenderStates';\nimport KolFormFieldStateWrapperFc, { type FormFieldStateWrapperProps } from '../../functional-component-wrappers/FormFieldStateWrapper/FormFieldStateWrapper';\nimport KolInputContainerFc from '../../functional-component-wrappers/InputContainerStateWrapper/InputContainerStateWrapper';\nimport type { InputStateWrapperProps } from '../../functional-component-wrappers/InputStateWrapper/InputStateWrapper';\nimport KolInputStateWrapperFc from '../../functional-component-wrappers/InputStateWrapper/InputStateWrapper';\nimport CustomSuggestionsOptionFc from '../../functional-components/CustomSuggestionsOption/CustomSuggestionsOption';\nimport CustomSuggestionsOptionsGroupFc from '../../functional-components/CustomSuggestionsOptionsGroup';\nimport { translate } from '../../i18n';\nimport { IconFC } from '../../internal/functional-components/icon/component';\nimport type {\n\tComboboxAPI,\n\tComboboxStates,\n\tDisabledPropType,\n\tFocusableElement,\n\tHideLabelPropType,\n\tHideMsgPropType,\n\tHintPropType,\n\tIconsHorizontalPropType,\n\tInputTypeOnDefault,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tPlaceholderPropType,\n\tRequiredPropType,\n\tShortKeyPropType,\n\tStringified,\n\tSuggestionsPropType,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n\tW3CInputValue,\n} from '../../schema';\nimport type { EventDetail } from '../../schema/interfaces/EventDetail';\nimport clsx from '../../utils/clsx';\nimport { createUniqueId } from '../../utils/dev.utils';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\nimport { ComboboxController } from './controller';\n\n/**\n * @slot - The label of the input field.\n */\n@Component({\n\ttag: 'kol-combobox',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolCombobox implements ComboboxAPI, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolComboboxElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLInputElement>();\n\tprivate refSuggestions: HTMLLIElement[] = [];\n\tprivate _focusedOptionIndex: number = -1;\n\tprivate readonly translateDeleteSelection = translate('kol-delete-selection');\n\tprivate clearButtonFocused = false;\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<string> {\n\t\treturn this.state._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tprivate toggleListbox = () => {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\tthis._isOpen = false;\n\t\t} else {\n\t\t\tthis.ctaRef.el?.focus();\n\t\t\tif (this._isOpen) {\n\t\t\t\t// Liste schließen\n\t\t\t\tthis._isOpen = false;\n\t\t\t} else if (Array.isArray(this._filteredSuggestions) && this._filteredSuggestions.length > 0) {\n\t\t\t\t// Liste öffnen\n\t\t\t\tthis._isOpen = true;\n\t\t\t\tconst selectedIndex = this._filteredSuggestions.findIndex((option) => option === this.state._value);\n\t\t\t\tthis._focusedOptionIndex = selectedIndex >= 0 ? selectedIndex : -1;\n\t\t\t\tthis.focusOption(this._focusedOptionIndex);\n\t\t\t}\n\t\t}\n\t};\n\tprivate selectOption(option: string) {\n\t\tthis.controller.onFacade.onInput(\n\t\t\tnew CustomEvent<EventDetail>('input', { bubbles: true, detail: { name: this.state._name as string, value: option } }),\n\t\t\ttrue,\n\t\t\toption,\n\t\t);\n\t\tthis.controller.onFacade.onChange(\n\t\t\tnew CustomEvent<EventDetail>('change', { bubbles: true, detail: { name: this.state._name as string, value: option } }),\n\t\t\toption,\n\t\t);\n\t\tthis.controller.setFormAssociatedValue(option);\n\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\tthis.state._value = option;\n\t\tthis.ctaRef.el?.focus();\n\t}\n\n\tprivate clearSelection() {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst emptyValue = '';\n\t\tthis._focusedOptionIndex = -1;\n\t\tthis._value = emptyValue;\n\t\tthis.state._value = emptyValue;\n\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\tthis._isOpen = false;\n\n\t\tconst detail = { name: this.state._name as string, value: emptyValue };\n\t\tthis.controller.onFacade.onInput(new CustomEvent('input', { bubbles: true, detail }), true, emptyValue);\n\t\tthis.controller.onFacade.onChange(new CustomEvent('change', { bubbles: true, detail }), emptyValue);\n\t\tthis.controller.setFormAssociatedValue(emptyValue);\n\n\t\tthis.ctaRef.el?.focus();\n\t}\n\n\tprivate onInput(event: Event) {\n\t\tconst target = event.target as HTMLInputElement;\n\t\tthis.state._value = target.value;\n\t\tthis._value = target.value;\n\t\tthis.controller.onFacade.onInput(event);\n\t\tthis.setFilteredSuggestionsByQuery(target.value);\n\t\tthis._focusedOptionIndex = -1;\n\t}\n\n\tprivate handleKeyDownDropdown(event: KeyboardEvent) {\n\t\tif (event.key.length === 1 && /[a-z0-9]/i.test(event.key)) {\n\t\t\tthis._isOpen = true;\n\t\t\tthis.focusSuggestionStartingWith(event.key);\n\t\t}\n\t}\n\n\tprivate setFilteredSuggestionsByQuery(query: string | undefined) {\n\t\tif (query === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (query.trim() === '') {\n\t\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\t} else {\n\t\t\tthis._filteredSuggestions = Array.isArray(this.state._suggestions)\n\t\t\t\t? this.state._suggestions.filter((option: W3CInputValue) => {\n\t\t\t\t\t\treturn (option as string).toLowerCase().includes(query.trim().toLowerCase());\n\t\t\t\t\t})\n\t\t\t\t: this._filteredSuggestions;\n\n\t\t\tif (this._filteredSuggestions?.length === 1 && this._filteredSuggestions[0] === query) {\n\t\t\t\tthis._isOpen = false;\n\t\t\t} else if (this._filteredSuggestions && this._filteredSuggestions.length > 0) {\n\t\t\t\tthis._isOpen = true;\n\t\t\t} else {\n\t\t\t\tthis._isOpen = false;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate moveFocus(delta: number) {\n\t\tif (!this._filteredSuggestions) {\n\t\t\treturn;\n\t\t}\n\t\tlet newIndex = this._focusedOptionIndex + delta;\n\n\t\tif (newIndex >= this._filteredSuggestions.length) {\n\t\t\tnewIndex = 0;\n\t\t}\n\n\t\tif (newIndex < 0) {\n\t\t\tnewIndex = this._filteredSuggestions.length - 1;\n\t\t}\n\t\tthis.focusOption(newIndex);\n\t}\n\n\tprivate focusOption(index: number) {\n\t\tthis._focusedOptionIndex = index;\n\t\tif (this.refSuggestions) {\n\t\t\tconst optionElement = this.refSuggestions[index];\n\t\t\toptionElement?.focus();\n\t\t}\n\t}\n\n\tprivate selectFocusedOption(): boolean {\n\t\tif (this._filteredSuggestions && this._focusedOptionIndex >= 0 && this._focusedOptionIndex < this._filteredSuggestions.length) {\n\t\t\tthis.selectOption(this._filteredSuggestions[this._focusedOptionIndex] as string);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate focusSuggestionStartingWith(char: string) {\n\t\tconst charLowerCase = char.toLowerCase();\n\n\t\tconst index =\n\t\t\tArray.isArray(this._filteredSuggestions) &&\n\t\t\tthis._filteredSuggestions.length > 0 &&\n\t\t\tthis._filteredSuggestions.findIndex((option: W3CInputValue) => (option as string).toLowerCase().startsWith(charLowerCase));\n\n\t\tif (typeof index === 'number') {\n\t\t\tthis.focusOption(index);\n\t\t}\n\t}\n\n\tprivate getFormFieldProps(): FormFieldStateWrapperProps {\n\t\treturn {\n\t\t\tstate: this.state,\n\t\t\tclass: clsx('kol-combobox', {\n\t\t\t\t'has-value': this.state._hasValue,\n\t\t\t}),\n\t\t\ttooltipAlign: this._tooltipAlign,\n\t\t\talert: this.showAsAlert(),\n\t\t};\n\t}\n\n\tprivate getInputProps(): InputStateWrapperProps {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst isDisabled = this.state._disabled === true;\n\n\t\treturn {\n\t\t\tref: this.ctaRef,\n\t\t\tstate: this.state,\n\t\t\tclass: 'kol-combobox__input',\n\t\t\ttype: 'text',\n\t\t\trole: 'combobox',\n\t\t\t'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined,\n\t\t\t'aria-autocomplete': 'both',\n\t\t\t'aria-controls': this.state._id + '-listbox',\n\t\t\t'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined,\n\t\t\t'aria-expanded': this._isOpen ? 'true' : 'false',\n\t\t\t'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined,\n\t\t\t'aria-labelledby': this.state._id + '-label',\n\t\t\t'aria-keyshortcuts': this.state._shortKey,\n\t\t\tvalue: this.state._value,\n\t\t\taccessKey: this.state._accessKey,\n\t\t\tautocapitalize: 'off',\n\t\t\tautocorrect: 'off',\n\t\t\tdisabled: isDisabled,\n\t\t\tcustomSuggestions: true,\n\t\t\tid: this.state._id,\n\t\t\tname: this.state._name,\n\t\t\trequired: this.state._required,\n\t\t\t...this.controller.onFacade,\n\t\t\tonChange: this.onChange.bind(this),\n\t\t\tonInput: this.onInput.bind(this),\n\t\t\tplaceholder: this.state._placeholder,\n\t\t};\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\treturn (\n\t\t\t<KolFormFieldStateWrapperFc {...this.getFormFieldProps()}>\n\t\t\t\t<KolInputContainerFc state={this.state}>\n\t\t\t\t\t<div class=\"kol-combobox__group\">\n\t\t\t\t\t\t<KolInputStateWrapperFc {...this.getInputProps()} />\n\t\t\t\t\t\t{this.state._value && this.state._hasClearButton && (\n\t\t\t\t\t\t\t<KolButtonWcTag\n\t\t\t\t\t\t\t\t_icons=\"kolicon-cross\"\n\t\t\t\t\t\t\t\t_label={this.translateDeleteSelection}\n\t\t\t\t\t\t\t\t_hideLabel\n\t\t\t\t\t\t\t\t_variant=\"ghost\"\n\t\t\t\t\t\t\t\t_disabled={isDisabled}\n\t\t\t\t\t\t\t\tdata-testid=\"combobox-delete\"\n\t\t\t\t\t\t\t\tclass=\"kol-combobox__delete\"\n\t\t\t\t\t\t\t\thidden={isDisabled}\n\t\t\t\t\t\t\t\t_on={{\n\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearSelection();\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tonFocus: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearButtonFocused = true;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tonBlur: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearButtonFocused = false;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\t\tclass=\"kol-combobox-toggle\"\n\t\t\t\t\t\t\tonClick={this.toggleListbox.bind(this)}\n\t\t\t\t\t\t\tdisabled={this._disabled}\n\t\t\t\t\t\t\thidden={isDisabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<IconFC icons=\"kolicon-chevron-down\" label=\"\" />\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t{\n\t\t\t\t\t\t<CustomSuggestionsOptionsGroupFc\n\t\t\t\t\t\t\tblockSuggestionMouseOver={this.blockSuggestionMouseOver}\n\t\t\t\t\t\t\tonKeyDown={this.handleKeyDownDropdown.bind(this)}\n\t\t\t\t\t\t\thidden={!this._isOpen || isDisabled}\n\t\t\t\t\t\t\tid={this.state._id + '-listbox'}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{Array.isArray(this._filteredSuggestions) &&\n\t\t\t\t\t\t\t\tthis._filteredSuggestions.length > 0 &&\n\t\t\t\t\t\t\t\tthis._filteredSuggestions.map((option, index) => (\n\t\t\t\t\t\t\t\t\t<CustomSuggestionsOptionFc\n\t\t\t\t\t\t\t\t\t\tdisabled={false}\n\t\t\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\t\t\toption={option}\n\t\t\t\t\t\t\t\t\t\tsearchTerm={this.state._value}\n\t\t\t\t\t\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\t\t\t\t\t\tif (el) this.refSuggestions[index] = el;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tselected={this.state._value === option}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option as string);\n\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox();\n\t\t\t\t\t\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonMouseOver={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (!this.blockSuggestionMouseOver) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.focusOption(index);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonFocus={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.focusOption(index);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</CustomSuggestionsOptionsGroupFc>\n\t\t\t\t\t}\n\t\t\t\t</KolInputContainerFc>\n\t\t\t</KolFormFieldStateWrapperFc>\n\t\t);\n\t}\n\n\t@Listen('keydown')\n\tpublic handleKeyDown(event: KeyboardEvent) {\n\t\tconst handleEvent = (isOpen?: boolean, callback?: () => void): void => {\n\t\t\tevent.preventDefault();\n\t\t\tif (isOpen !== undefined) {\n\t\t\t\tthis._isOpen = isOpen;\n\t\t\t\tif (!isOpen) {\n\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t}\n\t\t\t}\n\t\t\tcallback?.();\n\t\t};\n\t\tswitch (event.key) {\n\t\t\tcase 'Down':\n\t\t\tcase 'ArrowDown': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(true, () => this.moveFocus(1));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Up':\n\t\t\tcase 'ArrowUp': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(true, () => this.moveFocus(-1));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Tab':\n\t\t\t\tif (this._isOpen) {\n\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'Esc':\n\t\t\tcase 'Escape': {\n\t\t\t\tthis._isOpen = false;\n\t\t\t\tevent.preventDefault();\n\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Enter':\n\t\t\tcase 'NumpadEnter': {\n\t\t\t\tif (this.clearButtonFocused) {\n\t\t\t\t\tthis.clearSelection();\n\t\t\t\t} else if (this._isOpen) {\n\t\t\t\t\tif (this.selectFocusedOption()) {\n\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.toggleListbox();\n\t\t\t\t}\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t// Space key\n\t\t\tcase ' ': {\n\t\t\t\tif (this.clearButtonFocused) {\n\t\t\t\t\tthis.clearSelection();\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t} else if (this._isOpen) {\n\t\t\t\t\tif (this.selectFocusedOption()) {\n\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Home': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => {\n\t\t\t\t\tif (this._isOpen) {\n\t\t\t\t\t\tthis.focusOption(0);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'End': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => {\n\t\t\t\t\tif (this._isOpen) {\n\t\t\t\t\t\tthis.focusOption(this._filteredSuggestions ? this._filteredSuggestions.length - 1 : 0);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PageUp': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => this._isOpen && this.moveFocus(-10));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PageDown': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => this._isOpen && this.moveFocus(10));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate readonly controller: ComboboxController;\n\t@State()\n\tprivate blockSuggestionMouseOver: boolean = false;\n\t@State()\n\tprivate _isOpen: boolean = false;\n\t@State()\n\tprivate _filteredSuggestions?: SuggestionsPropType;\n\n\t@Listen('click')\n\thandleWindowClick(event: MouseEvent) {\n\t\tif (this.host !== undefined && !this.host.contains(event.target as Node)) {\n\t\t\tthis._isOpen = false;\n\t\t}\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Defines the placeholder for input field. To be shown when there's no value.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n\t * @TODO: Change type back to `HideMsgPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideMsg?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the hint text.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsHorizontalPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the properties for a message rendered as Alert component.\n\t */\n\t@Prop() public _msg?: Stringified<MsgPropType>;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Shows the clear button if enabled.\n\t */\n\t@Prop() public _hasClearButton?: boolean = true;\n\n\t/**\n\t * Suggestions to provide for the input.\n\t */\n\t@Prop() public _suggestions!: SuggestionsPropType;\n\n\t/**\n\t * Makes the input element required.\n\t * @TODO: Change type back to `RequiredPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _required?: boolean = false;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Shows if the input was touched by a user.\n\t * @TODO: Change type back to `TouchedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _value?: string;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: VariantClassNamePropType;\n\n\t@State() public state: ComboboxStates = {\n\t\t_hasValue: false,\n\t\t_hasClearButton: true,\n\t\t_hideMsg: false,\n\t\t_id: createUniqueId('combobox'),\n\t\t_label: '', // ⚠ required\n\t\t_suggestions: [],\n\t\t_value: '',\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new ComboboxController(this, 'combobox', this.host);\n\t\tthis.onInput = this.onInput.bind(this);\n\t}\n\n\tprivate showAsAlert(): boolean {\n\t\treturn Boolean(this.state._touched) && !this.inputHasFocus;\n\t}\n\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: PlaceholderPropType): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: DisabledPropType): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_hideMsg')\n\tpublic validateHideMsg(value?: HideMsgPropType): void {\n\t\tthis.controller.validateHideMsg(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: HideLabelPropType): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: HintPropType): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_msg')\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tthis.controller.validateMsg(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(value);\n\t}\n\n\t@Watch('_suggestions')\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tthis.controller.validateSuggestions(value);\n\t\tthis._filteredSuggestions = value;\n\t\tthis.setFilteredSuggestionsByQuery(this._value);\n\t}\n\n\t@Watch('_hasClearButton')\n\tpublic validateHasClearButton(value?: boolean): void {\n\t\tthis.controller.validateHasClearButton(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: RequiredPropType): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_syncValueBySelector')\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tthis.controller.validateSyncValueBySelector(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t\tthis.controller.setFormAssociatedValue(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: VariantClassNamePropType): void {\n\t\tthis.controller.validateVariant(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.refSuggestions = [];\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t\tthis._filteredSuggestions = this.state._suggestions;\n\t}\n\n\t@Listen('mousemove')\n\tpublic handleMouseEvent() {\n\t\tthis.blockSuggestionMouseOver = false;\n\t}\n\n\t@Listen('focusin')\n\tpublic handleFocusIn(event: FocusEvent) {\n\t\tsetTimeout(() => {\n\t\t\tif (this.host?.contains(document.activeElement) && !this.inputHasFocus) {\n\t\t\t\tthis.controller.onFacade.onFocus(event);\n\t\t\t\tthis.inputHasFocus = true;\n\t\t\t}\n\t\t});\n\t}\n\n\t@Listen('focusout')\n\tpublic handleFocusOut(event: FocusEvent) {\n\t\tsetTimeout(() => {\n\t\t\tif (this.inputHasFocus && !this.host?.contains(document.activeElement)) {\n\t\t\t\tthis.controller.onFacade.onBlur(event);\n\t\t\t\tthis.inputHasFocus = false;\n\t\t\t\tif (this._isOpen) {\n\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate onChange(event: Event): void {\n\t\tthis.controller.onFacade.onChange(event);\n\n\t\t// Static form handling\n\t\tthis.controller.setFormAssociatedValue(this.state._value as unknown as string);\n\t}\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/combobox/shadow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nimport { getRenderStates } from '../../functional-component-wrappers/_helpers/getRenderStates';\nimport KolFormFieldStateWrapperFc, { type FormFieldStateWrapperProps } from '../../functional-component-wrappers/FormFieldStateWrapper/FormFieldStateWrapper';\nimport KolInputContainerFc from '../../functional-component-wrappers/InputContainerStateWrapper/InputContainerStateWrapper';\nimport type { InputStateWrapperProps } from '../../functional-component-wrappers/InputStateWrapper/InputStateWrapper';\nimport KolInputStateWrapperFc from '../../functional-component-wrappers/InputStateWrapper/InputStateWrapper';\nimport CustomSuggestionsOptionFc from '../../functional-components/CustomSuggestionsOption/CustomSuggestionsOption';\nimport CustomSuggestionsOptionsGroupFc from '../../functional-components/CustomSuggestionsOptionsGroup';\nimport { translate } from '../../i18n';\nimport { IconFC } from '../../internal/functional-components/icon/component';\nimport type {\n\tAriaDetailsPropType,\n\tClickableElement,\n\tComboboxAPI,\n\tComboboxStates,\n\tDisabledPropType,\n\tFocusableElement,\n\tHideLabelPropType,\n\tHideMsgPropType,\n\tHintPropType,\n\tIconsHorizontalPropType,\n\tInputTypeOnDefault,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tPlaceholderPropType,\n\tRequiredPropType,\n\tShortKeyPropType,\n\tStringified,\n\tSuggestionsPropType,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n\tW3CInputValue,\n} from '../../schema';\nimport type { EventDetail } from '../../schema/interfaces/EventDetail';\nimport clsx from '../../utils/clsx';\nimport { createUniqueId } from '../../utils/dev.utils';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\nimport { ComboboxController } from './controller';\n\n/**\n * @slot - The label of the input field.\n */\n@Component({\n\ttag: 'kol-combobox',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolCombobox implements ClickableElement, ComboboxAPI, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolComboboxElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLInputElement>();\n\tprivate refSuggestions: HTMLLIElement[] = [];\n\tprivate _focusedOptionIndex: number = -1;\n\n\tprivate readonly translateDeleteSelection = translate('kol-delete-selection');\n\tprivate clearButtonFocused = false;\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<string> {\n\t\treturn this.state._value;\n\t}\n\n\t/**\n\t * Sets focus on the internal element.\n\t */\n\t@Method()\n\t@delegateFocus('ctaRef')\n\t// @ts-expect-error: options parameter will be implemented by the decorator.\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tpublic async focus(options?: KolFocusOptions): Promise<void> {}\n\n\t/**\n\t * Clicks the primary interactive element inside this component.\n\t */\n\t@Method()\n\t@delegateClick('ctaRef')\n\tpublic async click(): Promise<void> {}\n\n\tprivate toggleListbox = () => {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\tthis._isOpen = false;\n\t\t} else {\n\t\t\tthis.ctaRef.el?.focus();\n\t\t\tif (this._isOpen) {\n\t\t\t\t// Liste schließen\n\t\t\t\tthis._isOpen = false;\n\t\t\t} else if (Array.isArray(this._filteredSuggestions) && this._filteredSuggestions.length > 0) {\n\t\t\t\t// Liste öffnen\n\t\t\t\tthis._isOpen = true;\n\t\t\t\tconst selectedIndex = this._filteredSuggestions.findIndex((option) => option === this.state._value);\n\t\t\t\tthis._focusedOptionIndex = selectedIndex >= 0 ? selectedIndex : -1;\n\t\t\t\tthis.focusOption(this._focusedOptionIndex);\n\t\t\t}\n\t\t}\n\t};\n\tprivate selectOption(option: string) {\n\t\tthis.controller.onFacade.onInput(\n\t\t\tnew CustomEvent<EventDetail>('input', { bubbles: true, detail: { name: this.state._name as string, value: option } }),\n\t\t\ttrue,\n\t\t\toption,\n\t\t);\n\t\tthis.controller.onFacade.onChange(\n\t\t\tnew CustomEvent<EventDetail>('change', { bubbles: true, detail: { name: this.state._name as string, value: option } }),\n\t\t\toption,\n\t\t);\n\t\tthis.controller.setFormAssociatedValue(option);\n\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\tthis.state._value = option;\n\t\tthis.ctaRef.el?.focus();\n\t}\n\n\tprivate clearSelection() {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst emptyValue = '';\n\t\tthis._focusedOptionIndex = -1;\n\t\tthis._value = emptyValue;\n\t\tthis.state._value = emptyValue;\n\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\tthis._isOpen = false;\n\n\t\tconst detail = { name: this.state._name as string, value: emptyValue };\n\t\tthis.controller.onFacade.onInput(new CustomEvent('input', { bubbles: true, detail }), true, emptyValue);\n\t\tthis.controller.onFacade.onChange(new CustomEvent('change', { bubbles: true, detail }), emptyValue);\n\t\tthis.controller.setFormAssociatedValue(emptyValue);\n\n\t\tthis.ctaRef.el?.focus();\n\t}\n\n\tprivate onInput(event: Event) {\n\t\tconst target = event.target as HTMLInputElement;\n\t\tconst value = target.value;\n\t\tthis.state._value = value;\n\t\tthis._value = value;\n\t\tthis.controller.onFacade.onInput(event, true, value);\n\t\tthis.setFilteredSuggestionsByQuery(value);\n\t\tthis._focusedOptionIndex = -1;\n\t\tevent.stopImmediatePropagation();\n\t}\n\n\tprivate handleKeyDownDropdown(event: KeyboardEvent) {\n\t\tif (event.key.length === 1 && /[a-z0-9]/i.test(event.key)) {\n\t\t\tthis._isOpen = true;\n\t\t\tthis.focusSuggestionStartingWith(event.key);\n\t\t}\n\t}\n\n\tprivate setFilteredSuggestionsByQuery(query: string | undefined) {\n\t\tif (query === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (query.trim() === '') {\n\t\t\tthis._filteredSuggestions = [...this.state._suggestions];\n\t\t} else {\n\t\t\tthis._filteredSuggestions = Array.isArray(this.state._suggestions)\n\t\t\t\t? this.state._suggestions.filter((option: W3CInputValue) => {\n\t\t\t\t\t\treturn (option as string).toLowerCase().includes(query.trim().toLowerCase());\n\t\t\t\t\t})\n\t\t\t\t: this._filteredSuggestions;\n\n\t\t\tif (this._filteredSuggestions?.length === 1 && this._filteredSuggestions[0] === query) {\n\t\t\t\tthis._isOpen = false;\n\t\t\t} else if (this._filteredSuggestions && this._filteredSuggestions.length > 0) {\n\t\t\t\tthis._isOpen = true;\n\t\t\t} else {\n\t\t\t\tthis._isOpen = false;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate moveFocus(delta: number) {\n\t\tif (!this._filteredSuggestions) {\n\t\t\treturn;\n\t\t}\n\t\tlet newIndex = this._focusedOptionIndex + delta;\n\n\t\tif (newIndex >= this._filteredSuggestions.length) {\n\t\t\tnewIndex = 0;\n\t\t}\n\n\t\tif (newIndex < 0) {\n\t\t\tnewIndex = this._filteredSuggestions.length - 1;\n\t\t}\n\t\tthis.focusOption(newIndex);\n\t}\n\n\tprivate focusOption(index: number) {\n\t\tthis._focusedOptionIndex = index;\n\t\tif (this.refSuggestions) {\n\t\t\tconst optionElement = this.refSuggestions[index];\n\t\t\toptionElement?.focus();\n\t\t}\n\t}\n\n\tprivate selectFocusedOption(): boolean {\n\t\tif (this._filteredSuggestions && this._focusedOptionIndex >= 0 && this._focusedOptionIndex < this._filteredSuggestions.length) {\n\t\t\tthis.selectOption(this._filteredSuggestions[this._focusedOptionIndex] as string);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate focusSuggestionStartingWith(char: string) {\n\t\tconst charLowerCase = char.toLowerCase();\n\n\t\tconst index =\n\t\t\tArray.isArray(this._filteredSuggestions) &&\n\t\t\tthis._filteredSuggestions.length > 0 &&\n\t\t\tthis._filteredSuggestions.findIndex((option: W3CInputValue) => (option as string).toLowerCase().startsWith(charLowerCase));\n\n\t\tif (typeof index === 'number') {\n\t\t\tthis.focusOption(index);\n\t\t}\n\t}\n\n\tprivate getFormFieldProps(): FormFieldStateWrapperProps {\n\t\treturn {\n\t\t\tstate: this.state,\n\t\t\tclass: clsx('kol-combobox', {\n\t\t\t\t'has-value': this.state._hasValue,\n\t\t\t}),\n\t\t\ttooltipAlign: this._tooltipAlign,\n\t\t\talert: this.showAsAlert(),\n\t\t};\n\t}\n\n\tprivate getInputProps(): InputStateWrapperProps {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst isDisabled = this.state._disabled === true;\n\n\t\treturn {\n\t\t\tref: this.ctaRef,\n\t\t\tstate: this.state,\n\t\t\tclass: 'kol-combobox__input',\n\t\t\ttype: 'text',\n\t\t\trole: 'combobox',\n\t\t\t'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined,\n\t\t\t'aria-autocomplete': 'both',\n\t\t\t'aria-controls': this.state._id + '-listbox',\n\t\t\t'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined,\n\t\t\t'aria-expanded': this._isOpen ? 'true' : 'false',\n\t\t\t'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined,\n\t\t\t'aria-labelledby': this.state._id + '-label',\n\t\t\t'aria-keyshortcuts': this.state._shortKey,\n\t\t\tvalue: this.state._value,\n\t\t\taccessKey: this.state._accessKey,\n\t\t\tautocapitalize: 'off',\n\t\t\tautocorrect: 'off',\n\t\t\tdisabled: isDisabled,\n\t\t\tcustomSuggestions: true,\n\t\t\tid: this.state._id,\n\t\t\tname: this.state._name,\n\t\t\trequired: this.state._required,\n\t\t\t...this.controller.onFacade,\n\t\t\tonChange: this.onChange.bind(this),\n\t\t\tonInput: this.onInput.bind(this),\n\t\t\tplaceholder: this.state._placeholder,\n\t\t};\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst isDisabled = this.state._disabled === true;\n\t\treturn (\n\t\t\t<KolFormFieldStateWrapperFc {...this.getFormFieldProps()}>\n\t\t\t\t<KolInputContainerFc state={this.state}>\n\t\t\t\t\t<div class=\"kol-combobox__group\">\n\t\t\t\t\t\t<KolInputStateWrapperFc {...this.getInputProps()} />\n\t\t\t\t\t\t{this.state._value && this.state._hasClearButton && (\n\t\t\t\t\t\t\t<KolButtonWcTag\n\t\t\t\t\t\t\t\t_icons=\"kolicon-cross\"\n\t\t\t\t\t\t\t\t_label={this.translateDeleteSelection}\n\t\t\t\t\t\t\t\t_hideLabel\n\t\t\t\t\t\t\t\t_variant=\"ghost\"\n\t\t\t\t\t\t\t\t_disabled={isDisabled}\n\t\t\t\t\t\t\t\tdata-testid=\"combobox-delete\"\n\t\t\t\t\t\t\t\tclass=\"kol-combobox__delete\"\n\t\t\t\t\t\t\t\thidden={isDisabled}\n\t\t\t\t\t\t\t\t_on={{\n\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearSelection();\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tonFocus: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearButtonFocused = true;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tonBlur: () => {\n\t\t\t\t\t\t\t\t\t\tthis.clearButtonFocused = false;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\t\tclass=\"kol-combobox-toggle\"\n\t\t\t\t\t\t\tonClick={this.toggleListbox.bind(this)}\n\t\t\t\t\t\t\tdisabled={this._disabled}\n\t\t\t\t\t\t\thidden={isDisabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<IconFC icons=\"kolicon-chevron-down\" label=\"\" />\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t{\n\t\t\t\t\t\t<CustomSuggestionsOptionsGroupFc\n\t\t\t\t\t\t\tblockSuggestionMouseOver={this.blockSuggestionMouseOver}\n\t\t\t\t\t\t\tonKeyDown={this.handleKeyDownDropdown.bind(this)}\n\t\t\t\t\t\t\thidden={!this._isOpen || isDisabled}\n\t\t\t\t\t\t\tid={this.state._id + '-listbox'}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{Array.isArray(this._filteredSuggestions) &&\n\t\t\t\t\t\t\t\tthis._filteredSuggestions.length > 0 &&\n\t\t\t\t\t\t\t\tthis._filteredSuggestions.map((option, index) => (\n\t\t\t\t\t\t\t\t\t<CustomSuggestionsOptionFc\n\t\t\t\t\t\t\t\t\t\tdisabled={false}\n\t\t\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\t\t\toption={option}\n\t\t\t\t\t\t\t\t\t\tsearchTerm={this.state._value}\n\t\t\t\t\t\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\t\t\t\t\t\tif (el) this.refSuggestions[index] = el;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tselected={this.state._value === option}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option as string);\n\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox();\n\t\t\t\t\t\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonMouseOver={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (!this.blockSuggestionMouseOver) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.focusOption(index);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonFocus={() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.focusOption(index);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</CustomSuggestionsOptionsGroupFc>\n\t\t\t\t\t}\n\t\t\t\t</KolInputContainerFc>\n\t\t\t</KolFormFieldStateWrapperFc>\n\t\t);\n\t}\n\n\t@Listen('keydown')\n\tpublic handleKeyDown(event: KeyboardEvent) {\n\t\tconst handleEvent = (isOpen?: boolean, callback?: () => void): void => {\n\t\t\tevent.preventDefault();\n\t\t\tif (isOpen !== undefined) {\n\t\t\t\tthis._isOpen = isOpen;\n\t\t\t\tif (!isOpen) {\n\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t}\n\t\t\t}\n\t\t\tcallback?.();\n\t\t};\n\t\tswitch (event.key) {\n\t\t\tcase 'Down':\n\t\t\tcase 'ArrowDown': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(true, () => this.moveFocus(1));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Up':\n\t\t\tcase 'ArrowUp': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(true, () => this.moveFocus(-1));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Tab':\n\t\t\t\tif (this._isOpen) {\n\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'Esc':\n\t\t\tcase 'Escape': {\n\t\t\t\tthis._isOpen = false;\n\t\t\t\tevent.preventDefault();\n\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Enter':\n\t\t\tcase 'NumpadEnter': {\n\t\t\t\tif (this.clearButtonFocused) {\n\t\t\t\t\tthis.clearSelection();\n\t\t\t\t} else if (this._isOpen) {\n\t\t\t\t\tif (this.selectFocusedOption()) {\n\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.toggleListbox();\n\t\t\t\t}\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t// Space key\n\t\t\tcase ' ': {\n\t\t\t\tif (this.clearButtonFocused) {\n\t\t\t\t\tthis.clearSelection();\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t} else if (this._isOpen) {\n\t\t\t\t\tif (this.selectFocusedOption()) {\n\t\t\t\t\t\tthis._isOpen = false;\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Home': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => {\n\t\t\t\t\tif (this._isOpen) {\n\t\t\t\t\t\tthis.focusOption(0);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'End': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => {\n\t\t\t\t\tif (this._isOpen) {\n\t\t\t\t\t\tthis.focusOption(this._filteredSuggestions ? this._filteredSuggestions.length - 1 : 0);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PageUp': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => this._isOpen && this.moveFocus(-10));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PageDown': {\n\t\t\t\tthis.blockSuggestionMouseOver = true;\n\t\t\t\thandleEvent(undefined, () => this._isOpen && this.moveFocus(10));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate readonly controller: ComboboxController;\n\t@State()\n\tprivate blockSuggestionMouseOver: boolean = false;\n\t@State()\n\tprivate _isOpen: boolean = false;\n\t@State()\n\tprivate _filteredSuggestions?: SuggestionsPropType;\n\n\t@Listen('click')\n\thandleWindowClick(event: MouseEvent) {\n\t\tif (this.host !== undefined && !this.host.contains(event.target as Node)) {\n\t\t\tthis._isOpen = false;\n\t\t}\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component's interactive element.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * References an external element by ID that provides accessible details for this combobox.\n\t */\n\t@Prop() public _ariaDetails?: AriaDetailsPropType;\n\n\t@Watch('_ariaDetails')\n\tpublic validateAriaDetails(value?: AriaDetailsPropType): void {\n\t\tthis.controller.validateAriaDetails(value);\n\t}\n\n\t/**\n\t * Defines the placeholder for input field. To be shown when there's no value.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n\t * @TODO: Change type back to `HideMsgPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideMsg?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the hint text.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsHorizontalPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the properties for a message rendered as Alert component.\n\t */\n\t@Prop() public _msg?: Stringified<MsgPropType>;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Shows the clear button if enabled.\n\t */\n\t@Prop() public _hasClearButton?: boolean = true;\n\n\t/**\n\t * Suggestions to provide for the input.\n\t */\n\t@Prop() public _suggestions!: SuggestionsPropType;\n\n\t/**\n\t * Makes the input element required.\n\t * @TODO: Change type back to `RequiredPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _required?: boolean = false;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Shows if the input was touched by a user.\n\t * @TODO: Change type back to `TouchedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Defines the value of the element.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _value?: string;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: VariantClassNamePropType;\n\n\t@State() public state: ComboboxStates = {\n\t\t_hasValue: false,\n\t\t_hasClearButton: true,\n\t\t_hideMsg: false,\n\t\t_id: createUniqueId('combobox'),\n\t\t_label: '', // ⚠ required\n\t\t_suggestions: [],\n\t\t_value: '',\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new ComboboxController(this, 'combobox', this.host);\n\t\tthis.onInput = this.onInput.bind(this);\n\t}\n\n\tprivate showAsAlert(): boolean {\n\t\treturn Boolean(this.state._touched) && !this.inputHasFocus;\n\t}\n\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: PlaceholderPropType): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: DisabledPropType): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_hideMsg')\n\tpublic validateHideMsg(value?: HideMsgPropType): void {\n\t\tthis.controller.validateHideMsg(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: HideLabelPropType): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: HintPropType): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_msg')\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tthis.controller.validateMsg(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(value);\n\t}\n\n\t@Watch('_suggestions')\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tthis.controller.validateSuggestions(value);\n\t\tthis._filteredSuggestions = value;\n\t\tthis.setFilteredSuggestionsByQuery(this._value);\n\t}\n\n\t@Watch('_hasClearButton')\n\tpublic validateHasClearButton(value?: boolean): void {\n\t\tthis.controller.validateHasClearButton(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: RequiredPropType): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_syncValueBySelector')\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tthis.controller.validateSyncValueBySelector(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t\tthis.controller.setFormAssociatedValue(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: VariantClassNamePropType): void {\n\t\tthis.controller.validateVariant(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaDetails(this._ariaDetails);\n\n\t\tthis.refSuggestions = [];\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t\tthis._filteredSuggestions = this.state._suggestions;\n\t}\n\n\t@Listen('mousemove')\n\tpublic handleMouseEvent() {\n\t\tthis.blockSuggestionMouseOver = false;\n\t}\n\n\t@Listen('focusin')\n\tpublic handleFocusIn(event: FocusEvent) {\n\t\tif (this.host?.contains(document.activeElement) && !this.inputHasFocus) {\n\t\t\tthis.controller.onFacade.onFocus(event);\n\t\t\tthis.inputHasFocus = true;\n\t\t}\n\t}\n\n\t@Listen('focusout')\n\tpublic handleFocusOut(event: FocusEvent) {\n\t\tconst relatedTarget = event.relatedTarget as HTMLElement | null;\n\t\tconst isFocusInside = relatedTarget && (relatedTarget === this.host || this.host?.contains(relatedTarget));\n\n\t\tif (this.inputHasFocus && !isFocusInside) {\n\t\t\tthis.controller.onFacade.onBlur(event);\n\t\t\tthis.inputHasFocus = false;\n\t\t\tif (this._isOpen) {\n\t\t\t\tthis._isOpen = false;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate onChange(event: Event): void {\n\t\tevent.stopPropagation();\n\t\tconst value = this.state._value;\n\t\tthis.controller.onFacade.onChange(event, value);\n\n\t\t// Static form handling\n\t\tthis.controller.setFormAssociatedValue(value as unknown as string);\n\t}\n}\n"]}