@public-ui/components 1.4.0-rc.0 → 1.4.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (739) hide show
  1. package/cheat-sheet.html +27 -14
  2. package/custom-elements.json +2285 -107
  3. package/dist/cjs/a11y.tipps-bd1e1e68.js +4 -0
  4. package/dist/cjs/a11y.tipps-bd1e1e68.js.map +1 -0
  5. package/dist/cjs/app-globals-ead7cf69.js +4 -0
  6. package/dist/cjs/app-globals-ead7cf69.js.map +1 -0
  7. package/dist/cjs/button-link-8476ef97.js +4 -0
  8. package/dist/cjs/{button-link-a6efe03a.js.map → button-link-8476ef97.js.map} +1 -1
  9. package/dist/cjs/controller-0b45980a.js +4 -0
  10. package/dist/cjs/{controller-7d31a408.js.map → controller-0b45980a.js.map} +1 -1
  11. package/dist/cjs/{controller-2a86ec5b.js → controller-169c2e5c.js} +1 -1
  12. package/dist/cjs/{controller-2a86ec5b.js.map → controller-169c2e5c.js.map} +1 -1
  13. package/dist/cjs/{controller-ec5e2d7d.js → controller-323daab1.js} +1 -1
  14. package/dist/cjs/{controller-ec5e2d7d.js.map → controller-323daab1.js.map} +1 -1
  15. package/dist/cjs/{controller-29f3c454.js → controller-3b1b8088.js} +1 -1
  16. package/dist/cjs/{controller-29f3c454.js.map → controller-3b1b8088.js.map} +1 -1
  17. package/dist/cjs/{controller-ddebcf52.js → controller-891952ee.js} +1 -1
  18. package/dist/cjs/{controller-ddebcf52.js.map → controller-891952ee.js.map} +1 -1
  19. package/dist/cjs/{controller-1584664d.js → controller-e6f251c2.js} +1 -1
  20. package/dist/cjs/{controller-1584664d.js.map → controller-e6f251c2.js.map} +1 -1
  21. package/dist/cjs/controller-icon-a996cb01.js +4 -0
  22. package/dist/cjs/controller-icon-a996cb01.js.map +1 -0
  23. package/dist/cjs/dev.utils-b6dd5206.js +4 -0
  24. package/dist/cjs/dev.utils-b6dd5206.js.map +1 -0
  25. package/dist/cjs/devtools-8d17bfd4.js +4 -0
  26. package/dist/cjs/{devtools-3cff8604.js.map → devtools-8d17bfd4.js.map} +1 -1
  27. package/dist/cjs/{i18n-d2bd0802.js → i18n-2f63f0ca.js} +1 -1
  28. package/dist/cjs/{i18n-d2bd0802.js.map → i18n-2f63f0ca.js.map} +1 -1
  29. package/dist/cjs/icon-4f733b4e.js +4 -0
  30. package/dist/cjs/icon-4f733b4e.js.map +1 -0
  31. package/dist/cjs/{index-c4f8dd50.js → index-1266b30d.js} +1 -1
  32. package/dist/cjs/index-1266b30d.js.map +1 -0
  33. package/dist/cjs/index-66aa0f41.js +4 -0
  34. package/dist/cjs/index-66aa0f41.js.map +1 -0
  35. package/dist/cjs/index-d637d600.js +4 -0
  36. package/dist/cjs/{index-35d18542.js.map → index-d637d600.js.map} +1 -1
  37. package/dist/cjs/index.cjs.js +1 -1
  38. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  40. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  42. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  44. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  46. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  48. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
  50. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  52. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
  56. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  58. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  60. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-heading-wc_2.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  75. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  109. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  111. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  113. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  115. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  127. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kolibri.cjs.js +1 -1
  141. package/dist/cjs/kolibri.cjs.js.map +1 -1
  142. package/dist/cjs/label-b9c8787b.js +4 -0
  143. package/dist/cjs/{label-92997e6d.js.map → label-b9c8787b.js.map} +1 -1
  144. package/dist/cjs/loader.cjs.js +1 -1
  145. package/dist/cjs/loader.cjs.js.map +1 -1
  146. package/dist/cjs/prop.validators-125ca9b8.js +4 -0
  147. package/dist/cjs/prop.validators-125ca9b8.js.map +1 -0
  148. package/dist/cjs/reuse-b43997f3.js +4 -0
  149. package/dist/cjs/reuse-b43997f3.js.map +1 -0
  150. package/dist/cjs/{tab-index-7d4e8d14.js → tab-index-7d5103dc.js} +1 -1
  151. package/dist/cjs/{tab-index-7d4e8d14.js.map → tab-index-7d5103dc.js.map} +1 -1
  152. package/dist/cjs/{validation-9cdc8b6c.js → validation-314516d8.js} +1 -1
  153. package/dist/cjs/{validation-9cdc8b6c.js.map → validation-314516d8.js.map} +1 -1
  154. package/dist/cjs/{validation-b1132e50.js → validation-c071c3ac.js} +1 -1
  155. package/dist/cjs/{validation-b1132e50.js.map → validation-c071c3ac.js.map} +1 -1
  156. package/dist/components/component.js +1 -1
  157. package/dist/components/component.js.map +1 -1
  158. package/dist/components/component10.js +1 -1
  159. package/dist/components/component10.js.map +1 -1
  160. package/dist/components/component11.js +1 -1
  161. package/dist/components/component11.js.map +1 -1
  162. package/dist/components/component12.js +1 -1
  163. package/dist/components/component12.js.map +1 -1
  164. package/dist/components/component13.js +1 -1
  165. package/dist/components/component13.js.map +1 -1
  166. package/dist/components/component2.js +1 -1
  167. package/dist/components/component2.js.map +1 -1
  168. package/dist/components/component3.js +1 -1
  169. package/dist/components/component3.js.map +1 -1
  170. package/dist/components/component4.js +1 -1
  171. package/dist/components/component4.js.map +1 -1
  172. package/dist/components/component5.js +1 -1
  173. package/dist/components/component5.js.map +1 -1
  174. package/dist/components/component6.js +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/controller.js +1 -1
  181. package/dist/components/controller2.js +1 -1
  182. package/dist/components/controller2.js.map +1 -1
  183. package/dist/components/controller3.js +1 -1
  184. package/dist/components/controller4.js +1 -1
  185. package/dist/components/devtools.js +1 -1
  186. package/dist/components/i18n.js +1 -1
  187. package/dist/components/index.js +1 -1
  188. package/dist/components/index.js.map +1 -1
  189. package/dist/components/index2.js +1 -1
  190. package/dist/components/index2.js.map +1 -1
  191. package/dist/components/kol-abbr.js +1 -1
  192. package/dist/components/kol-abbr.js.map +1 -1
  193. package/dist/components/kol-accordion.js +1 -1
  194. package/dist/components/kol-accordion.js.map +1 -1
  195. package/dist/components/kol-breadcrumb.js +1 -1
  196. package/dist/components/kol-breadcrumb.js.map +1 -1
  197. package/dist/components/kol-button-group.js +1 -1
  198. package/dist/components/kol-button-group.js.map +1 -1
  199. package/dist/components/kol-button-link.js +1 -1
  200. package/dist/components/kol-button-link.js.map +1 -1
  201. package/dist/components/kol-card.js +1 -1
  202. package/dist/components/kol-card.js.map +1 -1
  203. package/dist/components/kol-details.js +1 -1
  204. package/dist/components/kol-details.js.map +1 -1
  205. package/dist/components/kol-form.js +1 -1
  206. package/dist/components/kol-heading.js +1 -1
  207. package/dist/components/kol-heading.js.map +1 -1
  208. package/dist/components/kol-icon-font-awesome.js +1 -1
  209. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  210. package/dist/components/kol-icon-icofont.js +1 -1
  211. package/dist/components/kol-icon-icofont.js.map +1 -1
  212. package/dist/components/kol-input-adapter-leanup.js +1 -1
  213. package/dist/components/kol-input-checkbox.js +1 -1
  214. package/dist/components/kol-input-checkbox.js.map +1 -1
  215. package/dist/components/kol-input-color.js +1 -1
  216. package/dist/components/kol-input-color.js.map +1 -1
  217. package/dist/components/kol-input-date.js +1 -1
  218. package/dist/components/kol-input-date.js.map +1 -1
  219. package/dist/components/kol-input-email.js +1 -1
  220. package/dist/components/kol-input-email.js.map +1 -1
  221. package/dist/components/kol-input-file.js +1 -1
  222. package/dist/components/kol-input-file.js.map +1 -1
  223. package/dist/components/kol-input-password.js +1 -1
  224. package/dist/components/kol-input-password.js.map +1 -1
  225. package/dist/components/kol-input-radio-group.js +1 -1
  226. package/dist/components/kol-input-range.js +1 -1
  227. package/dist/components/kol-input-range.js.map +1 -1
  228. package/dist/components/kol-input-text.js +1 -1
  229. package/dist/components/kol-input-text.js.map +1 -1
  230. package/dist/components/kol-kolibri.js +1 -1
  231. package/dist/components/kol-kolibri.js.map +1 -1
  232. package/dist/components/kol-link-button.js +1 -1
  233. package/dist/components/kol-link-button.js.map +1 -1
  234. package/dist/components/kol-link-group.js +1 -1
  235. package/dist/components/kol-link-group.js.map +1 -1
  236. package/dist/components/kol-logo.js +1 -1
  237. package/dist/components/kol-logo.js.map +1 -1
  238. package/dist/components/kol-modal.js +1 -1
  239. package/dist/components/kol-modal.js.map +1 -1
  240. package/dist/components/kol-nav.js +1 -1
  241. package/dist/components/kol-nav.js.map +1 -1
  242. package/dist/components/kol-progress.js +1 -1
  243. package/dist/components/kol-progress.js.map +1 -1
  244. package/dist/components/kol-skip-nav.js +1 -1
  245. package/dist/components/kol-skip-nav.js.map +1 -1
  246. package/dist/components/kol-span.js +1 -1
  247. package/dist/components/kol-span.js.map +1 -1
  248. package/dist/components/kol-spin.js +1 -1
  249. package/dist/components/kol-spin.js.map +1 -1
  250. package/dist/components/kol-table.js +1 -1
  251. package/dist/components/kol-table.js.map +1 -1
  252. package/dist/components/kol-tabs.js +1 -1
  253. package/dist/components/kol-tabs.js.map +1 -1
  254. package/dist/components/kol-textarea.js +1 -1
  255. package/dist/components/kol-textarea.js.map +1 -1
  256. package/dist/components/kol-toast.js +1 -1
  257. package/dist/components/kol-toast.js.map +1 -1
  258. package/dist/components/kol-tooltip.js +1 -1
  259. package/dist/components/kol-version.js +1 -1
  260. package/dist/components/kol-version.js.map +1 -1
  261. package/dist/components/prop.validators.js +1 -1
  262. package/dist/components/prop.validators.js.map +1 -1
  263. package/dist/components/shadow.js +1 -1
  264. package/dist/components/shadow.js.map +1 -1
  265. package/dist/components/shadow2.js +1 -1
  266. package/dist/components/shadow2.js.map +1 -1
  267. package/dist/components/validation.js +1 -1
  268. package/dist/esm/a11y.tipps-353a7f35.js +4 -0
  269. package/dist/esm/a11y.tipps-353a7f35.js.map +1 -0
  270. package/dist/esm/app-globals-4be5aa27.js +4 -0
  271. package/dist/esm/app-globals-4be5aa27.js.map +1 -0
  272. package/dist/esm/{button-link-d9d215b8.js → button-link-5bb8204c.js} +1 -1
  273. package/dist/esm/{button-link-d9d215b8.js.map → button-link-5bb8204c.js.map} +1 -1
  274. package/dist/esm/{controller-58b484bb.js → controller-059a3921.js} +1 -1
  275. package/dist/esm/{controller-58b484bb.js.map → controller-059a3921.js.map} +1 -1
  276. package/dist/esm/{controller-401e5985.js → controller-15111cee.js} +1 -1
  277. package/dist/esm/{controller-401e5985.js.map → controller-15111cee.js.map} +1 -1
  278. package/dist/esm/{controller-3cfe91c9.js → controller-766d4423.js} +1 -1
  279. package/dist/esm/{controller-3cfe91c9.js.map → controller-766d4423.js.map} +1 -1
  280. package/dist/esm/{controller-7adb5f0e.js → controller-9f66274a.js} +1 -1
  281. package/dist/esm/{controller-7adb5f0e.js.map → controller-9f66274a.js.map} +1 -1
  282. package/dist/esm/{controller-eecee40f.js → controller-b8a587ec.js} +1 -1
  283. package/dist/esm/{controller-eecee40f.js.map → controller-b8a587ec.js.map} +1 -1
  284. package/dist/esm/controller-ee46a348.js +4 -0
  285. package/dist/esm/{controller-4c6206b0.js.map → controller-ee46a348.js.map} +1 -1
  286. package/dist/esm/controller-icon-dbd368be.js +4 -0
  287. package/dist/esm/{controller-icon-c113ba17.js.map → controller-icon-dbd368be.js.map} +1 -1
  288. package/dist/esm/dev.utils-3ec9f837.js +4 -0
  289. package/dist/esm/dev.utils-3ec9f837.js.map +1 -0
  290. package/dist/esm/devtools-65ea920c.js +4 -0
  291. package/dist/esm/{devtools-d2ea86e5.js.map → devtools-65ea920c.js.map} +1 -1
  292. package/dist/esm/{i18n-b31d8a52.js → i18n-f2ab4562.js} +1 -1
  293. package/dist/esm/{i18n-b31d8a52.js.map → i18n-f2ab4562.js.map} +1 -1
  294. package/dist/esm/icon-4f6266ca.js +4 -0
  295. package/dist/esm/{icon-22dfdb71.js.map → icon-4f6266ca.js.map} +1 -1
  296. package/dist/esm/index-2a11dd6d.js +4 -0
  297. package/dist/esm/index-2a11dd6d.js.map +1 -0
  298. package/dist/esm/index-781a1af1.js +4 -0
  299. package/dist/esm/{index-5cef3ddc.js.map → index-781a1af1.js.map} +1 -1
  300. package/dist/{components/index3.js → esm/index-d14da386.js} +1 -1
  301. package/dist/esm/index-d14da386.js.map +1 -0
  302. package/dist/esm/index.js +1 -1
  303. package/dist/esm/kol-abbr.entry.js +1 -1
  304. package/dist/esm/kol-abbr.entry.js.map +1 -1
  305. package/dist/esm/kol-accordion.entry.js +1 -1
  306. package/dist/esm/kol-accordion.entry.js.map +1 -1
  307. package/dist/esm/kol-alert.entry.js +1 -1
  308. package/dist/esm/kol-alert.entry.js.map +1 -1
  309. package/dist/esm/kol-badge.entry.js +1 -1
  310. package/dist/esm/kol-badge.entry.js.map +1 -1
  311. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  312. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  313. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  314. package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
  315. package/dist/esm/kol-button-group.entry.js +1 -1
  316. package/dist/esm/kol-button-group.entry.js.map +1 -1
  317. package/dist/esm/kol-button-link.entry.js +1 -1
  318. package/dist/esm/kol-button-link.entry.js.map +1 -1
  319. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  320. package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
  321. package/dist/esm/kol-button.entry.js +1 -1
  322. package/dist/esm/kol-button.entry.js.map +1 -1
  323. package/dist/esm/kol-card.entry.js +1 -1
  324. package/dist/esm/kol-card.entry.js.map +1 -1
  325. package/dist/esm/kol-details.entry.js +1 -1
  326. package/dist/esm/kol-details.entry.js.map +1 -1
  327. package/dist/esm/kol-form.entry.js +1 -1
  328. package/dist/esm/kol-heading-wc_2.entry.js +1 -1
  329. package/dist/esm/kol-heading-wc_2.entry.js.map +1 -1
  330. package/dist/esm/kol-heading.entry.js +1 -1
  331. package/dist/esm/kol-heading.entry.js.map +1 -1
  332. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  333. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  334. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  335. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  336. package/dist/esm/kol-icon.entry.js +1 -1
  337. package/dist/esm/kol-icon.entry.js.map +1 -1
  338. package/dist/esm/kol-indented-text.entry.js +1 -1
  339. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  340. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  341. package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
  342. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  343. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  344. package/dist/esm/kol-input-color.entry.js +1 -1
  345. package/dist/esm/kol-input-color.entry.js.map +1 -1
  346. package/dist/esm/kol-input-date.entry.js +1 -1
  347. package/dist/esm/kol-input-date.entry.js.map +1 -1
  348. package/dist/esm/kol-input-email.entry.js +1 -1
  349. package/dist/esm/kol-input-email.entry.js.map +1 -1
  350. package/dist/esm/kol-input-file.entry.js +1 -1
  351. package/dist/esm/kol-input-file.entry.js.map +1 -1
  352. package/dist/esm/kol-input-number.entry.js +1 -1
  353. package/dist/esm/kol-input-number.entry.js.map +1 -1
  354. package/dist/esm/kol-input-password.entry.js +1 -1
  355. package/dist/esm/kol-input-password.entry.js.map +1 -1
  356. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  357. package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
  358. package/dist/esm/kol-input-radio.entry.js +1 -1
  359. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  360. package/dist/esm/kol-input-range.entry.js +1 -1
  361. package/dist/esm/kol-input-range.entry.js.map +1 -1
  362. package/dist/esm/kol-input-text.entry.js +1 -1
  363. package/dist/esm/kol-input-text.entry.js.map +1 -1
  364. package/dist/esm/kol-kolibri.entry.js +1 -1
  365. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  366. package/dist/esm/kol-link-button.entry.js +1 -1
  367. package/dist/esm/kol-link-button.entry.js.map +1 -1
  368. package/dist/esm/kol-link-group.entry.js +1 -1
  369. package/dist/esm/kol-link-group.entry.js.map +1 -1
  370. package/dist/esm/kol-link-wc.entry.js +1 -1
  371. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  372. package/dist/esm/kol-link.entry.js +1 -1
  373. package/dist/esm/kol-link.entry.js.map +1 -1
  374. package/dist/esm/kol-logo.entry.js +1 -1
  375. package/dist/esm/kol-logo.entry.js.map +1 -1
  376. package/dist/esm/kol-modal.entry.js +1 -1
  377. package/dist/esm/kol-modal.entry.js.map +1 -1
  378. package/dist/esm/kol-nav.entry.js +1 -1
  379. package/dist/esm/kol-nav.entry.js.map +1 -1
  380. package/dist/esm/kol-pagination.entry.js +1 -1
  381. package/dist/esm/kol-pagination.entry.js.map +1 -1
  382. package/dist/esm/kol-progress.entry.js +1 -1
  383. package/dist/esm/kol-progress.entry.js.map +1 -1
  384. package/dist/esm/kol-select.entry.js +1 -1
  385. package/dist/esm/kol-select.entry.js.map +1 -1
  386. package/dist/esm/kol-skip-nav.entry.js +1 -1
  387. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  388. package/dist/esm/kol-span.entry.js +1 -1
  389. package/dist/esm/kol-span.entry.js.map +1 -1
  390. package/dist/esm/kol-spin.entry.js +1 -1
  391. package/dist/esm/kol-spin.entry.js.map +1 -1
  392. package/dist/esm/kol-symbol.entry.js +1 -1
  393. package/dist/esm/kol-table.entry.js +1 -1
  394. package/dist/esm/kol-table.entry.js.map +1 -1
  395. package/dist/esm/kol-tabs.entry.js +1 -1
  396. package/dist/esm/kol-tabs.entry.js.map +1 -1
  397. package/dist/esm/kol-textarea.entry.js +1 -1
  398. package/dist/esm/kol-textarea.entry.js.map +1 -1
  399. package/dist/esm/kol-toast.entry.js +1 -1
  400. package/dist/esm/kol-toast.entry.js.map +1 -1
  401. package/dist/esm/kol-tooltip.entry.js +1 -1
  402. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  403. package/dist/esm/kol-version.entry.js +1 -1
  404. package/dist/esm/kol-version.entry.js.map +1 -1
  405. package/dist/esm/kolibri.js +1 -1
  406. package/dist/esm/kolibri.js.map +1 -1
  407. package/dist/esm/label-eaabc3d3.js +4 -0
  408. package/dist/esm/{label-3f6eb03e.js.map → label-eaabc3d3.js.map} +1 -1
  409. package/dist/esm/loader.js +1 -1
  410. package/dist/esm/loader.js.map +1 -1
  411. package/dist/esm/polyfills/core-js.js +1 -1
  412. package/dist/esm/prop.validators-c2234525.js +4 -0
  413. package/dist/esm/prop.validators-c2234525.js.map +1 -0
  414. package/dist/esm/reuse-2b3b6999.js +4 -0
  415. package/dist/esm/reuse-2b3b6999.js.map +1 -0
  416. package/dist/esm/{tab-index-e15e7adc.js → tab-index-1bc7d9c1.js} +1 -1
  417. package/dist/esm/{tab-index-e15e7adc.js.map → tab-index-1bc7d9c1.js.map} +1 -1
  418. package/dist/esm/validation-52548dee.js +4 -0
  419. package/dist/esm/{validation-cac8ee73.js.map → validation-52548dee.js.map} +1 -1
  420. package/dist/esm/{validation-470a9e9e.js → validation-d17349fa.js} +1 -1
  421. package/dist/esm/{validation-470a9e9e.js.map → validation-d17349fa.js.map} +1 -1
  422. package/dist/kolibri/a11y.tipps-353a7f35.js +4 -0
  423. package/dist/kolibri/a11y.tipps-353a7f35.js.map +1 -0
  424. package/dist/kolibri/app-globals-4be5aa27.js +4 -0
  425. package/dist/kolibri/app-globals-4be5aa27.js.map +1 -0
  426. package/dist/kolibri/assets/style.css +49 -77
  427. package/dist/kolibri/{button-link-d9d215b8.js → button-link-5bb8204c.js} +1 -1
  428. package/dist/kolibri/{button-link-d9d215b8.js.map → button-link-5bb8204c.js.map} +0 -0
  429. package/dist/kolibri/{controller-58b484bb.js → controller-059a3921.js} +1 -1
  430. package/dist/kolibri/{controller-58b484bb.js.map → controller-059a3921.js.map} +0 -0
  431. package/dist/kolibri/{controller-401e5985.js → controller-15111cee.js} +1 -1
  432. package/dist/kolibri/{controller-401e5985.js.map → controller-15111cee.js.map} +0 -0
  433. package/dist/kolibri/{controller-3cfe91c9.js → controller-766d4423.js} +1 -1
  434. package/dist/kolibri/{controller-3cfe91c9.js.map → controller-766d4423.js.map} +0 -0
  435. package/dist/kolibri/{controller-7adb5f0e.js → controller-9f66274a.js} +1 -1
  436. package/dist/kolibri/{controller-7adb5f0e.js.map → controller-9f66274a.js.map} +0 -0
  437. package/dist/kolibri/{controller-eecee40f.js → controller-b8a587ec.js} +1 -1
  438. package/dist/kolibri/{controller-eecee40f.js.map → controller-b8a587ec.js.map} +0 -0
  439. package/dist/kolibri/controller-ee46a348.js +4 -0
  440. package/dist/kolibri/{controller-4c6206b0.js.map → controller-ee46a348.js.map} +1 -1
  441. package/dist/kolibri/controller-icon-dbd368be.js +4 -0
  442. package/dist/kolibri/{controller-icon-c113ba17.js.map → controller-icon-dbd368be.js.map} +1 -1
  443. package/dist/kolibri/dev.utils-3ec9f837.js +4 -0
  444. package/dist/kolibri/dev.utils-3ec9f837.js.map +1 -0
  445. package/dist/kolibri/devtools-65ea920c.js +4 -0
  446. package/dist/kolibri/{devtools-d2ea86e5.js.map → devtools-65ea920c.js.map} +1 -1
  447. package/dist/kolibri/{i18n-b31d8a52.js → i18n-f2ab4562.js} +1 -1
  448. package/dist/kolibri/{i18n-b31d8a52.js.map → i18n-f2ab4562.js.map} +0 -0
  449. package/dist/kolibri/icon-4f6266ca.js +4 -0
  450. package/dist/kolibri/{icon-22dfdb71.js.map → icon-4f6266ca.js.map} +1 -1
  451. package/dist/kolibri/index-2a11dd6d.js +4 -0
  452. package/dist/kolibri/index-2a11dd6d.js.map +1 -0
  453. package/dist/kolibri/index-781a1af1.js +4 -0
  454. package/dist/kolibri/{index-5cef3ddc.js.map → index-781a1af1.js.map} +0 -0
  455. package/dist/kolibri/{index-1b8b837d.js → index-d14da386.js} +1 -1
  456. package/dist/kolibri/index-d14da386.js.map +1 -0
  457. package/dist/kolibri/index.esm.js +1 -1
  458. package/dist/kolibri/kol-abbr.entry.js +1 -1
  459. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  460. package/dist/kolibri/kol-accordion.entry.js +1 -1
  461. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  462. package/dist/kolibri/kol-alert.entry.js +1 -1
  463. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  464. package/dist/kolibri/kol-badge.entry.js +1 -1
  465. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  466. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  467. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  468. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  469. package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
  470. package/dist/kolibri/kol-button-group.entry.js +1 -1
  471. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  472. package/dist/kolibri/kol-button-link.entry.js +1 -1
  473. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  474. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  475. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
  476. package/dist/kolibri/kol-button.entry.js +1 -1
  477. package/dist/kolibri/kol-button.entry.js.map +1 -1
  478. package/dist/kolibri/kol-card.entry.js +1 -1
  479. package/dist/kolibri/kol-card.entry.js.map +1 -1
  480. package/dist/kolibri/kol-details.entry.js +1 -1
  481. package/dist/kolibri/kol-details.entry.js.map +1 -1
  482. package/dist/kolibri/kol-form.entry.js +1 -1
  483. package/dist/kolibri/kol-form.entry.js.map +1 -1
  484. package/dist/kolibri/kol-heading-wc_2.entry.js +1 -1
  485. package/dist/kolibri/kol-heading-wc_2.entry.js.map +1 -1
  486. package/dist/kolibri/kol-heading.entry.js +1 -1
  487. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  488. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  489. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  490. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  491. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  492. package/dist/kolibri/kol-icon.entry.js +1 -1
  493. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  494. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  495. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  496. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  497. package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
  498. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  499. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  500. package/dist/kolibri/kol-input-color.entry.js +1 -1
  501. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  502. package/dist/kolibri/kol-input-date.entry.js +1 -1
  503. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  504. package/dist/kolibri/kol-input-email.entry.js +1 -1
  505. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  506. package/dist/kolibri/kol-input-file.entry.js +1 -1
  507. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  508. package/dist/kolibri/kol-input-number.entry.js +1 -1
  509. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  510. package/dist/kolibri/kol-input-password.entry.js +1 -1
  511. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  512. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  513. package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
  514. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  515. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  516. package/dist/kolibri/kol-input-range.entry.js +1 -1
  517. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  518. package/dist/kolibri/kol-input-text.entry.js +1 -1
  519. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  520. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  521. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  522. package/dist/kolibri/kol-link-button.entry.js +1 -1
  523. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  524. package/dist/kolibri/kol-link-group.entry.js +1 -1
  525. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  526. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  527. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  528. package/dist/kolibri/kol-link.entry.js +1 -1
  529. package/dist/kolibri/kol-link.entry.js.map +1 -1
  530. package/dist/kolibri/kol-logo.entry.js +1 -1
  531. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  532. package/dist/kolibri/kol-modal.entry.js +1 -1
  533. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  534. package/dist/kolibri/kol-nav.entry.js +1 -1
  535. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  536. package/dist/kolibri/kol-pagination.entry.js +1 -1
  537. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  538. package/dist/kolibri/kol-progress.entry.js +1 -1
  539. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  540. package/dist/kolibri/kol-select.entry.js +1 -1
  541. package/dist/kolibri/kol-select.entry.js.map +1 -1
  542. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  543. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  544. package/dist/kolibri/kol-span.entry.js +1 -1
  545. package/dist/kolibri/kol-span.entry.js.map +1 -1
  546. package/dist/kolibri/kol-spin.entry.js +1 -1
  547. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  548. package/dist/kolibri/kol-symbol.entry.js +1 -1
  549. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  550. package/dist/kolibri/kol-table.entry.js +1 -1
  551. package/dist/kolibri/kol-table.entry.js.map +1 -1
  552. package/dist/kolibri/kol-tabs.entry.js +1 -1
  553. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  554. package/dist/kolibri/kol-textarea.entry.js +1 -1
  555. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  556. package/dist/kolibri/kol-toast.entry.js +1 -1
  557. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  558. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  559. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  560. package/dist/kolibri/kol-version.entry.js +1 -1
  561. package/dist/kolibri/kol-version.entry.js.map +1 -1
  562. package/dist/kolibri/kolibri.esm.js +1 -1
  563. package/dist/kolibri/kolibri.esm.js.map +1 -1
  564. package/dist/kolibri/label-eaabc3d3.js +4 -0
  565. package/dist/kolibri/{label-3f6eb03e.js.map → label-eaabc3d3.js.map} +1 -1
  566. package/dist/kolibri/prop.validators-c2234525.js +4 -0
  567. package/dist/kolibri/prop.validators-c2234525.js.map +1 -0
  568. package/dist/kolibri/reuse-2b3b6999.js +4 -0
  569. package/dist/kolibri/reuse-2b3b6999.js.map +1 -0
  570. package/dist/kolibri/{tab-index-e15e7adc.js → tab-index-1bc7d9c1.js} +1 -1
  571. package/dist/kolibri/{tab-index-e15e7adc.js.map → tab-index-1bc7d9c1.js.map} +0 -0
  572. package/dist/kolibri/validation-52548dee.js +4 -0
  573. package/dist/kolibri/{validation-cac8ee73.js.map → validation-52548dee.js.map} +0 -0
  574. package/dist/kolibri/{validation-470a9e9e.js → validation-d17349fa.js} +1 -1
  575. package/dist/kolibri/{validation-470a9e9e.js.map → validation-d17349fa.js.map} +0 -0
  576. package/dist/types/components/badge/contrast.d.ts +10 -6
  577. package/dist/types/components/heading/component.d.ts +9 -1
  578. package/dist/types/components/heading/shadow.d.ts +2 -0
  579. package/dist/types/components/heading/test/html.mock.d.ts +1 -1
  580. package/dist/types/components.d.ts +36 -30
  581. package/dist/types/enums/color.d.ts +0 -5
  582. package/dist/types/types/heading-level.d.ts +1 -1
  583. package/dist/types/utils/reuse.d.ts +3 -0
  584. package/doc/abbr.md +21 -4
  585. package/doc/accordion.md +21 -2
  586. package/doc/alert.md +22 -5
  587. package/doc/badge.md +28 -9
  588. package/doc/breadcrumb.md +23 -18
  589. package/doc/button-group.md +1 -1
  590. package/doc/button-link.md +20 -1
  591. package/doc/button.md +26 -7
  592. package/doc/card.md +29 -10
  593. package/doc/details.md +21 -4
  594. package/doc/heading.md +6 -4
  595. package/doc/icon-icofont.md +1 -1
  596. package/doc/icon.md +24 -10
  597. package/doc/indented-text.md +20 -1
  598. package/doc/input-checkbox.md +19 -0
  599. package/doc/input-color.md +21 -4
  600. package/doc/input-date.md +21 -4
  601. package/doc/input-email.md +21 -4
  602. package/doc/input-file.md +21 -4
  603. package/doc/input-number.md +21 -4
  604. package/doc/input-password.md +21 -4
  605. package/doc/input-radio.md +22 -16
  606. package/doc/input-range.md +21 -4
  607. package/doc/input-text.md +21 -4
  608. package/doc/kolibri.md +20 -1
  609. package/doc/link-button.md +21 -2
  610. package/doc/link-group.md +23 -8
  611. package/doc/link.md +21 -4
  612. package/doc/logo.md +20 -1
  613. package/doc/modal.md +20 -1
  614. package/doc/nav.md +25 -19
  615. package/doc/pagination.md +20 -1
  616. package/doc/progress.md +20 -1
  617. package/doc/select.md +34 -52
  618. package/doc/skip-nav.md +22 -12
  619. package/doc/span.md +19 -0
  620. package/doc/spin.md +20 -1
  621. package/doc/table.md +19 -0
  622. package/doc/tabs.md +22 -16
  623. package/doc/textarea.md +20 -1
  624. package/doc/toast.md +22 -5
  625. package/doc/tooltip.md +19 -0
  626. package/doc/version.md +20 -1
  627. package/jest-test-results.json +1 -1
  628. package/package.json +1 -1
  629. package/vscode-custom-data.json +22 -22
  630. package/dist/cjs/a11y.tipps-e1770acf.js +0 -4
  631. package/dist/cjs/a11y.tipps-e1770acf.js.map +0 -1
  632. package/dist/cjs/app-globals-d2684355.js +0 -4
  633. package/dist/cjs/app-globals-d2684355.js.map +0 -1
  634. package/dist/cjs/button-link-a6efe03a.js +0 -4
  635. package/dist/cjs/color-54989457.js +0 -4
  636. package/dist/cjs/color-54989457.js.map +0 -1
  637. package/dist/cjs/controller-7d31a408.js +0 -4
  638. package/dist/cjs/controller-icon-222f331c.js +0 -4
  639. package/dist/cjs/controller-icon-222f331c.js.map +0 -1
  640. package/dist/cjs/dev.utils-2353100d.js +0 -4
  641. package/dist/cjs/dev.utils-2353100d.js.map +0 -1
  642. package/dist/cjs/devtools-3cff8604.js +0 -4
  643. package/dist/cjs/icon-4ba7c898.js +0 -4
  644. package/dist/cjs/icon-4ba7c898.js.map +0 -1
  645. package/dist/cjs/index-35d18542.js +0 -4
  646. package/dist/cjs/index-95d4d068.js +0 -4
  647. package/dist/cjs/index-95d4d068.js.map +0 -1
  648. package/dist/cjs/index-9ee2c3ec.js +0 -4
  649. package/dist/cjs/index-9ee2c3ec.js.map +0 -1
  650. package/dist/cjs/index-c4f8dd50.js.map +0 -1
  651. package/dist/cjs/index.m-21aa1255.js +0 -4
  652. package/dist/cjs/index.m-21aa1255.js.map +0 -1
  653. package/dist/cjs/kol-color.cjs.entry.js +0 -4
  654. package/dist/cjs/kol-color.cjs.entry.js.map +0 -1
  655. package/dist/cjs/kol-counter.cjs.entry.js +0 -4
  656. package/dist/cjs/kol-counter.cjs.entry.js.map +0 -1
  657. package/dist/cjs/label-92997e6d.js +0 -4
  658. package/dist/cjs/prop.validators-e366929d.js +0 -4
  659. package/dist/cjs/prop.validators-e366929d.js.map +0 -1
  660. package/dist/cjs/reuse-28825ead.js +0 -4
  661. package/dist/cjs/reuse-28825ead.js.map +0 -1
  662. package/dist/cjs/validator-953ea58f.js +0 -4
  663. package/dist/cjs/validator-953ea58f.js.map +0 -1
  664. package/dist/components/color.js +0 -4
  665. package/dist/components/color.js.map +0 -1
  666. package/dist/components/index.m.js +0 -4
  667. package/dist/components/index.m.js.map +0 -1
  668. package/dist/components/index3.js.map +0 -1
  669. package/dist/components/kol-color.d.ts +0 -11
  670. package/dist/components/kol-color.js +0 -4
  671. package/dist/components/kol-color.js.map +0 -1
  672. package/dist/components/kol-counter.d.ts +0 -11
  673. package/dist/components/kol-counter.js +0 -4
  674. package/dist/components/kol-counter.js.map +0 -1
  675. package/dist/esm/a11y.tipps-ff5a1a99.js +0 -4
  676. package/dist/esm/a11y.tipps-ff5a1a99.js.map +0 -1
  677. package/dist/esm/app-globals-42336357.js +0 -4
  678. package/dist/esm/app-globals-42336357.js.map +0 -1
  679. package/dist/esm/color-d69786a5.js +0 -4
  680. package/dist/esm/color-d69786a5.js.map +0 -1
  681. package/dist/esm/controller-4c6206b0.js +0 -4
  682. package/dist/esm/controller-icon-c113ba17.js +0 -4
  683. package/dist/esm/dev.utils-daaf2f39.js +0 -4
  684. package/dist/esm/dev.utils-daaf2f39.js.map +0 -1
  685. package/dist/esm/devtools-d2ea86e5.js +0 -4
  686. package/dist/esm/icon-22dfdb71.js +0 -4
  687. package/dist/esm/index-1b8b837d.js +0 -4
  688. package/dist/esm/index-1b8b837d.js.map +0 -1
  689. package/dist/esm/index-2eac13ad.js +0 -4
  690. package/dist/esm/index-2eac13ad.js.map +0 -1
  691. package/dist/esm/index-5cef3ddc.js +0 -4
  692. package/dist/esm/index-e722bdb7.js +0 -4
  693. package/dist/esm/index-e722bdb7.js.map +0 -1
  694. package/dist/esm/index.m-86dc8c44.js +0 -4
  695. package/dist/esm/index.m-86dc8c44.js.map +0 -1
  696. package/dist/esm/kol-color.entry.js +0 -4
  697. package/dist/esm/kol-color.entry.js.map +0 -1
  698. package/dist/esm/kol-counter.entry.js +0 -4
  699. package/dist/esm/kol-counter.entry.js.map +0 -1
  700. package/dist/esm/label-3f6eb03e.js +0 -4
  701. package/dist/esm/prop.validators-0ce5851c.js +0 -4
  702. package/dist/esm/prop.validators-0ce5851c.js.map +0 -1
  703. package/dist/esm/reuse-2f7da8fc.js +0 -4
  704. package/dist/esm/reuse-2f7da8fc.js.map +0 -1
  705. package/dist/esm/validation-cac8ee73.js +0 -4
  706. package/dist/esm/validator-2e4f8df6.js +0 -4
  707. package/dist/esm/validator-2e4f8df6.js.map +0 -1
  708. package/dist/kolibri/a11y.tipps-ff5a1a99.js +0 -4
  709. package/dist/kolibri/a11y.tipps-ff5a1a99.js.map +0 -1
  710. package/dist/kolibri/app-globals-42336357.js +0 -4
  711. package/dist/kolibri/app-globals-42336357.js.map +0 -1
  712. package/dist/kolibri/color-d69786a5.js +0 -4
  713. package/dist/kolibri/color-d69786a5.js.map +0 -1
  714. package/dist/kolibri/controller-4c6206b0.js +0 -4
  715. package/dist/kolibri/controller-icon-c113ba17.js +0 -4
  716. package/dist/kolibri/dev.utils-daaf2f39.js +0 -4
  717. package/dist/kolibri/dev.utils-daaf2f39.js.map +0 -1
  718. package/dist/kolibri/devtools-d2ea86e5.js +0 -4
  719. package/dist/kolibri/icon-22dfdb71.js +0 -4
  720. package/dist/kolibri/index-1b8b837d.js.map +0 -1
  721. package/dist/kolibri/index-2eac13ad.js +0 -4
  722. package/dist/kolibri/index-2eac13ad.js.map +0 -1
  723. package/dist/kolibri/index-5cef3ddc.js +0 -4
  724. package/dist/kolibri/index-e722bdb7.js +0 -4
  725. package/dist/kolibri/index-e722bdb7.js.map +0 -1
  726. package/dist/kolibri/index.m-86dc8c44.js +0 -4
  727. package/dist/kolibri/index.m-86dc8c44.js.map +0 -1
  728. package/dist/kolibri/kol-color.entry.js +0 -4
  729. package/dist/kolibri/kol-color.entry.js.map +0 -1
  730. package/dist/kolibri/kol-counter.entry.js +0 -4
  731. package/dist/kolibri/kol-counter.entry.js.map +0 -1
  732. package/dist/kolibri/label-3f6eb03e.js +0 -4
  733. package/dist/kolibri/prop.validators-0ce5851c.js +0 -4
  734. package/dist/kolibri/prop.validators-0ce5851c.js.map +0 -1
  735. package/dist/kolibri/reuse-2f7da8fc.js +0 -4
  736. package/dist/kolibri/reuse-2f7da8fc.js.map +0 -1
  737. package/dist/kolibri/validation-cac8ee73.js +0 -4
  738. package/dist/kolibri/validator-2e4f8df6.js +0 -4
  739. package/dist/kolibri/validator-2e4f8df6.js.map +0 -1
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const bund=require("./bund-5ad49011.js"),dev_utils=require("./dev.utils-2353100d.js"),prop_validators=require("./prop.validators-e366929d.js"),i18n=require("./i18n-d2bd0802.js"),index=require("./index-35d18542.js");require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js"),require("./a11y.tipps-e1770acf.js"),exports.BUNDESAEMTER=bund.BUNDESAEMTER,exports.BUNDESANSTALTEN=bund.BUNDESANSTALTEN,exports.BUNDESMINISTERIEN=bund.BUNDESMINISTERIEN,exports.BUND_LOGO_TEXT_MAP=bund.BUND_LOGO_TEXT_MAP,Object.defineProperty(exports,"Bundesamt",{enumerable:!0,get:function(){return bund.Bundesamt}}),Object.defineProperty(exports,"Bundesanstalt",{enumerable:!0,get:function(){return bund.Bundesanstalt}}),Object.defineProperty(exports,"Bundesministerium",{enumerable:!0,get:function(){return bund.Bundesministerium}}),exports.ToasterService=dev_utils.ToasterService,exports.configKoliBri=dev_utils.configKoliBri,exports.KoliBriDevHelper=prop_validators.KoliBriDevHelper,exports.translations=i18n.translations,exports.register=index.register;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const bund=require("./bund-5ad49011.js"),dev_utils=require("./dev.utils-b6dd5206.js"),prop_validators=require("./prop.validators-125ca9b8.js"),i18n=require("./i18n-2f63f0ca.js"),index=require("./index-d637d600.js");require("./reuse-b43997f3.js"),require("./index-66aa0f41.js"),require("./a11y.tipps-bd1e1e68.js"),exports.BUNDESAEMTER=bund.BUNDESAEMTER,exports.BUNDESANSTALTEN=bund.BUNDESANSTALTEN,exports.BUNDESMINISTERIEN=bund.BUNDESMINISTERIEN,exports.BUND_LOGO_TEXT_MAP=bund.BUND_LOGO_TEXT_MAP,Object.defineProperty(exports,"Bundesamt",{enumerable:!0,get:function(){return bund.Bundesamt}}),Object.defineProperty(exports,"Bundesanstalt",{enumerable:!0,get:function(){return bund.Bundesanstalt}}),Object.defineProperty(exports,"Bundesministerium",{enumerable:!0,get:function(){return bund.Bundesministerium}}),exports.ToasterService=dev_utils.ToasterService,exports.configKoliBri=dev_utils.configKoliBri,exports.KoliBriDevHelper=prop_validators.KoliBriDevHelper,exports.translations=i18n.translations,exports.register=index.register;
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),buttonLink=require("./button-link-a6efe03a.js"),dev_utils=require("./dev.utils-2353100d.js"),prop_validators=require("./prop.validators-e366929d.js");require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js"),require("./a11y.tipps-e1770acf.js");const defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}:host abbr{cursor:help}",KolAbbr=class{constructor(t){index.registerInstance(this,t),this.nonce=dev_utils.nonce(),this._tooltipAlign="top",this._title=void 0,this.state={_title:"",_tooltipAlign:"top"}}render(){return index.h(index.Host,null,index.h("abbr",{"aria-labelledby":this.nonce,role:"definition",title:this.state._title},index.h("span",{title:""},index.h("slot",null))),index.h("kol-tooltip",{_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._title}))}validateTitle(t){prop_validators.watchString(this,"_title",t,{required:!0})}validateTooltipAlign(t){buttonLink.watchTooltipAlignment(this,"_tooltipAlign",t)}componentWillLoad(){this.validateTitle(this._title),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_title:["validateTitle"],_tooltipAlign:["validateTooltipAlign"]}}};KolAbbr.style={default:defaultStyleCss},exports.kol_abbr=KolAbbr;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),buttonLink=require("./button-link-8476ef97.js"),dev_utils=require("./dev.utils-b6dd5206.js"),prop_validators=require("./prop.validators-125ca9b8.js");require("./reuse-b43997f3.js"),require("./index-66aa0f41.js"),require("./a11y.tipps-bd1e1e68.js");const defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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}",KolAbbr=class{constructor(i){index.registerInstance(this,i),this.nonce=dev_utils.nonce(),this._tooltipAlign="top",this._title=void 0,this.state={_title:"",_tooltipAlign:"top"}}render(){return index.h(index.Host,null,index.h("abbr",{"aria-labelledby":this.nonce,role:"definition",title:this.state._title},index.h("span",{title:""},index.h("slot",null))),index.h("kol-tooltip",{_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._title}))}validateTitle(i){prop_validators.watchString(this,"_title",i,{required:!0})}validateTooltipAlign(i){buttonLink.watchTooltipAlignment(this,"_tooltipAlign",i)}componentWillLoad(){this.validateTitle(this._title),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_title:["validateTitle"],_tooltipAlign:["validateTooltipAlign"]}}};KolAbbr.style={default:defaultStyleCss},exports.kol_abbr=KolAbbr;
@@ -1 +1 @@
1
- {"file":"kol-abbr.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,sfAAsf;;MC8BjgB,OAAO;;;IACF,UAAK,GAAGA,eAAK,EAAE,CAAC;yBAkBU,KAAK;;iBAgBhB;MAC/B,MAAM,EAAE,EAAE;MACV,aAAa,EAAE,KAAK;KACpB;;EAnCM,MAAM;IACZ,QACCC,QAACC,UAAI,QACJD,qCAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAC5EA,kBAAM,KAAK,EAAC,EAAE,IACbA,qBAAQ,CACF,CACD,EACPA,yBAAa,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAgB,CACnG,EACN;GACF;EAmCM,aAAa,CAAC,KAAc;IAClCE,2BAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;MAClC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAMM,oBAAoB,CAAC,KAAiB;IAC5CC,gCAAqB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GACpD;EAKM,iBAAiB;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;GAC9C;;;;;;;;;;;;","names":["nonce","h","Host","watchString","watchTooltipAlignment"],"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"],"version":3}
1
+ {"file":"kol-abbr.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,+9BAA+9B;;MC8B1+B,OAAO;;;IACF,UAAK,GAAGA,eAAK,EAAE,CAAC;yBAkBU,KAAK;;iBAgBhB;MAC/B,MAAM,EAAE,EAAE;MACV,aAAa,EAAE,KAAK;KACpB;;EAnCM,MAAM;IACZ,QACCC,QAACC,UAAI,QACJD,qCAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAC5EA,kBAAM,KAAK,EAAC,EAAE,IACbA,qBAAQ,CACF,CACD,EACPA,yBAAa,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAgB,CACnG,EACN;GACF;EAmCM,aAAa,CAAC,KAAc;IAClCE,2BAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;MAClC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAMM,oBAAoB,CAAC,KAAiB;IAC5CC,gCAAqB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GACpD;EAKM,iBAAiB;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;GAC9C;;;;;;;;;;;;","names":["nonce","h","Host","watchString","watchTooltipAlignment"],"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"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-e1770acf.js"),prop_validators=require("./prop.validators-e366929d.js"),validation=require("./validation-b1132e50.js");require("./dev.utils-2353100d.js"),require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js");const defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}";a11y_tipps.featureHint("[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"),a11y_tipps.featureHint("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const KolAccordion=class{constructor(e){index.registerInstance(this,e),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 i=setTimeout((()=>{var t;clearTimeout(i),"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.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 index.h(index.Host,null,index.h("div",{part:"accordion "+(this.state._open?"open":"close")},index.h("kol-heading-wc",{_level:this.state._level},index.h("button",{ref:this.catchAriaExpanded,onClick:this.onClick},index.h("kol-icon",{_ariaLabel:"",_icon:this.state._open?"fa-solid fa-minus":"fa-solid fa-plus",_part:this.state._open?"close":"open"}),index.h("span",null,this.state._heading))),index.h("div",{part:"header"},index.h("slot",{name:"header"})),index.h("div",{part:"content",style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},index.h("slot",{name:"content"}))))}validateHeading(e){prop_validators.watchString(this,"_heading",e,{required:!0})}validateLevel(e){validation.watchHeadingLevel(this,e)}validateOn(e){"object"==typeof e&&null!==e&&"function"==typeof e.onClick&&prop_validators.setState(this,"_on",e)}validateOpen(e){prop_validators.watchBoolean(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"]}}};KolAccordion.style={default:defaultStyleCss},exports.kol_accordion=KolAccordion;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-bd1e1e68.js"),prop_validators=require("./prop.validators-125ca9b8.js"),validation=require("./validation-c071c3ac.js");require("./dev.utils-b6dd5206.js"),require("./reuse-b43997f3.js"),require("./index-66aa0f41.js");const defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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}";a11y_tipps.featureHint("[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"),a11y_tipps.featureHint("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const KolAccordion=class{constructor(e){index.registerInstance(this,e),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 i=setTimeout((()=>{var t;clearTimeout(i),"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.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 index.h(index.Host,null,index.h("div",{part:"accordion "+(this.state._open?"open":"close")},index.h("kol-heading-wc",{_label:"",_level:this.state._level},index.h("button",{ref:this.catchAriaExpanded,onClick:this.onClick},index.h("kol-icon",{_ariaLabel:"",_icon:this.state._open?"fa-solid fa-minus":"fa-solid fa-plus",_part:this.state._open?"close":"open"}),index.h("span",null,this.state._heading))),index.h("div",{part:"header"},index.h("slot",{name:"header"})),index.h("div",{part:"content",style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},index.h("slot",{name:"content"}))))}validateHeading(e){prop_validators.watchString(this,"_heading",e,{required:!0})}validateLevel(e){validation.watchHeadingLevel(this,e)}validateOn(e){"object"==typeof e&&null!==e&&"function"==typeof e.onClick&&prop_validators.setState(this,"_on",e)}validateOpen(e){prop_validators.watchBoolean(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"]}}};KolAccordion.style={default:defaultStyleCss},exports.kol_accordion=KolAccordion;
@@ -1 +1 @@
1
- {"file":"kol-accordion.entry.cjs.js","mappings":"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","names":["featureHint","h","Host","watchString","watchHeadingLevel","setState","watchBoolean"],"sources":["./src/components/style.sass?tag=kol-accordion&mode=default&encapsulation=shadow","./src/components/accordion/component.tsx"],"sourcesContent":["@windicss\n\n*\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: 700\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\n\tcursor: pointer\n\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\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 && process.env.NODE_ENV !== '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"],"version":3}
1
+ {"file":"kol-accordion.entry.cjs.js","mappings":"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","names":["featureHint","h","Host","watchString","watchHeadingLevel","setState","watchBoolean"],"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 { 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.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"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-e1770acf.js"),dev_utils=require("./dev.utils-2353100d.js"),prop_validators=require("./prop.validators-e366929d.js"),validation=require("./validation-b1132e50.js"),i18n=require("./i18n-d2bd0802.js");require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js"),require("./index-35d18542.js");const defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}",Icon=e=>index.h("kol-icon",{class:"icon",_ariaLabel:"string"==typeof e.heading&&e.heading.length>0?"":e.ariaLabel,_icon:e.icon}),AlertIcon=e=>{switch(e.type){case"error":return index.h(Icon,{ariaLabel:i18n.translate("kol-error"),icon:"fa-solid fa-circle-xmark",heading:e.heading});case"info":return index.h(Icon,{ariaLabel:i18n.translate("kol-info"),icon:"fa-solid fa-circle-info",heading:e.heading});case"warning":return index.h(Icon,{ariaLabel:i18n.translate("kol-warning"),icon:"fa-solid fa-triangle-exclamation",heading:e.heading});case"success":return index.h(Icon,{ariaLabel:i18n.translate("kol-success"),icon:"fa-solid fa-circle-check",heading:e.heading});default:return index.h(Icon,{ariaLabel:i18n.translate("kol-message"),icon:"fa-regular fa-comment",heading:e.heading})}},KolAlert=class{constructor(e){index.registerInstance(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{dev_utils.Log.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(e){dev_utils.Log.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return index.h(index.Host,null,index.h("div",{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},"msg"===this.state._variant&&index.h(AlertIcon,{heading:this.state._heading,type:this.state._type}),index.h("div",null,("string"==typeof this.state._heading&&this.state._heading.length>0||"card"===this.state._variant)&&index.h("kol-heading-wc",{class:"heading",_level:this.state._level},"card"===this.state._variant&&index.h(AlertIcon,{heading:this.state._heading,type:this.state._type}),this.state._heading),index.h("div",{class:"content"},index.h("slot",null)),this.state._hasCloser&&index.h("kol-button-wc",{class:"close",_icon:{left:{icon:"fa-solid fa-circle-xmark"}},_iconOnly:!0,_label:i18n.translate("kol-close"),_on:this.on,_tooltipAlign:"left"}))))}validateAlert(e){prop_validators.watchBoolean(this,"_alert",e)}validateHasCloser(e){prop_validators.watchBoolean(this,"_hasCloser",e)}validateHeading(e){prop_validators.watchString(this,"_heading",e)}validateLevel(e){validation.watchHeadingLevel(this,e)}validateOn(e){if("object"==typeof e&&null!==e){a11y_tipps.featureHint("[KolAlert] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const a={};"function"!=typeof e.onClose&&!0!==e.onClose||(a.onClose=e.onClose),prop_validators.setState(this,"_on",a)}}validateType(e){prop_validators.watchValidator(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){prop_validators.watchValidator(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"]}}};KolAlert.style={default:defaultStyleCss},exports.kol_alert=KolAlert;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-bd1e1e68.js"),dev_utils=require("./dev.utils-b6dd5206.js"),prop_validators=require("./prop.validators-125ca9b8.js"),validation=require("./validation-c071c3ac.js"),i18n=require("./i18n-2f63f0ca.js");require("./reuse-b43997f3.js"),require("./index-66aa0f41.js"),require("./index-d637d600.js");const defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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>div{background-color:white;border-color:var(--kolibri-border-color);border-radius:var(--kolibri-border-radius);border-style:solid;border-width:var(--kolibri-border-width);display:flex;overflow:hidden;width:100%}:host>div.error{border-color:var(--kolibri-color-error)}:host>div.error .icon{background-color:var(--kolibri-color-error)}:host>div.info{border-color:var(--kolibri-color-info)}:host>div.info .icon{background-color:var(--kolibri-color-info)}:host>div.success{border-color:var(--kolibri-color-success)}:host>div.success .icon{background-color:var(--kolibri-color-success)}:host>div.warning{border-color:var(--kolibri-color-warning)}:host>div.warning .icon{background-color:var(--kolibri-color-warning)}:host>div .icon{color:white;display:inline-block;padding:0 var(--kolibri-spacing)}:host>div>div{display:grid}:host>div>div .heading{display:inline-block;padding:0 var(--kolibri-spacing)}:host>div>div .heading .icon{border-radius:0 0 var(--kolibri-border-radius) 0;margin-left:var(--kolibri-spacing);margin-right:var(--kolibri-spacing)}:host>div>div>div:last-child{padding:var(--kolibri-spacing)}",Icon=i=>index.h("kol-icon",{class:"icon",_ariaLabel:"string"==typeof i.heading&&i.heading.length>0?"":i.ariaLabel,_icon:i.icon}),AlertIcon=i=>{switch(i.type){case"error":return index.h(Icon,{ariaLabel:i18n.translate("kol-error"),icon:"fa-solid fa-circle-xmark",heading:i.heading});case"info":return index.h(Icon,{ariaLabel:i18n.translate("kol-info"),icon:"fa-solid fa-circle-info",heading:i.heading});case"warning":return index.h(Icon,{ariaLabel:i18n.translate("kol-warning"),icon:"fa-solid fa-triangle-exclamation",heading:i.heading});case"success":return index.h(Icon,{ariaLabel:i18n.translate("kol-success"),icon:"fa-solid fa-circle-check",heading:i.heading});default:return index.h(Icon,{ariaLabel:i18n.translate("kol-message"),icon:"fa-regular fa-comment",heading:i.heading})}},KolAlert=class{constructor(i){index.registerInstance(this,i),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._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{dev_utils.Log.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(i){dev_utils.Log.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return index.h(index.Host,null,index.h("div",{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},"msg"===this.state._variant&&index.h(AlertIcon,{heading:this.state._heading,type:this.state._type}),index.h("div",null,("string"==typeof this.state._heading&&this.state._heading.length>0||"card"===this.state._variant)&&index.h("kol-heading-wc",{class:"heading",_label:this.state._heading||"",_level:this.state._level},"card"===this.state._variant&&index.h(AlertIcon,{heading:this.state._heading,type:this.state._type})),index.h("div",{class:"content"},index.h("slot",null)),this.state._hasCloser&&index.h("kol-button-wc",{class:"close",_icon:{left:{icon:"fa-solid fa-circle-xmark"}},_iconOnly:!0,_label:i18n.translate("kol-close"),_on:this.on,_tooltipAlign:"left"}))))}validateAlert(i){prop_validators.watchBoolean(this,"_alert",i)}validateHasCloser(i){prop_validators.watchBoolean(this,"_hasCloser",i)}validateHeading(i){prop_validators.watchString(this,"_heading",i)}validateLevel(i){validation.watchHeadingLevel(this,i)}validateOn(i){if("object"==typeof i&&null!==i){a11y_tipps.featureHint("[KolAlert] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const e={};"function"!=typeof i.onClose&&!0!==i.onClose||(e.onClose=i.onClose),prop_validators.setState(this,"_on",e)}}validateType(i){prop_validators.watchValidator(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){prop_validators.watchValidator(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"]}}};KolAlert.style={default:defaultStyleCss},exports.kol_alert=KolAlert;
@@ -1 +1 @@
1
- {"file":"kol-alert.entry.cjs.js","mappings":"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","names":["h","translate","Log","Host","watchBoolean","watchString","watchHeadingLevel","featureHint","setState","watchValidator"],"sources":["./src/components/style.sass?tag=kol-alert&mode=default&encapsulation=shadow","./src/components/alert/component.tsx"],"sourcesContent":["@windicss\n\n*\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: 700\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\n\tcursor: pointer\n\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\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"],"version":3}
1
+ {"file":"kol-alert.entry.cjs.js","mappings":"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","names":["h","translate","Log","Host","watchBoolean","watchString","watchHeadingLevel","featureHint","setState","watchValidator"],"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: var(--kolibri-border-width);\n\tdisplay: flex;\n\toverflow: hidden;\n\twidth: 100%;\n}\n:host > div.error {\n\tborder-color: var(--kolibri-color-error);\n}\n:host > div.error .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 .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 .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 .icon {\n\tbackground-color: var(--kolibri-color-warning);\n}\n:host > div .icon {\n\tcolor: white;\n\tdisplay: inline-block;\n\tpadding: 0 var(--kolibri-spacing);\n}\n:host > div > div {\n\tdisplay: grid;\n}\n:host > div > div .heading {\n\tdisplay: inline-block;\n\tpadding: 0 var(--kolibri-spacing);\n}\n:host > div > div .heading .icon {\n\tborder-radius: 0 0 var(--kolibri-border-radius) 0;\n\tmargin-left: var(--kolibri-spacing);\n\tmargin-right: var(--kolibri-spacing);\n}\n:host > div > div > div:last-child {\n\tpadding: var(--kolibri-spacing);\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 { 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.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{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\" _label={this.state._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</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"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index$1=require("./index-57f4a280.js"),color=require("./color-54989457.js"),a11y_tipps=require("./a11y.tipps-e1770acf.js"),prop_validators=require("./prop.validators-e366929d.js"),index_m=require("./index.m-21aa1255.js"),index=require("./index-95d4d068.js");require("./dev.utils-2353100d.js"),require("./index-9ee2c3ec.js"),require("./index-c4f8dd50.js");const getContrastYIQ=(t,o,a)=>(299*t+587*o+114*a)/1e3>=128?-1:1,calcContrastColor=(t,o,a,r=1)=>{const e=[Math.max(Math.min(Math.round(o[0]+r*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+r*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+r*Math.max(1,o[2]/100)),255),0)],s=index_m.s(prop_validators.rgbaConvert.hex(`rgba(${t.join(",")},1)`),prop_validators.rgbaConvert.hex(`rgba(${e.join(",")},1)`)),n=e[0]+e[1]+e[2];return 0===n||765===n||s>a?e:calcContrastColor(t,e,a,r)},getContrastColor=(t,o,a,r=1)=>{if(cache.has(t))return cache.get(t);const e=calcContrastColor(t,o,a,r);return cache.set(t,e),e},cache=new Map,createContrastColorPair=(t,o=7)=>{let a=[0,0,0,1],r=[255,255,255,1];"string"==typeof t?(a=index.colorRgba(t),r=a):"object"==typeof t&&null!==t&&"string"==typeof t.baseColor&&(a=index.colorRgba(t.baseColor),r="string"==typeof t.contrastColor?index.colorRgba(t.contrastColor):a);const e=(s=a[0],n=a[1],i=a[2],(299*s+587*n+114*i)/1e3>=128?-1:1);var s,n,i;return r=[...getContrastColor([a[0],a[1],a[2]],[r[0],r[1],r[2]],o,e),1],{baseColor:prop_validators.rgbaConvert.hex(`rgba(${a.join(",")})`),contrastColor:prop_validators.rgbaConvert.hex(`rgba(${r.join(",")})`)}},defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{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)}";a11y_tipps.featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const HACK_REG_EX=/^([a-f0-9]{3}|[a-f0-9]{6})$/,KolBadge=class{constructor(t){index$1.registerInstance(this,t),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{let o,a=t;"string"==typeof a?(HACK_REG_EX.test(a)&&(a11y_tipps.devHint("[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=createContrastColorPair(a)):o=createContrastColorPair({baseColor:a.backgroundColor,contrastColor:a.color}),this.bgColorStr=o.baseColor,this.colorStr=o.contrastColor},this._color=color.Nationalfarben.Schwarz,this._icon=void 0,this._iconAlign="left",this._iconOnly=!1,this._label=void 0,this._smartButton=void 0,this.state={_color:color.Nationalfarben.Schwarz}}render(){return index$1.h(index$1.Host,null,index$1.h("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},index$1.h("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&index$1.h("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){prop_validators.watchValidator(this,"_color",(t=>"string"==typeof t||"object"==typeof t&&null!==t),new Set(["string","KoliBriColor"]),t,{defaultValue:color.Nationalfarben.Schwarz,hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(t){prop_validators.objectObjectHandler(t,(()=>{try{t=prop_validators.parseJson(t)}catch(t){}prop_validators.setState(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}};KolBadge.style={default:defaultStyleCss},exports.kol_badge=KolBadge;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index$1=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-bd1e1e68.js"),prop_validators=require("./prop.validators-125ca9b8.js"),index=require("./index-1266b30d.js");require("./dev.utils-b6dd5206.js"),require("./reuse-b43997f3.js"),require("./index-66aa0f41.js");const getContrastYIQ=(t,o,r)=>(299*t+587*o+114*r)/1e3>=128?-1:1,calcColorContrast=(t,o,r,a=1)=>{const e=[Math.max(Math.min(Math.round(o[0]+a*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+a*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+a*Math.max(1,o[2]/100)),255),0)],i=prop_validators.s(prop_validators.rgbaConvert.hex(`rgba(${t.join(",")},1)`),prop_validators.rgbaConvert.hex(`rgba(${e.join(",")},1)`)),s=e[0]+e[1]+e[2];return 0===s||765===s||i>r?{background:t,foreground:e,contrast:i}:calcColorContrast(t,e,r,a)},cache=new Map,getColorContrast=(t,o,r,a=1)=>{if(cache.has(t))return cache.get(t);const e=calcColorContrast(t,o,r,a);return cache.set(t,e),e},createContrastColorPair=(t,o=7)=>{let r=[0,0,0,1],a=[255,255,255,1];"string"==typeof t?(r=index.colorRgba(t),a=r):"object"==typeof t&&null!==t&&"string"==typeof t.background&&"string"==typeof t.foreground&&(r=index.colorRgba(t.background),a="string"==typeof t.foreground?index.colorRgba(t.foreground):r);const e=(i=r[0],s=r[1],n=r[2],(299*i+587*s+114*n)/1e3>=128?-1:1);var i,s,n;const l=getColorContrast([r[0],r[1],r[2]],[a[0],a[1],a[2]],o,e);return a=[...l.foreground,1],{background:prop_validators.rgbaConvert.hex(`rgba(${r.join(",")})`),foreground:prop_validators.rgbaConvert.hex(`rgba(${a.join(",")})`),contrast:l.contrast}},defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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>span{display:inline-flex}:host>span>kol-button-wc{box-shadow-left:1px solid rgba(0, 0, 0, 0.25)}:host>span>kol-button-wc button{color:inherit}";a11y_tipps.featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const HACK_REG_EX=/^([a-f0-9]{3}|[a-f0-9]{6})$/,KolBadge=class{constructor(t){index$1.registerInstance(this,t),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{let o,r=t;"string"==typeof r?(HACK_REG_EX.test(r)&&(a11y_tipps.devHint("[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=createContrastColorPair(r)):o=createContrastColorPair({background:r.backgroundColor,foreground:r.color}),o.contrast<7&&a11y_tipps.a11yHint(`[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 index$1.h(index$1.Host,null,index$1.h("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},index$1.h("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&index$1.h("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){prop_validators.watchValidator(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){prop_validators.objectObjectHandler(t,(()=>{try{t=prop_validators.parseJson(t)}catch(t){}prop_validators.setState(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}};KolBadge.style={default:defaultStyleCss},exports.kol_badge=KolBadge;
@@ -1 +1 @@
1
- {"file":"kol-badge.entry.cjs.js","mappings":"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","names":["hex","rgbaConvert","colorRgba","featureHint","devHint","Nationalfarben","h","Host","watchValidator","objectObjectHandler","parseJson","setState"],"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\n// ts-prune-ignore-next\nexport const calcContrastColor = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): 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 color;\n\t} else {\n\t\treturn calcContrastColor(baseColor, color, ratio, dir);\n\t}\n};\n\n// ts-prune-ignore-next\nexport const getContrastColor = (baseColor: RGB, contrastcolor: RGB, ratio: number, dir = 1): RGB => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as RGB;\n\t}\n\tconst color = calcContrastColor(baseColor, contrastcolor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nconst cache: Map<unknown, RGB> = new Map();\n\nexport type KoliBriContrastColor = {\n\tbaseColor: string;\n\tcontrastColor: string;\n};\n\nexport const createContrastColorPair = (color: string | KoliBriContrastColor, contrastRatio = 7): KoliBriContrastColor => {\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.baseColor === 'string') {\n\t\tbaseColor = colorRgba(color.baseColor);\n\t\tif (typeof color.contrastColor === 'string') {\n\t\t\tcontrastColor = colorRgba(color.contrastColor);\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 contrastColorRGB = getContrastColor(\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 = [...contrastColorRGB, 1];\n\n\treturn {\n\t\tbaseColor: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tcontrastColor: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\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","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { Nationalfarben } from '../../enums/color';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { devHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchValidator } from '../../utils/prop.validators';\nimport { createContrastColorPair, KoliBriContrastColor } 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 = Nationalfarben.Schwarz;\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: Nationalfarben.Schwarz,\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tlet color = value as string | KoliBriColor;\n\t\tlet colorPair: KoliBriContrastColor;\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\tcolorPair = createContrastColorPair(color);\n\t\t} else {\n\t\t\tcolorPair = createContrastColorPair({\n\t\t\t\tbaseColor: color.backgroundColor,\n\t\t\t\tcontrastColor: color.color,\n\t\t\t});\n\t\t}\n\t\tthis.bgColorStr = colorPair.baseColor;\n\t\tthis.colorStr = colorPair.contrastColor;\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) => typeof value === 'string' || (typeof value === 'object' && value !== null),\n\t\t\tnew Set(['string', 'KoliBriColor']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: Nationalfarben.Schwarz,\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"],"version":3}
1
+ {"file":"kol-badge.entry.cjs.js","mappings":"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","names":["hex","rgbaConvert","colorRgba","featureHint","devHint","a11yHint","h","Host","watchValidator","objectObjectHandler","parseJson","setState"],"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\tbox-shadow-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 { 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.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 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"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-e1770acf.js"),prop_validators=require("./prop.validators-e366929d.js"),validation=require("./validation-9cdc8b6c.js");require("./dev.utils-2353100d.js"),require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js");const defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}",KolBreadcrumb=class{constructor(a){index.registerInstance(this,a),this._ariaLabel=void 0,this._links=void 0,this.state={_ariaLabel:"…",_links:[]}}render(){const a=this.state._links.length-1;return index.h(index.Host,null,index.h("nav",{"aria-label":this.state._ariaLabel},index.h("ul",null,0===this.state._links.length&&index.h("li",null,index.h("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-house"}),"…"),this.state._links.map(((i,e)=>index.h("li",{key:e},0!==e&&index.h("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right",_part:"separator",exportparts:"separator"}),e===a?index.h("span",null,i._iconOnly?index.h("kol-icon",{_ariaLabel:i._label,_icon:"string"==typeof i._icon?i._icon:"fa-solid fa-link-slash"}):index.h(index.Fragment,null,i._label)):index.h("kol-link",Object.assign({exportparts:"link",_useCase:"nav"},i,{_ariaLabel:i._label}),i._label)))))))}validateAriaLabel(a){prop_validators.watchString(this,"_ariaLabel",a,{required:!0}),a11y_tipps.a11yHintLabelingLandmarks(a)}validateLinks(a){validation.watchNavLinks("KolBreadcrumb",this,a)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};KolBreadcrumb.style={default:defaultStyleCss},exports.kol_breadcrumb=KolBreadcrumb;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),a11y_tipps=require("./a11y.tipps-bd1e1e68.js"),prop_validators=require("./prop.validators-125ca9b8.js"),validation=require("./validation-314516d8.js");require("./dev.utils-b6dd5206.js"),require("./reuse-b43997f3.js"),require("./index-66aa0f41.js");const defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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}",KolBreadcrumb=class{constructor(i){index.registerInstance(this,i),this._ariaLabel=void 0,this._links=void 0,this.state={_ariaLabel:"…",_links:[]}}render(){const i=this.state._links.length-1;return index.h(index.Host,null,index.h("nav",{"aria-label":this.state._ariaLabel},index.h("ul",null,0===this.state._links.length&&index.h("li",null,index.h("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-house"}),"…"),this.state._links.map(((e,a)=>index.h("li",{key:a},0!==a&&index.h("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right",_part:"separator",exportparts:"separator"}),a===i?index.h("span",null,e._iconOnly?index.h("kol-icon",{_ariaLabel:e._label,_icon:"string"==typeof e._icon?e._icon:"fa-solid fa-link-slash"}):index.h(index.Fragment,null,e._label)):index.h("kol-link",Object.assign({exportparts:"link",_useCase:"nav"},e,{_ariaLabel:e._label}),e._label)))))))}validateAriaLabel(i){prop_validators.watchString(this,"_ariaLabel",i,{required:!0}),a11y_tipps.a11yHintLabelingLandmarks(i)}validateLinks(i){validation.watchNavLinks("KolBreadcrumb",this,i)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};KolBreadcrumb.style={default:defaultStyleCss},exports.kol_breadcrumb=KolBreadcrumb;
@@ -1 +1 @@
1
- {"file":"kol-breadcrumb.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,+dAA+d;;MCqC1e,aAAa;;;;;iBAmDO;MAC/B,UAAU,EAAE,GAAG;MACf,MAAM,EAAE,EAAE;KACV;;EArDM,MAAM;IACZ,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,QACCA,QAACC,UAAI,QACJD,+BAAiB,IAAI,CAAC,KAAK,CAAC,UAAU,IACrCA,oBACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,KAC9BA,oBACCA,sBAAU,UAAU,EAAC,EAAE,EAAC,KAAK,EAAC,mBAAmB,GAAG,WAChD,CACL,EACA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAEE,OAAa;MAC1C,QACCF,gBAAI,GAAG,EAAEE,OAAK,IACZA,OAAK,KAAK,CAAC,IAAIF,sBAAU,UAAU,EAAC,EAAE,EAAC,KAAK,EAAC,yBAAyB,EAAC,KAAK,EAAC,WAAW,EAAC,WAAW,EAAC,WAAW,GAAG,EACnHE,OAAK,KAAK,SAAS,IACnBF,sBACE,IAAI,CAAC,SAAS,IACdA,sBAAU,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,wBAAwB,GAAI,KAEpHA,QAACG,cAAQ,QAAE,IAAI,CAAC,MAAM,CAAY,CAClC,CACK,KAEPH,oCAAU,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,IAAK,IAAI,IAAE,UAAU,EAAE,IAAI,CAAC,MAAM,KAC3E,IAAI,CAAC,MAAM,CACF,CACX,CACG,EACJ;KACF,CAAC,CACE,CACA,CACA,EACN;GACF;EAwBM,iBAAiB,CAAC,KAAc;IACtCI,2BAAW,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE;MACtC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;IACHC,oCAAyB,CAAC,KAAK,CAAC,CAAC;GACjC;EAMM,aAAa,CAAC,KAAmC;IACvDC,wBAAa,CAAC,eAAe,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;GAC5C;EAKM,iBAAiB;IACvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChC;;;;;;;;;;;;","names":["h","Host","index","Fragment","watchString","a11yHintLabelingLandmarks","watchNavLinks"],"sources":["./src/components/style.sass?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@windicss\n\n*\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: 700\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\n\tcursor: pointer\n\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\tborder-width: 0\n","import { Component, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { a11yHintLabelingLandmarks } from '../../utils/a11y.tipps';\nimport { watchString } from '../../utils/prop.validators';\nimport { NavLinkProps } from '../link/component';\nimport { watchNavLinks } from '../nav/validation';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tariaLabel: string;\n\tlinks: Stringified<NavLinkProps[]>;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tariaLabel: string;\n\tlinks: NavLinkProps[];\n};\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @part link - Ermöglicht das Stylen der Links.\n * @part separator - Ermöglicht das Ändern des Separator-Icons.\n */\n@Component({\n\ttag: 'kol-breadcrumb',\n\tstyleUrls: {\n\t\tdefault: '../style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolBreadcrumb implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\tconst lastIndex = this.state._links.length - 1;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<nav aria-label={this.state._ariaLabel}>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t{this.state._links.length === 0 && (\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-house\" />…\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.state._links.map((link, index: number) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li key={index}>\n\t\t\t\t\t\t\t\t\t{index !== 0 && <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-right\" _part=\"separator\" exportparts=\"separator\" />}\n\t\t\t\t\t\t\t\t\t{index === lastIndex ? (\n\t\t\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\t\t{link._iconOnly ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<kol-icon _ariaLabel={link._label} _icon={typeof link._icon === 'string' ? link._icon : 'fa-solid fa-link-slash'} />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<Fragment>{link._label}</Fragment>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<kol-link exportparts=\"link\" _useCase=\"nav\" {...link} _ariaLabel={link._label}>\n\t\t\t\t\t\t\t\t\t\t\t{link._label}\n\t\t\t\t\t\t\t\t\t\t</kol-link>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</ul>\n\t\t\t\t</nav>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt den Text an, der die Navigation von anderen Navigationen differenziert.\n\t */\n\t@Prop() public _ariaLabel!: string;\n\n\t/**\n\t * Gibt die geordnete Liste der Seitenhierarchie in Links an.\n\t */\n\t@Prop() public _links!: Stringified<NavLinkProps[]>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_ariaLabel: '…', // '⚠'\n\t\t_links: [],\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\twatchString(this, '_ariaLabel', value, {\n\t\t\trequired: true,\n\t\t});\n\t\ta11yHintLabelingLandmarks(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<NavLinkProps[]>): void {\n\t\twatchNavLinks('KolBreadcrumb', this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateLinks(this._links);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-breadcrumb.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,w8BAAw8B;;MCqCn9B,aAAa;;;;;iBAmDO;MAC/B,UAAU,EAAE,GAAG;MACf,MAAM,EAAE,EAAE;KACV;;EArDM,MAAM;IACZ,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,QACCA,QAACC,UAAI,QACJD,+BAAiB,IAAI,CAAC,KAAK,CAAC,UAAU,IACrCA,oBACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,KAC9BA,oBACCA,sBAAU,UAAU,EAAC,EAAE,EAAC,KAAK,EAAC,mBAAmB,GAAG,WAChD,CACL,EACA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAEE,OAAa;MAC1C,QACCF,gBAAI,GAAG,EAAEE,OAAK,IACZA,OAAK,KAAK,CAAC,IAAIF,sBAAU,UAAU,EAAC,EAAE,EAAC,KAAK,EAAC,yBAAyB,EAAC,KAAK,EAAC,WAAW,EAAC,WAAW,EAAC,WAAW,GAAG,EACnHE,OAAK,KAAK,SAAS,IACnBF,sBACE,IAAI,CAAC,SAAS,IACdA,sBAAU,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,wBAAwB,GAAI,KAEpHA,QAACG,cAAQ,QAAE,IAAI,CAAC,MAAM,CAAY,CAClC,CACK,KAEPH,oCAAU,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,IAAK,IAAI,IAAE,UAAU,EAAE,IAAI,CAAC,MAAM,KAC3E,IAAI,CAAC,MAAM,CACF,CACX,CACG,EACJ;KACF,CAAC,CACE,CACA,CACA,EACN;GACF;EAwBM,iBAAiB,CAAC,KAAc;IACtCI,2BAAW,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE;MACtC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;IACHC,oCAAyB,CAAC,KAAK,CAAC,CAAC;GACjC;EAMM,aAAa,CAAC,KAAmC;IACvDC,wBAAa,CAAC,eAAe,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;GAC5C;EAKM,iBAAiB;IACvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChC;;;;;;;;;;;;","names":["h","Host","index","Fragment","watchString","a11yHintLabelingLandmarks","watchNavLinks"],"sources":["./src/components/breadcrumb/style.css?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@import '../style.css';\n","import { Component, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { a11yHintLabelingLandmarks } from '../../utils/a11y.tipps';\nimport { watchString } from '../../utils/prop.validators';\nimport { NavLinkProps } from '../link/component';\nimport { watchNavLinks } from '../nav/validation';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tariaLabel: string;\n\tlinks: Stringified<NavLinkProps[]>;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tariaLabel: string;\n\tlinks: NavLinkProps[];\n};\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @part link - Ermöglicht das Stylen der Links.\n * @part separator - Ermöglicht das Ändern des Separator-Icons.\n */\n@Component({\n\ttag: 'kol-breadcrumb',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolBreadcrumb implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\tconst lastIndex = this.state._links.length - 1;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<nav aria-label={this.state._ariaLabel}>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t{this.state._links.length === 0 && (\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-house\" />…\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.state._links.map((link, index: number) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li key={index}>\n\t\t\t\t\t\t\t\t\t{index !== 0 && <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-right\" _part=\"separator\" exportparts=\"separator\" />}\n\t\t\t\t\t\t\t\t\t{index === lastIndex ? (\n\t\t\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\t\t{link._iconOnly ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<kol-icon _ariaLabel={link._label} _icon={typeof link._icon === 'string' ? link._icon : 'fa-solid fa-link-slash'} />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<Fragment>{link._label}</Fragment>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<kol-link exportparts=\"link\" _useCase=\"nav\" {...link} _ariaLabel={link._label}>\n\t\t\t\t\t\t\t\t\t\t\t{link._label}\n\t\t\t\t\t\t\t\t\t\t</kol-link>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</ul>\n\t\t\t\t</nav>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt den Text an, der die Navigation von anderen Navigationen differenziert.\n\t */\n\t@Prop() public _ariaLabel!: string;\n\n\t/**\n\t * Gibt die geordnete Liste der Seitenhierarchie in Links an.\n\t */\n\t@Prop() public _links!: Stringified<NavLinkProps[]>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_ariaLabel: '…', // '⚠'\n\t\t_links: [],\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\twatchString(this, '_ariaLabel', value, {\n\t\t\trequired: true,\n\t\t});\n\t\ta11yHintLabelingLandmarks(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<NavLinkProps[]>): void {\n\t\twatchNavLinks('KolBreadcrumb', this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateLinks(this._links);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),KolButtonGroupWc=class{constructor(e){index.registerInstance(this,e),this.state={}}render(){return index.h(index.Host,null,index.h("div",{class:"flex flex-wrap bg-normal"},index.h("slot",null)))}};exports.kol_button_group_wc=KolButtonGroupWc;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),KolButtonGroupWc=class{constructor(e){index.registerInstance(this,e),this.state={}}render(){return index.h(index.Host,null,index.h("slot",null))}};exports.kol_button_group_wc=KolButtonGroupWc;
@@ -1 +1 @@
1
- {"file":"kol-button-group-wc.entry.cjs.js","mappings":";;;;;;;;;MAmBa,gBAAgB;;;iBAcI,EAAE;;EAb3B,MAAM;IACZ,QACCA,QAACC,UAAI,QACJD,iBAAK,KAAK,EAAC,0BAA0B,IACpCA,qBAAQ,CACH,CACA,EACN;GACF;;;;;","names":["h","Host"],"sources":["./src/components/button-group/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, State } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-button-group-wc',\n\tshadow: false,\n})\nexport class KolButtonGroupWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div class=\"flex flex-wrap bg-normal\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {};\n}\n"],"version":3}
1
+ {"file":"kol-button-group-wc.entry.cjs.js","mappings":";;;;;;;;;MAmBa,gBAAgB;;;iBAYI,EAAE;;EAX3B,MAAM;IACZ,QACCA,QAACC,UAAI,QACJD,qBAAQ,CACF,EACN;GACF;;;;;","names":["h","Host"],"sources":["./src/components/button-group/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, State } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-button-group-wc',\n\tshadow: false,\n})\nexport class KolButtonGroupWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<slot />\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {};\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}",KolButtonGroup=class{constructor(e){index.registerInstance(this,e)}render(){return index.h(index.Host,null,index.h("kol-button-group-wc",null,index.h("slot",null)))}};KolButtonGroup.style={default:defaultStyleCss},exports.kol_button_group=KolButtonGroup;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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>kol-button-group-wc{display:inline-flex;flex-wrap:wrap;gap:calc(2 * var(--kolibri-spacing))}",KolButtonGroup=class{constructor(o){index.registerInstance(this,o)}render(){return index.h(index.Host,null,index.h("kol-button-group-wc",null,index.h("slot",null)))}};KolButtonGroup.style={default:defaultStyleCss},exports.kol_button_group=KolButtonGroup;
@@ -1 +1 @@
1
- {"file":"kol-button-group.entry.cjs.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,+dAA+d;;MCW1e,cAAc;;;;EACnB,MAAM;IACZ,QACCA,QAACC,UAAI,QACJD,qCACCA,qBAAQ,CACa,CAChB,EACN;GACF;;;;;;;;","names":["h","Host"],"sources":["./src/components/style.sass?tag=kol-button-group&mode=default&encapsulation=shadow","./src/components/button-group/shadow.tsx"],"sourcesContent":["@windicss\n\n*\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: 700\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\n\tcursor: pointer\n\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\tborder-width: 0\n","import { Component, h, Host, JSX } from '@stencil/core';\n\nimport { Props } from './component';\n\n@Component({\n\ttag: 'kol-button-group',\n\tstyleUrls: {\n\t\tdefault: '../style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolButtonGroup implements Props {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-group-wc>\n\t\t\t\t\t<slot />\n\t\t\t\t</kol-button-group-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-button-group.entry.cjs.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,0iCAA0iC;;MCWrjC,cAAc;;;;EACnB,MAAM;IACZ,QACCA,QAACC,UAAI,QACJD,qCACCA,qBAAQ,CACa,CAChB,EACN;GACF;;;;;;;;","names":["h","Host"],"sources":["./src/components/button-group/style.css?tag=kol-button-group&mode=default&encapsulation=shadow","./src/components/button-group/shadow.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > kol-button-group-wc {\n\tdisplay: inline-flex;\n\tflex-wrap: wrap;\n\tgap: calc(2 * var(--kolibri-spacing));\n}\n","import { Component, h, Host, JSX } from '@stencil/core';\n\nimport { Props } from './component';\n\n@Component({\n\ttag: 'kol-button-group',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButtonGroup implements Props {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-group-wc>\n\t\t\t\t\t<slot />\n\t\t\t\t</kol-button-group-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),reuse=require("./reuse-28825ead.js");require("./validator-953ea58f.js");const defaultStyleCss="@windicss; *{box-sizing:border-box;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}kol-heading-wc{font-weight:700}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{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{border-width:0}",KolButtonLink=class{constructor(i){index.registerInstance(this,i),this.catchRef=i=>{this.ref=i,reuse.propergateFocus(this.host,this.ref)},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel="",this._ariaSelected=void 0,this._disabled=!1,this._icon=void 0,this._iconOnly=!1,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}render(){return index.h(index.Host,null,index.h("kol-button-wc",{ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icon:this._icon,_iconOnly:this._iconOnly,_id:this._id,_label:this._label,_on:this._on,_role:this._role,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},index.h("slot",{name:"expert",slot:"expert"})))}get host(){return index.getElement(this)}};KolButtonLink.style={default:defaultStyleCss},exports.kol_button_link=KolButtonLink;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),reuse=require("./reuse-b43997f3.js"),defaultStyleCss=":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-spacing:0.25rem}*{box-sizing:border-box;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}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}",KolButtonLink=class{constructor(i){index.registerInstance(this,i),this.catchRef=i=>{this.ref=i,reuse.propergateFocus(this.host,this.ref)},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel="",this._ariaSelected=void 0,this._disabled=!1,this._icon=void 0,this._iconOnly=!1,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}render(){return index.h(index.Host,null,index.h("kol-button-wc",{ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icon:this._icon,_iconOnly:this._iconOnly,_id:this._id,_label:this._label,_on:this._on,_role:this._role,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},index.h("slot",{name:"expert",slot:"expert"})))}get host(){return index.getElement(this)}};KolButtonLink.style={default:defaultStyleCss},exports.kol_button_link=KolButtonLink;
@@ -1 +1 @@
1
- {"file":"kol-button-link.entry.cjs.js","mappings":";;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,+dAA+d;;MCuB1e,aAAa;;;IAIR,aAAQ,GAAG,CAAC,GAA4B;MACxD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;MACfA,qBAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;;;;;sBA0DoE,EAAE;;qBAUlB,KAAK;;qBAUL,KAAK;;;;;;yBA8BhB,KAAK;iBAKL,QAAQ;;;EA/G5C,MAAM;IACZ,QACCC,QAACC,UAAI,QACJD,2BACC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAEnBA,kBAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAG,CACrB,CACV,EACN;GACF;;;;;;;;;","names":["propergateFocus","h","Host"],"sources":["./src/components/style.sass?tag=kol-button-link&mode=default&encapsulation=shadow","./src/components/button-link/component.tsx"],"sourcesContent":["@windicss\n\n*\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: 700\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\n\tcursor: pointer\n\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\tborder-width: 0\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport {\n\tAlternativButtonLinkRole,\n\tAriaCurrent,\n\tKoliBriButtonCallbacks,\n\tKoliBriButtonType,\n\tOptionalButtonLinkProps,\n\tRequiredButtonLinkProps,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { propergateFocus } from '../../utils/reuse';\nimport { Alignment } from '../../types/props/alignment';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: '../style.sass',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements Generic.Element.Members<RequiredButtonLinkProps, OptionalButtonLinkProps> {\n\t@Element() private readonly host?: HTMLKolButtonLinkElement;\n\tprivate ref?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaCurrent={this._ariaCurrent}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaLabel={this._ariaLabel}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_iconOnly={this._iconOnly}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role={this._role}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this._value}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\" />\n\t\t\t\t</kol-button-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man den Button auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, welche Elemente kontrolliert werden. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Gibt an, welchen aktuellen Auswahlstatus der Button hat. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrent;\n\n\t/**\n\t * Gibt an, ob durch den Button etwas aufgeklappt wurde. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop({ reflect: true }) public _ariaExpanded?: boolean;\n\n\t/**\n\t * Gibt einen beschreibenden Text für den Screenreader an. Damit die\n\t * Sprachsteuerung von interaktiven Elementen funktioniert, muss der\n\t * Aria-Label-Text mit dem Label-Text des Buttons beginnen.\n\t *\n\t * - https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string = '';\n\n\t/**\n\t * Gibt an, ob Element ausgewählt ist (role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop({ reflect: true }) public _ariaSelected?: boolean;\n\n\t/**\n\t * Gibt an, ob der Button deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. 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 die ID der Schaltfläche an. (Selection, Testing)\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt einen beschreibenden Text für das Text-Element an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: KoliBriButtonCallbacks<unknown>;\n\n\t/**\n\t * Gibt an, welche Role der Schalter hat.\n\t */\n\t@Prop() public _role?: AlternativButtonLinkRole;\n\n\t/**\n\t * Gibt an, welchen Tab-Index der Button hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob der Tooltip oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Alignment = 'top';\n\n\t/**\n\t * Gibt an, welche Typ der Button hat.\n\t */\n\t@Prop() public _type?: KoliBriButtonType = 'button';\n\n\t/**\n\t * Gibt einen Wert an, den der Schalter bei einem Klick zurückgibt.\n\t */\n\t@Prop() public _value?: Stringified<unknown>;\n}\n"],"version":3}
1
+ {"file":"kol-button-link.entry.cjs.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,w8BAAw8B;;MCuBn9B,aAAa;;;IAIR,aAAQ,GAAG,CAAC,GAA4B;MACxD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;MACfA,qBAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;;;;;sBA0DoE,EAAE;;qBAUlB,KAAK;;qBAUL,KAAK;;;;;;yBA8BhB,KAAK;iBAKL,QAAQ;;;EA/G5C,MAAM;IACZ,QACCC,QAACC,UAAI,QACJD,2BACC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAEnBA,kBAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAG,CACrB,CACV,EACN;GACF;;;;;;;;;","names":["propergateFocus","h","Host"],"sources":["./src/components/button-link/style.css?tag=kol-button-link&mode=default&encapsulation=shadow","./src/components/button-link/component.tsx"],"sourcesContent":["@import '../style.css';\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport {\n\tAlternativButtonLinkRole,\n\tAriaCurrent,\n\tKoliBriButtonCallbacks,\n\tKoliBriButtonType,\n\tOptionalButtonLinkProps,\n\tRequiredButtonLinkProps,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { propergateFocus } from '../../utils/reuse';\nimport { Alignment } from '../../types/props/alignment';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements Generic.Element.Members<RequiredButtonLinkProps, OptionalButtonLinkProps> {\n\t@Element() private readonly host?: HTMLKolButtonLinkElement;\n\tprivate ref?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaCurrent={this._ariaCurrent}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaLabel={this._ariaLabel}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_iconOnly={this._iconOnly}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role={this._role}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this._value}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\" />\n\t\t\t\t</kol-button-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man den Button auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, welche Elemente kontrolliert werden. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Gibt an, welchen aktuellen Auswahlstatus der Button hat. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrent;\n\n\t/**\n\t * Gibt an, ob durch den Button etwas aufgeklappt wurde. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop({ reflect: true }) public _ariaExpanded?: boolean;\n\n\t/**\n\t * Gibt einen beschreibenden Text für den Screenreader an. Damit die\n\t * Sprachsteuerung von interaktiven Elementen funktioniert, muss der\n\t * Aria-Label-Text mit dem Label-Text des Buttons beginnen.\n\t *\n\t * - https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string = '';\n\n\t/**\n\t * Gibt an, ob Element ausgewählt ist (role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop({ reflect: true }) public _ariaSelected?: boolean;\n\n\t/**\n\t * Gibt an, ob der Button deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. 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 die ID der Schaltfläche an. (Selection, Testing)\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt einen beschreibenden Text für das Text-Element an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: KoliBriButtonCallbacks<unknown>;\n\n\t/**\n\t * Gibt an, welche Role der Schalter hat.\n\t */\n\t@Prop() public _role?: AlternativButtonLinkRole;\n\n\t/**\n\t * Gibt an, welchen Tab-Index der Button hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob der Tooltip oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Alignment = 'top';\n\n\t/**\n\t * Gibt an, welche Typ der Button hat.\n\t */\n\t@Prop() public _type?: KoliBriButtonType = 'button';\n\n\t/**\n\t * Gibt einen Wert an, den der Schalter bei einem Klick zurückgibt.\n\t */\n\t@Prop() public _value?: Stringified<unknown>;\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),buttonLink=require("./button-link-a6efe03a.js"),a11y_tipps=require("./a11y.tipps-e1770acf.js"),dev_utils=require("./dev.utils-2353100d.js"),prop_validators=require("./prop.validators-e366929d.js"),reuse=require("./reuse-28825ead.js"),icon=require("./icon-4ba7c898.js"),label=require("./label-92997e6d.js"),tabIndex=require("./tab-index-7d4e8d14.js"),controller=require("./controller-29f3c454.js"),controller$1=require("./controller-ddebcf52.js");require("./index-9ee2c3ec.js"),require("./index.m-21aa1255.js"),require("./validator-953ea58f.js");const KolButtonWc=class{constructor(t){index.registerInstance(this,t),this.nonce=dev_utils.nonce(),this.catchRef=t=>{this.ref=t,reuse.propergateFocus(this.host,this.ref)},this.onClick=t=>{var a,i;"submit"===this.state._type?controller.propergateSubmitEventToForm({form:this.host,ref:this.ref}):"reset"===this.state._type?controller.propergateResetEventToForm({form:this.host,ref:this.ref}):"function"==typeof(null===(a=this.state._on)||void 0===a?void 0:a.onClick)?(prop_validators.setEventTargetAndStopPropagation(t,this.ref),null===(i=this.state._on)||void 0===i||i.onClick(t,this.state._value)):a11y_tipps.devHint("It was no button click callback configured!")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel="",this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._icon=void 0,this._iconAlign="left",this._iconOnly=!1,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0,this._variant="normal",this.state={_ariaLabel:"",_icon:{},_iconAlign:"left",_label:"",_on:{},_type:"button"}}render(){return index.h(index.Host,null,index.h("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":prop_validators.mapStringOrBoolean2String(this.state._ariaCurrent),"aria-expanded":prop_validators.mapBoolean2String(this.state._ariaExpanded),"aria-label":!1===this.state._iconOnly?this.state._ariaLabel||this.state._label:void 0,"aria-labelledby":!0===this.state._iconOnly?this.nonce:void 0,"aria-selected":prop_validators.mapStringOrBoolean2String(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._iconOnly},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),index.h("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._ariaLabel||this.state._label},index.h("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&index.h("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){prop_validators.watchString(this,"_accessKey",t)}validateAriaControls(t){prop_validators.watchString(this,"_ariaControls",t)}validateAriaCurrent(t){prop_validators.watchValidator(this,"_ariaControls",(t=>!0===t||"date"===t||"location"===t||"page"===t||"step"===t||"time"===t),new Set(["boolean","String {data, location, page, step, time}"]),t)}validateAriaExpanded(t){prop_validators.watchBoolean(this,"_ariaExpanded",t)}validateAriaLabel(t){label.validateAriaLabel(this,t)}validateAriaSelected(t){prop_validators.watchBoolean(this,"_ariaSelected",t)}validateCustomClass(t){prop_validators.watchString(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){prop_validators.watchBoolean(this,"_disabled",t),!0===t&&a11y_tipps.a11yHintDisabled()}validateIcon(t){icon.validateIcon(this,t)}validateIconAlign(t){icon.watchIconAlign(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){prop_validators.watchString(this,"_id",t)}validateLabel(t){label.validateLabel(this,t)}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRole(t){prop_validators.watchString(this,"_role",t)}validateTabIndex(t){tabIndex.validateTabIndex(this,t)}validateTooltipAlign(t){buttonLink.watchTooltipAlignment(this,"_tooltipAlign",t)}validateType(t){controller$1.watchButtonType(this,"_type",t)}validateValue(t){prop_validators.setState(this,"_value",t)}validateVariant(t){controller$1.watchButtonVariant(this,"_variant",t)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaLabel(this._ariaLabel),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateIconOnly(this._iconOnly),this.validateId(this._id),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return index.getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},removeNode=t=>{t instanceof Node&&setTimeout((()=>{var a,i;null===(a=t.parentElement)||void 0===a||a.removeChild(t),null===(i=t.parentNode)||void 0===i||i.removeChild(t)}))},KolSpanWc=class{constructor(t){index.registerInstance(this,t),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:""}}render(){return index.h(index.Host,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&index.h("kol-icon",{class:{"icon top":!0},style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),index.h("span",null,this.state._icon.left&&index.h("kol-icon",{class:{"icon left":!0},style:this.state._icon.left.style,_ariaLabel:"",_icon:this.state._icon.left.icon}),!0!==this.state._iconOnly&&this.state._label.length>0?index.h("span",null,this.state._label):"",index.h("span",{ref:this.state._label.length>0||!0===this.state._iconOnly?removeNode:void 0},index.h("slot",{name:"expert"})),this.state._icon.right&&index.h("kol-icon",{class:{"icon right":!0},style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&index.h("kol-icon",{class:{"icon bottom":!0},style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){icon.validateIcon(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t)}validateLabel(t){label.validateLabel(this,t)}componentWillLoad(){this.validateIcon(this._icon),this.validateIconOnly(this._iconOnly),this.validateLabel(this._label)}static get watchers(){return{_icon:["validateIcon"],_iconOnly:["validateIconOnly"],_label:["validateLabel"]}}};exports.kol_button_wc=KolButtonWc,exports.kol_span_wc=KolSpanWc;
4
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-57f4a280.js"),buttonLink=require("./button-link-8476ef97.js"),a11y_tipps=require("./a11y.tipps-bd1e1e68.js"),dev_utils=require("./dev.utils-b6dd5206.js"),prop_validators=require("./prop.validators-125ca9b8.js"),reuse=require("./reuse-b43997f3.js"),icon=require("./icon-4f733b4e.js"),label=require("./label-b9c8787b.js"),tabIndex=require("./tab-index-7d5103dc.js"),controller=require("./controller-3b1b8088.js"),controller$1=require("./controller-891952ee.js");require("./index-66aa0f41.js");const KolButtonWc=class{constructor(t){index.registerInstance(this,t),this.nonce=dev_utils.nonce(),this.catchRef=t=>{this.ref=t,reuse.propergateFocus(this.host,this.ref)},this.onClick=t=>{var i,a;"submit"===this.state._type?controller.propergateSubmitEventToForm({form:this.host,ref:this.ref}):"reset"===this.state._type?controller.propergateResetEventToForm({form:this.host,ref:this.ref}):"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onClick)?(prop_validators.setEventTargetAndStopPropagation(t,this.ref),null===(a=this.state._on)||void 0===a||a.onClick(t,this.state._value)):a11y_tipps.devHint("It was no button click callback configured!")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel="",this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._icon=void 0,this._iconAlign="left",this._iconOnly=!1,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0,this._variant="normal",this.state={_ariaLabel:"",_icon:{},_iconAlign:"left",_label:"",_on:{},_type:"button"}}render(){return index.h(index.Host,null,index.h("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":prop_validators.mapStringOrBoolean2String(this.state._ariaCurrent),"aria-expanded":prop_validators.mapBoolean2String(this.state._ariaExpanded),"aria-label":!1===this.state._iconOnly?this.state._ariaLabel||this.state._label:void 0,"aria-labelledby":!0===this.state._iconOnly?this.nonce:void 0,"aria-selected":prop_validators.mapStringOrBoolean2String(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._iconOnly},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),index.h("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._ariaLabel||this.state._label},index.h("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&index.h("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){prop_validators.watchString(this,"_accessKey",t)}validateAriaControls(t){prop_validators.watchString(this,"_ariaControls",t)}validateAriaCurrent(t){prop_validators.watchValidator(this,"_ariaControls",(t=>!0===t||"date"===t||"location"===t||"page"===t||"step"===t||"time"===t),new Set(["boolean","String {data, location, page, step, time}"]),t)}validateAriaExpanded(t){prop_validators.watchBoolean(this,"_ariaExpanded",t)}validateAriaLabel(t){label.validateAriaLabel(this,t)}validateAriaSelected(t){prop_validators.watchBoolean(this,"_ariaSelected",t)}validateCustomClass(t){prop_validators.watchString(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){prop_validators.watchBoolean(this,"_disabled",t),!0===t&&a11y_tipps.a11yHintDisabled()}validateIcon(t){icon.validateIcon(this,t)}validateIconAlign(t){icon.watchIconAlign(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){prop_validators.watchString(this,"_id",t)}validateLabel(t){label.validateLabel(this,t)}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRole(t){prop_validators.watchString(this,"_role",t)}validateTabIndex(t){tabIndex.validateTabIndex(this,t)}validateTooltipAlign(t){buttonLink.watchTooltipAlignment(this,"_tooltipAlign",t)}validateType(t){controller$1.watchButtonType(this,"_type",t)}validateValue(t){prop_validators.setState(this,"_value",t)}validateVariant(t){controller$1.watchButtonVariant(this,"_variant",t)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaLabel(this._ariaLabel),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateIconOnly(this._iconOnly),this.validateId(this._id),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return index.getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},removeNode=t=>{t instanceof Node&&setTimeout((()=>{var i,a;null===(i=t.parentElement)||void 0===i||i.removeChild(t),null===(a=t.parentNode)||void 0===a||a.removeChild(t)}))},KolSpanWc=class{constructor(t){index.registerInstance(this,t),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:""}}render(){return index.h(index.Host,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&index.h("kol-icon",{class:{"icon top":!0},style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),index.h("span",null,this.state._icon.left&&index.h("kol-icon",{class:{"icon left":!0},style:this.state._icon.left.style,_ariaLabel:"",_icon:this.state._icon.left.icon}),!0!==this.state._iconOnly&&this.state._label.length>0?index.h("span",null,this.state._label):"",index.h("span",{ref:this.state._label.length>0||!0===this.state._iconOnly?removeNode:void 0},index.h("slot",{name:"expert"})),this.state._icon.right&&index.h("kol-icon",{class:{"icon right":!0},style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&index.h("kol-icon",{class:{"icon bottom":!0},style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){icon.validateIcon(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t)}validateLabel(t){label.validateLabel(this,t)}componentWillLoad(){this.validateIcon(this._icon),this.validateIconOnly(this._iconOnly),this.validateLabel(this._label)}static get watchers(){return{_icon:["validateIcon"],_iconOnly:["validateIconOnly"],_label:["validateLabel"]}}};exports.kol_button_wc=KolButtonWc,exports.kol_span_wc=KolSpanWc;