@public-ui/components 1.7.9 → 1.7.10-rc.0

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 (834) hide show
  1. package/custom-elements.json +2 -15
  2. package/dist/cjs/{a11y.tipps-fc06a539.js → a11y.tipps-cc4df177.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-fc06a539.js.map → a11y.tipps-cc4df177.js.map} +1 -1
  4. package/dist/cjs/align-91c9246e.js +4 -0
  5. package/dist/cjs/{align-3375e5ad.js.map → align-91c9246e.js.map} +1 -1
  6. package/dist/cjs/{alignment-47db3e8c.js → alignment-c6523bea.js} +1 -1
  7. package/dist/cjs/{alignment-47db3e8c.js.map → alignment-c6523bea.js.map} +1 -1
  8. package/dist/cjs/{app-globals-c23367e9.js → app-globals-a6a4d645.js} +1 -1
  9. package/dist/cjs/{app-globals-c23367e9.js.map → app-globals-a6a4d645.js.map} +1 -1
  10. package/dist/cjs/aria-current-352c8722.js +4 -0
  11. package/dist/cjs/{aria-current-6ade938c.js.map → aria-current-352c8722.js.map} +1 -1
  12. package/dist/cjs/{associated.controller-4e9f851e.js → associated.controller-225b2b41.js} +1 -1
  13. package/dist/cjs/{associated.controller-4e9f851e.js.map → associated.controller-225b2b41.js.map} +1 -1
  14. package/dist/cjs/color-025ba733.js +4 -0
  15. package/dist/cjs/color-025ba733.js.map +1 -0
  16. package/dist/cjs/{controller-f2e4e569.js → controller-6146c6ef.js} +1 -1
  17. package/dist/cjs/{controller-f2e4e569.js.map → controller-6146c6ef.js.map} +1 -1
  18. package/dist/cjs/{controller-50c6a2a3.js → controller-718f2b1b.js} +1 -1
  19. package/dist/cjs/{controller-50c6a2a3.js.map → controller-718f2b1b.js.map} +1 -1
  20. package/dist/cjs/{controller-7dca0d96.js → controller-9118a984.js} +1 -1
  21. package/dist/cjs/{controller-7dca0d96.js.map → controller-9118a984.js.map} +1 -1
  22. package/dist/cjs/controller-a8b16be7.js +4 -0
  23. package/dist/cjs/controller-a8b16be7.js.map +1 -0
  24. package/dist/cjs/{controller-3debaa2f.js → controller-ee3433a2.js} +1 -1
  25. package/dist/cjs/{controller-3debaa2f.js.map → controller-ee3433a2.js.map} +1 -1
  26. package/dist/cjs/{controller-icon-f57ece8e.js → controller-icon-7c651a70.js} +1 -1
  27. package/dist/cjs/{controller-icon-f57ece8e.js.map → controller-icon-7c651a70.js.map} +1 -1
  28. package/dist/cjs/{custom-class-3e3aaa76.js → custom-class-e021ae75.js} +1 -1
  29. package/dist/cjs/{custom-class-3e3aaa76.js.map → custom-class-e021ae75.js.map} +1 -1
  30. package/dist/cjs/{dev.utils-42f8a7f3.js → dev.utils-7ffc0de2.js} +1 -1
  31. package/dist/cjs/dev.utils-7ffc0de2.js.map +1 -0
  32. package/dist/cjs/{devtools-23bc2a1b.js → devtools-0d42e820.js} +1 -1
  33. package/dist/cjs/{devtools-23bc2a1b.js.map → devtools-0d42e820.js.map} +1 -1
  34. package/dist/cjs/floating-ui.dom.esm-8a7bcac7.js +4 -0
  35. package/dist/cjs/floating-ui.dom.esm-8a7bcac7.js.map +1 -0
  36. package/dist/cjs/has-closer-9dc678bd.js +4 -0
  37. package/dist/cjs/{has-closer-b0c298f8.js.map → has-closer-9dc678bd.js.map} +1 -1
  38. package/dist/cjs/hide-label-119d31ba.js +4 -0
  39. package/dist/cjs/{hide-label-8569f785.js.map → hide-label-119d31ba.js.map} +1 -1
  40. package/dist/cjs/i18n-74c3fd14.js +4 -0
  41. package/dist/cjs/i18n-74c3fd14.js.map +1 -0
  42. package/dist/cjs/icons-b97dfddd.js +4 -0
  43. package/dist/cjs/icons-b97dfddd.js.map +1 -0
  44. package/dist/cjs/image-source-70f2b4bd.js +4 -0
  45. package/dist/cjs/{image-source-9dda503c.js.map → image-source-70f2b4bd.js.map} +1 -1
  46. package/dist/cjs/index-26a16cf8.js +5 -0
  47. package/dist/cjs/index-26a16cf8.js.map +1 -0
  48. package/dist/cjs/index-4a49c733.js +4 -0
  49. package/dist/cjs/index-4a49c733.js.map +1 -0
  50. package/dist/cjs/index-98f394b0.js +4 -0
  51. package/dist/cjs/index-98f394b0.js.map +1 -0
  52. package/dist/cjs/index-a60d6032.js +4 -0
  53. package/dist/cjs/index-a60d6032.js.map +1 -0
  54. package/dist/cjs/index.cjs.js +1 -1
  55. package/dist/cjs/input-error-ac3a12f5.js +4 -0
  56. package/dist/cjs/input-error-ac3a12f5.js.map +1 -0
  57. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-avatar-wc.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  109. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  111. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  127. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  129. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  130. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  131. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  132. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  133. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  134. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  135. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  136. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  137. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  138. package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -1
  139. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  140. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  141. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  142. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  143. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  144. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  145. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  146. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  147. package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
  148. package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +1 -1
  149. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  150. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  151. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  152. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  153. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  154. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  155. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  156. package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
  157. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  158. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  159. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  160. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  161. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  162. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  163. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  164. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  165. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  166. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  167. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  168. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  169. package/dist/cjs/kolibri.cjs.js +1 -1
  170. package/dist/cjs/kolibri.cjs.js.map +1 -1
  171. package/dist/cjs/label-9c90b7bd.js +4 -0
  172. package/dist/cjs/label-9c90b7bd.js.map +1 -0
  173. package/dist/cjs/loader.cjs.js +1 -1
  174. package/dist/cjs/open-6c59a249.js +4 -0
  175. package/dist/cjs/{open-6810f49b.js.map → open-6c59a249.js.map} +1 -1
  176. package/dist/cjs/prop.validators-74cd0cae.js +4 -0
  177. package/dist/cjs/prop.validators-74cd0cae.js.map +1 -0
  178. package/dist/cjs/reuse-a4c8450e.js.map +1 -1
  179. package/dist/cjs/rows-d983dc81.js +4 -0
  180. package/dist/cjs/{rows-b9f78fc2.js.map → rows-d983dc81.js.map} +1 -1
  181. package/dist/cjs/show-947d9652.js +4 -0
  182. package/dist/cjs/{show-861944f8.js.map → show-947d9652.js.map} +1 -1
  183. package/dist/cjs/{suggestions-819c2865.js → suggestions-31840598.js} +1 -1
  184. package/dist/cjs/{suggestions-819c2865.js.map → suggestions-31840598.js.map} +1 -1
  185. package/dist/cjs/{tab-index-7f5febb6.js → tab-index-3f37309c.js} +1 -1
  186. package/dist/cjs/{tab-index-7f5febb6.js.map → tab-index-3f37309c.js.map} +1 -1
  187. package/dist/cjs/{tooltip-align-660cc8f4.js → tooltip-align-f42eaa8c.js} +1 -1
  188. package/dist/cjs/{tooltip-align-660cc8f4.js.map → tooltip-align-f42eaa8c.js.map} +1 -1
  189. package/dist/cjs/{validation-039f91a8.js → validation-af39d6f8.js} +1 -1
  190. package/dist/cjs/{validation-039f91a8.js.map → validation-af39d6f8.js.map} +1 -1
  191. package/dist/cjs/{validation-335376a3.js → validation-c3cb4a77.js} +1 -1
  192. package/dist/cjs/{validation-335376a3.js.map → validation-c3cb4a77.js.map} +1 -1
  193. package/dist/components/align.js +1 -1
  194. package/dist/components/align.js.map +1 -1
  195. package/dist/components/color.js +1 -1
  196. package/dist/components/color.js.map +1 -1
  197. package/dist/components/component.js +1 -1
  198. package/dist/components/component.js.map +1 -1
  199. package/dist/components/component12.js +1 -1
  200. package/dist/components/component12.js.map +1 -1
  201. package/dist/components/component13.js +1 -1
  202. package/dist/components/component14.js +1 -1
  203. package/dist/components/component14.js.map +1 -1
  204. package/dist/components/component15.js +1 -1
  205. package/dist/components/component15.js.map +1 -1
  206. package/dist/components/component16.js +1 -1
  207. package/dist/components/component16.js.map +1 -1
  208. package/dist/components/component2.js +1 -1
  209. package/dist/components/component2.js.map +1 -1
  210. package/dist/components/component3.js +1 -1
  211. package/dist/components/component3.js.map +1 -1
  212. package/dist/components/component4.js +1 -1
  213. package/dist/components/component4.js.map +1 -1
  214. package/dist/components/component5.js +1 -1
  215. package/dist/components/component5.js.map +1 -1
  216. package/dist/components/component6.js +1 -1
  217. package/dist/components/component6.js.map +1 -1
  218. package/dist/components/component7.js +1 -1
  219. package/dist/components/component7.js.map +1 -1
  220. package/dist/components/component8.js +1 -1
  221. package/dist/components/component8.js.map +1 -1
  222. package/dist/components/component9.js +1 -1
  223. package/dist/components/component9.js.map +1 -1
  224. package/dist/components/controller.js +1 -1
  225. package/dist/components/controller.js.map +1 -1
  226. package/dist/components/controller2.js +1 -1
  227. package/dist/components/controller4.js +1 -1
  228. package/dist/components/details-synced-open-state.js +1 -1
  229. package/dist/components/devtools.js +1 -1
  230. package/dist/components/i18n.js +1 -1
  231. package/dist/components/i18n.js.map +1 -1
  232. package/dist/components/index.js +1 -1
  233. package/dist/components/index2.js +1 -1
  234. package/dist/components/index2.js.map +1 -1
  235. package/dist/components/input-error.js +4 -0
  236. package/dist/components/input-error.js.map +1 -0
  237. package/dist/components/kol-abbr.js +1 -1
  238. package/dist/components/kol-abbr.js.map +1 -1
  239. package/dist/components/kol-accordion.js +1 -1
  240. package/dist/components/kol-accordion.js.map +1 -1
  241. package/dist/components/kol-avatar.js +1 -1
  242. package/dist/components/kol-avatar.js.map +1 -1
  243. package/dist/components/kol-breadcrumb.js +1 -1
  244. package/dist/components/kol-breadcrumb.js.map +1 -1
  245. package/dist/components/kol-button-group.js +1 -1
  246. package/dist/components/kol-button-group.js.map +1 -1
  247. package/dist/components/kol-button-link.js +1 -1
  248. package/dist/components/kol-button-link.js.map +1 -1
  249. package/dist/components/kol-card.js +1 -1
  250. package/dist/components/kol-card.js.map +1 -1
  251. package/dist/components/kol-details.js +1 -1
  252. package/dist/components/kol-details.js.map +1 -1
  253. package/dist/components/kol-heading.js +1 -1
  254. package/dist/components/kol-heading.js.map +1 -1
  255. package/dist/components/kol-image.js +1 -1
  256. package/dist/components/kol-image.js.map +1 -1
  257. package/dist/components/kol-input-adapter-leanup.js +1 -1
  258. package/dist/components/kol-input-checkbox.js +1 -1
  259. package/dist/components/kol-input-checkbox.js.map +1 -1
  260. package/dist/components/kol-input-color.js +1 -1
  261. package/dist/components/kol-input-color.js.map +1 -1
  262. package/dist/components/kol-input-date.js +1 -1
  263. package/dist/components/kol-input-date.js.map +1 -1
  264. package/dist/components/kol-input-email.js +1 -1
  265. package/dist/components/kol-input-email.js.map +1 -1
  266. package/dist/components/kol-input-file.js +1 -1
  267. package/dist/components/kol-input-file.js.map +1 -1
  268. package/dist/components/kol-input-number.js +1 -1
  269. package/dist/components/kol-input-number.js.map +1 -1
  270. package/dist/components/kol-input-password.js +1 -1
  271. package/dist/components/kol-input-password.js.map +1 -1
  272. package/dist/components/kol-input-radio-group.js +1 -1
  273. package/dist/components/kol-input-range.js +1 -1
  274. package/dist/components/kol-input-range.js.map +1 -1
  275. package/dist/components/kol-input-text.js +1 -1
  276. package/dist/components/kol-input-text.js.map +1 -1
  277. package/dist/components/kol-kolibri.js +1 -1
  278. package/dist/components/kol-kolibri.js.map +1 -1
  279. package/dist/components/kol-link-button.js +1 -1
  280. package/dist/components/kol-link-button.js.map +1 -1
  281. package/dist/components/kol-link-group.js +1 -1
  282. package/dist/components/kol-link-group.js.map +1 -1
  283. package/dist/components/kol-logo.js +1 -1
  284. package/dist/components/kol-logo.js.map +1 -1
  285. package/dist/components/kol-modal.js +1 -1
  286. package/dist/components/kol-modal.js.map +1 -1
  287. package/dist/components/kol-nav.js +1 -1
  288. package/dist/components/kol-nav.js.map +1 -1
  289. package/dist/components/kol-popover-wc.js +1 -1
  290. package/dist/components/kol-popover-wc.js.map +1 -1
  291. package/dist/components/kol-progress.js +1 -1
  292. package/dist/components/kol-progress.js.map +1 -1
  293. package/dist/components/kol-quote.js +1 -1
  294. package/dist/components/kol-quote.js.map +1 -1
  295. package/dist/components/kol-skip-nav.js +1 -1
  296. package/dist/components/kol-skip-nav.js.map +1 -1
  297. package/dist/components/kol-span.js +1 -1
  298. package/dist/components/kol-span.js.map +1 -1
  299. package/dist/components/kol-spin.js +1 -1
  300. package/dist/components/kol-spin.js.map +1 -1
  301. package/dist/components/kol-split-button.js +1 -1
  302. package/dist/components/kol-split-button.js.map +1 -1
  303. package/dist/components/kol-symbol.js +1 -1
  304. package/dist/components/kol-symbol.js.map +1 -1
  305. package/dist/components/kol-table.js +1 -1
  306. package/dist/components/kol-table.js.map +1 -1
  307. package/dist/components/kol-tabs.js +1 -1
  308. package/dist/components/kol-tabs.js.map +1 -1
  309. package/dist/components/kol-textarea.js +1 -1
  310. package/dist/components/kol-textarea.js.map +1 -1
  311. package/dist/components/kol-toast-container.js +1 -1
  312. package/dist/components/kol-toast-container.js.map +1 -1
  313. package/dist/components/kol-toast.js +1 -1
  314. package/dist/components/kol-toast.js.map +1 -1
  315. package/dist/components/kol-version.js +1 -1
  316. package/dist/components/kol-version.js.map +1 -1
  317. package/dist/components/label.js +1 -1
  318. package/dist/components/label.js.map +1 -1
  319. package/dist/components/prop.validators.js +1 -1
  320. package/dist/components/prop.validators.js.map +1 -1
  321. package/dist/components/reprod-accordion-does-not-toggle-with-open.js +1 -1
  322. package/dist/components/rows.js +1 -1
  323. package/dist/components/shadow.js +1 -1
  324. package/dist/components/shadow.js.map +1 -1
  325. package/dist/components/shadow2.js +1 -1
  326. package/dist/components/shadow2.js.map +1 -1
  327. package/dist/components/shadow3.js +1 -1
  328. package/dist/components/shadow3.js.map +1 -1
  329. package/dist/components/suggestions.js +1 -1
  330. package/dist/components/tab-index.js +1 -1
  331. package/dist/components/validation.js +1 -1
  332. package/dist/esm/{a11y.tipps-f6c45c86.js → a11y.tipps-32a6b338.js} +1 -1
  333. package/dist/esm/{a11y.tipps-f6c45c86.js.map → a11y.tipps-32a6b338.js.map} +1 -1
  334. package/dist/esm/{align-47ac5741.js → align-0a771bb0.js} +1 -1
  335. package/dist/esm/{align-47ac5741.js.map → align-0a771bb0.js.map} +1 -1
  336. package/dist/esm/{alignment-12d96d24.js → alignment-a489cd69.js} +1 -1
  337. package/dist/esm/{alignment-12d96d24.js.map → alignment-a489cd69.js.map} +1 -1
  338. package/dist/esm/app-globals-e8dbcc19.js +4 -0
  339. package/dist/esm/{app-globals-48d34a0e.js.map → app-globals-e8dbcc19.js.map} +1 -1
  340. package/dist/esm/{aria-current-fad13ad9.js → aria-current-92edc17f.js} +1 -1
  341. package/dist/esm/{aria-current-fad13ad9.js.map → aria-current-92edc17f.js.map} +1 -1
  342. package/dist/esm/{associated.controller-e5f4e28f.js → associated.controller-983c7497.js} +1 -1
  343. package/dist/esm/{associated.controller-e5f4e28f.js.map → associated.controller-983c7497.js.map} +1 -1
  344. package/dist/esm/color-1580a906.js +4 -0
  345. package/dist/esm/color-1580a906.js.map +1 -0
  346. package/dist/esm/{controller-dfcfc09a.js → controller-2693d568.js} +1 -1
  347. package/dist/esm/{controller-dfcfc09a.js.map → controller-2693d568.js.map} +1 -1
  348. package/dist/esm/{controller-4d7c0722.js → controller-5fe78992.js} +1 -1
  349. package/dist/esm/{controller-4d7c0722.js.map → controller-5fe78992.js.map} +1 -1
  350. package/dist/esm/{controller-21996017.js → controller-894ab5d8.js} +1 -1
  351. package/dist/esm/{controller-21996017.js.map → controller-894ab5d8.js.map} +1 -1
  352. package/dist/esm/{controller-1b6f1e7d.js → controller-a8c30b23.js} +1 -1
  353. package/dist/esm/{controller-1b6f1e7d.js.map → controller-a8c30b23.js.map} +1 -1
  354. package/dist/esm/{controller-2ae84856.js → controller-cc137d03.js} +1 -1
  355. package/dist/esm/controller-cc137d03.js.map +1 -0
  356. package/dist/esm/{controller-icon-1add4713.js → controller-icon-1b496c1d.js} +1 -1
  357. package/dist/esm/{controller-icon-1add4713.js.map → controller-icon-1b496c1d.js.map} +1 -1
  358. package/dist/esm/{custom-class-9be75299.js → custom-class-0eabccc7.js} +1 -1
  359. package/dist/esm/{custom-class-9be75299.js.map → custom-class-0eabccc7.js.map} +1 -1
  360. package/dist/esm/details-synced-open-state-e1e2be6f.js +1 -1
  361. package/dist/esm/{dev.utils-0559a5fe.js → dev.utils-7c5ec760.js} +1 -1
  362. package/dist/esm/dev.utils-7c5ec760.js.map +1 -0
  363. package/dist/esm/{devtools-d7b91bd4.js → devtools-e9da032c.js} +1 -1
  364. package/dist/esm/{devtools-d7b91bd4.js.map → devtools-e9da032c.js.map} +1 -1
  365. package/dist/esm/floating-ui.dom.esm-3f5b7a69.js +4 -0
  366. package/dist/esm/floating-ui.dom.esm-3f5b7a69.js.map +1 -0
  367. package/dist/esm/{has-closer-9236bdbf.js → has-closer-0d1f51b2.js} +1 -1
  368. package/dist/esm/{has-closer-9236bdbf.js.map → has-closer-0d1f51b2.js.map} +1 -1
  369. package/dist/esm/{hide-label-3f5a18f0.js → hide-label-6d0b4e87.js} +1 -1
  370. package/dist/esm/{hide-label-3f5a18f0.js.map → hide-label-6d0b4e87.js.map} +1 -1
  371. package/dist/esm/i18n-ae71d07a.js +4 -0
  372. package/dist/esm/i18n-ae71d07a.js.map +1 -0
  373. package/dist/esm/icons-4a6e7e5d.js +4 -0
  374. package/dist/esm/icons-4a6e7e5d.js.map +1 -0
  375. package/dist/esm/{image-source-2bb969be.js → image-source-399053c1.js} +1 -1
  376. package/dist/esm/{image-source-2bb969be.js.map → image-source-399053c1.js.map} +1 -1
  377. package/dist/esm/index-0b7aa54b.js +5 -0
  378. package/dist/esm/index-0b7aa54b.js.map +1 -0
  379. package/dist/esm/index-0e51998c.js +4 -0
  380. package/dist/esm/index-0e51998c.js.map +1 -0
  381. package/dist/esm/index-c36dfcc7.js +4 -0
  382. package/dist/esm/index-c36dfcc7.js.map +1 -0
  383. package/dist/esm/index-c88c7ecf.js +4 -0
  384. package/dist/esm/index-c88c7ecf.js.map +1 -0
  385. package/dist/esm/index.js +1 -1
  386. package/dist/esm/input-error-bc5a177b.js +4 -0
  387. package/dist/esm/input-error-bc5a177b.js.map +1 -0
  388. package/dist/esm/kol-abbr.entry.js +1 -1
  389. package/dist/esm/kol-abbr.entry.js.map +1 -1
  390. package/dist/esm/kol-accordion.entry.js +1 -1
  391. package/dist/esm/kol-accordion.entry.js.map +1 -1
  392. package/dist/esm/kol-alert-wc_3.entry.js +1 -1
  393. package/dist/esm/kol-alert-wc_3.entry.js.map +1 -1
  394. package/dist/esm/kol-alert.entry.js +1 -1
  395. package/dist/esm/kol-alert.entry.js.map +1 -1
  396. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  397. package/dist/esm/kol-avatar-wc.entry.js.map +1 -1
  398. package/dist/esm/kol-avatar.entry.js +1 -1
  399. package/dist/esm/kol-avatar.entry.js.map +1 -1
  400. package/dist/esm/kol-badge.entry.js +1 -1
  401. package/dist/esm/kol-badge.entry.js.map +1 -1
  402. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  403. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  404. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  405. package/dist/esm/kol-button-group.entry.js +1 -1
  406. package/dist/esm/kol-button-group.entry.js.map +1 -1
  407. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  408. package/dist/esm/kol-button-link.entry.js +1 -1
  409. package/dist/esm/kol-button-link.entry.js.map +1 -1
  410. package/dist/esm/kol-button.entry.js +1 -1
  411. package/dist/esm/kol-button.entry.js.map +1 -1
  412. package/dist/esm/kol-card.entry.js +1 -1
  413. package/dist/esm/kol-card.entry.js.map +1 -1
  414. package/dist/esm/kol-details.entry.js +1 -1
  415. package/dist/esm/kol-details.entry.js.map +1 -1
  416. package/dist/esm/kol-form.entry.js +1 -1
  417. package/dist/esm/kol-heading.entry.js +1 -1
  418. package/dist/esm/kol-heading.entry.js.map +1 -1
  419. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  420. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  421. package/dist/esm/kol-icon.entry.js +1 -1
  422. package/dist/esm/kol-icon.entry.js.map +1 -1
  423. package/dist/esm/kol-image.entry.js +1 -1
  424. package/dist/esm/kol-image.entry.js.map +1 -1
  425. package/dist/esm/kol-indented-text.entry.js +1 -1
  426. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  427. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  428. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  429. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  430. package/dist/esm/kol-input-color.entry.js +1 -1
  431. package/dist/esm/kol-input-color.entry.js.map +1 -1
  432. package/dist/esm/kol-input-date.entry.js +1 -1
  433. package/dist/esm/kol-input-date.entry.js.map +1 -1
  434. package/dist/esm/kol-input-email.entry.js +1 -1
  435. package/dist/esm/kol-input-email.entry.js.map +1 -1
  436. package/dist/esm/kol-input-file.entry.js +1 -1
  437. package/dist/esm/kol-input-file.entry.js.map +1 -1
  438. package/dist/esm/kol-input-number.entry.js +1 -1
  439. package/dist/esm/kol-input-number.entry.js.map +1 -1
  440. package/dist/esm/kol-input-password.entry.js +1 -1
  441. package/dist/esm/kol-input-password.entry.js.map +1 -1
  442. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  443. package/dist/esm/kol-input-radio.entry.js +1 -1
  444. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  445. package/dist/esm/kol-input-range.entry.js +1 -1
  446. package/dist/esm/kol-input-range.entry.js.map +1 -1
  447. package/dist/esm/kol-input-text.entry.js +1 -1
  448. package/dist/esm/kol-input-text.entry.js.map +1 -1
  449. package/dist/esm/kol-input.entry.js +1 -1
  450. package/dist/esm/kol-kolibri.entry.js +1 -1
  451. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  452. package/dist/esm/kol-link-button.entry.js +1 -1
  453. package/dist/esm/kol-link-button.entry.js.map +1 -1
  454. package/dist/esm/kol-link-group.entry.js +1 -1
  455. package/dist/esm/kol-link-group.entry.js.map +1 -1
  456. package/dist/esm/kol-link-wc.entry.js +1 -1
  457. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  458. package/dist/esm/kol-link.entry.js +1 -1
  459. package/dist/esm/kol-link.entry.js.map +1 -1
  460. package/dist/esm/kol-logo.entry.js +1 -1
  461. package/dist/esm/kol-logo.entry.js.map +1 -1
  462. package/dist/esm/kol-modal.entry.js +1 -1
  463. package/dist/esm/kol-modal.entry.js.map +1 -1
  464. package/dist/esm/kol-nav.entry.js +1 -1
  465. package/dist/esm/kol-nav.entry.js.map +1 -1
  466. package/dist/esm/kol-pagination.entry.js +1 -1
  467. package/dist/esm/kol-pagination.entry.js.map +1 -1
  468. package/dist/esm/kol-popover-wc.entry.js +1 -1
  469. package/dist/esm/kol-popover-wc.entry.js.map +1 -1
  470. package/dist/esm/kol-progress.entry.js +1 -1
  471. package/dist/esm/kol-progress.entry.js.map +1 -1
  472. package/dist/esm/kol-quote.entry.js +1 -1
  473. package/dist/esm/kol-quote.entry.js.map +1 -1
  474. package/dist/esm/kol-select.entry.js +1 -1
  475. package/dist/esm/kol-select.entry.js.map +1 -1
  476. package/dist/esm/kol-skip-nav.entry.js +1 -1
  477. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  478. package/dist/esm/kol-span-wc_2.entry.js +1 -1
  479. package/dist/esm/kol-span-wc_2.entry.js.map +1 -1
  480. package/dist/esm/kol-span.entry.js +1 -1
  481. package/dist/esm/kol-span.entry.js.map +1 -1
  482. package/dist/esm/kol-spin.entry.js +1 -1
  483. package/dist/esm/kol-spin.entry.js.map +1 -1
  484. package/dist/esm/kol-split-button.entry.js +1 -1
  485. package/dist/esm/kol-split-button.entry.js.map +1 -1
  486. package/dist/esm/kol-symbol.entry.js +1 -1
  487. package/dist/esm/kol-symbol.entry.js.map +1 -1
  488. package/dist/esm/kol-table.entry.js +1 -1
  489. package/dist/esm/kol-table.entry.js.map +1 -1
  490. package/dist/esm/kol-tabs.entry.js +1 -1
  491. package/dist/esm/kol-tabs.entry.js.map +1 -1
  492. package/dist/esm/kol-textarea.entry.js +1 -1
  493. package/dist/esm/kol-textarea.entry.js.map +1 -1
  494. package/dist/esm/kol-toast-container.entry.js +1 -1
  495. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  496. package/dist/esm/kol-toast.entry.js +1 -1
  497. package/dist/esm/kol-toast.entry.js.map +1 -1
  498. package/dist/esm/kol-version.entry.js +1 -1
  499. package/dist/esm/kol-version.entry.js.map +1 -1
  500. package/dist/esm/kolibri.js +1 -1
  501. package/dist/esm/kolibri.js.map +1 -1
  502. package/dist/esm/label-0eaa3401.js +4 -0
  503. package/dist/esm/label-0eaa3401.js.map +1 -0
  504. package/dist/esm/loader.js +1 -1
  505. package/dist/esm/{open-cc287e80.js → open-53901f21.js} +1 -1
  506. package/dist/esm/{open-cc287e80.js.map → open-53901f21.js.map} +1 -1
  507. package/dist/esm/prop.validators-5fa8ad17.js +4 -0
  508. package/dist/esm/prop.validators-5fa8ad17.js.map +1 -0
  509. package/dist/esm/reprod-accordion-does-not-toggle-with-open-930fccf8.js +1 -1
  510. package/dist/esm/reuse-d79ab469.js.map +1 -1
  511. package/dist/esm/{rows-98a862c9.js → rows-1bfd96ae.js} +1 -1
  512. package/dist/esm/{rows-98a862c9.js.map → rows-1bfd96ae.js.map} +1 -1
  513. package/dist/esm/{show-aa1bbfa4.js → show-ad893770.js} +1 -1
  514. package/dist/esm/{show-aa1bbfa4.js.map → show-ad893770.js.map} +1 -1
  515. package/dist/esm/{suggestions-aa86adad.js → suggestions-482f16b1.js} +1 -1
  516. package/dist/esm/{suggestions-aa86adad.js.map → suggestions-482f16b1.js.map} +1 -1
  517. package/dist/esm/{tab-index-0f24625a.js → tab-index-5c4bb50c.js} +1 -1
  518. package/dist/esm/{tab-index-0f24625a.js.map → tab-index-5c4bb50c.js.map} +1 -1
  519. package/dist/esm/{tooltip-align-7ec36878.js → tooltip-align-b29e6d11.js} +1 -1
  520. package/dist/esm/{tooltip-align-7ec36878.js.map → tooltip-align-b29e6d11.js.map} +1 -1
  521. package/dist/esm/validation-0cec1a10.js +4 -0
  522. package/dist/esm/{validation-ec5c9e17.js.map → validation-0cec1a10.js.map} +1 -1
  523. package/dist/esm/validation-3db94f5d.js +4 -0
  524. package/dist/esm/{validation-53f4df94.js.map → validation-3db94f5d.js.map} +1 -1
  525. package/dist/kolibri/{a11y.tipps-f6c45c86.js → a11y.tipps-32a6b338.js} +1 -1
  526. package/dist/kolibri/align-0a771bb0.js +4 -0
  527. package/dist/kolibri/alignment-a489cd69.js +4 -0
  528. package/dist/kolibri/app-globals-e8dbcc19.js +4 -0
  529. package/dist/kolibri/{aria-current-fad13ad9.js → aria-current-92edc17f.js} +1 -1
  530. package/dist/kolibri/{associated.controller-e5f4e28f.js → associated.controller-983c7497.js} +1 -1
  531. package/dist/kolibri/color-1580a906.js +4 -0
  532. package/dist/kolibri/color-1580a906.js.map +1 -0
  533. package/dist/kolibri/{controller-dfcfc09a.js → controller-2693d568.js} +1 -1
  534. package/dist/kolibri/{controller-4d7c0722.js → controller-5fe78992.js} +1 -1
  535. package/dist/kolibri/{controller-21996017.js → controller-894ab5d8.js} +1 -1
  536. package/dist/kolibri/{controller-1b6f1e7d.js → controller-a8c30b23.js} +1 -1
  537. package/dist/kolibri/controller-cc137d03.js +4 -0
  538. package/dist/kolibri/controller-cc137d03.js.map +1 -0
  539. package/dist/kolibri/controller-icon-1b496c1d.js +4 -0
  540. package/dist/kolibri/{custom-class-9be75299.js → custom-class-0eabccc7.js} +1 -1
  541. package/dist/kolibri/details-synced-open-state-e1e2be6f.js +1 -1
  542. package/dist/kolibri/details-synced-open-state-e1e2be6f.js.map +1 -1
  543. package/dist/kolibri/{dev.utils-0559a5fe.js → dev.utils-7c5ec760.js} +1 -1
  544. package/dist/kolibri/{dev.utils-0559a5fe.js.map → dev.utils-7c5ec760.js.map} +1 -1
  545. package/dist/kolibri/{devtools-d7b91bd4.js → devtools-e9da032c.js} +1 -1
  546. package/dist/kolibri/floating-ui.dom.esm-3f5b7a69.js +4 -0
  547. package/dist/kolibri/floating-ui.dom.esm-3f5b7a69.js.map +1 -0
  548. package/dist/kolibri/has-closer-0d1f51b2.js +4 -0
  549. package/dist/kolibri/{has-closer-9236bdbf.js.map → has-closer-0d1f51b2.js.map} +1 -1
  550. package/dist/kolibri/hide-label-6d0b4e87.js +4 -0
  551. package/dist/kolibri/i18n-ae71d07a.js +4 -0
  552. package/dist/kolibri/i18n-ae71d07a.js.map +1 -0
  553. package/dist/kolibri/icons-4a6e7e5d.js +4 -0
  554. package/dist/kolibri/icons-4a6e7e5d.js.map +1 -0
  555. package/dist/kolibri/image-source-399053c1.js +4 -0
  556. package/dist/kolibri/index-0b7aa54b.js +5 -0
  557. package/dist/kolibri/index-0b7aa54b.js.map +1 -0
  558. package/dist/kolibri/index-0e51998c.js +4 -0
  559. package/dist/kolibri/index-0e51998c.js.map +1 -0
  560. package/dist/kolibri/index-c36dfcc7.js +4 -0
  561. package/dist/kolibri/index-c36dfcc7.js.map +1 -0
  562. package/dist/kolibri/index-c88c7ecf.js +4 -0
  563. package/dist/kolibri/{index-24073a5e.js.map → index-c88c7ecf.js.map} +1 -1
  564. package/dist/kolibri/index.esm.js +1 -1
  565. package/dist/kolibri/input-error-bc5a177b.js +4 -0
  566. package/dist/kolibri/input-error-bc5a177b.js.map +1 -0
  567. package/dist/kolibri/kol-abbr.entry.js +1 -1
  568. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  569. package/dist/kolibri/kol-accordion.entry.js +1 -1
  570. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  571. package/dist/kolibri/kol-alert-wc_3.entry.js +1 -1
  572. package/dist/kolibri/kol-alert-wc_3.entry.js.map +1 -1
  573. package/dist/kolibri/kol-alert.entry.js +1 -1
  574. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  575. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  576. package/dist/kolibri/kol-avatar-wc.entry.js.map +1 -1
  577. package/dist/kolibri/kol-avatar.entry.js +1 -1
  578. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  579. package/dist/kolibri/kol-badge.entry.js +1 -1
  580. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  581. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  582. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  583. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  584. package/dist/kolibri/kol-button-group.entry.js +1 -1
  585. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  586. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  587. package/dist/kolibri/kol-button-link.entry.js +1 -1
  588. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  589. package/dist/kolibri/kol-button.entry.js +1 -1
  590. package/dist/kolibri/kol-button.entry.js.map +1 -1
  591. package/dist/kolibri/kol-card.entry.js +1 -1
  592. package/dist/kolibri/kol-card.entry.js.map +1 -1
  593. package/dist/kolibri/kol-details.entry.js +1 -1
  594. package/dist/kolibri/kol-details.entry.js.map +1 -1
  595. package/dist/kolibri/kol-form.entry.js +1 -1
  596. package/dist/kolibri/kol-heading.entry.js +1 -1
  597. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  598. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  599. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  600. package/dist/kolibri/kol-icon.entry.js +1 -1
  601. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  602. package/dist/kolibri/kol-image.entry.js +1 -1
  603. package/dist/kolibri/kol-image.entry.js.map +1 -1
  604. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  605. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  606. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  607. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  608. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  609. package/dist/kolibri/kol-input-color.entry.js +1 -1
  610. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  611. package/dist/kolibri/kol-input-date.entry.js +1 -1
  612. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  613. package/dist/kolibri/kol-input-email.entry.js +1 -1
  614. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  615. package/dist/kolibri/kol-input-file.entry.js +1 -1
  616. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  617. package/dist/kolibri/kol-input-number.entry.js +1 -1
  618. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  619. package/dist/kolibri/kol-input-password.entry.js +1 -1
  620. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  621. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  622. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  623. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  624. package/dist/kolibri/kol-input-range.entry.js +1 -1
  625. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  626. package/dist/kolibri/kol-input-text.entry.js +1 -1
  627. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  628. package/dist/kolibri/kol-input.entry.js +1 -1
  629. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  630. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  631. package/dist/kolibri/kol-link-button.entry.js +1 -1
  632. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  633. package/dist/kolibri/kol-link-group.entry.js +1 -1
  634. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  635. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  636. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  637. package/dist/kolibri/kol-link.entry.js +1 -1
  638. package/dist/kolibri/kol-link.entry.js.map +1 -1
  639. package/dist/kolibri/kol-logo.entry.js +1 -1
  640. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  641. package/dist/kolibri/kol-modal.entry.js +1 -1
  642. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  643. package/dist/kolibri/kol-nav.entry.js +1 -1
  644. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  645. package/dist/kolibri/kol-pagination.entry.js +1 -1
  646. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  647. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  648. package/dist/kolibri/kol-popover-wc.entry.js.map +1 -1
  649. package/dist/kolibri/kol-progress.entry.js +1 -1
  650. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  651. package/dist/kolibri/kol-quote.entry.js +1 -1
  652. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  653. package/dist/kolibri/kol-select.entry.js +1 -1
  654. package/dist/kolibri/kol-select.entry.js.map +1 -1
  655. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  656. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  657. package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
  658. package/dist/kolibri/kol-span-wc_2.entry.js.map +1 -1
  659. package/dist/kolibri/kol-span.entry.js +1 -1
  660. package/dist/kolibri/kol-span.entry.js.map +1 -1
  661. package/dist/kolibri/kol-spin.entry.js +1 -1
  662. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  663. package/dist/kolibri/kol-split-button.entry.js +1 -1
  664. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  665. package/dist/kolibri/kol-symbol.entry.js +1 -1
  666. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  667. package/dist/kolibri/kol-table.entry.js +1 -1
  668. package/dist/kolibri/kol-table.entry.js.map +1 -1
  669. package/dist/kolibri/kol-tabs.entry.js +1 -1
  670. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  671. package/dist/kolibri/kol-textarea.entry.js +1 -1
  672. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  673. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  674. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  675. package/dist/kolibri/kol-toast.entry.js +1 -1
  676. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  677. package/dist/kolibri/kol-version.entry.js +1 -1
  678. package/dist/kolibri/kol-version.entry.js.map +1 -1
  679. package/dist/kolibri/kolibri.esm.js +1 -1
  680. package/dist/kolibri/kolibri.esm.js.map +1 -1
  681. package/dist/kolibri/label-0eaa3401.js +4 -0
  682. package/dist/kolibri/label-0eaa3401.js.map +1 -0
  683. package/dist/kolibri/open-53901f21.js +4 -0
  684. package/dist/kolibri/{open-cc287e80.js.map → open-53901f21.js.map} +1 -1
  685. package/dist/kolibri/prop.validators-5fa8ad17.js +4 -0
  686. package/dist/kolibri/prop.validators-5fa8ad17.js.map +1 -0
  687. package/dist/kolibri/reprod-accordion-does-not-toggle-with-open-930fccf8.js +1 -1
  688. package/dist/kolibri/reprod-accordion-does-not-toggle-with-open-930fccf8.js.map +1 -1
  689. package/dist/kolibri/reuse-d79ab469.js.map +1 -1
  690. package/dist/kolibri/rows-1bfd96ae.js +4 -0
  691. package/dist/kolibri/show-ad893770.js +4 -0
  692. package/dist/kolibri/{show-aa1bbfa4.js.map → show-ad893770.js.map} +1 -1
  693. package/dist/kolibri/{suggestions-aa86adad.js → suggestions-482f16b1.js} +1 -1
  694. package/dist/kolibri/tab-index-5c4bb50c.js +4 -0
  695. package/dist/kolibri/{tab-index-0f24625a.js.map → tab-index-5c4bb50c.js.map} +1 -1
  696. package/dist/kolibri/tooltip-align-b29e6d11.js +4 -0
  697. package/dist/kolibri/validation-0cec1a10.js +4 -0
  698. package/dist/kolibri/validation-3db94f5d.js +4 -0
  699. package/dist/types/components/input-date/controller.d.ts +1 -1
  700. package/dist/types/components/link/component.d.ts +0 -2
  701. package/dist/types/components/link/shadow.d.ts +0 -1
  702. package/dist/types/components/link/types.d.ts +0 -1
  703. package/dist/types/components/link-button/component.d.ts +0 -1
  704. package/dist/types/components/span/test/html.mock.d.ts +1 -0
  705. package/dist/types/components/table/component.d.ts +7 -2
  706. package/dist/types/components/textarea/component.d.ts +2 -1
  707. package/dist/types/components/tooltip/types.d.ts +2 -2
  708. package/dist/types/components.d.ts +2 -26
  709. package/dist/types/dev/input-error.d.ts +2 -0
  710. package/dist/types/i18n.d.ts +1 -1
  711. package/dist/types/locales/de.d.ts +1 -3
  712. package/dist/types/locales/en.d.ts +1 -3
  713. package/dist/types/types/button-link-text.d.ts +0 -1
  714. package/dist/types/types/icons.d.ts +1 -0
  715. package/dist/types/types/props/icons.d.ts +3 -2
  716. package/doc/card.md +9 -9
  717. package/doc/kolibri.md +4 -4
  718. package/doc/link-button.md +22 -23
  719. package/doc/link.md +25 -26
  720. package/doc/nav.md +23 -11
  721. package/doc/table.md +2 -0
  722. package/package.json +1 -1
  723. package/vscode-custom-data.json +0 -8
  724. package/dist/cjs/align-3375e5ad.js +0 -4
  725. package/dist/cjs/aria-current-6ade938c.js +0 -4
  726. package/dist/cjs/color-eeb9a6b0.js +0 -4
  727. package/dist/cjs/color-eeb9a6b0.js.map +0 -1
  728. package/dist/cjs/controller-36303123.js +0 -4
  729. package/dist/cjs/controller-36303123.js.map +0 -1
  730. package/dist/cjs/dev.utils-42f8a7f3.js.map +0 -1
  731. package/dist/cjs/floating-ui.dom.esm-c21c7751.js +0 -4
  732. package/dist/cjs/floating-ui.dom.esm-c21c7751.js.map +0 -1
  733. package/dist/cjs/has-closer-b0c298f8.js +0 -4
  734. package/dist/cjs/hide-label-8569f785.js +0 -4
  735. package/dist/cjs/i18n-24e2e7bd.js +0 -4
  736. package/dist/cjs/i18n-24e2e7bd.js.map +0 -1
  737. package/dist/cjs/icons-1512d190.js +0 -4
  738. package/dist/cjs/icons-1512d190.js.map +0 -1
  739. package/dist/cjs/image-source-9dda503c.js +0 -4
  740. package/dist/cjs/index-3145a30d.js +0 -5
  741. package/dist/cjs/index-3145a30d.js.map +0 -1
  742. package/dist/cjs/index-84f67516.js +0 -4
  743. package/dist/cjs/index-84f67516.js.map +0 -1
  744. package/dist/cjs/index-8e5b1010.js +0 -4
  745. package/dist/cjs/index-8e5b1010.js.map +0 -1
  746. package/dist/cjs/index-b2c76861.js +0 -4
  747. package/dist/cjs/index-b2c76861.js.map +0 -1
  748. package/dist/cjs/label-406399fe.js +0 -4
  749. package/dist/cjs/label-406399fe.js.map +0 -1
  750. package/dist/cjs/open-6810f49b.js +0 -4
  751. package/dist/cjs/prop.validators-06ce5362.js +0 -4
  752. package/dist/cjs/prop.validators-06ce5362.js.map +0 -1
  753. package/dist/cjs/rows-b9f78fc2.js +0 -4
  754. package/dist/cjs/show-861944f8.js +0 -4
  755. package/dist/esm/app-globals-48d34a0e.js +0 -4
  756. package/dist/esm/color-7ce1d396.js +0 -4
  757. package/dist/esm/color-7ce1d396.js.map +0 -1
  758. package/dist/esm/controller-2ae84856.js.map +0 -1
  759. package/dist/esm/dev.utils-0559a5fe.js.map +0 -1
  760. package/dist/esm/floating-ui.dom.esm-e435ab9f.js +0 -4
  761. package/dist/esm/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  762. package/dist/esm/i18n-1904adb8.js +0 -4
  763. package/dist/esm/i18n-1904adb8.js.map +0 -1
  764. package/dist/esm/icons-d1b67f7d.js +0 -4
  765. package/dist/esm/icons-d1b67f7d.js.map +0 -1
  766. package/dist/esm/index-24073a5e.js +0 -4
  767. package/dist/esm/index-24073a5e.js.map +0 -1
  768. package/dist/esm/index-5dfe6d77.js +0 -5
  769. package/dist/esm/index-5dfe6d77.js.map +0 -1
  770. package/dist/esm/index-5f832c94.js +0 -4
  771. package/dist/esm/index-5f832c94.js.map +0 -1
  772. package/dist/esm/index-cdc6e32e.js +0 -4
  773. package/dist/esm/index-cdc6e32e.js.map +0 -1
  774. package/dist/esm/label-4225dcc0.js +0 -4
  775. package/dist/esm/label-4225dcc0.js.map +0 -1
  776. package/dist/esm/prop.validators-b9732831.js +0 -4
  777. package/dist/esm/prop.validators-b9732831.js.map +0 -1
  778. package/dist/esm/validation-53f4df94.js +0 -4
  779. package/dist/esm/validation-ec5c9e17.js +0 -4
  780. package/dist/kolibri/align-47ac5741.js +0 -4
  781. package/dist/kolibri/alignment-12d96d24.js +0 -4
  782. package/dist/kolibri/app-globals-48d34a0e.js +0 -4
  783. package/dist/kolibri/color-7ce1d396.js +0 -4
  784. package/dist/kolibri/color-7ce1d396.js.map +0 -1
  785. package/dist/kolibri/controller-2ae84856.js +0 -4
  786. package/dist/kolibri/controller-2ae84856.js.map +0 -1
  787. package/dist/kolibri/controller-icon-1add4713.js +0 -4
  788. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js +0 -4
  789. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  790. package/dist/kolibri/has-closer-9236bdbf.js +0 -4
  791. package/dist/kolibri/hide-label-3f5a18f0.js +0 -4
  792. package/dist/kolibri/i18n-1904adb8.js +0 -4
  793. package/dist/kolibri/i18n-1904adb8.js.map +0 -1
  794. package/dist/kolibri/icons-d1b67f7d.js +0 -4
  795. package/dist/kolibri/icons-d1b67f7d.js.map +0 -1
  796. package/dist/kolibri/image-source-2bb969be.js +0 -4
  797. package/dist/kolibri/index-24073a5e.js +0 -4
  798. package/dist/kolibri/index-5dfe6d77.js +0 -5
  799. package/dist/kolibri/index-5dfe6d77.js.map +0 -1
  800. package/dist/kolibri/index-5f832c94.js +0 -4
  801. package/dist/kolibri/index-5f832c94.js.map +0 -1
  802. package/dist/kolibri/index-cdc6e32e.js +0 -4
  803. package/dist/kolibri/index-cdc6e32e.js.map +0 -1
  804. package/dist/kolibri/label-4225dcc0.js +0 -4
  805. package/dist/kolibri/label-4225dcc0.js.map +0 -1
  806. package/dist/kolibri/open-cc287e80.js +0 -4
  807. package/dist/kolibri/prop.validators-b9732831.js +0 -4
  808. package/dist/kolibri/prop.validators-b9732831.js.map +0 -1
  809. package/dist/kolibri/rows-98a862c9.js +0 -4
  810. package/dist/kolibri/show-aa1bbfa4.js +0 -4
  811. package/dist/kolibri/tab-index-0f24625a.js +0 -4
  812. package/dist/kolibri/tooltip-align-7ec36878.js +0 -4
  813. package/dist/kolibri/validation-53f4df94.js +0 -4
  814. package/dist/kolibri/validation-ec5c9e17.js +0 -4
  815. /package/dist/kolibri/{a11y.tipps-f6c45c86.js.map → a11y.tipps-32a6b338.js.map} +0 -0
  816. /package/dist/kolibri/{align-47ac5741.js.map → align-0a771bb0.js.map} +0 -0
  817. /package/dist/kolibri/{alignment-12d96d24.js.map → alignment-a489cd69.js.map} +0 -0
  818. /package/dist/kolibri/{app-globals-48d34a0e.js.map → app-globals-e8dbcc19.js.map} +0 -0
  819. /package/dist/kolibri/{aria-current-fad13ad9.js.map → aria-current-92edc17f.js.map} +0 -0
  820. /package/dist/kolibri/{associated.controller-e5f4e28f.js.map → associated.controller-983c7497.js.map} +0 -0
  821. /package/dist/kolibri/{controller-dfcfc09a.js.map → controller-2693d568.js.map} +0 -0
  822. /package/dist/kolibri/{controller-4d7c0722.js.map → controller-5fe78992.js.map} +0 -0
  823. /package/dist/kolibri/{controller-21996017.js.map → controller-894ab5d8.js.map} +0 -0
  824. /package/dist/kolibri/{controller-1b6f1e7d.js.map → controller-a8c30b23.js.map} +0 -0
  825. /package/dist/kolibri/{controller-icon-1add4713.js.map → controller-icon-1b496c1d.js.map} +0 -0
  826. /package/dist/kolibri/{custom-class-9be75299.js.map → custom-class-0eabccc7.js.map} +0 -0
  827. /package/dist/kolibri/{devtools-d7b91bd4.js.map → devtools-e9da032c.js.map} +0 -0
  828. /package/dist/kolibri/{hide-label-3f5a18f0.js.map → hide-label-6d0b4e87.js.map} +0 -0
  829. /package/dist/kolibri/{image-source-2bb969be.js.map → image-source-399053c1.js.map} +0 -0
  830. /package/dist/kolibri/{rows-98a862c9.js.map → rows-1bfd96ae.js.map} +0 -0
  831. /package/dist/kolibri/{suggestions-aa86adad.js.map → suggestions-482f16b1.js.map} +0 -0
  832. /package/dist/kolibri/{tooltip-align-7ec36878.js.map → tooltip-align-b29e6d11.js.map} +0 -0
  833. /package/dist/kolibri/{validation-ec5c9e17.js.map → validation-0cec1a10.js.map} +0 -0
  834. /package/dist/kolibri/{validation-53f4df94.js.map → validation-3db94f5d.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["colorName","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","names","require$$0","colorParse","parse","baseHues","cstr","m","parts","alpha","space","toLowerCase","slice","test","base","size","length","isShort","parseInt","exec","name","isRGB","replace","trim","split","map","x","i","parseFloat","undefined","push","match","value","join","isNaN","Array","isArray","Object","r","R","g","G","b","B","h","hue","H","s","saturation","S","l","lightness","L","brightness","a","opacity","values","colorRgba","rgba","color","raw","String","apply","arguments","parsed","min","max","Math","hsl2rgb","hsl","t1","t2","t3","rgb","val","getContrastYIQ","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","round","contrast","hex","rgbaConvert","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorContrast","HEX_REGEX","isHexString","isColorObjectString","startsWith","JSON","isValidColorPair","type","isValidDeprecatedColorPair","error","typeOfColor","valid","colorObject","asColorPair","asDeprecatedColorPair","backgroundColor","foregroundColor","primary","secondary","neutral","validatorFunction","valueType","validateColor","component","options","watchValidator","Set","handleColorChange","_a","console","warn","stringify","a11yHint"],"sources":["../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../node_modules/.pnpm/color-parse@1.4.3/node_modules/color-parse/index.js","../../node_modules/.pnpm/color-rgba@2.4.0/node_modules/color-rgba/index.js","src/components/badge/contrast.ts","src/types/props/color.ts"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/**\n * @module color-parse\n */\n\n'use strict'\n\nvar names = require('color-name')\n\nmodule.exports = parse\n\n/**\n * Base hues\n * http://dev.w3.org/csswg/css-color/#typedef-named-hue\n */\n//FIXME: use external hue detector\nvar baseHues = {\n\tred: 0,\n\torange: 60,\n\tyellow: 120,\n\tgreen: 180,\n\tblue: 240,\n\tpurple: 300\n}\n\n/**\n * Parse color from the string passed\n *\n * @return {Object} A space indicator `space`, an array `values` and `alpha`\n */\nfunction parse(cstr) {\n\tvar m, parts = [], alpha = 1, space\n\n\tif (typeof cstr === 'string') {\n\t\tcstr = cstr.toLowerCase();\n\n\t\t//keyword\n\t\tif (names[cstr]) {\n\t\t\tparts = names[cstr].slice()\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//reserved words\n\t\telse if (cstr === 'transparent') {\n\t\t\talpha = 0\n\t\t\tspace = 'rgb'\n\t\t\tparts = [0, 0, 0]\n\t\t}\n\n\t\t//hex\n\t\telse if (/^#[A-Fa-f0-9]+$/.test(cstr)) {\n\t\t\tvar base = cstr.slice(1)\n\t\t\tvar size = base.length\n\t\t\tvar isShort = size <= 4\n\t\t\talpha = 1\n\n\t\t\tif (isShort) {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[0], 16),\n\t\t\t\t\tparseInt(base[1] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[2], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 4) {\n\t\t\t\t\talpha = parseInt(base[3] + base[3], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[3], 16),\n\t\t\t\t\tparseInt(base[4] + base[5], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 8) {\n\t\t\t\t\talpha = parseInt(base[6] + base[7], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!parts[0]) parts[0] = 0\n\t\t\tif (!parts[1]) parts[1] = 0\n\t\t\tif (!parts[2]) parts[2] = 0\n\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//color space\n\t\telse if (m = /^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(cstr)) {\n\t\t\tvar name = m[1]\n\t\t\tvar isRGB = name === 'rgb'\n\t\t\tvar base = name.replace(/a$/, '')\n\t\t\tspace = base\n\t\t\tvar size = base === 'cmyk' ? 4 : base === 'gray' ? 1 : 3\n\t\t\tparts = m[2].trim()\n\t\t\t\t.split(/\\s*[,\\/]\\s*|\\s+/)\n\t\t\t\t.map(function (x, i) {\n\t\t\t\t\t//<percentage>\n\t\t\t\t\tif (/%$/.test(x)) {\n\t\t\t\t\t\t//alpha\n\t\t\t\t\t\tif (i === size) return parseFloat(x) / 100\n\t\t\t\t\t\t//rgb\n\t\t\t\t\t\tif (base === 'rgb') return parseFloat(x) * 255 / 100\n\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t}\n\t\t\t\t\t//hue\n\t\t\t\t\telse if (base[i] === 'h') {\n\t\t\t\t\t\t//<deg>\n\t\t\t\t\t\tif (/deg$/.test(x)) {\n\t\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//<base-hue>\n\t\t\t\t\t\telse if (baseHues[x] !== undefined) {\n\t\t\t\t\t\t\treturn baseHues[x]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t})\n\n\t\t\tif (name === base) parts.push(1)\n\t\t\talpha = (isRGB) ? 1 : (parts[size] === undefined) ? 1 : parts[size]\n\t\t\tparts = parts.slice(0, size)\n\t\t}\n\n\t\t//named channels case\n\t\telse if (cstr.length > 10 && /[0-9](?:\\s|\\/)/.test(cstr)) {\n\t\t\tparts = cstr.match(/([0-9]+)/g).map(function (value) {\n\t\t\t\treturn parseFloat(value)\n\t\t\t})\n\n\t\t\tspace = cstr.match(/([a-z])/ig).join('').toLowerCase()\n\t\t}\n\t}\n\n\t//numeric case\n\telse if (!isNaN(cstr)) {\n\t\tspace = 'rgb'\n\t\tparts = [cstr >>> 16, (cstr & 0x00ff00) >>> 8, cstr & 0x0000ff]\n\t}\n\n\t//array-like\n\telse if (Array.isArray(cstr) || cstr.length) {\n\t\tparts = [cstr[0], cstr[1], cstr[2]]\n\t\tspace = 'rgb'\n\t\talpha = cstr.length === 4 ? cstr[3] : 1\n\t}\n\n\t//object case - detects css cases of rgb and hsl\n\telse if (cstr instanceof Object) {\n\t\tif (cstr.r != null || cstr.red != null || cstr.R != null) {\n\t\t\tspace = 'rgb'\n\t\t\tparts = [\n\t\t\t\tcstr.r || cstr.red || cstr.R || 0,\n\t\t\t\tcstr.g || cstr.green || cstr.G || 0,\n\t\t\t\tcstr.b || cstr.blue || cstr.B || 0\n\t\t\t]\n\t\t}\n\t\telse {\n\t\t\tspace = 'hsl'\n\t\t\tparts = [\n\t\t\t\tcstr.h || cstr.hue || cstr.H || 0,\n\t\t\t\tcstr.s || cstr.saturation || cstr.S || 0,\n\t\t\t\tcstr.l || cstr.lightness || cstr.L || cstr.b || cstr.brightness\n\t\t\t]\n\t\t}\n\n\t\talpha = cstr.a || cstr.alpha || cstr.opacity || 1\n\n\t\tif (cstr.opacity != null) alpha /= 100\n\t}\n\n\treturn {\n\t\tspace: space,\n\t\tvalues: parts,\n\t\talpha: alpha\n\t}\n}\n","/** @module color-rgba */\r\n\r\n'use strict'\r\n\r\nvar parse = require('color-parse')\r\n\r\nmodule.exports = function rgba (color) {\r\n\t// template literals\r\n\tif (Array.isArray(color) && color.raw) color = String.raw.apply(null, arguments)\r\n\r\n\tvar values, i, l\r\n\r\n\t//attempt to parse non-array arguments\r\n\tvar parsed = parse(color)\r\n\r\n\tif (!parsed.space) return []\r\n\r\n\tvar min = [0,0,0], max = parsed.space[0] === 'h' ? [360,100,100] : [255,255,255]\r\n\r\n\tvalues = Array(3)\r\n\tvalues[0] = Math.min(Math.max(parsed.values[0], min[0]), max[0])\r\n\tvalues[1] = Math.min(Math.max(parsed.values[1], min[1]), max[1])\r\n\tvalues[2] = Math.min(Math.max(parsed.values[2], min[2]), max[2])\r\n\r\n\tif (parsed.space[0] === 'h') values = hsl2rgb(values)\r\n\r\n\tvalues.push(Math.min(Math.max(parsed.alpha, 0), 1))\r\n\r\n\treturn values\r\n}\r\n\r\n\r\n// excerpt from color-space/hsl\r\nfunction hsl2rgb(hsl) {\r\n\tvar h = hsl[0]/360, s = hsl[1]/100, l = hsl[2]/100, t1, t2, t3, rgb, val, i=0;\r\n\r\n\tif (s === 0) return val = l * 255, [val, val, val];\r\n\r\n\tt2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n\tt1 = 2 * l - t2;\r\n\r\n\trgb = [0, 0, 0];\r\n\tfor (;i<3;) {\r\n\t\tt3 = h + 1 / 3 * - (i - 1);\r\n\t\tt3 < 0 ? t3++ : t3 > 1 && t3--;\r\n\t\tval = 6 * t3 < 1 ? t1 + (t2 - t1) * 6 * t3 :\r\n\t\t2 * t3 < 1 ? t2 :\r\n\t\t3 * t3 < 2 ? t1 + (t2 - t1) * (2 / 3 - t3) * 6 :\r\n\t\tt1;\r\n\t\trgb[i++] = val * 255;\r\n\t}\r\n\r\n\treturn rgb;\r\n}\r\n","import { RGB } from 'color-convert/conversions';\nimport { hex } from 'wcag-contrast';\n\nimport { colorRgba } from './color-rgba';\nimport { rgbaConvert } from './rgba-convert';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { ColorContrast, createContrastColorPair } from '../../components/badge/contrast';\nimport { a11yHint } from '../../utils/a11y.tipps';\nimport { WatchOptions, watchValidator } from '../../utils/prop.validators';\nimport { Stringified } from '../common';\n\n/* types */\ntype CharacteristicColors = {\n\tprimary: string;\n\tsecondary: string;\n\tneutral: string;\n};\n\n/**\n * Defines the backgroundColor and foregroundColor.\n */\nexport type ColorPair = {\n\tbackgroundColor: string;\n\tforegroundColor: Stringified<CharacteristicColors>;\n};\n\n/**\n * @deprecated\n */\ntype DeprecatedColorPair = {\n\tbackgroundColor: string;\n\t/**\n\t * @deprecated Please use `foregroundColor` instead of `color`.\n\t */\n\tcolor: string;\n};\n\nexport type PropColor = ColorPair | DeprecatedColorPair;\n\ntype typeOfColorType = 'string' | 'ColorPair' | 'DeprecatedColorPair' | null;\n\nconst HEX_REGEX = /^#((\\d|[a-f]){8}|(\\d|[a-f]){6}|(\\d|[a-f]){3,4})$/i;\nfunction isHexString(value: string): boolean {\n\treturn HEX_REGEX.test(value);\n}\n/* checks if the string is valid JSON and if the resulting object is a valid ColorPair or DeprecatedColorPair and returns it, or null if invalid. */\nfunction isColorObjectString(value: string): { type: typeOfColorType; value: PropColor | null } {\n\tif (value.startsWith('{')) {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(value) as unknown;\n\t\t\tif (isValidColorPair(parsed as ColorPair)) return { type: 'ColorPair', value: parsed as ColorPair };\n\t\t\tif (isValidDeprecatedColorPair(parsed as DeprecatedColorPair)) return { type: 'DeprecatedColorPair', value: parsed as DeprecatedColorPair };\n\t\t} catch (error) {\n\t\t\treturn { type: null, value: null };\n\t\t}\n\t}\n\treturn { type: null, value: null };\n}\n\nfunction typeOfColor(value?: unknown): { type: typeOfColorType; valid: boolean; value: PropColor | string } {\n\tif (value) {\n\t\tif (typeof value === 'string') {\n\t\t\tif (isHexString(value)) return { type: 'string', valid: true, value: value };\n\t\t\telse {\n\t\t\t\tconst colorObject = isColorObjectString(value);\n\t\t\t\tif (colorObject.value) return { type: colorObject.type, valid: true, value: colorObject.value };\n\t\t\t}\n\t\t} else {\n\t\t\tconst asColorPair = value as ColorPair;\n\t\t\tif (isValidColorPair(asColorPair)) return { type: 'ColorPair', valid: true, value: asColorPair };\n\t\t\tconst asDeprecatedColorPair = value as DeprecatedColorPair;\n\t\t\tif (isValidDeprecatedColorPair(asDeprecatedColorPair)) return { type: 'DeprecatedColorPair', valid: true, value: asDeprecatedColorPair };\n\t\t}\n\t}\n\treturn { type: null, valid: false, value: '' };\n}\n\n/* validate different color options */\nfunction isValidColorPair(value: ColorPair): boolean {\n\treturn !!(\n\t\ttypeof value === 'object' &&\n\t\tvalue &&\n\t\ttypeof value.backgroundColor === 'string' &&\n\t\t(typeof value.foregroundColor === 'string' ||\n\t\t\t(value.foregroundColor &&\n\t\t\t\ttypeof value.foregroundColor.primary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.secondary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.neutral === 'string'))\n\t);\n}\nfunction isValidDeprecatedColorPair(value: DeprecatedColorPair): boolean {\n\treturn typeof value === 'object' && value && typeof value.backgroundColor === 'string' && typeof value.color === 'string';\n}\n\nfunction validatorFunction(value?: Stringified<PropColor>): boolean {\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase null:\n\t\t\treturn false;\n\t\tcase 'string':\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair':\n\t\t\treturn valueType.valid;\n\t}\n}\n\n/* validator */\nexport const validateColor = (component: Generic.Element.Component, value?: Stringified<PropColor>, options?: WatchOptions): void => {\n\twatchValidator(component, '_color', validatorFunction, new Set(['rgb in hex', 'ColorPair']), value, options);\n};\n\nexport const handleColorChange = (value: unknown): ColorPair => {\n\tlet colorContrast: ColorContrast<string>;\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase 'string':\n\t\t\tcolorContrast = createContrastColorPair(valueType.value as string);\n\t\t\tbreak;\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair': {\n\t\t\tconst asColorPair = valueType.value as ColorPair;\n\t\t\tconst asDeprecatedColorPair = valueType.value as DeprecatedColorPair;\n\t\t\tlet foreground = '';\n\t\t\tif (asDeprecatedColorPair.color) foreground = asDeprecatedColorPair.color;\n\t\t\telse {\n\t\t\t\tif (typeof asColorPair.foregroundColor === 'string') foreground = asColorPair.foregroundColor;\n\t\t\t\telse if (asColorPair.foregroundColor?.primary) foreground = asColorPair.foregroundColor.primary;\n\t\t\t}\n\t\t\tif (!foreground || typeof foreground !== 'string') foreground = '#fff';\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: asColorPair.backgroundColor,\n\t\t\t\tforeground,\n\t\t\t});\n\t\t\tbreak;\n\t\t}\n\t\tcase null:\n\t\t\tconsole.warn(`_color was empty or invalid (${JSON.stringify(value)})`);\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: '#000',\n\t\t\t\tforeground: '#000',\n\t\t\t});\n\t}\n\n\tif (colorContrast.contrast < 7) {\n\t\ta11yHint(\n\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is to low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`\n\t\t);\n\t}\n\treturn {\n\t\tbackgroundColor: colorContrast.background,\n\t\tforegroundColor: colorContrast.foreground,\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{a as t,w as s,e as i,d as e}from"./prop.validators-b9732831.js";import{I as a}from"./controller-icon-1add4713.js";const h=(e,o)=>{t(e,"_hasCounter",o)};class o extends a{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){s(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){h(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{min:0})}validatePattern(t){e(this.component,"_pattern",t)}validatePlaceholder(t){e(this.component,"_placeholder",t)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e)}validateSize(t){i(this.component,"_size",t,{min:1})}validateValue(t){e(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{o as I,h as v};
4
+ import{a as t,w as s,e as i,d as e}from"./prop.validators-5fa8ad17.js";import{I as a}from"./controller-icon-1b496c1d.js";const h=(e,o)=>{t(e,"_hasCounter",o)};class o extends a{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){s(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){h(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{min:0})}validatePattern(t){e(this.component,"_pattern",t)}validatePlaceholder(t){e(this.component,"_placeholder",t)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e)}validateSize(t){i(this.component,"_size",t,{min:1})}validateValue(t){e(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{o as I,h as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{v as s,I as t}from"./controller-dfcfc09a.js";import{v as e}from"./suggestions-aa86adad.js";import{w as a}from"./prop.validators-b9732831.js";class i extends t{constructor(t,s,o){super(t,s,o),this.component=t}validateList(){}validateSuggestions(t){e(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions||this.component._list)}}class r extends i{constructor(t,s,o){super(t,s,o),this.hasError=!1,this.component=t}validateType(t){a(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(t){s(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{i as I,r as a};
4
+ import{v as s,I as t}from"./controller-2693d568.js";import{v as e}from"./suggestions-482f16b1.js";import{w as i}from"./prop.validators-5fa8ad17.js";class a extends t{constructor(t,s,o){super(t,s,o),this.component=t}validateList(){}validateSuggestions(t){e(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions||this.component._list)}}class r extends a{constructor(t,s,o){super(t,s,o),this.hasError=!1,this.component=t}validateType(t){i(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(t){s(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{a 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-f6c45c86.js";import{d as o}from"./dev.utils-0559a5fe.js";import{f as t,K as n}from"./prop.validators-b9732831.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-32a6b338.js";import{d as o}from"./dev.utils-7c5ec760.js";import{f as t,K as n}from"./prop.validators-5fa8ad17.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};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{c as t,a as e,w as s,m as i,s as a}from"./prop.validators-b9732831.js";import{h as o,c as r}from"./label-4225dcc0.js";import{a as n}from"./a11y.tipps-f6c45c86.js";import{S as l}from"./reuse-d79ab469.js";import{I as h}from"./controller-2ae84856.js";const c=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===o(t.label,3)&&!1===r(t.label)&&n(`Ein abweichendes Aria-Label (${t.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===c(t)));if("number"==typeof t.label)return!0}return!1},f=(e,o,i={})=>{t(e,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),o,void 0,i)},u=(e,o,i={})=>{t(e,"_options",c,o,void 0,i)},p=(t,o)=>{e(t,"_required",o)},d=(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)?d(t,e.options,a):t.set(a,e))}))};class m extends h{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){p(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class b extends m{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.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),d(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"})}validateOptions(t){f(this.component,t,{hooks:{beforePatch:this.beforePatchOptions}})}validateValue(t){t=i(t),t=Array.isArray(t)?t[0]:t,a(this.component,"_value",t,{beforePatch:this.beforePatchOptions}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(l)}))}},this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options||this.component._list),this.validateValue(this.component._value)}}export{m as I,b as a,d as f,u as v};
4
+ import{c as t,a as e,w as s,m as i,s as a}from"./prop.validators-5fa8ad17.js";import{h as o,c as r}from"./label-0eaa3401.js";import{a as n}from"./a11y.tipps-32a6b338.js";import{S as l}from"./reuse-d79ab469.js";import{I as h}from"./controller-cc137d03.js";const f=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===o(t.label,3)&&!1===r(t.label)&&n(`Ein abweichendes Aria-Label (${t.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===f(t)));if("number"==typeof t.label)return!0}return!1},c=(e,o,i={})=>{t(e,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),o,void 0,i)},u=(e,o,i={})=>{t(e,"_options",f,o,void 0,i)},p=(t,o)=>{e(t,"_required",o)},d=(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)?d(t,e.options,a):t.set(a,e))}))};class m extends h{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){p(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class b extends m{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.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),d(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"})}validateOptions(t){c(this.component,t,{hooks:{beforePatch:this.beforePatchOptions}})}validateValue(t){t=i(t),t=Array.isArray(t)?t[0]:t,a(this.component,"_value",t,{beforePatch:this.beforePatchOptions}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(l)}))}},this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options||this.component._list),this.validateValue(this.component._value)}}export{m as I,b as a,d as f,u as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{a as t,d as i,s,o as e,p as h}from"./prop.validators-5fa8ad17.js";import{v as a}from"./hide-label-6d0b4e87.js";import{a as o}from"./label-0eaa3401.js";import{g as r,a as n,d}from"./a11y.tipps-32a6b338.js";import{s as l,t as c}from"./events-fa760b68.js";import{v as u}from"./tab-index-5c4bb50c.js";import{A as f}from"./associated.controller-983c7497.js";const p=t=>{const e="string"==typeof t._error&&t._error.length>0&&!0===t._touched,o="string"==typeof t._hint&&t._hint.length>0,n=[];return!0===e&&n.push(`${t._id}-error`),!0===o&&n.push(`${t._id}-hint`),{hasError:e,hasHint:o,ariaDescribedBy:n}},v=(e,o)=>{t(e,"_adjustHeight",o)},b=(e,o,n)=>{t(e,"_hideError",o,n)},m=(e,o)=>{t(e,"_touched",o)};class y extends f{constructor(t,e,o){super(t,e,o),this.component=t}validateAlert(e){t(this.component,"_alert",e)}validateTouched(t){m(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class g extends y{constructor(t,e,o){super(t,e,o),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){v(this.component,t)}validateDisabled(e){t(this.component,"_disabled",e),!0===e&&r()}validateError(t){i(this.component,"_error",t)}validateHideError(t){b(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&n("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){a(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&n("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}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||d("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){o(this.component,t,{required:!0})}validateOn(t){"object"==typeof t&&s(this.component,"_on",t)}validateSmartButton(t){e(t,(()=>{try{t=h(t)}catch(t){}s(this.component,"_smartButton",t)}))}validateTabIndex(t){u(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.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),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,l(t),c("blur",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t){var e;const o=t.target.value;c("change",this.host,o),this.setFormAssociatedValue(o),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,o),this.valueChangeListeners.forEach((t=>t(o)))}onClick(t){var e;l(t),c("click",this.host),"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,l(t),c("focus",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}setValue(t,e){var o;this.setFormAssociatedValue(e),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(t,e)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{g as I,p as g};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getRenderStates","state","hasError","_error","length","_touched","hasHint","_hint","ariaDescribedBy","push","_id","validateAdjustHeight","component","value","watchBoolean","validateHideError","options","validateTouched","ControlledInputController","AssociatedInputController","constructor","name","host","super","this","validateAlert","componentWillLoad","_alert","InputController","valueChangeListeners","onFacade","onBlur","bind","onChange","onClick","onFocus","validateAccessKey","watchString","validateDisabled","a11yHintDisabled","validateError","hooks","afterPatch","_hideError","a11yHint","validateHideLabel","_hideLabel","validateHint","validateId","setAttribute","formAssociated","minLength","devHint","validateLabel","validateLabelWithExpertSlot","required","validateOn","setState","validateSmartButton","objectObjectHandler","parseJson","e","validateTabIndex","_accessKey","_adjustHeight","_disabled","_label","_smartButton","_on","_tabIndex","event","stopPropagation","tryToDispatchKoliBriEvent","_a","target","setFormAssociatedValue","forEach","listener","setValue","addValueChangeListener"],"sources":["src/components/input/controller.ts","src/types/props/adjust-height.ts","src/types/props/hide-error.ts","src/types/props/touched.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts"],"sourcesContent":["import { TouchedPropType } from '../../types/props/touched';\n\n/**\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?: TouchedPropType;\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 type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\nexport type AdjustHeightPropType = boolean;\n\n/**\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: AdjustHeightPropType;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: AdjustHeightPropType): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean, WatchBooleanOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type HideErrorPropType = boolean;\n\n/**\n * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n */\nexport type PropHideError = {\n\thideError: HideErrorPropType;\n};\n\n/* validator */\nexport const validateHideError = (component: Generic.Element.Component, value?: HideErrorPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hideError', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\nexport type TouchedPropType = boolean;\n\n/**\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: TouchedPropType;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: TouchedPropType): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { validateTouched } from '../../types/props/touched';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { AssociatedInputController } from './associated.controller';\nimport { Props, Watches } from './types';\n\nexport class ControlledInputController extends AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\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 validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { InputTypeOnDefault } from '../../../types/input/types';\nimport { AdjustHeightPropType, validateAdjustHeight } from '../../../types/props/adjust-height';\nimport { HideErrorPropType, validateHideError } from '../../../types/props/hide-error';\nimport { validateHideLabel } from '../../../types/props/hide-label';\nimport { LabelWithExpertSlotPropType, validateLabelWithExpertSlot } from '../../../types/props/label';\nimport { a11yHint, a11yHintDisabled, devHint } from '../../../utils/a11y.tipps';\nimport { stopPropagation, tryToDispatchKoliBriEvent } from '../../../utils/events';\nimport { objectObjectHandler, parseJson, setState, watchBoolean, watchString } from '../../../utils/prop.validators';\nimport { validateTabIndex } from '../../../utils/validators/tab-index';\nimport { Props as ButtonProps } from '../../button/types';\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\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?: AdjustHeightPropType): 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 validateHideError(value?: HideErrorPropType): void {\n\t\tvalidateHideError(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideError) {\n\t\t\t\t\t\ta11yHint('Property hide-error for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideLabel) {\n\t\t\t\t\t\ta11yHint('Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\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\t\trequired: true,\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.validateHideError(this.component._hideError);\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.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\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('blur', this.host);\n\n\t\t// Callback\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\n\t\t// Event handling\n\t\ttryToDispatchKoliBriEvent('change', this.host, value);\n\n\t\t// Static form handling\n\t\tthis.setFormAssociatedValue(value);\n\n\t\t// Callback\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\n\t\t/**\n\t\t * TODO: Was ist das?\n\t\t */\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('click', this.host);\n\n\t\t// Callback\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\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('focus', this.host);\n\n\t\t// Callback\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":";;;8WASaA,EAAmBC,IAU/B,MAAMC,SAAkBD,EAAME,SAAW,UAAYF,EAAME,OAAOC,OAAS,GAAKH,EAAMI,WAAa,KACnG,MAAMC,SAAiBL,EAAMM,QAAU,UAAYN,EAAMM,MAAMH,OAAS,EAExE,MAAMI,EAA4B,GAClC,GAAIN,IAAa,KAAM,CACtBM,EAAgBC,KAAK,GAAGR,EAAMS,Y,CAE/B,GAAIJ,IAAY,KAAM,CACrBE,EAAgBC,KAAK,GAAGR,EAAMS,W,CAE/B,MAAO,CAAER,WAAUI,UAASE,kBAAiB,ECdvC,MAAMG,EAAuB,CAACC,EAAsCC,KAC1EC,EAAaF,EAAW,gBAAiBC,EAAM,ECDzC,MAAME,EAAoB,CAACH,EAAsCC,EAA2BG,KAClGF,EAAaF,EAAW,aAAcC,EAAOG,EAAQ,ECD/C,MAAMC,EAAkB,CAACL,EAAsCC,KACrEC,EAAaF,EAAW,WAAYC,EAAM,E,MCT9BK,UAAkCC,EAG9C,WAAAC,CAAmBR,EAA8CS,EAAcC,GAC9EC,MAAMX,EAAWS,EAAMC,GACvBE,KAAKZ,UAAYA,C,CAGX,aAAAa,CAAcZ,GACpBC,EAAaU,KAAKZ,UAAW,SAAUC,E,CAGjC,eAAAI,CAAgBJ,GACtBI,EAAgBO,KAAKZ,UAAWC,E,CAG1B,iBAAAa,GACNH,MAAMG,oBACNF,KAAKC,cAAcD,KAAKZ,UAAUe,QAClCH,KAAKP,gBAAgBO,KAAKZ,UAAUP,S,QCRzBuB,UAAwBV,EAKpC,WAAAE,CAAmBR,EAA8CS,EAAcC,GAC9EC,MAAMX,EAAWS,EAAMC,GAHPE,KAAAK,qBAA8C,GAoM/CL,KAAAM,SAAW,CAC1BC,OAAQP,KAAKO,OAAOC,KAAKR,MACzBS,SAAUT,KAAKS,SAASD,KAAKR,MAC7BU,QAASV,KAAKU,QAAQF,KAAKR,MAC3BW,QAASX,KAAKW,QAAQH,KAAKR,OApM3BA,KAAKZ,UAAYA,C,CAGX,iBAAAwB,CAAkBvB,GACxBwB,EAAYb,KAAKZ,UAAW,aAAcC,E,CAGpC,oBAAAF,CAAqBE,GAC3BF,EAAqBa,KAAKZ,UAAWC,E,CAG/B,gBAAAyB,CAAiBzB,GACvBC,EAAaU,KAAKZ,UAAW,YAAaC,GAC1C,GAAIA,IAAU,KAAM,CACnB0B,G,EAIK,aAAAC,CAAc3B,GACpBwB,EAAYb,KAAKZ,UAAW,SAAUC,E,CAGhC,iBAAAE,CAAkBF,GACxBE,EAAkBS,KAAKZ,UAAWC,EAAO,CACxC4B,MAAO,CACNC,WAAY,KACX,GAAIlB,KAAKZ,UAAUX,MAAM0C,WAAY,CACpCC,EAAS,2G,MAOP,iBAAAC,CAAkBhC,GACxBgC,EAAkBrB,KAAKZ,UAAWC,EAAO,CACxC4B,MAAO,CACNC,WAAY,KACX,GAAIlB,KAAKZ,UAAUX,MAAM6C,WAAY,CACpCF,EAAS,6H,MAOP,YAAAG,CAAalC,GACnBwB,EAAYb,KAAKZ,UAAW,QAASC,E,CAG/B,UAAAmC,CAAWnC,GACjBwB,EAAYb,KAAKZ,UAAW,MAAOC,EAAO,CACzC4B,MAAO,CACNC,WAAY,KACXlB,KAAKyB,aAAa,KAAMzB,KAAK0B,eAAgB1B,KAAKZ,UAAUX,MAAMS,IAAc,GAGlFyC,UAAW,IAEZ,GAAItC,IAAU,WAAaA,IAAU,YAAa,CACjDuC,EAAQ,yH,EAIH,aAAAC,CAAcxC,GACpByC,EAA4B9B,KAAKZ,UAAWC,EAAO,CAClD0C,SAAU,M,CAIL,UAAAC,CAAW3C,GACjB,UAAWA,IAAU,SAAU,CAC9B4C,EAASjC,KAAKZ,UAAW,MAAOC,E,EAI3B,mBAAA6C,CAAoB7C,GAC1B8C,EAAoB9C,GAAO,KAC1B,IACCA,EAAQ+C,EAAuB/C,E,CAE9B,MAAOgD,G,CAGTJ,EAASjC,KAAKZ,UAAW,eAAgBC,EAAM,G,CAI1C,gBAAAiD,CAAiBjD,GACvBiD,EAAiBtC,KAAKZ,UAAWC,E,CAG3B,iBAAAa,GACNH,MAAMG,oBACNF,KAAKY,kBAAkBZ,KAAKZ,UAAUmD,YACtCvC,KAAKb,qBAAqBa,KAAKZ,UAAUoD,eACzCxC,KAAKgB,cAAchB,KAAKZ,UAAUT,QAClCqB,KAAKc,iBAAiBd,KAAKZ,UAAUqD,WACrCzC,KAAKT,kBAAkBS,KAAKZ,UAAU+B,YACtCnB,KAAKqB,kBAAkBrB,KAAKZ,UAAUkC,YACtCtB,KAAKuB,aAAavB,KAAKZ,UAAUL,OACjCiB,KAAKwB,WAAWxB,KAAKZ,UAAUF,KAC/Bc,KAAK6B,cAAc7B,KAAKZ,UAAUsD,QAClC1C,KAAKkC,oBAAoBlC,KAAKZ,UAAUuD,cACxC3C,KAAKgC,WAAWhC,KAAKZ,UAAUwD,KAC/B5C,KAAKsC,iBAAiBtC,KAAKZ,UAAUyD,U,CAG5B,MAAAtC,CAAOuC,G,MAChB9C,KAAKZ,UAAUe,OAAS,KACxBH,KAAKZ,UAAUP,SAAW,KAG1BkE,EAAgBD,GAChBE,EAA0B,OAAQhD,KAAKF,MAGvC,WAAWmD,EAAAjD,KAAKZ,UAAUwD,OAAG,MAAAK,SAAA,SAAAA,EAAE1C,UAAW,WAAY,CACrDP,KAAKZ,UAAUwD,IAAIrC,OAAOuC,E,EAIlB,QAAArC,CAASqC,G,MAClB,MAAMzD,EAASyD,EAAMI,OAA4B7D,MAGjD2D,EAA0B,SAAUhD,KAAKF,KAAMT,GAG/CW,KAAKmD,uBAAuB9D,GAG5B,WAAW4D,EAAAjD,KAAKZ,UAAUwD,OAAG,MAAAK,SAAA,SAAAA,EAAExC,YAAa,WAAY,CAQvDT,KAAKZ,UAAUwD,IAAInC,SAASqC,EAAOzD,E,CAMpCW,KAAKK,qBAAqB+C,SAASC,GAAaA,EAAShE,I,CAGhD,OAAAqB,CAAQoC,G,MAEjBC,EAAgBD,GAChBE,EAA0B,QAAShD,KAAKF,MAGxC,WAAWmD,EAAAjD,KAAKZ,UAAUwD,OAAG,MAAAK,SAAA,SAAAA,EAAEvC,WAAY,WAAY,CACtDV,KAAKZ,UAAUwD,IAAIlC,QAAQoC,E,EAInB,OAAAnC,CAAQmC,G,MACjB9C,KAAKZ,UAAUe,OAAS,KAGxB4C,EAAgBD,GAChBE,EAA0B,QAAShD,KAAKF,MAGxC,WAAWmD,EAAAjD,KAAKZ,UAAUwD,OAAG,MAAAK,SAAA,SAAAA,EAAEtC,WAAY,WAAY,CACtDX,KAAKZ,UAAUwD,IAAIjC,QAAQmC,E,EAItB,QAAAQ,CAASR,EAAczD,G,MAC7BW,KAAKmD,uBAAuB9D,GAC5B,WAAW4D,EAAAjD,KAAKZ,UAAUwD,OAAG,MAAAK,SAAA,SAAAA,EAAExC,YAAa,WAAY,CACvDT,KAAKZ,UAAUwD,IAAInC,SAASqC,EAAOzD,E,EAI9B,sBAAAkE,CAAuBF,GAC7BrD,KAAKK,qBAAqBpB,KAAKoE,E"}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{i as o}from"./icons-4a6e7e5d.js";import{o as s,p as t,w as i}from"./prop.validators-5fa8ad17.js";import{i as r}from"./reuse-d79ab469.js";import{I as e}from"./controller-cc137d03.js";const a=(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("_icons",e))};class c extends e{constructor(o,t,e){super(o,t,e),this.component=o}validateIcon(o){this.validateIcons(o)}validateIcons(e){s(e,(()=>{try{e=t(e)}catch(o){}i(this.component,"_icons",(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:a},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons||this.component._icon)}}export{c as I};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{w as a,d as o}from"./prop.validators-b9732831.js";const r=(o,r)=>{a(o,"_variant",(a=>"primary"===a||"secondary"===a||"normal"===a||"danger"===a||"ghost"===a||"custom"===a),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),r,{defaultValue:"normal"})},s=(a,r)=>{o(a,"_customClass",r,{defaultValue:void 0})};export{r as a,s as v};
4
+ import{w as a,d as o}from"./prop.validators-5fa8ad17.js";const r=(o,r)=>{a(o,"_variant",(a=>"primary"===a||"secondary"===a||"normal"===a||"danger"===a||"ghost"===a||"custom"===a),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),r,{defaultValue:"normal"})},s=(a,r)=>{o(a,"_customClass",r,{defaultValue:void 0})};export{r as a,s as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- const n=document.getElementById("details"),t=document.getElementById("button");n._on={onToggle:(e,n)=>{t._label="👆Details "+(n?"schließen":"öffnen")}},t._on={onClick:()=>{n._open=!n._open}};const e={};export default e;
4
+ const n=document.getElementById("details"),t=document.getElementById("button");n._on={onToggle:(e,n)=>{t._label="👆Details "+(n?"schließen":"öffnen")}},t._on={onClick:()=>{n._open=!n._open}};const e={};export{e as default};
@@ -1 +1 @@
1
- {"version":3,"names":["detailsElement","document","getElementById","buttonElement","_on","onToggle","_event","open","_label","onClick","_open","detailsSyncedOpenState"],"sources":["src/dev/details-synced-open-state.ts"],"sourcesContent":["const detailsElement = document.getElementById('details') as HTMLKolDetailsElement;\nconst buttonElement = document.getElementById('button') as HTMLKolButtonElement;\n\ndetailsElement._on = {\n\tonToggle: (_event, open: boolean) => {\n\t\tbuttonElement._label = `👆Details ${open ? 'schließen' : 'öffnen'}`;\n\t},\n};\n\nbuttonElement._on = {\n\tonClick: () => {\n\t\tdetailsElement._open = !detailsElement._open;\n\t},\n};\n\nexport default {};\n"],"mappings":";;;AAAA,MAAMA,EAAiBC,SAASC,eAAe,WAC/C,MAAMC,EAAgBF,SAASC,eAAe,UAE9CF,EAAeI,IAAM,CACpBC,SAAU,CAACC,EAAQC,KAClBJ,EAAcK,OAAS,aAAaD,EAAO,YAAc,UAAU,GAIrEJ,EAAcC,IAAM,CACnBK,QAAS,KACRT,EAAeU,OAASV,EAAeU,KAAK,GAI9C,MAAAC,EAAe,kB"}
1
+ {"version":3,"names":["detailsElement","document","getElementById","buttonElement","_on","onToggle","_event","open","_label","onClick","_open","detailsSyncedOpenState"],"sources":["src/dev/details-synced-open-state.ts"],"sourcesContent":["const detailsElement = document.getElementById('details') as HTMLKolDetailsElement;\nconst buttonElement = document.getElementById('button') as HTMLKolButtonElement;\n\ndetailsElement._on = {\n\tonToggle: (_event, open: boolean) => {\n\t\tbuttonElement._label = `👆Details ${open ? 'schließen' : 'öffnen'}`;\n\t},\n};\n\nbuttonElement._on = {\n\tonClick: () => {\n\t\tdetailsElement._open = !detailsElement._open;\n\t},\n};\n\nexport default {};\n"],"mappings":";;;AAAA,MAAMA,EAAiBC,SAASC,eAAe,WAC/C,MAAMC,EAAgBF,SAASC,eAAe,UAE9CF,EAAeI,IAAM,CACpBC,SAAU,CAACC,EAAQC,KAClBJ,EAAcK,OAAS,aAAaD,EAAO,YAAc,UAAU,GAIrEJ,EAAcC,IAAM,CACnBK,QAAS,KACRT,EAAeU,OAASV,EAAeU,KAAK,GAI9C,MAAAC,EAAe,U"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{p as e}from"./reuse-d79ab469.js";class t{constructor(){this.lockedElements=new Map,this.modalStack=new Map}lockElement(e){const t=e.getAttribute("tabindex");(e instanceof HTMLAnchorElement||e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement||"string"==typeof t||void 0!==e.dataset.kolModal)&&("string"==typeof t?this.lockedElements.set(e,{tabIndex:t}):this.lockedElements.set(e,{}),e.setAttribute("tabindex","-1"),e.setAttribute("aria-hidden","true"),e.style.userSelect="none")}unlockElement(e,t){"string"==typeof e.tabIndex?t.setAttribute("tabindex",e.tabIndex):t.removeAttribute("tabindex"),t.removeAttribute("aria-hidden"),t.style.userSelect="unset",this.lockedElements.delete(t)}unlockLockedElements(e){e.forEach(this.unlockElement.bind(this))}lockFocus(e,t){if(e!==t&&(e instanceof HTMLElement||e instanceof ShadowRoot)){e instanceof HTMLElement&&(this.lockElement(e),this.lockFocus(e.shadowRoot,t));for(let o=0;o<e.children.length;o++)this.lockFocus(e.children[o],t)}}renderModalIfExists(e){if(e instanceof HTMLElement){this.lockedElements.has(e)&&this.unlockElement(this.lockedElements.get(e),e);const t=setTimeout((()=>{clearTimeout(t),e.focus()}),500)}if(this.unlockLockedElements(this.lockedElements),this.modalStack.size>0){const e=Array.from(this.modalStack.keys()),t=e[e.length-1];this.modalStack.forEach(((e,o)=>{o.style.display=t===o?"inline":"none"})),l().body.style.maxHeight="100vh",l().body.style.overflow="hidden",this.lockFocus(l().body,t)}else l().body.style.maxHeight="unset",l().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide."):(this.modalStack.set(e,{activeElement:t}),this.renderModalIfExists())}closeModal(e){var t;if(e instanceof HTMLElement==!1)m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide.");else{const o=null===(t=this.modalStack.get(e))||void 0===t?void 0:t.activeElement;this.modalStack.delete(e),this.renderModalIfExists(o)}}}let n=null,i=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?i=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},s=()=>n||"undefined"==typeof window?null:window,l=()=>i||void 0===s().document?null:s().document;let a=null,r=null,c=null,d=null;const u=()=>!0===r,f=()=>!0===c,h=()=>!0===d;class m{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${m.shield.label} | ${e}`:m.shield.label}static getShield(e){return[m.handleClassifier(null==e?void 0:e.classifier),`${m.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...m.getShield(t),...m.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...m.getShield(t),...m.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...m.getShield(t),...m.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...m.getShield(t),...m.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...m.getShield(t),...m.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...m.getShield(t),...m.mapToArray(e))}}m.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const v=()=>{if(null===r&&null===c&&null===d){const e=l().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(a=e.getAttribute("content"),"string"==typeof a&&(r=a.includes("dev-mode=true"),c=a.includes("experimental-mode=true"),d=a.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")},p=()=>{let e=s().KoliBri;return void 0===e&&(e={},Object.defineProperty(s(),"KoliBri",{value:e,writable:!1})),e},b=()=>{if(void 0===p().Modal){const e=new t;Object.defineProperty(p(),"Modal",{get:function(){return e}}),v(),m.debug("\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n\t| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n\t| |\\ \\ | '-' | | | | | | '--' / | | | |\n\t`--' `--´ `---´ `--' `--' `------´ `--' `--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.9\n\t\t",{forceLog:!0})}else console.warn("You can only initialize KoliBri once.")},M=()=>{!0!==p().adviceShown&&(Object.defineProperty(p(),"adviceShown",{get:function(){return!0}}),m.debug("\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"))};let g=()=>Math.floor(16777215*Math.random()).toString(16);"test"===e&&(g=()=>"nonce");export{m as L,l as a,s as b,o as c,f as d,u as e,h as f,p as g,b as i,g as n,M as r};
4
+ import{p as e}from"./reuse-d79ab469.js";class t{constructor(){this.lockedElements=new Map,this.modalStack=new Map}lockElement(e){const t=e.getAttribute("tabindex");(e instanceof HTMLAnchorElement||e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement||"string"==typeof t||void 0!==e.dataset.kolModal)&&("string"==typeof t?this.lockedElements.set(e,{tabIndex:t}):this.lockedElements.set(e,{}),e.setAttribute("tabindex","-1"),e.setAttribute("aria-hidden","true"),e.style.userSelect="none")}unlockElement(e,t){"string"==typeof e.tabIndex?t.setAttribute("tabindex",e.tabIndex):t.removeAttribute("tabindex"),t.removeAttribute("aria-hidden"),t.style.userSelect="unset",this.lockedElements.delete(t)}unlockLockedElements(e){e.forEach(this.unlockElement.bind(this))}lockFocus(e,t){if(e!==t&&(e instanceof HTMLElement||e instanceof ShadowRoot)){e instanceof HTMLElement&&(this.lockElement(e),this.lockFocus(e.shadowRoot,t));for(let o=0;o<e.children.length;o++)this.lockFocus(e.children[o],t)}}renderModalIfExists(e){if(e instanceof HTMLElement){this.lockedElements.has(e)&&this.unlockElement(this.lockedElements.get(e),e);const t=setTimeout((()=>{clearTimeout(t),e.focus()}),500)}if(this.unlockLockedElements(this.lockedElements),this.modalStack.size>0){const e=Array.from(this.modalStack.keys()),t=e[e.length-1];this.modalStack.forEach(((e,o)=>{o.style.display=t===o?"inline":"none"})),l().body.style.maxHeight="100vh",l().body.style.overflow="hidden",this.lockFocus(l().body,t)}else l().body.style.maxHeight="unset",l().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide."):(this.modalStack.set(e,{activeElement:t}),this.renderModalIfExists())}closeModal(e){var t;if(e instanceof HTMLElement==!1)m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide.");else{const o=null===(t=this.modalStack.get(e))||void 0===t?void 0:t.activeElement;this.modalStack.delete(e),this.renderModalIfExists(o)}}}let n=null,i=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?i=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},s=()=>n||"undefined"==typeof window?null:window,l=()=>i||void 0===s().document?null:s().document;let a=null,r=null,c=null,d=null;const u=()=>!0===r,f=()=>!0===c,h=()=>!0===d;class m{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${m.shield.label} | ${e}`:m.shield.label}static getShield(e){return[m.handleClassifier(null==e?void 0:e.classifier),`${m.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...m.getShield(t),...m.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...m.getShield(t),...m.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...m.getShield(t),...m.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...m.getShield(t),...m.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...m.getShield(t),...m.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...m.getShield(t),...m.mapToArray(e))}}m.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const v=()=>{if(null===r&&null===c&&null===d){const e=l().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(a=e.getAttribute("content"),"string"==typeof a&&(r=a.includes("dev-mode=true"),c=a.includes("experimental-mode=true"),d=a.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")},p=()=>{let e=s().KoliBri;return void 0===e&&(e={},Object.defineProperty(s(),"KoliBri",{value:e,writable:!1})),e},b=()=>{if(void 0===p().Modal){const e=new t;Object.defineProperty(p(),"Modal",{get:function(){return e}}),v(),m.debug("\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n\t| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n\t| |\\ \\ | '-' | | | | | | '--' / | | | |\n\t`--' `--´ `---´ `--' `--' `------´ `--' `--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.10-rc.0\n\t\t",{forceLog:!0})}else console.warn("You can only initialize KoliBri once.")},M=()=>{!0!==p().adviceShown&&(Object.defineProperty(p(),"adviceShown",{get:function(){return!0}}),m.debug("\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"))};let g=()=>Math.floor(16777215*Math.random()).toString(16);"test"===e&&(g=()=>"nonce");export{m as L,l as a,s as b,o as c,f as d,u as e,h as f,p as g,b as i,g as n,M as r};
@@ -1 +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","WINDOW","DOCUMENT","configKoliBri","window","Window","document","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","mapToArray","msg","isArray","handleClassifier","classifier","shield","label","getShield","options","overwriteStyle","debug","forceLog","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","getKoliBri","kolibri","KoliBri","Object","defineProperty","writable","initKoliBri","Modal","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","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 { ModalService } from '../components/modal/service';\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\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport const initKoliBri = (): void => {\n\tif (getKoliBri().Modal === undefined) {\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(getKoliBri(), 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\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 | 1.7.9\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 { getKoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), '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
+ {"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","WINDOW","DOCUMENT","configKoliBri","window","Window","document","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","mapToArray","msg","isArray","handleClassifier","classifier","shield","label","getShield","options","overwriteStyle","debug","forceLog","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","getKoliBri","kolibri","KoliBri","Object","defineProperty","writable","initKoliBri","Modal","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","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 { ModalService } from '../components/modal/service';\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\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport const initKoliBri = (): void => {\n\tif (getKoliBri().Modal === undefined) {\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(getKoliBri(), 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\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 | 1.7.10-rc.0\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 { getKoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), '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,a as e,L as a,d as r,f as i,g as l}from"./dev.utils-0559a5fe.js";import{n,q as p,k as c,t as f,u as d,p as L,v as m}from"./prop.validators-b9732831.js";import"./reuse-d79ab469.js";import"./index-24073a5e.js";import"./a11y.tipps-f6c45c86.js";function u(t,e){try{Object.defineProperty(l(),t,{get:function(){return e}})}catch(e){a.debug(`KoliBri property ${t} is already bind.`)}}const v=(t,e)=>a.debug(`${t} ${e?"":"not "}activated`),h=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",d),u("utils",(function(){return n})),u("parseJson",L),u("stringifyJson",m);const t=e().body,a=e().createElement("svg");if(a.setAttribute("aria-label","KoliBri-DevTools"),a.setAttribute("xmlns","http://www.w3.org/2000/svg"),a.setAttribute("role","toolbar"),a.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),a.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(a),v("Development mode",o()),v("Experimental mode",r()),v("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,a as e,L as a,d as r,f as i,g as l}from"./dev.utils-7c5ec760.js";import{n,q as p,k as c,t as f,u as d,p as L,v as m}from"./prop.validators-5fa8ad17.js";import"./reuse-d79ab469.js";import"./index-c88c7ecf.js";import"./a11y.tipps-32a6b338.js";function u(t,e){try{Object.defineProperty(l(),t,{get:function(){return e}})}catch(e){a.debug(`KoliBri property ${t} is already bind.`)}}const v=(t,e)=>a.debug(`${t} ${e?"":"not "}activated`),h=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",d),u("utils",(function(){return n})),u("parseJson",L),u("stringifyJson",m);const t=e().body,a=e().createElement("svg");if(a.setAttribute("aria-label","KoliBri-DevTools"),a.setAttribute("xmlns","http://www.w3.org/2000/svg"),a.setAttribute("role","toolbar"),a.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),a.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(a),v("Development mode",o()),v("Experimental mode",r()),v("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};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ const t=Math.min,n=Math.max,e=Math.round,o=Math.floor,i=t=>({x:t,y:t}),r={left:"right",right:"left",bottom:"top",top:"bottom"},s={start:"end",end:"start"};function c(e,o,i){return n(e,t(o,i))}function l(t,e){return"function"==typeof t?t(e):t}function f(t){return t.split("-")[0]}function a(t){return t.split("-")[1]}function u(t){return"x"===t?"y":"x"}function d(t){return"y"===t?"height":"width"}function m(t){return["top","bottom"].includes(f(t))?"y":"x"}function y(t){return u(m(t))}function p(t,e,n){void 0===n&&(n=!1);const o=a(t),i=y(t),r=d(i);let l="x"===i?o===(n?"end":"start")?"right":"left":"start"===o?"bottom":"top";return e.reference[r]>e.floating[r]&&(l=v(l)),[l,v(l)]}function h(t){const e=v(t);return[g(t),e,g(e)]}function g(t){return t.replace(/start|end/g,(t=>s[t]))}function x(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 w(t,e,n,o){const i=a(t);let r=x(f(t),"start"===n,o);return i&&(r=r.map((t=>t+"-"+i)),e&&(r=r.concat(r.map(g)))),r}function v(t){return t.replace(/left|right|bottom|top/g,(t=>r[t]))}function b(t){return{top:0,right:0,bottom:0,left:0,...t}}function A(t){return"number"!=typeof t?b(t):{top:t,right:t,bottom:t,left:t}}function R(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}function k(t,e,n){let{reference:o,floating:i}=t;const r=m(e),l=y(e),c=d(l),s=f(e),u="y"===r,p=o.x+o.width/2-i.width/2,h=o.y+o.height/2-i.height/2,g=o[c]/2-i[c]/2;let x;switch(s){case"top":x={x:p,y:o.y-i.height};break;case"bottom":x={x:p,y:o.y+o.height};break;case"right":x={x:o.x+o.width,y:h};break;case"left":x={x:o.x-i.width,y:h};break;default:x={x:o.x,y:o.y}}switch(a(e)){case"start":x[l]-=g*(n&&u?-1:1);break;case"end":x[l]+=g*(n&&u?-1:1)}return x}const S=async(t,e,n)=>{const{placement:o="bottom",strategy:i="absolute",middleware:r=[],platform:l}=n,c=r.filter(Boolean),s=await(null==l.isRTL?void 0:l.isRTL(e));let a=await l.getElementRects({reference:t,floating:e,strategy:i}),{x:f,y:u}=k(a,o,s),d=o,m={},p=0;for(let n=0;n<c.length;n++){const{name:r,fn:h}=c[n],{x:g,y:y,data:x,reset:w}=await h({x:f,y:u,initialPlacement:o,placement:d,strategy:i,middlewareData:m,rects:a,platform:l,elements:{reference:t,floating:e}});f=null!=g?g:f,u=null!=y?y:u,m={...m,[r]:{...m[r],...x}},w&&p<=50&&(p++,"object"==typeof w&&(w.placement&&(d=w.placement),w.rects&&(a=!0===w.rects?await l.getElementRects({reference:t,floating:e,strategy:i}):w.rects),({x:f,y:u}=k(a,d,s))),n=-1)}return{x:f,y:u,placement:d,strategy:i,middlewareData:m}};async function F(t,e){var n;void 0===e&&(e={});const{x:o,y:i,platform:r,rects:c,elements:s,strategy:a}=t,{boundary:f="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:m=!1,padding:p=0}=l(e,t),h=A(p),g=s[m?"floating"===d?"reference":"floating":d],y=R(await r.getClippingRect({element:null==(n=await(null==r.isElement?void 0:r.isElement(g)))||n?g:g.contextElement||await(null==r.getDocumentElement?void 0:r.getDocumentElement(s.floating)),boundary:f,rootBoundary:u,strategy:a})),x="floating"===d?{...c.floating,x:o,y:i}:c.reference,w=await(null==r.getOffsetParent?void 0:r.getOffsetParent(s.floating)),v=await(null==r.isElement?void 0:r.isElement(w))&&await(null==r.getScale?void 0:r.getScale(w))||{x:1,y:1},b=R(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({rect:x,offsetParent:w,strategy:a}):x);return{top:(y.top-b.top+h.top)/v.y,bottom:(b.bottom-y.bottom+h.bottom)/v.y,left:(y.left-b.left+h.left)/v.x,right:(b.right-y.right+h.right)/v.x}}const O=e=>({name:"arrow",options:e,async fn(n){const{x:o,y:i,placement:r,rects:s,platform:f,elements:u,middlewareData:m}=n,{element:p,padding:h=0}=l(e,n)||{};if(null==p)return{};const g=A(h),x={x:o,y:i},w=y(r),v=d(w),b=await f.getDimensions(p),R="y"===w,E=R?"top":"left",L=R?"bottom":"right",T=R?"clientHeight":"clientWidth",C=s.reference[v]+s.reference[w]-x[w]-s.floating[v],O=x[w]-s.reference[w],S=await(null==f.getOffsetParent?void 0:f.getOffsetParent(p));let D=S?S[T]:0;D&&await(null==f.isElement?void 0:f.isElement(S))||(D=u.floating[T]||s.floating[v]);const k=C/2-O/2,F=D/2-b[v]/2-1,P=t(g[E],F),W=t(g[L],F),z=P,X=D-b[v]-W,I=D/2-b[v]/2+k,H=c(z,I,X),V=!m.arrow&&null!=a(r)&&I!=H&&s.reference[v]/2-(I<z?P:W)-b[v]/2<0,B=V?I<z?I-z:I-X:0;return{[w]:x[w]+B,data:{[w]:H,centerOffset:I-H-B,...V&&{alignmentOffset:B}},reset:V}}}),T=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:i,middlewareData:r,rects:c,initialPlacement:s,platform:a,elements:u}=e,{mainAxis:d=!0,crossAxis:m=!0,fallbackPlacements:g,fallbackStrategy:y="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:b=!0,...R}=l(t,e);if(null!=(n=r.arrow)&&n.alignmentOffset)return{};const E=f(i),L=f(s)===s,T=await(null==a.isRTL?void 0:a.isRTL(u.floating)),C=g||(L||!b?[v(s)]:h(s));g||"none"===x||C.push(...w(s,b,x,T));const A=[s,...C],O=await F(e,R),S=[];let D=(null==(o=r.flip)?void 0:o.overflows)||[];if(d&&S.push(O[E]),m){const t=p(i,c,T);S.push(O[t[0]],O[t[1]])}if(D=[...D,{placement:i,overflows:S}],!S.every((t=>t<=0))){var k,P;const t=((null==(k=r.flip)?void 0:k.index)||0)+1,e=A[t];if(e)return{data:{index:t,overflows:D},reset:{placement:e}};let n=null==(P=D.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:P.placement;if(!n)switch(y){case"bestFit":{var W;const t=null==(W=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:W[0];t&&(n=t);break}case"initialPlacement":n=s}if(i!==n)return{reset:{placement:n}}}return{}}}};async function D(t,e){const{placement:n,platform:o,elements:i}=t,r=await(null==o.isRTL?void 0:o.isRTL(i.floating)),c=f(n),s=a(n),u="y"===m(n),d=["left","top"].includes(c)?-1:1,p=r&&u?-1:1,h=l(e,t);let{mainAxis:g,crossAxis:y,alignmentAxis:x}="number"==typeof h?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...h};return s&&"number"==typeof x&&(y="end"===s?-1*x:x),u?{x:y*p,y:g*d}:{x:g*d,y:y*p}}const P=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){var n,o;const{x:i,y:r,placement:l,middlewareData:c}=e,s=await D(e,t);return l===(null==(n=c.offset)?void 0:n.placement)&&null!=(o=c.arrow)&&o.alignmentOffset?{}:{x:i+s.x,y:r+s.y,data:{...s,placement:l}}}}},M=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:o,placement:i}=e,{mainAxis:r=!0,crossAxis:s=!1,limiter:a={fn:t=>{let{x:e,y:n}=t;return{x:e,y:n}}},...d}=l(t,e),p={x:n,y:o},h=await F(e,d),g=m(f(i)),y=u(g);let x=p[y],w=p[g];if(r){const t="y"===y?"bottom":"right";x=c(x+h["y"===y?"top":"left"],x,x-h[t])}if(s){const t="y"===g?"bottom":"right";w=c(w+h["y"===g?"top":"left"],w,w-h[t])}const v=a.fn({...e,[y]:x,[g]:w});return{...v,data:{x:v.x-n,y:v.y-o}}}}};function z(t){return B(t)?(t.nodeName||"").toLowerCase():"#document"}function C(t){var e;return(null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function L(t){var e;return null==(e=(B(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function B(t){return t instanceof Node||t instanceof C(t).Node}function E(t){return t instanceof Element||t instanceof C(t).Element}function I(t){return t instanceof HTMLElement||t instanceof C(t).HTMLElement}function N(t){return"undefined"!=typeof ShadowRoot&&(t instanceof ShadowRoot||t instanceof C(t).ShadowRoot)}function q(t){const{overflow:e,overflowX:n,overflowY:o,display:i}=X(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&!["inline","contents"].includes(i)}function H(t){return["table","td","th"].includes(z(t))}function $(t){const e=V(),n=X(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 j(t){let e=_(t);for(;I(e)&&!W(e);){if($(e))return e;e=_(e)}return null}function V(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function W(t){return["html","body","#document"].includes(z(t))}function X(t){return C(t).getComputedStyle(t)}function Y(t){return E(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function _(t){if("html"===z(t))return t;const e=t.assignedSlot||t.parentNode||N(t)&&t.host||L(t);return N(e)?e.host:e}function G(t){const e=_(t);return W(e)?t.ownerDocument?t.ownerDocument.body:t.body:I(e)&&q(e)?e:G(e)}function J(t,e,n){var o;void 0===e&&(e=[]),void 0===n&&(n=!0);const i=G(t),r=i===(null==(o=t.ownerDocument)?void 0:o.body),l=C(i);return r?e.concat(l,l.visualViewport||[],q(i)?i:[],l.frameElement&&n?J(l.frameElement):[]):e.concat(i,J(i,[],n))}function K(t){const n=X(t);let o=parseFloat(n.width)||0,i=parseFloat(n.height)||0;const r=I(t),l=r?t.offsetWidth:o,c=r?t.offsetHeight:i,s=e(o)!==l||e(i)!==c;return s&&(o=l,i=c),{width:o,height:i,$:s}}function Q(t){return E(t)?t:t.contextElement}function U(t){const n=Q(t);if(!I(n))return i(1);const o=n.getBoundingClientRect(),{width:r,height:l,$:c}=K(n);let s=(c?e(o.width):o.width)/r,a=(c?e(o.height):o.height)/l;return s&&Number.isFinite(s)||(s=1),a&&Number.isFinite(a)||(a=1),{x:s,y:a}}const Z=i(0);function tt(t){const e=C(t);return V()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:Z}function nt(t,e,n){return void 0===e&&(e=!1),!(!n||e&&n!==C(t))&&e}function et(t,e,n,o){void 0===e&&(e=!1),void 0===n&&(n=!1);const r=t.getBoundingClientRect(),l=Q(t);let c=i(1);e&&(o?E(o)&&(c=U(o)):c=U(t));const s=nt(l,n,o)?tt(l):i(0);let a=(r.left+s.x)/c.x,f=(r.top+s.y)/c.y,u=r.width/c.x,d=r.height/c.y;if(l){const t=C(l),e=o&&E(o)?C(o):o;let n=t.frameElement;for(;n&&o&&e!==t;){const t=U(n),e=n.getBoundingClientRect(),o=X(n),i=e.left+(n.clientLeft+parseFloat(o.paddingLeft))*t.x,r=e.top+(n.clientTop+parseFloat(o.paddingTop))*t.y;a*=t.x,f*=t.y,u*=t.x,d*=t.y,a+=i,f+=r,n=C(n).frameElement}}return R({width:u,height:d,x:a,y:f})}function ot(t){let{rect:e,offsetParent:n,strategy:o}=t;const r=I(n),l=L(n);if(n===l)return e;let c={scrollLeft:0,scrollTop:0},s=i(1);const a=i(0);if((r||!r&&"fixed"!==o)&&(("body"!==z(n)||q(l))&&(c=Y(n)),I(n))){const t=et(n);s=U(n),a.x=t.x+n.clientLeft,a.y=t.y+n.clientTop}return{width:e.width*s.x,height:e.height*s.y,x:e.x*s.x-c.scrollLeft*s.x+a.x,y:e.y*s.y-c.scrollTop*s.y+a.y}}function it(t){return Array.from(t.getClientRects())}function rt(t){return et(L(t)).left+Y(t).scrollLeft}function st(t){const e=L(t),o=Y(t),i=t.ownerDocument.body,r=n(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),l=n(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let c=-o.scrollLeft+rt(t);const s=-o.scrollTop;return"rtl"===X(i).direction&&(c+=n(e.clientWidth,i.clientWidth)-r),{width:r,height:l,x:c,y:s}}function ct(t,e){const n=C(t),o=L(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=V();(!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=et(t,!0,"fixed"===e),o=n.top+t.clientTop,r=n.left+t.clientLeft,l=I(t)?U(t):i(1);return{width:t.clientWidth*l.x,height:t.clientHeight*l.y,x:r*l.x,y:o*l.y}}function ft(t,e,n){let o;if("viewport"===e)o=ct(t,n);else if("document"===e)o=st(L(t));else if(E(e))o=lt(e,n);else{const n=tt(t);o={...e,x:e.x-n.x,y:e.y-n.y}}return R(o)}function at(t,e){const n=_(t);return!(n===e||!E(n)||W(n))&&("fixed"===X(n).position||at(n,e))}function ut(t,e){const n=e.get(t);if(n)return n;let o=J(t,[],!1).filter((t=>E(t)&&"body"!==z(t))),i=null;const r="fixed"===X(t).position;let l=r?_(t):t;for(;E(l)&&!W(l);){const e=X(l),n=$(l);n||"fixed"!==e.position||(i=null);(r?!n&&!i:!n&&"static"===e.position&&!!i&&["absolute","fixed"].includes(i.position)||q(l)&&!n&&at(t,l))?o=o.filter((t=>t!==l)):i=e,l=_(l)}return e.set(t,o),o}function dt(e){let{element:o,boundary:i,rootBoundary:r,strategy:l}=e;const c=[..."clippingAncestors"===i?ut(o,this._c):[].concat(i),r],s=c[0],a=c.reduce(((e,i)=>{const r=ft(o,i,l);return e.top=n(r.top,e.top),e.right=t(r.right,e.right),e.bottom=t(r.bottom,e.bottom),e.left=n(r.left,e.left),e}),ft(o,s,l));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function mt(t){const{width:e,height:n}=K(t);return{width:e,height:n}}function yt(t,e,n){const o=I(e),r=L(e),l="fixed"===n,c=et(t,!0,l,e);let s={scrollLeft:0,scrollTop:0};const a=i(0);if(o||!o&&!l)if(("body"!==z(e)||q(r))&&(s=Y(e)),o){const t=et(e,!0,l,e);a.x=t.x+e.clientLeft,a.y=t.y+e.clientTop}else r&&(a.x=rt(r));return{x:c.left+s.scrollLeft-a.x,y:c.top+s.scrollTop-a.y,width:c.width,height:c.height}}function pt(t,e){return I(t)&&"fixed"!==X(t).position?e?e(t):t.offsetParent:null}function ht(t,e){const n=C(t);if(!I(t))return n;let o=pt(t,e);for(;o&&H(o)&&"static"===X(o).position;)o=pt(o,e);return o&&("html"===z(o)||"body"===z(o)&&"static"===X(o).position&&!$(o))?n:o||j(t)||n}const gt=async function(t){let{reference:e,floating:n,strategy:o}=t;const i=this.getOffsetParent||ht,r=this.getDimensions;return{reference:yt(e,await i(n),o),floating:{x:0,y:0,...await r(n)}}};function xt(t){return"rtl"===X(t).direction}const wt={convertOffsetParentRelativeRectToViewportRelativeRect:ot,getDocumentElement:L,getClippingRect:dt,getOffsetParent:ht,getElementRects:gt,getClientRects:it,getDimensions:mt,getScale:U,isElement:E,isRTL:xt};function vt(e,i){let r,l=null;const c=L(e);function s(){clearTimeout(r),l&&l.disconnect(),l=null}return function a(f,u){void 0===f&&(f=!1),void 0===u&&(u=1),s();const{left:d,top:m,width:p,height:h}=e.getBoundingClientRect();if(f||i(),!p||!h)return;const g={rootMargin:-o(m)+"px "+-o(c.clientWidth-(d+p))+"px "+-o(c.clientHeight-(m+h))+"px "+-o(d)+"px",threshold:n(0,t(1,u))||1};let y=!0;function x(t){const e=t[0].intersectionRatio;if(e!==u){if(!y)return a();e?a(!1,e):r=setTimeout((()=>{a(!1,1e-7)}),100)}y=!1}try{l=new IntersectionObserver(x,{...g,root:c.ownerDocument})}catch(t){l=new IntersectionObserver(x,g)}l.observe(e)}(!0),s}function bt(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=Q(t),f=i||r?[...a?J(a):[],...J(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?et(t):null;return s&&function e(){const o=et(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 At=M,Rt=T,kt=O,St=(t,e,n)=>{const o=new Map,i={platform:wt,...n},r={...i.platform,_c:o};return S(t,e,{...i,platform:r})};export{kt as a,bt as b,St as c,Rt as f,P as o,At as s};