@public-ui/components 1.4.2-rc.1 → 1.4.2-rc.3

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 (526) hide show
  1. package/cheat-sheet.html +6 -6
  2. package/custom-elements.json +1 -1
  3. package/dist/cjs/{a11y.tipps-2d865b06.js → a11y.tipps-4af0092d.js} +1 -1
  4. package/dist/cjs/{a11y.tipps-2d865b06.js.map → a11y.tipps-4af0092d.js.map} +1 -1
  5. package/dist/cjs/{app-globals-af33015e.js → app-globals-c4419a36.js} +1 -1
  6. package/dist/cjs/{app-globals-af33015e.js.map → app-globals-c4419a36.js.map} +1 -1
  7. package/dist/cjs/{button-link-229f6162.js → button-link-06ab7d7c.js} +1 -1
  8. package/dist/cjs/{button-link-229f6162.js.map → button-link-06ab7d7c.js.map} +1 -1
  9. package/dist/cjs/{controller-e18e6217.js → controller-1c9293c6.js} +1 -1
  10. package/dist/cjs/{controller-e18e6217.js.map → controller-1c9293c6.js.map} +1 -1
  11. package/dist/cjs/{controller-38b9d7cd.js → controller-2176883f.js} +1 -1
  12. package/dist/cjs/{controller-38b9d7cd.js.map → controller-2176883f.js.map} +1 -1
  13. package/dist/cjs/{controller-8f89aa09.js → controller-7254416e.js} +1 -1
  14. package/dist/cjs/{controller-8f89aa09.js.map → controller-7254416e.js.map} +1 -1
  15. package/dist/cjs/{controller-5d32ca74.js → controller-af70d3a1.js} +1 -1
  16. package/dist/cjs/{controller-5d32ca74.js.map → controller-af70d3a1.js.map} +1 -1
  17. package/dist/cjs/{controller-3250fec0.js → controller-c831bc96.js} +1 -1
  18. package/dist/cjs/{controller-3250fec0.js.map → controller-c831bc96.js.map} +1 -1
  19. package/dist/cjs/{controller-8965ad37.js → controller-f7dd8dc0.js} +1 -1
  20. package/dist/cjs/{controller-8965ad37.js.map → controller-f7dd8dc0.js.map} +1 -1
  21. package/dist/cjs/{controller-icon-33aa7391.js → controller-icon-7980fc53.js} +1 -1
  22. package/dist/cjs/{controller-icon-33aa7391.js.map → controller-icon-7980fc53.js.map} +1 -1
  23. package/dist/cjs/{dev.utils-51eb4546.js → dev.utils-7123fb34.js} +1 -1
  24. package/dist/cjs/{dev.utils-51eb4546.js.map → dev.utils-7123fb34.js.map} +1 -1
  25. package/dist/cjs/{devtools-3fcb1cf8.js → devtools-910a0fd1.js} +1 -1
  26. package/dist/cjs/{devtools-3fcb1cf8.js.map → devtools-910a0fd1.js.map} +1 -1
  27. package/dist/cjs/{i18n-3044c820.js → i18n-ca8f5c94.js} +1 -1
  28. package/dist/cjs/{i18n-3044c820.js.map → i18n-ca8f5c94.js.map} +1 -1
  29. package/dist/cjs/{icon-a37e4664.js → icon-d0e921c9.js} +1 -1
  30. package/dist/cjs/{icon-a37e4664.js.map → icon-d0e921c9.js.map} +1 -1
  31. package/dist/cjs/index-29c5d3c6.js.map +1 -1
  32. package/dist/cjs/index.cjs.js +1 -1
  33. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  34. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  35. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  36. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  37. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  38. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  39. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  41. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  43. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  45. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  47. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  50. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  52. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-heading-wc_2.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  115. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kolibri.cjs.js +1 -1
  126. package/dist/cjs/kolibri.cjs.js.map +1 -1
  127. package/dist/cjs/{label-f5fcff50.js → label-3818e25c.js} +1 -1
  128. package/dist/cjs/{label-f5fcff50.js.map → label-3818e25c.js.map} +1 -1
  129. package/dist/cjs/loader.cjs.js +1 -1
  130. package/dist/cjs/loader.cjs.js.map +1 -1
  131. package/dist/cjs/{prop.validators-effc9f22.js → prop.validators-7154e3f9.js} +1 -1
  132. package/dist/cjs/{prop.validators-effc9f22.js.map → prop.validators-7154e3f9.js.map} +1 -1
  133. package/dist/cjs/reuse-bbd0b4e7.js +4 -0
  134. package/dist/cjs/reuse-bbd0b4e7.js.map +1 -0
  135. package/dist/cjs/{tab-index-fc3e1bd4.js → tab-index-0ff2fc1d.js} +1 -1
  136. package/dist/cjs/{tab-index-fc3e1bd4.js.map → tab-index-0ff2fc1d.js.map} +1 -1
  137. package/dist/cjs/{validation-80e152fa.js → validation-a59108e9.js} +1 -1
  138. package/dist/cjs/{validation-80e152fa.js.map → validation-a59108e9.js.map} +1 -1
  139. package/dist/cjs/validation-ccaf8393.js +4 -0
  140. package/dist/cjs/{validation-606d723e.js.map → validation-ccaf8393.js.map} +1 -1
  141. package/dist/components/component.js +1 -1
  142. package/dist/components/component.js.map +1 -1
  143. package/dist/components/component10.js +1 -1
  144. package/dist/components/component10.js.map +1 -1
  145. package/dist/components/component11.js +1 -1
  146. package/dist/components/component11.js.map +1 -1
  147. package/dist/components/component12.js +1 -1
  148. package/dist/components/component12.js.map +1 -1
  149. package/dist/components/component13.js +1 -1
  150. package/dist/components/component13.js.map +1 -1
  151. package/dist/components/component2.js +1 -1
  152. package/dist/components/component2.js.map +1 -1
  153. package/dist/components/component3.js +1 -1
  154. package/dist/components/component5.js +1 -1
  155. package/dist/components/component5.js.map +1 -1
  156. package/dist/components/component6.js +1 -1
  157. package/dist/components/component8.js +1 -1
  158. package/dist/components/component8.js.map +1 -1
  159. package/dist/components/component9.js +1 -1
  160. package/dist/components/component9.js.map +1 -1
  161. package/dist/components/controller-icon.js +1 -1
  162. package/dist/components/controller.js +1 -1
  163. package/dist/components/controller2.js +1 -1
  164. package/dist/components/controller3.js +1 -1
  165. package/dist/components/controller4.js +1 -1
  166. package/dist/components/devtools.js +1 -1
  167. package/dist/components/kol-abbr.js +1 -1
  168. package/dist/components/kol-abbr.js.map +1 -1
  169. package/dist/components/kol-accordion.js +1 -1
  170. package/dist/components/kol-accordion.js.map +1 -1
  171. package/dist/components/kol-breadcrumb.js +1 -1
  172. package/dist/components/kol-breadcrumb.js.map +1 -1
  173. package/dist/components/kol-button-group.js +1 -1
  174. package/dist/components/kol-button-group.js.map +1 -1
  175. package/dist/components/kol-button-link.js +1 -1
  176. package/dist/components/kol-button-link.js.map +1 -1
  177. package/dist/components/kol-card.js +1 -1
  178. package/dist/components/kol-card.js.map +1 -1
  179. package/dist/components/kol-details.js +1 -1
  180. package/dist/components/kol-details.js.map +1 -1
  181. package/dist/components/kol-form.js +1 -1
  182. package/dist/components/kol-heading.js +1 -1
  183. package/dist/components/kol-heading.js.map +1 -1
  184. package/dist/components/kol-input-adapter-leanup.js +1 -1
  185. package/dist/components/kol-input-checkbox.js +1 -1
  186. package/dist/components/kol-input-checkbox.js.map +1 -1
  187. package/dist/components/kol-input-color.js +1 -1
  188. package/dist/components/kol-input-color.js.map +1 -1
  189. package/dist/components/kol-input-date.js +1 -1
  190. package/dist/components/kol-input-date.js.map +1 -1
  191. package/dist/components/kol-input-email.js +1 -1
  192. package/dist/components/kol-input-email.js.map +1 -1
  193. package/dist/components/kol-input-file.js +1 -1
  194. package/dist/components/kol-input-file.js.map +1 -1
  195. package/dist/components/kol-input-password.js +1 -1
  196. package/dist/components/kol-input-password.js.map +1 -1
  197. package/dist/components/kol-input-radio-group.js +1 -1
  198. package/dist/components/kol-input-range.js +1 -1
  199. package/dist/components/kol-input-range.js.map +1 -1
  200. package/dist/components/kol-input-text.js +1 -1
  201. package/dist/components/kol-input-text.js.map +1 -1
  202. package/dist/components/kol-kolibri.js +1 -1
  203. package/dist/components/kol-kolibri.js.map +1 -1
  204. package/dist/components/kol-link-button.js +1 -1
  205. package/dist/components/kol-link-button.js.map +1 -1
  206. package/dist/components/kol-link-group.js +1 -1
  207. package/dist/components/kol-link-group.js.map +1 -1
  208. package/dist/components/kol-logo.js +1 -1
  209. package/dist/components/kol-logo.js.map +1 -1
  210. package/dist/components/kol-modal.js +1 -1
  211. package/dist/components/kol-modal.js.map +1 -1
  212. package/dist/components/kol-nav.js +1 -1
  213. package/dist/components/kol-nav.js.map +1 -1
  214. package/dist/components/kol-progress.js +1 -1
  215. package/dist/components/kol-progress.js.map +1 -1
  216. package/dist/components/kol-skip-nav.js +1 -1
  217. package/dist/components/kol-skip-nav.js.map +1 -1
  218. package/dist/components/kol-span.js +1 -1
  219. package/dist/components/kol-span.js.map +1 -1
  220. package/dist/components/kol-spin.js +1 -1
  221. package/dist/components/kol-spin.js.map +1 -1
  222. package/dist/components/kol-table.js +1 -1
  223. package/dist/components/kol-table.js.map +1 -1
  224. package/dist/components/kol-tabs.js +1 -1
  225. package/dist/components/kol-tabs.js.map +1 -1
  226. package/dist/components/kol-textarea.js +1 -1
  227. package/dist/components/kol-textarea.js.map +1 -1
  228. package/dist/components/kol-toast.js +1 -1
  229. package/dist/components/kol-toast.js.map +1 -1
  230. package/dist/components/kol-version.js +1 -1
  231. package/dist/components/kol-version.js.map +1 -1
  232. package/dist/components/prop.validators.js +1 -1
  233. package/dist/components/prop.validators.js.map +1 -1
  234. package/dist/components/shadow.js +1 -1
  235. package/dist/components/shadow.js.map +1 -1
  236. package/dist/components/shadow2.js +1 -1
  237. package/dist/components/shadow2.js.map +1 -1
  238. package/dist/components/validation.js +1 -1
  239. package/dist/esm/{a11y.tipps-a876ebb7.js → a11y.tipps-5cdbd5e2.js} +1 -1
  240. package/dist/esm/{a11y.tipps-a876ebb7.js.map → a11y.tipps-5cdbd5e2.js.map} +1 -1
  241. package/dist/esm/{app-globals-c03fa275.js → app-globals-addf78f2.js} +1 -1
  242. package/dist/esm/{app-globals-c03fa275.js.map → app-globals-addf78f2.js.map} +1 -1
  243. package/dist/esm/{button-link-c6783bbf.js → button-link-54acc67b.js} +1 -1
  244. package/dist/esm/{button-link-c6783bbf.js.map → button-link-54acc67b.js.map} +1 -1
  245. package/dist/esm/{controller-651f292f.js → controller-08e3801e.js} +1 -1
  246. package/dist/esm/{controller-651f292f.js.map → controller-08e3801e.js.map} +1 -1
  247. package/dist/esm/{controller-b4263f6b.js → controller-31f6d372.js} +1 -1
  248. package/dist/esm/{controller-b4263f6b.js.map → controller-31f6d372.js.map} +1 -1
  249. package/dist/esm/{controller-ac36853c.js → controller-6aa9b1d6.js} +1 -1
  250. package/dist/esm/{controller-ac36853c.js.map → controller-6aa9b1d6.js.map} +1 -1
  251. package/dist/esm/{controller-37aebfec.js → controller-9fc2799d.js} +1 -1
  252. package/dist/esm/{controller-37aebfec.js.map → controller-9fc2799d.js.map} +1 -1
  253. package/dist/esm/{controller-a23b4b6b.js → controller-af8a55fa.js} +1 -1
  254. package/dist/esm/{controller-a23b4b6b.js.map → controller-af8a55fa.js.map} +1 -1
  255. package/dist/esm/{controller-ae63fa3a.js → controller-d46544b6.js} +1 -1
  256. package/dist/esm/{controller-ae63fa3a.js.map → controller-d46544b6.js.map} +1 -1
  257. package/dist/esm/{controller-icon-1f62443f.js → controller-icon-d1bf5df0.js} +1 -1
  258. package/dist/esm/{controller-icon-1f62443f.js.map → controller-icon-d1bf5df0.js.map} +1 -1
  259. package/dist/esm/{dev.utils-ec1c1b88.js → dev.utils-05f4e663.js} +1 -1
  260. package/dist/esm/{dev.utils-ec1c1b88.js.map → dev.utils-05f4e663.js.map} +1 -1
  261. package/dist/esm/{devtools-f9831038.js → devtools-a2b3092f.js} +1 -1
  262. package/dist/esm/{devtools-f9831038.js.map → devtools-a2b3092f.js.map} +1 -1
  263. package/dist/esm/{i18n-1d6d91ab.js → i18n-1305db0e.js} +1 -1
  264. package/dist/esm/{i18n-1d6d91ab.js.map → i18n-1305db0e.js.map} +1 -1
  265. package/dist/esm/{icon-bad239de.js → icon-f44df3c5.js} +1 -1
  266. package/dist/esm/{icon-bad239de.js.map → icon-f44df3c5.js.map} +1 -1
  267. package/dist/esm/index-50adf9a0.js.map +1 -1
  268. package/dist/esm/index.js +1 -1
  269. package/dist/esm/kol-abbr.entry.js +1 -1
  270. package/dist/esm/kol-abbr.entry.js.map +1 -1
  271. package/dist/esm/kol-accordion.entry.js +1 -1
  272. package/dist/esm/kol-accordion.entry.js.map +1 -1
  273. package/dist/esm/kol-alert.entry.js +1 -1
  274. package/dist/esm/kol-alert.entry.js.map +1 -1
  275. package/dist/esm/kol-badge.entry.js +1 -1
  276. package/dist/esm/kol-badge.entry.js.map +1 -1
  277. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  278. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  279. package/dist/esm/kol-button-group.entry.js +1 -1
  280. package/dist/esm/kol-button-group.entry.js.map +1 -1
  281. package/dist/esm/kol-button-link.entry.js +1 -1
  282. package/dist/esm/kol-button-link.entry.js.map +1 -1
  283. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  284. package/dist/esm/kol-button.entry.js +1 -1
  285. package/dist/esm/kol-button.entry.js.map +1 -1
  286. package/dist/esm/kol-card.entry.js +1 -1
  287. package/dist/esm/kol-card.entry.js.map +1 -1
  288. package/dist/esm/kol-details.entry.js +1 -1
  289. package/dist/esm/kol-details.entry.js.map +1 -1
  290. package/dist/esm/kol-form.entry.js +1 -1
  291. package/dist/esm/kol-heading-wc_2.entry.js +1 -1
  292. package/dist/esm/kol-heading-wc_2.entry.js.map +1 -1
  293. package/dist/esm/kol-heading.entry.js +1 -1
  294. package/dist/esm/kol-heading.entry.js.map +1 -1
  295. package/dist/esm/kol-icon.entry.js +1 -1
  296. package/dist/esm/kol-icon.entry.js.map +1 -1
  297. package/dist/esm/kol-indented-text.entry.js +1 -1
  298. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  299. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  300. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  301. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  302. package/dist/esm/kol-input-color.entry.js +1 -1
  303. package/dist/esm/kol-input-color.entry.js.map +1 -1
  304. package/dist/esm/kol-input-date.entry.js +1 -1
  305. package/dist/esm/kol-input-date.entry.js.map +1 -1
  306. package/dist/esm/kol-input-email.entry.js +1 -1
  307. package/dist/esm/kol-input-email.entry.js.map +1 -1
  308. package/dist/esm/kol-input-file.entry.js +1 -1
  309. package/dist/esm/kol-input-file.entry.js.map +1 -1
  310. package/dist/esm/kol-input-number.entry.js +1 -1
  311. package/dist/esm/kol-input-number.entry.js.map +1 -1
  312. package/dist/esm/kol-input-password.entry.js +1 -1
  313. package/dist/esm/kol-input-password.entry.js.map +1 -1
  314. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  315. package/dist/esm/kol-input-radio.entry.js +1 -1
  316. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  317. package/dist/esm/kol-input-range.entry.js +1 -1
  318. package/dist/esm/kol-input-range.entry.js.map +1 -1
  319. package/dist/esm/kol-input-text.entry.js +1 -1
  320. package/dist/esm/kol-input-text.entry.js.map +1 -1
  321. package/dist/esm/kol-kolibri.entry.js +1 -1
  322. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  323. package/dist/esm/kol-link-button.entry.js +1 -1
  324. package/dist/esm/kol-link-button.entry.js.map +1 -1
  325. package/dist/esm/kol-link-group.entry.js +1 -1
  326. package/dist/esm/kol-link-group.entry.js.map +1 -1
  327. package/dist/esm/kol-link-wc.entry.js +1 -1
  328. package/dist/esm/kol-link.entry.js +1 -1
  329. package/dist/esm/kol-link.entry.js.map +1 -1
  330. package/dist/esm/kol-logo.entry.js +1 -1
  331. package/dist/esm/kol-logo.entry.js.map +1 -1
  332. package/dist/esm/kol-modal.entry.js +1 -1
  333. package/dist/esm/kol-modal.entry.js.map +1 -1
  334. package/dist/esm/kol-nav.entry.js +1 -1
  335. package/dist/esm/kol-nav.entry.js.map +1 -1
  336. package/dist/esm/kol-pagination.entry.js +1 -1
  337. package/dist/esm/kol-pagination.entry.js.map +1 -1
  338. package/dist/esm/kol-progress.entry.js +1 -1
  339. package/dist/esm/kol-progress.entry.js.map +1 -1
  340. package/dist/esm/kol-select.entry.js +1 -1
  341. package/dist/esm/kol-select.entry.js.map +1 -1
  342. package/dist/esm/kol-skip-nav.entry.js +1 -1
  343. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  344. package/dist/esm/kol-span.entry.js +1 -1
  345. package/dist/esm/kol-span.entry.js.map +1 -1
  346. package/dist/esm/kol-spin.entry.js +1 -1
  347. package/dist/esm/kol-spin.entry.js.map +1 -1
  348. package/dist/esm/kol-symbol.entry.js +1 -1
  349. package/dist/esm/kol-table.entry.js +1 -1
  350. package/dist/esm/kol-table.entry.js.map +1 -1
  351. package/dist/esm/kol-tabs.entry.js +1 -1
  352. package/dist/esm/kol-tabs.entry.js.map +1 -1
  353. package/dist/esm/kol-textarea.entry.js +1 -1
  354. package/dist/esm/kol-textarea.entry.js.map +1 -1
  355. package/dist/esm/kol-toast.entry.js +1 -1
  356. package/dist/esm/kol-toast.entry.js.map +1 -1
  357. package/dist/esm/kol-tooltip.entry.js +1 -1
  358. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  359. package/dist/esm/kol-version.entry.js +1 -1
  360. package/dist/esm/kol-version.entry.js.map +1 -1
  361. package/dist/esm/kolibri.js +1 -1
  362. package/dist/esm/kolibri.js.map +1 -1
  363. package/dist/esm/{label-ed7a7276.js → label-d850cbb4.js} +1 -1
  364. package/dist/esm/{label-ed7a7276.js.map → label-d850cbb4.js.map} +1 -1
  365. package/dist/esm/loader.js +1 -1
  366. package/dist/esm/loader.js.map +1 -1
  367. package/dist/esm/{prop.validators-dd337216.js → prop.validators-15724e89.js} +1 -1
  368. package/dist/esm/{prop.validators-dd337216.js.map → prop.validators-15724e89.js.map} +1 -1
  369. package/dist/esm/reuse-56bb5a4b.js +4 -0
  370. package/dist/esm/reuse-56bb5a4b.js.map +1 -0
  371. package/dist/esm/{tab-index-0a44a354.js → tab-index-2ca912cf.js} +1 -1
  372. package/dist/esm/{tab-index-0a44a354.js.map → tab-index-2ca912cf.js.map} +1 -1
  373. package/dist/esm/validation-8149b359.js +4 -0
  374. package/dist/esm/{validation-68f4e65e.js.map → validation-8149b359.js.map} +1 -1
  375. package/dist/esm/{validation-1165b64b.js → validation-af1d04b2.js} +1 -1
  376. package/dist/esm/{validation-1165b64b.js.map → validation-af1d04b2.js.map} +1 -1
  377. package/dist/kolibri/{a11y.tipps-a876ebb7.js → a11y.tipps-5cdbd5e2.js} +1 -1
  378. package/dist/kolibri/app-globals-addf78f2.js +4 -0
  379. package/dist/kolibri/{button-link-c6783bbf.js → button-link-54acc67b.js} +1 -1
  380. package/dist/kolibri/{controller-651f292f.js → controller-08e3801e.js} +1 -1
  381. package/dist/kolibri/{controller-b4263f6b.js → controller-31f6d372.js} +1 -1
  382. package/dist/kolibri/{controller-ac36853c.js → controller-6aa9b1d6.js} +1 -1
  383. package/dist/kolibri/{controller-37aebfec.js → controller-9fc2799d.js} +1 -1
  384. package/dist/kolibri/{controller-a23b4b6b.js → controller-af8a55fa.js} +1 -1
  385. package/dist/kolibri/controller-d46544b6.js +4 -0
  386. package/dist/kolibri/{controller-icon-1f62443f.js → controller-icon-d1bf5df0.js} +1 -1
  387. package/dist/kolibri/{dev.utils-ec1c1b88.js → dev.utils-05f4e663.js} +1 -1
  388. package/dist/kolibri/{devtools-f9831038.js → devtools-a2b3092f.js} +1 -1
  389. package/dist/kolibri/{i18n-1d6d91ab.js → i18n-1305db0e.js} +1 -1
  390. package/dist/kolibri/{i18n-1d6d91ab.js.map → i18n-1305db0e.js.map} +1 -1
  391. package/dist/kolibri/{icon-bad239de.js → icon-f44df3c5.js} +1 -1
  392. package/dist/kolibri/index-50adf9a0.js.map +1 -1
  393. package/dist/kolibri/index-599f5430.js.map +1 -1
  394. package/dist/kolibri/index.esm.js +1 -1
  395. package/dist/kolibri/kol-abbr.entry.js +1 -1
  396. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  397. package/dist/kolibri/kol-accordion.entry.js +1 -1
  398. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  399. package/dist/kolibri/kol-alert.entry.js +1 -1
  400. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  401. package/dist/kolibri/kol-badge.entry.js +1 -1
  402. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  403. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  404. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  405. package/dist/kolibri/kol-button-group.entry.js +1 -1
  406. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  407. package/dist/kolibri/kol-button-link.entry.js +1 -1
  408. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  409. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  410. package/dist/kolibri/kol-button.entry.js +1 -1
  411. package/dist/kolibri/kol-button.entry.js.map +1 -1
  412. package/dist/kolibri/kol-card.entry.js +1 -1
  413. package/dist/kolibri/kol-card.entry.js.map +1 -1
  414. package/dist/kolibri/kol-details.entry.js +1 -1
  415. package/dist/kolibri/kol-details.entry.js.map +1 -1
  416. package/dist/kolibri/kol-form.entry.js +1 -1
  417. package/dist/kolibri/kol-heading-wc_2.entry.js +1 -1
  418. package/dist/kolibri/kol-heading-wc_2.entry.js.map +1 -1
  419. package/dist/kolibri/kol-heading.entry.js +1 -1
  420. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  421. package/dist/kolibri/kol-icon.entry.js +1 -1
  422. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  423. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  424. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  425. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  426. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  427. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  428. package/dist/kolibri/kol-input-color.entry.js +1 -1
  429. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  430. package/dist/kolibri/kol-input-date.entry.js +1 -1
  431. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  432. package/dist/kolibri/kol-input-email.entry.js +1 -1
  433. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  434. package/dist/kolibri/kol-input-file.entry.js +1 -1
  435. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  436. package/dist/kolibri/kol-input-number.entry.js +1 -1
  437. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  438. package/dist/kolibri/kol-input-password.entry.js +1 -1
  439. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  440. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  441. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  442. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  443. package/dist/kolibri/kol-input-range.entry.js +1 -1
  444. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  445. package/dist/kolibri/kol-input-text.entry.js +1 -1
  446. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  447. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  448. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  449. package/dist/kolibri/kol-link-button.entry.js +1 -1
  450. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  451. package/dist/kolibri/kol-link-group.entry.js +1 -1
  452. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  453. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  454. package/dist/kolibri/kol-link.entry.js +1 -1
  455. package/dist/kolibri/kol-link.entry.js.map +1 -1
  456. package/dist/kolibri/kol-logo.entry.js +1 -1
  457. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  458. package/dist/kolibri/kol-modal.entry.js +1 -1
  459. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  460. package/dist/kolibri/kol-nav.entry.js +1 -1
  461. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  462. package/dist/kolibri/kol-pagination.entry.js +1 -1
  463. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  464. package/dist/kolibri/kol-progress.entry.js +1 -1
  465. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  466. package/dist/kolibri/kol-select.entry.js +1 -1
  467. package/dist/kolibri/kol-select.entry.js.map +1 -1
  468. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  469. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  470. package/dist/kolibri/kol-span.entry.js +1 -1
  471. package/dist/kolibri/kol-span.entry.js.map +1 -1
  472. package/dist/kolibri/kol-spin.entry.js +1 -1
  473. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  474. package/dist/kolibri/kol-symbol.entry.js +1 -1
  475. package/dist/kolibri/kol-table.entry.js +1 -1
  476. package/dist/kolibri/kol-table.entry.js.map +1 -1
  477. package/dist/kolibri/kol-tabs.entry.js +1 -1
  478. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  479. package/dist/kolibri/kol-textarea.entry.js +1 -1
  480. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  481. package/dist/kolibri/kol-toast.entry.js +1 -1
  482. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  483. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  484. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  485. package/dist/kolibri/kol-version.entry.js +1 -1
  486. package/dist/kolibri/kol-version.entry.js.map +1 -1
  487. package/dist/kolibri/kolibri.esm.js +1 -1
  488. package/dist/kolibri/kolibri.esm.js.map +1 -1
  489. package/dist/kolibri/{label-ed7a7276.js → label-d850cbb4.js} +1 -1
  490. package/dist/kolibri/{prop.validators-dd337216.js → prop.validators-15724e89.js} +1 -1
  491. package/dist/kolibri/reuse-56bb5a4b.js +4 -0
  492. package/dist/kolibri/reuse-56bb5a4b.js.map +1 -0
  493. package/dist/kolibri/{tab-index-0a44a354.js → tab-index-2ca912cf.js} +1 -1
  494. package/dist/kolibri/validation-8149b359.js +4 -0
  495. package/dist/kolibri/{validation-1165b64b.js → validation-af1d04b2.js} +1 -1
  496. package/jest-test-results.json +1 -1
  497. package/package.json +1 -1
  498. package/dist/cjs/reuse-2909f881.js +0 -4
  499. package/dist/cjs/reuse-2909f881.js.map +0 -1
  500. package/dist/cjs/validation-606d723e.js +0 -4
  501. package/dist/esm/reuse-9dd1192b.js +0 -4
  502. package/dist/esm/reuse-9dd1192b.js.map +0 -1
  503. package/dist/esm/validation-68f4e65e.js +0 -4
  504. package/dist/kolibri/app-globals-c03fa275.js +0 -4
  505. package/dist/kolibri/controller-ae63fa3a.js +0 -4
  506. package/dist/kolibri/reuse-9dd1192b.js +0 -4
  507. package/dist/kolibri/reuse-9dd1192b.js.map +0 -1
  508. package/dist/kolibri/validation-68f4e65e.js +0 -4
  509. /package/dist/kolibri/{a11y.tipps-a876ebb7.js.map → a11y.tipps-5cdbd5e2.js.map} +0 -0
  510. /package/dist/kolibri/{app-globals-c03fa275.js.map → app-globals-addf78f2.js.map} +0 -0
  511. /package/dist/kolibri/{button-link-c6783bbf.js.map → button-link-54acc67b.js.map} +0 -0
  512. /package/dist/kolibri/{controller-651f292f.js.map → controller-08e3801e.js.map} +0 -0
  513. /package/dist/kolibri/{controller-b4263f6b.js.map → controller-31f6d372.js.map} +0 -0
  514. /package/dist/kolibri/{controller-ac36853c.js.map → controller-6aa9b1d6.js.map} +0 -0
  515. /package/dist/kolibri/{controller-37aebfec.js.map → controller-9fc2799d.js.map} +0 -0
  516. /package/dist/kolibri/{controller-a23b4b6b.js.map → controller-af8a55fa.js.map} +0 -0
  517. /package/dist/kolibri/{controller-ae63fa3a.js.map → controller-d46544b6.js.map} +0 -0
  518. /package/dist/kolibri/{controller-icon-1f62443f.js.map → controller-icon-d1bf5df0.js.map} +0 -0
  519. /package/dist/kolibri/{dev.utils-ec1c1b88.js.map → dev.utils-05f4e663.js.map} +0 -0
  520. /package/dist/kolibri/{devtools-f9831038.js.map → devtools-a2b3092f.js.map} +0 -0
  521. /package/dist/kolibri/{icon-bad239de.js.map → icon-f44df3c5.js.map} +0 -0
  522. /package/dist/kolibri/{label-ed7a7276.js.map → label-d850cbb4.js.map} +0 -0
  523. /package/dist/kolibri/{prop.validators-dd337216.js.map → prop.validators-15724e89.js.map} +0 -0
  524. /package/dist/kolibri/{tab-index-0a44a354.js.map → tab-index-2ca912cf.js.map} +0 -0
  525. /package/dist/kolibri/{validation-68f4e65e.js.map → validation-8149b359.js.map} +0 -0
  526. /package/dist/kolibri/{validation-1165b64b.js.map → validation-af1d04b2.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["getContrastYIQ","r","g","b","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","color","Math","max","min","round","contrast","hex","rgbaConvert","join","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorRgba","colorContrast","defaultStyleCss","featureHint","HACK_REG_EX","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","test","devHint","backgroundColor","a11yHint","_color","_label","render","h","Host","class","state","_smartButton","style","_icon","_iconOnly","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","watchValidator","Set","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/contrast.ts","./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["import { rgbaConvert } from './rgba-convert';\nimport { hex } from 'wcag-contrast';\nimport { colorRgba } from './color-rgba';\nimport { RGB } from 'color-convert/conversions';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","@import '../style.css';\n\n:host {\n\tdisplay: inline-block;\n}\n:host > span {\n\tborder-radius: var(--kolibri-border-radius);\n\tdisplay: flex;\n\t/* height: calc(1rem + 3 * var(--kolibri-spacing)); we could not limited the height */\n\tline-height: calc(1rem + var(--kolibri-spacing));\n\tplace-items: center;\n}\n:host > span kol-span-wc {\n\tpadding: var(--kolibri-spacing) calc(2 * var(--kolibri-spacing));\n}\n:host > span > kol-span-wc {\n\talign-items: center;\n\tfont-style: normal;\n\tgap: calc(2 * var(--kolibri-spacing));\n}\n:host > span.smart-button > kol-span-wc {\n\tborder-right: 1px solid rgba(0, 0, 0, 0.25);\n}\n:host > span > kol-span-wc > span {\n\tdisplay: flex;\n\tgap: var(--kolibri-spacing);\n}\n:host > span > kol-button-wc button {\n\tborder-radius: 0 var(--kolibri-spacing) var(--kolibri-spacing) 0;\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { a11yHint, devHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchValidator } from '../../utils/prop.validators';\nimport { validateLabel } from '../../utils/validators/label';\nimport { ColorContrast, createContrastColorPair } from './contrast';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\nconst HACK_REG_EX = /^([a-f0-9]{3}|[a-f0-9]{6})$/;\n\nexport type KoliBriColor = {\n\tbackgroundColor: string;\n\tcolor: string;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<KoliBriColor>;\n\ticon: Stringified<KoliBriIconProp>;\n\ticonOnly: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tcolor: Stringified<KoliBriColor>;\n\tlabel: string;\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.state._label}></kol-span-wc>\n\t\t\t\t\t{typeof this.state._smartButton === 'object' && this.state._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this.state._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this.state._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this.state._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this.state._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this.state._smartButton._id}\n\t\t\t\t\t\t\t_label={this.state._smartButton._label}\n\t\t\t\t\t\t\t_on={this.state._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this.state._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this.state._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Farbe des Hintergrundes bzw. der Schrift an.\n\t */\n\t@Prop() public _color?: string | KoliBriColor = '#000';\n\n\t/**\n\t * Gibt einen Identifier eines Icons aus den Icofont's an. (https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt den Label-Text des Badges an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_color: '#000',\n\t\t_label: '',\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('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabel(this, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\tif (typeof value === 'string' && value.length > 32) {\n\t\t\t\t\t\ta11yHint(`[KolBadge] The label is too long for a badge (${value.length} > 32).`);\n\t\t\t\t\t}\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.validateLabel(this._label);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["getContrastYIQ","r","g","b","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","color","Math","max","min","round","contrast","hex","rgbaConvert","join","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorRgba","colorContrast","defaultStyleCss","featureHint","HACK_REG_EX","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","test","devHint","backgroundColor","a11yHint","_color","_label","render","h","Host","class","state","_smartButton","style","_icon","_iconOnly","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","watchValidator","Set","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/contrast.ts","./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["import { rgbaConvert } from './rgba-convert';\nimport { hex } from 'wcag-contrast';\nimport { colorRgba } from './color-rgba';\nimport { RGB } from 'color-convert/conversions';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","@import '../style.css';\n\n:host {\n\tdisplay: inline-block;\n}\n:host > span {\n\tborder-radius: var(--kolibri-border-radius);\n\tdisplay: flex;\n\t/* height: calc(1rem + 3 * var(--kolibri-spacing)); we could not limited the height */\n\tline-height: calc(1rem + var(--kolibri-spacing));\n\tplace-items: center;\n}\n:host > span kol-span-wc {\n\tpadding: var(--kolibri-spacing) calc(2 * var(--kolibri-spacing));\n}\n:host > span > kol-span-wc {\n\talign-items: center;\n\tfont-style: normal;\n\tgap: calc(2 * var(--kolibri-spacing));\n}\n:host > span.smart-button > kol-span-wc {\n\tborder-right: 1px solid rgba(0, 0, 0, 0.25);\n}\n:host > span > kol-span-wc > span {\n\tdisplay: flex;\n\tgap: var(--kolibri-spacing);\n}\n:host > span > kol-button-wc button {\n\tborder-radius: 0 var(--kolibri-spacing) var(--kolibri-spacing) 0;\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { a11yHint, devHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchValidator } from '../../utils/prop.validators';\nimport { validateLabel } from '../../utils/validators/label';\nimport { ColorContrast, createContrastColorPair } from './contrast';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\nconst HACK_REG_EX = /^([a-f0-9]{3}|[a-f0-9]{6})$/;\n\nexport type KoliBriColor = {\n\tbackgroundColor: string;\n\tcolor: string;\n};\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<KoliBriColor>;\n\ticon: Stringified<KoliBriIconProp>;\n\ticonOnly: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tcolor: Stringified<KoliBriColor>;\n\tlabel: string;\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.state._label}></kol-span-wc>\n\t\t\t\t\t{typeof this.state._smartButton === 'object' && this.state._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this.state._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this.state._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this.state._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this.state._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this.state._smartButton._id}\n\t\t\t\t\t\t\t_label={this.state._smartButton._label}\n\t\t\t\t\t\t\t_on={this.state._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this.state._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this.state._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Farbe des Hintergrundes bzw. der Schrift an.\n\t */\n\t@Prop() public _color?: string | KoliBriColor = '#000';\n\n\t/**\n\t * Gibt einen Identifier eines Icons aus den Icofont's an. (https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt den Label-Text des Badges an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_color: '#000',\n\t\t_label: '',\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('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabel(this, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\tif (typeof value === 'string' && value.length > 32) {\n\t\t\t\t\t\ta11yHint(`[KolBadge] The label is too long for a badge (${value.length} > 32).`);\n\t\t\t\t\t}\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.validateLabel(this._label);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as o,F as r,H as a}from"./index-50adf9a0.js";import{b as e}from"./a11y.tipps-a876ebb7.js";import{w as l}from"./prop.validators-dd337216.js";import{w as t}from"./validation-68f4e65e.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";import"./index-599f5430.js";const n=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;place-items:center start;font:normal normal 400 0.875rem/1rem arial, sans-serif}kol-icon[exportparts*='separator']{padding:0 0.5rem}kol-icon::part(icon separator){font-weight:900;font-size:0.875rem}kol-icon::part(icon separator)::before{content:'\\f054';font-family:'Font Awesome 6 Free'}",s=class{constructor(a){i(this,a),this._ariaLabel=void 0,this._links=void 0,this.state={_ariaLabel:"…",_links:[]}}render(){const i=this.state._links.length-1;return o(a,null,o("nav",{"aria-label":this.state._ariaLabel},o("ul",null,0===this.state._links.length&&o("li",null,o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-house"}),"…"),this.state._links.map(((a,l)=>o("li",{key:l},0!==l&&o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right",_part:"separator",exportparts:"separator"}),l===i?o("span",null,a._iconOnly?o("kol-icon",{_ariaLabel:a._label,_icon:"string"==typeof a._icon?a._icon:"fa-solid fa-link-slash"}):o(r,null,a._label)):o("kol-link",Object.assign({exportparts:"link",_useCase:"nav"},a,{_ariaLabel:a._label}),a._label)))))))}validateAriaLabel(i){l(this,"_ariaLabel",i,{required:!0}),e(i)}validateLinks(i){t("KolBreadcrumb",this,i)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};s.style={default:n};export{s as kol_breadcrumb};
4
+ import{r as i,h as o,F as r,H as a}from"./index-50adf9a0.js";import{b as e}from"./a11y.tipps-5cdbd5e2.js";import{w as l}from"./prop.validators-15724e89.js";import{w as n}from"./validation-8149b359.js";import"./dev.utils-05f4e663.js";import"./reuse-56bb5a4b.js";import"./index-599f5430.js";const t=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}ul,li{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator)::before{content:'\\f054';font-family:'Font Awesome 6 Free'}",s=class{constructor(o){i(this,o),this._ariaLabel=void 0,this._links=void 0,this.state={_ariaLabel:"…",_links:[]}}render(){const i=this.state._links.length-1;return o(a,null,o("nav",{"aria-label":this.state._ariaLabel},o("ul",null,0===this.state._links.length&&o("li",null,o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-house"}),"…"),this.state._links.map(((a,l)=>o("li",{key:l},0!==l&&o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right",_part:"separator",exportparts:"separator"}),l===i?o("span",null,a._iconOnly?o("kol-icon",{_ariaLabel:a._label,_icon:"string"==typeof a._icon?a._icon:"fa-solid fa-link-slash"}):o(r,null,a._label)):o("kol-link",Object.assign({exportparts:"link",_useCase:"nav"},a,{_ariaLabel:a._label}),a._label)))))))}validateAriaLabel(i){l(this,"_ariaLabel",i,{required:!0}),e(i)}validateLinks(i){n("KolBreadcrumb",this,i)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};s.style={default:t};export{s as kol_breadcrumb};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolBreadcrumb","_ariaLabel","_links","render","lastIndex","this","state","length","h","Host","_icon","map","link","index","key","_part","exportparts","_iconOnly","_label","Fragment","Object","assign","_useCase","validateAriaLabel","value","watchString","required","a11yHintLabelingLandmarks","validateLinks","watchNavLinks","componentWillLoad"],"sources":["./src/components/breadcrumb/style.css?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@import '../style.css';\n\nul {\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tplace-items: center start;\n\tfont: normal normal 400 0.875rem/1rem arial, sans-serif;\n}\nkol-icon[exportparts*='separator'] {\n\tpadding: 0 0.5rem;\n}\nkol-icon::part(icon separator) {\n\tfont-weight: 900;\n\tfont-size: 0.875rem;\n}\nkol-icon::part(icon separator)::before {\n\tcontent: '\\f054';\n\tfont-family: 'Font Awesome 6 Free';\n}\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"],"mappings":";;;iSAAA,MAAMA,EAAkB,8qD,MCqCXC,EAAa,M,oFAmDO,CAC/BC,WAAY,IACZC,OAAQ,G,CApDFC,SACN,MAAMC,EAAYC,KAAKC,MAAMJ,OAAOK,OAAS,EAC7C,OACCC,EAACC,EAAI,KACJD,EAAA,oBAAiBH,KAAKC,MAAML,YAC3BO,EAAA,UACEH,KAAKC,MAAMJ,OAAOK,SAAW,GAC7BC,EAAA,UACCA,EAAA,YAAUP,WAAW,GAAGS,MAAM,sBAAsB,KAGrDL,KAAKC,MAAMJ,OAAOS,KAAI,CAACC,EAAMC,IAE5BL,EAAA,MAAIM,IAAKD,GACPA,IAAU,GAAKL,EAAA,YAAUP,WAAW,GAAGS,MAAM,0BAA0BK,MAAM,YAAYC,YAAY,cACrGH,IAAUT,EACVI,EAAA,YACEI,EAAKK,UACLT,EAAA,YAAUP,WAAYW,EAAKM,OAAQR,aAAcE,EAAKF,QAAU,SAAWE,EAAKF,MAAQ,2BAExFF,EAACW,EAAQ,KAAEP,EAAKM,SAIlBV,EAAA,WAAAY,OAAAC,OAAA,CAAUL,YAAY,OAAOM,SAAS,OAAUV,EAAI,CAAEX,WAAYW,EAAKM,SACrEN,EAAKM,a,CAkCTK,kBAAkBC,GACxBC,EAAYpB,KAAM,aAAcmB,EAAO,CACtCE,SAAU,OAEXC,EAA0BH,E,CAOpBI,cAAcJ,GACpBK,EAAc,gBAAiBxB,KAAMmB,E,CAM/BM,oBACNzB,KAAKkB,kBAAkBlB,KAAKJ,YAC5BI,KAAKuB,cAAcvB,KAAKH,O"}
1
+ {"version":3,"names":["defaultStyleCss","KolBreadcrumb","_ariaLabel","_links","render","lastIndex","this","state","length","h","Host","_icon","map","link","index","key","_part","exportparts","_iconOnly","_label","Fragment","Object","assign","_useCase","validateAriaLabel","value","watchString","required","a11yHintLabelingLandmarks","validateLinks","watchNavLinks","componentWillLoad"],"sources":["./src/components/breadcrumb/style.css?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@import '../style.css';\n\nul,\nli {\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tdisplay: flex;\n\tgap: 0.5em;\n\tflex-wrap: wrap;\n\tplace-items: center;\n}\n\nkol-icon::part(separator) {\n\tfont-weight: 900;\n\tfont-size: 0.7em;\n}\n\nkol-icon::part(separator)::before {\n\tcontent: '\\f054';\n\tfont-family: 'Font Awesome 6 Free';\n}\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"],"mappings":";;;iSAAA,MAAMA,EAAkB,uvD,MCqCXC,EAAa,M,oFAmDO,CAC/BC,WAAY,IACZC,OAAQ,G,CApDFC,SACN,MAAMC,EAAYC,KAAKC,MAAMJ,OAAOK,OAAS,EAC7C,OACCC,EAACC,EAAI,KACJD,EAAA,oBAAiBH,KAAKC,MAAML,YAC3BO,EAAA,UACEH,KAAKC,MAAMJ,OAAOK,SAAW,GAC7BC,EAAA,UACCA,EAAA,YAAUP,WAAW,GAAGS,MAAM,sBAAsB,KAGrDL,KAAKC,MAAMJ,OAAOS,KAAI,CAACC,EAAMC,IAE5BL,EAAA,MAAIM,IAAKD,GACPA,IAAU,GAAKL,EAAA,YAAUP,WAAW,GAAGS,MAAM,0BAA0BK,MAAM,YAAYC,YAAY,cACrGH,IAAUT,EACVI,EAAA,YACEI,EAAKK,UACLT,EAAA,YAAUP,WAAYW,EAAKM,OAAQR,aAAcE,EAAKF,QAAU,SAAWE,EAAKF,MAAQ,2BAExFF,EAACW,EAAQ,KAAEP,EAAKM,SAIlBV,EAAA,WAAAY,OAAAC,OAAA,CAAUL,YAAY,OAAOM,SAAS,OAAUV,EAAI,CAAEX,WAAYW,EAAKM,SACrEN,EAAKM,a,CAkCTK,kBAAkBC,GACxBC,EAAYpB,KAAM,aAAcmB,EAAO,CACtCE,SAAU,OAEXC,EAA0BH,E,CAOpBI,cAAcJ,GACpBK,EAAc,gBAAiBxB,KAAMmB,E,CAM/BM,oBACNzB,KAAKkB,kBAAkBlB,KAAKJ,YAC5BI,KAAKuB,cAAcvB,KAAKH,O"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as o,h as i,H as r}from"./index-50adf9a0.js";const l=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}:host>kol-button-group-wc{display:inline-flex;flex-wrap:wrap;gap:calc(2 * var(--kolibri-spacing))}",n=class{constructor(i){o(this,i)}render(){return i(r,null,i("kol-button-group-wc",null,i("slot",null)))}};n.style={default:l};export{n as kol_button_group};
4
+ import{r as o,h as i,H as r}from"./index-50adf9a0.js";const n=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}:host>kol-button-group-wc{display:inline-flex;flex-wrap:wrap;gap:calc(2 * var(--kolibri-spacing))}",l=class{constructor(i){o(this,i)}render(){return i(r,null,i("kol-button-group-wc",null,i("slot",null)))}};l.style={default:n};export{l as kol_button_group};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolButtonGroup","render","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"],"mappings":";;;sDAAA,MAAMA,EAAkB,86C,MCWXC,EAAc,M,yBACnBC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,2BACCA,EAAA,c"}
1
+ {"version":3,"names":["defaultStyleCss","KolButtonGroup","render","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"],"mappings":";;;sDAAA,MAAMA,EAAkB,wmD,MCWXC,EAAc,M,yBACnBC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,2BACCA,EAAA,c"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as o,H as n,g as t}from"./index-50adf9a0.js";import{a as e}from"./reuse-9dd1192b.js";const r=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}kol-link-wc,kol-link-button-wc{display:inline-block}kol-link-wc a,kol-button-wc button{background-color:transparent;display:inline-flex;font-size:inherit;gap:var(--kolibri-spacing);place-items:center;text-decoration-line:underline}a:focus,a:hover,button:focus,button:hover{text-decoration-thickness:0.2em}kol-icon{padding:0 var(--kolibri-spacing);display:inline-block}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:white;box-shadow:0 0 calc(2 * var(--kolibri-spacing)) calc(2 * var(--kolibri-spacing)) white;left:unset;position:unset}",s=class{constructor(o){i(this,o),this.catchRef=i=>{this.ref=i,e(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 o(n,null,o("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:"link",_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},o("slot",{name:"expert",slot:"expert"})))}get host(){return t(this)}};s.style={default:r};export{s as kol_button_link};
4
+ import{r as i,h as o,H as n,g as e}from"./index-50adf9a0.js";import{a as t}from"./reuse-56bb5a4b.js";const r=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}a,button{text-decoration-line:underline}a{display:inline-flex}button{display:inline-block;background-color:transparent;border:none}a:focus,a:hover,button:focus,button:hover{text-decoration-thickness:0.2em}kol-icon{display:inline-block;padding:0 var(--kolibri-spacing)}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:white;box-shadow:0 0 calc(2 * var(--kolibri-spacing)) calc(2 * var(--kolibri-spacing)) white;left:unset;position:unset}",s=class{constructor(o){i(this,o),this.catchRef=i=>{this.ref=i,t(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 o(n,null,o("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:"link",_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},o("slot",{name:"expert",slot:"expert"})))}get host(){return e(this)}};s.style={default:r};export{s as kol_button_link};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolButtonLink","this","catchRef","ref","propergateFocus","host","render","h","Host","_accessKey","_ariaControls","_ariaCurrent","_ariaExpanded","_ariaLabel","_ariaSelected","_disabled","_icon","_iconOnly","_id","_label","_on","_role","_tabIndex","_tooltipAlign","_type","_value","name","slot"],"sources":["./src/components/button-link/style.css?tag=kol-button-link&mode=default&encapsulation=shadow","./src/components/button-link/component.tsx"],"sourcesContent":["@import '../link.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=\"link\"\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{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\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"],"mappings":";;;qGAAA,MAAMA,EAAkB,68D,MCuBXC,EAAa,M,yBAIRC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAgBH,KAAKI,KAAMJ,KAAKE,IAAI,E,gIA+DiC,G,4CAUhB,M,oCAUA,M,6HA8BX,M,WAKA,S,sBAnHpCG,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,iBACCJ,IAAKF,KAAKC,SACVO,WAAYR,KAAKQ,WACjBC,cAAeT,KAAKS,cACpBC,aAAcV,KAAKU,aACnBC,cAAeX,KAAKW,cACpBC,WAAYZ,KAAKY,WACjBC,cAAeb,KAAKa,cACpBC,UAAWd,KAAKc,UAChBC,MAAOf,KAAKe,MACZC,UAAWhB,KAAKgB,UAChBC,IAAKjB,KAAKiB,IACVC,OAAQlB,KAAKkB,OACbC,IAAKnB,KAAKmB,IACVC,MAAM,OACNC,UAAWrB,KAAKqB,UAChBC,cAAetB,KAAKsB,cACpBC,MAAOvB,KAAKuB,MACZC,OAAQxB,KAAKwB,QAMblB,EAAA,QAAMmB,KAAK,SAASC,KAAK,Y"}
1
+ {"version":3,"names":["defaultStyleCss","KolButtonLink","this","catchRef","ref","propergateFocus","host","render","h","Host","_accessKey","_ariaControls","_ariaCurrent","_ariaExpanded","_ariaLabel","_ariaSelected","_disabled","_icon","_iconOnly","_id","_label","_on","_role","_tabIndex","_tooltipAlign","_type","_value","name","slot"],"sources":["./src/components/button-link/style.css?tag=kol-button-link&mode=default&encapsulation=shadow","./src/components/button-link/component.tsx"],"sourcesContent":["@import '../link.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=\"link\"\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{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\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"],"mappings":";;;qGAAA,MAAMA,EAAkB,miE,MCuBXC,EAAa,M,yBAIRC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAgBH,KAAKI,KAAMJ,KAAKE,IAAI,E,gIA+DiC,G,4CAUhB,M,oCAUA,M,6HA8BX,M,WAKA,S,sBAnHpCG,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,iBACCJ,IAAKF,KAAKC,SACVO,WAAYR,KAAKQ,WACjBC,cAAeT,KAAKS,cACpBC,aAAcV,KAAKU,aACnBC,cAAeX,KAAKW,cACpBC,WAAYZ,KAAKY,WACjBC,cAAeb,KAAKa,cACpBC,UAAWd,KAAKc,UAChBC,MAAOf,KAAKe,MACZC,UAAWhB,KAAKgB,UAChBC,IAAKjB,KAAKiB,IACVC,OAAQlB,KAAKkB,OACbC,IAAKnB,KAAKmB,IACVC,MAAM,OACNC,UAAWrB,KAAKqB,UAChBC,cAAetB,KAAKsB,cACpBC,MAAOvB,KAAKuB,MACZC,OAAQxB,KAAKwB,QAMblB,EAAA,QAAMmB,KAAK,SAASC,KAAK,Y"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,H as s,g as a}from"./index-50adf9a0.js";import{w as e}from"./button-link-c6783bbf.js";import{d as l,e as n}from"./a11y.tipps-a876ebb7.js";import{n as h}from"./dev.utils-ec1c1b88.js";import{f as o,j as d,h as r,w as c,a as u,b as _,s as f}from"./prop.validators-dd337216.js";import{a as v}from"./reuse-9dd1192b.js";import{v as b,w as p}from"./icon-bad239de.js";import{a as m,b as y}from"./label-ed7a7276.js";import{v as A}from"./tab-index-0a44a354.js";import{p as g,a as j}from"./controller-37aebfec.js";import{a as I,w as x}from"./controller-b4263f6b.js";import"./index-599f5430.js";const C=class{constructor(t){i(this,t),this.nonce=h(),this.catchRef=t=>{this.ref=t,v(this.host,this.ref)},this.onClick=t=>{var a,i;"submit"===this.state._type?g({form:this.host,ref:this.ref}):"reset"===this.state._type?j({form:this.host,ref:this.ref}):"function"==typeof(null===(a=this.state._on)||void 0===a?void 0:a.onClick)?(o(t,this.ref),null===(i=this.state._on)||void 0===i||i.onClick(t,this.state._value)):l("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 t(s,null,t("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":d(this.state._ariaCurrent),"aria-expanded":r(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":d(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}),t("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label},t("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&t("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){c(this,"_accessKey",t)}validateAriaControls(t){c(this,"_ariaControls",t)}validateAriaCurrent(t){u(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){_(this,"_ariaExpanded",t)}validateAriaLabel(t){m(this,t)}validateAriaSelected(t){_(this,"_ariaSelected",t)}validateCustomClass(t){c(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){_(this,"_disabled",t),!0===t&&n()}validateIcon(t){b(this,t)}validateIconAlign(t){p(this,t)}validateIconOnly(t){_(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){c(this,"_id",t)}validateLabel(t){y(this,t)}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRole(t){c(this,"_role",t)}validateTabIndex(t){A(this,t)}validateTooltipAlign(t){e(this,"_tooltipAlign",t)}validateType(t){I(this,"_type",t)}validateValue(t){f(this,"_value",t)}validateVariant(t){x(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 a(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"]}}},O=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)}))},L=class{constructor(t){i(this,t),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:""}}render(){return t(s,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&t("kol-icon",{class:{"icon top":!0},style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),t("span",null,this.state._icon.left&&t("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?t("span",null,this.state._label):"",t("span",{ref:this.state._label.length>0||!0===this.state._iconOnly?O:void 0},t("slot",{name:"expert"})),this.state._icon.right&&t("kol-icon",{class:{"icon right":!0},style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&t("kol-icon",{class:{"icon bottom":!0},style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){b(this,t)}validateIconOnly(t){_(this,"_iconOnly",t)}validateLabel(t){y(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"]}}};export{C as kol_button_wc,L as kol_span_wc};
4
+ import{r as i,h as t,H as s,g as a}from"./index-50adf9a0.js";import{w as e}from"./button-link-54acc67b.js";import{d as l,e as n}from"./a11y.tipps-5cdbd5e2.js";import{n as h}from"./dev.utils-05f4e663.js";import{f as o,j as d,h as r,w as c,a as u,b as f,s as _}from"./prop.validators-15724e89.js";import{a as v}from"./reuse-56bb5a4b.js";import{v as b,w as p}from"./icon-f44df3c5.js";import{a as m,b as y}from"./label-d850cbb4.js";import{v as A}from"./tab-index-2ca912cf.js";import{p as g,a as j}from"./controller-9fc2799d.js";import{a as I,w as x}from"./controller-31f6d372.js";import"./index-599f5430.js";const C=class{constructor(t){i(this,t),this.nonce=h(),this.catchRef=t=>{this.ref=t,v(this.host,this.ref)},this.onClick=t=>{var a,i;"submit"===this.state._type?g({form:this.host,ref:this.ref}):"reset"===this.state._type?j({form:this.host,ref:this.ref}):"function"==typeof(null===(a=this.state._on)||void 0===a?void 0:a.onClick)?(o(t,this.ref),null===(i=this.state._on)||void 0===i||i.onClick(t,this.state._value)):l("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 t(s,null,t("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":d(this.state._ariaCurrent),"aria-expanded":r(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":d(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}),t("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label},t("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&t("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){c(this,"_accessKey",t)}validateAriaControls(t){c(this,"_ariaControls",t)}validateAriaCurrent(t){u(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){f(this,"_ariaExpanded",t)}validateAriaLabel(t){m(this,t)}validateAriaSelected(t){f(this,"_ariaSelected",t)}validateCustomClass(t){c(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){f(this,"_disabled",t),!0===t&&n()}validateIcon(t){b(this,t)}validateIconAlign(t){p(this,t)}validateIconOnly(t){f(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){c(this,"_id",t)}validateLabel(t){y(this,t)}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRole(t){c(this,"_role",t)}validateTabIndex(t){A(this,t)}validateTooltipAlign(t){e(this,"_tooltipAlign",t)}validateType(t){I(this,"_type",t)}validateValue(t){_(this,"_value",t)}validateVariant(t){x(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 a(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"]}}},O=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)}))},L=class{constructor(t){i(this,t),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:""}}render(){return t(s,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&t("kol-icon",{class:{"icon top":!0},style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),t("span",null,this.state._icon.left&&t("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?t("span",null,this.state._label):"",t("span",{ref:this.state._label.length>0||!0===this.state._iconOnly?O:void 0},t("slot",{name:"expert"})),this.state._icon.right&&t("kol-icon",{class:{"icon right":!0},style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&t("kol-icon",{class:{"icon bottom":!0},style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){b(this,t)}validateIconOnly(t){f(this,"_iconOnly",t)}validateLabel(t){y(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"]}}};export{C as kol_button_wc,L as kol_span_wc};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,H as o,g as n}from"./index-50adf9a0.js";import{a as s}from"./reuse-9dd1192b.js";const e=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}:host{display:inline-block}:host>kol-button-wc,:host>kol-link-wc{width:inherit}:host>kol-button-wc a,:host>kol-button-wc button,:host>kol-link-wc a,:host>kol-link-wc button{cursor:pointer;display:inline-block;min-height:44px;min-width:44px;padding:0;text-align:center;transition-duration:0.5s;transition-property:background-color, color, border-color;width:inherit}:host>kol-button-wc a:active,:host>kol-button-wc button:active,:host>kol-link-wc a:active,:host>kol-link-wc button:active{outline:0;box-shadow:none}:host>kol-button-wc a:disabled,:host>kol-button-wc button:disabled,:host>kol-link-wc a:disabled,:host>kol-link-wc button:disabled{box-shadow:none;cursor:not-allowed;opacity:0.5}",r=class{constructor(o){i(this,o),this.catchRef=i=>{this.ref=i,s(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._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"}render(){return t(o,null,t("kol-button-wc",{ref:this.catchRef,class:{button:!0,[this._variant]:"custom"!==this._variant,[this._customClass]:"custom"===this._variant&&"string"==typeof this._customClass&&this._customClass.length>0},_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_customClass:this._customClass,_disabled:this._disabled,_icon:this._icon,_iconAlign:this._iconAlign,_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,_variant:this._variant},t("slot",{name:"expert",slot:"expert"})))}get host(){return n(this)}};r.style={default:e};export{r as kol_button};
4
+ import{r as i,h as o,H as t,g as n}from"./index-50adf9a0.js";import{a as e}from"./reuse-56bb5a4b.js";const s=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}a{text-decoration-line:none}a,button{display:inline-block}a,button{min-height:44px;min-width:44px;width:100%}a:active,button:active{outline:0;box-shadow:none}a:disabled,button:disabled{box-shadow:none;cursor:not-allowed;opacity:0.5}",r=class{constructor(o){i(this,o),this.catchRef=i=>{this.ref=i,e(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._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"}render(){return o(t,null,o("kol-button-wc",{ref:this.catchRef,class:{button:!0,[this._variant]:"custom"!==this._variant,[this._customClass]:"custom"===this._variant&&"string"==typeof this._customClass&&this._customClass.length>0},_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_customClass:this._customClass,_disabled:this._disabled,_icon:this._icon,_iconAlign:this._iconAlign,_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,_variant:this._variant},o("slot",{name:"expert",slot:"expert"})))}get host(){return n(this)}};r.style={default:s};export{r as kol_button};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolButton","this","catchRef","ref","propergateFocus","host","render","h","Host","class","button","_variant","_customClass","length","_accessKey","_ariaControls","_ariaCurrent","_ariaExpanded","_ariaLabel","_ariaSelected","_disabled","_icon","_iconAlign","_iconOnly","_id","_label","_on","_role","_tabIndex","_tooltipAlign","_type","_value","name","slot"],"sources":["./src/components/button/style.css?tag=kol-button&mode=default&encapsulation=shadow","./src/components/button/shadow.tsx"],"sourcesContent":["@import '../button.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\tKoliBriButtonVariant,\n\tOptionalButtonProps,\n\tRequiredButtonProps,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { propergateFocus } from '../../utils/reuse';\n\n@Component({\n\ttag: 'kol-button',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButton implements Generic.Element.Members<RequiredButtonProps, OptionalButtonProps> {\n\t@Element() private readonly host?: HTMLKolButtonElement;\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\tclass={{\n\t\t\t\t\t\tbutton: true,\n\t\t\t\t\t\t[this._variant as string]: this._variant !== 'custom',\n\t\t\t\t\t\t[this._customClass as string]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,\n\t\t\t\t\t}}\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_customClass={this._customClass}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_iconAlign={this._iconAlign}\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\t_variant={this._variant}\n\t\t\t\t>\n\t\t\t\t\t{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\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 des Buttons an. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label)\n\t */\n\t@Prop() 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, welche Custom-Class übergeben werden soll, wenn _variant=\"custom\" gesetzt ist.\n\t */\n\t@Prop() public _customClass?: string;\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 das Icon links oder rechts dargestellt werden soll.\n\t *\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 die ID der Schaltfläche an. (Selection, Testing)\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt den Label für die Beschriftung der Schaltfläche 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\t/**\n\t * Gibt an, welche Ausprägung der Button hat.\n\t */\n\t@Prop() public _variant?: KoliBriButtonVariant = 'normal';\n}\n"],"mappings":";;;qGAAA,MAAMA,EAAkB,8/D,MCwBXC,EAAS,M,yBAIJC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAgBH,KAAKI,KAAMJ,KAAKE,IAAI,E,gIAmEA,G,wEAeiB,M,qCAYd,O,eAKc,M,6HA8BX,M,WAKA,S,oCAUM,Q,CA7I1CG,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,iBACCJ,IAAKF,KAAKC,SACVO,MAAO,CACNC,OAAQ,KACR,CAACT,KAAKU,UAAqBV,KAAKU,WAAa,SAC7C,CAACV,KAAKW,cAAyBX,KAAKU,WAAa,iBAAmBV,KAAKW,eAAiB,UAAYX,KAAKW,aAAaC,OAAS,GAElIC,WAAYb,KAAKa,WACjBC,cAAed,KAAKc,cACpBC,aAAcf,KAAKe,aACnBC,cAAehB,KAAKgB,cACpBC,WAAYjB,KAAKiB,WACjBC,cAAelB,KAAKkB,cACpBP,aAAcX,KAAKW,aACnBQ,UAAWnB,KAAKmB,UAChBC,MAAOpB,KAAKoB,MACZC,WAAYrB,KAAKqB,WACjBC,UAAWtB,KAAKsB,UAChBC,IAAKvB,KAAKuB,IACVC,OAAQxB,KAAKwB,OACbC,IAAKzB,KAAKyB,IACVC,MAAO1B,KAAK0B,MACZC,UAAW3B,KAAK2B,UAChBC,cAAe5B,KAAK4B,cACpBC,MAAO7B,KAAK6B,MACZC,OAAQ9B,KAAK8B,OACbpB,SAAUV,KAAKU,UAMfJ,EAAA,QAAMyB,KAAK,SAASC,KAAK,Y"}
1
+ {"version":3,"names":["defaultStyleCss","KolButton","this","catchRef","ref","propergateFocus","host","render","h","Host","class","button","_variant","_customClass","length","_accessKey","_ariaControls","_ariaCurrent","_ariaExpanded","_ariaLabel","_ariaSelected","_disabled","_icon","_iconAlign","_iconOnly","_id","_label","_on","_role","_tabIndex","_tooltipAlign","_type","_value","name","slot"],"sources":["./src/components/button/style.css?tag=kol-button&mode=default&encapsulation=shadow","./src/components/button/shadow.tsx"],"sourcesContent":["@import '../button.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\tKoliBriButtonVariant,\n\tOptionalButtonProps,\n\tRequiredButtonProps,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { propergateFocus } from '../../utils/reuse';\n\n@Component({\n\ttag: 'kol-button',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButton implements Generic.Element.Members<RequiredButtonProps, OptionalButtonProps> {\n\t@Element() private readonly host?: HTMLKolButtonElement;\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\tclass={{\n\t\t\t\t\t\tbutton: true,\n\t\t\t\t\t\t[this._variant as string]: this._variant !== 'custom',\n\t\t\t\t\t\t[this._customClass as string]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,\n\t\t\t\t\t}}\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_customClass={this._customClass}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_iconAlign={this._iconAlign}\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\t_variant={this._variant}\n\t\t\t\t>\n\t\t\t\t\t{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\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 des Buttons an. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label)\n\t */\n\t@Prop() 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, welche Custom-Class übergeben werden soll, wenn _variant=\"custom\" gesetzt ist.\n\t */\n\t@Prop() public _customClass?: string;\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 das Icon links oder rechts dargestellt werden soll.\n\t *\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 die ID der Schaltfläche an. (Selection, Testing)\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt den Label für die Beschriftung der Schaltfläche 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\t/**\n\t * Gibt an, welche Ausprägung der Button hat.\n\t */\n\t@Prop() public _variant?: KoliBriButtonVariant = 'normal';\n}\n"],"mappings":";;;qGAAA,MAAMA,EAAkB,8uD,MCwBXC,EAAS,M,yBAIJC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAgBH,KAAKI,KAAMJ,KAAKE,IAAI,E,gIAmEA,G,wEAeiB,M,qCAYd,O,eAKc,M,6HA8BX,M,WAKA,S,oCAUM,Q,CA7I1CG,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,iBACCJ,IAAKF,KAAKC,SACVO,MAAO,CACNC,OAAQ,KACR,CAACT,KAAKU,UAAqBV,KAAKU,WAAa,SAC7C,CAACV,KAAKW,cAAyBX,KAAKU,WAAa,iBAAmBV,KAAKW,eAAiB,UAAYX,KAAKW,aAAaC,OAAS,GAElIC,WAAYb,KAAKa,WACjBC,cAAed,KAAKc,cACpBC,aAAcf,KAAKe,aACnBC,cAAehB,KAAKgB,cACpBC,WAAYjB,KAAKiB,WACjBC,cAAelB,KAAKkB,cACpBP,aAAcX,KAAKW,aACnBQ,UAAWnB,KAAKmB,UAChBC,MAAOpB,KAAKoB,MACZC,WAAYrB,KAAKqB,WACjBC,UAAWtB,KAAKsB,UAChBC,IAAKvB,KAAKuB,IACVC,OAAQxB,KAAKwB,OACbC,IAAKzB,KAAKyB,IACVC,MAAO1B,KAAK0B,MACZC,UAAW3B,KAAK2B,UAChBC,cAAe5B,KAAK4B,cACpBC,MAAO7B,KAAK6B,MACZC,OAAQ9B,KAAK8B,OACbpB,SAAUV,KAAKU,UAMfJ,EAAA,QAAMyB,KAAK,SAASC,KAAK,Y"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as o,H as e}from"./index-50adf9a0.js";import{b as r,w as a}from"./prop.validators-dd337216.js";import{w as t}from"./validation-1165b64b.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const l=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}",s=class{constructor(o){i(this,o),this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._level=1,this.state={_heading:"…"}}render(){return o(e,null,o("div",null,o("div",{class:"header"},o("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),o("slot",{name:"header"})),o("div",{class:"content"},o("slot",{name:"content"})),!0===this.state._hasFooter&&o("div",{class:"footer"},o("slot",{name:"footer"}))))}validateHasFooter(i){r(this,"_hasFooter",i)}validateHeading(i){a(this,"_heading",i,{required:!0})}validateHeadline(i){this.validateHeading(i)}validateLevel(i){t(this,i)}componentWillLoad(){this.validateHasFooter(this._hasFooter),this.validateHeading(this._heading||this._headline),this.validateLevel(this._level)}static get watchers(){return{_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_level:["validateLevel"]}}};s.style={default:l};export{s as kol_card};
4
+ import{r as i,h as o,H as r}from"./index-50adf9a0.js";import{b as e,w as a}from"./prop.validators-15724e89.js";import{w as t}from"./validation-af1d04b2.js";import"./index-599f5430.js";import"./a11y.tipps-5cdbd5e2.js";import"./dev.utils-05f4e663.js";import"./reuse-56bb5a4b.js";const n=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}",l=class{constructor(o){i(this,o),this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._level=1,this.state={_heading:"…"}}render(){return o(r,null,o("div",null,o("div",{class:"header"},o("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),o("slot",{name:"header"})),o("div",{class:"content"},o("slot",{name:"content"})),!0===this.state._hasFooter&&o("div",{class:"footer"},o("slot",{name:"footer"}))))}validateHasFooter(i){e(this,"_hasFooter",i)}validateHeading(i){a(this,"_heading",i,{required:!0})}validateHeadline(i){this.validateHeading(i)}validateLevel(i){t(this,i)}componentWillLoad(){this.validateHasFooter(this._hasFooter),this.validateHeading(this._heading||this._headline),this.validateLevel(this._level)}static get watchers(){return{_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_level:["validateLevel"]}}};l.style={default:n};export{l as kol_card};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolCard","_heading","render","h","Host","class","_label","this","state","_level","name","_hasFooter","validateHasFooter","value","watchBoolean","validateHeading","watchString","required","validateHeadline","validateLevel","watchHeadingLevel","componentWillLoad","_headline"],"sources":["./src/components/card/style.css?tag=kol-card&mode=default&encapsulation=shadow","./src/components/card/component.tsx"],"sourcesContent":["@import '../style.css';\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\n\n/**\n * API\n */\ntype RequiredProps = {\n\theading: string;\n};\ntype OptionalProps = {\n\thasFooter: boolean;\n\t/**\n\t * @deprecated Use _headline instead\n\t */\n\theadline: string;\n\tlevel: HeadingLevel;\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 card - TBD\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich unterhalb der Überschrift der Card.\n * @slot footer - Ermöglicht das Einfügen beliebigen HTML's in den Fußbereich der Card.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich der Card.\n */\n@Component({\n\ttag: 'kol-card',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolCard 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>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.state._hasFooter === true && (\n\t\t\t\t\t\t<div class=\"footer\">\n\t\t\t\t\t\t\t<slot name=\"footer\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Card einen Footer-Bereich hat.\n\t */\n\t@Prop({ reflect: true }) public _hasFooter?: boolean = false;\n\n\t/**\n\t * Gibt die Überschrift der Card an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Gibt die Überschrift der Card an.\n\t *\n\t * @deprecated Verwende stattdessen das Property _heading.\n\t */\n\t@Prop() public _headline?: 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 * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_heading: '…', // '⚠'\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasFooter')\n\tpublic validateHasFooter(value?: boolean): void {\n\t\twatchBoolean(this, '_hasFooter', 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\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\t@Watch('_headline')\n\tpublic validateHeadline(value?: string): void {\n\t\tthis.validateHeading(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 (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHasFooter(this._hasFooter);\n\t\tthis.validateHeading(this._heading || this._headline);\n\t\tthis.validateLevel(this._level);\n\t}\n}\n"],"mappings":";;;qRAAA,MAAMA,EAAkB,40C,MCyCXC,EAAO,M,yCAyBoC,M,6DAiBhB,E,WAKP,CAC/BC,SAAU,I,CA/CJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,WACCA,EAAA,OAAKE,MAAM,UACVF,EAAA,kBAAgBG,OAAQC,KAAKC,MAAMP,SAAUQ,OAAQF,KAAKC,MAAMC,SAChEN,EAAA,QAAMO,KAAK,YAEZP,EAAA,OAAKE,MAAM,WACVF,EAAA,QAAMO,KAAK,aAEXH,KAAKC,MAAMG,aAAe,MAC1BR,EAAA,OAAKE,MAAM,UACVF,EAAA,QAAMO,KAAK,a,CAyCVE,kBAAkBC,GACxBC,EAAaP,KAAM,aAAcM,E,CAO3BE,gBAAgBF,GACtBG,EAAYT,KAAM,WAAYM,EAAO,CACpCI,SAAU,M,CASLC,iBAAiBL,GACvBN,KAAKQ,gBAAgBF,E,CAOfM,cAAcN,GACpBO,EAAkBb,KAAMM,E,CAMlBQ,oBACNd,KAAKK,kBAAkBL,KAAKI,YAC5BJ,KAAKQ,gBAAgBR,KAAKN,UAAYM,KAAKe,WAC3Cf,KAAKY,cAAcZ,KAAKE,O"}
1
+ {"version":3,"names":["defaultStyleCss","KolCard","_heading","render","h","Host","class","_label","this","state","_level","name","_hasFooter","validateHasFooter","value","watchBoolean","validateHeading","watchString","required","validateHeadline","validateLevel","watchHeadingLevel","componentWillLoad","_headline"],"sources":["./src/components/card/style.css?tag=kol-card&mode=default&encapsulation=shadow","./src/components/card/component.tsx"],"sourcesContent":["@import '../style.css';\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\n\n/**\n * API\n */\ntype RequiredProps = {\n\theading: string;\n};\ntype OptionalProps = {\n\thasFooter: boolean;\n\t/**\n\t * @deprecated Use _headline instead\n\t */\n\theadline: string;\n\tlevel: HeadingLevel;\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 card - TBD\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich unterhalb der Überschrift der Card.\n * @slot footer - Ermöglicht das Einfügen beliebigen HTML's in den Fußbereich der Card.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich der Card.\n */\n@Component({\n\ttag: 'kol-card',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolCard 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>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.state._hasFooter === true && (\n\t\t\t\t\t\t<div class=\"footer\">\n\t\t\t\t\t\t\t<slot name=\"footer\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Card einen Footer-Bereich hat.\n\t */\n\t@Prop({ reflect: true }) public _hasFooter?: boolean = false;\n\n\t/**\n\t * Gibt die Überschrift der Card an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Gibt die Überschrift der Card an.\n\t *\n\t * @deprecated Verwende stattdessen das Property _heading.\n\t */\n\t@Prop() public _headline?: 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 * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_heading: '…', // '⚠'\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasFooter')\n\tpublic validateHasFooter(value?: boolean): void {\n\t\twatchBoolean(this, '_hasFooter', 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\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\t@Watch('_headline')\n\tpublic validateHeadline(value?: string): void {\n\t\tthis.validateHeading(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 (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHasFooter(this._hasFooter);\n\t\tthis.validateHeading(this._heading || this._headline);\n\t\tthis.validateLevel(this._level);\n\t}\n}\n"],"mappings":";;;qRAAA,MAAMA,EAAkB,sgD,MCyCXC,EAAO,M,yCAyBoC,M,6DAiBhB,E,WAKP,CAC/BC,SAAU,I,CA/CJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,WACCA,EAAA,OAAKE,MAAM,UACVF,EAAA,kBAAgBG,OAAQC,KAAKC,MAAMP,SAAUQ,OAAQF,KAAKC,MAAMC,SAChEN,EAAA,QAAMO,KAAK,YAEZP,EAAA,OAAKE,MAAM,WACVF,EAAA,QAAMO,KAAK,aAEXH,KAAKC,MAAMG,aAAe,MAC1BR,EAAA,OAAKE,MAAM,UACVF,EAAA,QAAMO,KAAK,a,CAyCVE,kBAAkBC,GACxBC,EAAaP,KAAM,aAAcM,E,CAO3BE,gBAAgBF,GACtBG,EAAYT,KAAM,WAAYM,EAAO,CACpCI,SAAU,M,CASLC,iBAAiBL,GACvBN,KAAKQ,gBAAgBF,E,CAOfM,cAAcN,GACpBO,EAAkBb,KAAMM,E,CAMlBQ,oBACNd,KAAKK,kBAAkBL,KAAKI,YAC5BJ,KAAKQ,gBAAgBR,KAAKN,UAAYM,KAAKe,WAC3Cf,KAAKY,cAAcZ,KAAKE,O"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as o,H as r}from"./index-50adf9a0.js";import{b as a,w as t}from"./prop.validators-dd337216.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const e=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}details{display:grid;width:100%}details>summary{border-radius:var(--kolibri-spacing);cursor:pointer;display:flex;place-items:center}details>summary>span{border-bottom-color:var(--kolibri-border-color);border-bottom-style:solid;border-bottom-width:calc(var(--kolibri-spacing) / 2);padding:0 var(--kolibri-spacing)}details>summary>span:first-child{padding-right:var(--kolibri-spacing);text-align:center;width:1rem}details>summary>span:last-child{padding-left:var(--kolibri-spacing)}details[open]>summary>span,details>summary:focus>span,details>summary:hover>span{border-bottom-color:black}details>kol-indented-text{margin:0.25em 0 0 0.75em}",s=class{constructor(o){i(this,o),this.onClick=()=>{setTimeout((()=>{var i;this._open=null===(i=this.htmlDetailsElement)||void 0===i?void 0:i.open}),25)},this._open=!1,this._summary=void 0,this.state={_summary:"…"}}render(){return o(r,null,o("details",{ref:i=>{this.htmlDetailsElement=i},open:this.state._open},o("summary",{onClick:this.onClick},o("span",null,this.state._open?o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-down"}):o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right"})),o("span",null,this.state._summary)),o("kol-indented-text",null,o("slot",null))))}validateOpen(i){a(this,"_open",i)}validateSummary(i){t(this,"_summary",i,{required:!0})}componentWillLoad(){this.validateOpen(this._open),this.validateSummary(this._summary)}static get watchers(){return{_open:["validateOpen"],_summary:["validateSummary"]}}};s.style={default:e};export{s as kol_details};
4
+ import{r as i,h as o,H as r}from"./index-50adf9a0.js";import{b as a,w as e}from"./prop.validators-15724e89.js";import"./index-599f5430.js";import"./a11y.tipps-5cdbd5e2.js";import"./dev.utils-05f4e663.js";import"./reuse-56bb5a4b.js";const l=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}details{display:grid;width:100%}details>summary{border-radius:var(--kolibri-spacing);cursor:pointer;display:flex}details>summary>span{border-bottom-color:var(--kolibri-border-color);border-bottom-style:solid;border-bottom-width:calc(var(--kolibri-spacing) / 2);padding:0 var(--kolibri-spacing)}details>summary>span:first-child{display:inline-flex;text-align:center;width:1rem}details>summary>span:last-child{padding-left:var(--kolibri-spacing)}details[open]>summary>span,details>summary:focus>span,details>summary:hover>span{border-bottom-color:black}details>kol-indented-text{margin:0.25em 0 0 0.7em}",t=class{constructor(o){i(this,o),this.onClick=()=>{setTimeout((()=>{var i;this._open=null===(i=this.htmlDetailsElement)||void 0===i?void 0:i.open}),25)},this._open=!1,this._summary=void 0,this.state={_summary:"…"}}render(){return o(r,null,o("details",{ref:i=>{this.htmlDetailsElement=i},open:this.state._open},o("summary",{onClick:this.onClick},o("span",null,this.state._open?o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-down"}):o("kol-icon",{_ariaLabel:"",_icon:"fa-solid fa-angle-right"})),o("span",null,this.state._summary)),o("kol-indented-text",null,o("slot",null))))}validateOpen(i){a(this,"_open",i)}validateSummary(i){e(this,"_summary",i,{required:!0})}componentWillLoad(){this.validateOpen(this._open),this.validateSummary(this._summary)}static get watchers(){return{_open:["validateOpen"],_summary:["validateSummary"]}}};t.style={default:l};export{t as kol_details};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolDetails","this","onClick","setTimeout","_open","_a","htmlDetailsElement","open","_summary","render","h","Host","ref","el","state","_ariaLabel","_icon","validateOpen","value","watchBoolean","validateSummary","watchString","required","componentWillLoad"],"sources":["./src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","./src/components/details/component.tsx"],"sourcesContent":["@import '../style.css';\n\ndetails {\n\tdisplay: grid;\n\twidth: 100%;\n}\ndetails > summary {\n\tborder-radius: var(--kolibri-spacing);\n\tcursor: pointer;\n\tdisplay: flex;\n\tplace-items: center;\n}\ndetails > summary > span {\n\tborder-bottom-color: var(--kolibri-border-color);\n\tborder-bottom-style: solid;\n\tborder-bottom-width: calc(var(--kolibri-spacing) / 2);\n\tpadding: 0 var(--kolibri-spacing);\n}\ndetails > summary > span:first-child {\n\tpadding-right: var(--kolibri-spacing);\n\ttext-align: center;\n\twidth: 1rem;\n}\ndetails > summary > span:last-child {\n\tpadding-left: var(--kolibri-spacing);\n}\ndetails[open] > summary > span,\ndetails > summary:focus > span,\ndetails > summary:hover > span {\n\tborder-bottom-color: black;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.75em;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tsummary: string;\n};\ntype OptionalProps = {\n\topen: boolean;\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@Component({\n\ttag: 'kol-details',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolDetails implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate htmlDetailsElement?: HTMLDetailsElement;\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<details\n\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\tthis.htmlDetailsElement = el as HTMLDetailsElement;\n\t\t\t\t\t}}\n\t\t\t\t\topen={this.state._open}\n\t\t\t\t>\n\t\t\t\t\t<summary onClick={this.onClick}>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{this.state._open ? <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-down\" /> : <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-right\" />}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span>{this.state._summary}</span>\n\t\t\t\t\t</summary>\n\t\t\t\t\t<kol-indented-text>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</kol-indented-text>\n\t\t\t\t</details>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Detailbeschreibung geöffnet oder geschlossen ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t/**\n\t * Gibt die Zusammenfassung der Detailbeschreibung an.\n\t */\n\t@Prop() public _summary!: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_summary: '…', // '⚠'\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 (@Watch)\n\t */\n\t@Watch('_summary')\n\tpublic validateSummary(value?: string): void {\n\t\twatchString(this, '_summary', value, {\n\t\t\trequired: true,\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.validateOpen(this._open);\n\t\tthis.validateSummary(this._summary);\n\t}\n\n\tprivate onClick = () => {\n\t\tsetTimeout(() => {\n\t\t\tthis._open = this.htmlDetailsElement?.open;\n\t\t}, 25);\n\t};\n}\n"],"mappings":";;;wOAAA,MAAMA,EAAkB,08D,MC2BXC,EAAU,M,yBAqEdC,KAAAC,QAAU,KACjBC,YAAW,K,MACVF,KAAKG,OAAQC,EAAAJ,KAAKK,sBAAkB,MAAAD,SAAA,SAAAA,EAAEE,IAAI,GACxC,GAAG,E,WA3C0D,M,mCAUjC,CAC/BC,SAAU,I,CArCJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,WACCE,IAAMC,IACLZ,KAAKK,mBAAqBO,CAAwB,EAEnDN,KAAMN,KAAKa,MAAMV,OAEjBM,EAAA,WAASR,QAASD,KAAKC,SACtBQ,EAAA,YACET,KAAKa,MAAMV,MAAQM,EAAA,YAAUK,WAAW,GAAGC,MAAM,2BAA8BN,EAAA,YAAUK,WAAW,GAAGC,MAAM,6BAE/GN,EAAA,YAAOT,KAAKa,MAAMN,WAEnBE,EAAA,yBACCA,EAAA,e,CA4BEO,aAAaC,GACnBC,EAAalB,KAAM,QAASiB,E,CAOtBE,gBAAgBF,GACtBG,EAAYpB,KAAM,WAAYiB,EAAO,CACpCI,SAAU,M,CAOLC,oBACNtB,KAAKgB,aAAahB,KAAKG,OACvBH,KAAKmB,gBAAgBnB,KAAKO,S"}
1
+ {"version":3,"names":["defaultStyleCss","KolDetails","this","onClick","setTimeout","_open","_a","htmlDetailsElement","open","_summary","render","h","Host","ref","el","state","_ariaLabel","_icon","validateOpen","value","watchBoolean","validateSummary","watchString","required","componentWillLoad"],"sources":["./src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","./src/components/details/component.tsx"],"sourcesContent":["@import '../style.css';\n\ndetails {\n\tdisplay: grid;\n\twidth: 100%;\n}\ndetails > summary {\n\tborder-radius: var(--kolibri-spacing);\n\tcursor: pointer;\n\tdisplay: flex;\n}\ndetails > summary > span {\n\tborder-bottom-color: var(--kolibri-border-color);\n\tborder-bottom-style: solid;\n\tborder-bottom-width: calc(var(--kolibri-spacing) / 2);\n\tpadding: 0 var(--kolibri-spacing);\n}\ndetails > summary > span:first-child {\n\tdisplay: inline-flex;\n\ttext-align: center;\n\twidth: 1rem;\n}\ndetails > summary > span:last-child {\n\tpadding-left: var(--kolibri-spacing);\n}\ndetails[open] > summary > span,\ndetails > summary:focus > span,\ndetails > summary:hover > span {\n\tborder-bottom-color: black;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.7em;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tsummary: string;\n};\ntype OptionalProps = {\n\topen: boolean;\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@Component({\n\ttag: 'kol-details',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolDetails implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate htmlDetailsElement?: HTMLDetailsElement;\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<details\n\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\tthis.htmlDetailsElement = el as HTMLDetailsElement;\n\t\t\t\t\t}}\n\t\t\t\t\topen={this.state._open}\n\t\t\t\t>\n\t\t\t\t\t<summary onClick={this.onClick}>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{this.state._open ? <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-down\" /> : <kol-icon _ariaLabel=\"\" _icon=\"fa-solid fa-angle-right\" />}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span>{this.state._summary}</span>\n\t\t\t\t\t</summary>\n\t\t\t\t\t<kol-indented-text>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</kol-indented-text>\n\t\t\t\t</details>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Detailbeschreibung geöffnet oder geschlossen ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t/**\n\t * Gibt die Zusammenfassung der Detailbeschreibung an.\n\t */\n\t@Prop() public _summary!: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_summary: '…', // '⚠'\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 (@Watch)\n\t */\n\t@Watch('_summary')\n\tpublic validateSummary(value?: string): void {\n\t\twatchString(this, '_summary', value, {\n\t\t\trequired: true,\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.validateOpen(this._open);\n\t\tthis.validateSummary(this._summary);\n\t}\n\n\tprivate onClick = () => {\n\t\tsetTimeout(() => {\n\t\t\tthis._open = this.htmlDetailsElement?.open;\n\t\t}, 25);\n\t};\n}\n"],"mappings":";;;wOAAA,MAAMA,EAAkB,+lE,MC2BXC,EAAU,M,yBAqEdC,KAAAC,QAAU,KACjBC,YAAW,K,MACVF,KAAKG,OAAQC,EAAAJ,KAAKK,sBAAkB,MAAAD,SAAA,SAAAA,EAAEE,IAAI,GACxC,GAAG,E,WA3C0D,M,mCAUjC,CAC/BC,SAAU,I,CArCJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,WACCE,IAAMC,IACLZ,KAAKK,mBAAqBO,CAAwB,EAEnDN,KAAMN,KAAKa,MAAMV,OAEjBM,EAAA,WAASR,QAASD,KAAKC,SACtBQ,EAAA,YACET,KAAKa,MAAMV,MAAQM,EAAA,YAAUK,WAAW,GAAGC,MAAM,2BAA8BN,EAAA,YAAUK,WAAW,GAAGC,MAAM,6BAE/GN,EAAA,YAAOT,KAAKa,MAAMN,WAEnBE,EAAA,yBACCA,EAAA,e,CA4BEO,aAAaC,GACnBC,EAAalB,KAAM,QAASiB,E,CAOtBE,gBAAgBF,GACtBG,EAAYpB,KAAM,WAAYiB,EAAO,CACpCI,SAAU,M,CAOLC,oBACNtB,KAAKgB,aAAahB,KAAKG,OACvBH,KAAKmB,gBAAgBnB,KAAKO,S"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i}from"./index-50adf9a0.js";import{b as e,w as o}from"./prop.validators-dd337216.js";import{a as s}from"./i18n-1d6d91ab.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const r=class{constructor(e){t(this,e),this.onSubmit=t=>{var e,i;t.preventDefault(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onSubmit)&&(null===(i=this.state._on)||void 0===i||i.onSubmit(t))},this.onReset=t=>{var e,i;t.preventDefault(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onReset)&&(null===(i=this.state._on)||void 0===i||i.onReset(t))},this._on=void 0,this._requiredText=!0,this.state={}}render(){return i("form",{method:"post",onSubmit:this.onSubmit,onReset:this.onReset,autoComplete:"off",noValidate:!0},!0===this.state._requiredText?i("p",null,i("kol-indented-text",null,s("kol-form-description"))):"string"==typeof this.state._requiredText&&this.state._requiredText.length>0?i("p",null,i("kol-indented-text",null,this.state._requiredText)):null,i("slot",null))}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRequiredText(t){"boolean"==typeof t?e(this,"_requiredText",t):o(this,"_requiredText",t)}componentWillLoad(){this.validateOn(this._on),this.validateRequiredText(this._requiredText)}static get watchers(){return{_on:["validateOn"],_requiredText:["validateRequiredText"]}}};export{r as kol_form};
4
+ import{r as t,h as i}from"./index-50adf9a0.js";import{b as e,w as o}from"./prop.validators-15724e89.js";import{a as s}from"./i18n-1305db0e.js";import"./index-599f5430.js";import"./a11y.tipps-5cdbd5e2.js";import"./dev.utils-05f4e663.js";import"./reuse-56bb5a4b.js";const r=class{constructor(e){t(this,e),this.onSubmit=t=>{var e,i;t.preventDefault(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onSubmit)&&(null===(i=this.state._on)||void 0===i||i.onSubmit(t))},this.onReset=t=>{var e,i;t.preventDefault(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onReset)&&(null===(i=this.state._on)||void 0===i||i.onReset(t))},this._on=void 0,this._requiredText=!0,this.state={}}render(){return i("form",{method:"post",onSubmit:this.onSubmit,onReset:this.onReset,autoComplete:"off",noValidate:!0},!0===this.state._requiredText?i("p",null,i("kol-indented-text",null,s("kol-form-description"))):"string"==typeof this.state._requiredText&&this.state._requiredText.length>0?i("p",null,i("kol-indented-text",null,this.state._requiredText)):null,i("slot",null))}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRequiredText(t){"boolean"==typeof t?e(this,"_requiredText",t):o(this,"_requiredText",t)}componentWillLoad(){this.validateOn(this._on),this.validateRequiredText(this._requiredText)}static get watchers(){return{_on:["validateOn"],_requiredText:["validateRequiredText"]}}};export{r as kol_form};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as s}from"./index-50adf9a0.js";import{w as e}from"./validation-1165b64b.js";import{w as l}from"./prop.validators-dd337216.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const a=class{constructor(s){t(this,s),this.renderHeadline=(t,s)=>{switch(s){case 1:return i("h1",{class:"headline"},t,i("slot",null));case 2:return i("h2",{class:"headline"},t,i("slot",null));case 3:return i("h3",{class:"headline"},t,i("slot",null));case 4:return i("h4",{class:"headline"},t,i("slot",null));case 5:return i("h5",{class:"headline"},t,i("slot",null));case 6:return i("h6",{class:"headline"},t,i("slot",null));default:return i("strong",{class:"headline"},t,i("slot",null))}},this._level=1,this._label=void 0,this._overline="",this.state={_label:""}}validateLabel(i){l(this,"_label",i)}validateLevel(i){e(this,i)}validateOverline(i){l(this,"_overline",i)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateOverline(this._overline)}render(){return i(s,null,this.renderHeadline(this.state._label,this.state._level),this.state._overline&&i("span",{class:"overline"},this.state._overline))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_overline:["validateOverline"]}}},n=class{constructor(i){t(this,i),this._alert=!0,this._disabled=!1,this._error="",this._hideLabel=!1,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._readOnly=!1,this._renderNoLabel=!1,this._required=!1,this._smartButton=void 0,this._touched=!1}render(){var t,e,l,a;const r="string"==typeof this._error&&this._error.length>0&&!0===this._touched,n="string"==typeof this._hint&&this._hint.length>0,o=!0===this._hideLabel&&!0!==this._required;return i(s,{class:{disabled:!0===this._disabled,error:!0===r,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&i("label",{htmlFor:this._id,id:`${this._id}-label`,style:{height:o?"0":void 0,margin:o?"0":void 0,padding:o?"0":void 0,visibility:o?"hidden":void 0}},i("span",null,i("slot",{name:"label"}))),n&&i("span",{class:"hint",id:`${this._id}-hint`},this._hint),i("div",{class:{input:!0,"icon-left":"object"==typeof(null===(t=this._icon)||void 0===t?void 0:t.left),"icon-right":"object"==typeof(null===(e=this._icon)||void 0===e?void 0:e.right)}},i("div",{class:"icons"},(null===(l=this._icon)||void 0===l?void 0:l.left)?i("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}):i("i",null),(null===(a=this._icon)||void 0===a?void 0:a.right)?i("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon}):i("i",null)),i("slot",{name:"input"}),"object"==typeof this._smartButton&&null!==this._smartButton&&i("kol-button-wc",{_ariaLabel:this._smartButton._ariaLabel,_customClass:this._smartButton._customClass,_disabled:this._smartButton._disabled,_icon:this._smartButton._icon,_iconOnly:!0,_id:this._smartButton._id,_label:this._smartButton._label,_on:this._smartButton._on,_tooltipAlign:this._smartButton._tooltipAlign,_variant:this._smartButton._variant})),r&&i("kol-alert",{class:"error",id:`${this._id}-error`,_alert:this._alert,_type:"error",_variant:"msg"},this._error),Array.isArray(this._list)&&this._list.length>0&&i("datalist",{id:`${this._id}-list`},this._list.map((t=>i("option",{value:t})))))}};export{a as kol_heading_wc,n as kol_input};
4
+ import{r as t,h as s,H as i}from"./index-50adf9a0.js";import{w as e}from"./validation-af1d04b2.js";import{w as l}from"./prop.validators-15724e89.js";import"./index-599f5430.js";import"./a11y.tipps-5cdbd5e2.js";import"./dev.utils-05f4e663.js";import"./reuse-56bb5a4b.js";const a=class{constructor(i){t(this,i),this.renderHeadline=(t,i)=>{switch(i){case 1:return s("h1",{class:"headline"},t,s("slot",null));case 2:return s("h2",{class:"headline"},t,s("slot",null));case 3:return s("h3",{class:"headline"},t,s("slot",null));case 4:return s("h4",{class:"headline"},t,s("slot",null));case 5:return s("h5",{class:"headline"},t,s("slot",null));case 6:return s("h6",{class:"headline"},t,s("slot",null));default:return s("strong",{class:"headline"},t,s("slot",null))}},this._level=1,this._label=void 0,this._overline="",this.state={_label:""}}validateLabel(t){l(this,"_label",t)}validateLevel(t){e(this,t)}validateOverline(t){l(this,"_overline",t)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateOverline(this._overline)}render(){return s(i,null,this.renderHeadline(this.state._label,this.state._level),this.state._overline&&s("span",{class:"overline"},this.state._overline))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_overline:["validateOverline"]}}},h=class{constructor(s){t(this,s),this._alert=!0,this._disabled=!1,this._error="",this._hideLabel=!1,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._readOnly=!1,this._renderNoLabel=!1,this._required=!1,this._smartButton=void 0,this._touched=!1}render(){var t,e,l,a;const r="string"==typeof this._error&&this._error.length>0&&!0===this._touched,n="string"==typeof this._hint&&this._hint.length>0,o=!0===this._hideLabel&&!0!==this._required;return s(i,{class:{disabled:!0===this._disabled,error:!0===r,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&s("label",{id:`${this._id}-label`,hidden:o,htmlFor:this._id},s("span",null,s("slot",{name:"label"}))),n&&s("span",{class:"hint",id:`${this._id}-hint`},this._hint),s("div",{class:{input:!0,"icon-left":"object"==typeof(null===(t=this._icon)||void 0===t?void 0:t.left),"icon-right":"object"==typeof(null===(e=this._icon)||void 0===e?void 0:e.right)}},s("div",{class:"icons"},(null===(l=this._icon)||void 0===l?void 0:l.left)?s("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}):s("i",null),(null===(a=this._icon)||void 0===a?void 0:a.right)?s("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon}):s("i",null)),s("slot",{name:"input"}),"object"==typeof this._smartButton&&null!==this._smartButton&&s("kol-button-wc",{_ariaLabel:this._smartButton._ariaLabel,_customClass:this._smartButton._customClass,_disabled:this._smartButton._disabled,_icon:this._smartButton._icon,_iconOnly:!0,_id:this._smartButton._id,_label:this._smartButton._label,_on:this._smartButton._on,_tooltipAlign:this._smartButton._tooltipAlign,_variant:this._smartButton._variant})),r&&s("kol-alert",{class:"error",id:`${this._id}-error`,_alert:this._alert,_type:"error",_variant:"msg"},this._error),Array.isArray(this._list)&&this._list.length>0&&s("datalist",{id:`${this._id}-list`},this._list.map((t=>s("option",{value:t})))))}};export{a as kol_heading_wc,h as kol_input};
@@ -1 +1 @@
1
- {"version":3,"names":["KolHeadingWc","this","renderHeadline","label","level","h","class","_label","validateLabel","value","watchString","validateLevel","watchHeadingLevel","validateOverline","componentWillLoad","_level","_overline","render","Host","state","KolInput","hasError","_error","length","_touched","hasHint","_hint","hideLabel","_hideLabel","_required","disabled","_disabled","error","_readOnly","required","touched","_renderNoLabel","htmlFor","_id","id","style","height","undefined","margin","padding","visibility","name","input","_a","_icon","left","_b","right","_c","_ariaLabel","icon","_d","_smartButton","_customClass","_iconOnly","_on","_tooltipAlign","_variant","_alert","_type","Array","isArray","_list","map","option"],"sources":["./src/components/heading/component.tsx","./src/components/input/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchHeadingLevel } from './validation';\nimport { watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\toverline: string;\n\tlevel: HeadingLevel;\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@Component({\n\ttag: 'kol-heading-wc',\n\tshadow: false,\n})\nexport class KolHeadingWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder ob es keine Überschrift ist, sondern nur fett gedruckt.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt den Text der Überschrift an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Beschriftung an.\n\t */\n\t@Prop() public _overline?: string = '';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_label: '',\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', 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('_overline')\n\tpublic validateOverline(value?: string): void {\n\t\twatchString(this, '_overline', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOverline(this._overline);\n\t}\n\n\tprivate readonly renderHeadline = (label: string, level?: HeadingLevel): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn (\n\t\t\t\t\t<h1 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h1>\n\t\t\t\t);\n\t\t\tcase 2:\n\t\t\t\treturn (\n\t\t\t\t\t<h2 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h2>\n\t\t\t\t);\n\t\t\tcase 3:\n\t\t\t\treturn (\n\t\t\t\t\t<h3 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h3>\n\t\t\t\t);\n\t\t\tcase 4:\n\t\t\t\treturn (\n\t\t\t\t\t<h4 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h4>\n\t\t\t\t);\n\t\t\tcase 5:\n\t\t\t\treturn (\n\t\t\t\t\t<h5 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h5>\n\t\t\t\t);\n\t\t\tcase 6:\n\t\t\t\treturn (\n\t\t\t\t\t<h6 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h6>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t<strong class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</strong>\n\t\t\t\t);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{this.renderHeadline(this.state._label, this.state._level)}\n\t\t\t\t{this.state._overline && <span class=\"overline\">{this.state._overline}</span>}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n","/* eslint-disable jsx-a11y/label-has-associated-control */\nimport { Component, h, Host, JSX, Prop } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriCustomIcon } from '../../types/icon';\n\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { Props } from './types';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-input',\n\tshadow: false,\n})\nexport class KolInput implements Props {\n\tpublic render(): JSX.Element {\n\t\tconst hasError = typeof this._error === 'string' && this._error.length > 0 && this._touched === true;\n\t\tconst hasHint = typeof this._hint === 'string' && this._hint.length > 0;\n\t\tconst hideLabel = this._hideLabel === true && this._required !== true;\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\tdisabled: this._disabled === true,\n\t\t\t\t\terror: hasError === true,\n\t\t\t\t\t'read-only': this._readOnly === true,\n\t\t\t\t\trequired: this._required === true,\n\t\t\t\t\ttouched: this._touched === true,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this._renderNoLabel === false && (\n\t\t\t\t\t<label\n\t\t\t\t\t\thtmlFor={this._id}\n\t\t\t\t\t\tid={`${this._id}-label`}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\theight: hideLabel ? '0' : undefined,\n\t\t\t\t\t\t\tmargin: hideLabel ? '0' : undefined,\n\t\t\t\t\t\t\tpadding: hideLabel ? '0' : undefined,\n\t\t\t\t\t\t\tvisibility: hideLabel ? 'hidden' : undefined,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</label>\n\t\t\t\t)}\n\t\t\t\t{hasHint && (\n\t\t\t\t\t<span class=\"hint\" id={`${this._id}-hint`}>\n\t\t\t\t\t\t{this._hint}\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tinput: true,\n\t\t\t\t\t\t'icon-left': typeof this._icon?.left === 'object',\n\t\t\t\t\t\t'icon-right': typeof this._icon?.right === 'object',\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{/* grid grid-cols-2 justify-between h-0 mx-3 my-2 */}\n\t\t\t\t\t<div class=\"icons\">\n\t\t\t\t\t\t{this._icon?.left ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.left as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t\t{this._icon?.right ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.right as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t</div>\n\t\t\t\t\t<slot name=\"input\"></slot>\n\t\t\t\t\t{typeof this._smartButton === 'object' && this._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this._smartButton._id}\n\t\t\t\t\t\t\t_label={this._smartButton._label}\n\t\t\t\t\t\t\t_on={this._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasError && (\n\t\t\t\t\t<kol-alert class=\"error\" id={`${this._id}-error`} _alert={this._alert} _type=\"error\" _variant=\"msg\">\n\t\t\t\t\t\t{this._error}\n\t\t\t\t\t</kol-alert>\n\t\t\t\t)}\n\t\t\t\t{Array.isArray(this._list) && this._list.length > 0 && (\n\t\t\t\t\t<datalist id={`${this._id}-list`}>\n\t\t\t\t\t\t{this._list.map((option: string) => (\n\t\t\t\t\t\t\t<option value={option} />\n\t\t\t\t\t\t))}\n\t\t\t\t\t</datalist>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string = '';\n\n\t/**\n\t * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: KoliBriHorizontalIcon;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagswörter an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt an, ob die Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Komponente kein Label rendern soll.\n\t */\n\t@Prop({ reflect: true }) public _renderNoLabel?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Checkbox ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean = false;\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?: ButtonProps;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ reflect: true }) public _touched?: boolean = false;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["KolHeadingWc","this","renderHeadline","label","level","h","class","_label","validateLabel","value","watchString","validateLevel","watchHeadingLevel","validateOverline","componentWillLoad","_level","_overline","render","Host","state","KolInput","hasError","_error","length","_touched","hasHint","_hint","hideLabel","_hideLabel","_required","disabled","_disabled","error","_readOnly","required","touched","_renderNoLabel","id","_id","hidden","htmlFor","name","input","_a","_icon","left","_b","right","_c","_ariaLabel","icon","_d","_smartButton","_customClass","_iconOnly","_on","_tooltipAlign","_variant","_alert","_type","Array","isArray","_list","map","option"],"sources":["./src/components/heading/component.tsx","./src/components/input/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchHeadingLevel } from './validation';\nimport { watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\toverline: string;\n\tlevel: HeadingLevel;\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@Component({\n\ttag: 'kol-heading-wc',\n\tshadow: false,\n})\nexport class KolHeadingWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder ob es keine Überschrift ist, sondern nur fett gedruckt.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt den Text der Überschrift an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Beschriftung an.\n\t */\n\t@Prop() public _overline?: string = '';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_label: '',\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', 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('_overline')\n\tpublic validateOverline(value?: string): void {\n\t\twatchString(this, '_overline', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOverline(this._overline);\n\t}\n\n\tprivate readonly renderHeadline = (label: string, level?: HeadingLevel): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn (\n\t\t\t\t\t<h1 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h1>\n\t\t\t\t);\n\t\t\tcase 2:\n\t\t\t\treturn (\n\t\t\t\t\t<h2 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h2>\n\t\t\t\t);\n\t\t\tcase 3:\n\t\t\t\treturn (\n\t\t\t\t\t<h3 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h3>\n\t\t\t\t);\n\t\t\tcase 4:\n\t\t\t\treturn (\n\t\t\t\t\t<h4 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h4>\n\t\t\t\t);\n\t\t\tcase 5:\n\t\t\t\treturn (\n\t\t\t\t\t<h5 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h5>\n\t\t\t\t);\n\t\t\tcase 6:\n\t\t\t\treturn (\n\t\t\t\t\t<h6 class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h6>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t<strong class=\"headline\">\n\t\t\t\t\t\t{label}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</strong>\n\t\t\t\t);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{this.renderHeadline(this.state._label, this.state._level)}\n\t\t\t\t{this.state._overline && <span class=\"overline\">{this.state._overline}</span>}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n","/* eslint-disable jsx-a11y/label-has-associated-control */\nimport { Component, h, Host, JSX, Prop } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriCustomIcon } from '../../types/icon';\n\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { Props } from './types';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-input',\n\tshadow: false,\n})\nexport class KolInput implements Props {\n\tpublic render(): JSX.Element {\n\t\tconst hasError = typeof this._error === 'string' && this._error.length > 0 && this._touched === true;\n\t\tconst hasHint = typeof this._hint === 'string' && this._hint.length > 0;\n\t\tconst hideLabel = this._hideLabel === true && this._required !== true;\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\tdisabled: this._disabled === true,\n\t\t\t\t\terror: hasError === true,\n\t\t\t\t\t'read-only': this._readOnly === true,\n\t\t\t\t\trequired: this._required === true,\n\t\t\t\t\ttouched: this._touched === true,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this._renderNoLabel === false && (\n\t\t\t\t\t<label id={`${this._id}-label`} hidden={hideLabel} htmlFor={this._id}>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</label>\n\t\t\t\t)}\n\t\t\t\t{hasHint && (\n\t\t\t\t\t<span class=\"hint\" id={`${this._id}-hint`}>\n\t\t\t\t\t\t{this._hint}\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tinput: true,\n\t\t\t\t\t\t'icon-left': typeof this._icon?.left === 'object',\n\t\t\t\t\t\t'icon-right': typeof this._icon?.right === 'object',\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{/* grid grid-cols-2 justify-between h-0 mx-3 my-2 */}\n\t\t\t\t\t<div class=\"icons\">\n\t\t\t\t\t\t{this._icon?.left ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.left as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t\t{this._icon?.right ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.right as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t</div>\n\t\t\t\t\t<slot name=\"input\"></slot>\n\t\t\t\t\t{typeof this._smartButton === 'object' && this._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this._smartButton._id}\n\t\t\t\t\t\t\t_label={this._smartButton._label}\n\t\t\t\t\t\t\t_on={this._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasError && (\n\t\t\t\t\t<kol-alert class=\"error\" id={`${this._id}-error`} _alert={this._alert} _type=\"error\" _variant=\"msg\">\n\t\t\t\t\t\t{this._error}\n\t\t\t\t\t</kol-alert>\n\t\t\t\t)}\n\t\t\t\t{Array.isArray(this._list) && this._list.length > 0 && (\n\t\t\t\t\t<datalist id={`${this._id}-list`}>\n\t\t\t\t\t\t{this._list.map((option: string) => (\n\t\t\t\t\t\t\t<option value={option} />\n\t\t\t\t\t\t))}\n\t\t\t\t\t</datalist>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string = '';\n\n\t/**\n\t * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: KoliBriHorizontalIcon;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagswörter an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt an, ob die Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Komponente kein Label rendern soll.\n\t */\n\t@Prop({ reflect: true }) public _renderNoLabel?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Checkbox ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean = false;\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?: ButtonProps;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ reflect: true }) public _touched?: boolean = false;\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as o}from"./index-50adf9a0.js";const r=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}:host>kol-heading-wc{display:grid}:host>kol-heading-wc>.overline{order:1}:host>kol-heading-wc>.headline{order:2}",e=class{constructor(o){i(this,o),this._level=void 0,this._label=void 0,this._overline=""}render(){return o("kol-heading-wc",{_label:this._label,_level:this._level,_overline:this._overline},o("slot",null))}};e.style={default:r};export{e as kol_heading};
4
+ import{r as o,h as i}from"./index-50adf9a0.js";const r=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host{font-family:inherit;font-size:inherit}:host *{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{display:inline-block}a,button{background-color:transparent;border:none;font-size:inherit;margin:0;padding:0;transition-duration:0.5s;transition-property:background-color, color, border-color}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}kol-span-wc>kol-icon,kol-span-wc>span>kol-icon{display:inline-grid;place-items:center;width:1em;height:1em}a,button,input,select,textarea{appearance:none;cursor:pointer}a.icon-only>kol-span-wc>span>span,button.icon-only>kol-span-wc>span>span{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--kolibri-font-family);font-size:var(--kolibri-font-size);margin:0;padding:0}:host>kol-heading-wc{display:grid}:host>kol-heading-wc>.overline{order:1}:host>kol-heading-wc>.headline{order:2}",n=class{constructor(i){o(this,i),this._level=void 0,this._label=void 0,this._overline=""}render(){return i("kol-heading-wc",{_label:this._label,_level:this._level,_overline:this._overline},i("slot",null))}};n.style={default:r};export{n as kol_heading};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolHeading","render","h","_label","this","_level","_overline"],"sources":["./src/components/heading/style.css?tag=kol-heading&mode=default&encapsulation=shadow","./src/components/heading/shadow.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > kol-heading-wc {\n\tdisplay: grid;\n}\n:host > kol-heading-wc > .overline {\n\torder: 1;\n}\n:host > kol-heading-wc > .headline {\n\torder: 2;\n}\n","import { Component, h, JSX, Prop } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { Props } from './component';\n\n@Component({\n\ttag: 'kol-heading',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolHeading implements Props {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<kol-heading-wc _label={this._label} _level={this._level} _overline={this._overline}>\n\t\t\t\t<slot />\n\t\t\t</kol-heading-wc>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder ob es keine Überschrift ist, sondern nur fett gedruckt.\n\t */\n\t@Prop() public _level?: HeadingLevel;\n\n\t/**\n\t * Gibt den Text der Überschrift an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Beschriftung an.\n\t */\n\t@Prop() public _overline?: string = '';\n}\n"],"mappings":";;;+CAAA,MAAMA,EAAkB,47C,MCYXC,EAAU,M,oFAsBc,E,CArB7BC,SACN,OACCC,EAAA,kBAAgBC,OAAQC,KAAKD,OAAQE,OAAQD,KAAKC,OAAQC,UAAWF,KAAKE,WACzEJ,EAAA,a"}
1
+ {"version":3,"names":["defaultStyleCss","KolHeading","render","h","_label","this","_level","_overline"],"sources":["./src/components/heading/style.css?tag=kol-heading&mode=default&encapsulation=shadow","./src/components/heading/shadow.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > kol-heading-wc {\n\tdisplay: grid;\n}\n:host > kol-heading-wc > .overline {\n\torder: 1;\n}\n:host > kol-heading-wc > .headline {\n\torder: 2;\n}\n","import { Component, h, JSX, Prop } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { Props } from './component';\n\n@Component({\n\ttag: 'kol-heading',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolHeading implements Props {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<kol-heading-wc _label={this._label} _level={this._level} _overline={this._overline}>\n\t\t\t\t<slot />\n\t\t\t</kol-heading-wc>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder ob es keine Überschrift ist, sondern nur fett gedruckt.\n\t */\n\t@Prop() public _level?: HeadingLevel;\n\n\t/**\n\t * Gibt den Text der Überschrift an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Beschriftung an.\n\t */\n\t@Prop() public _overline?: string = '';\n}\n"],"mappings":";;;+CAAA,MAAMA,EAAkB,snD,MCYXC,EAAU,M,oFAsBc,E,CArB7BC,SACN,OACCC,EAAA,kBAAgBC,OAAQC,KAAKD,OAAQE,OAAQD,KAAKC,OAAQC,UAAWF,KAAKE,WACzEJ,EAAA,a"}