@public-ui/components 1.6.0-rc.11 → 1.6.0-rc.13

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 (499) hide show
  1. package/custom-elements.json +87 -3
  2. package/dist/cjs/{a11y.tipps-b7561cd9.js → a11y.tipps-dbfe482e.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-b7561cd9.js.map → a11y.tipps-dbfe482e.js.map} +1 -1
  4. package/dist/cjs/{app-globals-76ba24c3.js → app-globals-3c457229.js} +1 -1
  5. package/dist/cjs/{app-globals-76ba24c3.js.map → app-globals-3c457229.js.map} +1 -1
  6. package/dist/cjs/{aria-selected-0ad16d16.js → aria-selected-b31756b3.js} +1 -1
  7. package/dist/cjs/{aria-selected-0ad16d16.js.map → aria-selected-b31756b3.js.map} +1 -1
  8. package/dist/cjs/{button-link-1df10d7c.js → button-link-58e21d08.js} +1 -1
  9. package/dist/cjs/{button-link-1df10d7c.js.map → button-link-58e21d08.js.map} +1 -1
  10. package/dist/cjs/{color-b81183e4.js → color-3b22adaf.js} +1 -1
  11. package/dist/cjs/{color-b81183e4.js.map → color-3b22adaf.js.map} +1 -1
  12. package/dist/cjs/{controller-6aabbf41.js → controller-74ceb4e2.js} +1 -1
  13. package/dist/cjs/{controller-6aabbf41.js.map → controller-74ceb4e2.js.map} +1 -1
  14. package/dist/cjs/controller-aa42c292.js +4 -0
  15. package/dist/cjs/controller-aa42c292.js.map +1 -0
  16. package/dist/cjs/{controller-d513b916.js → controller-b8d0de10.js} +1 -1
  17. package/dist/cjs/{controller-d513b916.js.map → controller-b8d0de10.js.map} +1 -1
  18. package/dist/cjs/{controller-7c4cd449.js → controller-bc933b12.js} +1 -1
  19. package/dist/cjs/{controller-7c4cd449.js.map → controller-bc933b12.js.map} +1 -1
  20. package/dist/cjs/controller-c3021b2f.js +4 -0
  21. package/dist/cjs/controller-c3021b2f.js.map +1 -0
  22. package/dist/cjs/{controller-9a10b30b.js → controller-d636acbc.js} +1 -1
  23. package/dist/cjs/{controller-9a10b30b.js.map → controller-d636acbc.js.map} +1 -1
  24. package/dist/cjs/{controller-icon-d2ec9da9.js → controller-icon-1cc6572a.js} +1 -1
  25. package/dist/cjs/{controller-icon-d2ec9da9.js.map → controller-icon-1cc6572a.js.map} +1 -1
  26. package/dist/cjs/dev.utils-78d00548.js +4 -0
  27. package/dist/cjs/{dev.utils-b2b6f024.js.map → dev.utils-78d00548.js.map} +1 -1
  28. package/dist/cjs/{devtools-60ad513c.js → devtools-7f99e00b.js} +1 -1
  29. package/dist/cjs/devtools-7f99e00b.js.map +1 -0
  30. package/dist/cjs/{disabled-98957f7e.js → disabled-959951da.js} +1 -1
  31. package/dist/cjs/{disabled-98957f7e.js.map → disabled-959951da.js.map} +1 -1
  32. package/dist/cjs/floating-ui.dom.esm-09852e47.js +4 -0
  33. package/dist/cjs/floating-ui.dom.esm-09852e47.js.map +1 -0
  34. package/dist/cjs/has-closer-01ac076a.js +4 -0
  35. package/dist/cjs/{has-closer-7d377e88.js.map → has-closer-01ac076a.js.map} +1 -1
  36. package/dist/cjs/hide-label-4d99f1d9.js +4 -0
  37. package/dist/cjs/{hide-label-9bf6abe6.js.map → hide-label-4d99f1d9.js.map} +1 -1
  38. package/dist/cjs/{i18n-43926d90.js → i18n-8d483c7b.js} +1 -1
  39. package/dist/cjs/{i18n-43926d90.js.map → i18n-8d483c7b.js.map} +1 -1
  40. package/dist/cjs/{icon-deabb5a9.js → icon-4b915891.js} +1 -1
  41. package/dist/cjs/{icon-deabb5a9.js.map → icon-4b915891.js.map} +1 -1
  42. package/dist/cjs/index.cjs.js +1 -1
  43. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  49. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
  51. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  56. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  58. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  60. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-input-text.cjs.entry.js.map +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-group.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-popover.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  111. package/dist/cjs/kolibri.cjs.js +1 -1
  112. package/dist/cjs/{label-5738ac71.js → label-f31696ce.js} +1 -1
  113. package/dist/cjs/{label-5738ac71.js.map → label-f31696ce.js.map} +1 -1
  114. package/dist/cjs/loader.cjs.js +1 -1
  115. package/dist/cjs/prop.validators-7219caea.js +4 -0
  116. package/dist/cjs/prop.validators-7219caea.js.map +1 -0
  117. package/dist/cjs/show-a8907ed7.js +4 -0
  118. package/dist/cjs/{show-942951b7.js.map → show-a8907ed7.js.map} +1 -1
  119. package/dist/cjs/{tab-index-31c874b2.js → tab-index-fd4498b0.js} +1 -1
  120. package/dist/cjs/{tab-index-31c874b2.js.map → tab-index-fd4498b0.js.map} +1 -1
  121. package/dist/cjs/validation-6faf86e0.js +4 -0
  122. package/dist/cjs/{validation-6c112462.js.map → validation-6faf86e0.js.map} +1 -1
  123. package/dist/cjs/{validation-1f68fe35.js → validation-8cba92a6.js} +1 -1
  124. package/dist/cjs/{validation-1f68fe35.js.map → validation-8cba92a6.js.map} +1 -1
  125. package/dist/components/component.js.map +1 -1
  126. package/dist/components/component13.js +1 -1
  127. package/dist/components/component13.js.map +1 -1
  128. package/dist/components/component14.js +1 -1
  129. package/dist/components/component14.js.map +1 -1
  130. package/dist/components/component15.js +1 -1
  131. package/dist/components/component15.js.map +1 -1
  132. package/dist/components/component2.js +1 -1
  133. package/dist/components/component2.js.map +1 -1
  134. package/dist/components/component5.js +1 -1
  135. package/dist/components/component5.js.map +1 -1
  136. package/dist/components/controller.js +1 -1
  137. package/dist/components/controller.js.map +1 -1
  138. package/dist/components/devtools.js +1 -1
  139. package/dist/components/devtools.js.map +1 -1
  140. package/dist/components/floating-ui.dom.esm.js +1 -1
  141. package/dist/components/floating-ui.dom.esm.js.map +1 -1
  142. package/dist/components/kol-breadcrumb.js.map +1 -1
  143. package/dist/components/kol-icon-font-awesome.js +1 -1
  144. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  145. package/dist/components/kol-icon-icofont.js +1 -1
  146. package/dist/components/kol-icon-icofont.js.map +1 -1
  147. package/dist/components/kol-input-checkbox.js +1 -1
  148. package/dist/components/kol-input-checkbox.js.map +1 -1
  149. package/dist/components/kol-input-color.js +1 -1
  150. package/dist/components/kol-input-color.js.map +1 -1
  151. package/dist/components/kol-input-date.js +1 -1
  152. package/dist/components/kol-input-date.js.map +1 -1
  153. package/dist/components/kol-input-email.js +1 -1
  154. package/dist/components/kol-input-email.js.map +1 -1
  155. package/dist/components/kol-input-file.js +1 -1
  156. package/dist/components/kol-input-file.js.map +1 -1
  157. package/dist/components/kol-input-number.js +1 -1
  158. package/dist/components/kol-input-number.js.map +1 -1
  159. package/dist/components/kol-input-password.js +1 -1
  160. package/dist/components/kol-input-password.js.map +1 -1
  161. package/dist/components/kol-input-range.js +1 -1
  162. package/dist/components/kol-input-range.js.map +1 -1
  163. package/dist/components/kol-input-text.js +1 -1
  164. package/dist/components/kol-input-text.js.map +1 -1
  165. package/dist/components/kol-tabs.js +1 -1
  166. package/dist/components/kol-tabs.js.map +1 -1
  167. package/dist/components/kol-textarea.js +1 -1
  168. package/dist/components/kol-textarea.js.map +1 -1
  169. package/dist/components/prop.validators.js +1 -1
  170. package/dist/components/prop.validators.js.map +1 -1
  171. package/dist/esm/{a11y.tipps-e607b8b3.js → a11y.tipps-9f948961.js} +1 -1
  172. package/dist/esm/{a11y.tipps-e607b8b3.js.map → a11y.tipps-9f948961.js.map} +1 -1
  173. package/dist/esm/app-globals-bf9eb17a.js +4 -0
  174. package/dist/esm/{app-globals-1811b38e.js.map → app-globals-bf9eb17a.js.map} +1 -1
  175. package/dist/esm/{aria-selected-d90aa300.js → aria-selected-b9d7d1e4.js} +1 -1
  176. package/dist/esm/{aria-selected-d90aa300.js.map → aria-selected-b9d7d1e4.js.map} +1 -1
  177. package/dist/esm/{button-link-2ad7f3cf.js → button-link-99acae48.js} +1 -1
  178. package/dist/esm/{button-link-2ad7f3cf.js.map → button-link-99acae48.js.map} +1 -1
  179. package/dist/esm/{color-9d0ce5e3.js → color-408da8e8.js} +1 -1
  180. package/dist/esm/{color-9d0ce5e3.js.map → color-408da8e8.js.map} +1 -1
  181. package/dist/esm/{controller-d064cead.js → controller-6ed90cd7.js} +1 -1
  182. package/dist/esm/{controller-d064cead.js.map → controller-6ed90cd7.js.map} +1 -1
  183. package/dist/esm/controller-7ae169ad.js +4 -0
  184. package/dist/esm/controller-7ae169ad.js.map +1 -0
  185. package/dist/esm/{controller-ff99125c.js → controller-a979f7a6.js} +1 -1
  186. package/dist/esm/{controller-ff99125c.js.map → controller-a979f7a6.js.map} +1 -1
  187. package/dist/esm/controller-b036f128.js +4 -0
  188. package/dist/esm/controller-b036f128.js.map +1 -0
  189. package/dist/esm/{controller-3b1a37ac.js → controller-c69b0aaa.js} +1 -1
  190. package/dist/esm/{controller-3b1a37ac.js.map → controller-c69b0aaa.js.map} +1 -1
  191. package/dist/esm/{controller-0a60db6b.js → controller-d2d4a593.js} +1 -1
  192. package/dist/esm/{controller-0a60db6b.js.map → controller-d2d4a593.js.map} +1 -1
  193. package/dist/esm/{controller-icon-ba3c5351.js → controller-icon-4388a5b7.js} +1 -1
  194. package/dist/esm/{controller-icon-ba3c5351.js.map → controller-icon-4388a5b7.js.map} +1 -1
  195. package/dist/esm/{dev.utils-8aef00f6.js → dev.utils-4290338e.js} +1 -1
  196. package/dist/esm/{dev.utils-8aef00f6.js.map → dev.utils-4290338e.js.map} +1 -1
  197. package/dist/esm/devtools-57a6a46f.js +4 -0
  198. package/dist/esm/devtools-57a6a46f.js.map +1 -0
  199. package/dist/esm/{disabled-cac31f02.js → disabled-559fd371.js} +1 -1
  200. package/dist/esm/{disabled-cac31f02.js.map → disabled-559fd371.js.map} +1 -1
  201. package/dist/esm/floating-ui.dom.esm-26e61da8.js +4 -0
  202. package/dist/esm/floating-ui.dom.esm-26e61da8.js.map +1 -0
  203. package/dist/esm/{has-closer-268d165e.js → has-closer-62a48dbd.js} +1 -1
  204. package/dist/esm/{has-closer-268d165e.js.map → has-closer-62a48dbd.js.map} +1 -1
  205. package/dist/esm/{hide-label-e9f288ac.js → hide-label-9248468d.js} +1 -1
  206. package/dist/esm/{hide-label-e9f288ac.js.map → hide-label-9248468d.js.map} +1 -1
  207. package/dist/esm/{i18n-64b07ed9.js → i18n-23b83118.js} +1 -1
  208. package/dist/esm/{i18n-64b07ed9.js.map → i18n-23b83118.js.map} +1 -1
  209. package/dist/esm/{icon-278d567d.js → icon-e03e73f6.js} +1 -1
  210. package/dist/esm/{icon-278d567d.js.map → icon-e03e73f6.js.map} +1 -1
  211. package/dist/esm/index.js +1 -1
  212. package/dist/esm/kol-abbr.entry.js +1 -1
  213. package/dist/esm/kol-accordion.entry.js +1 -1
  214. package/dist/esm/kol-alert-wc_2.entry.js +1 -1
  215. package/dist/esm/kol-badge.entry.js +1 -1
  216. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  217. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  218. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  219. package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
  220. package/dist/esm/kol-card.entry.js +1 -1
  221. package/dist/esm/kol-details.entry.js +1 -1
  222. package/dist/esm/kol-form.entry.js +1 -1
  223. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  224. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  225. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  226. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  227. package/dist/esm/kol-icon.entry.js +1 -1
  228. package/dist/esm/kol-icon.entry.js.map +1 -1
  229. package/dist/esm/kol-image.entry.js +1 -1
  230. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  231. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  232. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  233. package/dist/esm/kol-input-color.entry.js +1 -1
  234. package/dist/esm/kol-input-color.entry.js.map +1 -1
  235. package/dist/esm/kol-input-date.entry.js +1 -1
  236. package/dist/esm/kol-input-date.entry.js.map +1 -1
  237. package/dist/esm/kol-input-email.entry.js +1 -1
  238. package/dist/esm/kol-input-email.entry.js.map +1 -1
  239. package/dist/esm/kol-input-file.entry.js +1 -1
  240. package/dist/esm/kol-input-file.entry.js.map +1 -1
  241. package/dist/esm/kol-input-number.entry.js +1 -1
  242. package/dist/esm/kol-input-number.entry.js.map +1 -1
  243. package/dist/esm/kol-input-password.entry.js +1 -1
  244. package/dist/esm/kol-input-password.entry.js.map +1 -1
  245. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  246. package/dist/esm/kol-input-radio.entry.js +1 -1
  247. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  248. package/dist/esm/kol-input-range.entry.js +1 -1
  249. package/dist/esm/kol-input-range.entry.js.map +1 -1
  250. package/dist/esm/kol-input-text.entry.js +1 -1
  251. package/dist/esm/kol-input-text.entry.js.map +1 -1
  252. package/dist/esm/kol-kolibri.entry.js +1 -1
  253. package/dist/esm/kol-link-button.entry.js +1 -1
  254. package/dist/esm/kol-link-group.entry.js +1 -1
  255. package/dist/esm/kol-link-wc.entry.js +1 -1
  256. package/dist/esm/kol-logo.entry.js +1 -1
  257. package/dist/esm/kol-modal.entry.js +1 -1
  258. package/dist/esm/kol-nav.entry.js +1 -1
  259. package/dist/esm/kol-pagination.entry.js +1 -1
  260. package/dist/esm/kol-pagination.entry.js.map +1 -1
  261. package/dist/esm/kol-popover.entry.js +1 -1
  262. package/dist/esm/kol-progress.entry.js +1 -1
  263. package/dist/esm/kol-quote.entry.js +1 -1
  264. package/dist/esm/kol-select.entry.js +1 -1
  265. package/dist/esm/kol-select.entry.js.map +1 -1
  266. package/dist/esm/kol-skip-nav.entry.js +1 -1
  267. package/dist/esm/kol-span-wc.entry.js +1 -1
  268. package/dist/esm/kol-spin.entry.js +1 -1
  269. package/dist/esm/kol-split-button.entry.js +1 -1
  270. package/dist/esm/kol-symbol.entry.js +1 -1
  271. package/dist/esm/kol-table.entry.js +1 -1
  272. package/dist/esm/kol-tabs.entry.js +1 -1
  273. package/dist/esm/kol-tabs.entry.js.map +1 -1
  274. package/dist/esm/kol-textarea.entry.js +1 -1
  275. package/dist/esm/kol-textarea.entry.js.map +1 -1
  276. package/dist/esm/kol-toast.entry.js +1 -1
  277. package/dist/esm/kol-tooltip.entry.js +1 -1
  278. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  279. package/dist/esm/kol-version.entry.js +1 -1
  280. package/dist/esm/kolibri.js +1 -1
  281. package/dist/esm/{label-bd9566f6.js → label-223fef8f.js} +1 -1
  282. package/dist/esm/{label-bd9566f6.js.map → label-223fef8f.js.map} +1 -1
  283. package/dist/esm/loader.js +1 -1
  284. package/dist/esm/prop.validators-601f1068.js +4 -0
  285. package/dist/esm/{prop.validators-683bb1d0.js.map → prop.validators-601f1068.js.map} +1 -1
  286. package/dist/esm/{show-2b9058c9.js → show-6d33a33f.js} +1 -1
  287. package/dist/esm/{show-2b9058c9.js.map → show-6d33a33f.js.map} +1 -1
  288. package/dist/esm/{tab-index-6d37f269.js → tab-index-fc60df7a.js} +1 -1
  289. package/dist/esm/{tab-index-6d37f269.js.map → tab-index-fc60df7a.js.map} +1 -1
  290. package/dist/esm/validation-4acc18ad.js +4 -0
  291. package/dist/esm/{validation-1f01325c.js.map → validation-4acc18ad.js.map} +1 -1
  292. package/dist/esm/{validation-0efb75d3.js → validation-5300d0a1.js} +1 -1
  293. package/dist/esm/{validation-0efb75d3.js.map → validation-5300d0a1.js.map} +1 -1
  294. package/dist/kolibri/{a11y.tipps-e607b8b3.js → a11y.tipps-9f948961.js} +1 -1
  295. package/dist/kolibri/app-globals-bf9eb17a.js +4 -0
  296. package/dist/kolibri/{app-globals-1811b38e.js.map → app-globals-bf9eb17a.js.map} +1 -1
  297. package/dist/kolibri/{aria-selected-d90aa300.js → aria-selected-b9d7d1e4.js} +1 -1
  298. package/dist/kolibri/assets/simulations/form-simulation.js +1 -1
  299. package/dist/kolibri/{button-link-2ad7f3cf.js → button-link-99acae48.js} +1 -1
  300. package/dist/kolibri/{color-9d0ce5e3.js → color-408da8e8.js} +1 -1
  301. package/dist/kolibri/{controller-d064cead.js → controller-6ed90cd7.js} +1 -1
  302. package/dist/kolibri/controller-7ae169ad.js +4 -0
  303. package/dist/kolibri/controller-7ae169ad.js.map +1 -0
  304. package/dist/kolibri/{controller-ff99125c.js → controller-a979f7a6.js} +1 -1
  305. package/dist/kolibri/{controller-ca0fe64f.js → controller-b036f128.js} +1 -1
  306. package/dist/kolibri/controller-b036f128.js.map +1 -0
  307. package/dist/kolibri/{controller-3b1a37ac.js → controller-c69b0aaa.js} +1 -1
  308. package/dist/kolibri/{controller-0a60db6b.js → controller-d2d4a593.js} +1 -1
  309. package/dist/kolibri/controller-icon-4388a5b7.js +4 -0
  310. package/dist/kolibri/dev.utils-4290338e.js.map +1 -0
  311. package/dist/kolibri/{devtools-eaaafe9d.js → devtools-57a6a46f.js} +1 -1
  312. package/dist/kolibri/devtools-57a6a46f.js.map +1 -0
  313. package/dist/kolibri/{disabled-cac31f02.js → disabled-559fd371.js} +1 -1
  314. package/dist/kolibri/floating-ui.dom.esm-26e61da8.js +4 -0
  315. package/dist/kolibri/floating-ui.dom.esm-26e61da8.js.map +1 -0
  316. package/dist/kolibri/has-closer-62a48dbd.js +4 -0
  317. package/dist/kolibri/hide-label-9248468d.js +4 -0
  318. package/dist/kolibri/{i18n-64b07ed9.js → i18n-23b83118.js} +1 -1
  319. package/dist/kolibri/{icon-278d567d.js → icon-e03e73f6.js} +1 -1
  320. package/dist/kolibri/index.esm.js +1 -1
  321. package/dist/kolibri/kol-abbr.entry.js +1 -1
  322. package/dist/kolibri/kol-accordion.entry.js +1 -1
  323. package/dist/kolibri/kol-alert-wc_2.entry.js +1 -1
  324. package/dist/kolibri/kol-badge.entry.js +1 -1
  325. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  326. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  327. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  328. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
  329. package/dist/kolibri/kol-card.entry.js +1 -1
  330. package/dist/kolibri/kol-details.entry.js +1 -1
  331. package/dist/kolibri/kol-form.entry.js +1 -1
  332. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  333. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  334. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  335. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  336. package/dist/kolibri/kol-icon.entry.js +1 -1
  337. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  338. package/dist/kolibri/kol-image.entry.js +1 -1
  339. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  340. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  341. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  342. package/dist/kolibri/kol-input-color.entry.js +1 -1
  343. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  344. package/dist/kolibri/kol-input-date.entry.js +1 -1
  345. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  346. package/dist/kolibri/kol-input-email.entry.js +1 -1
  347. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  348. package/dist/kolibri/kol-input-file.entry.js +1 -1
  349. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  350. package/dist/kolibri/kol-input-number.entry.js +1 -1
  351. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  352. package/dist/kolibri/kol-input-password.entry.js +1 -1
  353. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  354. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  355. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  356. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  357. package/dist/kolibri/kol-input-range.entry.js +1 -1
  358. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  359. package/dist/kolibri/kol-input-text.entry.js +1 -1
  360. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  361. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  362. package/dist/kolibri/kol-link-button.entry.js +1 -1
  363. package/dist/kolibri/kol-link-group.entry.js +1 -1
  364. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  365. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  366. package/dist/kolibri/kol-logo.entry.js +1 -1
  367. package/dist/kolibri/kol-modal.entry.js +1 -1
  368. package/dist/kolibri/kol-nav.entry.js +1 -1
  369. package/dist/kolibri/kol-pagination.entry.js +1 -1
  370. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  371. package/dist/kolibri/kol-popover.entry.js +1 -1
  372. package/dist/kolibri/kol-progress.entry.js +1 -1
  373. package/dist/kolibri/kol-quote.entry.js +1 -1
  374. package/dist/kolibri/kol-select.entry.js +1 -1
  375. package/dist/kolibri/kol-select.entry.js.map +1 -1
  376. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  377. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  378. package/dist/kolibri/kol-spin.entry.js +1 -1
  379. package/dist/kolibri/kol-split-button.entry.js +1 -1
  380. package/dist/kolibri/kol-symbol.entry.js +1 -1
  381. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  382. package/dist/kolibri/kol-table.entry.js +1 -1
  383. package/dist/kolibri/kol-tabs.entry.js +1 -1
  384. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  385. package/dist/kolibri/kol-textarea.entry.js +1 -1
  386. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  387. package/dist/kolibri/kol-toast.entry.js +1 -1
  388. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  389. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  390. package/dist/kolibri/kol-version.entry.js +1 -1
  391. package/dist/kolibri/kolibri.esm.js +1 -1
  392. package/dist/kolibri/kolibri.esm.js.map +1 -1
  393. package/dist/kolibri/label-223fef8f.js +4 -0
  394. package/dist/kolibri/{label-bd9566f6.js.map → label-223fef8f.js.map} +1 -1
  395. package/dist/kolibri/{prop.validators-683bb1d0.js → prop.validators-601f1068.js} +1 -1
  396. package/dist/kolibri/prop.validators-601f1068.js.map +1 -0
  397. package/dist/kolibri/show-6d33a33f.js +4 -0
  398. package/dist/kolibri/{tab-index-6d37f269.js → tab-index-fc60df7a.js} +1 -1
  399. package/dist/kolibri/validation-4acc18ad.js +4 -0
  400. package/dist/kolibri/{validation-0efb75d3.js → validation-5300d0a1.js} +1 -1
  401. package/dist/types/components/breadcrumb/types.d.ts +2 -2
  402. package/dist/types/components/icon/component.d.ts +1 -1
  403. package/dist/types/components/input-adapter-leanup/controller.d.ts +7 -4
  404. package/dist/types/components/input-checkbox/component.d.ts +5 -2
  405. package/dist/types/components/input-checkbox/controller.d.ts +3 -1
  406. package/dist/types/components/input-checkbox/types.d.ts +5 -3
  407. package/dist/types/components/input-color/component.d.ts +2 -0
  408. package/dist/types/components/input-date/component.d.ts +2 -0
  409. package/dist/types/components/input-email/component.d.ts +2 -0
  410. package/dist/types/components/input-file/component.d.ts +2 -0
  411. package/dist/types/components/input-number/component.d.ts +2 -0
  412. package/dist/types/components/input-password/component.d.ts +2 -0
  413. package/dist/types/components/input-radio/component.d.ts +2 -0
  414. package/dist/types/components/input-range/component.d.ts +2 -0
  415. package/dist/types/components/input-text/component.d.ts +2 -0
  416. package/dist/types/components/select/component.d.ts +2 -0
  417. package/dist/types/components/textarea/component.d.ts +2 -0
  418. package/dist/types/components.d.ts +100 -2
  419. package/dist/types/types/unknown.d.ts +1 -0
  420. package/dist/types/utils/dev.utils.d.ts +1 -1
  421. package/doc/breadcrumb.md +1 -1
  422. package/doc/input-checkbox.md +4 -1
  423. package/doc/input-color.md +3 -0
  424. package/doc/input-date.md +3 -0
  425. package/doc/input-email.md +3 -0
  426. package/doc/input-file.md +23 -20
  427. package/doc/input-number.md +3 -0
  428. package/doc/input-password.md +3 -0
  429. package/doc/input-radio-group.md +1 -0
  430. package/doc/input-radio.md +21 -18
  431. package/doc/input-range.md +3 -0
  432. package/doc/input-text.md +3 -0
  433. package/doc/pagination.md +1 -0
  434. package/doc/select.md +24 -21
  435. package/doc/table.md +1 -0
  436. package/doc/textarea.md +3 -0
  437. package/doc/tooltip.md +24 -0
  438. package/jest-test-results.json +1 -1
  439. package/package.json +1 -1
  440. package/vscode-custom-data.json +216 -0
  441. package/dist/cjs/controller-20c47dac.js +0 -4
  442. package/dist/cjs/controller-20c47dac.js.map +0 -1
  443. package/dist/cjs/controller-beb0e753.js +0 -4
  444. package/dist/cjs/controller-beb0e753.js.map +0 -1
  445. package/dist/cjs/dev.utils-b2b6f024.js +0 -4
  446. package/dist/cjs/devtools-60ad513c.js.map +0 -1
  447. package/dist/cjs/floating-ui.dom.esm-c11b0ec1.js +0 -4
  448. package/dist/cjs/floating-ui.dom.esm-c11b0ec1.js.map +0 -1
  449. package/dist/cjs/has-closer-7d377e88.js +0 -4
  450. package/dist/cjs/hide-label-9bf6abe6.js +0 -4
  451. package/dist/cjs/prop.validators-8a027482.js +0 -4
  452. package/dist/cjs/prop.validators-8a027482.js.map +0 -1
  453. package/dist/cjs/show-942951b7.js +0 -4
  454. package/dist/cjs/validation-6c112462.js +0 -4
  455. package/dist/esm/app-globals-1811b38e.js +0 -4
  456. package/dist/esm/controller-ca0fe64f.js +0 -4
  457. package/dist/esm/controller-ca0fe64f.js.map +0 -1
  458. package/dist/esm/controller-d9fb3dc1.js +0 -4
  459. package/dist/esm/controller-d9fb3dc1.js.map +0 -1
  460. package/dist/esm/devtools-eaaafe9d.js +0 -4
  461. package/dist/esm/devtools-eaaafe9d.js.map +0 -1
  462. package/dist/esm/floating-ui.dom.esm-805abd08.js +0 -4
  463. package/dist/esm/floating-ui.dom.esm-805abd08.js.map +0 -1
  464. package/dist/esm/prop.validators-683bb1d0.js +0 -4
  465. package/dist/esm/validation-1f01325c.js +0 -4
  466. package/dist/kolibri/app-globals-1811b38e.js +0 -4
  467. package/dist/kolibri/controller-ca0fe64f.js.map +0 -1
  468. package/dist/kolibri/controller-d9fb3dc1.js +0 -4
  469. package/dist/kolibri/controller-d9fb3dc1.js.map +0 -1
  470. package/dist/kolibri/controller-icon-ba3c5351.js +0 -4
  471. package/dist/kolibri/dev.utils-8aef00f6.js.map +0 -1
  472. package/dist/kolibri/devtools-eaaafe9d.js.map +0 -1
  473. package/dist/kolibri/floating-ui.dom.esm-805abd08.js +0 -4
  474. package/dist/kolibri/floating-ui.dom.esm-805abd08.js.map +0 -1
  475. package/dist/kolibri/has-closer-268d165e.js +0 -4
  476. package/dist/kolibri/hide-label-e9f288ac.js +0 -4
  477. package/dist/kolibri/label-bd9566f6.js +0 -4
  478. package/dist/kolibri/prop.validators-683bb1d0.js.map +0 -1
  479. package/dist/kolibri/show-2b9058c9.js +0 -4
  480. package/dist/kolibri/validation-1f01325c.js +0 -4
  481. /package/dist/kolibri/{a11y.tipps-e607b8b3.js.map → a11y.tipps-9f948961.js.map} +0 -0
  482. /package/dist/kolibri/{aria-selected-d90aa300.js.map → aria-selected-b9d7d1e4.js.map} +0 -0
  483. /package/dist/kolibri/{button-link-2ad7f3cf.js.map → button-link-99acae48.js.map} +0 -0
  484. /package/dist/kolibri/{color-9d0ce5e3.js.map → color-408da8e8.js.map} +0 -0
  485. /package/dist/kolibri/{controller-d064cead.js.map → controller-6ed90cd7.js.map} +0 -0
  486. /package/dist/kolibri/{controller-ff99125c.js.map → controller-a979f7a6.js.map} +0 -0
  487. /package/dist/kolibri/{controller-3b1a37ac.js.map → controller-c69b0aaa.js.map} +0 -0
  488. /package/dist/kolibri/{controller-0a60db6b.js.map → controller-d2d4a593.js.map} +0 -0
  489. /package/dist/kolibri/{controller-icon-ba3c5351.js.map → controller-icon-4388a5b7.js.map} +0 -0
  490. /package/dist/kolibri/{dev.utils-8aef00f6.js → dev.utils-4290338e.js} +0 -0
  491. /package/dist/kolibri/{disabled-cac31f02.js.map → disabled-559fd371.js.map} +0 -0
  492. /package/dist/kolibri/{has-closer-268d165e.js.map → has-closer-62a48dbd.js.map} +0 -0
  493. /package/dist/kolibri/{hide-label-e9f288ac.js.map → hide-label-9248468d.js.map} +0 -0
  494. /package/dist/kolibri/{i18n-64b07ed9.js.map → i18n-23b83118.js.map} +0 -0
  495. /package/dist/kolibri/{icon-278d567d.js.map → icon-e03e73f6.js.map} +0 -0
  496. /package/dist/kolibri/{show-2b9058c9.js.map → show-6d33a33f.js.map} +0 -0
  497. /package/dist/kolibri/{tab-index-6d37f269.js.map → tab-index-fc60df7a.js.map} +0 -0
  498. /package/dist/kolibri/{validation-1f01325c.js.map → validation-4acc18ad.js.map} +0 -0
  499. /package/dist/kolibri/{validation-0efb75d3.js.map → validation-5300d0a1.js.map} +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as e,c as r,a}from"./prop.validators-683bb1d0.js";import{a as t}from"./a11y.tipps-e607b8b3.js";var n={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},l=i,o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function i(e){var r,a,t=[],l=1;if("string"==typeof e)if(n[e])t=n[e].slice(),a="rgb";else if("transparent"===e)l=0,a="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var i=e.slice(1);l=1,(g=i.length)<=4?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],4===g&&(l=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],8===g&&(l=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],u="rgb"===s;a=i=s.replace(/a$/,"");var g="cmyk"===i?4:"gray"===i?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===i?255*parseFloat(e)/100:parseFloat(e);if("h"===i[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==o[e])return o[e]}return parseFloat(e)})),s===i&&t.push(1),l=u||void 0===t[g]?1:t[g],t=t.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],a="rgb",l=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),l=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(l/=100)):(a="rgb",t=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:t,alpha:l}}var s=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=l(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=u(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function u(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const g=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,f=(a,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=r(e.hex(`rgba(${a.join(",")},1)`),e.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:a,foreground:l,contrast:i}:f(a,l,t,n)},d=new Map,c=(e,r,a,o=1)=>{if(d.has(e))return d.get(e);const t=f(e,r,a,o);return d.set(e,t),t},p=(r,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof r?(o=s(r),t=o):"object"==typeof r&&null!==r&&"string"==typeof r.background&&"string"==typeof r.foreground&&(o=s(r.background),t="string"==typeof r.foreground?s(r.foreground):o);const n=g(o[0],o[1],o[2]),l=c([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:e.hex(`rgba(${o.join(",")})`),foreground:e.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},h=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function y(e){return h.test(e)}function b(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if(m(r))return{type:"ColorPair",value:r};if(k(r))return{type:"DeprecatedColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function v(e){if(e)if("string"==typeof e){if(y(e))return{type:"string",valid:!0,value:e};{const r=b(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if(m(r))return{type:"ColorPair",valid:!0,value:r};const a=e;if(k(a))return{type:"DeprecatedColorPair",valid:!0,value:a}}return{type:null,valid:!1,value:""}}function m(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function k(e){return"object"==typeof e&&e&&"string"==typeof e.backgroundColor&&"string"==typeof e.color}function w(e){const r=v(e);switch(r.type){case null:return!1;case"string":case"ColorPair":case"DeprecatedColorPair":return r.valid}}const M=(e,r,o)=>{a(e,"_color",w,new Set(["rgb in hex","ColorPair"]),r,o)},$=e=>{var r;let a;const o=v(e);switch(o.type){case"string":a=p(o.value);break;case"ColorPair":case"DeprecatedColorPair":{const e=o.value,t=o.value;let n="";t.color?n=t.color:"string"==typeof e.foregroundColor?n=e.foregroundColor:(null===(r=e.foregroundColor)||void 0===r?void 0:r.primary)&&(n=e.foregroundColor.primary),n&&"string"==typeof n||(n="#fff"),a=p({background:e.backgroundColor,foreground:n});break}case null:console.warn(`_color was empty or invalid (${JSON.stringify(e)})`),a=p({background:"#000",foreground:"#000"})}return a.contrast<7&&t(`[KolBadge] The contrast of ${a.contrast} (≥7, AAA) is to low, between the color pair ${a.background} and ${a.foreground}.`),{backgroundColor:a.background,foregroundColor:a.foreground}};export{s as c,$ as h,M as v};
4
+ import{r as e,c as r,a}from"./prop.validators-601f1068.js";import{a as t}from"./a11y.tipps-9f948961.js";var n={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},l=i,o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function i(e){var r,a,t=[],l=1;if("string"==typeof e)if(n[e])t=n[e].slice(),a="rgb";else if("transparent"===e)l=0,a="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var i=e.slice(1);l=1,(g=i.length)<=4?(t=[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16)],4===g&&(l=parseInt(i[3]+i[3],16)/255)):(t=[parseInt(i[0]+i[1],16),parseInt(i[2]+i[3],16),parseInt(i[4]+i[5],16)],8===g&&(l=parseInt(i[6]+i[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],u="rgb"===s;a=i=s.replace(/a$/,"");var g="cmyk"===i?4:"gray"===i?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===i?255*parseFloat(e)/100:parseFloat(e);if("h"===i[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==o[e])return o[e]}return parseFloat(e)})),s===i&&t.push(1),l=u||void 0===t[g]?1:t[g],t=t.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],a="rgb",l=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),l=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(l/=100)):(a="rgb",t=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:t,alpha:l}}var s=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=l(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=u(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function u(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const g=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,f=(a,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=r(e.hex(`rgba(${a.join(",")},1)`),e.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:a,foreground:l,contrast:i}:f(a,l,t,n)},d=new Map,c=(e,r,a,o=1)=>{if(d.has(e))return d.get(e);const t=f(e,r,a,o);return d.set(e,t),t},p=(r,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof r?(o=s(r),t=o):"object"==typeof r&&null!==r&&"string"==typeof r.background&&"string"==typeof r.foreground&&(o=s(r.background),t="string"==typeof r.foreground?s(r.foreground):o);const n=g(o[0],o[1],o[2]),l=c([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:e.hex(`rgba(${o.join(",")})`),foreground:e.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},h=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function y(e){return h.test(e)}function b(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if(m(r))return{type:"ColorPair",value:r};if(k(r))return{type:"DeprecatedColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function v(e){if(e)if("string"==typeof e){if(y(e))return{type:"string",valid:!0,value:e};{const r=b(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if(m(r))return{type:"ColorPair",valid:!0,value:r};const a=e;if(k(a))return{type:"DeprecatedColorPair",valid:!0,value:a}}return{type:null,valid:!1,value:""}}function m(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function k(e){return"object"==typeof e&&e&&"string"==typeof e.backgroundColor&&"string"==typeof e.color}function w(e){const r=v(e);switch(r.type){case null:return!1;case"string":case"ColorPair":case"DeprecatedColorPair":return r.valid}}const M=(e,r,o)=>{a(e,"_color",w,new Set(["rgb in hex","ColorPair"]),r,o)},$=e=>{var r;let a;const o=v(e);switch(o.type){case"string":a=p(o.value);break;case"ColorPair":case"DeprecatedColorPair":{const e=o.value,t=o.value;let n="";t.color?n=t.color:"string"==typeof e.foregroundColor?n=e.foregroundColor:(null===(r=e.foregroundColor)||void 0===r?void 0:r.primary)&&(n=e.foregroundColor.primary),n&&"string"==typeof n||(n="#fff"),a=p({background:e.backgroundColor,foreground:n});break}case null:console.warn(`_color was empty or invalid (${JSON.stringify(e)})`),a=p({background:"#000",foreground:"#000"})}return a.contrast<7&&t(`[KolBadge] The contrast of ${a.contrast} (≥7, AAA) is to low, between the color pair ${a.background} and ${a.foreground}.`),{backgroundColor:a.background,foregroundColor:a.foreground}};export{s as c,$ as h,M as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{a as t}from"./prop.validators-683bb1d0.js";const o=(o,r,a)=>{t(o,r,(t=>"button"===t||"reset"===t||"submit"===t),new Set(["KoliBriButtonType {button, reset, submit}"]),a)},r=(o,r,a)=>{t(o,r,(t=>"primary"===t||"secondary"===t||"normal"===t||"danger"===t||"ghost"===t||"custom"===t),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),a,{defaultValue:"normal"})};export{o as a,r as w};
4
+ import{a as t}from"./prop.validators-601f1068.js";const o=(o,r,a)=>{t(o,r,(t=>"button"===t||"reset"===t||"submit"===t),new Set(["KoliBriButtonType {button, reset, submit}"]),a)},r=(o,r,a)=>{t(o,r,(t=>"primary"===t||"secondary"===t||"normal"===t||"danger"===t||"ghost"===t||"custom"===t),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),a,{defaultValue:"normal"})};export{o as a,r as w};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{b as t,w as i,s as e,o as s,p as a}from"./prop.validators-601f1068.js";import{a as h}from"./label-223fef8f.js";import{d as n,g as o,h as r}from"./a11y.tipps-9f948961.js";import{v as d}from"./tab-index-fc60df7a.js";import{b as l}from"./dev.utils-4290338e.js";const f=t=>{const e="string"==typeof t._error&&t._error.length>0&&!0===t._touched,i="string"==typeof t._hint&&t._hint.length>0,n=[];return!0===e&&n.push(`${t._id}-error`),!0===i&&n.push(`${t._id}-hint`),{hasError:e,hasHint:i,ariaDescribedBy:n}},c=(e,i)=>{t(e,"_adjustHeight",i)},u=(e,i)=>{t(e,"_touched",i)},v=l();class p{constructor(t,e,i){var o,s;if(this.setFormAssociatedValue=t=>{var e;const i=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==i&&""!==i||n(` The form field (${this.name}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=t,this.name=e,this.host=i,v){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.name){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===(s=this.host)||void 0===s||s.appendChild(this.formAssociated)}}setAttribute(t,e,i){if(v)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 null!==t?JSON.stringify(t):""}catch(t){return o(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,i){if(i)switch(i.setAttribute("value",e),this.name){case"select":i.querySelectorAll("option").forEach((t=>{i.removeChild(t)})),Array.isArray(t)&&t.length>0&&t.forEach((t=>{const e=this.tryToStringifyValue(t),n=document.createElement("option");n.setAttribute("value",e),n.setAttribute("selected",""),i.appendChild(n)}));break;case"textarea":i.innerHTML=e;break;default:i.value=e}}validateAlert(e){t(this.component,"_alert",e)}validateSyncValueBySelector(t){if(v&&"string"==typeof t){const e=document.querySelector(t);e instanceof HTMLInputElement&&(this.syncToOwnInput=e)}}validateTouched(t){u(this.component,t)}componentWillLoad(){this.validateAlert(this.component._alert),this.validateSyncValueBySelector(this.component._syncValueBySelector),this.validateTouched(this.component._touched)}}class m extends p{constructor(t,e,i){super(t,e,i),this.hideLabel=!1,this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this)},this.component=t}validateAccessKey(t){i(this.component,"_accessKey",t)}validateAdjustHeight(t){c(this.component,t)}validateDisabled(e){t(this.component,"_disabled",e),!0===e&&r()}validateError(t){i(this.component,"_error",t)}validateHideLabel(e){t(this.component,"_hideLabel",e)}validateHint(t){i(this.component,"_hint",t)}validateId(t){i(this.component,"_id",t,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},minLength:1}),""!==t&&void 0!==t||n("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){h(this.component,t)}validateName(t){i(this.component,"_name",t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&n("Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateOn(t){"object"==typeof t&&e(this.component,"_on",t)}validateSmartButton(t){s(t,(()=>{try{t=a(t)}catch(t){}e(this.component,"_smartButton",t)}))}validateTabIndex(t){d(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateDisabled(this.component._disabled),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateName(this.component._name),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t){var e;const i=t.target.value;this.setFormAssociatedValue(i),this.valueChangeListeners.forEach((t=>t(i))),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,i)}onClick(t){var e;"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(t)}onFocus(t){var e;this.component._alert=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}setValue(t,e){var i;this.setFormAssociatedValue(e),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onChange)&&this.component._on.onChange(t,e)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{m as I,f as g};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getRenderStates","state","hasError","_error","length","_touched","hasHint","_hint","ariaDescribedBy","push","_id","validateAdjustHeight","component","value","watchBoolean","validateTouched","EXPERIMENTAL_MODE","getExperimentalMode","ControlledInputController","constructor","name","host","this","setFormAssociatedValue","rawValue","_a","formAssociated","getAttribute","devHint","strValue","tryToStringifyValue","syncValue","syncToOwnInput","querySelectorAll","forEach","el","removeChild","document","createElement","setAttribute","_b","appendChild","qualifiedName","element","JSON","stringify","Error","e","removeAttribute","devWarning","associatedElement","Array","isArray","rawValueItem","strValueItem","option","innerHTML","validateAlert","validateSyncValueBySelector","input","querySelector","HTMLInputElement","componentWillLoad","_alert","_syncValueBySelector","InputController","super","hideLabel","valueChangeListeners","onFacade","onBlur","bind","onChange","onClick","onFocus","validateAccessKey","watchString","validateDisabled","a11yHintDisabled","validateError","validateHideLabel","validateHint","validateId","hooks","afterPatch","minLength","validateLabel","validateLabelWithExpertSlot","validateName","_name","validateOn","setState","validateSmartButton","objectObjectHandler","parseJson","validateTabIndex","_accessKey","_adjustHeight","_disabled","_hideLabel","_label","_smartButton","_on","_tabIndex","event","target","listener","setValue","addValueChangeListener"],"sources":["src/components/input/controller.ts","src/types/props/adjust-height.ts","src/types/props/touched.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts"],"sourcesContent":["/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_error?: string;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: boolean;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst hasError = typeof state._error === 'string' && state._error.length > 0 && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDescribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Passt die Höhe des Eingabefeldes automatisch an den Füllstand an.\n */\n/** en\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: boolean;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n */\n/** en\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: boolean;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { StencilUnknown } from '../../components';\nimport { validateTouched } from '../../types/props/touched';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { Props, Watches } from './types';\n\nconst EXPERIMENTAL_MODE = getExperimentalMode();\n\nexport class ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly name: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.name = name;\n\t\tthis.host = host;\n\t\tif (EXPERIMENTAL_MODE) {\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.name) {\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\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\t\tbreak;\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\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (EXPERIMENTAL_MODE) {\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 {\n\t\ttry {\n\t\t\treturn value !== null ? JSON.stringify(value) : '';\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.name}) 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(rawValue: StencilUnknown, strValue: string, associatedElement?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement) {\n\t\tif (associatedElement) {\n\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\tswitch (this.name) {\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) && rawValue.length > 0) {\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\tconst option = document.createElement('option');\n\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\t(associatedElement as HTMLTextAreaElement).innerHTML = strValue;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\t(associatedElement as HTMLInputElement).value = strValue;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateSyncValueBySelector(value?: string): void {\n\t\tif (EXPERIMENTAL_MODE && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value);\n\t\t\tif (input instanceof HTMLInputElement) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import { Generic } from '@a11y-ui/core';\n\nimport { ButtonProps } from '../../../types/button-link';\nimport { InputTypeOnDefault } from '../../../types/input/types';\nimport { validateAdjustHeight } from '../../../types/props/adjust-height';\nimport { LabelWithExpertSlotPropType, validateLabelWithExpertSlot } from '../../../types/props/label';\nimport { a11yHintDisabled, devHint } from '../../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchBoolean, watchString } from '../../../utils/prop.validators';\nimport { validateTabIndex } from '../../../utils/validators/tab-index';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\nimport { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport { Props, Watches } from './types';\n\ntype ValueChangeListener = (value: string) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tpublic hideLabel = false;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\tpublic validateError(value?: string): void {\n\t\twatchString(this.component, '_error', value);\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value);\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('id', this.formAssociated, this.component.state._id as string);\n\t\t\t\t},\n\t\t\t},\n\t\t\tminLength: 1,\n\t\t});\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value);\n\t}\n\n\tpublic validateName(value?: string): void {\n\t\twatchString(this.component, '_name', 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`Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.`\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\tprotected onChange(event: Event): void {\n\t\tconst value = (event.target as HTMLInputElement).value;\n\t\tthis.setFormAssociatedValue(value);\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic setValue(event: Event, value: string | number | boolean): void {\n\t\tthis.setFormAssociatedValue(value as string);\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t};\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{v as t,I as s}from"./controller-0a60db6b.js";import{a as e,d as a}from"./prop.validators-683bb1d0.js";class i extends s{constructor(t,s,e){super(t,s,e),this.component=t}validateList(t){a(this.component,"_list",(t=>"string"==typeof t),t)}componentWillLoad(){super.componentWillLoad(),this.validateList(this.component._list)}}class r extends i{constructor(t,s,e){super(t,s,e),this.hasError=!1,this.hasList=!1,this.component=t}validateType(t){e(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(s){t(this.component,s)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{i as I,r as a};
4
+ import{v as t,I as s}from"./controller-d2d4a593.js";import{a as e,d as a}from"./prop.validators-601f1068.js";class i extends s{constructor(t,s,e){super(t,s,e),this.component=t}validateList(t){a(this.component,"_list",(t=>"string"==typeof t),t)}componentWillLoad(){super.componentWillLoad(),this.validateList(this.component._list)}}class r extends i{constructor(t,s,e){super(t,s,e),this.hasError=!1,this.hasList=!1,this.component=t}validateType(t){e(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(s){t(this.component,s)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{i as I,r as a};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{d as e}from"./a11y.tipps-e607b8b3.js";import{b as o}from"./dev.utils-8aef00f6.js";import{f as t,K as n}from"./prop.validators-683bb1d0.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},s=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onSubmit)&&(null===(a=i._on)||void 0===a||a.onSubmit(e))}}};export{s as a,f as p};
4
+ import{d as e}from"./a11y.tipps-9f948961.js";import{b as o}from"./dev.utils-4290338e.js";import{f as t,K as n}from"./prop.validators-601f1068.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},s=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onSubmit)&&(null===(a=i._on)||void 0===a||a.onSubmit(e))}}};export{s as a,f as p};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["searchFormElement","el","getExperimentalMode","devHint","console","log","HTMLElement","tagName","parentElement","parentNode","ShadowRoot","host","propagateResetEventToForm","options","form","event","Event","bubbles","cancelable","setEventTarget","dispatchEvent","KoliBriDevHelper","querySelector","kolForm","_a","_on","onReset","_b","propagateSubmitEventToForm","SubmitEvent","submitter","onSubmit"],"sources":["src/components/form/controller.ts"],"sourcesContent":["import { devHint } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\nimport { KoliBriDevHelper, setEventTarget } from '../../utils/prop.validators';\nimport { KoliBriFormProps } from './types';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tconsole.log(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== 'KOL-FORM') {\n\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\tel = el.parentElement;\n\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\tel = el.parentNode.host;\n\t\t} else {\n\t\t\tel = null;\n\t\t}\n\t\tif (getExperimentalMode()) {\n\t\t\tconsole.log(el);\n\t\t}\n\t}\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↑ Search form element finished.`);\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 === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as KoliBriFormProps;\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\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as KoliBriFormProps;\n\t\t\tif (typeof kolForm._on?.onSubmit === 'function') {\n\t\t\t\tkolForm._on?.onSubmit(event);\n\t\t\t}\n\t\t}\n\t}\n};\n"],"mappings":";;;kJAKA,MAAMA,EAAqBC,IAC1B,GAAIC,IAAuB,CAC1BC,EAAQ,gCACRC,QAAQC,IAAIJ,E,CAEb,MAAOA,aAAcK,aAAeL,EAAGM,UAAY,QAAUN,EAAGM,UAAY,WAAY,CACvF,GAAIN,EAAGO,yBAAyBF,YAAa,CAC5CL,EAAKA,EAAGO,a,MACF,GAAIP,EAAGQ,sBAAsBC,WAAY,CAC/CT,EAAKA,EAAGQ,WAAWE,I,KACb,CACNV,EAAK,I,CAEN,GAAIC,IAAuB,CAC1BE,QAAQC,IAAIJ,E,EAGd,GAAIC,IAAuB,CAC1BC,EAAQ,kC,CAET,OAAOF,CAAE,E,MAGGW,EAA4B,CACxCC,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIC,MAAM,QAAS,CAChCC,QAAS,KACTC,WAAY,OAEb,GAAIJ,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,E,MACb,GAAID,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAY,WAAY,SACxCC,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAED,QAAQX,G,WAMnBa,EAA6B,CACzCf,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIc,YAAY,SAAU,CACvCZ,QAAS,KACTC,WAAY,KACZY,UAAWhB,IAYZ,GAAIA,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,E,MACb,GAAID,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEO,YAAa,WAAY,EAChDJ,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAEI,SAAShB,E"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{b as t,a as s,d as i,m as e,s as o}from"./prop.validators-683bb1d0.js";import{S as a}from"./reuse-c2156413.js";import{I as r}from"./controller-d9fb3dc1.js";const n=(e,o)=>{t(e,"_required",o)},h=(t,e,o="")=>{e.forEach(((e,i)=>{const a=`${o}-${i}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?h(t,e.options,a):t.set(a,e))}))};class l extends r{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){n(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class c extends l{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.isValueInOptions=(t,e)=>void 0!==e.find((e=>e.value===t)),this.beforePatchListValue=(t,e)=>{const o=e.has("_list")?e.get("_list"):this.component.state._list;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),h(this.keyOptionMap,o);const t=e.has("_value")?e.get("_value"):this.component.state._value;if(!1===this.isValueInOptions(t,o)){const t=o[0].value;e.set("_value",t),this.onStateChange()}}},this.component=t}validateOrientation(t){s(this.component,"_orientation",(t=>"horizontal"===t||"vertical"===t),new Set(["Orientation {horizontal, vertical}"]),t,{defaultValue:"vertical"})}validateList(t){i(this.component,"_list",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),t,void 0,{hooks:{beforePatch:this.beforePatchListValue}})}validateValue(t){t=e(t),t=Array.isArray(t)?t[0]:t,o(this.component,"_value",t,{beforePatch:this.beforePatchListValue}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(a)}))}},this.validateOrientation(this.component._orientation),this.validateList(this.component._list),this.validateValue(this.component._value)}}export{l as I,c as a,h as f};
4
+ import{b as t,a as s,d as i,m as e,s as a}from"./prop.validators-601f1068.js";import{S as o}from"./reuse-c2156413.js";import{I as r}from"./controller-7ae169ad.js";const n=(e,o)=>{t(e,"_required",o)},h=(t,e,o="")=>{e.forEach(((e,i)=>{const a=`${o}-${i}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?h(t,e.options,a):t.set(a,e))}))};class l extends r{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){n(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class c extends l{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.isValueInOptions=(t,e)=>void 0!==e.find((e=>e.value===t)),this.beforePatchListValue=(t,e)=>{const o=e.has("_list")?e.get("_list"):this.component.state._list;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),h(this.keyOptionMap,o);const t=e.has("_value")?e.get("_value"):this.component.state._value;if(!1===this.isValueInOptions(t,o)){const t=o[0].value;e.set("_value",t),this.onStateChange()}}},this.component=t}validateOrientation(t){s(this.component,"_orientation",(t=>"horizontal"===t||"vertical"===t),new Set(["Orientation {horizontal, vertical}"]),t,{defaultValue:"vertical"})}validateList(t){i(this.component,"_list",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),t,void 0,{hooks:{beforePatch:this.beforePatchListValue}})}validateValue(t){t=e(t),t=Array.isArray(t)?t[0]:t,a(this.component,"_value",t,{beforePatch:this.beforePatchListValue}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(o)}))}},this.validateOrientation(this.component._orientation),this.validateList(this.component._list),this.validateValue(this.component._value)}}export{l as I,c as a,h as f};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{b as t,a as e,e as i,w as s}from"./prop.validators-683bb1d0.js";import{d as a}from"./a11y.tipps-e607b8b3.js";import{I as h}from"./controller-icon-ba3c5351.js";const n=(e,a)=>{t(e,"_hasCounter",a)};class o extends h{constructor(e,t,n){super(e,t,n),this.handleHiddenLabelAndRequired=()=>{!0===this.component.state._hideLabel&&!0===this.component.state._required?(a("[KolInput*] Wenn man das Label ausblendet, dann kann der sehende Nutzer:in nicht mehr erkennen, ob die Eingabe erforderlich ist."),this.hideLabel=!1):this.hideLabel=!0===this.component.state._hideLabel},this.component=e}validateAutoComplete(t){e(this.component,"_autoComplete",(e=>"string"==typeof e&&("on"===e||"off"===e)),new Set(["on | off"]),t)}validateHasCounter(e){n(this.component,e)}validateHideLabel(e){t(this.component,"_hideLabel",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateMaxLength(e){i(this.component,"_maxLength",e,{min:0})}validatePattern(e){s(this.component,"_pattern",e)}validatePlaceholder(e){s(this.component,"_placeholder",e)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateSize(e){i(this.component,"_size",e,{min:1})}validateValue(e){s(this.component,"_value",e),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.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(e){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(e)}onFocus(e){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(e)}}export{o as I,n as v};
4
+ import{b as t,a as e,e as i,w as s}from"./prop.validators-601f1068.js";import{d as a}from"./a11y.tipps-9f948961.js";import{I as h}from"./controller-icon-4388a5b7.js";const n=(e,a)=>{t(e,"_hasCounter",a)};class o extends h{constructor(e,t,n){super(e,t,n),this.handleHiddenLabelAndRequired=()=>{!0===this.component.state._hideLabel&&!0===this.component.state._required?(a("[KolInput*] Wenn man das Label ausblendet, dann kann der sehende Nutzer:in nicht mehr erkennen, ob die Eingabe erforderlich ist."),this.hideLabel=!1):this.hideLabel=!0===this.component.state._hideLabel},this.component=e}validateAutoComplete(t){e(this.component,"_autoComplete",(e=>"string"==typeof e&&("on"===e||"off"===e)),new Set(["on | off"]),t)}validateHasCounter(e){n(this.component,e)}validateHideLabel(e){t(this.component,"_hideLabel",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateMaxLength(e){i(this.component,"_maxLength",e,{min:0})}validatePattern(e){s(this.component,"_pattern",e)}validatePlaceholder(e){s(this.component,"_placeholder",e)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateSize(e){i(this.component,"_size",e,{min:1})}validateValue(e){s(this.component,"_value",e),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.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(e){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(e)}onFocus(e){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(e)}}export{o as I,n as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{i as o}from"./icon-e03e73f6.js";import{o as t,p as s,a as i}from"./prop.validators-601f1068.js";import{i as r}from"./reuse-c2156413.js";import{I as e}from"./controller-7ae169ad.js";const c=(o,t)=>{const e=o;"object"==typeof e&&null!==e&&(r(e.right,1)&&(e.right={icon:e.right}),r(e.left,1)&&(e.left={icon:e.left}),t.set("_icon",e))};class a extends e{constructor(o,t,e){super(o,t,e),this.component=o}validateIcon(e){t(e,(()=>{try{e=s(e)}catch(o){}i(this.component,"_icon",(t=>"object"==typeof t&&null!==t&&(r(t.left,1)||o(t.left)||r(t.right,1)||o(t.right))),new Set(["KoliBriHorizontalIcon"]),e,{hooks:{beforePatch:c},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcon(this.component._icon)}}export{a as I};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ModalService","constructor","this","lockedElements","Map","modalStack","lockElement","htmlElement","tabIndex","getAttribute","HTMLAnchorElement","HTMLButtonElement","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","dataset","kolModal","undefined","set","setAttribute","style","userSelect","unlockElement","value","removeAttribute","delete","unlockLockedElements","forEach","bind","lockFocus","hostElement","excludeElement","HTMLElement","ShadowRoot","shadowRoot","i","children","length","renderModalIfExists","activeElement","has","get","timeout","setTimeout","clearTimeout","focus","size","modalKeys","Array","from","keys","modalRef","_value","display","getDocument","body","maxHeight","overflow","openModal","Log","warn","closeModal","_a","ToasterService","document","queue","Set","isOpen","toastElement","createElement","_on","onClose","next","values","showToast","insertBefore","firstChild","enqueue","data","add","heading","type","innerText","description","WINDOW","DOCUMENT","configKoliBri","window","Window","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","static","msg","isArray","classifier","shield","label","options","handleClassifier","overwriteStyle","forceLog","debug","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/components/toast/toaster.tsx","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { AlertType } from '../alert/types';\n\ntype Toast = {\n\theading: string;\n\tdescription: string;\n\ttype: AlertType;\n};\n\nexport class ToasterService {\n\tprivate readonly toastElement: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tconstructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '3');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1');\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tthis.toastElement.setAttribute('_heading', data.heading);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { ToasterService } from '../components/toast/toaster';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tconst Toaster = new ToasterService(getDocument());\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tObject.defineProperty(KoliBri, 'Toaster', {\n\t\t\tget: function (): ToasterService {\n\t\t\t\treturn Toaster;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{i as t,e as o,r as s,g as e,L as r,b as a,f as i,K as l}from"./dev.utils-8aef00f6.js";import{l as n,n as p,k as c,q as f,t as L,p as d,u as m}from"./prop.validators-683bb1d0.js";import"./reuse-c2156413.js";import"./a11y.tipps-e607b8b3.js";import"./index-37b5cbcf.js";function u(t,e){try{Object.defineProperty(l,t,{get:function(){return e}})}catch(e){r.debug(`KoliBri property ${t} is already bind.`)}}const b=(t,e)=>r.debug(`${t} ${e?"":"not "}activated`),h=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",L),u("utils",(function(){return n})),u("parseJson",d),u("stringifyJson",m);const t=e().body,r=e().createElement("svg");if(r.setAttribute("aria-label","KoliBri-DevTools"),r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r.setAttribute("role","toolbar"),r.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),r.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(r),b("Development mode",o()),b("Experimental mode",a()),b("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{h as initialize};
4
+ import{i as t,e as o,r as s,g as e,L as r,b as a,f as i,K as l}from"./dev.utils-4290338e.js";import{l as n,n as p,k as c,q as f,t as L,p as m,u as d}from"./prop.validators-601f1068.js";import"./reuse-c2156413.js";import"./a11y.tipps-9f948961.js";import"./index-37b5cbcf.js";function u(t,e){try{Object.defineProperty(l,t,{get:function(){return e}})}catch(e){r.debug(`KoliBri property ${t} is already bind.`)}}const h=(t,e)=>r.debug(`${t} ${e?"":"not "}activated`),v=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",L),u("utils",(function(){return n})),u("parseJson",m),u("stringifyJson",d);const t=e().body,r=e().createElement("svg");if(r.setAttribute("aria-label","KoliBri-DevTools"),r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r.setAttribute("role","toolbar"),r.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),r.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(r),h("Development mode",o()),h("Experimental mode",a()),h("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{v as initialize};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["prototypeKoliBri","name","cb","Object","defineProperty","KoliBri","get","e","Log","debug","metaModeLog","active","initialize","initKoliBri","getDevMode","renderDevAdvice","koliBriA11yColorContrast","koliBriQuerySelector","koliBriQuerySelectorAll","koliBriQuerySelectorColors","KoliBriUtils","parseJson","stringifyJson","body","getDocument","div","createElement","setAttribute","innerHTML","appendChild","getExperimentalMode","getColorContrastAnalysis","timeout","setTimeout","clearTimeout","setInterval","queryHtmlElementColors"],"sources":["src/global/devtools.ts"],"sourcesContent":["import { getColorContrastAnalysis, getDevMode, getDocument, getExperimentalMode, initKoliBri, KoliBri, Log, renderDevAdvice } from '../utils/dev.utils';\nimport {\n\tkoliBriA11yColorContrast,\n\tkoliBriQuerySelector,\n\tkoliBriQuerySelectorAll,\n\tkoliBriQuerySelectorColors,\n\tKoliBriUtils,\n\tparseJson,\n\tstringifyJson,\n} from '../utils/prop.validators';\n\nfunction prototypeKoliBri<T>(name: string, cb: T) {\n\ttry {\n\t\tObject.defineProperty(KoliBri, name, {\n\t\t\tget: function () {\n\t\t\t\treturn cb;\n\t\t\t},\n\t\t});\n\t} catch (e) {\n\t\tLog.debug(`KoliBri property ${name} is already bind.`);\n\t}\n}\n\nconst metaModeLog = (name: string, active: boolean) => Log.debug(`${name} ${active ? '' : 'not '}activated`);\n\nexport const initialize = (): void => {\n\tinitKoliBri();\n\tif (getDevMode()) {\n\t\trenderDevAdvice();\n\n\t\tprototypeKoliBri('a11yColorContrast', koliBriA11yColorContrast);\n\t\tprototypeKoliBri('querySelector', koliBriQuerySelector);\n\t\tprototypeKoliBri('querySelectorAll', koliBriQuerySelectorAll);\n\t\tprototypeKoliBri('querySelectorColors', koliBriQuerySelectorColors);\n\t\tprototypeKoliBri('utils', function () {\n\t\t\treturn KoliBriUtils;\n\t\t});\n\t\tprototypeKoliBri('parseJson', parseJson);\n\t\tprototypeKoliBri('stringifyJson', stringifyJson);\n\n\t\tconst body = getDocument().body;\n\n\t\tconst div = getDocument().createElement('svg');\n\t\tdiv.setAttribute('aria-label', 'KoliBri-DevTools');\n\t\tdiv.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\t\tdiv.setAttribute('role', 'toolbar');\n\t\tdiv.setAttribute('style', 'position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;');\n\t\tdiv.innerHTML = `<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"50\"\n height=\"50\"\n viewBox=\"0 0 600 600\"\n>\n <path d=\"M353 322L213 304V434L353 322Z\" fill=\"#047\" />\n <path d=\"M209 564V304L149 434L209 564Z\" fill=\"#047\" />\n <path d=\"M357 316L417 250L361 210L275 244L357 316Z\" fill=\"#047\" />\n <path d=\"M353 318L35 36L213 300L353 318Z\" fill=\"#047\" />\n <path d=\"M329 218L237 92L250 222L272 241L329 218Z\" fill=\"#047\" />\n <path d=\"M391 286L565 272L421 252L391 286Z\" fill=\"#047\" />\n</svg>`;\n\n\t\tgetDocument().body.appendChild(div);\n\n\t\tmetaModeLog('Development mode', getDevMode());\n\t\tmetaModeLog('Experimental mode', getExperimentalMode());\n\t\tmetaModeLog('Color contrast analysis', getColorContrastAnalysis());\n\n\t\tif (getColorContrastAnalysis()) {\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsetInterval(() => {\n\t\t\t\t\tKoliBriUtils.queryHtmlElementColors(getDocument().createElement('div'), koliBriA11yColorContrast(body), false, false);\n\t\t\t\t}, 10000);\n\t\t\t}, 2500);\n\t\t}\n\n\t\t// setTimeout(() => {\n\t\t// const kolButton = koliBriQuerySelector<HTMLButtonElement>(document, '[_label=\"Aktion ausführen\"]');\n\t\t// if (kolButton) {\n\t\t// const button = koliBriQuerySelector<HTMLButtonElement>(kolButton?.shadowRoot as ShadowRoot, 'button');\n\t\t// if (button) {\n\t\t// kolButton.style.backgroundColor = '#988';\n\t\t// button.style.backgroundColor = 'inherit';\n\t\t// button.style.color = '#988';\n\t\t// const kolButtonColors = koliBriQuerySelectorColors('[_label=\"Aktion ausführen\"]');\n\t\t// console.log(\n\t\t// koliBriQuerySelectorColors('button', {\n\t\t// ...kolButtonColors,\n\t\t// })\n\t\t// );\n\t\t// }\n\t\t// }\n\t\t// }, 2500);\n\t}\n};\n"],"mappings":";;;kRAWA,SAASA,EAAoBC,EAAcC,GAC1C,IACCC,OAAOC,eAAeC,EAASJ,EAAM,CACpCK,IAAK,WACJ,OAAOJ,C,IAGR,MAAOK,GACRC,EAAIC,MAAM,oBAAoBR,qB,CAEhC,CAEA,MAAMS,EAAc,CAACT,EAAcU,IAAoBH,EAAIC,MAAM,GAAGR,KAAQU,EAAS,GAAK,mB,MAE7EC,EAAa,KACzBC,IACA,GAAIC,IAAc,CACjBC,IAEAf,EAAiB,oBAAqBgB,GACtChB,EAAiB,gBAAiBiB,GAClCjB,EAAiB,mBAAoBkB,GACrClB,EAAiB,sBAAuBmB,GACxCnB,EAAiB,SAAS,WACzB,OAAOoB,C,IAERpB,EAAiB,YAAaqB,GAC9BrB,EAAiB,gBAAiBsB,GAElC,MAAMC,EAAOC,IAAcD,KAE3B,MAAME,EAAMD,IAAcE,cAAc,OACxCD,EAAIE,aAAa,aAAc,oBAC/BF,EAAIE,aAAa,QAAS,8BAC1BF,EAAIE,aAAa,OAAQ,WACzBF,EAAIE,aAAa,QAAS,gFAC1BF,EAAIG,UAAY,ueAchBJ,IAAcD,KAAKM,YAAYJ,GAE/Bf,EAAY,mBAAoBI,KAChCJ,EAAY,oBAAqBoB,KACjCpB,EAAY,0BAA2BqB,KAEvC,GAAIA,IAA4B,CAC/B,MAAMC,EAAUC,YAAW,KAC1BC,aAAaF,GACbG,aAAY,KACXf,EAAagB,uBAAuBZ,IAAcE,cAAc,OAAQV,EAAyBO,GAAO,MAAO,MAAM,GACnH,IAAM,GACP,K"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{b as a}from"./prop.validators-683bb1d0.js";const s=(s,o)=>{a(s,"_ariaExpanded",o)},o=(s,o)=>{a(s,"_disabled",o)};export{o as a,s as v};
4
+ import{b as a}from"./prop.validators-601f1068.js";const s=(s,o)=>{a(s,"_ariaExpanded",o)},o=(s,o)=>{a(s,"_disabled",o)};export{o as a,s as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ function t(t){return t.split("-")[1]}function n(t){return"y"===t?"height":"width"}function e(t){return t.split("-")[0]}function o(t){return["top","bottom"].includes(e(t))?"x":"y"}function i(i,r,l){let{reference:c,floating:s}=i;const a=c.x+c.width/2-s.width/2,f=c.y+c.height/2-s.height/2,u=o(r),d=n(u),m=c[d]/2-s[d]/2,p="x"===u;let h;switch(e(r)){case"top":h={x:a,y:c.y-s.height};break;case"bottom":h={x:a,y:c.y+c.height};break;case"right":h={x:c.x+c.width,y:f};break;case"left":h={x:c.x-s.width,y:f};break;default:h={x:c.x,y:c.y}}switch(t(r)){case"start":h[u]-=m*(l&&p?-1:1);break;case"end":h[u]+=m*(l&&p?-1:1)}return h}const r=async(t,e,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:l=[],platform:c}=n,s=l.filter(Boolean),a=await(null==c.isRTL?void 0:c.isRTL(e));let f=await c.getElementRects({reference:t,floating:e,strategy:r}),{x:u,y:d}=i(f,o,a),m=o,p={},h=0;for(let n=0;n<s.length;n++){const{name:l,fn:g}=s[n],{x:y,y:x,data:w,reset:v}=await g({x:u,y:d,initialPlacement:o,placement:m,strategy:r,middlewareData:p,rects:f,platform:c,elements:{reference:t,floating:e}});u=null!=y?y:u,d=null!=x?x:d,p={...p,[l]:{...p[l],...w}},v&&h<=50&&(h++,"object"==typeof v&&(v.placement&&(m=v.placement),v.rects&&(f=!0===v.rects?await c.getElementRects({reference:t,floating:e,strategy:r}):v.rects),({x:u,y:d}=i(f,m,a))),n=-1)}return{x:u,y:d,placement:m,strategy:r,middlewareData:p}};function s(t,e){return"function"==typeof t?t(e):t}function c(t){return{top:0,right:0,bottom:0,left:0,...t}}function l(t){return"number"!=typeof t?c(t):{top:t,right:t,bottom:t,left:t}}function f(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function a(t,e){var n;void 0===e&&(e={});const{x:o,y:i,platform:r,rects:c,elements:a,strategy:u}=t,{boundary:d="clippingAncestors",rootBoundary:m="viewport",elementContext:p="floating",altBoundary:h=!1,padding:g=0}=s(e,t),y=l(g),x=a[h?"floating"===p?"reference":"floating":p],w=f(await r.getClippingRect({element:null==(n=await(null==r.isElement?void 0:r.isElement(x)))||n?x:x.contextElement||await(null==r.getDocumentElement?void 0:r.getDocumentElement(a.floating)),boundary:d,rootBoundary:m,strategy:u})),v="floating"===p?{...c.floating,x:o,y:i}:c.reference,b=await(null==r.getOffsetParent?void 0:r.getOffsetParent(a.floating)),T=await(null==r.isElement?void 0:r.isElement(b))&&await(null==r.getScale?void 0:r.getScale(b))||{x:1,y:1},R=f(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({rect:v,offsetParent:b,strategy:u}):v);return{top:(w.top-R.top+y.top)/T.y,bottom:(R.bottom-w.bottom+y.bottom)/T.y,left:(w.left-R.left+y.left)/T.x,right:(R.right-w.right+y.right)/T.x}}const u=Math.min,d=Math.max;function m(t,e,n){return d(t,u(e,n))}const y=e=>({name:"arrow",options:e,async fn(i){const{x:r,y:c,placement:a,rects:f,platform:d,elements:p}=i,{element:h,padding:g=0}=s(e,i)||{};if(null==h)return{};const y=l(g),x={x:r,y:c},w=o(a),v=n(w),b=await d.getDimensions(h),T="y"===w,R=T?"top":"left",L=T?"bottom":"right",E=T?"clientHeight":"clientWidth",C=f.reference[v]+f.reference[w]-x[w]-f.floating[v],A=x[w]-f.reference[w],P=await(null==d.getOffsetParent?void 0:d.getOffsetParent(h));let S=P?P[E]:0;S&&await(null==d.isElement?void 0:d.isElement(P))||(S=p.floating[E]||f.floating[v]);const D=C/2-A/2,O=S/2-b[v]/2-1,z=u(y[R],O),V=u(y[L],O),F=z,k=S-b[v]-V,H=S/2-b[v]/2+D,W=m(F,H,k),M=null!=t(a)&&H!=W&&f.reference[v]/2-(H<F?z:V)-b[v]/2<0?H<F?F-H:k-H:0;return{[w]:x[w]-M,data:{[w]:W,centerOffset:H-W+M}}}}),p={left:"right",right:"left",bottom:"top",top:"bottom"};function h(t){return t.replace(/left|right|bottom|top/g,(t=>p[t]))}function x(e,i,r){void 0===r&&(r=!1);const l=t(e),c=o(e),s=n(c);let a="x"===c?l===(r?"end":"start")?"right":"left":"start"===l?"bottom":"top";return i.reference[s]>i.floating[s]&&(a=h(a)),{main:a,cross:h(a)}}const g={start:"end",end:"start"};function w(t){return t.replace(/start|end/g,(t=>g[t]))}function b(t){const e=h(t);return[w(t),e,w(e)]}function v(t,e,n){const o=["left","right"],i=["right","left"],r=["top","bottom"],l=["bottom","top"];switch(t){case"top":case"bottom":return n?e?i:o:e?o:i;case"left":case"right":return e?r:l;default:return[]}}function A(n,o,i,r){const l=t(n);let c=v(e(n),"start"===i,r);return l&&(c=c.map((t=>t+"-"+l)),o&&(c=c.concat(c.map(w)))),c}const S=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(n){var o;const{placement:i,middlewareData:r,rects:l,initialPlacement:c,platform:f,elements:u}=n,{mainAxis:d=!0,crossAxis:m=!0,fallbackPlacements:p,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:y="none",flipAlignment:w=!0,...v}=s(t,n),T=e(i),R=e(c)===c,L=await(null==f.isRTL?void 0:f.isRTL(u.floating)),E=p||(R||!w?[h(c)]:b(c));p||"none"===y||E.push(...A(c,w,y,L));const C=[c,...E],P=await a(n,v),S=[];let D=(null==(o=r.flip)?void 0:o.overflows)||[];if(d&&S.push(P[T]),m){const{main:t,cross:e}=x(i,l,L);S.push(P[t],P[e])}if(D=[...D,{placement:i,overflows:S}],!S.every((t=>t<=0))){var O,z;const t=((null==(O=r.flip)?void 0:O.index)||0)+1,e=C[t];if(e)return{data:{index:t,overflows:D},reset:{placement:e}};let n=null==(z=D.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:z.placement;if(!n)switch(g){case"bestFit":{var V;const t=null==(V=D.map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,e)=>t+e),0)])).sort(((t,e)=>t[1]-e[1]))[0])?void 0:V[0];t&&(n=t);break}case"initialPlacement":n=c}if(i!==n)return{reset:{placement:n}}}return{}}}};async function R(n,i){const{placement:r,platform:l,elements:c}=n,a=await(null==l.isRTL?void 0:l.isRTL(c.floating)),f=e(r),u=t(r),d="x"===o(r),m=["left","top"].includes(f)?-1:1,p=a&&d?-1:1,h=s(i,n);let{mainAxis:g,crossAxis:y,alignmentAxis:x}="number"==typeof h?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...h};return u&&"number"==typeof x&&(y="end"===u?-1*x:x),d?{x:y*p,y:g*m}:{x:g*m,y:y*p}}const k=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:n,y:o}=e,i=await R(e,t);return{x:n+i.x,y:o+i.y,data:i}}}};function F(t){return"x"===t?"y":"x"}const M=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(n){const{x:i,y:r,placement:l}=n,{mainAxis:c=!0,crossAxis:f=!1,limiter:u={fn:t=>{let{x:e,y:n}=t;return{x:e,y:n}}},...d}=s(t,n),p={x:i,y:r},h=await a(n,d),g=o(e(l)),y=F(g);let x=p[g],w=p[y];if(c){const t="y"===g?"bottom":"right";x=m(x+h["y"===g?"top":"left"],x,x-h[t])}if(f){const t="y"===y?"bottom":"right";w=m(w+h["y"===y?"top":"left"],w,w-h[t])}const v=u.fn({...n,[g]:x,[y]:w});return{...v,data:{x:v.x-i,y:v.y-r}}}}};function T(t){var e;return(null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function C(t){return T(t).getComputedStyle(t)}function O(t){return t instanceof T(t).Node}function P(t){return O(t)?(t.nodeName||"").toLowerCase():"#document"}function z(t){return t instanceof HTMLElement||t instanceof T(t).HTMLElement}function D(t){return"undefined"!=typeof ShadowRoot&&(t instanceof T(t).ShadowRoot||t instanceof ShadowRoot)}function L(t){const{overflow:e,overflowX:n,overflowY:o,display:i}=C(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&!["inline","contents"].includes(i)}function B(t){return["table","td","th"].includes(P(t))}function E(t){const e=I(),n=C(t);return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!e&&!!n.backdropFilter&&"none"!==n.backdropFilter||!e&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((t=>(n.willChange||"").includes(t)))||["paint","layout","strict","content"].some((t=>(n.contain||"").includes(t)))}function I(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function q(t){return["html","body","#document"].includes(P(t))}const H=Math.min,N=Math.max,$=Math.round,j=Math.floor,V=t=>({x:t,y:t});function W(t){const e=C(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;const i=z(t),r=i?t.offsetWidth:n,l=i?t.offsetHeight:o,c=$(n)!==r||$(o)!==l;return c&&(n=r,o=l),{width:n,height:o,$:c}}function X(t){return t instanceof Element||t instanceof T(t).Element}function Y(t){return X(t)?t:t.contextElement}function _(t){const e=Y(t);if(!z(e))return V(1);const n=e.getBoundingClientRect(),{width:o,height:i,$:r}=W(e);let l=(r?$(n.width):n.width)/o,c=(r?$(n.height):n.height)/i;return l&&Number.isFinite(l)||(l=1),c&&Number.isFinite(c)||(c=1),{x:l,y:c}}const G=V(0);function J(t){const e=T(t);return I()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:G}function K(t,e,n){return void 0===e&&(e=!1),!(!n||e&&n!==T(t))&&e}function Q(t,e,n,o){void 0===e&&(e=!1),void 0===n&&(n=!1);const i=t.getBoundingClientRect(),r=Y(t);let l=V(1);e&&(o?X(o)&&(l=_(o)):l=_(t));const c=K(r,n,o)?J(r):V(0);let s=(i.left+c.x)/l.x,a=(i.top+c.y)/l.y,u=i.width/l.x,d=i.height/l.y;if(r){const t=T(r),e=o&&X(o)?T(o):o;let n=t.frameElement;for(;n&&o&&e!==t;){const t=_(n),e=n.getBoundingClientRect(),o=getComputedStyle(n),i=e.left+(n.clientLeft+parseFloat(o.paddingLeft))*t.x,r=e.top+(n.clientTop+parseFloat(o.paddingTop))*t.y;s*=t.x,a*=t.y,u*=t.x,d*=t.y,s+=i,a+=r,n=T(n).frameElement}}return f({width:u,height:d,x:s,y:a})}function U(t){return X(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Z(t){var e;return null==(e=(O(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function tt(t){let{rect:e,offsetParent:n,strategy:o}=t;const i=z(n),r=Z(n);if(n===r)return e;let l={scrollLeft:0,scrollTop:0},c=V(1);const s=V(0);if((i||!i&&"fixed"!==o)&&(("body"!==P(n)||L(r))&&(l=U(n)),z(n))){const t=Q(n);c=_(n),s.x=t.x+n.clientLeft,s.y=t.y+n.clientTop}return{width:e.width*c.x,height:e.height*c.y,x:e.x*c.x-l.scrollLeft*c.x+s.x,y:e.y*c.y-l.scrollTop*c.y+s.y}}function nt(t){return Array.from(t.getClientRects())}function et(t){return Q(Z(t)).left+U(t).scrollLeft}function ot(t){const e=Z(t),n=U(t),o=t.ownerDocument.body,i=N(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),r=N(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+et(t);const c=-n.scrollTop;return"rtl"===C(o).direction&&(l+=N(e.clientWidth,o.clientWidth)-i),{width:i,height:r,x:l,y:c}}function it(t){if("html"===P(t))return t;const e=t.assignedSlot||t.parentNode||D(t)&&t.host||Z(t);return D(e)?e.host:e}function rt(t){const e=it(t);return q(e)?t.ownerDocument?t.ownerDocument.body:t.body:z(e)&&L(e)?e:rt(e)}function st(t,e){var n;void 0===e&&(e=[]);const o=rt(t),i=o===(null==(n=t.ownerDocument)?void 0:n.body),r=T(o);return i?e.concat(r,r.visualViewport||[],L(o)?o:[]):e.concat(o,st(o))}function ct(t,e){const n=T(t),o=Z(t),i=n.visualViewport;let r=o.clientWidth,l=o.clientHeight,c=0,s=0;if(i){r=i.width,l=i.height;const t=I();(!t||t&&"fixed"===e)&&(c=i.offsetLeft,s=i.offsetTop)}return{width:r,height:l,x:c,y:s}}function lt(t,e){const n=Q(t,!0,"fixed"===e),o=n.top+t.clientTop,i=n.left+t.clientLeft,r=z(t)?_(t):V(1);return{width:t.clientWidth*r.x,height:t.clientHeight*r.y,x:i*r.x,y:o*r.y}}function ft(t,e,n){let o;if("viewport"===e)o=ct(t,n);else if("document"===e)o=ot(Z(t));else if(X(e))o=lt(e,n);else{const n=J(t);o={...e,x:e.x-n.x,y:e.y-n.y}}return f(o)}function at(t,e){const n=it(t);return!(n===e||!X(n)||q(n))&&("fixed"===C(n).position||at(n,e))}function ut(t,e){const n=e.get(t);if(n)return n;let o=st(t).filter((t=>X(t)&&"body"!==P(t))),i=null;const r="fixed"===C(t).position;let l=r?it(t):t;for(;X(l)&&!q(l);){const e=C(l),n=E(l);n||"fixed"!==e.position||(i=null);(r?!n&&!i:!n&&"static"===e.position&&!!i&&["absolute","fixed"].includes(i.position)||L(l)&&!n&&at(t,l))?o=o.filter((t=>t!==l)):i=e,l=it(l)}return e.set(t,o),o}function dt(t){let{element:e,boundary:n,rootBoundary:o,strategy:i}=t;const r=[..."clippingAncestors"===n?ut(e,this._c):[].concat(n),o],l=r[0],c=r.reduce(((t,n)=>{const o=ft(e,n,i);return t.top=N(o.top,t.top),t.right=H(o.right,t.right),t.bottom=H(o.bottom,t.bottom),t.left=N(o.left,t.left),t}),ft(e,l,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function mt(t){return W(t)}function yt(t,e,n){const o=z(e),i=Z(e),r="fixed"===n,l=Q(t,!0,r,e);let c={scrollLeft:0,scrollTop:0};const s=V(0);if(o||!o&&!r)if(("body"!==P(e)||L(i))&&(c=U(e)),z(e)){const t=Q(e,!0,r,e);s.x=t.x+e.clientLeft,s.y=t.y+e.clientTop}else i&&(s.x=et(i));return{x:l.left+c.scrollLeft-s.x,y:l.top+c.scrollTop-s.y,width:l.width,height:l.height}}function pt(t,e){return z(t)&&"fixed"!==C(t).position?e?e(t):t.offsetParent:null}function ht(t){let e=it(t);for(;z(e)&&!q(e);){if(E(e))return e;e=it(e)}return null}function xt(t,e){const n=T(t);if(!z(t))return n;let o=pt(t,e);for(;o&&B(o)&&"static"===C(o).position;)o=pt(o,e);return o&&("html"===P(o)||"body"===P(o)&&"static"===C(o).position&&!E(o))?n:o||ht(t)||n}const gt=async function(t){let{reference:e,floating:n,strategy:o}=t;const i=this.getOffsetParent||xt,r=this.getDimensions;return{reference:yt(e,await i(n),o),floating:{x:0,y:0,...await r(n)}}};function wt(t){return"rtl"===getComputedStyle(t).direction}const bt={convertOffsetParentRelativeRectToViewportRelativeRect:tt,getDocumentElement:Z,getClippingRect:dt,getOffsetParent:xt,getElementRects:gt,getClientRects:nt,getDimensions:mt,getScale:_,isElement:X,isRTL:wt};function vt(t,e){let n,o=null;const i=Z(t);function r(){clearTimeout(n),o&&o.disconnect(),o=null}return function l(c,s){void 0===c&&(c=!1),void 0===s&&(s=1),r();const{left:a,top:f,width:u,height:d}=t.getBoundingClientRect();if(c||e(),!u||!d)return;const m={rootMargin:-j(f)+"px "+-j(i.clientWidth-(a+u))+"px "+-j(i.clientHeight-(f+d))+"px "+-j(a)+"px",threshold:N(0,H(1,s))||1};let p=!0;function h(t){const e=t[0].intersectionRatio;if(e!==s){if(!p)return l();e?l(!1,e):n=setTimeout((()=>{l(!1,1e-7)}),100)}p=!1}try{o=new IntersectionObserver(h,{...m,root:i.ownerDocument})}catch(t){o=new IntersectionObserver(h,m)}o.observe(t)}(!0),r}function At(t,e,n,o){void 0===o&&(o={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:c="function"==typeof IntersectionObserver,animationFrame:s=!1}=o,a=Y(t),f=i||r?[...a?st(a):[],...st(e)]:[];f.forEach((t=>{i&&t.addEventListener("scroll",n,{passive:!0}),r&&t.addEventListener("resize",n)}));const u=a&&c?vt(a,n):null;let d,m=-1,p=null;l&&(p=new ResizeObserver((t=>{let[o]=t;o&&o.target===a&&p&&(p.unobserve(e),cancelAnimationFrame(m),m=requestAnimationFrame((()=>{p&&p.observe(e)}))),n()})),a&&!s&&p.observe(a),p.observe(e));let h=s?Q(t):null;return s&&function e(){const o=Q(t);!h||o.x===h.x&&o.y===h.y&&o.width===h.width&&o.height===h.height||n();h=o,d=requestAnimationFrame(e)}(),n(),()=>{f.forEach((t=>{i&&t.removeEventListener("scroll",n),r&&t.removeEventListener("resize",n)})),u&&u(),p&&p.disconnect(),p=null,s&&cancelAnimationFrame(d)}}const St=(t,e,n)=>{const o=new Map,i={platform:bt,...n},l={...i.platform,_c:o};return r(t,e,{...i,platform:l})};export{y as a,At as b,St as c,S as f,k as o,M as s};