@public-ui/components 1.1.16-rc.2 → 1.1.16-rc.4

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 (297) hide show
  1. package/cheat-sheet.html +13 -13
  2. package/custom-elements.json +1 -15
  3. package/dist/cjs/button-link-53dceb58.js.map +1 -1
  4. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  5. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  10. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  11. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  12. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  13. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  14. package/dist/cjs/kol-color.cjs.entry.js +1 -1
  15. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  16. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  17. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  18. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  19. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  20. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  21. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  22. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  23. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  24. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  25. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  26. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  27. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  28. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  29. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  30. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  31. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  32. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  33. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  34. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  35. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  36. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  37. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  38. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  46. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  49. package/dist/cjs/kolibri.cjs.js +1 -1
  50. package/dist/cjs/loader.cjs.js +1 -1
  51. package/dist/components/component.js +1 -1
  52. package/dist/components/component.js.map +1 -1
  53. package/dist/components/component10.js +1 -1
  54. package/dist/components/component11.js +1 -1
  55. package/dist/components/component12.js +1 -1
  56. package/dist/components/component13.js +1 -1
  57. package/dist/components/component5.js +1 -1
  58. package/dist/components/component6.js +1 -1
  59. package/dist/components/component6.js.map +1 -1
  60. package/dist/components/component8.js +1 -1
  61. package/dist/components/kol-abbr.js +1 -1
  62. package/dist/components/kol-accordion.js +1 -1
  63. package/dist/components/kol-breadcrumb.js +1 -1
  64. package/dist/components/kol-button-group.js +1 -1
  65. package/dist/components/kol-button-link.js +1 -1
  66. package/dist/components/kol-button-link.js.map +1 -1
  67. package/dist/components/kol-button-wc.js +1 -1
  68. package/dist/components/kol-card.js +1 -1
  69. package/dist/components/kol-color.js +1 -1
  70. package/dist/components/kol-details.js +1 -1
  71. package/dist/components/kol-heading.js +1 -1
  72. package/dist/components/kol-input-checkbox.js +1 -1
  73. package/dist/components/kol-input-color.js +1 -1
  74. package/dist/components/kol-input-date.js +1 -1
  75. package/dist/components/kol-input-email.js +1 -1
  76. package/dist/components/kol-input-file.js +1 -1
  77. package/dist/components/kol-input-password.js +1 -1
  78. package/dist/components/kol-input-range.js +1 -1
  79. package/dist/components/kol-input-text.js +1 -1
  80. package/dist/components/kol-kolibri.js +1 -1
  81. package/dist/components/kol-link-button.js +1 -1
  82. package/dist/components/kol-link-button.js.map +1 -1
  83. package/dist/components/kol-link-group.js +1 -1
  84. package/dist/components/kol-logo.js +1 -1
  85. package/dist/components/kol-modal.js +1 -1
  86. package/dist/components/kol-nav.js +1 -1
  87. package/dist/components/kol-skip-nav.js +1 -1
  88. package/dist/components/kol-span.js +1 -1
  89. package/dist/components/kol-spin.js +1 -1
  90. package/dist/components/kol-table.js +1 -1
  91. package/dist/components/kol-tabs.js +1 -1
  92. package/dist/components/kol-tabs.js.map +1 -1
  93. package/dist/components/kol-textarea.js +1 -1
  94. package/dist/components/kol-toast.js +1 -1
  95. package/dist/components/kol-tooltip.js +1 -1
  96. package/dist/components/kol-version.js +1 -1
  97. package/dist/components/shadow.js +1 -1
  98. package/dist/components/shadow2.js +1 -1
  99. package/dist/esm/{a11y.tipps-d591ee77.js → a11y.tipps-ff5a1a99.js} +1 -1
  100. package/dist/esm/{a11y.tipps-d591ee77.js.map → a11y.tipps-ff5a1a99.js.map} +1 -1
  101. package/dist/esm/{app-globals-b7d289a6.js → app-globals-cc26c297.js} +1 -1
  102. package/dist/esm/{app-globals-b7d289a6.js.map → app-globals-cc26c297.js.map} +1 -1
  103. package/dist/esm/{button-link-0e3aab16.js → button-link-7b1c4be0.js} +1 -1
  104. package/dist/esm/{button-link-0e3aab16.js.map → button-link-7b1c4be0.js.map} +1 -1
  105. package/dist/esm/{controller-563ae343.js → controller-476e5aa0.js} +1 -1
  106. package/dist/esm/{controller-563ae343.js.map → controller-476e5aa0.js.map} +1 -1
  107. package/dist/esm/{controller-b9c6b90a.js → controller-98097160.js} +1 -1
  108. package/dist/esm/{controller-b9c6b90a.js.map → controller-98097160.js.map} +1 -1
  109. package/dist/esm/{controller-1e0ec378.js → controller-ad6bdf65.js} +1 -1
  110. package/dist/esm/{controller-1e0ec378.js.map → controller-ad6bdf65.js.map} +1 -1
  111. package/dist/esm/{controller-1213105c.js → controller-af756b28.js} +1 -1
  112. package/dist/esm/{controller-1213105c.js.map → controller-af756b28.js.map} +1 -1
  113. package/dist/esm/{controller-78b7b85d.js → controller-b89719ab.js} +1 -1
  114. package/dist/esm/{controller-78b7b85d.js.map → controller-b89719ab.js.map} +1 -1
  115. package/dist/esm/{controller-1dd6b29e.js → controller-e8ecf94e.js} +1 -1
  116. package/dist/esm/{controller-1dd6b29e.js.map → controller-e8ecf94e.js.map} +1 -1
  117. package/dist/esm/{devtools-cc50ca43.js → devtools-997ea90f.js} +1 -1
  118. package/dist/esm/{devtools-cc50ca43.js.map → devtools-997ea90f.js.map} +1 -1
  119. package/dist/esm/index.js +1 -1
  120. package/dist/esm/kol-abbr.entry.js +1 -1
  121. package/dist/esm/kol-accordion.entry.js +1 -1
  122. package/dist/esm/kol-alert.entry.js +1 -1
  123. package/dist/esm/kol-badge.entry.js +1 -1
  124. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  125. package/dist/esm/kol-button-group.entry.js +1 -1
  126. package/dist/esm/kol-button-link.entry.js +1 -1
  127. package/dist/esm/kol-button-link.entry.js.map +1 -1
  128. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  129. package/dist/esm/kol-button.entry.js +1 -1
  130. package/dist/esm/kol-card.entry.js +1 -1
  131. package/dist/esm/kol-color.entry.js +1 -1
  132. package/dist/esm/kol-details.entry.js +1 -1
  133. package/dist/esm/kol-form.entry.js +1 -1
  134. package/dist/esm/kol-heading-wc_2.entry.js +1 -1
  135. package/dist/esm/kol-heading.entry.js +1 -1
  136. package/dist/esm/kol-icon.entry.js +1 -1
  137. package/dist/esm/kol-indented-text.entry.js +1 -1
  138. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  139. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  140. package/dist/esm/kol-input-color.entry.js +1 -1
  141. package/dist/esm/kol-input-date.entry.js +1 -1
  142. package/dist/esm/kol-input-email.entry.js +1 -1
  143. package/dist/esm/kol-input-file.entry.js +1 -1
  144. package/dist/esm/kol-input-number.entry.js +1 -1
  145. package/dist/esm/kol-input-password.entry.js +1 -1
  146. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  147. package/dist/esm/kol-input-radio.entry.js +1 -1
  148. package/dist/esm/kol-input-range.entry.js +1 -1
  149. package/dist/esm/kol-input-text.entry.js +1 -1
  150. package/dist/esm/kol-kolibri.entry.js +1 -1
  151. package/dist/esm/kol-link-button.entry.js +1 -1
  152. package/dist/esm/kol-link-button.entry.js.map +1 -1
  153. package/dist/esm/kol-link-group.entry.js +1 -1
  154. package/dist/esm/kol-link-wc.entry.js +1 -1
  155. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  156. package/dist/esm/kol-link.entry.js +1 -1
  157. package/dist/esm/kol-logo.entry.js +1 -1
  158. package/dist/esm/kol-modal.entry.js +1 -1
  159. package/dist/esm/kol-nav.entry.js +1 -1
  160. package/dist/esm/kol-pagination.entry.js +1 -1
  161. package/dist/esm/kol-progress.entry.js +1 -1
  162. package/dist/esm/kol-select.entry.js +1 -1
  163. package/dist/esm/kol-skip-nav.entry.js +1 -1
  164. package/dist/esm/kol-span.entry.js +1 -1
  165. package/dist/esm/kol-spin.entry.js +1 -1
  166. package/dist/esm/kol-symbol.entry.js +1 -1
  167. package/dist/esm/kol-table.entry.js +1 -1
  168. package/dist/esm/kol-tabs.entry.js +1 -1
  169. package/dist/esm/kol-tabs.entry.js.map +1 -1
  170. package/dist/esm/kol-textarea.entry.js +1 -1
  171. package/dist/esm/kol-toast.entry.js +1 -1
  172. package/dist/esm/kol-tooltip.entry.js +1 -1
  173. package/dist/esm/kol-version.entry.js +1 -1
  174. package/dist/esm/kolibri.js +1 -1
  175. package/dist/esm/{label-4e702e1f.js → label-59d375aa.js} +1 -1
  176. package/dist/esm/{label-4e702e1f.js.map → label-59d375aa.js.map} +1 -1
  177. package/dist/esm/loader.js +1 -1
  178. package/dist/esm/{prop.validators-82b345aa.js → prop.validators-4cac744a.js} +1 -1
  179. package/dist/esm/{prop.validators-82b345aa.js.map → prop.validators-4cac744a.js.map} +1 -1
  180. package/dist/esm/{tab-index-f5bd7bba.js → tab-index-0b0ee76b.js} +1 -1
  181. package/dist/esm/{tab-index-f5bd7bba.js.map → tab-index-0b0ee76b.js.map} +1 -1
  182. package/dist/esm/validation-1b0ac934.js +4 -0
  183. package/dist/esm/{validation-54731d67.js.map → validation-1b0ac934.js.map} +1 -1
  184. package/dist/esm/{validation-50c2f4e0.js → validation-b0cccd61.js} +1 -1
  185. package/dist/esm/{validation-50c2f4e0.js.map → validation-b0cccd61.js.map} +1 -1
  186. package/dist/kolibri/{a11y.tipps-d591ee77.js → a11y.tipps-ff5a1a99.js} +1 -1
  187. package/dist/kolibri/{a11y.tipps-d591ee77.js.map → a11y.tipps-ff5a1a99.js.map} +0 -0
  188. package/dist/kolibri/{app-globals-b7d289a6.js → app-globals-cc26c297.js} +1 -1
  189. package/dist/kolibri/{app-globals-b7d289a6.js.map → app-globals-cc26c297.js.map} +0 -0
  190. package/dist/kolibri/{button-link-0e3aab16.js → button-link-7b1c4be0.js} +1 -1
  191. package/dist/kolibri/{button-link-0e3aab16.js.map → button-link-7b1c4be0.js.map} +1 -1
  192. package/dist/kolibri/{controller-563ae343.js → controller-476e5aa0.js} +1 -1
  193. package/dist/kolibri/{controller-563ae343.js.map → controller-476e5aa0.js.map} +0 -0
  194. package/dist/kolibri/{controller-b9c6b90a.js → controller-98097160.js} +1 -1
  195. package/dist/kolibri/{controller-b9c6b90a.js.map → controller-98097160.js.map} +0 -0
  196. package/dist/kolibri/controller-ad6bdf65.js +4 -0
  197. package/dist/kolibri/{controller-1e0ec378.js.map → controller-ad6bdf65.js.map} +0 -0
  198. package/dist/kolibri/{controller-1213105c.js → controller-af756b28.js} +1 -1
  199. package/dist/kolibri/{controller-1213105c.js.map → controller-af756b28.js.map} +0 -0
  200. package/dist/kolibri/{controller-78b7b85d.js → controller-b89719ab.js} +1 -1
  201. package/dist/kolibri/{controller-78b7b85d.js.map → controller-b89719ab.js.map} +0 -0
  202. package/dist/kolibri/{controller-1dd6b29e.js → controller-e8ecf94e.js} +1 -1
  203. package/dist/kolibri/{controller-1dd6b29e.js.map → controller-e8ecf94e.js.map} +0 -0
  204. package/dist/kolibri/devtools-997ea90f.js +4 -0
  205. package/dist/kolibri/{devtools-cc50ca43.js.map → devtools-997ea90f.js.map} +0 -0
  206. package/dist/kolibri/index.esm.js +1 -1
  207. package/dist/kolibri/kol-abbr.entry.js +1 -1
  208. package/dist/kolibri/kol-accordion.entry.js +1 -1
  209. package/dist/kolibri/kol-alert.entry.js +1 -1
  210. package/dist/kolibri/kol-badge.entry.js +1 -1
  211. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  212. package/dist/kolibri/kol-button-group.entry.js +1 -1
  213. package/dist/kolibri/kol-button-link.entry.js +1 -1
  214. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  215. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  216. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
  217. package/dist/kolibri/kol-button.entry.js +1 -1
  218. package/dist/kolibri/kol-card.entry.js +1 -1
  219. package/dist/kolibri/kol-color.entry.js +1 -1
  220. package/dist/kolibri/kol-details.entry.js +1 -1
  221. package/dist/kolibri/kol-form.entry.js +1 -1
  222. package/dist/kolibri/kol-heading-wc_2.entry.js +1 -1
  223. package/dist/kolibri/kol-heading.entry.js +1 -1
  224. package/dist/kolibri/kol-icon.entry.js +1 -1
  225. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  226. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  227. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  228. package/dist/kolibri/kol-input-color.entry.js +1 -1
  229. package/dist/kolibri/kol-input-date.entry.js +1 -1
  230. package/dist/kolibri/kol-input-email.entry.js +1 -1
  231. package/dist/kolibri/kol-input-file.entry.js +1 -1
  232. package/dist/kolibri/kol-input-number.entry.js +1 -1
  233. package/dist/kolibri/kol-input-password.entry.js +1 -1
  234. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  235. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  236. package/dist/kolibri/kol-input-range.entry.js +1 -1
  237. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  238. package/dist/kolibri/kol-input-text.entry.js +1 -1
  239. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  240. package/dist/kolibri/kol-link-button.entry.js +1 -1
  241. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  242. package/dist/kolibri/kol-link-group.entry.js +1 -1
  243. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  244. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  245. package/dist/kolibri/kol-link.entry.js +1 -1
  246. package/dist/kolibri/kol-logo.entry.js +1 -1
  247. package/dist/kolibri/kol-modal.entry.js +1 -1
  248. package/dist/kolibri/kol-nav.entry.js +1 -1
  249. package/dist/kolibri/kol-pagination.entry.js +1 -1
  250. package/dist/kolibri/kol-progress.entry.js +1 -1
  251. package/dist/kolibri/kol-select.entry.js +1 -1
  252. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  253. package/dist/kolibri/kol-span.entry.js +1 -1
  254. package/dist/kolibri/kol-spin.entry.js +1 -1
  255. package/dist/kolibri/kol-symbol.entry.js +1 -1
  256. package/dist/kolibri/kol-table.entry.js +1 -1
  257. package/dist/kolibri/kol-tabs.entry.js +1 -1
  258. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  259. package/dist/kolibri/kol-textarea.entry.js +1 -1
  260. package/dist/kolibri/kol-toast.entry.js +1 -1
  261. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  262. package/dist/kolibri/kol-version.entry.js +1 -1
  263. package/dist/kolibri/kolibri.esm.js +1 -1
  264. package/dist/kolibri/kolibri.esm.js.map +1 -1
  265. package/dist/kolibri/label-59d375aa.js +4 -0
  266. package/dist/kolibri/{label-4e702e1f.js.map → label-59d375aa.js.map} +1 -1
  267. package/dist/kolibri/{prop.validators-82b345aa.js → prop.validators-4cac744a.js} +1 -1
  268. package/dist/kolibri/{prop.validators-82b345aa.js.map → prop.validators-4cac744a.js.map} +0 -0
  269. package/dist/kolibri/{tab-index-f5bd7bba.js → tab-index-0b0ee76b.js} +1 -1
  270. package/dist/kolibri/{tab-index-f5bd7bba.js.map → tab-index-0b0ee76b.js.map} +0 -0
  271. package/dist/kolibri/validation-1b0ac934.js +4 -0
  272. package/dist/kolibri/{validation-54731d67.js.map → validation-1b0ac934.js.map} +0 -0
  273. package/dist/kolibri/{validation-50c2f4e0.js → validation-b0cccd61.js} +1 -1
  274. package/dist/kolibri/{validation-50c2f4e0.js.map → validation-b0cccd61.js.map} +0 -0
  275. package/dist/types/components/button-link/component.d.ts +3 -25
  276. package/dist/types/components/link-button/component.d.ts +8 -31
  277. package/dist/types/components/tabs/component.d.ts +0 -1
  278. package/dist/types/components.d.ts +0 -30
  279. package/dist/types/types/button-link.d.ts +2 -2
  280. package/doc/breadcrumb.md +1 -0
  281. package/doc/button-link.md +4 -7
  282. package/doc/icon.md +2 -0
  283. package/doc/input-adapter-leanup.md +1 -0
  284. package/doc/link-button.md +5 -6
  285. package/doc/link-group.md +1 -0
  286. package/doc/link.md +1 -0
  287. package/doc/nav.md +1 -0
  288. package/doc/skip-nav.md +1 -0
  289. package/doc/tooltip.md +0 -4
  290. package/jest-test-results.json +1 -1
  291. package/package.json +1 -1
  292. package/vscode-custom-data.json +0 -24
  293. package/dist/esm/validation-54731d67.js +0 -4
  294. package/dist/kolibri/controller-1e0ec378.js +0 -4
  295. package/dist/kolibri/devtools-cc50ca43.js +0 -4
  296. package/dist/kolibri/label-4e702e1f.js +0 -4
  297. package/dist/kolibri/validation-54731d67.js +0 -4
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{e as a}from"./a11y.tipps-ff5a1a99.js";import{w as e}from"./prop.validators-4cac744a.js";import{c as r}from"./validator-8ee8737c.js";const i=(e,i,s,t)=>{const l=i.has("_ariaLabel")?i.get("_ariaLabel"):s.state._ariaLabel;if("string"==typeof l){const e=i.has("_label")?i.get("_label"):s.state._label;!1===r(e,l)&&("_ariaLabel"===t?i.set("_label",l):i.set("_ariaLabel",e),a("Das abweichende Aria-Label am Schalter ist nicht barrierefrei. Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für die Sprachsteuerung mit dem Label-Text beginnen."))}},s=(a,r)=>{e(a,"_ariaLabel",r,{hooks:{beforePatch:i}})},t=(a,r)=>{e(a,"_label",r,{hooks:{beforePatch:i},required:!0})};export{t as a,s as v};
@@ -1 +1 @@
1
- {"version":3,"names":["syncAriaLabelBeforePatch","_nextValue","nextState","component","key","ariaLabel","has","get","state","_ariaLabel","label","_label","isEmptyOrPrefixOf","set","a11yHint","validateAriaLabel","value","watchString","hooks","beforePatch","validateLabel","required"],"sources":["./src/utils/validators/label.ts"],"sourcesContent":["import { Generic } from '@public-ui/core';\nimport { a11yHint } from '../a11y.tipps';\nimport { watchString } from '../prop.validators';\nimport { isEmptyOrPrefixOf } from '../validator';\n\n/**\n * Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für\n * die Sprachsteuerung mit dem Label-Text beginnen.\n */\nconst syncAriaLabelBeforePatch: Generic.Element.NextStateHooksCallback = (_nextValue, nextState, component: Generic.Element.Component, key): void => {\n\tconst ariaLabel: string | undefined = nextState.has('_ariaLabel') ? (nextState.get('_ariaLabel') as string) : (component.state._ariaLabel as string);\n\tif (typeof ariaLabel === 'string') {\n\t\tconst label: string | undefined = nextState.has('_label') ? (nextState.get('_label') as string) : (component.state._label as string);\n\t\tif (isEmptyOrPrefixOf(label, ariaLabel) === false) {\n\t\t\tif (key === '_ariaLabel') {\n\t\t\t\tnextState.set('_label', ariaLabel);\n\t\t\t\t// smartSetTimeout(() => ((component as Generic.Element.Component & { _label: string })._label = ariaLabel), 50);\n\t\t\t} else {\n\t\t\t\tnextState.set('_ariaLabel', label);\n\t\t\t\t// smartSetTimeout(() => ((component as Generic.Element.Component & { _ariaLabel: string })._ariaLabel = label), 50);\n\t\t\t}\n\t\t\ta11yHint(\n\t\t\t\t`Das abweichende Aria-Label am Schalter ist nicht barrierefrei. Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für die Sprachsteuerung mit dem Label-Text beginnen.`\n\t\t\t);\n\t\t}\n\t}\n};\n\nexport const validateAriaLabel = (component: Generic.Element.Component, value?: string): void => {\n\twatchString(component, '_ariaLabel', value, {\n\t\thooks: {\n\t\t\tbeforePatch: syncAriaLabelBeforePatch,\n\t\t},\n\t});\n};\n\nexport const validateLabel = (component: Generic.Element.Component, value?: string): void => {\n\twatchString(component, '_label', value, {\n\t\thooks: {\n\t\t\tbeforePatch: syncAriaLabelBeforePatch,\n\t\t},\n\t\trequired: true,\n\t});\n};\n"],"mappings":";;;sIASA,MAAMA,EAAmE,CAACC,EAAYC,EAAWC,EAAsCC,KACtI,MAAMC,EAAgCH,EAAUI,IAAI,cAAiBJ,EAAUK,IAAI,cAA4BJ,EAAUK,MAAMC,WAC/H,UAAWJ,IAAc,SAAU,CAClC,MAAMK,EAA4BR,EAAUI,IAAI,UAAaJ,EAAUK,IAAI,UAAwBJ,EAAUK,MAAMG,OACnH,GAAIC,EAAkBF,EAAOL,KAAe,MAAO,CAClD,GAAID,IAAQ,aAAc,CACzBF,EAAUW,IAAI,SAAUR,E,KAElB,CACNH,EAAUW,IAAI,aAAcH,E,CAG7BI,EACC,yL,UAMSC,EAAoB,CAACZ,EAAsCa,KACvEC,EAAYd,EAAW,aAAca,EAAO,CAC3CE,MAAO,CACNC,YAAanB,IAEb,E,MAGUoB,EAAgB,CAACjB,EAAsCa,KACnEC,EAAYd,EAAW,SAAUa,EAAO,CACvCE,MAAO,CACNC,YAAanB,GAEdqB,SAAU,MACT,S"}
1
+ {"version":3,"names":["syncAriaLabelBeforePatch","_nextValue","nextState","component","key","ariaLabel","has","get","state","_ariaLabel","label","_label","isEmptyOrPrefixOf","set","a11yHint","validateAriaLabel","value","watchString","hooks","beforePatch","validateLabel","required"],"sources":["./src/utils/validators/label.ts"],"sourcesContent":["import { Generic } from '@public-ui/core';\nimport { a11yHint } from '../a11y.tipps';\nimport { watchString } from '../prop.validators';\nimport { isEmptyOrPrefixOf } from '../validator';\n\n/**\n * Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für\n * die Sprachsteuerung mit dem Label-Text beginnen.\n */\nconst syncAriaLabelBeforePatch: Generic.Element.NextStateHooksCallback = (_nextValue, nextState, component: Generic.Element.Component, key): void => {\n\tconst ariaLabel: string | undefined = nextState.has('_ariaLabel') ? (nextState.get('_ariaLabel') as string) : (component.state._ariaLabel as string);\n\tif (typeof ariaLabel === 'string') {\n\t\tconst label: string | undefined = nextState.has('_label') ? (nextState.get('_label') as string) : (component.state._label as string);\n\t\tif (isEmptyOrPrefixOf(label, ariaLabel) === false) {\n\t\t\tif (key === '_ariaLabel') {\n\t\t\t\tnextState.set('_label', ariaLabel);\n\t\t\t\t// smartSetTimeout(() => ((component as Generic.Element.Component & { _label: string })._label = ariaLabel), 50);\n\t\t\t} else {\n\t\t\t\tnextState.set('_ariaLabel', label);\n\t\t\t\t// smartSetTimeout(() => ((component as Generic.Element.Component & { _ariaLabel: string })._ariaLabel = label), 50);\n\t\t\t}\n\t\t\ta11yHint(\n\t\t\t\t`Das abweichende Aria-Label am Schalter ist nicht barrierefrei. Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für die Sprachsteuerung mit dem Label-Text beginnen.`\n\t\t\t);\n\t\t}\n\t}\n};\n\nexport const validateAriaLabel = (component: Generic.Element.Component, value?: string): void => {\n\twatchString(component, '_ariaLabel', value, {\n\t\thooks: {\n\t\t\tbeforePatch: syncAriaLabelBeforePatch,\n\t\t},\n\t});\n};\n\nexport const validateLabel = (component: Generic.Element.Component, value?: string): void => {\n\twatchString(component, '_label', value, {\n\t\thooks: {\n\t\t\tbeforePatch: syncAriaLabelBeforePatch,\n\t\t},\n\t\trequired: true,\n\t});\n};\n"],"mappings":";;;2IASA,MAAMA,EAAmE,CAACC,EAAYC,EAAWC,EAAsCC,KACtI,MAAMC,EAAgCH,EAAUI,IAAI,cAAiBJ,EAAUK,IAAI,cAA4BJ,EAAUK,MAAMC,WAC/H,UAAWJ,IAAc,SAAU,CAClC,MAAMK,EAA4BR,EAAUI,IAAI,UAAaJ,EAAUK,IAAI,UAAwBJ,EAAUK,MAAMG,OACnH,GAAIC,EAAkBF,EAAOL,KAAe,MAAO,CAClD,GAAID,IAAQ,aAAc,CACzBF,EAAUW,IAAI,SAAUR,E,KAElB,CACNH,EAAUW,IAAI,aAAcH,E,CAG7BI,EACC,yL,UAMSC,EAAoB,CAACZ,EAAsCa,KACvEC,EAAYd,EAAW,aAAca,EAAO,CAC3CE,MAAO,CACNC,YAAanB,IAEb,E,MAGUoB,EAAgB,CAACjB,EAAsCa,KACnEC,EAAYd,EAAW,SAAUa,EAAO,CACvCE,MAAO,CACNC,YAAanB,GAEdqB,SAAU,MACT,S"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{s as e,f as t}from"./index.m-86dc8c44.js";import{d as n}from"./a11y.tipps-d591ee77.js";import{L as r,g as o,a as i,b as a}from"./dev.utils-daaf2f39.js";import{p as s,a as f}from"./index-d870d3e1.js";const l=(e,t)=>{t.forEach((t=>{!1===e.has(t)&&e.add(t)}))},c=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const o=new Set;l(o,t.querySelectorAll(e));const r=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<r.length;t++){const n=r[t].shadowRoot;l(o,c(e,"object"==typeof n&&null!==n?n:r[t]))}return Array.from(o)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},u=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let o=t.querySelector(e);if(null===o){const r=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<r.length;t++){const n=r[t].shadowRoot;if(o=u(e,"object"==typeof n&&null!==n?n:r[t]),null!==o)break}}return o}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")};var d=b,v=b,m=g,p=w,y=S,h=N;function b(e){var t=M(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function g(e){var t=M(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function w(e){var t=M(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function S(e){3==(t=M(e)).length&&t.push(255);var t,o=255==t[3],r=E(t[0]),n=E(t[1]),a=E(t[2]),l=j(r,n,a,t=E(Math.round(t[3])));return o?l?"#"+r.charAt(0)+n.charAt(0)+a.charAt(0):"#"+r+n+a:l?"#"+r.charAt(0)+n.charAt(0)+a.charAt(0)+t.charAt(0):"#"+r+n+a+t}function N(e){var t=M(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function M(e){return"string"==typeof e?O(e=e.toLowerCase())||$(e)||D(e)||P(e)||A(e)||[0,0,0,255]:H(e)||L(e)||C(e)||[0,0,0,255]}function E(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function j(e,t,o,r){var n=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=n.indexOf(e)&&-1!=n.indexOf(t)&&-1!=n.indexOf(o)&&-1!=n.indexOf(r)}function O(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function k(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function $(e){var t=e.replace(/^#/,""),o=t.length;if(3==o||4==o){var r=k(t[0]),n=k(t[1]),a=k(t[2]),l=3==o?255:k(t[3]);if(isNaN(r)||isNaN(n)||isNaN(a)||isNaN(l))return;return[r,n,a,l]}}function D(e){var t=e.replace(/^#/,""),o=t.length;if(6==o||8==o){var r=k(t.slice(0,2)),n=k(t.slice(2,4)),a=k(t.slice(4,6)),l=6==o?255:k(t.slice(6,8));if(isNaN(r)||isNaN(n)||isNaN(a)||isNaN(l))return;return[r,n,a,l]}}function T(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function H(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=T(null!=e.r?e.r:null!=e.red?e.red:0,!0),o=T(null!=e.g?e.g:null!=e.green?e.green:0,!0),r=T(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),n=T(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=o&&-1!=r&&-1!=n)return[t,o,r,n]}}function L(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=T(e[0],!0),o=T(e[1],!0),r=T(e[2],!0),n=T(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=o&&-1!=r&&-1!=n)return[t,o,r,n]}}function C(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function P(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=T(t[0],!0),r=T(t[1],!0),n=T(t[2],!0);if(-1!=o&&-1!=r&&-1!=n)return[o,r,n,255]}}function A(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=T(t[0],!0),r=T(t[1],!0),n=T(t[2],!0),a=T(255*t[3]);if(-1!=o&&-1!=r&&-1!=n&&-1!=a)return[o,r,n,a]}}d.arr=v,d.obj=m,d.css=p,d.hex=y,d.num=h;const J=/\[object Object\]/,q=(e,t)=>{"string"==typeof e&&J.test(e)||t()},x=(e,t)=>{"string"==typeof e&&""===e||t()},z=(e,t)=>{a()&&(console.log(e,t),n("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},B=e=>{var t,o,r;null===(t=e.nextHooks)||void 0===t||t.forEach(((t,o)=>{var r;const n=t.get("beforePatch");"function"==typeof n&&n(null===(r=e.nextState)||void 0===r?void 0:r.get(o),e.nextState,e,o)})),(null===(o=e.nextState)||void 0===o?void 0:o.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(r=e.nextHooks)||void 0===r||r.forEach(((t,o)=>{const r=t.get("afterPatch");"function"==typeof r&&r(e.state[o],e.state,e,o)}))),delete e.nextHooks},K=(e,t,o,r={})=>{var n,a;if(void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map),e.nextState.get(t)!==o){e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof r.afterPatch&&(null===(n=e.nextHooks.get(t))||void 0===n||n.set("afterPatch",r.afterPatch)),"function"==typeof r.beforePatch&&(null===(a=e.nextHooks.get(t))||void 0===a||a.set("beforePatch",r.beforePatch)),e.nextState.set(t,o),B(e)}},R=(e,t,o,r)=>{n(`[${e.constructor.name}] Der Property-Wert (${o}) für '${t}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(r).join(", ")}`)},W=(e,t,o,r,n,a={})=>{o(n)?K(e,t,n,null==a?void 0:a.hooks):void 0===n||null===n&&(void 0===(null==a?void 0:a.required)||!1===(null==a?void 0:a.required))?K(e,t,null==a?void 0:a.defaultValue,null==a?void 0:a.hooks):(void 0!==(null==a?void 0:a.required)&&!1!==(null==a?void 0:a.required)||r.add(null),R(e,t,n,r))},F=(e,t,o,r)=>{W(e,t,(e=>"boolean"==typeof e),new Set(["Boolean {true, false}"]),o,r)},I=(e,t,o,r={})=>{const n="number"==typeof r.minLength?null==r?void 0:r.minLength:0;W(e,t,(e=>"string"==typeof e&&e.length>=n),new Set([`String (Mindestlänge ${n})`]),o,r)},U=(e,t,o,r)=>{W(e,t,(e=>"number"==typeof e&&(void 0===(null==r?void 0:r.min)||"number"==typeof(null==r?void 0:r.min)&&e>=r.min)&&(void 0===(null==r?void 0:r.max)||"number"==typeof(null==r?void 0:r.max)&&e<=r.max)),new Set(["Number"]),o,r)},_=(e,t,o,r,a=(e=>e==e),l={})=>{x(r,(()=>{q(r,(()=>{void 0===r&&(r=[]);try{try{r=ee(r)}catch(e){}if(Array.isArray(r)){const n=r.find((e=>!o(e)));void 0===n&&a(r)?K(e,t,r,l.hooks):q(n,(()=>{throw console.log(n),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}else q(r,(()=>{throw console.log(r),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}catch(e){n("Known bug: Zeichenkettenliste (string[])")}}))}))},Y=/^(true|false)$/,Z=/^-?(0|[1-9]\d*)$/,G=/^-?(0.|[1-9]\d*.)\d*[1-9]$/,Q=e=>{const t=typeof e,o=`${e}`;if("string"==typeof e)if(Y.test(e))e="true"===e;else if(Z.test(e))e=parseInt(e);else if(G.test(e))e=parseFloat(e);else if(X.test(e))try{e=ee(e)}catch(e){}return t!==typeof e&&n(`You have used a stringified property value (${o} to ${JSON.stringify(e)}) which type switched from ${t} to ${typeof e}!`),e},V=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw r.warn(["stringifyJson",e]),r.error("↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet."),new Error}},X=/^[{[]/,ee=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(X.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){r.warn(["parseJson",e]),r.error("↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).")}}throw new Error},te=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,ne=e=>"string"==typeof e?e:te(e),re=(e,t)=>u(e,t||o()),oe=(e,t)=>c(e,t||o());let ie=null;const ae=()=>(ie=ie||{backgroundColor:"#00000000",color:"#00000000",domNode:o().body,level:"Fail",score:1},ie),se=/(\d+, ){3}0\)/,fe=(o,n=ae())=>{const a=getComputedStyle(o),l=se.test(a.backgroundColor)?n.backgroundColor:d.hex(a.backgroundColor),s=se.test(a.color)?n.color:d.hex(a.color),i=e(l,s),c={backgroundColor:l,color:s,domNode:o,level:t(i),score:i};return i<4.5&&r.error(["Color-Contrast-Error",{backgroundColor:c.backgroundColor,color:c.color,level:c.level,score:c.score},c.domNode]),c},le=(e,t=ae())=>{t.domNode instanceof HTMLElement&&(t=fe(t.domNode,t));const o=t.domNode.querySelector(e);if(null===o){const o=t.domNode.querySelectorAll('[class="hydrated"]');for(let r=0;r<o.length&&(t.domNode=o[r],null===(t=le(e,t)).domNode);r++);return t}return fe(o,t)},ce=(e,t=window)=>{e instanceof HTMLElement?(t.scrollTo({behavior:"smooth",top:e.getBoundingClientRect().top+i().pageYOffset-50}),e.focus()):n("Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.")},ue=(e,t)=>{if((e instanceof Document||e instanceof HTMLElement||e instanceof ShadowRoot)&&"string"==typeof t){n("Bei der Methode querySelectorAll wurden die Parameter document, selector in selector, document getauscht, da der Parameter selector nicht, allerdings der Parameter document optional sein kann.");const o=`${t}`;t=e,e=o}if("string"==typeof e){const o=re(e,t);o instanceof HTMLElement?ce(o):n(`Es konnte kein HTMLElement mit dem Selector (${e}) gefunden werden, zu dem gescrollt werden soll.`)}else n("Der Selector ist nicht valide, zu dem gescrollt werden soll.")};class de{static queryHtmlElementColors(e,t,o=!1,n=!0){let a=null;if(!0===o||!1===de.executionLock)if(!1===o&&(de.cache.clear(),de.cache.set(t.domNode,t),de.executionLock=!0,!0===n&&r.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)a=t;else{const o=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)o.add(e[t])}const r=t.domNode;if("function"==typeof r.assignedNodes){const e=r.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&o.add(e[t])}const n=t.domNode.children;for(let e=0;e<n.length;e++)o.add(n[e]);const l=Array.from(o);for(let o=0;o<l.length;o++){let r=de.cache.get(l[o]);void 0===r&&(r=fe(l[o],t)),de.cache.set(l[o],r);const n=de.queryHtmlElementColors(e,r,!0,!1);if(null!==n){a=n;break}}}else r.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===o&&(!0===n&&r.debug(`[KoliBriUtils] Color contrast analysis finished (${de.cache.size} DOM elements are analysed).`),de.executionLock=!1,de.cache.clear()),a}}de.executionLock=!1,de.cache=new Map;class ve{}ve.patchTheme=s,ve.patchThemeTag=f,ve.querySelector=re,ve.querySelectorAll=oe,ve.scrollByHTMLElement=ce,ve.scrollBySelector=ue,ve.stringifyJson=V;export{ve as K,W as a,F as b,_ as c,z as d,te as e,U as f,Q as g,ue as h,x as i,de as j,re as k,fe as l,ne as m,oe as n,q as o,ee as p,le as q,d as r,K as s,V as t,I as w};
4
+ import{s as e,f as t}from"./index.m-86dc8c44.js";import{d as n}from"./a11y.tipps-ff5a1a99.js";import{L as r,g as o,a as i,b as a}from"./dev.utils-daaf2f39.js";import{p as s,a as f}from"./index-d870d3e1.js";const l=(e,t)=>{t.forEach((t=>{!1===e.has(t)&&e.add(t)}))},c=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const o=new Set;l(o,t.querySelectorAll(e));const r=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<r.length;t++){const n=r[t].shadowRoot;l(o,c(e,"object"==typeof n&&null!==n?n:r[t]))}return Array.from(o)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},u=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let o=t.querySelector(e);if(null===o){const r=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<r.length;t++){const n=r[t].shadowRoot;if(o=u(e,"object"==typeof n&&null!==n?n:r[t]),null!==o)break}}return o}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")};var d=b,v=b,m=g,p=w,y=S,h=N;function b(e){var t=M(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function g(e){var t=M(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function w(e){var t=M(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function S(e){3==(t=M(e)).length&&t.push(255);var t,o=255==t[3],r=E(t[0]),n=E(t[1]),a=E(t[2]),l=j(r,n,a,t=E(Math.round(t[3])));return o?l?"#"+r.charAt(0)+n.charAt(0)+a.charAt(0):"#"+r+n+a:l?"#"+r.charAt(0)+n.charAt(0)+a.charAt(0)+t.charAt(0):"#"+r+n+a+t}function N(e){var t=M(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function M(e){return"string"==typeof e?O(e=e.toLowerCase())||$(e)||D(e)||P(e)||A(e)||[0,0,0,255]:H(e)||L(e)||C(e)||[0,0,0,255]}function E(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function j(e,t,o,r){var n=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=n.indexOf(e)&&-1!=n.indexOf(t)&&-1!=n.indexOf(o)&&-1!=n.indexOf(r)}function O(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function k(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function $(e){var t=e.replace(/^#/,""),o=t.length;if(3==o||4==o){var r=k(t[0]),n=k(t[1]),a=k(t[2]),l=3==o?255:k(t[3]);if(isNaN(r)||isNaN(n)||isNaN(a)||isNaN(l))return;return[r,n,a,l]}}function D(e){var t=e.replace(/^#/,""),o=t.length;if(6==o||8==o){var r=k(t.slice(0,2)),n=k(t.slice(2,4)),a=k(t.slice(4,6)),l=6==o?255:k(t.slice(6,8));if(isNaN(r)||isNaN(n)||isNaN(a)||isNaN(l))return;return[r,n,a,l]}}function T(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function H(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=T(null!=e.r?e.r:null!=e.red?e.red:0,!0),o=T(null!=e.g?e.g:null!=e.green?e.green:0,!0),r=T(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),n=T(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=o&&-1!=r&&-1!=n)return[t,o,r,n]}}function L(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=T(e[0],!0),o=T(e[1],!0),r=T(e[2],!0),n=T(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=o&&-1!=r&&-1!=n)return[t,o,r,n]}}function C(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function P(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=T(t[0],!0),r=T(t[1],!0),n=T(t[2],!0);if(-1!=o&&-1!=r&&-1!=n)return[o,r,n,255]}}function A(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=T(t[0],!0),r=T(t[1],!0),n=T(t[2],!0),a=T(255*t[3]);if(-1!=o&&-1!=r&&-1!=n&&-1!=a)return[o,r,n,a]}}d.arr=v,d.obj=m,d.css=p,d.hex=y,d.num=h;const J=/\[object Object\]/,q=(e,t)=>{"string"==typeof e&&J.test(e)||t()},x=(e,t)=>{"string"==typeof e&&""===e||t()},z=(e,t)=>{a()&&(console.log(e,t),n("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},B=e=>{var t,o,r;null===(t=e.nextHooks)||void 0===t||t.forEach(((t,o)=>{var r;const n=t.get("beforePatch");"function"==typeof n&&n(null===(r=e.nextState)||void 0===r?void 0:r.get(o),e.nextState,e,o)})),(null===(o=e.nextState)||void 0===o?void 0:o.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(r=e.nextHooks)||void 0===r||r.forEach(((t,o)=>{const r=t.get("afterPatch");"function"==typeof r&&r(e.state[o],e.state,e,o)}))),delete e.nextHooks},K=(e,t,o,r={})=>{var n,a;if(void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map),e.nextState.get(t)!==o){e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof r.afterPatch&&(null===(n=e.nextHooks.get(t))||void 0===n||n.set("afterPatch",r.afterPatch)),"function"==typeof r.beforePatch&&(null===(a=e.nextHooks.get(t))||void 0===a||a.set("beforePatch",r.beforePatch)),e.nextState.set(t,o),B(e)}},R=(e,t,o,r)=>{n(`[${e.constructor.name}] Der Property-Wert (${o}) für '${t}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(r).join(", ")}`)},W=(e,t,o,r,n,a={})=>{o(n)?K(e,t,n,null==a?void 0:a.hooks):void 0===n||null===n&&(void 0===(null==a?void 0:a.required)||!1===(null==a?void 0:a.required))?K(e,t,null==a?void 0:a.defaultValue,null==a?void 0:a.hooks):(void 0!==(null==a?void 0:a.required)&&!1!==(null==a?void 0:a.required)||r.add(null),R(e,t,n,r))},F=(e,t,o,r)=>{W(e,t,(e=>"boolean"==typeof e),new Set(["Boolean {true, false}"]),o,r)},I=(e,t,o,r={})=>{const n="number"==typeof r.minLength?null==r?void 0:r.minLength:0;W(e,t,(e=>"string"==typeof e&&e.length>=n),new Set([`String (Mindestlänge ${n})`]),o,r)},U=(e,t,o,r)=>{W(e,t,(e=>"number"==typeof e&&(void 0===(null==r?void 0:r.min)||"number"==typeof(null==r?void 0:r.min)&&e>=r.min)&&(void 0===(null==r?void 0:r.max)||"number"==typeof(null==r?void 0:r.max)&&e<=r.max)),new Set(["Number"]),o,r)},_=(e,t,o,r,a=(e=>e==e),l={})=>{x(r,(()=>{q(r,(()=>{void 0===r&&(r=[]);try{try{r=ee(r)}catch(e){}if(Array.isArray(r)){const n=r.find((e=>!o(e)));void 0===n&&a(r)?K(e,t,r,l.hooks):q(n,(()=>{throw console.log(n),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}else q(r,(()=>{throw console.log(r),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}catch(e){n("Known bug: Zeichenkettenliste (string[])")}}))}))},Y=/^(true|false)$/,Z=/^-?(0|[1-9]\d*)$/,G=/^-?(0.|[1-9]\d*.)\d*[1-9]$/,Q=e=>{const t=typeof e,o=`${e}`;if("string"==typeof e)if(Y.test(e))e="true"===e;else if(Z.test(e))e=parseInt(e);else if(G.test(e))e=parseFloat(e);else if(X.test(e))try{e=ee(e)}catch(e){}return t!==typeof e&&n(`You have used a stringified property value (${o} to ${JSON.stringify(e)}) which type switched from ${t} to ${typeof e}!`),e},V=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw r.warn(["stringifyJson",e]),r.error("↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet."),new Error}},X=/^[{[]/,ee=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(X.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){r.warn(["parseJson",e]),r.error("↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).")}}throw new Error},te=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,ne=e=>"string"==typeof e?e:te(e),re=(e,t)=>u(e,t||o()),oe=(e,t)=>c(e,t||o());let ie=null;const ae=()=>(ie=ie||{backgroundColor:"#00000000",color:"#00000000",domNode:o().body,level:"Fail",score:1},ie),se=/(\d+, ){3}0\)/,fe=(o,n=ae())=>{const a=getComputedStyle(o),l=se.test(a.backgroundColor)?n.backgroundColor:d.hex(a.backgroundColor),s=se.test(a.color)?n.color:d.hex(a.color),i=e(l,s),c={backgroundColor:l,color:s,domNode:o,level:t(i),score:i};return i<4.5&&r.error(["Color-Contrast-Error",{backgroundColor:c.backgroundColor,color:c.color,level:c.level,score:c.score},c.domNode]),c},le=(e,t=ae())=>{t.domNode instanceof HTMLElement&&(t=fe(t.domNode,t));const o=t.domNode.querySelector(e);if(null===o){const o=t.domNode.querySelectorAll('[class="hydrated"]');for(let r=0;r<o.length&&(t.domNode=o[r],null===(t=le(e,t)).domNode);r++);return t}return fe(o,t)},ce=(e,t=window)=>{e instanceof HTMLElement?(t.scrollTo({behavior:"smooth",top:e.getBoundingClientRect().top+i().pageYOffset-50}),e.focus()):n("Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.")},ue=(e,t)=>{if((e instanceof Document||e instanceof HTMLElement||e instanceof ShadowRoot)&&"string"==typeof t){n("Bei der Methode querySelectorAll wurden die Parameter document, selector in selector, document getauscht, da der Parameter selector nicht, allerdings der Parameter document optional sein kann.");const o=`${t}`;t=e,e=o}if("string"==typeof e){const o=re(e,t);o instanceof HTMLElement?ce(o):n(`Es konnte kein HTMLElement mit dem Selector (${e}) gefunden werden, zu dem gescrollt werden soll.`)}else n("Der Selector ist nicht valide, zu dem gescrollt werden soll.")};class de{static queryHtmlElementColors(e,t,o=!1,n=!0){let a=null;if(!0===o||!1===de.executionLock)if(!1===o&&(de.cache.clear(),de.cache.set(t.domNode,t),de.executionLock=!0,!0===n&&r.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)a=t;else{const o=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)o.add(e[t])}const r=t.domNode;if("function"==typeof r.assignedNodes){const e=r.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&o.add(e[t])}const n=t.domNode.children;for(let e=0;e<n.length;e++)o.add(n[e]);const l=Array.from(o);for(let o=0;o<l.length;o++){let r=de.cache.get(l[o]);void 0===r&&(r=fe(l[o],t)),de.cache.set(l[o],r);const n=de.queryHtmlElementColors(e,r,!0,!1);if(null!==n){a=n;break}}}else r.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===o&&(!0===n&&r.debug(`[KoliBriUtils] Color contrast analysis finished (${de.cache.size} DOM elements are analysed).`),de.executionLock=!1,de.cache.clear()),a}}de.executionLock=!1,de.cache=new Map;class ve{}ve.patchTheme=s,ve.patchThemeTag=f,ve.querySelector=re,ve.querySelectorAll=oe,ve.scrollByHTMLElement=ce,ve.scrollBySelector=ue,ve.stringifyJson=V;export{ve as K,W as a,F as b,_ as c,U as d,z as e,x as f,te as g,ue as h,ne as i,de as j,re as k,fe as l,Q as m,oe as n,q as o,ee as p,le as q,d as r,K as s,V as t,I as w};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{c as o,e as t}from"./a11y.tipps-d591ee77.js";import{o as i,p as n,a as e,f as a}from"./prop.validators-82b345aa.js";import{a as l,b as s,i as c}from"./validator-8ee8737c.js";const r=(t,o,e)=>{c(e)?t[o]=e:l(e,1)&&(t[o]={icon:e})},d=(t,o)=>{let e={};if(l(t,1))if("right"===o)e={right:{icon:t}};else e={left:{icon:t}};else"object"==typeof t&&null!==t&&(r(e,"top",t.top),r(e,"right",t.right),r(e,"bottom",t.bottom),r(e,"left",t.left));return e},f=t=>{var o,e,i,n,l,a,r;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icon")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icon"),l=(null===(i=t.nextState)||void 0===i?void 0:i.get("_iconAlign"))||t.state._iconAlign;null===(n=t.nextState)||void 0===n||n.set("_icon",d(o,l))}else if(null===(l=t.nextState)||void 0===l?void 0:l.has("_iconAlign")){const o=t.state._iconAlign;null===(a=t.nextState)||void 0===a||a.set("_icon",{[o]:void 0,[null===(r=t.nextState)||void 0===r?void 0:r.get("_iconAlign")]:t.state._icon[o]})}},u=t=>"object"==typeof t&&null!==t&&(void 0===t.style||s(t.style))&&l(t.icon,1),h=(t,o)=>{i(o,(()=>{try{o=n(o)}catch(t){}e(t,"_icon",(t=>null===t||l(t,1)||"object"==typeof t&&null!==t&&(l(t.left,1)||u(t.left)||l(t.right,1)||u(t.right)||l(t.top,1)||u(t.top)||l(t.bottom,1)||u(t.bottom))),new Set(["KoliBriIcon"]),o,{hooks:{beforePatch:(o,e)=>{null===o&&e.set("_icon",{}),f(t)}},required:!0})}))},p=(t,i)=>{o("Das Property _icon-align bzw. _iconAlign ist veraltet. Die Ausrichtung der Icon's kann jetzt direkt über das _icon-Property vorgenommen werden. (v1.1.10: https://public-ui.github.io/?path=/story/backlog-und-changelog--page)"),e(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),i,{hooks:{beforePatch:()=>{f(t)}}})},v={hooks:{afterPatch:o=>{-1!==o&&0!==o&&t("Don’t Use Tabindex Greater than 0: https://adrianroselli.com/2014/11/dont-use-tabindex-greater-than-0.html")}}},g=(t,o)=>{a(t,"_tabIndex",o,v)};export{g as a,u as i,h as v,p as w};
4
+ import{b as o,e as t}from"./a11y.tipps-ff5a1a99.js";import{o as i,p as n,a as e,d as a}from"./prop.validators-4cac744a.js";import{a as l,b as s,i as c}from"./validator-8ee8737c.js";const r=(t,o,e)=>{c(e)?t[o]=e:l(e,1)&&(t[o]={icon:e})},d=(t,o)=>{let e={};if(l(t,1))if("right"===o)e={right:{icon:t}};else e={left:{icon:t}};else"object"==typeof t&&null!==t&&(r(e,"top",t.top),r(e,"right",t.right),r(e,"bottom",t.bottom),r(e,"left",t.left));return e},f=t=>{var o,e,i,n,l,a,r;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icon")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icon"),l=(null===(i=t.nextState)||void 0===i?void 0:i.get("_iconAlign"))||t.state._iconAlign;null===(n=t.nextState)||void 0===n||n.set("_icon",d(o,l))}else if(null===(l=t.nextState)||void 0===l?void 0:l.has("_iconAlign")){const o=t.state._iconAlign;null===(a=t.nextState)||void 0===a||a.set("_icon",{[o]:void 0,[null===(r=t.nextState)||void 0===r?void 0:r.get("_iconAlign")]:t.state._icon[o]})}},u=t=>"object"==typeof t&&null!==t&&(void 0===t.style||s(t.style))&&l(t.icon,1),h=(t,o)=>{i(o,(()=>{try{o=n(o)}catch(t){}e(t,"_icon",(t=>null===t||l(t,1)||"object"==typeof t&&null!==t&&(l(t.left,1)||u(t.left)||l(t.right,1)||u(t.right)||l(t.top,1)||u(t.top)||l(t.bottom,1)||u(t.bottom))),new Set(["KoliBriIcon"]),o,{hooks:{beforePatch:(o,e)=>{null===o&&e.set("_icon",{}),f(t)}},required:!0})}))},p=(t,i)=>{o("Das Property _icon-align bzw. _iconAlign ist veraltet. Die Ausrichtung der Icon's kann jetzt direkt über das _icon-Property vorgenommen werden. (v1.1.10: https://public-ui.github.io/?path=/story/backlog-und-changelog--page)"),e(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),i,{hooks:{beforePatch:()=>{f(t)}}})},v={hooks:{afterPatch:o=>{-1!==o&&0!==o&&t("Don’t Use Tabindex Greater than 0: https://adrianroselli.com/2014/11/dont-use-tabindex-greater-than-0.html")}}},g=(t,o)=>{a(t,"_tabIndex",o,v)};export{h as a,u as i,g as v,p as w};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{u as o}from"./a11y.tipps-ff5a1a99.js";import{c as a}from"./prop.validators-4cac744a.js";const s=(s,t,p)=>{a(t,"_links",(a=>"object"==typeof a&&"string"==typeof a._label),p),o(s,t.state._links.length)};export{s as w};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{a as e}from"./prop.validators-82b345aa.js";const r=(r,a)=>{e(r,"_level",(e=>"number"==typeof e&&1<=e&&e<=6),new Set(["Number {1, 2, 3, 4, 5, 6}"]),a,{defaultValue:1,required:!0})};export{r as w};
4
+ import{a as e}from"./prop.validators-4cac744a.js";const r=(r,a)=>{e(r,"_level",(e=>"number"==typeof e&&1<=e&&e<=6),new Set(["Number {1, 2, 3, 4, 5, 6}"]),a,{defaultValue:1,required:!0})};export{r as w};
@@ -1,15 +1,13 @@
1
1
  import { JSX } from '../../stencil-public-runtime';
