@public-ui/components 1.5.0-rc.18 → 1.5.0-rc.19

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 (419) hide show
  1. package/cheat-sheet.html +47 -53
  2. package/custom-elements.json +55 -9
  3. package/dist/cjs/{floating-ui.dom.esm-f2716ff9.js → floating-ui.dom.esm-a89c1e0e.js} +1 -1
  4. package/dist/cjs/floating-ui.dom.esm-a89c1e0e.js.map +1 -0
  5. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  6. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  7. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  8. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +4 -0
  10. package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -0
  11. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  12. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  13. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  14. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  15. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  16. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  17. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  18. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  19. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  20. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  21. package/dist/cjs/kol-button-wc_3.cjs.entry.js +1 -1
  22. package/dist/cjs/kol-button-wc_3.cjs.entry.js.map +1 -1
  23. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  24. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  25. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  26. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  27. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  28. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  29. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  30. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  31. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  32. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  33. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  34. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  35. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  36. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  37. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  38. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  39. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  41. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  43. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  45. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  47. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  49. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  51. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  53. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  55. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-popover.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-popover.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  75. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kolibri.cjs.js +1 -1
  94. package/dist/cjs/loader.cjs.js +1 -1
  95. package/dist/components/component.js +1 -1
  96. package/dist/components/component.js.map +1 -1
  97. package/dist/components/component10.js +1 -1
  98. package/dist/components/component10.js.map +1 -1
  99. package/dist/components/component11.js +1 -1
  100. package/dist/components/component11.js.map +1 -1
  101. package/dist/components/component12.js +1 -1
  102. package/dist/components/component12.js.map +1 -1
  103. package/dist/components/component13.js +1 -1
  104. package/dist/components/component13.js.map +1 -1
  105. package/dist/components/component14.js +1 -1
  106. package/dist/components/component14.js.map +1 -1
  107. package/dist/components/component15.js +1 -1
  108. package/dist/components/component15.js.map +1 -1
  109. package/dist/components/component6.js +1 -1
  110. package/dist/components/component6.js.map +1 -1
  111. package/dist/components/component7.js +1 -1
  112. package/dist/components/component7.js.map +1 -1
  113. package/dist/components/floating-ui.dom.esm.js +1 -1
  114. package/dist/components/floating-ui.dom.esm.js.map +1 -1
  115. package/dist/components/kol-abbr.js +1 -1
  116. package/dist/components/kol-abbr.js.map +1 -1
  117. package/dist/components/kol-accordion.js +1 -1
  118. package/dist/components/kol-accordion.js.map +1 -1
  119. package/dist/components/kol-alert-wc.d.ts +11 -0
  120. package/dist/components/kol-alert-wc.js +4 -0
  121. package/dist/components/kol-alert-wc.js.map +1 -0
  122. package/dist/components/kol-alert.js +1 -1
  123. package/dist/components/kol-breadcrumb.js +1 -1
  124. package/dist/components/kol-breadcrumb.js.map +1 -1
  125. package/dist/components/kol-button-group.js +1 -1
  126. package/dist/components/kol-button-group.js.map +1 -1
  127. package/dist/components/kol-button-link.js +1 -1
  128. package/dist/components/kol-button-link.js.map +1 -1
  129. package/dist/components/kol-button.js +1 -1
  130. package/dist/components/kol-card.js +1 -1
  131. package/dist/components/kol-card.js.map +1 -1
  132. package/dist/components/kol-details.js +1 -1
  133. package/dist/components/kol-details.js.map +1 -1
  134. package/dist/components/kol-heading.js +1 -1
  135. package/dist/components/kol-heading.js.map +1 -1
  136. package/dist/components/kol-input-adapter-leanup.js +1 -1
  137. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  138. package/dist/components/kol-input-checkbox.js +1 -1
  139. package/dist/components/kol-input-checkbox.js.map +1 -1
  140. package/dist/components/kol-input-color.js +1 -1
  141. package/dist/components/kol-input-color.js.map +1 -1
  142. package/dist/components/kol-input-date.js +1 -1
  143. package/dist/components/kol-input-date.js.map +1 -1
  144. package/dist/components/kol-input-email.js +1 -1
  145. package/dist/components/kol-input-email.js.map +1 -1
  146. package/dist/components/kol-input-file.js +1 -1
  147. package/dist/components/kol-input-file.js.map +1 -1
  148. package/dist/components/kol-input-password.js +1 -1
  149. package/dist/components/kol-input-password.js.map +1 -1
  150. package/dist/components/kol-input-radio-group.js +1 -1
  151. package/dist/components/kol-input-radio-group.js.map +1 -1
  152. package/dist/components/kol-input-range.js +1 -1
  153. package/dist/components/kol-input-range.js.map +1 -1
  154. package/dist/components/kol-input-text.js +1 -1
  155. package/dist/components/kol-input-text.js.map +1 -1
  156. package/dist/components/kol-kolibri.js +1 -1
  157. package/dist/components/kol-kolibri.js.map +1 -1
  158. package/dist/components/kol-link-button.js +1 -1
  159. package/dist/components/kol-link-button.js.map +1 -1
  160. package/dist/components/kol-link-group.js +1 -1
  161. package/dist/components/kol-link-group.js.map +1 -1
  162. package/dist/components/kol-link.js +1 -1
  163. package/dist/components/kol-logo.js +1 -1
  164. package/dist/components/kol-logo.js.map +1 -1
  165. package/dist/components/kol-modal.js +1 -1
  166. package/dist/components/kol-modal.js.map +1 -1
  167. package/dist/components/kol-nav.js +1 -1
  168. package/dist/components/kol-nav.js.map +1 -1
  169. package/dist/components/kol-popover.js +1 -1
  170. package/dist/components/kol-popover.js.map +1 -1
  171. package/dist/components/kol-progress.js +1 -1
  172. package/dist/components/kol-progress.js.map +1 -1
  173. package/dist/components/kol-quote.js +1 -1
  174. package/dist/components/kol-quote.js.map +1 -1
  175. package/dist/components/kol-skip-nav.js +1 -1
  176. package/dist/components/kol-skip-nav.js.map +1 -1
  177. package/dist/components/kol-span.js +1 -1
  178. package/dist/components/kol-span.js.map +1 -1
  179. package/dist/components/kol-spin.js +1 -1
  180. package/dist/components/kol-spin.js.map +1 -1
  181. package/dist/components/kol-table.js +1 -1
  182. package/dist/components/kol-table.js.map +1 -1
  183. package/dist/components/kol-tabs.js +1 -1
  184. package/dist/components/kol-tabs.js.map +1 -1
  185. package/dist/components/kol-textarea.js +1 -1
  186. package/dist/components/kol-textarea.js.map +1 -1
  187. package/dist/components/kol-toast.js +1 -1
  188. package/dist/components/kol-toast.js.map +1 -1
  189. package/dist/components/kol-version.js +1 -1
  190. package/dist/components/kol-version.js.map +1 -1
  191. package/dist/components/shadow.js +1 -1
  192. package/dist/components/shadow.js.map +1 -1
  193. package/dist/components/shadow2.js +1 -1
  194. package/dist/components/shadow2.js.map +1 -1
  195. package/dist/components/shadow3.js +4 -0
  196. package/dist/components/shadow3.js.map +1 -0
  197. package/dist/esm/{floating-ui.dom.esm-0fccfb1e.js → floating-ui.dom.esm-735f9fad.js} +1 -1
  198. package/dist/esm/floating-ui.dom.esm-735f9fad.js.map +1 -0
  199. package/dist/esm/kol-abbr.entry.js +1 -1
  200. package/dist/esm/kol-abbr.entry.js.map +1 -1
  201. package/dist/esm/kol-accordion.entry.js +1 -1
  202. package/dist/esm/kol-accordion.entry.js.map +1 -1
  203. package/dist/esm/kol-alert-wc_2.entry.js +4 -0
  204. package/dist/esm/kol-alert-wc_2.entry.js.map +1 -0
  205. package/dist/esm/kol-alert.entry.js +1 -1
  206. package/dist/esm/kol-alert.entry.js.map +1 -1
  207. package/dist/esm/kol-badge.entry.js +1 -1
  208. package/dist/esm/kol-badge.entry.js.map +1 -1
  209. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  210. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  211. package/dist/esm/kol-button-group.entry.js +1 -1
  212. package/dist/esm/kol-button-group.entry.js.map +1 -1
  213. package/dist/esm/kol-button-link.entry.js +1 -1
  214. package/dist/esm/kol-button-link.entry.js.map +1 -1
  215. package/dist/esm/kol-button-wc_3.entry.js +1 -1
  216. package/dist/esm/kol-button-wc_3.entry.js.map +1 -1
  217. package/dist/esm/kol-button.entry.js +1 -1
  218. package/dist/esm/kol-button.entry.js.map +1 -1
  219. package/dist/esm/kol-card.entry.js +1 -1
  220. package/dist/esm/kol-card.entry.js.map +1 -1
  221. package/dist/esm/kol-details.entry.js +1 -1
  222. package/dist/esm/kol-details.entry.js.map +1 -1
  223. package/dist/esm/kol-heading.entry.js +1 -1
  224. package/dist/esm/kol-heading.entry.js.map +1 -1
  225. package/dist/esm/kol-indented-text.entry.js +1 -1
  226. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  227. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  228. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  229. package/dist/esm/kol-input-color.entry.js +1 -1
  230. package/dist/esm/kol-input-color.entry.js.map +1 -1
  231. package/dist/esm/kol-input-email.entry.js +1 -1
  232. package/dist/esm/kol-input-email.entry.js.map +1 -1
  233. package/dist/esm/kol-input-file.entry.js +1 -1
  234. package/dist/esm/kol-input-file.entry.js.map +1 -1
  235. package/dist/esm/kol-input-number.entry.js +1 -1
  236. package/dist/esm/kol-input-number.entry.js.map +1 -1
  237. package/dist/esm/kol-input-password.entry.js +1 -1
  238. package/dist/esm/kol-input-password.entry.js.map +1 -1
  239. package/dist/esm/kol-input-radio.entry.js +1 -1
  240. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  241. package/dist/esm/kol-input-range.entry.js +1 -1
  242. package/dist/esm/kol-input-range.entry.js.map +1 -1
  243. package/dist/esm/kol-input-text.entry.js +1 -1
  244. package/dist/esm/kol-input-text.entry.js.map +1 -1
  245. package/dist/esm/kol-kolibri.entry.js +1 -1
  246. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  247. package/dist/esm/kol-link-button.entry.js +1 -1
  248. package/dist/esm/kol-link-button.entry.js.map +1 -1
  249. package/dist/esm/kol-link-group.entry.js +1 -1
  250. package/dist/esm/kol-link-group.entry.js.map +1 -1
  251. package/dist/esm/kol-link.entry.js +1 -1
  252. package/dist/esm/kol-link.entry.js.map +1 -1
  253. package/dist/esm/kol-logo.entry.js +1 -1
  254. package/dist/esm/kol-logo.entry.js.map +1 -1
  255. package/dist/esm/kol-modal.entry.js +1 -1
  256. package/dist/esm/kol-modal.entry.js.map +1 -1
  257. package/dist/esm/kol-nav.entry.js +1 -1
  258. package/dist/esm/kol-nav.entry.js.map +1 -1
  259. package/dist/esm/kol-pagination.entry.js +1 -1
  260. package/dist/esm/kol-pagination.entry.js.map +1 -1
  261. package/dist/esm/kol-popover.entry.js +1 -1
  262. package/dist/esm/kol-popover.entry.js.map +1 -1
  263. package/dist/esm/kol-progress.entry.js +1 -1
  264. package/dist/esm/kol-progress.entry.js.map +1 -1
  265. package/dist/esm/kol-quote.entry.js +1 -1
  266. package/dist/esm/kol-quote.entry.js.map +1 -1
  267. package/dist/esm/kol-select.entry.js +1 -1
  268. package/dist/esm/kol-select.entry.js.map +1 -1
  269. package/dist/esm/kol-skip-nav.entry.js +1 -1
  270. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  271. package/dist/esm/kol-span.entry.js +1 -1
  272. package/dist/esm/kol-span.entry.js.map +1 -1
  273. package/dist/esm/kol-spin.entry.js +1 -1
  274. package/dist/esm/kol-spin.entry.js.map +1 -1
  275. package/dist/esm/kol-table.entry.js +1 -1
  276. package/dist/esm/kol-table.entry.js.map +1 -1
  277. package/dist/esm/kol-tabs.entry.js +1 -1
  278. package/dist/esm/kol-tabs.entry.js.map +1 -1
  279. package/dist/esm/kol-textarea.entry.js +1 -1
  280. package/dist/esm/kol-textarea.entry.js.map +1 -1
  281. package/dist/esm/kol-toast.entry.js +1 -1
  282. package/dist/esm/kol-toast.entry.js.map +1 -1
  283. package/dist/esm/kol-tooltip.entry.js +1 -1
  284. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  285. package/dist/esm/kol-version.entry.js +1 -1
  286. package/dist/esm/kol-version.entry.js.map +1 -1
  287. package/dist/esm/kolibri.js +1 -1
  288. package/dist/esm/loader.js +1 -1
  289. package/dist/kolibri/{floating-ui.dom.esm-0fccfb1e.js → floating-ui.dom.esm-735f9fad.js} +1 -1
  290. package/dist/{esm/floating-ui.dom.esm-0fccfb1e.js.map → kolibri/floating-ui.dom.esm-735f9fad.js.map} +1 -1
  291. package/dist/kolibri/kol-abbr.entry.js +1 -1
  292. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  293. package/dist/kolibri/kol-accordion.entry.js +1 -1
  294. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  295. package/dist/kolibri/kol-alert-wc_2.entry.js +4 -0
  296. package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -0
  297. package/dist/kolibri/kol-alert.entry.js +1 -1
  298. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  299. package/dist/kolibri/kol-badge.entry.js +1 -1
  300. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  301. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  302. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  303. package/dist/kolibri/kol-button-group.entry.js +1 -1
  304. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  305. package/dist/kolibri/kol-button-link.entry.js +1 -1
  306. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  307. package/dist/kolibri/kol-button-wc_3.entry.js +1 -1
  308. package/dist/kolibri/kol-button-wc_3.entry.js.map +1 -1
  309. package/dist/kolibri/kol-button.entry.js +1 -1
  310. package/dist/kolibri/kol-button.entry.js.map +1 -1
  311. package/dist/kolibri/kol-card.entry.js +1 -1
  312. package/dist/kolibri/kol-card.entry.js.map +1 -1
  313. package/dist/kolibri/kol-details.entry.js +1 -1
  314. package/dist/kolibri/kol-details.entry.js.map +1 -1
  315. package/dist/kolibri/kol-heading.entry.js +1 -1
  316. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  317. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  318. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  319. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  320. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  321. package/dist/kolibri/kol-input-color.entry.js +1 -1
  322. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  323. package/dist/kolibri/kol-input-email.entry.js +1 -1
  324. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  325. package/dist/kolibri/kol-input-file.entry.js +1 -1
  326. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  327. package/dist/kolibri/kol-input-number.entry.js +1 -1
  328. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  329. package/dist/kolibri/kol-input-password.entry.js +1 -1
  330. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  331. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  332. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  333. package/dist/kolibri/kol-input-range.entry.js +1 -1
  334. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  335. package/dist/kolibri/kol-input-text.entry.js +1 -1
  336. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  337. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  338. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  339. package/dist/kolibri/kol-link-button.entry.js +1 -1
  340. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  341. package/dist/kolibri/kol-link-group.entry.js +1 -1
  342. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  343. package/dist/kolibri/kol-link.entry.js +1 -1
  344. package/dist/kolibri/kol-link.entry.js.map +1 -1
  345. package/dist/kolibri/kol-logo.entry.js +1 -1
  346. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  347. package/dist/kolibri/kol-modal.entry.js +1 -1
  348. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  349. package/dist/kolibri/kol-nav.entry.js +1 -1
  350. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  351. package/dist/kolibri/kol-pagination.entry.js +1 -1
  352. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  353. package/dist/kolibri/kol-popover.entry.js +1 -1
  354. package/dist/kolibri/kol-popover.entry.js.map +1 -1
  355. package/dist/kolibri/kol-progress.entry.js +1 -1
  356. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  357. package/dist/kolibri/kol-quote.entry.js +1 -1
  358. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  359. package/dist/kolibri/kol-select.entry.js +1 -1
  360. package/dist/kolibri/kol-select.entry.js.map +1 -1
  361. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  362. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  363. package/dist/kolibri/kol-span.entry.js +1 -1
  364. package/dist/kolibri/kol-span.entry.js.map +1 -1
  365. package/dist/kolibri/kol-spin.entry.js +1 -1
  366. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  367. package/dist/kolibri/kol-table.entry.js +1 -1
  368. package/dist/kolibri/kol-table.entry.js.map +1 -1
  369. package/dist/kolibri/kol-tabs.entry.js +1 -1
  370. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  371. package/dist/kolibri/kol-textarea.entry.js +1 -1
  372. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  373. package/dist/kolibri/kol-toast.entry.js +1 -1
  374. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  375. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  376. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  377. package/dist/kolibri/kol-version.entry.js +1 -1
  378. package/dist/kolibri/kol-version.entry.js.map +1 -1
  379. package/dist/kolibri/kolibri.esm.js +1 -1
  380. package/dist/kolibri/kolibri.esm.js.map +1 -1
  381. package/dist/types/components/alert/component.d.ts +1 -1
  382. package/dist/types/components/alert/shadow.d.ts +14 -0
  383. package/dist/types/components/progress/component.d.ts +4 -7
  384. package/dist/types/components.d.ts +73 -12
  385. package/dist/types/types/button-link-text.d.ts +4 -4
  386. package/doc/alert.md +6 -12
  387. package/doc/badge.md +3 -3
  388. package/doc/heading.md +2 -2
  389. package/doc/icon.md +2 -2
  390. package/doc/input-adapter-leanup.md +4 -3
  391. package/doc/input-checkbox.md +4 -3
  392. package/doc/input-color.md +4 -3
  393. package/doc/input-date.md +4 -3
  394. package/doc/input-email.md +4 -3
  395. package/doc/input-file.md +4 -3
  396. package/doc/input-number.md +4 -3
  397. package/doc/input-password.md +4 -3
  398. package/doc/input-radio-group.md +4 -3
  399. package/doc/input-radio.md +4 -3
  400. package/doc/input-range.md +4 -3
  401. package/doc/input-text.md +4 -3
  402. package/doc/pagination.md +4 -3
  403. package/doc/progress.md +11 -10
  404. package/doc/select.md +4 -3
  405. package/doc/table.md +4 -3
  406. package/doc/textarea.md +4 -3
  407. package/doc/toast.md +4 -3
  408. package/jest-test-results.json +1 -1
  409. package/package.json +1 -1
  410. package/vscode-custom-data.json +60 -6
  411. package/dist/cjs/floating-ui.dom.esm-f2716ff9.js.map +0 -1
  412. package/dist/cjs/kol-span-wc.cjs.entry.js +0 -4
  413. package/dist/cjs/kol-span-wc.cjs.entry.js.map +0 -1
  414. package/dist/esm/kol-span-wc.entry.js +0 -4
  415. package/dist/esm/kol-span-wc.entry.js.map +0 -1
  416. package/dist/kolibri/floating-ui.dom.esm-0fccfb1e.js.map +0 -1
  417. package/dist/kolibri/kol-span-wc.entry.js +0 -4
  418. package/dist/kolibri/kol-span-wc.entry.js.map +0 -1
  419. package/dist/types/core/declare.d.ts +0 -10
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as t,H as e}from"./index-50adf9a0.js";import{f as n}from"./a11y.tipps-1cea9822.js";import{n as o}from"./dev.utils-157f0499.js";import{b as s,w as a,s as r}from"./prop.validators-e402ad49.js";import{w as d}from"./validation-a42d9cc9.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const l=(t,e)=>{s(t,"_open",e)},c=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}";n("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),n("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const h=class{constructor(t){i(this,t),this.nonce=o(),this.onClick=t=>{this._open=!1===this._open,setTimeout((()=>{var e;"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onClick)&&this.state._on.onClick(t,!0===this._open)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"…",_level:1}}render(){return t(e,null,t("div",{class:{accordion:!0,open:!0===this.state._open,close:!0!==this.state._open}},t("kol-heading-wc",{_label:"",_level:this.state._level},t("kol-button-wc",{_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icon:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._heading,_on:{onClick:this.onClick}})),t("div",{class:"header"},t("slot",{name:"header"})),t("div",{"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce,hidden:!1===this.state._open,style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},t("slot",{name:"content"}))))}validateHeading(t){a(this,"_heading",t,{required:!0})}validateLevel(t){d(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onClick&&r(this,"_on",t)}validateOpen(t){l(this,t)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};h.style={default:c};export{h as kol_accordion};
4
+ import{r as i,h as t,H as e}from"./index-50adf9a0.js";import{f as n}from"./a11y.tipps-1cea9822.js";import{n as o}from"./dev.utils-157f0499.js";import{b as s,w as a,s as r}from"./prop.validators-e402ad49.js";import{w as d}from"./validation-a42d9cc9.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const l=(t,e)=>{s(t,"_open",e)},c=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}";n("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),n("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const h=class{constructor(t){i(this,t),this.nonce=o(),this.onClick=t=>{this._open=!1===this._open,setTimeout((()=>{var e;"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onClick)&&this.state._on.onClick(t,!0===this._open)}))},this._heading=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_heading:"…",_level:1}}render(){return t(e,null,t("div",{class:{accordion:!0,open:!0===this.state._open,close:!0!==this.state._open}},t("kol-heading-wc",{_label:"",_level:this.state._level},t("kol-button-wc",{_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icon:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._heading,_on:{onClick:this.onClick}})),t("div",{class:"header"},t("slot",{name:"header"})),t("div",{"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce,hidden:!1===this.state._open,style:!1===this.state._open?{display:"none",height:"0",visibility:"hidden"}:void 0},t("slot",{name:"content"}))))}validateHeading(t){a(this,"_heading",t,{required:!0})}validateLevel(t){d(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onClick&&r(this,"_on",t)}validateOpen(t){l(this,t)}componentWillLoad(){this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}};h.style={default:c};export{h as kol_accordion};
@@ -1 +1 @@
1
- {"version":3,"names":["validateOpen","component","value","watchBoolean","defaultStyleCss","featureHint","KolAccordion","this","nonce","onClick","event","_open","setTimeout","_a","state","_on","_heading","_level","render","h","Host","class","accordion","open","close","_label","_ariaControls","_ariaExpanded","_icon","name","undefined","id","hidden","style","display","height","visibility","validateHeading","watchString","required","validateLevel","watchHeadingLevel","validateOn","setState","componentWillLoad"],"sources":["./src/types/props/open.ts","./src/components/accordion/style.css?tag=kol-accordion&mode=default&encapsulation=shadow","./src/components/accordion/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Klappt das Element auf sofern gesetzt (oder true) und klappt es zu sofern nicht gesetzt (oder false).\n */\n/** en\n * If set (to true) opens/expands the element, closes if not set (or set to false).\n */\nexport type PropOpen = {\n\topen: boolean;\n};\n\n/* validator */\nexport const validateOpen = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_open', value);\n};\n","@import url(../style.css);\n@import url(../host-display-block.css);\n.accordion kol-heading-wc kol-button-wc button kol-span-wc {\n\tjustify-items: start;\n}\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { validateOpen } from '../../types/props';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { setState, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { API, KoliBriAccordionCallbacks, States } from './types';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements API {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\t// const height = this.content?.getBoundingClientRect().height ?? 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\taccordion: true,\n\t\t\t\t\t\topen: this.state._open === true,\n\t\t\t\t\t\tclose: this.state._open !== true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-heading-wc _label=\"\" _level={this.state._level}>\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t// slot=\"expert\"\n\t\t\t\t\t\t\t_ariaControls={this.nonce}\n\t\t\t\t\t\t\t_ariaExpanded={this.state._open}\n\t\t\t\t\t\t\t_icon={this.state._open ? 'codicon codicon-remove' : 'codicon codicon-add'}\n\t\t\t\t\t\t\t_label={this.state._heading}\n\t\t\t\t\t\t\t_on={{ onClick: this.onClick }}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-hidden={this.state._open === false ? 'true' : undefined}\n\t\t\t\t\t\tclass=\"content\"\n\t\t\t\t\t\tid={this.nonce}\n\t\t\t\t\t\thidden={this.state._open === false}\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tthis.state._open === false\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\tdisplay: 'none',\n\t\t\t\t\t\t\t\t\t\theight: '0',\n\t\t\t\t\t\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// style={\n\t\t\t\t\t\t// \tthis.state._open\n\t\t\t\t\t\t// \t\t? height > 0 && processEnv !== 'test' // TODO: remove this check when testing is fixed\n\t\t\t\t\t\t// \t\t\t? {\n\t\t\t\t\t\t// \t\t\t\theight: `${height}px`,\n\t\t\t\t\t\t// \t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\t}\n\t\t\t\t\t\t// \t\t\t: undefined\n\t\t\t\t\t\t// \t\t: {\n\t\t\t\t\t\t// \t\t\theight: '0',\n\t\t\t\t\t\t// \t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t// \t\t}\n\t\t\t\t\t\t// }\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Überschrift des Accordions an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Setzt den H-Level, von 1 bis 6, der Überschrift.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * Gibt an, ob das Accordion geöffnet ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t@State() public state: States = {\n\t\t_heading: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\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@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = this._open === false;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"mappings":";;;oTAeO,MAAMA,EAAe,CAACC,EAAsCC,KAClEC,EAAaF,EAAW,QAASC,EAAM,EChBxC,MAAME,EAAkB,wvBCYxBC,EAAY,+OAKZA,EAAY,mE,MAcCC,EAAY,M,yBACPC,KAAAC,MAAQA,IAsHjBD,KAAAE,QAAWC,IAClBH,KAAKI,MAAQJ,KAAKI,QAAU,MAQ5BC,YAAW,K,MACV,WAAWC,EAAAN,KAAKO,MAAMC,OAAG,MAAAF,SAAA,SAAAA,EAAEJ,WAAY,WAAY,CAClDF,KAAKO,MAAMC,IAAIN,QAAQC,EAAOH,KAAKI,QAAU,K,IAE7C,E,oCA7DoC,E,8BAU0B,M,WAEjC,CAC/BK,SAAU,IACVC,OAAQ,E,CAlFFC,SAEN,OACCC,EAACC,EAAI,KACJD,EAAA,OACCE,MAAO,CACNC,UAAW,KACXC,KAAMhB,KAAKO,MAAMH,QAAU,KAC3Ba,MAAOjB,KAAKO,MAAMH,QAAU,OAG7BQ,EAAA,kBAAgBM,OAAO,GAAGR,OAAQV,KAAKO,MAAMG,QAC5CE,EAAA,iBAECO,cAAenB,KAAKC,MACpBmB,cAAepB,KAAKO,MAAMH,MAC1BiB,MAAOrB,KAAKO,MAAMH,MAAQ,yBAA2B,sBACrDc,OAAQlB,KAAKO,MAAME,SACnBD,IAAK,CAAEN,QAASF,KAAKE,YAGvBU,EAAA,OAAKE,MAAM,UACVF,EAAA,QAAMU,KAAK,YAEZV,EAAA,qBACcZ,KAAKO,MAAMH,QAAU,MAAQ,OAASmB,UACnDT,MAAM,UACNU,GAAIxB,KAAKC,MACTwB,OAAQzB,KAAKO,MAAMH,QAAU,MAC7BsB,MACC1B,KAAKO,MAAMH,QAAU,MAClB,CACAuB,QAAS,OACTC,OAAQ,IACRC,WAAY,UAEZN,WAiBJX,EAAA,QAAMU,KAAK,c,CAiCTQ,gBAAgBnC,GACtBoC,EAAY/B,KAAM,WAAYL,EAAO,CACpCqC,SAAU,M,CAKLC,cAActC,GACpBuC,EAAkBlC,KAAML,E,CAIlBwC,WAAWxC,GACjB,UAAWA,IAAU,UAAYA,IAAU,aAAeA,EAAMO,UAAY,WAAY,CACvFkC,EAASpC,KAAM,MAAOL,E,EAKjBF,aAAaE,GACnBF,EAAaO,KAAML,E,CAGb0C,oBACNrC,KAAK8B,gBAAgB9B,KAAKS,UAC1BT,KAAKiC,cAAcjC,KAAKU,QACxBV,KAAKmC,WAAWnC,KAAKQ,KACrBR,KAAKP,aAAaO,KAAKI,M"}
1
+ {"version":3,"names":["validateOpen","component","value","watchBoolean","defaultStyleCss","featureHint","KolAccordion","this","nonce","onClick","event","_open","setTimeout","_a","state","_on","_heading","_level","render","h","Host","class","accordion","open","close","_label","_ariaControls","_ariaExpanded","_icon","name","undefined","id","hidden","style","display","height","visibility","validateHeading","watchString","required","validateLevel","watchHeadingLevel","validateOn","setState","componentWillLoad"],"sources":["./src/types/props/open.ts","./src/components/accordion/style.css?tag=kol-accordion&mode=default&encapsulation=shadow","./src/components/accordion/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Klappt das Element auf sofern gesetzt (oder true) und klappt es zu sofern nicht gesetzt (oder false).\n */\n/** en\n * If set (to true) opens/expands the element, closes if not set (or set to false).\n */\nexport type PropOpen = {\n\topen: boolean;\n};\n\n/* validator */\nexport const validateOpen = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_open', value);\n};\n","@import url(../style.css);\n@import url(../host-display-block.css);\n.accordion kol-heading-wc kol-button-wc button kol-span-wc {\n\tjustify-items: start;\n}\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { validateOpen } from '../../types/props';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { setState, watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { API, KoliBriAccordionCallbacks, States } from './types';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot header - Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements API {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\t// const height = this.content?.getBoundingClientRect().height ?? 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\taccordion: true,\n\t\t\t\t\t\topen: this.state._open === true,\n\t\t\t\t\t\tclose: this.state._open !== true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-heading-wc _label=\"\" _level={this.state._level}>\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t// slot=\"expert\"\n\t\t\t\t\t\t\t_ariaControls={this.nonce}\n\t\t\t\t\t\t\t_ariaExpanded={this.state._open}\n\t\t\t\t\t\t\t_icon={this.state._open ? 'codicon codicon-remove' : 'codicon codicon-add'}\n\t\t\t\t\t\t\t_label={this.state._heading}\n\t\t\t\t\t\t\t_on={{ onClick: this.onClick }}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<slot name=\"header\" />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-hidden={this.state._open === false ? 'true' : undefined}\n\t\t\t\t\t\tclass=\"content\"\n\t\t\t\t\t\tid={this.nonce}\n\t\t\t\t\t\thidden={this.state._open === false}\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\tthis.state._open === false\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\tdisplay: 'none',\n\t\t\t\t\t\t\t\t\t\theight: '0',\n\t\t\t\t\t\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// style={\n\t\t\t\t\t\t// \tthis.state._open\n\t\t\t\t\t\t// \t\t? height > 0 && processEnv !== 'test' // TODO: remove this check when testing is fixed\n\t\t\t\t\t\t// \t\t\t? {\n\t\t\t\t\t\t// \t\t\t\theight: `${height}px`,\n\t\t\t\t\t\t// \t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\t}\n\t\t\t\t\t\t// \t\t\t: undefined\n\t\t\t\t\t\t// \t\t: {\n\t\t\t\t\t\t// \t\t\theight: '0',\n\t\t\t\t\t\t// \t\t\toverflow: 'hidden',\n\t\t\t\t\t\t// \t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t// \t\t}\n\t\t\t\t\t\t// }\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot name=\"content\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Überschrift des Accordions an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Setzt den H-Level, von 1 bis 6, der Überschrift.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * Gibt an, ob das Accordion geöffnet ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t@State() public state: States = {\n\t\t_heading: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\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@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = this._open === false;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"mappings":";;;oTAeO,MAAMA,EAAe,CAACC,EAAsCC,KAClEC,EAAaF,EAAW,QAASC,EAAM,EChBxC,MAAME,EAAkB,0wBCYxBC,EAAY,+OAKZA,EAAY,mE,MAcCC,EAAY,M,yBACPC,KAAAC,MAAQA,IAsHjBD,KAAAE,QAAWC,IAClBH,KAAKI,MAAQJ,KAAKI,QAAU,MAQ5BC,YAAW,K,MACV,WAAWC,EAAAN,KAAKO,MAAMC,OAAG,MAAAF,SAAA,SAAAA,EAAEJ,WAAY,WAAY,CAClDF,KAAKO,MAAMC,IAAIN,QAAQC,EAAOH,KAAKI,QAAU,K,IAE7C,E,oCA7DoC,E,8BAU0B,M,WAEjC,CAC/BK,SAAU,IACVC,OAAQ,E,CAlFFC,SAEN,OACCC,EAACC,EAAI,KACJD,EAAA,OACCE,MAAO,CACNC,UAAW,KACXC,KAAMhB,KAAKO,MAAMH,QAAU,KAC3Ba,MAAOjB,KAAKO,MAAMH,QAAU,OAG7BQ,EAAA,kBAAgBM,OAAO,GAAGR,OAAQV,KAAKO,MAAMG,QAC5CE,EAAA,iBAECO,cAAenB,KAAKC,MACpBmB,cAAepB,KAAKO,MAAMH,MAC1BiB,MAAOrB,KAAKO,MAAMH,MAAQ,yBAA2B,sBACrDc,OAAQlB,KAAKO,MAAME,SACnBD,IAAK,CAAEN,QAASF,KAAKE,YAGvBU,EAAA,OAAKE,MAAM,UACVF,EAAA,QAAMU,KAAK,YAEZV,EAAA,qBACcZ,KAAKO,MAAMH,QAAU,MAAQ,OAASmB,UACnDT,MAAM,UACNU,GAAIxB,KAAKC,MACTwB,OAAQzB,KAAKO,MAAMH,QAAU,MAC7BsB,MACC1B,KAAKO,MAAMH,QAAU,MAClB,CACAuB,QAAS,OACTC,OAAQ,IACRC,WAAY,UAEZN,WAiBJX,EAAA,QAAMU,KAAK,c,CAiCTQ,gBAAgBnC,GACtBoC,EAAY/B,KAAM,WAAYL,EAAO,CACpCqC,SAAU,M,CAKLC,cAActC,GACpBuC,EAAkBlC,KAAML,E,CAIlBwC,WAAWxC,GACjB,UAAWA,IAAU,UAAYA,IAAU,aAAeA,EAAMO,UAAY,WAAY,CACvFkC,EAASpC,KAAM,MAAOL,E,EAKjBF,aAAaE,GACnBF,EAAaO,KAAML,E,CAGb0C,oBACNrC,KAAK8B,gBAAgB9B,KAAKS,UAC1BT,KAAKiC,cAAcjC,KAAKU,QACxBV,KAAKmC,WAAWnC,KAAKQ,KACrBR,KAAKP,aAAaO,KAAKI,M"}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{r as i,h as t,H as s}from"./index-50adf9a0.js";import{b as e,w as a,s as o,a as n}from"./prop.validators-e402ad49.js";import{w as l}from"./validation-a42d9cc9.js";import{a as r}from"./i18n-cbc21d6e.js";import{L as h}from"./dev.utils-157f0499.js";import"./a11y.tipps-1cea9822.js";import"./index-81bd9b41.js";import"./index-fef6600b.js";import"./reuse-3a02afb9.js";const c=i=>t("kol-icon",{class:"heading-icon",_ariaLabel:"string"==typeof i.heading&&i.heading.length>0?"":i.ariaLabel,_icon:i.icon}),d=i=>{switch(i.type){case"error":return t(c,{ariaLabel:r("kol-error"),icon:"codicon codicon-error",heading:i.heading});case"info":return t(c,{ariaLabel:r("kol-info"),icon:"codicon codicon-info",heading:i.heading});case"warning":return t(c,{ariaLabel:r("kol-warning"),icon:"codicon codicon-warning",heading:i.heading});case"success":return t(c,{ariaLabel:r("kol-success"),icon:"codicon codicon-pass",heading:i.heading});default:return t(c,{ariaLabel:r("kol-message"),icon:"codicon codicon-comment",heading:i.heading})}},u=class{constructor(t){i(this,t),this.close=()=>{var t;void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=t=>"object"==typeof t&&null!==t&&"function"==typeof t.onClose,this._alert=!1,this._hasCloser=!1,this._heading=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){var i;if(this.state._alert){try{h.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(i){h.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return t(s,{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},t("div",{class:"heading"},t(d,{heading:this.state._heading,type:this.state._type}),t("div",null,"string"==typeof this.state._heading&&(null===(i=this.state._heading)||void 0===i?void 0:i.length)>0&&t("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),"msg"===this._variant&&t("div",{class:"content"},t("slot",null))),this.state._hasCloser&&t("kol-button-wc",{class:"close",_icon:{left:{icon:"codicon codicon-close"}},_iconOnly:!0,_label:r("kol-close"),_on:this.on,_tooltipAlign:"left"})),"card"===this._variant&&t("div",{class:"content"},t("slot",null)))}validateAlert(t){e(this,"_alert",t)}validateHasCloser(t){e(this,"_hasCloser",t)}validateHeading(t){a(this,"_heading",t)}validateLevel(t){l(this,t)}validateOn(t){this.validateOnValue(t)&&o(this,"_on",{onClose:t.onClose})}validateType(t){n(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}validateVariant(t){n(this,"_variant",(t=>"card"===t||"msg"===t),new Set("AlertVariant {card, msg}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateType(this._type),this.validateVariant(this._variant)}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_type:["validateType"],_variant:["validateVariant"]}}},f=class{constructor(t){i(this,t),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 i,a,e,o;const n="string"==typeof this._error&&this._error.length>0&&!0===this._touched,l="string"==typeof this._hint&&this._hint.length>0,r=!0===this._hideLabel&&!0!==this._required;return t(s,{class:{disabled:!0===this._disabled,error:!0===n,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&t("label",{id:`${this._id}-label`,hidden:r,htmlFor:this._id},t("span",null,t("slot",{name:"label"}))),l&&t("span",{class:"hint",id:`${this._id}-hint`},this._hint),t("div",{class:{input:!0,"icon-left":"object"==typeof(null===(i=this._icon)||void 0===i?void 0:i.left),"icon-right":"object"==typeof(null===(a=this._icon)||void 0===a?void 0:a.right)}},(null===(e=this._icon)||void 0===e?void 0:e.left)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}),t("slot",{name:"input"}),"object"==typeof this._smartButton&&null!==this._smartButton&&t("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}),(null===(o=this._icon)||void 0===o?void 0:o.right)&&t("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon})),n&&t("kol-alert",{class:"error",id:`${this._id}-error`,_alert:this._alert,_type:"error",_variant:"msg"},this._error),Array.isArray(this._list)&&this._list.length>0&&t("datalist",{id:`${this._id}-list`},this._list.map((i=>t("option",{value:i})))))}};export{u as kol_alert_wc,f as kol_input};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Icon","props","h","class","_ariaLabel","heading","length","ariaLabel","_icon","icon","AlertIcon","type","translate","KolAlertWc","this","close","_a","_on","onClose","undefined","Event","on","onClick","validateOnValue","value","_level","render","state","_alert","Log","debug","navigator","vibrate","e","setTimeout","validateAlert","Host","_type","_variant","role","_heading","_label","_hasCloser","left","_iconOnly","_tooltipAlign","watchBoolean","validateHasCloser","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","setState","validateType","watchValidator","Set","validateVariant","componentWillLoad","KolInput","hasError","_error","_touched","hasHint","_hint","hideLabel","_hideLabel","_required","disabled","_disabled","error","_readOnly","required","touched","_renderNoLabel","id","_id","hidden","htmlFor","name","input","_b","right","_c","_smartButton","_customClass","_d","Array","isArray","_list","map","option"],"sources":["./src/components/alert/component.tsx","./src/components/input/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { API, States, AlertType, AlertVariant, KoliBriAlertEventCallbacks } from './types';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { translate } from '../../i18n';\nimport { Log } from '../../utils/dev.utils';\n\nconst Icon = (props: { ariaLabel: string; icon: string; heading?: string }) => {\n\treturn <kol-icon class=\"heading-icon\" _ariaLabel={typeof props.heading === 'string' && props.heading.length > 0 ? '' : props.ariaLabel} _icon={props.icon} />;\n};\n\nconst AlertIcon = (props: { heading?: string; type?: AlertType }) => {\n\tswitch (props.type) {\n\t\tcase 'error':\n\t\t\treturn <Icon ariaLabel={translate('kol-error')} icon=\"codicon codicon-error\" heading={props.heading} />;\n\t\tcase 'info':\n\t\t\treturn <Icon ariaLabel={translate('kol-info')} icon=\"codicon codicon-info\" heading={props.heading} />;\n\t\tcase 'warning':\n\t\t\treturn <Icon ariaLabel={translate('kol-warning')} icon=\"codicon codicon-warning\" heading={props.heading} />;\n\t\tcase 'success':\n\t\t\treturn <Icon ariaLabel={translate('kol-success')} icon=\"codicon codicon-pass\" heading={props.heading} />;\n\t\tdefault:\n\t\t\treturn <Icon ariaLabel={translate('kol-message')} icon=\"codicon codicon-comment\" heading={props.heading} />;\n\t}\n};\n\n@Component({\n\ttag: 'kol-alert-wc',\n\tshadow: false,\n})\nexport class KolAlertWc implements API {\n\tprivate readonly close = () => {\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClick: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tif (this.state._alert) {\n\t\t\t/**\n\t\t\t * - https://developer.mozilla.org/de/docs/Web/API/Navigator/vibrate\n\t\t\t * - https://googlechrome.github.io/samples/vibration/\n\t\t\t */\n\t\t\ttry {\n\t\t\t\tLog.debug(['Navigator should vibrate ...', navigator.vibrate([100, 75, 100, 75, 100])]);\n\t\t\t} catch (e) {\n\t\t\t\tLog.debug('Navigator does not support vibration.');\n\t\t\t}\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.validateAlert(false);\n\t\t\t}, 10000);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t[this.state._type as string]: true,\n\t\t\t\t\t[this.state._variant as string]: true,\n\t\t\t\t}}\n\t\t\t\trole={this.state._alert ? 'alert' : undefined}\n\t\t\t>\n\t\t\t\t<div class=\"heading\">\n\t\t\t\t\t<AlertIcon heading={this.state._heading} type={this.state._type} />\n\t\t\t\t\t<div>\n\t\t\t\t\t\t{typeof this.state._heading === 'string' && this.state._heading?.length > 0 && (\n\t\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this._variant === 'msg' && (\n\t\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.state._hasCloser && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t\t_icon={{\n\t\t\t\t\t\t\t\tleft: {\n\t\t\t\t\t\t\t\t\ticon: 'codicon codicon-close',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t_iconOnly\n\t\t\t\t\t\t\t_label={translate('kol-close')}\n\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t\t_tooltipAlign=\"left\"\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{this._variant === 'card' && (\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = false;\n\n\t/**\n\t * Gibt an, ob der Alert ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string;\n\n\t/**\n\t * Setzt den H-Level, von 1 bis 6, der Überschrift.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Gibt an, welche Benachrichtigungsvariante dargestellt wird.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t@State() public state: States = {\n\t\t_level: 1,\n\t};\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\twatchBoolean(this, '_hasCloser', value);\n\t}\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\tprivate validateOnValue = (value: unknown): boolean =>\n\t\ttypeof value === 'object' && value !== null && typeof (value as KoliBriAlertEventCallbacks).onClose === 'function';\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAlertEventCallbacks): void {\n\t\tif (this.validateOnValue(value)) {\n\t\t\tsetState<KoliBriAlertEventCallbacks>(\n\t\t\t\tthis,\n\t\t\t\t'_on',\n\t\t\t\t{\n\t\t\t\t\tonClose: (value as KoliBriAlertEventCallbacks).onClose,\n\t\t\t\t}\n\t\t\t\t// {\n\t\t\t\t// \tafterPatch: (value: unknown) => {\n\t\t\t\t// \t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t\t// \t},\n\t\t\t\t// }\n\t\t\t);\n\t\t\t// } else {\n\t\t\t// \tsetState<KoliBriAlertEventCallbacks>(this, '_on', null, {\n\t\t\t// \t\tafterPatch: (value: unknown) => {\n\t\t\t// \t\t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t// \t\t},\n\t\t\t// \t});\n\t\t}\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: AlertVariant): void {\n\t\twatchValidator(this, '_variant', (value) => value === 'card' || value === 'msg', new Set('AlertVariant {card, msg}'), value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateType(this._type);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n","/* 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{this._icon?.left && <kol-icon _ariaLabel=\"\" _icon={(this._icon.left as KoliBriCustomIcon).icon}></kol-icon>}\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\t{this._icon?.right && <kol-icon _ariaLabel=\"\" _icon={(this._icon.right as KoliBriCustomIcon).icon}></kol-icon>}\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 * Setzt das Feld in einen inaktiven Zustand, in dem es keine Interaktion erlaubt.\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 * Versteckt das sichtbare Label des Elements.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Gibt den 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 * Macht das Eingabeelement zu einem Pflichtfeld.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean = false;\n\n\t/**\n\t * Ermöglicht eine Schaltfläche ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (ohne label).\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 t,H as e}from"./index-50adf9a0.js";import{b as a,w as s,s as n,a as o}from"./prop.validators-e402ad49.js";import{w as r}from"./validation-a42d9cc9.js";import{a as l}from"./i18n-cbc21d6e.js";import{L as c}from"./dev.utils-157f0499.js";import"./a11y.tipps-1cea9822.js";import"./index-81bd9b41.js";import"./index-fef6600b.js";import"./reuse-3a02afb9.js";const d=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}:host>div{display:grid;place-items:stretch}.heading{display:grid;grid-template-columns:auto 1fr auto;place-items:center}.heading>div{display:grid;justify-self:start}",h=a=>t("kol-icon",{class:"heading-icon",_ariaLabel:"string"==typeof a.heading&&a.heading.length>0?"":a.ariaLabel,_icon:a.icon}),p=a=>{switch(a.type){case"error":return t(h,{ariaLabel:l("kol-error"),icon:"codicon codicon-error",heading:a.heading});case"info":return t(h,{ariaLabel:l("kol-info"),icon:"codicon codicon-info",heading:a.heading});case"warning":return t(h,{ariaLabel:l("kol-warning"),icon:"codicon codicon-warning",heading:a.heading});case"success":return t(h,{ariaLabel:l("kol-success"),icon:"codicon codicon-pass",heading:a.heading});default:return t(h,{ariaLabel:l("kol-message"),icon:"codicon codicon-comment",heading:a.heading})}},u=class{constructor(t){i(this,t),this.close=()=>{var t;void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=t=>"object"==typeof t&&null!==t&&"function"==typeof t.onClose,this._alert=!1,this._hasCloser=!1,this._heading=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){var a;if(this.state._alert){try{c.debug(["Navigator should vibrate ...",navigator.vibrate([100,75,100,75,100])])}catch(a){c.debug("Navigator does not support vibration.")}setTimeout((()=>{this.validateAlert(!1)}),1e4)}return t(e,null,t("div",{class:{[this.state._type]:!0,[this.state._variant]:!0},role:this.state._alert?"alert":void 0},t("div",{class:"heading"},t(p,{heading:this.state._heading,type:this.state._type}),t("div",null,"string"==typeof this.state._heading&&(null===(a=this.state._heading)||void 0===a?void 0:a.length)>0&&t("kol-heading-wc",{_label:this.state._heading,_level:this.state._level}),"msg"===this._variant&&t("div",{class:"content"},t("slot",null))),this.state._hasCloser&&t("kol-button-wc",{class:"close",_icon:{left:{icon:"codicon codicon-close"}},_iconOnly:!0,_label:l("kol-close"),_on:this.on,_tooltipAlign:"left"})),"card"===this._variant&&t("div",{class:"content"},t("slot",null))))}validateAlert(t){a(this,"_alert",t)}validateHasCloser(t){a(this,"_hasCloser",t)}validateHeading(t){s(this,"_heading",t)}validateLevel(t){r(this,t)}validateOn(t){this.validateOnValue(t)&&n(this,"_on",{onClose:t.onClose})}validateType(t){o(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}validateVariant(t){o(this,"_variant",(t=>"card"===t||"msg"===t),new Set("AlertVariant {card, msg}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateType(this._type),this.validateVariant(this._variant)}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_type:["validateType"],_variant:["validateVariant"]}}};u.style={default:d};export{u as kol_alert};
4
+ import{r as t,h as i,H as e}from"./index-50adf9a0.js";const n=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}kol-alert-wc{display:grid}kol-alert-wc .heading{display:flex;place-items:center}kol-alert-wc .heading>div{flex-grow:1}",a=class{constructor(i){t(this,i),this._alert=!1,this._hasCloser=!1,this._heading=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){return i(e,null,i("kol-alert-wc",{_alert:this._alert,_hasCloser:this._hasCloser,_heading:this._heading,_level:this._level,_on:this._on,_type:this._type,_variant:this._variant},i("slot",null)))}};a.style={default:n};export{a as kol_alert};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","Icon","props","h","class","_ariaLabel","heading","length","ariaLabel","_icon","icon","AlertIcon","type","translate","KolAlert","this","close","_a","_on","onClose","undefined","Event","on","onClick","validateOnValue","value","_level","render","state","_alert","Log","debug","navigator","vibrate","e","setTimeout","validateAlert","Host","_type","_variant","role","_heading","_label","_hasCloser","left","_iconOnly","_tooltipAlign","watchBoolean","validateHasCloser","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","setState","validateType","watchValidator","Set","validateVariant","componentWillLoad"],"sources":["./src/components/alert/style.css?tag=kol-alert&mode=default&encapsulation=shadow","./src/components/alert/component.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\n:host > div {\n\tdisplay: grid;\n\tplace-items: stretch;\n}\n.heading {\n\tdisplay: grid;\n\tgrid-template-columns: auto 1fr auto;\n\tplace-items: center;\n}\n.heading > div {\n\tdisplay: grid;\n\tjustify-self: start;\n}\n/* .heading .heading-icon {\n\talign-items: center;\n\talign-self: stretch;\n\tdisplay: inline-flex;\n} */\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { API, States, AlertType, AlertVariant, KoliBriAlertEventCallbacks } from './types';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { translate } from '../../i18n';\nimport { Log } from '../../utils/dev.utils';\n\nconst Icon = (props: { ariaLabel: string; icon: string; heading?: string }) => {\n\treturn <kol-icon class=\"heading-icon\" _ariaLabel={typeof props.heading === 'string' && props.heading.length > 0 ? '' : props.ariaLabel} _icon={props.icon} />;\n};\n\nconst AlertIcon = (props: { heading?: string; type?: AlertType }) => {\n\tswitch (props.type) {\n\t\tcase 'error':\n\t\t\treturn <Icon ariaLabel={translate('kol-error')} icon=\"codicon codicon-error\" heading={props.heading} />;\n\t\tcase 'info':\n\t\t\treturn <Icon ariaLabel={translate('kol-info')} icon=\"codicon codicon-info\" heading={props.heading} />;\n\t\tcase 'warning':\n\t\t\treturn <Icon ariaLabel={translate('kol-warning')} icon=\"codicon codicon-warning\" heading={props.heading} />;\n\t\tcase 'success':\n\t\t\treturn <Icon ariaLabel={translate('kol-success')} icon=\"codicon codicon-pass\" heading={props.heading} />;\n\t\tdefault:\n\t\t\treturn <Icon ariaLabel={translate('kol-message')} icon=\"codicon codicon-comment\" heading={props.heading} />;\n\t}\n};\n\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements API {\n\tprivate readonly close = () => {\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClick: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tif (this.state._alert) {\n\t\t\t/**\n\t\t\t * - https://developer.mozilla.org/de/docs/Web/API/Navigator/vibrate\n\t\t\t * - https://googlechrome.github.io/samples/vibration/\n\t\t\t */\n\t\t\ttry {\n\t\t\t\tLog.debug(['Navigator should vibrate ...', navigator.vibrate([100, 75, 100, 75, 100])]);\n\t\t\t} catch (e) {\n\t\t\t\tLog.debug('Navigator does not support vibration.');\n\t\t\t}\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.validateAlert(false);\n\t\t\t}, 10000);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type as string]: true,\n\t\t\t\t\t\t[this.state._variant as string]: true,\n\t\t\t\t\t}}\n\t\t\t\t\trole={this.state._alert ? 'alert' : undefined}\n\t\t\t\t>\n\t\t\t\t\t<div class=\"heading\">\n\t\t\t\t\t\t<AlertIcon heading={this.state._heading} type={this.state._type} />\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{typeof this.state._heading === 'string' && this.state._heading?.length > 0 && (\n\t\t\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this._variant === 'msg' && (\n\t\t\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{this.state._hasCloser && (\n\t\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t\t\t_icon={{\n\t\t\t\t\t\t\t\t\tleft: {\n\t\t\t\t\t\t\t\t\t\ticon: 'codicon codicon-close',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t_iconOnly\n\t\t\t\t\t\t\t\t_label={translate('kol-close')}\n\t\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t\t\t_tooltipAlign=\"left\"\n\t\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{this._variant === 'card' && (\n\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = false;\n\n\t/**\n\t * Gibt an, ob der Alert ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string;\n\n\t/**\n\t * Setzt den H-Level, von 1 bis 6, der Überschrift.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Gibt an, welche Benachrichtigungsvariante dargestellt wird.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t@State() public state: States = {\n\t\t_level: 1,\n\t};\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\twatchBoolean(this, '_hasCloser', value);\n\t}\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\tprivate validateOnValue = (value: unknown): boolean =>\n\t\ttypeof value === 'object' && value !== null && typeof (value as KoliBriAlertEventCallbacks).onClose === 'function';\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAlertEventCallbacks): void {\n\t\tif (this.validateOnValue(value)) {\n\t\t\tsetState<KoliBriAlertEventCallbacks>(\n\t\t\t\tthis,\n\t\t\t\t'_on',\n\t\t\t\t{\n\t\t\t\t\tonClose: (value as KoliBriAlertEventCallbacks).onClose,\n\t\t\t\t}\n\t\t\t\t// {\n\t\t\t\t// \tafterPatch: (value: unknown) => {\n\t\t\t\t// \t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t\t// \t},\n\t\t\t\t// }\n\t\t\t);\n\t\t\t// } else {\n\t\t\t// \tsetState<KoliBriAlertEventCallbacks>(this, '_on', null, {\n\t\t\t// \t\tafterPatch: (value: unknown) => {\n\t\t\t// \t\t\tthis._hasCloser = this.validateOnValue(value);\n\t\t\t// \t\t},\n\t\t\t// \t});\n\t\t}\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: AlertVariant): void {\n\t\twatchValidator(this, '_variant', (value) => value === 'card' || value === 'msg', new Set('AlertVariant {card, msg}'), value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateType(this._type);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["defaultStyleCss","KolAlert","_level","render","h","Host","_alert","this","_hasCloser","_heading","_on","_type","_variant"],"sources":["./src/components/alert/style.css?tag=kol-alert&mode=default&encapsulation=shadow","./src/components/alert/shadow.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\nkol-alert-wc {\n\tdisplay: grid;\n}\nkol-alert-wc .heading {\n\tdisplay: flex;\n\tplace-items: center;\n}\nkol-alert-wc .heading > div {\n\tflex-grow: 1;\n}\n","import { Component, h, Host, JSX, Prop, State } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { AlertType, AlertVariant, KoliBriAlertEventCallbacks, Props, States } from './types';\n\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements Props {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-alert-wc\n\t\t\t\t\t_alert={this._alert}\n\t\t\t\t\t_hasCloser={this._hasCloser}\n\t\t\t\t\t_heading={this._heading}\n\t\t\t\t\t_level={this._level}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_variant={this._variant}\n\t\t\t\t>\n\t\t\t\t\t<slot />\n\t\t\t\t</kol-alert-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = false;\n\n\t/**\n\t * Gibt an, ob der Alert ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string;\n\n\t/**\n\t * Setzt den H-Level, von 1 bis 6, der Überschrift.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Gibt an, welche Benachrichtigungsvariante dargestellt wird.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t@State() public state: States = {\n\t\t_level: 1,\n\t};\n}\n"],"mappings":";;;sDAAA,MAAMA,EAAkB,izB,MCYXC,EAAQ,M,qCAsB+B,M,gBAKI,M,oCAUhB,E,8BAUJ,U,cAKM,M,WAET,CAC/BC,OAAQ,E,CAtDFC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,gBACCE,OAAQC,KAAKD,OACbE,WAAYD,KAAKC,WACjBC,SAAUF,KAAKE,SACfP,OAAQK,KAAKL,OACbQ,IAAKH,KAAKG,IACVC,MAAOJ,KAAKI,MACZC,SAAUL,KAAKK,UAEfR,EAAA,c"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as o}from"./index-50adf9a0.js";import{h as s,v as a}from"./color-32939623.js";import{f as e,a as n}from"./a11y.tipps-1cea9822.js";import{o as r,p as l,s as h}from"./prop.validators-e402ad49.js";import{v as d}from"./label-d51b1a57.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const p=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>span{display:inline-flex;place-items:center}:host>span>kol-button-wc button{color:inherit}";e("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const c=class{constructor(o){t(this,o),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{const o=s(t);this.bgColorStr=o.backgroundColor,this.colorStr=o.foregroundColor},this._color="#000",this._icon=void 0,this._iconOnly=!1,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"},_label:"…"}}render(){return i(o,null,i("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},i("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&i("kol-button-wc",{_ariaLabel:this.state._smartButton._ariaLabel,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_icon:this.state._smartButton._icon,_iconOnly:!0,_id:this.state._smartButton._id,_label:this.state._smartButton._label,_on:this.state._smartButton._on,_tooltipAlign:this.state._smartButton._tooltipAlign,_variant:this.state._smartButton._variant})))}validateColor(t){a(this,t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateLabel(t){d(this,t,{hooks:{afterPatch:t=>{"string"==typeof t&&t.length>32&&n(`[KolBadge] The label is too long for a badge (${t.length} > 32).`)}}})}validateSmartButton(t){r(t,(()=>{try{t=l(t)}catch(t){}h(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateLabel(this._label),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_label:["validateLabel"],_smartButton:["validateSmartButton"]}}};c.style={default:p};export{c as kol_badge};
4
+ import{r as t,h as i,H as o}from"./index-50adf9a0.js";import{h as s,v as a}from"./color-32939623.js";import{f as e,a as n}from"./a11y.tipps-1cea9822.js";import{o as r,p as l,s as h}from"./prop.validators-e402ad49.js";import{v as d}from"./label-d51b1a57.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const p=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>span{display:inline-flex;place-items:center}:host>span>kol-button-wc button{color:inherit}";e("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const c=class{constructor(o){t(this,o),this.bgColorStr="#000",this.colorStr="#fff",this.handleColorChange=t=>{const o=s(t);this.bgColorStr=o.backgroundColor,this.colorStr=o.foregroundColor},this._color="#000",this._icon=void 0,this._iconOnly=!1,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"},_label:"…"}}render(){return i(o,null,i("span",{class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},i("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label}),"object"==typeof this.state._smartButton&&null!==this.state._smartButton&&i("kol-button-wc",{_ariaLabel:this.state._smartButton._ariaLabel,_customClass:this.state._smartButton._customClass,_disabled:this.state._smartButton._disabled,_icon:this.state._smartButton._icon,_iconOnly:!0,_id:this.state._smartButton._id,_label:this.state._smartButton._label,_on:this.state._smartButton._on,_tooltipAlign:this.state._smartButton._tooltipAlign,_variant:this.state._smartButton._variant})))}validateColor(t){a(this,t,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateLabel(t){d(this,t,{hooks:{afterPatch:t=>{"string"==typeof t&&t.length>32&&n(`[KolBadge] The label is too long for a badge (${t.length} > 32).`)}}})}validateSmartButton(t){r(t,(()=>{try{t=l(t)}catch(t){}h(this,"_smartButton",t)}))}componentWillLoad(){this.validateColor(this._color),this.validateLabel(this._label),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_label:["validateLabel"],_smartButton:["validateSmartButton"]}}};c.style={default:p};export{c as kol_badge};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","featureHint","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","colorPair","backgroundColor","foregroundColor","_color","_label","render","h","Host","class","state","_smartButton","style","color","_icon","_iconOnly","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","a11yHint","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["@import url(../style.css);\n:host > span {\n\tdisplay: inline-flex;\n\tplace-items: center;\n}\n:host > span > kol-button-wc button {\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { ColorPair, handleColorChange, PropColor, validateColor } from '../../types/props/color';\nimport { a11yHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState } from '../../utils/prop.validators';\nimport { validateLabel } from '../../types/props';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<PropColor>;\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: ColorPair;\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 * Setzt die Hintergrundfarbe.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\n\n\t/**\n\t * Iconklasse (z.B.: \"codicon codicon-home\")\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 * Setzt den sichtbaren Text des Elements.\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@State() public state: States = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t\t_label: '…', // ⚠ required\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\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@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\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":";;;yVAAA,MAAMA,EAAkB,qvBCWxBC,EAAY,uE,MA6BCC,EAAQ,M,yBACZC,KAAAC,WAAa,OACbD,KAAAE,SAAW,OAmEXF,KAAAG,kBAAqBC,IAC5B,MAAMC,EAAYF,EAAkBC,GACpCJ,KAAKC,WAAaI,EAAUC,gBAC5BN,KAAKE,SAAWG,EAAUE,eAAyB,E,YAjCH,O,oCAUK,M,6DAYtB,CAC/BC,OAAQ,CACPF,gBAAiB,OACjBC,gBAAiB,QAElBE,OAAQ,I,CA9DFC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,QACCE,MAAO,CACN,sBAAuBb,KAAKc,MAAMC,eAAiB,UAAYf,KAAKc,MAAMC,eAAiB,MAE5FC,MAAO,CACNV,gBAAiBN,KAAKC,WACtBgB,MAAOjB,KAAKE,WAGbS,EAAA,eAAaO,MAAOlB,KAAKkB,MAAOC,UAAWnB,KAAKmB,UAAWV,OAAQT,KAAKc,MAAML,gBACtET,KAAKc,MAAMC,eAAiB,UAAYf,KAAKc,MAAMC,eAAiB,MAC3EJ,EAAA,iBACCS,WAAYpB,KAAKc,MAAMC,aAAaK,WACpCC,aAAcrB,KAAKc,MAAMC,aAAaM,aACtCC,UAAWtB,KAAKc,MAAMC,aAAaO,UACnCJ,MAAOlB,KAAKc,MAAMC,aAAaG,MAC/BC,UAAW,KACXI,IAAKvB,KAAKc,MAAMC,aAAaQ,IAC7Bd,OAAQT,KAAKc,MAAMC,aAAaN,OAChCe,IAAKxB,KAAKc,MAAMC,aAAaS,IAC7BC,cAAezB,KAAKc,MAAMC,aAAaU,cACvCC,SAAU1B,KAAKc,MAAMC,aAAaW,Y,CAgDjCC,cAAcvB,GACpBuB,EAAc3B,KAAMI,EAAO,CAC1BwB,aAAc,OACdC,MAAO,CACNC,YAAa9B,KAAKG,oB,CAMd4B,cAAc3B,GACpB2B,EAAc/B,KAAMI,EAAO,CAC1ByB,MAAO,CACNG,WAAa5B,IACZ,UAAWA,IAAU,UAAYA,EAAM6B,OAAS,GAAI,CACnDC,EAAS,iDAAiD9B,EAAM6B,gB,MAQ9DE,oBAAoB/B,GAC1BgC,EAAoBhC,GAAO,KAC1B,IACCA,EAAQiC,EAAuBjC,E,CAE9B,MAAOkC,G,CAGTC,EAASvC,KAAM,eAAgBI,EAAM,G,CAIhCoC,oBACNxC,KAAK2B,cAAc3B,KAAKQ,QACxBR,KAAK+B,cAAc/B,KAAKS,QACxBT,KAAKmC,oBAAoBnC,KAAKe,a"}
1
+ {"version":3,"names":["defaultStyleCss","featureHint","KolBadge","this","bgColorStr","colorStr","handleColorChange","value","colorPair","backgroundColor","foregroundColor","_color","_label","render","h","Host","class","state","_smartButton","style","color","_icon","_iconOnly","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","a11yHint","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["@import url(../style.css);\n:host > span {\n\tdisplay: inline-flex;\n\tplace-items: center;\n}\n:host > span > kol-button-wc button {\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { ColorPair, handleColorChange, PropColor, validateColor } from '../../types/props/color';\nimport { a11yHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState } from '../../utils/prop.validators';\nimport { validateLabel } from '../../types/props';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tcolor: Stringified<PropColor>;\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: ColorPair;\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 * Setzt die Hintergrundfarbe.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\n\n\t/**\n\t * Iconklasse (z.B.: \"codicon codicon-home\")\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 * Setzt den sichtbaren Text des Elements.\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@State() public state: States = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t\t_label: '…', // ⚠ required\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\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@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\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":";;;yVAAA,MAAMA,EAAkB,uwBCWxBC,EAAY,uE,MA6BCC,EAAQ,M,yBACZC,KAAAC,WAAa,OACbD,KAAAE,SAAW,OAmEXF,KAAAG,kBAAqBC,IAC5B,MAAMC,EAAYF,EAAkBC,GACpCJ,KAAKC,WAAaI,EAAUC,gBAC5BN,KAAKE,SAAWG,EAAUE,eAAyB,E,YAjCH,O,oCAUK,M,6DAYtB,CAC/BC,OAAQ,CACPF,gBAAiB,OACjBC,gBAAiB,QAElBE,OAAQ,I,CA9DFC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,QACCE,MAAO,CACN,sBAAuBb,KAAKc,MAAMC,eAAiB,UAAYf,KAAKc,MAAMC,eAAiB,MAE5FC,MAAO,CACNV,gBAAiBN,KAAKC,WACtBgB,MAAOjB,KAAKE,WAGbS,EAAA,eAAaO,MAAOlB,KAAKkB,MAAOC,UAAWnB,KAAKmB,UAAWV,OAAQT,KAAKc,MAAML,gBACtET,KAAKc,MAAMC,eAAiB,UAAYf,KAAKc,MAAMC,eAAiB,MAC3EJ,EAAA,iBACCS,WAAYpB,KAAKc,MAAMC,aAAaK,WACpCC,aAAcrB,KAAKc,MAAMC,aAAaM,aACtCC,UAAWtB,KAAKc,MAAMC,aAAaO,UACnCJ,MAAOlB,KAAKc,MAAMC,aAAaG,MAC/BC,UAAW,KACXI,IAAKvB,KAAKc,MAAMC,aAAaQ,IAC7Bd,OAAQT,KAAKc,MAAMC,aAAaN,OAChCe,IAAKxB,KAAKc,MAAMC,aAAaS,IAC7BC,cAAezB,KAAKc,MAAMC,aAAaU,cACvCC,SAAU1B,KAAKc,MAAMC,aAAaW,Y,CAgDjCC,cAAcvB,GACpBuB,EAAc3B,KAAMI,EAAO,CAC1BwB,aAAc,OACdC,MAAO,CACNC,YAAa9B,KAAKG,oB,CAMd4B,cAAc3B,GACpB2B,EAAc/B,KAAMI,EAAO,CAC1ByB,MAAO,CACNG,WAAa5B,IACZ,UAAWA,IAAU,UAAYA,EAAM6B,OAAS,GAAI,CACnDC,EAAS,iDAAiD9B,EAAM6B,gB,MAQ9DE,oBAAoB/B,GAC1BgC,EAAoBhC,GAAO,KAC1B,IACCA,EAAQiC,EAAuBjC,E,CAE9B,MAAOkC,G,CAGTC,EAASvC,KAAM,eAAgBI,EAAM,G,CAIhCoC,oBACNxC,KAAK2B,cAAc3B,KAAKQ,QACxBR,KAAK+B,cAAc/B,KAAKS,QACxBT,KAAKmC,oBAAoBnC,KAAKe,a"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as a,F as t,H as e}from"./index-50adf9a0.js";import{b as n}from"./a11y.tipps-1cea9822.js";import{w as o}from"./prop.validators-e402ad49.js";import{w as r}from"./validation-ab9a6c0d.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const s=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}li,ul{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator):before{content:'\\f054';font-family:'Font Awesome 6 Free'}",l=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 a(e,null,a("nav",{"aria-label":this.state._ariaLabel},a("ul",null,0===this.state._links.length&&a("li",null,a("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-home"}),"…"),this.state._links.map(((e,n)=>a("li",{key:n},0!==n&&a("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-right"}),n===i?a("span",null,e._iconOnly?a("kol-icon",{_ariaLabel:e._label,_icon:"string"==typeof e._icon?e._icon:"codicon codicon-symbol-event"}):a(t,null,e._label)):a("kol-link",Object.assign({_useCase:"nav"},e,{_ariaLabel:e._label}),e._label)))))))}validateAriaLabel(a){o(this,"_ariaLabel",a,{required:!0}),n(a)}validateLinks(a){r("KolBreadcrumb",this,a)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};l.style={default:s};export{l as kol_breadcrumb};
4
+ import{r as i,h as a,F as t,H as e}from"./index-50adf9a0.js";import{b as n}from"./a11y.tipps-1cea9822.js";import{w as o}from"./prop.validators-e402ad49.js";import{w as r}from"./validation-ab9a6c0d.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-81bd9b41.js";const s=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}li,ul{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator):before{content:'\\f054';font-family:'Font Awesome 6 Free'}",l=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 a(e,null,a("nav",{"aria-label":this.state._ariaLabel},a("ul",null,0===this.state._links.length&&a("li",null,a("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-home"}),"…"),this.state._links.map(((e,n)=>a("li",{key:n},0!==n&&a("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-right"}),n===i?a("span",null,e._iconOnly?a("kol-icon",{_ariaLabel:e._label,_icon:"string"==typeof e._icon?e._icon:"codicon codicon-symbol-event"}):a(t,null,e._label)):a("kol-link",Object.assign({_useCase:"nav"},e,{_ariaLabel:e._label}),e._label)))))))}validateAriaLabel(a){o(this,"_ariaLabel",a,{required:!0}),n(a)}validateLinks(a){r("KolBreadcrumb",this,a)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};l.style={default:s};export{l 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","_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 url(../style.css);\nli,\nul {\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}\nkol-icon::part(separator) {\n\tfont-weight: 900;\n\tfont-size: 0.7em;\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 { LinkProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { a11yHintLabelingLandmarks } from '../../utils/a11y.tipps';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchNavLinks } from '../nav/validation';\n\ntype RequiredProps = {\n\tariaLabel: string;\n\tlinks: Stringified<LinkProps[]>;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tariaLabel: string;\n\tlinks: LinkProps[];\n};\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\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=\"codicon codicon-home\" />…\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=\"codicon codicon-chevron-right\" />}\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 : 'codicon codicon-symbol-event'} />\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 _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 * Setzt die Liste der darzustellenden Links.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t@State() public state: States = {\n\t\t_ariaLabel: '…', // '⚠'\n\t\t_links: [],\n\t};\n\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@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolBreadcrumb', this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateLinks(this._links);\n\t}\n}\n"],"mappings":";;;iSAAA,MAAMA,EAAkB,q4B,MC8BXC,EAAa,M,oFAgDO,CAC/BC,WAAY,IACZC,OAAQ,G,CAjDFC,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,yBAAyB,KAGxDL,KAAKC,MAAMJ,OAAOS,KAAI,CAACC,EAAMC,IAE5BL,EAAA,MAAIM,IAAKD,GACPA,IAAU,GAAKL,EAAA,YAAUP,WAAW,GAAGS,MAAM,kCAC7CG,IAAUT,EACVI,EAAA,YACEI,EAAKG,UACLP,EAAA,YAAUP,WAAYW,EAAKI,OAAQN,aAAcE,EAAKF,QAAU,SAAWE,EAAKF,MAAQ,iCAExFF,EAACS,EAAQ,KAAEL,EAAKI,SAIlBR,EAAA,WAAAU,OAAAC,OAAA,CAAUC,SAAS,OAAUR,EAAI,CAAEX,WAAYW,EAAKI,SAClDJ,EAAKI,a,CA4BTK,kBAAkBC,GACxBC,EAAYlB,KAAM,aAAciB,EAAO,CACtCE,SAAU,OAEXC,EAA0BH,E,CAIpBI,cAAcJ,GACpBK,EAAc,gBAAiBtB,KAAMiB,E,CAG/BM,oBACNvB,KAAKgB,kBAAkBhB,KAAKJ,YAC5BI,KAAKqB,cAAcrB,KAAKH,O"}
1
+ {"version":3,"names":["defaultStyleCss","KolBreadcrumb","_ariaLabel","_links","render","lastIndex","this","state","length","h","Host","_icon","map","link","index","key","_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 url(../style.css);\nli,\nul {\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}\nkol-icon::part(separator) {\n\tfont-weight: 900;\n\tfont-size: 0.7em;\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 { LinkProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { a11yHintLabelingLandmarks } from '../../utils/a11y.tipps';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchNavLinks } from '../nav/validation';\n\ntype RequiredProps = {\n\tariaLabel: string;\n\tlinks: Stringified<LinkProps[]>;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tariaLabel: string;\n\tlinks: LinkProps[];\n};\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\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=\"codicon codicon-home\" />…\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=\"codicon codicon-chevron-right\" />}\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 : 'codicon codicon-symbol-event'} />\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 _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 * Setzt die Liste der darzustellenden Links.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t@State() public state: States = {\n\t\t_ariaLabel: '…', // '⚠'\n\t\t_links: [],\n\t};\n\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@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolBreadcrumb', this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateLinks(this._links);\n\t}\n}\n"],"mappings":";;;iSAAA,MAAMA,EAAkB,u5B,MC8BXC,EAAa,M,oFAgDO,CAC/BC,WAAY,IACZC,OAAQ,G,CAjDFC,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,yBAAyB,KAGxDL,KAAKC,MAAMJ,OAAOS,KAAI,CAACC,EAAMC,IAE5BL,EAAA,MAAIM,IAAKD,GACPA,IAAU,GAAKL,EAAA,YAAUP,WAAW,GAAGS,MAAM,kCAC7CG,IAAUT,EACVI,EAAA,YACEI,EAAKG,UACLP,EAAA,YAAUP,WAAYW,EAAKI,OAAQN,aAAcE,EAAKF,QAAU,SAAWE,EAAKF,MAAQ,iCAExFF,EAACS,EAAQ,KAAEL,EAAKI,SAIlBR,EAAA,WAAAU,OAAAC,OAAA,CAAUC,SAAS,OAAUR,EAAI,CAAEX,WAAYW,EAAKI,SAClDJ,EAAKI,a,CA4BTK,kBAAkBC,GACxBC,EAAYlB,KAAM,aAAciB,EAAO,CACtCE,SAAU,OAEXC,EAA0BH,E,CAIpBI,cAAcJ,GACpBK,EAAc,gBAAiBtB,KAAMiB,E,CAG/BM,oBACNvB,KAAKgB,kBAAkBhB,KAAKJ,YAC5BI,KAAKqB,cAAcrB,KAAKH,O"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as n,H as o}from"./index-50adf9a0.js";const i=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>kol-button-group-wc{display:inline-flex;flex-wrap:wrap}",a=class{constructor(n){t(this,n)}render(){return n(o,null,n("kol-button-group-wc",null,n("slot",null)))}};a.style={default:i};export{a as kol_button_group};
4
+ import{r as t,h as n,H as o}from"./index-50adf9a0.js";const i=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>kol-button-group-wc{display:flex;flex-wrap:wrap}",e=class{constructor(n){t(this,n)}render(){return n(o,null,n("kol-button-group-wc",null,n("slot",null)))}};e.style={default:i};export{e 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 url(../style.css);\n:host > kol-button-group-wc {\n\tdisplay: inline-flex;\n\tflex-wrap: wrap;\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,ktB,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 url(../style.css);\n:host > kol-button-group-wc {\n\tdisplay: flex;\n\tflex-wrap: wrap;\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,6tB,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 t,H as e,g as n}from"./index-50adf9a0.js";import{a as s}from"./reuse-3a02afb9.js";const o=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}:is(a,button){align-items:baseline;display:inline-flex;place-items:center;text-align:left;text-decoration-line:underline}:is(a,button):is(:focus,:hover){text-decoration-thickness:0.2em}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:#fff;left:unset;padding:1em;position:unset}kol-icon.external-link-icon{display:inline-flex}",a=class{constructor(t){i(this,t),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=void 0,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 t(e,null,t("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},t("slot",{name:"expert",slot:"expert"})))}get host(){return n(this)}};a.style={default:o};export{a as kol_button_link};
4
+ import{r as i,h as t,H as e,g as n}from"./index-50adf9a0.js";import{a as s}from"./reuse-3a02afb9.js";const o=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}a,button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}:is(a,button){align-items:baseline;display:inline-flex;place-items:center;text-align:left;text-decoration-line:underline}:is(a,button):is(:focus,:hover){text-decoration-thickness:0.2em}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:#fff;left:unset;padding:1em;position:unset}kol-icon.external-link-icon{display:inline-flex}",a=class{constructor(t){i(this,t),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=void 0,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 t(e,null,t("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},t("slot",{name:"expert",slot:"expert"})))}get host(){return n(this)}};a.style={default:o};export{a as kol_button_link};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolButtonLink","this","catchRef","ref","propagateFocus","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 url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlternativButtonLinkRole, KoliBriButtonCallbacks, KoliBriButtonType, OptionalButtonLinkProps, RequiredButtonLinkProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { propagateFocus } from '../../utils/reuse';\nimport { AriaCurrent, Alignment } from '../../types/props';\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\tpropagateFocus(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 * Iconklasse (z.B.: \"codicon codicon-home\")\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 * Setzt den sichtbaren Text des Elements.\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,8lC,MCgBXC,EAAa,M,yBAIRC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAeH,KAAKI,KAAMJ,KAAKE,IAAI,E,sLAyEkB,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","propagateFocus","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 url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlternativButtonLinkRole, KoliBriButtonCallbacks, KoliBriButtonType, OptionalButtonLinkProps, RequiredButtonLinkProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { propagateFocus } from '../../utils/reuse';\nimport { AriaCurrent, Alignment } from '../../types/props';\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\tpropagateFocus(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 * Iconklasse (z.B.: \"codicon codicon-home\")\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 * Setzt den sichtbaren Text des Elements.\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,gnC,MCgBXC,EAAa,M,yBAIRC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAeH,KAAKI,KAAMJ,KAAKE,IAAI,E,sLAyEkB,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 t,h as i,H as s,g as e}from"./index-50adf9a0.js";import{w as a}from"./button-link-0f3cba87.js";import{g as l,e as n}from"./a11y.tipps-1cea9822.js";import{n as h}from"./dev.utils-157f0499.js";import{b as d,f as r,j as o,h as c,w as u,a as f,s as v}from"./prop.validators-e402ad49.js";import{a as _}from"./reuse-3a02afb9.js";import{v as b,w as p}from"./icon-00018c54.js";import{a as m,b as y}from"./label-d51b1a57.js";import{v as g}from"./tab-index-63d1379d.js";import{p as j,a as A}from"./controller-873db1b1.js";import{a as C,w}from"./controller-0b0c0e12.js";import{w as x}from"./validation-a42d9cc9.js";import"./index-81bd9b41.js";const k=(t,i)=>{d(t,"_ariaExpanded",i)},L=(t,i)=>{d(t,"_disabled",i)},I=class{constructor(i){t(this,i),this.nonce=h(),this.catchRef=t=>{this.ref=t,_(this.host,this.ref)},this.onClick=t=>{var i,a;"submit"===this.state._type?j({form:this.host,ref:this.ref}):"reset"===this.state._type?A({form:this.host,ref:this.ref}):"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onClick)?(t.stopPropagation(),r(t,this.ref),null===(a=this.state._on)||void 0===a||a.onClick(t,this.state._value)):l("There was no button click callback configured! (_on.onClick)")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._icon=void 0,this._iconAlign=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,this._variant="normal",this.state={_icon:{},_label:"…",_on:{},_type:"button",_variant:"normal"}}render(){return i(s,null,i("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":o(this.state._ariaCurrent),"aria-expanded":c(this.state._ariaExpanded),"aria-label":!1===this.state._iconOnly?this.state._ariaLabel:void 0,"aria-labelledby":!0===this.state._iconOnly?this.nonce:void 0,"aria-selected":o(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}),i("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label},i("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&i("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){u(this,"_accessKey",t)}validateAriaControls(t){u(this,"_ariaControls",t)}validateAriaCurrent(t){f(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){k(this,t)}validateAriaLabel(t){m(this,t)}validateAriaSelected(t){d(this,"_ariaSelected",t)}validateCustomClass(t){u(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){L(this,t),!0===t&&n()}validateIcon(t){b(this,t)}validateIconAlign(t){p(this,t)}validateIconOnly(t){d(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){u(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){u(this,"_role",t)}validateTabIndex(t){g(this,t)}validateTooltipAlign(t){a(this,"_tooltipAlign",t)}validateType(t){C(this,"_type",t)}validateValue(t){v(this,"_value",t)}validateVariant(t){w(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 e(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=class{constructor(a){t(this,a),this.renderHeadline=(t,a)=>{switch(a){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.renderSecondaryHeadline=(t,a)=>{switch(a){case 1:return i("span",{class:"secondary-headline"},t);case 2:return i("h2",{class:"secondary-headline"},t);case 3:return i("h3",{class:"secondary-headline"},t);case 4:return i("h4",{class:"secondary-headline"},t);case 5:return i("h5",{class:"secondary-headline"},t);case 6:return i("h6",{class:"secondary-headline"},t);default:return i("strong",{class:"secondary-headline"},t)}},this._label=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_label:"…",_level:1}}validateLabel(t){u(this,"_label",t)}validateLevel(t){x(this,t)}validateSecondaryHeadline(t){u(this,"_secondaryHeadline",t)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return i(s,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?i("hgroup",null,this.renderHeadline(this.state._label,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._label,this.state._level))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}},S=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,a,e,l;const n="string"==typeof this._error&&this._error.length>0&&!0===this._touched,o="string"==typeof this._hint&&this._hint.length>0,r=!0===this._hideLabel&&!0!==this._required;return i(s,{class:{disabled:!0===this._disabled,error:!0===n,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&i("label",{id:`${this._id}-label`,hidden:r,htmlFor:this._id},i("span",null,i("slot",{name:"label"}))),o&&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===(a=this._icon)||void 0===a?void 0:a.right)}},(null===(e=this._icon)||void 0===e?void 0:e.left)&&i("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}),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}),(null===(l=this._icon)||void 0===l?void 0:l.right)&&i("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon})),n&&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{I as kol_button_wc,O as kol_heading_wc,S as kol_input};
4
+ import{r as t,h as i,H as s,g as a}from"./index-50adf9a0.js";import{w as e}from"./button-link-0f3cba87.js";import{g as l,e as n}from"./a11y.tipps-1cea9822.js";import{n as h}from"./dev.utils-157f0499.js";import{b as d,f as o,j as r,h as c,w as u,a as _,s as v}from"./prop.validators-e402ad49.js";import{a as f}from"./reuse-3a02afb9.js";import{v as b,w as p}from"./icon-00018c54.js";import{a as m,b as y}from"./label-d51b1a57.js";import{v as g}from"./tab-index-63d1379d.js";import{p as A,a as j}from"./controller-873db1b1.js";import{a as L,w}from"./controller-0b0c0e12.js";import{w as x}from"./validation-a42d9cc9.js";import"./index-81bd9b41.js";const C=(t,a)=>{d(t,"_ariaExpanded",a)},I=(t,a)=>{d(t,"_disabled",a)},O=class{constructor(a){t(this,a),this.nonce=h(),this.catchRef=t=>{this.ref=t,f(this.host,this.ref)},this.onClick=t=>{var a,i;"submit"===this.state._type?A({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)?(t.stopPropagation(),o(t,this.ref),null===(i=this.state._on)||void 0===i||i.onClick(t,this.state._value)):l("There was no button click callback configured! (_on.onClick)")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._icon=void 0,this._iconAlign=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,this._variant="normal",this.state={_icon:{},_label:"…",_on:{},_type:"button",_variant:"normal"}}render(){return i(s,null,i("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":r(this.state._ariaCurrent),"aria-expanded":c(this.state._ariaExpanded),"aria-label":!1===this.state._iconOnly?this.state._ariaLabel:void 0,"aria-labelledby":!0===this.state._iconOnly?this.nonce:void 0,"aria-selected":r(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}),i("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label},i("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&i("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){u(this,"_accessKey",t)}validateAriaControls(t){u(this,"_ariaControls",t)}validateAriaCurrent(t){_(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){C(this,t)}validateAriaLabel(t){m(this,t)}validateAriaSelected(t){d(this,"_ariaSelected",t)}validateCustomClass(t){u(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){I(this,t),!0===t&&n()}validateIcon(t){b(this,t)}validateIconAlign(t){p(this,t)}validateIconOnly(t){d(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){u(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){u(this,"_role",t)}validateTabIndex(t){g(this,t)}validateTooltipAlign(t){e(this,"_tooltipAlign",t)}validateType(t){L(this,"_type",t)}validateValue(t){v(this,"_value",t)}validateVariant(t){w(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"]}}},k=class{constructor(a){t(this,a),this.renderHeadline=(t,a)=>{switch(a){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.renderSecondaryHeadline=(t,a)=>{switch(a){case 1:return i("span",{class:"secondary-headline"},t);case 2:return i("h2",{class:"secondary-headline"},t);case 3:return i("h3",{class:"secondary-headline"},t);case 4:return i("h4",{class:"secondary-headline"},t);case 5:return i("h5",{class:"secondary-headline"},t);case 6:return i("h6",{class:"secondary-headline"},t);default:return i("strong",{class:"secondary-headline"},t)}},this._label=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_label:"…",_level:1}}validateLabel(t){u(this,"_label",t)}validateLevel(t){x(this,t)}validateSecondaryHeadline(t){u(this,"_secondaryHeadline",t)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return i(s,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?i("hgroup",null,this.renderHeadline(this.state._label,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._label,this.state._level))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}},S=class{constructor(a){t(this,a),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:"…"}}render(){const t=this.state._label.length>0;return i(s,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&i("kol-icon",{class:"icon top",style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),i("span",null,this.state._icon.left&&i("kol-icon",{class:"icon left",style:this.state._icon.left.style,_ariaLabel:"",_icon:this.state._icon.left.icon}),!0!==this.state._iconOnly&&this.state._label.length>0?i("span",null,this.state._label):"",i("span",{"aria-hidden":t?"true":void 0,hidden:t},i("slot",{name:"expert"})),this.state._icon.right&&i("kol-icon",{class:"icon right",style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&i("kol-icon",{class:"icon bottom",style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){b(this,t)}validateIconOnly(t){d(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{O as kol_button_wc,k as kol_heading_wc,S as kol_span_wc};