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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/custom-elements.json +187 -15
  2. package/dist/cjs/{InternalUnderlinedAccessKey-61da3b43.js → InternalUnderlinedAccessKey-3951c769.js} +1 -1
  3. package/dist/cjs/{InternalUnderlinedAccessKey-61da3b43.js.map → InternalUnderlinedAccessKey-3951c769.js.map} +1 -1
  4. package/dist/cjs/{app-globals-a40ad030.js → app-globals-13285c37.js} +1 -1
  5. package/dist/cjs/{app-globals-a40ad030.js.map → app-globals-13285c37.js.map} +1 -1
  6. package/dist/cjs/aria-expanded-be98ced6.js +4 -0
  7. package/dist/cjs/aria-expanded-be98ced6.js.map +1 -0
  8. package/dist/cjs/associated.controller-17a88d17.js +4 -0
  9. package/dist/cjs/associated.controller-17a88d17.js.map +1 -0
  10. package/dist/cjs/component-names-f704607d.js +4 -0
  11. package/dist/cjs/component-names-f704607d.js.map +1 -0
  12. package/dist/cjs/{controller-c859dca1.js → controller-42b3f8a1.js} +1 -1
  13. package/dist/cjs/{controller-c859dca1.js.map → controller-42b3f8a1.js.map} +1 -1
  14. package/dist/cjs/{controller-6f51903f.js → controller-bd9f9fcd.js} +1 -1
  15. package/dist/cjs/controller-bd9f9fcd.js.map +1 -0
  16. package/dist/cjs/{controller-dbb37c4c.js → controller-cbd26426.js} +1 -1
  17. package/dist/cjs/controller-cbd26426.js.map +1 -0
  18. package/dist/cjs/controller-e2f6b61c.js +4 -0
  19. package/dist/cjs/controller-e2f6b61c.js.map +1 -0
  20. package/dist/cjs/{controller-99650aa7.js → controller-f984e45f.js} +1 -1
  21. package/dist/cjs/{controller-99650aa7.js.map → controller-f984e45f.js.map} +1 -1
  22. package/dist/cjs/{controller-icon-38a32576.js → controller-icon-885a15b3.js} +1 -1
  23. package/dist/cjs/{controller-icon-38a32576.js.map → controller-icon-885a15b3.js.map} +1 -1
  24. package/dist/cjs/{dev.utils-6e336a33.js → dev.utils-edbe192a.js} +1 -1
  25. package/dist/cjs/{dev.utils-6e336a33.js.map → dev.utils-edbe192a.js.map} +1 -1
  26. package/dist/cjs/{devtools-4863fc5a.js → devtools-a43c79b4.js} +1 -1
  27. package/dist/cjs/{devtools-4863fc5a.js.map → devtools-a43c79b4.js.map} +1 -1
  28. package/dist/cjs/events-a0477b5a.js.map +1 -1
  29. package/dist/cjs/{form-field-msg-0946b56a.js → form-field-msg-eb812022.js} +1 -1
  30. package/dist/cjs/{form-field-msg-0946b56a.js.map → form-field-msg-eb812022.js.map} +1 -1
  31. package/dist/cjs/i18n-41ebfcca.js +4 -0
  32. package/dist/cjs/i18n-41ebfcca.js.map +1 -0
  33. package/dist/cjs/{i18n-e623dc7e.js → i18n-c8be9482.js} +1 -1
  34. package/dist/cjs/{i18n-e623dc7e.js.map → i18n-c8be9482.js.map} +1 -1
  35. package/dist/cjs/index-afb88da6.js +4 -0
  36. package/dist/cjs/{index-706e6712.js.map → index-afb88da6.js.map} +1 -1
  37. package/dist/cjs/index.cjs.js +1 -1
  38. package/dist/cjs/index.cjs.js.map +1 -1
  39. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-alert-wc.cjs.entry.js.map +1 -1
  43. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  47. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  53. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-button-wc.cjs.entry.js.map +1 -1
  55. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-combobox.cjs.entry.js.map +1 -1
  60. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-indented-text-wc.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  86. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-single-select.cjs.entry.js +4 -0
  101. package/dist/cjs/kol-single-select.cjs.entry.js.map +1 -0
  102. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-table-stateless.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-tree-item-wc.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  126. package/dist/cjs/kolibri.cjs.js +1 -1
  127. package/dist/cjs/loader.cjs.js +1 -1
  128. package/dist/components/aria-expanded.js +1 -1
  129. package/dist/components/aria-expanded.js.map +1 -1
  130. package/dist/components/associated.controller.js +1 -1
  131. package/dist/components/associated.controller.js.map +1 -1
  132. package/dist/components/component-names.js +1 -1
  133. package/dist/components/component-names.js.map +1 -1
  134. package/dist/components/controller2.js +1 -1
  135. package/dist/components/controller2.js.map +1 -1
  136. package/dist/components/controller3.js +1 -1
  137. package/dist/components/controller3.js.map +1 -1
  138. package/dist/components/controller5.js.map +1 -1
  139. package/dist/components/events2.js.map +1 -1
  140. package/dist/components/i18n.js +1 -1
  141. package/dist/components/i18n.js.map +1 -1
  142. package/dist/components/index.js +1 -1
  143. package/dist/components/index.js.map +1 -1
  144. package/dist/components/kol-alert-wc.js +1 -1
  145. package/dist/components/kol-alert-wc.js.map +1 -1
  146. package/dist/components/kol-avatar.js +1 -1
  147. package/dist/components/kol-avatar.js.map +1 -1
  148. package/dist/components/kol-button-link.js +1 -1
  149. package/dist/components/kol-button-link.js.map +1 -1
  150. package/dist/components/kol-button-wc.js +1 -1
  151. package/dist/components/kol-button-wc.js.map +1 -1
  152. package/dist/components/kol-button.js +1 -1
  153. package/dist/components/kol-button.js.map +1 -1
  154. package/dist/components/kol-card.js +1 -1
  155. package/dist/components/kol-combobox.js +1 -1
  156. package/dist/components/kol-combobox.js.map +1 -1
  157. package/dist/components/kol-details.js +1 -1
  158. package/dist/components/kol-drawer.js +1 -1
  159. package/dist/components/kol-form.js +1 -1
  160. package/dist/components/kol-heading-wc.js +1 -1
  161. package/dist/components/kol-heading.js +1 -1
  162. package/dist/components/kol-icon.js +1 -1
  163. package/dist/components/kol-image.js +1 -1
  164. package/dist/components/kol-indented-text-wc.js +1 -1
  165. package/dist/components/kol-indented-text.js +1 -1
  166. package/dist/components/kol-input-checkbox.js +1 -1
  167. package/dist/components/kol-input-color.js +1 -1
  168. package/dist/components/kol-input-color.js.map +1 -1
  169. package/dist/components/kol-input-date.js +1 -1
  170. package/dist/components/kol-input-date.js.map +1 -1
  171. package/dist/components/kol-input-email.js +1 -1
  172. package/dist/components/kol-input-file.js +1 -1
  173. package/dist/components/kol-input-number.js +1 -1
  174. package/dist/components/kol-input-password.js +1 -1
  175. package/dist/components/kol-input-radio.js +1 -1
  176. package/dist/components/kol-input-radio.js.map +1 -1
  177. package/dist/components/kol-input-range.js +1 -1
  178. package/dist/components/kol-input-text.js +1 -1
  179. package/dist/components/kol-input.js +1 -1
  180. package/dist/components/kol-kolibri.js +1 -1
  181. package/dist/components/kol-link-button.js +1 -1
  182. package/dist/components/kol-link-button.js.map +1 -1
  183. package/dist/components/kol-link-group.js +1 -1
  184. package/dist/components/kol-link-wc.js +1 -1
  185. package/dist/components/kol-link-wc.js.map +1 -1
  186. package/dist/components/kol-link.js +1 -1
  187. package/dist/components/kol-link.js.map +1 -1
  188. package/dist/components/kol-logo.js +1 -1
  189. package/dist/components/kol-modal.js +1 -1
  190. package/dist/components/kol-nav.js +1 -1
  191. package/dist/components/kol-popover-wc.js +1 -1
  192. package/dist/components/kol-progress.js +1 -1
  193. package/dist/components/kol-quote.js +1 -1
  194. package/dist/components/kol-select.js +1 -1
  195. package/dist/components/kol-select.js.map +1 -1
  196. package/dist/components/kol-single-select.d.ts +11 -0
  197. package/dist/components/kol-single-select.js +4 -0
  198. package/dist/components/kol-single-select.js.map +1 -0
  199. package/dist/components/kol-skip-nav.js +1 -1
  200. package/dist/components/kol-span-wc.js +1 -1
  201. package/dist/components/kol-spin.js +1 -1
  202. package/dist/components/kol-spin.js.map +1 -1
  203. package/dist/components/kol-split-button.js +1 -1
  204. package/dist/components/kol-symbol.js +1 -1
  205. package/dist/components/kol-table-stateful.js +1 -1
  206. package/dist/components/kol-table-stateful.js.map +1 -1
  207. package/dist/components/kol-table-stateless-wc.js +1 -1
  208. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  209. package/dist/components/kol-table-stateless.js +1 -1
  210. package/dist/components/kol-table-stateless.js.map +1 -1
  211. package/dist/components/kol-table.js +1 -1
  212. package/dist/components/kol-tabs.js +1 -1
  213. package/dist/components/kol-textarea.js +1 -1
  214. package/dist/components/kol-toast-container.js +1 -1
  215. package/dist/components/kol-toolbar.js +1 -1
  216. package/dist/components/kol-tooltip-wc.js +1 -1
  217. package/dist/components/kol-tree-item-wc.js +1 -1
  218. package/dist/components/kol-tree-item-wc.js.map +1 -1
  219. package/dist/components/kol-tree-item.js +1 -1
  220. package/dist/components/kol-tree-wc.js +1 -1
  221. package/dist/components/kol-tree.js +1 -1
  222. package/dist/components/kol-version.js +1 -1
  223. package/dist/esm/{InternalUnderlinedAccessKey-6d3d657a.js → InternalUnderlinedAccessKey-308bff0a.js} +1 -1
  224. package/dist/esm/{InternalUnderlinedAccessKey-6d3d657a.js.map → InternalUnderlinedAccessKey-308bff0a.js.map} +1 -1
  225. package/dist/esm/{app-globals-67542d5b.js → app-globals-ca7441bd.js} +1 -1
  226. package/dist/esm/{app-globals-67542d5b.js.map → app-globals-ca7441bd.js.map} +1 -1
  227. package/dist/esm/aria-expanded-e75617bf.js +4 -0
  228. package/dist/esm/aria-expanded-e75617bf.js.map +1 -0
  229. package/dist/esm/associated.controller-8e2d43be.js +4 -0
  230. package/dist/esm/associated.controller-8e2d43be.js.map +1 -0
  231. package/dist/esm/{component-names-5dd1e02a.js → component-names-3e0158fe.js} +1 -1
  232. package/dist/esm/component-names-3e0158fe.js.map +1 -0
  233. package/dist/esm/{controller-9685f029.js → controller-056d0f3b.js} +1 -1
  234. package/dist/esm/controller-056d0f3b.js.map +1 -0
  235. package/dist/esm/{controller-6d4582e2.js → controller-3cb3d1e6.js} +1 -1
  236. package/dist/esm/controller-3cb3d1e6.js.map +1 -0
  237. package/dist/esm/{controller-c311c73b.js → controller-4bd39719.js} +1 -1
  238. package/dist/esm/{controller-c311c73b.js.map → controller-4bd39719.js.map} +1 -1
  239. package/dist/esm/{controller-aa6c0837.js → controller-ad9f8f69.js} +1 -1
  240. package/dist/esm/{controller-aa6c0837.js.map → controller-ad9f8f69.js.map} +1 -1
  241. package/dist/esm/{controller-a3b04811.js → controller-ec76e4bf.js} +1 -1
  242. package/dist/esm/controller-ec76e4bf.js.map +1 -0
  243. package/dist/esm/{controller-icon-0c8dba65.js → controller-icon-e155a2b1.js} +1 -1
  244. package/dist/esm/{controller-icon-0c8dba65.js.map → controller-icon-e155a2b1.js.map} +1 -1
  245. package/dist/esm/{dev.utils-4ab4d2ed.js → dev.utils-cb789c3d.js} +1 -1
  246. package/dist/esm/{dev.utils-4ab4d2ed.js.map → dev.utils-cb789c3d.js.map} +1 -1
  247. package/dist/esm/{devtools-4bfa2f22.js → devtools-a88bc2ec.js} +1 -1
  248. package/dist/esm/{devtools-4bfa2f22.js.map → devtools-a88bc2ec.js.map} +1 -1
  249. package/dist/esm/events-9570402d.js.map +1 -1
  250. package/dist/esm/{form-field-msg-435a7a10.js → form-field-msg-2e39a9f7.js} +1 -1
  251. package/dist/esm/{form-field-msg-435a7a10.js.map → form-field-msg-2e39a9f7.js.map} +1 -1
  252. package/dist/esm/i18n-80da5843.js +4 -0
  253. package/dist/esm/{i18n-6d848180.js.map → i18n-80da5843.js.map} +1 -1
  254. package/dist/esm/i18n-ece780dd.js +4 -0
  255. package/dist/esm/i18n-ece780dd.js.map +1 -0
  256. package/dist/esm/index-bd96e8df.js +4 -0
  257. package/dist/esm/{index-78685f70.js.map → index-bd96e8df.js.map} +1 -1
  258. package/dist/esm/index.js +1 -1
  259. package/dist/esm/index.js.map +1 -1
  260. package/dist/esm/kol-abbr.entry.js +1 -1
  261. package/dist/esm/kol-accordion.entry.js +1 -1
  262. package/dist/esm/kol-alert-wc.entry.js +1 -1
  263. package/dist/esm/kol-alert-wc.entry.js.map +1 -1
  264. package/dist/esm/kol-alert.entry.js +1 -1
  265. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  266. package/dist/esm/kol-avatar.entry.js +1 -1
  267. package/dist/esm/kol-avatar.entry.js.map +1 -1
  268. package/dist/esm/kol-badge.entry.js +1 -1
  269. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  270. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  271. package/dist/esm/kol-button-group.entry.js +1 -1
  272. package/dist/esm/kol-button-link.entry.js +1 -1
  273. package/dist/esm/kol-button-link.entry.js.map +1 -1
  274. package/dist/esm/kol-button-wc.entry.js +1 -1
  275. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  276. package/dist/esm/kol-button.entry.js +1 -1
  277. package/dist/esm/kol-button.entry.js.map +1 -1
  278. package/dist/esm/kol-card.entry.js +1 -1
  279. package/dist/esm/kol-combobox.entry.js +1 -1
  280. package/dist/esm/kol-combobox.entry.js.map +1 -1
  281. package/dist/esm/kol-details.entry.js +1 -1
  282. package/dist/esm/kol-drawer.entry.js +1 -1
  283. package/dist/esm/kol-form.entry.js +1 -1
  284. package/dist/esm/kol-heading-wc.entry.js +1 -1
  285. package/dist/esm/kol-heading.entry.js +1 -1
  286. package/dist/esm/kol-icon.entry.js +1 -1
  287. package/dist/esm/kol-image.entry.js +1 -1
  288. package/dist/esm/kol-indented-text-wc.entry.js +1 -1
  289. package/dist/esm/kol-indented-text.entry.js +1 -1
  290. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  291. package/dist/esm/kol-input-color.entry.js +1 -1
  292. package/dist/esm/kol-input-color.entry.js.map +1 -1
  293. package/dist/esm/kol-input-date.entry.js +1 -1
  294. package/dist/esm/kol-input-date.entry.js.map +1 -1
  295. package/dist/esm/kol-input-email.entry.js +1 -1
  296. package/dist/esm/kol-input-file.entry.js +1 -1
  297. package/dist/esm/kol-input-number.entry.js +1 -1
  298. package/dist/esm/kol-input-password.entry.js +1 -1
  299. package/dist/esm/kol-input-radio.entry.js +1 -1
  300. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  301. package/dist/esm/kol-input-range.entry.js +1 -1
  302. package/dist/esm/kol-input-text.entry.js +1 -1
  303. package/dist/esm/kol-input.entry.js +1 -1
  304. package/dist/esm/kol-kolibri.entry.js +1 -1
  305. package/dist/esm/kol-link-button.entry.js +1 -1
  306. package/dist/esm/kol-link-button.entry.js.map +1 -1
  307. package/dist/esm/kol-link-group.entry.js +1 -1
  308. package/dist/esm/kol-link-wc.entry.js +1 -1
  309. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  310. package/dist/esm/kol-link.entry.js +1 -1
  311. package/dist/esm/kol-link.entry.js.map +1 -1
  312. package/dist/esm/kol-logo.entry.js +1 -1
  313. package/dist/esm/kol-modal.entry.js +1 -1
  314. package/dist/esm/kol-nav.entry.js +1 -1
  315. package/dist/esm/kol-pagination.entry.js +1 -1
  316. package/dist/esm/kol-popover-wc.entry.js +1 -1
  317. package/dist/esm/kol-progress.entry.js +1 -1
  318. package/dist/esm/kol-quote.entry.js +1 -1
  319. package/dist/esm/kol-select.entry.js +1 -1
  320. package/dist/esm/kol-select.entry.js.map +1 -1
  321. package/dist/esm/kol-single-select.entry.js +4 -0
  322. package/dist/esm/kol-single-select.entry.js.map +1 -0
  323. package/dist/esm/kol-skip-nav.entry.js +1 -1
  324. package/dist/esm/kol-span-wc.entry.js +1 -1
  325. package/dist/esm/kol-spin.entry.js +1 -1
  326. package/dist/esm/kol-spin.entry.js.map +1 -1
  327. package/dist/esm/kol-split-button.entry.js +1 -1
  328. package/dist/esm/kol-symbol.entry.js +1 -1
  329. package/dist/esm/kol-table-stateful.entry.js +1 -1
  330. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  331. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  332. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  333. package/dist/esm/kol-table-stateless.entry.js +1 -1
  334. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  335. package/dist/esm/kol-table.entry.js +1 -1
  336. package/dist/esm/kol-tabs.entry.js +1 -1
  337. package/dist/esm/kol-textarea.entry.js +1 -1
  338. package/dist/esm/kol-toast-container.entry.js +1 -1
  339. package/dist/esm/kol-toolbar.entry.js +1 -1
  340. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  341. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  342. package/dist/esm/kol-tree-item-wc.entry.js.map +1 -1
  343. package/dist/esm/kol-tree-item.entry.js +1 -1
  344. package/dist/esm/kol-tree-wc.entry.js +1 -1
  345. package/dist/esm/kol-tree.entry.js +1 -1
  346. package/dist/esm/kol-version.entry.js +1 -1
  347. package/dist/esm/kolibri.js +1 -1
  348. package/dist/esm/loader.js +1 -1
  349. package/dist/kolibri/{InternalUnderlinedAccessKey-6d3d657a.js → InternalUnderlinedAccessKey-308bff0a.js} +1 -1
  350. package/dist/kolibri/{app-globals-67542d5b.js → app-globals-ca7441bd.js} +1 -1
  351. package/dist/kolibri/aria-expanded-e75617bf.js +4 -0
  352. package/dist/kolibri/aria-expanded-e75617bf.js.map +1 -0
  353. package/dist/kolibri/associated.controller-8e2d43be.js +4 -0
  354. package/dist/kolibri/associated.controller-8e2d43be.js.map +1 -0
  355. package/dist/kolibri/{component-names-5dd1e02a.js → component-names-3e0158fe.js} +1 -1
  356. package/dist/kolibri/{component-names-5dd1e02a.js.map → component-names-3e0158fe.js.map} +1 -1
  357. package/dist/kolibri/{controller-9685f029.js → controller-056d0f3b.js} +1 -1
  358. package/dist/kolibri/controller-056d0f3b.js.map +1 -0
  359. package/dist/kolibri/{controller-6d4582e2.js → controller-3cb3d1e6.js} +1 -1
  360. package/dist/kolibri/controller-3cb3d1e6.js.map +1 -0
  361. package/dist/kolibri/{controller-c311c73b.js → controller-4bd39719.js} +1 -1
  362. package/dist/kolibri/controller-ad9f8f69.js +4 -0
  363. package/dist/kolibri/controller-ec76e4bf.js +4 -0
  364. package/dist/kolibri/controller-ec76e4bf.js.map +1 -0
  365. package/dist/kolibri/controller-icon-e155a2b1.js +4 -0
  366. package/dist/kolibri/{dev.utils-4ab4d2ed.js → dev.utils-cb789c3d.js} +1 -1
  367. package/dist/kolibri/{devtools-4bfa2f22.js → devtools-a88bc2ec.js} +1 -1
  368. package/dist/kolibri/events-9570402d.js.map +1 -1
  369. package/dist/kolibri/form-field-msg-2e39a9f7.js +4 -0
  370. package/dist/kolibri/i18n-80da5843.js +4 -0
  371. package/dist/kolibri/i18n-ece780dd.js +4 -0
  372. package/dist/kolibri/i18n-ece780dd.js.map +1 -0
  373. package/dist/kolibri/{index-78685f70.js → index-bd96e8df.js} +1 -1
  374. package/dist/kolibri/{index-78685f70.js.map → index-bd96e8df.js.map} +1 -1
  375. package/dist/kolibri/index.esm.js +1 -1
  376. package/dist/kolibri/index.esm.js.map +1 -1
  377. package/dist/kolibri/kol-abbr.entry.js +1 -1
  378. package/dist/kolibri/kol-accordion.entry.js +1 -1
  379. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  380. package/dist/kolibri/kol-alert-wc.entry.js.map +1 -1
  381. package/dist/kolibri/kol-alert.entry.js +1 -1
  382. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  383. package/dist/kolibri/kol-avatar.entry.js +1 -1
  384. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  385. package/dist/kolibri/kol-badge.entry.js +1 -1
  386. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  387. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  388. package/dist/kolibri/kol-button-group.entry.js +1 -1
  389. package/dist/kolibri/kol-button-link.entry.js +1 -1
  390. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  391. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  392. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  393. package/dist/kolibri/kol-button.entry.js +1 -1
  394. package/dist/kolibri/kol-button.entry.js.map +1 -1
  395. package/dist/kolibri/kol-card.entry.js +1 -1
  396. package/dist/kolibri/kol-combobox.entry.js +1 -1
  397. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  398. package/dist/kolibri/kol-details.entry.js +1 -1
  399. package/dist/kolibri/kol-drawer.entry.js +1 -1
  400. package/dist/kolibri/kol-form.entry.js +1 -1
  401. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  402. package/dist/kolibri/kol-heading.entry.js +1 -1
  403. package/dist/kolibri/kol-icon.entry.js +1 -1
  404. package/dist/kolibri/kol-image.entry.js +1 -1
  405. package/dist/kolibri/kol-indented-text-wc.entry.js +1 -1
  406. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  407. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  408. package/dist/kolibri/kol-input-color.entry.js +1 -1
  409. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  410. package/dist/kolibri/kol-input-date.entry.js +1 -1
  411. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  412. package/dist/kolibri/kol-input-email.entry.js +1 -1
  413. package/dist/kolibri/kol-input-file.entry.js +1 -1
  414. package/dist/kolibri/kol-input-number.entry.js +1 -1
  415. package/dist/kolibri/kol-input-password.entry.js +1 -1
  416. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  417. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  418. package/dist/kolibri/kol-input-range.entry.js +1 -1
  419. package/dist/kolibri/kol-input-text.entry.js +1 -1
  420. package/dist/kolibri/kol-input.entry.js +1 -1
  421. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  422. package/dist/kolibri/kol-link-button.entry.js +1 -1
  423. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  424. package/dist/kolibri/kol-link-group.entry.js +1 -1
  425. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  426. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  427. package/dist/kolibri/kol-link.entry.js +1 -1
  428. package/dist/kolibri/kol-link.entry.js.map +1 -1
  429. package/dist/kolibri/kol-logo.entry.js +1 -1
  430. package/dist/kolibri/kol-modal.entry.js +1 -1
  431. package/dist/kolibri/kol-nav.entry.js +1 -1
  432. package/dist/kolibri/kol-pagination.entry.js +1 -1
  433. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  434. package/dist/kolibri/kol-progress.entry.js +1 -1
  435. package/dist/kolibri/kol-quote.entry.js +1 -1
  436. package/dist/kolibri/kol-select.entry.js +1 -1
  437. package/dist/kolibri/kol-select.entry.js.map +1 -1
  438. package/dist/kolibri/kol-single-select.entry.js +4 -0
  439. package/dist/kolibri/kol-single-select.entry.js.map +1 -0
  440. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  441. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  442. package/dist/kolibri/kol-spin.entry.js +1 -1
  443. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  444. package/dist/kolibri/kol-split-button.entry.js +1 -1
  445. package/dist/kolibri/kol-symbol.entry.js +1 -1
  446. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  447. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  448. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  449. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  450. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  451. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  452. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  453. package/dist/kolibri/kol-table.entry.js +1 -1
  454. package/dist/kolibri/kol-tabs.entry.js +1 -1
  455. package/dist/kolibri/kol-textarea.entry.js +1 -1
  456. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  457. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  458. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  459. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  460. package/dist/kolibri/kol-tree-item-wc.entry.js.map +1 -1
  461. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  462. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  463. package/dist/kolibri/kol-tree.entry.js +1 -1
  464. package/dist/kolibri/kol-version.entry.js +1 -1
  465. package/dist/kolibri/kolibri.esm.js +1 -1
  466. package/dist/kolibri/kolibri.esm.js.map +1 -1
  467. package/dist/types/components/button/component.d.ts +4 -1
  468. package/dist/types/components/button/shadow.d.ts +2 -1
  469. package/dist/types/components/button-link/shadow.d.ts +2 -1
  470. package/dist/types/components/combobox/shadow.d.ts +1 -1
  471. package/dist/types/components/combobox/test/html.mock.d.ts +2 -0
  472. package/dist/types/components/input-date/shadow.d.ts +1 -0
  473. package/dist/types/components/input-password/controller.d.ts +1 -1
  474. package/dist/types/components/input-radio/controller.d.ts +3 -3
  475. package/dist/types/components/input-radio/shadow.d.ts +3 -3
  476. package/dist/types/components/link/component.d.ts +4 -1
  477. package/dist/types/components/link/shadow.d.ts +2 -1
  478. package/dist/types/components/link-button/shadow.d.ts +2 -1
  479. package/dist/types/components/single-select/controller.d.ts +16 -0
  480. package/dist/types/components/single-select/shadow.d.ts +75 -0
  481. package/dist/types/components/table-stateful/shadow.d.ts +6 -1
  482. package/dist/types/components/tree-item/component.d.ts +0 -1
  483. package/dist/types/components.d.ts +235 -7
  484. package/dist/types/locales/de.d.ts +3 -1
  485. package/dist/types/locales/en.d.ts +3 -1
  486. package/dist/types/schema/components/button.d.ts +2 -2
  487. package/dist/types/schema/components/combobox.d.ts +2 -2
  488. package/dist/types/schema/components/index.d.ts +1 -1
  489. package/dist/types/schema/components/input-radio.d.ts +4 -4
  490. package/dist/types/schema/components/link.d.ts +2 -2
  491. package/dist/types/schema/components/single-select.d.ts +31 -0
  492. package/dist/types/schema/index.d.ts +1 -1
  493. package/dist/types/schema/props/aria-description.d.ts +6 -0
  494. package/dist/types/schema/props/index.d.ts +1 -1
  495. package/dist/types/schema/props/options.d.ts +5 -1
  496. package/dist/types/schema/props/table-callbacks.d.ts +2 -2
  497. package/dist/types/schema/tag-names.d.ts +13 -12
  498. package/dist/types/schema/types/input/types.d.ts +4 -1
  499. package/dist/types/schema/types/table.d.ts +1 -0
  500. package/doc/badge.md +6 -6
  501. package/doc/button-link.md +19 -18
  502. package/doc/button.md +21 -20
  503. package/doc/combobox.md +1 -1
  504. package/doc/input-color.md +22 -22
  505. package/doc/input-date.md +38 -28
  506. package/doc/input-email.md +29 -29
  507. package/doc/input-file.md +23 -23
  508. package/doc/input-number.md +28 -28
  509. package/doc/input-password.md +28 -28
  510. package/doc/input-radio.md +1 -1
  511. package/doc/input-text.md +29 -29
  512. package/doc/link-button.md +1 -0
  513. package/doc/link.md +1 -0
  514. package/doc/single-select.md +91 -0
  515. package/doc/table-stateful.md +3 -3
  516. package/doc/table-stateless.md +1 -1
  517. package/doc/table.md +1 -1
  518. package/package.json +1 -1
  519. package/vscode-custom-data.json +111 -0
  520. package/dist/cjs/aria-expanded-8331b8d6.js +0 -4
  521. package/dist/cjs/aria-expanded-8331b8d6.js.map +0 -1
  522. package/dist/cjs/associated.controller-98098f66.js +0 -4
  523. package/dist/cjs/associated.controller-98098f66.js.map +0 -1
  524. package/dist/cjs/component-names-e841018d.js +0 -4
  525. package/dist/cjs/component-names-e841018d.js.map +0 -1
  526. package/dist/cjs/controller-195131e7.js +0 -4
  527. package/dist/cjs/controller-195131e7.js.map +0 -1
  528. package/dist/cjs/controller-6f51903f.js.map +0 -1
  529. package/dist/cjs/controller-dbb37c4c.js.map +0 -1
  530. package/dist/cjs/i18n-50cc2ee1.js +0 -4
  531. package/dist/cjs/i18n-50cc2ee1.js.map +0 -1
  532. package/dist/cjs/index-706e6712.js +0 -4
  533. package/dist/esm/aria-expanded-c2a03d43.js +0 -4
  534. package/dist/esm/aria-expanded-c2a03d43.js.map +0 -1
  535. package/dist/esm/associated.controller-a2335f21.js +0 -4
  536. package/dist/esm/associated.controller-a2335f21.js.map +0 -1
  537. package/dist/esm/component-names-5dd1e02a.js.map +0 -1
  538. package/dist/esm/controller-6d4582e2.js.map +0 -1
  539. package/dist/esm/controller-9685f029.js.map +0 -1
  540. package/dist/esm/controller-a3b04811.js.map +0 -1
  541. package/dist/esm/i18n-3dcfca85.js +0 -4
  542. package/dist/esm/i18n-3dcfca85.js.map +0 -1
  543. package/dist/esm/i18n-6d848180.js +0 -4
  544. package/dist/esm/index-78685f70.js +0 -4
  545. package/dist/kolibri/aria-expanded-c2a03d43.js +0 -4
  546. package/dist/kolibri/aria-expanded-c2a03d43.js.map +0 -1
  547. package/dist/kolibri/associated.controller-a2335f21.js +0 -4
  548. package/dist/kolibri/associated.controller-a2335f21.js.map +0 -1
  549. package/dist/kolibri/controller-6d4582e2.js.map +0 -1
  550. package/dist/kolibri/controller-9685f029.js.map +0 -1
  551. package/dist/kolibri/controller-a3b04811.js +0 -4
  552. package/dist/kolibri/controller-a3b04811.js.map +0 -1
  553. package/dist/kolibri/controller-aa6c0837.js +0 -4
  554. package/dist/kolibri/controller-icon-0c8dba65.js +0 -4
  555. package/dist/kolibri/form-field-msg-435a7a10.js +0 -4
  556. package/dist/kolibri/i18n-3dcfca85.js +0 -4
  557. package/dist/kolibri/i18n-3dcfca85.js.map +0 -1
  558. package/dist/kolibri/i18n-6d848180.js +0 -4
  559. /package/dist/kolibri/{InternalUnderlinedAccessKey-6d3d657a.js.map → InternalUnderlinedAccessKey-308bff0a.js.map} +0 -0
  560. /package/dist/kolibri/{app-globals-67542d5b.js.map → app-globals-ca7441bd.js.map} +0 -0
  561. /package/dist/kolibri/{controller-c311c73b.js.map → controller-4bd39719.js.map} +0 -0
  562. /package/dist/kolibri/{controller-aa6c0837.js.map → controller-ad9f8f69.js.map} +0 -0
  563. /package/dist/kolibri/{controller-icon-0c8dba65.js.map → controller-icon-e155a2b1.js.map} +0 -0
  564. /package/dist/kolibri/{dev.utils-4ab4d2ed.js.map → dev.utils-cb789c3d.js.map} +0 -0
  565. /package/dist/kolibri/{devtools-4bfa2f22.js.map → devtools-a88bc2ec.js.map} +0 -0
  566. /package/dist/kolibri/{form-field-msg-435a7a10.js.map → form-field-msg-2e39a9f7.js.map} +0 -0
  567. /package/dist/kolibri/{i18n-6d848180.js.map → i18n-80da5843.js.map} +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{e as KolIconTag,n as KolLinkWcTag,y as KolTreeTag}from"./component-names.js";import{n as nonce}from"./dev.utils2.js";import{c as watchBoolean}from"./prop.validators.js";import{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{v as validateHref}from"./href.js";const validateActive=(e,t,a)=>{watchBoolean(e,"_active",t,a)},KolTreeItemWc$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.groupId=`tree-group-${nonce()}`,this.renderIcon=e=>h(KolIconTag,{class:"toggle-button-icon",_label:e.label,_icons:e.icon}),this.level=void 0,this.state={_active:!1,_hasChildren:!1,_href:"",_label:"",_open:!1},this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}render(){const{_href:e,_active:t,_hasChildren:a,_open:i,_label:l}=this.state;return h(Host,{key:"b809b4ed4fdbff0238384909f6394c5c9aa13480",onSlotchange:this.handleSlotchange.bind(this),class:"kol-tree-item-wc"},h("li",{key:"db1b9a71d369f9fc0bcdfba6e22d0c2f6af7a414",class:"tree-item",style:{"--level":`${this.level}`}},h(KolLinkWcTag,{key:"c9a810511651e63203fb27d63259864445f59b29",class:{"tree-link":!0,"first-level":0===this.level,active:Boolean(t)},_href:e,_label:"",_role:"treeitem",_tabIndex:t?0:-1,_ariaExpanded:i,_ariaOwns:a?this.groupId:void 0,ref:e=>this.linkElement=e},h("span",{key:"fd5dcb0bf876292d5303420095cb437d9f757f37",slot:"expert"},a&&h("span",{key:"468187d12a690f7fc5ccc09570d7b2bebd6cee24",class:"toggle-button",onClick:e=>i?void this.handleCollapseClick(e):void this.handleExpandClick(e)},this.renderIcon({icon:"codicon codicon-"+(i?"chevron-down":"chevron-right"),label:i?"Vorschläge öffnen":"Vorschläge schließen"}))," ",l)),h("ul",{key:"2b414e97ffa358b9332573194d450cf8c548a6d6",hidden:!a||!i,role:"group",id:this.groupId},h("slot",{key:"8ea7a3d44e0acb4626b23070dd044b17688313c5"}))))}validateActive(e){validateActive(this,e||!1)}validateLabel(e){validateLabel(this,e)}validateOpen(e){validateOpen(this,e)}validateHref(e){validateHref(this,e)}componentWillLoad(){this.validateActive(this._active),this.validateLabel(this._label),this.validateOpen(this._open),this.validateHref(this._href),this.checkForChildren(),this.determineTreeItemDepth()}determineTreeItemDepth(){let e=0,t=this.host.parentNode.host.parentNode;for(;null!==t&&t.tagName.toLowerCase()!==KolTreeTag&&t!==document.body;)t=t.parentElement,e+=1;this.level=e}handleSlotchange(){this.checkForChildren()}checkForChildren(){var e,t;this.state=Object.assign(Object.assign({},this.state),{_hasChildren:Boolean(null===(t=null===(e=this.host.querySelector("slot"))||void 0===e?void 0:e.assignedElements)||void 0===t?void 0:t.call(e).length)})}async focusLink(){await this.linkElement.kolFocus()}async handleExpandClick(e){e.preventDefault(),await this.linkElement.kolFocus(),await this.expand()}async expand(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!0}))}async handleCollapseClick(e){e.preventDefault(),this.linkElement.focus(),await this.collapse()}async collapse(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!1}))}async isOpen(){var e;return null!==(e=this.state._open)&&void 0!==e&&e}get host(){return this}static get watchers(){return{_active:["validateActive"],_label:["validateLabel"],_open:["validateOpen"],_href:["validateHref"]}}},[4,"kol-tree-item-wc",{_active:[4],_label:[1],_open:[4],_href:[1],level:[32],state:[32],focusLink:[64],expand:[64],collapse:[64],isOpen:[64]},void 0,{_active:["validateActive"],_label:["validateLabel"],_open:["validateOpen"],_href:["validateHref"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-item-wc"].forEach((e=>{if("kol-tree-item-wc"===e)customElements.get(e)||customElements.define(e,KolTreeItemWc$1)}))}const KolTreeItemWc=KolTreeItemWc$1,defineCustomElement=defineCustomElement$1;export{KolTreeItemWc,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{n as KolLinkWcTag,e as KolIconTag,x as KolTreeTag}from"./component-names.js";import{n as nonce}from"./dev.utils2.js";import{c as watchBoolean}from"./prop.validators.js";import{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{v as validateHref}from"./href.js";const validateActive=(e,t,a)=>{watchBoolean(e,"_active",t,a)},KolTreeItemWc$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.groupId=`tree-group-${nonce()}`,this.level=void 0,this.state={_active:!1,_hasChildren:!1,_href:"",_label:"",_open:!1},this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}render(){const{_href:e,_active:t,_hasChildren:a,_open:i,_label:l}=this.state;return h(Host,{key:"53e9e8b06130727816f4a6828f421b737b9773dc",onSlotchange:this.handleSlotchange.bind(this),class:"kol-tree-item-wc"},h("li",{key:"21a57ed0ed88922cce5ea7269e4826c2c7e01141",class:"tree-item",style:{"--level":`${this.level}`}},h(KolLinkWcTag,{key:"8ddc5279911708f2820cc18f234c7a91d75df62b",class:{"tree-link":!0,"first-level":0===this.level,active:Boolean(t)},_href:e,_label:"",_role:"treeitem",_tabIndex:t?0:-1,_ariaExpanded:a?i:void 0,_ariaOwns:a?this.groupId:void 0,ref:e=>this.linkElement=e},h("span",{key:"d3c56fbf23ae37e6e16b6361aa4c848f685513e5",slot:"expert"},a&&h("span",{key:"9a969a31f5186ba9c9ac3114a2e5a583dc129b5b",class:"toggle-button",onClick:e=>i?void this.handleCollapseClick(e):void this.handleExpandClick(e)},h(KolIconTag,{key:"0a4e02308200334997a870e3ddf09e9d4483120f",class:"toggle-button-icon",_icons:"codicon codicon-"+(i?"chevron-down":"chevron-right"),_label:""}))," ",l)),h("ul",{key:"b0c5357567544638ae3ce89fc426ff9a2d7b557e",hidden:!a||!i,role:"group",id:this.groupId},h("slot",{key:"009e8fc83e5bc6e8eee1b7b04e3575dae258c74e"}))))}validateActive(e){validateActive(this,e||!1)}validateLabel(e){validateLabel(this,e)}validateOpen(e){validateOpen(this,e)}validateHref(e){validateHref(this,e)}componentWillLoad(){this.validateActive(this._active),this.validateLabel(this._label),this.validateOpen(this._open),this.validateHref(this._href),this.checkForChildren(),this.determineTreeItemDepth()}determineTreeItemDepth(){let e=0,t=this.host.parentNode.host.parentNode;for(;null!==t&&t.tagName.toLowerCase()!==KolTreeTag&&t!==document.body;)t=t.parentElement,e+=1;this.level=e}handleSlotchange(){this.checkForChildren()}checkForChildren(){var e,t;this.state=Object.assign(Object.assign({},this.state),{_hasChildren:Boolean(null===(t=null===(e=this.host.querySelector("slot"))||void 0===e?void 0:e.assignedElements)||void 0===t?void 0:t.call(e).length)})}async focusLink(){await this.linkElement.kolFocus()}async handleExpandClick(e){e.preventDefault(),await this.linkElement.kolFocus(),await this.expand()}async expand(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!0}))}async handleCollapseClick(e){e.preventDefault(),this.linkElement.focus(),await this.collapse()}async collapse(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!1}))}async isOpen(){var e;return null!==(e=this.state._open)&&void 0!==e&&e}get host(){return this}static get watchers(){return{_active:["validateActive"],_label:["validateLabel"],_open:["validateOpen"],_href:["validateHref"]}}},[4,"kol-tree-item-wc",{_active:[4],_label:[1],_open:[4],_href:[1],level:[32],state:[32],focusLink:[64],expand:[64],collapse:[64],isOpen:[64]},void 0,{_active:["validateActive"],_label:["validateLabel"],_open:["validateOpen"],_href:["validateHref"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-item-wc"].forEach((e=>{if("kol-tree-item-wc"===e)customElements.get(e)||customElements.define(e,KolTreeItemWc$1)}))}const KolTreeItemWc=KolTreeItemWc$1,defineCustomElement=defineCustomElement$1;export{KolTreeItemWc,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-tree-item-wc.js","mappings":"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","names":["KolTreeItemWc"],"sources":["src/schema/props/active.ts","src/components/tree-item/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ActivePropType = boolean;\n\n/**\n * Defines whether something is active.\n */\nexport type PropActive = {\n\tactive: ActivePropType;\n};\n\n/* validator */\nexport const validateActive = (component: Generic.Element.Component, value: ActivePropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_active', value, options);\n};\n","import { Component, Element, h, Host, type JSX, Method, Prop, State, Watch } from '@stencil/core';\n\nimport type { ActivePropType, HrefPropType, LabelPropType, OpenPropType, TreeItemAPI, TreeItemStates } from '../../schema';\nimport { validateActive, validateHref, validateLabel, validateOpen } from '../../schema';\nimport { KolLinkWcTag, KolIconTag, KolTreeTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\n\n@Component({\n\ttag: `kol-tree-item-wc`,\n\tshadow: false,\n})\nexport class KolTreeItemWc implements TreeItemAPI {\n\tprivate linkElement!: HTMLKolLinkWcElement;\n\tprivate groupId = `tree-group-${nonce()}`;\n\n\t@State() private level?: number;\n\t@Element() host!: HTMLElement;\n\n\tprivate renderIcon = (props: { icon: string; label: string }) => {\n\t\treturn <KolIconTag class=\"toggle-button-icon\" _label={props.label} _icons={props.icon} />;\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { _href, _active, _hasChildren, _open, _label } = this.state;\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)} class=\"kol-tree-item-wc\">\n\t\t\t\t<li\n\t\t\t\t\tclass=\"tree-item\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t'--level': `${this.level}`,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolLinkWcTag\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t'tree-link': true,\n\t\t\t\t\t\t\t'first-level': this.level === 0,\n\t\t\t\t\t\t\tactive: Boolean(_active),\n\t\t\t\t\t\t}}\n\t\t\t\t\t\t_href={_href}\n\t\t\t\t\t\t_label=\"\"\n\t\t\t\t\t\t_role=\"treeitem\"\n\t\t\t\t\t\t_tabIndex={_active ? 0 : -1}\n\t\t\t\t\t\t_ariaExpanded={_open}\n\t\t\t\t\t\t_ariaOwns={_hasChildren ? this.groupId : undefined}\n\t\t\t\t\t\tref={(element?: HTMLKolLinkWcElement) => (this.linkElement = element!)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span slot=\"expert\">\n\t\t\t\t\t\t\t{_hasChildren && (\n\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events\n\t\t\t\t\t\t\t\t<span class=\"toggle-button\" onClick={(event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event))}>\n\t\t\t\t\t\t\t\t\t{this.renderIcon({\n\t\t\t\t\t\t\t\t\t\ticon: `codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`,\n\t\t\t\t\t\t\t\t\t\tlabel: _open ? 'Vorschläge öffnen' : 'Vorschläge schließen',\n\t\t\t\t\t\t\t\t\t})}\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\t{_label}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</KolLinkWcTag>\n\t\t\t\t\t<ul hidden={!_hasChildren || !_open} role=\"group\" id={this.groupId}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</li>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@State() public state: TreeItemStates = {\n\t\t_active: false,\n\t\t_hasChildren: false,\n\t\t_href: '',\n\t\t_label: '',\n\t\t_open: false,\n\t};\n\n\t/**\n\t * If set (to true) the tree item is the active one.\n\t */\n\t@Prop() _active?: OpenPropType;\n\n\t/**\n\t * Defines the label of the link.\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\n\t */\n\t@Prop() _open?: OpenPropType;\n\n\t/**\n\t * This property is used for a link from a reference to the target URL.\n\t */\n\t@Prop() _href!: HrefPropType;\n\n\t@Watch('_active') validateActive(value?: ActivePropType): void {\n\t\tvalidateActive(this, value || false);\n\t}\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_open') validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_href') validateHref(value?: HrefPropType): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActive(this._active);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOpen(this._open);\n\t\tthis.validateHref(this._href);\n\n\t\tthis.checkForChildren();\n\t\tthis.determineTreeItemDepth();\n\t}\n\n\tprivate determineTreeItemDepth() {\n\t\tlet level = 0;\n\t\tlet traverseItem: HTMLElement | null = (this.host.parentNode as unknown as ShadowRoot).host.parentNode as HTMLElement;\n\t\twhile (traverseItem !== null && traverseItem.tagName.toLowerCase() !== KolTreeTag && traverseItem !== document.body) {\n\t\t\ttraverseItem = traverseItem.parentElement;\n\t\t\tlevel += 1;\n\t\t}\n\t\tthis.level = level;\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.checkForChildren();\n\t}\n\n\tprivate checkForChildren() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_hasChildren: Boolean(this.host.querySelector('slot')?.assignedElements?.().length),\n\t\t};\n\t}\n\n\t@Method() async focusLink() {\n\t\tawait this.linkElement.kolFocus();\n\t}\n\n\tprivate async handleExpandClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tawait this.linkElement.kolFocus();\n\t\tawait this.expand();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async expand() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: true,\n\t\t\t};\n\t\t}\n\t}\n\n\tprivate async handleCollapseClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tthis.linkElement.focus();\n\t\tawait this.collapse();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async collapse() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: false,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async isOpen() {\n\t\treturn this.state._open ?? false;\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-tree-item-wc.js","mappings":"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","names":["KolTreeItemWc"],"sources":["src/schema/props/active.ts","src/components/tree-item/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ActivePropType = boolean;\n\n/**\n * Defines whether something is active.\n */\nexport type PropActive = {\n\tactive: ActivePropType;\n};\n\n/* validator */\nexport const validateActive = (component: Generic.Element.Component, value: ActivePropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_active', value, options);\n};\n","import { Component, Element, h, Host, type JSX, Method, Prop, State, Watch } from '@stencil/core';\n\nimport type { ActivePropType, HrefPropType, LabelPropType, OpenPropType, TreeItemAPI, TreeItemStates } from '../../schema';\nimport { validateActive, validateHref, validateLabel, validateOpen } from '../../schema';\nimport { KolLinkWcTag, KolIconTag, KolTreeTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\n\n@Component({\n\ttag: `kol-tree-item-wc`,\n\tshadow: false,\n})\nexport class KolTreeItemWc implements TreeItemAPI {\n\tprivate linkElement!: HTMLKolLinkWcElement;\n\tprivate groupId = `tree-group-${nonce()}`;\n\n\t@State() private level?: number;\n\t@Element() host!: HTMLElement;\n\n\tpublic render(): JSX.Element {\n\t\tconst { _href, _active, _hasChildren, _open, _label } = this.state;\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)} class=\"kol-tree-item-wc\">\n\t\t\t\t<li\n\t\t\t\t\tclass=\"tree-item\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t'--level': `${this.level}`,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolLinkWcTag\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t'tree-link': true,\n\t\t\t\t\t\t\t'first-level': this.level === 0,\n\t\t\t\t\t\t\tactive: Boolean(_active),\n\t\t\t\t\t\t}}\n\t\t\t\t\t\t_href={_href}\n\t\t\t\t\t\t_label=\"\"\n\t\t\t\t\t\t_role=\"treeitem\"\n\t\t\t\t\t\t_tabIndex={_active ? 0 : -1}\n\t\t\t\t\t\t_ariaExpanded={_hasChildren ? _open : undefined}\n\t\t\t\t\t\t_ariaOwns={_hasChildren ? this.groupId : undefined}\n\t\t\t\t\t\tref={(element?: HTMLKolLinkWcElement) => (this.linkElement = element!)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span slot=\"expert\">\n\t\t\t\t\t\t\t{_hasChildren && (\n\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events\n\t\t\t\t\t\t\t\t<span class=\"toggle-button\" onClick={(event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event))}>\n\t\t\t\t\t\t\t\t\t<KolIconTag\n\t\t\t\t\t\t\t\t\t\tclass=\"toggle-button-icon\"\n\t\t\t\t\t\t\t\t\t\t_icons={`codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`}\n\t\t\t\t\t\t\t\t\t\t_label={'' /* Label deliberately left empty */}\n\t\t\t\t\t\t\t\t\t/>\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\t{_label}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</KolLinkWcTag>\n\t\t\t\t\t<ul hidden={!_hasChildren || !_open} role=\"group\" id={this.groupId}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</li>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@State() public state: TreeItemStates = {\n\t\t_active: false,\n\t\t_hasChildren: false,\n\t\t_href: '',\n\t\t_label: '',\n\t\t_open: false,\n\t};\n\n\t/**\n\t * If set (to true) the tree item is the active one.\n\t */\n\t@Prop() _active?: OpenPropType;\n\n\t/**\n\t * Defines the label of the link.\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\n\t */\n\t@Prop() _open?: OpenPropType;\n\n\t/**\n\t * This property is used for a link from a reference to the target URL.\n\t */\n\t@Prop() _href!: HrefPropType;\n\n\t@Watch('_active') validateActive(value?: ActivePropType): void {\n\t\tvalidateActive(this, value || false);\n\t}\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_open') validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_href') validateHref(value?: HrefPropType): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActive(this._active);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOpen(this._open);\n\t\tthis.validateHref(this._href);\n\n\t\tthis.checkForChildren();\n\t\tthis.determineTreeItemDepth();\n\t}\n\n\tprivate determineTreeItemDepth() {\n\t\tlet level = 0;\n\t\tlet traverseItem: HTMLElement | null = (this.host.parentNode as unknown as ShadowRoot).host.parentNode as HTMLElement;\n\t\twhile (traverseItem !== null && traverseItem.tagName.toLowerCase() !== KolTreeTag && traverseItem !== document.body) {\n\t\t\ttraverseItem = traverseItem.parentElement;\n\t\t\tlevel += 1;\n\t\t}\n\t\tthis.level = level;\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.checkForChildren();\n\t}\n\n\tprivate checkForChildren() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_hasChildren: Boolean(this.host.querySelector('slot')?.assignedElements?.().length),\n\t\t};\n\t}\n\n\t@Method() async focusLink() {\n\t\tawait this.linkElement.kolFocus();\n\t}\n\n\tprivate async handleExpandClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tawait this.linkElement.kolFocus();\n\t\tawait this.expand();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async expand() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: true,\n\t\t\t};\n\t\t}\n\t}\n\n\tprivate async handleCollapseClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tthis.linkElement.focus();\n\t\tawait this.collapse();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async collapse() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: false,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async isOpen() {\n\t\treturn this.state._open ?? false;\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h}from"@stencil/core/internal/client";import{x as KolTreeItemWcTag}from"./component-names.js";const defaultStyleCss="@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .tree-link.first-level > a {\n padding-left: calc(6rem / var(--kolibri-root-font-size, 16));\n }\n .tree-link > a {\n padding-right: calc(6rem / var(--kolibri-root-font-size, 16));\n padding-left: calc(1.4rem * var(--level));\n padding-top: calc(6.4rem / var(--kolibri-root-font-size, 16));\n padding-bottom: calc(6.4rem / var(--kolibri-root-font-size, 16));\n }\n a .kol-span-wc {\n display: block;\n }\n}",KolTreeItemDefaultStyle0=defaultStyleCss,KolTreeItem$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}async focusLink(){this.element&&await this.element.focusLink()}async expand(){this.element&&await this.element.expand()}async collapse(){this.element&&await this.element.collapse()}async isOpen(){var e,t;return null!==(t=await(null===(e=this.element)||void 0===e?void 0:e.isOpen()))&&void 0!==t&&t}render(){return h(KolTreeItemWcTag,{key:"fd5558fc8ed9c498766b0db58544dd8d730448ab",class:"kol-tree-item",_active:this._active,_label:this._label,_open:this._open,_href:this._href,ref:e=>this.element=e},h("slot",{key:"7adb4e2c137ce675c2608e58794ab52646153405"}))}static get style(){return{default:KolTreeItemDefaultStyle0}}},[33,"kol-tree-item",{_active:[4],_label:[1],_open:[4],_href:[1],focusLink:[64],expand:[64],collapse:[64],isOpen:[64]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-item"].forEach((e=>{if("kol-tree-item"===e)customElements.get(e)||customElements.define(e,KolTreeItem$1)}))}const KolTreeItem=KolTreeItem$1,defineCustomElement=defineCustomElement$1;export{KolTreeItem,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h}from"@stencil/core/internal/client";import{w as KolTreeItemWcTag}from"./component-names.js";const defaultStyleCss="@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .tree-link.first-level > a {\n padding-left: calc(6rem / var(--kolibri-root-font-size, 16));\n }\n .tree-link > a {\n padding-right: calc(6rem / var(--kolibri-root-font-size, 16));\n padding-left: calc(1.4rem * var(--level));\n padding-top: calc(6.4rem / var(--kolibri-root-font-size, 16));\n padding-bottom: calc(6.4rem / var(--kolibri-root-font-size, 16));\n }\n a .kol-span-wc {\n display: block;\n }\n}",KolTreeItemDefaultStyle0=defaultStyleCss,KolTreeItem$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}async focusLink(){this.element&&await this.element.focusLink()}async expand(){this.element&&await this.element.expand()}async collapse(){this.element&&await this.element.collapse()}async isOpen(){var e,t;return null!==(t=await(null===(e=this.element)||void 0===e?void 0:e.isOpen()))&&void 0!==t&&t}render(){return h(KolTreeItemWcTag,{key:"ff954a1392ede58c411f72122f51dd9888e2e7f3",class:"kol-tree-item",_active:this._active,_label:this._label,_open:this._open,_href:this._href,ref:e=>this.element=e},h("slot",{key:"1f56e153329dc194dc2d8d358e3e786485774a33"}))}static get style(){return{default:KolTreeItemDefaultStyle0}}},[33,"kol-tree-item",{_active:[4],_label:[1],_open:[4],_href:[1],focusLink:[64],expand:[64],collapse:[64],isOpen:[64]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-item"].forEach((e=>{if("kol-tree-item"===e)customElements.get(e)||customElements.define(e,KolTreeItem$1)}))}const KolTreeItem=KolTreeItem$1,defineCustomElement=defineCustomElement$1;export{KolTreeItem,defineCustomElement};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{z as KolTreeItemTag,y as KolTreeTag}from"./component-names.js";import{v as validateLabel}from"./label.js";const KolTreeWc$1=proxyCustomElement(class e extends HTMLElement{constructor(){super(),this.__registerHost(),this.state={_label:""},this._label=void 0}validateLabel(e){validateLabel(this,e)}render(){return h(Host,{key:"bf4a2dfe1c75d4ff29a1d368fd86561061893e6e",onSlotchange:this.handleSlotchange.bind(this),class:"kol-tree-wc"},h("nav",{key:"8cd53949fc21b0019dcecc9e2a415e08de81d123",class:"tree","aria-label":this.state._label},h("ul",{key:"82e32b092e2a79fc329540612e01e0f7487c1e20",class:"treeview-navigation",role:"tree","aria-label":this.state._label},h("slot",{key:"7cd82152a9915a2e33dc231b1c324427549d688b"}))))}static isTreeItem(e){return(null==e?void 0:e.tagName)===KolTreeItemTag.toUpperCase()}componentWillLoad(){this.validateLabel(this._label),this.handleTreeChange(),this.observeChildListMutations()}disconnectedCallback(){var e;null===(e=this.observer)||void 0===e||e.disconnect()}observeChildListMutations(){this.observer=new MutationObserver(this.handleTreeChange.bind(this)),this.observeTopLevelItems()}handleSlotchange(){this.observeTopLevelItems(),this.handleTreeChange()}observeTopLevelItems(){var e;null===(e=this.getTopLevelTreeItems())||void 0===e||e.forEach((e=>{var t;null===(t=this.observer)||void 0===t||t.observe(e,{childList:!0,subtree:!0})}))}getTopLevelTreeItems(){var t,l,a;return null===(a=null===(l=null===(t=this.host.querySelector("slot"))||void 0===t?void 0:t.assignedNodes)||void 0===l?void 0:l.call(t))||void 0===a?void 0:a.filter(e.isTreeItem)}handleTreeChange(){this.treeItemElements=this.getTreeItemElements(),this.ensureActiveItemVisibility()}getTreeItemElements(){var e;return null===(e=this.getTopLevelTreeItems())||void 0===e?void 0:e.reduce(((e,t)=>{const l=t.querySelectorAll(KolTreeItemTag);return[...e,t,...l]}),[])}async getOpenTreeItemElements(){if(!this.treeItemElements)return;const t=async l=>!e.isTreeItem(l.parentElement)||await l.parentElement.isOpen()&&await t(l.parentElement);return(await Promise.all(this.treeItemElements.map((async e=>({value:e,include:await t(e)}))))).filter((e=>e.include)).map((e=>e.value))}async handleKeyDown(e){var t,l,a,i,n,s,o,r,c;const d=await this.getOpenTreeItemElements(),u=null===(t=document.activeElement)||void 0===t?void 0:t.closest(KolTreeItemTag);if(!d||!u)return;const v=null==d?void 0:d.findIndex((e=>e===u));switch(e.key){case"ArrowDown":await(null===(l=d[v+1])||void 0===l?void 0:l.focusLink()),e.preventDefault();break;case"ArrowUp":await(null===(a=d[v-1])||void 0===a?void 0:a.focusLink()),e.preventDefault();break;case"Right":case"ArrowRight":e.preventDefault(),await u.isOpen()?await(null===(i=d[v+1])||void 0===i?void 0:i.focusLink()):await u.expand();break;case"Left":case"ArrowLeft":if(e.preventDefault(),await u.isOpen())await u.collapse();else{const e=d.findIndex((e=>e===u.parentElement));-1!==e&&await(null===(n=d[e])||void 0===n?void 0:n.focusLink())}break;case"Home":await(null===(s=d[0])||void 0===s?void 0:s.focusLink()),e.preventDefault();break;case"End":await(null===(o=d[d.length-1])||void 0===o?void 0:o.focusLink()),e.preventDefault();break;case null===(r=e.key.match(/[a-zA-Z0-9]/))||void 0===r?void 0:r.input:{const t=e.key.toLowerCase(),l=d.indexOf(u)+1,a=d.concat(d),i=a.slice(l,l+d.length).findIndex((e=>{var l;return null===(l=e.getAttribute("_label"))||void 0===l?void 0:l.trim().toLowerCase().startsWith(t)}));-1!==i&&(await a[l+i].focusLink(),e.preventDefault());break}case"*":{const e=null===(c=u.parentElement)||void 0===c?void 0:c.querySelectorAll(KolTreeItemTag);null==e||e.forEach((e=>{e.expand()}));break}}}async handleFocusOut(e){e.relatedTarget&&!e.relatedTarget.closest(KolTreeTag)&&await this.ensureActiveItemVisibility()}async ensureActiveItemVisibility(){const t=l=>{e.isTreeItem(l.parentElement)&&(l.parentElement.expand(),t(l.parentElement))},l=(()=>{var t,l,a,i;const n=null!==(i=null===(a=null===(l=null===(t=this.host.querySelector("slot"))||void 0===t?void 0:t.assignedNodes)||void 0===l?void 0:l.call(t))||void 0===a?void 0:a.filter(e.isTreeItem))&&void 0!==i?i:[];for(const e of n){if(e._active)return e;const t=e.querySelector(`${KolTreeItemTag}[_active="true"]`);if(t&&t._active)return t}})();l&&t(l)}get host(){return this}static get watchers(){return{_label:["validateLabel"]}}},[4,"kol-tree-wc",{_label:[1],state:[32]},[[0,"keydown","handleKeyDown"],[0,"focusout","handleFocusOut"]],{_label:["validateLabel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-wc"].forEach((e=>{if("kol-tree-wc"===e)customElements.get(e)||customElements.define(e,KolTreeWc$1)}))}const KolTreeWc=KolTreeWc$1,defineCustomElement=defineCustomElement$1;export{KolTreeWc,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{y as KolTreeItemTag,x as KolTreeTag}from"./component-names.js";import{v as validateLabel}from"./label.js";const KolTreeWc$1=proxyCustomElement(class e extends HTMLElement{constructor(){super(),this.__registerHost(),this.state={_label:""},this._label=void 0}validateLabel(e){validateLabel(this,e)}render(){return h(Host,{key:"d14957a7b57782c979912875dce4545d31f6f110",onSlotchange:this.handleSlotchange.bind(this),class:"kol-tree-wc"},h("nav",{key:"7b925efcb5a15ad0fa800b64de0e6ccef3d4b3a2",class:"tree","aria-label":this.state._label},h("ul",{key:"200522c6ec190f899c0293499bb0a0882d5a4559",class:"treeview-navigation",role:"tree","aria-label":this.state._label},h("slot",{key:"89b77cfda248ad80a6db9973cbb69939bbda0e03"}))))}static isTreeItem(e){return(null==e?void 0:e.tagName)===KolTreeItemTag.toUpperCase()}componentWillLoad(){this.validateLabel(this._label),this.handleTreeChange(),this.observeChildListMutations()}disconnectedCallback(){var e;null===(e=this.observer)||void 0===e||e.disconnect()}observeChildListMutations(){this.observer=new MutationObserver(this.handleTreeChange.bind(this)),this.observeTopLevelItems()}handleSlotchange(){this.observeTopLevelItems(),this.handleTreeChange()}observeTopLevelItems(){var e;null===(e=this.getTopLevelTreeItems())||void 0===e||e.forEach((e=>{var t;null===(t=this.observer)||void 0===t||t.observe(e,{childList:!0,subtree:!0})}))}getTopLevelTreeItems(){var t,a,l;return null===(l=null===(a=null===(t=this.host.querySelector("slot"))||void 0===t?void 0:t.assignedNodes)||void 0===a?void 0:a.call(t))||void 0===l?void 0:l.filter(e.isTreeItem)}handleTreeChange(){this.treeItemElements=this.getTreeItemElements(),this.ensureActiveItemVisibility()}getTreeItemElements(){var e;return null===(e=this.getTopLevelTreeItems())||void 0===e?void 0:e.reduce(((e,t)=>{const a=t.querySelectorAll(KolTreeItemTag);return[...e,t,...a]}),[])}async getOpenTreeItemElements(){if(!this.treeItemElements)return;const t=async a=>!e.isTreeItem(a.parentElement)||await a.parentElement.isOpen()&&await t(a.parentElement);return(await Promise.all(this.treeItemElements.map((async e=>({value:e,include:await t(e)}))))).filter((e=>e.include)).map((e=>e.value))}async handleKeyDown(e){var t,a,l,i,n,s,o,r,c;const d=await this.getOpenTreeItemElements(),u=null===(t=document.activeElement)||void 0===t?void 0:t.closest(KolTreeItemTag);if(!d||!u)return;const v=null==d?void 0:d.findIndex((e=>e===u));switch(e.key){case"ArrowDown":await(null===(a=d[v+1])||void 0===a?void 0:a.focusLink()),e.preventDefault();break;case"ArrowUp":await(null===(l=d[v-1])||void 0===l?void 0:l.focusLink()),e.preventDefault();break;case"Right":case"ArrowRight":e.preventDefault(),await u.isOpen()?await(null===(i=d[v+1])||void 0===i?void 0:i.focusLink()):await u.expand();break;case"Left":case"ArrowLeft":if(e.preventDefault(),await u.isOpen())await u.collapse();else{const e=d.findIndex((e=>e===u.parentElement));-1!==e&&await(null===(n=d[e])||void 0===n?void 0:n.focusLink())}break;case"Home":await(null===(s=d[0])||void 0===s?void 0:s.focusLink()),e.preventDefault();break;case"End":await(null===(o=d[d.length-1])||void 0===o?void 0:o.focusLink()),e.preventDefault();break;case null===(r=e.key.match(/[a-zA-Z0-9]/))||void 0===r?void 0:r.input:{const t=e.key.toLowerCase(),a=d.indexOf(u)+1,l=d.concat(d),i=l.slice(a,a+d.length).findIndex((e=>{var a;return null===(a=e.getAttribute("_label"))||void 0===a?void 0:a.trim().toLowerCase().startsWith(t)}));-1!==i&&(await l[a+i].focusLink(),e.preventDefault());break}case"*":{const e=null===(c=u.parentElement)||void 0===c?void 0:c.querySelectorAll(KolTreeItemTag);null==e||e.forEach((e=>{e.expand()}));break}}}async handleFocusOut(e){e.relatedTarget&&!e.relatedTarget.closest(KolTreeTag)&&await this.ensureActiveItemVisibility()}async ensureActiveItemVisibility(){const t=a=>{e.isTreeItem(a.parentElement)&&(a.parentElement.expand(),t(a.parentElement))},a=(()=>{var t,a,l,i;const n=null!==(i=null===(l=null===(a=null===(t=this.host.querySelector("slot"))||void 0===t?void 0:t.assignedNodes)||void 0===a?void 0:a.call(t))||void 0===l?void 0:l.filter(e.isTreeItem))&&void 0!==i?i:[];for(const e of n){if(e._active)return e;const t=e.querySelector(`${KolTreeItemTag}[_active="true"]`);if(t&&t._active)return t}})();a&&t(a)}get host(){return this}static get watchers(){return{_label:["validateLabel"]}}},[4,"kol-tree-wc",{_label:[1],state:[32]},[[0,"keydown","handleKeyDown"],[0,"focusout","handleFocusOut"]],{_label:["validateLabel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree-wc"].forEach((e=>{if("kol-tree-wc"===e)customElements.get(e)||customElements.define(e,KolTreeWc$1)}))}const KolTreeWc=KolTreeWc$1,defineCustomElement=defineCustomElement$1;export{KolTreeWc,defineCustomElement};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{w as KolTreeWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .tree ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .tree:focus-within {\n outline: 1px solid;\n outline-offset: 2px;\n }\n}",KolTreeDefaultStyle0=defaultStyleCss,KolTree$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._label=void 0}render(){return h(Host,{key:"4eb697e204b62a16ee5b3fd17e78e8b9c5c0c211",class:"kol-tree"},h(KolTreeWcTag,{key:"f13e3b2c6a86533d55fc2108a6eff0087f43b790",_label:this._label},h("slot",{key:"593f174a800c7cc805eca14f8ef28e886415c8a4"})))}static get style(){return{default:KolTreeDefaultStyle0}}},[33,"kol-tree",{_label:[1]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree"].forEach((n=>{if("kol-tree"===n)customElements.get(n)||customElements.define(n,KolTree$1)}))}const KolTree=KolTree$1,defineCustomElement=defineCustomElement$1;export{KolTree,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{v as KolTreeWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .tree ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .tree:focus-within {\n outline: 1px solid;\n outline-offset: 2px;\n }\n}",KolTreeDefaultStyle0=defaultStyleCss,KolTree$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._label=void 0}render(){return h(Host,{key:"a438df7268572eab63faa8bbf433d5bd083aade1",class:"kol-tree"},h(KolTreeWcTag,{key:"e4870195cbc30928f271e6b454d79cc1a1063070",_label:this._label},h("slot",{key:"0def797672ec8e08c446810fad8fbc12172f7861"})))}static get style(){return{default:KolTreeDefaultStyle0}}},[33,"kol-tree",{_label:[1]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tree"].forEach((n=>{if("kol-tree"===n)customElements.get(n)||customElements.define(n,KolTree$1)}))}const KolTree=KolTree$1,defineCustomElement=defineCustomElement$1;export{KolTree,defineCustomElement};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{t as translate}from"./i18n2.js";import{A as KolBadgeTag}from"./component-names.js";import{v as validateLabel}from"./label.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n}",KolVersionDefaultStyle0=defaultStyleCss,KolVersion$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._label=void 0,this.state={_label:"0.0.0-alpha.0"}}render(){return h(Host,{key:"a4c3e7f9b27e9839b0d55418532cdbf2eebed285",class:"kol-version"},h(KolBadgeTag,{key:"b22098b308a2b0513068a25ff758368c116efdde",_color:"#bec5c9",_icons:{left:{icon:"codicon codicon-versions",label:translate("kol-version")}},_label:this.state._label}))}validateLabel(n){validateLabel(this,n,{required:!0})}componentWillLoad(){this.validateLabel(this._label)}static get watchers(){return{_label:["validateLabel"]}}static get style(){return{default:KolVersionDefaultStyle0}}},[33,"kol-version",{_label:[1],state:[32]},void 0,{_label:["validateLabel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-version"].forEach((n=>{if("kol-version"===n)customElements.get(n)||customElements.define(n,KolVersion$1)}))}const KolVersion=KolVersion$1,defineCustomElement=defineCustomElement$1;export{KolVersion,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{t as translate}from"./i18n2.js";import{z as KolBadgeTag}from"./component-names.js";import{v as validateLabel}from"./label.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n}",KolVersionDefaultStyle0=defaultStyleCss,KolVersion$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._label=void 0,this.state={_label:"0.0.0-alpha.0"}}render(){return h(Host,{key:"b5dd4a1b5a6c73f3a8e7bc835e1afdf77881130e",class:"kol-version"},h(KolBadgeTag,{key:"738b8d82f660806fe6d81e9e1d5c7edc0b0e97c6",_color:"#bec5c9",_icons:{left:{icon:"codicon codicon-versions",label:translate("kol-version")}},_label:this.state._label}))}validateLabel(n){validateLabel(this,n,{required:!0})}componentWillLoad(){this.validateLabel(this._label)}static get watchers(){return{_label:["validateLabel"]}}static get style(){return{default:KolVersionDefaultStyle0}}},[33,"kol-version",{_label:[1],state:[32]},void 0,{_label:["validateLabel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-version"].forEach((n=>{if("kol-version"===n)customElements.get(n)||customElements.define(n,KolVersion$1)}))}const KolVersion=KolVersion$1,defineCustomElement=defineCustomElement$1;export{KolVersion,defineCustomElement};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{h,F as Fragment}from"./index-78685f70.js";const InternalUnderlinedAccessKey=({accessKey:e,label:n})=>{let[l,...t]=n.split(e);return 0===t.length&&(e=e.toUpperCase(),[l,...t]=n.split(e)),0===t.length&&(e=e.toLowerCase(),[l,...t]=n.split(e)),h(Fragment,null,l,t.length?h(Fragment,null,h("u",null,e),t.join(e)):null)};export{InternalUnderlinedAccessKey as I};
4
+ import{h,F as Fragment}from"./index-bd96e8df.js";const InternalUnderlinedAccessKey=({accessKey:e,label:n})=>{let[l,...t]=n.split(e);return 0===t.length&&(e=e.toUpperCase(),[l,...t]=n.split(e)),0===t.length&&(e=e.toLowerCase(),[l,...t]=n.split(e)),h(Fragment,null,l,t.length?h(Fragment,null,h("u",null,e),t.join(e)):null)};export{InternalUnderlinedAccessKey as I};
@@ -1 +1 @@
1
- {"file":"InternalUnderlinedAccessKey-6d3d657a.js","mappings":";;;;;MAMa,2BAA2B,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAS;IAEtE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KAC1C;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KAC1C;IACD,QACC;QACE,KAAK;QACL,IAAI,CAAC,MAAM,IACX;YACC,aAAI,SAAS,CAAK;YACjB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CACnB,IACA,IAAI,CACN,EACF;AACH;;;;","names":[],"sources":["src/components/span/InternalUnderlinedAccessKey.tsx"],"sourcesContent":["import { Fragment, h } from '@stencil/core';\n\ntype Props = {\n\taccessKey: string;\n\tlabel: string;\n};\nexport const InternalUnderlinedAccessKey = ({ accessKey, label }: Props) => {\n\t/* Prefer capitalization as defined in the access key, try uppercase/lowercase when there's no match. */\n\tlet [first, ...rest] = label.split(accessKey);\n\tif (rest.length === 0) {\n\t\taccessKey = accessKey.toUpperCase();\n\t\t[first, ...rest] = label.split(accessKey);\n\t}\n\tif (rest.length === 0) {\n\t\taccessKey = accessKey.toLowerCase();\n\t\t[first, ...rest] = label.split(accessKey);\n\t}\n\treturn (\n\t\t<>\n\t\t\t{first}\n\t\t\t{rest.length ? (\n\t\t\t\t<>\n\t\t\t\t\t<u>{accessKey}</u>\n\t\t\t\t\t{rest.join(accessKey)}\n\t\t\t\t</>\n\t\t\t) : null}\n\t\t</>\n\t);\n};\n"],"version":3}
1
+ {"file":"InternalUnderlinedAccessKey-308bff0a.js","mappings":";;;;;MAMa,2BAA2B,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAS;IAEtE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KAC1C;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KAC1C;IACD,QACC;QACE,KAAK;QACL,IAAI,CAAC,MAAM,IACX;YACC,aAAI,SAAS,CAAK;YACjB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CACnB,IACA,IAAI,CACN,EACF;AACH;;;;","names":[],"sources":["src/components/span/InternalUnderlinedAccessKey.tsx"],"sourcesContent":["import { Fragment, h } from '@stencil/core';\n\ntype Props = {\n\taccessKey: string;\n\tlabel: string;\n};\nexport const InternalUnderlinedAccessKey = ({ accessKey, label }: Props) => {\n\t/* Prefer capitalization as defined in the access key, try uppercase/lowercase when there's no match. */\n\tlet [first, ...rest] = label.split(accessKey);\n\tif (rest.length === 0) {\n\t\taccessKey = accessKey.toUpperCase();\n\t\t[first, ...rest] = label.split(accessKey);\n\t}\n\tif (rest.length === 0) {\n\t\taccessKey = accessKey.toLowerCase();\n\t\t[first, ...rest] = label.split(accessKey);\n\t}\n\treturn (\n\t\t<>\n\t\t\t{first}\n\t\t\t{rest.length ? (\n\t\t\t\t<>\n\t\t\t\t\t<u>{accessKey}</u>\n\t\t\t\t\t{rest.join(accessKey)}\n\t\t\t\t</>\n\t\t\t) : null}\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{s as se,j}from"./index-db4aa6e4.js";import{a as setMode}from"./index-78685f70.js";import{L as Log}from"./dev.utils-fab45cbc.js";setMode((o=>{try{o.shadowRoot instanceof ShadowRoot&&se(o,j(o))}catch(o){}return"default"})),import("./devtools-4bfa2f22.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{Log.error(o)}));const globalFn=()=>{},appGlobalScript=globalFn,globalScripts=appGlobalScript;export{globalScripts as g};
4
+ import{s as se,j}from"./index-db4aa6e4.js";import{a as setMode}from"./index-bd96e8df.js";import{L as Log}from"./dev.utils-fab45cbc.js";setMode((o=>{try{o.shadowRoot instanceof ShadowRoot&&se(o,j(o))}catch(o){}return"default"})),import("./devtools-a88bc2ec.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{Log.error(o)}));const globalFn=()=>{},appGlobalScript=globalFn,globalScripts=appGlobalScript;export{globalScripts as g};
@@ -1 +1 @@
1
- {"file":"app-globals-67542d5b.js","mappings":";;;;;;;AAKA,OAAO,CAAC,CAAC,GAAG;IACX,IAAI;QACH,IAAI,GAAG,CAAC,UAAU,YAAY,UAAU,EAAE;YACzCA,EAAa,CAAC,GAAG,EAAEC,CAAe,CAAC,GAAG,CAAC,CAAC,CAAC;SACzC;KACD;IAAC,OAAO,KAAK,EAAE;KAMf;IACD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,wBAAY,CAAC;KAClB,IAAI,CAAC,CAAC,QAAQ;IACd,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;QACnG,QAAQ,CAAC,UAAU,EAAE,CAAC;KACtB;AACF,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK;IACZ,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;;;;AC3BQ,MAAC,aAAa,GAAG;;;;","names":["setThemeStyle","getThemeDetails"],"sources":["src/global/script.ts","@stencil/core/internal/app-globals"],"sourcesContent":["import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log } from '../schema';\nimport { setMode } from '@stencil/core';\n\nsetMode((elm) => {\n\ttry {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t} catch (error) {\n\t\t/**\n\t\t * Try is needed for SSR.\n\t\t * - no HTMLElement is available\n\t\t * - no ShadowRoot is available\n\t\t */\n\t}\n\treturn 'default';\n});\n\nimport('./devtools')\n\t.then((devTools) => {\n\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\tdevTools.initialize();\n\t\t}\n\t})\n\t.catch((error) => {\n\t\tLog.error(error);\n\t});\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n"],"version":3}
1
+ {"file":"app-globals-ca7441bd.js","mappings":";;;;;;;AAKA,OAAO,CAAC,CAAC,GAAG;IACX,IAAI;QACH,IAAI,GAAG,CAAC,UAAU,YAAY,UAAU,EAAE;YACzCA,EAAa,CAAC,GAAG,EAAEC,CAAe,CAAC,GAAG,CAAC,CAAC,CAAC;SACzC;KACD;IAAC,OAAO,KAAK,EAAE;KAMf;IACD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,wBAAY,CAAC;KAClB,IAAI,CAAC,CAAC,QAAQ;IACd,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;QACnG,QAAQ,CAAC,UAAU,EAAE,CAAC;KACtB;AACF,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK;IACZ,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;;;;AC3BQ,MAAC,aAAa,GAAG;;;;","names":["setThemeStyle","getThemeDetails"],"sources":["src/global/script.ts","@stencil/core/internal/app-globals"],"sourcesContent":["import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log } from '../schema';\nimport { setMode } from '@stencil/core';\n\nsetMode((elm) => {\n\ttry {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t} catch (error) {\n\t\t/**\n\t\t * Try is needed for SSR.\n\t\t * - no HTMLElement is available\n\t\t * - no ShadowRoot is available\n\t\t */\n\t}\n\treturn 'default';\n});\n\nimport('./devtools')\n\t.then((devTools) => {\n\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\tdevTools.initialize();\n\t\t}\n\t})\n\t.catch((error) => {\n\t\tLog.error(error);\n\t});\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n"],"version":3}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{i as watchString,b as watchBoolean}from"./prop.validators-f89d26b4.js";const validateAlternativeButtonLinkRole=(a,t)=>{watchString(a,"_role",t)},validateAriaDescription=(a,t)=>{watchString(a,"_ariaDescription",t)},validateAriaExpanded=(a,t)=>{watchBoolean(a,"_ariaExpanded",t)};export{validateAriaExpanded as a,validateAlternativeButtonLinkRole as b,validateAriaDescription as v};
@@ -0,0 +1 @@
1
+ {"file":"aria-expanded-e75617bf.js","mappings":";;;;;MAca,iCAAiC,GAAG,CAAC,SAAoC,EAAE,KAAyC;IAChI,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACxC;;MCFa,uBAAuB,GAAG,CAAC,SAAoC,EAAE,KAA+B;IAC5G,WAAW,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;AACnD;;MCAa,oBAAoB,GAAG,CAAC,SAAoC,EAAE,KAA4B;IACtG,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;AACjD;;;;","names":[],"sources":["src/schema/props/alternative-button-link-role.ts","src/schema/props/aria-description.ts","src/schema/props/aria-expanded.ts"],"sourcesContent":["/* types */\nimport type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../utils';\n\nexport type AlternativeButtonLinkRolePropType = 'button' | 'link' | 'tab' | 'treeitem';\n\n/**\n * Defines the role of the components primary element.\n */\nexport type PropAlternativeButtonLinkRole = {\n\trole: AlternativeButtonLinkRolePropType;\n};\n\n/* validator */\nexport const validateAlternativeButtonLinkRole = (component: Generic.Element.Component, value?: AlternativeButtonLinkRolePropType) => {\n\twatchString(component, '_role', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../utils';\n\n/* types */\nexport type AriaDescriptionPropType = string;\n\n/**\n * Defines the value for the aria-description attribute.\n */\nexport type PropAriaDescription = {\n\tariaDescription: AriaDescriptionPropType;\n};\n\n/* validator */\nexport const validateAriaDescription = (component: Generic.Element.Component, value?: AriaDescriptionPropType): void => {\n\twatchString(component, '_ariaDescription', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type AriaExpandedPropType = boolean;\n\n/**\n * Marks this element as open/expanded, or that the connected element (aria-controls/aria-owns) is open/expanded.\n * (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n */\nexport type PropAriaExpanded = {\n\tariaExpanded: AriaExpandedPropType;\n};\n\n/* validator */\nexport const validateAriaExpanded = (component: Generic.Element.Component, value?: AriaExpandedPropType): void => {\n\twatchBoolean(component, '_ariaExpanded', value);\n};\n"],"version":3}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{a as getExperimentalMode}from"./dev.utils-fab45cbc.js";import{i as watchString,j as devHint,l as devWarning}from"./prop.validators-f89d26b4.js";const validateName=(t,e,i)=>{watchString(t,"_name",e,i)},isAssociatedTagName=t=>"KOL-BUTTON"===t||"KOL-COMBOBOX"===t||"KOL-INPUT-CHECKBOX"===t||"KOL-INPUT-COLOR"===t||"KOL-INPUT-DATE"===t||"KOL-INPUT-EMAIL"===t||"KOL-INPUT-FILE"===t||"KOL-INPUT-NUMBER"===t||"KOL-INPUT-PASSWORD"===t||"KOL-INPUT-RADIO"===t||"KOL-INPUT-RANGE"===t||"KOL-INPUT-TEXT"===t||"KOL-SELECT"===t||"KOL-SINGLE-SELECT"===t||"KOL-TEXTAREA"===t;class AssociatedInputController{constructor(t,e,i){var s,o,a;if(this.experimentalMode=getExperimentalMode(),this.setFormAssociatedValue=t=>{var e;const i=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==i&&""!==i||devHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const s=this.tryToStringifyValue(t);this.syncValue(t,s,this.formAssociated),this.syncValue(t,s,this.syncToOwnInput)},this.component=t,this.host=this.findHostWithShadowRoot(i),this.type=e,this.experimentalMode&&isAssociatedTagName(null===(s=this.host)||void 0===s?void 0:s.tagName)&&t._name){switch(null===(o=this.host)||void 0===o||o.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("aria-hidden","true"),this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(a=this.host)||void 0===a||a.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,i){if(this.experimentalMode)try{if("boolean"!=typeof(i="object"==typeof i&&null!==i?JSON.stringify(i):i)&&"number"!=typeof i&&"string"!=typeof i)throw new Error("Invalid value type: "+typeof i);null==e||e.setAttribute(t,`${i}`)}catch(i){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return devWarning(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,i){if(i)switch(this.type){case"file":i.files=t;break;case"select":i.querySelectorAll("option").forEach((t=>{i.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),i.appendChild(t)}}));break;case"radio":"string"==typeof e&&(i.setAttribute("value",e),i.setAttribute("checked",""),i.value=e);break;default:"string"==typeof e?(i.setAttribute("value",e),i.value=e):(i.removeAttribute("value"),i.value="")}}validateName(t){validateName(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&devHint("A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.")}validateSyncValueBySelector(t){if(this.experimentalMode&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}export{AssociatedInputController as A};
@@ -0,0 +1 @@
1
+ {"file":"associated.controller-8e2d43be.js","mappings":"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","names":[],"sources":["src/schema/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchStringOptions } from '../utils';\nimport { watchString } from '../utils';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { NamePropType, PropSyncValueBySelector, StencilUnknown, SyncValueBySelectorPropType } from '../../schema';\nimport { devHint, devWarning, getExperimentalMode, validateName } from '../../schema';\n\nimport type { Generic } from 'adopted-style-sheets';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\ntype HTMLInputFileElement = HTMLInputElement & {\n\tfiles: FileList;\n};\n\nconst isAssociatedTagName = (name?: string): boolean =>\n\tname === 'KOL-BUTTON' ||\n\tname === 'KOL-COMBOBOX' ||\n\tname === 'KOL-INPUT-CHECKBOX' ||\n\tname === 'KOL-INPUT-COLOR' ||\n\tname === 'KOL-INPUT-DATE' ||\n\tname === 'KOL-INPUT-EMAIL' ||\n\tname === 'KOL-INPUT-FILE' ||\n\tname === 'KOL-INPUT-NUMBER' ||\n\tname === 'KOL-INPUT-PASSWORD' ||\n\tname === 'KOL-INPUT-RADIO' ||\n\tname === 'KOL-INPUT-RANGE' ||\n\tname === 'KOL-INPUT-TEXT' ||\n\tname === 'KOL-SELECT' ||\n\tname === 'KOL-SINGLE-SELECT' ||\n\tname === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprivate readonly experimentalMode = getExperimentalMode();\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (this.experimentalMode && isAssociatedTagName(this.host?.tagName) && component._name) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'checkbox': // Checkbox uses default case\n\t\t\t\tcase 'single-select': // SingleSelect uses default case\n\t\t\t\tcase 'combobox': // Combobox uses default case\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (this.experimentalMode) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement,\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'file':\n\t\t\t\t\t(associatedElement as HTMLInputFileElement).files = rawValue as FileList;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'radio':\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.setAttribute('checked', '');\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (this.experimentalMode && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- let KolAbbrTag="kol-abbr",KolAccordionTag="kol-accordion",KolAlertTag="kol-alert",KolAlertWcTag="kol-alert-wc",KolAvatarTag="kol-avatar",KolAvatarWcTag="kol-avatar-wc",KolBadgeTag="kol-badge",KolBreadcrumbTag="kol-breadcrumb",KolButtonGroupTag="kol-button-group",KolButtonGroupWcTag="kol-button-group-wc",KolButtonLinkTag="kol-button-link",KolButtonTag="kol-button",KolButtonWcTag="kol-button-wc",KolCardTag="kol-card",KolDetailsTag="kol-details",KolDrawerTag="kol-drawer",KolFormTag="kol-form",KolHeadingTag="kol-heading",KolHeadingWcTag="kol-heading-wc",KolIconTag="kol-icon",KolImageTag="kol-image",KolIndentedTextTag="kol-indented-text",KolIndentedTextWcTag="kol-indented-text-wc",KolInputCheckboxTag="kol-input-checkbox",KolInputColorTag="kol-input-color",KolInputDateTag="kol-input-date",KolInputEmailTag="kol-input-email",KolInputFileTag="kol-input-file",KolInputNumberTag="kol-input-number",KolInputPasswordTag="kol-input-password",KolInputRadioTag="kol-input-radio",KolInputRangeTag="kol-input-range",KolInputWcTag="kol-input",KolInputTextTag="kol-input-text",KolKolibriTag="kol-kolibri",KolLinkButtonTag="kol-link-button",KolLinkGroupTag="kol-link-group",KolLinkTag="kol-link",KolLinkWcTag="kol-link-wc",KolLogoTag="kol-logo",KolModalTag="kol-modal",KolNavTag="kol-nav",KolPaginationTag="kol-pagination",KolPopoverWcTag="kol-popover-wc",KolProgressTag="kol-progress",KolQuoteTag="kol-quote",KolSelectTag="kol-select",KolSkipNavTag="kol-skip-nav",KolSpanWcTag="kol-span-wc",KolSpinTag="kol-spin",KolSplitButtonTag="kol-split-button",KolSymbolTag="kol-symbol",KolTableStatefulTag="kol-table-stateful",KolTableStatelessTag="kol-table-stateless",KolTableStatelessWcTag="kol-table-stateless-wc",KolTableTag="kol-table",KolTabsTag="kol-tabs",KolTextareaTag="kol-textarea",KolToastContainerTag="kol-toast-container",KolTooltipWcTag="kol-tooltip-wc",KolTreeItemTag="kol-tree-item",KolTreeItemWcTag="kol-tree-item-wc",KolTreeTag="kol-tree",KolTreeWcTag="kol-tree-wc",KolVersionTag="kol-version";const setCustomTagNames=o=>{KolAbbrTag=o(KolAbbrTag),KolAccordionTag=o(KolAccordionTag),KolAlertTag=o(KolAlertTag),KolAlertWcTag=o(KolAlertWcTag),KolAvatarTag=o(KolAvatarTag),KolAvatarWcTag=o(KolAvatarWcTag),KolBadgeTag=o(KolBadgeTag),KolBreadcrumbTag=o(KolBreadcrumbTag),KolButtonGroupTag=o(KolButtonGroupTag),KolButtonGroupWcTag=o(KolButtonGroupWcTag),KolButtonLinkTag=o(KolButtonLinkTag),KolButtonTag=o(KolButtonTag),KolButtonWcTag=o(KolButtonWcTag),KolCardTag=o(KolCardTag),KolDetailsTag=o(KolDetailsTag),KolDrawerTag=o(KolDrawerTag),KolFormTag=o(KolFormTag),KolHeadingTag=o(KolHeadingTag),KolHeadingWcTag=o(KolHeadingWcTag),KolIconTag=o(KolIconTag),KolImageTag=o(KolImageTag),KolIndentedTextTag=o(KolIndentedTextTag),KolIndentedTextWcTag=o(KolIndentedTextWcTag),KolInputCheckboxTag=o(KolInputCheckboxTag),KolInputColorTag=o(KolInputColorTag),KolInputDateTag=o(KolInputDateTag),KolInputEmailTag=o(KolInputEmailTag),KolInputFileTag=o(KolInputFileTag),KolInputNumberTag=o(KolInputNumberTag),KolInputPasswordTag=o(KolInputPasswordTag),KolInputRadioTag=o(KolInputRadioTag),KolInputRangeTag=o(KolInputRangeTag),KolInputWcTag=o(KolInputWcTag),KolInputTextTag=o(KolInputTextTag),KolKolibriTag=o(KolKolibriTag),KolLinkButtonTag=o(KolLinkButtonTag),KolLinkGroupTag=o(KolLinkGroupTag),KolLinkTag=o(KolLinkTag),KolLinkWcTag=o(KolLinkWcTag),KolLogoTag=o(KolLogoTag),KolModalTag=o(KolModalTag),KolNavTag=o(KolNavTag),KolPaginationTag=o(KolPaginationTag),KolPopoverWcTag=o(KolPopoverWcTag),KolProgressTag=o(KolProgressTag),KolQuoteTag=o(KolQuoteTag),KolSelectTag=o(KolSelectTag),KolSkipNavTag=o(KolSkipNavTag),KolSpanWcTag=o(KolSpanWcTag),KolSpinTag=o(KolSpinTag),KolSplitButtonTag=o(KolSplitButtonTag),KolSymbolTag=o(KolSymbolTag),KolTableStatefulTag=o(KolTableStatefulTag),KolTableStatelessTag=o(KolTableStatelessTag),KolTableStatelessWcTag=o(KolTableStatelessWcTag),KolTableTag=o(KolTableTag),KolTabsTag=o(KolTabsTag),KolTextareaTag=o(KolTextareaTag),KolToastContainerTag=o(KolToastContainerTag),o(KolTooltipWcTag),KolTooltipWcTag=o(KolTooltipWcTag),KolTreeItemTag=o(KolTreeItemTag),KolTreeItemWcTag=o(KolTreeItemWcTag),KolTreeTag=o(KolTreeTag),KolTreeWcTag=o(KolTreeWcTag),KolVersionTag=o(KolVersionTag)};export{KolTreeItemTag as A,KolToastContainerTag as K,KolTooltipWcTag as a,KolHeadingWcTag as b,KolButtonWcTag as c,KolAlertWcTag as d,KolAvatarWcTag as e,KolSpanWcTag as f,KolIconTag as g,KolLinkTag as h,KolButtonGroupWcTag as i,KolIndentedTextTag as j,KolIndentedTextWcTag as k,KolInputWcTag as l,KolFormTag as m,KolLinkWcTag as n,KolButtonTag as o,KolSelectTag as p,KolTableStatefulTag as q,KolTableStatelessWcTag as r,setCustomTagNames as s,KolPaginationTag as t,KolAlertTag as u,KolTreeWcTag as v,KolTreeItemWcTag as w,KolBadgeTag as x,KolInputCheckboxTag as y,KolTreeTag as z};
4
+ let KolAbbrTag="kol-abbr",KolAccordionTag="kol-accordion",KolAlertTag="kol-alert",KolAlertWcTag="kol-alert-wc",KolAvatarTag="kol-avatar",KolAvatarWcTag="kol-avatar-wc",KolBadgeTag="kol-badge",KolBreadcrumbTag="kol-breadcrumb",KolButtonGroupTag="kol-button-group",KolButtonGroupWcTag="kol-button-group-wc",KolButtonLinkTag="kol-button-link",KolButtonTag="kol-button",KolButtonWcTag="kol-button-wc",KolCardTag="kol-card",KolDetailsTag="kol-details",KolDrawerTag="kol-drawer",KolFormTag="kol-form",KolHeadingTag="kol-heading",KolHeadingWcTag="kol-heading-wc",KolIconTag="kol-icon",KolImageTag="kol-image",KolIndentedTextTag="kol-indented-text",KolIndentedTextWcTag="kol-indented-text-wc",KolInputCheckboxTag="kol-input-checkbox",KolInputColorTag="kol-input-color",KolInputDateTag="kol-input-date",KolInputEmailTag="kol-input-email",KolInputFileTag="kol-input-file",KolInputNumberTag="kol-input-number",KolInputPasswordTag="kol-input-password",KolInputRadioTag="kol-input-radio",KolInputRangeTag="kol-input-range",KolInputWcTag="kol-input",KolInputTextTag="kol-input-text",KolKolibriTag="kol-kolibri",KolLinkButtonTag="kol-link-button",KolLinkGroupTag="kol-link-group",KolLinkTag="kol-link",KolLinkWcTag="kol-link-wc",KolLogoTag="kol-logo",KolModalTag="kol-modal",KolNavTag="kol-nav",KolPaginationTag="kol-pagination",KolPopoverWcTag="kol-popover-wc",KolProgressTag="kol-progress",KolQuoteTag="kol-quote",KolSelectTag="kol-select",KolSkipNavTag="kol-skip-nav",KolSpanWcTag="kol-span-wc",KolSpinTag="kol-spin",KolSplitButtonTag="kol-split-button",KolSymbolTag="kol-symbol",KolTableStatefulTag="kol-table-stateful",KolTableStatelessTag="kol-table-stateless",KolTableStatelessWcTag="kol-table-stateless-wc",KolTableTag="kol-table",KolTabsTag="kol-tabs",KolTextareaTag="kol-textarea",KolToastContainerTag="kol-toast-container",KolTooltipWcTag="kol-tooltip-wc",KolTreeItemTag="kol-tree-item",KolTreeItemWcTag="kol-tree-item-wc",KolTreeTag="kol-tree",KolTreeWcTag="kol-tree-wc",KolVersionTag="kol-version";const setCustomTagNames=o=>{KolAbbrTag=o(KolAbbrTag),KolAccordionTag=o(KolAccordionTag),KolAlertTag=o(KolAlertTag),KolAlertWcTag=o(KolAlertWcTag),KolAvatarTag=o(KolAvatarTag),KolAvatarWcTag=o(KolAvatarWcTag),KolBadgeTag=o(KolBadgeTag),KolBreadcrumbTag=o(KolBreadcrumbTag),KolButtonGroupTag=o(KolButtonGroupTag),KolButtonGroupWcTag=o(KolButtonGroupWcTag),KolButtonLinkTag=o(KolButtonLinkTag),KolButtonTag=o(KolButtonTag),KolButtonWcTag=o(KolButtonWcTag),KolCardTag=o(KolCardTag),KolDetailsTag=o(KolDetailsTag),KolDrawerTag=o(KolDrawerTag),KolFormTag=o(KolFormTag),KolHeadingTag=o(KolHeadingTag),KolHeadingWcTag=o(KolHeadingWcTag),KolIconTag=o(KolIconTag),KolImageTag=o(KolImageTag),KolIndentedTextTag=o(KolIndentedTextTag),KolIndentedTextWcTag=o(KolIndentedTextWcTag),KolInputCheckboxTag=o(KolInputCheckboxTag),KolInputColorTag=o(KolInputColorTag),KolInputDateTag=o(KolInputDateTag),KolInputEmailTag=o(KolInputEmailTag),KolInputFileTag=o(KolInputFileTag),KolInputNumberTag=o(KolInputNumberTag),KolInputPasswordTag=o(KolInputPasswordTag),KolInputRadioTag=o(KolInputRadioTag),KolInputRangeTag=o(KolInputRangeTag),KolInputWcTag=o(KolInputWcTag),KolInputTextTag=o(KolInputTextTag),KolKolibriTag=o(KolKolibriTag),KolLinkButtonTag=o(KolLinkButtonTag),KolLinkGroupTag=o(KolLinkGroupTag),KolLinkTag=o(KolLinkTag),KolLinkWcTag=o(KolLinkWcTag),KolLogoTag=o(KolLogoTag),KolModalTag=o(KolModalTag),KolNavTag=o(KolNavTag),KolPaginationTag=o(KolPaginationTag),KolPopoverWcTag=o(KolPopoverWcTag),KolProgressTag=o(KolProgressTag),KolQuoteTag=o(KolQuoteTag),KolSelectTag=o(KolSelectTag),KolSkipNavTag=o(KolSkipNavTag),KolSpanWcTag=o(KolSpanWcTag),KolSpinTag=o(KolSpinTag),KolSplitButtonTag=o(KolSplitButtonTag),KolSymbolTag=o(KolSymbolTag),KolTableStatefulTag=o(KolTableStatefulTag),KolTableStatelessTag=o(KolTableStatelessTag),KolTableStatelessWcTag=o(KolTableStatelessWcTag),KolTableTag=o(KolTableTag),KolTabsTag=o(KolTabsTag),KolTextareaTag=o(KolTextareaTag),KolToastContainerTag=o(KolToastContainerTag),o(KolTooltipWcTag),KolTooltipWcTag=o(KolTooltipWcTag),KolTreeItemTag=o(KolTreeItemTag),KolTreeItemWcTag=o(KolTreeItemWcTag),KolTreeTag=o(KolTreeTag),KolTreeWcTag=o(KolTreeWcTag),KolVersionTag=o(KolVersionTag)};export{KolToastContainerTag as K,KolTooltipWcTag as a,KolHeadingWcTag as b,KolButtonWcTag as c,KolAlertWcTag as d,KolAvatarWcTag as e,KolSpanWcTag as f,KolIconTag as g,KolLinkTag as h,KolButtonGroupWcTag as i,KolIndentedTextTag as j,KolIndentedTextWcTag as k,KolInputWcTag as l,KolFormTag as m,KolLinkWcTag as n,KolButtonTag as o,KolSelectTag as p,KolTableStatefulTag as q,KolTableStatelessWcTag as r,setCustomTagNames as s,KolPaginationTag as t,KolAlertTag as u,KolTreeWcTag as v,KolTreeItemWcTag as w,KolBadgeTag as x,KolTreeTag as y,KolTreeItemTag as z};
@@ -0,0 +1 @@
1
+ {"file":"component-names-3e0158fe.js","mappings":"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","names":[],"sources":["src/core/component-names.ts"],"sourcesContent":["export let KolAbbrTag = 'kol-abbr' as const;\nexport let KolAccordionTag = 'kol-accordion' as const;\nexport let KolAlertTag = 'kol-alert' as const;\nexport let KolAlertWcTag = 'kol-alert-wc' as const;\nexport let KolAvatarTag = 'kol-avatar' as const;\nexport let KolAvatarWcTag = 'kol-avatar-wc' as const;\nexport let KolBadgeTag = 'kol-badge' as const;\nexport let KolBreadcrumbTag = 'kol-breadcrumb' as const;\nexport let KolButtonGroupTag = 'kol-button-group' as const;\nexport let KolButtonGroupWcTag = 'kol-button-group-wc' as const;\nexport let KolButtonLinkTag = 'kol-button-link' as const;\nexport let KolButtonTag = 'kol-button' as const;\nexport let KolButtonWcTag = 'kol-button-wc' as const;\nexport let KolCardTag = 'kol-card' as const;\nexport let KolDetailsTag = 'kol-details' as const;\nexport let KolDrawerTag = 'kol-drawer' as const;\nexport let KolFormTag = 'kol-form' as const;\nexport let KolHeadingTag = 'kol-heading' as const;\nexport let KolHeadingWcTag = 'kol-heading-wc' as const;\nexport let KolIconTag = 'kol-icon' as const;\nexport let KolImageTag = 'kol-image' as const;\nexport let KolIndentedTextTag = 'kol-indented-text' as const;\nexport let KolIndentedTextWcTag = 'kol-indented-text-wc' as const;\nexport let KolInputCheckboxTag = 'kol-input-checkbox' as const;\nexport let KolInputColorTag = 'kol-input-color' as const;\nexport let KolInputDateTag = 'kol-input-date' as const;\nexport let KolInputEmailTag = 'kol-input-email' as const;\nexport let KolInputFileTag = 'kol-input-file' as const;\nexport let KolInputNumberTag = 'kol-input-number' as const;\nexport let KolInputPasswordTag = 'kol-input-password' as const;\nexport let KolInputRadioTag = 'kol-input-radio' as const;\nexport let KolInputRangeTag = 'kol-input-range' as const;\nexport let KolInputWcTag = 'kol-input' as const;\nexport let KolInputTextTag = 'kol-input-text' as const;\nexport let KolKolibriTag = 'kol-kolibri' as const;\nexport let KolLinkButtonTag = 'kol-link-button' as const;\nexport let KolLinkGroupTag = 'kol-link-group' as const;\nexport let KolLinkTag = 'kol-link' as const;\nexport let KolLinkWcTag = 'kol-link-wc' as const;\nexport let KolLogoTag = 'kol-logo' as const;\nexport let KolModalTag = 'kol-modal' as const;\nexport let KolNavTag = 'kol-nav' as const;\nexport let KolPaginationTag = 'kol-pagination' as const;\nexport let KolPopoverWcTag = 'kol-popover-wc' as const;\nexport let KolProgressTag = 'kol-progress' as const;\nexport let KolQuoteTag = 'kol-quote' as const;\nexport let KolSelectTag = 'kol-select' as const;\nexport let KolSkipNavTag = 'kol-skip-nav' as const;\nexport let KolSpanWcTag = 'kol-span-wc' as const;\nexport let KolSpinTag = 'kol-spin' as const;\nexport let KolSplitButtonTag = 'kol-split-button' as const;\nexport let KolSymbolTag = 'kol-symbol' as const;\nexport let KolTableStatefulTag = 'kol-table-stateful';\nexport let KolTableStatelessTag = 'kol-table-stateless' as const;\nexport let KolTableStatelessWcTag = 'kol-table-stateless-wc' as const;\nexport let KolTableTag = 'kol-table' as const;\nexport let KolTabsTag = 'kol-tabs' as const;\nexport let KolTextareaTag = 'kol-textarea' as const;\nexport let KolToastContainerTag = 'kol-toast-container' as const;\nexport let KolToolbarTag = 'kol-toolbar' as const;\nexport let KolTooltipWcTag = 'kol-tooltip-wc' as const;\nexport let KolTreeItemTag = 'kol-tree-item' as const;\nexport let KolTreeItemWcTag = 'kol-tree-item-wc' as const;\nexport let KolTreeTag = 'kol-tree' as const;\nexport let KolTreeWcTag = 'kol-tree-wc' as const;\nexport let KolVersionTag = 'kol-version' as const;\n\nexport const setCustomTagNames = (transformTagName: (tagName: string) => string) => {\n\tKolAbbrTag = transformTagName(KolAbbrTag as string) as 'kol-abbr';\n\tKolAccordionTag = transformTagName(KolAccordionTag as string) as 'kol-accordion';\n\tKolAlertTag = transformTagName(KolAlertTag as string) as 'kol-alert';\n\tKolAlertWcTag = transformTagName(KolAlertWcTag as string) as 'kol-alert-wc';\n\tKolAvatarTag = transformTagName(KolAvatarTag as string) as 'kol-avatar';\n\tKolAvatarWcTag = transformTagName(KolAvatarWcTag as string) as 'kol-avatar-wc';\n\tKolBadgeTag = transformTagName(KolBadgeTag as string) as 'kol-badge';\n\tKolBreadcrumbTag = transformTagName(KolBreadcrumbTag as string) as 'kol-breadcrumb';\n\tKolButtonGroupTag = transformTagName(KolButtonGroupTag as string) as 'kol-button-group';\n\tKolButtonGroupWcTag = transformTagName(KolButtonGroupWcTag as string) as 'kol-button-group-wc';\n\tKolButtonLinkTag = transformTagName(KolButtonLinkTag as string) as 'kol-button-link';\n\tKolButtonTag = transformTagName(KolButtonTag as string) as 'kol-button';\n\tKolButtonWcTag = transformTagName(KolButtonWcTag as string) as 'kol-button-wc';\n\tKolCardTag = transformTagName(KolCardTag as string) as 'kol-card';\n\tKolDetailsTag = transformTagName(KolDetailsTag as string) as 'kol-details';\n\tKolDrawerTag = transformTagName(KolDrawerTag as string) as 'kol-drawer';\n\tKolFormTag = transformTagName(KolFormTag as string) as 'kol-form';\n\tKolHeadingTag = transformTagName(KolHeadingTag as string) as 'kol-heading';\n\tKolHeadingWcTag = transformTagName(KolHeadingWcTag as string) as 'kol-heading-wc';\n\tKolIconTag = transformTagName(KolIconTag as string) as 'kol-icon';\n\tKolImageTag = transformTagName(KolImageTag as string) as 'kol-image';\n\tKolIndentedTextTag = transformTagName(KolIndentedTextTag as string) as 'kol-indented-text';\n\tKolIndentedTextWcTag = transformTagName(KolIndentedTextWcTag as string) as 'kol-indented-text-wc';\n\tKolInputCheckboxTag = transformTagName(KolInputCheckboxTag as string) as 'kol-input-checkbox';\n\tKolInputColorTag = transformTagName(KolInputColorTag as string) as 'kol-input-color';\n\tKolInputDateTag = transformTagName(KolInputDateTag as string) as 'kol-input-date';\n\tKolInputEmailTag = transformTagName(KolInputEmailTag as string) as 'kol-input-email';\n\tKolInputFileTag = transformTagName(KolInputFileTag as string) as 'kol-input-file';\n\tKolInputNumberTag = transformTagName(KolInputNumberTag as string) as 'kol-input-number';\n\tKolInputPasswordTag = transformTagName(KolInputPasswordTag as string) as 'kol-input-password';\n\tKolInputRadioTag = transformTagName(KolInputRadioTag as string) as 'kol-input-radio';\n\tKolInputRangeTag = transformTagName(KolInputRangeTag as string) as 'kol-input-range';\n\tKolInputWcTag = transformTagName(KolInputWcTag as string) as 'kol-input';\n\tKolInputTextTag = transformTagName(KolInputTextTag as string) as 'kol-input-text';\n\tKolKolibriTag = transformTagName(KolKolibriTag as string) as 'kol-kolibri';\n\tKolLinkButtonTag = transformTagName(KolLinkButtonTag as string) as 'kol-link-button';\n\tKolLinkGroupTag = transformTagName(KolLinkGroupTag as string) as 'kol-link-group';\n\tKolLinkTag = transformTagName(KolLinkTag as string) as 'kol-link';\n\tKolLinkWcTag = transformTagName(KolLinkWcTag as string) as 'kol-link-wc';\n\tKolLogoTag = transformTagName(KolLogoTag as string) as 'kol-logo';\n\tKolModalTag = transformTagName(KolModalTag as string) as 'kol-modal';\n\tKolNavTag = transformTagName(KolNavTag as string) as 'kol-nav';\n\tKolPaginationTag = transformTagName(KolPaginationTag as string) as 'kol-pagination';\n\tKolPopoverWcTag = transformTagName(KolPopoverWcTag as string) as 'kol-popover-wc';\n\tKolProgressTag = transformTagName(KolProgressTag as string) as 'kol-progress';\n\tKolQuoteTag = transformTagName(KolQuoteTag as string) as 'kol-quote';\n\tKolSelectTag = transformTagName(KolSelectTag as string) as 'kol-select';\n\tKolSkipNavTag = transformTagName(KolSkipNavTag as string) as 'kol-skip-nav';\n\tKolSpanWcTag = transformTagName(KolSpanWcTag as string) as 'kol-span-wc';\n\tKolSpinTag = transformTagName(KolSpinTag as string) as 'kol-spin';\n\tKolSplitButtonTag = transformTagName(KolSplitButtonTag as string) as 'kol-split-button';\n\tKolSymbolTag = transformTagName(KolSymbolTag as string) as 'kol-symbol';\n\tKolTableStatefulTag = transformTagName(KolTableStatefulTag) as 'kol-table-stateful';\n\tKolTableStatelessTag = transformTagName(KolTableStatelessTag as string) as 'kol-table-stateless';\n\tKolTableStatelessWcTag = transformTagName(KolTableStatelessWcTag as string) as 'kol-table-stateless-wc';\n\tKolTableTag = transformTagName(KolTableTag as string) as 'kol-table';\n\tKolTabsTag = transformTagName(KolTabsTag as string) as 'kol-tabs';\n\tKolTextareaTag = transformTagName(KolTextareaTag as string) as 'kol-textarea';\n\tKolToastContainerTag = transformTagName(KolToastContainerTag as string) as 'kol-toast-container';\n\tKolToolbarTag = transformTagName(KolTooltipWcTag as string) as 'kol-toolbar';\n\tKolTooltipWcTag = transformTagName(KolTooltipWcTag as string) as 'kol-tooltip-wc';\n\tKolTreeItemTag = transformTagName(KolTreeItemTag as string) as 'kol-tree-item';\n\tKolTreeItemWcTag = transformTagName(KolTreeItemWcTag as string) as 'kol-tree-item-wc';\n\tKolTreeTag = transformTagName(KolTreeTag as string) as 'kol-tree';\n\tKolTreeWcTag = transformTagName(KolTreeWcTag as string) as 'kol-tree-wc';\n\tKolVersionTag = transformTagName(KolVersionTag as string) as 'kol-version';\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{I as InputController}from"./controller-a3b04811.js";import{a as a11yHint,g as watchJsonArrayString,b as watchBoolean,w as watchValidator,m as mapString2Unknown,s as setState}from"./prop.validators-f89d26b4.js";import{b as hasEnoughReadableChars,c as containsOnlyNumbers}from"./label-37acddfe.js";const validateInputSelectOptions=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===hasEnoughReadableChars(t.label,3)&&!1===containsOnlyNumbers(t.label)&&a11yHint(`A differing Aria-Label (${t.label}) is not accessible. A differing Aria-Label should consist of at least three readable characters.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===validateInputSelectOptions(t)));if("number"==typeof t.label)return!0}return!1},validateOptions=(t,e,o={})=>{watchJsonArrayString(t,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),e,void 0,o)},validateOptionsWithOptgroup=(t,e,o={})=>{watchJsonArrayString(t,"_options",validateInputSelectOptions,e,void 0,o)},validateRequired=(t,e)=>{watchBoolean(t,"_required",e)},orientationOptions=["horizontal","vertical"],fillKeyOptionMap=(t,e,o="")=>{e.forEach(((e,a)=>{const i=`${o}-${a}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?fillKeyOptionMap(t,e.options,i):t.set(i,e))}))};class InputCheckboxRadioController extends InputController{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){validateRequired(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class InputRadioController extends InputCheckboxRadioController{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.afterPatchOptions=(t,e,o,a)=>{"_value"===a&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;Array.isArray(o)&&o.length>0&&(this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,o))},this.component=t}validateOrientation(t){watchValidator(this.component,"_orientation",(t=>"string"==typeof t&&orientationOptions.includes(t)),new Set([`Orientation {${orientationOptions.join(", ")}`]),t,{defaultValue:"vertical"})}validateOptions(t){validateOptions(this.component,t,{hooks:{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions}})}validateValue(t){t=mapString2Unknown(t),t=Array.isArray(t)?t[0]:t,setState(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(){super.componentWillLoad(),this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options),this.validateValue(this.component._value)}}export{InputCheckboxRadioController as I,InputRadioController as a,fillKeyOptionMap as f,validateOptionsWithOptgroup as v};
4
+ import{I as InputController}from"./controller-ec76e4bf.js";import{a as a11yHint,g as watchJsonArrayString,b as watchBoolean,w as watchValidator,m as mapString2Unknown,s as setState}from"./prop.validators-f89d26b4.js";import{b as hasEnoughReadableChars,c as containsOnlyNumbers}from"./label-37acddfe.js";const validateInputSelectOptions=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===hasEnoughReadableChars(t.label,3)&&!1===containsOnlyNumbers(t.label)&&a11yHint(`A differing Aria-Label (${t.label}) is not accessible. A differing Aria-Label should consist of at least three readable characters.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===validateInputSelectOptions(t)));if("number"==typeof t.label)return!0}return!1},validateOptions=(t,e,o={})=>{watchJsonArrayString(t,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),e,void 0,o)},validateOptionsWithOptgroup=(t,e,o={})=>{watchJsonArrayString(t,"_options",validateInputSelectOptions,e,void 0,o)},validateRequired=(t,e)=>{watchBoolean(t,"_required",e)},orientationOptions=["horizontal","vertical"],fillKeyOptionMap=(t,e,o="")=>{e.forEach(((e,a)=>{const i=`${o}-${a}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?fillKeyOptionMap(t,e.options,i):t.set(i,e))}))};class InputCheckboxRadioController extends InputController{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){validateRequired(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class InputRadioController extends InputCheckboxRadioController{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.afterPatchOptions=(t,e,o,a)=>{"_value"===a&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;Array.isArray(o)&&o.length>0&&(this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,o))},this.component=t}validateOrientation(t){watchValidator(this.component,"_orientation",(t=>"string"==typeof t&&orientationOptions.includes(t)),new Set([`Orientation {${orientationOptions.join(", ")}`]),t,{defaultValue:"vertical"})}validateOptions(t){validateOptions(this.component,t,{hooks:{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions}})}validateValue(t){t=mapString2Unknown(t),t=Array.isArray(t)?t[0]:t,setState(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(){super.componentWillLoad(),this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options),this.validateValue(this.component._value)}}export{InputCheckboxRadioController as I,InputRadioController as a,validateOptions as b,fillKeyOptionMap as f,validateOptionsWithOptgroup as v};
@@ -0,0 +1 @@
1
+ {"file":"controller-056d0f3b.js","mappings":"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","names":[],"sources":["src/schema/validators/options.ts","src/schema/props/options.ts","src/schema/props/required.ts","src/schema/types/orientation.ts","src/components/input-radio/controller.ts"],"sourcesContent":["import { containsOnlyNumbers, hasEnoughReadableChars } from '../props';\nimport { a11yHint } from '../utils';\n\nimport type { Optgroup, SelectOption } from '../types';\nexport const validateInputSelectOptions = <T>(option: SelectOption<T>): boolean => {\n\tif (typeof option === 'object' && option !== null) {\n\t\tif (typeof option.label === 'string' && option.label.length > 0) {\n\t\t\toption.disabled = option.disabled === true;\n\t\t\toption.label = `${option.label}`.trim();\n\t\t\tif (hasEnoughReadableChars(option.label, 3) === false && containsOnlyNumbers(option.label) === false) {\n\t\t\t\ta11yHint(`A differing Aria-Label (${option.label}) is not accessible. A differing Aria-Label should consist of at least three readable characters.`);\n\t\t\t}\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\treturn (\n\t\t\t\t\t(option as Optgroup<T>).options.find((item) => {\n\t\t\t\t\t\treturn validateInputSelectOptions(item) === false;\n\t\t\t\t\t}) === undefined\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else if (typeof option.label === 'number') {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { RadioOption, Optgroup, Option, StencilUnknown } from '../types';\nimport type { Stringified } from '../types/common';\nimport type { WatchOptions } from '../utils';\nimport { watchJsonArrayString } from '../utils';\nimport { validateInputSelectOptions } from '../validators';\n\n/* types */\n\nexport type OptionsPropType = Stringified<Option<StencilUnknown>[]>;\nexport type OptionsWithOptgroupPropType = Stringified<(Option<StencilUnknown> | Optgroup<StencilUnknown>)[]>;\nexport type RadioOptionsPropType = Stringified<RadioOption<StencilUnknown>[]>;\n\n/**\n * Options the user can choose from.\n */\nexport type PropOptions = {\n\toptions: OptionsPropType;\n};\n\nexport type PropRadioOptions = {\n\toptions: RadioOptionsPropType;\n};\n\n/**\n * Options the user can choose from, also supporting Optgroup.\n */\nexport type PropOptionsWithOptgroup = {\n\toptions: OptionsWithOptgroupPropType;\n};\n\n/* validators */\n\nexport const validateOptions = (component: Generic.Element.Component, value: OptionsPropType | undefined, options: WatchOptions = {}): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_options',\n\t\t(item: Option<StencilUnknown>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\tvalue,\n\t\tundefined,\n\t\toptions,\n\t);\n};\n\nexport const validateOptionsWithOptgroup = (\n\tcomponent: Generic.Element.Component,\n\tvalue: OptionsWithOptgroupPropType | undefined,\n\toptions: WatchOptions = {},\n) => {\n\twatchJsonArrayString(component, '_options', validateInputSelectOptions, value, undefined, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\ntype RequiredPropType = boolean;\n\n/**\n * Makes the input element required.\n */\nexport type PropRequired = {\n\trequired: RequiredPropType;\n};\n\n/* validator */\nexport const validateRequired = (component: Generic.Element.Component, value?: RequiredPropType): void => {\n\twatchBoolean(component, '_required', value);\n};\n","export const orientationOptions = ['horizontal', 'vertical'] as const;\nexport type Orientation = (typeof orientationOptions)[number];\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tInputRadioProps,\n\tInputRadioWatches,\n\tOptgroup,\n\tRadioOption,\n\tOptionsPropType,\n\tOrientation,\n\tPropLabelWithExpertSlot,\n\tSelectOption,\n\tStencilUnknown,\n\tStringified,\n\tW3CInputValue,\n} from '../../schema';\nimport { mapString2Unknown, orientationOptions, setState, validateOptions, validateRequired, watchValidator } from '../../schema';\n\nimport { InputController } from '../@deprecated/input/controller';\n\nexport const fillKeyOptionMap = <T>(keyOptionMap: Map<string, RadioOption<T>>, options: SelectOption<T>[], preKey = ''): void => {\n\toptions.forEach((option, index) => {\n\t\tconst key = `${preKey}-${index}`;\n\t\tif (typeof option === 'object' && option !== null && typeof option.label === 'string' && option.label.length > 0) {\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\tfillKeyOptionMap(keyOptionMap, (option as Optgroup<T>).options, key);\n\t\t\t} else {\n\t\t\t\tkeyOptionMap.set(key, option as RadioOption<T>);\n\t\t\t}\n\t\t}\n\t});\n};\n\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\trequired: boolean;\n};\ntype InputCheckboxRadioProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputCheckboxRadioWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputCheckboxRadioController extends InputController implements InputCheckboxRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputCheckboxRadioProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputCheckboxRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\tvalidateRequired(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateRequired(this.component._required);\n\t}\n}\n\nexport class InputRadioController extends InputCheckboxRadioController implements InputRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputRadioProps;\n\tprivate readonly keyOptionMap = new Map<string, RadioOption<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & InputRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): RadioOption<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprotected readonly afterPatchOptions = (value: unknown, _state: Record<string, unknown>, _component: Generic.Element.Component, key: string): void => {\n\t\tif (key === '_value') {\n\t\t\tthis.setFormAssociatedValue(value as string);\n\t\t}\n\t};\n\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_orientation',\n\t\t\t(value): boolean => typeof value === 'string' && orientationOptions.includes(value),\n\t\t\tnew Set([`Orientation {${orientationOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: 'vertical',\n\t\t\t},\n\t\t);\n\t}\n\n\tprotected 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}\n\t};\n\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tvalidateOptions(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateValue(value?: Stringified<StencilUnknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? (value[0] as StencilUnknown) : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateOrientation(this.component._orientation);\n\t\tthis.validateOptions(this.component._options);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{b as watchBoolean,w as watchValidator,k as watchNumber,i as watchString}from"./prop.validators-f89d26b4.js";import{I as InputIconController}from"./controller-icon-0c8dba65.js";const validateHasCounter=(t,a)=>{watchBoolean(t,"_hasCounter",a)},PasswordVariantPropTypeOptions=["default","visibility-toggle"],validatePasswordVariant=(t,a)=>{watchValidator(t,"_variant",(t=>"string"==typeof t&&PasswordVariantPropTypeOptions.includes(t)),new Set(PasswordVariantPropTypeOptions),a)};class InputPasswordController extends InputIconController{constructor(t,a,e){super(t,a,e),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}validateVariant(t){validatePasswordVariant(this.component,t)}validateMaxLength(t){watchNumber(this.component,"_maxLength",t,{min:0})}validatePattern(t){watchString(this.component,"_pattern",t)}validatePlaceholder(t){watchString(this.component,"_placeholder",t)}validateReadOnly(t){watchBoolean(this.component,"_readOnly",t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateValue(t){watchString(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateValue(this.component._value),this.validateVariant(this.component._variant)}}export{InputPasswordController as I,validateHasCounter as v};
4
+ import{b as watchBoolean,w as watchValidator,k as watchNumber,i as watchString}from"./prop.validators-f89d26b4.js";import{I as InputIconController}from"./controller-icon-e155a2b1.js";const validateHasCounter=(t,a)=>{watchBoolean(t,"_hasCounter",a)},PasswordVariantPropTypeOptions=["default","visibility-toggle"],validatePasswordVariant=(t,a)=>{watchValidator(t,"_variant",(t=>"string"==typeof t&&PasswordVariantPropTypeOptions.includes(t)),new Set(PasswordVariantPropTypeOptions),a)};class InputPasswordController extends InputIconController{constructor(t,a,e){super(t,a,e),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}validateVariant(t){validatePasswordVariant(this.component,t)}validateMaxLength(t){watchNumber(this.component,"_maxLength",t,{min:0})}validatePattern(t){watchString(this.component,"_pattern",t)}validatePlaceholder(t){watchString(this.component,"_placeholder",t)}validateReadOnly(t){watchBoolean(this.component,"_readOnly",t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateValue(t){watchString(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateValue(this.component._value),this.validateVariant(this.component._variant)}}export{InputPasswordController as I,validateHasCounter as v};
@@ -0,0 +1 @@
1
+ {"file":"controller-3cb3d1e6.js","mappings":";;;;;;MAea,kBAAkB,GAAG,CAAC,SAAoC,EAAE,KAA0B;IAClG,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AAC/C;;ACbA,MAAM,8BAA8B,GAAG,CAAC,SAAS,EAAE,mBAAmB,CAAU,CAAC;AAW1E,MAAM,uBAAuB,GAAG,CAAC,SAAoC,EAAE,KAA+B;IAC5G,cAAc,CACb,SAAS,EACT,UAAU,EACV,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,8BAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtF,IAAI,GAAG,CAAC,8BAA8B,CAAC,EACvC,KAAK,CACL,CAAC;AACH,CAAC;;MCdY,uBAAwB,SAAQ,mBAAmB;IAG/D,YAAmB,SAAyD,EAAE,IAAY,EAAE,IAAkB;QAC7G,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,oBAAoB,CAAC,KAAsB;QACjD,cAAc,CACb,IAAI,CAAC,SAAS,EACd,eAAe,EACf,CAAC,KAAK,KAAc,OAAO,KAAK,KAAK,QAAQ,KAAK,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EACpF,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,EACrB,KAAK,CACL,CAAC;KACF;IAEM,kBAAkB,CAAC,KAAe;QACxC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC1C;IAEM,eAAe,CAAC,KAA+B;QACrD,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC/C;IAEM,iBAAiB,CAAC,KAAc;QACtC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE;YAChD,GAAG,EAAE,CAAC;SACN,CAAC,CAAC;KACH;IAEM,eAAe,CAAC,KAAc;QACpC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;KAC/C;IAEM,mBAAmB,CAAC,KAAc;QACxC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;KACnD;IAEM,gBAAgB,CAAC,KAAe;QACtC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;KACjD;IAEM,gBAAgB,CAAC,KAAe;QACtC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;KACjD;IAEM,aAAa,CAAC,KAAc;QAClC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;KACnE;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC9C;;;;;","names":[],"sources":["src/schema/props/has-counter.ts","src/schema/props/variant/password-variant.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType): void => {\n\twatchBoolean(component, '_hasCounter', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nconst PasswordVariantPropTypeOptions = ['default', 'visibility-toggle'] as const;\nexport type PasswordVariantPropType = (typeof PasswordVariantPropTypeOptions)[number];\n\n/**\n * Defines the different variants for displaying the password input.\n */\nexport type PropPasswordVariant = {\n\tvariant: PasswordVariantPropType;\n};\n\n/* validator */\nexport const validatePasswordVariant = (component: Generic.Element.Component, value?: PasswordVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_variant',\n\t\t(value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value),\n\t\tnew Set(PasswordVariantPropTypeOptions),\n\t\tvalue,\n\t);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\nimport type { PasswordVariantPropType } from '../../schema/props/variant/password-variant';\nimport { validatePasswordVariant } from '../../schema/props/variant/password-variant';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\n\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic validateVariant(value?: PasswordVariantPropType): void {\n\t\tvalidatePasswordVariant(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{v as validateHasCounter,I as InputPasswordController}from"./controller-6d4582e2.js";import{w as watchValidator}from"./prop.validators-f89d26b4.js";import{v as validateSuggestions}from"./suggestions-1d994338.js";const inputTextTypeOptions=["text","search","url","tel"];class InputTextEmailController extends InputPasswordController{constructor(t,o,e){super(t,o,e),this.component=t}validateSuggestions(t){validateSuggestions(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions)}}class InputTextController extends InputTextEmailController{constructor(t,o,e){super(t,o,e),this.hasError=!1,this.component=t}validateType(t){watchValidator(this.component,"_type",(t=>"string"==typeof t&&inputTextTypeOptions.includes(t)),new Set([`String {${inputTextTypeOptions.join(", ")}`]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{InputTextEmailController as I,InputTextController as a};
4
+ import{v as validateHasCounter,I as InputPasswordController}from"./controller-3cb3d1e6.js";import{w as watchValidator}from"./prop.validators-f89d26b4.js";import{v as validateSuggestions}from"./suggestions-1d994338.js";const inputTextTypeOptions=["text","search","url","tel"];class InputTextEmailController extends InputPasswordController{constructor(t,o,e){super(t,o,e),this.component=t}validateSuggestions(t){validateSuggestions(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions)}}class InputTextController extends InputTextEmailController{constructor(t,o,e){super(t,o,e),this.hasError=!1,this.component=t}validateType(t){watchValidator(this.component,"_type",(t=>"string"==typeof t&&inputTextTypeOptions.includes(t)),new Set([`String {${inputTextTypeOptions.join(", ")}`]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{InputTextEmailController as I,InputTextController as a};
@@ -1 +1 @@
1
- {"file":"controller-c311c73b.js","mappings":";;;;;;;AAAO,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAU;;MCahE,wBAAyB,SAAQ,uBAAuB;IAGpE,YAAmB,SAA0D,EAAE,IAAY,EAAE,IAAkB;QAC9G,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,mBAAmB,CAAC,KAA2B;QACrD,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC3C;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;KACtD;CACD;MAEY,mBAAoB,SAAQ,wBAAwB;IAKhE,YAAmB,SAAqD,EAAE,IAAY,EAAE,IAAkB;QACzG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAHvB,aAAQ,GAAG,KAAK,CAAC;QAIvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,YAAY,CAAC,KAAqB;QACxC,cAAc,CACb,IAAI,CAAC,SAAS,EACd,OAAO,EACP,CAAC,KAAK,KAAc,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,EACrF,IAAI,GAAG,CAAC,CAAC,WAAW,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EACvD,KAAK,CACL,CAAC;KACF;IAEM,kBAAkB,CAAC,KAAe;QACxC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC1C;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;KACpD;;;;;","names":[],"sources":["src/schema/types/input/control/text.ts","src/components/input-text/controller.ts"],"sourcesContent":["export const inputTextTypeOptions = ['text', 'search', 'url', 'tel'] as const;\nexport type InputTextType = (typeof inputTextTypeOptions)[number];\n","import type { InputTextProps, InputTextType, InputTextWatches, PropLabelWithExpertSlot, PropSuggestions, SuggestionsPropType } from '../../schema';\nimport { inputTextTypeOptions, validateHasCounter, validateSuggestions, watchValidator } from '../../schema';\n\nimport { InputPasswordController } from '../input-password/controller';\n\nimport type { Generic } from 'adopted-style-sheets';\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\tid: string;\n} & PropSuggestions;\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateSuggestions(this.component._suggestions);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && inputTextTypeOptions.includes(value),\n\t\t\tnew Set([`String {${inputTextTypeOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t}\n}\n"],"version":3}
1
+ {"file":"controller-4bd39719.js","mappings":";;;;;;;AAAO,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAU;;MCahE,wBAAyB,SAAQ,uBAAuB;IAGpE,YAAmB,SAA0D,EAAE,IAAY,EAAE,IAAkB;QAC9G,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,mBAAmB,CAAC,KAA2B;QACrD,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC3C;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;KACtD;CACD;MAEY,mBAAoB,SAAQ,wBAAwB;IAKhE,YAAmB,SAAqD,EAAE,IAAY,EAAE,IAAkB;QACzG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAHvB,aAAQ,GAAG,KAAK,CAAC;QAIvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,YAAY,CAAC,KAAqB;QACxC,cAAc,CACb,IAAI,CAAC,SAAS,EACd,OAAO,EACP,CAAC,KAAK,KAAc,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,EACrF,IAAI,GAAG,CAAC,CAAC,WAAW,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EACvD,KAAK,CACL,CAAC;KACF;IAEM,kBAAkB,CAAC,KAAe;QACxC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC1C;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;KACpD;;;;;","names":[],"sources":["src/schema/types/input/control/text.ts","src/components/input-text/controller.ts"],"sourcesContent":["export const inputTextTypeOptions = ['text', 'search', 'url', 'tel'] as const;\nexport type InputTextType = (typeof inputTextTypeOptions)[number];\n","import type { InputTextProps, InputTextType, InputTextWatches, PropLabelWithExpertSlot, PropSuggestions, SuggestionsPropType } from '../../schema';\nimport { inputTextTypeOptions, validateHasCounter, validateSuggestions, watchValidator } from '../../schema';\n\nimport { InputPasswordController } from '../input-password/controller';\n\nimport type { Generic } from 'adopted-style-sheets';\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\tid: string;\n} & PropSuggestions;\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateSuggestions(this.component._suggestions);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && inputTextTypeOptions.includes(value),\n\t\t\tnew Set([`String {${inputTextTypeOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{m as KolFormTag}from"./component-names-5dd1e02a.js";import{q as setEventTarget,K as KoliBriDevHelper,j as devHint}from"./prop.validators-f89d26b4.js";import{a as getExperimentalMode,L as Log}from"./dev.utils-fab45cbc.js";const searchFormElement=e=>{for(getExperimentalMode()&&(devHint("↓ Search form element start."),Log.debug(e));e instanceof HTMLElement&&"FORM"!==e.tagName&&e.tagName!==KolFormTag.toUpperCase();){try{e=e.parentElement instanceof HTMLElement?e.parentElement:e.parentNode instanceof ShadowRoot?e.parentNode.host:null}catch(e){}getExperimentalMode()&&(Log.debug(e),devHint("↑ Search form element finished."))}return e},propagateResetEventToForm=(e={})=>{var t,o;const n=searchFormElement(e.form);if(n instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===n.tagName)setEventTarget(e,n),n.dispatchEvent(e);else if(n.tagName===KolFormTag.toUpperCase()){setEventTarget(e,KoliBriDevHelper.querySelector("form",n));const a=n;"function"==typeof(null===(t=a._on)||void 0===t?void 0:t.onReset)&&(null===(o=a._on)||void 0===o||o.onReset(e))}}},propagateSubmitEventToForm=(e={})=>{const t=searchFormElement(e.form);if(t instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:t});if("FORM"===t.tagName)getExperimentalMode()&&!1===t.noValidate&&devHint("If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.",{force:!0}),setTimeout((()=>{"function"==typeof t.requestSubmit?t.requestSubmit():(setEventTarget(e,t),t.dispatchEvent(e))}));else if(t.tagName===KolFormTag.toUpperCase()){setEventTarget(e,KoliBriDevHelper.querySelector("form",t));const o=t;setTimeout((()=>{var t,n;"function"==typeof(null===(t=o._on)||void 0===t?void 0:t.onSubmit)&&(null===(n=o._on)||void 0===n||n.onSubmit(e))}))}}};export{propagateResetEventToForm as a,propagateSubmitEventToForm as p};
4
+ import{m as KolFormTag}from"./component-names-3e0158fe.js";import{q as setEventTarget,K as KoliBriDevHelper,j as devHint}from"./prop.validators-f89d26b4.js";import{a as getExperimentalMode,L as Log}from"./dev.utils-fab45cbc.js";const searchFormElement=e=>{for(getExperimentalMode()&&(devHint("↓ Search form element start."),Log.debug(e));e instanceof HTMLElement&&"FORM"!==e.tagName&&e.tagName!==KolFormTag.toUpperCase();){try{e=e.parentElement instanceof HTMLElement?e.parentElement:e.parentNode instanceof ShadowRoot?e.parentNode.host:null}catch(e){}getExperimentalMode()&&(Log.debug(e),devHint("↑ Search form element finished."))}return e},propagateResetEventToForm=(e={})=>{var t,o;const n=searchFormElement(e.form);if(n instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===n.tagName)setEventTarget(e,n),n.dispatchEvent(e);else if(n.tagName===KolFormTag.toUpperCase()){setEventTarget(e,KoliBriDevHelper.querySelector("form",n));const a=n;"function"==typeof(null===(t=a._on)||void 0===t?void 0:t.onReset)&&(null===(o=a._on)||void 0===o||o.onReset(e))}}},propagateSubmitEventToForm=(e={})=>{const t=searchFormElement(e.form);if(t instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:t});if("FORM"===t.tagName)getExperimentalMode()&&!1===t.noValidate&&devHint("If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.",{force:!0}),setTimeout((()=>{"function"==typeof t.requestSubmit?t.requestSubmit():(setEventTarget(e,t),t.dispatchEvent(e))}));else if(t.tagName===KolFormTag.toUpperCase()){setEventTarget(e,KoliBriDevHelper.querySelector("form",t));const o=t;setTimeout((()=>{var t,n;"function"==typeof(null===(t=o._on)||void 0===t?void 0:t.onSubmit)&&(null===(n=o._on)||void 0===n||n.onSubmit(e))}))}}};export{propagateResetEventToForm as a,propagateSubmitEventToForm as p};
@@ -1 +1 @@
1
- {"file":"controller-aa6c0837.js","mappings":"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","names":[],"sources":["src/components/form/controller.ts"],"sourcesContent":["import type { FormProps } from '../../schema';\nimport { Log } from '../../schema';\nimport { devHint, getExperimentalMode, KoliBriDevHelper, setEventTarget } from '../../schema';\nimport { KolFormTag } from '../../core/component-names';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tLog.debug(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== KolFormTag.toUpperCase()) {\n\t\ttry {\n\t\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\t\tel = el.parentElement;\n\t\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\t\tel = el.parentNode.host;\n\t\t\t} else {\n\t\t\t\tel = null;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t/**\n\t\t\t * Try is needed for SSR.\n\t\t\t * - no HTMLElement is available\n\t\t\t * - no ShadowRoot is available\n\t\t\t */\n\t\t}\n\t\tif (getExperimentalMode()) {\n\t\t\tLog.debug(el);\n\t\t\tdevHint(`↑ Search form element finished.`);\n\t\t}\n\t}\n\treturn el;\n};\n\nexport const propagateResetEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new Event('reset', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t});\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === KolFormTag.toUpperCase()) {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as FormProps;\n\t\t\tif (typeof kolForm._on?.onReset === 'function') {\n\t\t\t\ttypeof kolForm._on?.onReset(event);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const propagateSubmitEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new SubmitEvent('submit', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tsubmitter: form,\n\t\t});\n\t\t/**\n\t\t * TODO: Wenn Formular-Action (nicht Ajax oder JS) verwendet wird,\n\t\t * dann müssen wir das Event an das HTMLFormElement innerhalb\n\t\t * der HTMLKolFormElements propagieren, wenn kein onSubmit\n\t\t * gesetzt wurde.\n\t\t *\n\t\t * TODO: Form-associated custom elements:\n\t\t * - https://web.dev/more-capable-form-controls/\n\t\t * - https://github.com/public-ui/kolibri/issues/946\n\t\t */\n\t\tif (form.tagName === 'FORM') {\n\t\t\tif (getExperimentalMode() && (form as HTMLFormElement).noValidate === false) {\n\t\t\t\tdevHint(`If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.`, {\n\t\t\t\t\tforce: true,\n\t\t\t\t});\n\t\t\t\t// (form as HTMLFormElement).noValidate = true; do not make this implicit\n\t\t\t}\n\t\t\t// Use setTimeout to ensure onChange has been called first\n\t\t\tsetTimeout(() => {\n\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit\n\t\t\t\tif (typeof (form as HTMLFormElement).requestSubmit === 'function') {\n\t\t\t\t\t(form as HTMLFormElement).requestSubmit();\n\t\t\t\t} else {\n\t\t\t\t\tsetEventTarget(event, form);\n\t\t\t\t\tform.dispatchEvent(event);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (form.tagName === KolFormTag.toUpperCase()) {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as FormProps;\n\t\t\t// Use setTimeout to ensure onChange has been called first\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (typeof kolForm._on?.onSubmit === 'function') {\n\t\t\t\t\tkolForm._on?.onSubmit(event);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n};\n"],"version":3}
1
+ {"file":"controller-ad9f8f69.js","mappings":"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","names":[],"sources":["src/components/form/controller.ts"],"sourcesContent":["import type { FormProps } from '../../schema';\nimport { Log } from '../../schema';\nimport { devHint, getExperimentalMode, KoliBriDevHelper, setEventTarget } from '../../schema';\nimport { KolFormTag } from '../../core/component-names';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tLog.debug(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== KolFormTag.toUpperCase()) {\n\t\ttry {\n\t\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\t\tel = el.parentElement;\n\t\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\t\tel = el.parentNode.host;\n\t\t\t} else {\n\t\t\t\tel = null;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t/**\n\t\t\t * Try is needed for SSR.\n\t\t\t * - no HTMLElement is available\n\t\t\t * - no ShadowRoot is available\n\t\t\t */\n\t\t}\n\t\tif (getExperimentalMode()) {\n\t\t\tLog.debug(el);\n\t\t\tdevHint(`↑ Search form element finished.`);\n\t\t}\n\t}\n\treturn el;\n};\n\nexport const propagateResetEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new Event('reset', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t});\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === KolFormTag.toUpperCase()) {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as FormProps;\n\t\t\tif (typeof kolForm._on?.onReset === 'function') {\n\t\t\t\ttypeof kolForm._on?.onReset(event);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const propagateSubmitEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new SubmitEvent('submit', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tsubmitter: form,\n\t\t});\n\t\t/**\n\t\t * TODO: Wenn Formular-Action (nicht Ajax oder JS) verwendet wird,\n\t\t * dann müssen wir das Event an das HTMLFormElement innerhalb\n\t\t * der HTMLKolFormElements propagieren, wenn kein onSubmit\n\t\t * gesetzt wurde.\n\t\t *\n\t\t * TODO: Form-associated custom elements:\n\t\t * - https://web.dev/more-capable-form-controls/\n\t\t * - https://github.com/public-ui/kolibri/issues/946\n\t\t */\n\t\tif (form.tagName === 'FORM') {\n\t\t\tif (getExperimentalMode() && (form as HTMLFormElement).noValidate === false) {\n\t\t\t\tdevHint(`If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.`, {\n\t\t\t\t\tforce: true,\n\t\t\t\t});\n\t\t\t\t// (form as HTMLFormElement).noValidate = true; do not make this implicit\n\t\t\t}\n\t\t\t// Use setTimeout to ensure onChange has been called first\n\t\t\tsetTimeout(() => {\n\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit\n\t\t\t\tif (typeof (form as HTMLFormElement).requestSubmit === 'function') {\n\t\t\t\t\t(form as HTMLFormElement).requestSubmit();\n\t\t\t\t} else {\n\t\t\t\t\tsetEventTarget(event, form);\n\t\t\t\t\tform.dispatchEvent(event);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (form.tagName === KolFormTag.toUpperCase()) {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as FormProps;\n\t\t\t// Use setTimeout to ensure onChange has been called first\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (typeof kolForm._on?.onSubmit === 'function') {\n\t\t\t\t\tkolForm._on?.onSubmit(event);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n};\n"],"version":3}