2
2
  import { Generic } from '@public-ui/core';
3
- import { AlternativButtonLinkRole, AriaCurrent, ButtonStates, KoliBriButtonCallbacks, KoliBriButtonType, OptionalButtonLinkProps, OptionalButtonLinkStates, RequiredButtonLinkProps, RequiredButtonLinkStates } from '../../types/button-link';
3
+ import { AlternativButtonLinkRole, AriaCurrent, KoliBriButtonCallbacks, KoliBriButtonType, OptionalButtonLinkProps, RequiredButtonLinkProps } from '../../types/button-link';
4
4
  import { Stringified } from '../../types/common';
5
- import { Alignment, KoliBriIconProp } from '../../types/icon';
5
+ import { KoliBriIconProp } from '../../types/icon';
6
6
  import { TooltipAlignment } from '../tooltip/component';
7
- export declare class KolButtonLink implements Generic.Element.ComponentApi<RequiredButtonLinkProps, OptionalButtonLinkProps, RequiredButtonLinkStates, OptionalButtonLinkStates> {
7
+ export declare class KolButtonLink implements Generic.Element.Members<RequiredButtonLinkProps, OptionalButtonLinkProps> {
8
8
  private readonly host?;
9
- private readonly nonce;
10
9
  private ref?;
11
10
  private readonly catchRef;
12
- private readonly onClick;
13
11
  render(): JSX.Element;
14
12
  _accessKey?: string;
15
13
  _ariaControls?: string;
@@ -19,7 +17,6 @@ export declare class KolButtonLink implements Generic.Element.ComponentApi<Requi
19
17
  _ariaSelected?: boolean;
20
18
  _disabled?: boolean;
21
19
  _icon?: Stringified<KoliBriIconProp>;
22
- _iconAlign?: Alignment;
23
20
  _iconOnly?: boolean;
24
21
  _id?: string;
25
22
  _label: string;
@@ -28,23 +25,4 @@ export declare class KolButtonLink implements Generic.Element.ComponentApi<Requi
28
25
  _tabIndex?: number;
29
26
  _tooltipAlign?: TooltipAlignment;
30
27
  _type?: KoliBriButtonType;
31
- state: ButtonStates;
32
- validateAccessKey(value?: string): void;
33
- validateAriaControls(value?: string): void;
34
- validateAriaCurrent(value?: AriaCurrent): void;
35
- validateAriaExpanded(value?: boolean): void;
36
- validateAriaLabel(value?: string): void;
37
- validateAriaSelected(value?: boolean): void;
38
- validateDisabled(value?: boolean): void;
39
- validateIcon(value?: KoliBriIconProp): void;
40
- validateIconAlign(value?: Alignment): void;
41
- validateIconOnly(value?: boolean): void;
42
- validateId(value?: string): void;
43
- validateLabel(value?: string): void;
44
- validateOn(value?: KoliBriButtonCallbacks): void;
45
- validateRole(value?: AlternativButtonLinkRole): void;
46
- validateTabIndex(value?: number): void;
47
- validateTooltipAlign(value?: TooltipAlignment): void;
48
- validateType(value?: KoliBriButtonType): void;
49
- componentWillLoad(): void;
50
28
  }
@@ -1,15 +1,16 @@
1
- import { JSX } from '../../stencil-public-runtime';
1
+ import { JSX, State } from '../../stencil-public-runtime';
2
2
  import { Generic } from '@public-ui/core';
3
- import { AlternativButtonLinkRole, AriaCurrent, KoliBriButtonVariant, LinkButtonStates, LinkOnCallbacks, LinkTarget, LinkUseCase, OptionalLinkButtonProps, OptionalLinkButtonStates, RequiredLinkButtonProps, RequiredLinkButtonStates } from '../../types/button-link';
3
+ import { AlternativButtonLinkRole, AriaCurrent, KoliBriButtonVariant, LinkButtonStates, LinkTarget, LinkUseCase, OptionalLinkButtonProps, OptionalLinkButtonStates, RequiredLinkButtonProps, RequiredLinkButtonStates } from '../../types/button-link';
4
4
  import { Stringified } from '../../types/common';
5
- import { Alignment, KoliBriIconProp } from '../../types/icon';
5
+ import { KoliBriIconProp } from '../../types/icon';
6
6
  import { TooltipAlignment } from '../tooltip/component';
7
- export declare class KolLinkButton implements Generic.Element.ComponentApi<RequiredLinkButtonProps, OptionalLinkButtonProps, RequiredLinkButtonStates, OptionalLinkButtonStates> {
7
+ type State = {
8
+ state: Generic.Element.Members<RequiredLinkButtonStates, OptionalLinkButtonStates>;
9
+ };
10
+ export declare class KolLinkButton implements Generic.Element.Members<RequiredLinkButtonProps, OptionalLinkButtonProps>, Generic.Element.Watchers<RequiredLinkButtonStates, OptionalLinkButtonStates>, State {
8
11
  private readonly host?;
9
- private readonly nonce;
10
12
  private ref?;
11
13
  private readonly catchRef;
12
- private readonly getRenderValues;
13
14
  render(): JSX.Element;
14
15
  _ariaControls?: string;
15
16
  _ariaCurrent?: AriaCurrent;
@@ -21,10 +22,8 @@ export declare class KolLinkButton implements Generic.Element.ComponentApi<Requi
21
22
  _fill?: boolean;
22
23
  _href?: string;
23
24
  _icon?: Stringified<KoliBriIconProp>;
24
- _iconAlign?: Alignment;
25
25
  _iconOnly?: boolean;
26
26
  _label: string;
27
- _on?: LinkOnCallbacks;
28
27
  _part?: string;
29
28
  _role?: AlternativButtonLinkRole;
30
29
  _selector?: string;
@@ -37,30 +36,8 @@ export declare class KolLinkButton implements Generic.Element.ComponentApi<Requi
37
36
  _useCase?: LinkUseCase;
38
37
  _variant?: KoliBriButtonVariant;
39
38
  state: LinkButtonStates;
40
- validateAriaControls(value?: string): void;
41
- validateAriaCurrent(value?: AriaCurrent): void;
42
- validateAriaExpanded(value?: boolean): void;
43
- validateAriaLabel(value?: string): void;
44
- validateAriaSelected(value?: boolean): void;
45
39
  validateCustomClass(value?: string): void;
46
- validateDisabled(value?: boolean): void;
47
- validateFill(value?: boolean): void;
48
- validateHref(value?: string): void;
49
- validateIcon(value?: KoliBriIconProp): void;
50
- validateIconAlign(value?: Alignment): void;
51
- validateIconOnly(value?: boolean): void;
52
- validateLabel(value?: string): void;
53
- validateOn(value?: LinkOnCallbacks): void;
54
- validatePart(value?: string): void;
55
- validateRole(value?: AlternativButtonLinkRole): void;
56
- validateSelector(value?: string): void;
57
- validateStealth(value?: boolean): void;
58
- validateTabIndex(value?: number): void;
59
- validateTarget(value?: LinkTarget): void;
60
- validateTargetDescription(value?: string): void;
61
- validateTooltipAlign(value?: TooltipAlignment): void;
62
- validateUnderline(value?: boolean): void;
63
- validateUseCase(value?: LinkUseCase): void;
64
40
  validateVariant(value?: KoliBriButtonVariant): void;
65
41
  componentWillLoad(): void;
66
42
  }
43
+ export {};
@@ -20,7 +20,6 @@ type OptionalTabButtonProps = {
20
20
  disabled: boolean;
21
21
  icon: Stringified<KoliBriIconProp>;
22
22
  iconOnly: boolean;
23
- on: KoliBriTabsCallbacks;
24
23
  tooltipAlign: Alignment;
25
24
  };
26
25
  export type TabButtonProps = Generic.Element.Members<RequiredTabButtonProps, OptionalTabButtonProps>;
@@ -281,11 +281,6 @@ export namespace Components {
281
281
  * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)
282
282
  */
283
283
  "_icon"?: Stringified<KoliBriIconProp>;
284
- /**
285
- * Gibt an, ob das Icon links oder rechts dargestellt werden soll.
286
- * @deprecated
287
- */
288
- "_iconAlign"?: Alignment;
289
284
  /**
290
285
  * Gibt an, ob nur das Icon angezeigt wird.
291
286
  */
@@ -1584,11 +1579,6 @@ export namespace Components {
1584
1579
  * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)
1585
1580
  */
1586
1581
  "_icon"?: Stringified<KoliBriIconProp>;
1587
- /**
1588
- * Gibt an, ob das Icon entweder links oder rechts dargestellt werden soll.
1589
- * @deprecated
1590
- */
1591
- "_iconAlign"?: Alignment;
1592
1582
  /**
1593
1583
  * Gibt an, ob nur das Icon angezeigt wird.
1594
1584
  */
@@ -1597,11 +1587,6 @@ export namespace Components {
1597
1587
  * Gibt einen beschreibenden Text für das Text-Element an.
1598
1588
  */
1599
1589
  "_label": string;
1600
- /**
1601
- * Gibt die EventCallback-Funktionen für den Link an.
1602
- * @deprecated
1603
- */
1604
- "_on"?: LinkOnCallbacks;
1605
1590
  /**
1606
1591
  * Gibt den Identifier für den CSS-Part an, um das Icon von Außen ändern zu können. (https://meowni.ca/posts/part-theme-explainer/)
1607
1592
  */
@@ -2833,11 +2818,6 @@ declare namespace LocalJSX {
2833
2818
  * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)
2834
2819
  */
2835
2820
  "_icon"?: Stringified<KoliBriIconProp>;
2836
- /**
2837
- * Gibt an, ob das Icon links oder rechts dargestellt werden soll.
2838
- * @deprecated
2839
- */
2840
- "_iconAlign"?: Alignment;
2841
2821
  /**
2842
2822
  * Gibt an, ob nur das Icon angezeigt wird.
2843
2823
  */
@@ -4136,11 +4116,6 @@ declare namespace LocalJSX {
4136
4116
  * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)
4137
4117
  */
4138
4118
  "_icon"?: Stringified<KoliBriIconProp>;
4139
- /**
4140
- * Gibt an, ob das Icon entweder links oder rechts dargestellt werden soll.
4141
- * @deprecated
4142
- */
4143
- "_iconAlign"?: Alignment;
4144
4119
  /**
4145
4120
  * Gibt an, ob nur das Icon angezeigt wird.
4146
4121
  */
@@ -4149,11 +4124,6 @@ declare namespace LocalJSX {
4149
4124
  * Gibt einen beschreibenden Text für das Text-Element an.
4150
4125
  */
4151
4126
  "_label": string;
4152
- /**
4153
- * Gibt die EventCallback-Funktionen für den Link an.
4154
- * @deprecated
4155
- */
4156
- "_on"?: LinkOnCallbacks;
4157
4127
  /**
4158
4128
  * Gibt den Identifier für den CSS-Part an, um das Icon von Außen ändern zu können. (https://meowni.ca/posts/part-theme-explainer/)
4159
4129
  */
@@ -112,8 +112,8 @@ export type OptionalLinkStates = OptionalButtonAndLinkStates & {
112
112
  export type LinkStates = Generic.Element.Members<RequiredLinkStates, OptionalLinkStates>;
113
113
  export type RequiredLinkButtonProps = RequiredLinkProps;
114
114
  export type OptionalLinkButtonProps = OptionalLinkProps & KoliBriButtonVariantCustomClass;
115
- export type RequiredLinkButtonStates = RequiredLinkStates;
116
- export type OptionalLinkButtonStates = OptionalLinkStates & KoliBriButtonVariantCustomClass;
115
+ export type RequiredLinkButtonStates = unknown;
116
+ export type OptionalLinkButtonStates = KoliBriButtonVariantCustomClass;
117
117
  export type LinkButtonStates = Generic.Element.Members<RequiredLinkButtonStates, OptionalLinkButtonStates>;
118
118
  export declare const watchTooltipAlignment: (component: Generic.Element.Component, propName: string, value?: TooltipAlignment) => void;
119
119
  export {};
package/doc/breadcrumb.md CHANGED
@@ -128,6 +128,7 @@ graph TD;
128
128
  kol-breadcrumb --> kol-link
129
129
  kol-link --> kol-link-wc
130
130
  kol-link-wc --> kol-span-wc
131
+ kol-link-wc --> kol-icon
131
132
  kol-link-wc --> kol-tooltip
132
133
  kol-span-wc --> kol-icon
133
134
  kol-tooltip --> kol-badge
@@ -39,7 +39,6 @@ Da der Link, nicht wie der Button, in mehrere Varianten (`primary` oder `seconda
39
39
  | `_ariaSelected` | `_aria-selected` | Gibt an, ob Element ausgewählt ist (role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected) | `boolean \| undefined` | `undefined` |
40
40
  | `_disabled` | `_disabled` | Gibt an, ob der Button deaktiviert ist. | `boolean \| undefined` | `false` |
41
41
  | `_icon` | `_icon` | Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/) | `string \| undefined \| { top: string \| KoliBriCustomIcon; right?: string \| KoliBriCustomIcon \| undefined; bottom?: string \| KoliBriCustomIcon \| undefined; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right: string \| KoliBriCustomIcon; bottom?: string \| KoliBriCustomIcon \| undefined; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right?: string \| KoliBriCustomIcon \| undefined; bottom: string \| KoliBriCustomIcon; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right?: string \| KoliBriCustomIcon \| undefined; bottom?: string \| KoliBriCustomIcon \| undefined; left: string \| KoliBriCustomIcon; }` | `undefined` |
42
- | `_iconAlign` | `_icon-align` | <span class="text-red-500">**[DEPRECATED]**</span> <br/><br/>Gibt an, ob das Icon links oder rechts dargestellt werden soll. | `"left" \| "right" \| undefined` | `'left'` |
43
42
  | `_iconOnly` | `_icon-only` | Gibt an, ob nur das Icon angezeigt wird. | `boolean \| undefined` | `false` |
44
43
  | `_id` | `_id` | Gibt die ID der Schaltfläche an. (Selection, Testing) | `string \| undefined` | `undefined` |
45
44
  | `_label` _(required)_ | `_label` | Gibt einen beschreibenden Text für das Text-Element an. | `string` | `undefined` |
@@ -54,20 +53,18 @@ Da der Link, nicht wie der Button, in mehrere Varianten (`primary` oder `seconda
54
53
 
55
54
  ### Depends on
56
55
 
57
- - kol-span-wc
58
- - [kol-tooltip](../tooltip)
56
+ - kol-button-wc
59
57
 
60
58
  ### Graph
61
59
  ```mermaid
62
60
  graph TD;
63
- kol-button-link --> kol-span-wc
64
- kol-button-link --> kol-tooltip
61
+ kol-button-link --> kol-button-wc
62
+ kol-button-wc --> kol-span-wc
63
+ kol-button-wc --> kol-tooltip
65
64
  kol-span-wc --> kol-icon
66
65
  kol-tooltip --> kol-badge
67
66
  kol-badge --> kol-span-wc
68
67
  kol-badge --> kol-button-wc
69
- kol-button-wc --> kol-span-wc
70
- kol-button-wc --> kol-tooltip
71
68
  style kol-button-link fill:#f9f,stroke:#333,stroke-width:4px
72
69
  ```
73
70
 
package/doc/icon.md CHANGED
@@ -57,6 +57,7 @@ Referenz: <https://www.w3.org/TR/wai-aria/states_and_properties#aria-hidden>
57
57
  - [kol-icon-font-awesome](../icon-font-awesome)
58
58
  - [kol-icon-icofont](../icon-icofont)
59
59
  - kol-input
60
+ - kol-link-wc
60
61
  - kol-span-wc
61
62
 
62
63
  ### Graph
@@ -69,6 +70,7 @@ graph TD;
69
70
  kol-icon-font-awesome --> kol-icon
70
71
  kol-icon-icofont --> kol-icon
71
72
  kol-input --> kol-icon
73
+ kol-link-wc --> kol-icon
72
74
  kol-span-wc --> kol-icon
73
75
  style kol-icon fill:#f9f,stroke:#333,stroke-width:4px
74
76
  ```
@@ -135,6 +135,7 @@ graph TD;
135
135
  kol-badge --> kol-button-wc
136
136
  kol-link --> kol-link-wc
137
137
  kol-link-wc --> kol-span-wc
138
+ kol-link-wc --> kol-icon
138
139
  kol-link-wc --> kol-tooltip
139
140
  style kol-input-adapter-leanup fill:#f9f,stroke:#333,stroke-width:4px
140
141
  ```
@@ -47,10 +47,8 @@ Ein Button hat aus UX-Sicht mehrere Varianten (`primary` oder `secondary` usw.).
47
47
  | `_fill` | `_fill` | Gibt an, ob der Link die gesamte zur Verfügung stehende Breite ausfüllt. | `boolean \| undefined` | `false` |
48
48
  | `_href` | `_href` | Gibt die Ziel-Url des Links an. | `string \| undefined` | `''` |
49
49
  | `_icon` | `_icon` | Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/) | `string \| undefined \| { top: string \| KoliBriCustomIcon; right?: string \| KoliBriCustomIcon \| undefined; bottom?: string \| KoliBriCustomIcon \| undefined; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right: string \| KoliBriCustomIcon; bottom?: string \| KoliBriCustomIcon \| undefined; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right?: string \| KoliBriCustomIcon \| undefined; bottom: string \| KoliBriCustomIcon; left?: string \| KoliBriCustomIcon \| undefined; } \| { top?: string \| KoliBriCustomIcon \| undefined; right?: string \| KoliBriCustomIcon \| undefined; bottom?: string \| KoliBriCustomIcon \| undefined; left: string \| KoliBriCustomIcon; }` | `undefined` |
50
- | `_iconAlign` | `_icon-align` | <span class="text-red-500">**[DEPRECATED]**</span> <br/><br/>Gibt an, ob das Icon entweder links oder rechts dargestellt werden soll. | `"left" \| "right" \| undefined` | `'left'` |
51
50
  | `_iconOnly` | `_icon-only` | Gibt an, ob nur das Icon angezeigt wird. | `boolean \| undefined` | `false` |
52
51
  | `_label` _(required)_ | `_label` | Gibt einen beschreibenden Text für das Text-Element an. | `string` | `undefined` |
53
- | `_on` | -- | <span style="color:red">**[DEPRECATED]**</span> <br/><br/>Gibt die EventCallback-Funktionen für den Link an. | `undefined \| { onClick?: EventCallback<Event> \| undefined; }` | `undefined` |
54
52
  | `_part` | `_part` | Gibt den Identifier für den CSS-Part an, um das Icon von Außen ändern zu können. (https://meowni.ca/posts/part-theme-explainer/) | `string \| undefined` | `undefined` |
55
53
  | `_role` | `_role` | Gibt an, welche Role der Schalter hat. | `"tab" \| undefined` | `undefined` |
56
54
  | `_selector` | `_selector` | Gibt die ID eines DOM-Elements, zu dem gesprungen werden soll, aus. | `string \| undefined` | `undefined` |
@@ -68,14 +66,15 @@ Ein Button hat aus UX-Sicht mehrere Varianten (`primary` oder `secondary` usw.).
68
66
 
69
67
  ### Depends on
70
68
 
71
- - kol-span-wc
72
- - [kol-tooltip](../tooltip)
69
+ - kol-link-wc
73
70
 
74
71
  ### Graph
75
72
  ```mermaid
76
73
  graph TD;
77
- kol-link-button --> kol-span-wc
78
- kol-link-button --> kol-tooltip
74
+ kol-link-button --> kol-link-wc
75
+ kol-link-wc --> kol-span-wc
76
+ kol-link-wc --> kol-icon
77
+ kol-link-wc --> kol-tooltip
79
78
  kol-span-wc --> kol-icon
80
79
  kol-tooltip --> kol-badge
81
80
  kol-badge --> kol-span-wc
package/doc/link-group.md CHANGED
@@ -111,6 +111,7 @@ graph TD;
111
111
  kol-link-group --> kol-link
112
112
  kol-link --> kol-link-wc
113
113
  kol-link-wc --> kol-span-wc
114
+ kol-link-wc --> kol-icon
114
115
  kol-link-wc --> kol-tooltip
115
116
  kol-span-wc --> kol-icon
116
117
  kol-tooltip --> kol-badge
package/doc/link.md CHANGED
@@ -147,6 +147,7 @@ Eingabe von Leerzeichen eingefügt werden. Zusätzliche Leerzeichen vergrößern
147
147
  graph TD;
148
148
  kol-link --> kol-link-wc
149
149
  kol-link-wc --> kol-span-wc
150
+ kol-link-wc --> kol-icon
150
151
  kol-link-wc --> kol-tooltip
151
152
  kol-span-wc --> kol-icon
152
153
  kol-tooltip --> kol-badge
package/doc/nav.md CHANGED
@@ -140,6 +140,7 @@ graph TD;
140
140
  kol-nav --> kol-link-wc
141
141
  kol-nav --> kol-button
142
142
  kol-link-wc --> kol-span-wc
143
+ kol-link-wc --> kol-icon
143
144
  kol-link-wc --> kol-tooltip
144
145
  kol-span-wc --> kol-icon
145
146
  kol-tooltip --> kol-badge
package/doc/skip-nav.md CHANGED
@@ -83,6 +83,7 @@ graph TD;
83
83
  kol-skip-nav --> kol-link
84
84
  kol-link --> kol-link-wc
85
85
  kol-link-wc --> kol-span-wc
86
+ kol-link-wc --> kol-icon
86
87
  kol-link-wc --> kol-tooltip
87
88
  kol-span-wc --> kol-icon
88
89
  kol-tooltip --> kol-badge
package/doc/tooltip.md CHANGED
@@ -37,9 +37,7 @@ Aus Sicht des Barrierefreiheitstests können Tooltips ignoriert werden, solange
37
37
  ### Used by
38
38
 
39
39
  - [kol-abbr](../abbr)
40
- - [kol-button-link](../button-link)
41
40
  - kol-button-wc
42
- - [kol-link-button](../link-button)
43
41
  - kol-link-wc
44
42
 
45
43
  ### Depends on
@@ -55,8 +53,6 @@ graph TD;
55
53
  kol-span-wc --> kol-icon
56
54
  kol-button-wc --> kol-tooltip
57
55
  kol-abbr --> kol-tooltip
58
- kol-button-link --> kol-tooltip
59
- kol-link-button --> kol-tooltip
60
56
  kol-link-wc --> kol-tooltip
61
57
  style kol-tooltip fill:#f9f,stroke:#333,stroke-width:4px
62
58
  ```