@public-ui/components 2.0.0-rc.1 → 2.0.0-rc.11

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 (973) hide show
  1. package/custom-elements.json +213 -112
  2. package/dist/cjs/InternalUnderlinedAccessKey-1daef254.js +4 -0
  3. package/dist/cjs/InternalUnderlinedAccessKey-1daef254.js.map +1 -0
  4. package/dist/cjs/{a11y.tipps-7bc295a0.js → a11y.tipps-1c165956.js} +1 -1
  5. package/dist/cjs/{a11y.tipps-7bc295a0.js.map → a11y.tipps-1c165956.js.map} +1 -1
  6. package/dist/cjs/access-key-30674e1a.js +4 -0
  7. package/dist/cjs/access-key-30674e1a.js.map +1 -0
  8. package/dist/cjs/align-floating-elements-01d5ad38.js +4 -0
  9. package/dist/cjs/align-floating-elements-01d5ad38.js.map +1 -0
  10. package/dist/cjs/alignment-d8b351ab.js +4 -0
  11. package/dist/cjs/alignment-d8b351ab.js.map +1 -0
  12. package/dist/cjs/alternative-button-link-role-e188938c.js +4 -0
  13. package/dist/cjs/{alternative-button-link-role-9e647514.js.map → alternative-button-link-role-e188938c.js.map} +1 -1
  14. package/dist/cjs/app-globals-fcc1963e.js +4 -0
  15. package/dist/cjs/app-globals-fcc1963e.js.map +1 -0
  16. package/dist/cjs/ariaCurrentService-d894e18d.js +4 -0
  17. package/dist/cjs/ariaCurrentService-d894e18d.js.map +1 -0
  18. package/dist/cjs/{associated.controller-8913f766.js → associated.controller-b5e04826.js} +1 -1
  19. package/dist/cjs/{associated.controller-8913f766.js.map → associated.controller-b5e04826.js.map} +1 -1
  20. package/dist/cjs/{color-7556424a.js → color-ccd88de4.js} +1 -1
  21. package/dist/cjs/{color-7556424a.js.map → color-ccd88de4.js.map} +1 -1
  22. package/dist/cjs/{controller-5e9f8d56.js → controller-20b8c73c.js} +1 -1
  23. package/dist/cjs/{controller-5e9f8d56.js.map → controller-20b8c73c.js.map} +1 -1
  24. package/dist/cjs/controller-5e7966e3.js +4 -0
  25. package/dist/cjs/controller-5e7966e3.js.map +1 -0
  26. package/dist/cjs/{controller-722157ec.js → controller-98ced69a.js} +1 -1
  27. package/dist/cjs/{controller-722157ec.js.map → controller-98ced69a.js.map} +1 -1
  28. package/dist/cjs/controller-b37efa9f.js +4 -0
  29. package/dist/cjs/controller-b37efa9f.js.map +1 -0
  30. package/dist/cjs/controller-dd37111e.js +4 -0
  31. package/dist/cjs/controller-dd37111e.js.map +1 -0
  32. package/dist/cjs/{controller-icon-e7aae6e1.js → controller-icon-1d1188c3.js} +1 -1
  33. package/dist/cjs/{controller-icon-e7aae6e1.js.map → controller-icon-1d1188c3.js.map} +1 -1
  34. package/dist/cjs/custom-class-4a4b8f5f.js +4 -0
  35. package/dist/cjs/custom-class-4a4b8f5f.js.map +1 -0
  36. package/dist/cjs/details-synced-open-state-01d46fbc.js +4 -0
  37. package/dist/cjs/details-synced-open-state-01d46fbc.js.map +1 -0
  38. package/dist/cjs/dev.utils-a3fa0ded.js +4 -0
  39. package/dist/cjs/dev.utils-a3fa0ded.js.map +1 -0
  40. package/dist/cjs/{devtools-646843d0.js → devtools-37eef902.js} +1 -1
  41. package/dist/cjs/{devtools-646843d0.js.map → devtools-37eef902.js.map} +1 -1
  42. package/dist/cjs/has-closer-c17cc0bc.js +4 -0
  43. package/dist/cjs/{has-closer-941dcb50.js.map → has-closer-c17cc0bc.js.map} +1 -1
  44. package/dist/cjs/hide-label-1eab3780.js +4 -0
  45. package/dist/cjs/{hide-label-e6f15383.js.map → hide-label-1eab3780.js.map} +1 -1
  46. package/dist/cjs/i18n-f7771d30.js +4 -0
  47. package/dist/cjs/i18n-f7771d30.js.map +1 -0
  48. package/dist/cjs/{icons-a50a5cb6.js → icons-92e34672.js} +1 -1
  49. package/dist/cjs/{icons-a50a5cb6.js.map → icons-92e34672.js.map} +1 -1
  50. package/dist/cjs/image-source-51299edf.js +4 -0
  51. package/dist/cjs/{image-source-be51f603.js.map → image-source-51299edf.js.map} +1 -1
  52. package/dist/cjs/{index-d94c6297.js → index-07f69fb0.js} +1 -1
  53. package/dist/cjs/{index-d94c6297.js.map → index-07f69fb0.js.map} +1 -1
  54. package/dist/cjs/index-a0085191.js +5 -0
  55. package/dist/cjs/index-a0085191.js.map +1 -0
  56. package/dist/cjs/{index-65ced40c.js → index-b786e835.js} +1 -1
  57. package/dist/cjs/{index-65ced40c.js.map → index-b786e835.js.map} +1 -1
  58. package/dist/cjs/index.cjs.js +1 -1
  59. package/dist/cjs/index.cjs.js.map +1 -1
  60. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +4 -0
  65. package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -0
  66. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-avatar-wc.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-button-wc_2.cjs.entry.js +4 -0
  84. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -0
  85. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kol-popover-wc.cjs.entry.js +4 -0
  141. package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -0
  142. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  144. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  145. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  146. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-span-wc.cjs.entry.js +4 -0
  151. package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -0
  152. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  153. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  154. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  155. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  156. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  157. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  158. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  159. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  160. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  161. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  162. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  163. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  164. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  165. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  166. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  167. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  168. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  169. package/dist/cjs/kolibri.cjs.js +1 -1
  170. package/dist/cjs/kolibri.cjs.js.map +1 -1
  171. package/dist/cjs/{label-1aedd7c9.js → label-5a44a87d.js} +1 -1
  172. package/dist/cjs/{label-1aedd7c9.js.map → label-5a44a87d.js.map} +1 -1
  173. package/dist/cjs/loader.cjs.js +1 -1
  174. package/dist/cjs/open-1740dbfd.js +4 -0
  175. package/dist/cjs/{open-fb457a4f.js.map → open-1740dbfd.js.map} +1 -1
  176. package/dist/cjs/prop.validators-249e288b.js +4 -0
  177. package/dist/cjs/prop.validators-249e288b.js.map +1 -0
  178. package/dist/cjs/rows-d8f6b3fe.js +4 -0
  179. package/dist/cjs/{rows-9e57680f.js.map → rows-d8f6b3fe.js.map} +1 -1
  180. package/dist/cjs/show-4f692c20.js +4 -0
  181. package/dist/cjs/{show-9060efee.js.map → show-4f692c20.js.map} +1 -1
  182. package/dist/cjs/{suggestions-97bfee0c.js → suggestions-b89272cd.js} +1 -1
  183. package/dist/cjs/{suggestions-97bfee0c.js.map → suggestions-b89272cd.js.map} +1 -1
  184. package/dist/cjs/{tab-index-70de06c1.js → tab-index-b0756f58.js} +1 -1
  185. package/dist/cjs/{tab-index-70de06c1.js.map → tab-index-b0756f58.js.map} +1 -1
  186. package/dist/cjs/{toaster-d370fe6a.js → toaster-812c9c9b.js} +1 -1
  187. package/dist/cjs/toaster-812c9c9b.js.map +1 -0
  188. package/dist/cjs/{toaster-82cf12c5.js → toaster-e3a1416c.js} +1 -1
  189. package/dist/cjs/toaster-e3a1416c.js.map +1 -0
  190. package/dist/cjs/{tooltip-align-5d4d8eef.js → tooltip-align-a6de4888.js} +1 -1
  191. package/dist/cjs/{tooltip-align-5d4d8eef.js.map → tooltip-align-a6de4888.js.map} +1 -1
  192. package/dist/cjs/validation-1a059073.js +4 -0
  193. package/dist/cjs/validation-1a059073.js.map +1 -0
  194. package/dist/cjs/validation-b0d8cbc5.js +4 -0
  195. package/dist/cjs/{validation-8f74bfb8.js.map → validation-b0d8cbc5.js.map} +1 -1
  196. package/dist/components/align-floating-elements.js +4 -0
  197. package/dist/components/align-floating-elements.js.map +1 -0
  198. package/dist/components/ariaCurrentService.js +4 -0
  199. package/dist/components/ariaCurrentService.js.map +1 -0
  200. package/dist/components/component.js +1 -1
  201. package/dist/components/component.js.map +1 -1
  202. package/dist/components/component11.js +1 -1
  203. package/dist/components/component11.js.map +1 -1
  204. package/dist/components/component12.js +1 -1
  205. package/dist/components/component12.js.map +1 -1
  206. package/dist/components/component13.js +1 -1
  207. package/dist/components/component13.js.map +1 -1
  208. package/dist/components/component14.js +1 -1
  209. package/dist/components/component14.js.map +1 -1
  210. package/dist/components/component15.js +1 -1
  211. package/dist/components/component15.js.map +1 -1
  212. package/dist/components/component2.js +1 -1
  213. package/dist/components/component2.js.map +1 -1
  214. package/dist/components/component3.js +1 -1
  215. package/dist/components/component3.js.map +1 -1
  216. package/dist/components/component4.js +1 -1
  217. package/dist/components/component4.js.map +1 -1
  218. package/dist/components/component5.js +1 -1
  219. package/dist/components/component5.js.map +1 -1
  220. package/dist/components/component6.js +1 -1
  221. package/dist/components/component6.js.map +1 -1
  222. package/dist/components/component7.js +1 -1
  223. package/dist/components/component7.js.map +1 -1
  224. package/dist/components/component8.js +1 -1
  225. package/dist/components/component8.js.map +1 -1
  226. package/dist/components/component9.js +1 -1
  227. package/dist/components/component9.js.map +1 -1
  228. package/dist/components/controller.js +1 -1
  229. package/dist/components/controller2.js +1 -1
  230. package/dist/components/controller2.js.map +1 -1
  231. package/dist/components/controller3.js +1 -1
  232. package/dist/components/controller3.js.map +1 -1
  233. package/dist/components/details-synced-open-state.js +1 -1
  234. package/dist/components/details-synced-open-state.js.map +1 -1
  235. package/dist/components/devtools.js +1 -1
  236. package/dist/components/i18n.js +1 -1
  237. package/dist/components/i18n.js.map +1 -1
  238. package/dist/components/index.js +1 -1
  239. package/dist/components/index.js.map +1 -1
  240. package/dist/components/kol-abbr.js +1 -1
  241. package/dist/components/kol-abbr.js.map +1 -1
  242. package/dist/components/kol-accordion.js +1 -1
  243. package/dist/components/kol-accordion.js.map +1 -1
  244. package/dist/components/kol-avatar.js +1 -1
  245. package/dist/components/kol-avatar.js.map +1 -1
  246. package/dist/components/kol-breadcrumb.js +1 -1
  247. package/dist/components/kol-breadcrumb.js.map +1 -1
  248. package/dist/components/kol-button-group.js +1 -1
  249. package/dist/components/kol-button-group.js.map +1 -1
  250. package/dist/components/kol-button-link.js +1 -1
  251. package/dist/components/kol-button-link.js.map +1 -1
  252. package/dist/components/kol-card.js +1 -1
  253. package/dist/components/kol-card.js.map +1 -1
  254. package/dist/components/kol-details.js +1 -1
  255. package/dist/components/kol-details.js.map +1 -1
  256. package/dist/components/kol-heading.js +1 -1
  257. package/dist/components/kol-heading.js.map +1 -1
  258. package/dist/components/kol-image.js +1 -1
  259. package/dist/components/kol-image.js.map +1 -1
  260. package/dist/components/kol-input-checkbox.js +1 -1
  261. package/dist/components/kol-input-checkbox.js.map +1 -1
  262. package/dist/components/kol-input-color.js +1 -1
  263. package/dist/components/kol-input-color.js.map +1 -1
  264. package/dist/components/kol-input-date.js +1 -1
  265. package/dist/components/kol-input-date.js.map +1 -1
  266. package/dist/components/kol-input-email.js +1 -1
  267. package/dist/components/kol-input-email.js.map +1 -1
  268. package/dist/components/kol-input-file.js +1 -1
  269. package/dist/components/kol-input-file.js.map +1 -1
  270. package/dist/components/kol-input-number.js +1 -1
  271. package/dist/components/kol-input-number.js.map +1 -1
  272. package/dist/components/kol-input-password.js +1 -1
  273. package/dist/components/kol-input-password.js.map +1 -1
  274. package/dist/components/kol-input-radio.js +1 -1
  275. package/dist/components/kol-input-radio.js.map +1 -1
  276. package/dist/components/kol-input-range.js +1 -1
  277. package/dist/components/kol-input-range.js.map +1 -1
  278. package/dist/components/kol-input-text.js +1 -1
  279. package/dist/components/kol-input-text.js.map +1 -1
  280. package/dist/components/kol-kolibri.js +1 -1
  281. package/dist/components/kol-kolibri.js.map +1 -1
  282. package/dist/components/kol-link-button.js +1 -1
  283. package/dist/components/kol-link-button.js.map +1 -1
  284. package/dist/components/kol-link-group.js +1 -1
  285. package/dist/components/kol-link-group.js.map +1 -1
  286. package/dist/components/kol-logo.js +1 -1
  287. package/dist/components/kol-logo.js.map +1 -1
  288. package/dist/components/kol-modal.js +1 -1
  289. package/dist/components/kol-modal.js.map +1 -1
  290. package/dist/components/kol-nav.js +1 -1
  291. package/dist/components/kol-nav.js.map +1 -1
  292. package/dist/components/{kol-popover.d.ts → kol-popover-wc.d.ts} +4 -4
  293. package/dist/components/kol-popover-wc.js +4 -0
  294. package/dist/components/kol-popover-wc.js.map +1 -0
  295. package/dist/components/kol-progress.js +1 -1
  296. package/dist/components/kol-progress.js.map +1 -1
  297. package/dist/components/kol-quote.js +1 -1
  298. package/dist/components/kol-quote.js.map +1 -1
  299. package/dist/components/kol-skip-nav.js +1 -1
  300. package/dist/components/kol-skip-nav.js.map +1 -1
  301. package/dist/components/kol-span.js +1 -1
  302. package/dist/components/kol-span.js.map +1 -1
  303. package/dist/components/kol-spin.js +1 -1
  304. package/dist/components/kol-spin.js.map +1 -1
  305. package/dist/components/kol-split-button.js +1 -1
  306. package/dist/components/kol-split-button.js.map +1 -1
  307. package/dist/components/kol-table.js +1 -1
  308. package/dist/components/kol-table.js.map +1 -1
  309. package/dist/components/kol-tabs.js +1 -1
  310. package/dist/components/kol-tabs.js.map +1 -1
  311. package/dist/components/kol-textarea.js +1 -1
  312. package/dist/components/kol-textarea.js.map +1 -1
  313. package/dist/components/kol-toast-container.js +1 -1
  314. package/dist/components/kol-toast-container.js.map +1 -1
  315. package/dist/components/kol-version.js +1 -1
  316. package/dist/components/kol-version.js.map +1 -1
  317. package/dist/components/prop.validators.js +1 -1
  318. package/dist/components/prop.validators.js.map +1 -1
  319. package/dist/components/shadow.js +1 -1
  320. package/dist/components/shadow.js.map +1 -1
  321. package/dist/components/shadow2.js +1 -1
  322. package/dist/components/shadow2.js.map +1 -1
  323. package/dist/components/shadow3.js +1 -1
  324. package/dist/components/shadow3.js.map +1 -1
  325. package/dist/components/toaster.js.map +1 -1
  326. package/dist/components/tooltip-align.js +1 -1
  327. package/dist/esm/InternalUnderlinedAccessKey-8b996006.js +4 -0
  328. package/dist/esm/InternalUnderlinedAccessKey-8b996006.js.map +1 -0
  329. package/dist/esm/{a11y.tipps-583a2096.js → a11y.tipps-68791110.js} +1 -1
  330. package/dist/esm/{a11y.tipps-583a2096.js.map → a11y.tipps-68791110.js.map} +1 -1
  331. package/dist/esm/access-key-c2c8b712.js +4 -0
  332. package/dist/esm/access-key-c2c8b712.js.map +1 -0
  333. package/dist/esm/align-floating-elements-ebf0712d.js +4 -0
  334. package/dist/esm/align-floating-elements-ebf0712d.js.map +1 -0
  335. package/dist/esm/alignment-cb8fa342.js +4 -0
  336. package/dist/esm/alignment-cb8fa342.js.map +1 -0
  337. package/dist/esm/alternative-button-link-role-641ea928.js +4 -0
  338. package/dist/esm/{alternative-button-link-role-1b39949c.js.map → alternative-button-link-role-641ea928.js.map} +1 -1
  339. package/dist/esm/app-globals-7879f3fb.js +4 -0
  340. package/dist/esm/app-globals-7879f3fb.js.map +1 -0
  341. package/dist/esm/ariaCurrentService-2ef83ca8.js +4 -0
  342. package/dist/esm/ariaCurrentService-2ef83ca8.js.map +1 -0
  343. package/dist/esm/{associated.controller-103e6fb9.js → associated.controller-d463ef08.js} +1 -1
  344. package/dist/esm/{associated.controller-103e6fb9.js.map → associated.controller-d463ef08.js.map} +1 -1
  345. package/dist/esm/{color-3932ac07.js → color-eb9db629.js} +1 -1
  346. package/dist/esm/{color-3932ac07.js.map → color-eb9db629.js.map} +1 -1
  347. package/dist/esm/{controller-cdba1088.js → controller-00d56583.js} +1 -1
  348. package/dist/esm/{controller-cdba1088.js.map → controller-00d56583.js.map} +1 -1
  349. package/dist/esm/controller-5838290e.js +4 -0
  350. package/dist/esm/controller-5838290e.js.map +1 -0
  351. package/dist/esm/controller-5ca8ac64.js +4 -0
  352. package/dist/esm/controller-5ca8ac64.js.map +1 -0
  353. package/dist/esm/controller-70bc75df.js +4 -0
  354. package/dist/esm/controller-70bc75df.js.map +1 -0
  355. package/dist/esm/{controller-75d286de.js → controller-8b71bf6d.js} +1 -1
  356. package/dist/esm/{controller-75d286de.js.map → controller-8b71bf6d.js.map} +1 -1
  357. package/dist/esm/{controller-icon-fb1feb61.js → controller-icon-f63e0f2d.js} +1 -1
  358. package/dist/esm/{controller-icon-fb1feb61.js.map → controller-icon-f63e0f2d.js.map} +1 -1
  359. package/dist/esm/custom-class-66c19712.js +4 -0
  360. package/dist/esm/custom-class-66c19712.js.map +1 -0
  361. package/dist/esm/details-synced-open-state-66c07ea5.js +4 -0
  362. package/dist/esm/details-synced-open-state-66c07ea5.js.map +1 -0
  363. package/dist/esm/dev.utils-8202a1bc.js +4 -0
  364. package/dist/esm/dev.utils-8202a1bc.js.map +1 -0
  365. package/dist/esm/{devtools-496ae358.js → devtools-4ca02a9a.js} +1 -1
  366. package/dist/esm/{devtools-496ae358.js.map → devtools-4ca02a9a.js.map} +1 -1
  367. package/dist/esm/{has-closer-fd2d8642.js → has-closer-2bb6b735.js} +1 -1
  368. package/dist/esm/{has-closer-fd2d8642.js.map → has-closer-2bb6b735.js.map} +1 -1
  369. package/dist/esm/{hide-label-2c0bf25c.js → hide-label-fbf92ea1.js} +1 -1
  370. package/dist/esm/{hide-label-2c0bf25c.js.map → hide-label-fbf92ea1.js.map} +1 -1
  371. package/dist/esm/i18n-99b63f3a.js +4 -0
  372. package/dist/esm/i18n-99b63f3a.js.map +1 -0
  373. package/dist/esm/{icons-ad8a28c6.js → icons-cfc259bf.js} +1 -1
  374. package/dist/esm/{icons-ad8a28c6.js.map → icons-cfc259bf.js.map} +1 -1
  375. package/dist/esm/{image-source-58a1cae6.js → image-source-e19536fa.js} +1 -1
  376. package/dist/esm/{image-source-58a1cae6.js.map → image-source-e19536fa.js.map} +1 -1
  377. package/dist/esm/index-0bc40dc4.js +5 -0
  378. package/dist/esm/index-0bc40dc4.js.map +1 -0
  379. package/dist/esm/{index-e51de689.js → index-9b519d08.js} +1 -1
  380. package/dist/esm/{index-e51de689.js.map → index-9b519d08.js.map} +1 -1
  381. package/dist/esm/{index-947d3173.js → index-a4b1e92f.js} +1 -1
  382. package/dist/esm/{index-947d3173.js.map → index-a4b1e92f.js.map} +1 -1
  383. package/dist/esm/index.js +1 -1
  384. package/dist/esm/index.js.map +1 -1
  385. package/dist/esm/kol-abbr.entry.js +1 -1
  386. package/dist/esm/kol-abbr.entry.js.map +1 -1
  387. package/dist/esm/kol-accordion.entry.js +1 -1
  388. package/dist/esm/kol-accordion.entry.js.map +1 -1
  389. package/dist/esm/kol-alert-wc_2.entry.js +4 -0
  390. package/dist/esm/kol-alert-wc_2.entry.js.map +1 -0
  391. package/dist/esm/kol-alert.entry.js +1 -1
  392. package/dist/esm/kol-alert.entry.js.map +1 -1
  393. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  394. package/dist/esm/kol-avatar-wc.entry.js.map +1 -1
  395. package/dist/esm/kol-avatar.entry.js +1 -1
  396. package/dist/esm/kol-avatar.entry.js.map +1 -1
  397. package/dist/esm/kol-badge.entry.js +1 -1
  398. package/dist/esm/kol-badge.entry.js.map +1 -1
  399. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  400. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  401. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  402. package/dist/esm/kol-button-group.entry.js +1 -1
  403. package/dist/esm/kol-button-group.entry.js.map +1 -1
  404. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  405. package/dist/esm/kol-button-link-text-switch.entry.js.map +1 -1
  406. package/dist/esm/kol-button-link.entry.js +1 -1
  407. package/dist/esm/kol-button-link.entry.js.map +1 -1
  408. package/dist/esm/kol-button-wc_2.entry.js +4 -0
  409. package/dist/esm/kol-button-wc_2.entry.js.map +1 -0
  410. package/dist/esm/kol-button.entry.js +1 -1
  411. package/dist/esm/kol-button.entry.js.map +1 -1
  412. package/dist/esm/kol-card.entry.js +1 -1
  413. package/dist/esm/kol-card.entry.js.map +1 -1
  414. package/dist/esm/kol-details.entry.js +1 -1
  415. package/dist/esm/kol-details.entry.js.map +1 -1
  416. package/dist/esm/kol-form.entry.js +1 -1
  417. package/dist/esm/kol-heading.entry.js +1 -1
  418. package/dist/esm/kol-heading.entry.js.map +1 -1
  419. package/dist/esm/kol-icon.entry.js +1 -1
  420. package/dist/esm/kol-icon.entry.js.map +1 -1
  421. package/dist/esm/kol-image.entry.js +1 -1
  422. package/dist/esm/kol-image.entry.js.map +1 -1
  423. package/dist/esm/kol-indented-text.entry.js +1 -1
  424. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  425. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  426. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  427. package/dist/esm/kol-input-color.entry.js +1 -1
  428. package/dist/esm/kol-input-color.entry.js.map +1 -1
  429. package/dist/esm/kol-input-date.entry.js +1 -1
  430. package/dist/esm/kol-input-date.entry.js.map +1 -1
  431. package/dist/esm/kol-input-email.entry.js +1 -1
  432. package/dist/esm/kol-input-email.entry.js.map +1 -1
  433. package/dist/esm/kol-input-file.entry.js +1 -1
  434. package/dist/esm/kol-input-file.entry.js.map +1 -1
  435. package/dist/esm/kol-input-number.entry.js +1 -1
  436. package/dist/esm/kol-input-number.entry.js.map +1 -1
  437. package/dist/esm/kol-input-password.entry.js +1 -1
  438. package/dist/esm/kol-input-password.entry.js.map +1 -1
  439. package/dist/esm/kol-input-radio.entry.js +1 -1
  440. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  441. package/dist/esm/kol-input-range.entry.js +1 -1
  442. package/dist/esm/kol-input-range.entry.js.map +1 -1
  443. package/dist/esm/kol-input-text.entry.js +1 -1
  444. package/dist/esm/kol-input-text.entry.js.map +1 -1
  445. package/dist/esm/kol-input.entry.js +1 -1
  446. package/dist/esm/kol-input.entry.js.map +1 -1
  447. package/dist/esm/kol-kolibri.entry.js +1 -1
  448. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  449. package/dist/esm/kol-link-button.entry.js +1 -1
  450. package/dist/esm/kol-link-button.entry.js.map +1 -1
  451. package/dist/esm/kol-link-group.entry.js +1 -1
  452. package/dist/esm/kol-link-group.entry.js.map +1 -1
  453. package/dist/esm/kol-link-wc.entry.js +1 -1
  454. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  455. package/dist/esm/kol-link.entry.js +1 -1
  456. package/dist/esm/kol-link.entry.js.map +1 -1
  457. package/dist/esm/kol-logo.entry.js +1 -1
  458. package/dist/esm/kol-logo.entry.js.map +1 -1
  459. package/dist/esm/kol-modal.entry.js +1 -1
  460. package/dist/esm/kol-modal.entry.js.map +1 -1
  461. package/dist/esm/kol-nav.entry.js +1 -1
  462. package/dist/esm/kol-nav.entry.js.map +1 -1
  463. package/dist/esm/kol-pagination.entry.js +1 -1
  464. package/dist/esm/kol-pagination.entry.js.map +1 -1
  465. package/dist/esm/kol-popover-wc.entry.js +4 -0
  466. package/dist/esm/kol-popover-wc.entry.js.map +1 -0
  467. package/dist/esm/kol-progress.entry.js +1 -1
  468. package/dist/esm/kol-progress.entry.js.map +1 -1
  469. package/dist/esm/kol-quote.entry.js +1 -1
  470. package/dist/esm/kol-quote.entry.js.map +1 -1
  471. package/dist/esm/kol-select.entry.js +1 -1
  472. package/dist/esm/kol-select.entry.js.map +1 -1
  473. package/dist/esm/kol-skip-nav.entry.js +1 -1
  474. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  475. package/dist/esm/kol-span-wc.entry.js +4 -0
  476. package/dist/esm/kol-span-wc.entry.js.map +1 -0
  477. package/dist/esm/kol-span.entry.js +1 -1
  478. package/dist/esm/kol-span.entry.js.map +1 -1
  479. package/dist/esm/kol-spin.entry.js +1 -1
  480. package/dist/esm/kol-spin.entry.js.map +1 -1
  481. package/dist/esm/kol-split-button.entry.js +1 -1
  482. package/dist/esm/kol-split-button.entry.js.map +1 -1
  483. package/dist/esm/kol-symbol.entry.js +1 -1
  484. package/dist/esm/kol-table.entry.js +1 -1
  485. package/dist/esm/kol-table.entry.js.map +1 -1
  486. package/dist/esm/kol-tabs.entry.js +1 -1
  487. package/dist/esm/kol-tabs.entry.js.map +1 -1
  488. package/dist/esm/kol-textarea.entry.js +1 -1
  489. package/dist/esm/kol-textarea.entry.js.map +1 -1
  490. package/dist/esm/kol-toast-container.entry.js +1 -1
  491. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  492. package/dist/esm/kol-version.entry.js +1 -1
  493. package/dist/esm/kol-version.entry.js.map +1 -1
  494. package/dist/esm/kolibri.js +1 -1
  495. package/dist/esm/kolibri.js.map +1 -1
  496. package/dist/esm/{label-0d258cd5.js → label-7afcc6a9.js} +1 -1
  497. package/dist/esm/{label-0d258cd5.js.map → label-7afcc6a9.js.map} +1 -1
  498. package/dist/esm/loader.js +1 -1
  499. package/dist/esm/{open-713ddcdc.js → open-9f31cf4e.js} +1 -1
  500. package/dist/esm/{open-713ddcdc.js.map → open-9f31cf4e.js.map} +1 -1
  501. package/dist/esm/prop.validators-3fb6bedf.js +4 -0
  502. package/dist/esm/prop.validators-3fb6bedf.js.map +1 -0
  503. package/dist/esm/{rows-d5112a2e.js → rows-051ae081.js} +1 -1
  504. package/dist/esm/{rows-d5112a2e.js.map → rows-051ae081.js.map} +1 -1
  505. package/dist/esm/{show-9951ecef.js → show-cc5fafc8.js} +1 -1
  506. package/dist/esm/{show-9951ecef.js.map → show-cc5fafc8.js.map} +1 -1
  507. package/dist/esm/{suggestions-50a767be.js → suggestions-50aff467.js} +1 -1
  508. package/dist/esm/{suggestions-50a767be.js.map → suggestions-50aff467.js.map} +1 -1
  509. package/dist/esm/{tab-index-5e7494f0.js → tab-index-95df106a.js} +1 -1
  510. package/dist/esm/{tab-index-5e7494f0.js.map → tab-index-95df106a.js.map} +1 -1
  511. package/dist/esm/{toaster-1ee75e55.js → toaster-ce50f062.js} +1 -1
  512. package/dist/esm/{toaster-1ee75e55.js.map → toaster-ce50f062.js.map} +1 -1
  513. package/dist/esm/{toaster-2dda6584.js → toaster-eb99e2fa.js} +1 -1
  514. package/dist/esm/toaster-eb99e2fa.js.map +1 -0
  515. package/dist/esm/{tooltip-align-fe8fbb60.js → tooltip-align-36725992.js} +1 -1
  516. package/dist/esm/{tooltip-align-fe8fbb60.js.map → tooltip-align-36725992.js.map} +1 -1
  517. package/dist/esm/validation-5f69c40a.js +4 -0
  518. package/dist/esm/validation-5f69c40a.js.map +1 -0
  519. package/dist/esm/validation-7b943391.js +4 -0
  520. package/dist/esm/{validation-61e035d7.js.map → validation-7b943391.js.map} +1 -1
  521. package/dist/kolibri/InternalUnderlinedAccessKey-8b996006.js +4 -0
  522. package/dist/kolibri/InternalUnderlinedAccessKey-8b996006.js.map +1 -0
  523. package/dist/kolibri/{a11y.tipps-583a2096.js → a11y.tipps-68791110.js} +1 -1
  524. package/dist/kolibri/access-key-c2c8b712.js +4 -0
  525. package/dist/kolibri/access-key-c2c8b712.js.map +1 -0
  526. package/dist/kolibri/align-floating-elements-ebf0712d.js +4 -0
  527. package/dist/{components/align.js.map → kolibri/align-floating-elements-ebf0712d.js.map} +1 -1
  528. package/dist/kolibri/alignment-cb8fa342.js +4 -0
  529. package/dist/kolibri/alignment-cb8fa342.js.map +1 -0
  530. package/dist/kolibri/alternative-button-link-role-641ea928.js +4 -0
  531. package/dist/kolibri/app-globals-7879f3fb.js +4 -0
  532. package/dist/kolibri/app-globals-7879f3fb.js.map +1 -0
  533. package/dist/kolibri/ariaCurrentService-2ef83ca8.js +4 -0
  534. package/dist/kolibri/ariaCurrentService-2ef83ca8.js.map +1 -0
  535. package/dist/kolibri/assets/simulations/table-simulation.js +1 -1
  536. package/dist/kolibri/{associated.controller-103e6fb9.js → associated.controller-d463ef08.js} +1 -1
  537. package/dist/kolibri/{color-3932ac07.js → color-eb9db629.js} +1 -1
  538. package/dist/kolibri/controller-00d56583.js +4 -0
  539. package/dist/kolibri/{controller-cdba1088.js.map → controller-00d56583.js.map} +1 -1
  540. package/dist/kolibri/controller-5838290e.js +4 -0
  541. package/dist/kolibri/controller-5838290e.js.map +1 -0
  542. package/dist/kolibri/controller-5ca8ac64.js +4 -0
  543. package/dist/kolibri/controller-5ca8ac64.js.map +1 -0
  544. package/dist/kolibri/controller-70bc75df.js +4 -0
  545. package/dist/kolibri/controller-70bc75df.js.map +1 -0
  546. package/dist/kolibri/{controller-75d286de.js → controller-8b71bf6d.js} +1 -1
  547. package/dist/kolibri/{controller-icon-fb1feb61.js → controller-icon-f63e0f2d.js} +1 -1
  548. package/dist/kolibri/custom-class-66c19712.js +4 -0
  549. package/dist/kolibri/custom-class-66c19712.js.map +1 -0
  550. package/dist/kolibri/details-synced-open-state-66c07ea5.js +4 -0
  551. package/dist/kolibri/details-synced-open-state-66c07ea5.js.map +1 -0
  552. package/dist/kolibri/dev.utils-8202a1bc.js +4 -0
  553. package/dist/kolibri/dev.utils-8202a1bc.js.map +1 -0
  554. package/dist/kolibri/devtools-4ca02a9a.js +4 -0
  555. package/dist/kolibri/{devtools-496ae358.js.map → devtools-4ca02a9a.js.map} +1 -1
  556. package/dist/kolibri/has-closer-2bb6b735.js +4 -0
  557. package/dist/kolibri/{has-closer-fd2d8642.js.map → has-closer-2bb6b735.js.map} +1 -1
  558. package/dist/kolibri/hide-label-fbf92ea1.js +4 -0
  559. package/dist/kolibri/i18n-99b63f3a.js +4 -0
  560. package/dist/kolibri/i18n-99b63f3a.js.map +1 -0
  561. package/dist/kolibri/icons-cfc259bf.js +4 -0
  562. package/dist/kolibri/{icons-ad8a28c6.js.map → icons-cfc259bf.js.map} +1 -1
  563. package/dist/kolibri/image-source-e19536fa.js +4 -0
  564. package/dist/kolibri/index-0bc40dc4.js +5 -0
  565. package/dist/kolibri/index-0bc40dc4.js.map +1 -0
  566. package/dist/kolibri/{index-e51de689.js → index-9b519d08.js} +1 -1
  567. package/dist/kolibri/{index-947d3173.js → index-a4b1e92f.js} +1 -1
  568. package/dist/kolibri/index-a4b1e92f.js.map +1 -0
  569. package/dist/kolibri/index.esm.js +1 -1
  570. package/dist/kolibri/kol-abbr.entry.js +1 -1
  571. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  572. package/dist/kolibri/kol-accordion.entry.js +1 -1
  573. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  574. package/dist/kolibri/kol-alert-wc_2.entry.js +4 -0
  575. package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -0
  576. package/dist/kolibri/kol-alert.entry.js +1 -1
  577. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  578. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  579. package/dist/kolibri/kol-avatar-wc.entry.js.map +1 -1
  580. package/dist/kolibri/kol-avatar.entry.js +1 -1
  581. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  582. package/dist/kolibri/kol-badge.entry.js +1 -1
  583. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  584. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  585. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  586. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  587. package/dist/kolibri/kol-button-group.entry.js +1 -1
  588. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  589. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  590. package/dist/kolibri/kol-button-link-text-switch.entry.js.map +1 -1
  591. package/dist/kolibri/kol-button-link.entry.js +1 -1
  592. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  593. package/dist/kolibri/kol-button-wc_2.entry.js +4 -0
  594. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -0
  595. package/dist/kolibri/kol-button.entry.js +1 -1
  596. package/dist/kolibri/kol-button.entry.js.map +1 -1
  597. package/dist/kolibri/kol-card.entry.js +1 -1
  598. package/dist/kolibri/kol-card.entry.js.map +1 -1
  599. package/dist/kolibri/kol-details.entry.js +1 -1
  600. package/dist/kolibri/kol-details.entry.js.map +1 -1
  601. package/dist/kolibri/kol-form.entry.js +1 -1
  602. package/dist/kolibri/kol-heading.entry.js +1 -1
  603. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  604. package/dist/kolibri/kol-icon.entry.js +1 -1
  605. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  606. package/dist/kolibri/kol-image.entry.js +1 -1
  607. package/dist/kolibri/kol-image.entry.js.map +1 -1
  608. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  609. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  610. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  611. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  612. package/dist/kolibri/kol-input-color.entry.js +1 -1
  613. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  614. package/dist/kolibri/kol-input-date.entry.js +1 -1
  615. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  616. package/dist/kolibri/kol-input-email.entry.js +1 -1
  617. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  618. package/dist/kolibri/kol-input-file.entry.js +1 -1
  619. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  620. package/dist/kolibri/kol-input-number.entry.js +1 -1
  621. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  622. package/dist/kolibri/kol-input-password.entry.js +1 -1
  623. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  624. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  625. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  626. package/dist/kolibri/kol-input-range.entry.js +1 -1
  627. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  628. package/dist/kolibri/kol-input-text.entry.js +1 -1
  629. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  630. package/dist/kolibri/kol-input.entry.js +1 -1
  631. package/dist/kolibri/kol-input.entry.js.map +1 -1
  632. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  633. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  634. package/dist/kolibri/kol-link-button.entry.js +1 -1
  635. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  636. package/dist/kolibri/kol-link-group.entry.js +1 -1
  637. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  638. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  639. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  640. package/dist/kolibri/kol-link.entry.js +1 -1
  641. package/dist/kolibri/kol-link.entry.js.map +1 -1
  642. package/dist/kolibri/kol-logo.entry.js +1 -1
  643. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  644. package/dist/kolibri/kol-modal.entry.js +1 -1
  645. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  646. package/dist/kolibri/kol-nav.entry.js +1 -1
  647. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  648. package/dist/kolibri/kol-pagination.entry.js +1 -1
  649. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  650. package/dist/kolibri/kol-popover-wc.entry.js +4 -0
  651. package/dist/kolibri/kol-popover-wc.entry.js.map +1 -0
  652. package/dist/kolibri/kol-progress.entry.js +1 -1
  653. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  654. package/dist/kolibri/kol-quote.entry.js +1 -1
  655. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  656. package/dist/kolibri/kol-select.entry.js +1 -1
  657. package/dist/kolibri/kol-select.entry.js.map +1 -1
  658. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  659. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  660. package/dist/kolibri/kol-span-wc.entry.js +4 -0
  661. package/dist/kolibri/kol-span-wc.entry.js.map +1 -0
  662. package/dist/kolibri/kol-span.entry.js +1 -1
  663. package/dist/kolibri/kol-span.entry.js.map +1 -1
  664. package/dist/kolibri/kol-spin.entry.js +1 -1
  665. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  666. package/dist/kolibri/kol-split-button.entry.js +1 -1
  667. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  668. package/dist/kolibri/kol-symbol.entry.js +1 -1
  669. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  670. package/dist/kolibri/kol-table.entry.js +1 -1
  671. package/dist/kolibri/kol-table.entry.js.map +1 -1
  672. package/dist/kolibri/kol-tabs.entry.js +1 -1
  673. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  674. package/dist/kolibri/kol-textarea.entry.js +1 -1
  675. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  676. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  677. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  678. package/dist/kolibri/kol-version.entry.js +1 -1
  679. package/dist/kolibri/kol-version.entry.js.map +1 -1
  680. package/dist/kolibri/kolibri.esm.js +1 -1
  681. package/dist/kolibri/kolibri.esm.js.map +1 -1
  682. package/dist/kolibri/label-7afcc6a9.js +4 -0
  683. package/dist/kolibri/open-9f31cf4e.js +4 -0
  684. package/dist/kolibri/prop.validators-3fb6bedf.js +4 -0
  685. package/dist/kolibri/prop.validators-3fb6bedf.js.map +1 -0
  686. package/dist/kolibri/rows-051ae081.js +4 -0
  687. package/dist/kolibri/show-cc5fafc8.js +4 -0
  688. package/dist/kolibri/{suggestions-50a767be.js → suggestions-50aff467.js} +1 -1
  689. package/dist/kolibri/tab-index-95df106a.js +4 -0
  690. package/dist/kolibri/{tab-index-5e7494f0.js.map → tab-index-95df106a.js.map} +1 -1
  691. package/dist/kolibri/toaster-ce50f062.js +4 -0
  692. package/dist/kolibri/toaster-ce50f062.js.map +1 -0
  693. package/dist/kolibri/toaster-eb99e2fa.js +4 -0
  694. package/dist/kolibri/toaster-eb99e2fa.js.map +1 -0
  695. package/dist/kolibri/tooltip-align-36725992.js +4 -0
  696. package/dist/kolibri/validation-5f69c40a.js +4 -0
  697. package/dist/kolibri/validation-5f69c40a.js.map +1 -0
  698. package/dist/kolibri/validation-7b943391.js +4 -0
  699. package/dist/types/components/accordion/component.d.ts +2 -0
  700. package/dist/types/components/alert/types.d.ts +4 -2
  701. package/dist/types/components/button/component.d.ts +3 -0
  702. package/dist/types/components/button/shadow.d.ts +3 -1
  703. package/dist/types/components/button/types.d.ts +2 -1
  704. package/dist/types/components/button-link/component.d.ts +3 -1
  705. package/dist/types/components/details/DetailsAnimationController.d.ts +1 -1
  706. package/dist/types/components/details/component.d.ts +1 -0
  707. package/dist/types/components/heading/component.d.ts +3 -0
  708. package/dist/types/components/heading/shadow.d.ts +2 -0
  709. package/dist/types/components/heading/test/html.mock.d.ts +2 -2
  710. package/dist/types/components/heading/types.d.ts +3 -2
  711. package/dist/types/components/heading/validation.d.ts +2 -1
  712. package/dist/types/components/input/component.d.ts +2 -0
  713. package/dist/types/components/input/types.d.ts +2 -1
  714. package/dist/types/components/input-checkbox/component.d.ts +2 -1
  715. package/dist/types/components/input-checkbox/types.d.ts +2 -1
  716. package/dist/types/components/input-color/component.d.ts +2 -1
  717. package/dist/types/components/input-date/component.d.ts +2 -1
  718. package/dist/types/components/input-date/controller.d.ts +2 -2
  719. package/dist/types/components/input-email/component.d.ts +2 -1
  720. package/dist/types/components/input-file/component.d.ts +2 -1
  721. package/dist/types/components/input-number/component.d.ts +2 -1
  722. package/dist/types/components/input-password/component.d.ts +2 -1
  723. package/dist/types/components/input-radio/component.d.ts +3 -2
  724. package/dist/types/components/input-range/component.d.ts +3 -1
  725. package/dist/types/components/input-text/component.d.ts +2 -1
  726. package/dist/types/components/link/ariaCurrentService.d.ts +5 -0
  727. package/dist/types/components/link/component.d.ts +7 -5
  728. package/dist/types/components/link/shadow.d.ts +4 -3
  729. package/dist/types/components/link/types.d.ts +7 -4
  730. package/dist/types/components/link-button/component.d.ts +4 -3
  731. package/dist/types/components/nav/component.d.ts +2 -3
  732. package/dist/types/components/nav/types.d.ts +3 -5
  733. package/dist/types/components/pagination/component.d.ts +0 -3
  734. package/dist/types/components/pagination/types.d.ts +3 -4
  735. package/dist/types/components/popover/component.d.ts +0 -2
  736. package/dist/types/components/quote/types.d.ts +2 -1
  737. package/dist/types/components/select/component.d.ts +2 -1
  738. package/dist/types/components/span/InternalUnderlinedAccessKey.d.ts +6 -0
  739. package/dist/types/components/span/component.d.ts +3 -0
  740. package/dist/types/components/span/shadow.d.ts +2 -0
  741. package/dist/types/components/span/test/html.mock.d.ts +1 -0
  742. package/dist/types/components/span/types.d.ts +3 -2
  743. package/dist/types/components/table/component.d.ts +4 -0
  744. package/dist/types/components/table/types.d.ts +4 -0
  745. package/dist/types/components/textarea/component.d.ts +2 -1
  746. package/dist/types/components/textarea/types.d.ts +2 -1
  747. package/dist/types/components/toaster/InternalToast.d.ts +8 -0
  748. package/dist/types/components/{toast-container → toaster}/component.d.ts +2 -2
  749. package/dist/types/components/{toast → toaster}/toaster.d.ts +3 -2
  750. package/dist/types/components/{toast-container → toaster}/types.d.ts +6 -3
  751. package/dist/types/components/tooltip/component.d.ts +3 -0
  752. package/dist/types/components/tooltip/types.d.ts +4 -3
  753. package/dist/types/components.d.ts +193 -125
  754. package/dist/types/core/i18n.d.ts +2 -1
  755. package/dist/types/i18n.d.ts +1 -1
  756. package/dist/types/index.d.ts +1 -1
  757. package/dist/types/locales/de.d.ts +8 -1
  758. package/dist/types/locales/en.d.ts +7 -0
  759. package/dist/types/stencil-public-runtime.d.ts +2 -0
  760. package/dist/types/types/heading-level.d.ts +2 -1
  761. package/dist/types/types/input/control/number.d.ts +2 -2
  762. package/dist/types/types/input/control/text.d.ts +2 -1
  763. package/dist/types/types/input/types.d.ts +2 -1
  764. package/dist/types/types/orientation.d.ts +2 -1
  765. package/dist/types/types/props/access-key.d.ts +6 -0
  766. package/dist/types/types/props/align.d.ts +5 -2
  767. package/dist/types/types/props/aria-current-value.d.ts +8 -0
  768. package/dist/types/types/props/button-type.d.ts +3 -1
  769. package/dist/types/types/props/button-variant.d.ts +3 -1
  770. package/dist/types/types/props/has-compact-button.d.ts +7 -0
  771. package/dist/types/types/props/heading-variant.d.ts +8 -0
  772. package/dist/types/types/props/variant/spin.d.ts +3 -1
  773. package/dist/types/utils/align-floating-elements.d.ts +9 -0
  774. package/dist/types/utils/prop.validators.d.ts +2 -8
  775. package/dist/types/utils/validators/loading.d.ts +3 -1
  776. package/doc/badge.md +6 -6
  777. package/doc/button-link.md +14 -0
  778. package/doc/button.md +17 -3
  779. package/doc/heading.md +6 -5
  780. package/doc/input-checkbox.md +35 -22
  781. package/doc/input-color.md +34 -21
  782. package/doc/input-date.md +40 -27
  783. package/doc/input-email.md +42 -29
  784. package/doc/input-file.md +35 -22
  785. package/doc/input-number.md +40 -27
  786. package/doc/input-password.md +39 -26
  787. package/doc/input-radio.md +33 -20
  788. package/doc/input-range.md +36 -23
  789. package/doc/input-text.md +41 -28
  790. package/doc/link-button.md +17 -16
  791. package/doc/link.md +41 -29
  792. package/doc/nav.md +11 -8
  793. package/doc/pagination.md +2 -6
  794. package/doc/select.md +35 -22
  795. package/doc/span.md +1 -0
  796. package/doc/spin.md +4 -2
  797. package/doc/table.md +10 -10
  798. package/doc/textarea.md +38 -25
  799. package/doc/toaster.md +120 -0
  800. package/doc/tooltip.md +6 -5
  801. package/package.json +1 -1
  802. package/vscode-custom-data.json +357 -148
  803. package/dist/cjs/align-5cb0bd50.js +0 -4
  804. package/dist/cjs/align-5cb0bd50.js.map +0 -1
  805. package/dist/cjs/alignment-160829a3.js +0 -4
  806. package/dist/cjs/alignment-160829a3.js.map +0 -1
  807. package/dist/cjs/alternative-button-link-role-9e647514.js +0 -4
  808. package/dist/cjs/app-globals-f651a39e.js +0 -4
  809. package/dist/cjs/app-globals-f651a39e.js.map +0 -1
  810. package/dist/cjs/controller-2bc3135f.js +0 -4
  811. package/dist/cjs/controller-2bc3135f.js.map +0 -1
  812. package/dist/cjs/controller-98eb942a.js +0 -4
  813. package/dist/cjs/controller-98eb942a.js.map +0 -1
  814. package/dist/cjs/controller-e89fd046.js +0 -4
  815. package/dist/cjs/controller-e89fd046.js.map +0 -1
  816. package/dist/cjs/custom-class-c6c03255.js +0 -4
  817. package/dist/cjs/custom-class-c6c03255.js.map +0 -1
  818. package/dist/cjs/details-synced-open-state-f06dc47c.js +0 -4
  819. package/dist/cjs/details-synced-open-state-f06dc47c.js.map +0 -1
  820. package/dist/cjs/dev.utils-8c7f47e6.js +0 -4
  821. package/dist/cjs/dev.utils-8c7f47e6.js.map +0 -1
  822. package/dist/cjs/floating-ui.dom.esm-c21c7751.js +0 -4
  823. package/dist/cjs/floating-ui.dom.esm-c21c7751.js.map +0 -1
  824. package/dist/cjs/has-closer-941dcb50.js +0 -4
  825. package/dist/cjs/hide-label-e6f15383.js +0 -4
  826. package/dist/cjs/i18n-6dea3266.js +0 -4
  827. package/dist/cjs/i18n-6dea3266.js.map +0 -1
  828. package/dist/cjs/image-source-be51f603.js +0 -4
  829. package/dist/cjs/index-e9e81c6a.js +0 -5
  830. package/dist/cjs/index-e9e81c6a.js.map +0 -1
  831. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +0 -4
  832. package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +0 -1
  833. package/dist/cjs/kol-popover.cjs.entry.js +0 -4
  834. package/dist/cjs/kol-popover.cjs.entry.js.map +0 -1
  835. package/dist/cjs/kol-span-wc_2.cjs.entry.js +0 -4
  836. package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +0 -1
  837. package/dist/cjs/kol-toast.cjs.entry.js +0 -4
  838. package/dist/cjs/kol-toast.cjs.entry.js.map +0 -1
  839. package/dist/cjs/open-fb457a4f.js +0 -4
  840. package/dist/cjs/prop.validators-d9e8f5a9.js +0 -4
  841. package/dist/cjs/prop.validators-d9e8f5a9.js.map +0 -1
  842. package/dist/cjs/rows-9e57680f.js +0 -4
  843. package/dist/cjs/show-9060efee.js +0 -4
  844. package/dist/cjs/toaster-82cf12c5.js.map +0 -1
  845. package/dist/cjs/toaster-d370fe6a.js.map +0 -1
  846. package/dist/cjs/validation-8f74bfb8.js +0 -4
  847. package/dist/cjs/validation-aa68e6ae.js +0 -4
  848. package/dist/cjs/validation-aa68e6ae.js.map +0 -1
  849. package/dist/components/align.js +0 -4
  850. package/dist/components/component16.js +0 -4
  851. package/dist/components/component16.js.map +0 -1
  852. package/dist/components/kol-popover.js +0 -4
  853. package/dist/components/kol-popover.js.map +0 -1
  854. package/dist/components/kol-toast.d.ts +0 -11
  855. package/dist/components/kol-toast.js +0 -4
  856. package/dist/components/kol-toast.js.map +0 -1
  857. package/dist/esm/align-0c96facf.js +0 -4
  858. package/dist/esm/align-0c96facf.js.map +0 -1
  859. package/dist/esm/alignment-84fc6207.js +0 -4
  860. package/dist/esm/alignment-84fc6207.js.map +0 -1
  861. package/dist/esm/alternative-button-link-role-1b39949c.js +0 -4
  862. package/dist/esm/app-globals-fa8bbebf.js +0 -4
  863. package/dist/esm/app-globals-fa8bbebf.js.map +0 -1
  864. package/dist/esm/controller-a13b8955.js +0 -4
  865. package/dist/esm/controller-a13b8955.js.map +0 -1
  866. package/dist/esm/controller-b19ee0de.js +0 -4
  867. package/dist/esm/controller-b19ee0de.js.map +0 -1
  868. package/dist/esm/controller-eb162f21.js +0 -4
  869. package/dist/esm/controller-eb162f21.js.map +0 -1
  870. package/dist/esm/custom-class-44d7cc63.js +0 -4
  871. package/dist/esm/custom-class-44d7cc63.js.map +0 -1
  872. package/dist/esm/details-synced-open-state-8c4176c9.js +0 -4
  873. package/dist/esm/details-synced-open-state-8c4176c9.js.map +0 -1
  874. package/dist/esm/dev.utils-2a853234.js +0 -4
  875. package/dist/esm/dev.utils-2a853234.js.map +0 -1
  876. package/dist/esm/floating-ui.dom.esm-e435ab9f.js +0 -4
  877. package/dist/esm/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  878. package/dist/esm/i18n-d0bb1d99.js +0 -4
  879. package/dist/esm/i18n-d0bb1d99.js.map +0 -1
  880. package/dist/esm/index-d0c806ea.js +0 -5
  881. package/dist/esm/index-d0c806ea.js.map +0 -1
  882. package/dist/esm/kol-alert-wc_3.entry.js +0 -4
  883. package/dist/esm/kol-alert-wc_3.entry.js.map +0 -1
  884. package/dist/esm/kol-popover.entry.js +0 -4
  885. package/dist/esm/kol-popover.entry.js.map +0 -1
  886. package/dist/esm/kol-span-wc_2.entry.js +0 -4
  887. package/dist/esm/kol-span-wc_2.entry.js.map +0 -1
  888. package/dist/esm/kol-toast.entry.js +0 -4
  889. package/dist/esm/kol-toast.entry.js.map +0 -1
  890. package/dist/esm/prop.validators-125a3282.js +0 -4
  891. package/dist/esm/prop.validators-125a3282.js.map +0 -1
  892. package/dist/esm/toaster-2dda6584.js.map +0 -1
  893. package/dist/esm/validation-33f3aa23.js +0 -4
  894. package/dist/esm/validation-33f3aa23.js.map +0 -1
  895. package/dist/esm/validation-61e035d7.js +0 -4
  896. package/dist/kolibri/align-0c96facf.js +0 -4
  897. package/dist/kolibri/align-0c96facf.js.map +0 -1
  898. package/dist/kolibri/alignment-84fc6207.js +0 -4
  899. package/dist/kolibri/alignment-84fc6207.js.map +0 -1
  900. package/dist/kolibri/alternative-button-link-role-1b39949c.js +0 -4
  901. package/dist/kolibri/app-globals-fa8bbebf.js +0 -4
  902. package/dist/kolibri/app-globals-fa8bbebf.js.map +0 -1
  903. package/dist/kolibri/controller-a13b8955.js +0 -4
  904. package/dist/kolibri/controller-a13b8955.js.map +0 -1
  905. package/dist/kolibri/controller-b19ee0de.js +0 -4
  906. package/dist/kolibri/controller-b19ee0de.js.map +0 -1
  907. package/dist/kolibri/controller-cdba1088.js +0 -4
  908. package/dist/kolibri/controller-eb162f21.js +0 -4
  909. package/dist/kolibri/controller-eb162f21.js.map +0 -1
  910. package/dist/kolibri/custom-class-44d7cc63.js +0 -4
  911. package/dist/kolibri/custom-class-44d7cc63.js.map +0 -1
  912. package/dist/kolibri/details-synced-open-state-8c4176c9.js +0 -4
  913. package/dist/kolibri/details-synced-open-state-8c4176c9.js.map +0 -1
  914. package/dist/kolibri/dev.utils-2a853234.js +0 -4
  915. package/dist/kolibri/dev.utils-2a853234.js.map +0 -1
  916. package/dist/kolibri/devtools-496ae358.js +0 -4
  917. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js +0 -4
  918. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  919. package/dist/kolibri/has-closer-fd2d8642.js +0 -4
  920. package/dist/kolibri/hide-label-2c0bf25c.js +0 -4
  921. package/dist/kolibri/i18n-d0bb1d99.js +0 -4
  922. package/dist/kolibri/i18n-d0bb1d99.js.map +0 -1
  923. package/dist/kolibri/icons-ad8a28c6.js +0 -4
  924. package/dist/kolibri/image-source-58a1cae6.js +0 -4
  925. package/dist/kolibri/index-947d3173.js.map +0 -1
  926. package/dist/kolibri/index-d0c806ea.js +0 -5
  927. package/dist/kolibri/index-d0c806ea.js.map +0 -1
  928. package/dist/kolibri/kol-alert-wc_3.entry.js +0 -4
  929. package/dist/kolibri/kol-alert-wc_3.entry.js.map +0 -1
  930. package/dist/kolibri/kol-popover.entry.js +0 -4
  931. package/dist/kolibri/kol-popover.entry.js.map +0 -1
  932. package/dist/kolibri/kol-span-wc_2.entry.js +0 -4
  933. package/dist/kolibri/kol-span-wc_2.entry.js.map +0 -1
  934. package/dist/kolibri/kol-toast.entry.js +0 -4
  935. package/dist/kolibri/kol-toast.entry.js.map +0 -1
  936. package/dist/kolibri/label-0d258cd5.js +0 -4
  937. package/dist/kolibri/open-713ddcdc.js +0 -4
  938. package/dist/kolibri/prop.validators-125a3282.js +0 -4
  939. package/dist/kolibri/prop.validators-125a3282.js.map +0 -1
  940. package/dist/kolibri/rows-d5112a2e.js +0 -4
  941. package/dist/kolibri/show-9951ecef.js +0 -4
  942. package/dist/kolibri/tab-index-5e7494f0.js +0 -4
  943. package/dist/kolibri/toaster-1ee75e55.js +0 -4
  944. package/dist/kolibri/toaster-1ee75e55.js.map +0 -1
  945. package/dist/kolibri/toaster-2dda6584.js +0 -4
  946. package/dist/kolibri/toaster-2dda6584.js.map +0 -1
  947. package/dist/kolibri/tooltip-align-fe8fbb60.js +0 -4
  948. package/dist/kolibri/validation-33f3aa23.js +0 -4
  949. package/dist/kolibri/validation-33f3aa23.js.map +0 -1
  950. package/dist/kolibri/validation-61e035d7.js +0 -4
  951. package/dist/types/components/toast/component.d.ts +0 -21
  952. package/dist/types/components/toast/test/html.mock.d.ts +0 -2
  953. package/dist/types/components/toast/types.d.ts +0 -18
  954. package/dist/types/types/props/aria-current.d.ts +0 -10
  955. package/dist/types/types/toast.d.ts +0 -4
  956. package/doc/toast-container.md +0 -46
  957. package/doc/toast.md +0 -94
  958. /package/dist/kolibri/{a11y.tipps-583a2096.js.map → a11y.tipps-68791110.js.map} +0 -0
  959. /package/dist/kolibri/{alternative-button-link-role-1b39949c.js.map → alternative-button-link-role-641ea928.js.map} +0 -0
  960. /package/dist/kolibri/{associated.controller-103e6fb9.js.map → associated.controller-d463ef08.js.map} +0 -0
  961. /package/dist/kolibri/{color-3932ac07.js.map → color-eb9db629.js.map} +0 -0
  962. /package/dist/kolibri/{controller-75d286de.js.map → controller-8b71bf6d.js.map} +0 -0
  963. /package/dist/kolibri/{controller-icon-fb1feb61.js.map → controller-icon-f63e0f2d.js.map} +0 -0
  964. /package/dist/kolibri/{hide-label-2c0bf25c.js.map → hide-label-fbf92ea1.js.map} +0 -0
  965. /package/dist/kolibri/{image-source-58a1cae6.js.map → image-source-e19536fa.js.map} +0 -0
  966. /package/dist/kolibri/{index-e51de689.js.map → index-9b519d08.js.map} +0 -0
  967. /package/dist/kolibri/{label-0d258cd5.js.map → label-7afcc6a9.js.map} +0 -0
  968. /package/dist/kolibri/{open-713ddcdc.js.map → open-9f31cf4e.js.map} +0 -0
  969. /package/dist/kolibri/{rows-d5112a2e.js.map → rows-051ae081.js.map} +0 -0
  970. /package/dist/kolibri/{show-9951ecef.js.map → show-cc5fafc8.js.map} +0 -0
  971. /package/dist/kolibri/{suggestions-50a767be.js.map → suggestions-50aff467.js.map} +0 -0
  972. /package/dist/kolibri/{tooltip-align-fe8fbb60.js.map → tooltip-align-36725992.js.map} +0 -0
  973. /package/dist/kolibri/{validation-61e035d7.js.map → validation-7b943391.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"kol-progress.entry.js","mappings":"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","names":[],"sources":["src/types/progress.ts","src/components/progress/style.css?tag=kol-progress&mode=default&encapsulation=shadow","src/components/progress/component.tsx"],"sourcesContent":["export enum KoliBriProgressVariantEnum {\n\t'bar' = 'bar',\n\t'cycle' = 'cycle',\n\t'cycle-value-label' = 'cycle-value-label',\n\t'cycle-label-value' = 'cycle-label-value',\n}\n\nexport type KoliBriProgressVariantType = `${KoliBriProgressVariantEnum}`;\n","@import url(../style.css);\nprogress {\n\tdisplay: block;\n\theight: 0;\n\toverflow: hidden;\n\twidth: 0;\n}\n.bar .border {\n\tfill: transparent;\n\tstroke: black;\n}\n.bar .background {\n\tfill: lightgray;\n\tstroke: white;\n}\n.bar .progress {\n\tfill: #0075ff;\n\tstroke: transparent;\n\ttransition: 250ms ease-in-out 50ms;\n}\n.cycle .background {\n\tfill: transparent;\n\tstroke: lightgray;\n}\n.cycle .border {\n\tfill: transparent;\n\tstroke: black;\n}\n.cycle .whitespace {\n\tfill: transparent;\n\tstroke: white;\n}\n.cycle .progress {\n\tfill: transparent;\n\tstroke: #0075ff;\n\ttransform-origin: 50% 50%;\n\ttransform: rotate(-90deg);\n\ttransition: 250ms ease-in-out 50ms;\n}\n/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion */\n@media (prefers-reduced-motion) {\n\t.progress {\n\t\ttransition-duration: 0s;\n\t\ttransition-delay: 0s;\n\t}\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { KoliBriProgressVariantEnum, KoliBriProgressVariantType } from '../../types/progress';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { API, States } from './types';\n\nconst VALID_VARIANTS = Object.keys(KoliBriProgressVariantEnum);\n\n// https://css-tricks.com/html5-progress-element/\nconst createProgressSVG = (state: States): JSX.Element => {\n\tconst fullCircle = 342;\n\tconst textPositionTop = '43%';\n\tconst textPositionBottom = '57%';\n\n\tlet labelY = textPositionTop;\n\tlet valueY = state._label ? textPositionBottom : '50%';\n\tswitch (state._variant) {\n\t\tcase 'cycle-value-label':\n\t\t\tif (state._label) {\n\t\t\t\tlabelY = textPositionBottom;\n\t\t\t\tvalueY = textPositionTop;\n\t\t\t}\n\t\t// eslint-disable-next-line no-fallthrough\n\t\tcase 'cycle':\n\t\tcase 'cycle-label-value':\n\t\t\treturn (\n\t\t\t\t<svg class=\"cycle\" width=\"100\" viewBox=\"0 0 120 120\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t<circle class=\"background\" cx=\"60\" cy=\"60\" r=\"54.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"8\"></circle>\n\t\t\t\t\t<circle class=\"whitespace\" cx=\"60\" cy=\"60\" r=\"59\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"3\"></circle>\n\t\t\t\t\t<circle class=\"border\" cx=\"60\" cy=\"60\" r=\"59\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle class=\"whitespace\" cx=\"60\" cy=\"60\" r=\"51\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle class=\"border\" cx=\"60\" cy=\"60\" r=\"50\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle\n\t\t\t\t\t\tclass=\"progress\"\n\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\t\tstroke-dasharray={`${Math.round((state._value / state._max) * fullCircle)}px ${fullCircle}px`}\n\t\t\t\t\t\tstroke-width=\"6\"\n\t\t\t\t\t\tcx=\"60\"\n\t\t\t\t\t\tcy=\"60\"\n\t\t\t\t\t\tr=\"54.5\"\n\t\t\t\t\t></circle>\n\t\t\t\t\t{state._label && (\n\t\t\t\t\t\t<text aria-hidden=\"true\" x=\"50%\" y={labelY} text-anchor=\"middle\" fill=\"currentColor\">\n\t\t\t\t\t\t\t{state._label}\n\t\t\t\t\t\t</text>\n\t\t\t\t\t)}\n\t\t\t\t\t<text aria-hidden=\"true\" x=\"50%\" y={valueY} text-anchor=\"middle\" fill=\"currentColor\">\n\t\t\t\t\t\t{state._value}\n\t\t\t\t\t\t{state._unit}\n\t\t\t\t\t</text>\n\t\t\t\t</svg>\n\t\t\t);\n\t\tdefault:\n\t\t\treturn (\n\t\t\t\t<div class=\"bar\">\n\t\t\t\t\t{state._label && <div>{state._label}</div>}\n\t\t\t\t\t<div style={{ display: 'flex', gap: '0.3em' }}>\n\t\t\t\t\t\t<svg width=\"100\" viewBox=\"0 0 102 8\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t\t\t<rect class=\"background\" x=\"1\" y=\"1\" height=\"10\" rx=\"5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"3\" width=\"100\"></rect>\n\t\t\t\t\t\t\t<rect\n\t\t\t\t\t\t\t\tclass=\"progress\"\n\t\t\t\t\t\t\t\tx=\"2.5\"\n\t\t\t\t\t\t\t\ty=\"2.5\"\n\t\t\t\t\t\t\t\theight=\"7\"\n\t\t\t\t\t\t\t\trx=\"3.5\"\n\t\t\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\t\t\tstroke-width=\"3\"\n\t\t\t\t\t\t\t\twidth={95 * (state._value / state._max)}\n\t\t\t\t\t\t\t></rect>\n\t\t\t\t\t\t\t<rect class=\"border\" x=\"1\" y=\"1\" height=\"10\" rx=\"5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" width=\"100\"></rect>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t<text aria-hidden=\"true\" text-anchor=\"middle\" dominant-baseline=\"central\" fill=\"currentColor\">\n\t\t\t\t\t\t\t{state._value}\n\t\t\t\t\t\t\t{state._unit}\n\t\t\t\t\t\t</text>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t);\n\t}\n};\n\n@Component({\n\ttag: 'kol-progress',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolProcess implements API {\n\tprivate interval?: number;\n\n\t// https://dequeuniversity.com/library/aria/progress-bar-bounded\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{createProgressSVG(this.state)}\n\t\t\t\t<progress aria-busy={this.state._value < this.state._max ? 'true' : 'false'} max={this.state._max} value={this.state._value}></progress>\n\t\t\t\t<span aria-live=\"polite\" aria-relevant=\"removals text\" hidden>\n\t\t\t\t\t{this.state._liveValue} von {this.state._max} {this.state._unit}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\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() public _label?: LabelPropType;\n\n\t/**\n\t * Defines at which value the progress display is completed.\n\t */\n\t@Prop() public _max!: number;\n\n\t/**\n\t * Defines the unit of the step values (not shown).\n\t */\n\t@Prop() public _unit?: string = '%';\n\n\t/**\n\t * Defines the progress.\n\t */\n\t@Prop() public _value!: number;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: KoliBriProgressVariantType;\n\n\t@State() public state: States = {\n\t\t_max: 100,\n\t\t_unit: '%',\n\t\t_value: 0,\n\t\t_variant: 'bar',\n\t\t_liveValue: 0,\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: number): void {\n\t\tif (typeof value !== 'number') {\n\t\t\tvalue = 100;\n\t\t}\n\t\twatchNumber(this, '_max', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_unit')\n\tpublic validateUnit(value?: string): void {\n\t\twatchString(this, '_unit', value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: number): void {\n\t\tif (typeof value !== 'number') {\n\t\t\tvalue = 0;\n\t\t}\n\t\twatchNumber(this, '_value', value, {\n\t\t\t// max: this._max, TODO as Function\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriProgressVariantType): void {\n\t\twatchValidator(this, '_variant', (value) => typeof value === 'string' && VALID_VARIANTS.includes(value), new Set(VALID_VARIANTS), value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateMax(this._max);\n\t\tthis.validateUnit(this._unit);\n\t\tthis.validateValue(this._value);\n\t\tthis.validateVariant(this._variant);\n\n\t\tthis.interval = setInterval(() => {\n\t\t\tif (this.state._liveValue !== this.state._value) {\n\t\t\t\tthis.state = {\n\t\t\t\t\t...this.state,\n\t\t\t\t\t_liveValue: this.state._value,\n\t\t\t\t};\n\t\t\t}\n\t\t}, 5000) as unknown as number;\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tclearInterval(this.interval);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-progress.entry.js","mappings":"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","names":[],"sources":["src/types/progress.ts","src/components/progress/style.css?tag=kol-progress&mode=default&encapsulation=shadow","src/components/progress/component.tsx"],"sourcesContent":["export enum KoliBriProgressVariantEnum {\n\t'bar' = 'bar',\n\t'cycle' = 'cycle',\n\t'cycle-value-label' = 'cycle-value-label',\n\t'cycle-label-value' = 'cycle-label-value',\n}\n\nexport type KoliBriProgressVariantType = `${KoliBriProgressVariantEnum}`;\n","@import url(../style.css);\n@layer kol-component {\n\tprogress {\n\t\tdisplay: block;\n\t\theight: 0;\n\t\toverflow: hidden;\n\t\twidth: 0;\n\t}\n\n\t.bar .border {\n\t\tfill: transparent;\n\t\tstroke: black;\n\t}\n\n\t.bar .background {\n\t\tfill: lightgray;\n\t\tstroke: white;\n\t}\n\n\t.bar .progress {\n\t\tfill: #0075ff;\n\t\tstroke: transparent;\n\t\ttransition: 250ms ease-in-out 50ms;\n\t}\n\n\t.cycle .background {\n\t\tfill: transparent;\n\t\tstroke: lightgray;\n\t}\n\n\t.cycle .border {\n\t\tfill: transparent;\n\t\tstroke: black;\n\t}\n\n\t.cycle .whitespace {\n\t\tfill: transparent;\n\t\tstroke: white;\n\t}\n\n\t.cycle .progress {\n\t\tfill: transparent;\n\t\tstroke: #0075ff;\n\t\ttransform-origin: 50% 50%;\n\t\ttransform: rotate(-90deg);\n\t\ttransition: 250ms ease-in-out 50ms;\n\t}\n\n\t/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion */\n\t@media (prefers-reduced-motion) {\n\t\t.progress {\n\t\t\ttransition-duration: 0s;\n\t\t\ttransition-delay: 0s;\n\t\t}\n\t}\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { KoliBriProgressVariantEnum, KoliBriProgressVariantType } from '../../types/progress';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { API, States } from './types';\n\nconst VALID_VARIANTS = Object.keys(KoliBriProgressVariantEnum);\n\n// https://css-tricks.com/html5-progress-element/\nconst createProgressSVG = (state: States): JSX.Element => {\n\tconst fullCircle = 342;\n\tconst textPositionTop = '43%';\n\tconst textPositionBottom = '57%';\n\n\tlet labelY = textPositionTop;\n\tlet valueY = state._label ? textPositionBottom : '50%';\n\tswitch (state._variant) {\n\t\tcase 'cycle-value-label':\n\t\t\tif (state._label) {\n\t\t\t\tlabelY = textPositionBottom;\n\t\t\t\tvalueY = textPositionTop;\n\t\t\t}\n\t\t// eslint-disable-next-line no-fallthrough\n\t\tcase 'cycle':\n\t\tcase 'cycle-label-value':\n\t\t\treturn (\n\t\t\t\t<svg class=\"cycle\" width=\"100\" viewBox=\"0 0 120 120\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t<circle class=\"background\" cx=\"60\" cy=\"60\" r=\"54.5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"8\"></circle>\n\t\t\t\t\t<circle class=\"whitespace\" cx=\"60\" cy=\"60\" r=\"59\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"3\"></circle>\n\t\t\t\t\t<circle class=\"border\" cx=\"60\" cy=\"60\" r=\"59\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle class=\"whitespace\" cx=\"60\" cy=\"60\" r=\"51\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle class=\"border\" cx=\"60\" cy=\"60\" r=\"50\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\"></circle>\n\t\t\t\t\t<circle\n\t\t\t\t\t\tclass=\"progress\"\n\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\t\tstroke-dasharray={`${Math.round((state._value / state._max) * fullCircle)}px ${fullCircle}px`}\n\t\t\t\t\t\tstroke-width=\"6\"\n\t\t\t\t\t\tcx=\"60\"\n\t\t\t\t\t\tcy=\"60\"\n\t\t\t\t\t\tr=\"54.5\"\n\t\t\t\t\t></circle>\n\t\t\t\t\t{state._label && (\n\t\t\t\t\t\t<text aria-hidden=\"true\" x=\"50%\" y={labelY} text-anchor=\"middle\" fill=\"currentColor\">\n\t\t\t\t\t\t\t{state._label}\n\t\t\t\t\t\t</text>\n\t\t\t\t\t)}\n\t\t\t\t\t<text aria-hidden=\"true\" x=\"50%\" y={valueY} text-anchor=\"middle\" fill=\"currentColor\">\n\t\t\t\t\t\t{state._value}\n\t\t\t\t\t\t{state._unit}\n\t\t\t\t\t</text>\n\t\t\t\t</svg>\n\t\t\t);\n\t\tdefault:\n\t\t\treturn (\n\t\t\t\t<div class=\"bar\">\n\t\t\t\t\t{state._label && <div>{state._label}</div>}\n\t\t\t\t\t<div style={{ display: 'flex', gap: '0.3em' }}>\n\t\t\t\t\t\t<svg width=\"100\" viewBox=\"0 0 102 8\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t\t\t<rect class=\"background\" x=\"1\" y=\"1\" height=\"10\" rx=\"5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"3\" width=\"100\"></rect>\n\t\t\t\t\t\t\t<rect\n\t\t\t\t\t\t\t\tclass=\"progress\"\n\t\t\t\t\t\t\t\tx=\"2.5\"\n\t\t\t\t\t\t\t\ty=\"2.5\"\n\t\t\t\t\t\t\t\theight=\"7\"\n\t\t\t\t\t\t\t\trx=\"3.5\"\n\t\t\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\t\t\tstroke-width=\"3\"\n\t\t\t\t\t\t\t\twidth={95 * (state._value / state._max)}\n\t\t\t\t\t\t\t></rect>\n\t\t\t\t\t\t\t<rect class=\"border\" x=\"1\" y=\"1\" height=\"10\" rx=\"5\" fill=\"currentColor\" stroke=\"currentColor\" stroke-width=\"1\" width=\"100\"></rect>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t<text aria-hidden=\"true\" text-anchor=\"middle\" dominant-baseline=\"central\" fill=\"currentColor\">\n\t\t\t\t\t\t\t{state._value}\n\t\t\t\t\t\t\t{state._unit}\n\t\t\t\t\t\t</text>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t);\n\t}\n};\n\n@Component({\n\ttag: 'kol-progress',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolProcess implements API {\n\tprivate interval?: number;\n\n\t// https://dequeuniversity.com/library/aria/progress-bar-bounded\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{createProgressSVG(this.state)}\n\t\t\t\t<progress aria-busy={this.state._value < this.state._max ? 'true' : 'false'} max={this.state._max} value={this.state._value}></progress>\n\t\t\t\t<span aria-live=\"polite\" aria-relevant=\"removals text\" hidden>\n\t\t\t\t\t{this.state._liveValue} von {this.state._max} {this.state._unit}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\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() public _label?: LabelPropType;\n\n\t/**\n\t * Defines at which value the progress display is completed.\n\t */\n\t@Prop() public _max!: number;\n\n\t/**\n\t * Defines the unit of the step values (not shown).\n\t */\n\t@Prop() public _unit?: string = '%';\n\n\t/**\n\t * Defines the progress.\n\t */\n\t@Prop() public _value!: number;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: KoliBriProgressVariantType;\n\n\t@State() public state: States = {\n\t\t_max: 100,\n\t\t_unit: '%',\n\t\t_value: 0,\n\t\t_variant: 'bar',\n\t\t_liveValue: 0,\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: number): void {\n\t\tif (typeof value !== 'number') {\n\t\t\tvalue = 100;\n\t\t}\n\t\twatchNumber(this, '_max', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_unit')\n\tpublic validateUnit(value?: string): void {\n\t\twatchString(this, '_unit', value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: number): void {\n\t\tif (typeof value !== 'number') {\n\t\t\tvalue = 0;\n\t\t}\n\t\twatchNumber(this, '_value', value, {\n\t\t\t// max: this._max, TODO as Function\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriProgressVariantType): void {\n\t\twatchValidator(this, '_variant', (value) => typeof value === 'string' && VALID_VARIANTS.includes(value), new Set(VALID_VARIANTS), value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateMax(this._max);\n\t\tthis.validateUnit(this._unit);\n\t\tthis.validateValue(this._value);\n\t\tthis.validateVariant(this._variant);\n\n\t\tthis.interval = setInterval(() => {\n\t\t\tif (this.state._liveValue !== this.state._value) {\n\t\t\t\tthis.state = {\n\t\t\t\t\t...this.state,\n\t\t\t\t\t_liveValue: this.state._value,\n\t\t\t\t};\n\t\t\t}\n\t\t}, 5000) as unknown as number;\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tclearInterval(this.interval);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as registerInstance,h,H as Host}from"./index-d0c806ea.js";import{v as validateLabel}from"./label-0d258cd5.js";import{d as watchString,w as watchValidator}from"./prop.validators-125a3282.js";import{s as showExpertSlot}from"./reuse-b3566e4c.js";import"./a11y.tipps-583a2096.js";import"./dev.utils-2a853234.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}cite,figure,q+figcaption{display:inline;margin:0;padding:0}blockquote:before{content:open-quote}blockquote::after{content:close-quote}cite:before{content:'—'}.block cite:before{padding-right:0.5em}.inline cite:before{padding:0.5em}",KolQuote=class{constructor(t){registerInstance(this,t),this._label=void 0,this._href=void 0,this._quote=void 0,this._variant="inline",this.state={_href:"…",_quote:"…",_variant:"inline"}}validateLabel(t){validateLabel(this,t)}validateHref(t){watchString(this,"_href",t,{required:!0})}validateQuote(t){watchString(this,"_quote",t,{required:!0})}validateVariant(t){watchValidator(this,"_variant",(t=>"block"===t||"inline"===t),new Set(["block","inline"]),t)}componentWillLoad(){this.validateHref(this._href),this.validateLabel(this._label),this.validateQuote(this._quote),this.validateVariant(this._variant)}render(){const t=showExpertSlot(this.state._quote);return h(Host,null,h("figure",{class:{[this.state._variant]:!0}},"block"===this.state._variant?h("blockquote",{cite:this.state._href},this.state._quote,h("span",{"aria-hidden":t?void 0:"true",hidden:!t},h("slot",{name:"expert"}))):h("q",{cite:this.state._href},this.state._quote,h("span",{"aria-hidden":t?void 0:"true",hidden:!t},h("slot",{name:"expert"}))),"string"==typeof this.state._label&&this.state._label.length>0&&h("figcaption",null,h("cite",null,h("kol-link",{_href:this.state._href,_label:this.state._label,_target:"_blank"})))))}static get watchers(){return{_label:["validateLabel"],_href:["validateHref"],_quote:["validateQuote"],_variant:["validateVariant"]}}};KolQuote.style={default:defaultStyleCss};export{KolQuote as kol_quote};
4
+ import{r as registerInstance,h,H as Host}from"./index-0bc40dc4.js";import{v as validateLabel}from"./label-7afcc6a9.js";import{d as watchString,w as watchValidator}from"./prop.validators-3fb6bedf.js";import{s as showExpertSlot}from"./reuse-b3566e4c.js";import"./a11y.tipps-68791110.js";import"./dev.utils-8202a1bc.js";const koliBriQuoteVariantOptions=["block","inline"],defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\tcite,\n\tfigure,\n\tq + figcaption {\n\t\tdisplay: inline;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\tblockquote:before {\n\t\tcontent: open-quote;\n\t}\n\n\tblockquote::after {\n\t\tcontent: close-quote;\n\t}\n\n\tcite:before {\n\t\tcontent: '—';\n\t}\n\n\t.block cite:before {\n\t\tpadding-right: 0.5em;\n\t}\n\n\t.inline cite:before {\n\t\tpadding: 0.5em;\n\t}\n}\n",KolQuote=class{constructor(t){registerInstance(this,t),this._label=void 0,this._href=void 0,this._quote=void 0,this._variant="inline",this.state={_href:"…",_quote:"…",_variant:"inline"}}validateLabel(t){validateLabel(this,t)}validateHref(t){watchString(this,"_href",t,{required:!0})}validateQuote(t){watchString(this,"_quote",t,{required:!0})}validateVariant(t){watchValidator(this,"_variant",(t=>"string"==typeof t&&koliBriQuoteVariantOptions.includes(t)),new Set(koliBriQuoteVariantOptions),t)}componentWillLoad(){this.validateHref(this._href),this.validateLabel(this._label),this.validateQuote(this._quote),this.validateVariant(this._variant)}render(){const t=showExpertSlot(this.state._quote);return h(Host,null,h("figure",{class:{[this.state._variant]:!0}},"block"===this.state._variant?h("blockquote",{cite:this.state._href},this.state._quote,h("span",{"aria-hidden":t?void 0:"true",hidden:!t},h("slot",{name:"expert"}))):h("q",{cite:this.state._href},this.state._quote,h("span",{"aria-hidden":t?void 0:"true",hidden:!t},h("slot",{name:"expert"}))),"string"==typeof this.state._label&&this.state._label.length>0&&h("figcaption",null,h("cite",null,h("kol-link",{_href:this.state._href,_label:this.state._label,_target:"_blank"})))))}static get watchers(){return{_label:["validateLabel"],_href:["validateHref"],_quote:["validateQuote"],_variant:["validateVariant"]}}};KolQuote.style={default:defaultStyleCss};export{KolQuote as kol_quote};
@@ -1 +1 @@
1
- {"file":"kol-quote.entry.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,i7BAAi7B;;MCe57B,QAAQ;;;;;;oBAmB4B,QAAQ;iBAExB;MAC/B,KAAK,EAAE,GAAG;MACV,MAAM,EAAE,GAAG;MACX,QAAQ,EAAE,QAAQ;KAClB;;EAGM,aAAa,CAAC,KAAqB;IACzC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC3B;EAGM,YAAY,CAAC,KAAoB;IACvC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;MACjC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,aAAa,CAAC,KAAc;IAClC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;MAClC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,eAAe,CAAC,KAA2B;IACjD,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;GAC1H;EAEM,iBAAiB;IACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;GACpC;EAEM,MAAM;IACZ,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,QACC,EAAC,IAAI,QACJ,cACC,KAAK,EAAE;QACN,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI;OAC3B,IAEA,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAC/B,kBAAY,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAChC,IAAI,CAAC,KAAK,CAAC,MAAM,EAClB,2BAAmB,CAAC,aAAa,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,aAAa,IAC7E,YAAM,IAAI,EAAC,QAAQ,GAAG,CAChB,CACK,KAEb,SAAG,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IACvB,IAAI,CAAC,KAAK,CAAC,MAAM,EAClB,2BAAmB,CAAC,aAAa,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,aAAa,IAC7E,YAAM,IAAI,EAAC,QAAQ,GAAG,CAChB,CACJ,CACJ,EACA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KACrE,sBACC,gBACC,gBAAU,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAC,QAAQ,GAAG,CAC3E,CACK,CACb,CACO,CACH,EACN;GACF;;;;;;;;;;;;;;","names":[],"sources":["src/components/quote/style.css?tag=kol-quote&mode=default&encapsulation=shadow","src/components/quote/shadow.tsx"],"sourcesContent":["@import url(../style.css);\ncite,\nfigure,\nq + figcaption {\n\tdisplay: inline;\n\tmargin: 0;\n\tpadding: 0;\n}\nblockquote:before {\n\tcontent: open-quote;\n}\nblockquote::after {\n\tcontent: close-quote;\n}\ncite:before {\n\tcontent: '—';\n}\n.block cite:before {\n\tpadding-right: 0.5em;\n}\n.inline cite:before {\n\tpadding: 0.5em;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HrefPropType } from '../../types/props/href';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchString, watchValidator } from '../../utils/prop.validators';\nimport { showExpertSlot } from '../../utils/reuse';\nimport { API, KoliBriQuoteVariant, States } from './types';\n\n@Component({\n\ttag: 'kol-quote',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolQuote implements API {\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?: string;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the text of the quote.\n\t */\n\t@Prop() public _quote!: string;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: KoliBriQuoteVariant = 'inline';\n\n\t@State() public state: States = {\n\t\t_href: '…', // ⚠ required\n\t\t_quote: '…', // ⚠ required\n\t\t_variant: 'inline',\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_href')\n\tpublic validateHref(value?: HrefPropType): void {\n\t\twatchString(this, '_href', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_quote')\n\tpublic validateQuote(value?: string): void {\n\t\twatchString(this, '_quote', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriQuoteVariant): void {\n\t\twatchValidator(this, '_variant', (value) => value === 'block' || value === 'inline', new Set(['block', 'inline']), value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHref(this._href);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateQuote(this._quote);\n\t\tthis.validateVariant(this._variant);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasExpertSlot = showExpertSlot(this.state._quote); // _quote instead of _caption as _label\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<figure\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._variant]: true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{this.state._variant === 'block' ? (\n\t\t\t\t\t\t<blockquote cite={this.state._href}>\n\t\t\t\t\t\t\t{this.state._quote}\n\t\t\t\t\t\t\t<span aria-hidden={!hasExpertSlot ? 'true' : undefined} hidden={!hasExpertSlot}>\n\t\t\t\t\t\t\t\t<slot name=\"expert\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</blockquote>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<q cite={this.state._href}>\n\t\t\t\t\t\t\t{this.state._quote}\n\t\t\t\t\t\t\t<span aria-hidden={!hasExpertSlot ? 'true' : undefined} hidden={!hasExpertSlot}>\n\t\t\t\t\t\t\t\t<slot name=\"expert\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</q>\n\t\t\t\t\t)}\n\t\t\t\t\t{typeof this.state._label === 'string' && this.state._label.length > 0 && (\n\t\t\t\t\t\t<figcaption>\n\t\t\t\t\t\t\t<cite>\n\t\t\t\t\t\t\t\t<kol-link _href={this.state._href} _label={this.state._label} _target=\"_blank\" />\n\t\t\t\t\t\t\t</cite>\n\t\t\t\t\t\t</figcaption>\n\t\t\t\t\t)}\n\t\t\t\t</figure>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-quote.entry.js","mappings":";;;;;;;;;;AAKO,MAAM,0BAA0B,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAU;;ACLtE,MAAM,eAAe,GAAG,unGAAunG;;MCeloG,QAAQ;;;;;;oBAmB4B,QAAQ;iBAExB;MAC/B,KAAK,EAAE,GAAG;MACV,MAAM,EAAE,GAAG;MACX,QAAQ,EAAE,QAAQ;KAClB;;EAGM,aAAa,CAAC,KAAqB;IACzC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC3B;EAGM,YAAY,CAAC,KAAoB;IACvC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;MACjC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,aAAa,CAAC,KAAc;IAClC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;MAClC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,eAAe,CAAC,KAA2B;IACjD,cAAc,CACb,IAAI,EACJ,UAAU,EACV,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,0BAA0B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAClF,IAAI,GAAG,CAAC,0BAA0B,CAAC,EACnC,KAAK,CACL,CAAC;GACF;EAEM,iBAAiB;IACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;GACpC;EAEM,MAAM;IACZ,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,QACC,EAAC,IAAI,QACJ,cACC,KAAK,EAAE;QACN,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI;OAC3B,IAEA,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAC/B,kBAAY,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAChC,IAAI,CAAC,KAAK,CAAC,MAAM,EAClB,2BAAmB,CAAC,aAAa,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,aAAa,IAC7E,YAAM,IAAI,EAAC,QAAQ,GAAG,CAChB,CACK,KAEb,SAAG,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IACvB,IAAI,CAAC,KAAK,CAAC,MAAM,EAClB,2BAAmB,CAAC,aAAa,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,aAAa,IAC7E,YAAM,IAAI,EAAC,QAAQ,GAAG,CAChB,CACJ,CACJ,EACA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KACrE,sBACC,gBACC,gBAAU,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAC,QAAQ,GAAG,CAC3E,CACK,CACb,CACO,CACH,EACN;GACF;;;;;;;;;;;;;;","names":[],"sources":["src/components/quote/types.ts","src/components/quote/style.css?tag=kol-quote&mode=default&encapsulation=shadow","src/components/quote/shadow.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { PropHref } from '../../types/props/href';\nimport { PropLabel } from '../../types/props/label';\n\nexport const koliBriQuoteVariantOptions = ['block', 'inline'] as const;\nexport type KoliBriQuoteVariant = (typeof koliBriQuoteVariantOptions)[number];\n\ntype RequiredProps = {\n\tquote: string;\n} & PropHref; // URL to the source of the quote (cite)\ntype OptionalProps = {\n\tvariant: KoliBriQuoteVariant;\n} & PropLabel;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tquote: string;\n\tvariant: KoliBriQuoteVariant;\n} & PropHref; // URL to the source of the quote (cite)\ntype OptionalStates = PropLabel;\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\nexport type API = Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates>;\n","@import url(../style.css);\n@layer kol-component {\n\tcite,\n\tfigure,\n\tq + figcaption {\n\t\tdisplay: inline;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\tblockquote:before {\n\t\tcontent: open-quote;\n\t}\n\n\tblockquote::after {\n\t\tcontent: close-quote;\n\t}\n\n\tcite:before {\n\t\tcontent: '—';\n\t}\n\n\t.block cite:before {\n\t\tpadding-right: 0.5em;\n\t}\n\n\t.inline cite:before {\n\t\tpadding: 0.5em;\n\t}\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HrefPropType } from '../../types/props/href';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchString, watchValidator } from '../../utils/prop.validators';\nimport { showExpertSlot } from '../../utils/reuse';\nimport { API, KoliBriQuoteVariant, koliBriQuoteVariantOptions, States } from './types';\n\n@Component({\n\ttag: 'kol-quote',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolQuote implements API {\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?: string;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the text of the quote.\n\t */\n\t@Prop() public _quote!: string;\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: KoliBriQuoteVariant = 'inline';\n\n\t@State() public state: States = {\n\t\t_href: '…', // ⚠ required\n\t\t_quote: '…', // ⚠ required\n\t\t_variant: 'inline',\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_href')\n\tpublic validateHref(value?: HrefPropType): void {\n\t\twatchString(this, '_href', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_quote')\n\tpublic validateQuote(value?: string): void {\n\t\twatchString(this, '_quote', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriQuoteVariant): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_variant',\n\t\t\t(value) => typeof value === 'string' && koliBriQuoteVariantOptions.includes(value),\n\t\t\tnew Set(koliBriQuoteVariantOptions),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHref(this._href);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateQuote(this._quote);\n\t\tthis.validateVariant(this._variant);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasExpertSlot = showExpertSlot(this.state._quote); // _quote instead of _caption as _label\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<figure\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._variant]: true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{this.state._variant === 'block' ? (\n\t\t\t\t\t\t<blockquote cite={this.state._href}>\n\t\t\t\t\t\t\t{this.state._quote}\n\t\t\t\t\t\t\t<span aria-hidden={!hasExpertSlot ? 'true' : undefined} hidden={!hasExpertSlot}>\n\t\t\t\t\t\t\t\t<slot name=\"expert\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</blockquote>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<q cite={this.state._href}>\n\t\t\t\t\t\t\t{this.state._quote}\n\t\t\t\t\t\t\t<span aria-hidden={!hasExpertSlot ? 'true' : undefined} hidden={!hasExpertSlot}>\n\t\t\t\t\t\t\t\t<slot name=\"expert\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</q>\n\t\t\t\t\t)}\n\t\t\t\t\t{typeof this.state._label === 'string' && this.state._label.length > 0 && (\n\t\t\t\t\t\t<figcaption>\n\t\t\t\t\t\t\t<cite>\n\t\t\t\t\t\t\t\t<kol-link _href={this.state._href} _label={this.state._label} _target=\"_blank\" />\n\t\t\t\t\t\t\t</cite>\n\t\t\t\t\t\t</figcaption>\n\t\t\t\t\t)}\n\t\t\t\t</figure>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{h,H as Host,r as registerInstance,g as getElement}from"./index-d0c806ea.js";import{n as nonce}from"./dev.utils-2a853234.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events-2bb1065b.js";import{S as STATE_CHANGE_EVENT,a as propagateFocus,s as showExpertSlot}from"./reuse-b3566e4c.js";import{v as validateHideError,g as getRenderStates}from"./controller-75d286de.js";import{f as fillKeyOptionMap,v as validateOptionsWithOptgroup}from"./controller-b19ee0de.js";import{v as validateRows}from"./rows-d5112a2e.js";import{a as a11yHint}from"./a11y.tipps-583a2096.js";import{a as watchBoolean,c as watchJsonArrayString}from"./prop.validators-125a3282.js";import{I as InputIconController}from"./controller-icon-fb1feb61.js";import"./hide-label-2c0bf25c.js";import"./label-0d258cd5.js";import"./tab-index-5e7494f0.js";import"./associated.controller-103e6fb9.js";import"./icons-ad8a28c6.js";class SelectController extends InputIconController{constructor(t,e,i){super(t,e,i),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.isValueInOptions=(t,e)=>void 0!==e.find((e=>"string"==typeof e.value?e.value===t:!!Array.isArray(e.options)&&this.isValueInOptions(t,e.options))),this.filterValuesInOptions=(t,e)=>t.filter((t=>void 0!==this.isValueInOptions(t,e))),this.beforePatchOptions=(t,e)=>{const i=e.has("_options")?e.get("_options"):this.component.state._options;if(Array.isArray(i)&&i.length>0){this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,i);const t=e.has("_value")?e.get("_value"):this.component.state._value,a=this.filterValuesInOptions(Array.isArray(t)&&t.length>0?t:[],i);!1===this.component._multiple&&0===a.length?(e.set("_value",[i[0].value]),this.onStateChange()):Array.isArray(t)&&a.length<t.length&&(e.set("_value",a),this.onStateChange())}},this.component=t}validateHideError(t){validateHideError(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateOptions(t){validateOptionsWithOptgroup(this.component,t,{hooks:{beforePatch:this.beforePatchOptions}})}validateMultiple(t){watchBoolean(this.component,"_multiple",t,{hooks:{beforePatch:this.beforePatchOptions}})}validateRequired(t){watchBoolean(this.component,"_required",t)}validateRows(t){validateRows(this.component,t)}validateValue(t){watchJsonArrayString(this.component,"_value",(()=>!0),t,void 0,{hooks:{beforePatch:this.beforePatchOptions}}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(STATE_CHANGE_EVENT)}))}},this.validateHideError(this.component._hideError),this.validateOptions(this.component._options),this.validateMultiple(this.component._multiple),this.validateRequired(this.component._required),this.validateRows(this.component._rows),this.validateValue(this.component._value)}}const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}.required label>span::after,.required legend>span::after{content:'*'}:host{display:block}input,textarea{cursor:text}input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],input[type='range'],label,option,select{cursor:pointer}input[type='color'],input[type='date'],input[type='datetime-local'],input[type='email'],input[type='file'],input[type='month'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='time'],input[type='url'],input[type='week'],select,select[multiple] option,textarea{font-size:1rem;width:100%}input[type='file']{padding:calc((var(--a11y-min-size) - 1rem) / 10) 0.5em}select[multiple] option{padding:calc((var(--a11y-min-size) - 1rem) / 2) 0.5em}kol-input.disabled :is(button,input,label,option,select,textarea){cursor:not-allowed;opacity:0.5}kol-input{display:grid}kol-input .input-slot{flex-grow:1}input:not([type='checkbox'],[type='radio']),select:not([multiple],[size]){height:2.75em}input:focus,option:focus,select:focus,textarea:focus{outline:0}.input{display:flex;align-items:center}.input>kol-icon{display:grid;height:var(--a11y-min-size);place-items:center}kol-input.required .input-tooltip .span-label::after{content:'*'}.error.hidden{display:none}",isSelected=(t,e)=>Array.isArray(t)&&t.includes(e),KolSelect=class{renderOptgroup(t,e){var i;return h("optgroup",{disabled:t.disabled,label:t.label},null===(i=t.options)||void 0===i?void 0:i.map(((t,i)=>{const a=`${e}-${i}`;return Array.isArray(t.options)?this.renderOptgroup(t,a):h("option",{disabled:t.disabled,key:a,selected:isSelected(this.state._value,t.value),value:a},t.label)})))}render(){const{ariaDescribedBy:t}=getRenderStates(this.state),e=showExpertSlot(this.state._label);return h(Host,{class:{"has-value":this.state._hasValue}},h("kol-input",{class:{"hide-label":!!this.state._hideLabel,select:!0},_disabled:this.state._disabled,_error:this.state._error,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},h("span",{slot:"label"},e?h("slot",{name:"expert"}):this.state._label),h("div",{slot:"input"},h("select",{ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,autoCapitalize:"off",autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,multiple:this.state._multiple,name:this.state._name,required:this.state._required,size:this.state._rows,spellcheck:"false",onClick:this.controller.onFacade.onClick,onBlur:this.controller.onFacade.onBlur,onFocus:this.controller.onFacade.onFocus,onChange:this.onChange},this.state._options.map(((t,e)=>{const i=`-${e}`;return Array.isArray(t.options)?this.renderOptgroup(t,i):h("option",{disabled:t.disabled,key:i,selected:isSelected(this.state._value,t.value),value:i},t.label)}))))))}constructor(t){registerInstance(this,t),this.catchRef=t=>{this.ref=t,propagateFocus(this.host,this.ref)},this.onChange=t=>{var e,i;this._value=Array.from((null===(e=this.ref)||void 0===e?void 0:e.options)||[]).filter((t=>!0===t.selected)).map((t=>{var e;return null===(e=this.controller.getOptionByKey(t.value))||void 0===e?void 0:e.value})),stopPropagation(t),tryToDispatchKoliBriEvent("change",this.host,this._value),this.controller.setFormAssociatedValue(this._value),"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onChange)&&this.state._on.onChange(t,this._value)},this._accessKey=void 0,this._alert=!0,this._disabled=!1,this._error=void 0,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._multiple=!1,this._name=void 0,this._on=void 0,this._options=void 0,this._required=!1,this._rows=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._value=void 0,this.state={_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_multiple:!1,_options:[],_value:[]},this.controller=new SelectController(this,"select",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateDisabled(t){this.controller.validateDisabled(t)}validateError(t){this.controller.validateError(t)}validateHideError(t){this.controller.validateHideError(t)}validateHideLabel(t){this.controller.validateHideLabel(t)}validateHint(t){this.controller.validateHint(t)}validateIcons(t){this.controller.validateIcons(t)}validateId(t){this.controller.validateId(t)}validateLabel(t){this.controller.validateLabel(t)}validateMultiple(t){this.controller.validateMultiple(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateOptions(t){this.controller.validateOptions(t)}validateRequired(t){this.controller.validateRequired(t)}validateRows(t){this.controller.validateRows(t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateValue(t){this.controller.validateValue(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(this.onChange),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((t=>this.state._hasValue=!!t))}get host(){return getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_multiple:["validateMultiple"],_name:["validateName"],_on:["validateOn"],_options:["validateOptions"],_required:["validateRequired"],_rows:["validateRows"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}};KolSelect.style={default:defaultStyleCss};export{KolSelect as kol_select};
4
+ import{h,F as Fragment,H as Host,r as registerInstance,g as getElement}from"./index-0bc40dc4.js";import{n as nonce}from"./dev.utils-8202a1bc.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events-2bb1065b.js";import{S as STATE_CHANGE_EVENT,a as propagateFocus,s as showExpertSlot}from"./reuse-b3566e4c.js";import{v as validateHideError,g as getRenderStates}from"./controller-8b71bf6d.js";import{I as InternalUnderlinedAccessKey}from"./InternalUnderlinedAccessKey-8b996006.js";import{f as fillKeyOptionMap,v as validateOptionsWithOptgroup}from"./controller-5838290e.js";import{v as validateRows}from"./rows-051ae081.js";import{a as a11yHint}from"./a11y.tipps-68791110.js";import{a as watchBoolean,c as watchJsonArrayString}from"./prop.validators-3fb6bedf.js";import{I as InputIconController}from"./controller-icon-f63e0f2d.js";import"./hide-label-fbf92ea1.js";import"./label-7afcc6a9.js";import"./tab-index-95df106a.js";import"./associated.controller-d463ef08.js";import"./icons-cfc259bf.js";class SelectController extends InputIconController{constructor(t,e,n){super(t,e,n),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.isValueInOptions=(t,e)=>void 0!==e.find((e=>"string"==typeof e.value?e.value===t:!!Array.isArray(e.options)&&this.isValueInOptions(t,e.options))),this.filterValuesInOptions=(t,e)=>t.filter((t=>void 0!==this.isValueInOptions(t,e))),this.beforePatchOptions=(t,e)=>{const n=e.has("_options")?e.get("_options"):this.component.state._options;if(Array.isArray(n)&&n.length>0){this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,n);const t=e.has("_value")?e.get("_value"):this.component.state._value,i=this.filterValuesInOptions(Array.isArray(t)&&t.length>0?t:[],n);!1===this.component._multiple&&0===i.length?(e.set("_value",[n[0].value]),this.onStateChange()):Array.isArray(t)&&i.length<t.length&&(e.set("_value",i),this.onStateChange())}},this.component=t}validateHideError(t){validateHideError(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateOptions(t){validateOptionsWithOptgroup(this.component,t,{hooks:{beforePatch:this.beforePatchOptions}})}validateMultiple(t){watchBoolean(this.component,"_multiple",t,{hooks:{beforePatch:this.beforePatchOptions}})}validateRequired(t){watchBoolean(this.component,"_required",t)}validateRows(t){validateRows(this.component,t)}validateValue(t){watchJsonArrayString(this.component,"_value",(()=>!0),t,void 0,{hooks:{beforePatch:this.beforePatchOptions}}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(STATE_CHANGE_EVENT)}))}},this.validateHideError(this.component._hideError),this.validateOptions(this.component._options),this.validateMultiple(this.component._multiple),this.validateRequired(this.component._required),this.validateRows(this.component._rows),this.validateValue(this.component._value)}}const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\t.required label > span::after,\n\t.required legend > span::after {\n\t\tcontent: '*';\n\t}\n}\n\n@layer kol-component {\n\t:host {\n\t\tdisplay: block;\n\t}\n}\n\n@layer kol-component {\n\tinput,\n\ttextarea {\n\t\tcursor: text;\n\t}\n\n\tinput[type='checkbox'],\n\tinput[type='color'],\n\tinput[type='file'],\n\tinput[type='radio'],\n\tinput[type='range'],\n\tlabel,\n\toption,\n\tselect {\n\t\tcursor: pointer;\n\t}\n\n\t/* input[type='checkbox'], */\n\t/* input[type='radio'], */\n\t/* input[type='range'], */\n\tinput[type='color'],\n\tinput[type='date'],\n\tinput[type='datetime-local'],\n\tinput[type='email'],\n\tinput[type='file'],\n\tinput[type='month'],\n\tinput[type='number'],\n\tinput[type='password'],\n\tinput[type='search'],\n\tinput[type='tel'],\n\tinput[type='text'],\n\tinput[type='time'],\n\tinput[type='url'],\n\tinput[type='week'],\n\tselect,\n\tselect[multiple] option,\n\ttextarea {\n\t\tfont-size: 1rem;\n\t\twidth: 100%;\n\t}\n\n\t/* needed hack for vertical alignment */\n\tinput[type='file'] {\n\t\tpadding: calc((var(--a11y-min-size) - 1rem) / 10) 0.5em;\n\t}\n\n\t/* needed hack for vertical alignment */\n\tselect[multiple] option {\n\t\tpadding: calc((var(--a11y-min-size) - 1rem) / 2) 0.5em;\n\t}\n\n\tkol-input.disabled :is(button, input, label, option, select, textarea) {\n\t\tcursor: not-allowed;\n\t\topacity: 0.5;\n\t}\n}\n\n@layer kol-component {\n\tkol-input {\n\t\tdisplay: grid;\n\t}\n\n\tkol-input .input-slot {\n\t\tflex-grow: 1;\n\t}\n\n\tinput:not([type='checkbox'], [type='radio']),\n\tselect:not([multiple], [size]) {\n\t\theight: 2.75em;\n\t}\n\n\tinput:focus,\n\toption:focus,\n\tselect:focus,\n\ttextarea:focus {\n\t\toutline: 0;\n\t}\n\n\t.input {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t.input > kol-icon {\n\t\tdisplay: grid;\n\t\theight: var(--a11y-min-size);\n\t\tplace-items: center;\n\t}\n\n\tkol-input.required .input-tooltip .span-label::after {\n\t\tcontent: '*';\n\t}\n}\n\n@layer kol-component {\n\t.error.hidden {\n\t\tdisplay: none;\n\t}\n}\n",isSelected=(t,e)=>Array.isArray(t)&&t.includes(e),KolSelect=class{async getValue(){return this._value}renderOptgroup(t,e){var n;return h("optgroup",{disabled:t.disabled,label:t.label},null===(n=t.options)||void 0===n?void 0:n.map(((t,n)=>{const i=`${e}-${n}`;return Array.isArray(t.options)?this.renderOptgroup(t,i):h("option",{disabled:t.disabled,key:i,selected:isSelected(this.state._value,t.value),value:i},t.label)})))}render(){const{ariaDescribedBy:t}=getRenderStates(this.state),e=showExpertSlot(this.state._label);return h(Host,{class:{"has-value":this.state._hasValue}},h("kol-input",{class:{"hide-label":!!this.state._hideLabel,select:!0},_accessKey:this.state._accessKey,_disabled:this.state._disabled,_error:this.state._error,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},h("span",{slot:"label"},e?h("slot",{name:"expert"}):"string"==typeof this.state._accessKey?h(Fragment,null,h(InternalUnderlinedAccessKey,{accessKey:this.state._accessKey,label:this.state._label})," ",h("span",{class:"access-key-hint","aria-hidden":"true"},this.state._accessKey)):h("span",null,this.state._label)),h("div",{slot:"input"},h("select",{ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,autoCapitalize:"off",autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,multiple:this.state._multiple,name:this.state._name,required:this.state._required,size:this.state._rows,spellcheck:"false",onClick:this.controller.onFacade.onClick,onBlur:this.controller.onFacade.onBlur,onFocus:this.controller.onFacade.onFocus,onChange:this.onChange},this.state._options.map(((t,e)=>{const n=`-${e}`;return Array.isArray(t.options)?this.renderOptgroup(t,n):h("option",{disabled:t.disabled,key:n,selected:isSelected(this.state._value,t.value),value:n},t.label)}))))))}constructor(t){registerInstance(this,t),this.catchRef=t=>{this.ref=t,propagateFocus(this.host,this.ref)},this.onChange=t=>{var e,n;this._value=Array.from((null===(e=this.ref)||void 0===e?void 0:e.options)||[]).filter((t=>!0===t.selected)).map((t=>{var e;return null===(e=this.controller.getOptionByKey(t.value))||void 0===e?void 0:e.value})),stopPropagation(t),tryToDispatchKoliBriEvent("change",this.host,this._value),this.controller.setFormAssociatedValue(this._value),"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n.onChange)&&this.state._on.onChange(t,this._value)},this._accessKey=void 0,this._alert=!0,this._disabled=!1,this._error=void 0,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._multiple=!1,this._name=void 0,this._on=void 0,this._options=void 0,this._required=!1,this._rows=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._value=void 0,this.state={_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_multiple:!1,_options:[],_value:[]},this.controller=new SelectController(this,"select",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateDisabled(t){this.controller.validateDisabled(t)}validateError(t){this.controller.validateError(t)}validateHideError(t){this.controller.validateHideError(t)}validateHideLabel(t){this.controller.validateHideLabel(t)}validateHint(t){this.controller.validateHint(t)}validateIcons(t){this.controller.validateIcons(t)}validateId(t){this.controller.validateId(t)}validateLabel(t){this.controller.validateLabel(t)}validateMultiple(t){this.controller.validateMultiple(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateOptions(t){this.controller.validateOptions(t)}validateRequired(t){this.controller.validateRequired(t)}validateRows(t){this.controller.validateRows(t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateValue(t){this.controller.validateValue(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(this.onChange),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((t=>this.state._hasValue=!!t))}get host(){return getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_multiple:["validateMultiple"],_name:["validateName"],_on:["validateOn"],_options:["validateOptions"],_required:["validateRequired"],_rows:["validateRows"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}};KolSelect.style={default:defaultStyleCss};export{KolSelect as kol_select};
@@ -1 +1 @@
1
- {"file":"kol-select.entry.js","mappings":"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","names":[],"sources":["src/components/select/controller.ts","src/components/select/style.css?tag=kol-select&mode=default&encapsulation=shadow","src/components/select/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { Stringified } from '../../types/common';\nimport { Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { HideErrorPropType, validateHideError } from '../../types/props/hide-error';\nimport { OptionsWithOptgroupPropType, validateOptionsWithOptgroup } from '../../types/props/options';\nimport { RowsPropType, validateRows } from '../../types/props/rows';\nimport { W3CInputValue } from '../../types/w3c';\nimport { a11yHint } from '../../utils/a11y.tipps';\nimport { watchBoolean, watchJsonArrayString } from '../../utils/prop.validators';\nimport { STATE_CHANGE_EVENT } from '../../utils/validator';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { fillKeyOptionMap } from '../input-radio/controller';\nimport { Props, Watches } from './types';\n\nexport class SelectController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate onStateChange!: () => void;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprivate readonly isValueInOptions = (value: string, options: SelectOption<W3CInputValue>[]): boolean => {\n\t\treturn (\n\t\t\toptions.find((option) =>\n\t\t\t\ttypeof (option as Option<W3CInputValue>).value === 'string'\n\t\t\t\t\t? (option as Option<W3CInputValue>).value === value\n\t\t\t\t\t: Array.isArray((option as Optgroup<string>).options)\n\t\t\t\t\t? this.isValueInOptions(value, (option as Optgroup<string>).options)\n\t\t\t\t\t: false\n\t\t\t) !== undefined\n\t\t);\n\t};\n\n\tprivate readonly filterValuesInOptions = (values: string[], options: SelectOption<W3CInputValue>[]): string[] => {\n\t\treturn values.filter((value) => this.isValueInOptions(value, options) !== undefined);\n\t};\n\n\tprivate readonly beforePatchOptions = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;\n\t\tif (Array.isArray(options) && options.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, options as SelectOption<W3CInputValue>[]);\n\t\t\tconst value = nextState.has('_value') ? nextState.get('_value') : this.component.state._value;\n\t\t\tconst selected = this.filterValuesInOptions(\n\t\t\t\tArray.isArray(value) && value.length > 0 ? (value as string[]) : [],\n\t\t\t\toptions as SelectOption<W3CInputValue>[]\n\t\t\t);\n\t\t\tif (this.component._multiple === false && selected.length === 0) {\n\t\t\t\tnextState.set('_value', [\n\t\t\t\t\t(\n\t\t\t\t\t\toptions[0] as {\n\t\t\t\t\t\t\tvalue: string;\n\t\t\t\t\t\t}\n\t\t\t\t\t).value,\n\t\t\t\t]);\n\t\t\t\tthis.onStateChange();\n\t\t\t} else if (Array.isArray(value) && selected.length < value.length) {\n\t\t\t\tnextState.set('_value', selected);\n\t\t\t\tthis.onStateChange();\n\t\t\t}\n\t\t}\n\t};\n\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tvalidateHideError(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideError) {\n\t\t\t\t\t\ta11yHint('Property hide-error for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateOptions(value?: OptionsWithOptgroupPropType): void {\n\t\tvalidateOptionsWithOptgroup(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t\t// if (value === true) {\n\t\t// \tdevHint(\n\t\t// \t\t'[KolSelect] Aktuell wird die Mehrfachauswahl noch nicht unterstützt. Wir sind dran die Mehrfachauswahl funktionsfähig zu implementieren, da der Browser-Standard hier ein paar Lücken hat.'\n\t\t// \t);\n\t\t// \tdevHint('[KolSelect] Bei der Mehrfachauswahl sollte zusätzlich auch die Listenlänge (size) gesetzt werden.');\n\t\t// }\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateRows(value?: RowsPropType) {\n\t\tvalidateRows(this.component, value);\n\t}\n\n\tpublic validateValue(value?: Stringified<W3CInputValue[]>): void {\n\t\twatchJsonArrayString(this.component, '_value', () => true, value, undefined, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\tpublic componentWillLoad(onChange?: (event: Event) => void): void {\n\t\tsuper.componentWillLoad();\n\n\t\tthis.onStateChange = () => {\n\t\t\tif (typeof onChange === 'function') {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tclearTimeout(timeout);\n\t\t\t\t\tonChange(STATE_CHANGE_EVENT);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tthis.validateHideError(this.component._hideError);\n\t\tthis.validateOptions(this.component._options);\n\t\tthis.validateMultiple(this.component._multiple);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateRows(this.component._rows);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import url(../input-line.css);\n.error.hidden {\n\tdisplay: none;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { KoliBriHorizontalIcons } from '../../types/icons';\nimport { InputTypeOnDefault, Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { HideErrorPropType } from '../../types/props/hide-error';\nimport { IdPropType } from '../../types/props/id';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { NamePropType } from '../../types/props/name';\nimport { OptionsWithOptgroupPropType } from '../../types/props/options';\nimport { RowsPropType } from '../../types/props/rows';\nimport { SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { W3CInputValue } from '../../types/w3c';\nimport { nonce } from '../../utils/dev.utils';\nimport { stopPropagation, tryToDispatchKoliBriEvent } from '../../utils/events';\nimport { propagateFocus, showExpertSlot } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { SelectController } from './controller';\nimport { API, States } from './types';\n\nconst isSelected = (valueList: unknown[] | null, optionValue: unknown): boolean => {\n\treturn Array.isArray(valueList) && valueList.includes(optionValue);\n};\n\n/**\n * @slot - Die Beschriftung des Eingabefeldes.\n */\n@Component({\n\ttag: 'kol-select',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolSelect implements API {\n\t@Element() private readonly host?: HTMLKolSelectElement;\n\tprivate ref?: HTMLSelectElement;\n\n\tprivate readonly catchRef = (ref?: HTMLSelectElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tprivate renderOptgroup(optgroup: Optgroup<string>, preKey: string): JSX.Element {\n\t\treturn (\n\t\t\t<optgroup disabled={optgroup.disabled} label={optgroup.label}>\n\t\t\t\t{optgroup.options?.map((option: SelectOption<W3CInputValue>, index: number) => {\n\t\t\t\t\tconst key = `${preKey}-${index}`;\n\t\t\t\t\tif (Array.isArray((option as Optgroup<string>).options)) {\n\t\t\t\t\t\treturn this.renderOptgroup(option as Optgroup<string>, key);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\t\t\t// label={option.label}\n\t\t\t\t\t\t\t\tselected={isSelected(this.state._value, (option as Option<W3CInputValue>).value)}\n\t\t\t\t\t\t\t\tvalue={key}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</optgroup>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\n\t\treturn (\n\t\t\t<Host class={{ 'has-value': this.state._hasValue }}>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'hide-label': !!this.state._hideLabel,\n\t\t\t\t\t\tselect: true,\n\t\t\t\t\t}}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideError={this.state._hideError}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_icons={this.state._icons}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t\tonClick={() => this.ref?.focus()}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">{hasExpertSlot ? <slot name=\"expert\"></slot> : this.state._label}</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<select\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\tsize={this.state._rows}\n\t\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\tonClick: this.controller.onFacade.onClick,\n\t\t\t\t\t\t\t\tonBlur: this.controller.onFacade.onBlur,\n\t\t\t\t\t\t\t\tonFocus: this.controller.onFacade.onFocus,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.state._options.map((option, index) => {\n\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t * Damit der Value einer Option ein beliebigen Typ haben kann\n\t\t\t\t\t\t\t\t * muss man auf HTML-Ebene den Value auf einen String-Wert\n\t\t\t\t\t\t\t\t * mappen. Das tun wir mittels der Map.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\tconst key = `-${index}`;\n\t\t\t\t\t\t\t\tif (Array.isArray((option as unknown as Optgroup<string>).options)) {\n\t\t\t\t\t\t\t\t\treturn this.renderOptgroup(option as unknown as Optgroup<string>, key);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\t\t\t\t\t\t// label={option.label}\n\t\t\t\t\t\t\t\t\t\t\tselected={isSelected(this.state._value, (option as unknown as Option<W3CInputValue>).value)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={key}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t\t\t\t</option>\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</select>\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: SelectController;\n\n\t/**\n\t * Defines which key combination can be used to trigger or focus the interactive element of the component.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Defines the error message text.\n\t */\n\t@Prop() public _error?: string;\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 `HideErrorPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _hideError?: 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?: Stringified<KoliBriHorizontalIcons>;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\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 * Makes the input accept multiple inputs.\n\t * @TODO: Change type back to `MultiplePropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _multiple?: boolean = false;\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, also supporting Optgroup.\n\t */\n\t@Prop() public _options?: OptionsWithOptgroupPropType;\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 * Defines how many rows of options should be visible at the same time.\n\t */\n\t@Prop() public _rows?: RowsPropType;\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 which tab-index the primary element of the component has. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\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 input.\n\t */\n\t@Prop({ mutable: true }) public _value?: Stringified<W3CInputValue[]>;\n\n\t@State() public state: States = {\n\t\t_hasValue: false,\n\t\t_hideError: false,\n\t\t_id: `id-${nonce()}`, // ⚠ required\n\t\t_label: '', // ⚠ required\n\t\t_multiple: false,\n\t\t_options: [],\n\t\t_value: [],\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new SelectController(this, 'select', this.host);\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('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideError')\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tthis.controller.validateHideError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: Stringified<KoliBriHorizontalIcons>): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(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('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tthis.controller.validateMultiple(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?: OptionsWithOptgroupPropType): void {\n\t\tthis.controller.validateOptions(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_rows')\n\tpublic validateRows(value?: RowsPropType): void {\n\t\tthis.controller.validateRows(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('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(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?: Stringified<W3CInputValue[]>): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad(this.onChange);\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n\n\tprivate onChange = (event: Event): void => {\n\t\tthis._value = Array.from(this.ref?.options || [])\n\t\t\t.filter((option) => option.selected === true)\n\t\t\t.map((option) => this.controller.getOptionByKey(option.value)?.value as string);\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('change', this.host, this._value);\n\n\t\t// Static form handling\n\t\tthis.controller.setFormAssociatedValue(this._value as unknown as string);\n\n\t\t// Callback\n\t\tif (typeof this.state._on?.onChange === 'function') {\n\t\t\tthis.state._on.onChange(event, this._value);\n\t\t}\n\t};\n}\n"],"version":3}
1
+ {"file":"kol-select.entry.js","mappings":"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","names":[],"sources":["src/components/select/controller.ts","src/components/select/style.css?tag=kol-select&mode=default&encapsulation=shadow","src/components/select/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { Stringified } from '../../types/common';\nimport { Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { HideErrorPropType, validateHideError } from '../../types/props/hide-error';\nimport { OptionsWithOptgroupPropType, validateOptionsWithOptgroup } from '../../types/props/options';\nimport { RowsPropType, validateRows } from '../../types/props/rows';\nimport { W3CInputValue } from '../../types/w3c';\nimport { a11yHint } from '../../utils/a11y.tipps';\nimport { watchBoolean, watchJsonArrayString } from '../../utils/prop.validators';\nimport { STATE_CHANGE_EVENT } from '../../utils/validator';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { fillKeyOptionMap } from '../input-radio/controller';\nimport { Props, Watches } from './types';\n\nexport class SelectController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate onStateChange!: () => void;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprivate readonly isValueInOptions = (value: string, options: SelectOption<W3CInputValue>[]): boolean => {\n\t\treturn (\n\t\t\toptions.find((option) =>\n\t\t\t\ttypeof (option as Option<W3CInputValue>).value === 'string'\n\t\t\t\t\t? (option as Option<W3CInputValue>).value === value\n\t\t\t\t\t: Array.isArray((option as Optgroup<string>).options)\n\t\t\t\t\t? this.isValueInOptions(value, (option as Optgroup<string>).options)\n\t\t\t\t\t: false\n\t\t\t) !== undefined\n\t\t);\n\t};\n\n\tprivate readonly filterValuesInOptions = (values: string[], options: SelectOption<W3CInputValue>[]): string[] => {\n\t\treturn values.filter((value) => this.isValueInOptions(value, options) !== undefined);\n\t};\n\n\tprivate readonly beforePatchOptions = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;\n\t\tif (Array.isArray(options) && options.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, options as SelectOption<W3CInputValue>[]);\n\t\t\tconst value = nextState.has('_value') ? nextState.get('_value') : this.component.state._value;\n\t\t\tconst selected = this.filterValuesInOptions(\n\t\t\t\tArray.isArray(value) && value.length > 0 ? (value as string[]) : [],\n\t\t\t\toptions as SelectOption<W3CInputValue>[]\n\t\t\t);\n\t\t\tif (this.component._multiple === false && selected.length === 0) {\n\t\t\t\tnextState.set('_value', [\n\t\t\t\t\t(\n\t\t\t\t\t\toptions[0] as {\n\t\t\t\t\t\t\tvalue: string;\n\t\t\t\t\t\t}\n\t\t\t\t\t).value,\n\t\t\t\t]);\n\t\t\t\tthis.onStateChange();\n\t\t\t} else if (Array.isArray(value) && selected.length < value.length) {\n\t\t\t\tnextState.set('_value', selected);\n\t\t\t\tthis.onStateChange();\n\t\t\t}\n\t\t}\n\t};\n\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tvalidateHideError(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideError) {\n\t\t\t\t\t\ta11yHint('Property hide-error for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateOptions(value?: OptionsWithOptgroupPropType): void {\n\t\tvalidateOptionsWithOptgroup(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t\t// if (value === true) {\n\t\t// \tdevHint(\n\t\t// \t\t'[KolSelect] Aktuell wird die Mehrfachauswahl noch nicht unterstützt. Wir sind dran die Mehrfachauswahl funktionsfähig zu implementieren, da der Browser-Standard hier ein paar Lücken hat.'\n\t\t// \t);\n\t\t// \tdevHint('[KolSelect] Bei der Mehrfachauswahl sollte zusätzlich auch die Listenlänge (size) gesetzt werden.');\n\t\t// }\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateRows(value?: RowsPropType) {\n\t\tvalidateRows(this.component, value);\n\t}\n\n\tpublic validateValue(value?: Stringified<W3CInputValue[]>): void {\n\t\twatchJsonArrayString(this.component, '_value', () => true, value, undefined, {\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\tpublic componentWillLoad(onChange?: (event: Event) => void): void {\n\t\tsuper.componentWillLoad();\n\n\t\tthis.onStateChange = () => {\n\t\t\tif (typeof onChange === 'function') {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tclearTimeout(timeout);\n\t\t\t\t\tonChange(STATE_CHANGE_EVENT);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tthis.validateHideError(this.component._hideError);\n\t\tthis.validateOptions(this.component._options);\n\t\tthis.validateMultiple(this.component._multiple);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateRows(this.component._rows);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import url(../input-line.css);\n@layer kol-component {\n\t.error.hidden {\n\t\tdisplay: none;\n\t}\n}\n","import { Component, Element, Fragment, h, Host, JSX, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { KoliBriHorizontalIcons } from '../../types/icons';\nimport { InputTypeOnDefault, Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { HideErrorPropType } from '../../types/props/hide-error';\nimport { IdPropType } from '../../types/props/id';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { NamePropType } from '../../types/props/name';\nimport { OptionsWithOptgroupPropType } from '../../types/props/options';\nimport { RowsPropType } from '../../types/props/rows';\nimport { SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { W3CInputValue } from '../../types/w3c';\nimport { nonce } from '../../utils/dev.utils';\nimport { stopPropagation, tryToDispatchKoliBriEvent } from '../../utils/events';\nimport { propagateFocus, showExpertSlot } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { InternalUnderlinedAccessKey } from '../span/InternalUnderlinedAccessKey';\nimport { SelectController } from './controller';\nimport { API, States } from './types';\n\nconst isSelected = (valueList: unknown[] | null, optionValue: unknown): boolean => {\n\treturn Array.isArray(valueList) && valueList.includes(optionValue);\n};\n\n/**\n * @slot - Die Beschriftung des Eingabefeldes.\n */\n@Component({\n\ttag: 'kol-select',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolSelect implements API {\n\t@Element() private readonly host?: HTMLKolSelectElement;\n\tprivate ref?: HTMLSelectElement;\n\n\tprivate readonly catchRef = (ref?: HTMLSelectElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\t@Method()\n\tpublic async getValue(): Promise<Stringified<W3CInputValue[]> | undefined> {\n\t\treturn this._value;\n\t}\n\n\tprivate renderOptgroup(optgroup: Optgroup<string>, preKey: string): JSX.Element {\n\t\treturn (\n\t\t\t<optgroup disabled={optgroup.disabled} label={optgroup.label}>\n\t\t\t\t{optgroup.options?.map((option: SelectOption<W3CInputValue>, index: number) => {\n\t\t\t\t\tconst key = `${preKey}-${index}`;\n\t\t\t\t\tif (Array.isArray((option as Optgroup<string>).options)) {\n\t\t\t\t\t\treturn this.renderOptgroup(option as Optgroup<string>, key);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\t\t\t// label={option.label}\n\t\t\t\t\t\t\t\tselected={isSelected(this.state._value, (option as Option<W3CInputValue>).value)}\n\t\t\t\t\t\t\t\tvalue={key}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</optgroup>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\n\t\treturn (\n\t\t\t<Host class={{ 'has-value': this.state._hasValue }}>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'hide-label': !!this.state._hideLabel,\n\t\t\t\t\t\tselect: true,\n\t\t\t\t\t}}\n\t\t\t\t\t_accessKey={this.state._accessKey}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideError={this.state._hideError}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_icons={this.state._icons}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t\tonClick={() => this.ref?.focus()}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t{hasExpertSlot ? (\n\t\t\t\t\t\t\t<slot name=\"expert\"></slot>\n\t\t\t\t\t\t) : typeof this.state._accessKey === 'string' ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<InternalUnderlinedAccessKey accessKey={this.state._accessKey} label={this.state._label} />{' '}\n\t\t\t\t\t\t\t\t<span class=\"access-key-hint\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t{this.state._accessKey}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span>{this.state._label}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<select\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\tsize={this.state._rows}\n\t\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\tonClick: this.controller.onFacade.onClick,\n\t\t\t\t\t\t\t\tonBlur: this.controller.onFacade.onBlur,\n\t\t\t\t\t\t\t\tonFocus: this.controller.onFacade.onFocus,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.state._options.map((option, index) => {\n\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t * Damit der Value einer Option ein beliebigen Typ haben kann\n\t\t\t\t\t\t\t\t * muss man auf HTML-Ebene den Value auf einen String-Wert\n\t\t\t\t\t\t\t\t * mappen. Das tun wir mittels der Map.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\tconst key = `-${index}`;\n\t\t\t\t\t\t\t\tif (Array.isArray((option as unknown as Optgroup<string>).options)) {\n\t\t\t\t\t\t\t\t\treturn this.renderOptgroup(option as unknown as Optgroup<string>, key);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\t\t\t\t\t\t// label={option.label}\n\t\t\t\t\t\t\t\t\t\t\tselected={isSelected(this.state._value, (option as unknown as Option<W3CInputValue>).value)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={key}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t\t\t\t</option>\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</select>\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: SelectController;\n\n\t/**\n\t * Defines which key combination can be used to trigger or focus the interactive element of the component.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Defines the error message text.\n\t */\n\t@Prop() public _error?: string;\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 `HideErrorPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _hideError?: 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?: Stringified<KoliBriHorizontalIcons>;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\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 * Makes the input accept multiple inputs.\n\t * @TODO: Change type back to `MultiplePropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _multiple?: boolean = false;\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, also supporting Optgroup.\n\t */\n\t@Prop() public _options?: OptionsWithOptgroupPropType;\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 * Defines how many rows of options should be visible at the same time.\n\t */\n\t@Prop() public _rows?: RowsPropType;\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 which tab-index the primary element of the component has. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\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 input.\n\t */\n\t@Prop({ mutable: true }) public _value?: Stringified<W3CInputValue[]>;\n\n\t@State() public state: States = {\n\t\t_hasValue: false,\n\t\t_hideError: false,\n\t\t_id: `id-${nonce()}`, // ⚠ required\n\t\t_label: '', // ⚠ required\n\t\t_multiple: false,\n\t\t_options: [],\n\t\t_value: [],\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new SelectController(this, 'select', this.host);\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('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideError')\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tthis.controller.validateHideError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: Stringified<KoliBriHorizontalIcons>): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(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('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tthis.controller.validateMultiple(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?: OptionsWithOptgroupPropType): void {\n\t\tthis.controller.validateOptions(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_rows')\n\tpublic validateRows(value?: RowsPropType): void {\n\t\tthis.controller.validateRows(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('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(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?: Stringified<W3CInputValue[]>): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad(this.onChange);\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n\n\tprivate onChange = (event: Event): void => {\n\t\tthis._value = Array.from(this.ref?.options || [])\n\t\t\t.filter((option) => option.selected === true)\n\t\t\t.map((option) => this.controller.getOptionByKey(option.value)?.value as string);\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('change', this.host, this._value);\n\n\t\t// Static form handling\n\t\tthis.controller.setFormAssociatedValue(this._value as unknown as string);\n\n\t\t// Callback\n\t\tif (typeof this.state._on?.onChange === 'function') {\n\t\t\tthis.state._on.onChange(event, this._value);\n\t\t}\n\t};\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as registerInstance,h}from"./index-d0c806ea.js";import{v as validateLabel}from"./label-0d258cd5.js";import{r as removeNavLabel,a as addNavLabel}from"./unique-nav-labels-c6750f60.js";import{w as watchNavLinks}from"./validation-61e035d7.js";import"./a11y.tipps-583a2096.js";import"./dev.utils-2a853234.js";import"./reuse-b3566e4c.js";import"./prop.validators-125a3282.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}ul{display:grid;list-style:none;place-items:center}ul li{height:0}kol-link-wc a{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}kol-link-wc a:focus{background-color:#fff;left:unset;position:unset}",KolSkipNav=class{constructor(a){registerInstance(this,a),this._label=void 0,this._links=void 0,this.state={_label:"…",_links:[]}}render(){return h("nav",{"aria-label":this.state._label},h("ul",null,this.state._links.map(((a,t)=>h("li",{key:t},h("kol-link-wc",Object.assign({},a)))))))}validateLabel(a,t,e=!1){e||removeNavLabel(this.state._label),validateLabel(this,a),addNavLabel(this.state._label)}validateLinks(a){watchNavLinks("KolSkipNav",this,a)}componentWillLoad(){this.validateLabel(this._label,void 0,!0),this.validateLinks(this._links)}disconnectedCallback(){removeNavLabel(this.state._label)}static get watchers(){return{_label:["validateLabel"],_links:["validateLinks"]}}};KolSkipNav.style={default:defaultStyleCss};export{KolSkipNav as kol_skip_nav};
4
+ import{r as registerInstance,h}from"./index-0bc40dc4.js";import{v as validateLabel}from"./label-7afcc6a9.js";import{r as removeNavLabel,a as addNavLabel}from"./unique-nav-labels-c6750f60.js";import{w as watchNavLinks}from"./validation-7b943391.js";import"./a11y.tipps-68791110.js";import"./dev.utils-8202a1bc.js";import"./reuse-b3566e4c.js";import"./prop.validators-3fb6bedf.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\tul {\n\t\tdisplay: grid;\n\t\tlist-style: none;\n\t\tplace-items: center;\n\t}\n\n\tul li {\n\t\theight: 0;\n\t}\n\n\tkol-link-wc a {\n\t\tleft: -99999px;\n\t\toverflow: hidden;\n\t\tposition: absolute;\n\t\tz-index: 9999999;\n\t\tline-height: 1em;\n\t}\n\n\tkol-link-wc a:focus {\n\t\tbackground-color: #fff;\n\t\tleft: unset;\n\t\tposition: unset;\n\t}\n}\n",KolSkipNav=class{constructor(t){registerInstance(this,t),this._label=void 0,this._links=void 0,this.state={_label:"…",_links:[]}}render(){return h("nav",{"aria-label":this.state._label},h("ul",null,this.state._links.map(((t,n)=>h("li",{key:n},h("kol-link-wc",Object.assign({},t)))))))}validateLabel(t,n,e=!1){e||removeNavLabel(this.state._label),validateLabel(this,t),addNavLabel(this.state._label)}validateLinks(t){watchNavLinks("KolSkipNav",this,t)}componentWillLoad(){this.validateLabel(this._label,void 0,!0),this.validateLinks(this._links)}disconnectedCallback(){removeNavLabel(this.state._label)}static get watchers(){return{_label:["validateLabel"],_links:["validateLinks"]}}};KolSkipNav.style={default:defaultStyleCss};export{KolSkipNav as kol_skip_nav};
@@ -1 +1 @@
1
- {"file":"kol-skip-nav.entry.js","mappings":";;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,86BAA86B;;MCgBz7B,UAAU;;;;;iBA2BU;MAC/B,MAAM,EAAE,GAAG;MACX,MAAM,EAAE,EAAE;KACV;;EA7BM,MAAM;IACZ,QACC,yBAAiB,IAAI,CAAC,KAAK,CAAC,MAAM,IACjC,cACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAe,EAAE,KAAa;MACrD,QACC,UAAI,GAAG,EAAE,KAAK,IACb,mCAAiB,IAAI,EAAgB,CACjC,EACJ;KACF,CAAC,CACE,CACA,EACL;GACF;EAkBM,aAAa,CAAC,KAAqB,EAAE,SAAyB,EAAE,OAAO,GAAG,KAAK;IACrF,IAAI,CAAC,OAAO,EAAE;MACb,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAClC;IACD,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;GAC/B;EAGM,aAAa,CAAC,KAAgC;IACpD,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;GACzC;EAEM,iBAAiB;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChC;EAEM,oBAAoB;IAC1B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;GAClC;;;;;;;;;;;;","names":[],"sources":["src/components/skip-nav/style.css?tag=kol-skip-nav&mode=default&encapsulation=shadow","src/components/skip-nav/component.tsx"],"sourcesContent":["@import url(../style.css);\nul {\n\tdisplay: grid;\n\tlist-style: none;\n\tplace-items: center;\n}\nul li {\n\theight: 0;\n}\nkol-link-wc a {\n\tleft: -99999px;\n\toverflow: hidden;\n\tposition: absolute;\n\tz-index: 9999999;\n\tline-height: 1em;\n}\nkol-link-wc a:focus {\n\tbackground-color: #fff;\n\tleft: unset;\n\tposition: unset;\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { LinkProps } from '../link/types';\nimport { watchNavLinks } from '../nav/validation';\nimport { API, States } from './types';\n\n@Component({\n\ttag: 'kol-skip-nav',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolSkipNav implements API {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav aria-label={this.state._label}>\n\t\t\t\t<ul>\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 key={index}>\n\t\t\t\t\t\t\t\t<kol-link-wc {...link}></kol-link-wc>\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 * 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: States = {\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\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"],"version":3}
1
+ {"file":"kol-skip-nav.entry.js","mappings":";;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,8mGAA8mG;;MCgBznG,UAAU;;;;;iBA2BU;MAC/B,MAAM,EAAE,GAAG;MACX,MAAM,EAAE,EAAE;KACV;;EA7BM,MAAM;IACZ,QACC,yBAAiB,IAAI,CAAC,KAAK,CAAC,MAAM,IACjC,cACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAe,EAAE,KAAa;MACrD,QACC,UAAI,GAAG,EAAE,KAAK,IACb,mCAAiB,IAAI,EAAgB,CACjC,EACJ;KACF,CAAC,CACE,CACA,EACL;GACF;EAkBM,aAAa,CAAC,KAAqB,EAAE,SAAyB,EAAE,OAAO,GAAG,KAAK;IACrF,IAAI,CAAC,OAAO,EAAE;MACb,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAClC;IACD,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;GAC/B;EAGM,aAAa,CAAC,KAAgC;IACpD,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;GACzC;EAEM,iBAAiB;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChC;EAEM,oBAAoB;IAC1B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;GAClC;;;;;;;;;;;;","names":[],"sources":["src/components/skip-nav/style.css?tag=kol-skip-nav&mode=default&encapsulation=shadow","src/components/skip-nav/component.tsx"],"sourcesContent":["@import url(../style.css);\n@layer kol-component {\n\tul {\n\t\tdisplay: grid;\n\t\tlist-style: none;\n\t\tplace-items: center;\n\t}\n\n\tul li {\n\t\theight: 0;\n\t}\n\n\tkol-link-wc a {\n\t\tleft: -99999px;\n\t\toverflow: hidden;\n\t\tposition: absolute;\n\t\tz-index: 9999999;\n\t\tline-height: 1em;\n\t}\n\n\tkol-link-wc a:focus {\n\t\tbackground-color: #fff;\n\t\tleft: unset;\n\t\tposition: unset;\n\t}\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { LinkProps } from '../link/types';\nimport { watchNavLinks } from '../nav/validation';\nimport { API, States } from './types';\n\n@Component({\n\ttag: 'kol-skip-nav',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolSkipNav implements API {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav aria-label={this.state._label}>\n\t\t\t\t<ul>\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 key={index}>\n\t\t\t\t\t\t\t\t<kol-link-wc {...link}></kol-link-wc>\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 * 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: States = {\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\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"],"version":3}