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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (769) hide show
  1. package/cheat-sheet.html +38 -25
  2. package/custom-elements.json +2952 -125
  3. package/dist/cjs/a11y.tipps-ab1afcfd.js +4 -0
  4. package/dist/cjs/a11y.tipps-ab1afcfd.js.map +1 -0
  5. package/dist/cjs/app-globals-725a044c.js +4 -0
  6. package/dist/cjs/app-globals-725a044c.js.map +1 -0
  7. package/dist/cjs/button-link-17aa6a40.js +4 -0
  8. package/dist/cjs/button-link-17aa6a40.js.map +1 -0
  9. package/dist/cjs/{controller-9758ea26.js → controller-0753ec3a.js} +1 -1
  10. package/dist/cjs/{controller-9758ea26.js.map → controller-0753ec3a.js.map} +1 -1
  11. package/dist/cjs/{controller-8c043f6a.js → controller-75784c0e.js} +1 -1
  12. package/dist/cjs/{controller-8c043f6a.js.map → controller-75784c0e.js.map} +1 -1
  13. package/dist/cjs/controller-8c609713.js +4 -0
  14. package/dist/cjs/{controller-e0715879.js.map → controller-8c609713.js.map} +1 -1
  15. package/dist/cjs/{controller-3ff1c0cb.js → controller-cb433205.js} +1 -1
  16. package/dist/cjs/{controller-3ff1c0cb.js.map → controller-cb433205.js.map} +1 -1
  17. package/dist/cjs/{controller-ae4978e8.js → controller-dd3f28d0.js} +1 -1
  18. package/dist/cjs/{controller-ae4978e8.js.map → controller-dd3f28d0.js.map} +1 -1
  19. package/dist/cjs/controller-ec443a90.js +4 -0
  20. package/dist/cjs/{controller-11d59cf4.js.map → controller-ec443a90.js.map} +1 -1
  21. package/dist/cjs/{controller-icon-ae20df4e.js → controller-icon-ac752d0d.js} +1 -1
  22. package/dist/cjs/{controller-icon-ae20df4e.js.map → controller-icon-ac752d0d.js.map} +1 -1
  23. package/dist/cjs/devtools-29b8b4ff.js +4 -0
  24. package/dist/cjs/devtools-29b8b4ff.js.map +1 -0
  25. package/dist/cjs/i18n-d56b3736.js +4 -0
  26. package/dist/cjs/i18n-d56b3736.js.map +1 -0
  27. package/dist/cjs/{icon-a373f57a.js → icon-2a4562a6.js} +1 -1
  28. package/dist/cjs/icon-2a4562a6.js.map +1 -0
  29. package/dist/cjs/{index-c4f8dd50.js → index-1266b30d.js} +1 -1
  30. package/dist/cjs/index-1266b30d.js.map +1 -0
  31. package/dist/cjs/index-29c5d3c6.js.map +1 -0
  32. package/dist/cjs/index-cc5674d0.js +4 -0
  33. package/dist/cjs/index-cc5674d0.js.map +1 -0
  34. package/dist/cjs/index.cjs.js +1 -1
  35. package/dist/cjs/index.cjs.js.map +1 -1
  36. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  37. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  38. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  40. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  42. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  44. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  46. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
  48. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  50. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  52. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  56. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  58. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  60. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-heading-wc_2.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  82. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  86. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  109. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  111. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  113. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  115. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
  127. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  129. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  130. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  131. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  132. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  133. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  134. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  135. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  136. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  137. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  138. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  139. package/dist/cjs/kolibri.cjs.js +1 -1
  140. package/dist/cjs/kolibri.cjs.js.map +1 -1
  141. package/dist/cjs/label-b702acbd.js +4 -0
  142. package/dist/cjs/label-b702acbd.js.map +1 -0
  143. package/dist/cjs/loader.cjs.js +1 -1
  144. package/dist/cjs/loader.cjs.js.map +1 -1
  145. package/dist/cjs/log-c0dc35c9.js +4 -0
  146. package/dist/cjs/log-c0dc35c9.js.map +1 -0
  147. package/dist/cjs/prop.validators-da7d3db2.js +4 -0
  148. package/dist/cjs/prop.validators-da7d3db2.js.map +1 -0
  149. package/dist/cjs/{tab-index-0a963ec3.js → tab-index-a499e8df.js} +1 -1
  150. package/dist/cjs/{tab-index-0a963ec3.js.map → tab-index-a499e8df.js.map} +1 -1
  151. package/dist/cjs/{validation-cafa32e9.js → validation-421fff30.js} +1 -1
  152. package/dist/cjs/{validation-cafa32e9.js.map → validation-421fff30.js.map} +1 -1
  153. package/dist/cjs/validation-9fd3dc0c.js +4 -0
  154. package/dist/cjs/{validation-dceac8f2.js.map → validation-9fd3dc0c.js.map} +1 -1
  155. package/dist/components/component.js +1 -1
  156. package/dist/components/component.js.map +1 -1
  157. package/dist/components/component10.js +1 -1
  158. package/dist/components/component10.js.map +1 -1
  159. package/dist/components/component11.js +1 -1
  160. package/dist/components/component11.js.map +1 -1
  161. package/dist/components/component12.js +1 -1
  162. package/dist/components/component12.js.map +1 -1
  163. package/dist/components/component13.js +1 -1
  164. package/dist/components/component13.js.map +1 -1
  165. package/dist/components/component2.js +1 -1
  166. package/dist/components/component2.js.map +1 -1
  167. package/dist/components/component3.js +1 -1
  168. package/dist/components/component3.js.map +1 -1
  169. package/dist/components/component4.js +1 -1
  170. package/dist/components/component4.js.map +1 -1
  171. package/dist/components/component5.js +1 -1
  172. package/dist/components/component5.js.map +1 -1
  173. package/dist/components/component6.js +1 -1
  174. package/dist/components/component6.js.map +1 -1
  175. package/dist/components/component7.js +1 -1
  176. package/dist/components/component7.js.map +1 -1
  177. package/dist/components/component8.js +1 -1
  178. package/dist/components/component8.js.map +1 -1
  179. package/dist/components/controller-icon.js +1 -1
  180. package/dist/components/controller2.js +1 -1
  181. package/dist/components/controller3.js +1 -1
  182. package/dist/components/controller4.js +1 -1
  183. package/dist/components/devtools.js.map +1 -1
  184. package/dist/components/i18n.js +1 -1
  185. package/dist/components/i18n.js.map +1 -1
  186. package/dist/components/index.js +1 -1
  187. package/dist/components/index.js.map +1 -1
  188. package/dist/components/index2.js +1 -1
  189. package/dist/components/index2.js.map +1 -1
  190. package/dist/components/kol-abbr.js +1 -1
  191. package/dist/components/kol-abbr.js.map +1 -1
  192. package/dist/components/kol-accordion.js +1 -1
  193. package/dist/components/kol-accordion.js.map +1 -1
  194. package/dist/components/kol-breadcrumb.js +1 -1
  195. package/dist/components/kol-breadcrumb.js.map +1 -1
  196. package/dist/components/kol-button-group.js +1 -1
  197. package/dist/components/kol-button-group.js.map +1 -1
  198. package/dist/components/kol-button-link.js +1 -1
  199. package/dist/components/kol-button-link.js.map +1 -1
  200. package/dist/components/kol-card.js +1 -1
  201. package/dist/components/kol-card.js.map +1 -1
  202. package/dist/components/kol-details.js +1 -1
  203. package/dist/components/kol-details.js.map +1 -1
  204. package/dist/components/kol-heading.js +1 -1
  205. package/dist/components/kol-heading.js.map +1 -1
  206. package/dist/components/kol-icon-font-awesome.js +1 -1
  207. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  208. package/dist/components/kol-icon-icofont.js +1 -1
  209. package/dist/components/kol-icon-icofont.js.map +1 -1
  210. package/dist/components/kol-input-adapter-leanup.js +1 -1
  211. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  212. package/dist/components/kol-input-checkbox.js +1 -1
  213. package/dist/components/kol-input-checkbox.js.map +1 -1
  214. package/dist/components/kol-input-color.js +1 -1
  215. package/dist/components/kol-input-color.js.map +1 -1
  216. package/dist/components/kol-input-date.js +1 -1
  217. package/dist/components/kol-input-date.js.map +1 -1
  218. package/dist/components/kol-input-email.js +1 -1
  219. package/dist/components/kol-input-email.js.map +1 -1
  220. package/dist/components/kol-input-file.js +1 -1
  221. package/dist/components/kol-input-file.js.map +1 -1
  222. package/dist/components/kol-input-password.js +1 -1
  223. package/dist/components/kol-input-password.js.map +1 -1
  224. package/dist/components/kol-input-range.js +1 -1
  225. package/dist/components/kol-input-range.js.map +1 -1
  226. package/dist/components/kol-input-text.js +1 -1
  227. package/dist/components/kol-input-text.js.map +1 -1
  228. package/dist/components/kol-kolibri.js +1 -1
  229. package/dist/components/kol-kolibri.js.map +1 -1
  230. package/dist/components/kol-link-button.js +1 -1
  231. package/dist/components/kol-link-button.js.map +1 -1
  232. package/dist/components/kol-link-group.js +1 -1
  233. package/dist/components/kol-link-group.js.map +1 -1
  234. package/dist/components/kol-logo.js +1 -1
  235. package/dist/components/kol-logo.js.map +1 -1
  236. package/dist/components/kol-modal.js +1 -1
  237. package/dist/components/kol-modal.js.map +1 -1
  238. package/dist/components/kol-nav.js +1 -1
  239. package/dist/components/kol-nav.js.map +1 -1
  240. package/dist/components/kol-progress.js +1 -1
  241. package/dist/components/kol-progress.js.map +1 -1
  242. package/dist/components/kol-skip-nav.js +1 -1
  243. package/dist/components/kol-skip-nav.js.map +1 -1
  244. package/dist/components/kol-span.js +1 -1
  245. package/dist/components/kol-span.js.map +1 -1
  246. package/dist/components/kol-spin.js +1 -1
  247. package/dist/components/kol-spin.js.map +1 -1
  248. package/dist/components/kol-table.js +1 -1
  249. package/dist/components/kol-table.js.map +1 -1
  250. package/dist/components/kol-tabs.js +1 -1
  251. package/dist/components/kol-tabs.js.map +1 -1
  252. package/dist/components/kol-textarea.js +1 -1
  253. package/dist/components/kol-textarea.js.map +1 -1
  254. package/dist/components/kol-toast.js +1 -1
  255. package/dist/components/kol-toast.js.map +1 -1
  256. package/dist/components/kol-version.js +1 -1
  257. package/dist/components/kol-version.js.map +1 -1
  258. package/dist/components/prop.validators.js +1 -1
  259. package/dist/components/prop.validators.js.map +1 -1
  260. package/dist/components/shadow.js +1 -1
  261. package/dist/components/shadow.js.map +1 -1
  262. package/dist/components/shadow2.js +1 -1
  263. package/dist/components/shadow2.js.map +1 -1
  264. package/dist/esm/a11y.tipps-7a139717.js +4 -0
  265. package/dist/esm/a11y.tipps-7a139717.js.map +1 -0
  266. package/dist/esm/app-globals-0ffb53ba.js +4 -0
  267. package/dist/esm/app-globals-0ffb53ba.js.map +1 -0
  268. package/dist/esm/{button-link-01028aae.js → button-link-75df8fe4.js} +1 -1
  269. package/dist/esm/button-link-75df8fe4.js.map +1 -0
  270. package/dist/esm/{controller-8b3a25ac.js → controller-3dd01f3f.js} +1 -1
  271. package/dist/esm/{controller-8b3a25ac.js.map → controller-3dd01f3f.js.map} +1 -1
  272. package/dist/esm/controller-4fb4a3b9.js +4 -0
  273. package/dist/esm/{controller-b7578f6d.js.map → controller-4fb4a3b9.js.map} +1 -1
  274. package/dist/esm/{controller-de509dfa.js → controller-5c769b0e.js} +1 -1
  275. package/dist/esm/{controller-de509dfa.js.map → controller-5c769b0e.js.map} +1 -1
  276. package/dist/esm/{controller-e49952b6.js → controller-b2f78852.js} +1 -1
  277. package/dist/esm/{controller-e49952b6.js.map → controller-b2f78852.js.map} +1 -1
  278. package/dist/esm/{controller-e915936c.js → controller-b7800467.js} +1 -1
  279. package/dist/esm/{controller-e915936c.js.map → controller-b7800467.js.map} +1 -1
  280. package/dist/esm/controller-f1a122f2.js +4 -0
  281. package/dist/esm/{controller-28809de9.js.map → controller-f1a122f2.js.map} +1 -1
  282. package/dist/esm/{controller-icon-07d9636a.js → controller-icon-ac7d7589.js} +1 -1
  283. package/dist/esm/{controller-icon-07d9636a.js.map → controller-icon-ac7d7589.js.map} +1 -1
  284. package/dist/esm/devtools-1fae3661.js +4 -0
  285. package/dist/esm/devtools-1fae3661.js.map +1 -0
  286. package/dist/esm/i18n-23bb2f48.js +4 -0
  287. package/dist/esm/i18n-23bb2f48.js.map +1 -0
  288. package/dist/esm/{icon-5edb38e1.js → icon-286d4116.js} +1 -1
  289. package/dist/esm/icon-286d4116.js.map +1 -0
  290. package/dist/esm/index-50adf9a0.js.map +1 -0
  291. package/dist/esm/index-599f5430.js +4 -0
  292. package/dist/esm/index-599f5430.js.map +1 -0
  293. package/dist/esm/{index-1b8b837d.js → index-d14da386.js} +1 -1
  294. package/dist/esm/index-d14da386.js.map +1 -0
  295. package/dist/esm/index.js +1 -1
  296. package/dist/esm/index.js.map +1 -1
  297. package/dist/esm/kol-abbr.entry.js +1 -1
  298. package/dist/esm/kol-abbr.entry.js.map +1 -1
  299. package/dist/esm/kol-accordion.entry.js +1 -1
  300. package/dist/esm/kol-accordion.entry.js.map +1 -1
  301. package/dist/esm/kol-alert.entry.js +1 -1
  302. package/dist/esm/kol-alert.entry.js.map +1 -1
  303. package/dist/esm/kol-badge.entry.js +1 -1
  304. package/dist/esm/kol-badge.entry.js.map +1 -1
  305. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  306. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  307. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  308. package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
  309. package/dist/esm/kol-button-group.entry.js +1 -1
  310. package/dist/esm/kol-button-group.entry.js.map +1 -1
  311. package/dist/esm/kol-button-link.entry.js +1 -1
  312. package/dist/esm/kol-button-link.entry.js.map +1 -1
  313. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  314. package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
  315. package/dist/esm/kol-button.entry.js +1 -1
  316. package/dist/esm/kol-button.entry.js.map +1 -1
  317. package/dist/esm/kol-card.entry.js +1 -1
  318. package/dist/esm/kol-card.entry.js.map +1 -1
  319. package/dist/esm/kol-details.entry.js +1 -1
  320. package/dist/esm/kol-details.entry.js.map +1 -1
  321. package/dist/esm/kol-form.entry.js +1 -1
  322. package/dist/esm/kol-form.entry.js.map +1 -1
  323. package/dist/esm/kol-heading-wc_2.entry.js +1 -1
  324. package/dist/esm/kol-heading-wc_2.entry.js.map +1 -1
  325. package/dist/esm/kol-heading.entry.js +1 -1
  326. package/dist/esm/kol-heading.entry.js.map +1 -1
  327. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  328. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  329. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  330. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  331. package/dist/esm/kol-icon.entry.js +1 -1
  332. package/dist/esm/kol-icon.entry.js.map +1 -1
  333. package/dist/esm/kol-indented-text.entry.js +1 -1
  334. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  335. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  336. package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
  337. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  338. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  339. package/dist/esm/kol-input-color.entry.js +1 -1
  340. package/dist/esm/kol-input-color.entry.js.map +1 -1
  341. package/dist/esm/kol-input-date.entry.js +1 -1
  342. package/dist/esm/kol-input-date.entry.js.map +1 -1
  343. package/dist/esm/kol-input-email.entry.js +1 -1
  344. package/dist/esm/kol-input-email.entry.js.map +1 -1
  345. package/dist/esm/kol-input-file.entry.js +1 -1
  346. package/dist/esm/kol-input-file.entry.js.map +1 -1
  347. package/dist/esm/kol-input-number.entry.js +1 -1
  348. package/dist/esm/kol-input-number.entry.js.map +1 -1
  349. package/dist/esm/kol-input-password.entry.js +1 -1
  350. package/dist/esm/kol-input-password.entry.js.map +1 -1
  351. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  352. package/dist/esm/kol-input-radio.entry.js +1 -1
  353. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  354. package/dist/esm/kol-input-range.entry.js +1 -1
  355. package/dist/esm/kol-input-range.entry.js.map +1 -1
  356. package/dist/esm/kol-input-text.entry.js +1 -1
  357. package/dist/esm/kol-input-text.entry.js.map +1 -1
  358. package/dist/esm/kol-kolibri.entry.js +1 -1
  359. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  360. package/dist/esm/kol-link-button.entry.js +1 -1
  361. package/dist/esm/kol-link-button.entry.js.map +1 -1
  362. package/dist/esm/kol-link-group.entry.js +1 -1
  363. package/dist/esm/kol-link-group.entry.js.map +1 -1
  364. package/dist/esm/kol-link-wc.entry.js +1 -1
  365. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  366. package/dist/esm/kol-link.entry.js +1 -1
  367. package/dist/esm/kol-link.entry.js.map +1 -1
  368. package/dist/esm/kol-logo.entry.js +1 -1
  369. package/dist/esm/kol-logo.entry.js.map +1 -1
  370. package/dist/esm/kol-modal.entry.js +1 -1
  371. package/dist/esm/kol-modal.entry.js.map +1 -1
  372. package/dist/esm/kol-nav.entry.js +1 -1
  373. package/dist/esm/kol-nav.entry.js.map +1 -1
  374. package/dist/esm/kol-pagination.entry.js +1 -1
  375. package/dist/esm/kol-pagination.entry.js.map +1 -1
  376. package/dist/esm/kol-progress.entry.js +1 -1
  377. package/dist/esm/kol-progress.entry.js.map +1 -1
  378. package/dist/esm/kol-select.entry.js +1 -1
  379. package/dist/esm/kol-select.entry.js.map +1 -1
  380. package/dist/esm/kol-skip-nav.entry.js +1 -1
  381. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  382. package/dist/esm/kol-span.entry.js +1 -1
  383. package/dist/esm/kol-span.entry.js.map +1 -1
  384. package/dist/esm/kol-spin.entry.js +1 -1
  385. package/dist/esm/kol-spin.entry.js.map +1 -1
  386. package/dist/esm/kol-symbol.entry.js +1 -1
  387. package/dist/esm/kol-symbol.entry.js.map +1 -1
  388. package/dist/esm/kol-table.entry.js +1 -1
  389. package/dist/esm/kol-table.entry.js.map +1 -1
  390. package/dist/esm/kol-tabs.entry.js +1 -1
  391. package/dist/esm/kol-tabs.entry.js.map +1 -1
  392. package/dist/esm/kol-textarea.entry.js +1 -1
  393. package/dist/esm/kol-textarea.entry.js.map +1 -1
  394. package/dist/esm/kol-toast.entry.js +1 -1
  395. package/dist/esm/kol-toast.entry.js.map +1 -1
  396. package/dist/esm/kol-tooltip.entry.js +1 -1
  397. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  398. package/dist/esm/kol-version.entry.js +1 -1
  399. package/dist/esm/kol-version.entry.js.map +1 -1
  400. package/dist/esm/kolibri.js +1 -1
  401. package/dist/esm/kolibri.js.map +1 -1
  402. package/dist/esm/label-bd914c5e.js +4 -0
  403. package/dist/esm/label-bd914c5e.js.map +1 -0
  404. package/dist/esm/loader.js +1 -1
  405. package/dist/esm/loader.js.map +1 -1
  406. package/dist/esm/log-829fbbc7.js +4 -0
  407. package/dist/esm/log-829fbbc7.js.map +1 -0
  408. package/dist/esm/polyfills/core-js.js +1 -1
  409. package/dist/esm/prop.validators-27682076.js +4 -0
  410. package/dist/esm/prop.validators-27682076.js.map +1 -0
  411. package/dist/esm/{tab-index-3378b139.js → tab-index-7446a923.js} +1 -1
  412. package/dist/esm/{tab-index-3378b139.js.map → tab-index-7446a923.js.map} +1 -1
  413. package/dist/esm/validation-57ce54ee.js +4 -0
  414. package/dist/esm/{validation-5c3578c0.js.map → validation-57ce54ee.js.map} +1 -1
  415. package/dist/esm/validation-7fe30a10.js +4 -0
  416. package/dist/esm/{validation-0dc15e8d.js.map → validation-7fe30a10.js.map} +1 -1
  417. package/dist/kolibri/a11y.tipps-7a139717.js +4 -0
  418. package/dist/kolibri/a11y.tipps-7a139717.js.map +1 -0
  419. package/dist/kolibri/app-globals-0ffb53ba.js +4 -0
  420. package/dist/kolibri/app-globals-0ffb53ba.js.map +1 -0
  421. package/dist/kolibri/assets/alert-simulation.js +1 -0
  422. package/dist/kolibri/assets/nav-simulation.js +1 -1
  423. package/dist/kolibri/assets/style.css +49 -77
  424. package/dist/kolibri/assets/table-simulation.js +1 -1
  425. package/dist/kolibri/assets/tabs-simulation.js +1 -1
  426. package/dist/kolibri/button-link-75df8fe4.js +4 -0
  427. package/dist/kolibri/button-link-75df8fe4.js.map +1 -0
  428. package/dist/kolibri/controller-3dd01f3f.js +4 -0
  429. package/dist/kolibri/controller-4fb4a3b9.js +4 -0
  430. package/dist/kolibri/{controller-b7578f6d.js.map → controller-4fb4a3b9.js.map} +1 -1
  431. package/dist/kolibri/{controller-de509dfa.js → controller-5c769b0e.js} +1 -1
  432. package/dist/kolibri/{controller-e49952b6.js → controller-b2f78852.js} +1 -1
  433. package/dist/kolibri/{controller-e915936c.js → controller-b7800467.js} +1 -1
  434. package/dist/kolibri/controller-f1a122f2.js +4 -0
  435. package/dist/kolibri/{controller-28809de9.js.map → controller-f1a122f2.js.map} +1 -1
  436. package/dist/kolibri/{controller-icon-07d9636a.js → controller-icon-ac7d7589.js} +1 -1
  437. package/dist/kolibri/devtools-1fae3661.js +4 -0
  438. package/dist/kolibri/devtools-1fae3661.js.map +1 -0
  439. package/dist/kolibri/i18n-23bb2f48.js +4 -0
  440. package/dist/kolibri/i18n-23bb2f48.js.map +1 -0
  441. package/dist/kolibri/{icon-5edb38e1.js → icon-286d4116.js} +1 -1
  442. package/dist/kolibri/icon-286d4116.js.map +1 -0
  443. package/dist/kolibri/index-50adf9a0.js.map +1 -0
  444. package/dist/kolibri/index-599f5430.js +4 -0
  445. package/dist/kolibri/index-599f5430.js.map +1 -0
  446. package/dist/kolibri/{index-1b8b837d.js → index-d14da386.js} +1 -1
  447. package/dist/kolibri/index-d14da386.js.map +1 -0
  448. package/dist/kolibri/index.esm.js +1 -1
  449. package/dist/kolibri/kol-abbr.entry.js +1 -1
  450. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  451. package/dist/kolibri/kol-accordion.entry.js +1 -1
  452. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  453. package/dist/kolibri/kol-alert.entry.js +1 -1
  454. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  455. package/dist/kolibri/kol-badge.entry.js +1 -1
  456. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  457. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  458. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  459. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  460. package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
  461. package/dist/kolibri/kol-button-group.entry.js +1 -1
  462. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  463. package/dist/kolibri/kol-button-link.entry.js +1 -1
  464. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  465. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  466. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
  467. package/dist/kolibri/kol-button.entry.js +1 -1
  468. package/dist/kolibri/kol-button.entry.js.map +1 -1
  469. package/dist/kolibri/kol-card.entry.js +1 -1
  470. package/dist/kolibri/kol-card.entry.js.map +1 -1
  471. package/dist/kolibri/kol-details.entry.js +1 -1
  472. package/dist/kolibri/kol-details.entry.js.map +1 -1
  473. package/dist/kolibri/kol-form.entry.js +1 -1
  474. package/dist/kolibri/kol-form.entry.js.map +1 -1
  475. package/dist/kolibri/kol-heading-wc_2.entry.js +1 -1
  476. package/dist/kolibri/kol-heading-wc_2.entry.js.map +1 -1
  477. package/dist/kolibri/kol-heading.entry.js +1 -1
  478. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  479. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  480. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  481. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  482. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  483. package/dist/kolibri/kol-icon.entry.js +1 -1
  484. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  485. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  486. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  487. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  488. package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
  489. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  490. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  491. package/dist/kolibri/kol-input-color.entry.js +1 -1
  492. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  493. package/dist/kolibri/kol-input-date.entry.js +1 -1
  494. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  495. package/dist/kolibri/kol-input-email.entry.js +1 -1
  496. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  497. package/dist/kolibri/kol-input-file.entry.js +1 -1
  498. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  499. package/dist/kolibri/kol-input-number.entry.js +1 -1
  500. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  501. package/dist/kolibri/kol-input-password.entry.js +1 -1
  502. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  503. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  504. package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
  505. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  506. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  507. package/dist/kolibri/kol-input-range.entry.js +1 -1
  508. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  509. package/dist/kolibri/kol-input-text.entry.js +1 -1
  510. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  511. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  512. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  513. package/dist/kolibri/kol-link-button.entry.js +1 -1
  514. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  515. package/dist/kolibri/kol-link-group.entry.js +1 -1
  516. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  517. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  518. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  519. package/dist/kolibri/kol-link.entry.js +1 -1
  520. package/dist/kolibri/kol-link.entry.js.map +1 -1
  521. package/dist/kolibri/kol-logo.entry.js +1 -1
  522. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  523. package/dist/kolibri/kol-modal.entry.js +1 -1
  524. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  525. package/dist/kolibri/kol-nav.entry.js +1 -1
  526. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  527. package/dist/kolibri/kol-pagination.entry.js +1 -1
  528. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  529. package/dist/kolibri/kol-progress.entry.js +1 -1
  530. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  531. package/dist/kolibri/kol-select.entry.js +1 -1
  532. package/dist/kolibri/kol-select.entry.js.map +1 -1
  533. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  534. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  535. package/dist/kolibri/kol-span.entry.js +1 -1
  536. package/dist/kolibri/kol-span.entry.js.map +1 -1
  537. package/dist/kolibri/kol-spin.entry.js +1 -1
  538. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  539. package/dist/kolibri/kol-symbol.entry.js +1 -1
  540. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  541. package/dist/kolibri/kol-table.entry.js +1 -1
  542. package/dist/kolibri/kol-table.entry.js.map +1 -1
  543. package/dist/kolibri/kol-tabs.entry.js +1 -1
  544. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  545. package/dist/kolibri/kol-textarea.entry.js +1 -1
  546. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  547. package/dist/kolibri/kol-toast.entry.js +1 -1
  548. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  549. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  550. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  551. package/dist/kolibri/kol-version.entry.js +1 -1
  552. package/dist/kolibri/kol-version.entry.js.map +1 -1
  553. package/dist/kolibri/kolibri.esm.js +1 -1
  554. package/dist/kolibri/kolibri.esm.js.map +1 -1
  555. package/dist/kolibri/label-bd914c5e.js +4 -0
  556. package/dist/kolibri/label-bd914c5e.js.map +1 -0
  557. package/dist/kolibri/log-829fbbc7.js +4 -0
  558. package/dist/kolibri/log-829fbbc7.js.map +1 -0
  559. package/dist/kolibri/prop.validators-27682076.js +4 -0
  560. package/dist/kolibri/prop.validators-27682076.js.map +1 -0
  561. package/dist/kolibri/tab-index-7446a923.js +4 -0
  562. package/dist/kolibri/{tab-index-3378b139.js.map → tab-index-7446a923.js.map} +1 -1
  563. package/dist/kolibri/validation-57ce54ee.js +4 -0
  564. package/dist/kolibri/{validation-0dc15e8d.js → validation-7fe30a10.js} +1 -1
  565. package/dist/types/components/accordion/component.d.ts +2 -2
  566. package/dist/types/components/alert/component.d.ts +1 -0
  567. package/dist/types/components/badge/component.d.ts +2 -4
  568. package/dist/types/components/badge/contrast.d.ts +2 -1
  569. package/dist/types/components/heading/component.d.ts +9 -1
  570. package/dist/types/components/heading/shadow.d.ts +2 -0
  571. package/dist/types/components/heading/test/html.mock.d.ts +1 -1
  572. package/dist/types/components/input-date/component.d.ts +3 -2
  573. package/dist/types/components/input-date/types.d.ts +3 -1
  574. package/dist/types/components/input-number/component.d.ts +2 -2
  575. package/dist/types/components/input-number/controller.d.ts +3 -1
  576. package/dist/types/components/pagination/types.d.ts +4 -4
  577. package/dist/types/components/tabs/component.d.ts +2 -2
  578. package/dist/types/components.d.ts +40 -44
  579. package/dist/types/enums/color.d.ts +0 -5
  580. package/dist/types/types/button-link.d.ts +3 -3
  581. package/dist/types/types/callbacks.d.ts +2 -1
  582. package/dist/types/types/heading-level.d.ts +1 -1
  583. package/dist/types/types/input/control/number.d.ts +1 -1
  584. package/dist/types/types/input/iso8601.d.ts +1 -1
  585. package/dist/types/types/input/types.d.ts +2 -2
  586. package/dist/types/utils/dev.utils.d.ts +0 -17
  587. package/dist/types/utils/log.d.ts +18 -0
  588. package/dist/types/utils/prop.validators.d.ts +1 -1
  589. package/dist/types/utils/validators/label.d.ts +2 -0
  590. package/dist/types/utils/validators/list.d.ts +2 -0
  591. package/doc/abbr.md +25 -4
  592. package/doc/accordion.md +30 -7
  593. package/doc/alert.md +26 -5
  594. package/doc/badge.md +31 -9
  595. package/doc/breadcrumb.md +27 -18
  596. package/doc/button-group.md +1 -1
  597. package/doc/button-link.md +25 -2
  598. package/doc/button.md +31 -8
  599. package/doc/card.md +33 -10
  600. package/doc/details.md +25 -4
  601. package/doc/heading.md +6 -4
  602. package/doc/icon-icofont.md +1 -1
  603. package/doc/icon.md +24 -10
  604. package/doc/indented-text.md +24 -1
  605. package/doc/input-checkbox.md +23 -0
  606. package/doc/input-color.md +25 -4
  607. package/doc/input-date.md +28 -7
  608. package/doc/input-email.md +25 -4
  609. package/doc/input-file.md +25 -4
  610. package/doc/input-number.md +28 -7
  611. package/doc/input-password.md +25 -4
  612. package/doc/input-radio.md +26 -16
  613. package/doc/input-range.md +25 -4
  614. package/doc/input-text.md +25 -4
  615. package/doc/kolibri.md +24 -1
  616. package/doc/link-button.md +26 -3
  617. package/doc/link-group.md +27 -8
  618. package/doc/link.md +26 -5
  619. package/doc/logo.md +24 -1
  620. package/doc/modal.md +24 -1
  621. package/doc/nav.md +29 -19
  622. package/doc/pagination.md +37 -14
  623. package/doc/progress.md +24 -1
  624. package/doc/select.md +38 -52
  625. package/doc/skip-nav.md +26 -12
  626. package/doc/span.md +23 -0
  627. package/doc/spin.md +24 -1
  628. package/doc/table.md +23 -0
  629. package/doc/tabs.md +33 -23
  630. package/doc/textarea.md +24 -1
  631. package/doc/toast.md +26 -5
  632. package/doc/tooltip.md +23 -0
  633. package/doc/version.md +24 -1
  634. package/jest-test-results.json +1 -1
  635. package/package.json +1 -1
  636. package/vscode-custom-data.json +22 -40
  637. package/dist/cjs/a11y.tipps-bd1e1e68.js +0 -4
  638. package/dist/cjs/a11y.tipps-bd1e1e68.js.map +0 -1
  639. package/dist/cjs/app-globals-78158be1.js +0 -4
  640. package/dist/cjs/app-globals-78158be1.js.map +0 -1
  641. package/dist/cjs/button-link-eca34f5d.js +0 -4
  642. package/dist/cjs/button-link-eca34f5d.js.map +0 -1
  643. package/dist/cjs/color-71239302.js +0 -4
  644. package/dist/cjs/color-71239302.js.map +0 -1
  645. package/dist/cjs/controller-11d59cf4.js +0 -4
  646. package/dist/cjs/controller-e0715879.js +0 -4
  647. package/dist/cjs/dev.utils-b6dd5206.js +0 -4
  648. package/dist/cjs/dev.utils-b6dd5206.js.map +0 -1
  649. package/dist/cjs/devtools-b3bb986c.js +0 -4
  650. package/dist/cjs/devtools-b3bb986c.js.map +0 -1
  651. package/dist/cjs/i18n-2eef9091.js +0 -4
  652. package/dist/cjs/i18n-2eef9091.js.map +0 -1
  653. package/dist/cjs/icon-a373f57a.js.map +0 -1
  654. package/dist/cjs/index-57f4a280.js.map +0 -1
  655. package/dist/cjs/index-7e718c1e.js +0 -4
  656. package/dist/cjs/index-7e718c1e.js.map +0 -1
  657. package/dist/cjs/index-95d4d068.js +0 -4
  658. package/dist/cjs/index-95d4d068.js.map +0 -1
  659. package/dist/cjs/index-c4f8dd50.js.map +0 -1
  660. package/dist/cjs/index-ecfaeef4.js +0 -4
  661. package/dist/cjs/index-ecfaeef4.js.map +0 -1
  662. package/dist/cjs/index.m-21aa1255.js +0 -4
  663. package/dist/cjs/index.m-21aa1255.js.map +0 -1
  664. package/dist/cjs/kol-color.cjs.entry.js +0 -4
  665. package/dist/cjs/kol-color.cjs.entry.js.map +0 -1
  666. package/dist/cjs/kol-counter.cjs.entry.js +0 -4
  667. package/dist/cjs/kol-counter.cjs.entry.js.map +0 -1
  668. package/dist/cjs/label-6ab9ca4e.js +0 -4
  669. package/dist/cjs/label-6ab9ca4e.js.map +0 -1
  670. package/dist/cjs/prop.validators-292d455b.js +0 -4
  671. package/dist/cjs/prop.validators-292d455b.js.map +0 -1
  672. package/dist/cjs/validation-dceac8f2.js +0 -4
  673. package/dist/components/color.js +0 -4
  674. package/dist/components/color.js.map +0 -1
  675. package/dist/components/index.m.js +0 -4
  676. package/dist/components/index.m.js.map +0 -1
  677. package/dist/components/index3.js +0 -4
  678. package/dist/components/index3.js.map +0 -1
  679. package/dist/components/kol-color.d.ts +0 -11
  680. package/dist/components/kol-color.js +0 -4
  681. package/dist/components/kol-color.js.map +0 -1
  682. package/dist/components/kol-counter.d.ts +0 -11
  683. package/dist/components/kol-counter.js +0 -4
  684. package/dist/components/kol-counter.js.map +0 -1
  685. package/dist/esm/a11y.tipps-353a7f35.js +0 -4
  686. package/dist/esm/a11y.tipps-353a7f35.js.map +0 -1
  687. package/dist/esm/app-globals-ae4b65e9.js +0 -4
  688. package/dist/esm/app-globals-ae4b65e9.js.map +0 -1
  689. package/dist/esm/button-link-01028aae.js.map +0 -1
  690. package/dist/esm/color-8bf509b6.js +0 -4
  691. package/dist/esm/color-8bf509b6.js.map +0 -1
  692. package/dist/esm/controller-28809de9.js +0 -4
  693. package/dist/esm/controller-b7578f6d.js +0 -4
  694. package/dist/esm/dev.utils-3ec9f837.js +0 -4
  695. package/dist/esm/dev.utils-3ec9f837.js.map +0 -1
  696. package/dist/esm/devtools-38fc0936.js +0 -4
  697. package/dist/esm/devtools-38fc0936.js.map +0 -1
  698. package/dist/esm/i18n-9b7525d8.js +0 -4
  699. package/dist/esm/i18n-9b7525d8.js.map +0 -1
  700. package/dist/esm/icon-5edb38e1.js.map +0 -1
  701. package/dist/esm/index-0dce65d2.js.map +0 -1
  702. package/dist/esm/index-0fb82b03.js +0 -4
  703. package/dist/esm/index-0fb82b03.js.map +0 -1
  704. package/dist/esm/index-1b8b837d.js.map +0 -1
  705. package/dist/esm/index-68b1f91c.js +0 -4
  706. package/dist/esm/index-68b1f91c.js.map +0 -1
  707. package/dist/esm/index-e722bdb7.js +0 -4
  708. package/dist/esm/index-e722bdb7.js.map +0 -1
  709. package/dist/esm/index.m-86dc8c44.js +0 -4
  710. package/dist/esm/index.m-86dc8c44.js.map +0 -1
  711. package/dist/esm/kol-color.entry.js +0 -4
  712. package/dist/esm/kol-color.entry.js.map +0 -1
  713. package/dist/esm/kol-counter.entry.js +0 -4
  714. package/dist/esm/kol-counter.entry.js.map +0 -1
  715. package/dist/esm/label-e7bacbab.js +0 -4
  716. package/dist/esm/label-e7bacbab.js.map +0 -1
  717. package/dist/esm/prop.validators-62a61880.js +0 -4
  718. package/dist/esm/prop.validators-62a61880.js.map +0 -1
  719. package/dist/esm/validation-0dc15e8d.js +0 -4
  720. package/dist/esm/validation-5c3578c0.js +0 -4
  721. package/dist/kolibri/a11y.tipps-353a7f35.js +0 -4
  722. package/dist/kolibri/a11y.tipps-353a7f35.js.map +0 -1
  723. package/dist/kolibri/app-globals-ae4b65e9.js +0 -4
  724. package/dist/kolibri/app-globals-ae4b65e9.js.map +0 -1
  725. package/dist/kolibri/button-link-01028aae.js +0 -4
  726. package/dist/kolibri/button-link-01028aae.js.map +0 -1
  727. package/dist/kolibri/color-8bf509b6.js +0 -4
  728. package/dist/kolibri/color-8bf509b6.js.map +0 -1
  729. package/dist/kolibri/controller-28809de9.js +0 -4
  730. package/dist/kolibri/controller-8b3a25ac.js +0 -4
  731. package/dist/kolibri/controller-b7578f6d.js +0 -4
  732. package/dist/kolibri/dev.utils-3ec9f837.js +0 -4
  733. package/dist/kolibri/dev.utils-3ec9f837.js.map +0 -1
  734. package/dist/kolibri/devtools-38fc0936.js +0 -4
  735. package/dist/kolibri/devtools-38fc0936.js.map +0 -1
  736. package/dist/kolibri/i18n-9b7525d8.js +0 -4
  737. package/dist/kolibri/i18n-9b7525d8.js.map +0 -1
  738. package/dist/kolibri/icon-5edb38e1.js.map +0 -1
  739. package/dist/kolibri/index-0dce65d2.js.map +0 -1
  740. package/dist/kolibri/index-0fb82b03.js +0 -4
  741. package/dist/kolibri/index-0fb82b03.js.map +0 -1
  742. package/dist/kolibri/index-1b8b837d.js.map +0 -1
  743. package/dist/kolibri/index-68b1f91c.js +0 -4
  744. package/dist/kolibri/index-68b1f91c.js.map +0 -1
  745. package/dist/kolibri/index-e722bdb7.js +0 -4
  746. package/dist/kolibri/index-e722bdb7.js.map +0 -1
  747. package/dist/kolibri/index.m-86dc8c44.js +0 -4
  748. package/dist/kolibri/index.m-86dc8c44.js.map +0 -1
  749. package/dist/kolibri/kol-color.entry.js +0 -4
  750. package/dist/kolibri/kol-color.entry.js.map +0 -1
  751. package/dist/kolibri/kol-counter.entry.js +0 -4
  752. package/dist/kolibri/kol-counter.entry.js.map +0 -1
  753. package/dist/kolibri/label-e7bacbab.js +0 -4
  754. package/dist/kolibri/label-e7bacbab.js.map +0 -1
  755. package/dist/kolibri/prop.validators-62a61880.js +0 -4
  756. package/dist/kolibri/prop.validators-62a61880.js.map +0 -1
  757. package/dist/kolibri/tab-index-3378b139.js +0 -4
  758. package/dist/kolibri/validation-5c3578c0.js +0 -4
  759. package/dist/types/global/defaults/icon.d.ts +0 -1
  760. /package/dist/cjs/{index-57f4a280.js → index-29c5d3c6.js} +0 -0
  761. /package/dist/esm/{index-0dce65d2.js → index-50adf9a0.js} +0 -0
  762. /package/dist/kolibri/{controller-8b3a25ac.js.map → controller-3dd01f3f.js.map} +0 -0
  763. /package/dist/kolibri/{controller-de509dfa.js.map → controller-5c769b0e.js.map} +0 -0
  764. /package/dist/kolibri/{controller-e49952b6.js.map → controller-b2f78852.js.map} +0 -0
  765. /package/dist/kolibri/{controller-e915936c.js.map → controller-b7800467.js.map} +0 -0
  766. /package/dist/kolibri/{controller-icon-07d9636a.js.map → controller-icon-ac7d7589.js.map} +0 -0
  767. /package/dist/kolibri/{index-0dce65d2.js → index-50adf9a0.js} +0 -0
  768. /package/dist/kolibri/{validation-5c3578c0.js.map → validation-57ce54ee.js.map} +0 -0
  769. /package/dist/kolibri/{validation-0dc15e8d.js.map → validation-7fe30a10.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["root","definition","module","exports","log","this","noop","undefinedType","isIE","window","navigator","test","userAgent","logMethods","bindMethod","obj","methodName","method","bind","Function","prototype","call","e","apply","arguments","traceForIE","console","trace","realMethod","undefined","replaceLoggingMethods","level","loggerName","i","length","methodFactory","debug","enableLoggingWhenConsoleArrives","defaultMethodFactory","Logger","name","defaultLevel","factory","self","currentLevel","storageKey","persistLevelIfPossible","levelNum","levelName","toUpperCase","localStorage","ignore","document","cookie","encodeURIComponent","getPersistedLevel","storedLevel","location","indexOf","exec","slice","levels","clearPersistedLevel","removeItem","TRACE","DEBUG","INFO","WARN","ERROR","SILENT","getLevel","setLevel","persist","setDefaultLevel","resetLevel","enableAll","disableAll","initialLevel","defaultLogger","_loggersByName","getLogger","TypeError","logger","_log","noConflict","getLoggers","STORE","global","lockThemePatching","warrentyWarning","THEME_NAME_PATTERN","isThemeNameValid","validateThemeName","Error","patchThemeTag","themeName","tagName","css","warn","A11yUi","Themes","patchTheme","map","tagNames","Object","getOwnPropertyNames","forEach","cssStyle","getThemeNode","element","HTMLElement","dataset","theme","parentNode","ShadowRoot","host","getEncroachCss","themeEncroachCss","themeReset","mode","themeEncroachCssMode","isTheCurrentThemeConfigValid","Theme","cache","encroachCss","isTheCurrentThemeNotDefault","getThemeDetails","details","loglevel","themeNode","themeCache","themeLoglevel","getThemeOptionDefaults","options","detect","setConfigureTheme","info","registered","register","themes","loaders","Set","Array","isArray","error","promises","loader","push","Promise","all","STYLING_TASK_QUEUE","Map","HYDRATED_HISTORY","CSS_PROPERTIES_REGISTERED","CSS_STYLE_CACHE","REGEX_CSS_PROPERTIES","REGEX_SPLIT_CSS_PROPERTY","extractProperties","properties","match","filter","property","style","createElement","innerHTML","join","querySelector","appendChild","add","getCssStyle","replace","removeStyle","shadow","childNode","from","childNodes","HTMLStyleElement","removeChild","patchStyle","styles","styleSheets","styleSheet","CSSStyleSheet","replaceSync","adoptedStyleSheets","reverse","styleElement","insertBefore","firstChild","encroachStyles","defaultStyleNodes","node","defaultStyleSheets","unshift","cssRules","rule","cssText","setThemeStyleAfterHydrated","elm","themeDetails","styleDisplay","shadowRoot","get","has","switchStyle","PROPERTY_STYLE","GLOBAL_STYLE","TAG_STYLE","STYLES","set","display","logHydratedHistory","timestamp","Date","now","numberOfTasks","size","pushToDoTask","loggedPushToDoTask","deleteDoneTask","delete","loggedDeleteDoneTask","waitForHydrated","T","setTimeout","clearTimeout","classList","contains","observerCallback","mutationsList","mutation","target","observerOptions","attributes","attributeFilter","childList","subtree","observer","MutationObserver","setThemeStyle","observe"],"sources":["./node_modules/loglevel/lib/loglevel.js","./node_modules/@a11y-ui/core/dist/index.mjs"],"sourcesContent":["/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods(level, loggerName) {\n /*jshint validthis:true */\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, loggerName);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName, level, loggerName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this, level, loggerName);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, level, loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, defaultLevel, factory) {\n var self = this;\n var currentLevel;\n defaultLevel = defaultLevel == null ? \"WARN\" : defaultLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var location = cookie.indexOf(\n encodeURIComponent(storageKey) + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(cookie.slice(location))[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n return currentLevel;\n };\n\n self.setLevel = function (level, persist) {\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n currentLevel = level;\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(level);\n }\n replaceLoggingMethods.call(self, level, name);\n if (typeof console === undefinedType && level < self.levels.SILENT) {\n return \"No console available for logging\";\n }\n } else {\n throw \"log.setLevel() called with invalid level: \" + level;\n }\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = level;\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n self.setLevel(defaultLevel, false);\n clearPersistedLevel();\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n // Initialize with the right level\n var initialLevel = getPersistedLevel();\n if (initialLevel == null) {\n initialLevel = defaultLevel;\n }\n self.setLevel(initialLevel, false);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n var defaultLogger = new Logger();\n\n var _loggersByName = {};\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name, defaultLogger.getLevel(), defaultLogger.methodFactory);\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","import log from 'loglevel';\n\nconst createTranslation = (name, map) => {\n return (patch) => patch(name, map);\n};\n\nconst createTheme = (name, map) => {\n return (patch) => patch(name, map);\n};\n\nconst STORE = typeof window === \"object\" ? window : typeof global === \"object\" ? global : typeof self === \"object\" ? self : {};\n\nlet lockThemePatching = true;\nlet warrentyWarning = false;\nconst THEME_NAME_PATTERN = /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/;\nconst isThemeNameValid = (name) => {\n return typeof name === \"string\" && THEME_NAME_PATTERN.test(name);\n};\nconst validateThemeName = (name) => {\n if (isThemeNameValid(name) === false) {\n throw new Error(\n `[Theming] The theme identifier \"${typeof name === \"string\" ? name : \"\"}\" (Type: ${typeof name}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`\n );\n }\n};\nconst patchThemeTag = (themeName, tagName, css) => {\n validateThemeName(themeName);\n if (lockThemePatching === true && warrentyWarning === false) {\n warrentyWarning = true;\n log.warn(\n `[Theming] The theme process is locked. This means that the theme \"${themeName}\" should not be patched.\n\nimport { register } from '@a11y-ui/core';\nimport { defineCustomElements } from '...';\nimport { THEME } from '...';\n\nregister(THEME, defineCustomElements)\n\t.then(() => {\n\t\tconst htmlDivElement: HTMLElement | null = document.querySelector<HTMLElement>('#my-app');\n if (htmlDivElement instanceof HTMLElement) {\n const root = createRoot(htmlDivElement);\n root.render(<App />);\n }\n })\n .catch(console.warn);`\n );\n }\n if (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && (typeof STORE.A11yUi.Themes !== \"object\" || STORE.A11yUi.Themes === null)) {\n STORE.A11yUi.Themes = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && (typeof STORE.A11yUi.Themes[themeName] !== \"object\" || STORE.A11yUi.Themes[themeName] === null)) {\n STORE.A11yUi.Themes[themeName] = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && typeof STORE.A11yUi.Themes[themeName] === \"object\" && STORE.A11yUi.Themes[themeName] !== null) {\n STORE.A11yUi.Themes[themeName][tagName] = css;\n }\n};\nconst patchTheme = (name, map) => {\n validateThemeName(name);\n if (typeof map === \"object\" && map !== null) {\n const tagNames = Object.getOwnPropertyNames(map);\n tagNames.forEach((tagName) => {\n const cssStyle = map[tagName];\n if (typeof cssStyle === \"string\" && cssStyle.length > 0) {\n patchThemeTag(name, tagName, cssStyle);\n }\n });\n }\n return name;\n};\nconst getThemeNode = (element) => {\n if (element instanceof HTMLElement) {\n if (typeof element.dataset.theme === \"string\") {\n return element;\n } else {\n let parentNode = element.parentNode;\n while (parentNode instanceof ShadowRoot) {\n parentNode = parentNode.host;\n }\n return getThemeNode(parentNode);\n }\n } else {\n return null;\n }\n};\nconst getEncroachCss = (dataset = {}) => {\n if (dataset.themeEncroachCss === \"false\" || dataset.themeReset === \"true\") {\n return false;\n } else {\n return {\n mode: dataset.themeEncroachCssMode === \"after\" || dataset.themeEncroachCssMode === \"before\" ? dataset.themeEncroachCssMode : \"before\"\n };\n }\n};\nconst isTheCurrentThemeConfigValid = () => typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Theme === \"object\" && STORE.A11yUi.Theme !== null && typeof STORE.A11yUi.Theme.cache === \"boolean\" && typeof STORE.A11yUi.Theme.encroachCss === \"object\" && typeof STORE.A11yUi.Theme.encroachCss !== null && typeof STORE.A11yUi.Theme.encroachCss.mode === \"string\" && typeof STORE.A11yUi.Theme.name === \"string\";\nconst isTheCurrentThemeNotDefault = () => (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null) === false || (typeof STORE.A11yUi.Theme === \"object\" && STORE.A11yUi.Theme !== null) === false || STORE.A11yUi.Theme.name !== \"default\";\nconst getThemeDetails = (element) => {\n if (isTheCurrentThemeConfigValid()) {\n return STORE.A11yUi.Theme;\n } else {\n const details = {\n cache: true,\n encroachCss: getEncroachCss(),\n loglevel: \"silent\",\n name: null\n };\n const themeNode = getThemeNode(element);\n if (themeNode instanceof HTMLElement) {\n details.cache = themeNode.dataset.themeCache !== \"false\";\n details.encroachCss = getEncroachCss(themeNode.dataset);\n details.loglevel = themeNode.dataset.themeLoglevel === \"debug\" ? themeNode.dataset.themeLoglevel : \"silent\";\n details.name = themeNode.dataset.theme || null;\n }\n return details;\n }\n};\nconst getTheme = (element) => {\n return getThemeDetails(element).name;\n};\nconst getThemeOptionDefaults = (themeName, options) => {\n return {\n cache: options.cache !== false,\n // default: true\n detect: options.detect === \"auto\" ? \"auto\" : \"fixed\",\n // default: 'fixed'\n encroachCss: options.encroachCss === false ? false : typeof options.encroachCss === \"object\" && options.encroachCss != null && (options.encroachCss.mode === \"after\" || options.encroachCss.mode === \"before\") ? options.encroachCss : {\n mode: \"before\"\n // default: 'before'\n },\n loglevel: options.loglevel === \"debug\" ? options.loglevel : \"silent\",\n // default: 'silent'\n name: typeof options.name === \"string\" ? options.name : themeName\n // default: themeName\n };\n};\nconst setConfigureTheme = (themeName, options) => {\n if (isTheCurrentThemeConfigValid() === false && isTheCurrentThemeNotDefault()) {\n if (\n // Die Options müssen ein Objekt sein.\n typeof options === \"object\" && options !== null\n ) {\n options = getThemeOptionDefaults(themeName, options);\n if (\n /**\n * The presetting of theme options is only relevant by using 'fixed'\n * detection mode.\n */\n options.detect === \"fixed\"\n ) {\n if (options.name === null && typeof themeName === \"string\") {\n options.name = themeName;\n }\n if (\n /**\n * Wenn mehrere Themes geladen werden, dann wird nur der Theme-Name gesetzt,\n * der mit dem Name eines Themes übereinstimmt.\n */\n themeName === options.name\n ) {\n if (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {};\n }\n STORE.A11yUi.Theme = options;\n log.info(`[Theming] Theme \"${themeName}\" was set as default theme.`);\n }\n } else {\n log.warn(`[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.`);\n }\n }\n }\n};\nlet registered = false;\nconst register = (themes, loaders, options = {}) => {\n if (registered === false) {\n registered = true;\n lockThemePatching = false;\n }\n if (typeof themes === \"function\") {\n themes = /* @__PURE__ */ new Set([themes]);\n } else if (Array.isArray(themes)) {\n themes = new Set(themes);\n }\n if (themes instanceof Set) {\n themes.forEach((theme) => {\n if (typeof theme === \"function\" && theme.length === 1) {\n setConfigureTheme(theme(patchTheme), {\n cache: options.theme?.cache,\n detect: options.theme?.detect,\n encroachCss: options.theme?.encroachCss,\n name: options.theme?.name\n });\n } else {\n log.error(`[Theming] Es wurde versucht eine nicht kompatibles Theme zu laden.`);\n }\n });\n }\n lockThemePatching = true;\n if (typeof loaders === \"function\") {\n loaders = /* @__PURE__ */ new Set([loaders]);\n } else if (Array.isArray(loaders)) {\n loaders = new Set(loaders);\n }\n const promises = [];\n loaders.forEach((loader) => promises.push(loader()));\n return Promise.all(promises);\n};\n\nconst _RobustStore = class {\n constructor(object, identifier) {\n this.store = this.createStore(object, identifier);\n }\n static getInstance(identifier, object) {\n let instance = _RobustStore.instances.get(identifier);\n if (instance === void 0) {\n instance = new _RobustStore(object, identifier);\n _RobustStore.instances.set(identifier, instance);\n }\n return instance;\n }\n createStore(object, identifier) {\n Object.defineProperty(object, identifier, {\n enumerable: false,\n value: {},\n writable: false\n });\n return object[identifier];\n }\n recursiveSetItem(store, key, value, options = _RobustStore.options) {\n let storeValue = typeof value === \"object\" && value !== null ? {} : value;\n Object.defineProperty(store, key, {\n enumerable: options.enumerable === true,\n get: () => storeValue,\n /**\n * Die set Methode muss eigentlich ein this.recursiveSetItem aufrufen.\n */\n set: options.immutable === true ? void 0 : (value2) => storeValue = value2\n });\n if (typeof value === \"object\" && value !== null) {\n for (const [k, v] of Object.entries(value)) {\n this.recursiveSetItem(store[key], k, v, options);\n }\n }\n }\n setItem(key, value, options = _RobustStore.options) {\n this.recursiveSetItem(this.store, key, value, options);\n return this;\n }\n getItem(key) {\n if (Array.isArray(key)) {\n return key.map((k) => this.getItem(k));\n }\n return this.store[key];\n }\n};\nlet RobustStore = _RobustStore;\nRobustStore.options = {\n enumerable: false,\n immutable: false\n};\nRobustStore.instances = /* @__PURE__ */ new Map();\n\nconst STYLING_TASK_QUEUE = /* @__PURE__ */ new Map();\nconst HYDRATED_HISTORY = [];\nconst CSS_PROPERTIES_REGISTERED = /* @__PURE__ */ new Set();\nconst CSS_STYLE_CACHE = /* @__PURE__ */ new Map();\nconst REGEX_CSS_PROPERTIES = /--[^;]+/g;\nconst REGEX_SPLIT_CSS_PROPERTY = /:/;\nif (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {\n CSS_STYLE_CACHE,\n HYDRATED_HISTORY,\n STYLING_TASK_QUEUE\n };\n}\nconst extractProperties = (themeName, css) => {\n let properties = css.match(REGEX_CSS_PROPERTIES);\n if (Array.isArray(properties)) {\n properties = properties.filter((property) => REGEX_SPLIT_CSS_PROPERTY.test(property));\n const style = document.createElement(\"style\");\n style.innerHTML = `.${themeName} {${properties.join(\";\")}}`;\n document.querySelector(\"head\")?.appendChild(style);\n }\n CSS_PROPERTIES_REGISTERED.add(themeName);\n};\nconst getCssStyle = (themeName, tagName) => {\n if (\n /**\n * Search custom StyleSheet in Config\n * TODO: Performance???\n */\n typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && typeof STORE.A11yUi.Themes[themeName] === \"object\" && STORE.A11yUi.Themes[themeName] !== null && typeof STORE.A11yUi.Themes[themeName][tagName] === \"string\"\n ) {\n return STORE.A11yUi.Themes[themeName][tagName].replace(\n /\\r?\\n/g,\n \"\"\n );\n } else {\n return \"\";\n }\n};\nconst removeStyle = (shadow) => {\n for (const childNode of Array.from(shadow.childNodes)) {\n if (childNode instanceof HTMLStyleElement && childNode.tagName === \"STYLE\") {\n shadow.removeChild(childNode);\n } else {\n break;\n }\n }\n};\nconst patchStyle = (shadow, styles) => {\n try {\n const styleSheets = [];\n styles.forEach((style) => {\n const styleSheet = new CSSStyleSheet();\n styleSheet.replaceSync(style);\n styleSheets.push(styleSheet);\n });\n shadow.adoptedStyleSheets = styleSheets;\n } catch (e) {\n styles.reverse().forEach((style) => {\n const styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n shadow.insertBefore(styleElement, shadow.firstChild);\n });\n }\n};\nconst encroachStyles = (shadow, styles, encroachCss) => {\n if (encroachCss !== false) {\n const defaultStyleNodes = [\n ...Array.from(shadow.childNodes).filter((node) => node instanceof HTMLStyleElement && node.tagName === \"STYLE\")\n ];\n let defaultStyleSheets;\n try {\n defaultStyleSheets = [...Array.from(shadow.adoptedStyleSheets)];\n } catch (e) {\n defaultStyleSheets = [];\n }\n if (encroachCss?.mode === \"before\") {\n defaultStyleNodes.reverse().forEach((style) => styles.unshift(style.innerHTML));\n defaultStyleSheets.reverse().forEach(\n (style) => styles.unshift(\n Array.from(style.cssRules).map((rule) => rule.cssText).join(\"\")\n )\n );\n } else if (encroachCss?.mode === \"after\") {\n defaultStyleNodes.forEach((style) => styles.push(style.innerHTML));\n defaultStyleSheets.forEach(\n (style) => styles.push(\n Array.from(style.cssRules).map((rule) => rule.cssText).join(\"\")\n )\n );\n }\n }\n};\nconst setThemeStyleAfterHydrated = (elm, themeDetails, styleDisplay) => {\n const themeName = themeDetails.name || \"default\";\n let shadow;\n try {\n if (elm.shadowRoot === null) {\n throw new Error(\"ShadowRoot is null\");\n }\n shadow = elm.shadowRoot;\n } catch (e) {\n shadow = elm;\n }\n if (CSS_STYLE_CACHE.get(themeName)?.has(elm.tagName)) {\n switchStyle(elm, shadow, CSS_STYLE_CACHE.get(themeName)?.get(elm.tagName), styleDisplay);\n } else {\n const PROPERTY_STYLE = getCssStyle(themeName, \"PROPERTIES\");\n const GLOBAL_STYLE = getCssStyle(themeName, \"GLOBAL\");\n const TAG_STYLE = getCssStyle(themeName, elm.tagName);\n if (CSS_PROPERTIES_REGISTERED.has(themeName) === false) {\n extractProperties(themeName, GLOBAL_STYLE);\n }\n const STYLES = [PROPERTY_STYLE, GLOBAL_STYLE, TAG_STYLE];\n encroachStyles(shadow, STYLES, themeDetails.encroachCss);\n if (themeDetails.loglevel === \"debug\") {\n console.log(elm.tagName, STYLES);\n }\n if (themeDetails.cache === true) {\n if (CSS_STYLE_CACHE.has(themeName) === false) {\n CSS_STYLE_CACHE.set(themeName, /* @__PURE__ */ new Map());\n }\n CSS_STYLE_CACHE.get(themeName)?.set(elm.tagName, STYLES);\n }\n switchStyle(elm, shadow, STYLES, styleDisplay);\n }\n};\nconst switchStyle = (elm, shadow, styles, styleDisplay) => {\n removeStyle(shadow);\n patchStyle(shadow, styles);\n elm.style.display = styleDisplay;\n};\nconst logHydratedHistory = (themeDetails) => {\n if (themeDetails.loglevel === \"debug\") {\n HYDRATED_HISTORY.push({\n timestamp: Date.now(),\n numberOfTasks: STYLING_TASK_QUEUE.size\n });\n }\n};\nconst pushToDoTask = (elm, themeDetails) => {\n STYLING_TASK_QUEUE.set(elm, {\n /**\n * Das Element soll solange nicht sichtbar bleiben\n * bis der Style im DOM gesetzt ist.\n */\n styleDisplay: `${elm.style.display}`,\n themeDetails\n });\n};\nconst loggedPushToDoTask = (elm, themeDetails) => {\n pushToDoTask(elm, themeDetails);\n logHydratedHistory(themeDetails);\n};\nconst deleteDoneTask = (elm) => {\n STYLING_TASK_QUEUE.delete(elm);\n};\nconst loggedDeleteDoneTask = (elm, themeDetails) => {\n deleteDoneTask(elm);\n logHydratedHistory(themeDetails);\n};\nconst waitForHydrated = (elm) => {\n const T = setTimeout(() => {\n clearTimeout(T);\n if (STYLING_TASK_QUEUE.has(elm) && elm.classList.contains(\"hydrated\")) {\n const { styleDisplay, themeDetails } = STYLING_TASK_QUEUE.get(elm);\n setThemeStyleAfterHydrated(elm, themeDetails, styleDisplay);\n loggedDeleteDoneTask(elm, themeDetails);\n } else {\n waitForHydrated(elm);\n }\n }, 25);\n};\nconst observerCallback = (mutationsList) => {\n for (const mutation of mutationsList) {\n if (\n /**\n * Save by observer config\n */\n // mutation.type === 'attributes' &&\n // mutation.attributeName === 'class' &&\n /**\n * Implizit check for HTMLElement\n */\n // mutation.target &&\n STYLING_TASK_QUEUE.has(mutation.target) && mutation.target.classList.contains(\"hydrated\")\n ) {\n const { styleDisplay, themeDetails } = STYLING_TASK_QUEUE.get(mutation.target);\n setThemeStyleAfterHydrated(mutation.target, themeDetails, styleDisplay);\n loggedDeleteDoneTask(mutation.target, themeDetails);\n }\n }\n};\nconst observerOptions = {\n attributes: true,\n attributeFilter: [\"class\"],\n childList: false,\n subtree: false\n};\nlet observer;\ntry {\n observer = new MutationObserver(observerCallback);\n} catch (e) {\n observer = null;\n}\nconst setThemeStyle = (elm, themeDetails) => {\n loggedPushToDoTask(elm, themeDetails);\n if (observer) {\n observer.observe(elm, observerOptions);\n } else {\n waitForHydrated(elm);\n }\n elm.style.display = \"none\";\n};\n\nclass Theme {\n constructor(prefix, keyEnum, tagEnum) {\n this.createTheme = (name, map) => createTheme(name, map);\n this.createTranslation = (name, map) => createTranslation(name, map);\n this.Prefix = prefix;\n this.Key = Object.getOwnPropertyNames(keyEnum);\n this.Tag = Object.getOwnPropertyNames(tagEnum);\n }\n}\n\nexport { RobustStore, STORE, Theme, getTheme, getThemeDetails, patchTheme, patchThemeTag, register, setThemeStyle };\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- var e={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};export{e as c};
4
+ var e={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},r=l,a={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function l(r){var l,n,t=[],i=1;if("string"==typeof r)if(e[r])t=e[r].slice(),n="rgb";else if("transparent"===r)i=0,n="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(r)){var s=r.slice(1);i=1,(u=s.length)<=4?(t=[parseInt(s[0]+s[0],16),parseInt(s[1]+s[1],16),parseInt(s[2]+s[2],16)],4===u&&(i=parseInt(s[3]+s[3],16)/255)):(t=[parseInt(s[0]+s[1],16),parseInt(s[2]+s[3],16),parseInt(s[4]+s[5],16)],8===u&&(i=parseInt(s[6]+s[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),n="rgb"}else if(l=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(r)){var o=l[1],g="rgb"===o;n=s=o.replace(/a$/,"");var u="cmyk"===s?4:"gray"===s?1:3;t=l[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===u?parseFloat(e)/100:"rgb"===s?255*parseFloat(e)/100:parseFloat(e);if("h"===s[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==a[e])return a[e]}return parseFloat(e)})),o===s&&t.push(1),i=g||void 0===t[u]?1:t[u],t=t.slice(0,u)}else r.length>10&&/[0-9](?:\s|\/)/.test(r)&&(t=r.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),n=r.match(/([a-z])/gi).join("").toLowerCase());else isNaN(r)?Array.isArray(r)||r.length?(t=[r[0],r[1],r[2]],n="rgb",i=4===r.length?r[3]:1):r instanceof Object&&(null!=r.r||null!=r.red||null!=r.R?(n="rgb",t=[r.r||r.red||r.R||0,r.g||r.green||r.G||0,r.b||r.blue||r.B||0]):(n="hsl",t=[r.h||r.hue||r.H||0,r.s||r.saturation||r.S||0,r.l||r.lightness||r.L||r.b||r.brightness]),i=r.a||r.alpha||r.opacity||1,null!=r.opacity&&(i/=100)):(n="rgb",t=[r>>>16,(65280&r)>>>8,255&r]);return{space:n,values:t,alpha:i}}var i=function(e){var a;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var l=r(e);if(!l.space)return[];var t=[0,0,0],i="h"===l.space[0]?[360,100,100]:[255,255,255];return(a=Array(3))[0]=Math.min(Math.max(l.values[0],t[0]),i[0]),a[1]=Math.min(Math.max(l.values[1],t[1]),i[1]),a[2]=Math.min(Math.max(l.values[2],t[2]),i[2]),"h"===l.space[0]&&(a=n(a)),a.push(Math.min(Math.max(l.alpha,0),1)),a};function n(e){var r,a,l,n,t,i=e[0]/360,s=e[1]/100,o=e[2]/100,g=0;if(0===s)return[t=255*o,t,t];for(r=2*o-(a=o<.5?o*(1+s):o+s-o*s),n=[0,0,0];g<3;)(l=i+1/3*-(g-1))<0?l++:l>1&&l--,t=6*l<1?r+6*(a-r)*l:2*l<1?a:3*l<2?r+(a-r)*(2/3-l)*6:r,n[g++]=255*t;return n}export{i as c};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["colorName","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","colorParse","parse","baseHues","cstr","m","parts","alpha","space","names","slice","test","base","size","length","isShort","parseInt","exec","name","isRGB","replace","trim","split","map","x","i","parseFloat","undefined","push","match","value","join","toLowerCase","isNaN","Array","isArray","Object","r","R","g","G","b","B","h","hue","H","s","saturation","S","l","lightness","L","brightness","a","opacity","values","rgba","color","raw","String","apply","arguments","parsed","min","max","Math","hsl2rgb","hsl","t1","t2","t3","rgb","val"],"sources":["./node_modules/color-name/index.js","./node_modules/color-parse/index.js","./node_modules/color-rgba/index.js"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/**\r\n * @module color-parse\r\n */\r\n\r\n'use strict'\r\n\r\nvar names = require('color-name')\r\n\r\nmodule.exports = parse\r\n\r\n/**\r\n * Base hues\r\n * http://dev.w3.org/csswg/css-color/#typedef-named-hue\r\n */\r\n//FIXME: use external hue detector\r\nvar baseHues = {\r\n\tred: 0,\r\n\torange: 60,\r\n\tyellow: 120,\r\n\tgreen: 180,\r\n\tblue: 240,\r\n\tpurple: 300\r\n}\r\n\r\n/**\r\n * Parse color from the string passed\r\n *\r\n * @return {Object} A space indicator `space`, an array `values` and `alpha`\r\n */\r\nfunction parse (cstr) {\r\n\tvar m, parts = [], alpha = 1, space\r\n\r\n\tif (typeof cstr === 'string') {\r\n\t\t//keyword\r\n\t\tif (names[cstr]) {\r\n\t\t\tparts = names[cstr].slice()\r\n\t\t\tspace = 'rgb'\r\n\t\t}\r\n\r\n\t\t//reserved words\r\n\t\telse if (cstr === 'transparent') {\r\n\t\t\talpha = 0\r\n\t\t\tspace = 'rgb'\r\n\t\t\tparts = [0,0,0]\r\n\t\t}\r\n\r\n\t\t//hex\r\n\t\telse if (/^#[A-Fa-f0-9]+$/.test(cstr)) {\r\n\t\t\tvar base = cstr.slice(1)\r\n\t\t\tvar size = base.length\r\n\t\t\tvar isShort = size <= 4\r\n\t\t\talpha = 1\r\n\r\n\t\t\tif (isShort) {\r\n\t\t\t\tparts = [\r\n\t\t\t\t\tparseInt(base[0] + base[0], 16),\r\n\t\t\t\t\tparseInt(base[1] + base[1], 16),\r\n\t\t\t\t\tparseInt(base[2] + base[2], 16)\r\n\t\t\t\t]\r\n\t\t\t\tif (size === 4) {\r\n\t\t\t\t\talpha = parseInt(base[3] + base[3], 16) / 255\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tparts = [\r\n\t\t\t\t\tparseInt(base[0] + base[1], 16),\r\n\t\t\t\t\tparseInt(base[2] + base[3], 16),\r\n\t\t\t\t\tparseInt(base[4] + base[5], 16)\r\n\t\t\t\t]\r\n\t\t\t\tif (size === 8) {\r\n\t\t\t\t\talpha = parseInt(base[6] + base[7], 16) / 255\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!parts[0]) parts[0] = 0\r\n\t\t\tif (!parts[1]) parts[1] = 0\r\n\t\t\tif (!parts[2]) parts[2] = 0\r\n\r\n\t\t\tspace = 'rgb'\r\n\t\t}\r\n\r\n\t\t//color space\r\n\t\telse if (m = /^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(cstr)) {\r\n\t\t\tvar name = m[1]\r\n\t\t\tvar isRGB = name === 'rgb'\r\n\t\t\tvar base = name.replace(/a$/, '')\r\n\t\t\tspace = base\r\n\t\t\tvar size = base === 'cmyk' ? 4 : base === 'gray' ? 1 : 3\r\n\t\t\tparts = m[2].trim()\r\n\t\t\t\t.split(/\\s*[,\\/]\\s*|\\s+/)\r\n\t\t\t\t.map(function (x, i) {\r\n\t\t\t\t\t//<percentage>\r\n\t\t\t\t\tif (/%$/.test(x)) {\r\n\t\t\t\t\t\t//alpha\r\n\t\t\t\t\t\tif (i === size)\treturn parseFloat(x) / 100\r\n\t\t\t\t\t\t//rgb\r\n\t\t\t\t\t\tif (base === 'rgb') return parseFloat(x) * 255 / 100\r\n\t\t\t\t\t\treturn parseFloat(x)\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//hue\r\n\t\t\t\t\telse if (base[i] === 'h') {\r\n\t\t\t\t\t\t//<deg>\r\n\t\t\t\t\t\tif (/deg$/.test(x)) {\r\n\t\t\t\t\t\t\treturn parseFloat(x)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t//<base-hue>\r\n\t\t\t\t\t\telse if (baseHues[x] !== undefined) {\r\n\t\t\t\t\t\t\treturn baseHues[x]\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn parseFloat(x)\r\n\t\t\t\t})\r\n\r\n\t\t\tif (name === base) parts.push(1)\r\n\t\t\talpha = (isRGB) ? 1 : (parts[size] === undefined) ? 1 : parts[size]\r\n\t\t\tparts = parts.slice(0, size)\r\n\t\t}\r\n\r\n\t\t//named channels case\r\n\t\telse if (cstr.length > 10 && /[0-9](?:\\s|\\/)/.test(cstr)) {\r\n\t\t\tparts = cstr.match(/([0-9]+)/g).map(function (value) {\r\n\t\t\t\treturn parseFloat(value)\r\n\t\t\t})\r\n\r\n\t\t\tspace = cstr.match(/([a-z])/ig).join('').toLowerCase()\r\n\t\t}\r\n\t}\r\n\r\n\t//numeric case\r\n\telse if (!isNaN(cstr)) {\r\n\t\tspace = 'rgb'\r\n\t\tparts = [cstr >>> 16, (cstr & 0x00ff00) >>> 8, cstr & 0x0000ff]\r\n\t}\r\n\r\n\t//array-like\r\n\telse if (Array.isArray(cstr) || cstr.length) {\r\n\t\tparts = [cstr[0], cstr[1], cstr[2]]\r\n\t\tspace = 'rgb'\r\n\t\talpha = cstr.length === 4 ? cstr[3] : 1\r\n\t}\r\n\r\n\t//object case - detects css cases of rgb and hsl\r\n\telse if (cstr instanceof Object) {\r\n\t\tif (cstr.r != null || cstr.red != null || cstr.R != null) {\r\n\t\t\tspace = 'rgb'\r\n\t\t\tparts = [\r\n\t\t\t\tcstr.r || cstr.red || cstr.R || 0,\r\n\t\t\t\tcstr.g || cstr.green || cstr.G || 0,\r\n\t\t\t\tcstr.b || cstr.blue || cstr.B || 0\r\n\t\t\t]\r\n\t\t}\r\n\t\telse {\r\n\t\t\tspace = 'hsl'\r\n\t\t\tparts = [\r\n\t\t\t\tcstr.h || cstr.hue || cstr.H || 0,\r\n\t\t\t\tcstr.s || cstr.saturation || cstr.S || 0,\r\n\t\t\t\tcstr.l || cstr.lightness || cstr.L || cstr.b || cstr.brightness\r\n\t\t\t]\r\n\t\t}\r\n\r\n\t\talpha = cstr.a || cstr.alpha || cstr.opacity || 1\r\n\r\n\t\tif (cstr.opacity != null) alpha /= 100\r\n\t}\r\n\r\n\treturn {\r\n\t\tspace: space,\r\n\t\tvalues: parts,\r\n\t\talpha: alpha\r\n\t}\r\n}\r\n","/** @module color-rgba */\r\n\r\n'use strict'\r\n\r\nvar parse = require('color-parse')\r\n\r\nmodule.exports = function rgba (color) {\r\n\t// template literals\r\n\tif (Array.isArray(color) && color.raw) color = String.raw.apply(null, arguments)\r\n\r\n\tvar values, i, l\r\n\r\n\t//attempt to parse non-array arguments\r\n\tvar parsed = parse(color)\r\n\r\n\tif (!parsed.space) return []\r\n\r\n\tvar min = [0,0,0], max = parsed.space[0] === 'h' ? [360,100,100] : [255,255,255]\r\n\r\n\tvalues = Array(3)\r\n\tvalues[0] = Math.min(Math.max(parsed.values[0], min[0]), max[0])\r\n\tvalues[1] = Math.min(Math.max(parsed.values[1], min[1]), max[1])\r\n\tvalues[2] = Math.min(Math.max(parsed.values[2], min[2]), max[2])\r\n\r\n\tif (parsed.space[0] === 'h') values = hsl2rgb(values)\r\n\r\n\tvalues.push(Math.min(Math.max(parsed.alpha, 0), 1))\r\n\r\n\treturn values\r\n}\r\n\r\n\r\n// excerpt from color-space/hsl\r\nfunction hsl2rgb(hsl) {\r\n\tvar h = hsl[0]/360, s = hsl[1]/100, l = hsl[2]/100, t1, t2, t3, rgb, val, i=0;\r\n\r\n\tif (s === 0) return val = l * 255, [val, val, val];\r\n\r\n\tt2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n\tt1 = 2 * l - t2;\r\n\r\n\trgb = [0, 0, 0];\r\n\tfor (;i<3;) {\r\n\t\tt3 = h + 1 / 3 * - (i - 1);\r\n\t\tt3 < 0 ? t3++ : t3 > 1 && t3--;\r\n\t\tval = 6 * t3 < 1 ? t1 + (t2 - t1) * 6 * t3 :\r\n\t\t2 * t3 < 1 ? t2 :\r\n\t\t3 * t3 < 2 ? t1 + (t2 - t1) * (2 / 3 - t3) * 6 :\r\n\t\tt1;\r\n\t\trgb[i++] = val * 255;\r\n\t}\r\n\r\n\treturn rgb;\r\n}\r\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- 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-7a6ffb62.js";export{T as ToasterService,c as configKoliBri}from"./dev.utils-3ec9f837.js";export{K as KoliBriDevHelper}from"./prop.validators-62a61880.js";export{t as translations}from"./i18n-9b7525d8.js";export{r as register}from"./index-0fb82b03.js";import"./reuse-2b3b6999.js";import"./index-68b1f91c.js";import"./index.m-86dc8c44.js";import"./a11y.tipps-353a7f35.js";
4
+ 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-7a6ffb62.js";export{T as ToasterService,c as configKoliBri}from"./log-829fbbc7.js";export{K as KoliBriDevHelper}from"./prop.validators-27682076.js";export{r as register,t as translations}from"./i18n-23bb2f48.js";import"./reuse-2b3b6999.js";import"./index-599f5430.js";import"./a11y.tipps-7a139717.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 e}from"./index-0dce65d2.js";import{w as o}from"./button-link-01028aae.js";import{n as s}from"./dev.utils-3ec9f837.js";import{w as l}from"./prop.validators-62a61880.js";import"./reuse-2b3b6999.js";import"./index-68b1f91c.js";import"./index.m-86dc8c44.js";import"./a11y.tipps-353a7f35.js";const a="*{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:bold}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:0.25rem;place-items:center}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}:host abbr{cursor:help}",n=class{constructor(i){t(this,i),this.nonce=s(),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",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){l(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"]}}};n.style={default:a};export{n as kol_abbr};
4
+ import{r as i,h as o,H as r}from"./index-50adf9a0.js";import{w as t}from"./button-link-75df8fe4.js";import{n as l}from"./log-829fbbc7.js";import{w as e}from"./prop.validators-27682076.js";import"./reuse-2b3b6999.js";import"./index-599f5430.js";import"./a11y.tipps-7a139717.js";const a=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*{box-sizing:border-box;font-family:var(--kolibri-font-family)}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}button{min-height:44px;min-width:44px;padding:0;margin:0}a,button,input,select,textarea{cursor:pointer;font-family:inherit}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}h1,h2,h3,h4,h5,h6{font-size:1rem;margin:0}:host>abbr{cursor:help}",n=class{constructor(o){i(this,o),this.nonce=l(),this._tooltipAlign="top",this._title=void 0,this.state={_title:"",_tooltipAlign:"top"}}render(){return o(r,null,o("abbr",{"aria-labelledby":this.nonce,role:"definition",title:this.state._title},o("span",{title:""},o("slot",null))),o("kol-tooltip",{_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._title}))}validateTitle(i){e(this,"_title",i,{required:!0})}validateTooltipAlign(i){t(this,"_tooltipAlign",i)}componentWillLoad(){this.validateTitle(this._title),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_title:["validateTitle"],_tooltipAlign:["validateTooltipAlign"]}}};n.style={default:a};export{n as kol_abbr};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolAbbr","this","nonce","_title","_tooltipAlign","render","h","Host","role","title","state","_align","_id","_label","validateTitle","value","watchString","required","validateTooltipAlign","watchTooltipAlignment","componentWillLoad"],"sources":["./src/components/abbr/style.sass?tag=kol-abbr&mode=default&encapsulation=shadow","./src/components/abbr/component.tsx"],"sourcesContent":["@import ../style\n\n:host\n\n\tabbr\n\t\tcursor: help\n","import { Generic } from '@a11y-ui/core';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { watchTooltipAlignment } from '../../types/button-link';\nimport { Alignment } from '../../types/props/alignment';\nimport { nonce } from '../../utils/dev.utils';\nimport { watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\ttitle: string;\n};\ntype OptionalProps = {\n\ttooltipAlign: Alignment;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps & OptionalProps;\ntype OptionalStates = unknown;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" title={this.state._title}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<kol-tooltip _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._title}></kol-tooltip>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Tooltip entweder oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Alignment = 'top';\n\n\t/**\n\t * Dieses Property gibt die Beschreibung oder Erläuterung der Abkürzung an.\n\t */\n\t@Prop() public _title!: string;\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_title: '',\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_title')\n\tpublic validateTitle(value?: string): void {\n\t\twatchString(this, '_title', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: Alignment): void {\n\t\twatchTooltipAlignment(this, '_tooltipAlign', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateTitle(this._title);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"mappings":";;;yTAAA,MAAMA,EAAkB,giB,MC8BXC,EAAO,M,yBACFC,KAAAC,MAAQA,I,mBAkBkB,M,iCAgBX,CAC/BC,OAAQ,GACRC,cAAe,M,CAlCTC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,0BAAuBL,KAAKC,MAAOM,KAAK,aAAaC,MAAOR,KAAKS,MAAMP,QACtEG,EAAA,QAAMG,MAAM,IACXH,EAAA,eAGFA,EAAA,eAAaK,OAAQV,KAAKS,MAAMN,cAAeQ,IAAKX,KAAKC,MAAOW,OAAQZ,KAAKS,MAAMP,S,CAsC/EW,cAAcC,GACpBC,EAAYf,KAAM,SAAUc,EAAO,CAClCE,SAAU,M,CAQLC,qBAAqBH,GAC3BI,EAAsBlB,KAAM,gBAAiBc,E,CAMvCK,oBACNnB,KAAKa,cAAcb,KAAKE,QACxBF,KAAKiB,qBAAqBjB,KAAKG,c"}
1
+ {"version":3,"names":["defaultStyleCss","KolAbbr","this","nonce","_title","_tooltipAlign","render","h","Host","role","title","state","_align","_id","_label","validateTitle","value","watchString","required","validateTooltipAlign","watchTooltipAlignment","componentWillLoad"],"sources":["./src/components/abbr/style.css?tag=kol-abbr&mode=default&encapsulation=shadow","./src/components/abbr/component.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > abbr {\n\tcursor: help;\n}\n","import { Generic } from '@a11y-ui/core';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { watchTooltipAlignment } from '../../types/button-link';\nimport { Alignment } from '../../types/props/alignment';\nimport { nonce } from '../../utils/dev.utils';\nimport { watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\ttitle: string;\n};\ntype OptionalProps = {\n\ttooltipAlign: Alignment;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps & OptionalProps;\ntype OptionalStates = unknown;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" title={this.state._title}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<kol-tooltip _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._title}></kol-tooltip>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Tooltip entweder oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Alignment = 'top';\n\n\t/**\n\t * Dieses Property gibt die Beschreibung oder Erläuterung der Abkürzung an.\n\t */\n\t@Prop() public _title!: string;\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_title: '',\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_title')\n\tpublic validateTitle(value?: string): void {\n\t\twatchString(this, '_title', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: Alignment): void {\n\t\twatchTooltipAlignment(this, '_tooltipAlign', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateTitle(this._title);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"mappings":";;;qRAAA,MAAMA,EAAkB,4uC,MC8BXC,EAAO,M,yBACFC,KAAAC,MAAQA,I,mBAkBkB,M,iCAgBX,CAC/BC,OAAQ,GACRC,cAAe,M,CAlCTC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,0BAAuBL,KAAKC,MAAOM,KAAK,aAAaC,MAAOR,KAAKS,MAAMP,QACtEG,EAAA,QAAMG,MAAM,IACXH,EAAA,eAGFA,EAAA,eAAaK,OAAQV,KAAKS,MAAMN,cAAeQ,IAAKX,KAAKC,MAAOW,OAAQZ,KAAKS,MAAMP,S,CAsC/EW,cAAcC,GACpBC,EAAYf,KAAM,SAAUc,EAAO,CAClCE,SAAU,M,CAQLC,qBAAqBH,GAC3BI,EAAsBlB,KAAM,gBAAiBc,E,CAMvCK,oBACNnB,KAAKa,cAAcb,KAAKE,QACxBF,KAAKiB,qBAAqBjB,KAAKG,c"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as e,h as i,H as t}from"./index-0dce65d2.js";import{f as n}from"./a11y.tipps-353a7f35.js";import{w as s,s as o,b as a}from"./prop.validators-62a61880.js";import{w as r}from"./validation-0dc15e8d.js";import"./dev.utils-3ec9f837.js";import"./reuse-2b3b6999.js";import"./index-68b1f91c.js";import"./index.m-86dc8c44.js";const l="*{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:bold}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:0.25rem;place-items:center}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}";n("[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"),n("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const d=class{constructor(t){e(this,t),this.catchAriaExpanded=e=>{e instanceof HTMLButtonElement&&(this.buttonRef=e,this.triggerAriaExpanded(e))},this.triggerAriaExpanded=e=>{e.setAttribute("aria-expanded",this.state._open?"true":"false")},this.onClick=e=>{this._open=!1===this._open;const t=setTimeout((()=>{var i;clearTimeout(t),"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onClick)&&this.state._on.onClick(e,!0===this._open),this.buttonRef instanceof HTMLButtonElement&&this.triggerAriaExpanded(this.buttonRef)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"⚠",_level:1}}render(){return i(t,null,i("div",{part:"accordion "+(this.state._open?"open":"close")},i("kol-heading-wc",{_level:this.state._level},i("button",{ref:this.catchAriaExpanded,onClick:this.onClick},i("kol-icon",{_ariaLabel:"",_icon:this.state._open?"fa-solid fa-minus":"fa-solid fa-plus",_part:this.state._open?"close":"open"}),i("span",null,this.state._heading))),i("div",{part:"header"},i("slot",{name:"header"})),i("div",{part:"content",style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},i("slot",{name:"content"}))))}validateHeading(e){s(this,"_heading",e,{required:!0})}validateLevel(e){r(this,e)}validateOn(e){"object"==typeof e&&null!==e&&"function"==typeof e.onClick&&o(this,"_on",e)}validateOpen(e){a(this,"_open",e)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};d.style={default:l};export{d as kol_accordion};
4
+ import{r as i,h as e,H as o}from"./index-50adf9a0.js";import{f as t}from"./a11y.tipps-7a139717.js";import{w as n,s as r,b as a}from"./prop.validators-27682076.js";import{w as s}from"./validation-7fe30a10.js";import"./log-829fbbc7.js";import"./reuse-2b3b6999.js";import"./index-599f5430.js";const l=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*{box-sizing:border-box;font-family:var(--kolibri-font-family)}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}button{min-height:44px;min-width:44px;padding:0;margin:0}a,button,input,select,textarea{cursor:pointer;font-family:inherit}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}h1,h2,h3,h4,h5,h6{font-size:1rem;margin:0}";t("[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"),t("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const d=class{constructor(e){i(this,e),this.catchAriaExpanded=i=>{i instanceof HTMLButtonElement&&(this.buttonRef=i,this.triggerAriaExpanded(i))},this.triggerAriaExpanded=i=>{i.setAttribute("aria-expanded",this.state._open?"true":"false")},this.onClick=i=>{this._open=!1===this._open;const e=setTimeout((()=>{var o;clearTimeout(e),"function"==typeof(null===(o=this.state._on)||void 0===o?void 0:o.onClick)&&this.state._on.onClick(i,!0===this._open),this.buttonRef instanceof HTMLButtonElement&&this.triggerAriaExpanded(this.buttonRef)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"⚠",_level:1}}render(){return e(o,null,e("div",{part:"accordion "+(this.state._open?"open":"close")},e("kol-heading-wc",{_label:"",_level:this.state._level},e("button",{ref:this.catchAriaExpanded,onClick:this.onClick},e("kol-icon",{_ariaLabel:"",_icon:this.state._open?"fa-solid fa-minus":"fa-solid fa-plus",_part:this.state._open?"close":"open"}),e("span",null,this.state._heading))),e("div",{part:"header"},e("slot",{name:"header"})),e("div",{part:"content",style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},e("slot",{name:"content"}))))}validateHeading(i){n(this,"_heading",i,{required:!0})}validateLevel(i){s(this,i)}validateOn(i){"object"==typeof i&&null!==i&&"function"==typeof i.onClick&&r(this,"_on",i)}validateOpen(i){a(this,"_open",i)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};d.style={default:l};export{d as kol_accordion};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","featureHint","KolAccordion","this","catchAriaExpanded","button","HTMLButtonElement","buttonRef","triggerAriaExpanded","setAttribute","state","_open","onClick","event","timeout","setTimeout","clearTimeout","_a","_on","_heading","_level","render","h","Host","part","ref","_ariaLabel","_icon","_part","name","style","display","height","visibility","undefined","validateHeading","value","watchString","required","validateLevel","watchHeadingLevel","validateOn","setState","validateOpen","watchBoolean","componentWillLoad"],"sources":["./src/components/style.sass?tag=kol-accordion&mode=default&encapsulation=shadow","./src/components/accordion/component.tsx"],"sourcesContent":["*\n\tbox-sizing: border-box\n\tfont-size: inherit\n\thyphens: auto\n\tletter-spacing: inherit\n\tword-break: break-word\n\tword-spacing: inherit\n\nkol-heading-wc\n\tfont-weight: bold\n\nkol-icon\n\tcolor: inherit\n\nkol-span-wc\n\tdisplay: grid\n\tplace-items: center\n\twidth: 100%\n\n\t> span\n\t\tdisplay: flex\n\t\tgap: 0.25rem\n\t\tplace-items: center\n\na,\nbutton,\ninput,\nselect,\ntextarea\n\tcursor: pointer\n\na,\nbutton\n\t&.icon-only\n\n\t\t> kol-span-wc\n\n\t\t\t> span\n\n\t\t\t\t> span\n\t\t\t\t\tdisplay: none\n\na\n\tdisplay: inline-flex\n\tplace-items: baseline\n\nbutton\n\tbackground-color: transparent\n\tborder-width: 0\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Generic } from '@a11y-ui/core';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Events } from '../../enums/events';\n\nimport { EventValueCallback } from '../../types/callbacks';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { setState, watchBoolean, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\n\nfeatureHint(`[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`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\nexport type KoliBriAccordionCallbacks = {\n\t[Events.onClick]?: EventValueCallback<Event, boolean>;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\theading: string;\n};\ntype OptionalProps = {\n\tlevel: HeadingLevel;\n\topen: boolean;\n\ton: KoliBriAccordionCallbacks;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @part accordion - Ermöglicht das Stylen des äußeren Container des Accordions.\n * @part open - Ermöglicht das Stylen des geöffneten Zustands und Icons.\n * @part close - Ermöglicht das Stylen des geschlossenen Zustands und Icons.\n * @part icon - Ermöglicht das Stylen der Icons.\n * @part header - Ermöglicht das Stylen des Kopfbereichs.\n * @part content - Ermöglicht das Stylen des Inhaltsbereichs.\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: '../style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate buttonRef?: HTMLButtonElement;\n\t// private content?: HTMLDivElement;\n\n\tprivate catchAriaExpanded = (button?: HTMLButtonElement) => {\n\t\tif (button instanceof HTMLButtonElement) {\n\t\t\tthis.buttonRef = button;\n\t\t\tthis.triggerAriaExpanded(button);\n\t\t}\n\t};\n\tprivate triggerAriaExpanded = (button: HTMLButtonElement) => {\n\t\tbutton.setAttribute('aria-expanded', this.state._open ? 'true' : 'false');\n\t};\n\n\tpublic render(): JSX.Element {\n\t\t// const height = this.content?.getBoundingClientRect().height ?? 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div part={`accordion ${this.state._open ? 'open' : 'close'}`}>\n\t\t\t\t\t<kol-heading-wc _level={this.state._level}>\n\t\t\t\t\t\t<button ref={this.catchAriaExpanded} onClick={this.onClick}>\n\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon={this.state._open ? 'fa-solid fa-minus' : 'fa-solid fa-plus'} _part={this.state._open ? 'close' : 'open'} />\n\t\t\t\t\t\t\t<span>{this.state._heading}</span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div part=\"header\">\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div\n\t\t\t\t\t\tpart=\"content\"\n\t\t\t\t\t\t// ref={(r) => (this.content = r)}\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tthis.state._open === false\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\tdisplay: 'none',\n\t\t\t\t\t\t\t\t\t\theight: '0',\n\t\t\t\t\t\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// style={\n\t\t\t\t\t\t// \tthis.state._open\n\t\t\t\t\t\t// \t\t? height > 0 && processEnv !== 'test' // TODO: remove this check when testing is fixed\n\t\t\t\t\t\t// \t\t\t? {\n\t\t\t\t\t\t// \t\t\t\theight: `${height}px`,\n\t\t\t\t\t\t// \t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\t}\n\t\t\t\t\t\t// \t\t\t: undefined\n\t\t\t\t\t\t// \t\t: {\n\t\t\t\t\t\t// \t\t\theight: '0',\n\t\t\t\t\t\t// \t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\tvisibility: 'hidden',\n\t\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\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Überschrift des Accordions an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * Gibt an, ob das Accordion geöffnet ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_heading: '⚠',\n\t\t_level: 1,\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\twatchBoolean(this, '_open', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = this._open === false;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tconst timeout = setTimeout(() => {\n\t\t\tclearTimeout(timeout);\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t\tif (this.buttonRef instanceof HTMLButtonElement) {\n\t\t\t\tthis.triggerAriaExpanded(this.buttonRef);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"mappings":";;;sUAAA,MAAMA,EAAkB,ygBCYxBC,EAAY,+OAKZA,EAAY,mE,MAyCCC,EAAY,M,yBAIhBC,KAAAC,kBAAqBC,IAC5B,GAAIA,aAAkBC,kBAAmB,CACxCH,KAAKI,UAAYF,EACjBF,KAAKK,oBAAoBH,E,GAGnBF,KAAAK,oBAAuBH,IAC9BA,EAAOI,aAAa,gBAAiBN,KAAKO,MAAMC,MAAQ,OAAS,QAAQ,EA6HlER,KAAAS,QAAWC,IAClBV,KAAKQ,MAAQR,KAAKQ,QAAU,MAQ5B,MAAMG,EAAUC,YAAW,K,MAC1BC,aAAaF,GACb,WAAWG,EAAAd,KAAKO,MAAMQ,OAAG,MAAAD,SAAA,SAAAA,EAAEL,WAAY,WAAY,CAClDT,KAAKO,MAAMQ,IAAIN,QAAQC,EAAOV,KAAKQ,QAAU,K,CAE9C,GAAIR,KAAKI,qBAAqBD,kBAAmB,CAChDH,KAAKK,oBAAoBL,KAAKI,U,IAE9B,E,oCAnFoC,E,8BAU0B,M,WAKjC,CAC/BY,SAAU,IACVC,OAAQ,E,CAzEFC,SAEN,OACCC,EAACC,EAAI,KACJD,EAAA,OAAKE,KAAM,aAAarB,KAAKO,MAAMC,MAAQ,OAAS,WACnDW,EAAA,kBAAgBF,OAAQjB,KAAKO,MAAMU,QAClCE,EAAA,UAAQG,IAAKtB,KAAKC,kBAAmBQ,QAAST,KAAKS,SAClDU,EAAA,YAAUI,WAAW,GAAGC,MAAOxB,KAAKO,MAAMC,MAAQ,oBAAsB,mBAAoBiB,MAAOzB,KAAKO,MAAMC,MAAQ,QAAU,SAChIW,EAAA,YAAOnB,KAAKO,MAAMS,YAGpBG,EAAA,OAAKE,KAAK,UACTF,EAAA,QAAMO,KAAK,YAEZP,EAAA,OACCE,KAAK,UAELM,MACC3B,KAAKO,MAAMC,QAAU,MAClB,CACAoB,QAAS,OACTC,OAAQ,IACRC,WAAY,UAEZC,WAiBJZ,EAAA,QAAMO,KAAK,c,CAuCTM,gBAAgBC,GACtBC,EAAYlC,KAAM,WAAYiC,EAAO,CACpCE,SAAU,M,CAQLC,cAAcH,GACpBI,EAAkBrC,KAAMiC,E,CAOlBK,WAAWL,GACjB,UAAWA,IAAU,UAAYA,IAAU,aAAeA,EAAMxB,UAAY,WAAY,CACvF8B,EAASvC,KAAM,MAAOiC,E,EAQjBO,aAAaP,GACnBQ,EAAazC,KAAM,QAASiC,E,CAMtBS,oBACN1C,KAAKgC,gBAAgBhC,KAAKgB,UAC1BhB,KAAKoC,cAAcpC,KAAKiB,QACxBjB,KAAKsC,WAAWtC,KAAKe,KACrBf,KAAKwC,aAAaxC,KAAKQ,M"}
1
+ {"version":3,"names":["defaultStyleCss","featureHint","KolAccordion","this","catchAriaExpanded","button","HTMLButtonElement","buttonRef","triggerAriaExpanded","setAttribute","state","_open","onClick","event","timeout","setTimeout","clearTimeout","_a","_on","_heading","_level","render","h","Host","part","_label","ref","_ariaLabel","_icon","_part","name","style","display","height","visibility","undefined","validateHeading","value","watchString","required","validateLevel","watchHeadingLevel","validateOn","setState","validateOpen","watchBoolean","componentWillLoad"],"sources":["./src/components/accordion/style.css?tag=kol-accordion&mode=default&encapsulation=shadow","./src/components/accordion/component.tsx"],"sourcesContent":["@import '../style.css';\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Generic } from '@a11y-ui/core';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Events } from '../../enums/events';\n\nimport { EventValueOrEventCallback } from '../../types/callbacks';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { setState, watchBoolean, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\n\nfeatureHint(`[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`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\nexport type KoliBriAccordionCallbacks = {\n\t[Events.onClick]?: EventValueOrEventCallback<Event, boolean>;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\theading: string;\n};\ntype OptionalProps = {\n\tlevel: HeadingLevel;\n\topen: boolean;\n\ton: KoliBriAccordionCallbacks;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @part accordion - Ermöglicht das Stylen des äußeren Container des Accordions.\n * @part open - Ermöglicht das Stylen des geöffneten Zustands und Icons.\n * @part close - Ermöglicht das Stylen des geschlossenen Zustands und Icons.\n * @part icon - Ermöglicht das Stylen der Icons.\n * @part header - Ermöglicht das Stylen des Kopfbereichs.\n * @part content - Ermöglicht das Stylen des Inhaltsbereichs.\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate buttonRef?: HTMLButtonElement;\n\t// private content?: HTMLDivElement;\n\n\tprivate catchAriaExpanded = (button?: HTMLButtonElement) => {\n\t\tif (button instanceof HTMLButtonElement) {\n\t\t\tthis.buttonRef = button;\n\t\t\tthis.triggerAriaExpanded(button);\n\t\t}\n\t};\n\tprivate triggerAriaExpanded = (button: HTMLButtonElement) => {\n\t\tbutton.setAttribute('aria-expanded', this.state._open ? 'true' : 'false');\n\t};\n\n\tpublic render(): JSX.Element {\n\t\t// const height = this.content?.getBoundingClientRect().height ?? 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div part={`accordion ${this.state._open ? 'open' : 'close'}`}>\n\t\t\t\t\t<kol-heading-wc _label=\"\" _level={this.state._level}>\n\t\t\t\t\t\t<button ref={this.catchAriaExpanded} onClick={this.onClick}>\n\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon={this.state._open ? 'fa-solid fa-minus' : 'fa-solid fa-plus'} _part={this.state._open ? 'close' : 'open'} />\n\t\t\t\t\t\t\t<span>{this.state._heading}</span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div part=\"header\">\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div\n\t\t\t\t\t\tpart=\"content\"\n\t\t\t\t\t\t// ref={(r) => (this.content = r)}\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tthis.state._open === false\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\tdisplay: 'none',\n\t\t\t\t\t\t\t\t\t\theight: '0',\n\t\t\t\t\t\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// style={\n\t\t\t\t\t\t// \tthis.state._open\n\t\t\t\t\t\t// \t\t? height > 0 && processEnv !== 'test' // TODO: remove this check when testing is fixed\n\t\t\t\t\t\t// \t\t\t? {\n\t\t\t\t\t\t// \t\t\t\theight: `${height}px`,\n\t\t\t\t\t\t// \t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\t}\n\t\t\t\t\t\t// \t\t\t: undefined\n\t\t\t\t\t\t// \t\t: {\n\t\t\t\t\t\t// \t\t\theight: '0',\n\t\t\t\t\t\t// \t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\tvisibility: 'hidden',\n\t\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\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Überschrift des Accordions an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * Gibt an, ob das Accordion geöffnet ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_heading: '⚠',\n\t\t_level: 1,\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\twatchBoolean(this, '_open', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = this._open === false;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tconst timeout = setTimeout(() => {\n\t\t\tclearTimeout(timeout);\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t\tif (this.buttonRef instanceof HTMLButtonElement) {\n\t\t\t\tthis.triggerAriaExpanded(this.buttonRef);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"mappings":";;;kSAAA,MAAMA,EAAkB,qtCCYxBC,EAAY,+OAKZA,EAAY,mE,MAyCCC,EAAY,M,yBAIhBC,KAAAC,kBAAqBC,IAC5B,GAAIA,aAAkBC,kBAAmB,CACxCH,KAAKI,UAAYF,EACjBF,KAAKK,oBAAoBH,E,GAGnBF,KAAAK,oBAAuBH,IAC9BA,EAAOI,aAAa,gBAAiBN,KAAKO,MAAMC,MAAQ,OAAS,QAAQ,EA6HlER,KAAAS,QAAWC,IAClBV,KAAKQ,MAAQR,KAAKQ,QAAU,MAQ5B,MAAMG,EAAUC,YAAW,K,MAC1BC,aAAaF,GACb,WAAWG,EAAAd,KAAKO,MAAMQ,OAAG,MAAAD,SAAA,SAAAA,EAAEL,WAAY,WAAY,CAClDT,KAAKO,MAAMQ,IAAIN,QAAQC,EAAOV,KAAKQ,QAAU,K,CAE9C,GAAIR,KAAKI,qBAAqBD,kBAAmB,CAChDH,KAAKK,oBAAoBL,KAAKI,U,IAE9B,E,oCAnFoC,E,8BAU0B,M,WAKjC,CAC/BY,SAAU,IACVC,OAAQ,E,CAzEFC,SAEN,OACCC,EAACC,EAAI,KACJD,EAAA,OAAKE,KAAM,aAAarB,KAAKO,MAAMC,MAAQ,OAAS,WACnDW,EAAA,kBAAgBG,OAAO,GAAGL,OAAQjB,KAAKO,MAAMU,QAC5CE,EAAA,UAAQI,IAAKvB,KAAKC,kBAAmBQ,QAAST,KAAKS,SAClDU,EAAA,YAAUK,WAAW,GAAGC,MAAOzB,KAAKO,MAAMC,MAAQ,oBAAsB,mBAAoBkB,MAAO1B,KAAKO,MAAMC,MAAQ,QAAU,SAChIW,EAAA,YAAOnB,KAAKO,MAAMS,YAGpBG,EAAA,OAAKE,KAAK,UACTF,EAAA,QAAMQ,KAAK,YAEZR,EAAA,OACCE,KAAK,UAELO,MACC5B,KAAKO,MAAMC,QAAU,MAClB,CACAqB,QAAS,OACTC,OAAQ,IACRC,WAAY,UAEZC,WAiBJb,EAAA,QAAMQ,KAAK,c,CAuCTM,gBAAgBC,GACtBC,EAAYnC,KAAM,WAAYkC,EAAO,CACpCE,SAAU,M,CAQLC,cAAcH,GACpBI,EAAkBtC,KAAMkC,E,CAOlBK,WAAWL,GACjB,UAAWA,IAAU,UAAYA,IAAU,aAAeA,EAAMzB,UAAY,WAAY,CACvF+B,EAASxC,KAAM,MAAOkC,E,EAQjBO,aAAaP,GACnBQ,EAAa1C,KAAM,QAASkC,E,CAMtBS,oBACN3C,KAAKiC,gBAAgBjC,KAAKgB,UAC1BhB,KAAKqC,cAAcrC,KAAKiB,QACxBjB,KAAKuC,WAAWvC,KAAKe,KACrBf,KAAKyC,aAAazC,KAAKQ,M"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as e,H as t}from"./index-0dce65d2.js";import{f as a}from"./a11y.tipps-353a7f35.js";import{L as s}from"./dev.utils-3ec9f837.js";import{b as n,w as r,s as o,a as l}from"./prop.validators-62a61880.js";import{w as c}from"./validation-0dc15e8d.js";import{a as d}from"./i18n-9b7525d8.js";import"./reuse-2b3b6999.js";import"./index-68b1f91c.js";import"./index.m-86dc8c44.js";import"./index-0fb82b03.js";const h="*{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:bold}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:0.25rem;place-items:center}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}",f=a=>e("kol-icon",{class:"icon",_ariaLabel:"string"==typeof a.heading&&a.heading.length>0?"":a.ariaLabel,_icon:a.icon}),p=a=>{switch(a.type){case"error":return e(f,{ariaLabel:d("kol-error"),icon:"fa-solid fa-circle-xmark",heading:a.heading});case"info":return e(f,{ariaLabel:d("kol-info"),icon:"fa-solid fa-circle-info",heading:a.heading});case"warning":return e(f,{ariaLabel:d("kol-warning"),icon:"fa-solid fa-triangle-exclamation",heading:a.heading});case"success":return e(f,{ariaLabel:d("kol-success"),icon:"fa-solid fa-circle-check",heading:a.heading});default:return e(f,{ariaLabel:d("kol-message"),icon:"fa-regular fa-comment",heading:a.heading})}},u=class{constructor(e){i(this,e),this.close=()=>{var e;void 0!==(null===(e=this._on)||void 0===e?void 0:e.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},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(){if(this.state._alert){try{s.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(e){s.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return e(t,null,e("div",{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},"msg"===this.state._variant&&e(p,{heading:this.state._heading,type:this.state._type}),e("div",null,("string"==typeof this.state._heading&&this.state._heading.length>0||"card"===this.state._variant)&&e("kol-heading-wc",{class:"heading",_level:this.state._level},"card"===this.state._variant&&e(p,{heading:this.state._heading,type:this.state._type}),this.state._heading),e("div",{class:"content"},e("slot",null)),this.state._hasCloser&&e("kol-button-wc",{class:"close",_icon:{left:{icon:"fa-solid fa-circle-xmark"}},_iconOnly:!0,_label:d("kol-close"),_on:this.on,_tooltipAlign:"left"}))))}validateAlert(e){n(this,"_alert",e)}validateHasCloser(e){n(this,"_hasCloser",e)}validateHeading(e){r(this,"_heading",e)}validateLevel(e){c(this,e)}validateOn(e){if("object"==typeof e&&null!==e){a("[KolAlert] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const t={};"function"!=typeof e.onClose&&!0!==e.onClose||(t.onClose=e.onClose),o(this,"_on",t)}}validateType(e){l(this,"_type",(e=>"string"==typeof e&&("default"===e||"error"===e||"info"===e||"success"===e||"warning"===e)),new Set("String {success, info, warning, error}"),e)}validateVariant(e){l(this,"_variant",(e=>"card"===e||"msg"===e),new Set("AlertVariant {card, msg}"),e)}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"]}}};u.style={default:h};export{u as kol_alert};
4
+ import{r as i,h as o,H as r}from"./index-50adf9a0.js";import{L as a}from"./log-829fbbc7.js";import{b as e,w as t,s as l,a as s}from"./prop.validators-27682076.js";import{w as n}from"./validation-7fe30a10.js";import{a as d}from"./i18n-23bb2f48.js";import"./reuse-2b3b6999.js";import"./index-599f5430.js";import"./a11y.tipps-7a139717.js";const c=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*{box-sizing:border-box;font-family:var(--kolibri-font-family)}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}button{min-height:44px;min-width:44px;padding:0;margin:0}a,button,input,select,textarea{cursor:pointer;font-family:inherit}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}h1,h2,h3,h4,h5,h6{font-size:1rem;margin:0}:host>div{background-color:white;border-color:var(--kolibri-border-color);border-radius:var(--kolibri-border-radius);border-style:solid;border-width:calc(2 * var(--kolibri-border-width));display:inline-block;overflow:hidden;width:100%}:host>div>div.heading{display:grid;gap:var(--kolibri-spacing);grid-template-columns:2em auto 44px;place-items:stretch start}:host>div>div.heading .heading-icon{display:inline-flex;color:white;padding:0.5em;place-items:center}:host>div.card>div.heading .heading-icon{border-radius:0 0 var(--kolibri-border-radius) 0}:host>div>div.heading>div{align-self:center;display:grid;gap:var(--kolibri-spacing)}:host>div.card>div.content{padding:var(--kolibri-spacing)}:host>div.default{border-color:var(--kolibri-color-normal)}:host>div.default .heading-icon{background-color:var(--kolibri-color-normal)}:host>div.error{border-color:var(--kolibri-color-error)}:host>div.error .heading-icon{background-color:var(--kolibri-color-error)}:host>div.info{border-color:var(--kolibri-color-info)}:host>div.info .heading-icon{background-color:var(--kolibri-color-info)}:host>div.success{border-color:var(--kolibri-color-success)}:host>div.success .heading-icon{background-color:var(--kolibri-color-success)}:host>div.warning{border-color:var(--kolibri-color-warning)}:host>div.warning .heading-icon{background-color:var(--kolibri-color-warning)}.close,.close>button{min-width:44px;min-height:44px}",h=i=>o("kol-icon",{class:"heading-icon",_ariaLabel:"string"==typeof i.heading&&i.heading.length>0?"":i.ariaLabel,_icon:i.icon}),b=i=>{switch(i.type){case"error":return o(h,{ariaLabel:d("kol-error"),icon:"fa-solid fa-circle-xmark",heading:i.heading});case"info":return o(h,{ariaLabel:d("kol-info"),icon:"fa-solid fa-circle-info",heading:i.heading});case"warning":return o(h,{ariaLabel:d("kol-warning"),icon:"fa-solid fa-triangle-exclamation",heading:i.heading});case"success":return o(h,{ariaLabel:d("kol-success"),icon:"fa-solid fa-circle-check",heading:i.heading});default:return o(h,{ariaLabel:d("kol-message"),icon:"fa-regular fa-comment",heading:i.heading})}},f=class{constructor(o){i(this,o),this.close=()=>{var i;void 0!==(null===(i=this._on)||void 0===i?void 0:i.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=i=>"object"==typeof i&&null!==i&&"function"==typeof i.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{a.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(i){a.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return o(r,null,o("div",{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},o("div",{class:"heading"},o(b,{heading:this.state._heading,type:this.state._type}),o("div",null,"string"==typeof this.state._heading&&(null===(i=this.state._heading)||void 0===i?void 0:i.length)>0&&o("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),"msg"===this._variant&&o("div",{class:"content"},o("slot",null))),this.state._hasCloser&&o("kol-button-wc",{class:"close",_icon:{left:{icon:"fa-solid fa-xmark"}},_iconOnly:!0,_label:d("kol-close"),_on:this.on,_tooltipAlign:"left"})),"card"===this._variant&&o("div",{class:"content"},o("slot",null))))}validateAlert(i){e(this,"_alert",i)}validateHasCloser(i){e(this,"_hasCloser",i)}validateHeading(i){t(this,"_heading",i)}validateLevel(i){n(this,i)}validateOn(i){this.validateOnValue(i)&&l(this,"_on",{onClose:i.onClose})}validateType(i){s(this,"_type",(i=>"string"==typeof i&&("default"===i||"error"===i||"info"===i||"success"===i||"warning"===i)),new Set("String {success, info, warning, error}"),i)}validateVariant(i){s(this,"_variant",(i=>"card"===i||"msg"===i),new Set("AlertVariant {card, msg}"),i)}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"]}}};f.style={default:c};export{f as kol_alert};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","Icon","props","h","class","_ariaLabel","heading","length","ariaLabel","_icon","icon","AlertIcon","type","translate","KolAlert","this","close","_a","_on","onClose","undefined","Event","on","onClick","_level","render","state","_alert","Log","debug","navigator","vibrate","e","setTimeout","validateAlert","Host","_type","_variant","role","_heading","_hasCloser","left","_iconOnly","_label","_tooltipAlign","value","watchBoolean","validateHasCloser","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","featureHint","callbacks","setState","validateType","watchValidator","Set","validateVariant","componentWillLoad"],"sources":["./src/components/style.sass?tag=kol-alert&mode=default&encapsulation=shadow","./src/components/alert/component.tsx"],"sourcesContent":["*\n\tbox-sizing: border-box\n\tfont-size: inherit\n\thyphens: auto\n\tletter-spacing: inherit\n\tword-break: break-word\n\tword-spacing: inherit\n\nkol-heading-wc\n\tfont-weight: bold\n\nkol-icon\n\tcolor: inherit\n\nkol-span-wc\n\tdisplay: grid\n\tplace-items: center\n\twidth: 100%\n\n\t> span\n\t\tdisplay: flex\n\t\tgap: 0.25rem\n\t\tplace-items: center\n\na,\nbutton,\ninput,\nselect,\ntextarea\n\tcursor: pointer\n\na,\nbutton\n\t&.icon-only\n\n\t\t> kol-span-wc\n\n\t\t\t> span\n\n\t\t\t\t> span\n\t\t\t\t\tdisplay: none\n\na\n\tdisplay: inline-flex\n\tplace-items: baseline\n\nbutton\n\tbackground-color: transparent\n\tborder-width: 0\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlertType, AlertVariant, KoliBriAlertEventCallbacks } from '../../types/alert';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { Log } from '../../utils/dev.utils';\nimport { setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { translate } from '../../i18n';\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = {\n\talert: boolean;\n\thasCloser: boolean;\n\theading: string;\n\tlevel: HeadingLevel;\n\ton: KoliBriAlertEventCallbacks;\n\ttype: AlertType;\n\tvariant: AlertVariant;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\nconst Icon = (props: { ariaLabel: string; icon: string; heading?: string }) => {\n\treturn <kol-icon class=\"icon\" _ariaLabel={typeof props.heading === 'string' && props.heading.length > 0 ? '' : props.ariaLabel} _icon={props.icon} />;\n};\n\nconst AlertIcon = (props: { heading?: string; type?: AlertType }) => {\n\tswitch (props.type) {\n\t\tcase 'error':\n\t\t\treturn <Icon ariaLabel={translate('kol-error')} icon=\"fa-solid fa-circle-xmark\" heading={props.heading} />;\n\t\tcase 'info':\n\t\t\treturn <Icon ariaLabel={translate('kol-info')} icon=\"fa-solid fa-circle-info\" heading={props.heading} />;\n\t\tcase 'warning':\n\t\t\treturn <Icon ariaLabel={translate('kol-warning')} icon=\"fa-solid fa-triangle-exclamation\" heading={props.heading} />;\n\t\tcase 'success':\n\t\t\treturn <Icon ariaLabel={translate('kol-success')} icon=\"fa-solid fa-circle-check\" heading={props.heading} />;\n\t\tdefault:\n\t\t\treturn <Icon ariaLabel={translate('kol-message')} icon=\"fa-regular fa-comment\" heading={props.heading} />;\n\t}\n};\n\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: '../style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate readonly close = () => {\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClick: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tif (this.state._alert) {\n\t\t\t/**\n\t\t\t * - https://developer.mozilla.org/de/docs/Web/API/Navigator/vibrate\n\t\t\t * - https://googlechrome.github.io/samples/vibration/\n\t\t\t */\n\t\t\ttry {\n\t\t\t\tLog.debug(['Navigator should vibrate ...', navigator.vibrate([100, 75, 100, 75, 100])]);\n\t\t\t} catch (e) {\n\t\t\t\tLog.debug('Navigator does not support vibration.');\n\t\t\t}\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.validateAlert(false);\n\t\t\t}, 10000);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type as string]: true,\n\t\t\t\t\t\t[this.state._variant as string]: true,\n\t\t\t\t\t}}\n\t\t\t\t\trole={this.state._alert ? 'alert' : undefined}\n\t\t\t\t>\n\t\t\t\t\t{this.state._variant === 'msg' && <AlertIcon heading={this.state._heading} type={this.state._type} />}\n\t\t\t\t\t<div>\n\t\t\t\t\t\t{((typeof this.state._heading === 'string' && this.state._heading.length > 0) || this.state._variant === 'card') && (\n\t\t\t\t\t\t\t<kol-heading-wc class=\"heading\" _level={this.state._level}>\n\t\t\t\t\t\t\t\t{this.state._variant === 'card' && <AlertIcon heading={this.state._heading} type={this.state._type} />}\n\t\t\t\t\t\t\t\t{this.state._heading}\n\t\t\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{this.state._hasCloser && (\n\t\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t\t\t_icon={{\n\t\t\t\t\t\t\t\t\tleft: {\n\t\t\t\t\t\t\t\t\t\ticon: 'fa-solid fa-circle-xmark',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t_iconOnly\n\t\t\t\t\t\t\t\t_label={translate('kol-close')}\n\t\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t\t\t_tooltipAlign=\"left\"\n\t\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = false;\n\n\t/**\n\t * Gibt an, ob der Alert ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Gibt an, welche Benachrichtigungsvariante dargestellt wird.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_level: 1,\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\twatchBoolean(this, '_hasCloser', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAlertEventCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfeatureHint('[KolAlert] Prüfen, wie man auch einen EventCallback einzeln ändern kann.');\n\t\t\tconst callbacks: KoliBriAlertEventCallbacks = {};\n\t\t\tif (typeof value.onClose === 'function' || value.onClose === true) {\n\t\t\t\tcallbacks.onClose = value.onClose;\n\t\t\t}\n\t\t\tsetState<KoliBriAlertEventCallbacks>(this, '_on', callbacks);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_variant')\n\tpublic validateVariant(value?: AlertVariant): void {\n\t\twatchValidator(this, '_variant', (value) => value === 'card' || value === 'msg', new Set('AlertVariant {card, msg}'), value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateType(this._type);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["defaultStyleCss","Icon","props","h","class","_ariaLabel","heading","length","ariaLabel","_icon","icon","AlertIcon","type","translate","KolAlert","this","close","_a","_on","onClose","undefined","Event","on","onClick","validateOnValue","value","_level","render","state","_alert","Log","debug","navigator","vibrate","e","setTimeout","validateAlert","Host","_type","_variant","role","_heading","_label","_hasCloser","left","_iconOnly","_tooltipAlign","watchBoolean","validateHasCloser","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","setState","validateType","watchValidator","Set","validateVariant","componentWillLoad"],"sources":["./src/components/alert/style.css?tag=kol-alert&mode=default&encapsulation=shadow","./src/components/alert/component.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > div {\n\tbackground-color: white;\n\tborder-color: var(--kolibri-border-color);\n\tborder-radius: var(--kolibri-border-radius);\n\tborder-style: solid;\n\tborder-width: calc(2 * var(--kolibri-border-width));\n\tdisplay: inline-block;\n\toverflow: hidden;\n\twidth: 100%;\n}\n\n:host > div > div.heading {\n\tdisplay: grid;\n\tgap: var(--kolibri-spacing);\n\tgrid-template-columns: 2em auto 44px;\n\tplace-items: stretch start;\n}\n:host > div > div.heading .heading-icon {\n\tdisplay: inline-flex;\n\tcolor: white;\n\tpadding: 0.5em;\n\tplace-items: center;\n}\n:host > div.card > div.heading .heading-icon {\n\tborder-radius: 0 0 var(--kolibri-border-radius) 0;\n}\n:host > div > div.heading > div {\n\talign-self: center;\n\tdisplay: grid;\n\tgap: var(--kolibri-spacing);\n}\n:host > div.card > div.content {\n\tpadding: var(--kolibri-spacing);\n}\n:host > div.default {\n\tborder-color: var(--kolibri-color-normal);\n}\n:host > div.default .heading-icon {\n\tbackground-color: var(--kolibri-color-normal);\n}\n:host > div.error {\n\tborder-color: var(--kolibri-color-error);\n}\n:host > div.error .heading-icon {\n\tbackground-color: var(--kolibri-color-error);\n}\n:host > div.info {\n\tborder-color: var(--kolibri-color-info);\n}\n:host > div.info .heading-icon {\n\tbackground-color: var(--kolibri-color-info);\n}\n:host > div.success {\n\tborder-color: var(--kolibri-color-success);\n}\n:host > div.success .heading-icon {\n\tbackground-color: var(--kolibri-color-success);\n}\n:host > div.warning {\n\tborder-color: var(--kolibri-color-warning);\n}\n:host > div.warning .heading-icon {\n\tbackground-color: var(--kolibri-color-warning);\n}\n\n/* close button */\n\n.close,\n.close > button {\n\tmin-width: 44px;\n\tmin-height: 44px;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlertType, AlertVariant, KoliBriAlertEventCallbacks } from '../../types/alert';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { Log } from '../../utils/log';\nimport { setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { translate } from '../../i18n';\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = {\n\talert: boolean;\n\thasCloser: boolean;\n\theading: string;\n\tlevel: HeadingLevel;\n\ton: KoliBriAlertEventCallbacks;\n\ttype: AlertType;\n\tvariant: AlertVariant;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\nconst Icon = (props: { ariaLabel: string; icon: string; heading?: string }) => {\n\treturn <kol-icon class=\"heading-icon\" _ariaLabel={typeof props.heading === 'string' && props.heading.length > 0 ? '' : props.ariaLabel} _icon={props.icon} />;\n};\n\nconst AlertIcon = (props: { heading?: string; type?: AlertType }) => {\n\tswitch (props.type) {\n\t\tcase 'error':\n\t\t\treturn <Icon ariaLabel={translate('kol-error')} icon=\"fa-solid fa-circle-xmark\" heading={props.heading} />;\n\t\tcase 'info':\n\t\t\treturn <Icon ariaLabel={translate('kol-info')} icon=\"fa-solid fa-circle-info\" heading={props.heading} />;\n\t\tcase 'warning':\n\t\t\treturn <Icon ariaLabel={translate('kol-warning')} icon=\"fa-solid fa-triangle-exclamation\" heading={props.heading} />;\n\t\tcase 'success':\n\t\t\treturn <Icon ariaLabel={translate('kol-success')} icon=\"fa-solid fa-circle-check\" heading={props.heading} />;\n\t\tdefault:\n\t\t\treturn <Icon ariaLabel={translate('kol-message')} icon=\"fa-regular fa-comment\" heading={props.heading} />;\n\t}\n};\n\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate readonly close = () => {\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClick: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tif (this.state._alert) {\n\t\t\t/**\n\t\t\t * - https://developer.mozilla.org/de/docs/Web/API/Navigator/vibrate\n\t\t\t * - https://googlechrome.github.io/samples/vibration/\n\t\t\t */\n\t\t\ttry {\n\t\t\t\tLog.debug(['Navigator should vibrate ...', navigator.vibrate([100, 75, 100, 75, 100])]);\n\t\t\t} catch (e) {\n\t\t\t\tLog.debug('Navigator does not support vibration.');\n\t\t\t}\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.validateAlert(false);\n\t\t\t}, 10000);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type as string]: true,\n\t\t\t\t\t\t[this.state._variant as string]: true,\n\t\t\t\t\t}}\n\t\t\t\t\trole={this.state._alert ? 'alert' : undefined}\n\t\t\t\t>\n\t\t\t\t\t<div class=\"heading\">\n\t\t\t\t\t\t<AlertIcon heading={this.state._heading} type={this.state._type} />\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{typeof this.state._heading === 'string' && this.state._heading?.length > 0 && (\n\t\t\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this._variant === 'msg' && (\n\t\t\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{this.state._hasCloser && (\n\t\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t\t\t_icon={{\n\t\t\t\t\t\t\t\t\tleft: {\n\t\t\t\t\t\t\t\t\t\ticon: 'fa-solid fa-xmark',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t_iconOnly\n\t\t\t\t\t\t\t\t_label={translate('kol-close')}\n\t\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t\t\t_tooltipAlign=\"left\"\n\t\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{this._variant === 'card' && (\n\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = false;\n\n\t/**\n\t * Gibt an, ob der Alert ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Gibt an, welche Benachrichtigungsvariante dargestellt wird.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_level: 1,\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\twatchBoolean(this, '_hasCloser', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\tprivate validateOnValue = (value: unknown): boolean =>\n\t\ttypeof value === 'object' && value !== null && typeof (value as KoliBriAlertEventCallbacks).onClose === 'function';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAlertEventCallbacks): void {\n\t\tif (this.validateOnValue(value)) {\n\t\t\tsetState<KoliBriAlertEventCallbacks>(\n\t\t\t\tthis,\n\t\t\t\t'_on',\n\t\t\t\t{\n\t\t\t\t\tonClose: (value as KoliBriAlertEventCallbacks).onClose,\n\t\t\t\t}\n\t\t\t\t// {\n\t\t\t\t// \tafterPatch: (value: unknown) => {\n\t\t\t\t// \t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t\t// \t},\n\t\t\t\t// }\n\t\t\t);\n\t\t\t// } else {\n\t\t\t// \tsetState<KoliBriAlertEventCallbacks>(this, '_on', null, {\n\t\t\t// \t\tafterPatch: (value: unknown) => {\n\t\t\t// \t\t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t// \t\t},\n\t\t\t// \t});\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_variant')\n\tpublic validateVariant(value?: AlertVariant): void {\n\t\twatchValidator(this, '_variant', (value) => value === 'card' || value === 'msg', new Set('AlertVariant {card, msg}'), value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateType(this._type);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n"],"mappings":";;;gVAAA,MAAMA,EAAkB,ylFC6BxB,MAAMC,EAAQC,GACNC,EAAA,YAAUC,MAAM,eAAeC,kBAAmBH,EAAMI,UAAY,UAAYJ,EAAMI,QAAQC,OAAS,EAAI,GAAKL,EAAMM,UAAWC,MAAOP,EAAMQ,OAGtJ,MAAMC,EAAaT,IAClB,OAAQA,EAAMU,MACb,IAAK,QACJ,OAAOT,EAACF,EAAI,CAACO,UAAWK,EAAU,aAAcH,KAAK,2BAA2BJ,QAASJ,EAAMI,UAChG,IAAK,OACJ,OAAOH,EAACF,EAAI,CAACO,UAAWK,EAAU,YAAaH,KAAK,0BAA0BJ,QAASJ,EAAMI,UAC9F,IAAK,UACJ,OAAOH,EAACF,EAAI,CAACO,UAAWK,EAAU,eAAgBH,KAAK,mCAAmCJ,QAASJ,EAAMI,UAC1G,IAAK,UACJ,OAAOH,EAACF,EAAI,CAACO,UAAWK,EAAU,eAAgBH,KAAK,2BAA2BJ,QAASJ,EAAMI,UAClG,QACC,OAAOH,EAACF,EAAI,CAACO,UAAWK,EAAU,eAAgBH,KAAK,wBAAwBJ,QAASJ,EAAMI,U,QAWpFQ,EAAQ,M,yBACHC,KAAAC,MAAQ,K,MACxB,KAAIC,EAAAF,KAAKG,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAYC,UAAW,CACpCL,KAAKG,IAAIC,QAAQ,IAAIE,MAAM,S,GAIZN,KAAAO,GAAK,CACrBC,QAASR,KAAKC,OA4IPD,KAAAS,gBAAmBC,UACnBA,IAAU,UAAYA,IAAU,aAAgBA,EAAqCN,UAAY,W,YAxEtD,M,gBAKI,M,oCAUhB,E,8BAUJ,U,cAKM,M,WAKT,CAC/BO,OAAQ,E,CAtGFC,S,MACN,GAAIZ,KAAKa,MAAMC,OAAQ,CAKtB,IACCC,EAAIC,MAAM,CAAC,+BAAgCC,UAAUC,QAAQ,CAAC,IAAK,GAAI,IAAK,GAAI,O,CAC/E,MAAOC,GACRJ,EAAIC,MAAM,wC,CAGXI,YAAW,KACVpB,KAAKqB,cAAc,MAAM,GACvB,I,CAGJ,OACCjC,EAACkC,EAAI,KACJlC,EAAA,OACCC,MAAO,CACN,CAACW,KAAKa,MAAMU,OAAkB,KAC9B,CAACvB,KAAKa,MAAMW,UAAqB,MAElCC,KAAMzB,KAAKa,MAAMC,OAAS,QAAUT,WAEpCjB,EAAA,OAAKC,MAAM,WACVD,EAACQ,EAAS,CAACL,QAASS,KAAKa,MAAMa,SAAU7B,KAAMG,KAAKa,MAAMU,QAC1DnC,EAAA,kBACSY,KAAKa,MAAMa,WAAa,YAAYxB,EAAAF,KAAKa,MAAMa,YAAQ,MAAAxB,SAAA,SAAAA,EAAEV,QAAS,GACzEJ,EAAA,kBAAgBuC,OAAQ3B,KAAKa,MAAMa,SAAUf,OAAQX,KAAKa,MAAMF,SAEhEX,KAAKwB,WAAa,OAClBpC,EAAA,OAAKC,MAAM,WACVD,EAAA,eAIFY,KAAKa,MAAMe,YACXxC,EAAA,iBACCC,MAAM,QACNK,MAAO,CACNmC,KAAM,CACLlC,KAAM,sBAGRmC,UAAS,KACTH,OAAQ7B,EAAU,aAClBK,IAAKH,KAAKO,GACVwB,cAAc,UAIhB/B,KAAKwB,WAAa,QAClBpC,EAAA,OAAKC,MAAM,WACVD,EAAA,e,CAsDCiC,cAAcX,GACpBsB,EAAahC,KAAM,SAAUU,E,CAOvBuB,kBAAkBvB,GACxBsB,EAAahC,KAAM,aAAcU,E,CAO3BwB,gBAAgBxB,GACtByB,EAAYnC,KAAM,WAAYU,E,CAOxB0B,cAAc1B,GACpB2B,EAAkBrC,KAAMU,E,CAUlB4B,WAAW5B,GACjB,GAAIV,KAAKS,gBAAgBC,GAAQ,CAChC6B,EACCvC,KACA,MACA,CACCI,QAAUM,EAAqCN,S,EAqB5CoC,aAAa9B,GACnB+B,EACCzC,KACA,SACCU,UAAiBA,IAAU,WAAaA,IAAU,WAAaA,IAAU,SAAWA,IAAU,QAAUA,IAAU,WAAaA,IAAU,YAC1I,IAAIgC,IAAI,0CACRhC,E,CAQKiC,gBAAgBjC,GACtB+B,EAAezC,KAAM,YAAaU,GAAUA,IAAU,QAAUA,IAAU,OAAO,IAAIgC,IAAI,4BAA6BhC,E,CAMhHkC,oBACN5C,KAAKqB,cAAcrB,KAAKc,QACxBd,KAAKiC,kBAAkBjC,KAAK4B,YAC5B5B,KAAKkC,gBAAgBlC,KAAK0B,UAC1B1B,KAAKoC,cAAcpC,KAAKW,QACxBX,KAAKsC,WAAWtC,KAAKG,KACrBH,KAAKwC,aAAaxC,KAAKuB,OACvBvB,KAAK2C,gBAAgB3C,KAAKwB,S"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as o,H as s}from"./index-0dce65d2.js";import{f as e,d as n,a as i}from"./a11y.tipps-353a7f35.js";import{r as a,a as r,o as l,p as c,s as h}from"./prop.validators-62a61880.js";import{s as d}from"./index.m-86dc8c44.js";import{c as p}from"./index-e722bdb7.js";import"./dev.utils-3ec9f837.js";import"./reuse-2b3b6999.js";import"./index-68b1f91c.js";import"./index-1b8b837d.js";const f=(t,o,a)=>(299*t+587*o+114*a)/1e3>=128?-1:1,u=(t,o,r,n=1)=>{const s=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],e=d(a.hex(`rgba(${t.join(",")},1)`),a.hex(`rgba(${s.join(",")},1)`)),i=s[0]+s[1]+s[2];return 0===i||765===i||e>r?{background:t,foreground:s,contrast:e}:u(t,s,r,n)},b=new Map,g=(t,o,a,r=1)=>{if(b.has(t))return b.get(t);const n=u(t,o,a,r);return b.set(t,n),n},m=(t,o=7)=>{let r=[0,0,0,1],n=[255,255,255,1];"string"==typeof t?(r=p(t),n=r):"object"==typeof t&&null!==t&&"string"==typeof t.background&&"string"==typeof t.foreground&&(r=p(t.background),n="string"==typeof t.foreground?p(t.foreground):r);const s=f(r[0],r[1],r[2]),e=g([r[0],r[1],r[2]],[n[0],n[1],n[2]],o,s);return n=[...e.foreground,1],{background:a.hex(`rgba(${r.join(",")})`),foreground:a.hex(`rgba(${n.join(",")})`),contrast:e.contrast}},w="*{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:bold}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:0.25rem;place-items:center}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}span{display:inline-flex}span kol-button-wc,span .kol-button-wc{box-shadow-left:1px solid rgba(0, 0, 0, 0.25)}span kol-button-wc button,span .kol-button-wc button{color:inherit}";e("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const y=/^([a-f0-9]{3}|[a-f0-9]{6})$/,k=class{constructor(o){t(this,o),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{let o,a=t;"string"==typeof a?(y.test(a)&&(n("[KolBadge] Bitte verwenden Sie zukünftig nur noch das Standard-Farbformat für CSS (https://developer.mozilla.org/en-US/docs/Web/CSS/color_value)."),a=`#${a}`),o=m(a)):o=m({background:a.backgroundColor,foreground:a.color}),o.contrast<7&&i(`[KolBadge] The contrast of ${o.contrast} (≥7, AAA) is too low, between the color pair ${o.background} and ${o.foreground}.`),this.bgColorStr=o.background,this.colorStr=o.foreground},this._color="#000",this._icon=void 0,this._iconAlign="left",this._iconOnly=!1,this._label=void 0,this._smartButton=void 0,this.state={_color:"#000"}}render(){return o(s,null,o("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},o("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&o("kol-button-wc",{_ariaLabel:this.state._smartButton._ariaLabel,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_icon:this.state._smartButton._icon,_iconOnly:!0,_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){r(this,"_color",(t=>"string"==typeof t||"object"==typeof t&&null!==t&&"string"==typeof t.backgroundColor&&"string"==typeof t.color),new Set(["string","KoliBriColor"]),t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(t){l(t,(()=>{try{t=c(t)}catch(t){}h(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}};k.style={default:w};export{k as kol_badge};
4
+ import{r as o,h as t,H as i}from"./index-50adf9a0.js";import{f as r,d as s,a as e}from"./a11y.tipps-7a139717.js";import{r as a,c as n,a as l,o as c,p as h,s as d}from"./prop.validators-27682076.js";import{c as b}from"./index-d14da386.js";import"./log-829fbbc7.js";import"./reuse-2b3b6999.js";import"./index-599f5430.js";const f=(t,o,r)=>(299*t+587*o+114*r)/1e3>=128?-1:1,p=(t,o,r,i=1)=>{const s=[Math.max(Math.min(Math.round(o[0]+i*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+i*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+i*Math.max(1,o[2]/100)),255),0)],e=n(a.hex(`rgba(${t.join(",")},1)`),a.hex(`rgba(${s.join(",")},1)`)),l=s[0]+s[1]+s[2];return 0===l||765===l||e>r?{background:t,foreground:s,contrast:e}:p(t,s,r,i)},u=new Map,g=(t,o,r,a=1)=>{if(u.has(t))return u.get(t);const i=p(t,o,r,a);return u.set(t,i),i},k=(t,o=7)=>{let r=[0,0,0,1],i=[255,255,255,1];"string"==typeof t?(r=b(t),i=r):"object"==typeof t&&null!==t&&"string"==typeof t.background&&"string"==typeof t.foreground&&(r=b(t.background),i="string"==typeof t.foreground?b(t.foreground):r);const n=f(r[0],r[1],r[2]),s=g([r[0],r[1],r[2]],[i[0],i[1],i[2]],o,n);return i=[...s.foreground,1],{background:a.hex(`rgba(${r.join(",")})`),foreground:a.hex(`rgba(${i.join(",")})`),contrast:s.contrast}},m=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*{box-sizing:border-box;font-family:var(--kolibri-font-family)}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}button{min-height:44px;min-width:44px;padding:0;margin:0}a,button,input,select,textarea{cursor:pointer;font-family:inherit}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0}h1,h2,h3,h4,h5,h6{font-size:1rem;margin:0}:host>span{display:inline-flex}:host>span>kol-button-wc{border-left:1px solid rgba(0, 0, 0, 0.25)}:host>span>kol-button-wc button{color:inherit}";r("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const y=/^([a-f0-9]{3}|[a-f0-9]{6})$/,w=class{constructor(t){o(this,t),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{let o,r=t;"string"==typeof r?(y.test(r)&&(s("[KolBadge] Bitte verwenden Sie zukünftig nur noch das Standard-Farbformat für CSS (https://developer.mozilla.org/en-US/docs/Web/CSS/color_value)."),r=`#${r}`),o=k(r)):o=k({background:r.backgroundColor,foreground:r.color}),o.contrast<7&&e(`[KolBadge] The contrast of ${o.contrast} (≥7, AAA) is too low, between the color pair ${o.background} and ${o.foreground}.`),this.bgColorStr=o.background,this.colorStr=o.foreground},this._color="#000",this._icon=void 0,this._iconOnly=!1,this._label=void 0,this._smartButton=void 0,this.state={_color:"#000"}}render(){return t(i,null,t("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},t("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&t("kol-button-wc",{_ariaLabel:this.state._smartButton._ariaLabel,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_icon:this.state._smartButton._icon,_iconOnly:!0,_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){l(this,"_color",(t=>"string"==typeof t||"object"==typeof t&&null!==t&&"string"==typeof t.backgroundColor&&"string"==typeof t.color),new Set(["string","KoliBriColor"]),t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(t){c(t,(()=>{try{t=h(t)}catch(t){}d(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}};w.style={default:m};export{w as kol_badge};
@@ -1 +1 @@
1
- {"version":3,"names":["getContrastYIQ","r","g","b","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","color","Math","max","min","round","contrast","hex","rgbaConvert","join","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorRgba","colorContrast","defaultStyleCss","featureHint","HACK_REG_EX","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","test","devHint","backgroundColor","a11yHint","_color","render","h","Host","class","state","_smartButton","style","_icon","_iconOnly","_label","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","watchValidator","Set","defaultValue","hooks","beforePatch","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/contrast.ts","./src/components/badge/style.sass?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["import { rgbaConvert } from './rgba-convert';\nimport { hex } from 'wcag-contrast';\nimport { colorRgba } from './color-rgba';\nimport { RGB } from 'color-convert/conversions';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\nexport type ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","@import ../style\n\nspan\n\tdisplay: inline-flex\n\n\tkol-button-wc,\n\t.kol-button-wc\n\t\tbox-shadow-left: 1px solid rgba(0, 0, 0, 0.25)\n\n\t\tbutton\n\t\t\tcolor: inherit\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { a11yHint, devHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchValidator } from '../../utils/prop.validators';\nimport { createContrastColorPair, ColorContrast } from './contrast';\nimport { Stringified } from '../../types/common';\nimport { ButtonProps } from '../../types/button-link';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\nconst HACK_REG_EX = /^([a-f0-9]{3}|[a-f0-9]{6})$/;\n\nexport type KoliBriColor = {\n\tbackgroundColor: string;\n\tcolor: string;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<KoliBriColor>;\n\ticon: Stringified<KoliBriIconProp>;\n\ticonOnly: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tcolor: Stringified<KoliBriColor>;\n};\ntype OptionalStates = {\n\tsmartButton: ButtonProps;\n};\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements Props {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc _icon={this._icon} _iconOnly={this._iconOnly} _label={this._label}></kol-span-wc>\n\t\t\t\t\t{typeof this.state._smartButton === 'object' && this.state._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this.state._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this.state._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this.state._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this.state._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this.state._smartButton._id}\n\t\t\t\t\t\t\t_label={this.state._smartButton._label}\n\t\t\t\t\t\t\t_on={this.state._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this.state._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this.state._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Farbe des Hintergrundes bzw. der Schrift an.\n\t */\n\t@Prop() public _color?: string | KoliBriColor = '#000';\n\n\t/**\n\t * Gibt einen Identifier eines Icons aus den Icofont's an. (https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob das Icon entweder links oder rechts dargestellt werden soll.\n\t * @deprecated\n\t */\n\t@Prop() public _iconAlign?: Alignment = 'left';\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt den Label-Text des Badges an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_color: '#000',\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tlet color = value as string | KoliBriColor;\n\t\tlet colorContrast: ColorContrast<string>;\n\t\tif (typeof color === 'string') {\n\t\t\tif (HACK_REG_EX.test(color)) {\n\t\t\t\t// Catch Breaking Change - remove next Major\n\t\t\t\tdevHint(\n\t\t\t\t\t`[KolBadge] Bitte verwenden Sie zukünftig nur noch das Standard-Farbformat für CSS (https://developer.mozilla.org/en-US/docs/Web/CSS/color_value).`\n\t\t\t\t);\n\t\t\t\tcolor = `#${color}`;\n\t\t\t}\n\t\t\tcolorContrast = createContrastColorPair(color);\n\t\t} else {\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: color.backgroundColor,\n\t\t\t\tforeground: color.color,\n\t\t\t});\n\t\t}\n\t\tif (colorContrast.contrast < 7) {\n\t\t\ta11yHint(\n\t\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is too low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`\n\t\t\t);\n\t\t}\n\t\tthis.bgColorStr = colorContrast.background;\n\t\tthis.colorStr = colorContrast.foreground;\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_color')\n\tpublic validateColor(value?: string | KoliBriColor): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_color',\n\t\t\t(value) =>\n\t\t\t\ttypeof value === 'string' ||\n\t\t\t\t(typeof value === 'object' && value !== null && typeof value.backgroundColor === 'string' && typeof value.color === 'string'),\n\t\t\tnew Set(['string', 'KoliBriColor']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: '#000',\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_smartButton')\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, '_smartButton', value);\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["getContrastYIQ","r","g","b","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","color","Math","max","min","round","contrast","hex","rgbaConvert","join","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorRgba","colorContrast","defaultStyleCss","featureHint","HACK_REG_EX","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","test","devHint","backgroundColor","a11yHint","_color","render","h","Host","class","state","_smartButton","style","_icon","_iconOnly","_label","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","watchValidator","Set","defaultValue","hooks","beforePatch","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/contrast.ts","./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["import { rgbaConvert } from './rgba-convert';\nimport { hex } from 'wcag-contrast';\nimport { colorRgba } from './color-rgba';\nimport { RGB } from 'color-convert/conversions';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","@import '../style.css';\n\n:host > span {\n\tdisplay: inline-flex;\n}\n:host > span > kol-button-wc {\n\tborder-left: 1px solid rgba(0, 0, 0, 0.25);\n}\n:host > span > kol-button-wc button {\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { a11yHint, devHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchValidator } from '../../utils/prop.validators';\nimport { ColorContrast, createContrastColorPair } from './contrast';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\nconst HACK_REG_EX = /^([a-f0-9]{3}|[a-f0-9]{6})$/;\n\nexport type KoliBriColor = {\n\tbackgroundColor: string;\n\tcolor: string;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<KoliBriColor>;\n\ticon: Stringified<KoliBriIconProp>;\n\ticonOnly: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tcolor: Stringified<KoliBriColor>;\n};\ntype OptionalStates = {\n\tsmartButton: ButtonProps;\n};\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements Props {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc _icon={this._icon} _iconOnly={this._iconOnly} _label={this._label}></kol-span-wc>\n\t\t\t\t\t{typeof this.state._smartButton === 'object' && this.state._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this.state._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this.state._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this.state._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this.state._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this.state._smartButton._id}\n\t\t\t\t\t\t\t_label={this.state._smartButton._label}\n\t\t\t\t\t\t\t_on={this.state._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this.state._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this.state._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Farbe des Hintergrundes bzw. der Schrift an.\n\t */\n\t@Prop() public _color?: string | KoliBriColor = '#000';\n\n\t/**\n\t * Gibt einen Identifier eines Icons aus den Icofont's an. (https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt den Label-Text des Badges an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_color: '#000',\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tlet color = value as string | KoliBriColor;\n\t\tlet colorContrast: ColorContrast<string>;\n\t\tif (typeof color === 'string') {\n\t\t\tif (HACK_REG_EX.test(color)) {\n\t\t\t\t// Catch Breaking Change - remove next Major\n\t\t\t\tdevHint(\n\t\t\t\t\t`[KolBadge] Bitte verwenden Sie zukünftig nur noch das Standard-Farbformat für CSS (https://developer.mozilla.org/en-US/docs/Web/CSS/color_value).`\n\t\t\t\t);\n\t\t\t\tcolor = `#${color}`;\n\t\t\t}\n\t\t\tcolorContrast = createContrastColorPair(color);\n\t\t} else {\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: color.backgroundColor,\n\t\t\t\tforeground: color.color,\n\t\t\t});\n\t\t}\n\t\tif (colorContrast.contrast < 7) {\n\t\t\ta11yHint(\n\t\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is too low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`\n\t\t\t);\n\t\t}\n\t\tthis.bgColorStr = colorContrast.background;\n\t\tthis.colorStr = colorContrast.foreground;\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_color')\n\tpublic validateColor(value?: string | KoliBriColor): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_color',\n\t\t\t(value) =>\n\t\t\t\ttypeof value === 'string' ||\n\t\t\t\t(typeof value === 'object' && value !== null && typeof value.backgroundColor === 'string' && typeof value.color === 'string'),\n\t\t\tnew Set(['string', 'KoliBriColor']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: '#000',\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_smartButton')\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, '_smartButton', value);\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"mappings":"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"}