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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (866) hide show
  1. package/cheat-sheet.html +43 -33
  2. package/custom-elements.json +172 -3034
  3. package/dist/cjs/a11y.tipps-6f0ad06e.js +4 -0
  4. package/dist/cjs/a11y.tipps-6f0ad06e.js.map +1 -0
  5. package/dist/cjs/{app-globals-c6303780.js → app-globals-0cf91d90.js} +1 -1
  6. package/dist/cjs/{app-globals-c6303780.js.map → app-globals-0cf91d90.js.map} +1 -1
  7. package/dist/cjs/{button-link-89ed5382.js → button-link-19d8a9a8.js} +1 -1
  8. package/dist/cjs/button-link-19d8a9a8.js.map +1 -0
  9. package/dist/cjs/{controller-d0743a95.js → controller-34b64835.js} +1 -1
  10. package/dist/cjs/controller-34b64835.js.map +1 -0
  11. package/dist/cjs/{controller-ce13f0a2.js → controller-62ae6225.js} +1 -1
  12. package/dist/cjs/{controller-ce13f0a2.js.map → controller-62ae6225.js.map} +1 -1
  13. package/dist/cjs/{controller-94b357a3.js → controller-6dbcc733.js} +1 -1
  14. package/dist/cjs/controller-6dbcc733.js.map +1 -0
  15. package/dist/cjs/controller-a1c1ce64.js +4 -0
  16. package/dist/cjs/controller-a1c1ce64.js.map +1 -0
  17. package/dist/cjs/controller-a753291e.js +4 -0
  18. package/dist/cjs/controller-a753291e.js.map +1 -0
  19. package/dist/cjs/{controller-2405dd04.js → controller-ae0aa1fb.js} +1 -1
  20. package/dist/cjs/controller-ae0aa1fb.js.map +1 -0
  21. package/dist/cjs/{controller-icon-b87565c4.js → controller-icon-295d3454.js} +1 -1
  22. package/dist/cjs/controller-icon-295d3454.js.map +1 -0
  23. package/dist/cjs/{dev.utils-7123fb34.js → dev.utils-d69c0a9f.js} +1 -1
  24. package/dist/cjs/{dev.utils-7123fb34.js.map → dev.utils-d69c0a9f.js.map} +1 -1
  25. package/dist/cjs/{devtools-a9a95b0a.js → devtools-98551855.js} +1 -1
  26. package/dist/cjs/{devtools-a9a95b0a.js.map → devtools-98551855.js.map} +1 -1
  27. package/dist/cjs/{i18n-5d946612.js → i18n-32046f50.js} +1 -1
  28. package/dist/cjs/{i18n-5d946612.js.map → i18n-32046f50.js.map} +1 -1
  29. package/dist/cjs/{icon-ccf4ad42.js → icon-71b1bd66.js} +1 -1
  30. package/dist/cjs/icon-71b1bd66.js.map +1 -0
  31. package/dist/cjs/index-a96d7f87.js +4 -0
  32. package/dist/cjs/index-a96d7f87.js.map +1 -0
  33. package/dist/cjs/index-eb52922f.js +4 -0
  34. package/dist/cjs/index-eb52922f.js.map +1 -0
  35. package/dist/cjs/index.cjs.js +1 -1
  36. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  37. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  38. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  40. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  42. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  44. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  46. package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
  47. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  49. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  51. package/dist/cjs/kol-button-wc_3.cjs.entry.js +4 -0
  52. package/dist/cjs/kol-button-wc_3.cjs.entry.js.map +1 -0
  53. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  55. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  82. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  86. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-quote.cjs.entry.js +4 -0
  115. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -0
  116. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-span-wc.cjs.entry.js +4 -0
  121. package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -0
  122. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kolibri.cjs.js +1 -1
  141. package/dist/cjs/label-dc5092d3.js +4 -0
  142. package/dist/cjs/label-dc5092d3.js.map +1 -0
  143. package/dist/cjs/loader.cjs.js +1 -1
  144. package/dist/cjs/prop.validators-dd1f7878.js +4 -0
  145. package/dist/cjs/prop.validators-dd1f7878.js.map +1 -0
  146. package/dist/cjs/reuse-0fe7470f.js +4 -0
  147. package/dist/cjs/{reuse-bbd0b4e7.js.map → reuse-0fe7470f.js.map} +1 -1
  148. package/dist/cjs/{tab-index-1d448ede.js → tab-index-7bf0cb35.js} +1 -1
  149. package/dist/cjs/{tab-index-1d448ede.js.map → tab-index-7bf0cb35.js.map} +1 -1
  150. package/dist/cjs/{validation-1e8663e2.js → validation-60fd00e2.js} +1 -1
  151. package/dist/cjs/validation-60fd00e2.js.map +1 -0
  152. package/dist/cjs/{validation-2b3c81d9.js → validation-b38b683c.js} +1 -1
  153. package/dist/cjs/{validation-2b3c81d9.js.map → validation-b38b683c.js.map} +1 -1
  154. package/dist/components/component.js +1 -1
  155. package/dist/components/component.js.map +1 -1
  156. package/dist/components/component10.js +1 -1
  157. package/dist/components/component10.js.map +1 -1
  158. package/dist/components/component11.js +1 -1
  159. package/dist/components/component11.js.map +1 -1
  160. package/dist/components/component12.js +1 -1
  161. package/dist/components/component12.js.map +1 -1
  162. package/dist/components/component13.js +1 -1
  163. package/dist/components/component13.js.map +1 -1
  164. package/dist/components/component14.js +4 -0
  165. package/dist/components/component14.js.map +1 -0
  166. package/dist/components/component15.js +4 -0
  167. package/dist/components/component15.js.map +1 -0
  168. package/dist/components/component2.js +1 -1
  169. package/dist/components/component2.js.map +1 -1
  170. package/dist/components/component3.js +1 -1
  171. package/dist/components/component3.js.map +1 -1
  172. package/dist/components/component4.js.map +1 -1
  173. package/dist/components/component5.js +1 -1
  174. package/dist/components/component5.js.map +1 -1
  175. package/dist/components/component6.js +1 -1
  176. package/dist/components/component6.js.map +1 -1
  177. package/dist/components/component7.js +1 -1
  178. package/dist/components/component7.js.map +1 -1
  179. package/dist/components/component8.js +1 -1
  180. package/dist/components/component8.js.map +1 -1
  181. package/dist/components/component9.js +1 -1
  182. package/dist/components/component9.js.map +1 -1
  183. package/dist/components/controller-icon.js +1 -1
  184. package/dist/components/controller-icon.js.map +1 -1
  185. package/dist/components/controller.js +1 -1
  186. package/dist/components/controller.js.map +1 -1
  187. package/dist/components/controller2.js +1 -1
  188. package/dist/components/controller2.js.map +1 -1
  189. package/dist/components/controller3.js +1 -1
  190. package/dist/components/controller3.js.map +1 -1
  191. package/dist/components/controller4.js +1 -1
  192. package/dist/components/controller4.js.map +1 -1
  193. package/dist/components/devtools.js +1 -1
  194. package/dist/components/i18n.js +1 -1
  195. package/dist/components/i18n.js.map +1 -1
  196. package/dist/components/index.js +1 -1
  197. package/dist/components/kol-abbr.js +1 -1
  198. package/dist/components/kol-abbr.js.map +1 -1
  199. package/dist/components/kol-accordion.js +1 -1
  200. package/dist/components/kol-accordion.js.map +1 -1
  201. package/dist/components/kol-alert.js +1 -1
  202. package/dist/components/kol-badge.js +1 -1
  203. package/dist/components/kol-breadcrumb.js +1 -1
  204. package/dist/components/kol-breadcrumb.js.map +1 -1
  205. package/dist/components/kol-button-group-wc.js +1 -1
  206. package/dist/components/kol-button-group.js +1 -1
  207. package/dist/components/kol-button-group.js.map +1 -1
  208. package/dist/components/kol-button-link.js +1 -1
  209. package/dist/components/kol-button-link.js.map +1 -1
  210. package/dist/components/kol-button-wc.js +1 -1
  211. package/dist/components/kol-card.js +1 -1
  212. package/dist/components/kol-card.js.map +1 -1
  213. package/dist/components/kol-details.js +1 -1
  214. package/dist/components/kol-details.js.map +1 -1
  215. package/dist/components/kol-form.js +1 -1
  216. package/dist/components/kol-form.js.map +1 -1
  217. package/dist/components/kol-heading.js +1 -1
  218. package/dist/components/kol-heading.js.map +1 -1
  219. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  220. package/dist/components/kol-icon-icofont.js.map +1 -1
  221. package/dist/components/kol-image.js +1 -1
  222. package/dist/components/kol-image.js.map +1 -1
  223. package/dist/components/kol-indented-text.js +1 -1
  224. package/dist/components/kol-input-adapter-leanup.js +1 -1
  225. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  226. package/dist/components/kol-input-checkbox.js +1 -1
  227. package/dist/components/kol-input-checkbox.js.map +1 -1
  228. package/dist/components/kol-input-color.js +1 -1
  229. package/dist/components/kol-input-color.js.map +1 -1
  230. package/dist/components/kol-input-date.js +1 -1
  231. package/dist/components/kol-input-date.js.map +1 -1
  232. package/dist/components/kol-input-email.js +1 -1
  233. package/dist/components/kol-input-email.js.map +1 -1
  234. package/dist/components/kol-input-file.js +1 -1
  235. package/dist/components/kol-input-file.js.map +1 -1
  236. package/dist/components/kol-input-number.js +1 -1
  237. package/dist/components/kol-input-password.js +1 -1
  238. package/dist/components/kol-input-password.js.map +1 -1
  239. package/dist/components/kol-input-radio-group.js +1 -1
  240. package/dist/components/kol-input-radio-group.js.map +1 -1
  241. package/dist/components/kol-input-radio.js +1 -1
  242. package/dist/components/kol-input-range.js +1 -1
  243. package/dist/components/kol-input-range.js.map +1 -1
  244. package/dist/components/kol-input-text.js +1 -1
  245. package/dist/components/kol-input-text.js.map +1 -1
  246. package/dist/components/kol-input.js +1 -1
  247. package/dist/components/kol-kolibri.js +1 -1
  248. package/dist/components/kol-kolibri.js.map +1 -1
  249. package/dist/components/kol-link-button.js +1 -1
  250. package/dist/components/kol-link-button.js.map +1 -1
  251. package/dist/components/kol-link-group.js +1 -1
  252. package/dist/components/kol-link-group.js.map +1 -1
  253. package/dist/components/kol-link-wc.js +1 -1
  254. package/dist/components/kol-logo.js +1 -1
  255. package/dist/components/kol-logo.js.map +1 -1
  256. package/dist/components/kol-modal.js +1 -1
  257. package/dist/components/kol-modal.js.map +1 -1
  258. package/dist/components/kol-nav.js +1 -1
  259. package/dist/components/kol-nav.js.map +1 -1
  260. package/dist/components/kol-pagination.js +1 -1
  261. package/dist/components/kol-progress.js +1 -1
  262. package/dist/components/kol-progress.js.map +1 -1
  263. package/dist/components/kol-quote.d.ts +11 -0
  264. package/dist/components/kol-quote.js +4 -0
  265. package/dist/components/kol-quote.js.map +1 -0
  266. package/dist/components/kol-select.js +1 -1
  267. package/dist/components/kol-skip-nav.js +1 -1
  268. package/dist/components/kol-skip-nav.js.map +1 -1
  269. package/dist/components/kol-span.js +1 -1
  270. package/dist/components/kol-span.js.map +1 -1
  271. package/dist/components/kol-spin.js +1 -1
  272. package/dist/components/kol-spin.js.map +1 -1
  273. package/dist/components/kol-symbol.js.map +1 -1
  274. package/dist/components/kol-table.js +1 -1
  275. package/dist/components/kol-table.js.map +1 -1
  276. package/dist/components/kol-tabs.js +1 -1
  277. package/dist/components/kol-tabs.js.map +1 -1
  278. package/dist/components/kol-textarea.js +1 -1
  279. package/dist/components/kol-textarea.js.map +1 -1
  280. package/dist/components/kol-toast.js +1 -1
  281. package/dist/components/kol-toast.js.map +1 -1
  282. package/dist/components/kol-tooltip.js +1 -1
  283. package/dist/components/kol-version.js +1 -1
  284. package/dist/components/kol-version.js.map +1 -1
  285. package/dist/components/prop.validators.js +1 -1
  286. package/dist/components/prop.validators.js.map +1 -1
  287. package/dist/components/shadow.js +1 -1
  288. package/dist/components/shadow.js.map +1 -1
  289. package/dist/components/shadow2.js +1 -1
  290. package/dist/components/shadow2.js.map +1 -1
  291. package/dist/components/tab-index.js +4 -0
  292. package/dist/components/tab-index.js.map +1 -0
  293. package/dist/components/validation.js +1 -1
  294. package/dist/components/validation.js.map +1 -1
  295. package/dist/esm/a11y.tipps-1cea9822.js +4 -0
  296. package/dist/esm/a11y.tipps-1cea9822.js.map +1 -0
  297. package/dist/esm/app-globals-84870228.js +4 -0
  298. package/dist/esm/{app-globals-81f5e91d.js.map → app-globals-84870228.js.map} +1 -1
  299. package/dist/esm/{button-link-3d1888e3.js → button-link-0f3cba87.js} +1 -1
  300. package/dist/esm/button-link-0f3cba87.js.map +1 -0
  301. package/dist/esm/{controller-5bd06546.js → controller-0b0c0e12.js} +1 -1
  302. package/dist/esm/{controller-5bd06546.js.map → controller-0b0c0e12.js.map} +1 -1
  303. package/dist/esm/{controller-9926eaee.js → controller-0bcb86ac.js} +1 -1
  304. package/dist/esm/controller-0bcb86ac.js.map +1 -0
  305. package/dist/esm/{controller-ea28fcf8.js → controller-1827c5e4.js} +1 -1
  306. package/dist/esm/controller-1827c5e4.js.map +1 -0
  307. package/dist/esm/controller-873db1b1.js +4 -0
  308. package/dist/esm/controller-873db1b1.js.map +1 -0
  309. package/dist/esm/{controller-04bee517.js → controller-bc7e1fb9.js} +1 -1
  310. package/dist/esm/controller-bc7e1fb9.js.map +1 -0
  311. package/dist/esm/controller-fd64aa81.js +4 -0
  312. package/dist/esm/controller-fd64aa81.js.map +1 -0
  313. package/dist/esm/{controller-icon-2a9f5c13.js → controller-icon-b3feb2a8.js} +1 -1
  314. package/dist/esm/controller-icon-b3feb2a8.js.map +1 -0
  315. package/dist/esm/{dev.utils-05f4e663.js → dev.utils-157f0499.js} +1 -1
  316. package/dist/esm/{dev.utils-05f4e663.js.map → dev.utils-157f0499.js.map} +1 -1
  317. package/dist/esm/{devtools-640ace8d.js → devtools-cb70c2f9.js} +1 -1
  318. package/dist/esm/{devtools-640ace8d.js.map → devtools-cb70c2f9.js.map} +1 -1
  319. package/dist/esm/{i18n-8e14d822.js → i18n-c97dc260.js} +1 -1
  320. package/dist/esm/{i18n-8e14d822.js.map → i18n-c97dc260.js.map} +1 -1
  321. package/dist/esm/{icon-cab2d129.js → icon-00018c54.js} +1 -1
  322. package/dist/esm/icon-00018c54.js.map +1 -0
  323. package/dist/esm/index-81bd9b41.js +4 -0
  324. package/dist/esm/index-81bd9b41.js.map +1 -0
  325. package/dist/esm/index-a007a589.js +4 -0
  326. package/dist/esm/index-a007a589.js.map +1 -0
  327. package/dist/esm/index.js +1 -1
  328. package/dist/esm/kol-abbr.entry.js +1 -1
  329. package/dist/esm/kol-abbr.entry.js.map +1 -1
  330. package/dist/esm/kol-accordion.entry.js +1 -1
  331. package/dist/esm/kol-accordion.entry.js.map +1 -1
  332. package/dist/esm/kol-alert.entry.js +1 -1
  333. package/dist/esm/kol-alert.entry.js.map +1 -1
  334. package/dist/esm/kol-badge.entry.js +1 -1
  335. package/dist/esm/kol-badge.entry.js.map +1 -1
  336. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  337. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  338. package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
  339. package/dist/esm/kol-button-group.entry.js +1 -1
  340. package/dist/esm/kol-button-group.entry.js.map +1 -1
  341. package/dist/esm/kol-button-link.entry.js +1 -1
  342. package/dist/esm/kol-button-link.entry.js.map +1 -1
  343. package/dist/esm/kol-button-wc_3.entry.js +4 -0
  344. package/dist/esm/kol-button-wc_3.entry.js.map +1 -0
  345. package/dist/esm/kol-button.entry.js +1 -1
  346. package/dist/esm/kol-button.entry.js.map +1 -1
  347. package/dist/esm/kol-card.entry.js +1 -1
  348. package/dist/esm/kol-card.entry.js.map +1 -1
  349. package/dist/esm/kol-details.entry.js +1 -1
  350. package/dist/esm/kol-details.entry.js.map +1 -1
  351. package/dist/esm/kol-form.entry.js +1 -1
  352. package/dist/esm/kol-form.entry.js.map +1 -1
  353. package/dist/esm/kol-heading.entry.js +1 -1
  354. package/dist/esm/kol-heading.entry.js.map +1 -1
  355. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  356. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  357. package/dist/esm/kol-icon.entry.js +1 -1
  358. package/dist/esm/kol-icon.entry.js.map +1 -1
  359. package/dist/esm/kol-image.entry.js +1 -1
  360. package/dist/esm/kol-image.entry.js.map +1 -1
  361. package/dist/esm/kol-indented-text.entry.js +1 -1
  362. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  363. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  364. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  365. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  366. package/dist/esm/kol-input-color.entry.js +1 -1
  367. package/dist/esm/kol-input-color.entry.js.map +1 -1
  368. package/dist/esm/kol-input-date.entry.js +1 -1
  369. package/dist/esm/kol-input-date.entry.js.map +1 -1
  370. package/dist/esm/kol-input-email.entry.js +1 -1
  371. package/dist/esm/kol-input-email.entry.js.map +1 -1
  372. package/dist/esm/kol-input-file.entry.js +1 -1
  373. package/dist/esm/kol-input-file.entry.js.map +1 -1
  374. package/dist/esm/kol-input-number.entry.js +1 -1
  375. package/dist/esm/kol-input-number.entry.js.map +1 -1
  376. package/dist/esm/kol-input-password.entry.js +1 -1
  377. package/dist/esm/kol-input-password.entry.js.map +1 -1
  378. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  379. package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
  380. package/dist/esm/kol-input-radio.entry.js +1 -1
  381. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  382. package/dist/esm/kol-input-range.entry.js +1 -1
  383. package/dist/esm/kol-input-range.entry.js.map +1 -1
  384. package/dist/esm/kol-input-text.entry.js +1 -1
  385. package/dist/esm/kol-input-text.entry.js.map +1 -1
  386. package/dist/esm/kol-kolibri.entry.js +1 -1
  387. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  388. package/dist/esm/kol-link-button.entry.js +1 -1
  389. package/dist/esm/kol-link-button.entry.js.map +1 -1
  390. package/dist/esm/kol-link-group.entry.js +1 -1
  391. package/dist/esm/kol-link-group.entry.js.map +1 -1
  392. package/dist/esm/kol-link-wc.entry.js +1 -1
  393. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  394. package/dist/esm/kol-link.entry.js +1 -1
  395. package/dist/esm/kol-link.entry.js.map +1 -1
  396. package/dist/esm/kol-logo.entry.js +1 -1
  397. package/dist/esm/kol-logo.entry.js.map +1 -1
  398. package/dist/esm/kol-modal.entry.js +1 -1
  399. package/dist/esm/kol-modal.entry.js.map +1 -1
  400. package/dist/esm/kol-nav.entry.js +1 -1
  401. package/dist/esm/kol-nav.entry.js.map +1 -1
  402. package/dist/esm/kol-pagination.entry.js +1 -1
  403. package/dist/esm/kol-pagination.entry.js.map +1 -1
  404. package/dist/esm/kol-progress.entry.js +1 -1
  405. package/dist/esm/kol-progress.entry.js.map +1 -1
  406. package/dist/esm/kol-quote.entry.js +4 -0
  407. package/dist/esm/kol-quote.entry.js.map +1 -0
  408. package/dist/esm/kol-select.entry.js +1 -1
  409. package/dist/esm/kol-select.entry.js.map +1 -1
  410. package/dist/esm/kol-skip-nav.entry.js +1 -1
  411. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  412. package/dist/esm/kol-span-wc.entry.js +4 -0
  413. package/dist/esm/kol-span-wc.entry.js.map +1 -0
  414. package/dist/esm/kol-span.entry.js +1 -1
  415. package/dist/esm/kol-span.entry.js.map +1 -1
  416. package/dist/esm/kol-spin.entry.js +1 -1
  417. package/dist/esm/kol-spin.entry.js.map +1 -1
  418. package/dist/esm/kol-symbol.entry.js +1 -1
  419. package/dist/esm/kol-symbol.entry.js.map +1 -1
  420. package/dist/esm/kol-table.entry.js +1 -1
  421. package/dist/esm/kol-table.entry.js.map +1 -1
  422. package/dist/esm/kol-tabs.entry.js +1 -1
  423. package/dist/esm/kol-tabs.entry.js.map +1 -1
  424. package/dist/esm/kol-textarea.entry.js +1 -1
  425. package/dist/esm/kol-textarea.entry.js.map +1 -1
  426. package/dist/esm/kol-toast.entry.js +1 -1
  427. package/dist/esm/kol-toast.entry.js.map +1 -1
  428. package/dist/esm/kol-tooltip.entry.js +1 -1
  429. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  430. package/dist/esm/kol-version.entry.js +1 -1
  431. package/dist/esm/kol-version.entry.js.map +1 -1
  432. package/dist/esm/kolibri.js +1 -1
  433. package/dist/esm/label-d51b1a57.js +4 -0
  434. package/dist/esm/label-d51b1a57.js.map +1 -0
  435. package/dist/esm/loader.js +1 -1
  436. package/dist/esm/prop.validators-e402ad49.js +4 -0
  437. package/dist/esm/prop.validators-e402ad49.js.map +1 -0
  438. package/dist/esm/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +1 -1
  439. package/dist/esm/{reuse-56bb5a4b.js.map → reuse-3a02afb9.js.map} +1 -1
  440. package/dist/esm/{tab-index-22c62334.js → tab-index-63d1379d.js} +1 -1
  441. package/dist/esm/{tab-index-22c62334.js.map → tab-index-63d1379d.js.map} +1 -1
  442. package/dist/esm/validation-ab9a6c0d.js +4 -0
  443. package/dist/esm/validation-ab9a6c0d.js.map +1 -0
  444. package/dist/esm/validation-b331e3a7.js +4 -0
  445. package/dist/esm/{validation-d9821b54.js.map → validation-b331e3a7.js.map} +1 -1
  446. package/dist/kolibri/a11y.tipps-1cea9822.js +4 -0
  447. package/dist/kolibri/a11y.tipps-1cea9822.js.map +1 -0
  448. package/dist/kolibri/app-globals-84870228.js +4 -0
  449. package/dist/kolibri/assets/bpa-icons/bpa-icons.eot +0 -0
  450. package/dist/kolibri/assets/bpa-icons/bpa-icons.json +1115 -0
  451. package/dist/kolibri/assets/bpa-icons/bpa-icons.svg +432 -0
  452. package/dist/kolibri/assets/bpa-icons/bpa-icons.symbol.svg +1449 -0
  453. package/dist/kolibri/assets/bpa-icons/bpa-icons.ttf +0 -0
  454. package/dist/kolibri/assets/bpa-icons/bpa-icons.woff +0 -0
  455. package/dist/kolibri/assets/bpa-icons/bpa-icons.woff2 +0 -0
  456. package/dist/kolibri/assets/bpa-icons/style.css +159 -0
  457. package/dist/kolibri/assets/bpa-icons/style.less +157 -0
  458. package/dist/kolibri/assets/bpa-icons/style.module.less +160 -0
  459. package/dist/kolibri/assets/bpa-icons/style.scss +299 -0
  460. package/dist/kolibri/assets/bpa-icons/style.styl +157 -0
  461. package/dist/kolibri/assets/codicons/LICENSE +395 -0
  462. package/dist/kolibri/assets/codicons/LICENSE-CODE +21 -0
  463. package/dist/kolibri/assets/codicons/codicon.css +19 -1
  464. package/dist/kolibri/assets/codicons/codicon.csv +14 -1
  465. package/dist/kolibri/assets/codicons/codicon.html +112 -8
  466. package/dist/kolibri/assets/codicons/codicon.svg +1 -1
  467. package/dist/kolibri/assets/codicons/codicon.ttf +0 -0
  468. package/dist/kolibri/assets/modal-simulation.js +1 -1
  469. package/dist/kolibri/assets/nav-simulation.js +1 -1
  470. package/dist/kolibri/assets/progress-simulation.js +1 -1
  471. package/dist/kolibri/assets/smart-button-simulation.js +1 -1
  472. package/dist/kolibri/assets/style.css +40 -12
  473. package/dist/kolibri/assets/table-simulation.js +1 -1
  474. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.eot +0 -0
  475. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.ttf +0 -0
  476. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff +0 -0
  477. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff2 +0 -0
  478. package/dist/kolibri/assets/tabler-icons/tabler-icons.css +16057 -0
  479. package/dist/kolibri/assets/tabler-icons/tabler-icons.html +36226 -0
  480. package/dist/kolibri/assets/tabler-icons/tabler-icons.min.css +4 -0
  481. package/dist/kolibri/assets/tabler-icons/tabler-icons.png +0 -0
  482. package/dist/kolibri/assets/tabler-icons/tabler-icons.scss +8058 -0
  483. package/dist/kolibri/assets/toast-simulation.js +1 -1
  484. package/dist/kolibri/assets/tooltip-simulation.js +1 -0
  485. package/dist/kolibri/button-link-0f3cba87.js +4 -0
  486. package/dist/kolibri/button-link-0f3cba87.js.map +1 -0
  487. package/dist/kolibri/controller-0b0c0e12.js +4 -0
  488. package/dist/kolibri/{controller-9926eaee.js → controller-0bcb86ac.js} +1 -1
  489. package/dist/kolibri/controller-0bcb86ac.js.map +1 -0
  490. package/dist/kolibri/{controller-ea28fcf8.js → controller-1827c5e4.js} +1 -1
  491. package/dist/kolibri/controller-1827c5e4.js.map +1 -0
  492. package/dist/kolibri/{controller-32fdeebb.js → controller-873db1b1.js} +1 -1
  493. package/dist/kolibri/controller-873db1b1.js.map +1 -0
  494. package/dist/kolibri/{controller-04bee517.js → controller-bc7e1fb9.js} +1 -1
  495. package/dist/kolibri/controller-bc7e1fb9.js.map +1 -0
  496. package/dist/kolibri/controller-fd64aa81.js +4 -0
  497. package/dist/kolibri/controller-fd64aa81.js.map +1 -0
  498. package/dist/kolibri/controller-icon-b3feb2a8.js +4 -0
  499. package/dist/kolibri/controller-icon-b3feb2a8.js.map +1 -0
  500. package/dist/kolibri/{dev.utils-05f4e663.js → dev.utils-157f0499.js} +1 -1
  501. package/dist/kolibri/dev.utils-157f0499.js.map +1 -0
  502. package/dist/kolibri/{devtools-640ace8d.js → devtools-cb70c2f9.js} +1 -1
  503. package/dist/kolibri/{i18n-8e14d822.js → i18n-c97dc260.js} +1 -1
  504. package/dist/kolibri/{icon-cab2d129.js → icon-00018c54.js} +1 -1
  505. package/dist/kolibri/icon-00018c54.js.map +1 -0
  506. package/dist/kolibri/index-81bd9b41.js +4 -0
  507. package/dist/kolibri/index-81bd9b41.js.map +1 -0
  508. package/dist/kolibri/index-a007a589.js +4 -0
  509. package/dist/kolibri/index-a007a589.js.map +1 -0
  510. package/dist/kolibri/index.esm.js +1 -1
  511. package/dist/kolibri/kol-abbr.entry.js +1 -1
  512. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  513. package/dist/kolibri/kol-accordion.entry.js +1 -1
  514. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  515. package/dist/kolibri/kol-alert.entry.js +1 -1
  516. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  517. package/dist/kolibri/kol-badge.entry.js +1 -1
  518. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  519. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  520. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  521. package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
  522. package/dist/kolibri/kol-button-group.entry.js +1 -1
  523. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  524. package/dist/kolibri/kol-button-link.entry.js +1 -1
  525. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  526. package/dist/kolibri/kol-button-wc_3.entry.js +4 -0
  527. package/dist/kolibri/kol-button-wc_3.entry.js.map +1 -0
  528. package/dist/kolibri/kol-button.entry.js +1 -1
  529. package/dist/kolibri/kol-button.entry.js.map +1 -1
  530. package/dist/kolibri/kol-card.entry.js +1 -1
  531. package/dist/kolibri/kol-card.entry.js.map +1 -1
  532. package/dist/kolibri/kol-details.entry.js +1 -1
  533. package/dist/kolibri/kol-details.entry.js.map +1 -1
  534. package/dist/kolibri/kol-form.entry.js +1 -1
  535. package/dist/kolibri/kol-form.entry.js.map +1 -1
  536. package/dist/kolibri/kol-heading.entry.js +1 -1
  537. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  538. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  539. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  540. package/dist/kolibri/kol-icon.entry.js +1 -1
  541. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  542. package/dist/kolibri/kol-image.entry.js +1 -1
  543. package/dist/kolibri/kol-image.entry.js.map +1 -1
  544. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  545. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  546. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  547. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  548. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  549. package/dist/kolibri/kol-input-color.entry.js +1 -1
  550. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  551. package/dist/kolibri/kol-input-date.entry.js +1 -1
  552. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  553. package/dist/kolibri/kol-input-email.entry.js +1 -1
  554. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  555. package/dist/kolibri/kol-input-file.entry.js +1 -1
  556. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  557. package/dist/kolibri/kol-input-number.entry.js +1 -1
  558. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  559. package/dist/kolibri/kol-input-password.entry.js +1 -1
  560. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  561. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  562. package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
  563. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  564. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  565. package/dist/kolibri/kol-input-range.entry.js +1 -1
  566. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  567. package/dist/kolibri/kol-input-text.entry.js +1 -1
  568. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  569. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  570. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  571. package/dist/kolibri/kol-link-button.entry.js +1 -1
  572. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  573. package/dist/kolibri/kol-link-group.entry.js +1 -1
  574. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  575. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  576. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  577. package/dist/kolibri/kol-link.entry.js +1 -1
  578. package/dist/kolibri/kol-link.entry.js.map +1 -1
  579. package/dist/kolibri/kol-logo.entry.js +1 -1
  580. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  581. package/dist/kolibri/kol-modal.entry.js +1 -1
  582. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  583. package/dist/kolibri/kol-nav.entry.js +1 -1
  584. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  585. package/dist/kolibri/kol-pagination.entry.js +1 -1
  586. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  587. package/dist/kolibri/kol-progress.entry.js +1 -1
  588. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  589. package/dist/kolibri/kol-quote.entry.js +4 -0
  590. package/dist/kolibri/kol-quote.entry.js.map +1 -0
  591. package/dist/kolibri/kol-select.entry.js +1 -1
  592. package/dist/kolibri/kol-select.entry.js.map +1 -1
  593. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  594. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  595. package/dist/kolibri/kol-span-wc.entry.js +4 -0
  596. package/dist/kolibri/kol-span-wc.entry.js.map +1 -0
  597. package/dist/kolibri/kol-span.entry.js +1 -1
  598. package/dist/kolibri/kol-span.entry.js.map +1 -1
  599. package/dist/kolibri/kol-spin.entry.js +1 -1
  600. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  601. package/dist/kolibri/kol-symbol.entry.js +1 -1
  602. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  603. package/dist/kolibri/kol-table.entry.js +1 -1
  604. package/dist/kolibri/kol-table.entry.js.map +1 -1
  605. package/dist/kolibri/kol-tabs.entry.js +1 -1
  606. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  607. package/dist/kolibri/kol-textarea.entry.js +1 -1
  608. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  609. package/dist/kolibri/kol-toast.entry.js +1 -1
  610. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  611. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  612. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  613. package/dist/kolibri/kol-version.entry.js +1 -1
  614. package/dist/kolibri/kol-version.entry.js.map +1 -1
  615. package/dist/kolibri/kolibri.esm.js +1 -1
  616. package/dist/kolibri/kolibri.esm.js.map +1 -1
  617. package/dist/kolibri/label-d51b1a57.js +4 -0
  618. package/dist/kolibri/label-d51b1a57.js.map +1 -0
  619. package/dist/kolibri/prop.validators-e402ad49.js +4 -0
  620. package/dist/kolibri/prop.validators-e402ad49.js.map +1 -0
  621. package/dist/kolibri/reuse-3a02afb9.js.map +1 -0
  622. package/dist/kolibri/tab-index-63d1379d.js +4 -0
  623. package/dist/kolibri/validation-ab9a6c0d.js +4 -0
  624. package/dist/kolibri/validation-ab9a6c0d.js.map +1 -0
  625. package/dist/kolibri/{validation-d9821b54.js → validation-b331e3a7.js} +1 -1
  626. package/dist/types/components/@deprecated/input/controller.d.ts +4 -0
  627. package/dist/types/components/abbr/component.d.ts +5 -16
  628. package/dist/types/components/abbr/test/html.mock.d.ts +1 -1
  629. package/dist/types/components/abbr/types.d.ts +14 -0
  630. package/dist/types/components/accordion/component.d.ts +2 -20
  631. package/dist/types/components/accordion/test/html.mock.d.ts +1 -1
  632. package/dist/types/components/accordion/types.d.ts +21 -0
  633. package/dist/types/components/alert/component.d.ts +2 -18
  634. package/dist/types/components/alert/test/html.mock.d.ts +1 -1
  635. package/dist/types/components/alert/types.d.ts +24 -0
  636. package/dist/types/components/breadcrumb/component.d.ts +5 -5
  637. package/dist/types/components/button/component.d.ts +6 -6
  638. package/dist/types/components/button/shadow.d.ts +4 -4
  639. package/dist/types/components/button/test/html.mock.d.ts +1 -1
  640. package/dist/types/components/button-link/component.d.ts +3 -3
  641. package/dist/types/components/card/component.d.ts +2 -2
  642. package/dist/types/components/form/controller.d.ts +2 -2
  643. package/dist/types/components/icon/component.d.ts +1 -1
  644. package/dist/types/components/image/test/html.mock.d.ts +2 -0
  645. package/dist/types/components/image/types.d.ts +1 -0
  646. package/dist/types/components/input/types.d.ts +5 -8
  647. package/dist/types/components/input-checkbox/component.d.ts +2 -2
  648. package/dist/types/components/input-checkbox/controller.d.ts +1 -1
  649. package/dist/types/components/input-checkbox/types.d.ts +5 -8
  650. package/dist/types/components/input-color/component.d.ts +1 -1
  651. package/dist/types/components/input-date/component.d.ts +1 -1
  652. package/dist/types/components/input-date/types.d.ts +1 -1
  653. package/dist/types/components/input-email/component.d.ts +1 -1
  654. package/dist/types/components/input-email/types.d.ts +3 -2
  655. package/dist/types/components/input-file/component.d.ts +1 -1
  656. package/dist/types/components/input-number/component.d.ts +1 -1
  657. package/dist/types/components/input-number/types.d.ts +1 -0
  658. package/dist/types/components/input-password/component.d.ts +1 -1
  659. package/dist/types/components/input-password/types.d.ts +1 -0
  660. package/dist/types/components/input-radio/component.d.ts +1 -1
  661. package/dist/types/components/input-radio-group/component.d.ts +1 -1
  662. package/dist/types/components/input-range/component.d.ts +1 -1
  663. package/dist/types/components/input-text/component.d.ts +2 -2
  664. package/dist/types/components/input-text/controller.d.ts +2 -3
  665. package/dist/types/components/input-text/types.d.ts +3 -3
  666. package/dist/types/components/link/component.d.ts +6 -12
  667. package/dist/types/components/link/shadow.d.ts +4 -4
  668. package/dist/types/components/link-button/component.d.ts +5 -13
  669. package/dist/types/components/link-group/component.d.ts +7 -7
  670. package/dist/types/components/modal/component.d.ts +0 -4
  671. package/dist/types/components/nav/component.d.ts +18 -19
  672. package/dist/types/components/nav/validation.d.ts +3 -3
  673. package/dist/types/components/pagination/component.d.ts +5 -5
  674. package/dist/types/components/quote/shadow.d.ts +15 -0
  675. package/dist/types/components/quote/test/html.mock.d.ts +6 -0
  676. package/dist/types/components/quote/types.d.ts +22 -0
  677. package/dist/types/components/select/component.d.ts +1 -1
  678. package/dist/types/components/select/types.d.ts +1 -0
  679. package/dist/types/components/skip-nav/component.d.ts +5 -5
  680. package/dist/types/components/tabs/component.d.ts +6 -6
  681. package/dist/types/components/textarea/component.d.ts +1 -1
  682. package/dist/types/components/textarea/types.d.ts +5 -6
  683. package/dist/types/components/toast/component.d.ts +3 -4
  684. package/dist/types/components/toast/toaster.d.ts +1 -1
  685. package/dist/types/components/tooltip/component.d.ts +4 -4
  686. package/dist/types/components.d.ts +139 -92
  687. package/dist/types/core/declare.d.ts +10 -0
  688. package/dist/types/i18n.d.ts +1 -1
  689. package/dist/types/index.d.ts +1 -1
  690. package/dist/types/schema/index.d.ts +1 -1
  691. package/dist/types/types/button-link-text.d.ts +30 -0
  692. package/dist/types/types/button-link.d.ts +17 -34
  693. package/dist/types/types/icon.d.ts +10 -32
  694. package/dist/types/types/props/adjust-height.d.ts +5 -0
  695. package/dist/types/types/props/alert.d.ts +5 -0
  696. package/dist/types/types/props/alignment.d.ts +1 -1
  697. package/dist/types/types/props/aria-current.d.ts +6 -0
  698. package/dist/types/types/props/aria-expanded.d.ts +5 -0
  699. package/dist/types/types/props/aria-selected.d.ts +5 -0
  700. package/dist/types/types/props/checked.d.ts +5 -0
  701. package/dist/types/types/props/collapsible.d.ts +5 -0
  702. package/dist/types/types/props/compact.d.ts +5 -0
  703. package/dist/types/types/props/disabled.d.ts +5 -0
  704. package/dist/types/types/props/has-closer.d.ts +5 -0
  705. package/dist/types/types/props/has-compact-button.d.ts +5 -0
  706. package/dist/types/types/props/has-counter.d.ts +5 -0
  707. package/dist/types/types/props/has-footer.d.ts +5 -0
  708. package/dist/types/types/props/hide-label.d.ts +5 -0
  709. package/dist/types/{utils/validators → types/props}/icon.d.ts +8 -4
  710. package/dist/types/types/props/indeterminate.d.ts +5 -0
  711. package/dist/types/types/props/index.d.ts +1 -0
  712. package/dist/types/{utils/validators → types/props}/label.d.ts +7 -3
  713. package/dist/types/types/props/multiple.d.ts +5 -0
  714. package/dist/types/types/props/open.d.ts +5 -0
  715. package/dist/types/types/props/read-only.d.ts +5 -0
  716. package/dist/types/types/props/required.d.ts +5 -0
  717. package/dist/types/types/props/show.d.ts +6 -0
  718. package/dist/types/types/props/stealth.d.ts +5 -0
  719. package/dist/types/types/props/touched.d.ts +5 -0
  720. package/dist/types/utils/a11y.tipps.d.ts +1 -0
  721. package/dist/types/utils/prop.validators.d.ts +2 -2
  722. package/dist/types/utils/reuse.d.ts +1 -1
  723. package/dist/types/utils/validators/alignment.d.ts +2 -2
  724. package/doc/abbr.md +1 -28
  725. package/doc/accordion.md +1 -38
  726. package/doc/alert.md +1 -26
  727. package/doc/badge.md +8 -32
  728. package/doc/breadcrumb.md +5 -40
  729. package/doc/button-link.md +20 -45
  730. package/doc/button.md +28 -53
  731. package/doc/card.md +0 -30
  732. package/doc/components.md +3 -3
  733. package/doc/details.md +0 -23
  734. package/doc/icon-font-awesome.md +1 -1
  735. package/doc/icon-icofont.md +1 -1
  736. package/doc/icon.md +14 -7
  737. package/doc/indented-text.md +0 -23
  738. package/doc/input-adapter-leanup.md +1 -3
  739. package/doc/input-checkbox.md +21 -46
  740. package/doc/input-color.md +26 -51
  741. package/doc/input-date.md +25 -50
  742. package/doc/input-email.md +26 -51
  743. package/doc/input-file.md +20 -45
  744. package/doc/input-number.md +26 -51
  745. package/doc/input-password.md +24 -49
  746. package/doc/input-radio-group.md +2 -4
  747. package/doc/input-radio.md +2 -27
  748. package/doc/input-range.md +21 -46
  749. package/doc/input-text.md +26 -51
  750. package/doc/kolibri.md +0 -23
  751. package/doc/link-button.md +21 -48
  752. package/doc/link-group.md +2 -29
  753. package/doc/link.md +25 -59
  754. package/doc/logo.md +0 -23
  755. package/doc/modal.md +0 -24
  756. package/doc/nav.md +19 -47
  757. package/doc/pagination.md +1 -26
  758. package/doc/progress.md +0 -23
  759. package/doc/quote.md +49 -0
  760. package/doc/select.md +26 -58
  761. package/doc/skip-nav.md +5 -39
  762. package/doc/span.md +7 -30
  763. package/doc/spin.md +0 -23
  764. package/doc/table.md +8 -33
  765. package/doc/tabs.md +2 -27
  766. package/doc/textarea.md +23 -48
  767. package/doc/toast.md +1 -26
  768. package/doc/tooltip.md +3 -28
  769. package/doc/version.md +1 -24
  770. package/jest-test-results.json +1 -1
  771. package/package.json +1 -1
  772. package/vscode-custom-data.json +50 -21
  773. package/dist/cjs/a11y.tipps-4af0092d.js +0 -4
  774. package/dist/cjs/a11y.tipps-4af0092d.js.map +0 -1
  775. package/dist/cjs/button-link-89ed5382.js.map +0 -1
  776. package/dist/cjs/controller-2405dd04.js.map +0 -1
  777. package/dist/cjs/controller-8e2cebc1.js +0 -4
  778. package/dist/cjs/controller-8e2cebc1.js.map +0 -1
  779. package/dist/cjs/controller-94b357a3.js.map +0 -1
  780. package/dist/cjs/controller-d0743a95.js.map +0 -1
  781. package/dist/cjs/controller-dbbddbe7.js +0 -4
  782. package/dist/cjs/controller-dbbddbe7.js.map +0 -1
  783. package/dist/cjs/controller-icon-b87565c4.js.map +0 -1
  784. package/dist/cjs/icon-ccf4ad42.js.map +0 -1
  785. package/dist/cjs/index-e9fcaeca.js +0 -4
  786. package/dist/cjs/index-e9fcaeca.js.map +0 -1
  787. package/dist/cjs/index-ecda65e0.js +0 -4
  788. package/dist/cjs/index-ecda65e0.js.map +0 -1
  789. package/dist/cjs/kol-button-wc_2.cjs.entry.js +0 -4
  790. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +0 -1
  791. package/dist/cjs/kol-heading-wc_2.cjs.entry.js +0 -4
  792. package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +0 -1
  793. package/dist/cjs/label-ce9fe285.js +0 -4
  794. package/dist/cjs/label-ce9fe285.js.map +0 -1
  795. package/dist/cjs/prop.validators-69d5cf89.js +0 -4
  796. package/dist/cjs/prop.validators-69d5cf89.js.map +0 -1
  797. package/dist/cjs/reuse-bbd0b4e7.js +0 -4
  798. package/dist/cjs/validation-1e8663e2.js.map +0 -1
  799. package/dist/esm/a11y.tipps-5cdbd5e2.js +0 -4
  800. package/dist/esm/a11y.tipps-5cdbd5e2.js.map +0 -1
  801. package/dist/esm/app-globals-81f5e91d.js +0 -4
  802. package/dist/esm/button-link-3d1888e3.js.map +0 -1
  803. package/dist/esm/controller-04bee517.js.map +0 -1
  804. package/dist/esm/controller-32fdeebb.js +0 -4
  805. package/dist/esm/controller-32fdeebb.js.map +0 -1
  806. package/dist/esm/controller-944c3e03.js +0 -4
  807. package/dist/esm/controller-944c3e03.js.map +0 -1
  808. package/dist/esm/controller-9926eaee.js.map +0 -1
  809. package/dist/esm/controller-ea28fcf8.js.map +0 -1
  810. package/dist/esm/controller-icon-2a9f5c13.js.map +0 -1
  811. package/dist/esm/icon-cab2d129.js.map +0 -1
  812. package/dist/esm/index-4f2a12cc.js +0 -4
  813. package/dist/esm/index-4f2a12cc.js.map +0 -1
  814. package/dist/esm/index-676dbf61.js +0 -4
  815. package/dist/esm/index-676dbf61.js.map +0 -1
  816. package/dist/esm/kol-button-wc_2.entry.js +0 -4
  817. package/dist/esm/kol-button-wc_2.entry.js.map +0 -1
  818. package/dist/esm/kol-heading-wc_2.entry.js +0 -4
  819. package/dist/esm/kol-heading-wc_2.entry.js.map +0 -1
  820. package/dist/esm/label-ea9f2a1a.js +0 -4
  821. package/dist/esm/label-ea9f2a1a.js.map +0 -1
  822. package/dist/esm/prop.validators-769a843a.js +0 -4
  823. package/dist/esm/prop.validators-769a843a.js.map +0 -1
  824. package/dist/esm/validation-d9821b54.js +0 -4
  825. package/dist/esm/validation-f13f1eed.js +0 -4
  826. package/dist/esm/validation-f13f1eed.js.map +0 -1
  827. package/dist/kolibri/a11y.tipps-5cdbd5e2.js +0 -4
  828. package/dist/kolibri/a11y.tipps-5cdbd5e2.js.map +0 -1
  829. package/dist/kolibri/app-globals-81f5e91d.js +0 -4
  830. package/dist/kolibri/button-link-3d1888e3.js +0 -4
  831. package/dist/kolibri/button-link-3d1888e3.js.map +0 -1
  832. package/dist/kolibri/controller-04bee517.js.map +0 -1
  833. package/dist/kolibri/controller-32fdeebb.js.map +0 -1
  834. package/dist/kolibri/controller-5bd06546.js +0 -4
  835. package/dist/kolibri/controller-944c3e03.js +0 -4
  836. package/dist/kolibri/controller-944c3e03.js.map +0 -1
  837. package/dist/kolibri/controller-9926eaee.js.map +0 -1
  838. package/dist/kolibri/controller-ea28fcf8.js.map +0 -1
  839. package/dist/kolibri/controller-icon-2a9f5c13.js +0 -4
  840. package/dist/kolibri/controller-icon-2a9f5c13.js.map +0 -1
  841. package/dist/kolibri/dev.utils-05f4e663.js.map +0 -1
  842. package/dist/kolibri/icon-cab2d129.js.map +0 -1
  843. package/dist/kolibri/index-4f2a12cc.js +0 -4
  844. package/dist/kolibri/index-4f2a12cc.js.map +0 -1
  845. package/dist/kolibri/index-676dbf61.js +0 -4
  846. package/dist/kolibri/index-676dbf61.js.map +0 -1
  847. package/dist/kolibri/kol-button-wc_2.entry.js +0 -4
  848. package/dist/kolibri/kol-button-wc_2.entry.js.map +0 -1
  849. package/dist/kolibri/kol-heading-wc_2.entry.js +0 -4
  850. package/dist/kolibri/kol-heading-wc_2.entry.js.map +0 -1
  851. package/dist/kolibri/label-ea9f2a1a.js +0 -4
  852. package/dist/kolibri/label-ea9f2a1a.js.map +0 -1
  853. package/dist/kolibri/prop.validators-769a843a.js +0 -4
  854. package/dist/kolibri/prop.validators-769a843a.js.map +0 -1
  855. package/dist/kolibri/reuse-56bb5a4b.js.map +0 -1
  856. package/dist/kolibri/tab-index-22c62334.js +0 -4
  857. package/dist/kolibri/validation-f13f1eed.js +0 -4
  858. package/dist/kolibri/validation-f13f1eed.js.map +0 -1
  859. package/dist/types/types/alert.d.ts +0 -6
  860. /package/dist/kolibri/{app-globals-81f5e91d.js.map → app-globals-84870228.js.map} +0 -0
  861. /package/dist/kolibri/{controller-5bd06546.js.map → controller-0b0c0e12.js.map} +0 -0
  862. /package/dist/kolibri/{devtools-640ace8d.js.map → devtools-cb70c2f9.js.map} +0 -0
  863. /package/dist/kolibri/{i18n-8e14d822.js.map → i18n-c97dc260.js.map} +0 -0
  864. /package/dist/kolibri/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +0 -0
  865. /package/dist/kolibri/{tab-index-22c62334.js.map → tab-index-63d1379d.js.map} +0 -0
  866. /package/dist/kolibri/{validation-d9821b54.js.map → validation-b331e3a7.js.map} +0 -0
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-29c5d3c6.js"),buttonLink=require("./button-link-89ed5382.js"),a11y_tipps=require("./a11y.tipps-4af0092d.js"),dev_utils=require("./dev.utils-7123fb34.js"),prop_validators=require("./prop.validators-69d5cf89.js"),reuse=require("./reuse-bbd0b4e7.js"),icon=require("./icon-ccf4ad42.js"),label=require("./label-ce9fe285.js"),tabIndex=require("./tab-index-1d448ede.js"),controller=require("./controller-dbbddbe7.js"),controller$1=require("./controller-ce13f0a2.js");require("./index-e9fcaeca.js");const KolButtonWc=class{constructor(t){index.registerInstance(this,t),this.nonce=dev_utils.nonce(),this.catchRef=t=>{this.ref=t,reuse.propergateFocus(this.host,this.ref)},this.onClick=t=>{var i,a;"submit"===this.state._type?controller.propergateSubmitEventToForm({form:this.host,ref:this.ref}):"reset"===this.state._type?controller.propergateResetEventToForm({form:this.host,ref:this.ref}):"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onClick)?(prop_validators.setEventTargetAndStopPropagation(t,this.ref),null===(a=this.state._on)||void 0===a||a.onClick(t,this.state._value)):a11y_tipps.devHint("It was no button click callback configured!")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=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 index.h(index.Host,null,index.h("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":prop_validators.mapStringOrBoolean2String(this.state._ariaCurrent),"aria-expanded":prop_validators.mapBoolean2String(this.state._ariaExpanded),"aria-label":!1===this.state._iconOnly?this.state._ariaLabel:void 0,"aria-labelledby":!0===this.state._iconOnly?this.nonce:void 0,"aria-selected":prop_validators.mapStringOrBoolean2String(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._iconOnly},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),index.h("kol-span-wc",{_icon:this._icon,_iconOnly:this._iconOnly,_label:this.state._label},index.h("slot",{name:"expert",slot:"expert"}))),!0===this.state._iconOnly&&index.h("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(t){prop_validators.watchString(this,"_accessKey",t)}validateAriaControls(t){prop_validators.watchString(this,"_ariaControls",t)}validateAriaCurrent(t){prop_validators.watchValidator(this,"_ariaControls",(t=>!0===t||"date"===t||"location"===t||"page"===t||"step"===t||"time"===t),new Set(["boolean","String {data, location, page, step, time}"]),t)}validateAriaExpanded(t){prop_validators.watchBoolean(this,"_ariaExpanded",t)}validateAriaLabel(t){label.validateAriaLabelWithLabel(this,t)}validateAriaSelected(t){prop_validators.watchBoolean(this,"_ariaSelected",t)}validateCustomClass(t){prop_validators.watchString(this,"_customClass",t,{defaultValue:void 0})}validateDisabled(t){prop_validators.watchBoolean(this,"_disabled",t),!0===t&&a11y_tipps.a11yHintDisabled()}validateIcon(t){icon.validateIcon(this,t)}validateIconAlign(t){icon.watchIconAlign(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t,{defaultValue:!1})}validateId(t){prop_validators.watchString(this,"_id",t)}validateLabel(t){label.validateLabelWithAriaLabel(this,t)}validateOn(t){"object"==typeof t&&null!==t&&(this.state=Object.assign(Object.assign({},this.state),{_on:t}))}validateRole(t){prop_validators.watchString(this,"_role",t)}validateTabIndex(t){tabIndex.validateTabIndex(this,t)}validateTooltipAlign(t){buttonLink.watchTooltipAlignment(this,"_tooltipAlign",t)}validateType(t){controller$1.watchButtonType(this,"_type",t)}validateValue(t){prop_validators.setState(this,"_value",t)}validateVariant(t){controller$1.watchButtonVariant(this,"_variant",t)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaLabel(this._ariaLabel),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateIconOnly(this._iconOnly),this.validateId(this._id),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return index.getElement(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},KolSpanWc=class{constructor(t){index.registerInstance(this,t),this._icon=void 0,this._iconOnly=!1,this._label=void 0,this.state={_icon:{},_iconOnly:!1,_label:"…"}}render(){const t=this.state._label.length>0;return index.h(index.Host,{class:{"icon-only":this.state._iconOnly}},this.state._icon.top&&index.h("kol-icon",{class:{"icon top":!0},style:this.state._icon.top.style,_ariaLabel:"",_icon:this.state._icon.top.icon}),index.h("span",null,this.state._icon.left&&index.h("kol-icon",{class:{"icon left":!0},style:this.state._icon.left.style,_ariaLabel:"",_icon:this.state._icon.left.icon}),!0!==this.state._iconOnly&&this.state._label.length>0?index.h("span",null,this.state._label):"",index.h("span",{"aria-hidden":t?"true":void 0,hidden:t},index.h("slot",{name:"expert"})),this.state._icon.right&&index.h("kol-icon",{class:{"icon right":!0},style:this.state._icon.right.style,_ariaLabel:"",_icon:this.state._icon.right.icon})),this.state._icon.bottom&&index.h("kol-icon",{class:{"icon bottom":!0},style:this.state._icon.bottom.style,_ariaLabel:"",_icon:this.state._icon.bottom.icon}))}validateIcon(t){icon.validateIcon(this,t)}validateIconOnly(t){prop_validators.watchBoolean(this,"_iconOnly",t)}validateLabel(t){label.validateLabelWithAriaLabel(this,t)}componentWillLoad(){this.validateIcon(this._icon),this.validateIconOnly(this._iconOnly),this.validateLabel(this._label)}static get watchers(){return{_icon:["validateIcon"],_iconOnly:["validateIconOnly"],_label:["validateLabel"]}}};exports.kol_button_wc=KolButtonWc,exports.kol_span_wc=KolSpanWc;
@@ -1 +0,0 @@
1
- {"file":"kol-button-wc.kol-span-wc.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;MA4Ca,WAAW;;;IAEN,UAAK,GAAGA,eAAK,EAAE,CAAC;IAGhB,aAAQ,GAAG,CAAC,GAAuB;MACnD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;MACfC,qBAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;IAEe,YAAO,GAAG,CAAC,KAAiB;;MAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE;QAClCC,sCAA2B,CAAC;UAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;UACf,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CAAC,CAAC;OACH;WAAM,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE;QACxCC,qCAA0B,CAAC;UAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;UACf,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CAAC,CAAC;OACH;WAAM,IAAI,QAAO,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,0CAAE,OAAO,CAAA,KAAK,UAAU,EAAE;QACzDC,gDAAgC,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,0CAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;OAClD;WAAM;QACNC,kBAAO,CAAC,6CAA6C,CAAC,CAAC;OACvD;KACD,CAAC;;;;;;;;qBA8FoD,KAAK;;;qBAiBL,KAAK;;;;;;yBA+BhB,KAAK;iBAKL,QAAQ;;oBAUF,QAAQ;iBAKnB;MACrC,KAAK,EAAE,EAAE;MACT,MAAM,EAAE,GAAG;MACX,GAAG,EAAE,EAAE;MACP,KAAK,EAAE,QAAQ;MACf,QAAQ,EAAE,QAAQ;KAClB;;EAtKM,MAAM;IACZ,QACCC,QAACC,UAAI,QACJD,kCACC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,mBACjB,IAAI,CAAC,KAAK,CAAC,aAAa,kBACzBE,yCAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,mBACjDC,iCAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,gBAC9C,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,qBAC7D,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS,mBACxDD,yCAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAClE,KAAK,EAAE;QACN,CAAC,IAAI,CAAC,KAAK,CAAC,QAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ;QACjE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAsB,GACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QACtH,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI;OAC1C,EACD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC9B,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,IACd,IAAI,CAAC,KAAK,CAAC,GAAG,IAClB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACtB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC9B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,KAEtBF,yBAAa,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAKnFA,kBAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAG,CACvB,CACN,EACR,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,KAC7BA,wCAKa,MAAM,EAClB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAChC,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GACpC,CACf,CACK,EACN;GACF;EA4HM,iBAAiB,CAAC,KAAc;IACtCI,2BAAW,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;GACvC;EAMM,oBAAoB,CAAC,KAAc;IACzCA,2BAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GAC1C;EAMM,mBAAmB,CAAC,KAAmB;IAC7CC,8BAAc,CACb,IAAI,EACJ,eAAe,EACf,CAAC,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,EACjI,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC,EACjE,KAAK,CACL,CAAC;GACF;EAMM,oBAAoB,CAAC,KAAe;IAC1CC,4BAAY,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GAC3C;EAMM,iBAAiB,CAAC,KAAc;IACtCC,gCAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GACxC;EAMM,oBAAoB,CAAC,KAAe;IAC1CD,4BAAY,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GAC3C;EAMM,mBAAmB,CAAC,KAAc;IACxCF,2BAAW,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE;MACxC,YAAY,EAAE,SAAS;KACvB,CAAC,CAAC;GACH;EAMM,gBAAgB,CAAC,KAAe;IACtCE,4BAAY,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IACvC,IAAI,KAAK,KAAK,IAAI,EAAE;MACnBE,2BAAgB,EAAE,CAAC;KACnB;GACD;EAMM,YAAY,CAAC,KAAuB;IAC1CC,iBAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC1B;EASM,iBAAiB,CAAC,KAAiB;IACzCC,mBAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC5B;EAMM,gBAAgB,CAAC,KAAe;IACtCJ,4BAAY,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE;MACtC,YAAY,EAAE,KAAK;KAanB,CAAC,CAAC;GACH;EAMM,UAAU,CAAC,KAAc;IAC/BF,2BAAW,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;GAChC;EAMM,aAAa,CAAC,KAAc;IAClCO,gCAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GACxC;EAMM,UAAU,CAAC,KAAuC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;MAChD,IAAI,CAAC,KAAK,mCACN,IAAI,CAAC,KAAK,KACb,GAAG,EAAE,KAAK,GACV,CAAC;KACF;GACD;EAMM,YAAY,CAAC,KAAgC;IACnDP,2BAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;GAClC;EAMM,gBAAgB,CAAC,KAAc;IACrCQ,yBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC9B;EAMM,oBAAoB,CAAC,KAAiB;IAC5CC,gCAAqB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;GACpD;EAMM,YAAY,CAAC,KAAyB;IAC5CC,4BAAe,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;GACtC;EAMM,aAAa,CAAC,KAA4B;IAChDC,wBAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;GAChC;EAMM,eAAe,CAAC,KAA4B;IAClDC,+BAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;GAC5C;EAKM,iBAAiB;IACvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;GACpC;;;;;;;;;;;;;;;;;;;;;;;;;;MCjaW,SAAS;;;;qBAmEiC,KAAK;;iBAU3B;MAC/B,KAAK,EAAE,EAAE;MACT,SAAS,EAAE,KAAK;MAChB,MAAM,EAAE,GAAG;KACX;;EAhFM,MAAM;IACZ,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACpD,QACChB,QAACC,UAAI,IACJ,KAAK,EAAE;QACN,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;OACjC,IAEA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KACpBD,sBACC,KAAK,EAAE;QACN,UAAU,EAAE,IAAI;OAChB,EACD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EACjC,UAAU,EAAC,EAAE,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAC/B,CACF,EACDA,sBACE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KACrBA,sBACC,KAAK,EAAE;QACN,WAAW,EAAE,IAAI;OACjB,EACD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAClC,UAAU,EAAC,EAAE,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAChC,CACF,EACA,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAGA,sBAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAQ,GAAG,EAAE,EACtGA,iCAAmB,cAAc,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,cAAc,IAC7EA,kBAAM,IAAI,EAAC,QAAQ,GAAG,CAChB,EACN,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,KACtBA,sBACC,KAAK,EAAE;QACN,YAAY,EAAE,IAAI;OAClB,EACD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EACnC,UAAU,EAAC,EAAE,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GACjC,CACF,CACK,EACN,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KACvBA,sBACC,KAAK,EAAE;QACN,aAAa,EAAE,IAAI;OACnB,EACD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EACpC,UAAU,EAAC,EAAE,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAClC,CACF,CACK,EACN;GACF;EA8BM,YAAY,CAAC,KAAuB;IAC1CS,iBAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC1B;EAMM,gBAAgB,CAAC,KAAe;IACtCH,4BAAY,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;GACvC;EAMM,aAAa,CAAC,KAAc;IAClCK,gCAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GACxC;EAKM,iBAAiB;IACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChC;;;;;;;;;;;","names":["nonce","propergateFocus","propergateSubmitEventToForm","propergateResetEventToForm","setEventTargetAndStopPropagation","devHint","h","Host","mapStringOrBoolean2String","mapBoolean2String","watchString","watchValidator","watchBoolean","validateAriaLabelWithLabel","a11yHintDisabled","validateIcon","watchIconAlign","validateLabelWithAriaLabel","validateTabIndex","watchTooltipAlignment","watchButtonType","setState","watchButtonVariant"],"sources":["./src/components/button/component.tsx","./src/components/span/component.tsx"],"sourcesContent":["import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport {\n\tAlternativButtonLinkRole,\n\tAriaCurrent,\n\tButtonStates,\n\tKoliBriButtonCallbacks,\n\tKoliBriButtonType,\n\tKoliBriButtonVariant,\n\tOptionalButtonProps,\n\tOptionalButtonStates,\n\tRequiredButtonProps,\n\tRequiredButtonStates,\n\twatchTooltipAlignment,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { a11yHintDisabled, devHint } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport {\n\tmapBoolean2String,\n\tmapStringOrBoolean2String,\n\tsetEventTargetAndStopPropagation,\n\tsetState,\n\twatchBoolean,\n\twatchString,\n\twatchValidator,\n} from '../../utils/prop.validators';\nimport { propergateFocus } from '../../utils/reuse';\nimport { validateIcon, watchIconAlign } from '../../utils/validators/icon';\nimport { validateAriaLabelWithLabel, validateLabelWithAriaLabel } from '../../utils/validators/label';\nimport { validateTabIndex } from '../../utils/validators/tab-index';\nimport { propergateResetEventToForm, propergateSubmitEventToForm } from '../form/controller';\nimport { watchButtonType, watchButtonVariant } from './controller';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-button-wc',\n\tshadow: false,\n})\nexport class KolButtonWc implements Generic.Element.ComponentApi<RequiredButtonProps, OptionalButtonProps, RequiredButtonStates, OptionalButtonStates> {\n\t@Element() private readonly host?: HTMLKolButtonWcElement;\n\tprivate readonly nonce = nonce();\n\tprivate ref?: HTMLButtonElement;\n\n\tprivate readonly catchRef = (ref?: HTMLButtonElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onClick = (event: MouseEvent) => {\n\t\tif (this.state._type === 'submit') {\n\t\t\tpropergateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (this.state._type === 'reset') {\n\t\t\tpropergateResetEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (typeof this.state._on?.onClick === 'function') {\n\t\t\tsetEventTargetAndStopPropagation(event, this.ref);\n\t\t\tthis.state._on?.onClick(event, this.state._value);\n\t\t} else {\n\t\t\tdevHint(`It was no button click callback configured!`);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<button\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\taria-controls={this.state._ariaControls}\n\t\t\t\t\taria-current={mapStringOrBoolean2String(this.state._ariaCurrent)}\n\t\t\t\t\taria-expanded={mapBoolean2String(this.state._ariaExpanded)}\n\t\t\t\t\taria-label={this.state._iconOnly === false ? this.state._ariaLabel : undefined}\n\t\t\t\t\taria-labelledby={this.state._iconOnly === true ? this.nonce : undefined}\n\t\t\t\t\taria-selected={mapStringOrBoolean2String(this.state._ariaSelected)}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._variant as string]: this.state._variant !== 'custom',\n\t\t\t\t\t\t[this.state._customClass as string]:\n\t\t\t\t\t\t\tthis.state._variant === 'custom' && typeof this.state._customClass === 'string' && this.state._customClass.length > 0,\n\t\t\t\t\t\t'icon-only': this.state._iconOnly === true,\n\t\t\t\t\t}}\n\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t{...this.state._on}\n\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\trole={this.state._role}\n\t\t\t\t\ttabIndex={this.state._tabIndex}\n\t\t\t\t\ttype={this.state._type}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc _icon={this._icon} _iconOnly={this._iconOnly} _label={this.state._label}>\n\t\t\t\t\t\t{/*\n\t\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\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\t\t\t\t\t*/}\n\t\t\t\t\t\t<slot name=\"expert\" slot=\"expert\" />\n\t\t\t\t\t</kol-span-wc>\n\t\t\t\t</button>\n\t\t\t\t{this.state._iconOnly === true && (\n\t\t\t\t\t<kol-tooltip\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t\t\t\t */\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t_align={this.state._tooltipAlign}\n\t\t\t\t\t\t_id={this.nonce}\n\t\t\t\t\t\t_label={this.state._ariaLabel || this.state._label}\n\t\t\t\t\t></kol-tooltip>\n\t\t\t\t)}\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, welche Custom-Class übergeben werden soll, wenn _variant=\"custom\" gesetzt ist.\n\t */\n\t@Prop() public _customClass?: string;\n\n\t/**\n\t * Gibt an, ob der Button deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob das Icon links oder rechts dargestellt werden soll.\n\t *\n\t * @deprecated\n\t */\n\t@Prop() public _iconAlign?: Alignment;\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt die ID der Schaltfläche an. (Selection, Testing)\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt den Label für die Beschriftung der Schaltfläche an.\n\t */\n\t// - eslint-disable-next-line @stencil/strict-mutable\n\t@Prop({ mutable: true, reflect: false }) public _label!: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: KoliBriButtonCallbacks<unknown>;\n\n\t/**\n\t * Gibt an, welche Role der Schalter hat.\n\t */\n\t@Prop() public _role?: AlternativButtonLinkRole;\n\n\t/**\n\t * Gibt an, welchen Tab-Index der Button hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob der Tooltip oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Alignment = 'top';\n\n\t/**\n\t * Gibt an, welche Typ der Button hat.\n\t */\n\t@Prop() public _type?: KoliBriButtonType = 'button';\n\n\t/**\n\t * Gibt einen Wert an, den der Schalter bei einem Klick zurückgibt.\n\t */\n\t@Prop() public _value?: Stringified<unknown>;\n\n\t/**\n\t * Gibt an, welche Ausprägung der Button hat.\n\t */\n\t@Prop() public _variant?: KoliBriButtonVariant = 'normal';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: ButtonStates = {\n\t\t_icon: {},\n\t\t_label: '…', // ⚠ required\n\t\t_on: {},\n\t\t_type: 'button',\n\t\t_variant: 'normal',\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this, '_accessKey', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaControls')\n\tpublic validateAriaControls(value?: string): void {\n\t\twatchString(this, '_ariaControls', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaCurrent')\n\tpublic validateAriaCurrent(value?: AriaCurrent): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_ariaControls',\n\t\t\t(value) => value === true || value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time',\n\t\t\tnew Set(['boolean', 'String {data, location, page, step, time}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaExpanded')\n\tpublic validateAriaExpanded(value?: boolean): void {\n\t\twatchBoolean(this, '_ariaExpanded', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\tvalidateAriaLabelWithLabel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_ariaSelected')\n\tpublic validateAriaSelected(value?: boolean): void {\n\t\twatchBoolean(this, '_ariaSelected', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_customClass')\n\tpublic validateCustomClass(value?: string): void {\n\t\twatchString(this, '_customClass', value, {\n\t\t\tdefaultValue: undefined,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_icon')\n\tpublic validateIcon(value?: KoliBriIconProp): void {\n\t\tvalidateIcon(this, value);\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_iconAlign')\n\tpublic validateIconAlign(value?: Alignment): void {\n\t\twatchIconAlign(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_iconOnly')\n\tpublic validateIconOnly(value?: boolean): void {\n\t\twatchBoolean(this, '_iconOnly', value, {\n\t\t\tdefaultValue: false,\n\t\t\t// hooks: {\n\t\t\t// beforePatch: (_value, nextState) => {\n\t\t\t// let ariaLabel = this.state._ariaLabel;\n\t\t\t// if (nextState.has('_ariaLabel')) {\n\t\t\t// ariaLabel = nextState.get('_ariaLabel') as string;\n\t\t\t// }\n\t\t\t// if (typeof ariaLabel !== 'string' || ariaLabel.length <= 0) {\n\t\t\t// devHint(`[KolButton]: Bevor Icon-Only aktiviert wird, muss ein Aria-Label bzw. Label gesetzt werden.`);\n\t\t\t// nextState.set('_iconOnly', false);\n\t\t\t// }\n\t\t\t// },\n\t\t\t// },\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\twatchString(this, '_id', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabelWithAriaLabel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriButtonCallbacks<unknown>): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_on: value,\n\t\t\t};\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_role')\n\tpublic validateRole(value?: AlternativButtonLinkRole): void {\n\t\twatchString(this, '_role', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: Alignment): void {\n\t\twatchTooltipAlignment(this, '_tooltipAlign', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: KoliBriButtonType): void {\n\t\twatchButtonType(this, '_type', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: Stringified<unknown>): void {\n\t\tsetState(this, '_value', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriButtonVariant): void {\n\t\twatchButtonVariant(this, '_variant', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAccessKey(this._accessKey);\n\t\tthis.validateAriaControls(this._ariaControls);\n\t\tthis.validateAriaCurrent(this._ariaCurrent);\n\t\tthis.validateAriaExpanded(this._ariaExpanded);\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateAriaSelected(this._ariaSelected);\n\t\tthis.validateCustomClass(this._customClass);\n\t\tthis.validateDisabled(this._disabled);\n\t\tthis.validateIcon(this._icon);\n\t\tthis.validateIconAlign(this._iconAlign);\n\t\tthis.validateIconOnly(this._iconOnly);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateRole(this._role);\n\t\tthis.validateTabIndex(this._tabIndex);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t\tthis.validateType(this._type);\n\t\tthis.validateValue(this._value);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n","import { Generic } from '@a11y-ui/core';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Stringified } from '../../types/common';\n\nimport { KoliBriCustomIcon, KoliBriIconProp } from '../../types/icon';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { validateIcon } from '../../utils/validators/icon';\nimport { validateLabelWithAriaLabel } from '../../utils/validators/label';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\ticon: Stringified<KoliBriIconProp>;\n\ticonOnly: boolean;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\ticon: {\n\t\ttop?: KoliBriCustomIcon;\n\t\tright?: KoliBriCustomIcon;\n\t\tbottom?: KoliBriCustomIcon;\n\t\tleft?: KoliBriCustomIcon;\n\t};\n\ticonOnly: boolean;\n\tlabel: string;\n};\ntype OptionalStates = unknown;\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-span-wc',\n\tshadow: false,\n})\nexport class KolSpanWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\tconst hideExpertSlot = this.state._label.length > 0;\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t'icon-only': this.state._iconOnly,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.state._icon.top && (\n\t\t\t\t\t<kol-icon\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t'icon top': true,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tstyle={this.state._icon.top.style}\n\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t_icon={this.state._icon.top.icon}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<span>\n\t\t\t\t\t{this.state._icon.left && (\n\t\t\t\t\t\t<kol-icon\n\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t'icon left': true,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={this.state._icon.left.style}\n\t\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t\t_icon={this.state._icon.left.icon}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.state._iconOnly !== true && this.state._label.length > 0 ? <span>{this.state._label}</span> : ''}\n\t\t\t\t\t<span aria-hidden={hideExpertSlot ? 'true' : undefined} hidden={hideExpertSlot}>\n\t\t\t\t\t\t<slot name=\"expert\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t{this.state._icon.right && (\n\t\t\t\t\t\t<kol-icon\n\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t'icon right': true,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tstyle={this.state._icon.right.style}\n\t\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t\t_icon={this.state._icon.right.icon}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t\t{this.state._icon.bottom && (\n\t\t\t\t\t<kol-icon\n\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t'icon bottom': true,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tstyle={this.state._icon.bottom.style}\n\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t_icon={this.state._icon.bottom.icon}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt den Class-Identifier eines Icons eine eingebunden Icofont an. (z.B. https://icofont.com/)\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Gibt an, ob nur das Icon angezeigt wird.\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean = false;\n\n\t/**\n\t * Gibt einen beschreibenden Text für das Text-Element an.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_icon: {},\n\t\t_iconOnly: false,\n\t\t_label: '…', // ⚠ required\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_icon')\n\tpublic validateIcon(value?: KoliBriIconProp): void {\n\t\tvalidateIcon(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_iconOnly')\n\tpublic validateIconOnly(value?: boolean): void {\n\t\twatchBoolean(this, '_iconOnly', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabelWithAriaLabel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateIcon(this._icon);\n\t\tthis.validateIconOnly(this._iconOnly);\n\t\tthis.validateLabel(this._label);\n\t}\n}\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-29c5d3c6.js"),prop_validators=require("./prop.validators-69d5cf89.js"),validation=require("./validation-2b3c81d9.js");require("./index-e9fcaeca.js"),require("./a11y.tipps-4af0092d.js"),require("./dev.utils-7123fb34.js"),require("./reuse-bbd0b4e7.js");const KolHeadingWc=class{constructor(e){index.registerInstance(this,e),this.renderHeadline=(e,i)=>{switch(i){case 1:return index.h("h1",{class:"headline"},e,index.h("slot",null));case 2:return index.h("h2",{class:"headline"},e,index.h("slot",null));case 3:return index.h("h3",{class:"headline"},e,index.h("slot",null));case 4:return index.h("h4",{class:"headline"},e,index.h("slot",null));case 5:return index.h("h5",{class:"headline"},e,index.h("slot",null));case 6:return index.h("h6",{class:"headline"},e,index.h("slot",null));default:return index.h("strong",{class:"headline"},e,index.h("slot",null))}},this.renderSecondaryHeadline=(e,i)=>{switch(i){case 1:return index.h("h1",{class:"secondary-headline"},e);case 2:return index.h("h2",{class:"secondary-headline"},e);case 3:return index.h("h3",{class:"secondary-headline"},e);case 4:return index.h("h4",{class:"secondary-headline"},e);case 5:return index.h("h5",{class:"secondary-headline"},e);case 6:return index.h("h6",{class:"secondary-headline"},e);default:return index.h("strong",{class:"secondary-headline"},e)}},this._headline=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_headline:"…",_level:1}}validateHeadline(e){prop_validators.watchString(this,"_headline",e)}validateLevel(e){validation.watchHeadingLevel(this,e)}validateSecondaryHeadline(e){prop_validators.watchString(this,"_secondaryHeadline",e)}componentWillLoad(){this.validateHeadline(this._headline),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return index.h(index.Host,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?index.h("hgroup",null,this.renderHeadline(this.state._headline,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._headline,this.state._level))}static get watchers(){return{_headline:["validateHeadline"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}},KolInput=class{constructor(e){index.registerInstance(this,e),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 e,i,t,s;const n="string"==typeof this._error&&this._error.length>0&&!0===this._touched,a="string"==typeof this._hint&&this._hint.length>0,l=!0===this._hideLabel&&!0!==this._required;return index.h(index.Host,{class:{disabled:!0===this._disabled,error:!0===n,"read-only":!0===this._readOnly,required:!0===this._required,touched:!0===this._touched}},!1===this._renderNoLabel&&index.h("label",{id:`${this._id}-label`,hidden:l,htmlFor:this._id},index.h("span",null,index.h("slot",{name:"label"}))),a&&index.h("span",{class:"hint",id:`${this._id}-hint`},this._hint),index.h("div",{class:{input:!0,"icon-left":"object"==typeof(null===(e=this._icon)||void 0===e?void 0:e.left),"icon-right":"object"==typeof(null===(i=this._icon)||void 0===i?void 0:i.right)}},index.h("div",{class:"icons"},(null===(t=this._icon)||void 0===t?void 0:t.left)?index.h("kol-icon",{_ariaLabel:"",_icon:this._icon.left.icon}):index.h("i",null),(null===(s=this._icon)||void 0===s?void 0:s.right)?index.h("kol-icon",{_ariaLabel:"",_icon:this._icon.right.icon}):index.h("i",null)),index.h("slot",{name:"input"}),"object"==typeof this._smartButton&&null!==this._smartButton&&index.h("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})),n&&index.h("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&&index.h("datalist",{id:`${this._id}-list`},this._list.map((e=>index.h("option",{value:e})))))}};exports.kol_heading_wc=KolHeadingWc,exports.kol_input=KolInput;
@@ -1 +0,0 @@
1
- {"file":"kol-heading-wc.kol-input.entry.cjs.js","mappings":"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","names":["h","watchString","watchHeadingLevel","Host"],"sources":["./src/components/heading/component.tsx","./src/components/input/component.tsx"],"sourcesContent":["import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from './validation';\n\n/**\n * API\n */\ntype RequiredProps = {\n\theadline: string;\n};\ntype OptionalProps = {\n\tsecondaryHeadline: string;\n\tlevel: HeadingLevel;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\theadline: string;\n\tlevel: HeadingLevel;\n};\ntype OptionalStates = {\n\tsecondaryHeadline: string;\n};\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-heading-wc',\n\tshadow: false,\n})\nexport class KolHeadingWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Gibt den Text der Überschrift an.\n\t */\n\t@Prop() public _headline!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder ob es keine Überschrift ist, sondern nur fett gedruckt.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Überschrift an.\n\t */\n\t@Prop() public _secondaryHeadline?: string;\n\n\t@State() public state: States = {\n\t\t_headline: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\n\t@Watch('_headline')\n\tpublic validateHeadline(value?: string): void {\n\t\twatchString(this, '_headline', value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_secondaryHeadline')\n\tpublic validateSecondaryHeadline(value?: string): void {\n\t\twatchString(this, '_secondaryHeadline', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHeadline(this._headline);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateSecondaryHeadline(this._secondaryHeadline);\n\t}\n\n\tprivate readonly renderHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn (\n\t\t\t\t\t<h1 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h1>\n\t\t\t\t);\n\t\t\tcase 2:\n\t\t\t\treturn (\n\t\t\t\t\t<h2 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h2>\n\t\t\t\t);\n\t\t\tcase 3:\n\t\t\t\treturn (\n\t\t\t\t\t<h3 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h3>\n\t\t\t\t);\n\t\t\tcase 4:\n\t\t\t\treturn (\n\t\t\t\t\t<h4 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h4>\n\t\t\t\t);\n\t\t\tcase 5:\n\t\t\t\treturn (\n\t\t\t\t\t<h5 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h5>\n\t\t\t\t);\n\t\t\tcase 6:\n\t\t\t\treturn (\n\t\t\t\t\t<h6 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h6>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t<strong class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</strong>\n\t\t\t\t);\n\t\t}\n\t};\n\n\tprivate readonly renderSecondaryHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn <h1 class=\"secondary-headline\">{headline}</h1>;\n\t\t\tcase 2:\n\t\t\t\treturn <h2 class=\"secondary-headline\">{headline}</h2>;\n\t\t\tcase 3:\n\t\t\t\treturn <h3 class=\"secondary-headline\">{headline}</h3>;\n\t\t\tcase 4:\n\t\t\t\treturn <h4 class=\"secondary-headline\">{headline}</h4>;\n\t\t\tcase 5:\n\t\t\t\treturn <h5 class=\"secondary-headline\">{headline}</h5>;\n\t\t\tcase 6:\n\t\t\t\treturn <h6 class=\"secondary-headline\">{headline}</h6>;\n\t\t\tdefault:\n\t\t\t\treturn <strong class=\"secondary-headline\">{headline}</strong>;\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{typeof this.state._secondaryHeadline === 'string' && this.state._secondaryHeadline.length > 0 ? (\n\t\t\t\t\t<hgroup>\n\t\t\t\t\t\t{this.renderHeadline(this.state._headline, this.state._level)}\n\t\t\t\t\t\t{this.state._secondaryHeadline && this.renderSecondaryHeadline(this.state._secondaryHeadline, this.state._level + 1)}\n\t\t\t\t\t</hgroup>\n\t\t\t\t) : (\n\t\t\t\t\tthis.renderHeadline(this.state._headline, this.state._level)\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n","/* eslint-disable jsx-a11y/label-has-associated-control */\nimport { Component, h, Host, JSX, Prop } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriCustomIcon } from '../../types/icon';\n\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { Props } from './types';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-input',\n\tshadow: false,\n})\nexport class KolInput implements Props {\n\tpublic render(): JSX.Element {\n\t\tconst hasError = typeof this._error === 'string' && this._error.length > 0 && this._touched === true;\n\t\tconst hasHint = typeof this._hint === 'string' && this._hint.length > 0;\n\t\tconst hideLabel = this._hideLabel === true && this._required !== true;\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\tdisabled: this._disabled === true,\n\t\t\t\t\terror: hasError === true,\n\t\t\t\t\t'read-only': this._readOnly === true,\n\t\t\t\t\trequired: this._required === true,\n\t\t\t\t\ttouched: this._touched === true,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this._renderNoLabel === false && (\n\t\t\t\t\t<label id={`${this._id}-label`} hidden={hideLabel} htmlFor={this._id}>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</label>\n\t\t\t\t)}\n\t\t\t\t{hasHint && (\n\t\t\t\t\t<span class=\"hint\" id={`${this._id}-hint`}>\n\t\t\t\t\t\t{this._hint}\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tinput: true,\n\t\t\t\t\t\t'icon-left': typeof this._icon?.left === 'object',\n\t\t\t\t\t\t'icon-right': typeof this._icon?.right === 'object',\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{/* grid grid-cols-2 justify-between h-0 mx-3 my-2 */}\n\t\t\t\t\t<div class=\"icons\">\n\t\t\t\t\t\t{this._icon?.left ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.left as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t\t{this._icon?.right ? <kol-icon _ariaLabel=\"\" _icon={(this._icon.right as KoliBriCustomIcon).icon}></kol-icon> : <i />}\n\t\t\t\t\t</div>\n\t\t\t\t\t<slot name=\"input\"></slot>\n\t\t\t\t\t{typeof this._smartButton === 'object' && this._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaLabel={this._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this._smartButton._disabled}\n\t\t\t\t\t\t\t_icon={this._smartButton._icon}\n\t\t\t\t\t\t\t_iconOnly={true}\n\t\t\t\t\t\t\t_id={this._smartButton._id}\n\t\t\t\t\t\t\t_label={this._smartButton._label}\n\t\t\t\t\t\t\t_on={this._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasError && (\n\t\t\t\t\t<kol-alert class=\"error\" id={`${this._id}-error`} _alert={this._alert} _type=\"error\" _variant=\"msg\">\n\t\t\t\t\t\t{this._error}\n\t\t\t\t\t</kol-alert>\n\t\t\t\t)}\n\t\t\t\t{Array.isArray(this._list) && this._list.length > 0 && (\n\t\t\t\t\t<datalist id={`${this._id}-list`}>\n\t\t\t\t\t\t{this._list.map((option: string) => (\n\t\t\t\t\t\t\t<option value={option} />\n\t\t\t\t\t\t))}\n\t\t\t\t\t</datalist>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string = '';\n\n\t/**\n\t * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: KoliBriHorizontalIcon;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagswörter an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt an, ob die Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Komponente kein Label rendern soll.\n\t */\n\t@Prop({ reflect: true }) public _renderNoLabel?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Checkbox ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean = false;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: ButtonProps;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ reflect: true }) public _touched?: boolean = false;\n}\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- "use strict";const a11y_tipps=require("./a11y.tipps-4af0092d.js"),prop_validators=require("./prop.validators-69d5cf89.js"),reuse=require("./reuse-bbd0b4e7.js"),READABLE_CHARS=/[a-zA-Z0-9äöüÄÖÜß]/g,ONLY_NUMBERS=/^\d+$/,countReadableChars=e=>{var a;return"string"==typeof e&&(null===(a=e.match(READABLE_CHARS))||void 0===a?void 0:a.length)||0},hasEnoughReadableChars=(e,a=1)=>countReadableChars(e)>=a,containsOnlyNumbers=e=>ONLY_NUMBERS.test(e),syncAriaLabelBeforePatch=(e,a,i,t)=>{const r=a.has("_ariaLabel")?a.get("_ariaLabel"):i.state._ariaLabel;if("string"==typeof r){const e=a.has("_label")?a.get("_label"):i.state._label;!1===reuse.isEmptyOrPrefixOf(e,r)&&("_ariaLabel"===t?a.set("_label",r):a.set("_ariaLabel",void 0),a11y_tipps.a11yHint("Das abweichende Aria-Label ist nicht barrierefrei. Ein abweichendes Aria-Label muss aus Gründern der Barrierefreiheit für die Sprachsteuerung mit dem Label-Text beginnen."))}},validateAriaLabel=(e,a,i={})=>{var t;prop_validators.watchString(e,"_ariaLabel",a,{hooks:{afterPatch:(e,a,t,r)=>{var s,l;"function"==typeof(null===(s=i.hooks)||void 0===s?void 0:s.afterPatch)&&(null===(l=i.hooks)||void 0===l||l.afterPatch(e,a,t,r)),"string"==typeof e&&e.length>0&&!1===hasEnoughReadableChars(e,3)&&!1===containsOnlyNumbers(e)&&a11y_tipps.a11yHint(`Ein abweichendes Aria-Label (${e}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`)},beforePatch:null===(t=i.hooks)||void 0===t?void 0:t.beforePatch}})},validateAriaLabelWithLabel=(e,a)=>{validateAriaLabel(e,a,{hooks:{beforePatch:syncAriaLabelBeforePatch}})},validateLabel=(e,a,i={})=>{var t;prop_validators.watchString(e,"_label",a,{hooks:{afterPatch:(e,a,t,r)=>{var s,l;"function"==typeof(null===(s=i.hooks)||void 0===s?void 0:s.afterPatch)&&(null===(l=i.hooks)||void 0===l||l.afterPatch(e,a,t,r)),"string"==typeof e&&!1===hasEnoughReadableChars(e,3)&&!1===containsOnlyNumbers(e)&&a11y_tipps.a11yHint(`Ein Label (${e}) ist nicht barrierefrei. Ein Label sollte aus mindestens drei lesbaren Zeichen bestehen.`)},beforePatch:null===(t=i.hooks)||void 0===t?void 0:t.beforePatch},required:!0})},validateLabelWithAriaLabel=(e,a)=>{validateLabel(e,a,{hooks:{beforePatch:syncAriaLabelBeforePatch}})};exports.containsOnlyNumbers=containsOnlyNumbers,exports.hasEnoughReadableChars=hasEnoughReadableChars,exports.validateAriaLabelWithLabel=validateAriaLabelWithLabel,exports.validateLabel=validateLabel,exports.validateLabelWithAriaLabel=validateLabelWithAriaLabel;
@@ -1 +0,0 @@
1
- {"file":"label-ce9fe285.js","mappings":"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","names":["isEmptyOrPrefixOf","a11yHint","watchString"],"sources":["./src/utils/validators/label.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { a11yHint } from '../a11y.tipps';\nimport { watchString, WatchStringOptions } from '../prop.validators';\nimport { isEmptyOrPrefixOf } from '../validator';\n\nconst READABLE_CHARS = /[a-zA-Z0-9äöüÄÖÜß]/g;\nconst ONLY_NUMBERS = /^\\d+$/;\n\nconst countReadableChars = (str: string): number => (typeof str === 'string' ? str.match(READABLE_CHARS)?.length || 0 : 0);\n\nexport const hasEnoughReadableChars = (str: string, min = 1): boolean => countReadableChars(str) >= min;\n\nexport const containsOnlyNumbers = (str: string): boolean => ONLY_NUMBERS.test(str);\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 = 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', undefined);\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 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\nconst validateAriaLabel = (component: Generic.Element.Component, value?: string, options: WatchStringOptions = {}): void => {\n\twatchString(component, '_ariaLabel', value, {\n\t\thooks: {\n\t\t\tafterPatch: (value, state, component, key) => {\n\t\t\t\tif (typeof options.hooks?.afterPatch === 'function') {\n\t\t\t\t\toptions.hooks?.afterPatch(value, state, component, key);\n\t\t\t\t}\n\t\t\t\tif (typeof value === 'string' && value.length > 0 && hasEnoughReadableChars(value, 3) === false && containsOnlyNumbers(value) === false) {\n\t\t\t\t\ta11yHint(\n\t\t\t\t\t\t`Ein abweichendes Aria-Label (${value}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t},\n\t\t\tbeforePatch: options.hooks?.beforePatch,\n\t\t},\n\t});\n};\n\nexport const validateAriaLabelWithLabel = (component: Generic.Element.Component, value?: string): void => {\n\tvalidateAriaLabel(component, 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, options: WatchStringOptions = {}): void => {\n\twatchString(component, '_label', value, {\n\t\thooks: {\n\t\t\tafterPatch: (value, state, component, key) => {\n\t\t\t\tif (typeof options.hooks?.afterPatch === 'function') {\n\t\t\t\t\toptions.hooks?.afterPatch(value, state, component, key);\n\t\t\t\t}\n\t\t\t\tif (typeof value === 'string' && hasEnoughReadableChars(value, 3) === false && containsOnlyNumbers(value) === false) {\n\t\t\t\t\ta11yHint(`Ein Label (${value}) ist nicht barrierefrei. Ein Label sollte aus mindestens drei lesbaren Zeichen bestehen.`);\n\t\t\t\t}\n\t\t\t},\n\t\t\tbeforePatch: options.hooks?.beforePatch,\n\t\t},\n\t\trequired: true,\n\t});\n};\n\nexport const validateLabelWithAriaLabel = (component: Generic.Element.Component, value?: string): void => {\n\tvalidateLabel(component, value, {\n\t\thooks: {\n\t\t\tbeforePatch: syncAriaLabelBeforePatch,\n\t\t},\n\t});\n};\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- "use strict";const index=require("./index-e9fcaeca.js"),a11y_tipps=require("./a11y.tipps-4af0092d.js"),dev_utils=require("./dev.utils-7123fb34.js"),pushNodes=(e,t)=>{t.forEach((t=>{!1===e.has(t)&&e.add(t)}))},querySelectorAll=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const r=new Set;pushNodes(r,t.querySelectorAll(e));const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;pushNodes(r,querySelectorAll(e,"object"==typeof n&&null!==n?n:o[t]))}return Array.from(r)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},querySelector=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let r=t.querySelector(e);if(null===r){const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;if(r=querySelector(e,"object"==typeof n&&null!==n?n:o[t]),null!==r)break}}return r}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")};var rgbaConvert=arr,arr_1=arr,obj_1=obj,css_1=css,hex_1=hex,num_1=num;function arr(e){var t=parse(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function obj(e){var t=parse(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function css(e){var t=parse(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 hex(e){3==(t=parse(e)).length&&t.push(255);var t,r=255==t[3],o=num2hex(t[0]),n=num2hex(t[1]),l=num2hex(t[2]),i=isshort(o,n,l,t=num2hex(Math.round(t[3])));return r?i?"#"+o.charAt(0)+n.charAt(0)+l.charAt(0):"#"+o+n+l:i?"#"+o.charAt(0)+n.charAt(0)+l.charAt(0)+t.charAt(0):"#"+o+n+l+t}function num(e){var t=parse(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 parse(e){return"string"==typeof e?name(e=e.toLowerCase())||hex3(e)||hex6(e)||rgb(e)||rgba(e)||[0,0,0,255]:object(e)||array(e)||number(e)||[0,0,0,255]}function num2hex(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function isshort(e,t,r,o){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(r)&&-1!=n.indexOf(o)}function name(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 hex2num(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function hex3(e){var t=e.replace(/^#/,""),r=t.length;if(3==r||4==r){var o=hex2num(t[0]),n=hex2num(t[1]),l=hex2num(t[2]),i=3==r?255:hex2num(t[3]);if(isNaN(o)||isNaN(n)||isNaN(l)||isNaN(i))return;return[o,n,l,i]}}function hex6(e){var t=e.replace(/^#/,""),r=t.length;if(6==r||8==r){var o=hex2num(t.slice(0,2)),n=hex2num(t.slice(2,4)),l=hex2num(t.slice(4,6)),i=6==r?255:hex2num(t.slice(6,8));if(isNaN(o)||isNaN(n)||isNaN(l)||isNaN(i))return;return[o,n,l,i]}}function getnum(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function object(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=getnum(null!=e.r?e.r:null!=e.red?e.red:0,!0),r=getnum(null!=e.g?e.g:null!=e.green?e.green:0,!0),o=getnum(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),n=getnum(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function array(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=getnum(e[0],!0),r=getnum(e[1],!0),o=getnum(e[2],!0),n=getnum(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function number(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 rgb(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0);if(-1!=r&&-1!=o&&-1!=n)return[r,o,n,255]}}function rgba(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0),l=getnum(255*t[3]);if(-1!=r&&-1!=o&&-1!=n&&-1!=l)return[r,o,n,l]}}rgbaConvert.arr=arr_1,rgbaConvert.obj=obj_1,rgbaConvert.css=css_1,rgbaConvert.hex=hex_1,rgbaConvert.num=num_1;var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(e){return Math.pow((e+.055)/1.055,2.4)}function a(o){var l=o[0]/255,i=o[1]/255,a=o[2]/255,s=l<=.03928?l*e:u(l),c=i<=.03928?i*e:u(i),d=a<=.03928?a*e:u(a);return s*n+c*r+d*t}function i(e){var t=255;8===(e=e.replace(/^#/,"")).length&&(t=parseInt(e.slice(6,8),16),e=e.substring(0,6)),4===e.length&&(t=parseInt(e.slice(3,4).repeat(2),16),e=e.substring(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var r=parseInt(e,16);return[r>>16,r>>8&255,255&r,t]}function c(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function o(e,t){return c(a(e),a(t))}function s(e,t){return o(i(e),i(t))}function f(e){return e>=7?"AAA":e>=4.5?"AA":e>=3?"AA Large":"Fail"}const OBJECT_OBJECT=/\[object Object\]/,objectObjectHandler=(e,t)=>{"string"==typeof e&&OBJECT_OBJECT.test(e)||t()},emptyStringByArrayHandler=(e,t)=>{"string"==typeof e&&""===e||t()},setEventTargetAndStopPropagation=(e,t)=>{dev_utils.getExperimalMode()&&(dev_utils.Log.debug([e,t]),dev_utils.Log.debug("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},patchState=e=>{var t,r,o;null===(t=e.nextHooks)||void 0===t||t.forEach(((t,r)=>{var o;const n=t.get("beforePatch");"function"==typeof n&&n(null===(o=e.nextState)||void 0===o?void 0:o.get(r),e.nextState,e,r)})),(null===(r=e.nextState)||void 0===r?void 0:r.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(o=e.nextHooks)||void 0===o||o.forEach(((t,r)=>{const o=t.get("afterPatch");"function"==typeof o&&o(e.state[r],e.state,e,r)}))),delete e.nextHooks},setState=(e,t,r,o={})=>{var n,l;if(void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map),e.nextState.get(t)!==r){e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof o.afterPatch&&(null===(n=e.nextHooks.get(t))||void 0===n||n.set("afterPatch",o.afterPatch)),"function"==typeof o.beforePatch&&(null===(l=e.nextHooks.get(t))||void 0===l||l.set("beforePatch",o.beforePatch)),e.nextState.set(t,r),patchState(e)}},logWarn=(e,t,r,o)=>{a11y_tipps.devHint(`[${e.constructor.name}] Der Property-Wert (${r}) für '${t}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(o).join(", ")}`)};function watchValidator(e,t,r,o,n,l={}){r(n)?setState(e,t,n,l.hooks):null!=n||l.required?(l.required||o.add(null),logWarn(e,t,n,o)):setState(e,t,l.defaultValue,l.hooks)}const watchBoolean=(e,t,r,o)=>{watchValidator(e,t,(e=>"boolean"==typeof e),new Set(["Boolean {true, false}"]),r,o)},watchString=(e,t,r,o={})=>{const n="number"==typeof o.minLength?null==o?void 0:o.minLength:0;watchValidator(e,t,(e=>"string"==typeof e&&e.length>=n&&(void 0===(null==o?void 0:o.maxLength)||e.length<=o.maxLength)),new Set(["String"]),r,o)},watchNumber=(e,t,r,o)=>{watchValidator(e,t,(e=>"number"==typeof e&&(void 0===(null==o?void 0:o.min)||"number"==typeof(null==o?void 0:o.min)&&e>=o.min)&&(void 0===(null==o?void 0:o.max)||"number"==typeof(null==o?void 0:o.max)&&e<=o.max)),new Set(["Number"]),r,o)},watchJsonArrayString=(e,t,r,o,n=(e=>e==e),l={})=>{emptyStringByArrayHandler(o,(()=>{objectObjectHandler(o,(()=>{void 0===o&&(o=[]);try{try{o=parseJson(o)}catch(e){}if(Array.isArray(o)){const i=o.find((e=>!r(e)));void 0===i&&n(o)?setState(e,t,o,l.hooks):objectObjectHandler(i,(()=>{throw dev_utils.Log.debug(i),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}else objectObjectHandler(o,(()=>{throw dev_utils.Log.debug(o),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}catch(e){dev_utils.Log.debug(e)}}))}))},BOOLEAN=/^(true|false)$/,INTEGER=/^-?(0|[1-9]\d*)$/,FLOAT=/^-?(0.|[1-9]\d*.)\d*[1-9]$/,mapString2Unknown=e=>{const t=typeof e,r=`${e}`;if("string"==typeof e)if(BOOLEAN.test(e))e="true"===e;else if(INTEGER.test(e))e=parseInt(e);else if(FLOAT.test(e))e=parseFloat(e);else if(JSON_CHARS.test(e))try{e=parseJson(e)}catch(e){}return t!==typeof e&&a11y_tipps.devHint(`You have used a stringified property value (${r} to ${JSON.stringify(e)}) which type switched from ${t} to ${typeof e}!`),e},stringifyJson=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw dev_utils.Log.warn(["stringifyJson",e]),dev_utils.Log.error("↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet."),new Error}},JSON_CHARS=/^[{[]/,parseJson=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(JSON_CHARS.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){dev_utils.Log.warn(["parseJson",e]),dev_utils.Log.error("↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).")}}throw new Error},mapBoolean2String=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,mapStringOrBoolean2String=e=>"string"==typeof e?e:mapBoolean2String(e),koliBriQuerySelector=(e,t)=>querySelector(e,t||dev_utils.getDocument()),koliBriQuerySelectorAll=(e,t)=>querySelectorAll(e,t||dev_utils.getDocument());let DEFAULT_COLOR_CONTRAST=null;const getDefaultColorContrast=()=>(DEFAULT_COLOR_CONTRAST=DEFAULT_COLOR_CONTRAST||{backgroundColor:"#00000000",color:"#00000000",domNode:dev_utils.getDocument().body,level:"Fail",score:1},DEFAULT_COLOR_CONTRAST),TRANSPARENT_REGEXP=/(\d+, ){3}0\)/,koliBriA11yColorContrast=(e,t=getDefaultColorContrast())=>{const r=getComputedStyle(e),o=TRANSPARENT_REGEXP.test(r.backgroundColor)?t.backgroundColor:rgbaConvert.hex(r.backgroundColor),n=TRANSPARENT_REGEXP.test(r.color)?t.color:rgbaConvert.hex(r.color),l=s(o,n),i={backgroundColor:o,color:n,domNode:e,level:f(l),score:l};return l<4.5&&dev_utils.Log.error(["Color-Contrast-Error",{backgroundColor:i.backgroundColor,color:i.color,level:i.level,score:i.score},i.domNode]),i},koliBriQuerySelectorColors=(e,t=getDefaultColorContrast())=>{t.domNode instanceof HTMLElement&&(t=koliBriA11yColorContrast(t.domNode,t));const r=t.domNode.querySelector(e);if(null===r){const r=t.domNode.querySelectorAll('[class="hydrated"]');for(let o=0;o<r.length&&(t.domNode=r[o],null===(t=koliBriQuerySelectorColors(e,t)).domNode);o++);return t}return koliBriA11yColorContrast(r,t)},scrollByHTMLElement=(e,t=window)=>{e instanceof HTMLElement?(t.scrollTo({behavior:"smooth",top:e.getBoundingClientRect().top+dev_utils.getWindow().pageYOffset-50}),e.focus()):a11y_tipps.devHint("Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.")},scrollBySelector=(e,t)=>{if((e instanceof Document||e instanceof HTMLElement||e instanceof ShadowRoot)&&"string"==typeof t){a11y_tipps.devHint("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 r=`${t}`;t=e,e=r}if("string"==typeof e){const r=koliBriQuerySelector(e,t);r instanceof HTMLElement?scrollByHTMLElement(r):a11y_tipps.devHint(`Es konnte kein HTMLElement mit dem Selector (${e}) gefunden werden, zu dem gescrollt werden soll.`)}else a11y_tipps.devHint("Der Selector ist nicht valide, zu dem gescrollt werden soll.")};class KoliBriUtils{static queryHtmlElementColors(e,t,r=!1,o=!0){let n=null;if(!0===r||!1===KoliBriUtils.executionLock)if(!1===r&&(KoliBriUtils.cache.clear(),KoliBriUtils.cache.set(t.domNode,t),KoliBriUtils.executionLock=!0,!0===o&&dev_utils.Log.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)n=t;else{const r=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)r.add(e[t])}const o=t.domNode;if("function"==typeof o.assignedNodes){const e=o.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&r.add(e[t])}const l=t.domNode.children;for(let e=0;e<l.length;e++)r.add(l[e]);const i=Array.from(r);for(let r=0;r<i.length;r++){let o=KoliBriUtils.cache.get(i[r]);void 0===o&&(o=koliBriA11yColorContrast(i[r],t)),KoliBriUtils.cache.set(i[r],o);const l=KoliBriUtils.queryHtmlElementColors(e,o,!0,!1);if(null!==l){n=l;break}}}else dev_utils.Log.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===r&&(!0===o&&dev_utils.Log.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`),KoliBriUtils.executionLock=!1,KoliBriUtils.cache.clear()),n}}KoliBriUtils.executionLock=!1,KoliBriUtils.cache=new Map;class KoliBriDevHelper{}KoliBriDevHelper.patchTheme=index.patchTheme,KoliBriDevHelper.patchThemeTag=index.patchThemeTag,KoliBriDevHelper.querySelector=koliBriQuerySelector,KoliBriDevHelper.querySelectorAll=koliBriQuerySelectorAll,KoliBriDevHelper.scrollByHTMLElement=scrollByHTMLElement,KoliBriDevHelper.scrollBySelector=scrollBySelector,KoliBriDevHelper.stringifyJson=stringifyJson,exports.KoliBriDevHelper=KoliBriDevHelper,exports.KoliBriUtils=KoliBriUtils,exports.emptyStringByArrayHandler=emptyStringByArrayHandler,exports.koliBriA11yColorContrast=koliBriA11yColorContrast,exports.koliBriQuerySelector=koliBriQuerySelector,exports.koliBriQuerySelectorAll=koliBriQuerySelectorAll,exports.koliBriQuerySelectorColors=koliBriQuerySelectorColors,exports.mapBoolean2String=mapBoolean2String,exports.mapString2Unknown=mapString2Unknown,exports.mapStringOrBoolean2String=mapStringOrBoolean2String,exports.objectObjectHandler=objectObjectHandler,exports.parseJson=parseJson,exports.rgbaConvert=rgbaConvert,exports.s=s,exports.scrollBySelector=scrollBySelector,exports.setEventTargetAndStopPropagation=setEventTargetAndStopPropagation,exports.setState=setState,exports.stringifyJson=stringifyJson,exports.watchBoolean=watchBoolean,exports.watchJsonArrayString=watchJsonArrayString,exports.watchNumber=watchNumber,exports.watchString=watchString,exports.watchValidator=watchValidator;
@@ -1 +0,0 @@
1
- {"file":"prop.validators-69d5cf89.js","mappings":"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","names":["getExperimalMode","Log","devHint","getDocument","rgba","hex","score","getWindow","patchTheme","patchThemeTag"],"sources":["./node_modules/query-selector-all-shadow-root/esm/index.js","./node_modules/query-selector-shadow-root/esm/index.js","./node_modules/rgba-convert/index.js","./node_modules/wcag-contrast/dist/index.m.js","./src/utils/prop.validators.ts"],"sourcesContent":["const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { patchTheme, patchThemeTag } from '@a11y-ui/core';\nimport { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\nimport { Generic } from '@a11y-ui/core';\n\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimalMode, getWindow, Log } from './dev.utils';\nimport { Stringified } from '../types/common';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTargetAndStopPropagation = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\ntype WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\ntype WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: unknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<unknown>(value);\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}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nconst scrollByHTMLElement = (element: HTMLElement, parentElement: Window | HTMLElement = window): void => {\n\tif (element instanceof HTMLElement) {\n\t\tparentElement.scrollTo({\n\t\t\tbehavior: 'smooth',\n\t\t\ttop: element.getBoundingClientRect().top + getWindow().pageYOffset - 50,\n\t\t});\n\t\telement.focus();\n\t} else {\n\t\tdevHint(`Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\nexport const scrollBySelector = (selector: string, document?: Document | HTMLElement | ShadowRoot): void => {\n\tif (\n\t\t((selector as unknown) instanceof Document || (selector as unknown) instanceof HTMLElement || (selector as unknown) instanceof ShadowRoot) &&\n\t\ttypeof document === 'string'\n\t) {\n\t\tdevHint(\n\t\t\t`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.`\n\t\t);\n\t\tconst temp = `${document as unknown as string}`;\n\t\tdocument = selector as unknown as Document;\n\t\tselector = temp;\n\t}\n\tif (typeof selector === 'string') {\n\t\tconst element: HTMLElement | null = koliBriQuerySelector<HTMLElement>(selector, document);\n\t\tif (element instanceof HTMLElement) {\n\t\t\tscrollByHTMLElement(element);\n\t\t} else {\n\t\t\tdevHint(`Es konnte kein HTMLElement mit dem Selector (${selector}) gefunden werden, zu dem gescrollt werden soll.`);\n\t\t}\n\t} else {\n\t\tdevHint(`Der Selector ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly scrollByHTMLElement = scrollByHTMLElement;\n\tpublic static readonly scrollBySelector = scrollBySelector;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- "use strict";const isObject=t=>"object"==typeof t&&null!==t,isString=(t,e=0)=>"string"==typeof t&&t.length>=e,isStyle=t=>{if("object"!=typeof t||null===t)return isString(t,1);for(const e in t)if(!1===isString(e,1))return!1;return!0},isPrefixOf=(t,e)=>e.startsWith(t),isEmptyOrPrefixOf=(t,e)=>0===e.length||isPrefixOf(t,e),STATE_CHANGE_EVENT=new Event("StateChange"),propergateFocus=(t,e)=>{isObject(t)&&t&&(t.focus=t=>null==e?void 0:e.focus(t))};exports.processEnv="development";try{exports.processEnv="production"}catch(t){exports.processEnv="production"}exports.STATE_CHANGE_EVENT=STATE_CHANGE_EVENT,exports.isEmptyOrPrefixOf=isEmptyOrPrefixOf,exports.isObject=isObject,exports.isString=isString,exports.isStyle=isStyle,exports.propergateFocus=propergateFocus;
@@ -1 +0,0 @@
1
- {"file":"validation-1e8663e2.js","mappings":";;;;;;;;MAMa,aAAa,GAAG,CAC5B,SAAiB,EACjB,SAIC,EACD,KAAmC;EAEnCA,oCAAoB,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,KAAK,CAAC,CAAC;EACxHC,iCAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAClE;;;;","names":["watchJsonArrayString","uiUxHintMillerscheZahl"],"sources":["./src/components/nav/validation.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { uiUxHintMillerscheZahl } from '../../utils/a11y.tipps';\nimport { watchJsonArrayString } from '../../utils/prop.validators';\nimport { NavLinkProps } from '../link/component';\n\nexport const watchNavLinks = (\n\tclassName: string,\n\tcomponent: Generic.Element.Component & {\n\t\tstate: {\n\t\t\t_links: NavLinkProps[];\n\t\t};\n\t},\n\tvalue?: Stringified<NavLinkProps[]>\n): void => {\n\twatchJsonArrayString(component, '_links', (link) => typeof link === 'object' && typeof link._label === 'string', value);\n\tuiUxHintMillerscheZahl(className, component.state._links.length);\n};\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{L as Log}from"./dev.utils-05f4e663.js";const a11yCache=new Set,a11yHint=e=>{!1===a11yCache.has(e)&&(a11yCache.add(e),Log.debug(e,{classifier:"✋ a11y",overwriteStyle:"; background-color: #09f"}))},deprecatedCache=new Set,deprecatedHint=e=>{!1===deprecatedCache.has(e)&&(deprecatedCache.add(e),Log.warn(e,{classifier:"🔥 deprecated",forceLog:!0,overwriteStyle:"; background-color: #f00"}))},devCache=new Set,devHint=e=>{!1===devCache.has(e)&&(devCache.add(e),Log.debug(e,{classifier:"💻 dev",overwriteStyle:"; background-color: #f09"}))},featureCache=new Set,featureHint=(e,a=!1)=>{!1===featureCache.has(e)&&(featureCache.add(e),e+=!0===a?" ✅":"",Log.debug(e,{classifier:"🌟 feature",overwriteStyle:"; background-color: #309"}))};devHint("Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!");const uiUxCache=new Set,uiUxHint=e=>{!1===uiUxCache.has(e)&&(uiUxCache.add(e),Log.debug(e,{classifier:"📑 ui/ux",overwriteStyle:"; background-color: #060;"}))},a11yHintDisabled=()=>{a11yHint('"Disabled" schränkt die Zugänglichkeit und Sichtbarkeit ein. Wir empfehlen aus Sicht der Barrierefreiheit readonly- statt disabled-Attribut zu verwenden.\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae')},a11yHintLabelingLandmarks=e=>{"string"==typeof e&&""!==e||a11yHint("Manche Strukturelemente, wie bspw. der nav-Tag, können mehrfach in einer Webseite verwendet werden. Damit die gleichnamigen Strukturelemente voneinander unterschieden werden können, ist es erforderlich ein Aria-Label zu setzen.\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns")},uiUxHintMillerscheZahl=(e,a=8)=>{var i;a>7&&(i=`[${e}] Innerhalb von Navigationsstrukturen wird empfohlen nicht mehr als 7 Menüpunkte zu verwenden.\n\nLinks:\n- https://de.ryte.com/wiki/Millersche_Zahl\n- https://de.wikipedia.org/wiki/Millersche_Zahl`,!1===uiUxCache.has(i)&&(uiUxCache.add(i),Log.debug(i,{classifier:"📑 ui/ux",overwriteStyle:"; background-color: #060;"})))};export{a11yHint as a,a11yHintLabelingLandmarks as b,deprecatedHint as c,devHint as d,a11yHintDisabled as e,featureHint as f,uiUxHintMillerscheZahl as u};
@@ -1 +0,0 @@
1
- {"file":"a11y.tipps-5cdbd5e2.js","mappings":";;;;;AAEA,MAAM,SAAS,GAAgB,IAAI,GAAG,EAAU,CAAC;MACpC,QAAQ,GAAG,CAAC,GAAW;EACnC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;IACjC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;MACd,UAAU,EAAE,QAAQ;MACpB,cAAc,EAAE,0BAA0B;KAC1C,CAAC,CAAC;GACH;AACF,EAAE;AAEF,MAAM,eAAe,GAAgB,IAAI,GAAG,EAAU,CAAC;MAC1C,cAAc,GAAG,CAAC,GAAW;EACzC,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;IACvC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE;MACb,UAAU,EAAE,eAAe;MAC3B,QAAQ,EAAE,IAAI;MACd,cAAc,EAAE,0BAA0B;KAC1C,CAAC,CAAC;GACH;AACF,EAAE;AAEF,MAAM,QAAQ,GAAgB,IAAI,GAAG,EAAU,CAAC;MACnC,OAAO,GAAG,CAAC,GAAW;EAClC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;IAChC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;MACd,UAAU,EAAE,QAAQ;MACpB,cAAc,EAAE,0BAA0B;KAC1C,CAAC,CAAC;GACH;AACF,EAAE;AAEF,MAAM,YAAY,GAAgB,IAAI,GAAG,EAAU,CAAC;MACvC,WAAW,GAAG,CAAC,GAAW,EAAE,IAAI,GAAG,KAAK;EACpD,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;IACpC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;MACd,UAAU,EAAE,YAAY;MACxB,cAAc,EAAE,0BAA0B;KAC1C,CAAC,CAAC;GACH;AACF,EAAE;AACF,OAAO,CACN,4JAA4J,CAC5J,CAAC;AAEF,MAAM,SAAS,GAAgB,IAAI,GAAG,EAAU,CAAC;AACjD,MAAM,QAAQ,GAAG,CAAC,GAAW;EAC5B,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;IACjC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;MACd,UAAU,EAAE,UAAU;MACtB,cAAc,EAAE,2BAA2B;KAC3C,CAAC,CAAC;GACH;AACF,CAAC,CAAC;MAEW,gBAAgB,GAAG;EAC/B,QAAQ,CACP,oOAAoO,CACpO,CAAC;AACH,EAAE;MAEW,yBAAyB,GAAG,CAAC,KAAc;EACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE;IAC9C,QAAQ,CACP,qVAAqV,CACrV,CAAC;GACF;AACF,EAAE;MAEW,sBAAsB,GAAG,CAAC,SAAiB,EAAE,MAAM,GAAG,CAAC;EACnE,IAAI,MAAM,GAAG,CAAC,EAAE;IACf,QAAQ,CACP,IAAI,SAAS;;;;gDAIgC,CAC7C,CAAC;GACF;AACF;;;;","names":[],"sources":["./src/utils/a11y.tipps.ts"],"sourcesContent":["import { Log } from './dev.utils';\n\nconst a11yCache: Set<string> = new Set<string>();\nexport const a11yHint = (msg: string): void => {\n\tif (a11yCache.has(msg) === false) {\n\t\ta11yCache.add(msg);\n\t\tLog.debug(msg, {\n\t\t\tclassifier: `✋ a11y`,\n\t\t\toverwriteStyle: '; background-color: #09f',\n\t\t});\n\t}\n};\n\nconst deprecatedCache: Set<string> = new Set<string>();\nexport const deprecatedHint = (msg: string): void => {\n\tif (deprecatedCache.has(msg) === false) {\n\t\tdeprecatedCache.add(msg);\n\t\tLog.warn(msg, {\n\t\t\tclassifier: `🔥 deprecated`,\n\t\t\tforceLog: true,\n\t\t\toverwriteStyle: '; background-color: #f00',\n\t\t});\n\t}\n};\n\nconst devCache: Set<string> = new Set<string>();\nexport const devHint = (msg: string): void => {\n\tif (devCache.has(msg) === false) {\n\t\tdevCache.add(msg);\n\t\tLog.debug(msg, {\n\t\t\tclassifier: `💻 dev`,\n\t\t\toverwriteStyle: '; background-color: #f09',\n\t\t});\n\t}\n};\n\nconst featureCache: Set<string> = new Set<string>();\nexport const featureHint = (msg: string, done = false): void => {\n\tif (featureCache.has(msg) === false) {\n\t\tfeatureCache.add(msg);\n\t\tmsg += done === true ? ' ✅' : '';\n\t\tLog.debug(msg, {\n\t\t\tclassifier: `🌟 feature`,\n\t\t\toverwriteStyle: '; background-color: #309',\n\t\t});\n\t}\n};\ndevHint(\n\t`Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!`\n);\n\nconst uiUxCache: Set<string> = new Set<string>();\nconst uiUxHint = (msg: string): void => {\n\tif (uiUxCache.has(msg) === false) {\n\t\tuiUxCache.add(msg);\n\t\tLog.debug(msg, {\n\t\t\tclassifier: `📑 ui/ux`,\n\t\t\toverwriteStyle: '; background-color: #060;',\n\t\t});\n\t}\n};\n\nexport const a11yHintDisabled = (): void => {\n\ta11yHint(\n\t\t`\"Disabled\" schränkt die Zugänglichkeit und Sichtbarkeit ein. Wir empfehlen aus Sicht der Barrierefreiheit readonly- statt disabled-Attribut zu verwenden.\\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae`\n\t);\n};\n\nexport const a11yHintLabelingLandmarks = (value: unknown): void => {\n\tif (typeof value !== 'string' || value === '') {\n\t\ta11yHint(\n\t\t\t`Manche Strukturelemente, wie bspw. der nav-Tag, können mehrfach in einer Webseite verwendet werden. Damit die gleichnamigen Strukturelemente voneinander unterschieden werden können, ist es erforderlich ein Aria-Label zu setzen.\\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns`\n\t\t);\n\t}\n};\n\nexport const uiUxHintMillerscheZahl = (className: string, length = 8): void => {\n\tif (length > 7) {\n\t\tuiUxHint(\n\t\t\t`[${className}] Innerhalb von Navigationsstrukturen wird empfohlen nicht mehr als 7 Menüpunkte zu verwenden.\n\nLinks:\n- https://de.ryte.com/wiki/Millersche_Zahl\n- https://de.wikipedia.org/wiki/Millersche_Zahl`\n\t\t);\n\t}\n};\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{s as setThemeStyle,g as getThemeDetails}from"./index-676dbf61.js";import{a as setMode}from"./index-50adf9a0.js";import{r as register}from"./index-4f2a12cc.js";import{L as Log}from"./dev.utils-05f4e663.js";const appGlobalScript=async()=>{setMode((e=>(e.shadowRoot instanceof ShadowRoot&&setThemeStyle(e,getThemeDetails(e)),"default"))),await register([],[]),import("./devtools-640ace8d.js").then((e=>{"object"==typeof e&&null!==e&&"function"==typeof e.initialize&&e.initialize()})).catch((e=>{Log.error(e)}))},globalScripts=appGlobalScript;export{globalScripts as g};
@@ -1 +0,0 @@
1
- {"file":"button-link-3d1888e3.js","mappings":";;;;;MAqMa,qBAAqB,GAAG,CAAC,SAAoC,EAAE,QAAgB,EAAE,KAAiB;EAC9G,cAAc,CACb,SAAS,EACT,QAAQ,EACR,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,EACzF,IAAI,GAAG,CAAC,CAAC,sCAAsC,CAAC,CAAC,EACjD,KAAK,EACL;IACC,YAAY,EAAE,KAAK;GACnB,CACD,CAAC;AACH;;;;","names":[],"sources":["./src/types/button-link.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Events } from '../enums/events';\nimport { watchValidator } from '../utils/prop.validators';\nimport { EventCallback, EventValueOrEventCallback } from './callbacks';\nimport { Stringified } from './common';\nimport { KoliBriCustomIcon, KoliBriIconProp } from './icon';\nimport { Alignment } from './props/alignment';\n\n/**\n * https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current#values\n */\nexport type AriaCurrent = boolean | 'page' | 'step' | 'location' | 'date' | 'time';\nexport type AlternativButtonLinkRole = 'button' | 'link' | 'tab';\n\n/**\n * https://twitter.com/housecor/status/1541037184622403584?t=HoUiOAZEcXFeuDl-VWAEZg\n * https://mui.com/material-ui/react-link/#accessibility\n * https://mui.com/material-ui/react-button/#text-button\n */\ntype RequiredButtonAndLinkProps = {\n\tlabel: string;\n};\ntype OptionalButtonAndLinkProps = {\n\tariaControls: string;\n\tariaCurrent: AriaCurrent;\n\tariaExpanded: boolean;\n\tariaLabel: string;\n\tariaSelected: boolean;\n\tdisabled: boolean; // TODO: Link disabled?!\n\ticon: Stringified<KoliBriIconProp>;\n\t/**\n\t * @deprecated\n\t */\n\ticonAlign: Alignment;\n\ticonOnly: boolean;\n\trole: AlternativButtonLinkRole;\n\ttabIndex: number;\n\ttooltipAlign: Alignment;\n};\n\ntype RequiredButtonAndLinkStates = {\n\ticon: {\n\t\ttop?: KoliBriCustomIcon;\n\t\tright?: KoliBriCustomIcon;\n\t\tbottom?: KoliBriCustomIcon;\n\t\tleft?: KoliBriCustomIcon;\n\t};\n\tlabel: string;\n};\ntype OptionalButtonAndLinkStates = {\n\tariaLabel: string;\n\tariaControls: string;\n\tariaCurrent: AriaCurrent;\n\tariaExpanded: boolean;\n\tariaSelected: boolean;\n\tdisabled: boolean;\n\t/**\n\t * @deprecated\n\t */\n\ticonAlign: Alignment;\n\ticonOnly: boolean;\n\trole: AlternativButtonLinkRole;\n\ttabIndex: number;\n\ttooltipAlign: Alignment;\n};\n\n/**\n * Button\n */\nexport type KoliBriButtonType = 'button' | 'reset' | 'submit';\nexport type KoliBriButtonVariant = 'primary' | 'secondary' | 'normal' | 'danger' | 'ghost' | 'custom';\n\nexport type KoliBriButtonCallbacks<T> = {\n\t[Events.onClick]?: EventValueOrEventCallback<MouseEvent, T>;\n\t[Events.onMouseDown]?: EventCallback<MouseEvent>;\n};\n\nexport type KoliBriButtonVariantPropState = {\n\tvariant: KoliBriButtonVariant;\n};\nexport type KoliBriButtonCustomClassPropState = {\n\tcustomClass: string;\n};\n\n/**\n * API ButtonLink\n */\nexport type RequiredButtonLinkProps = RequiredButtonAndLinkProps;\nexport type OptionalButtonLinkProps = OptionalButtonAndLinkProps & {\n\t/**\n\t * @deprecated Zweck?!\n\t */\n\taccessKey: string;\n\tid: string;\n\ton: KoliBriButtonCallbacks<unknown>;\n\ttype: KoliBriButtonType;\n\tvalue: Stringified<unknown>;\n};\n// type ButtonLinkProps = Generic.Element.Members<RequiredButtonProps, OptionalButtonProps>;\n\ntype RequiredButtonLinkStates = RequiredButtonAndLinkStates &\n\tKoliBriButtonVariantPropState & {\n\t\ttype: KoliBriButtonType;\n\t};\ntype OptionalButtonLinkStates = OptionalButtonAndLinkStates &\n\tKoliBriButtonCustomClassPropState & {\n\t\t/**\n\t\t * @deprecated Zweck?!\n\t\t */\n\t\taccessKey: string;\n\t\tid: string;\n\t\ton: KoliBriButtonCallbacks<unknown>;\n\t\tvalue: unknown;\n\t};\n// type ButtonLinkStates = Generic.Element.Members<RequiredButtonStates, OptionalButtonStates>;\n\n/**\n * API Button\n */\nexport type RequiredButtonProps = RequiredButtonLinkProps;\nexport type OptionalButtonProps = OptionalButtonLinkProps & KoliBriButtonVariantPropState & KoliBriButtonCustomClassPropState;\nexport type ButtonProps = Generic.Element.Members<RequiredButtonProps, OptionalButtonProps>;\n\nexport type RequiredButtonStates = RequiredButtonLinkStates & KoliBriButtonVariantPropState;\nexport type OptionalButtonStates = OptionalButtonLinkStates & KoliBriButtonCustomClassPropState;\nexport type ButtonStates = Generic.Element.Members<RequiredButtonStates, OptionalButtonStates>;\n\n/* LINK */\n\nexport type LinkOnCallbacks = {\n\t[Events.onClick]?: EventValueOrEventCallback<Event, string>;\n};\n\n// https://www.w3schools.com/tags/att_a_target.asp\nexport type LinkTarget = '_blank' | '_parent' | '_self' | '_top' | string;\n\nexport type LinkUseCase = 'text' | 'image' | 'nav';\n\n/**\n * API Link\n */\nexport type RequiredLinkProps = RequiredButtonAndLinkProps & {\n\thref: string;\n};\nexport type OptionalLinkProps = OptionalButtonAndLinkProps & {\n\ton: LinkOnCallbacks;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tselector: string;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tstealth: boolean;\n\ttarget: LinkTarget;\n\ttargetDescription: string;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tuseCase: LinkUseCase;\n};\nexport type LinkProps = Generic.Element.Members<RequiredLinkProps, OptionalLinkProps>;\n\nexport type RequiredLinkStates = RequiredButtonAndLinkStates & {\n\thref: string;\n};\nexport type OptionalLinkStates = OptionalButtonAndLinkStates & {\n\tariaSelected: boolean;\n\ton: LinkOnCallbacks;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tselector: string;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tstealth: boolean;\n\ttarget: LinkTarget;\n\ttargetDescription: string;\n\t/**\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\tuseCase: LinkUseCase;\n};\nexport type LinkStates = Generic.Element.Members<RequiredLinkStates, OptionalLinkStates>;\n\n/**\n * API LinkButton\n */\nexport type RequiredLinkButtonProps = RequiredLinkProps;\nexport type OptionalLinkButtonProps = OptionalLinkProps & KoliBriButtonVariantPropState & KoliBriButtonCustomClassPropState;\n// type LinkButtonProps = Generic.Element.Members<RequiredLinkButtonProps, OptionalLinkButtonProps>;\n\nexport type RequiredLinkButtonStates = KoliBriButtonVariantPropState;\nexport type OptionalLinkButtonStates = KoliBriButtonCustomClassPropState;\nexport type LinkButtonStates = Generic.Element.Members<RequiredLinkButtonStates, OptionalLinkButtonStates>;\n\nexport const watchTooltipAlignment = (component: Generic.Element.Component, propName: string, value?: Alignment): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'top' || value === 'right' || value === 'bottom' || value === 'left',\n\t\tnew Set(['Alignment {top, right, buttom, left}']),\n\t\tvalue,\n\t\t{\n\t\t\tdefaultValue: 'top',\n\t\t}\n\t);\n};\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"controller-04bee517.js","mappings":"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","names":[],"sources":["./src/components/input-password/controller.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { InputTypeOnOff } from '../../types/input/types';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputPasswordController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate placeholderCache?: string;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprivate handleHiddenLabelAndRequired = (): void => {\n\t\tif (this.component.state._hideLabel === true && this.component.state._required === true) {\n\t\t\tdevHint(`[KolInput*] Wenn man das Label ausblendet, dann kann der sehende Nutzer:in nicht mehr erkennen, ob die Eingabe erforderlich ist.`);\n\t\t\tthis.hideLabel = false;\n\t\t} else {\n\t\t\tthis.hideLabel = this.component.state._hideLabel === true;\n\t\t}\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleHiddenLabelAndRequired,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleHiddenLabelAndRequired,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateSize(value?: number): void {\n\t\twatchNumber(this.component, '_size', value, {\n\t\t\tmin: 1,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateSize(this.component._size);\n\t\tthis.validateValue(this.component._value);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\t/**\n\t\t * Beim Screenreader NVDA wird der Placeholder mit\n\t\t * vorgelesen. Somit kann es vorkommen, dass das\n\t\t * Label und der Placeholder vorgelesen werden.\n\t\t *\n\t\t * Aufgrund dessen, dass das Label immer vorgelesen\n\t\t * werden muss, kann das zusätzliche Vorlesen des\n\t\t * Placeholders störend sein.\n\t\t *\n\t\t * Damit beim Fokussieren das \"doppelte\" vorlesen\n\t\t * vermieden werden kann, wird der Placeholder für\n\t\t * den fokussierten Feldstatus entfernt.\n\t\t *\n\t\t * Hinweis: Für alle Nutzenden müssen die all dar-\n\t\t * gestellten Inhalte, also auch der Place-\n\t\t * holder, gleichermaßen zugänglich sein.\n\t\t * Das oben beschriebene Handling erfüllt\n\t\t * diese Anforderung nicht.\n\t\t */\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: this.placeholderCache,\n\t\t};\n\t\tthis.placeholderCache = undefined;\n\t\tsuper.onBlur(event);\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.placeholderCache = this.component.state._placeholder as string;\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: undefined,\n\t\t};\n\t\tsuper.onFocus(event);\n\t}\n}\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{d as devHint}from"./a11y.tipps-5cdbd5e2.js";import{b as getExperimalMode}from"./dev.utils-05f4e663.js";import{f as setEventTargetAndStopPropagation,K as KoliBriDevHelper}from"./prop.validators-769a843a.js";const searchFormElement=e=>{for(getExperimalMode()&&(devHint("↓ Search form element start."),console.log(e));e instanceof HTMLElement&&"FORM"!==e.tagName&&"KOL-FORM"!==e.tagName;)e=e.parentElement instanceof HTMLElement?e.parentElement:e.parentNode instanceof ShadowRoot?e.parentNode.host:null,getExperimalMode()&&console.log(e);return getExperimalMode()&&devHint("↑ Search form element finished."),e},propergateResetEventToForm=(e={})=>{const t=searchFormElement(e.form);if(t instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===t.tagName)setEventTargetAndStopPropagation(e,t),t.dispatchEvent(e);else if("KOL-FORM"===t.tagName){setEventTargetAndStopPropagation(e,KoliBriDevHelper.querySelector("form",t));const o=t;"object"==typeof o._on&&null!==typeof o._on&&"function"==typeof o._on.onReset&&o._on.onReset(e)}}},propergateSubmitEventToForm=(e={})=>{const t=searchFormElement(e.form);if(t instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:t});if("FORM"===t.tagName)setEventTargetAndStopPropagation(e,t),t.dispatchEvent(e);else if("KOL-FORM"===t.tagName){setEventTargetAndStopPropagation(e,KoliBriDevHelper.querySelector("form",t));const o=t;"object"==typeof o._on&&null!==typeof o._on&&"function"==typeof o._on.onSubmit&&o._on.onSubmit(e)}}};export{propergateResetEventToForm as a,propergateSubmitEventToForm as p};
@@ -1 +0,0 @@
1
- {"file":"controller-32fdeebb.js","mappings":"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","names":[],"sources":["./src/components/form/controller.ts"],"sourcesContent":["import { devHint } from '../../utils/a11y.tipps';\nimport { getExperimalMode } from '../../utils/dev.utils';\nimport { KoliBriDevHelper, setEventTargetAndStopPropagation } from '../../utils/prop.validators';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tconsole.log(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== 'KOL-FORM') {\n\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\tel = el.parentElement;\n\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\tel = el.parentNode.host;\n\t\t} else {\n\t\t\tel = null;\n\t\t}\n\t\tif (getExperimalMode()) {\n\t\t\tconsole.log(el);\n\t\t}\n\t}\n\tif (getExperimalMode()) {\n\t\tdevHint(`↑ Search form element finished.`);\n\t}\n\treturn el;\n};\n\nexport const propergateResetEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {}\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new Event('reset', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t});\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTargetAndStopPropagation(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTargetAndStopPropagation(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as HTMLKolFormElement;\n\t\t\tif (typeof kolForm._on === 'object' && typeof kolForm._on !== null && typeof kolForm._on.onReset === 'function') {\n\t\t\t\tkolForm._on.onReset(event);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const propergateSubmitEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {}\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new SubmitEvent('submit', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tsubmitter: form,\n\t\t});\n\t\t/**\n\t\t * TODO: Wenn Formular-Action (nicht Ajax oder JS) verwendet wird,\n\t\t * dann müssen wir das Event an das HTMLFormElement innerhalb\n\t\t * der HTMLKolFormElements propagieren, wenn kein onSubmit\n\t\t * gesetzt wurde.\n\t\t *\n\t\t * TODO: Form-associated custom elements:\n\t\t * - https://web.dev/more-capable-form-controls/\n\t\t * - https://github.com/public-ui/kolibri/issues/946\n\t\t */\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTargetAndStopPropagation(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTargetAndStopPropagation(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as HTMLKolFormElement;\n\t\t\tif (typeof kolForm._on === 'object' && typeof kolForm._on !== null && typeof kolForm._on.onSubmit === 'function') {\n\t\t\t\tkolForm._on.onSubmit(event);\n\t\t\t}\n\t\t}\n\t}\n};\n"],"version":3}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{e as a11yHintDisabled,d as devHint}from"./a11y.tipps-5cdbd5e2.js";import{b as watchBoolean,w as watchString,s as setState,o as objectObjectHandler,p as parseJson}from"./prop.validators-769a843a.js";import{v as validateTabIndex}from"./tab-index-22c62334.js";import{b as getExperimalMode}from"./dev.utils-05f4e663.js";const getRenderStates=t=>{const e="string"==typeof t._error&&t._error.length>0&&!0===t._touched,o="string"==typeof t._hint&&t._hint.length>0,n=[];return!0===e&&n.push(`${t._id}-error`),!0===o&&n.push(`${t._id}-hint`),{hasError:e,hasHint:o,ariaDiscribedBy:n}},EXPERIMENTAL_MODE=getExperimalMode();class ControlledInputController{constructor(t,e,o){var n,i,a,s,h;if(this.syncFormAssociatedName=()=>{var t;EXPERIMENTAL_MODE&&(null===(t=this.formAssociated)||void 0===t||t.setAttribute("name",this.component.state._name||this.component.state._id))},this.setFormAssociatedValue=(t=null)=>{var e;EXPERIMENTAL_MODE&&(null===(e=this.formAssociated)||void 0===e||e.setAttribute("value",t))},this.component=t,this.name=e,this.host=o,EXPERIMENTAL_MODE){this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden");const t=(null===(n=this.host)||void 0===n?void 0:n.children)||[];for(let e=0;e<t.length;e++)"INPUT"===(null===(i=this.host)||void 0===i?void 0:i.children[e].tagName)&&(null===(a=this.host)||void 0===a||a.removeChild(null===(s=this.host)||void 0===s?void 0:s.children[e]));null===(h=this.host)||void 0===h||h.appendChild(this.formAssociated)}}validateAlert(t){watchBoolean(this.component,"_alert",t)}validateTouched(t){watchBoolean(this.component,"_touched",t)}componentWillLoad(){this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class InputController extends ControlledInputController{constructor(t,e,o){super(t,e,o),this.hideLabel=!1,this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this)},this.component=t}validateAccessKey(t){watchString(this.component,"_accessKey",t)}validateAdjustHeight(t){watchBoolean(this.component,"_adjustHeight",t)}validateDisabled(t){watchBoolean(this.component,"_disabled",t),!0===t&&a11yHintDisabled()}validateError(t){watchString(this.component,"_error",t)}validateHideLabel(t){watchBoolean(this.component,"_hideLabel",t)}validateHint(t){watchString(this.component,"_hint",t)}validateId(t){watchString(this.component,"_id",t,{hooks:{afterPatch:this.syncFormAssociatedName}}),void 0===t&&devHint("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateName(t){watchString(this.component,"_name",t,{hooks:{afterPatch:this.syncFormAssociatedName}}),void 0===t&&devHint("Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion des Eingabefeldes relevant sein.")}validateOn(t){"object"==typeof t&&setState(this.component,"_on",t)}validateSmartButton(t){objectObjectHandler(t,(()=>{try{t=parseJson(t)}catch(t){}setState(this.component,"_smartButton",t)}))}validateTabIndex(t){validateTabIndex(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateDisabled(this.component._disabled),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateName(this.component._name),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),this.syncFormAssociatedName()}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t){var e;this.setFormAssociatedValue(t.target.value),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,t.target.value)}onClick(t){var e;"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(t)}onFocus(t){var e;this.component._alert=!0,"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}setValue(t,e){var o;this.setFormAssociatedValue(e),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(t,e)}}export{InputController as I,getRenderStates as g};
@@ -1 +0,0 @@
1
- {"file":"controller-944c3e03.js","mappings":"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","names":[],"sources":["./src/components/input/controller.ts","./src/components/input-adapter-leanup/controller.ts","./src/components/@deprecated/input/controller.ts"],"sourcesContent":["/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_error?: string;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: boolean;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDiscribedBy: string[];\n} => {\n\tconst hasError = typeof state._error === 'string' && state._error.length > 0 && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDiscribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDiscribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDiscribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDiscribedBy };\n};\n","import { Generic } from '@a11y-ui/core';\nimport { getExperimalMode } from '../../utils/dev.utils';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { Props, Watches } from './types';\n\nconst EXPERIMENTAL_MODE = getExperimalMode();\n\nexport class ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly name: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLInputElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.name = name;\n\t\tthis.host = host;\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\tconst children = this.host?.children || [];\n\t\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\t\tif (this.host?.children[i].tagName === 'INPUT') {\n\t\t\t\t\tthis.host?.removeChild(this.host?.children[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\tprotected readonly syncFormAssociatedName = () => {\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\tthis.formAssociated?.setAttribute('name', (this.component.state._name as string) || (this.component.state._id as string));\n\t\t}\n\t};\n\n\tpublic readonly setFormAssociatedValue = (value: string | null = null) => {\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\tthis.formAssociated?.setAttribute('value', value as string);\n\t\t}\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateTouched(value?: boolean): void {\n\t\twatchBoolean(this.component, '_touched', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../../types/button-link';\nimport { InputTypeOnDefault } from '../../../types/input/types';\nimport { a11yHintDisabled, devHint } from '../../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchBoolean, watchString } from '../../../utils/prop.validators';\nimport { validateTabIndex } from '../../../utils/validators/tab-index';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\nimport { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport { Props, Watches } from './types';\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tpublic hideLabel = false;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\twatchBoolean(this.component, '_adjustHeight', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateError(value?: string): void {\n\t\twatchString(this.component, '_error', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.syncFormAssociatedName,\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateName(value?: string): void {\n\t\twatchString(this.component, '_name', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.syncFormAssociatedName,\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(`Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion des Eingabefeldes relevant sein.`);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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.component, '_smartButton', value);\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t\tthis.syncFormAssociatedName();\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\tprotected onChange(event: Event): void {\n\t\tthis.setFormAssociatedValue((event.target as HTMLInputElement).value);\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, (event.target as HTMLInputElement).value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic setValue(event: Event, value: string | number | boolean): void {\n\t\tthis.setFormAssociatedValue(value as string);\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t};\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"controller-9926eaee.js","mappings":";;;;;;MAoBa,wBAAyB,SAAQ,uBAAuB;EAGpE,YAAmB,SAA0D,EAAE,IAAY,EAAE,IAAkB;IAC9G,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;GAC3B;EAKM,YAAY,CAAC,KAA6B;IAChD,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAY,KAAK,OAAO,IAAI,KAAK,QAAQ,EAAE,KAAK,CAAC,CAAC;GACjG;EAKM,iBAAiB;IACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;GACxC;CACD;MAEY,mBAAoB,SAAQ,wBAAwB;EAMhE,YAAmB,SAAqD,EAAE,IAAY,EAAE,IAAkB;IACzG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAJvB,aAAQ,GAAG,KAAK,CAAC;IACjB,YAAO,GAAG,KAAK,CAAC;IAItB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;GAC3B;EAKM,YAAY,CAAC,KAAqB;IACxC,cAAc,CACb,IAAI,CAAC,SAAS,EACd,OAAO,EACP,CAAC,KAAK,KAAc,OAAO,KAAK,KAAK,QAAQ,KAAK,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,EAC/H,IAAI,GAAG,CAAC,CAAC,iCAAiC,CAAC,CAAC,EAC5C,KAAK,CACL,CAAC;GACF;EAKM,iBAAiB;IACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;GACxC;;;;;","names":[],"sources":["./src/components/input-text/controller.ts"],"sourcesContent":["import { watchJsonArrayString, watchValidator } from '../../utils/prop.validators';\nimport { InputPasswordController } from '../input-password/controller';\nimport { Props as InputTextProps, Watches as InputTextWatches } from './types';\n\nimport { Generic } from '@a11y-ui/core';\nimport { InputTextType } from '../../types/input/control/text';\nimport { Stringified } from '../../types/common';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tid: string;\n};\ntype OptionalProps = {\n\tlist: Stringified<string[]>;\n};\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\twatchJsonArrayString(this.component, '_list', (item: string) => typeof item === 'string', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateList(this.component._list);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\tpublic hasList = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'text' || value === 'search' || value === 'url' || value === 'tel'),\n\t\t\tnew Set(['String {text, search, url, tel}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t}\n}\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"controller-ea28fcf8.js","mappings":"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","names":[],"sources":["./src/components/input-radio/controller.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { Orientation } from '../../types/orientation';\nimport { W3CInputValue } from '../../types/w3c';\nimport { mapString2Unknown, setState, watchBoolean, watchJsonArrayString, watchValidator } from '../../utils/prop.validators';\nimport { STATE_CHANGE_EVENT } from '../../utils/validator';\nimport { InputController } from '../@deprecated/input/controller';\nimport { Props, Watches } from './types';\n\nexport const fillKeyOptionMap = <T>(keyOptionMap: Map<string, Option<T>>, options: SelectOption<T>[], preKey = ''): void => {\n\toptions.forEach((option, index) => {\n\t\tconst key = `${preKey}-${index}`;\n\t\tif (typeof option === 'object' && option !== null && typeof option.label === 'string' && option.label.length > 0) {\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\tfillKeyOptionMap(keyOptionMap, (option as Optgroup<T>).options, key);\n\t\t\t} else {\n\t\t\t\tkeyOptionMap.set(key, option as Option<T>);\n\t\t\t}\n\t\t}\n\t});\n};\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = {\n\trequired: boolean;\n};\ntype InputCheckboxRadioProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputCheckboxRadioWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputCheckboxRadioController extends InputController implements InputCheckboxRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputCheckboxRadioProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputCheckboxRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateRequired(this.component._required);\n\t}\n}\n\nexport class InputRadioController extends InputCheckboxRadioController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate onStateChange!: () => void;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprivate readonly isValueInOptions = (value: unknown, options: Option<W3CInputValue>[]): boolean => {\n\t\treturn options.find((option) => option.value === value) !== undefined;\n\t};\n\n\tprotected readonly beforePatchListValue = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst list = nextState.has('_list') ? nextState.get('_list') : this.component.state._list;\n\t\tif (Array.isArray(list) && list.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, list as SelectOption<W3CInputValue>[]);\n\t\t\tconst value = nextState.has('_value') ? nextState.get('_value') : this.component.state._value;\n\t\t\tif (this.isValueInOptions(value, list as Option<W3CInputValue>[]) === false) {\n\t\t\t\tconst newValue = (\n\t\t\t\t\tlist[0] as {\n\t\t\t\t\t\tvalue: string;\n\t\t\t\t\t}\n\t\t\t\t).value;\n\t\t\t\tnextState.set('_value', newValue);\n\t\t\t\tthis.onStateChange();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_orientation',\n\t\t\t(value): boolean => value === 'horizontal' || value === 'vertical',\n\t\t\tnew Set(['Orientation {horizontal, vertical}']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: 'vertical',\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateList(value?: Stringified<Option<W3CInputValue>[]>): void {\n\t\twatchJsonArrayString(\n\t\t\tthis.component,\n\t\t\t'_list',\n\t\t\t(item: Option<W3CInputValue>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\t\tvalue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: this.beforePatchListValue,\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: Stringified<unknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? value[0] : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tbeforePatch: this.beforePatchListValue,\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(onChange?: (event: Event) => void): void {\n\t\tsuper.componentWillLoad();\n\n\t\tthis.onStateChange = () => {\n\t\t\tif (typeof onChange === 'function') {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tclearTimeout(timeout);\n\t\t\t\t\tonChange(STATE_CHANGE_EVENT);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tthis.validateOrientation(this.component._orientation);\n\t\tthis.validateList(this.component._list);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"version":3}