@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
@@ -187,7 +187,7 @@ export class KolSingleSelect {
187
187
  render() {
188
188
  var _a;
189
189
  const isDisabled = this.state._disabled === true;
190
- return (h(KolFormFieldStateWrapperFc, Object.assign({ key: 'a562e230c017b24eb129118d516f032a6b42e8c9' }, this.getFormFieldProps()), h(KolInputContainerFc, { key: 'df7a38b381bda50cf1fd969f3b39a76b52d7ea10', state: this.state }, h("div", { key: '4f9a18322d000f14386ebe2d7213ce767177afda', class: "kol-single-select__group" }, h(KolInputStateWrapperFc, Object.assign({ key: '4f0719ba06ad2c923c4f187bbe8a29de3189419e' }, this.getInputProps())), this._inputValue && this.state._hasClearButton && (h(KolButtonWcTag, { key: 'c8453b29f259808fcb41173aed65780c569be8cf', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _variant: "ghost", _disabled: isDisabled, "data-testid": "single-select-delete", class: "kol-single-select__delete", hidden: isDisabled, _on: {
190
+ return (h(KolFormFieldStateWrapperFc, Object.assign({ key: '804b3fcd9bf01720e9c1d7eda2654e1668c8ab94' }, this.getFormFieldProps()), h(KolInputContainerFc, { key: '6fa77514d6169e1d73de950e487c0465f46130c7', state: this.state }, h("div", { key: '9d94247b3201e2968f37dd376d46ae8dc3eee981', class: "kol-single-select__group" }, h(KolInputStateWrapperFc, Object.assign({ key: '12b3f5cd15e8b0ccccfc92cab57915301f20ace7' }, this.getInputProps())), this._inputValue && this.state._hasClearButton && (h(KolButtonWcTag, { key: '806a0d987d631c18a6bc48d3ba9f1390f8aa5f27', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _variant: "ghost", _disabled: isDisabled, "data-testid": "single-select-delete", class: "kol-single-select__delete", hidden: isDisabled, _on: {
191
191
  onClick: () => {
192
192
  var _a;
193
193
  this.clearSelection();
@@ -199,9 +199,9 @@ export class KolSingleSelect {
199
199
  onBlur: () => {
200
200
  this.clearButtonFocused = false;
201
201
  },
202
- } })), h(IconFC, { key: '9dc7b5cb4973f0b04d55b2349b40543082909ec5', icons: "kolicon-chevron-down", label: "", class: clsx('kol-custom-suggestions-toggle', {
202
+ } })), h(IconFC, { key: '2bcbe65e5ba4d4c87aa029dde87a033702d513d0', icons: "kolicon-chevron-down", label: "", class: clsx('kol-custom-suggestions-toggle', {
203
203
  'kol-custom-suggestions-toggle--disabled': isDisabled,
204
- }), onClick: this.toggleListbox.bind(this) })), h(CustomSuggestionsOptionsGroupFc, { key: '2ecd91b862dc14bafd09efdc99a6f91eded101dc', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), style: { '--visible-options': `${(_a = this._rows) !== null && _a !== void 0 ? _a : 5}` }, hidden: !this._isOpen || isDisabled, id: this.state._id + '-listbox' }, Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 ? (this._filteredOptions.map((option, index) => (h(CustomSuggestionsOptionFc, { index: index, option: option.label, searchTerm: this._inputValue, ref: (el) => {
204
+ }), onClick: this.toggleListbox.bind(this) })), h(CustomSuggestionsOptionsGroupFc, { key: 'b046fd554bae6fff6e97728350a84aa9f0df6f74', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), style: { '--visible-options': `${(_a = this._rows) !== null && _a !== void 0 ? _a : 5}` }, hidden: !this._isOpen || isDisabled, id: this.state._id + '-listbox' }, Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 ? (this._filteredOptions.map((option, index) => (h(CustomSuggestionsOptionFc, { index: index, option: option.label, searchTerm: this._inputValue, ref: (el) => {
205
205
  if (el)
206
206
  this.refOptions[index] = el;
207
207
  }, selected: this._value === option.value, disabled: option.disabled ? true : false, onClick: (event) => {
@@ -324,6 +324,9 @@ export class KolSingleSelect {
324
324
  }
325
325
  }
326
326
  }
327
+ validateAriaDetails(value) {
328
+ this.controller.validateAriaDetails(value);
329
+ }
327
330
  constructor() {
328
331
  this.ctaRef = createCtaRef();
329
332
  this.refOptions = [];
@@ -478,6 +481,7 @@ export class KolSingleSelect {
478
481
  componentWillLoad() {
479
482
  this.refOptions = [];
480
483
  this._touched = this._touched === true;
484
+ this.validateAriaDetails(this._ariaDetails);
481
485
  this.controller.componentWillLoad();
482
486
  this.oldValue = this._value;
483
487
  this._filteredOptions = this.state._options;
@@ -531,6 +535,31 @@ export class KolSingleSelect {
531
535
  "reflect": false,
532
536
  "attribute": "_access-key"
533
537
  },
538
+ "_ariaDetails": {
539
+ "type": "string",
540
+ "mutable": false,
541
+ "complexType": {
542
+ "original": "AriaDetailsPropType",
543
+ "resolved": "string | undefined",
544
+ "references": {
545
+ "AriaDetailsPropType": {
546
+ "location": "import",
547
+ "path": "../../schema",
548
+ "id": "src/schema/index.ts::AriaDetailsPropType"
549
+ }
550
+ }
551
+ },
552
+ "required": false,
553
+ "optional": true,
554
+ "docs": {
555
+ "tags": [],
556
+ "text": "References an external element by ID that provides accessible details for this input.\nUses ElementInternals.ariaDetailsElements to cross the Shadow DOM boundary.\nSupported by desktop screen readers (NVDA, JAWS with Chrome/Firefox).\nNot yet supported by mobile screen readers (TalkBack, VoiceOver iOS)."
557
+ },
558
+ "getter": false,
559
+ "setter": false,
560
+ "reflect": false,
561
+ "attribute": "_aria-details"
562
+ },
534
563
  "_placeholder": {
535
564
  "type": "string",
536
565
  "mutable": false,
@@ -1077,6 +1106,9 @@ export class KolSingleSelect {
1077
1106
  static get elementRef() { return "host"; }
1078
1107
  static get watchers() {
1079
1108
  return [{
1109
+ "propName": "_ariaDetails",
1110
+ "methodName": "validateAriaDetails"
1111
+ }, {
1080
1112
  "propName": "_placeholder",
1081
1113
  "methodName": "validatePlaceholder"
1082
1114
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/single-select/shadow.tsx"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD;AAvuBa;IAHZ,aAAa,CAAC,QAAQ,CAAC;4CAGuC","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport type {\n\tDisabledPropType,\n\tFocusableElement,\n\tHideLabelPropType,\n\tHideMsgPropType,\n\tHintPropType,\n\tIconsHorizontalPropType,\n\tInputTypeOnDefault,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tOption,\n\tOptionsPropType,\n\tPlaceholderPropType,\n\tRequiredPropType,\n\tRowsPropType,\n\tShortKeyPropType,\n\tSingleSelectAPI,\n\tSingleSelectStates,\n\tStencilUnknown,\n\tStringified,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n} from '../../schema';\n\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 { EventDetail } from '../../schema/interfaces/EventDetail';\nimport clsx from '../../utils/clsx';\nimport { createUniqueId } from '../../utils/dev.utils';\nimport { createCtaRef, delegateFocus } from '../../utils/element-interaction';\nimport { SingleSelectController } from './controller';\n\n/**\n * The **SingleSelect** component creates a dropdown list from which exactly one predefined option can be selected.\n *\n * @slot - The label of the input field.\n */\n@Component({\n\ttag: 'kol-single-select',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSingleSelect implements SingleSelectAPI, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolSingleSelectElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLInputElement>();\n\tprivate refOptions: HTMLLIElement[] = [];\n\tprivate readonly translateDeleteSelection = translate('kol-delete-selection');\n\tprivate readonly translateNoResultsMessage = translate('kol-no-results-message');\n\tprivate oldValue?: StencilUnknown;\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<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\tprivate toggleListbox = (event: Event) => {\n\t\tevent?.preventDefault();\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\treturn;\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 {\n\t\t\t\t// Liste öffnen\n\t\t\t\tthis._isOpen = true;\n\t\t\t\tconst selectedIndex = Array.isArray(this._filteredOptions) ? this._filteredOptions.findIndex((option) => option.label === this._inputValue) : -1;\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\n\tprivate onBlur() {\n\t\tconst matchingOption = this.state._options?.find((option) => (option.label as string)?.toLowerCase() === this._inputValue?.toLowerCase());\n\n\t\tif (matchingOption) {\n\t\t\tthis.selectOption(matchingOption);\n\t\t} else if (this._value !== null && this._value !== undefined) {\n\t\t\tthis._filteredOptions = [...(this.state._options ?? [])];\n\t\t}\n\t}\n\n\tprivate createEventWithTarget(type: string, detail: EventDetail): CustomEvent<EventDetail> {\n\t\tconst event = new CustomEvent<EventDetail>(type, {\n\t\t\tbubbles: true,\n\t\t\tdetail,\n\t\t});\n\n\t\tif (this.ctaRef.el) {\n\t\t\tObject.defineProperty(event, 'target', {\n\t\t\t\tvalue: this.ctaRef.el,\n\t\t\t});\n\n\t\t\tObject.defineProperty(event, 'currentTarget', {\n\t\t\t\tvalue: this.ctaRef.el,\n\t\t\t});\n\t\t}\n\t\treturn event;\n\t}\n\n\tprivate clearSelection() {\n\t\tif (this.state._disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst emptyValue = null;\n\t\tthis._focusedOptionIndex = -1;\n\t\tthis._value = emptyValue;\n\t\tthis._inputValue = '';\n\t\tthis._filteredOptions = [...this.state._options];\n\n\t\tconst inputEvent = this.createEventWithTarget('input', {\n\t\t\tname: this.state._name as string,\n\t\t\tvalue: emptyValue,\n\t\t});\n\t\tconst changeEvent = this.createEventWithTarget('change', {\n\t\t\tname: this.state._name as string,\n\t\t\tvalue: emptyValue,\n\t\t});\n\n\t\tthis.controller.onFacade.onInput(inputEvent, true, { value: emptyValue });\n\t\tthis.controller.onFacade.onChange(changeEvent, { value: emptyValue });\n\n\t\tthis.ctaRef.el?.focus();\n\t\tthis._isOpen = true;\n\t}\n\n\tprivate selectOption(option: Option<StencilUnknown>) {\n\t\tif (option.value === this._value) {\n\t\t\tthis._inputValue = option.label as string;\n\t\t\tthis._filteredOptions = [...this.state._options];\n\t\t\treturn;\n\t\t}\n\n\t\tthis._value = option.value;\n\t\tthis._inputValue = option.label as string;\n\n\t\tconst inputEvent = this.createEventWithTarget('input', {\n\t\t\tname: this.state._name ?? '',\n\t\t\tvalue: option.value,\n\t\t});\n\t\tconst changeEvent = this.createEventWithTarget('change', {\n\t\t\tname: this.state._name ?? '',\n\t\t\tvalue: option.value,\n\t\t});\n\n\t\tthis.controller.onFacade.onInput(inputEvent, false, option.value);\n\t\tthis.controller.onFacade.onChange(changeEvent, option.value);\n\n\t\tthis._filteredOptions = [...this.state._options];\n\n\t\tthis.controller.setFormAssociatedValue(this._value);\n\t}\n\n\tprivate onInput(event: Event) {\n\t\tconst target = event.target as HTMLInputElement;\n\t\tthis._inputValue = target.value;\n\t\tthis._isOpen = true;\n\t\tthis.setFilteredOptionsByQuery(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\tevent.preventDefault();\n\t\t\tthis._isOpen = true;\n\t\t\tthis.focusSuggestionStartingWith(event.key);\n\t\t}\n\t}\n\n\tprivate setFilteredOptionsByQuery(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._filteredOptions = [...this.state._options];\n\t\t} else if (Array.isArray(this.state._options) && this.state._options.length > 0 && query.length > 0) {\n\t\t\tthis._filteredOptions = this.state._options.filter((option) => {\n\t\t\t\treturn (option.label as string)?.toLowerCase()?.includes(query?.toLowerCase());\n\t\t\t});\n\t\t}\n\t}\n\n\tprivate _focusedOptionIndex: number = -1;\n\n\tprivate moveFocus(delta: number) {\n\t\tif (!this._filteredOptions) {\n\t\t\treturn;\n\t\t}\n\t\tlet newIndex = this._focusedOptionIndex + delta;\n\n\t\tlet iterations = 0;\n\t\tlet foundEnabledOption = false;\n\n\t\tconst maxIterations = this._filteredOptions.length;\n\n\t\twhile (iterations < maxIterations) {\n\t\t\tif (newIndex >= this._filteredOptions.length) {\n\t\t\t\tnewIndex = 0;\n\t\t\t}\n\t\t\tif (newIndex < 0) {\n\t\t\t\tnewIndex = this._filteredOptions.length - 1;\n\t\t\t}\n\n\t\t\tconst option = this._filteredOptions[newIndex] as Option<StencilUnknown>;\n\t\t\tif (!option.disabled) {\n\t\t\t\tfoundEnabledOption = true;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tnewIndex += delta;\n\t\t\titerations++;\n\t\t}\n\n\t\tif (foundEnabledOption) {\n\t\t\tthis._focusedOptionIndex = newIndex;\n\t\t\tthis.focusOption(this._focusedOptionIndex);\n\t\t}\n\t}\n\n\tprivate focusOption(index: number) {\n\t\tif (this.refOptions) {\n\t\t\tconst optionElement = this.refOptions[index];\n\t\t\toptionElement?.focus();\n\t\t}\n\t}\n\n\tprivate selectFocusedOption(): boolean {\n\t\tif (Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 && this._focusedOptionIndex >= 0) {\n\t\t\tthis.selectOption(this._filteredOptions[this._focusedOptionIndex]);\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._filteredOptions) &&\n\t\t\tthis._filteredOptions.findIndex((option) => (option.label as string).toLowerCase().startsWith(charLowerCase) && !option.disabled);\n\n\t\tif (typeof index === 'number' && index >= 0) {\n\t\t\tthis._focusedOptionIndex = index;\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: 'kol-single-select',\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\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\taccessKey: this.state._accessKey,\n\t\t\tautocapitalize: 'off',\n\t\t\tautocorrect: 'off',\n\t\t\tclass: 'kol-single-select__input',\n\t\t\tdisabled: isDisabled,\n\t\t\tname: this.state._name,\n\t\t\tplaceholder: this.state._placeholder,\n\t\t\tref: this.ctaRef,\n\t\t\trequired: this.state._required,\n\t\t\trole: 'combobox',\n\t\t\tstate: this.state,\n\t\t\ttype: 'text',\n\t\t\tvalue: this._inputValue,\n\t\t\t...this.controller.onFacade,\n\t\t\tonChange: this.onChange.bind(this),\n\t\t\tonClick: this.onClick.bind(this),\n\t\t\tonInput: this.onInput.bind(this),\n\t\t\tonBlur: () => {\n\t\t\t\tthis.onBlur();\n\t\t\t},\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-single-select__group\">\n\t\t\t\t\t\t<KolInputStateWrapperFc {...this.getInputProps()} />\n\n\t\t\t\t\t\t{this._inputValue && 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=\"single-select-delete\"\n\t\t\t\t\t\t\t\tclass=\"kol-single-select__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\tthis.ctaRef.el?.focus();\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\n\t\t\t\t\t\t<IconFC\n\t\t\t\t\t\t\ticons=\"kolicon-chevron-down\"\n\t\t\t\t\t\t\tlabel=\"\"\n\t\t\t\t\t\t\tclass={clsx('kol-custom-suggestions-toggle', {\n\t\t\t\t\t\t\t\t'kol-custom-suggestions-toggle--disabled': isDisabled,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tonClick={this.toggleListbox.bind(this)}\n\t\t\t\t\t\t/>\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\tstyle={{ '--visible-options': `${this._rows ?? 5}` }}\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._filteredOptions) && this._filteredOptions.length > 0 ? (\n\t\t\t\t\t\t\t\tthis._filteredOptions.map((option, index) => (\n\t\t\t\t\t\t\t\t\t<CustomSuggestionsOptionFc\n\t\t\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\t\t\toption={option.label}\n\t\t\t\t\t\t\t\t\t\tsearchTerm={this._inputValue}\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.refOptions[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._value === option.value}\n\t\t\t\t\t\t\t\t\t\tdisabled={option.disabled ? true : false}\n\t\t\t\t\t\t\t\t\t\tonClick={(event: Event) => {\n\t\t\t\t\t\t\t\t\t\t\tif (option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option);\n\t\t\t\t\t\t\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox(event);\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._focusedOptionIndex = index;\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\tif (!option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis._focusedOptionIndex = index;\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\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\tif (option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tif (e.key === 'Enter' || e.key === 'NumpadEnter') {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option);\n\t\t\t\t\t\t\t\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox(e);\n\t\t\t\t\t\t\t\t\t\t\t\te.preventDefault();\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/>\n\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t// role=alert is the only role/state thats read from screenreader\n\t\t\t\t\t\t\t\t<li class=\"kol-single-select__no-results-message\" role=\"alert\">\n\t\t\t\t\t\t\t\t\t{this.translateNoResultsMessage}{' '}\n\t\t\t\t\t\t\t\t</li>\n\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\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\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 = !this._isOpen;\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\thandleEvent(false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase ' ':\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\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.ctaRef.el?.focus();\n\t\t\t\t\t\thandleEvent(false);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.toggleListbox(event);\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._focusedOptionIndex = 0;\n\t\t\t\t\t\tthis.focusOption(this._focusedOptionIndex);\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._focusedOptionIndex = this._filteredOptions ? this._filteredOptions.length - 1 : 0;\n\t\t\t\t\t\tthis.focusOption(this._focusedOptionIndex);\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: SingleSelectController;\n\t@State()\n\tprivate _isOpen = false;\n\t@State()\n\tprivate _filteredOptions?: OptionsPropType = [];\n\t@State()\n\tprivate _inputValue: string = '';\n\t@State()\n\tprivate blockSuggestionMouseOver: boolean = false;\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 * Options the user can choose from.\n\t */\n\t@Prop() public _options!: OptionsPropType;\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 }) public _value: StencilUnknown = null;\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 * Maximum number of visible rows of the element.\n\t */\n\t@Prop() public _rows?: RowsPropType;\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: SingleSelectStates = {\n\t\t_hideMsg: false,\n\t\t_id: createUniqueId('single-select'),\n\t\t_label: '', // ⚠ required\n\t\t_options: [],\n\t\t_hasClearButton: true,\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new SingleSelectController(this, 'single-select', this.host);\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('_options')\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tthis.controller.validateOptions(value);\n\t\tthis._filteredOptions = [...(this.state._options ?? [])];\n\t\tif (this._isOpen) {\n\t\t\tthis.setFilteredOptionsByQuery(this._inputValue);\n\t\t} else {\n\t\t\tthis.updateInputValue(this._value);\n\t\t}\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('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(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: StencilUnknown): void {\n\t\tthis.controller.validateValue(value);\n\t\tthis.oldValue = value;\n\t\tthis.updateInputValue(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('_rows')\n\tpublic validateRows(value?: number): void {\n\t\tthis.controller.validateRows(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: VariantClassNamePropType): void {\n\t\tthis.controller.validateVariant(value);\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\tthis.onBlur();\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\tthis._isOpen = false;\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateInputValue(value?: StencilUnknown) {\n\t\tconst matchedOption = this.state._options?.find((option) => option.value === value);\n\t\tthis._inputValue = matchedOption ? String(matchedOption.label) : '';\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.refOptions = [];\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t\tthis.oldValue = this._value;\n\t\tthis._filteredOptions = this.state._options;\n\t\tthis.updateInputValue(this._value);\n\t}\n\n\tprivate onChange(event: Event): void {\n\t\tif (this.oldValue !== this.ctaRef.el?.value) {\n\t\t\tthis.oldValue = this.ctaRef.el?.value;\n\t\t}\n\n\t\tif (!this._isOpen) {\n\t\t\tthis.controller.onFacade.onChange(event, this._value);\n\t\t}\n\t}\n\n\tprivate onClick(event: MouseEvent): void {\n\t\tthis.toggleListbox(event);\n\t\tthis.ctaRef.el?.focus();\n\t\tthis.controller.onFacade.onClick(event);\n\t}\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/single-select/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 type {\n\tAriaDetailsPropType,\n\tDisabledPropType,\n\tFocusableElement,\n\tHideLabelPropType,\n\tHideMsgPropType,\n\tHintPropType,\n\tIconsHorizontalPropType,\n\tInputTypeOnDefault,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tOption,\n\tOptionsPropType,\n\tPlaceholderPropType,\n\tRequiredPropType,\n\tRowsPropType,\n\tShortKeyPropType,\n\tSingleSelectAPI,\n\tSingleSelectStates,\n\tStencilUnknown,\n\tStringified,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n\tVariantClassNamePropType,\n} from '../../schema';\n\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 { EventDetail } from '../../schema/interfaces/EventDetail';\nimport clsx from '../../utils/clsx';\nimport { createUniqueId } from '../../utils/dev.utils';\nimport { createCtaRef, delegateFocus } from '../../utils/element-interaction';\nimport { SingleSelectController } from './controller';\n\n/**\n * The **SingleSelect** component creates a dropdown list from which exactly one predefined option can be selected.\n *\n * @slot - The label of the input field.\n */\n@Component({\n\ttag: 'kol-single-select',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSingleSelect implements FocusableElement, SingleSelectAPI {\n\t@Element() protected readonly host?: HTMLKolSingleSelectElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLInputElement>();\n\tprivate refOptions: HTMLLIElement[] = [];\n\tprivate readonly translateDeleteSelection = translate('kol-delete-selection');\n\tprivate readonly translateNoResultsMessage = translate('kol-no-results-message');\n\tprivate oldValue?: StencilUnknown;\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<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\tprivate toggleListbox = (event: Event) => {\n\t\tevent?.preventDefault();\n\t\tconst isDisabled = this.state._disabled === true;\n\t\tif (isDisabled) {\n\t\t\treturn;\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 {\n\t\t\t\t// Liste öffnen\n\t\t\t\tthis._isOpen = true;\n\t\t\t\tconst selectedIndex = Array.isArray(this._filteredOptions) ? this._filteredOptions.findIndex((option) => option.label === this._inputValue) : -1;\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\n\tprivate onBlur() {\n\t\tconst matchingOption = this.state._options?.find((option) => (option.label as string)?.toLowerCase() === this._inputValue?.toLowerCase());\n\n\t\tif (matchingOption) {\n\t\t\tthis.selectOption(matchingOption);\n\t\t} else if (this._value !== null && this._value !== undefined) {\n\t\t\tthis._filteredOptions = [...(this.state._options ?? [])];\n\t\t}\n\t}\n\n\tprivate createEventWithTarget(type: string, detail: EventDetail): CustomEvent<EventDetail> {\n\t\tconst event = new CustomEvent<EventDetail>(type, {\n\t\t\tbubbles: true,\n\t\t\tdetail,\n\t\t});\n\n\t\tif (this.ctaRef.el) {\n\t\t\tObject.defineProperty(event, 'target', {\n\t\t\t\tvalue: this.ctaRef.el,\n\t\t\t});\n\n\t\t\tObject.defineProperty(event, 'currentTarget', {\n\t\t\t\tvalue: this.ctaRef.el,\n\t\t\t});\n\t\t}\n\t\treturn event;\n\t}\n\n\tprivate clearSelection() {\n\t\tif (this.state._disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst emptyValue = null;\n\t\tthis._focusedOptionIndex = -1;\n\t\tthis._value = emptyValue;\n\t\tthis._inputValue = '';\n\t\tthis._filteredOptions = [...this.state._options];\n\n\t\tconst inputEvent = this.createEventWithTarget('input', {\n\t\t\tname: this.state._name as string,\n\t\t\tvalue: emptyValue,\n\t\t});\n\t\tconst changeEvent = this.createEventWithTarget('change', {\n\t\t\tname: this.state._name as string,\n\t\t\tvalue: emptyValue,\n\t\t});\n\n\t\tthis.controller.onFacade.onInput(inputEvent, true, { value: emptyValue });\n\t\tthis.controller.onFacade.onChange(changeEvent, { value: emptyValue });\n\n\t\tthis.ctaRef.el?.focus();\n\t\tthis._isOpen = true;\n\t}\n\n\tprivate selectOption(option: Option<StencilUnknown>) {\n\t\tif (option.value === this._value) {\n\t\t\tthis._inputValue = option.label as string;\n\t\t\tthis._filteredOptions = [...this.state._options];\n\t\t\treturn;\n\t\t}\n\n\t\tthis._value = option.value;\n\t\tthis._inputValue = option.label as string;\n\n\t\tconst inputEvent = this.createEventWithTarget('input', {\n\t\t\tname: this.state._name ?? '',\n\t\t\tvalue: option.value,\n\t\t});\n\t\tconst changeEvent = this.createEventWithTarget('change', {\n\t\t\tname: this.state._name ?? '',\n\t\t\tvalue: option.value,\n\t\t});\n\n\t\tthis.controller.onFacade.onInput(inputEvent, false, option.value);\n\t\tthis.controller.onFacade.onChange(changeEvent, option.value);\n\n\t\tthis._filteredOptions = [...this.state._options];\n\n\t\tthis.controller.setFormAssociatedValue(this._value);\n\t}\n\n\tprivate onInput(event: Event) {\n\t\tconst target = event.target as HTMLInputElement;\n\t\tthis._inputValue = target.value;\n\t\tthis._isOpen = true;\n\t\tthis.setFilteredOptionsByQuery(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\tevent.preventDefault();\n\t\t\tthis._isOpen = true;\n\t\t\tthis.focusSuggestionStartingWith(event.key);\n\t\t}\n\t}\n\n\tprivate setFilteredOptionsByQuery(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._filteredOptions = [...this.state._options];\n\t\t} else if (Array.isArray(this.state._options) && this.state._options.length > 0 && query.length > 0) {\n\t\t\tthis._filteredOptions = this.state._options.filter((option) => {\n\t\t\t\treturn (option.label as string)?.toLowerCase()?.includes(query?.toLowerCase());\n\t\t\t});\n\t\t}\n\t}\n\n\tprivate _focusedOptionIndex: number = -1;\n\n\tprivate moveFocus(delta: number) {\n\t\tif (!this._filteredOptions) {\n\t\t\treturn;\n\t\t}\n\t\tlet newIndex = this._focusedOptionIndex + delta;\n\n\t\tlet iterations = 0;\n\t\tlet foundEnabledOption = false;\n\n\t\tconst maxIterations = this._filteredOptions.length;\n\n\t\twhile (iterations < maxIterations) {\n\t\t\tif (newIndex >= this._filteredOptions.length) {\n\t\t\t\tnewIndex = 0;\n\t\t\t}\n\t\t\tif (newIndex < 0) {\n\t\t\t\tnewIndex = this._filteredOptions.length - 1;\n\t\t\t}\n\n\t\t\tconst option = this._filteredOptions[newIndex] as Option<StencilUnknown>;\n\t\t\tif (!option.disabled) {\n\t\t\t\tfoundEnabledOption = true;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tnewIndex += delta;\n\t\t\titerations++;\n\t\t}\n\n\t\tif (foundEnabledOption) {\n\t\t\tthis._focusedOptionIndex = newIndex;\n\t\t\tthis.focusOption(this._focusedOptionIndex);\n\t\t}\n\t}\n\n\tprivate focusOption(index: number) {\n\t\tif (this.refOptions) {\n\t\t\tconst optionElement = this.refOptions[index];\n\t\t\toptionElement?.focus();\n\t\t}\n\t}\n\n\tprivate selectFocusedOption(): boolean {\n\t\tif (Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 && this._focusedOptionIndex >= 0) {\n\t\t\tthis.selectOption(this._filteredOptions[this._focusedOptionIndex]);\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._filteredOptions) &&\n\t\t\tthis._filteredOptions.findIndex((option) => (option.label as string).toLowerCase().startsWith(charLowerCase) && !option.disabled);\n\n\t\tif (typeof index === 'number' && index >= 0) {\n\t\t\tthis._focusedOptionIndex = index;\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: 'kol-single-select',\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\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\taccessKey: this.state._accessKey,\n\t\t\tautocapitalize: 'off',\n\t\t\tautocorrect: 'off',\n\t\t\tclass: 'kol-single-select__input',\n\t\t\tdisabled: isDisabled,\n\t\t\tname: this.state._name,\n\t\t\tplaceholder: this.state._placeholder,\n\t\t\tref: this.ctaRef,\n\t\t\trequired: this.state._required,\n\t\t\trole: 'combobox',\n\t\t\tstate: this.state,\n\t\t\ttype: 'text',\n\t\t\tvalue: this._inputValue,\n\t\t\t...this.controller.onFacade,\n\t\t\tonChange: this.onChange.bind(this),\n\t\t\tonClick: this.onClick.bind(this),\n\t\t\tonInput: this.onInput.bind(this),\n\t\t\tonBlur: () => {\n\t\t\t\tthis.onBlur();\n\t\t\t},\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-single-select__group\">\n\t\t\t\t\t\t<KolInputStateWrapperFc {...this.getInputProps()} />\n\n\t\t\t\t\t\t{this._inputValue && 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=\"single-select-delete\"\n\t\t\t\t\t\t\t\tclass=\"kol-single-select__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\tthis.ctaRef.el?.focus();\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\n\t\t\t\t\t\t<IconFC\n\t\t\t\t\t\t\ticons=\"kolicon-chevron-down\"\n\t\t\t\t\t\t\tlabel=\"\"\n\t\t\t\t\t\t\tclass={clsx('kol-custom-suggestions-toggle', {\n\t\t\t\t\t\t\t\t'kol-custom-suggestions-toggle--disabled': isDisabled,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tonClick={this.toggleListbox.bind(this)}\n\t\t\t\t\t\t/>\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\tstyle={{ '--visible-options': `${this._rows ?? 5}` }}\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._filteredOptions) && this._filteredOptions.length > 0 ? (\n\t\t\t\t\t\t\t\tthis._filteredOptions.map((option, index) => (\n\t\t\t\t\t\t\t\t\t<CustomSuggestionsOptionFc\n\t\t\t\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t\t\t\t\toption={option.label}\n\t\t\t\t\t\t\t\t\t\tsearchTerm={this._inputValue}\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.refOptions[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._value === option.value}\n\t\t\t\t\t\t\t\t\t\tdisabled={option.disabled ? true : false}\n\t\t\t\t\t\t\t\t\t\tonClick={(event: Event) => {\n\t\t\t\t\t\t\t\t\t\t\tif (option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option);\n\t\t\t\t\t\t\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox(event);\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._focusedOptionIndex = index;\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\tif (!option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis._focusedOptionIndex = index;\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\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\tif (option.disabled) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tif (e.key === 'Enter' || e.key === 'NumpadEnter') {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.selectOption(option);\n\t\t\t\t\t\t\t\t\t\t\t\tthis.ctaRef.el?.focus();\n\t\t\t\t\t\t\t\t\t\t\t\tthis.toggleListbox(e);\n\t\t\t\t\t\t\t\t\t\t\t\te.preventDefault();\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/>\n\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t// role=alert is the only role/state thats read from screenreader\n\t\t\t\t\t\t\t\t<li class=\"kol-single-select__no-results-message\" role=\"alert\">\n\t\t\t\t\t\t\t\t\t{this.translateNoResultsMessage}{' '}\n\t\t\t\t\t\t\t\t</li>\n\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\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\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 = !this._isOpen;\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\thandleEvent(false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase ' ':\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\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.ctaRef.el?.focus();\n\t\t\t\t\t\thandleEvent(false);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.toggleListbox(event);\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._focusedOptionIndex = 0;\n\t\t\t\t\t\tthis.focusOption(this._focusedOptionIndex);\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._focusedOptionIndex = this._filteredOptions ? this._filteredOptions.length - 1 : 0;\n\t\t\t\t\t\tthis.focusOption(this._focusedOptionIndex);\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: SingleSelectController;\n\t@State()\n\tprivate _isOpen = false;\n\t@State()\n\tprivate _filteredOptions?: OptionsPropType = [];\n\t@State()\n\tprivate _inputValue: string = '';\n\t@State()\n\tprivate blockSuggestionMouseOver: boolean = false;\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 input.\n\t * Uses ElementInternals.ariaDetailsElements to cross the Shadow DOM boundary.\n\t * Supported by desktop screen readers (NVDA, JAWS with Chrome/Firefox).\n\t * Not yet supported by mobile screen readers (TalkBack, VoiceOver iOS).\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 * Options the user can choose from.\n\t */\n\t@Prop() public _options!: OptionsPropType;\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 }) public _value: StencilUnknown = null;\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 * Maximum number of visible rows of the element.\n\t */\n\t@Prop() public _rows?: RowsPropType;\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: SingleSelectStates = {\n\t\t_hideMsg: false,\n\t\t_id: createUniqueId('single-select'),\n\t\t_label: '', // ⚠ required\n\t\t_options: [],\n\t\t_hasClearButton: true,\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new SingleSelectController(this, 'single-select', this.host);\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('_options')\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tthis.controller.validateOptions(value);\n\t\tthis._filteredOptions = [...(this.state._options ?? [])];\n\t\tif (this._isOpen) {\n\t\t\tthis.setFilteredOptionsByQuery(this._inputValue);\n\t\t} else {\n\t\t\tthis.updateInputValue(this._value);\n\t\t}\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('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(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: StencilUnknown): void {\n\t\tthis.controller.validateValue(value);\n\t\tthis.oldValue = value;\n\t\tthis.updateInputValue(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('_rows')\n\tpublic validateRows(value?: number): void {\n\t\tthis.controller.validateRows(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: VariantClassNamePropType): void {\n\t\tthis.controller.validateVariant(value);\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\tthis.onBlur();\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\tthis._isOpen = false;\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateInputValue(value?: StencilUnknown) {\n\t\tconst matchedOption = this.state._options?.find((option) => option.value === value);\n\t\tthis._inputValue = matchedOption ? String(matchedOption.label) : '';\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.refOptions = [];\n\t\tthis._touched = this._touched === true;\n\t\tthis.validateAriaDetails(this._ariaDetails);\n\t\tthis.controller.componentWillLoad();\n\t\tthis.oldValue = this._value;\n\t\tthis._filteredOptions = this.state._options;\n\t\tthis.updateInputValue(this._value);\n\t}\n\n\tprivate onChange(event: Event): void {\n\t\tif (this.oldValue !== this.ctaRef.el?.value) {\n\t\t\tthis.oldValue = this.ctaRef.el?.value;\n\t\t}\n\n\t\tif (!this._isOpen) {\n\t\t\tthis.controller.onFacade.onChange(event, this._value);\n\t\t}\n\t}\n\n\tprivate onClick(event: MouseEvent): void {\n\t\tthis.toggleListbox(event);\n\t\tthis.ctaRef.el?.focus();\n\t\tthis.controller.onFacade.onClick(event);\n\t}\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,
@@ -207,8 +212,8 @@
207
212
  }
208
213
  @font-face {
209
214
  font-family: "kolicons";
210
- src: url("kolicons.eot?t=1780919027063"); /* IE9*/
211
- 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- */
215
+ src: url("kolicons.eot?t=1782311579243"); /* IE9*/
216
+ 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- */
212
217
  }
213
218
  @layer kol-component {
214
219
  [class^=kolicon-], [class*=" kolicon-"] {
@@ -458,7 +463,7 @@
458
463
  justify-content: flex-start;
459
464
  }
460
465
  .kol-form-field--required .kol-form-field__label-text:has(.kol-span__slot[hidden])::after,
461
- .kol-form-field--required .kol-tooltip__content .kol-span__label::after {
466
+ .kol-form-field--required .kol-form-field .kol-tooltip__content .kol-span__label::after {
462
467
  content: "*"/"";
463
468
  }
464
469
  .kol-input-container {
@@ -17,7 +17,7 @@ export class KolSkipNav {
17
17
  };
18
18
  }
19
19
  render() {
20
- return (h("nav", { key: 'aa484fadf45377288d3bc7b099a34d8e381bfda0', class: "kol-skip-nav", "aria-label": this.state._label }, h("ul", { key: '3549087a2157b6ee5135c3166e3a78f055bdf6dc', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
20
+ return (h("nav", { key: '1dd822317cce82a3d09ccd3777555e511430538e', class: "kol-skip-nav", "aria-label": this.state._label }, h("ul", { key: '372cfe14e0f58b7b7b33461d6d6641fcfd3b0818', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
21
21
  return (h("li", { class: "kol-skip-nav__list-item", key: index }, h(KolLinkWcTag, Object.assign({}, link, { ref: index === 0 ? this.ctaRef : undefined }))));
22
22
  }))));
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/skip-nav/shadow.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAY9E,MAAM,OAAO,UAAU;IAPvB;QASoB,WAAM,GAAG,YAAY,EAAwB,CAAC;QAqCjD,UAAK,GAAkB;YACtC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACV,CAAC;KA0BF;IAhEO,MAAM;QACZ,OAAO,CACN,4DAAK,KAAK,EAAC,cAAc,gBAAa,IAAI,CAAC,KAAK,CAAC,MAAM;YACtD,2DAAI,KAAK,EAAC,oBAAoB,IAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAe,EAAE,KAAa,EAAE,EAAE;gBACzD,OAAO,CACN,UAAI,KAAK,EAAC,yBAAyB,EAAC,GAAG,EAAE,KAAK;oBAC7C,EAAC,YAAY,oBAAK,IAAI,IAAE,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAiB,CAC/E,CACL,CAAC;YACH,CAAC,CAAC,CACE,CACA,CACN,CAAC;IACH,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAkBxD,aAAa,CAAC,KAAqB,EAAE,SAAyB,EAAE,OAAO,GAAG,KAAK;QACrF,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QACD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAGM,aAAa,CAAC,KAAgC;QACpD,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAEM,oBAAoB;QAC1B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD;AAzCa;IAHZ,aAAa,CAAC,QAAQ,CAAC;uCAGuC","sourcesContent":["import { Component, Element, h, Method, Prop, State, Watch } from '@stencil/core';\nimport type { FocusableElement, KolFocusOptions, LabelPropType, LinkProps, SkipNavAPI, SkipNavStates, Stringified } from '../../schema';\nimport { validateLabel } from '../../schema';\n\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { watchNavLinks } from '../nav/validation';\n\nimport type { JSX } from '@stencil/core';\nimport { KolLinkWcTag } from '../../core/component-names';\nimport { createCtaRef, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **SkipNav** component renders a hidden navigation that allows keyboard and assistive technology users to skip repetitive navigation sections and jump directly to the main content. It only becomes visible when reached via the Tab key.\n */\n@Component({\n\ttag: 'kol-skip-nav',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSkipNav implements SkipNavAPI, FocusableElement {\n\t@Element() protected readonly host?: HTMLKolSkipNavElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolLinkWcElement>();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav class=\"kol-skip-nav\" aria-label={this.state._label}>\n\t\t\t\t<ul class=\"kol-skip-nav__list\">\n\t\t\t\t\t{this.state._links.map((link: LinkProps, index: number) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li class=\"kol-skip-nav__list-item\" key={index}>\n\t\t\t\t\t\t\t\t<KolLinkWcTag {...link} ref={index === 0 ? this.ctaRef : undefined}></KolLinkWcTag>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</ul>\n\t\t\t</nav>\n\t\t);\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 * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines the list of links combined with their labels to render.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t@State() public state: SkipNavStates = {\n\t\t_label: '', // ⚠ required\n\t\t_links: [],\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType, _oldValue?: LabelPropType, initial = false): void {\n\t\tif (!initial) {\n\t\t\tremoveNavLabel(this.state._label); // remove the current\n\t\t}\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t\taddNavLabel(this.state._label); // add the state instead of prop, because the prop could be invalid and not set as new label\n\t}\n\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolSkipNav', this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label, undefined, true);\n\t\tthis.validateLinks(this._links);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tremoveNavLabel(this.state._label);\n\t}\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/skip-nav/shadow.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAY9E,MAAM,OAAO,UAAU;IAPvB;QASoB,WAAM,GAAG,YAAY,EAAwB,CAAC;QAqCjD,UAAK,GAAkB;YACtC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACV,CAAC;KA0BF;IAhEO,MAAM;QACZ,OAAO,CACN,4DAAK,KAAK,EAAC,cAAc,gBAAa,IAAI,CAAC,KAAK,CAAC,MAAM;YACtD,2DAAI,KAAK,EAAC,oBAAoB,IAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAe,EAAE,KAAa,EAAE,EAAE;gBACzD,OAAO,CACN,UAAI,KAAK,EAAC,yBAAyB,EAAC,GAAG,EAAE,KAAK;oBAC7C,EAAC,YAAY,oBAAK,IAAI,IAAE,GAAG,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAiB,CAC/E,CACL,CAAC;YACH,CAAC,CAAC,CACE,CACA,CACN,CAAC;IACH,CAAC;IASY,AAAN,KAAK,CAAC,KAAK,CAAC,OAAyB,IAAkB,CAAC;IAkBxD,aAAa,CAAC,KAAqB,EAAE,SAAyB,EAAE,OAAO,GAAG,KAAK;QACrF,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QACD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAGM,aAAa,CAAC,KAAgC;QACpD,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAEM,oBAAoB;QAC1B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD;AAzCa;IAHZ,aAAa,CAAC,QAAQ,CAAC;uCAGuC","sourcesContent":["import { Component, Element, h, Method, Prop, State, Watch } from '@stencil/core';\nimport type { FocusableElement, KolFocusOptions, LabelPropType, LinkProps, SkipNavAPI, SkipNavStates, Stringified } from '../../schema';\nimport { validateLabel } from '../../schema';\n\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { watchNavLinks } from '../nav/validation';\n\nimport type { JSX } from '@stencil/core';\nimport { KolLinkWcTag } from '../../core/component-names';\nimport { createCtaRef, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **SkipNav** component renders a hidden navigation that allows keyboard and assistive technology users to skip repetitive navigation sections and jump directly to the main content. It only becomes visible when reached via the Tab key.\n */\n@Component({\n\ttag: 'kol-skip-nav',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSkipNav implements FocusableElement, SkipNavAPI {\n\t@Element() protected readonly host?: HTMLKolSkipNavElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolLinkWcElement>();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav class=\"kol-skip-nav\" aria-label={this.state._label}>\n\t\t\t\t<ul class=\"kol-skip-nav__list\">\n\t\t\t\t\t{this.state._links.map((link: LinkProps, index: number) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li class=\"kol-skip-nav__list-item\" key={index}>\n\t\t\t\t\t\t\t\t<KolLinkWcTag {...link} ref={index === 0 ? this.ctaRef : undefined}></KolLinkWcTag>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</ul>\n\t\t\t</nav>\n\t\t);\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 * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines the list of links combined with their labels to render.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t@State() public state: SkipNavStates = {\n\t\t_label: '', // ⚠ required\n\t\t_links: [],\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType, _oldValue?: LabelPropType, initial = false): void {\n\t\tif (!initial) {\n\t\t\tremoveNavLabel(this.state._label); // remove the current\n\t\t}\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t\taddNavLabel(this.state._label); // add the state instead of prop, because the prop could be invalid and not set as new label\n\t}\n\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolSkipNav', this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label, undefined, true);\n\t\tthis.validateLinks(this._links);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tremoveNavLabel(this.state._label);\n\t}\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-"] {
@@ -28,7 +28,7 @@ export class KolSpin extends BaseWebComponent {
28
28
  });
29
29
  }
30
30
  render() {
31
- return (h(Host, { key: 'b4fec1b0b595bf2eebe1c8f866b5f1352be06093' }, h(SpinFC, { key: '95988885799767328412a77384e5636b6444cc52', show: this.ctrl.getRenderProp('show'), label: this.ctrl.getRenderProp('label'), variant: this.ctrl.getRenderProp('variant'), showToggled: this.showToggled, handleGetTranslateActionRunning: this.ctrl.handleGetTranslateActionRunning, handleGetTranslateActionDone: this.ctrl.handleGetTranslateActionDone })));
31
+ return (h(Host, { key: '7379c127d8a30dc2175e50e2f7adaa45d4986a35' }, h(SpinFC, { key: 'e1992feadd19faa876ca24b9ef1856fba3b54350', show: this.ctrl.getRenderProp('show'), label: this.ctrl.getRenderProp('label'), variant: this.ctrl.getRenderProp('variant'), showToggled: this.showToggled })));
32
32
  }
33
33
  static get is() { return "kol-spin"; }
34
34
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/spin/component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAG3F,OAAO,EAAE,MAAM,EAAE,MAAM,qDAAqD,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAUtF,MAAM,OAAO,OAAQ,SAAQ,gBAAyB;;QACpC,SAAI,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAoCtD,gBAAW,GAAY,KAAK,CAAC;;;IA3B7B,SAAS,CAAC,KAAe;QAC/B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IASM,UAAU,CAAC,KAAc;QAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IASM,YAAY,CAAC,KAAuB;QAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAKM,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,OAAO,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM;QACZ,OAAO,CACN,EAAC,IAAI;YACJ,EAAC,MAAM,qDACN,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EACrC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EACvC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,+BAA+B,EAAE,IAAI,CAAC,IAAI,CAAC,+BAA+B,EAC1E,4BAA4B,EAAE,IAAI,CAAC,IAAI,CAAC,4BAA4B,GACnE,CACI,CACP,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { BaseWebComponent } from '../../internal/functional-components/base-web-component';\nimport type { WebComponentInterface } from '../../internal/functional-components/generic-types';\nimport type { SpinApi } from '../../internal/functional-components/spin/api';\nimport { SpinFC } from '../../internal/functional-components/spin/component';\nimport { SpinController } from '../../internal/functional-components/spin/controller';\nimport type { SpinVariantType } from '../../internal/props/variant-spin';\n\n@Component({\n\ttag: 'kol-spin',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSpin extends BaseWebComponent<SpinApi> implements WebComponentInterface<SpinApi> {\n\tprivate readonly ctrl = new SpinController(this.stateAccess);\n\n\t/**\n\t * Makes the element show up.\n\t */\n\t@Prop()\n\tpublic _show?: boolean;\n\n\t@Watch('_show')\n\tpublic watchShow(value?: boolean): void {\n\t\tthis.ctrl.watchShow(value);\n\t}\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop()\n\tpublic _label?: string;\n\n\t@Watch('_label')\n\tpublic watchLabel(value?: string): void {\n\t\tthis.ctrl.watchLabel(value);\n\t}\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop()\n\tpublic _variant?: SpinVariantType;\n\n\t@Watch('_variant')\n\tpublic watchVariant(value?: SpinVariantType): void {\n\t\tthis.ctrl.watchVariant(value);\n\t}\n\n\t@State()\n\tpublic showToggled: boolean = false;\n\n\tpublic componentWillLoad(): void {\n\t\tthis.ctrl.componentWillLoad({\n\t\t\tshow: this._show,\n\t\t\tlabel: this._label,\n\t\t\tvariant: this._variant,\n\t\t});\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<SpinFC\n\t\t\t\t\tshow={this.ctrl.getRenderProp('show')}\n\t\t\t\t\tlabel={this.ctrl.getRenderProp('label')}\n\t\t\t\t\tvariant={this.ctrl.getRenderProp('variant')}\n\t\t\t\t\tshowToggled={this.showToggled}\n\t\t\t\t\thandleGetTranslateActionRunning={this.ctrl.handleGetTranslateActionRunning}\n\t\t\t\t\thandleGetTranslateActionDone={this.ctrl.handleGetTranslateActionDone}\n\t\t\t\t/>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"]}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/spin/component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAG3F,OAAO,EAAE,MAAM,EAAE,MAAM,qDAAqD,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAUtF,MAAM,OAAO,OAAQ,SAAQ,gBAAyB;;QACpC,SAAI,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAoCtD,gBAAW,GAAY,KAAK,CAAC;;;IA3B7B,SAAS,CAAC,KAAe;QAC/B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IASM,UAAU,CAAC,KAAc;QAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IASM,YAAY,CAAC,KAAuB;QAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAKM,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,OAAO,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM;QACZ,OAAO,CACN,EAAC,IAAI;YACJ,EAAC,MAAM,qDACN,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EACrC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EACvC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,GAC5B,CACI,CACP,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { BaseWebComponent } from '../../internal/functional-components/base-web-component';\nimport type { WebComponentInterface } from '../../internal/functional-components/generic-types';\nimport type { SpinApi } from '../../internal/functional-components/spin/api';\nimport { SpinFC } from '../../internal/functional-components/spin/component';\nimport { SpinController } from '../../internal/functional-components/spin/controller';\nimport type { SpinVariantType } from '../../internal/props/variant-spin';\n\n@Component({\n\ttag: 'kol-spin',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSpin extends BaseWebComponent<SpinApi> implements WebComponentInterface<SpinApi> {\n\tprivate readonly ctrl = new SpinController(this.stateAccess);\n\n\t/**\n\t * Makes the element show up.\n\t */\n\t@Prop()\n\tpublic _show?: boolean;\n\n\t@Watch('_show')\n\tpublic watchShow(value?: boolean): void {\n\t\tthis.ctrl.watchShow(value);\n\t}\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop()\n\tpublic _label?: string;\n\n\t@Watch('_label')\n\tpublic watchLabel(value?: string): void {\n\t\tthis.ctrl.watchLabel(value);\n\t}\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop()\n\tpublic _variant?: SpinVariantType;\n\n\t@Watch('_variant')\n\tpublic watchVariant(value?: SpinVariantType): void {\n\t\tthis.ctrl.watchVariant(value);\n\t}\n\n\t@State()\n\tpublic showToggled: boolean = false;\n\n\tpublic componentWillLoad(): void {\n\t\tthis.ctrl.componentWillLoad({\n\t\t\tshow: this._show,\n\t\t\tlabel: this._label,\n\t\t\tvariant: this._variant,\n\t\t});\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<SpinFC\n\t\t\t\t\tshow={this.ctrl.getRenderProp('show')}\n\t\t\t\t\tlabel={this.ctrl.getRenderProp('label')}\n\t\t\t\t\tvariant={this.ctrl.getRenderProp('variant')}\n\t\t\t\t\tshowToggled={this.showToggled}\n\t\t\t\t/>\n\t\t\t</Host>\n\t\t);\n\t}\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,
@@ -38,10 +38,10 @@ export class KolSplitButton {
38
38
  async click() { }
39
39
  render() {
40
40
  const i18nDropdownLabel = 'kol-split-button-dropdown-label';
41
- return (h("div", { key: 'f93883a74c715adadb01e11a399aa9381dd8a3e5', class: "kol-split-button" }, h("div", { key: '6e7c6f7b2fb2af4616e7a72190c33d95de6730c9', class: "kol-split-button__root" }, h(KolButtonWcTag, { key: '6743560a7e81c95f0999cc44f38f23d99a5eb242', class: clsx('kol-split-button__button', {
41
+ return (h("div", { key: 'efb712282023ebd2eb5ba801cab698eacafb558b', class: "kol-split-button" }, h("div", { key: '331b05abd64211d21d8a67a3cff7c9db5b10870c', class: "kol-split-button__root" }, h(KolButtonWcTag, { key: 'fa270cf31c77bf0f125d52bbb951fa4c2f6fed30', class: clsx('kol-split-button__button', {
42
42
  [this._variant]: this._variant !== 'custom',
43
43
  [this._customClass]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,
44
- }), ref: this.ctaRef, _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _icons: this._icons, _hideLabel: this._hideLabel, _label: this._label, _name: this._name, _on: this.clickButtonHandler, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }), h("div", { key: '1c66f27f7339ed03db0e1464c0099e13fe1f22cf', class: "kol-split-button__horizontal-line" }), h(KolPopoverButtonWcTag, { key: '3553eb129e3c54b92dae1c368941239a41510596', class: "kol-split-button__secondary-button", ref: this.setPopoverButtonRef, _disabled: this._disabled, _hideLabel: true, _icons: "kolicon-chevron-down", _label: translate(`${i18nDropdownLabel}-open`), _popoverAlign: "bottom" }, h("slot", { key: '366b100a15df2afc22bc89c2fdb40897e8ea880c' })))));
44
+ }), ref: this.ctaRef, _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _icons: this._icons, _hideLabel: this._hideLabel, _label: this._label, _name: this._name, _on: this.clickButtonHandler, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }), h("div", { key: '70e8b56f252df5b250e20829ef5200b8e1f6ef12', class: "kol-split-button__horizontal-line" }), h(KolPopoverButtonWcTag, { key: '1b44af2b7bac2ea2e797cdee3cd604802eed78cf', class: "kol-split-button__secondary-button", ref: this.setPopoverButtonRef, _disabled: this._disabled, _hideLabel: true, _icons: "kolicon-chevron-down", _label: translate(`${i18nDropdownLabel}-open`), _popoverAlign: "bottom" }, h("slot", { key: 'd3e52b768ff7cda01eee60e1321c767c021eb82c' })))));
45
45
  }
46
46
  connectedCallback() {
47
47
  this.state = Object.assign(Object.assign({}, this.state), { _show: false });
@@ -1 +1 @@
1
- {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/split-button/shadow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop, State } from '@stencil/core';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonTypePropType,\n\tButtonVariantPropType,\n\tCustomClassPropType,\n\tFocusableElement,\n\tIconsPropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tShortKeyPropType,\n\tSplitButtonProps,\n\tSplitButtonStates,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\n\nimport { KolButtonWcTag, KolPopoverButtonWcTag } from '../../core/component-names';\nimport { translate } from '../../i18n';\nimport clsx from '../../utils/clsx';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **SplitButton** component can be used to display a two-part button. The primary button is typically used for\n * a main action, while the secondary button opens a context menu (`Popover`) that contains additional actions.\n *\n * @slot - Allows arbitrary HTML to be inserted into the dropdown.\n */\n@Component({\n\ttag: 'kol-split-button',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSplitButton implements SplitButtonProps, FocusableElement /*, SplitButtonAPI*/ {\n\t@Element() protected readonly host?: HTMLKolSplitButtonElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\tprivate popoverButtonRef?: HTMLKolPopoverButtonWcElement;\n\n\tprivate readonly setPopoverButtonRef = (ref?: HTMLKolPopoverButtonWcElement) => {\n\t\tthis.popoverButtonRef = ref;\n\t};\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\tprivate readonly clickButtonHandler = {\n\t\tonClick: (event: MouseEvent) => {\n\t\t\tevent.stopPropagation();\n\n\t\t\tif (typeof this._on?.onClick === 'function') {\n\t\t\t\tthis._on?.onClick(event, this._value);\n\t\t\t}\n\t\t},\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst i18nDropdownLabel = 'kol-split-button-dropdown-label';\n\t\treturn (\n\t\t\t<div class=\"kol-split-button\">\n\t\t\t\t<div class=\"kol-split-button__root\">\n\t\t\t\t\t<KolButtonWcTag\n\t\t\t\t\t\tclass={clsx('kol-split-button__button', {\n\t\t\t\t\t\t\t[this._variant as string]: this._variant !== 'custom',\n\t\t\t\t\t\t\t[this._customClass as string]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tref={this.ctaRef}\n\t\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t\t_customClass={this._customClass}\n\t\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t\t_label={this._label}\n\t\t\t\t\t\t_name={this._name}\n\t\t\t\t\t\t_on={this.clickButtonHandler}\n\t\t\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t\t_type={this._type}\n\t\t\t\t\t\t_value={this._value}\n\t\t\t\t\t\t_variant={this._variant}\n\t\t\t\t\t></KolButtonWcTag>\n\t\t\t\t\t<div class=\"kol-split-button__horizontal-line\"></div>\n\t\t\t\t\t<KolPopoverButtonWcTag\n\t\t\t\t\t\tclass=\"kol-split-button__secondary-button\"\n\t\t\t\t\t\tref={this.setPopoverButtonRef}\n\t\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t\t_hideLabel\n\t\t\t\t\t\t_icons=\"kolicon-chevron-down\"\n\t\t\t\t\t\t_label={translate(`${i18nDropdownLabel}-open`)}\n\t\t\t\t\t\t_popoverAlign=\"bottom\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</KolPopoverButtonWcTag>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tpublic connectedCallback(): void {\n\t\tthis.state = { ...this.state, _show: false };\n\t}\n\n\t/**\n\t * Closes the dropdown.\n\t */\n\t@Method()\n\tpublic async closePopup() {\n\t\tvoid this.popoverButtonRef?.hidePopover();\n\t\treturn Promise.resolve();\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 the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\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\t@State() public state: SplitButtonStates = {\n\t\t_show: false,\n\t};\n}\n"]}
1
+ {"version":3,"file":"shadow.js","sourceRoot":"","sources":["../../../src/components/split-button/shadow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Method, Prop, State } from '@stencil/core';\nimport type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonTypePropType,\n\tButtonVariantPropType,\n\tClickableElement,\n\tCustomClassPropType,\n\tFocusableElement,\n\tIconsPropType,\n\tKolFocusOptions,\n\tLabelWithExpertSlotPropType,\n\tShortKeyPropType,\n\tSplitButtonProps,\n\tSplitButtonStates,\n\tStencilUnknown,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\n\nimport { KolButtonWcTag, KolPopoverButtonWcTag } from '../../core/component-names';\nimport { translate } from '../../i18n';\nimport clsx from '../../utils/clsx';\nimport { createCtaRef, delegateClick, delegateFocus } from '../../utils/element-interaction';\n\n/**\n * The **SplitButton** component can be used to display a two-part button. The primary button is typically used for\n * a main action, while the secondary button opens a context menu (`Popover`) that contains additional actions.\n *\n * @slot - Allows arbitrary HTML to be inserted into the dropdown.\n */\n@Component({\n\ttag: 'kol-split-button',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolSplitButton implements ClickableElement, FocusableElement, SplitButtonProps /*, SplitButtonAPI*/ {\n\t@Element() protected readonly host?: HTMLKolSplitButtonElement;\n\tprotected readonly ctaRef = createCtaRef<HTMLKolButtonWcElement>();\n\tprivate popoverButtonRef?: HTMLKolPopoverButtonWcElement;\n\n\tprivate readonly setPopoverButtonRef = (ref?: HTMLKolPopoverButtonWcElement) => {\n\t\tthis.popoverButtonRef = ref;\n\t};\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\tprivate readonly clickButtonHandler = {\n\t\tonClick: (event: MouseEvent) => {\n\t\t\tevent.stopPropagation();\n\n\t\t\tif (typeof this._on?.onClick === 'function') {\n\t\t\t\tthis._on?.onClick(event, this._value);\n\t\t\t}\n\t\t},\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst i18nDropdownLabel = 'kol-split-button-dropdown-label';\n\t\treturn (\n\t\t\t<div class=\"kol-split-button\">\n\t\t\t\t<div class=\"kol-split-button__root\">\n\t\t\t\t\t<KolButtonWcTag\n\t\t\t\t\t\tclass={clsx('kol-split-button__button', {\n\t\t\t\t\t\t\t[this._variant as string]: this._variant !== 'custom',\n\t\t\t\t\t\t\t[this._customClass as string]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tref={this.ctaRef}\n\t\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t\t_customClass={this._customClass}\n\t\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t\t_label={this._label}\n\t\t\t\t\t\t_name={this._name}\n\t\t\t\t\t\t_on={this.clickButtonHandler}\n\t\t\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t\t_type={this._type}\n\t\t\t\t\t\t_value={this._value}\n\t\t\t\t\t\t_variant={this._variant}\n\t\t\t\t\t></KolButtonWcTag>\n\t\t\t\t\t<div class=\"kol-split-button__horizontal-line\"></div>\n\t\t\t\t\t<KolPopoverButtonWcTag\n\t\t\t\t\t\tclass=\"kol-split-button__secondary-button\"\n\t\t\t\t\t\tref={this.setPopoverButtonRef}\n\t\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t\t_hideLabel\n\t\t\t\t\t\t_icons=\"kolicon-chevron-down\"\n\t\t\t\t\t\t_label={translate(`${i18nDropdownLabel}-open`)}\n\t\t\t\t\t\t_popoverAlign=\"bottom\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</KolPopoverButtonWcTag>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tpublic connectedCallback(): void {\n\t\tthis.state = { ...this.state, _show: false };\n\t}\n\n\t/**\n\t * Closes the dropdown.\n\t */\n\t@Method()\n\tpublic async closePopup() {\n\t\tvoid this.popoverButtonRef?.hidePopover();\n\t\treturn Promise.resolve();\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 the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\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\t@State() public state: SplitButtonStates = {\n\t\t_show: false,\n\t};\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-"] {