@public-ui/components 1.6.0-rc.16 → 1.6.0-rc.18

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 (468) hide show
  1. package/custom-elements.json +14 -8
  2. package/dist/cjs/{a11y.tipps-dbfe482e.js → a11y.tipps-de7fbe54.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-dbfe482e.js.map → a11y.tipps-de7fbe54.js.map} +1 -1
  4. package/dist/cjs/{app-globals-3c457229.js → app-globals-e83ee8b5.js} +1 -1
  5. package/dist/cjs/{app-globals-3c457229.js.map → app-globals-e83ee8b5.js.map} +1 -1
  6. package/dist/cjs/{aria-selected-b31756b3.js → aria-selected-0008cfb9.js} +1 -1
  7. package/dist/cjs/{aria-selected-b31756b3.js.map → aria-selected-0008cfb9.js.map} +1 -1
  8. package/dist/cjs/button-link-67bac64d.js +4 -0
  9. package/dist/cjs/{button-link-58e21d08.js.map → button-link-67bac64d.js.map} +1 -1
  10. package/dist/cjs/{color-3b22adaf.js → color-7b544771.js} +1 -1
  11. package/dist/cjs/{color-3b22adaf.js.map → color-7b544771.js.map} +1 -1
  12. package/dist/cjs/controller-04872bcd.js +4 -0
  13. package/dist/cjs/controller-04872bcd.js.map +1 -0
  14. package/dist/cjs/{controller-bc933b12.js → controller-0ff72c39.js} +1 -1
  15. package/dist/cjs/{controller-bc933b12.js.map → controller-0ff72c39.js.map} +1 -1
  16. package/dist/cjs/{controller-fe94cb0f.js → controller-60dc9748.js} +1 -1
  17. package/dist/cjs/{controller-fe94cb0f.js.map → controller-60dc9748.js.map} +1 -1
  18. package/dist/cjs/{controller-d3b9c398.js → controller-7263e570.js} +1 -1
  19. package/dist/cjs/{controller-d3b9c398.js.map → controller-7263e570.js.map} +1 -1
  20. package/dist/cjs/{controller-c3021b2f.js → controller-a297b03f.js} +1 -1
  21. package/dist/cjs/{controller-c3021b2f.js.map → controller-a297b03f.js.map} +1 -1
  22. package/dist/cjs/{controller-a03dbede.js → controller-fba32bcf.js} +1 -1
  23. package/dist/cjs/{controller-a03dbede.js.map → controller-fba32bcf.js.map} +1 -1
  24. package/dist/cjs/{controller-icon-b9a440b3.js → controller-icon-ffa82f31.js} +1 -1
  25. package/dist/cjs/{controller-icon-b9a440b3.js.map → controller-icon-ffa82f31.js.map} +1 -1
  26. package/dist/cjs/{dev.utils-78d00548.js → dev.utils-9c0958cf.js} +1 -1
  27. package/dist/cjs/{dev.utils-78d00548.js.map → dev.utils-9c0958cf.js.map} +1 -1
  28. package/dist/cjs/{devtools-7f99e00b.js → devtools-2e72dd9c.js} +1 -1
  29. package/dist/cjs/{devtools-7f99e00b.js.map → devtools-2e72dd9c.js.map} +1 -1
  30. package/dist/cjs/{disabled-959951da.js → disabled-33542b02.js} +1 -1
  31. package/dist/cjs/{disabled-959951da.js.map → disabled-33542b02.js.map} +1 -1
  32. package/dist/cjs/has-closer-c629ee07.js +4 -0
  33. package/dist/cjs/{has-closer-01ac076a.js.map → has-closer-c629ee07.js.map} +1 -1
  34. package/dist/cjs/hide-label-761f9c70.js +4 -0
  35. package/dist/cjs/{hide-label-4d99f1d9.js.map → hide-label-761f9c70.js.map} +1 -1
  36. package/dist/cjs/i18n-293feeb6.js +4 -0
  37. package/dist/cjs/i18n-293feeb6.js.map +1 -0
  38. package/dist/cjs/{icon-4b915891.js → icon-4c258aaa.js} +1 -1
  39. package/dist/cjs/{icon-4b915891.js.map → icon-4c258aaa.js.map} +1 -1
  40. package/dist/cjs/image-source-fe76fa4f.js +4 -0
  41. package/dist/cjs/{image-source-4e096e87.js.map → image-source-fe76fa4f.js.map} +1 -1
  42. package/dist/cjs/index.cjs.js +1 -1
  43. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  60. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-popover.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  103. package/dist/cjs/kolibri.cjs.js +1 -1
  104. package/dist/cjs/{label-f31696ce.js → label-9a5c5fc9.js} +1 -1
  105. package/dist/cjs/{label-f31696ce.js.map → label-9a5c5fc9.js.map} +1 -1
  106. package/dist/cjs/loader.cjs.js +1 -1
  107. package/dist/cjs/{prop.validators-7219caea.js → prop.validators-564c2db7.js} +1 -1
  108. package/dist/cjs/{prop.validators-7219caea.js.map → prop.validators-564c2db7.js.map} +1 -1
  109. package/dist/cjs/rows-c0b7f14e.js +4 -0
  110. package/dist/cjs/rows-c0b7f14e.js.map +1 -0
  111. package/dist/cjs/show-462d32c3.js +4 -0
  112. package/dist/cjs/{show-a8907ed7.js.map → show-462d32c3.js.map} +1 -1
  113. package/dist/cjs/{tab-index-fd4498b0.js → tab-index-a60b02ac.js} +1 -1
  114. package/dist/cjs/{tab-index-fd4498b0.js.map → tab-index-a60b02ac.js.map} +1 -1
  115. package/dist/cjs/{validation-8cba92a6.js → validation-18c0235d.js} +1 -1
  116. package/dist/cjs/{validation-8cba92a6.js.map → validation-18c0235d.js.map} +1 -1
  117. package/dist/cjs/validation-3e23c523.js +4 -0
  118. package/dist/cjs/{validation-6faf86e0.js.map → validation-3e23c523.js.map} +1 -1
  119. package/dist/components/component16.js +1 -1
  120. package/dist/components/component16.js.map +1 -1
  121. package/dist/components/component9.js.map +1 -1
  122. package/dist/components/controller.js +1 -1
  123. package/dist/components/controller.js.map +1 -1
  124. package/dist/components/i18n.js +1 -1
  125. package/dist/components/i18n.js.map +1 -1
  126. package/dist/components/kol-input-adapter-leanup.js +1 -1
  127. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  128. package/dist/components/kol-input-color.js +1 -1
  129. package/dist/components/kol-input-color.js.map +1 -1
  130. package/dist/components/kol-input-date.js +1 -1
  131. package/dist/components/kol-input-date.js.map +1 -1
  132. package/dist/components/kol-input-email.js +1 -1
  133. package/dist/components/kol-input-email.js.map +1 -1
  134. package/dist/components/kol-input-file.js +1 -1
  135. package/dist/components/kol-input-file.js.map +1 -1
  136. package/dist/components/kol-input-number.js +1 -1
  137. package/dist/components/kol-input-number.js.map +1 -1
  138. package/dist/components/kol-input-password.js +1 -1
  139. package/dist/components/kol-input-password.js.map +1 -1
  140. package/dist/components/kol-input-range.js +1 -1
  141. package/dist/components/kol-input-range.js.map +1 -1
  142. package/dist/components/kol-input-text.js +1 -1
  143. package/dist/components/kol-input-text.js.map +1 -1
  144. package/dist/components/kol-table.js +1 -1
  145. package/dist/components/kol-table.js.map +1 -1
  146. package/dist/components/kol-textarea.js +1 -1
  147. package/dist/components/kol-textarea.js.map +1 -1
  148. package/dist/components/prop.validators.js +1 -1
  149. package/dist/components/prop.validators.js.map +1 -1
  150. package/dist/components/rows.js +4 -0
  151. package/dist/components/rows.js.map +1 -0
  152. package/dist/esm/{a11y.tipps-9f948961.js → a11y.tipps-255c885e.js} +1 -1
  153. package/dist/esm/{a11y.tipps-9f948961.js.map → a11y.tipps-255c885e.js.map} +1 -1
  154. package/dist/esm/app-globals-e49e1503.js +4 -0
  155. package/dist/esm/{app-globals-bf9eb17a.js.map → app-globals-e49e1503.js.map} +1 -1
  156. package/dist/esm/{aria-selected-b9d7d1e4.js → aria-selected-9745a637.js} +1 -1
  157. package/dist/esm/{aria-selected-b9d7d1e4.js.map → aria-selected-9745a637.js.map} +1 -1
  158. package/dist/esm/{button-link-99acae48.js → button-link-e7a5fabf.js} +1 -1
  159. package/dist/esm/{button-link-99acae48.js.map → button-link-e7a5fabf.js.map} +1 -1
  160. package/dist/esm/{color-408da8e8.js → color-b194e076.js} +1 -1
  161. package/dist/esm/{color-408da8e8.js.map → color-b194e076.js.map} +1 -1
  162. package/dist/esm/{controller-058e5664.js → controller-407151fe.js} +1 -1
  163. package/dist/esm/{controller-058e5664.js.map → controller-407151fe.js.map} +1 -1
  164. package/dist/esm/{controller-98fd56dd.js → controller-6ae00de1.js} +1 -1
  165. package/dist/esm/{controller-98fd56dd.js.map → controller-6ae00de1.js.map} +1 -1
  166. package/dist/esm/{controller-234f49cb.js → controller-9a6e662f.js} +1 -1
  167. package/dist/esm/{controller-234f49cb.js.map → controller-9a6e662f.js.map} +1 -1
  168. package/dist/esm/controller-be43dccd.js +4 -0
  169. package/dist/esm/controller-be43dccd.js.map +1 -0
  170. package/dist/esm/{controller-6ed90cd7.js → controller-cbd99b24.js} +1 -1
  171. package/dist/esm/{controller-6ed90cd7.js.map → controller-cbd99b24.js.map} +1 -1
  172. package/dist/esm/{controller-b036f128.js → controller-d9c05ca2.js} +1 -1
  173. package/dist/esm/{controller-b036f128.js.map → controller-d9c05ca2.js.map} +1 -1
  174. package/dist/esm/{controller-icon-c0fcf344.js → controller-icon-0aea347b.js} +1 -1
  175. package/dist/esm/{controller-icon-c0fcf344.js.map → controller-icon-0aea347b.js.map} +1 -1
  176. package/dist/esm/{dev.utils-4290338e.js → dev.utils-e98368e1.js} +1 -1
  177. package/dist/esm/{dev.utils-4290338e.js.map → dev.utils-e98368e1.js.map} +1 -1
  178. package/dist/esm/{devtools-57a6a46f.js → devtools-3b34fa30.js} +1 -1
  179. package/dist/esm/{devtools-57a6a46f.js.map → devtools-3b34fa30.js.map} +1 -1
  180. package/dist/esm/{disabled-559fd371.js → disabled-614216e9.js} +1 -1
  181. package/dist/esm/{disabled-559fd371.js.map → disabled-614216e9.js.map} +1 -1
  182. package/dist/esm/{has-closer-62a48dbd.js → has-closer-4415fbda.js} +1 -1
  183. package/dist/esm/{has-closer-62a48dbd.js.map → has-closer-4415fbda.js.map} +1 -1
  184. package/dist/esm/{hide-label-9248468d.js → hide-label-53a9f681.js} +1 -1
  185. package/dist/esm/{hide-label-9248468d.js.map → hide-label-53a9f681.js.map} +1 -1
  186. package/dist/esm/i18n-2b2ccdd6.js +4 -0
  187. package/dist/esm/i18n-2b2ccdd6.js.map +1 -0
  188. package/dist/esm/{icon-e03e73f6.js → icon-ae60c121.js} +1 -1
  189. package/dist/esm/{icon-e03e73f6.js.map → icon-ae60c121.js.map} +1 -1
  190. package/dist/esm/{image-source-059b0003.js → image-source-a6d9c13f.js} +1 -1
  191. package/dist/esm/{image-source-059b0003.js.map → image-source-a6d9c13f.js.map} +1 -1
  192. package/dist/esm/index.js +1 -1
  193. package/dist/esm/kol-abbr.entry.js +1 -1
  194. package/dist/esm/kol-accordion.entry.js +1 -1
  195. package/dist/esm/kol-alert-wc_2.entry.js +1 -1
  196. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  197. package/dist/esm/kol-badge.entry.js +1 -1
  198. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  199. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  200. package/dist/esm/kol-card.entry.js +1 -1
  201. package/dist/esm/kol-details.entry.js +1 -1
  202. package/dist/esm/kol-form.entry.js +1 -1
  203. package/dist/esm/kol-icon.entry.js +1 -1
  204. package/dist/esm/kol-image.entry.js +1 -1
  205. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  206. package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
  207. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  208. package/dist/esm/kol-input-color.entry.js +1 -1
  209. package/dist/esm/kol-input-color.entry.js.map +1 -1
  210. package/dist/esm/kol-input-date.entry.js +1 -1
  211. package/dist/esm/kol-input-date.entry.js.map +1 -1
  212. package/dist/esm/kol-input-email.entry.js +1 -1
  213. package/dist/esm/kol-input-email.entry.js.map +1 -1
  214. package/dist/esm/kol-input-file.entry.js +1 -1
  215. package/dist/esm/kol-input-file.entry.js.map +1 -1
  216. package/dist/esm/kol-input-number.entry.js +1 -1
  217. package/dist/esm/kol-input-number.entry.js.map +1 -1
  218. package/dist/esm/kol-input-password.entry.js +1 -1
  219. package/dist/esm/kol-input-password.entry.js.map +1 -1
  220. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  221. package/dist/esm/kol-input-radio.entry.js +1 -1
  222. package/dist/esm/kol-input-range.entry.js +1 -1
  223. package/dist/esm/kol-input-range.entry.js.map +1 -1
  224. package/dist/esm/kol-input-text.entry.js +1 -1
  225. package/dist/esm/kol-input-text.entry.js.map +1 -1
  226. package/dist/esm/kol-kolibri.entry.js +1 -1
  227. package/dist/esm/kol-link-button.entry.js +1 -1
  228. package/dist/esm/kol-link-group.entry.js +1 -1
  229. package/dist/esm/kol-link-wc.entry.js +1 -1
  230. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  231. package/dist/esm/kol-logo.entry.js +1 -1
  232. package/dist/esm/kol-modal.entry.js +1 -1
  233. package/dist/esm/kol-nav.entry.js +1 -1
  234. package/dist/esm/kol-pagination.entry.js +1 -1
  235. package/dist/esm/kol-popover.entry.js +1 -1
  236. package/dist/esm/kol-progress.entry.js +1 -1
  237. package/dist/esm/kol-quote.entry.js +1 -1
  238. package/dist/esm/kol-select.entry.js +1 -1
  239. package/dist/esm/kol-select.entry.js.map +1 -1
  240. package/dist/esm/kol-skip-nav.entry.js +1 -1
  241. package/dist/esm/kol-span-wc.entry.js +1 -1
  242. package/dist/esm/kol-spin.entry.js +1 -1
  243. package/dist/esm/kol-split-button.entry.js +1 -1
  244. package/dist/esm/kol-symbol.entry.js +1 -1
  245. package/dist/esm/kol-table.entry.js +1 -1
  246. package/dist/esm/kol-table.entry.js.map +1 -1
  247. package/dist/esm/kol-tabs.entry.js +1 -1
  248. package/dist/esm/kol-textarea.entry.js +1 -1
  249. package/dist/esm/kol-textarea.entry.js.map +1 -1
  250. package/dist/esm/kol-toast.entry.js +1 -1
  251. package/dist/esm/kol-tooltip.entry.js +1 -1
  252. package/dist/esm/kol-version.entry.js +1 -1
  253. package/dist/esm/kolibri.js +1 -1
  254. package/dist/esm/{label-223fef8f.js → label-35927418.js} +1 -1
  255. package/dist/esm/{label-223fef8f.js.map → label-35927418.js.map} +1 -1
  256. package/dist/esm/loader.js +1 -1
  257. package/dist/esm/{prop.validators-601f1068.js → prop.validators-e3c93395.js} +1 -1
  258. package/dist/esm/{prop.validators-601f1068.js.map → prop.validators-e3c93395.js.map} +1 -1
  259. package/dist/esm/rows-453107a2.js +4 -0
  260. package/dist/esm/rows-453107a2.js.map +1 -0
  261. package/dist/esm/{show-6d33a33f.js → show-d72ff77e.js} +1 -1
  262. package/dist/esm/{show-6d33a33f.js.map → show-d72ff77e.js.map} +1 -1
  263. package/dist/esm/{tab-index-fc60df7a.js → tab-index-841e81ba.js} +1 -1
  264. package/dist/esm/{tab-index-fc60df7a.js.map → tab-index-841e81ba.js.map} +1 -1
  265. package/dist/esm/{validation-5300d0a1.js → validation-a9f13bf5.js} +1 -1
  266. package/dist/esm/{validation-5300d0a1.js.map → validation-a9f13bf5.js.map} +1 -1
  267. package/dist/esm/validation-bbab8795.js +4 -0
  268. package/dist/esm/{validation-4acc18ad.js.map → validation-bbab8795.js.map} +1 -1
  269. package/dist/kolibri/{a11y.tipps-9f948961.js → a11y.tipps-255c885e.js} +1 -1
  270. package/dist/kolibri/app-globals-e49e1503.js +4 -0
  271. package/dist/kolibri/aria-selected-9745a637.js +4 -0
  272. package/dist/kolibri/assets/simulations/table-simulation.js +1 -1
  273. package/dist/kolibri/{button-link-99acae48.js → button-link-e7a5fabf.js} +1 -1
  274. package/dist/kolibri/{color-408da8e8.js → color-b194e076.js} +1 -1
  275. package/dist/kolibri/{controller-058e5664.js → controller-407151fe.js} +1 -1
  276. package/dist/kolibri/{controller-98fd56dd.js → controller-6ae00de1.js} +1 -1
  277. package/dist/kolibri/{controller-234f49cb.js → controller-9a6e662f.js} +1 -1
  278. package/dist/kolibri/controller-be43dccd.js +4 -0
  279. package/dist/kolibri/controller-be43dccd.js.map +1 -0
  280. package/dist/kolibri/{controller-6ed90cd7.js → controller-cbd99b24.js} +1 -1
  281. package/dist/kolibri/{controller-b036f128.js → controller-d9c05ca2.js} +1 -1
  282. package/dist/kolibri/controller-icon-0aea347b.js +4 -0
  283. package/dist/kolibri/{dev.utils-4290338e.js → dev.utils-e98368e1.js} +1 -1
  284. package/dist/kolibri/{dev.utils-4290338e.js.map → dev.utils-e98368e1.js.map} +1 -1
  285. package/dist/kolibri/{devtools-57a6a46f.js → devtools-3b34fa30.js} +1 -1
  286. package/dist/kolibri/{disabled-559fd371.js → disabled-614216e9.js} +1 -1
  287. package/dist/kolibri/has-closer-4415fbda.js +4 -0
  288. package/dist/kolibri/hide-label-53a9f681.js +4 -0
  289. package/dist/kolibri/i18n-2b2ccdd6.js +4 -0
  290. package/dist/kolibri/i18n-2b2ccdd6.js.map +1 -0
  291. package/dist/kolibri/{icon-e03e73f6.js → icon-ae60c121.js} +1 -1
  292. package/dist/kolibri/image-source-a6d9c13f.js +4 -0
  293. package/dist/kolibri/index.esm.js +1 -1
  294. package/dist/kolibri/kol-abbr.entry.js +1 -1
  295. package/dist/kolibri/kol-accordion.entry.js +1 -1
  296. package/dist/kolibri/kol-alert-wc_2.entry.js +1 -1
  297. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  298. package/dist/kolibri/kol-badge.entry.js +1 -1
  299. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  300. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  301. package/dist/kolibri/kol-card.entry.js +1 -1
  302. package/dist/kolibri/kol-details.entry.js +1 -1
  303. package/dist/kolibri/kol-form.entry.js +1 -1
  304. package/dist/kolibri/kol-icon.entry.js +1 -1
  305. package/dist/kolibri/kol-image.entry.js +1 -1
  306. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  307. package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
  308. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  309. package/dist/kolibri/kol-input-color.entry.js +1 -1
  310. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  311. package/dist/kolibri/kol-input-date.entry.js +1 -1
  312. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  313. package/dist/kolibri/kol-input-email.entry.js +1 -1
  314. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  315. package/dist/kolibri/kol-input-file.entry.js +1 -1
  316. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  317. package/dist/kolibri/kol-input-number.entry.js +1 -1
  318. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  319. package/dist/kolibri/kol-input-password.entry.js +1 -1
  320. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  321. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  322. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  323. package/dist/kolibri/kol-input-range.entry.js +1 -1
  324. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  325. package/dist/kolibri/kol-input-text.entry.js +1 -1
  326. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  327. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  328. package/dist/kolibri/kol-link-button.entry.js +1 -1
  329. package/dist/kolibri/kol-link-group.entry.js +1 -1
  330. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  331. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  332. package/dist/kolibri/kol-logo.entry.js +1 -1
  333. package/dist/kolibri/kol-modal.entry.js +1 -1
  334. package/dist/kolibri/kol-nav.entry.js +1 -1
  335. package/dist/kolibri/kol-pagination.entry.js +1 -1
  336. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  337. package/dist/kolibri/kol-popover.entry.js +1 -1
  338. package/dist/kolibri/kol-progress.entry.js +1 -1
  339. package/dist/kolibri/kol-quote.entry.js +1 -1
  340. package/dist/kolibri/kol-select.entry.js +1 -1
  341. package/dist/kolibri/kol-select.entry.js.map +1 -1
  342. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  343. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  344. package/dist/kolibri/kol-spin.entry.js +1 -1
  345. package/dist/kolibri/kol-split-button.entry.js +1 -1
  346. package/dist/kolibri/kol-symbol.entry.js +1 -1
  347. package/dist/kolibri/kol-table.entry.js +1 -1
  348. package/dist/kolibri/kol-table.entry.js.map +1 -1
  349. package/dist/kolibri/kol-tabs.entry.js +1 -1
  350. package/dist/kolibri/kol-textarea.entry.js +1 -1
  351. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  352. package/dist/kolibri/kol-toast.entry.js +1 -1
  353. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  354. package/dist/kolibri/kol-version.entry.js +1 -1
  355. package/dist/kolibri/kolibri.esm.js +1 -1
  356. package/dist/kolibri/kolibri.esm.js.map +1 -1
  357. package/dist/kolibri/label-35927418.js +4 -0
  358. package/dist/kolibri/{label-223fef8f.js.map → label-35927418.js.map} +1 -1
  359. package/dist/kolibri/{prop.validators-601f1068.js → prop.validators-e3c93395.js} +1 -1
  360. package/dist/kolibri/rows-453107a2.js +4 -0
  361. package/dist/kolibri/rows-453107a2.js.map +1 -0
  362. package/dist/kolibri/show-d72ff77e.js +4 -0
  363. package/dist/kolibri/{tab-index-fc60df7a.js → tab-index-841e81ba.js} +1 -1
  364. package/dist/kolibri/{validation-5300d0a1.js → validation-a9f13bf5.js} +1 -1
  365. package/dist/kolibri/validation-bbab8795.js +4 -0
  366. package/dist/types/components/select/component.d.ts +3 -0
  367. package/dist/types/components/select/controller.d.ts +3 -1
  368. package/dist/types/components/select/types.d.ts +3 -2
  369. package/dist/types/components/table/component.d.ts +2 -0
  370. package/dist/types/components/table/types.d.ts +5 -0
  371. package/dist/types/components/textarea/component.d.ts +3 -2
  372. package/dist/types/components/textarea/controller.d.ts +2 -1
  373. package/dist/types/components/textarea/types.d.ts +3 -4
  374. package/dist/types/components.d.ts +16 -6
  375. package/dist/types/i18n.d.ts +1 -1
  376. package/dist/types/locales/de.d.ts +3 -0
  377. package/dist/types/locales/en.d.ts +3 -0
  378. package/dist/types/types/props/rows.d.ts +6 -0
  379. package/doc/abbr.md +1 -1
  380. package/doc/accordion.md +1 -1
  381. package/doc/alert.md +1 -1
  382. package/doc/avatar.md +0 -2
  383. package/doc/badge.md +1 -1
  384. package/doc/breadcrumb.md +2 -2
  385. package/doc/button-group.md +2 -2
  386. package/doc/button.md +3 -3
  387. package/doc/details.md +1 -1
  388. package/doc/icon.md +5 -5
  389. package/doc/image.md +4 -4
  390. package/doc/indented-text.md +1 -1
  391. package/doc/input-checkbox.md +7 -5
  392. package/doc/input-color.md +1 -1
  393. package/doc/input-date.md +4 -4
  394. package/doc/input-email.md +2 -2
  395. package/doc/input-file.md +2 -2
  396. package/doc/input-number.md +1 -1
  397. package/doc/input-password.md +1 -1
  398. package/doc/input-radio.md +5 -5
  399. package/doc/input-range.md +1 -1
  400. package/doc/input-text.md +2 -2
  401. package/doc/link-button.md +11 -11
  402. package/doc/link.md +2 -2
  403. package/doc/modal.md +4 -4
  404. package/doc/progress.md +2 -2
  405. package/doc/quote.md +5 -5
  406. package/doc/select.md +7 -6
  407. package/doc/skip-nav.md +1 -1
  408. package/doc/spin.md +2 -2
  409. package/doc/split-button.md +1 -1
  410. package/doc/symbol.md +45 -0
  411. package/doc/table.md +14 -14
  412. package/doc/tabs.md +4 -4
  413. package/doc/textarea.md +3 -3
  414. package/doc/tooltip.md +1 -1
  415. package/jest-test-results.json +1 -1
  416. package/package.json +1 -1
  417. package/vscode-custom-data.json +11 -7
  418. package/dist/cjs/button-link-58e21d08.js +0 -4
  419. package/dist/cjs/controller-9b414322.js +0 -4
  420. package/dist/cjs/controller-9b414322.js.map +0 -1
  421. package/dist/cjs/has-closer-01ac076a.js +0 -4
  422. package/dist/cjs/hide-label-4d99f1d9.js +0 -4
  423. package/dist/cjs/i18n-8599135d.js +0 -4
  424. package/dist/cjs/i18n-8599135d.js.map +0 -1
  425. package/dist/cjs/image-source-4e096e87.js +0 -4
  426. package/dist/cjs/show-a8907ed7.js +0 -4
  427. package/dist/cjs/validation-6faf86e0.js +0 -4
  428. package/dist/esm/app-globals-bf9eb17a.js +0 -4
  429. package/dist/esm/controller-53e4980f.js +0 -4
  430. package/dist/esm/controller-53e4980f.js.map +0 -1
  431. package/dist/esm/i18n-6e857b2f.js +0 -4
  432. package/dist/esm/i18n-6e857b2f.js.map +0 -1
  433. package/dist/esm/validation-4acc18ad.js +0 -4
  434. package/dist/kolibri/app-globals-bf9eb17a.js +0 -4
  435. package/dist/kolibri/aria-selected-b9d7d1e4.js +0 -4
  436. package/dist/kolibri/controller-53e4980f.js +0 -4
  437. package/dist/kolibri/controller-53e4980f.js.map +0 -1
  438. package/dist/kolibri/controller-icon-c0fcf344.js +0 -4
  439. package/dist/kolibri/has-closer-62a48dbd.js +0 -4
  440. package/dist/kolibri/hide-label-9248468d.js +0 -4
  441. package/dist/kolibri/i18n-6e857b2f.js +0 -4
  442. package/dist/kolibri/i18n-6e857b2f.js.map +0 -1
  443. package/dist/kolibri/image-source-059b0003.js +0 -4
  444. package/dist/kolibri/label-223fef8f.js +0 -4
  445. package/dist/kolibri/show-6d33a33f.js +0 -4
  446. package/dist/kolibri/validation-4acc18ad.js +0 -4
  447. /package/dist/kolibri/{a11y.tipps-9f948961.js.map → a11y.tipps-255c885e.js.map} +0 -0
  448. /package/dist/kolibri/{app-globals-bf9eb17a.js.map → app-globals-e49e1503.js.map} +0 -0
  449. /package/dist/kolibri/{aria-selected-b9d7d1e4.js.map → aria-selected-9745a637.js.map} +0 -0
  450. /package/dist/kolibri/{button-link-99acae48.js.map → button-link-e7a5fabf.js.map} +0 -0
  451. /package/dist/kolibri/{color-408da8e8.js.map → color-b194e076.js.map} +0 -0
  452. /package/dist/kolibri/{controller-058e5664.js.map → controller-407151fe.js.map} +0 -0
  453. /package/dist/kolibri/{controller-98fd56dd.js.map → controller-6ae00de1.js.map} +0 -0
  454. /package/dist/kolibri/{controller-234f49cb.js.map → controller-9a6e662f.js.map} +0 -0
  455. /package/dist/kolibri/{controller-6ed90cd7.js.map → controller-cbd99b24.js.map} +0 -0
  456. /package/dist/kolibri/{controller-b036f128.js.map → controller-d9c05ca2.js.map} +0 -0
  457. /package/dist/kolibri/{controller-icon-c0fcf344.js.map → controller-icon-0aea347b.js.map} +0 -0
  458. /package/dist/kolibri/{devtools-57a6a46f.js.map → devtools-3b34fa30.js.map} +0 -0
  459. /package/dist/kolibri/{disabled-559fd371.js.map → disabled-614216e9.js.map} +0 -0
  460. /package/dist/kolibri/{has-closer-62a48dbd.js.map → has-closer-4415fbda.js.map} +0 -0
  461. /package/dist/kolibri/{hide-label-9248468d.js.map → hide-label-53a9f681.js.map} +0 -0
  462. /package/dist/kolibri/{icon-e03e73f6.js.map → icon-ae60c121.js.map} +0 -0
  463. /package/dist/kolibri/{image-source-059b0003.js.map → image-source-a6d9c13f.js.map} +0 -0
  464. /package/dist/kolibri/{prop.validators-601f1068.js.map → prop.validators-e3c93395.js.map} +0 -0
  465. /package/dist/kolibri/{show-6d33a33f.js.map → show-d72ff77e.js.map} +0 -0
  466. /package/dist/kolibri/{tab-index-fc60df7a.js.map → tab-index-841e81ba.js.map} +0 -0
  467. /package/dist/kolibri/{validation-5300d0a1.js.map → validation-a9f13bf5.js.map} +0 -0
  468. /package/dist/kolibri/{validation-4acc18ad.js.map → validation-bbab8795.js.map} +0 -0
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{b as t,w as i,s as e,o as s,p as a}from"./prop.validators-e3c93395.js";import{a as n}from"./label-35927418.js";import{d as h,g as o,h as r}from"./a11y.tipps-255c885e.js";import{v as l}from"./tab-index-841e81ba.js";import{b as d}from"./dev.utils-e98368e1.js";const u=t=>{const e="string"==typeof t._error&&t._error.length>0&&!0===t._touched,i="string"==typeof t._hint&&t._hint.length>0,o=[];return!0===e&&o.push(`${t._id}-error`),!0===i&&o.push(`${t._id}-hint`),{hasError:e,hasHint:i,ariaDescribedBy:o}},c=(e,i)=>{t(e,"_adjustHeight",i)},f=(e,i)=>{t(e,"_touched",i)},v=d();class p{constructor(t,e,i){var o,n;if(this.setFormAssociatedValue=t=>{var e;const i=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==i&&""!==i||h(` The form field (${this.name}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=t,this.name=e,this.host=i,v){switch(null===(o=this.host)||void 0===o||o.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.name){case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("aria-hidden","true"),this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(n=this.host)||void 0===n||n.appendChild(this.formAssociated)}}setAttribute(t,e,i){if(v)try{if("boolean"!=typeof(i="object"==typeof i&&null!==i?JSON.stringify(i):i)&&"number"!=typeof i&&"string"!=typeof i)throw new Error("Invalid value type: "+typeof i);null==e||e.setAttribute(t,`${i}`)}catch(i){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return o(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,i){if(i)if("select"===this.name)i.querySelectorAll("option").forEach((t=>{i.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),i.appendChild(t)}}));else"string"==typeof e?(i.setAttribute("value",e),i.value=e):(i.removeAttribute("value"),i.value="")}validateAlert(e){t(this.component,"_alert",e)}validateSyncValueBySelector(t){if(v&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}validateTouched(t){f(this.component,t)}componentWillLoad(){this.validateAlert(this.component._alert),this.validateSyncValueBySelector(this.component._syncValueBySelector),this.validateTouched(this.component._touched)}}class m extends p{constructor(t,e,i){super(t,e,i),this.hideLabel=!1,this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this)},this.component=t}validateAccessKey(t){i(this.component,"_accessKey",t)}validateAdjustHeight(t){c(this.component,t)}validateDisabled(e){t(this.component,"_disabled",e),!0===e&&r()}validateError(t){i(this.component,"_error",t)}validateHideLabel(e){t(this.component,"_hideLabel",e)}validateHint(t){i(this.component,"_hint",t)}validateId(t){i(this.component,"_id",t,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},minLength:1}),""!==t&&void 0!==t||h("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){n(this.component,t)}validateName(t){i(this.component,"_name",t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&h("Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateOn(t){"object"==typeof t&&e(this.component,"_on",t)}validateSmartButton(t){s(t,(()=>{try{t=a(t)}catch(t){}e(this.component,"_smartButton",t)}))}validateTabIndex(t){l(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateDisabled(this.component._disabled),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateName(this.component._name),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t){var e;const i=t.target.value;this.setFormAssociatedValue(i),this.valueChangeListeners.forEach((t=>t(i))),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,i)}onClick(t){var e;"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(t)}onFocus(t){var e;this.component._alert=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}setValue(t,e){var i;this.setFormAssociatedValue(e),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onChange)&&this.component._on.onChange(t,e)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{m as I,u as g};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getRenderStates","state","hasError","_error","length","_touched","hasHint","_hint","ariaDescribedBy","push","_id","validateAdjustHeight","component","value","watchBoolean","validateTouched","EXPERIMENTAL_MODE","getExperimentalMode","ControlledInputController","constructor","name","host","this","setFormAssociatedValue","rawValue","_a","formAssociated","getAttribute","devHint","strValue","tryToStringifyValue","syncValue","syncToOwnInput","querySelectorAll","forEach","el","removeChild","document","createElement","setAttribute","_b","appendChild","qualifiedName","element","JSON","stringify","Error","e","removeAttribute","toString","undefined","devWarning","associatedElement","Array","isArray","rawValueItem","strValueItem","option","validateAlert","validateSyncValueBySelector","input","querySelector","componentWillLoad","_alert","_syncValueBySelector","InputController","super","hideLabel","valueChangeListeners","onFacade","onBlur","bind","onChange","onClick","onFocus","validateAccessKey","watchString","validateDisabled","a11yHintDisabled","validateError","validateHideLabel","validateHint","validateId","hooks","afterPatch","minLength","validateLabel","validateLabelWithExpertSlot","validateName","_name","validateOn","setState","validateSmartButton","objectObjectHandler","parseJson","validateTabIndex","_accessKey","_adjustHeight","_disabled","_hideLabel","_label","_smartButton","_on","_tabIndex","event","target","listener","setValue","addValueChangeListener"],"sources":["src/components/input/controller.ts","src/types/props/adjust-height.ts","src/types/props/touched.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts"],"sourcesContent":["/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_error?: string;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: boolean;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst hasError = typeof state._error === 'string' && state._error.length > 0 && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDescribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Passt die Höhe des Eingabefeldes automatisch an den Füllstand an.\n */\n/** en\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: boolean;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n */\n/** en\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: boolean;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { StencilUnknown } from '../../components';\nimport { validateTouched } from '../../types/props/touched';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { Props, Watches } from './types';\n\nconst EXPERIMENTAL_MODE = getExperimentalMode();\n\nexport class ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly name: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.name = name;\n\t\tthis.host = host;\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.name) {\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.name}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(rawValue: StencilUnknown, strValue: string | null, associatedElement?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.name) {\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateSyncValueBySelector(value?: string): void {\n\t\tif (EXPERIMENTAL_MODE && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import { Generic } from '@a11y-ui/core';\n\nimport { ButtonProps } from '../../../types/button-link';\nimport { InputTypeOnDefault } from '../../../types/input/types';\nimport { validateAdjustHeight } from '../../../types/props/adjust-height';\nimport { LabelWithExpertSlotPropType, validateLabelWithExpertSlot } from '../../../types/props/label';\nimport { a11yHintDisabled, devHint } from '../../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchBoolean, watchString } from '../../../utils/prop.validators';\nimport { validateTabIndex } from '../../../utils/validators/tab-index';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\nimport { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport { Props, Watches } from './types';\n\ntype ValueChangeListener = (value: string) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tpublic hideLabel = false;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\tpublic validateError(value?: string): void {\n\t\twatchString(this.component, '_error', value);\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value);\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('id', this.formAssociated, this.component.state._id as string);\n\t\t\t\t},\n\t\t\t},\n\t\t\tminLength: 1,\n\t\t});\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value);\n\t}\n\n\tpublic validateName(value?: string): void {\n\t\twatchString(this.component, '_name', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.`\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\tprotected onChange(event: Event): void {\n\t\tconst value = (event.target as HTMLInputElement).value;\n\t\tthis.setFormAssociatedValue(value);\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic setValue(event: Event, value: string | number | boolean): void {\n\t\tthis.setFormAssociatedValue(value as string);\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t};\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{a as t}from"./prop.validators-601f1068.js";const o=(o,r,a)=>{t(o,r,(t=>"button"===t||"reset"===t||"submit"===t),new Set(["KoliBriButtonType {button, reset, submit}"]),a)},r=(o,r,a)=>{t(o,r,(t=>"primary"===t||"secondary"===t||"normal"===t||"danger"===t||"ghost"===t||"custom"===t),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),a,{defaultValue:"normal"})};export{o as a,r as w};
4
+ import{a as t}from"./prop.validators-e3c93395.js";const o=(o,r,a)=>{t(o,r,(t=>"button"===t||"reset"===t||"submit"===t),new Set(["KoliBriButtonType {button, reset, submit}"]),a)},r=(o,r,a)=>{t(o,r,(t=>"primary"===t||"secondary"===t||"normal"===t||"danger"===t||"ghost"===t||"custom"===t),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),a,{defaultValue:"normal"})};export{o as a,r as w};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{d as e}from"./a11y.tipps-9f948961.js";import{b as o}from"./dev.utils-4290338e.js";import{f as t,K as n}from"./prop.validators-601f1068.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},s=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onSubmit)&&(null===(a=i._on)||void 0===a||a.onSubmit(e))}}};export{s as a,f as p};
4
+ import{d as e}from"./a11y.tipps-255c885e.js";import{b as o}from"./dev.utils-e98368e1.js";import{f as t,K as n}from"./prop.validators-e3c93395.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},s=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onSubmit)&&(null===(a=i._on)||void 0===a||a.onSubmit(e))}}};export{s as a,f as p};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{i as o}from"./icon-ae60c121.js";import{o as t,p as s,a as i}from"./prop.validators-e3c93395.js";import{i as r}from"./reuse-c2156413.js";import{I as c}from"./controller-be43dccd.js";const e=(o,t)=>{const e=o;"object"==typeof e&&null!==e&&(r(e.right,1)&&(e.right={icon:e.right}),r(e.left,1)&&(e.left={icon:e.left}),t.set("_icon",e))};class a extends c{constructor(o,t,e){super(o,t,e),this.component=o}validateIcon(c){t(c,(()=>{try{c=s(c)}catch(o){}i(this.component,"_icon",(t=>"object"==typeof t&&null!==t&&(r(t.left,1)||o(t.left)||r(t.right,1)||o(t.right))),new Set(["KoliBriHorizontalIcon"]),c,{hooks:{beforePatch:e},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcon(this.component._icon)}}export{a as I};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{p as e}from"./reuse-c2156413.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"})),a().body.style.maxHeight="100vh",a().body.style.overflow="hidden",this.lockFocus(a().body,t)}else a().body.style.maxHeight="unset",a().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?v.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)v.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)}}}class i{constructor(e){this.document=e,this.queue=new Set,this.isOpen=!1,this.toastElement=this.document.createElement("kol-toast"),this.toastElement.setAttribute("_level","3"),this.toastElement.setAttribute("_show","false"),this.toastElement.setAttribute("_show-duration","-1"),this.toastElement.setAttribute("_has-closer","true"),this.toastElement._on={onClose:()=>{const e=this.queue.values().next();e.value?(this.queue.delete(e.value),setTimeout((()=>{this.showToast(e.value)}),200)):this.isOpen=!1}},this.document.body.insertBefore(this.toastElement,this.document.body.firstChild)}enqueue(e){this.isOpen?this.queue.add(e):this.showToast(e)}showToast(e){this.toastElement.setAttribute("_heading",e.heading),this.toastElement.setAttribute("_show","true"),this.toastElement.setAttribute("_type",e.type),this.toastElement.innerText=e.description,this.isOpen=!0}}let n=null,s=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?s=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},l=()=>n||"undefined"==typeof window?null:window,a=()=>s||void 0===l().document?null:l().document;let c=null,r=null,u=null,d=null;const h=()=>!0===r,f=()=>!0===u,m=()=>!0===d;class v{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${v.shield.label} | ${e}`:v.shield.label}static getShield(e){return[v.handleClassifier(null==e?void 0:e.classifier),`${v.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...v.getShield(t),...v.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...v.getShield(t),...v.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...v.getShield(t),...v.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...v.getShield(t),...v.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...v.getShield(t),...v.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...v.getShield(t),...v.mapToArray(e))}}v.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const p=()=>{if(null===r&&null===u&&null===d){const e=a().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(c=e.getAttribute("content"),"string"==typeof c&&(r=c.includes("dev-mode=true"),u=c.includes("experimental-mode=true"),d=c.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")};let b=null;const w=()=>b||{},M=()=>{if(null===b){b=l().KoliBri||{};const e=new t,o=new i(a());Object.defineProperty(b,"Modal",{get:function(){return e}}),Object.defineProperty(b,"Toaster",{get:function(){return o}}),p(),v.debug("\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n\t| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n\t| |\\ \\ | '-' | | | | | | '--' / | | | |\n\t`--' `--´ `---´ `--' `--' `------´ `--' `--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io\n\t\t",{forceLog:!0})}else console.warn("You can only initialize KoliBri once.")},T=()=>{void 0===l().KoliBri&&Object.defineProperty(window,"KoliBri",{get:function(){return b}}),!0!==w().adviceShown&&(Object.defineProperty(b,"adviceShown",{get:function(){return!0}}),v.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{b as K,v as L,i as T,l as a,f as b,o as c,w as d,h as e,m as f,a as g,M as i,g as n,T as r};
4
+ import{p as e}from"./reuse-c2156413.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"})),a().body.style.maxHeight="100vh",a().body.style.overflow="hidden",this.lockFocus(a().body,t)}else a().body.style.maxHeight="unset",a().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?v.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)v.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)}}}class i{constructor(e){this.document=e,this.queue=new Set,this.isOpen=!1,this.toastElement=this.document.createElement("kol-toast"),this.toastElement.setAttribute("_level","3"),this.toastElement.setAttribute("_show","false"),this.toastElement.setAttribute("_show-duration","-1"),this.toastElement.setAttribute("_has-closer","true"),this.toastElement._on={onClose:()=>{const e=this.queue.values().next();e.value?(this.queue.delete(e.value),setTimeout((()=>{this.showToast(e.value)}),200)):this.isOpen=!1}},this.document.body.insertBefore(this.toastElement,this.document.body.firstChild)}enqueue(e){this.isOpen?this.queue.add(e):this.showToast(e)}showToast(e){this.toastElement.setAttribute("_heading",e.heading),this.toastElement.setAttribute("_show","true"),this.toastElement.setAttribute("_type",e.type),this.toastElement.innerText=e.description,this.isOpen=!0}}let n=null,s=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?s=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},l=()=>n||"undefined"==typeof window?null:window,a=()=>s||void 0===l().document?null:l().document;let c=null,r=null,u=null,d=null;const h=()=>!0===r,f=()=>!0===u,m=()=>!0===d;class v{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${v.shield.label} | ${e}`:v.shield.label}static getShield(e){return[v.handleClassifier(null==e?void 0:e.classifier),`${v.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...v.getShield(t),...v.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...v.getShield(t),...v.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...v.getShield(t),...v.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...v.getShield(t),...v.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...v.getShield(t),...v.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...v.getShield(t),...v.mapToArray(e))}}v.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const p=()=>{if(null===r&&null===u&&null===d){const e=a().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(c=e.getAttribute("content"),"string"==typeof c&&(r=c.includes("dev-mode=true"),u=c.includes("experimental-mode=true"),d=c.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")};let b=null;const w=()=>b||{},M=()=>{if(null===b){b=l().KoliBri||{};const e=new t,o=new i(a());Object.defineProperty(b,"Modal",{get:function(){return e}}),Object.defineProperty(b,"Toaster",{get:function(){return o}}),p(),v.debug("\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n\t| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n\t| |\\ \\ | '-' | | | | | | '--' / | | | |\n\t`--' `--´ `---´ `--' `--' `------´ `--' `--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.6.0-rc.17\n\t\t",{forceLog:!0})}else console.warn("You can only initialize KoliBri once.")},T=()=>{void 0===l().KoliBri&&Object.defineProperty(window,"KoliBri",{get:function(){return b}}),!0!==w().adviceShown&&(Object.defineProperty(b,"adviceShown",{get:function(){return!0}}),v.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{b as K,v as L,i as T,l as a,f as b,o as c,w as d,h as e,m as f,a as g,M as i,g as n,T 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","ToasterService","document","queue","Set","isOpen","toastElement","createElement","_on","onClose","next","values","showToast","insertBefore","firstChild","enqueue","data","add","heading","type","innerText","description","WINDOW","DOCUMENT","configKoliBri","window","Window","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","static","msg","isArray","classifier","shield","label","options","handleClassifier","overwriteStyle","forceLog","debug","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/components/toast/toaster.tsx","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { AlertType } from '../alert/types';\n\ntype Toast = {\n\theading: string;\n\tdescription: string;\n\ttype: AlertType;\n};\n\nexport class ToasterService {\n\tprivate readonly toastElement: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tconstructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '3');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1');\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tthis.toastElement.setAttribute('_heading', data.heading);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { ToasterService } from '../components/toast/toaster';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tconst Toaster = new ToasterService(getDocument());\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tObject.defineProperty(KoliBri, 'Toaster', {\n\t\t\tget: function (): ToasterService {\n\t\t\t\treturn Toaster;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
1
+ {"version":3,"names":["ModalService","constructor","this","lockedElements","Map","modalStack","lockElement","htmlElement","tabIndex","getAttribute","HTMLAnchorElement","HTMLButtonElement","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","dataset","kolModal","undefined","set","setAttribute","style","userSelect","unlockElement","value","removeAttribute","delete","unlockLockedElements","forEach","bind","lockFocus","hostElement","excludeElement","HTMLElement","ShadowRoot","shadowRoot","i","children","length","renderModalIfExists","activeElement","has","get","timeout","setTimeout","clearTimeout","focus","size","modalKeys","Array","from","keys","modalRef","_value","display","getDocument","body","maxHeight","overflow","openModal","Log","warn","closeModal","_a","ToasterService","document","queue","Set","isOpen","toastElement","createElement","_on","onClose","next","values","showToast","insertBefore","firstChild","enqueue","data","add","heading","type","innerText","description","WINDOW","DOCUMENT","configKoliBri","window","Window","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","static","msg","isArray","classifier","shield","label","options","handleClassifier","overwriteStyle","forceLog","debug","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/components/toast/toaster.tsx","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { AlertType } from '../alert/types';\n\ntype Toast = {\n\theading: string;\n\tdescription: string;\n\ttype: AlertType;\n};\n\nexport class ToasterService {\n\tprivate readonly toastElement: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tconstructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '3');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1');\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tthis.toastElement.setAttribute('_heading', data.heading);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { ToasterService } from '../components/toast/toaster';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tconst Toaster = new ToasterService(getDocument());\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tObject.defineProperty(KoliBri, 'Toaster', {\n\t\t\tget: function (): ToasterService {\n\t\t\t\treturn Toaster;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.6.0-rc.17\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{i as t,e as o,r as s,g as e,L as r,b as a,f as i,K as l}from"./dev.utils-4290338e.js";import{l as n,n as p,k as c,q as f,t as L,p as m,u as d}from"./prop.validators-601f1068.js";import"./reuse-c2156413.js";import"./a11y.tipps-9f948961.js";import"./index-37b5cbcf.js";function u(t,e){try{Object.defineProperty(l,t,{get:function(){return e}})}catch(e){r.debug(`KoliBri property ${t} is already bind.`)}}const h=(t,e)=>r.debug(`${t} ${e?"":"not "}activated`),v=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",L),u("utils",(function(){return n})),u("parseJson",m),u("stringifyJson",d);const t=e().body,r=e().createElement("svg");if(r.setAttribute("aria-label","KoliBri-DevTools"),r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r.setAttribute("role","toolbar"),r.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),r.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(r),h("Development mode",o()),h("Experimental mode",a()),h("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{v as initialize};
4
+ import{i as t,e as o,r as s,g as e,L as r,b as a,f as i,K as l}from"./dev.utils-e98368e1.js";import{l as n,n as p,k as c,q as f,t as L,p as m,u as d}from"./prop.validators-e3c93395.js";import"./reuse-c2156413.js";import"./a11y.tipps-255c885e.js";import"./index-37b5cbcf.js";function u(t,e){try{Object.defineProperty(l,t,{get:function(){return e}})}catch(e){r.debug(`KoliBri property ${t} is already bind.`)}}const h=(t,e)=>r.debug(`${t} ${e?"":"not "}activated`),v=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",L),u("utils",(function(){return n})),u("parseJson",m),u("stringifyJson",d);const t=e().body,r=e().createElement("svg");if(r.setAttribute("aria-label","KoliBri-DevTools"),r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r.setAttribute("role","toolbar"),r.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),r.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(r),h("Development mode",o()),h("Experimental mode",a()),h("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{v as initialize};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{b as a}from"./prop.validators-601f1068.js";const s=(s,o)=>{a(s,"_ariaExpanded",o)},o=(s,o)=>{a(s,"_disabled",o)};export{o as a,s as v};
4
+ import{b as a}from"./prop.validators-e3c93395.js";const s=(s,o)=>{a(s,"_ariaExpanded",o)},o=(s,o)=>{a(s,"_disabled",o)};export{o as a,s as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{b as o}from"./prop.validators-e3c93395.js";const s=(s,r)=>{o(s,"_hasCloser",r)};export{s as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{b as o}from"./prop.validators-e3c93395.js";const a=(a,r)=>{o(a,"_hideLabel",r)};export{a as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{g as e}from"./index-d8ac1088.js";import{d as n}from"./a11y.tipps-255c885e.js";const i={error:"Fehler",warning:"Warnung",info:"Hinweis",success:"Erfolg",message:"Nachricht",close:"Schließen","form-description":"Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.",of:"von",characters:"Zeichen",new:"Neu","no-entries":"Es sind keine Einträge vorhanden.","change-order":"Sortierung von {{colLabel}} ändern","action-running":"Aktion wird ausgeführt...","action-done":"Aktion abgeschlossen","page-first":"Direkt zur ersten Seite","page-back":"Eine Seite zurück","page-next":"Eine Seite weiter","page-last":"Direkt zur letzten Seite","entries-per-site":"Einträge pro Seite","page-current":"Seite {{page}}","page-selected":"Seite {{page}} ist ausgewählt","page-per-site":"{{entries}} Einträge pro Seite","nav-maximize":"Navigation maximieren","nav-minimize":"Navigation minimieren","logo-description":"Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}","open-link-in-tab":"Der Link wird in einem neuen Tab geöffnet.","kolibri-logo":"Logo von KoliBri","sort-descending":"Spalte {{column}} absteigend sortiert","sort-ascending":"Spalte {{column}} aufsteigend sortiert","sort-none":"Spalte {{column}} nicht sortiert","avatar-alt":"Avatar-Bild von {{name}}"},t={error:"Error",warning:"Warning",info:"Note",success:"Success",message:"Message",close:"Close","form-description":"Form fields marked with an asterisk (*) are mandatory.",of:"of",characters:"characters",new:"New","no-entries":"No entries available.","change-order":"Change order of {{colLabel}}","action-running":"Action is running...","action-done":"Action done","page-first":"Directly to the first page","page-back":"One page back","page-next":"One page further","page-last":"Directly to the last page","entries-per-site":"Entries per page","page-current":"Page {{page}}","page-selected":"Page {{page}} is selected","page-per-site":"{{entries}} entries per page","nav-maximize":"Maximize","nav-minimize":"Minimize","logo-description":"Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}","open-link-in-tab":"The link will open in a new tab.","kolibri-logo":"KoliBri logo","sort-descending":"sorted column {{column}} descending","sort-ascending":"sorted column {{column}} ascending","sort-none":"column {{column}} not sorted","avatar-alt":"Avatar picture of {{name}}"},r=e=>Object.keys(e).reduce(((n,i)=>(n[`kol-${i}`]=e[i],n)),{}),a=new Set([e=>e("en",r(t)),e=>e("de",r(i))]),o=(i,t)=>{const r=e();if(void 0===r)return n("[I18n] I18nService not available! Please call the global register function."),i;let o=r.translate(i,t);return o===i&&(n("[I18n] Locales not initialized! Initialize default locales automatically."),a.forEach((e=>e(((e,n)=>(r.addResourceBundle(e,n),e))))),o=r.translate(i,t)),o};export{o as a,a as t};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["locale_de","error","warning","info","success","message","close","of","characters","new","locale_en","mapLocaleKeys","locale","Object","keys","reduce","a","c","translations","Set","t","translate","key","options","i18n","getI18nService","undefined","devHint","text","forEach","l","addResourceBundle"],"sources":["src/locales/de.ts","src/locales/en.ts","src/i18n.ts"],"sourcesContent":["export default {\n\terror: 'Fehler',\n\twarning: 'Warnung',\n\tinfo: 'Hinweis',\n\tsuccess: 'Erfolg',\n\tmessage: 'Nachricht',\n\tclose: 'Schließen',\n\t'form-description': 'Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.',\n\tof: 'von',\n\tcharacters: 'Zeichen',\n\tnew: 'Neu',\n\t'no-entries': 'Es sind keine Einträge vorhanden.',\n\t'change-order': 'Sortierung von {{colLabel}} ändern',\n\t'action-running': 'Aktion wird ausgeführt...',\n\t'action-done': 'Aktion abgeschlossen',\n\t'page-first': 'Direkt zur ersten Seite',\n\t'page-back': 'Eine Seite zurück',\n\t'page-next': 'Eine Seite weiter',\n\t'page-last': 'Direkt zur letzten Seite',\n\t'entries-per-site': 'Einträge pro Seite',\n\t'page-current': 'Seite {{page}}',\n\t'page-selected': 'Seite {{page}} ist ausgewählt',\n\t'page-per-site': '{{entries}} Einträge pro Seite',\n\t'nav-maximize': 'Navigation maximieren',\n\t'nav-minimize': 'Navigation minimieren',\n\t'logo-description': 'Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}',\n\t'open-link-in-tab': 'Der Link wird in einem neuen Tab geöffnet.',\n\t'kolibri-logo': 'Logo von KoliBri',\n\t'sort-descending': 'Spalte {{column}} absteigend sortiert',\n\t'sort-ascending': 'Spalte {{column}} aufsteigend sortiert',\n\t'sort-none': 'Spalte {{column}} nicht sortiert',\n\t'avatar-alt': 'Avatar-Bild von {{name}}',\n};\n","export default {\n\terror: 'Error',\n\twarning: 'Warning',\n\tinfo: 'Note',\n\tsuccess: 'Success',\n\tmessage: 'Message',\n\tclose: 'Close',\n\t'form-description': 'Form fields marked with an asterisk (*) are mandatory.',\n\tof: 'of',\n\tcharacters: 'characters',\n\tnew: 'New',\n\t'no-entries': 'No entries available.',\n\t'change-order': 'Change order of {{colLabel}}',\n\t'action-running': 'Action is running...',\n\t'action-done': 'Action done',\n\t'page-first': 'Directly to the first page',\n\t'page-back': 'One page back',\n\t'page-next': 'One page further',\n\t'page-last': 'Directly to the last page',\n\t'entries-per-site': 'Entries per page',\n\t'page-current': 'Page {{page}}',\n\t'page-selected': 'Page {{page}} is selected',\n\t'page-per-site': '{{entries}} entries per page',\n\t'nav-maximize': 'Maximize',\n\t'nav-minimize': 'Minimize',\n\t'logo-description': 'Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}',\n\t'open-link-in-tab': 'The link will open in a new tab.',\n\t'kolibri-logo': 'KoliBri logo',\n\t'sort-descending': 'sorted column {{column}} descending',\n\t'sort-ascending': 'sorted column {{column}} ascending',\n\t'sort-none': 'column {{column}} not sorted',\n\t'avatar-alt': 'Avatar picture of {{name}}',\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { getI18nService } from './core';\n/**\n * Issue #2456: Don't use json files\n * - https://github.com/public-ui/kolibri/issues/2456\n * - use instead ts files\n */\nimport locale_de from './locales/de';\nimport locale_en from './locales/en';\nimport { devHint } from './utils/a11y.tipps';\n\ntype ResourcePrefix = 'Kol';\ntype ComponentKeys = keyof typeof locale_de;\n\nconst mapLocaleKeys = (locale: { [K in ComponentKeys]: string }) =>\n\t(Object.keys(locale) as ComponentKeys[]).reduce((a, c) => ((a[`${'kol'}-${c}`] = locale[c]), a), {} as Generic.I18n.Map<ResourcePrefix, ComponentKeys>);\n\nexport const translations = new Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, ResourcePrefix, ComponentKeys>>([\n\t(t: (language: 'en', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('en', mapLocaleKeys(locale_en)),\n\t(t: (language: 'de', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('de', mapLocaleKeys(locale_de)),\n]);\n\ntype Options = {\n\tcount?: number;\n\tplaceholders?: { [K: string]: string };\n};\n\nexport const translate = (key: `${Lowercase<ResourcePrefix>}-${Lowercase<ComponentKeys>}`, options?: Options) => {\n\tconst i18n = getI18nService();\n\tif (i18n === undefined) {\n\t\tdevHint('[I18n] I18nService not available! Please call the global register function.');\n\t\treturn key;\n\t}\n\n\tlet text = i18n.translate(key, options);\n\tif (text === key) {\n\t\tdevHint('[I18n] Locales not initialized! Initialize default locales automatically.');\n\n\t\ttranslations.forEach((t) =>\n\t\t\tt((l, t) => {\n\t\t\t\ti18n.addResourceBundle(l, t);\n\t\t\t\treturn l;\n\t\t\t})\n\t\t);\n\n\t\ttext = i18n.translate(key, options);\n\t}\n\treturn text;\n};\n"],"mappings":";;;qFAAA,MAAAA,EAAe,CACdC,MAAO,SACPC,QAAS,UACTC,KAAM,UACNC,QAAS,SACTC,QAAS,YACTC,MAAO,YACP,mBAAoB,yFACpBC,GAAI,MACJC,WAAY,UACZC,IAAK,MACL,aAAc,oCACd,eAAgB,qCAChB,iBAAkB,4BAClB,cAAe,uBACf,aAAc,0BACd,YAAa,oBACb,YAAa,oBACb,YAAa,2BACb,mBAAoB,qBACpB,eAAgB,iBAChB,gBAAiB,gCACjB,gBAAiB,iCACjB,eAAgB,wBAChB,eAAgB,wBAChB,mBAAoB,4EACpB,mBAAoB,6CACpB,eAAgB,mBAChB,kBAAmB,wCACnB,iBAAkB,yCAClB,YAAa,mCACb,aAAc,4BC/Bf,MAAAC,EAAe,CACdT,MAAO,QACPC,QAAS,UACTC,KAAM,OACNC,QAAS,UACTC,QAAS,UACTC,MAAO,QACP,mBAAoB,yDACpBC,GAAI,KACJC,WAAY,aACZC,IAAK,MACL,aAAc,wBACd,eAAgB,+BAChB,iBAAkB,uBAClB,cAAe,cACf,aAAc,6BACd,YAAa,gBACb,YAAa,mBACb,YAAa,4BACb,mBAAoB,mBACpB,eAAgB,gBAChB,gBAAiB,4BACjB,gBAAiB,+BACjB,eAAgB,WAChB,eAAgB,WAChB,mBAAoB,6EACpB,mBAAoB,mCACpB,eAAgB,eAChB,kBAAmB,sCACnB,iBAAkB,qCAClB,YAAa,+BACb,aAAc,8BChBf,MAAME,EAAiBC,GACrBC,OAAOC,KAAKF,GAA4BG,QAAO,CAACC,EAAGC,KAAQD,EAAE,GAAG,SAASC,KAAOL,EAAOK,GAAKD,IAAI,I,MAErFE,EAAe,IAAIC,IAA8F,CAC5HC,GAA0HA,EAAE,KAAMT,EAAcD,IAChJU,GAA0HA,EAAE,KAAMT,EAAcX,M,MAQrIqB,EAAY,CAACC,EAAiEC,KAC1F,MAAMC,EAAOC,IACb,GAAID,IAASE,UAAW,CACvBC,EAAQ,+EACR,OAAOL,C,CAGR,IAAIM,EAAOJ,EAAKH,UAAUC,EAAKC,GAC/B,GAAIK,IAASN,EAAK,CACjBK,EAAQ,6EAERT,EAAaW,SAAST,GACrBA,GAAE,CAACU,EAAGV,KACLI,EAAKO,kBAAkBD,EAAGV,GAC1B,OAAOU,CAAC,MAIVF,EAAOJ,EAAKH,UAAUC,EAAKC,E,CAE5B,OAAOK,CAAI,S"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{o,p as i,a as n}from"./prop.validators-601f1068.js";import{i as t,b as e,c as l}from"./reuse-c2156413.js";const c=(o,e,i)=>{l(i)?o[e]=i:t(i,1)&&(o[e]={icon:i})},s=(o,e)=>{let i={};if(t(o,1))if("right"===e)i={right:{icon:o}};else i={left:{icon:o}};else"object"==typeof o&&null!==o&&(c(i,"top",o.top),c(i,"right",o.right),c(i,"bottom",o.bottom),c(i,"left",o.left));return i},r=t=>{var o,e,i,n,l,c,a;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icon")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icon"),l=(null===(i=t.nextState)||void 0===i?void 0:i.get("_iconAlign"))||t.state._iconAlign;null===(n=t.nextState)||void 0===n||n.set("_icon",s(o,l))}else if(null===(l=t.nextState)||void 0===l?void 0:l.has("_iconAlign")){const o=t.state._iconAlign;null===(c=t.nextState)||void 0===c||c.set("_icon",{[o]:void 0,[null===(a=t.nextState)||void 0===a?void 0:a.get("_iconAlign")]:t.state._icon[o]})}},f=o=>"object"==typeof o&&null!==o&&(void 0===o.style||e(o.style))&&t(o.icon,1),d=(e,l)=>{o(l,(()=>{try{l=i(l)}catch(t){}n(e,"_icon",(o=>null===o||t(o,1)||"object"==typeof o&&null!==o&&(t(o.left,1)||f(o.left)||t(o.right,1)||f(o.right)||t(o.top,1)||f(o.top)||t(o.bottom,1)||f(o.bottom))),new Set(["KoliBriIcon"]),l,{hooks:{beforePatch:(t,o)=>{null===t&&o.set("_icon",{}),r(e)}},required:!0})}))},a=(t,o)=>{n(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),o,{hooks:{beforePatch:()=>{r(t)}}})};export{f as i,d as v,a as w};
4
+ import{o,p as i,a as n}from"./prop.validators-e3c93395.js";import{i as t,b as e,c as l}from"./reuse-c2156413.js";const c=(o,e,i)=>{l(i)?o[e]=i:t(i,1)&&(o[e]={icon:i})},s=(o,e)=>{let i={};if(t(o,1))if("right"===e)i={right:{icon:o}};else i={left:{icon:o}};else"object"==typeof o&&null!==o&&(c(i,"top",o.top),c(i,"right",o.right),c(i,"bottom",o.bottom),c(i,"left",o.left));return i},r=t=>{var o,e,i,n,l,c,a;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icon")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icon"),l=(null===(i=t.nextState)||void 0===i?void 0:i.get("_iconAlign"))||t.state._iconAlign;null===(n=t.nextState)||void 0===n||n.set("_icon",s(o,l))}else if(null===(l=t.nextState)||void 0===l?void 0:l.has("_iconAlign")){const o=t.state._iconAlign;null===(c=t.nextState)||void 0===c||c.set("_icon",{[o]:void 0,[null===(a=t.nextState)||void 0===a?void 0:a.get("_iconAlign")]:t.state._icon[o]})}},f=o=>"object"==typeof o&&null!==o&&(void 0===o.style||e(o.style))&&t(o.icon,1),d=(e,l)=>{o(l,(()=>{try{l=i(l)}catch(t){}n(e,"_icon",(o=>null===o||t(o,1)||"object"==typeof o&&null!==o&&(t(o.left,1)||f(o.left)||t(o.right,1)||f(o.right)||t(o.top,1)||f(o.top)||t(o.bottom,1)||f(o.bottom))),new Set(["KoliBriIcon"]),l,{hooks:{beforePatch:(t,o)=>{null===t&&o.set("_icon",{}),r(e)}},required:!0})}))},a=(t,o)=>{n(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),o,{hooks:{beforePatch:()=>{r(t)}}})};export{f as i,d as v,a as w};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{w as o}from"./prop.validators-e3c93395.js";const r=(r,s,a)=>{o(r,"_src",s,a)};export{r as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- export{r as register}from"./index-d8ac1088.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund-056aa89a.js";export{T as ToasterService,c as configKoliBri}from"./dev.utils-4290338e.js";export{K as KoliBriDevHelper}from"./prop.validators-601f1068.js";export{t as translations}from"./i18n-6e857b2f.js";import"./index-37b5cbcf.js";import"./reuse-c2156413.js";import"./a11y.tipps-9f948961.js";
4
+ export{r as register}from"./index-d8ac1088.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund-056aa89a.js";export{T as ToasterService,c as configKoliBri}from"./dev.utils-e98368e1.js";export{K as KoliBriDevHelper}from"./prop.validators-e3c93395.js";export{t as translations}from"./i18n-2b2ccdd6.js";import"./index-37b5cbcf.js";import"./reuse-c2156413.js";import"./a11y.tipps-255c885e.js";
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as o}from"./index-2c046ff1.js";import{w as e}from"./button-link-99acae48.js";import{n}from"./dev.utils-4290338e.js";import{w as s}from"./prop.validators-601f1068.js";import"./reuse-c2156413.js";import"./a11y.tipps-9f948961.js";import"./index-37b5cbcf.js";const a=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>abbr{cursor:help}",r=class{constructor(i){t(this,i),this.nonce=n(),this._tooltipAlign="top",this._title=void 0,this.state={_title:"…",_tooltipAlign:"top"}}render(){return i(o,null,i("abbr",{"aria-labelledby":this.nonce,role:"definition",tabindex:"0",title:this.state._title},i("span",{title:""},i("slot",null))),i("kol-tooltip",{_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._title}))}validateTitle(t){s(this,"_title",t,{required:!0})}validateTooltipAlign(t){e(this,"_tooltipAlign",t)}componentWillLoad(){this.validateTitle(this._title),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_title:["validateTitle"],_tooltipAlign:["validateTooltipAlign"]}}};r.style={default:a};export{r as kol_abbr};
4
+ import{r as t,h as i,H as e}from"./index-2c046ff1.js";import{w as o}from"./button-link-e7a5fabf.js";import{n}from"./dev.utils-e98368e1.js";import{w as s}from"./prop.validators-e3c93395.js";import"./reuse-c2156413.js";import"./a11y.tipps-255c885e.js";import"./index-37b5cbcf.js";const a=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>abbr{cursor:help}",r=class{constructor(i){t(this,i),this.nonce=n(),this._tooltipAlign="top",this._title=void 0,this.state={_title:"…",_tooltipAlign:"top"}}render(){return i(e,null,i("abbr",{"aria-labelledby":this.nonce,role:"definition",tabindex:"0",title:this.state._title},i("span",{title:""},i("slot",null))),i("kol-tooltip",{_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._title}))}validateTitle(t){s(this,"_title",t,{required:!0})}validateTooltipAlign(t){o(this,"_tooltipAlign",t)}componentWillLoad(){this.validateTitle(this._title),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_title:["validateTitle"],_tooltipAlign:["validateTooltipAlign"]}}};r.style={default:a};export{r as kol_abbr};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,H as e}from"./index-2c046ff1.js";import{b as n,w as s,s as o}from"./prop.validators-601f1068.js";import{f as a}from"./a11y.tipps-9f948961.js";import{n as r}from"./dev.utils-4290338e.js";import{p as h}from"./reuse-c2156413.js";import{w as l}from"./validation-5300d0a1.js";import"./index-37b5cbcf.js";const d=(t,e)=>{n(t,"_open",e)},c=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}.content{inset:0 0 auto 0;width:100%}.transition{transition:height 0.3s ease-in-out}@media (prefers-reduced-motion){.transition{transition-duration:0s}}";a("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),a("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const u=class{constructor(t){i(this,t),this.nonce=r(),this.contentElement=null,this.contentWrapperElement=null,this.contentObserver=null,this.transition=!1,this.catchContentElement=t=>{t&&(this.contentElement=t)},this.catchContentWrapperElement=t=>{t&&(this.contentWrapperElement=t)},this.onClick=t=>{this._open=!this._open,this.resizeWrapper(),setTimeout((()=>{var e;"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onClick)&&this.state._on.onClick(t,!0===this._open)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"…",_level:1}}resizeWrapper(t){const e=this.contentElement,n=this.contentWrapperElement,i=this.contentObserver;e&&n&&i&&(this._open?(n.style.display="block",setTimeout((()=>{var t;n.style.height=`${null!==(t=null==e?void 0:e.clientHeight)&&void 0!==t?t:0}px`})),t||i.observe(e),n.addEventListener("transitionend",(()=>{n.style.overflow=""}),{once:!0})):(n.style.overflow="hidden",i.unobserve(e),n.style.height="0",this.transition?n.addEventListener("transitionend",(()=>{n.style.display="none"}),{once:!0}):n.style.display="none"))}render(){return t(e,null,t("div",{class:{accordion:!0,open:!0===this.state._open,close:!0!==this.state._open}},t("kol-heading-wc",{_label:"",_level:this.state._level},t("kol-button-wc",{_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icon:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._heading,_on:{onClick:this.onClick}})),t("div",{class:"header"},t("slot",{name:"header"})),t("div",{ref:this.catchContentWrapperElement,class:{wrapper:!0,transition:this.transition}},t("div",{ref:this.catchContentElement,"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce},t("slot",{name:"content"})," ",t("slot",null)))))}validateHeading(t){s(this,"_heading",t,{required:!0})}validateLevel(t){l(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onClick&&o(this,"_on",t)}validateOpen(t){d(this,t)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open),"test"!==h&&(this.contentObserver=new ResizeObserver(this.resizeWrapper.bind(this))),setTimeout((()=>{this.contentObserver&&this.contentElement&&this.contentObserver.observe(this.contentElement)})),setTimeout((()=>{this.transition=!0}),200)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};u.style={default:c};export{u as kol_accordion};
4
+ import{r as i,h as t,H as e}from"./index-2c046ff1.js";import{b as n,w as s,s as o}from"./prop.validators-e3c93395.js";import{f as a}from"./a11y.tipps-255c885e.js";import{n as r}from"./dev.utils-e98368e1.js";import{p as h}from"./reuse-c2156413.js";import{w as l}from"./validation-a9f13bf5.js";import"./index-37b5cbcf.js";const d=(t,e)=>{n(t,"_open",e)},c=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}.content{inset:0 0 auto 0;width:100%}.transition{transition:height 0.3s ease-in-out}@media (prefers-reduced-motion){.transition{transition-duration:0s}}";a("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),a("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const u=class{constructor(t){i(this,t),this.nonce=r(),this.contentElement=null,this.contentWrapperElement=null,this.contentObserver=null,this.transition=!1,this.catchContentElement=t=>{t&&(this.contentElement=t)},this.catchContentWrapperElement=t=>{t&&(this.contentWrapperElement=t)},this.onClick=t=>{this._open=!this._open,this.resizeWrapper(),setTimeout((()=>{var e;"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onClick)&&this.state._on.onClick(t,!0===this._open)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"…",_level:1}}resizeWrapper(t){const e=this.contentElement,n=this.contentWrapperElement,i=this.contentObserver;e&&n&&i&&(this._open?(n.style.display="block",setTimeout((()=>{var t;n.style.height=`${null!==(t=null==e?void 0:e.clientHeight)&&void 0!==t?t:0}px`})),t||i.observe(e),n.addEventListener("transitionend",(()=>{n.style.overflow=""}),{once:!0})):(n.style.overflow="hidden",i.unobserve(e),n.style.height="0",this.transition?n.addEventListener("transitionend",(()=>{n.style.display="none"}),{once:!0}):n.style.display="none"))}render(){return t(e,null,t("div",{class:{accordion:!0,open:!0===this.state._open,close:!0!==this.state._open}},t("kol-heading-wc",{_label:"",_level:this.state._level},t("kol-button-wc",{_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icon:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._heading,_on:{onClick:this.onClick}})),t("div",{class:"header"},t("slot",{name:"header"})),t("div",{ref:this.catchContentWrapperElement,class:{wrapper:!0,transition:this.transition}},t("div",{ref:this.catchContentElement,"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce},t("slot",{name:"content"})," ",t("slot",null)))))}validateHeading(t){s(this,"_heading",t,{required:!0})}validateLevel(t){l(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onClick&&o(this,"_on",t)}validateOpen(t){d(this,t)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open),"test"!==h&&(this.contentObserver=new ResizeObserver(this.resizeWrapper.bind(this))),setTimeout((()=>{this.contentObserver&&this.contentElement&&this.contentObserver.observe(this.contentElement)})),setTimeout((()=>{this.transition=!0}),200)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};u.style={default:c};export{u as kol_accordion};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,H as s,F as e}from"./index-2c046ff1.js";import{a}from"./i18n-6e857b2f.js";import{v as o}from"./has-closer-62a48dbd.js";import{L as n}from"./dev.utils-4290338e.js";import{b as l,w as r,s as h,a as d}from"./prop.validators-601f1068.js";import{w as c}from"./validation-5300d0a1.js";import"./index-d8ac1088.js";import"./index-37b5cbcf.js";import"./a11y.tipps-9f948961.js";import"./reuse-c2156413.js";const u=i=>t("kol-icon",{class:"heading-icon",_ariaLabel:"string"==typeof i.heading&&i.heading.length>0?"":i.ariaLabel,_icon:i.icon}),f=i=>{switch(i.type){case"error":return t(u,{ariaLabel:a("kol-error"),icon:"codicon codicon-error",heading:i.heading});case"info":return t(u,{ariaLabel:a("kol-info"),icon:"codicon codicon-info",heading:i.heading});case"warning":return t(u,{ariaLabel:a("kol-warning"),icon:"codicon codicon-warning",heading:i.heading});case"success":return t(u,{ariaLabel:a("kol-success"),icon:"codicon codicon-pass",heading:i.heading});default:return t(u,{ariaLabel:a("kol-message"),icon:"codicon codicon-comment",heading:i.heading})}},v=class{constructor(t){i(this,t),this.close=()=>{var t;void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=t=>"object"==typeof t&&null!==t&&"function"==typeof t.onClose,this._alert=!1,this._hasCloser=!1,this._heading=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){var i;if(this.state._alert){try{n.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(i){n.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return t(s,{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},t("div",{class:"heading"},t(f,{heading:this.state._heading,type:this.state._type}),t("div",null,"string"==typeof this.state._heading&&(null===(i=this.state._heading)||void 0===i?void 0:i.length)>0&&t("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),"msg"===this._variant&&t("div",{class:"content"},t("slot",null))),this.state._hasCloser&&t("kol-button-wc",{class:"close",_hideLabel:!0,_icon:{left:{icon:"codicon codicon-close"}},_label:a("kol-close"),_on:this.on,_tooltipAlign:"left"})),"card"===this._variant&&t("div",{class:"content"},t("slot",null)))}validateAlert(t){l(this,"_alert",t)}validateHasCloser(t){o(this,t)}validateHeading(t){r(this,"_heading",t)}validateLevel(t){c(this,t)}validateOn(t){this.validateOnValue(t)&&h(this,"_on",{onClose:t.onClose})}validateType(t){d(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}validateVariant(t){d(this,"_variant",(t=>"card"===t||"msg"===t),new Set("AlertVariant {card, msg}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateType(this._type),this.validateVariant(this._variant)}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_type:["validateType"],_variant:["validateVariant"]}}},p=class{constructor(t){i(this,t),this._alert=!0,this._currentLength=void 0,this._disabled=!1,this._error="",this._hasCounter=void 0,this._hideLabel=!1,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._maxLength=void 0,this._readOnly=!1,this._renderNoLabel=!1,this._required=!1,this._slotName=void 0,this._smartButton=void 0,this._touched=!1}render(){var i,o,n,l;const r="string"==typeof this._error&&this._error.length>0&&!0===this._touched,h="string"==typeof this._hint&&this._hint.length>0,d=!0===this._hideLabel&&!0!==this._required,_=this._slotName?this._slotName:"input";return t(s,{class:{disabled:!0===this._disabled,error:!0===r,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&t("label",{id:`${this._id}-label`,hidden:d,htmlFor:this._id},t("span",null,t("slot",{name:"label"}))),h&&t("span",{class:"hint",id:`${this._id}-hint`},this._hint),t("div",{class:{input:!0,"icon-left":"object"==typeof(null===(i=this._icon)||void 0===i?void 0:i.left),"icon-right":"object"==typeof(null===(o=this._icon)||void 0===o?void 0:o.right)}},(null===(n=this._icon)||void 0===n?void 0:n.left)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}),t("slot",{name:_}),"object"==typeof this._smartButton&&null!==this._smartButton&&t("kol-button-wc",{_customClass:this._smartButton._customClass,_disabled:this._smartButton._disabled,_icon:this._smartButton._icon,_hideLabel:!0,_id:this._smartButton._id,_label:this._smartButton._label,_on:this._smartButton._on,_tooltipAlign:this._smartButton._tooltipAlign,_variant:this._smartButton._variant}),(null===(l=this._icon)||void 0===l?void 0:l.right)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon})),r&&t("kol-alert",{class:"error",id:`${this._id}-error`,_alert:this._alert,_type:"error",_variant:"msg"},this._error),Array.isArray(this._list)&&this._list.length>0&&t("datalist",{id:`${this._id}-list`},this._list.map((i=>t("option",{value:i})))),this._hasCounter&&t("span",{"aria-atomic":"true","aria-live":"polite"},this._currentLength,this._maxLength&&t(e,null,t("span",{"aria-label":a("kol-of"),role:"img"},"/"),this._maxLength)," ",t("span",null,a("kol-characters"))))}};export{v as kol_alert_wc,p as kol_input};
4
+ import{r as i,h as t,H as s,F as e}from"./index-2c046ff1.js";import{a}from"./i18n-2b2ccdd6.js";import{v as o}from"./has-closer-4415fbda.js";import{L as n}from"./dev.utils-e98368e1.js";import{b as l,w as r,s as h,a as d}from"./prop.validators-e3c93395.js";import{w as c}from"./validation-a9f13bf5.js";import"./index-d8ac1088.js";import"./index-37b5cbcf.js";import"./a11y.tipps-255c885e.js";import"./reuse-c2156413.js";const u=i=>t("kol-icon",{class:"heading-icon",_ariaLabel:"string"==typeof i.heading&&i.heading.length>0?"":i.ariaLabel,_icon:i.icon}),f=i=>{switch(i.type){case"error":return t(u,{ariaLabel:a("kol-error"),icon:"codicon codicon-error",heading:i.heading});case"info":return t(u,{ariaLabel:a("kol-info"),icon:"codicon codicon-info",heading:i.heading});case"warning":return t(u,{ariaLabel:a("kol-warning"),icon:"codicon codicon-warning",heading:i.heading});case"success":return t(u,{ariaLabel:a("kol-success"),icon:"codicon codicon-pass",heading:i.heading});default:return t(u,{ariaLabel:a("kol-message"),icon:"codicon codicon-comment",heading:i.heading})}},v=class{constructor(t){i(this,t),this.close=()=>{var t;void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=t=>"object"==typeof t&&null!==t&&"function"==typeof t.onClose,this._alert=!1,this._hasCloser=!1,this._heading=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){var i;if(this.state._alert){try{n.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(i){n.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return t(s,{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},t("div",{class:"heading"},t(f,{heading:this.state._heading,type:this.state._type}),t("div",null,"string"==typeof this.state._heading&&(null===(i=this.state._heading)||void 0===i?void 0:i.length)>0&&t("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),"msg"===this._variant&&t("div",{class:"content"},t("slot",null))),this.state._hasCloser&&t("kol-button-wc",{class:"close",_hideLabel:!0,_icon:{left:{icon:"codicon codicon-close"}},_label:a("kol-close"),_on:this.on,_tooltipAlign:"left"})),"card"===this._variant&&t("div",{class:"content"},t("slot",null)))}validateAlert(t){l(this,"_alert",t)}validateHasCloser(t){o(this,t)}validateHeading(t){r(this,"_heading",t)}validateLevel(t){c(this,t)}validateOn(t){this.validateOnValue(t)&&h(this,"_on",{onClose:t.onClose})}validateType(t){d(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}validateVariant(t){d(this,"_variant",(t=>"card"===t||"msg"===t),new Set("AlertVariant {card, msg}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateType(this._type),this.validateVariant(this._variant)}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_type:["validateType"],_variant:["validateVariant"]}}},p=class{constructor(t){i(this,t),this._alert=!0,this._currentLength=void 0,this._disabled=!1,this._error="",this._hasCounter=void 0,this._hideLabel=!1,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._maxLength=void 0,this._readOnly=!1,this._renderNoLabel=!1,this._required=!1,this._slotName=void 0,this._smartButton=void 0,this._touched=!1}render(){var i,o,n,l;const r="string"==typeof this._error&&this._error.length>0&&!0===this._touched,h="string"==typeof this._hint&&this._hint.length>0,d=!0===this._hideLabel&&!0!==this._required,_=this._slotName?this._slotName:"input";return t(s,{class:{disabled:!0===this._disabled,error:!0===r,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&t("label",{id:`${this._id}-label`,hidden:d,htmlFor:this._id},t("span",null,t("slot",{name:"label"}))),h&&t("span",{class:"hint",id:`${this._id}-hint`},this._hint),t("div",{class:{input:!0,"icon-left":"object"==typeof(null===(i=this._icon)||void 0===i?void 0:i.left),"icon-right":"object"==typeof(null===(o=this._icon)||void 0===o?void 0:o.right)}},(null===(n=this._icon)||void 0===n?void 0:n.left)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}),t("slot",{name:_}),"object"==typeof this._smartButton&&null!==this._smartButton&&t("kol-button-wc",{_customClass:this._smartButton._customClass,_disabled:this._smartButton._disabled,_icon:this._smartButton._icon,_hideLabel:!0,_id:this._smartButton._id,_label:this._smartButton._label,_on:this._smartButton._on,_tooltipAlign:this._smartButton._tooltipAlign,_variant:this._smartButton._variant}),(null===(l=this._icon)||void 0===l?void 0:l.right)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon})),r&&t("kol-alert",{class:"error",id:`${this._id}-error`,_alert:this._alert,_type:"error",_variant:"msg"},this._error),Array.isArray(this._list)&&this._list.length>0&&t("datalist",{id:`${this._id}-list`},this._list.map((i=>t("option",{value:i})))),this._hasCounter&&t("span",{"aria-atomic":"true","aria-live":"polite"},this._currentLength,this._maxLength&&t(e,null,t("span",{"aria-label":a("kol-of"),role:"img"},"/"),this._maxLength)," ",t("span",null,a("kol-characters"))))}};export{v as kol_alert_wc,p as kol_input};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as s,h as t,H as i}from"./index-2c046ff1.js";import{v as a}from"./label-223fef8f.js";import{v as r}from"./image-source-059b0003.js";import{a as e}from"./i18n-6e857b2f.js";import"./a11y.tipps-9f948961.js";import"./dev.utils-4290338e.js";import"./reuse-c2156413.js";import"./prop.validators-601f1068.js";import"./index-37b5cbcf.js";import"./index-d8ac1088.js";const o=t=>0===t.length?"":t[0].toUpperCase(),n=t=>{const a=t.split(/\s+/),s=a.at(0),e=a.at(-1);return a.length>=2&&s&&e?`${o(s)}${o(e)}`:o(t)},c=class{constructor(t){s(this,t),this._src=void 0,this._label=void 0,this.state={_src:"",_label:""}}render(){return t(i,null,t("div",{"aria-description":this.state._label,class:"container"},this.state._src?t("kol-image",{_alt:e("kol-avatar-alt",{placeholders:{name:this.state._label}}),_src:this.state._src,class:"image"}):t("span",{"aria-hidden":"true",class:"initials"},n(this.state._label))))}validateSrc(t){r(this,t)}validateLabel(t){a(this,t)}componentWillLoad(){this.validateSrc(this._src),this.validateLabel(this._label)}static get watchers(){return{_src:["validateSrc"],_label:["validateLabel"]}}};export{c as kol_avatar_wc};
4
+ import{r as s,h as t,H as i}from"./index-2c046ff1.js";import{v as a}from"./label-35927418.js";import{v as r}from"./image-source-a6d9c13f.js";import{a as e}from"./i18n-2b2ccdd6.js";import"./a11y.tipps-255c885e.js";import"./dev.utils-e98368e1.js";import"./reuse-c2156413.js";import"./prop.validators-e3c93395.js";import"./index-37b5cbcf.js";import"./index-d8ac1088.js";const c=t=>0===t.length?"":t[0].toUpperCase(),o=t=>{const a=t.split(/\s+/),s=a.at(0),e=a.at(-1);return a.length>=2&&s&&e?`${c(s)}${c(e)}`:c(t)},n=class{constructor(t){s(this,t),this._src=void 0,this._label=void 0,this.state={_src:"",_label:""}}render(){return t(i,null,t("div",{"aria-description":this.state._label,class:"container"},this.state._src?t("kol-image",{_alt:e("kol-avatar-alt",{placeholders:{name:this.state._label}}),_src:this.state._src,class:"image"}):t("span",{"aria-hidden":"true",class:"initials"},o(this.state._label))))}validateSrc(t){r(this,t)}validateLabel(t){a(this,t)}componentWillLoad(){this.validateSrc(this._src),this.validateLabel(this._label)}static get watchers(){return{_src:["validateSrc"],_label:["validateLabel"]}}};export{n as kol_avatar_wc};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as o}from"./index-2c046ff1.js";import{h as s,v as e}from"./color-408da8e8.js";import{v as a}from"./label-223fef8f.js";import{f as n,a as r}from"./a11y.tipps-9f948961.js";import{n as l}from"./dev.utils-4290338e.js";import{o as h,p as d,s as c}from"./prop.validators-601f1068.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const p=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>span{display:inline-flex;place-items:center}:host>span>kol-button-wc button{color:inherit}";n("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const f=class{constructor(o){t(this,o),this.bgColorStr="#000",this.colorStr="#fff",this.id=l(),this.handleColorChange=t=>{const o=s(t);this.bgColorStr=o.backgroundColor,this.colorStr=o.foregroundColor},this._color="#000",this._hideLabel=!1,this._icon=void 0,this._iconOnly=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"},_label:"…"}}render(){return i(o,null,i("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},i("kol-span-wc",{id:this.id,_icon:this._icon,_hideLabel:this._hideLabel||this._iconOnly,_label:this.state._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&i("kol-button-wc",{_ariaControls:this.id,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_hideLabel:!0,_icon:this.state._smartButton._icon,_id:this.state._smartButton._id,_label:this.state._smartButton._label,_on:this.state._smartButton._on,_tooltipAlign:this.state._smartButton._tooltipAlign,_variant:this.state._smartButton._variant})))}validateColor(t){e(this,t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateLabel(t){a(this,t,{hooks:{afterPatch:t=>{"string"==typeof t&&t.length>32&&r(`[KolBadge] The label is too long for a badge (${t.length} > 32).`)}}})}validateSmartButton(t){h(t,(()=>{try{t=d(t)}catch(t){}c(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateLabel(this._label),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_label:["validateLabel"],_smartButton:["validateSmartButton"]}}};f.style={default:p};export{f as kol_badge};
4
+ import{r as t,h as i,H as o}from"./index-2c046ff1.js";import{h as s,v as e}from"./color-b194e076.js";import{v as a}from"./label-35927418.js";import{f as n,a as r}from"./a11y.tipps-255c885e.js";import{n as l}from"./dev.utils-e98368e1.js";import{o as h,p as c,s as d}from"./prop.validators-e3c93395.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const p=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>span{display:inline-flex;place-items:center}:host>span>kol-button-wc button{color:inherit}";n("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const u=class{constructor(o){t(this,o),this.bgColorStr="#000",this.colorStr="#fff",this.id=l(),this.handleColorChange=t=>{const o=s(t);this.bgColorStr=o.backgroundColor,this.colorStr=o.foregroundColor},this._color="#000",this._hideLabel=!1,this._icon=void 0,this._iconOnly=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"},_label:"…"}}render(){return i(o,null,i("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},i("kol-span-wc",{id:this.id,_icon:this._icon,_hideLabel:this._hideLabel||this._iconOnly,_label:this.state._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&i("kol-button-wc",{_ariaControls:this.id,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_hideLabel:!0,_icon:this.state._smartButton._icon,_id:this.state._smartButton._id,_label:this.state._smartButton._label,_on:this.state._smartButton._on,_tooltipAlign:this.state._smartButton._tooltipAlign,_variant:this.state._smartButton._variant})))}validateColor(t){e(this,t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateLabel(t){a(this,t,{hooks:{afterPatch:t=>{"string"==typeof t&&t.length>32&&r(`[KolBadge] The label is too long for a badge (${t.length} > 32).`)}}})}validateSmartButton(t){h(t,(()=>{try{t=c(t)}catch(t){}d(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateLabel(this._label),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_label:["validateLabel"],_smartButton:["validateSmartButton"]}}};u.style={default:p};export{u as kol_badge};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,F as e,H as n}from"./index-2c046ff1.js";import{v as o}from"./label-223fef8f.js";import{b as a}from"./a11y.tipps-9f948961.js";import{w as s}from"./validation-4acc18ad.js";import"./prop.validators-601f1068.js";import"./dev.utils-4290338e.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const l=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}li,ul{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator):before{content:'\\f054';font-family:'Font Awesome 6 Free'}",r=class{constructor(a){i(this,a),this.renderLink=(i,a)=>{const n=this.state._links.length-1,l=i._iconOnly||i._hideLabel;return t("li",{key:a},0!==a&&t("kol-icon",{_label:"",_icon:"codicon codicon-chevron-right"}),a===n?t("span",null,l?t("kol-icon",{_label:i._label,_icon:"string"==typeof i._icon?i._icon:"codicon codicon-symbol-event"}):t(e,null,i._label)):t("kol-link",Object.assign({},i)))},this._ariaLabel=void 0,this._label=void 0,this._links=void 0,this.state={_label:"…",_links:[]}}render(){return t(n,null,t("nav",{"aria-label":this.state._label},t("ul",null,0===this.state._links.length&&t("li",null,t("kol-icon",{_label:"",_icon:"codicon codicon-home"}),"…"),this.state._links.map(this.renderLink))))}validateAriaLabel(i){this.validateLabel(i)}validateLabel(i){o(this,i),a(i)}validateLinks(i){s("KolBreadcrumb",this,i)}componentWillLoad(){this.validateLabel(this._label||this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_label:["validateLabel"],_links:["validateLinks"]}}};r.style={default:l};export{r as kol_breadcrumb};
4
+ import{r as i,h as t,F as e,H as n}from"./index-2c046ff1.js";import{v as o}from"./label-35927418.js";import{b as a}from"./a11y.tipps-255c885e.js";import{w as s}from"./validation-bbab8795.js";import"./prop.validators-e3c93395.js";import"./dev.utils-e98368e1.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const l=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}li,ul{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator):before{content:'\\f054';font-family:'Font Awesome 6 Free'}",r=class{constructor(a){i(this,a),this.renderLink=(i,a)=>{const n=this.state._links.length-1,l=i._iconOnly||i._hideLabel;return t("li",{key:a},0!==a&&t("kol-icon",{_label:"",_icon:"codicon codicon-chevron-right"}),a===n?t("span",null,l?t("kol-icon",{_label:i._label,_icon:"string"==typeof i._icon?i._icon:"codicon codicon-symbol-event"}):t(e,null,i._label)):t("kol-link",Object.assign({},i)))},this._ariaLabel=void 0,this._label=void 0,this._links=void 0,this.state={_label:"…",_links:[]}}render(){return t(n,null,t("nav",{"aria-label":this.state._label},t("ul",null,0===this.state._links.length&&t("li",null,t("kol-icon",{_label:"",_icon:"codicon codicon-home"}),"…"),this.state._links.map(this.renderLink))))}validateAriaLabel(i){this.validateLabel(i)}validateLabel(i){o(this,i),a(i)}validateLinks(i){s("KolBreadcrumb",this,i)}componentWillLoad(){this.validateLabel(this._label||this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_label:["validateLabel"],_links:["validateLinks"]}}};r.style={default:l};export{r as kol_breadcrumb};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as s,g as e}from"./index-2c046ff1.js";import{w as a}from"./button-link-99acae48.js";import{v as l,a as n}from"./disabled-559fd371.js";import{v as h}from"./hide-label-9248468d.js";import{v as d,w as r}from"./icon-e03e73f6.js";import{a as o}from"./label-223fef8f.js";import{g as c,h as u}from"./a11y.tipps-9f948961.js";import{n as f}from"./dev.utils-4290338e.js";import{f as v,j as _,h as p,w as b,a as m,b as y,s as g}from"./prop.validators-601f1068.js";import{a as j}from"./reuse-c2156413.js";import{v as A}from"./tab-index-fc60df7a.js";import{p as C,a as L}from"./controller-b036f128.js";import{a as w,w as x}from"./controller-6ed90cd7.js";import{w as I}from"./validation-5300d0a1.js";import"./index-37b5cbcf.js";const k=class{constructor(a){t(this,a),this.nonce=f(),this.catchRef=a=>{this.ref=a,j(this.host,this.ref)},this.onClick=a=>{var t,e;"submit"===this.state._type?C({form:this.host,ref:this.ref}):"reset"===this.state._type?L({form:this.host,ref:this.ref}):"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)?(a.stopPropagation(),v(a,this.ref),null===(e=this.state._on)||void 0===e||e.onClick(a,this.state._value)):c("There was no button click callback configured! (_on.onClick)")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._hideLabel=!1,this._icon=void 0,this._iconAlign=void 0,this._iconOnly=void 0,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0,this._variant="normal",this.state={_icon:{},_label:!1,_on:{},_type:"button",_variant:"normal"}}render(){const a=!1===this.state._label;return i(s,null,i("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":_(this.state._ariaCurrent),"aria-expanded":p(this.state._ariaExpanded),"aria-labelledby":this.state._hideLabel?this.nonce:void 0,"aria-selected":_(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._hideLabel,"hide-label":!0===this.state._hideLabel},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),i("kol-span-wc",{_icon:this.state._icon,_hideLabel:this.state._hideLabel,_label:!a&&this.state._label},i("slot",{name:"expert",slot:"expert"}))),i("kol-tooltip",{"aria-hidden":"true",hidden:a||!this.state._hideLabel,_align:this.state._tooltipAlign,_id:this.nonce,_label:"string"==typeof this.state._label?this.state._label:""}))}validateAccessKey(a){b(this,"_accessKey",a)}validateAriaControls(a){b(this,"_ariaControls",a)}validateAriaCurrent(a){m(this,"_ariaControls",(a=>!0===a||"date"===a||"location"===a||"page"===a||"step"===a||"time"===a),new Set(["boolean","String {data, location, page, step, time}"]),a)}validateAriaExpanded(a){l(this,a)}validateAriaLabel(a){this.validateLabel(a)}validateAriaSelected(a){y(this,"_ariaSelected",a)}validateCustomClass(a){b(this,"_customClass",a,{defaultValue:void 0})}validateDisabled(a){n(this,a),!0===a&&u()}validateHideLabel(a){h(this,a)}validateIcon(a){d(this,a)}validateIconAlign(a){r(this,a)}validateIconOnly(a){this.validateHideLabel(a)}validateId(a){b(this,"_id",a)}validateLabel(a){o(this,a)}validateOn(a){"object"==typeof a&&null!==a&&(this.state=Object.assign(Object.assign({},this.state),{_on:a}))}validateRole(a){b(this,"_role",a)}validateTabIndex(a){A(this,a)}validateTooltipAlign(t){a(this,"_tooltipAlign",t)}validateType(a){w(this,"_type",a)}validateValue(a){g(this,"_value",a)}validateVariant(a){x(this,"_variant",a)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateHideLabel(this._hideLabel||this._iconOnly),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateId(this._id),this.validateLabel(this._label||this._ariaLabel),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return e(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_hideLabel:["validateHideLabel"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},O=class{constructor(a){t(this,a),this.renderHeadline=(a,t)=>{switch(t){case 1:return i("h1",{class:"headline"},a,i("slot",null));case 2:return i("h2",{class:"headline"},a,i("slot",null));case 3:return i("h3",{class:"headline"},a,i("slot",null));case 4:return i("h4",{class:"headline"},a,i("slot",null));case 5:return i("h5",{class:"headline"},a,i("slot",null));case 6:return i("h6",{class:"headline"},a,i("slot",null));default:return i("strong",{class:"headline"},a,i("slot",null))}},this.renderSecondaryHeadline=(a,t)=>{switch(t){case 1:return i("span",{class:"secondary-headline"},a);case 2:return i("h2",{class:"secondary-headline"},a);case 3:return i("h3",{class:"secondary-headline"},a);case 4:return i("h4",{class:"secondary-headline"},a);case 5:return i("h5",{class:"secondary-headline"},a);case 6:return i("h6",{class:"secondary-headline"},a);default:return i("strong",{class:"secondary-headline"},a)}},this._label=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_label:!1,_level:1}}validateLabel(a){o(this,a)}validateLevel(a){I(this,a)}validateSecondaryHeadline(a){b(this,"_secondaryHeadline",a)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return i(s,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?i("hgroup",null,this.renderHeadline(this.state._label,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._label,this.state._level))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}};export{k as kol_button_wc,O as kol_heading_wc};
4
+ import{r as t,h as i,H as e,g as s}from"./index-2c046ff1.js";import{w as a}from"./button-link-e7a5fabf.js";import{v as l,a as n}from"./disabled-614216e9.js";import{v as h}from"./hide-label-53a9f681.js";import{v as d,w as r}from"./icon-ae60c121.js";import{a as o}from"./label-35927418.js";import{g as c,h as u}from"./a11y.tipps-255c885e.js";import{n as f}from"./dev.utils-e98368e1.js";import{f as v,j as _,h as b,w as p,a as m,b as y,s as g}from"./prop.validators-e3c93395.js";import{a as j}from"./reuse-c2156413.js";import{v as A}from"./tab-index-841e81ba.js";import{p as C,a as L}from"./controller-d9c05ca2.js";import{a as w,w as x}from"./controller-cbd99b24.js";import{w as I}from"./validation-a9f13bf5.js";import"./index-37b5cbcf.js";const k=class{constructor(a){t(this,a),this.nonce=f(),this.catchRef=a=>{this.ref=a,j(this.host,this.ref)},this.onClick=a=>{var t,e;"submit"===this.state._type?C({form:this.host,ref:this.ref}):"reset"===this.state._type?L({form:this.host,ref:this.ref}):"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)?(a.stopPropagation(),v(a,this.ref),null===(e=this.state._on)||void 0===e||e.onClick(a,this.state._value)):c("There was no button click callback configured! (_on.onClick)")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._hideLabel=!1,this._icon=void 0,this._iconAlign=void 0,this._iconOnly=void 0,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0,this._variant="normal",this.state={_icon:{},_label:!1,_on:{},_type:"button",_variant:"normal"}}render(){const a=!1===this.state._label;return i(e,null,i("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":_(this.state._ariaCurrent),"aria-expanded":b(this.state._ariaExpanded),"aria-labelledby":this.state._hideLabel?this.nonce:void 0,"aria-selected":_(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._hideLabel,"hide-label":!0===this.state._hideLabel},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),i("kol-span-wc",{_icon:this.state._icon,_hideLabel:this.state._hideLabel,_label:!a&&this.state._label},i("slot",{name:"expert",slot:"expert"}))),i("kol-tooltip",{"aria-hidden":"true",hidden:a||!this.state._hideLabel,_align:this.state._tooltipAlign,_id:this.nonce,_label:"string"==typeof this.state._label?this.state._label:""}))}validateAccessKey(a){p(this,"_accessKey",a)}validateAriaControls(a){p(this,"_ariaControls",a)}validateAriaCurrent(a){m(this,"_ariaControls",(a=>!0===a||"date"===a||"location"===a||"page"===a||"step"===a||"time"===a),new Set(["boolean","String {data, location, page, step, time}"]),a)}validateAriaExpanded(a){l(this,a)}validateAriaLabel(a){this.validateLabel(a)}validateAriaSelected(a){y(this,"_ariaSelected",a)}validateCustomClass(a){p(this,"_customClass",a,{defaultValue:void 0})}validateDisabled(a){n(this,a),!0===a&&u()}validateHideLabel(a){h(this,a)}validateIcon(a){d(this,a)}validateIconAlign(a){r(this,a)}validateIconOnly(a){this.validateHideLabel(a)}validateId(a){p(this,"_id",a)}validateLabel(a){o(this,a)}validateOn(a){"object"==typeof a&&null!==a&&(this.state=Object.assign(Object.assign({},this.state),{_on:a}))}validateRole(a){p(this,"_role",a)}validateTabIndex(a){A(this,a)}validateTooltipAlign(t){a(this,"_tooltipAlign",t)}validateType(a){w(this,"_type",a)}validateValue(a){g(this,"_value",a)}validateVariant(a){x(this,"_variant",a)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateHideLabel(this._hideLabel||this._iconOnly),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateId(this._id),this.validateLabel(this._label||this._ariaLabel),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return s(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_hideLabel:["validateHideLabel"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},O=class{constructor(a){t(this,a),this.renderHeadline=(a,t)=>{switch(t){case 1:return i("h1",{class:"headline"},a,i("slot",null));case 2:return i("h2",{class:"headline"},a,i("slot",null));case 3:return i("h3",{class:"headline"},a,i("slot",null));case 4:return i("h4",{class:"headline"},a,i("slot",null));case 5:return i("h5",{class:"headline"},a,i("slot",null));case 6:return i("h6",{class:"headline"},a,i("slot",null));default:return i("strong",{class:"headline"},a,i("slot",null))}},this.renderSecondaryHeadline=(a,t)=>{switch(t){case 1:return i("span",{class:"secondary-headline"},a);case 2:return i("h2",{class:"secondary-headline"},a);case 3:return i("h3",{class:"secondary-headline"},a);case 4:return i("h4",{class:"secondary-headline"},a);case 5:return i("h5",{class:"secondary-headline"},a);case 6:return i("h6",{class:"secondary-headline"},a);default:return i("strong",{class:"secondary-headline"},a)}},this._label=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_label:!1,_level:1}}validateLabel(a){o(this,a)}validateLevel(a){I(this,a)}validateSecondaryHeadline(a){p(this,"_secondaryHeadline",a)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return i(e,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?i("hgroup",null,this.renderHeadline(this.state._label,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._label,this.state._level))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}};export{k as kol_button_wc,O as kol_heading_wc};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as e}from"./index-2c046ff1.js";import{b as a,w as s}from"./prop.validators-601f1068.js";import{w as n}from"./validation-5300d0a1.js";import"./a11y.tipps-9f948961.js";import"./dev.utils-4290338e.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const o=(t,e)=>{a(t,"_hasFooter",e)},r=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>div.card{height:100%}",l=class{constructor(e){t(this,e),this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._level=1,this.state={_heading:"…"}}render(){return i(e,null,i("div",{class:"card"},i("div",{class:"header"},i("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),i("slot",{name:"header"})),i("div",{class:"content"},i("slot",{name:"content"})," ",i("slot",null)),this.state._hasFooter&&i("div",{class:"footer"},i("slot",{name:"footer"}))))}validateHasFooter(t){o(this,t)}validateHeading(t){s(this,"_heading",t,{required:!0})}validateHeadline(t){this.validateHeading(t)}validateLevel(t){n(this,t)}componentWillLoad(){this.validateHasFooter(this._hasFooter),this.validateHeading(this._heading||this._headline),this.validateLevel(this._level)}static get watchers(){return{_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_level:["validateLevel"]}}};l.style={default:r};export{l as kol_card};
4
+ import{r as t,h as e,H as i}from"./index-2c046ff1.js";import{b as a,w as s}from"./prop.validators-e3c93395.js";import{w as n}from"./validation-a9f13bf5.js";import"./a11y.tipps-255c885e.js";import"./dev.utils-e98368e1.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const o=(e,t)=>{a(e,"_hasFooter",t)},r=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>div.card{height:100%}",l=class{constructor(e){t(this,e),this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._level=1,this.state={_heading:"…"}}render(){return e(i,null,e("div",{class:"card"},e("div",{class:"header"},e("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),e("slot",{name:"header"})),e("div",{class:"content"},e("slot",{name:"content"})," ",e("slot",null)),this.state._hasFooter&&e("div",{class:"footer"},e("slot",{name:"footer"}))))}validateHasFooter(e){o(this,e)}validateHeading(e){s(this,"_heading",e,{required:!0})}validateHeadline(e){this.validateHeading(e)}validateLevel(e){n(this,e)}componentWillLoad(){this.validateHasFooter(this._hasFooter),this.validateHeading(this._heading||this._headline),this.validateLevel(this._level)}static get watchers(){return{_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_level:["validateLevel"]}}};l.style={default:r};export{l as kol_card};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as e}from"./index-2c046ff1.js";import{b as o,w as s}from"./prop.validators-601f1068.js";import"./a11y.tipps-9f948961.js";import"./dev.utils-4290338e.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const n=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}details{display:grid}details>summary{cursor:pointer;display:flex;place-items:center}details>summary>span{border-bottom-color:grey;border-bottom-style:solid}details>summary:focus>span,details>summary:hover>span,details[open]>summary>span{border-bottom-color:#000}details>kol-indented-text{margin:0.25em 0 0 0.5em}@keyframes details-show{to{opacity:1;scale:1}}.content{opacity:0;scale:1 0;transform-origin:top}details[open]>.content{animation:250ms ease-in-out forwards details-show}",a=class{constructor(i){t(this,i),this.onClick=()=>{setTimeout((()=>{var t;this._open=null===(t=this.htmlDetailsElement)||void 0===t?void 0:t.open}),25)},this._open=!1,this._summary=void 0,this.state={_summary:"…"}}render(){return i(e,null,i("details",{ref:t=>{this.htmlDetailsElement=t},open:this.state._open},i("summary",{onClick:this.onClick},this.state._open?i("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-down"}):i("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-right"}),i("span",null,this.state._summary)),i("div",{class:"content"},i("kol-indented-text",null,i("slot",null)))))}validateOpen(t){o(this,"_open",t)}validateSummary(t){s(this,"_summary",t,{required:!0})}componentWillLoad(){this.validateOpen(this._open),this.validateSummary(this._summary)}static get watchers(){return{_open:["validateOpen"],_summary:["validateSummary"]}}};a.style={default:n};export{a as kol_details};
4
+ import{r as t,h as i,H as e}from"./index-2c046ff1.js";import{b as o,w as s}from"./prop.validators-e3c93395.js";import"./a11y.tipps-255c885e.js";import"./dev.utils-e98368e1.js";import"./reuse-c2156413.js";import"./index-37b5cbcf.js";const n=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}details{display:grid}details>summary{cursor:pointer;display:flex;place-items:center}details>summary>span{border-bottom-color:grey;border-bottom-style:solid}details>summary:focus>span,details>summary:hover>span,details[open]>summary>span{border-bottom-color:#000}details>kol-indented-text{margin:0.25em 0 0 0.5em}@keyframes details-show{to{opacity:1;scale:1}}.content{opacity:0;scale:1 0;transform-origin:top}details[open]>.content{animation:250ms ease-in-out forwards details-show}",a=class{constructor(i){t(this,i),this.onClick=()=>{setTimeout((()=>{var t;this._open=null===(t=this.htmlDetailsElement)||void 0===t?void 0:t.open}),25)},this._open=!1,this._summary=void 0,this.state={_summary:"…"}}render(){return i(e,null,i("details",{ref:t=>{this.htmlDetailsElement=t},open:this.state._open},i("summary",{onClick:this.onClick},this.state._open?i("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-down"}):i("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-right"}),i("span",null,this.state._summary)),i("div",{class:"content"},i("kol-indented-text",null,i("slot",null)))))}validateOpen(t){o(this,"_open",t)}validateSummary(t){s(this,"_summary",t,{required:!0})}componentWillLoad(){this.validateOpen(this._open),this.validateSummary(this._summary)}static get watchers(){return{_open:["validateOpen"],_summary:["validateSummary"]}}};a.style={default:n};export{a as kol_details};