@public-ui/components 2.0.0-rc.1 → 2.0.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 (973) hide show
  1. package/custom-elements.json +213 -112
  2. package/dist/cjs/InternalUnderlinedAccessKey-1daef254.js +4 -0
  3. package/dist/cjs/InternalUnderlinedAccessKey-1daef254.js.map +1 -0
  4. package/dist/cjs/{a11y.tipps-7bc295a0.js → a11y.tipps-1c165956.js} +1 -1
  5. package/dist/cjs/{a11y.tipps-7bc295a0.js.map → a11y.tipps-1c165956.js.map} +1 -1
  6. package/dist/cjs/access-key-30674e1a.js +4 -0
  7. package/dist/cjs/access-key-30674e1a.js.map +1 -0
  8. package/dist/cjs/align-floating-elements-01d5ad38.js +4 -0
  9. package/dist/cjs/align-floating-elements-01d5ad38.js.map +1 -0
  10. package/dist/cjs/alignment-d8b351ab.js +4 -0
  11. package/dist/cjs/alignment-d8b351ab.js.map +1 -0
  12. package/dist/cjs/alternative-button-link-role-e188938c.js +4 -0
  13. package/dist/cjs/{alternative-button-link-role-9e647514.js.map → alternative-button-link-role-e188938c.js.map} +1 -1
  14. package/dist/cjs/app-globals-fcc1963e.js +4 -0
  15. package/dist/cjs/app-globals-fcc1963e.js.map +1 -0
  16. package/dist/cjs/ariaCurrentService-d894e18d.js +4 -0
  17. package/dist/cjs/ariaCurrentService-d894e18d.js.map +1 -0
  18. package/dist/cjs/{associated.controller-8913f766.js → associated.controller-b5e04826.js} +1 -1
  19. package/dist/cjs/{associated.controller-8913f766.js.map → associated.controller-b5e04826.js.map} +1 -1
  20. package/dist/cjs/{color-7556424a.js → color-ccd88de4.js} +1 -1
  21. package/dist/cjs/{color-7556424a.js.map → color-ccd88de4.js.map} +1 -1
  22. package/dist/cjs/{controller-5e9f8d56.js → controller-20b8c73c.js} +1 -1
  23. package/dist/cjs/{controller-5e9f8d56.js.map → controller-20b8c73c.js.map} +1 -1
  24. package/dist/cjs/controller-5e7966e3.js +4 -0
  25. package/dist/cjs/controller-5e7966e3.js.map +1 -0
  26. package/dist/cjs/{controller-722157ec.js → controller-98ced69a.js} +1 -1
  27. package/dist/cjs/{controller-722157ec.js.map → controller-98ced69a.js.map} +1 -1
  28. package/dist/cjs/controller-b37efa9f.js +4 -0
  29. package/dist/cjs/controller-b37efa9f.js.map +1 -0
  30. package/dist/cjs/controller-dd37111e.js +4 -0
  31. package/dist/cjs/controller-dd37111e.js.map +1 -0
  32. package/dist/cjs/{controller-icon-e7aae6e1.js → controller-icon-1d1188c3.js} +1 -1
  33. package/dist/cjs/{controller-icon-e7aae6e1.js.map → controller-icon-1d1188c3.js.map} +1 -1
  34. package/dist/cjs/custom-class-4a4b8f5f.js +4 -0
  35. package/dist/cjs/custom-class-4a4b8f5f.js.map +1 -0
  36. package/dist/cjs/details-synced-open-state-01d46fbc.js +4 -0
  37. package/dist/cjs/details-synced-open-state-01d46fbc.js.map +1 -0
  38. package/dist/cjs/dev.utils-a3fa0ded.js +4 -0
  39. package/dist/cjs/dev.utils-a3fa0ded.js.map +1 -0
  40. package/dist/cjs/{devtools-646843d0.js → devtools-37eef902.js} +1 -1
  41. package/dist/cjs/{devtools-646843d0.js.map → devtools-37eef902.js.map} +1 -1
  42. package/dist/cjs/has-closer-c17cc0bc.js +4 -0
  43. package/dist/cjs/{has-closer-941dcb50.js.map → has-closer-c17cc0bc.js.map} +1 -1
  44. package/dist/cjs/hide-label-1eab3780.js +4 -0
  45. package/dist/cjs/{hide-label-e6f15383.js.map → hide-label-1eab3780.js.map} +1 -1
  46. package/dist/cjs/i18n-f7771d30.js +4 -0
  47. package/dist/cjs/i18n-f7771d30.js.map +1 -0
  48. package/dist/cjs/{icons-a50a5cb6.js → icons-92e34672.js} +1 -1
  49. package/dist/cjs/{icons-a50a5cb6.js.map → icons-92e34672.js.map} +1 -1
  50. package/dist/cjs/image-source-51299edf.js +4 -0
  51. package/dist/cjs/{image-source-be51f603.js.map → image-source-51299edf.js.map} +1 -1
  52. package/dist/cjs/{index-d94c6297.js → index-07f69fb0.js} +1 -1
  53. package/dist/cjs/{index-d94c6297.js.map → index-07f69fb0.js.map} +1 -1
  54. package/dist/cjs/index-a0085191.js +5 -0
  55. package/dist/cjs/index-a0085191.js.map +1 -0
  56. package/dist/cjs/{index-65ced40c.js → index-b786e835.js} +1 -1
  57. package/dist/cjs/{index-65ced40c.js.map → index-b786e835.js.map} +1 -1
  58. package/dist/cjs/index.cjs.js +1 -1
  59. package/dist/cjs/index.cjs.js.map +1 -1
  60. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +4 -0
  65. package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -0
  66. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-avatar-wc.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-button-wc_2.cjs.entry.js +4 -0
  84. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -0
  85. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kol-popover-wc.cjs.entry.js +4 -0
  141. package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -0
  142. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  144. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  145. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  146. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-span-wc.cjs.entry.js +4 -0
  151. package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -0
  152. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  153. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  154. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  155. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  156. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  157. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  158. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  159. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  160. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  161. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  162. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  163. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  164. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  165. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  166. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  167. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  168. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  169. package/dist/cjs/kolibri.cjs.js +1 -1
  170. package/dist/cjs/kolibri.cjs.js.map +1 -1
  171. package/dist/cjs/{label-1aedd7c9.js → label-5a44a87d.js} +1 -1
  172. package/dist/cjs/{label-1aedd7c9.js.map → label-5a44a87d.js.map} +1 -1
  173. package/dist/cjs/loader.cjs.js +1 -1
  174. package/dist/cjs/open-1740dbfd.js +4 -0
  175. package/dist/cjs/{open-fb457a4f.js.map → open-1740dbfd.js.map} +1 -1
  176. package/dist/cjs/prop.validators-249e288b.js +4 -0
  177. package/dist/cjs/prop.validators-249e288b.js.map +1 -0
  178. package/dist/cjs/rows-d8f6b3fe.js +4 -0
  179. package/dist/cjs/{rows-9e57680f.js.map → rows-d8f6b3fe.js.map} +1 -1
  180. package/dist/cjs/show-4f692c20.js +4 -0
  181. package/dist/cjs/{show-9060efee.js.map → show-4f692c20.js.map} +1 -1
  182. package/dist/cjs/{suggestions-97bfee0c.js → suggestions-b89272cd.js} +1 -1
  183. package/dist/cjs/{suggestions-97bfee0c.js.map → suggestions-b89272cd.js.map} +1 -1
  184. package/dist/cjs/{tab-index-70de06c1.js → tab-index-b0756f58.js} +1 -1
  185. package/dist/cjs/{tab-index-70de06c1.js.map → tab-index-b0756f58.js.map} +1 -1
  186. package/dist/cjs/{toaster-d370fe6a.js → toaster-812c9c9b.js} +1 -1
  187. package/dist/cjs/toaster-812c9c9b.js.map +1 -0
  188. package/dist/cjs/{toaster-82cf12c5.js → toaster-e3a1416c.js} +1 -1
  189. package/dist/cjs/toaster-e3a1416c.js.map +1 -0
  190. package/dist/cjs/{tooltip-align-5d4d8eef.js → tooltip-align-a6de4888.js} +1 -1
  191. package/dist/cjs/{tooltip-align-5d4d8eef.js.map → tooltip-align-a6de4888.js.map} +1 -1
  192. package/dist/cjs/validation-1a059073.js +4 -0
  193. package/dist/cjs/validation-1a059073.js.map +1 -0
  194. package/dist/cjs/validation-b0d8cbc5.js +4 -0
  195. package/dist/cjs/{validation-8f74bfb8.js.map → validation-b0d8cbc5.js.map} +1 -1
  196. package/dist/components/align-floating-elements.js +4 -0
  197. package/dist/components/align-floating-elements.js.map +1 -0
  198. package/dist/components/ariaCurrentService.js +4 -0
  199. package/dist/components/ariaCurrentService.js.map +1 -0
  200. package/dist/components/component.js +1 -1
  201. package/dist/components/component.js.map +1 -1
  202. package/dist/components/component11.js +1 -1
  203. package/dist/components/component11.js.map +1 -1
  204. package/dist/components/component12.js +1 -1
  205. package/dist/components/component12.js.map +1 -1
  206. package/dist/components/component13.js +1 -1
  207. package/dist/components/component13.js.map +1 -1
  208. package/dist/components/component14.js +1 -1
  209. package/dist/components/component14.js.map +1 -1
  210. package/dist/components/component15.js +1 -1
  211. package/dist/components/component15.js.map +1 -1
  212. package/dist/components/component2.js +1 -1
  213. package/dist/components/component2.js.map +1 -1
  214. package/dist/components/component3.js +1 -1
  215. package/dist/components/component3.js.map +1 -1
  216. package/dist/components/component4.js +1 -1
  217. package/dist/components/component4.js.map +1 -1
  218. package/dist/components/component5.js +1 -1
  219. package/dist/components/component5.js.map +1 -1
  220. package/dist/components/component6.js +1 -1
  221. package/dist/components/component6.js.map +1 -1
  222. package/dist/components/component7.js +1 -1
  223. package/dist/components/component7.js.map +1 -1
  224. package/dist/components/component8.js +1 -1
  225. package/dist/components/component8.js.map +1 -1
  226. package/dist/components/component9.js +1 -1
  227. package/dist/components/component9.js.map +1 -1
  228. package/dist/components/controller.js +1 -1
  229. package/dist/components/controller2.js +1 -1
  230. package/dist/components/controller2.js.map +1 -1
  231. package/dist/components/controller3.js +1 -1
  232. package/dist/components/controller3.js.map +1 -1
  233. package/dist/components/details-synced-open-state.js +1 -1
  234. package/dist/components/details-synced-open-state.js.map +1 -1
  235. package/dist/components/devtools.js +1 -1
  236. package/dist/components/i18n.js +1 -1
  237. package/dist/components/i18n.js.map +1 -1
  238. package/dist/components/index.js +1 -1
  239. package/dist/components/index.js.map +1 -1
  240. package/dist/components/kol-abbr.js +1 -1
  241. package/dist/components/kol-abbr.js.map +1 -1
  242. package/dist/components/kol-accordion.js +1 -1
  243. package/dist/components/kol-accordion.js.map +1 -1
  244. package/dist/components/kol-avatar.js +1 -1
  245. package/dist/components/kol-avatar.js.map +1 -1
  246. package/dist/components/kol-breadcrumb.js +1 -1
  247. package/dist/components/kol-breadcrumb.js.map +1 -1
  248. package/dist/components/kol-button-group.js +1 -1
  249. package/dist/components/kol-button-group.js.map +1 -1
  250. package/dist/components/kol-button-link.js +1 -1
  251. package/dist/components/kol-button-link.js.map +1 -1
  252. package/dist/components/kol-card.js +1 -1
  253. package/dist/components/kol-card.js.map +1 -1
  254. package/dist/components/kol-details.js +1 -1
  255. package/dist/components/kol-details.js.map +1 -1
  256. package/dist/components/kol-heading.js +1 -1
  257. package/dist/components/kol-heading.js.map +1 -1
  258. package/dist/components/kol-image.js +1 -1
  259. package/dist/components/kol-image.js.map +1 -1
  260. package/dist/components/kol-input-checkbox.js +1 -1
  261. package/dist/components/kol-input-checkbox.js.map +1 -1
  262. package/dist/components/kol-input-color.js +1 -1
  263. package/dist/components/kol-input-color.js.map +1 -1
  264. package/dist/components/kol-input-date.js +1 -1
  265. package/dist/components/kol-input-date.js.map +1 -1
  266. package/dist/components/kol-input-email.js +1 -1
  267. package/dist/components/kol-input-email.js.map +1 -1
  268. package/dist/components/kol-input-file.js +1 -1
  269. package/dist/components/kol-input-file.js.map +1 -1
  270. package/dist/components/kol-input-number.js +1 -1
  271. package/dist/components/kol-input-number.js.map +1 -1
  272. package/dist/components/kol-input-password.js +1 -1
  273. package/dist/components/kol-input-password.js.map +1 -1
  274. package/dist/components/kol-input-radio.js +1 -1
  275. package/dist/components/kol-input-radio.js.map +1 -1
  276. package/dist/components/kol-input-range.js +1 -1
  277. package/dist/components/kol-input-range.js.map +1 -1
  278. package/dist/components/kol-input-text.js +1 -1
  279. package/dist/components/kol-input-text.js.map +1 -1
  280. package/dist/components/kol-kolibri.js +1 -1
  281. package/dist/components/kol-kolibri.js.map +1 -1
  282. package/dist/components/kol-link-button.js +1 -1
  283. package/dist/components/kol-link-button.js.map +1 -1
  284. package/dist/components/kol-link-group.js +1 -1
  285. package/dist/components/kol-link-group.js.map +1 -1
  286. package/dist/components/kol-logo.js +1 -1
  287. package/dist/components/kol-logo.js.map +1 -1
  288. package/dist/components/kol-modal.js +1 -1
  289. package/dist/components/kol-modal.js.map +1 -1
  290. package/dist/components/kol-nav.js +1 -1
  291. package/dist/components/kol-nav.js.map +1 -1
  292. package/dist/components/{kol-popover.d.ts → kol-popover-wc.d.ts} +4 -4
  293. package/dist/components/kol-popover-wc.js +4 -0
  294. package/dist/components/kol-popover-wc.js.map +1 -0
  295. package/dist/components/kol-progress.js +1 -1
  296. package/dist/components/kol-progress.js.map +1 -1
  297. package/dist/components/kol-quote.js +1 -1
  298. package/dist/components/kol-quote.js.map +1 -1
  299. package/dist/components/kol-skip-nav.js +1 -1
  300. package/dist/components/kol-skip-nav.js.map +1 -1
  301. package/dist/components/kol-span.js +1 -1
  302. package/dist/components/kol-span.js.map +1 -1
  303. package/dist/components/kol-spin.js +1 -1
  304. package/dist/components/kol-spin.js.map +1 -1
  305. package/dist/components/kol-split-button.js +1 -1
  306. package/dist/components/kol-split-button.js.map +1 -1
  307. package/dist/components/kol-table.js +1 -1
  308. package/dist/components/kol-table.js.map +1 -1
  309. package/dist/components/kol-tabs.js +1 -1
  310. package/dist/components/kol-tabs.js.map +1 -1
  311. package/dist/components/kol-textarea.js +1 -1
  312. package/dist/components/kol-textarea.js.map +1 -1
  313. package/dist/components/kol-toast-container.js +1 -1
  314. package/dist/components/kol-toast-container.js.map +1 -1
  315. package/dist/components/kol-version.js +1 -1
  316. package/dist/components/kol-version.js.map +1 -1
  317. package/dist/components/prop.validators.js +1 -1
  318. package/dist/components/prop.validators.js.map +1 -1
  319. package/dist/components/shadow.js +1 -1
  320. package/dist/components/shadow.js.map +1 -1
  321. package/dist/components/shadow2.js +1 -1
  322. package/dist/components/shadow2.js.map +1 -1
  323. package/dist/components/shadow3.js +1 -1
  324. package/dist/components/shadow3.js.map +1 -1
  325. package/dist/components/toaster.js.map +1 -1
  326. package/dist/components/tooltip-align.js +1 -1
  327. package/dist/esm/InternalUnderlinedAccessKey-8b996006.js +4 -0
  328. package/dist/esm/InternalUnderlinedAccessKey-8b996006.js.map +1 -0
  329. package/dist/esm/{a11y.tipps-583a2096.js → a11y.tipps-68791110.js} +1 -1
  330. package/dist/esm/{a11y.tipps-583a2096.js.map → a11y.tipps-68791110.js.map} +1 -1
  331. package/dist/esm/access-key-c2c8b712.js +4 -0
  332. package/dist/esm/access-key-c2c8b712.js.map +1 -0
  333. package/dist/esm/align-floating-elements-ebf0712d.js +4 -0
  334. package/dist/esm/align-floating-elements-ebf0712d.js.map +1 -0
  335. package/dist/esm/alignment-cb8fa342.js +4 -0
  336. package/dist/esm/alignment-cb8fa342.js.map +1 -0
  337. package/dist/esm/alternative-button-link-role-641ea928.js +4 -0
  338. package/dist/esm/{alternative-button-link-role-1b39949c.js.map → alternative-button-link-role-641ea928.js.map} +1 -1
  339. package/dist/esm/app-globals-7879f3fb.js +4 -0
  340. package/dist/esm/app-globals-7879f3fb.js.map +1 -0
  341. package/dist/esm/ariaCurrentService-2ef83ca8.js +4 -0
  342. package/dist/esm/ariaCurrentService-2ef83ca8.js.map +1 -0
  343. package/dist/esm/{associated.controller-103e6fb9.js → associated.controller-d463ef08.js} +1 -1
  344. package/dist/esm/{associated.controller-103e6fb9.js.map → associated.controller-d463ef08.js.map} +1 -1
  345. package/dist/esm/{color-3932ac07.js → color-eb9db629.js} +1 -1
  346. package/dist/esm/{color-3932ac07.js.map → color-eb9db629.js.map} +1 -1
  347. package/dist/esm/{controller-cdba1088.js → controller-00d56583.js} +1 -1
  348. package/dist/esm/{controller-cdba1088.js.map → controller-00d56583.js.map} +1 -1
  349. package/dist/esm/controller-5838290e.js +4 -0
  350. package/dist/esm/controller-5838290e.js.map +1 -0
  351. package/dist/esm/controller-5ca8ac64.js +4 -0
  352. package/dist/esm/controller-5ca8ac64.js.map +1 -0
  353. package/dist/esm/controller-70bc75df.js +4 -0
  354. package/dist/esm/controller-70bc75df.js.map +1 -0
  355. package/dist/esm/{controller-75d286de.js → controller-8b71bf6d.js} +1 -1
  356. package/dist/esm/{controller-75d286de.js.map → controller-8b71bf6d.js.map} +1 -1
  357. package/dist/esm/{controller-icon-fb1feb61.js → controller-icon-f63e0f2d.js} +1 -1
  358. package/dist/esm/{controller-icon-fb1feb61.js.map → controller-icon-f63e0f2d.js.map} +1 -1
  359. package/dist/esm/custom-class-66c19712.js +4 -0
  360. package/dist/esm/custom-class-66c19712.js.map +1 -0
  361. package/dist/esm/details-synced-open-state-66c07ea5.js +4 -0
  362. package/dist/esm/details-synced-open-state-66c07ea5.js.map +1 -0
  363. package/dist/esm/dev.utils-8202a1bc.js +4 -0
  364. package/dist/esm/dev.utils-8202a1bc.js.map +1 -0
  365. package/dist/esm/{devtools-496ae358.js → devtools-4ca02a9a.js} +1 -1
  366. package/dist/esm/{devtools-496ae358.js.map → devtools-4ca02a9a.js.map} +1 -1
  367. package/dist/esm/{has-closer-fd2d8642.js → has-closer-2bb6b735.js} +1 -1
  368. package/dist/esm/{has-closer-fd2d8642.js.map → has-closer-2bb6b735.js.map} +1 -1
  369. package/dist/esm/{hide-label-2c0bf25c.js → hide-label-fbf92ea1.js} +1 -1
  370. package/dist/esm/{hide-label-2c0bf25c.js.map → hide-label-fbf92ea1.js.map} +1 -1
  371. package/dist/esm/i18n-99b63f3a.js +4 -0
  372. package/dist/esm/i18n-99b63f3a.js.map +1 -0
  373. package/dist/esm/{icons-ad8a28c6.js → icons-cfc259bf.js} +1 -1
  374. package/dist/esm/{icons-ad8a28c6.js.map → icons-cfc259bf.js.map} +1 -1
  375. package/dist/esm/{image-source-58a1cae6.js → image-source-e19536fa.js} +1 -1
  376. package/dist/esm/{image-source-58a1cae6.js.map → image-source-e19536fa.js.map} +1 -1
  377. package/dist/esm/index-0bc40dc4.js +5 -0
  378. package/dist/esm/index-0bc40dc4.js.map +1 -0
  379. package/dist/esm/{index-e51de689.js → index-9b519d08.js} +1 -1
  380. package/dist/esm/{index-e51de689.js.map → index-9b519d08.js.map} +1 -1
  381. package/dist/esm/{index-947d3173.js → index-a4b1e92f.js} +1 -1
  382. package/dist/esm/{index-947d3173.js.map → index-a4b1e92f.js.map} +1 -1
  383. package/dist/esm/index.js +1 -1
  384. package/dist/esm/index.js.map +1 -1
  385. package/dist/esm/kol-abbr.entry.js +1 -1
  386. package/dist/esm/kol-abbr.entry.js.map +1 -1
  387. package/dist/esm/kol-accordion.entry.js +1 -1
  388. package/dist/esm/kol-accordion.entry.js.map +1 -1
  389. package/dist/esm/kol-alert-wc_2.entry.js +4 -0
  390. package/dist/esm/kol-alert-wc_2.entry.js.map +1 -0
  391. package/dist/esm/kol-alert.entry.js +1 -1
  392. package/dist/esm/kol-alert.entry.js.map +1 -1
  393. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  394. package/dist/esm/kol-avatar-wc.entry.js.map +1 -1
  395. package/dist/esm/kol-avatar.entry.js +1 -1
  396. package/dist/esm/kol-avatar.entry.js.map +1 -1
  397. package/dist/esm/kol-badge.entry.js +1 -1
  398. package/dist/esm/kol-badge.entry.js.map +1 -1
  399. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  400. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  401. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  402. package/dist/esm/kol-button-group.entry.js +1 -1
  403. package/dist/esm/kol-button-group.entry.js.map +1 -1
  404. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  405. package/dist/esm/kol-button-link-text-switch.entry.js.map +1 -1
  406. package/dist/esm/kol-button-link.entry.js +1 -1
  407. package/dist/esm/kol-button-link.entry.js.map +1 -1
  408. package/dist/esm/kol-button-wc_2.entry.js +4 -0
  409. package/dist/esm/kol-button-wc_2.entry.js.map +1 -0
  410. package/dist/esm/kol-button.entry.js +1 -1
  411. package/dist/esm/kol-button.entry.js.map +1 -1
  412. package/dist/esm/kol-card.entry.js +1 -1
  413. package/dist/esm/kol-card.entry.js.map +1 -1
  414. package/dist/esm/kol-details.entry.js +1 -1
  415. package/dist/esm/kol-details.entry.js.map +1 -1
  416. package/dist/esm/kol-form.entry.js +1 -1
  417. package/dist/esm/kol-heading.entry.js +1 -1
  418. package/dist/esm/kol-heading.entry.js.map +1 -1
  419. package/dist/esm/kol-icon.entry.js +1 -1
  420. package/dist/esm/kol-icon.entry.js.map +1 -1
  421. package/dist/esm/kol-image.entry.js +1 -1
  422. package/dist/esm/kol-image.entry.js.map +1 -1
  423. package/dist/esm/kol-indented-text.entry.js +1 -1
  424. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  425. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  426. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  427. package/dist/esm/kol-input-color.entry.js +1 -1
  428. package/dist/esm/kol-input-color.entry.js.map +1 -1
  429. package/dist/esm/kol-input-date.entry.js +1 -1
  430. package/dist/esm/kol-input-date.entry.js.map +1 -1
  431. package/dist/esm/kol-input-email.entry.js +1 -1
  432. package/dist/esm/kol-input-email.entry.js.map +1 -1
  433. package/dist/esm/kol-input-file.entry.js +1 -1
  434. package/dist/esm/kol-input-file.entry.js.map +1 -1
  435. package/dist/esm/kol-input-number.entry.js +1 -1
  436. package/dist/esm/kol-input-number.entry.js.map +1 -1
  437. package/dist/esm/kol-input-password.entry.js +1 -1
  438. package/dist/esm/kol-input-password.entry.js.map +1 -1
  439. package/dist/esm/kol-input-radio.entry.js +1 -1
  440. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  441. package/dist/esm/kol-input-range.entry.js +1 -1
  442. package/dist/esm/kol-input-range.entry.js.map +1 -1
  443. package/dist/esm/kol-input-text.entry.js +1 -1
  444. package/dist/esm/kol-input-text.entry.js.map +1 -1
  445. package/dist/esm/kol-input.entry.js +1 -1
  446. package/dist/esm/kol-input.entry.js.map +1 -1
  447. package/dist/esm/kol-kolibri.entry.js +1 -1
  448. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  449. package/dist/esm/kol-link-button.entry.js +1 -1
  450. package/dist/esm/kol-link-button.entry.js.map +1 -1
  451. package/dist/esm/kol-link-group.entry.js +1 -1
  452. package/dist/esm/kol-link-group.entry.js.map +1 -1
  453. package/dist/esm/kol-link-wc.entry.js +1 -1
  454. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  455. package/dist/esm/kol-link.entry.js +1 -1
  456. package/dist/esm/kol-link.entry.js.map +1 -1
  457. package/dist/esm/kol-logo.entry.js +1 -1
  458. package/dist/esm/kol-logo.entry.js.map +1 -1
  459. package/dist/esm/kol-modal.entry.js +1 -1
  460. package/dist/esm/kol-modal.entry.js.map +1 -1
  461. package/dist/esm/kol-nav.entry.js +1 -1
  462. package/dist/esm/kol-nav.entry.js.map +1 -1
  463. package/dist/esm/kol-pagination.entry.js +1 -1
  464. package/dist/esm/kol-pagination.entry.js.map +1 -1
  465. package/dist/esm/kol-popover-wc.entry.js +4 -0
  466. package/dist/esm/kol-popover-wc.entry.js.map +1 -0
  467. package/dist/esm/kol-progress.entry.js +1 -1
  468. package/dist/esm/kol-progress.entry.js.map +1 -1
  469. package/dist/esm/kol-quote.entry.js +1 -1
  470. package/dist/esm/kol-quote.entry.js.map +1 -1
  471. package/dist/esm/kol-select.entry.js +1 -1
  472. package/dist/esm/kol-select.entry.js.map +1 -1
  473. package/dist/esm/kol-skip-nav.entry.js +1 -1
  474. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  475. package/dist/esm/kol-span-wc.entry.js +4 -0
  476. package/dist/esm/kol-span-wc.entry.js.map +1 -0
  477. package/dist/esm/kol-span.entry.js +1 -1
  478. package/dist/esm/kol-span.entry.js.map +1 -1
  479. package/dist/esm/kol-spin.entry.js +1 -1
  480. package/dist/esm/kol-spin.entry.js.map +1 -1
  481. package/dist/esm/kol-split-button.entry.js +1 -1
  482. package/dist/esm/kol-split-button.entry.js.map +1 -1
  483. package/dist/esm/kol-symbol.entry.js +1 -1
  484. package/dist/esm/kol-table.entry.js +1 -1
  485. package/dist/esm/kol-table.entry.js.map +1 -1
  486. package/dist/esm/kol-tabs.entry.js +1 -1
  487. package/dist/esm/kol-tabs.entry.js.map +1 -1
  488. package/dist/esm/kol-textarea.entry.js +1 -1
  489. package/dist/esm/kol-textarea.entry.js.map +1 -1
  490. package/dist/esm/kol-toast-container.entry.js +1 -1
  491. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  492. package/dist/esm/kol-version.entry.js +1 -1
  493. package/dist/esm/kol-version.entry.js.map +1 -1
  494. package/dist/esm/kolibri.js +1 -1
  495. package/dist/esm/kolibri.js.map +1 -1
  496. package/dist/esm/{label-0d258cd5.js → label-7afcc6a9.js} +1 -1
  497. package/dist/esm/{label-0d258cd5.js.map → label-7afcc6a9.js.map} +1 -1
  498. package/dist/esm/loader.js +1 -1
  499. package/dist/esm/{open-713ddcdc.js → open-9f31cf4e.js} +1 -1
  500. package/dist/esm/{open-713ddcdc.js.map → open-9f31cf4e.js.map} +1 -1
  501. package/dist/esm/prop.validators-3fb6bedf.js +4 -0
  502. package/dist/esm/prop.validators-3fb6bedf.js.map +1 -0
  503. package/dist/esm/{rows-d5112a2e.js → rows-051ae081.js} +1 -1
  504. package/dist/esm/{rows-d5112a2e.js.map → rows-051ae081.js.map} +1 -1
  505. package/dist/esm/{show-9951ecef.js → show-cc5fafc8.js} +1 -1
  506. package/dist/esm/{show-9951ecef.js.map → show-cc5fafc8.js.map} +1 -1
  507. package/dist/esm/{suggestions-50a767be.js → suggestions-50aff467.js} +1 -1
  508. package/dist/esm/{suggestions-50a767be.js.map → suggestions-50aff467.js.map} +1 -1
  509. package/dist/esm/{tab-index-5e7494f0.js → tab-index-95df106a.js} +1 -1
  510. package/dist/esm/{tab-index-5e7494f0.js.map → tab-index-95df106a.js.map} +1 -1
  511. package/dist/esm/{toaster-1ee75e55.js → toaster-ce50f062.js} +1 -1
  512. package/dist/esm/{toaster-1ee75e55.js.map → toaster-ce50f062.js.map} +1 -1
  513. package/dist/esm/{toaster-2dda6584.js → toaster-eb99e2fa.js} +1 -1
  514. package/dist/esm/toaster-eb99e2fa.js.map +1 -0
  515. package/dist/esm/{tooltip-align-fe8fbb60.js → tooltip-align-36725992.js} +1 -1
  516. package/dist/esm/{tooltip-align-fe8fbb60.js.map → tooltip-align-36725992.js.map} +1 -1
  517. package/dist/esm/validation-5f69c40a.js +4 -0
  518. package/dist/esm/validation-5f69c40a.js.map +1 -0
  519. package/dist/esm/validation-7b943391.js +4 -0
  520. package/dist/esm/{validation-61e035d7.js.map → validation-7b943391.js.map} +1 -1
  521. package/dist/kolibri/InternalUnderlinedAccessKey-8b996006.js +4 -0
  522. package/dist/kolibri/InternalUnderlinedAccessKey-8b996006.js.map +1 -0
  523. package/dist/kolibri/{a11y.tipps-583a2096.js → a11y.tipps-68791110.js} +1 -1
  524. package/dist/kolibri/access-key-c2c8b712.js +4 -0
  525. package/dist/kolibri/access-key-c2c8b712.js.map +1 -0
  526. package/dist/kolibri/align-floating-elements-ebf0712d.js +4 -0
  527. package/dist/{components/align.js.map → kolibri/align-floating-elements-ebf0712d.js.map} +1 -1
  528. package/dist/kolibri/alignment-cb8fa342.js +4 -0
  529. package/dist/kolibri/alignment-cb8fa342.js.map +1 -0
  530. package/dist/kolibri/alternative-button-link-role-641ea928.js +4 -0
  531. package/dist/kolibri/app-globals-7879f3fb.js +4 -0
  532. package/dist/kolibri/app-globals-7879f3fb.js.map +1 -0
  533. package/dist/kolibri/ariaCurrentService-2ef83ca8.js +4 -0
  534. package/dist/kolibri/ariaCurrentService-2ef83ca8.js.map +1 -0
  535. package/dist/kolibri/assets/simulations/table-simulation.js +1 -1
  536. package/dist/kolibri/{associated.controller-103e6fb9.js → associated.controller-d463ef08.js} +1 -1
  537. package/dist/kolibri/{color-3932ac07.js → color-eb9db629.js} +1 -1
  538. package/dist/kolibri/controller-00d56583.js +4 -0
  539. package/dist/kolibri/{controller-cdba1088.js.map → controller-00d56583.js.map} +1 -1
  540. package/dist/kolibri/controller-5838290e.js +4 -0
  541. package/dist/kolibri/controller-5838290e.js.map +1 -0
  542. package/dist/kolibri/controller-5ca8ac64.js +4 -0
  543. package/dist/kolibri/controller-5ca8ac64.js.map +1 -0
  544. package/dist/kolibri/controller-70bc75df.js +4 -0
  545. package/dist/kolibri/controller-70bc75df.js.map +1 -0
  546. package/dist/kolibri/{controller-75d286de.js → controller-8b71bf6d.js} +1 -1
  547. package/dist/kolibri/{controller-icon-fb1feb61.js → controller-icon-f63e0f2d.js} +1 -1
  548. package/dist/kolibri/custom-class-66c19712.js +4 -0
  549. package/dist/kolibri/custom-class-66c19712.js.map +1 -0
  550. package/dist/kolibri/details-synced-open-state-66c07ea5.js +4 -0
  551. package/dist/kolibri/details-synced-open-state-66c07ea5.js.map +1 -0
  552. package/dist/kolibri/dev.utils-8202a1bc.js +4 -0
  553. package/dist/kolibri/dev.utils-8202a1bc.js.map +1 -0
  554. package/dist/kolibri/devtools-4ca02a9a.js +4 -0
  555. package/dist/kolibri/{devtools-496ae358.js.map → devtools-4ca02a9a.js.map} +1 -1
  556. package/dist/kolibri/has-closer-2bb6b735.js +4 -0
  557. package/dist/kolibri/{has-closer-fd2d8642.js.map → has-closer-2bb6b735.js.map} +1 -1
  558. package/dist/kolibri/hide-label-fbf92ea1.js +4 -0
  559. package/dist/kolibri/i18n-99b63f3a.js +4 -0
  560. package/dist/kolibri/i18n-99b63f3a.js.map +1 -0
  561. package/dist/kolibri/icons-cfc259bf.js +4 -0
  562. package/dist/kolibri/{icons-ad8a28c6.js.map → icons-cfc259bf.js.map} +1 -1
  563. package/dist/kolibri/image-source-e19536fa.js +4 -0
  564. package/dist/kolibri/index-0bc40dc4.js +5 -0
  565. package/dist/kolibri/index-0bc40dc4.js.map +1 -0
  566. package/dist/kolibri/{index-e51de689.js → index-9b519d08.js} +1 -1
  567. package/dist/kolibri/{index-947d3173.js → index-a4b1e92f.js} +1 -1
  568. package/dist/kolibri/index-a4b1e92f.js.map +1 -0
  569. package/dist/kolibri/index.esm.js +1 -1
  570. package/dist/kolibri/kol-abbr.entry.js +1 -1
  571. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  572. package/dist/kolibri/kol-accordion.entry.js +1 -1
  573. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  574. package/dist/kolibri/kol-alert-wc_2.entry.js +4 -0
  575. package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -0
  576. package/dist/kolibri/kol-alert.entry.js +1 -1
  577. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  578. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  579. package/dist/kolibri/kol-avatar-wc.entry.js.map +1 -1
  580. package/dist/kolibri/kol-avatar.entry.js +1 -1
  581. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  582. package/dist/kolibri/kol-badge.entry.js +1 -1
  583. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  584. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  585. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  586. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  587. package/dist/kolibri/kol-button-group.entry.js +1 -1
  588. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  589. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  590. package/dist/kolibri/kol-button-link-text-switch.entry.js.map +1 -1
  591. package/dist/kolibri/kol-button-link.entry.js +1 -1
  592. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  593. package/dist/kolibri/kol-button-wc_2.entry.js +4 -0
  594. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -0
  595. package/dist/kolibri/kol-button.entry.js +1 -1
  596. package/dist/kolibri/kol-button.entry.js.map +1 -1
  597. package/dist/kolibri/kol-card.entry.js +1 -1
  598. package/dist/kolibri/kol-card.entry.js.map +1 -1
  599. package/dist/kolibri/kol-details.entry.js +1 -1
  600. package/dist/kolibri/kol-details.entry.js.map +1 -1
  601. package/dist/kolibri/kol-form.entry.js +1 -1
  602. package/dist/kolibri/kol-heading.entry.js +1 -1
  603. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  604. package/dist/kolibri/kol-icon.entry.js +1 -1
  605. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  606. package/dist/kolibri/kol-image.entry.js +1 -1
  607. package/dist/kolibri/kol-image.entry.js.map +1 -1
  608. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  609. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  610. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  611. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  612. package/dist/kolibri/kol-input-color.entry.js +1 -1
  613. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  614. package/dist/kolibri/kol-input-date.entry.js +1 -1
  615. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  616. package/dist/kolibri/kol-input-email.entry.js +1 -1
  617. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  618. package/dist/kolibri/kol-input-file.entry.js +1 -1
  619. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  620. package/dist/kolibri/kol-input-number.entry.js +1 -1
  621. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  622. package/dist/kolibri/kol-input-password.entry.js +1 -1
  623. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  624. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  625. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  626. package/dist/kolibri/kol-input-range.entry.js +1 -1
  627. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  628. package/dist/kolibri/kol-input-text.entry.js +1 -1
  629. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  630. package/dist/kolibri/kol-input.entry.js +1 -1
  631. package/dist/kolibri/kol-input.entry.js.map +1 -1
  632. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  633. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  634. package/dist/kolibri/kol-link-button.entry.js +1 -1
  635. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  636. package/dist/kolibri/kol-link-group.entry.js +1 -1
  637. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  638. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  639. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  640. package/dist/kolibri/kol-link.entry.js +1 -1
  641. package/dist/kolibri/kol-link.entry.js.map +1 -1
  642. package/dist/kolibri/kol-logo.entry.js +1 -1
  643. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  644. package/dist/kolibri/kol-modal.entry.js +1 -1
  645. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  646. package/dist/kolibri/kol-nav.entry.js +1 -1
  647. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  648. package/dist/kolibri/kol-pagination.entry.js +1 -1
  649. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  650. package/dist/kolibri/kol-popover-wc.entry.js +4 -0
  651. package/dist/kolibri/kol-popover-wc.entry.js.map +1 -0
  652. package/dist/kolibri/kol-progress.entry.js +1 -1
  653. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  654. package/dist/kolibri/kol-quote.entry.js +1 -1
  655. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  656. package/dist/kolibri/kol-select.entry.js +1 -1
  657. package/dist/kolibri/kol-select.entry.js.map +1 -1
  658. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  659. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  660. package/dist/kolibri/kol-span-wc.entry.js +4 -0
  661. package/dist/kolibri/kol-span-wc.entry.js.map +1 -0
  662. package/dist/kolibri/kol-span.entry.js +1 -1
  663. package/dist/kolibri/kol-span.entry.js.map +1 -1
  664. package/dist/kolibri/kol-spin.entry.js +1 -1
  665. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  666. package/dist/kolibri/kol-split-button.entry.js +1 -1
  667. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  668. package/dist/kolibri/kol-symbol.entry.js +1 -1
  669. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  670. package/dist/kolibri/kol-table.entry.js +1 -1
  671. package/dist/kolibri/kol-table.entry.js.map +1 -1
  672. package/dist/kolibri/kol-tabs.entry.js +1 -1
  673. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  674. package/dist/kolibri/kol-textarea.entry.js +1 -1
  675. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  676. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  677. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  678. package/dist/kolibri/kol-version.entry.js +1 -1
  679. package/dist/kolibri/kol-version.entry.js.map +1 -1
  680. package/dist/kolibri/kolibri.esm.js +1 -1
  681. package/dist/kolibri/kolibri.esm.js.map +1 -1
  682. package/dist/kolibri/label-7afcc6a9.js +4 -0
  683. package/dist/kolibri/open-9f31cf4e.js +4 -0
  684. package/dist/kolibri/prop.validators-3fb6bedf.js +4 -0
  685. package/dist/kolibri/prop.validators-3fb6bedf.js.map +1 -0
  686. package/dist/kolibri/rows-051ae081.js +4 -0
  687. package/dist/kolibri/show-cc5fafc8.js +4 -0
  688. package/dist/kolibri/{suggestions-50a767be.js → suggestions-50aff467.js} +1 -1
  689. package/dist/kolibri/tab-index-95df106a.js +4 -0
  690. package/dist/kolibri/{tab-index-5e7494f0.js.map → tab-index-95df106a.js.map} +1 -1
  691. package/dist/kolibri/toaster-ce50f062.js +4 -0
  692. package/dist/kolibri/toaster-ce50f062.js.map +1 -0
  693. package/dist/kolibri/toaster-eb99e2fa.js +4 -0
  694. package/dist/kolibri/toaster-eb99e2fa.js.map +1 -0
  695. package/dist/kolibri/tooltip-align-36725992.js +4 -0
  696. package/dist/kolibri/validation-5f69c40a.js +4 -0
  697. package/dist/kolibri/validation-5f69c40a.js.map +1 -0
  698. package/dist/kolibri/validation-7b943391.js +4 -0
  699. package/dist/types/components/accordion/component.d.ts +2 -0
  700. package/dist/types/components/alert/types.d.ts +4 -2
  701. package/dist/types/components/button/component.d.ts +3 -0
  702. package/dist/types/components/button/shadow.d.ts +3 -1
  703. package/dist/types/components/button/types.d.ts +2 -1
  704. package/dist/types/components/button-link/component.d.ts +3 -1
  705. package/dist/types/components/details/DetailsAnimationController.d.ts +1 -1
  706. package/dist/types/components/details/component.d.ts +1 -0
  707. package/dist/types/components/heading/component.d.ts +3 -0
  708. package/dist/types/components/heading/shadow.d.ts +2 -0
  709. package/dist/types/components/heading/test/html.mock.d.ts +2 -2
  710. package/dist/types/components/heading/types.d.ts +3 -2
  711. package/dist/types/components/heading/validation.d.ts +2 -1
  712. package/dist/types/components/input/component.d.ts +2 -0
  713. package/dist/types/components/input/types.d.ts +2 -1
  714. package/dist/types/components/input-checkbox/component.d.ts +2 -1
  715. package/dist/types/components/input-checkbox/types.d.ts +2 -1
  716. package/dist/types/components/input-color/component.d.ts +2 -1
  717. package/dist/types/components/input-date/component.d.ts +2 -1
  718. package/dist/types/components/input-date/controller.d.ts +2 -2
  719. package/dist/types/components/input-email/component.d.ts +2 -1
  720. package/dist/types/components/input-file/component.d.ts +2 -1
  721. package/dist/types/components/input-number/component.d.ts +2 -1
  722. package/dist/types/components/input-password/component.d.ts +2 -1
  723. package/dist/types/components/input-radio/component.d.ts +3 -2
  724. package/dist/types/components/input-range/component.d.ts +3 -1
  725. package/dist/types/components/input-text/component.d.ts +2 -1
  726. package/dist/types/components/link/ariaCurrentService.d.ts +5 -0
  727. package/dist/types/components/link/component.d.ts +7 -5
  728. package/dist/types/components/link/shadow.d.ts +4 -3
  729. package/dist/types/components/link/types.d.ts +7 -4
  730. package/dist/types/components/link-button/component.d.ts +4 -3
  731. package/dist/types/components/nav/component.d.ts +2 -3
  732. package/dist/types/components/nav/types.d.ts +3 -5
  733. package/dist/types/components/pagination/component.d.ts +0 -3
  734. package/dist/types/components/pagination/types.d.ts +3 -4
  735. package/dist/types/components/popover/component.d.ts +0 -2
  736. package/dist/types/components/quote/types.d.ts +2 -1
  737. package/dist/types/components/select/component.d.ts +2 -1
  738. package/dist/types/components/span/InternalUnderlinedAccessKey.d.ts +6 -0
  739. package/dist/types/components/span/component.d.ts +3 -0
  740. package/dist/types/components/span/shadow.d.ts +2 -0
  741. package/dist/types/components/span/test/html.mock.d.ts +1 -0
  742. package/dist/types/components/span/types.d.ts +3 -2
  743. package/dist/types/components/table/component.d.ts +4 -0
  744. package/dist/types/components/table/types.d.ts +4 -0
  745. package/dist/types/components/textarea/component.d.ts +2 -1
  746. package/dist/types/components/textarea/types.d.ts +2 -1
  747. package/dist/types/components/toaster/InternalToast.d.ts +8 -0
  748. package/dist/types/components/{toast-container → toaster}/component.d.ts +2 -2
  749. package/dist/types/components/{toast → toaster}/toaster.d.ts +3 -2
  750. package/dist/types/components/{toast-container → toaster}/types.d.ts +6 -3
  751. package/dist/types/components/tooltip/component.d.ts +3 -0
  752. package/dist/types/components/tooltip/types.d.ts +4 -3
  753. package/dist/types/components.d.ts +193 -125
  754. package/dist/types/core/i18n.d.ts +2 -1
  755. package/dist/types/i18n.d.ts +1 -1
  756. package/dist/types/index.d.ts +1 -1
  757. package/dist/types/locales/de.d.ts +8 -1
  758. package/dist/types/locales/en.d.ts +7 -0
  759. package/dist/types/stencil-public-runtime.d.ts +2 -0
  760. package/dist/types/types/heading-level.d.ts +2 -1
  761. package/dist/types/types/input/control/number.d.ts +2 -2
  762. package/dist/types/types/input/control/text.d.ts +2 -1
  763. package/dist/types/types/input/types.d.ts +2 -1
  764. package/dist/types/types/orientation.d.ts +2 -1
  765. package/dist/types/types/props/access-key.d.ts +6 -0
  766. package/dist/types/types/props/align.d.ts +5 -2
  767. package/dist/types/types/props/aria-current-value.d.ts +8 -0
  768. package/dist/types/types/props/button-type.d.ts +3 -1
  769. package/dist/types/types/props/button-variant.d.ts +3 -1
  770. package/dist/types/types/props/has-compact-button.d.ts +7 -0
  771. package/dist/types/types/props/heading-variant.d.ts +8 -0
  772. package/dist/types/types/props/variant/spin.d.ts +3 -1
  773. package/dist/types/utils/align-floating-elements.d.ts +9 -0
  774. package/dist/types/utils/prop.validators.d.ts +2 -8
  775. package/dist/types/utils/validators/loading.d.ts +3 -1
  776. package/doc/badge.md +6 -6
  777. package/doc/button-link.md +14 -0
  778. package/doc/button.md +17 -3
  779. package/doc/heading.md +6 -5
  780. package/doc/input-checkbox.md +35 -22
  781. package/doc/input-color.md +34 -21
  782. package/doc/input-date.md +40 -27
  783. package/doc/input-email.md +42 -29
  784. package/doc/input-file.md +35 -22
  785. package/doc/input-number.md +40 -27
  786. package/doc/input-password.md +39 -26
  787. package/doc/input-radio.md +33 -20
  788. package/doc/input-range.md +36 -23
  789. package/doc/input-text.md +41 -28
  790. package/doc/link-button.md +17 -16
  791. package/doc/link.md +41 -29
  792. package/doc/nav.md +11 -8
  793. package/doc/pagination.md +2 -6
  794. package/doc/select.md +35 -22
  795. package/doc/span.md +1 -0
  796. package/doc/spin.md +4 -2
  797. package/doc/table.md +10 -10
  798. package/doc/textarea.md +38 -25
  799. package/doc/toaster.md +120 -0
  800. package/doc/tooltip.md +6 -5
  801. package/package.json +1 -1
  802. package/vscode-custom-data.json +357 -148
  803. package/dist/cjs/align-5cb0bd50.js +0 -4
  804. package/dist/cjs/align-5cb0bd50.js.map +0 -1
  805. package/dist/cjs/alignment-160829a3.js +0 -4
  806. package/dist/cjs/alignment-160829a3.js.map +0 -1
  807. package/dist/cjs/alternative-button-link-role-9e647514.js +0 -4
  808. package/dist/cjs/app-globals-f651a39e.js +0 -4
  809. package/dist/cjs/app-globals-f651a39e.js.map +0 -1
  810. package/dist/cjs/controller-2bc3135f.js +0 -4
  811. package/dist/cjs/controller-2bc3135f.js.map +0 -1
  812. package/dist/cjs/controller-98eb942a.js +0 -4
  813. package/dist/cjs/controller-98eb942a.js.map +0 -1
  814. package/dist/cjs/controller-e89fd046.js +0 -4
  815. package/dist/cjs/controller-e89fd046.js.map +0 -1
  816. package/dist/cjs/custom-class-c6c03255.js +0 -4
  817. package/dist/cjs/custom-class-c6c03255.js.map +0 -1
  818. package/dist/cjs/details-synced-open-state-f06dc47c.js +0 -4
  819. package/dist/cjs/details-synced-open-state-f06dc47c.js.map +0 -1
  820. package/dist/cjs/dev.utils-8c7f47e6.js +0 -4
  821. package/dist/cjs/dev.utils-8c7f47e6.js.map +0 -1
  822. package/dist/cjs/floating-ui.dom.esm-c21c7751.js +0 -4
  823. package/dist/cjs/floating-ui.dom.esm-c21c7751.js.map +0 -1
  824. package/dist/cjs/has-closer-941dcb50.js +0 -4
  825. package/dist/cjs/hide-label-e6f15383.js +0 -4
  826. package/dist/cjs/i18n-6dea3266.js +0 -4
  827. package/dist/cjs/i18n-6dea3266.js.map +0 -1
  828. package/dist/cjs/image-source-be51f603.js +0 -4
  829. package/dist/cjs/index-e9e81c6a.js +0 -5
  830. package/dist/cjs/index-e9e81c6a.js.map +0 -1
  831. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +0 -4
  832. package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +0 -1
  833. package/dist/cjs/kol-popover.cjs.entry.js +0 -4
  834. package/dist/cjs/kol-popover.cjs.entry.js.map +0 -1
  835. package/dist/cjs/kol-span-wc_2.cjs.entry.js +0 -4
  836. package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +0 -1
  837. package/dist/cjs/kol-toast.cjs.entry.js +0 -4
  838. package/dist/cjs/kol-toast.cjs.entry.js.map +0 -1
  839. package/dist/cjs/open-fb457a4f.js +0 -4
  840. package/dist/cjs/prop.validators-d9e8f5a9.js +0 -4
  841. package/dist/cjs/prop.validators-d9e8f5a9.js.map +0 -1
  842. package/dist/cjs/rows-9e57680f.js +0 -4
  843. package/dist/cjs/show-9060efee.js +0 -4
  844. package/dist/cjs/toaster-82cf12c5.js.map +0 -1
  845. package/dist/cjs/toaster-d370fe6a.js.map +0 -1
  846. package/dist/cjs/validation-8f74bfb8.js +0 -4
  847. package/dist/cjs/validation-aa68e6ae.js +0 -4
  848. package/dist/cjs/validation-aa68e6ae.js.map +0 -1
  849. package/dist/components/align.js +0 -4
  850. package/dist/components/component16.js +0 -4
  851. package/dist/components/component16.js.map +0 -1
  852. package/dist/components/kol-popover.js +0 -4
  853. package/dist/components/kol-popover.js.map +0 -1
  854. package/dist/components/kol-toast.d.ts +0 -11
  855. package/dist/components/kol-toast.js +0 -4
  856. package/dist/components/kol-toast.js.map +0 -1
  857. package/dist/esm/align-0c96facf.js +0 -4
  858. package/dist/esm/align-0c96facf.js.map +0 -1
  859. package/dist/esm/alignment-84fc6207.js +0 -4
  860. package/dist/esm/alignment-84fc6207.js.map +0 -1
  861. package/dist/esm/alternative-button-link-role-1b39949c.js +0 -4
  862. package/dist/esm/app-globals-fa8bbebf.js +0 -4
  863. package/dist/esm/app-globals-fa8bbebf.js.map +0 -1
  864. package/dist/esm/controller-a13b8955.js +0 -4
  865. package/dist/esm/controller-a13b8955.js.map +0 -1
  866. package/dist/esm/controller-b19ee0de.js +0 -4
  867. package/dist/esm/controller-b19ee0de.js.map +0 -1
  868. package/dist/esm/controller-eb162f21.js +0 -4
  869. package/dist/esm/controller-eb162f21.js.map +0 -1
  870. package/dist/esm/custom-class-44d7cc63.js +0 -4
  871. package/dist/esm/custom-class-44d7cc63.js.map +0 -1
  872. package/dist/esm/details-synced-open-state-8c4176c9.js +0 -4
  873. package/dist/esm/details-synced-open-state-8c4176c9.js.map +0 -1
  874. package/dist/esm/dev.utils-2a853234.js +0 -4
  875. package/dist/esm/dev.utils-2a853234.js.map +0 -1
  876. package/dist/esm/floating-ui.dom.esm-e435ab9f.js +0 -4
  877. package/dist/esm/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  878. package/dist/esm/i18n-d0bb1d99.js +0 -4
  879. package/dist/esm/i18n-d0bb1d99.js.map +0 -1
  880. package/dist/esm/index-d0c806ea.js +0 -5
  881. package/dist/esm/index-d0c806ea.js.map +0 -1
  882. package/dist/esm/kol-alert-wc_3.entry.js +0 -4
  883. package/dist/esm/kol-alert-wc_3.entry.js.map +0 -1
  884. package/dist/esm/kol-popover.entry.js +0 -4
  885. package/dist/esm/kol-popover.entry.js.map +0 -1
  886. package/dist/esm/kol-span-wc_2.entry.js +0 -4
  887. package/dist/esm/kol-span-wc_2.entry.js.map +0 -1
  888. package/dist/esm/kol-toast.entry.js +0 -4
  889. package/dist/esm/kol-toast.entry.js.map +0 -1
  890. package/dist/esm/prop.validators-125a3282.js +0 -4
  891. package/dist/esm/prop.validators-125a3282.js.map +0 -1
  892. package/dist/esm/toaster-2dda6584.js.map +0 -1
  893. package/dist/esm/validation-33f3aa23.js +0 -4
  894. package/dist/esm/validation-33f3aa23.js.map +0 -1
  895. package/dist/esm/validation-61e035d7.js +0 -4
  896. package/dist/kolibri/align-0c96facf.js +0 -4
  897. package/dist/kolibri/align-0c96facf.js.map +0 -1
  898. package/dist/kolibri/alignment-84fc6207.js +0 -4
  899. package/dist/kolibri/alignment-84fc6207.js.map +0 -1
  900. package/dist/kolibri/alternative-button-link-role-1b39949c.js +0 -4
  901. package/dist/kolibri/app-globals-fa8bbebf.js +0 -4
  902. package/dist/kolibri/app-globals-fa8bbebf.js.map +0 -1
  903. package/dist/kolibri/controller-a13b8955.js +0 -4
  904. package/dist/kolibri/controller-a13b8955.js.map +0 -1
  905. package/dist/kolibri/controller-b19ee0de.js +0 -4
  906. package/dist/kolibri/controller-b19ee0de.js.map +0 -1
  907. package/dist/kolibri/controller-cdba1088.js +0 -4
  908. package/dist/kolibri/controller-eb162f21.js +0 -4
  909. package/dist/kolibri/controller-eb162f21.js.map +0 -1
  910. package/dist/kolibri/custom-class-44d7cc63.js +0 -4
  911. package/dist/kolibri/custom-class-44d7cc63.js.map +0 -1
  912. package/dist/kolibri/details-synced-open-state-8c4176c9.js +0 -4
  913. package/dist/kolibri/details-synced-open-state-8c4176c9.js.map +0 -1
  914. package/dist/kolibri/dev.utils-2a853234.js +0 -4
  915. package/dist/kolibri/dev.utils-2a853234.js.map +0 -1
  916. package/dist/kolibri/devtools-496ae358.js +0 -4
  917. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js +0 -4
  918. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js.map +0 -1
  919. package/dist/kolibri/has-closer-fd2d8642.js +0 -4
  920. package/dist/kolibri/hide-label-2c0bf25c.js +0 -4
  921. package/dist/kolibri/i18n-d0bb1d99.js +0 -4
  922. package/dist/kolibri/i18n-d0bb1d99.js.map +0 -1
  923. package/dist/kolibri/icons-ad8a28c6.js +0 -4
  924. package/dist/kolibri/image-source-58a1cae6.js +0 -4
  925. package/dist/kolibri/index-947d3173.js.map +0 -1
  926. package/dist/kolibri/index-d0c806ea.js +0 -5
  927. package/dist/kolibri/index-d0c806ea.js.map +0 -1
  928. package/dist/kolibri/kol-alert-wc_3.entry.js +0 -4
  929. package/dist/kolibri/kol-alert-wc_3.entry.js.map +0 -1
  930. package/dist/kolibri/kol-popover.entry.js +0 -4
  931. package/dist/kolibri/kol-popover.entry.js.map +0 -1
  932. package/dist/kolibri/kol-span-wc_2.entry.js +0 -4
  933. package/dist/kolibri/kol-span-wc_2.entry.js.map +0 -1
  934. package/dist/kolibri/kol-toast.entry.js +0 -4
  935. package/dist/kolibri/kol-toast.entry.js.map +0 -1
  936. package/dist/kolibri/label-0d258cd5.js +0 -4
  937. package/dist/kolibri/open-713ddcdc.js +0 -4
  938. package/dist/kolibri/prop.validators-125a3282.js +0 -4
  939. package/dist/kolibri/prop.validators-125a3282.js.map +0 -1
  940. package/dist/kolibri/rows-d5112a2e.js +0 -4
  941. package/dist/kolibri/show-9951ecef.js +0 -4
  942. package/dist/kolibri/tab-index-5e7494f0.js +0 -4
  943. package/dist/kolibri/toaster-1ee75e55.js +0 -4
  944. package/dist/kolibri/toaster-1ee75e55.js.map +0 -1
  945. package/dist/kolibri/toaster-2dda6584.js +0 -4
  946. package/dist/kolibri/toaster-2dda6584.js.map +0 -1
  947. package/dist/kolibri/tooltip-align-fe8fbb60.js +0 -4
  948. package/dist/kolibri/validation-33f3aa23.js +0 -4
  949. package/dist/kolibri/validation-33f3aa23.js.map +0 -1
  950. package/dist/kolibri/validation-61e035d7.js +0 -4
  951. package/dist/types/components/toast/component.d.ts +0 -21
  952. package/dist/types/components/toast/test/html.mock.d.ts +0 -2
  953. package/dist/types/components/toast/types.d.ts +0 -18
  954. package/dist/types/types/props/aria-current.d.ts +0 -10
  955. package/dist/types/types/toast.d.ts +0 -4
  956. package/doc/toast-container.md +0 -46
  957. package/doc/toast.md +0 -94
  958. /package/dist/kolibri/{a11y.tipps-583a2096.js.map → a11y.tipps-68791110.js.map} +0 -0
  959. /package/dist/kolibri/{alternative-button-link-role-1b39949c.js.map → alternative-button-link-role-641ea928.js.map} +0 -0
  960. /package/dist/kolibri/{associated.controller-103e6fb9.js.map → associated.controller-d463ef08.js.map} +0 -0
  961. /package/dist/kolibri/{color-3932ac07.js.map → color-eb9db629.js.map} +0 -0
  962. /package/dist/kolibri/{controller-75d286de.js.map → controller-8b71bf6d.js.map} +0 -0
  963. /package/dist/kolibri/{controller-icon-fb1feb61.js.map → controller-icon-f63e0f2d.js.map} +0 -0
  964. /package/dist/kolibri/{hide-label-2c0bf25c.js.map → hide-label-fbf92ea1.js.map} +0 -0
  965. /package/dist/kolibri/{image-source-58a1cae6.js.map → image-source-e19536fa.js.map} +0 -0
  966. /package/dist/kolibri/{index-e51de689.js.map → index-9b519d08.js.map} +0 -0
  967. /package/dist/kolibri/{label-0d258cd5.js.map → label-7afcc6a9.js.map} +0 -0
  968. /package/dist/kolibri/{open-713ddcdc.js.map → open-9f31cf4e.js.map} +0 -0
  969. /package/dist/kolibri/{rows-d5112a2e.js.map → rows-051ae081.js.map} +0 -0
  970. /package/dist/kolibri/{show-9951ecef.js.map → show-cc5fafc8.js.map} +0 -0
  971. /package/dist/kolibri/{suggestions-50a767be.js.map → suggestions-50aff467.js.map} +0 -0
  972. /package/dist/kolibri/{tooltip-align-fe8fbb60.js.map → tooltip-align-36725992.js.map} +0 -0
  973. /package/dist/kolibri/{validation-61e035d7.js.map → validation-7b943391.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","ListItem","props","list","links","map","link","index","push","h","key","class","ident","orientation","style","listStyleType","Object","assign","KolLinkGroup","this","isUl","_label","_listStyleType","_links","_orientation","render","state","vertical","horizontal","validateLabel","value","_oldValue","initial","removeNavLabel","addNavLabel","validateListStyleType","watchValidator","Set","validateLinks","watchNavLinks","validateOrientation","defaultValue","componentWillLoad","undefined","disconnectedCallback"],"sources":["src/components/link-group/style.css?tag=kol-link-group&mode=default&encapsulation=shadow","src/components/link-group/component.tsx"],"sourcesContent":["@import url(../style.css);\nul {\n\tlist-style: none;\n\tmargin: 0;\n\tpadding: 0;\n}\nnav.horizontal ul {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n}\nnav.horizontal li {\n\tmargin-left: 1.25rem;\n\tmargin-right: 0.25rem;\n}\nnav.horizontal li:first-child {\n\tmargin-left: 0;\n}\nnav.horizontal li:last-child {\n\tmargin-right: 0;\n}\nnav.vertical li {\n\tmargin-left: 1.75rem;\n\tmargin-right: 0.5rem;\n}\nli.list-none {\n\tlist-style-type: none !important;\n\tmargin-left: 0;\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { Orientation } from '../../types/orientation';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchValidator } from '../../utils/prop.validators';\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { LinkProps } from '../link/types';\nimport { watchNavLinks } from '../nav/validation';\nimport { API, ListStyleType, States } from './types';\n\nconst ListItem = (props: { links: LinkProps[]; orientation: Orientation; listStyleType: ListStyleType }): JSX.Element => {\n\tconst list: JSX.Element[] = [];\n\tprops.links.map((link, index: number) => {\n\t\tlist.push(\n\t\t\t(\n\t\t\t\t<li\n\t\t\t\t\tkey={index}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tident: index > 0 && props.orientation === 'vertical',\n\t\t\t\t\t\t'list-none': index === 0 && props.orientation === 'horizontal',\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tlistStyleType: props.listStyleType,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-link {...link}></kol-link>\n\t\t\t\t</li>\n\t\t\t) as JSX.Element\n\t\t);\n\t});\n\treturn list;\n};\n\n@Component({\n\ttag: 'kol-link-group',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLinkGroup implements API {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav\n\t\t\t\taria-label={this.state._label}\n\t\t\t\tclass={{\n\t\t\t\t\tvertical: this.state._orientation === 'vertical',\n\t\t\t\t\thorizontal: this.state._orientation === 'horizontal',\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.isUl === false ? (\n\t\t\t\t\t<ol>\n\t\t\t\t\t\t<ListItem links={this.state._links} orientation={this.state._orientation} listStyleType={this.state._listStyleType} />\n\t\t\t\t\t</ol>\n\t\t\t\t) : (\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t<ListItem links={this.state._links} orientation={this.state._orientation} listStyleType={this.state._listStyleType} />\n\t\t\t\t\t</ul>\n\t\t\t\t)}\n\t\t\t</nav>\n\t\t);\n\t}\n\n\tprivate isUl = true;\n\n\t/**\n\t * Gibt den List-Style-Typen für ungeordnete Listen aus. Wird bei horizontalen LinkGroups als Trenner verwendet\n\t */\n\t@Prop() public _listStyleType?: ListStyleType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines the list of links to render.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t/**\n\t * Defines whether the orientation of the component is horizontal or vertical.\n\t */\n\t@Prop() public _orientation?: Orientation = 'vertical';\n\n\t@State() public state: States = {\n\t\t_label: '…', // ⚠ required\n\t\t_listStyleType: 'disc',\n\t\t_links: [],\n\t\t_orientation: 'vertical',\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType, _oldValue?: LabelPropType, initial = false): void {\n\t\tif (!initial) {\n\t\t\tremoveNavLabel(this.state._label); // remove the current\n\t\t}\n\t\tvalidateLabel(this, value);\n\t\taddNavLabel(this.state._label); // add the state instead of prop, because the prop could be invalid and not set as new label\n\t}\n\n\t@Watch('_listStyleType')\n\tpublic validateListStyleType(value?: ListStyleType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_listStyleType',\n\t\t\t(value) => {\n\t\t\t\tswitch (value) {\n\t\t\t\t\tcase 'disc':\n\t\t\t\t\tcase 'circle':\n\t\t\t\t\tcase 'square':\n\t\t\t\t\tcase 'none':\n\t\t\t\t\t\tthis.isUl = true;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\tcase 'decimal':\n\t\t\t\t\tcase 'decimal-leading-zero':\n\t\t\t\t\tcase 'lower-alpha':\n\t\t\t\t\tcase 'lower-latin':\n\t\t\t\t\tcase 'lower-greek':\n\t\t\t\t\tcase 'lower-roman':\n\t\t\t\t\tcase 'upper-alpha':\n\t\t\t\t\tcase 'upper-latin':\n\t\t\t\t\tcase 'upper-roman':\n\t\t\t\t\t\tthis.isUl = false;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tnew Set(['https://www.w3schools.com/tags/tag_ol.asp']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolLinkGroup', this, value);\n\t}\n\n\t@Watch('_orientation')\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis,\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\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label, undefined, true);\n\t\tthis.validateListStyleType(this._listStyleType);\n\t\tthis.validateLinks(this._links);\n\t\tthis.validateOrientation(this._orientation);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tremoveNavLabel(this.state._label);\n\t}\n}\n\n// console.log(\n// stringifyJson([\n// { _label: 'Fehler 1', _id: '#anschrift_anschrift_adresse_strasse', _icons: 'error' },\n// { _label: 'Fehler 2', _id: '#anschrift_anschrift_adresse_hausnummer', _icons: 'error' },\n// ])\n// );\n"],"mappings":";;;8UAAA,MAAMA,EAAkB,qiCCWxB,MAAMC,EAAYC,IACjB,MAAMC,EAAsB,GAC5BD,EAAME,MAAMC,KAAI,CAACC,EAAMC,KACtBJ,EAAKK,KAEHC,EAAA,MACCC,IAAKH,EACLI,MAAO,CACNC,MAAOL,EAAQ,GAAKL,EAAMW,cAAgB,WAC1C,YAAaN,IAAU,GAAKL,EAAMW,cAAgB,cAEnDC,MAAO,CACNC,cAAeb,EAAMa,gBAGtBN,EAAA,WAAAO,OAAAC,OAAA,GAAcX,KAGhB,IAEF,OAAOH,CAAI,E,MAUCe,EAAY,M,yBAuBhBC,KAAAC,KAAO,K,4FAoB6B,W,WAEZ,CAC/BC,OAAQ,IACRC,eAAgB,OAChBC,OAAQ,GACRC,aAAc,W,CAhDR,MAAAC,GACN,OACChB,EAAA,oBACaU,KAAKO,MAAML,OACvBV,MAAO,CACNgB,SAAUR,KAAKO,MAAMF,eAAiB,WACtCI,WAAYT,KAAKO,MAAMF,eAAiB,eAGxCL,KAAKC,OAAS,MACdX,EAAA,UACCA,EAACR,EAAQ,CAACG,MAAOe,KAAKO,MAAMH,OAAQV,YAAaM,KAAKO,MAAMF,aAAcT,cAAeI,KAAKO,MAAMJ,kBAGrGb,EAAA,UACCA,EAACR,EAAQ,CAACG,MAAOe,KAAKO,MAAMH,OAAQV,YAAaM,KAAKO,MAAMF,aAAcT,cAAeI,KAAKO,MAAMJ,kB,CAqClG,aAAAO,CAAcC,EAAuBC,EAA2BC,EAAU,OAChF,IAAKA,EAAS,CACbC,EAAed,KAAKO,MAAML,O,CAE3BQ,EAAcV,KAAMW,GACpBI,EAAYf,KAAKO,MAAML,O,CAIjB,qBAAAc,CAAsBL,GAC5BM,EACCjB,KACA,kBACCW,IACA,OAAQA,GACP,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,OACJX,KAAKC,KAAO,KACZ,OAAO,KACR,IAAK,UACL,IAAK,uBACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACJD,KAAKC,KAAO,MACZ,OAAO,KACR,QACC,OAAO,M,GAGV,IAAIiB,IAAI,CAAC,8CACTP,E,CAKK,aAAAQ,CAAcR,GACpBS,EAAc,eAAgBpB,KAAMW,E,CAI9B,mBAAAU,CAAoBV,GAC1BM,EACCjB,KACA,gBACCW,GAAmBA,IAAU,cAAgBA,IAAU,YACxD,IAAIO,IAAI,CAAC,uCACTP,EACA,CACCW,aAAc,Y,CAKV,iBAAAC,GACNvB,KAAKU,cAAcV,KAAKE,OAAQsB,UAAW,MAC3CxB,KAAKgB,sBAAsBhB,KAAKG,gBAChCH,KAAKmB,cAAcnB,KAAKI,QACxBJ,KAAKqB,oBAAoBrB,KAAKK,a,CAGxB,oBAAAoB,GACNX,EAAed,KAAKO,MAAML,O"}
1
+ {"version":3,"names":["defaultStyleCss","ListItem","props","list","links","map","link","index","push","h","key","class","ident","orientation","style","listStyleType","Object","assign","KolLinkGroup","this","isUl","_label","_listStyleType","_links","_orientation","render","state","vertical","horizontal","validateLabel","value","_oldValue","initial","removeNavLabel","addNavLabel","validateListStyleType","watchValidator","Set","validateLinks","watchNavLinks","validateOrientation","defaultValue","componentWillLoad","undefined","disconnectedCallback"],"sources":["src/components/link-group/style.css?tag=kol-link-group&mode=default&encapsulation=shadow","src/components/link-group/component.tsx"],"sourcesContent":["@import url(../style.css);\n@layer kol-component {\n\tul {\n\t\tlist-style: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\tnav.horizontal ul {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t}\n\n\tnav.horizontal li {\n\t\tmargin-left: 1.25rem;\n\t\tmargin-right: 0.25rem;\n\t}\n\n\tnav.horizontal li:first-child {\n\t\tmargin-left: 0;\n\t}\n\n\tnav.horizontal li:last-child {\n\t\tmargin-right: 0;\n\t}\n\n\tnav.vertical li {\n\t\tmargin-left: 1.75rem;\n\t\tmargin-right: 0.5rem;\n\t}\n\n\tli.list-none {\n\t\tlist-style-type: none !important;\n\t\tmargin-left: 0;\n\t}\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { Orientation } from '../../types/orientation';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { watchValidator } from '../../utils/prop.validators';\nimport { addNavLabel, removeNavLabel } from '../../utils/unique-nav-labels';\nimport { LinkProps } from '../link/types';\nimport { watchNavLinks } from '../nav/validation';\nimport { API, ListStyleType, States } from './types';\n\nconst ListItem = (props: { links: LinkProps[]; orientation: Orientation; listStyleType: ListStyleType }): JSX.Element => {\n\tconst list: JSX.Element[] = [];\n\tprops.links.map((link, index: number) => {\n\t\tlist.push(\n\t\t\t(\n\t\t\t\t<li\n\t\t\t\t\tkey={index}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tident: index > 0 && props.orientation === 'vertical',\n\t\t\t\t\t\t'list-none': index === 0 && props.orientation === 'horizontal',\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tlistStyleType: props.listStyleType,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-link {...link}></kol-link>\n\t\t\t\t</li>\n\t\t\t) as JSX.Element\n\t\t);\n\t});\n\treturn list;\n};\n\n@Component({\n\ttag: 'kol-link-group',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLinkGroup implements API {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<nav\n\t\t\t\taria-label={this.state._label}\n\t\t\t\tclass={{\n\t\t\t\t\tvertical: this.state._orientation === 'vertical',\n\t\t\t\t\thorizontal: this.state._orientation === 'horizontal',\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.isUl === false ? (\n\t\t\t\t\t<ol>\n\t\t\t\t\t\t<ListItem links={this.state._links} orientation={this.state._orientation} listStyleType={this.state._listStyleType} />\n\t\t\t\t\t</ol>\n\t\t\t\t) : (\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t<ListItem links={this.state._links} orientation={this.state._orientation} listStyleType={this.state._listStyleType} />\n\t\t\t\t\t</ul>\n\t\t\t\t)}\n\t\t\t</nav>\n\t\t);\n\t}\n\n\tprivate isUl = true;\n\n\t/**\n\t * Gibt den List-Style-Typen für ungeordnete Listen aus. Wird bei horizontalen LinkGroups als Trenner verwendet\n\t */\n\t@Prop() public _listStyleType?: ListStyleType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines the list of links to render.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t/**\n\t * Defines whether the orientation of the component is horizontal or vertical.\n\t */\n\t@Prop() public _orientation?: Orientation = 'vertical';\n\n\t@State() public state: States = {\n\t\t_label: '…', // ⚠ required\n\t\t_listStyleType: 'disc',\n\t\t_links: [],\n\t\t_orientation: 'vertical',\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType, _oldValue?: LabelPropType, initial = false): void {\n\t\tif (!initial) {\n\t\t\tremoveNavLabel(this.state._label); // remove the current\n\t\t}\n\t\tvalidateLabel(this, value);\n\t\taddNavLabel(this.state._label); // add the state instead of prop, because the prop could be invalid and not set as new label\n\t}\n\n\t@Watch('_listStyleType')\n\tpublic validateListStyleType(value?: ListStyleType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_listStyleType',\n\t\t\t(value) => {\n\t\t\t\tswitch (value) {\n\t\t\t\t\tcase 'disc':\n\t\t\t\t\tcase 'circle':\n\t\t\t\t\tcase 'square':\n\t\t\t\t\tcase 'none':\n\t\t\t\t\t\tthis.isUl = true;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\tcase 'decimal':\n\t\t\t\t\tcase 'decimal-leading-zero':\n\t\t\t\t\tcase 'lower-alpha':\n\t\t\t\t\tcase 'lower-latin':\n\t\t\t\t\tcase 'lower-greek':\n\t\t\t\t\tcase 'lower-roman':\n\t\t\t\t\tcase 'upper-alpha':\n\t\t\t\t\tcase 'upper-latin':\n\t\t\t\t\tcase 'upper-roman':\n\t\t\t\t\t\tthis.isUl = false;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tnew Set(['https://www.w3schools.com/tags/tag_ol.asp']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolLinkGroup', this, value);\n\t}\n\n\t@Watch('_orientation')\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis,\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\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label, undefined, true);\n\t\tthis.validateListStyleType(this._listStyleType);\n\t\tthis.validateLinks(this._links);\n\t\tthis.validateOrientation(this._orientation);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tremoveNavLabel(this.state._label);\n\t}\n}\n\n// console.log(\n// stringifyJson([\n// { _label: 'Fehler 1', _id: '#anschrift_anschrift_adresse_strasse', _icons: 'error' },\n// { _label: 'Fehler 2', _id: '#anschrift_anschrift_adresse_hausnummer', _icons: 'error' },\n// ])\n// );\n"],"mappings":";;;8UAAA,MAAMA,EAAkB,gxGCWxB,MAAMC,EAAYC,IACjB,MAAMC,EAAsB,GAC5BD,EAAME,MAAMC,KAAI,CAACC,EAAMC,KACtBJ,EAAKK,KAEHC,EAAA,MACCC,IAAKH,EACLI,MAAO,CACNC,MAAOL,EAAQ,GAAKL,EAAMW,cAAgB,WAC1C,YAAaN,IAAU,GAAKL,EAAMW,cAAgB,cAEnDC,MAAO,CACNC,cAAeb,EAAMa,gBAGtBN,EAAA,WAAAO,OAAAC,OAAA,GAAcX,KAGhB,IAEF,OAAOH,CAAI,E,MAUCe,EAAY,M,yBAuBhBC,KAAAC,KAAO,K,4FAoB6B,W,WAEZ,CAC/BC,OAAQ,IACRC,eAAgB,OAChBC,OAAQ,GACRC,aAAc,W,CAhDR,MAAAC,GACN,OACChB,EAAA,oBACaU,KAAKO,MAAML,OACvBV,MAAO,CACNgB,SAAUR,KAAKO,MAAMF,eAAiB,WACtCI,WAAYT,KAAKO,MAAMF,eAAiB,eAGxCL,KAAKC,OAAS,MACdX,EAAA,UACCA,EAACR,EAAQ,CAACG,MAAOe,KAAKO,MAAMH,OAAQV,YAAaM,KAAKO,MAAMF,aAAcT,cAAeI,KAAKO,MAAMJ,kBAGrGb,EAAA,UACCA,EAACR,EAAQ,CAACG,MAAOe,KAAKO,MAAMH,OAAQV,YAAaM,KAAKO,MAAMF,aAAcT,cAAeI,KAAKO,MAAMJ,kB,CAqClG,aAAAO,CAAcC,EAAuBC,EAA2BC,EAAU,OAChF,IAAKA,EAAS,CACbC,EAAed,KAAKO,MAAML,O,CAE3BQ,EAAcV,KAAMW,GACpBI,EAAYf,KAAKO,MAAML,O,CAIjB,qBAAAc,CAAsBL,GAC5BM,EACCjB,KACA,kBACCW,IACA,OAAQA,GACP,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,OACJX,KAAKC,KAAO,KACZ,OAAO,KACR,IAAK,UACL,IAAK,uBACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACL,IAAK,cACJD,KAAKC,KAAO,MACZ,OAAO,KACR,QACC,OAAO,M,GAGV,IAAIiB,IAAI,CAAC,8CACTP,E,CAKK,aAAAQ,CAAcR,GACpBS,EAAc,eAAgBpB,KAAMW,E,CAI9B,mBAAAU,CAAoBV,GAC1BM,EACCjB,KACA,gBACCW,GAAmBA,IAAU,cAAgBA,IAAU,YACxD,IAAIO,IAAI,CAAC,uCACTP,EACA,CACCW,aAAc,Y,CAKV,iBAAAC,GACNvB,KAAKU,cAAcV,KAAKE,OAAQsB,UAAW,MAC3CxB,KAAKgB,sBAAsBhB,KAAKG,gBAChCH,KAAKmB,cAAcnB,KAAKI,QACxBJ,KAAKqB,oBAAoBrB,KAAKK,a,CAGxB,oBAAAoB,GACNX,EAAed,KAAKO,MAAML,O"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as s,g as e}from"./index-d0c806ea.js";import{a}from"./i18n-d0bb1d99.js";import{v as n}from"./alternative-button-link-role-1b39949c.js";import{w as o,d as l,f as r,h}from"./prop.validators-125a3282.js";import{v as d}from"./icons-ad8a28c6.js";import{a as c}from"./label-0d258cd5.js";import{v as f}from"./tooltip-align-fe8fbb60.js";import{d as p,g as v}from"./a11y.tipps-583a2096.js";import{a as u,s as b}from"./reuse-b3566e4c.js";import{v as g}from"./tab-index-5e7494f0.js";import{v as _}from"./hide-label-2c0bf25c.js";import"./index-947d3173.js";import"./dev.utils-2a853234.js";import"./alignment-84fc6207.js";const m=(t,i,e)=>{o(t,i,(t=>"date"===t||"location"===t||"page"===t||"step"===t||"time"===t||!0===t||!1===t),new Set(["String {data, location, page, step, time}","boolean"]),e)},j=(t,i)=>{m(t,"_ariaCurrent",i)},x=(t,i)=>{m(t,"_listenAriaCurrent",i)},k=(t,i)=>{l(t,"_download",i)},w=(t,i,e={})=>{l(t,"_href",i,e)},y=(t,i)=>{"object"==typeof i&&"function"==typeof(null==i?void 0:i.onClick)&&(t.state=Object.assign(Object.assign({},t.state),{_on:i}))},A=(t,i)=>{l(t,"_target",i)},L=class{constructor(i){t(this,i),this.catchRef=t=>{this.ref=t,u(this.host,this.ref)},this.onClick=t=>{var i,e;"function"==typeof(null===(i=this.state._on)||void 0===i?void 0:i.onClick)&&(t.preventDefault(),t.stopPropagation(),r(t,this.ref),null===(e=this.state._on)||void 0===e||e.onClick(t,this.state._href))},this.getRenderValues=()=>{const t="string"==typeof this.state._target&&"_self"!==this.state._target,i={href:"string"==typeof this.state._href&&this.state._href.length>0?this.state._href:"javascript:void(0);",target:"string"==typeof this.state._target&&this.state._target.length>0?this.state._target:void 0,rel:t?"noopener":void 0,download:"string"==typeof this.state._download?this.state._download:void 0};return!0!==this.state._hideLabel||this.state._label||p("[KolLink] Es muss ein Aria-Label gesetzt werden _hide-label gesetzt ist."),{isExternal:t,tagAttrs:i}},this.unsubscribeAriaCurrentSubject=h.subscribe((t=>{try{this.state._listenAriaCurrent&&this.state._listenAriaCurrent===t.ariaCurrent&&(this.state._href===t.href?this.validateAriaCurrent(t.ariaCurrent):this.validateAriaCurrent(!1))}catch(t){v("The aria-current event is not valid.")}})),this._download=void 0,this._hideLabel=!1,this._href=void 0,this._icons=void 0,this._label=void 0,this._listenAriaCurrent=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._target=void 0,this._targetDescription=a("kol-open-link-in-tab"),this._tooltipAlign="right",this.state={_href:"…",_icons:{}}}render(){const{isExternal:t,tagAttrs:e}=this.getRenderValues(),a=b(this.state._label);return i(s,null,i("a",Object.assign({ref:this.catchRef},e,{"aria-current":this.state._ariaCurrent,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,class:{"external-link":t,"hide-label":!0===this.state._hideLabel}},this.state._on,{onClick:this.onClick,onKeyPress:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex}),i("kol-span-wc",{_icons:this.state._icons,_hideLabel:this.state._hideLabel,_label:a?"":this.state._label||this.state._href},i("slot",{name:"expert",slot:"expert"})),t&&i("kol-icon",{class:"external-link-icon",_label:this.state._targetDescription,_icons:"codicon codicon-link-external"})),i("kol-tooltip-wc",{"aria-hidden":"true",hidden:a||!this.state._hideLabel,_align:this.state._tooltipAlign,_label:this.state._label||this.state._href}))}validateAriaCurrent(t){j(this,t)}validateDownload(t){k(this,t)}validateHideLabel(t){_(this,t)}validateHref(t){w(this,t)}validateIcons(t){d(this,t)}validateLabel(t){c(this,t)}validateListenAriaCurrent(t){x(this,t)}validateOn(t){y(this,t)}validateRole(t){n(this,t)}validateTabIndex(t){g(this,t)}validateTarget(t){A(this,t)}validateTargetDescription(t){l(this,"_targetDescription",t)}validateTooltipAlign(t){f(this,t)}componentWillLoad(){this.validateDownload(this._download),this.validateHideLabel(this._hideLabel),this.validateHref(this._href),this.validateIcons(this._icons),this.validateLabel(this._label),this.validateListenAriaCurrent(this._listenAriaCurrent),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTarget(this._target),this.validateTargetDescription(this._targetDescription),this.validateTooltipAlign(this._tooltipAlign)}disconnectedCallback(){this.unsubscribeAriaCurrentSubject.unsubscribe()}get host(){return e(this)}static get watchers(){return{_download:["validateDownload"],_hideLabel:["validateHideLabel"],_href:["validateHref"],_icons:["validateIcons"],_label:["validateLabel"],_listenAriaCurrent:["validateListenAriaCurrent"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_target:["validateTarget"],_targetDescription:["validateTargetDescription"],_tooltipAlign:["validateTooltipAlign"]}}};export{L as kol_link_wc};
4
+ import{r as t,h as i,H as e,g as s}from"./index-0bc40dc4.js";import{a}from"./i18n-99b63f3a.js";import{v as n}from"./alternative-button-link-role-641ea928.js";import{d as o,w as r,f as l}from"./prop.validators-3fb6bedf.js";import{v as h}from"./icons-cfc259bf.js";import{a as d}from"./label-7afcc6a9.js";import{v as c}from"./tooltip-align-36725992.js";import{d as f}from"./a11y.tipps-68791110.js";import{a as p,s as u}from"./reuse-b3566e4c.js";import{v}from"./tab-index-95df106a.js";import{v as b}from"./hide-label-fbf92ea1.js";import{v as _}from"./access-key-c2c8b712.js";import{o as m}from"./ariaCurrentService-2ef83ca8.js";import"./index-a4b1e92f.js";import"./dev.utils-8202a1bc.js";import"./alignment-cb8fa342.js";const g=(t,e)=>{o(t,"_download",e)},j=(t,e,a={})=>{o(t,"_href",e,a)},y=(t,e)=>{"object"==typeof e&&"function"==typeof(null==e?void 0:e.onClick)&&(t.state=Object.assign(Object.assign({},t.state),{_on:e}))},k=(t,e)=>{o(t,"_target",e)},x=["date","location","page","step","time","true","false"],w=(t,e)=>{r(t,"_ariaCurrentValue",(t=>"string"==typeof t&&x.includes(t)),new Set([`AriaCurrentValue {${x.join(", ")}`]),e,{defaultValue:"page"})},A=class{constructor(e){t(this,e),this.catchRef=t=>{this.ref=t,p(this.host,this.ref)},this.onClick=t=>{var e,a;"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onClick)&&(t.preventDefault(),t.stopPropagation(),l(t,this.ref),null===(a=this.state._on)||void 0===a||a.onClick(t,this.state._href))},this.getRenderValues=()=>{const t="string"==typeof this.state._target&&"_self"!==this.state._target,e={href:"string"==typeof this.state._href&&this.state._href.length>0?this.state._href:"javascript:void(0);",target:"string"==typeof this.state._target&&this.state._target.length>0?this.state._target:void 0,rel:t?"noopener":void 0,download:"string"==typeof this.state._download?this.state._download:void 0};return!0!==this.state._hideLabel||this.state._label||f("[KolLink] Es muss ein Aria-Label gesetzt werden _hide-label gesetzt ist."),{isExternal:t,tagAttrs:e}},this._accessKey=void 0,this._ariaCurrentValue=void 0,this._download=void 0,this._hideLabel=!1,this._href=void 0,this._icons=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._target=void 0,this._targetDescription=a("kol-open-link-in-tab"),this._tooltipAlign="right",this.state={_href:"…",_icons:{},_ariaCurrentValue:"page"}}render(){const{isExternal:t,tagAttrs:a}=this.getRenderValues(),s=u(this.state._label);return i(e,null,i("a",Object.assign({ref:this.catchRef},a,{accessKey:this.state._accessKey,"aria-current":this.state._ariaCurrent,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,class:{"external-link":t,"hide-label":!0===this.state._hideLabel}},this.state._on,{onClick:this.onClick,onKeyPress:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex}),i("kol-span-wc",{_accessKey:this.state._accessKey,_icons:this.state._icons,_hideLabel:this.state._hideLabel,_label:s?"":this.state._label||this.state._href},i("slot",{name:"expert",slot:"expert"})),t&&i("kol-icon",{class:"external-link-icon",_label:this.state._targetDescription,_icons:"codicon codicon-link-external"})),i("kol-tooltip-wc",{"aria-hidden":"true",hidden:s||!this.state._hideLabel,_accessKey:this.state._accessKey,_align:this.state._tooltipAlign,_label:this.state._label||this.state._href}))}validateAccessKey(t){_(this,t)}validateAriaCurrentValue(t){w(this,t)}validateDownload(t){g(this,t)}validateHideLabel(t){b(this,t)}validateHref(t){j(this,t)}validateIcons(t){h(this,t)}validateLabel(t){d(this,t)}validateOn(t){y(this,t)}validateRole(t){n(this,t)}validateTabIndex(t){v(this,t)}validateTarget(t){k(this,t)}validateTargetDescription(t){o(this,"_targetDescription",t)}validateTooltipAlign(t){c(this,t)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaCurrentValue(this._ariaCurrentValue),this.validateDownload(this._download),this.validateHideLabel(this._hideLabel),this.validateHref(this._href),this.validateIcons(this._icons),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTarget(this._target),this.validateTargetDescription(this._targetDescription),this.validateTooltipAlign(this._tooltipAlign),this.unsubscribeOnLocationChange=m((t=>{this.state._ariaCurrent=t===this.state._href?this.state._ariaCurrentValue:void 0}))}disconnectedCallback(){this.unsubscribeOnLocationChange&&this.unsubscribeOnLocationChange()}get host(){return s(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaCurrentValue:["validateAriaCurrentValue"],_download:["validateDownload"],_hideLabel:["validateHideLabel"],_href:["validateHref"],_icons:["validateIcons"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_target:["validateTarget"],_targetDescription:["validateTargetDescription"],_tooltipAlign:["validateTooltipAlign"]}}};export{A as kol_link_wc};
@@ -1 +1 @@
1
- {"version":3,"names":["validate","component","propName","value","watchValidator","Set","validateAriaCurrent","validateListenAriaCurrent","validateDownload","watchString","validateHref","options","validateLinkCallbacks","onClick","state","Object","assign","_on","validateLinkTarget","KolLinkWc","this","catchRef","ref","propagateFocus","host","event","_a","preventDefault","stopPropagation","setEventTarget","_b","_href","getRenderValues","isExternal","_target","tagAttrs","href","length","target","undefined","rel","download","_download","_hideLabel","_label","devHint","unsubscribeAriaCurrentSubject","ariaCurrentSubject","subscribe","_listenAriaCurrent","ariaCurrent","e","devWarning","translate","_icons","render","hasExpertSlot","showExpertSlot","h","Host","_ariaCurrent","class","onKeyPress","role","_role","tabIndex","_tabIndex","name","slot","_targetDescription","hidden","_align","_tooltipAlign","validateHideLabel","validateIcons","validateLabel","validateLabelWithExpertSlot","validateOn","validateRole","validateAlternativeButtonLinkRole","validateTabIndex","validateTarget","validateTargetDescription","validateTooltipAlign","componentWillLoad","disconnectedCallback","unsubscribe"],"sources":["src/types/props/aria-current.ts","src/types/props/download.ts","src/types/props/href.ts","src/types/props/link-on-callbacks.ts","src/types/props/link-target.ts","src/components/link/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\n/* types */\n/**\n * Marks the element as the selected in a group of related elements. Can be one of the following: `date` | `location` | `page` | `step` | `time` | `true`.\n * (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n */\nexport type AriaCurrentPropType = 'date' | 'location' | 'page' | 'step' | 'time' | boolean;\n\nexport type PropAriaCurrent = {\n\t// only used for state\n\tariaCurrent: AriaCurrentPropType;\n};\n\nexport type PropListenAriaCurrent = {\n\tlistenAriaCurrent: AriaCurrentPropType;\n};\n\n/* validator */\nconst validate = (component: Generic.Element.Component, propName: string, value?: AriaCurrentPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time' || value === true || value === false,\n\t\tnew Set(['String {data, location, page, step, time}', 'boolean']),\n\t\tvalue\n\t);\n};\nexport const validateAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_ariaCurrent', value);\n};\nexport const validateListenAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_listenAriaCurrent', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchString } from '../../utils/prop.validators';\n\n/* types */\n\nexport type DownloadPropType = string;\n\n/**\n * Tells the browser that the link contains a file. Optionally sets the filename.\n */\nexport type PropDownload = {\n\tdownload?: DownloadPropType;\n};\n\n/* validator */\nexport const validateDownload = (component: Generic.Element.Component, value?: DownloadPropType): void => {\n\twatchString(component, '_download', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type HrefPropType = string;\n\n/**\n * This property is used for a link from a reference to the target URL.\n */\nexport type PropHref = {\n\thref: HrefPropType;\n};\n\nexport type HrefProp = Generic.Element.Members<PropHref, unknown>;\n\n/* validator */\nexport const validateHref = (component: Generic.Element.Component, value?: HrefPropType, options: WatchStringOptions = {}): void => {\n\twatchString(component, '_href', value, options);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { Events } from '../../enums/events';\nimport { EventValueOrEventCallback } from '../callbacks';\n\n/* types */\nexport type LinkOnCallbacksPropType = {\n\t[Events.onClick]?: EventValueOrEventCallback<Event, string>;\n};\n\n/**\n * Defines the callback functions for links.\n */\nexport type PropLinkOnCallbacks = {\n\ton: LinkOnCallbacksPropType;\n};\n\n/* validator */\nexport const validateLinkCallbacks = (component: Generic.Element.Component, value?: LinkOnCallbacksPropType): void => {\n\tif (typeof value === 'object' && typeof value?.onClick === 'function') {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t_on: value,\n\t\t};\n\t}\n};\n","/* types */\n\n// https://www.w3schools.com/tags/att_a_target.asp\nimport { Generic } from '@a11y-ui/core';\nimport { watchString } from '../../utils/prop.validators';\n\nexport type LinkTargetPropType = '_blank' | '_parent' | '_self' | '_top' | string;\n\n/**\n * Defines where to open the link.\n */\nexport type PropLinkTarget = {\n\ttarget: LinkTargetPropType;\n};\n\n/* validator */\nexport const validateLinkTarget = (component: Generic.Element.Component, value?: LinkTargetPropType): void => {\n\twatchString(component, '_target', value);\n};\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { translate } from '../../i18n';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconsProp } from '../../types/icons';\nimport { AlternativeButtonLinkRolePropType, validateAlternativeButtonLinkRole } from '../../types/props/alternative-button-link-role';\nimport { AriaCurrentPropType, validateAriaCurrent, validateListenAriaCurrent } from '../../types/props/aria-current';\nimport { DownloadPropType, validateDownload } from '../../types/props/download';\nimport { HrefPropType, validateHref } from '../../types/props/href';\nimport { validateIcons } from '../../types/props/icons';\nimport { LabelWithExpertSlotPropType, validateLabelWithExpertSlot } from '../../types/props/label';\nimport { LinkOnCallbacksPropType, validateLinkCallbacks } from '../../types/props/link-on-callbacks';\nimport { LinkTargetPropType, validateLinkTarget } from '../../types/props/link-target';\nimport { TooltipAlignPropType, validateTooltipAlign } from '../../types/props/tooltip-align';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { ariaCurrentSubject, setEventTarget, watchString } from '../../utils/prop.validators';\nimport { propagateFocus, showExpertSlot } from '../../utils/reuse';\nimport { validateTabIndex } from '../../utils/validators/tab-index';\nimport { States as LinkStates } from '../link/types';\nimport { API } from './types';\nimport { validateHideLabel } from '../../types/props/hide-label';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-link-wc',\n\tshadow: false,\n})\nexport class KolLinkWc implements API {\n\t@Element() private readonly host?: HTMLKolLinkWcElement;\n\tprivate ref?: HTMLAnchorElement;\n\n\tprivate readonly catchRef = (ref?: HTMLAnchorElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onClick = (event: Event) => {\n\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tsetEventTarget(event, this.ref);\n\t\t\tthis.state._on?.onClick(event, this.state._href);\n\t\t}\n\t};\n\n\tprivate readonly getRenderValues = () => {\n\t\t/**\n\t\t * DX\n\t\t * Das möchte ich ungern für HTML machen, sondern nur für Barrierefreiheitsthemen.\n\t\t */\n\t\t// if (typeof this.state._href === 'string' && this.state._href.length > 0) {\n\t\t// console.error('Setz den URL.');\n\t\t// throw new Error('Setz den URL.');\n\t\t// }\n\n\t\t// switch (this.state._target) {\n\t\t// case '_blank':\n\t\t// case '_self':\n\t\t// break;\n\t\t// default:\n\t\t// console.error('Fehlerhaftes Target.');\n\t\t// throw new Error('Fehlerhaftes Target.');\n\t\t// }\n\n\t\t// ROBUSTHEIT durch Validierung\n\t\tconst isExternal = typeof this.state._target === 'string' && this.state._target !== '_self';\n\n\t\tconst tagAttrs = {\n\t\t\thref: typeof this.state._href === 'string' && this.state._href.length > 0 ? this.state._href : 'javascript:void(0);',\n\t\t\ttarget: typeof this.state._target === 'string' && this.state._target.length > 0 ? this.state._target : undefined,\n\t\t\trel: isExternal ? 'noopener' : undefined,\n\t\t\tdownload: typeof this.state._download === 'string' ? this.state._download : undefined,\n\t\t};\n\n\t\tif (this.state._hideLabel === true && !this.state._label) {\n\t\t\tdevHint(`[KolLink] Es muss ein Aria-Label gesetzt werden _hide-label gesetzt ist.`);\n\t\t}\n\t\treturn { isExternal, tagAttrs };\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { isExternal, tagAttrs } = this.getRenderValues();\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<a\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t{...tagAttrs}\n\t\t\t\t\taria-current={this.state._ariaCurrent}\n\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'external-link': isExternal,\n\t\t\t\t\t\t'hide-label': this.state._hideLabel === true,\n\t\t\t\t\t}}\n\t\t\t\t\t{...this.state._on}\n\t\t\t\t\t// https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/click-events-have-key-events.md\n\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\tonKeyPress={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>\n\t\t\t\t\t<kol-span-wc _icons={this.state._icons} _hideLabel={this.state._hideLabel} _label={hasExpertSlot ? '' : this.state._label || this.state._href}>\n\t\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t\t</kol-span-wc>\n\t\t\t\t\t{isExternal && <kol-icon class=\"external-link-icon\" _label={this.state._targetDescription as string} _icons={'codicon codicon-link-external'} />}\n\t\t\t\t</a>\n\t\t\t\t<kol-tooltip-wc\n\t\t\t\t\t/**\n\t\t\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t\t\t */\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\thidden={hasExpertSlot || !this.state._hideLabel}\n\t\t\t\t\t_align={this.state._tooltipAlign}\n\t\t\t\t\t_label={this.state._label || this.state._href}\n\t\t\t\t></kol-tooltip-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Tells the browser that the link contains a file. Optionally sets the filename.\n\t */\n\t@Prop() public _download?: DownloadPropType;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label?: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Listen on an aria-current event with this value. If the value matches the current value and the href is the same as the current url, the aria-current attribute will be set to current value.\n\t */\n\t@Prop() public _listenAriaCurrent?: AriaCurrentPropType;\n\n\t/**\n\t * Defines the callback functions for links.\n\t */\n\t@Prop() public _on?: LinkOnCallbacksPropType;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (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 * Defines where to open the link.\n\t */\n\t@Prop() public _target?: LinkTargetPropType;\n\n\t/**\n\t * Defines the description to use when the link is going to be opened in another application.\n\t */\n\t@Prop() public _targetDescription?: string = translate('kol-open-link-in-tab');\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'right';\n\n\t@State() public state: LinkStates = {\n\t\t_href: '…', // ⚠ required\n\t\t_icons: {}, // ⚠ required\n\t};\n\n\tprivate validateAriaCurrent(value?: AriaCurrentPropType): void {\n\t\tvalidateAriaCurrent(this, value);\n\t}\n\n\t@Watch('_download')\n\tpublic validateDownload(value?: DownloadPropType): void {\n\t\tvalidateDownload(this, value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this, value);\n\t}\n\n\t@Watch('_href')\n\tpublic validateHref(value?: string): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: KoliBriIconsProp): void {\n\t\tvalidateIcons(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this, value);\n\t}\n\n\t@Watch('_listenAriaCurrent')\n\tpublic validateListenAriaCurrent(value?: AriaCurrentPropType): void {\n\t\tvalidateListenAriaCurrent(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: LinkOnCallbacksPropType): void {\n\t\tvalidateLinkCallbacks(this, value);\n\t}\n\n\t@Watch('_role')\n\tpublic validateRole(value?: AlternativeButtonLinkRolePropType): void {\n\t\tvalidateAlternativeButtonLinkRole(this, value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this, value);\n\t}\n\n\t@Watch('_target')\n\tpublic validateTarget(value?: LinkTargetPropType): void {\n\t\tvalidateLinkTarget(this, value);\n\t}\n\n\t@Watch('_targetDescription')\n\tpublic validateTargetDescription(value?: string): void {\n\t\twatchString(this, '_targetDescription', value);\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateDownload(this._download);\n\t\tthis.validateHideLabel(this._hideLabel);\n\t\tthis.validateHref(this._href);\n\t\tthis.validateIcons(this._icons);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateListenAriaCurrent(this._listenAriaCurrent);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateRole(this._role);\n\t\tthis.validateTabIndex(this._tabIndex);\n\t\tthis.validateTarget(this._target);\n\t\tthis.validateTargetDescription(this._targetDescription);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n\n\tprivate unsubscribeAriaCurrentSubject = ariaCurrentSubject.subscribe((event) => {\n\t\ttry {\n\t\t\tif (this.state._listenAriaCurrent && this.state._listenAriaCurrent === event.ariaCurrent) {\n\t\t\t\tif (this.state._href === event.href) {\n\t\t\t\t\tthis.validateAriaCurrent(event.ariaCurrent);\n\t\t\t\t} else {\n\t\t\t\t\tthis.validateAriaCurrent(false);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tdevWarning(`The aria-current event is not valid.`);\n\t\t}\n\t});\n\n\tpublic disconnectedCallback(): void {\n\t\tthis.unsubscribeAriaCurrentSubject.unsubscribe();\n\t}\n}\n"],"mappings":";;;wnBAqBA,MAAMA,EAAW,CAACC,EAAsCC,EAAkBC,KACzEC,EACCH,EACAC,GACCC,GAAUA,IAAU,QAAUA,IAAU,YAAcA,IAAU,QAAUA,IAAU,QAAUA,IAAU,QAAUA,IAAU,MAAQA,IAAU,OAC/I,IAAIE,IAAI,CAAC,4CAA6C,YACtDF,EACA,EAEK,MAAMG,EAAsB,CAACL,EAAsCE,KACzEH,EAASC,EAAW,eAAgBE,EAAM,EAEpC,MAAMI,EAA4B,CAACN,EAAsCE,KAC/EH,EAASC,EAAW,qBAAsBE,EAAM,EClB1C,MAAMK,EAAmB,CAACP,EAAsCE,KACtEM,EAAYR,EAAW,YAAaE,EAAM,ECApC,MAAMO,EAAe,CAACT,EAAsCE,EAAsBQ,EAA8B,MACtHF,EAAYR,EAAW,QAASE,EAAOQ,EAAQ,ECDzC,MAAMC,EAAwB,CAACX,EAAsCE,KAC3E,UAAWA,IAAU,iBAAmBA,IAAK,MAALA,SAAK,SAALA,EAAOU,WAAY,WAAY,CACtEZ,EAAUa,MAAKC,OAAAC,OAAAD,OAAAC,OAAA,GACXf,EAAUa,OAAK,CAClBG,IAAKd,G,GCLD,MAAMe,EAAqB,CAACjB,EAAsCE,KACxEM,EAAYR,EAAW,UAAWE,EAAM,E,MCY5BgB,EAAS,M,yBAIJC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAeH,KAAKI,KAAMJ,KAAKE,IAAI,EAGnBF,KAAAP,QAAWY,I,QAC3B,WAAWC,EAAAN,KAAKN,MAAMG,OAAG,MAAAS,SAAA,SAAAA,EAAEb,WAAY,WAAY,CAClDY,EAAME,iBACNF,EAAMG,kBACNC,EAAeJ,EAAOL,KAAKE,MAC3BQ,EAAAV,KAAKN,MAAMG,OAAG,MAAAa,SAAA,SAAAA,EAAEjB,QAAQY,EAAOL,KAAKN,MAAMiB,M,GAI3BX,KAAAY,gBAAkB,KAoBlC,MAAMC,SAAoBb,KAAKN,MAAMoB,UAAY,UAAYd,KAAKN,MAAMoB,UAAY,QAEpF,MAAMC,EAAW,CAChBC,YAAahB,KAAKN,MAAMiB,QAAU,UAAYX,KAAKN,MAAMiB,MAAMM,OAAS,EAAIjB,KAAKN,MAAMiB,MAAQ,sBAC/FO,cAAelB,KAAKN,MAAMoB,UAAY,UAAYd,KAAKN,MAAMoB,QAAQG,OAAS,EAAIjB,KAAKN,MAAMoB,QAAUK,UACvGC,IAAKP,EAAa,WAAaM,UAC/BE,gBAAiBrB,KAAKN,MAAM4B,YAAc,SAAWtB,KAAKN,MAAM4B,UAAYH,WAG7E,GAAInB,KAAKN,MAAM6B,aAAe,OAASvB,KAAKN,MAAM8B,OAAQ,CACzDC,EAAQ,2E,CAET,MAAO,CAAEZ,aAAYE,WAAU,EA6LxBf,KAAA0B,8BAAgCC,EAAmBC,WAAWvB,IACrE,IACC,GAAIL,KAAKN,MAAMmC,oBAAsB7B,KAAKN,MAAMmC,qBAAuBxB,EAAMyB,YAAa,CACzF,GAAI9B,KAAKN,MAAMiB,QAAUN,EAAMW,KAAM,CACpChB,KAAKd,oBAAoBmB,EAAMyB,Y,KACzB,CACN9B,KAAKd,oBAAoB,M,GAG1B,MAAO6C,GACRC,EAAW,uC,8CAlJyB,M,mNA6COC,EAAU,wB,mBAKD,Q,WAElB,CACnCtB,MAAO,IACPuB,OAAQ,G,CAxGF,MAAAC,GACN,MAAMtB,WAAEA,EAAUE,SAAEA,GAAaf,KAAKY,kBACtC,MAAMwB,EAAgBC,EAAerC,KAAKN,MAAM8B,QAChD,OACCc,EAACC,EAAI,KACJD,EAAA,IAAA3C,OAAAC,OAAA,CACCM,IAAKF,KAAKC,UACNc,EAAQ,gBACEf,KAAKN,MAAM8C,aAAY,aACzBxC,KAAKN,MAAM6B,mBAAqBvB,KAAKN,MAAM8B,SAAW,SAAWxB,KAAKN,MAAM8B,OAASL,UACjGsB,MAAO,CACN,gBAAiB5B,EACjB,aAAcb,KAAKN,MAAM6B,aAAe,OAErCvB,KAAKN,MAAMG,IAAG,CAElBJ,QAASO,KAAKP,QACdiD,WAAY1C,KAAKP,QACjBkD,KAAM3C,KAAKN,MAAMkD,MACjBC,SAAU7C,KAAKN,MAAMoD,YAErBR,EAAA,eAAaJ,OAAQlC,KAAKN,MAAMwC,OAAQX,WAAYvB,KAAKN,MAAM6B,WAAYC,OAAQY,EAAgB,GAAKpC,KAAKN,MAAM8B,QAAUxB,KAAKN,MAAMiB,OACvI2B,EAAA,QAAMS,KAAK,SAASC,KAAK,YAEzBnC,GAAcyB,EAAA,YAAUG,MAAM,qBAAqBjB,OAAQxB,KAAKN,MAAMuD,mBAA8Bf,OAAQ,mCAE9GI,EAAA,gCAKa,OACZY,OAAQd,IAAkBpC,KAAKN,MAAM6B,WACrC4B,OAAQnD,KAAKN,MAAM0D,cACnB5B,OAAQxB,KAAKN,MAAM8B,QAAUxB,KAAKN,MAAMiB,Q,CAyEpC,mBAAAzB,CAAoBH,GAC3BG,EAAoBc,KAAMjB,E,CAIpB,gBAAAK,CAAiBL,GACvBK,EAAiBY,KAAMjB,E,CAIjB,iBAAAsE,CAAkBtE,GACxBsE,EAAkBrD,KAAMjB,E,CAIlB,YAAAO,CAAaP,GACnBO,EAAaU,KAAMjB,E,CAIb,aAAAuE,CAAcvE,GACpBuE,EAActD,KAAMjB,E,CAId,aAAAwE,CAAcxE,GACpByE,EAA4BxD,KAAMjB,E,CAI5B,yBAAAI,CAA0BJ,GAChCI,EAA0Ba,KAAMjB,E,CAI1B,UAAA0E,CAAW1E,GACjBS,EAAsBQ,KAAMjB,E,CAItB,YAAA2E,CAAa3E,GACnB4E,EAAkC3D,KAAMjB,E,CAIlC,gBAAA6E,CAAiB7E,GACvB6E,EAAiB5D,KAAMjB,E,CAIjB,cAAA8E,CAAe9E,GACrBe,EAAmBE,KAAMjB,E,CAInB,yBAAA+E,CAA0B/E,GAChCM,EAAYW,KAAM,qBAAsBjB,E,CAIlC,oBAAAgF,CAAqBhF,GAC3BgF,EAAqB/D,KAAMjB,E,CAGrB,iBAAAiF,GACNhE,KAAKZ,iBAAiBY,KAAKsB,WAC3BtB,KAAKqD,kBAAkBrD,KAAKuB,YAC5BvB,KAAKV,aAAaU,KAAKW,OACvBX,KAAKsD,cAActD,KAAKkC,QACxBlC,KAAKuD,cAAcvD,KAAKwB,QACxBxB,KAAKb,0BAA0Ba,KAAK6B,oBACpC7B,KAAKyD,WAAWzD,KAAKH,KACrBG,KAAK0D,aAAa1D,KAAK4C,OACvB5C,KAAK4D,iBAAiB5D,KAAK8C,WAC3B9C,KAAK6D,eAAe7D,KAAKc,SACzBd,KAAK8D,0BAA0B9D,KAAKiD,oBACpCjD,KAAK+D,qBAAqB/D,KAAKoD,c,CAiBzB,oBAAAa,GACNjE,KAAK0B,8BAA8BwC,a"}
1
+ {"version":3,"names":["validateDownload","component","value","watchString","validateHref","options","validateLinkCallbacks","onClick","state","Object","assign","_on","validateLinkTarget","ariaCurrentValuePropTypeOptions","validateAriaCurrentValue","watchValidator","includes","Set","join","defaultValue","KolLinkWc","this","catchRef","ref","propagateFocus","host","event","_a","preventDefault","stopPropagation","setEventTarget","_b","_href","getRenderValues","isExternal","_target","tagAttrs","href","length","target","undefined","rel","download","_download","_hideLabel","_label","devHint","translate","_icons","_ariaCurrentValue","render","hasExpertSlot","showExpertSlot","h","Host","accessKey","_accessKey","_ariaCurrent","class","onKeyPress","role","_role","tabIndex","_tabIndex","name","slot","_targetDescription","hidden","_align","_tooltipAlign","validateAccessKey","validateHideLabel","validateIcons","validateLabel","validateLabelWithExpertSlot","validateOn","validateRole","validateAlternativeButtonLinkRole","validateTabIndex","validateTarget","validateTargetDescription","validateTooltipAlign","componentWillLoad","unsubscribeOnLocationChange","onLocationChange","location","disconnectedCallback"],"sources":["src/types/props/download.ts","src/types/props/href.ts","src/types/props/link-on-callbacks.ts","src/types/props/link-target.ts","src/types/props/aria-current-value.ts","src/components/link/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchString } from '../../utils/prop.validators';\n\n/* types */\n\nexport type DownloadPropType = string;\n\n/**\n * Tells the browser that the link contains a file. Optionally sets the filename.\n */\nexport type PropDownload = {\n\tdownload?: DownloadPropType;\n};\n\n/* validator */\nexport const validateDownload = (component: Generic.Element.Component, value?: DownloadPropType): void => {\n\twatchString(component, '_download', value);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type HrefPropType = string;\n\n/**\n * This property is used for a link from a reference to the target URL.\n */\nexport type PropHref = {\n\thref: HrefPropType;\n};\n\nexport type HrefProp = Generic.Element.Members<PropHref, unknown>;\n\n/* validator */\nexport const validateHref = (component: Generic.Element.Component, value?: HrefPropType, options: WatchStringOptions = {}): void => {\n\twatchString(component, '_href', value, options);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { Events } from '../../enums/events';\nimport { EventValueOrEventCallback } from '../callbacks';\n\n/* types */\nexport type LinkOnCallbacksPropType = {\n\t[Events.onClick]?: EventValueOrEventCallback<Event, string>;\n};\n\n/**\n * Defines the callback functions for links.\n */\nexport type PropLinkOnCallbacks = {\n\ton: LinkOnCallbacksPropType;\n};\n\n/* validator */\nexport const validateLinkCallbacks = (component: Generic.Element.Component, value?: LinkOnCallbacksPropType): void => {\n\tif (typeof value === 'object' && typeof value?.onClick === 'function') {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t_on: value,\n\t\t};\n\t}\n};\n","/* types */\n\n// https://www.w3schools.com/tags/att_a_target.asp\nimport { Generic } from '@a11y-ui/core';\nimport { watchString } from '../../utils/prop.validators';\n\nexport type LinkTargetPropType = '_blank' | '_parent' | '_self' | '_top' | string;\n\n/**\n * Defines where to open the link.\n */\nexport type PropLinkTarget = {\n\ttarget: LinkTargetPropType;\n};\n\n/* validator */\nexport const validateLinkTarget = (component: Generic.Element.Component, value?: LinkTargetPropType): void => {\n\twatchString(component, '_target', value);\n};\n","/* types */\nimport { Generic } from '@a11y-ui/core';\nimport { watchValidator } from '../../utils/prop.validators';\n\n/**\n * Defines the value for the aria-current attribute.\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current\n * @see https://www.aditus.io/aria/aria-current/\n */\nconst ariaCurrentValuePropTypeOptions = ['date', 'location', 'page', 'step', 'time', 'true', 'false'] as const;\nexport type AriaCurrentValuePropType = (typeof ariaCurrentValuePropTypeOptions)[number];\n\nexport type PropAriaCurrentValue = {\n\tariaCurrentValue: AriaCurrentValuePropType;\n};\n\n/* validator */\nexport const validateAriaCurrentValue = (component: Generic.Element.Component, value?: AriaCurrentValuePropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t`_ariaCurrentValue`,\n\t\t(value) => typeof value === 'string' && ariaCurrentValuePropTypeOptions.includes(value),\n\t\tnew Set([`AriaCurrentValue {${ariaCurrentValuePropTypeOptions.join(', ')}`]),\n\t\tvalue,\n\t\t{\n\t\t\tdefaultValue: 'page',\n\t\t}\n\t);\n};\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { translate } from '../../i18n';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconsProp } from '../../types/icons';\nimport { AlternativeButtonLinkRolePropType, validateAlternativeButtonLinkRole } from '../../types/props/alternative-button-link-role';\nimport { DownloadPropType, validateDownload } from '../../types/props/download';\nimport { HrefPropType, validateHref } from '../../types/props/href';\nimport { validateIcons } from '../../types/props/icons';\nimport { LabelWithExpertSlotPropType, validateLabelWithExpertSlot } from '../../types/props/label';\nimport { LinkOnCallbacksPropType, validateLinkCallbacks } from '../../types/props/link-on-callbacks';\nimport { LinkTargetPropType, validateLinkTarget } from '../../types/props/link-target';\nimport { TooltipAlignPropType, validateTooltipAlign } from '../../types/props/tooltip-align';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { setEventTarget, watchString } from '../../utils/prop.validators';\nimport { propagateFocus, showExpertSlot } from '../../utils/reuse';\nimport { validateTabIndex } from '../../utils/validators/tab-index';\nimport { States as LinkStates } from '../link/types';\nimport { API } from './types';\nimport { validateHideLabel } from '../../types/props/hide-label';\nimport { AccessKeyPropType, validateAccessKey } from '../../types/props/access-key';\nimport { onLocationChange, UnsubscribeFunction } from './ariaCurrentService';\nimport { AriaCurrentValuePropType, validateAriaCurrentValue } from '../../types/props/aria-current-value';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-link-wc',\n\tshadow: false,\n})\nexport class KolLinkWc implements API {\n\t@Element() private readonly host?: HTMLKolLinkWcElement;\n\tprivate ref?: HTMLAnchorElement;\n\tprivate unsubscribeOnLocationChange?: UnsubscribeFunction;\n\n\tprivate readonly catchRef = (ref?: HTMLAnchorElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onClick = (event: Event) => {\n\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tsetEventTarget(event, this.ref);\n\t\t\tthis.state._on?.onClick(event, this.state._href);\n\t\t}\n\t};\n\n\tprivate readonly getRenderValues = () => {\n\t\t/**\n\t\t * DX\n\t\t * Das möchte ich ungern für HTML machen, sondern nur für Barrierefreiheitsthemen.\n\t\t */\n\t\t// if (typeof this.state._href === 'string' && this.state._href.length > 0) {\n\t\t// console.error('Setz den URL.');\n\t\t// throw new Error('Setz den URL.');\n\t\t// }\n\n\t\t// switch (this.state._target) {\n\t\t// case '_blank':\n\t\t// case '_self':\n\t\t// break;\n\t\t// default:\n\t\t// console.error('Fehlerhaftes Target.');\n\t\t// throw new Error('Fehlerhaftes Target.');\n\t\t// }\n\n\t\t// ROBUSTHEIT durch Validierung\n\t\tconst isExternal = typeof this.state._target === 'string' && this.state._target !== '_self';\n\n\t\tconst tagAttrs = {\n\t\t\thref: typeof this.state._href === 'string' && this.state._href.length > 0 ? this.state._href : 'javascript:void(0);',\n\t\t\ttarget: typeof this.state._target === 'string' && this.state._target.length > 0 ? this.state._target : undefined,\n\t\t\trel: isExternal ? 'noopener' : undefined,\n\t\t\tdownload: typeof this.state._download === 'string' ? this.state._download : undefined,\n\t\t};\n\n\t\tif (this.state._hideLabel === true && !this.state._label) {\n\t\t\tdevHint(`[KolLink] Es muss ein Aria-Label gesetzt werden _hide-label gesetzt ist.`);\n\t\t}\n\t\treturn { isExternal, tagAttrs };\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { isExternal, tagAttrs } = this.getRenderValues();\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<a\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t{...tagAttrs}\n\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\taria-current={this.state._ariaCurrent}\n\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'external-link': isExternal,\n\t\t\t\t\t\t'hide-label': this.state._hideLabel === true,\n\t\t\t\t\t}}\n\t\t\t\t\t{...this.state._on}\n\t\t\t\t\t// https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/click-events-have-key-events.md\n\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\tonKeyPress={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>\n\t\t\t\t\t<kol-span-wc\n\t\t\t\t\t\t_accessKey={this.state._accessKey}\n\t\t\t\t\t\t_icons={this.state._icons}\n\t\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t\t_label={hasExpertSlot ? '' : this.state._label || this.state._href}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t\t</kol-span-wc>\n\t\t\t\t\t{isExternal && <kol-icon class=\"external-link-icon\" _label={this.state._targetDescription as string} _icons={'codicon codicon-link-external'} />}\n\t\t\t\t</a>\n\t\t\t\t<kol-tooltip-wc\n\t\t\t\t\t/**\n\t\t\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t\t\t */\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\thidden={hasExpertSlot || !this.state._hideLabel}\n\t\t\t\t\t_accessKey={this.state._accessKey}\n\t\t\t\t\t_align={this.state._tooltipAlign}\n\t\t\t\t\t_label={this.state._label || this.state._href}\n\t\t\t\t></kol-tooltip-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the elements access key.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines the value for the aria-current attribute.\n\t */\n\t@Prop() public _ariaCurrentValue?: AriaCurrentValuePropType;\n\n\t/**\n\t * Tells the browser that the link contains a file. Optionally sets the filename.\n\t */\n\t@Prop() public _download?: DownloadPropType;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label?: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the callback functions for links.\n\t */\n\t@Prop() public _on?: LinkOnCallbacksPropType;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (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 * Defines where to open the link.\n\t */\n\t@Prop() public _target?: LinkTargetPropType;\n\n\t/**\n\t * Defines the description to use when the link is going to be opened in another application.\n\t */\n\t@Prop() public _targetDescription?: string = translate('kol-open-link-in-tab');\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'right';\n\n\t@State() public state: LinkStates = {\n\t\t_href: '…', // ⚠ required\n\t\t_icons: {}, // ⚠ required\n\t\t_ariaCurrentValue: 'page', // ⚠ required\n\t};\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: AccessKeyPropType): void {\n\t\tvalidateAccessKey(this, value);\n\t}\n\n\t@Watch('_ariaCurrentValue')\n\tpublic validateAriaCurrentValue(value?: AriaCurrentValuePropType): void {\n\t\tvalidateAriaCurrentValue(this, value);\n\t}\n\n\t@Watch('_download')\n\tpublic validateDownload(value?: DownloadPropType): void {\n\t\tvalidateDownload(this, value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this, value);\n\t}\n\n\t@Watch('_href')\n\tpublic validateHref(value?: string): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: KoliBriIconsProp): void {\n\t\tvalidateIcons(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: LinkOnCallbacksPropType): void {\n\t\tvalidateLinkCallbacks(this, value);\n\t}\n\n\t@Watch('_role')\n\tpublic validateRole(value?: AlternativeButtonLinkRolePropType): void {\n\t\tvalidateAlternativeButtonLinkRole(this, value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this, value);\n\t}\n\n\t@Watch('_target')\n\tpublic validateTarget(value?: LinkTargetPropType): void {\n\t\tvalidateLinkTarget(this, value);\n\t}\n\n\t@Watch('_targetDescription')\n\tpublic validateTargetDescription(value?: string): void {\n\t\twatchString(this, '_targetDescription', value);\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAccessKey(this._accessKey);\n\t\tthis.validateAriaCurrentValue(this._ariaCurrentValue);\n\t\tthis.validateDownload(this._download);\n\t\tthis.validateHideLabel(this._hideLabel);\n\t\tthis.validateHref(this._href);\n\t\tthis.validateIcons(this._icons);\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.validateTarget(this._target);\n\t\tthis.validateTargetDescription(this._targetDescription);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t\tthis.unsubscribeOnLocationChange = onLocationChange((location) => {\n\t\t\tthis.state._ariaCurrent = location === this.state._href ? this.state._ariaCurrentValue : undefined;\n\t\t});\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tif (this.unsubscribeOnLocationChange) {\n\t\t\tthis.unsubscribeOnLocationChange();\n\t\t}\n\t}\n}\n"],"mappings":";;;4sBAgBO,MAAMA,EAAmB,CAACC,EAAsCC,KACtEC,EAAYF,EAAW,YAAaC,EAAM,ECApC,MAAME,EAAe,CAACH,EAAsCC,EAAsBG,EAA8B,MACtHF,EAAYF,EAAW,QAASC,EAAOG,EAAQ,ECDzC,MAAMC,EAAwB,CAACL,EAAsCC,KAC3E,UAAWA,IAAU,iBAAmBA,IAAK,MAALA,SAAK,SAALA,EAAOK,WAAY,WAAY,CACtEN,EAAUO,MAAKC,OAAAC,OAAAD,OAAAC,OAAA,GACXT,EAAUO,OAAK,CAClBG,IAAKT,G,GCLD,MAAMU,EAAqB,CAACX,EAAsCC,KACxEC,EAAYF,EAAW,UAAWC,EAAM,ECRzC,MAAMW,EAAkC,CAAC,OAAQ,WAAY,OAAQ,OAAQ,OAAQ,OAAQ,SAQtF,MAAMC,EAA2B,CAACb,EAAsCC,KAC9Ea,EACCd,EACA,qBACCC,UAAiBA,IAAU,UAAYW,EAAgCG,SAASd,IACjF,IAAIe,IAAI,CAAC,qBAAqBJ,EAAgCK,KAAK,UACnEhB,EACA,CACCiB,aAAc,QAEf,E,MCIWC,EAAS,M,yBAKJC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAeH,KAAKI,KAAMJ,KAAKE,IAAI,EAGnBF,KAAAd,QAAWmB,I,QAC3B,WAAWC,EAAAN,KAAKb,MAAMG,OAAG,MAAAgB,SAAA,SAAAA,EAAEpB,WAAY,WAAY,CAClDmB,EAAME,iBACNF,EAAMG,kBACNC,EAAeJ,EAAOL,KAAKE,MAC3BQ,EAAAV,KAAKb,MAAMG,OAAG,MAAAoB,SAAA,SAAAA,EAAExB,QAAQmB,EAAOL,KAAKb,MAAMwB,M,GAI3BX,KAAAY,gBAAkB,KAoBlC,MAAMC,SAAoBb,KAAKb,MAAM2B,UAAY,UAAYd,KAAKb,MAAM2B,UAAY,QAEpF,MAAMC,EAAW,CAChBC,YAAahB,KAAKb,MAAMwB,QAAU,UAAYX,KAAKb,MAAMwB,MAAMM,OAAS,EAAIjB,KAAKb,MAAMwB,MAAQ,sBAC/FO,cAAelB,KAAKb,MAAM2B,UAAY,UAAYd,KAAKb,MAAM2B,QAAQG,OAAS,EAAIjB,KAAKb,MAAM2B,QAAUK,UACvGC,IAAKP,EAAa,WAAaM,UAC/BE,gBAAiBrB,KAAKb,MAAMmC,YAAc,SAAWtB,KAAKb,MAAMmC,UAAYH,WAG7E,GAAInB,KAAKb,MAAMoC,aAAe,OAASvB,KAAKb,MAAMqC,OAAQ,CACzDC,EAAQ,2E,CAET,MAAO,CAAEZ,aAAYE,WAAU,E,oGAsEM,M,iLAwCOW,EAAU,wB,mBAKD,Q,WAElB,CACnCf,MAAO,IACPgB,OAAQ,GACRC,kBAAmB,O,CArHb,MAAAC,GACN,MAAMhB,WAAEA,EAAUE,SAAEA,GAAaf,KAAKY,kBACtC,MAAMkB,EAAgBC,EAAe/B,KAAKb,MAAMqC,QAChD,OACCQ,EAACC,EAAI,KACJD,EAAA,IAAA5C,OAAAC,OAAA,CACCa,IAAKF,KAAKC,UACNc,EAAQ,CACZmB,UAAWlC,KAAKb,MAAMgD,WAAU,eAClBnC,KAAKb,MAAMiD,aAAY,aACzBpC,KAAKb,MAAMoC,mBAAqBvB,KAAKb,MAAMqC,SAAW,SAAWxB,KAAKb,MAAMqC,OAASL,UACjGkB,MAAO,CACN,gBAAiBxB,EACjB,aAAcb,KAAKb,MAAMoC,aAAe,OAErCvB,KAAKb,MAAMG,IAAG,CAElBJ,QAASc,KAAKd,QACdoD,WAAYtC,KAAKd,QACjBqD,KAAMvC,KAAKb,MAAMqD,MACjBC,SAAUzC,KAAKb,MAAMuD,YAErBV,EAAA,eACCG,WAAYnC,KAAKb,MAAMgD,WACvBR,OAAQ3B,KAAKb,MAAMwC,OACnBJ,WAAYvB,KAAKb,MAAMoC,WACvBC,OAAQM,EAAgB,GAAK9B,KAAKb,MAAMqC,QAAUxB,KAAKb,MAAMwB,OAE7DqB,EAAA,QAAMW,KAAK,SAASC,KAAK,YAEzB/B,GAAcmB,EAAA,YAAUK,MAAM,qBAAqBb,OAAQxB,KAAKb,MAAM0D,mBAA8BlB,OAAQ,mCAE9GK,EAAA,gCAKa,OACZc,OAAQhB,IAAkB9B,KAAKb,MAAMoC,WACrCY,WAAYnC,KAAKb,MAAMgD,WACvBY,OAAQ/C,KAAKb,MAAM6D,cACnBxB,OAAQxB,KAAKb,MAAMqC,QAAUxB,KAAKb,MAAMwB,Q,CAgFrC,iBAAAsC,CAAkBpE,GACxBoE,EAAkBjD,KAAMnB,E,CAIlB,wBAAAY,CAAyBZ,GAC/BY,EAAyBO,KAAMnB,E,CAIzB,gBAAAF,CAAiBE,GACvBF,EAAiBqB,KAAMnB,E,CAIjB,iBAAAqE,CAAkBrE,GACxBqE,EAAkBlD,KAAMnB,E,CAIlB,YAAAE,CAAaF,GACnBE,EAAaiB,KAAMnB,E,CAIb,aAAAsE,CAActE,GACpBsE,EAAcnD,KAAMnB,E,CAId,aAAAuE,CAAcvE,GACpBwE,EAA4BrD,KAAMnB,E,CAI5B,UAAAyE,CAAWzE,GACjBI,EAAsBe,KAAMnB,E,CAItB,YAAA0E,CAAa1E,GACnB2E,EAAkCxD,KAAMnB,E,CAIlC,gBAAA4E,CAAiB5E,GACvB4E,EAAiBzD,KAAMnB,E,CAIjB,cAAA6E,CAAe7E,GACrBU,EAAmBS,KAAMnB,E,CAInB,yBAAA8E,CAA0B9E,GAChCC,EAAYkB,KAAM,qBAAsBnB,E,CAIlC,oBAAA+E,CAAqB/E,GAC3B+E,EAAqB5D,KAAMnB,E,CAGrB,iBAAAgF,GACN7D,KAAKiD,kBAAkBjD,KAAKmC,YAC5BnC,KAAKP,yBAAyBO,KAAK4B,mBACnC5B,KAAKrB,iBAAiBqB,KAAKsB,WAC3BtB,KAAKkD,kBAAkBlD,KAAKuB,YAC5BvB,KAAKjB,aAAaiB,KAAKW,OACvBX,KAAKmD,cAAcnD,KAAK2B,QACxB3B,KAAKoD,cAAcpD,KAAKwB,QACxBxB,KAAKsD,WAAWtD,KAAKV,KACrBU,KAAKuD,aAAavD,KAAKwC,OACvBxC,KAAKyD,iBAAiBzD,KAAK0C,WAC3B1C,KAAK0D,eAAe1D,KAAKc,SACzBd,KAAK2D,0BAA0B3D,KAAK6C,oBACpC7C,KAAK4D,qBAAqB5D,KAAKgD,eAC/BhD,KAAK8D,4BAA8BC,GAAkBC,IACpDhE,KAAKb,MAAMiD,aAAe4B,IAAahE,KAAKb,MAAMwB,MAAQX,KAAKb,MAAMyC,kBAAoBT,SAAS,G,CAI7F,oBAAA8C,GACN,GAAIjE,KAAK8D,4BAA6B,CACrC9D,KAAK8D,6B"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as i,h as e,H as t,g as n}from"./index-d0c806ea.js";import{a as s}from"./reuse-b3566e4c.js";const o=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}:is(a,button){align-items:baseline;display:inline-flex;place-items:center;text-align:left;text-decoration-line:underline}:is(a,button):is(:focus,:hover){text-decoration-thickness:0.2em}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:#fff;left:unset;padding:1em;position:unset}kol-icon.external-link-icon{display:inline-flex}",a=class{constructor(t){i(this,t),this.catchRef=i=>{this.ref=i,s(this.host,this.ref)},this._download=void 0,this._hideLabel=!1,this._href=void 0,this._icons=void 0,this._label=void 0,this._listenAriaCurrent=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._target=void 0,this._targetDescription="Der Link wird in einem neuen Tab geöffnet.",this._tooltipAlign="right"}render(){return e(t,null,e("kol-link-wc",{ref:this.catchRef,_download:this._download,_hideLabel:this._hideLabel,_href:this._href,_icons:this._icons,_label:this._label,_listenAriaCurrent:this._listenAriaCurrent,_on:this._on,_role:this._role,_tabIndex:this._tabIndex,_target:this._target,_targetDescription:this._targetDescription,_tooltipAlign:this._tooltipAlign},e("slot",{name:"expert",slot:"expert"})))}get host(){return n(this)}};a.style={default:o};export{a as kol_link};
4
+ import{r as t,h as n,H as e,g as i}from"./index-0bc40dc4.js";import{a as s}from"./reuse-b3566e4c.js";const o="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\t:is(a, button) {\n\t\talign-items: baseline;\n\t\tdisplay: inline-flex;\n\t\tplace-items: center;\n\t\ttext-align: left;\n\t\ttext-decoration-line: underline;\n\t}\n\n\t:is(a, button):is(:focus, :hover) {\n\t\ttext-decoration-thickness: 0.2em;\n\t}\n\n\t.hidden {\n\t\tdisplay: none;\n\t\tvisibility: hidden;\n\t}\n\n\t.skip {\n\t\tleft: -99999px;\n\t\toverflow: hidden;\n\t\tposition: absolute;\n\t\tz-index: 9999999;\n\t\tline-height: 1em;\n\t}\n\n\t.skip:focus {\n\t\tbackground-color: #fff;\n\t\tleft: unset;\n\t\tpadding: 1em;\n\t\tposition: unset;\n\t}\n\n\tkol-icon.external-link-icon {\n\t\tdisplay: inline-flex;\n\t}\n}\n\n",l=class{constructor(n){t(this,n),this.catchRef=t=>{s(this.host,t)},this._accessKey=void 0,this._ariaCurrentValue=void 0,this._download=void 0,this._hideLabel=!1,this._href=void 0,this._icons=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._target=void 0,this._targetDescription="Der Link wird in einem neuen Tab geöffnet.",this._tooltipAlign="right"}render(){return n(e,null,n("kol-link-wc",{ref:this.catchRef,_accessKey:this._accessKey,_ariaCurrentValue:this._ariaCurrentValue,_download:this._download,_hideLabel:this._hideLabel,_href:this._href,_icons:this._icons,_label:this._label,_on:this._on,_role:this._role,_tabIndex:this._tabIndex,_target:this._target,_targetDescription:this._targetDescription,_tooltipAlign:this._tooltipAlign},n("slot",{name:"expert",slot:"expert"})))}get host(){return i(this)}};l.style={default:o};export{l as kol_link};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolLink","this","catchRef","ref","propagateFocus","host","render","h","Host","_download","_hideLabel","_href","_icons","_label","_listenAriaCurrent","_on","_role","_tabIndex","_target","_targetDescription","_tooltipAlign","name","slot"],"sources":["src/components/link/style.css?tag=kol-link&mode=default&encapsulation=shadow","src/components/link/shadow.tsx"],"sourcesContent":["@import url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconsProp } from '../../types/icons';\nimport { AlternativeButtonLinkRolePropType } from '../../types/props/alternative-button-link-role';\nimport { AriaCurrentPropType } from '../../types/props/aria-current';\nimport { DownloadPropType } from '../../types/props/download';\nimport { HrefPropType } from '../../types/props/href';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { LinkOnCallbacksPropType } from '../../types/props/link-on-callbacks';\nimport { LinkTargetPropType } from '../../types/props/link-target';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { propagateFocus } from '../../utils/reuse';\nimport { LinkProps } from './types';\n\n@Component({\n\ttag: 'kol-link',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLink implements LinkProps {\n\t@Element() private readonly host?: HTMLKolLinkElement;\n\tprivate ref?: HTMLKolLinkWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolLinkWcElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-link-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_download={this._download}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_href={this._href}\n\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_listenAriaCurrent={this._listenAriaCurrent}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role={this._role}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_target={this._target}\n\t\t\t\t\t_targetDescription={this._targetDescription}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t>\n\t\t\t\t\t{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\t\t\t\t*/}\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t</kol-link-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Tells the browser that the link contains a file. Optionally sets the filename.\n\t */\n\t@Prop() public _download?: DownloadPropType;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label?: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Listen on an aria-current event with this value. If the value matches the current value and the href is the same as the current url, the aria-current attribute will be set to current value.\n\t */\n\t@Prop() public _listenAriaCurrent?: AriaCurrentPropType;\n\n\t/**\n\t * Defines the callback functions for links.\n\t */\n\t@Prop() public _on?: LinkOnCallbacksPropType;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (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 * Defines where to open the link.\n\t */\n\t@Prop() public _target?: LinkTargetPropType;\n\n\t/**\n\t * Defines the description to use when the link is going to be opened in another application.\n\t */\n\t@Prop() public _targetDescription?: string = 'Der Link wird in einem neuen Tab geöffnet.';\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'right';\n}\n"],"mappings":";;;qGAAA,MAAMA,EAAkB,opC,MCsBXC,EAAO,M,yBAIFC,KAAAC,SAAYC,IAC5BF,KAAKE,IAAMA,EACXC,EAAeH,KAAKI,KAAMJ,KAAKE,IAAI,E,yCAyCE,M,mNA6CO,6C,mBAKS,O,CAxF/C,MAAAG,GACN,OACCC,EAACC,EAAI,KACJD,EAAA,eACCJ,IAAKF,KAAKC,SACVO,UAAWR,KAAKQ,UAChBC,WAAYT,KAAKS,WACjBC,MAAOV,KAAKU,MACZC,OAAQX,KAAKW,OACbC,OAAQZ,KAAKY,OACbC,mBAAoBb,KAAKa,mBACzBC,IAAKd,KAAKc,IACVC,MAAOf,KAAKe,MACZC,UAAWhB,KAAKgB,UAChBC,QAASjB,KAAKiB,QACdC,mBAAoBlB,KAAKkB,mBACzBC,cAAenB,KAAKmB,eAMpBb,EAAA,QAAMc,KAAK,SAASC,KAAK,Y"}
1
+ {"version":3,"names":["defaultStyleCss","KolLink","this","catchRef","ref","propagateFocus","host","render","h","Host","_accessKey","_ariaCurrentValue","_download","_hideLabel","_href","_icons","_label","_on","_role","_tabIndex","_target","_targetDescription","_tooltipAlign","name","slot"],"sources":["src/components/link/style.css?tag=kol-link&mode=default&encapsulation=shadow","src/components/link/shadow.tsx"],"sourcesContent":["@import url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconsProp } from '../../types/icons';\nimport { AlternativeButtonLinkRolePropType } from '../../types/props/alternative-button-link-role';\nimport { DownloadPropType } from '../../types/props/download';\nimport { HrefPropType } from '../../types/props/href';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { LinkOnCallbacksPropType } from '../../types/props/link-on-callbacks';\nimport { LinkTargetPropType } from '../../types/props/link-target';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { propagateFocus } from '../../utils/reuse';\nimport { LinkProps } from './types';\nimport { AccessKeyPropType } from '../../types/props/access-key';\nimport { AriaCurrentValuePropType } from '../../types/props/aria-current-value';\n\n@Component({\n\ttag: 'kol-link',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLink implements LinkProps {\n\t@Element() private readonly host?: HTMLKolLinkElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolLinkWcElement) => {\n\t\tpropagateFocus(this.host, ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-link-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaCurrentValue={this._ariaCurrentValue}\n\t\t\t\t\t_download={this._download}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_href={this._href}\n\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role={this._role}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_target={this._target}\n\t\t\t\t\t_targetDescription={this._targetDescription}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t>\n\t\t\t\t\t{/*\n\t\t\t\t\t\tEs ist keine gute Idee hier einen Slot einzufügen, da dadurch ermöglicht wird,\n\t\t\t\t\t\tdie Unterstützung hinsichtlich der Barrierefreiheit der Komponente zu umgehen.\n\t\t\t\t\t*/}\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t</kol-link-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the elements access key.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines the value for the aria-current attribute.\n\t */\n\t@Prop() public _ariaCurrentValue?: AriaCurrentValuePropType;\n\n\t/**\n\t * Tells the browser that the link contains a file. Optionally sets the filename.\n\t */\n\t@Prop() public _download?: DownloadPropType;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Sets the target URI of the link or citation source.\n\t */\n\t@Prop() public _href!: HrefPropType;\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label?: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the callback functions for links.\n\t */\n\t@Prop() public _on?: LinkOnCallbacksPropType;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (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 * Defines where to open the link.\n\t */\n\t@Prop() public _target?: LinkTargetPropType;\n\n\t/**\n\t * Defines the description to use when the link is going to be opened in another application.\n\t */\n\t@Prop() public _targetDescription?: string = 'Der Link wird in einem neuen Tab geöffnet.';\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'right';\n}\n"],"mappings":";;;qGAAA,MAAMA,EAAkB,86G,MCuBXC,EAAO,M,yBAGFC,KAAAC,SAAYC,IAC5BC,EAAeH,KAAKI,KAAMF,EAAI,E,oGAoDO,M,iLAwCO,6C,mBAKS,O,CA9F/C,MAAAG,GACN,OACCC,EAACC,EAAI,KACJD,EAAA,eACCJ,IAAKF,KAAKC,SACVO,WAAYR,KAAKQ,WACjBC,kBAAmBT,KAAKS,kBACxBC,UAAWV,KAAKU,UAChBC,WAAYX,KAAKW,WACjBC,MAAOZ,KAAKY,MACZC,OAAQb,KAAKa,OACbC,OAAQd,KAAKc,OACbC,IAAKf,KAAKe,IACVC,MAAOhB,KAAKgB,MACZC,UAAWjB,KAAKiB,UAChBC,QAASlB,KAAKkB,QACdC,mBAAoBnB,KAAKmB,mBACzBC,cAAepB,KAAKoB,eAMpBd,EAAA,QAAMe,KAAK,SAASC,KAAK,Y"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as c,h as n}from"./index-d0c806ea.js";import{d as t,B as e,b as i,f as o}from"./bund-056aa89a.js";import{a as r}from"./i18n-d0bb1d99.js";import{d as s}from"./a11y.tipps-583a2096.js";import{s as l}from"./prop.validators-125a3282.js";import"./index-947d3173.js";import"./dev.utils-2a853234.js";import"./reuse-b3566e4c.js";const a=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}text{font-size:16px;letter-spacing:normal;word-spacing:normal}svg{max-height:100%}";function h(c,n=new Map){return Object.entries(c).map((([c,t])=>{n.set(t,c)})),n}const d=h(i,h(t,h(e)));function p(c){return d.has(c)?d.get(c):""}const g=()=>n("path",{d:"M21.72,12.77c0.04-0.33,0.06-0.67,0.06-1c0-0.2,0-0.43,0-0.69c3.06,0,5.74-2.25,5.74-4.78\nc-0.09-1.07-0.56-2.08-1.32-2.84l0.32-0.07c1,0.89,1.61,2.14,1.7,3.48c0,3-3,5.85-6.5,5.92 M18.64,2.21\nc-0.05-0.33-0.19-0.64-0.39-0.91c0-0.31,0.14-0.61,0.64-0.36c-0.27,0.27-0.06,0.76-0.06,0.76s0.55-0.26,0.44-0.62\nC20.09,1.28,19.5,2.38,18.64,2.21 M17.93,3.77c-0.12-0.47-0.34-0.9-0.64-1.27c-0.3-0.42-0.77-0.69-1.29-0.73\nc-0.34,0.03-0.68,0.12-1,0.25c-0.16-0.28-0.27-0.58-0.32-0.9c0-0.22,0.38-0.44,1.1-0.44c1.58,0,2.52,0.71,2.52,1.91\nC18.26,3.01,18.14,3.41,17.93,3.77 M22,24.16c0.13,0,0.26,0.02,0.38,0.07c0.64,1.3,1.4,2.53,2.29,3.68l0,0l0,0\nc0.81-0.14,1.63-0.22,2.45-0.24l0,0c0.1-0.01,0.2,0.01,0.28,0.07c0.07,0.09,0.1,0.2,0.09,0.31c-0.01,0.28-0.08,0.55-0.21,0.79\nc-0.46-0.4-1.07-0.59-1.68-0.51c-0.24,0.01-0.48,0.05-0.71,0.12h-0.07h-0.07l0.48,0.49c0.77,0.83,1.44,1.43,1.44,1.83\nc-0.04,0.31-0.22,0.58-0.48,0.74c-0.22-0.98-0.8-1.84-1.62-2.42h-0.06v0.27c0,0.19,0,0.47,0,0.77c0,1.49-0.15,1.72-0.67,1.72\nc-0.09,0.01-0.19,0.01-0.28,0c0.33-0.49,0.48-1.08,0.41-1.67v-0.7c0-0.27,0.03-0.53,0.06-0.8v-0.11h-0.08\nc-0.33-0.05-0.67-0.09-1-0.1c-0.57-0.07-1.14,0.07-1.6,0.41c-0.24-0.18-0.41-0.44-0.48-0.73c0-0.32,0.19-0.34,0.45-0.34\nc0.14-0.01,0.27-0.01,0.41,0c0.59,0.09,1.18,0.13,1.78,0.12h0.06v-0.06c-0.5-1.13-1.18-2.17-2-3.09c0.1-0.35,0.2-0.59,0.54-0.59\nM12.64,27.87v0.06h0.06c0.55-0.01,1.1-0.06,1.64-0.16c0.14-0.01,0.27-0.01,0.41,0c0.26,0,0.45,0,0.45,0.34\nc-0.07,0.29-0.24,0.55-0.48,0.73c-0.46-0.34-1.03-0.49-1.6-0.41c-0.33,0.01-0.67,0.05-1,0.1H12v0.11\nc0.03,0.27,0.06,0.53,0.06,0.8v0.7c-0.05,0.58,0.1,1.15,0.42,1.63c-0.09,0.01-0.19,0.01-0.28,0c-0.52,0-0.67-0.23-0.67-1.72\nc0-0.3,0-0.58,0-0.77V29l-0.06,0.05c-0.82,0.58-1.39,1.44-1.61,2.42c-0.28-0.14-0.47-0.4-0.53-0.7c0-0.43,0.65-1.07,1.39-1.81\nl0.43-0.43v-0.06h-0.14c-0.23-0.07-0.47-0.11-0.71-0.12c-0.61-0.08-1.22,0.11-1.68,0.51c-0.13-0.24-0.2-0.51-0.21-0.79\nc0.01-0.11,0.06-0.22,0.14-0.3c0.08-0.06,0.18-0.08,0.28-0.07l0,0c0.82,0.02,1.64,0.1,2.45,0.24l0,0l0,0\nc0.88-1.15,1.64-2.38,2.28-3.68c0.12-0.05,0.25-0.07,0.38-0.07c0.35,0,0.44,0.24,0.54,0.59c-0.82,0.92-1.5,1.96-2,3.09\nM7.78,6.87c0.08-1.36,0.7-2.62,1.72-3.52l0.32,0.07C9.06,4.19,8.6,5.19,8.51,6.26c0,2.56,2.73,4.78,5.82,4.78\nc0,0.22,0,0.45,0,0.69c-0.01,0.35,0,0.69,0.03,1.04c-3.5,0-6.58-2.86-6.58-5.92 M31.25,12.23c1.57,2.49,2.8,2.45,4.66,2.45\nc-1.19-0.97-2.21-2.14-3-3.46L30,6.65c-0.29-1.44-1.03-2.75-2.12-3.73c0.31-0.1,0.6-0.24,0.87-0.42c-1.88,0-3.73-1-4.75-1\nc-0.55-0.05-1.03,0.36-1.08,0.91c0,0.58,0.63,1.16,1.73,1.16c0.31,0,0.62-0.04,0.92-0.09c0.65,0.74,1.03,1.67,1.08,2.65\nc0,2-2.41,3.58-4.83,3.58h-0.41c-0.5-0.67-0.84-1.45-1-2.28c0-1.6,1.05-2.9,1.05-4.48c0-0.68-0.24-1.33-0.67-1.85\nc0.29-0.23,0.53-0.52,0.7-0.85c-0.22,0.08-0.45,0.11-0.68,0.09c-1.16,0-2.11-0.3-3-0.3c-0.53,0-0.67,0.16-0.67,0.31\nc-0.01,0.05-0.01,0.1,0,0.15c-0.19-0.08-0.39-0.13-0.59-0.17c-0.29-0.05-0.58-0.08-0.88-0.08c-1.13,0-1.52,0.47-1.52,0.87\nc0.07,0.52,0.27,1.01,0.57,1.44c0.4-0.2,0.84-0.31,1.28-0.34c0.6,0,1.13,0.57,1.41,1.24c-0.29,0.05-0.59,0.07-0.88,0.07\nc-0.68-0.03-1.36-0.16-2-0.39l0,0c0,0,0.31,0.56,0.92,0.78c0.72,0.22,1.46,0.37,2.21,0.45c-0.08,0.21-0.23,0.38-0.43,0.49\nc-0.05,0.02-0.09,0.02-0.14,0c-0.74-0.14-1.45-0.35-2.14-0.65H14.9c0,0.42,1.09,1.35,2.07,1.71c-1.06,1.1-1.87,2.41-2.39,3.85\nh-0.41c-2.42,0-4.82-1.57-4.82-3.58c0.05-0.98,0.43-1.91,1.07-2.65c0.3,0.05,0.61,0.09,0.92,0.09c1.1,0,1.69-0.58,1.74-1.16\nc-0.04-0.55-0.52-0.96-1.07-0.92c0,0,0,0-0.01,0c-1,0-2.88,1-4.76,1C7.51,2.73,7.8,2.87,8.11,2.97C7.03,3.94,6.29,5.23,6,6.65\nl-2.87,4.59c-0.79,1.32-1.81,2.49-3,3.46c1.86,0,3.09,0,4.66-2.45L6.26,9.9c0.11,0.31,0.24,0.61,0.4,0.9l-2.97,4.67\nc-0.79,1.32-1.8,2.49-3,3.46c1.85,0,3.08,0,4.65-2.44l2.52-4c0.19,0.2,0.39,0.4,0.6,0.58l-3.59,5.7c-0.79,1.32-1.8,2.49-3,3.45\nc1.85,0,3.08,0.05,4.65-2.44L10,14.2c0.22,0.14,0.46,0.28,0.7,0.41l-4.27,6.77c-0.79,1.31-1.81,2.48-3,3.45\nc1.85,0,3.08,0,4.65-2.44l4.36-7c0.25,0.1,0.51,0.2,0.78,0.28l-4.95,7.9c-0.79,1.31-1.81,2.48-3,3.45c1.85,0,3.08,0.05,4.65-2.43\nl5.24-8.39h0.16c0.14,0.42,0.22,0.86,0.24,1.3c0,2.64-1.73,5-3.8,6.76c0.19,0.06,0.38,0.09,0.58,0.08c0.3,0.01,0.6-0.01,0.9-0.05\nc-0.57,1.13-1.24,2.21-2,3.23c-0.77-0.13-1.54-0.2-2.32-0.22c-0.67,0-0.75,0.4-0.75,0.75c-0.01,0.53,0.22,1.03,0.62,1.38\nc0.13-0.31,0.38-0.73,1.63-0.73h0.13C10.11,29.13,9,30.06,9,30.77c0.06,0.66,0.59,1.18,1.25,1.24c-0.02-0.14-0.02-0.28,0-0.42\nc0.13-0.69,0.48-1.33,1-1.8c-0.01,0.1-0.01,0.2,0,0.3c0,1.43,0.13,2.08,1,2.08c0.31-0.01,0.61-0.12,0.86-0.31\nc-0.5-0.44-0.73-1.11-0.62-1.77c0-0.21,0-0.41,0-0.69c0.02-0.2,0.02-0.41,0-0.61c0.24-0.02,0.47-0.02,0.71,0\nc0,0,1.29-0.1,1.6,0.57c0.35-0.32,0.86-0.78,0.86-1.27c0-0.33-0.16-0.71-0.83-0.71c-0.25,0-1,0.16-1.7,0.16\nc0.48-0.84,1.04-1.64,1.66-2.39c0.1,0.39,0.31,0.74,0.62,1c0.12-1.17,0.54-2.28,1.21-3.24c0.16,0.93,0.24,1.87,0.23,2.82\nc0,3.55-0.85,6.17-2.66,6.67c0.26,0.46,0.73,0.75,1.25,0.78c0.66,0,1-0.75,1.39-1.46c0.19,0.53,0.72,1.8,1.25,1.8\ns1.06-1.27,1.25-1.8c0.37,0.71,0.73,1.46,1.39,1.46c0.52-0.03,1-0.33,1.26-0.78c-1.82-0.5-2.67-3.12-2.67-6.67\nc-0.01-0.95,0.07-1.89,0.23-2.82c0.68,0.96,1.1,2.07,1.21,3.24c0.31-0.26,0.53-0.61,0.63-1c0.61,0.75,1.15,1.54,1.62,2.38\nc-0.66,0-1.45-0.16-1.7-0.16c-0.67,0-0.82,0.38-0.82,0.71c0,0.49,0.51,1,0.86,1.27c0.3-0.67,1.59-0.57,1.59-0.57\nc0.24-0.02,0.47-0.02,0.71,0c-0.02,0.2-0.02,0.41,0,0.61v0.69c0.11,0.66-0.12,1.33-0.62,1.77c0.25,0.19,0.55,0.3,0.86,0.31\nc0.91,0,1-0.65,1-2.08c0.01-0.1,0.01-0.2,0-0.3c0.52,0.47,0.87,1.11,1,1.8c0.02,0.14,0.02,0.28,0,0.42\nc0.61-0.11,1.06-0.62,1.12-1.23c0-0.74-1.15-1.67-1.52-2.08h0.13c1.25,0,1.5,0.42,1.63,0.73c0.4-0.35,0.63-0.85,0.62-1.38\nc0-0.35-0.07-0.75-0.75-0.75c-0.78,0.02-1.55,0.09-2.32,0.22c-0.76-1.02-1.43-2.1-2-3.23c0.3,0.04,0.6,0.06,0.9,0.05\nc0.19,0.01,0.39-0.02,0.57-0.08c-2.07-1.79-3.8-4.12-3.8-6.76c0.02-0.44,0.1-0.88,0.24-1.3h0.16l5.24,8.39\nc1.57,2.48,2.8,2.43,4.65,2.43c-1.19-0.97-2.21-2.14-3-3.45l-4.92-7.87c0.27-0.08,0.53-0.18,0.79-0.28l4.35,7\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.14-3-3.45l-4.23-6.77c0.24-0.13,0.48-0.27,0.7-0.41l3.42,5.55\nc1.57,2.49,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.13-3-3.45l-3.55-5.69c0.2-0.18,0.4-0.38,0.59-0.58l2.52,4\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.2-0.97-2.21-2.14-3-3.46l-2.99-4.7c0.16-0.29,0.29-0.59,0.4-0.9L31.25,12.23z"}),m=class{constructor(n){c(this,n),this._org=void 0,this.state={_org:t["Informationstechnikzentrum Bund"]}}validateOrg(c){"string"==typeof c&&d.has(c)?l(this,"_org",c):s(`Die verwendete Abkürzung (${c}) ist nicht definiert!`)}componentWillLoad(){this.validateOrg(this._org)}render(){var c;return n("svg",{"aria-label":r("kol-logo-description",{placeholders:{orgShort:this.state._org,orgLong:p(this.state._org)}}),role:"img",viewBox:"0 0 225 100"},n("rect",{width:"100%",height:"100%",fill:"white"}),n("svg",{x:"0",y:"4",height:"75"},n(g,null)),n("svg",{x:"40.5",y:"3.5",height:"100"},n("rect",{width:"5",height:"30"}),n("rect",{y:"30",width:"5",height:"30",fill:"red"}),n("rect",{y:"60",width:"5",height:"30",fill:"#fc0"})),n("svg",{x:"50",y:"0"},n("text",{x:"0",y:"-0.05em","font-family":"BundesSans Web",style:{backgroundColor:"white",color:"black"}},o.has(this.state._org)?n("tspan",null,null===(c=o.get(this.state._org))||void 0===c?void 0:c.map(((c,t)=>n("tspan",{x:"0",dy:"1.1em",key:`kol-logo-text-${t}`},c)))):n("tspan",{fill:"red"},n("tspan",{x:"0",dy:"1.1em"},"Der Schlüsselwert"),n("tspan",{x:"0",dy:"1.1em","font-weight":"bold"},"'",this.state._org,"'"),n("tspan",{x:"0",dy:"1.1em"},"ist nicht definiert."),n("tspan",{x:"0",dy:"1.1em"},"oder freigegeben.")))))}static get watchers(){return{_org:["validateOrg"]}}};m.style={default:a};export{m as kol_logo};
4
+ import{r as t,h as n}from"./index-0bc40dc4.js";import{d as e,B as c,b as i,f as l}from"./bund-056aa89a.js";import{a as o}from"./i18n-99b63f3a.js";import{d as s}from"./a11y.tipps-68791110.js";import{s as r}from"./prop.validators-3fb6bedf.js";import"./index-a4b1e92f.js";import"./dev.utils-8202a1bc.js";import"./reuse-b3566e4c.js";const a="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\ttext {\n\t\tfont-size: 16px;\n\t\tletter-spacing: normal;\n\t\tword-spacing: normal;\n\t}\n\n\tsvg {\n\t\tmax-height: 100%;\n\t}\n}\n";function h(t,n=new Map){return Object.entries(t).map((([t,e])=>{n.set(e,t)})),n}const d=h(i,h(e,h(c)));function p(t){return d.has(t)?d.get(t):""}const m=()=>n("path",{d:"M21.72,12.77c0.04-0.33,0.06-0.67,0.06-1c0-0.2,0-0.43,0-0.69c3.06,0,5.74-2.25,5.74-4.78\nc-0.09-1.07-0.56-2.08-1.32-2.84l0.32-0.07c1,0.89,1.61,2.14,1.7,3.48c0,3-3,5.85-6.5,5.92 M18.64,2.21\nc-0.05-0.33-0.19-0.64-0.39-0.91c0-0.31,0.14-0.61,0.64-0.36c-0.27,0.27-0.06,0.76-0.06,0.76s0.55-0.26,0.44-0.62\nC20.09,1.28,19.5,2.38,18.64,2.21 M17.93,3.77c-0.12-0.47-0.34-0.9-0.64-1.27c-0.3-0.42-0.77-0.69-1.29-0.73\nc-0.34,0.03-0.68,0.12-1,0.25c-0.16-0.28-0.27-0.58-0.32-0.9c0-0.22,0.38-0.44,1.1-0.44c1.58,0,2.52,0.71,2.52,1.91\nC18.26,3.01,18.14,3.41,17.93,3.77 M22,24.16c0.13,0,0.26,0.02,0.38,0.07c0.64,1.3,1.4,2.53,2.29,3.68l0,0l0,0\nc0.81-0.14,1.63-0.22,2.45-0.24l0,0c0.1-0.01,0.2,0.01,0.28,0.07c0.07,0.09,0.1,0.2,0.09,0.31c-0.01,0.28-0.08,0.55-0.21,0.79\nc-0.46-0.4-1.07-0.59-1.68-0.51c-0.24,0.01-0.48,0.05-0.71,0.12h-0.07h-0.07l0.48,0.49c0.77,0.83,1.44,1.43,1.44,1.83\nc-0.04,0.31-0.22,0.58-0.48,0.74c-0.22-0.98-0.8-1.84-1.62-2.42h-0.06v0.27c0,0.19,0,0.47,0,0.77c0,1.49-0.15,1.72-0.67,1.72\nc-0.09,0.01-0.19,0.01-0.28,0c0.33-0.49,0.48-1.08,0.41-1.67v-0.7c0-0.27,0.03-0.53,0.06-0.8v-0.11h-0.08\nc-0.33-0.05-0.67-0.09-1-0.1c-0.57-0.07-1.14,0.07-1.6,0.41c-0.24-0.18-0.41-0.44-0.48-0.73c0-0.32,0.19-0.34,0.45-0.34\nc0.14-0.01,0.27-0.01,0.41,0c0.59,0.09,1.18,0.13,1.78,0.12h0.06v-0.06c-0.5-1.13-1.18-2.17-2-3.09c0.1-0.35,0.2-0.59,0.54-0.59\nM12.64,27.87v0.06h0.06c0.55-0.01,1.1-0.06,1.64-0.16c0.14-0.01,0.27-0.01,0.41,0c0.26,0,0.45,0,0.45,0.34\nc-0.07,0.29-0.24,0.55-0.48,0.73c-0.46-0.34-1.03-0.49-1.6-0.41c-0.33,0.01-0.67,0.05-1,0.1H12v0.11\nc0.03,0.27,0.06,0.53,0.06,0.8v0.7c-0.05,0.58,0.1,1.15,0.42,1.63c-0.09,0.01-0.19,0.01-0.28,0c-0.52,0-0.67-0.23-0.67-1.72\nc0-0.3,0-0.58,0-0.77V29l-0.06,0.05c-0.82,0.58-1.39,1.44-1.61,2.42c-0.28-0.14-0.47-0.4-0.53-0.7c0-0.43,0.65-1.07,1.39-1.81\nl0.43-0.43v-0.06h-0.14c-0.23-0.07-0.47-0.11-0.71-0.12c-0.61-0.08-1.22,0.11-1.68,0.51c-0.13-0.24-0.2-0.51-0.21-0.79\nc0.01-0.11,0.06-0.22,0.14-0.3c0.08-0.06,0.18-0.08,0.28-0.07l0,0c0.82,0.02,1.64,0.1,2.45,0.24l0,0l0,0\nc0.88-1.15,1.64-2.38,2.28-3.68c0.12-0.05,0.25-0.07,0.38-0.07c0.35,0,0.44,0.24,0.54,0.59c-0.82,0.92-1.5,1.96-2,3.09\nM7.78,6.87c0.08-1.36,0.7-2.62,1.72-3.52l0.32,0.07C9.06,4.19,8.6,5.19,8.51,6.26c0,2.56,2.73,4.78,5.82,4.78\nc0,0.22,0,0.45,0,0.69c-0.01,0.35,0,0.69,0.03,1.04c-3.5,0-6.58-2.86-6.58-5.92 M31.25,12.23c1.57,2.49,2.8,2.45,4.66,2.45\nc-1.19-0.97-2.21-2.14-3-3.46L30,6.65c-0.29-1.44-1.03-2.75-2.12-3.73c0.31-0.1,0.6-0.24,0.87-0.42c-1.88,0-3.73-1-4.75-1\nc-0.55-0.05-1.03,0.36-1.08,0.91c0,0.58,0.63,1.16,1.73,1.16c0.31,0,0.62-0.04,0.92-0.09c0.65,0.74,1.03,1.67,1.08,2.65\nc0,2-2.41,3.58-4.83,3.58h-0.41c-0.5-0.67-0.84-1.45-1-2.28c0-1.6,1.05-2.9,1.05-4.48c0-0.68-0.24-1.33-0.67-1.85\nc0.29-0.23,0.53-0.52,0.7-0.85c-0.22,0.08-0.45,0.11-0.68,0.09c-1.16,0-2.11-0.3-3-0.3c-0.53,0-0.67,0.16-0.67,0.31\nc-0.01,0.05-0.01,0.1,0,0.15c-0.19-0.08-0.39-0.13-0.59-0.17c-0.29-0.05-0.58-0.08-0.88-0.08c-1.13,0-1.52,0.47-1.52,0.87\nc0.07,0.52,0.27,1.01,0.57,1.44c0.4-0.2,0.84-0.31,1.28-0.34c0.6,0,1.13,0.57,1.41,1.24c-0.29,0.05-0.59,0.07-0.88,0.07\nc-0.68-0.03-1.36-0.16-2-0.39l0,0c0,0,0.31,0.56,0.92,0.78c0.72,0.22,1.46,0.37,2.21,0.45c-0.08,0.21-0.23,0.38-0.43,0.49\nc-0.05,0.02-0.09,0.02-0.14,0c-0.74-0.14-1.45-0.35-2.14-0.65H14.9c0,0.42,1.09,1.35,2.07,1.71c-1.06,1.1-1.87,2.41-2.39,3.85\nh-0.41c-2.42,0-4.82-1.57-4.82-3.58c0.05-0.98,0.43-1.91,1.07-2.65c0.3,0.05,0.61,0.09,0.92,0.09c1.1,0,1.69-0.58,1.74-1.16\nc-0.04-0.55-0.52-0.96-1.07-0.92c0,0,0,0-0.01,0c-1,0-2.88,1-4.76,1C7.51,2.73,7.8,2.87,8.11,2.97C7.03,3.94,6.29,5.23,6,6.65\nl-2.87,4.59c-0.79,1.32-1.81,2.49-3,3.46c1.86,0,3.09,0,4.66-2.45L6.26,9.9c0.11,0.31,0.24,0.61,0.4,0.9l-2.97,4.67\nc-0.79,1.32-1.8,2.49-3,3.46c1.85,0,3.08,0,4.65-2.44l2.52-4c0.19,0.2,0.39,0.4,0.6,0.58l-3.59,5.7c-0.79,1.32-1.8,2.49-3,3.45\nc1.85,0,3.08,0.05,4.65-2.44L10,14.2c0.22,0.14,0.46,0.28,0.7,0.41l-4.27,6.77c-0.79,1.31-1.81,2.48-3,3.45\nc1.85,0,3.08,0,4.65-2.44l4.36-7c0.25,0.1,0.51,0.2,0.78,0.28l-4.95,7.9c-0.79,1.31-1.81,2.48-3,3.45c1.85,0,3.08,0.05,4.65-2.43\nl5.24-8.39h0.16c0.14,0.42,0.22,0.86,0.24,1.3c0,2.64-1.73,5-3.8,6.76c0.19,0.06,0.38,0.09,0.58,0.08c0.3,0.01,0.6-0.01,0.9-0.05\nc-0.57,1.13-1.24,2.21-2,3.23c-0.77-0.13-1.54-0.2-2.32-0.22c-0.67,0-0.75,0.4-0.75,0.75c-0.01,0.53,0.22,1.03,0.62,1.38\nc0.13-0.31,0.38-0.73,1.63-0.73h0.13C10.11,29.13,9,30.06,9,30.77c0.06,0.66,0.59,1.18,1.25,1.24c-0.02-0.14-0.02-0.28,0-0.42\nc0.13-0.69,0.48-1.33,1-1.8c-0.01,0.1-0.01,0.2,0,0.3c0,1.43,0.13,2.08,1,2.08c0.31-0.01,0.61-0.12,0.86-0.31\nc-0.5-0.44-0.73-1.11-0.62-1.77c0-0.21,0-0.41,0-0.69c0.02-0.2,0.02-0.41,0-0.61c0.24-0.02,0.47-0.02,0.71,0\nc0,0,1.29-0.1,1.6,0.57c0.35-0.32,0.86-0.78,0.86-1.27c0-0.33-0.16-0.71-0.83-0.71c-0.25,0-1,0.16-1.7,0.16\nc0.48-0.84,1.04-1.64,1.66-2.39c0.1,0.39,0.31,0.74,0.62,1c0.12-1.17,0.54-2.28,1.21-3.24c0.16,0.93,0.24,1.87,0.23,2.82\nc0,3.55-0.85,6.17-2.66,6.67c0.26,0.46,0.73,0.75,1.25,0.78c0.66,0,1-0.75,1.39-1.46c0.19,0.53,0.72,1.8,1.25,1.8\ns1.06-1.27,1.25-1.8c0.37,0.71,0.73,1.46,1.39,1.46c0.52-0.03,1-0.33,1.26-0.78c-1.82-0.5-2.67-3.12-2.67-6.67\nc-0.01-0.95,0.07-1.89,0.23-2.82c0.68,0.96,1.1,2.07,1.21,3.24c0.31-0.26,0.53-0.61,0.63-1c0.61,0.75,1.15,1.54,1.62,2.38\nc-0.66,0-1.45-0.16-1.7-0.16c-0.67,0-0.82,0.38-0.82,0.71c0,0.49,0.51,1,0.86,1.27c0.3-0.67,1.59-0.57,1.59-0.57\nc0.24-0.02,0.47-0.02,0.71,0c-0.02,0.2-0.02,0.41,0,0.61v0.69c0.11,0.66-0.12,1.33-0.62,1.77c0.25,0.19,0.55,0.3,0.86,0.31\nc0.91,0,1-0.65,1-2.08c0.01-0.1,0.01-0.2,0-0.3c0.52,0.47,0.87,1.11,1,1.8c0.02,0.14,0.02,0.28,0,0.42\nc0.61-0.11,1.06-0.62,1.12-1.23c0-0.74-1.15-1.67-1.52-2.08h0.13c1.25,0,1.5,0.42,1.63,0.73c0.4-0.35,0.63-0.85,0.62-1.38\nc0-0.35-0.07-0.75-0.75-0.75c-0.78,0.02-1.55,0.09-2.32,0.22c-0.76-1.02-1.43-2.1-2-3.23c0.3,0.04,0.6,0.06,0.9,0.05\nc0.19,0.01,0.39-0.02,0.57-0.08c-2.07-1.79-3.8-4.12-3.8-6.76c0.02-0.44,0.1-0.88,0.24-1.3h0.16l5.24,8.39\nc1.57,2.48,2.8,2.43,4.65,2.43c-1.19-0.97-2.21-2.14-3-3.45l-4.92-7.87c0.27-0.08,0.53-0.18,0.79-0.28l4.35,7\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.14-3-3.45l-4.23-6.77c0.24-0.13,0.48-0.27,0.7-0.41l3.42,5.55\nc1.57,2.49,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.13-3-3.45l-3.55-5.69c0.2-0.18,0.4-0.38,0.59-0.58l2.52,4\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.2-0.97-2.21-2.14-3-3.46l-2.99-4.7c0.16-0.29,0.29-0.59,0.4-0.9L31.25,12.23z"}),f=class{constructor(n){t(this,n),this._org=void 0,this.state={_org:e["Informationstechnikzentrum Bund"]}}validateOrg(t){"string"==typeof t&&d.has(t)?r(this,"_org",t):s(`Die verwendete Abkürzung (${t}) ist nicht definiert!`)}componentWillLoad(){this.validateOrg(this._org)}render(){var t;return n("svg",{"aria-label":o("kol-logo-description",{placeholders:{orgShort:this.state._org,orgLong:p(this.state._org)}}),role:"img",viewBox:"0 0 225 100"},n("rect",{width:"100%",height:"100%",fill:"white"}),n("svg",{x:"0",y:"4",height:"75"},n(m,null)),n("svg",{x:"40.5",y:"3.5",height:"100"},n("rect",{width:"5",height:"30"}),n("rect",{y:"30",width:"5",height:"30",fill:"red"}),n("rect",{y:"60",width:"5",height:"30",fill:"#fc0"})),n("svg",{x:"50",y:"0"},n("text",{x:"0",y:"-0.05em","font-family":"BundesSans Web",style:{backgroundColor:"white",color:"black"}},l.has(this.state._org)?n("tspan",null,null===(t=l.get(this.state._org))||void 0===t?void 0:t.map(((t,e)=>n("tspan",{x:"0",dy:"1.1em",key:`kol-logo-text-${e}`},t)))):n("tspan",{fill:"red"},n("tspan",{x:"0",dy:"1.1em"},"Der Schlüsselwert"),n("tspan",{x:"0",dy:"1.1em","font-weight":"bold"},"'",this.state._org,"'"),n("tspan",{x:"0",dy:"1.1em"},"ist nicht definiert."),n("tspan",{x:"0",dy:"1.1em"},"oder freigegeben.")))))}static get watchers(){return{_org:["validateOrg"]}}};f.style={default:a};export{f as kol_logo};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","enumToArray","enumeration","enumAsMap","Map","Object","entries","map","key","value","set","ENUM_AS_MAP","Bundesamt","Bundesanstalt","Bundesministerium","getAriaLabel","organ","has","get","Adler","h","d","KolLogo","_org","validateOrg","setState","this","devHint","componentWillLoad","render","translate","placeholders","orgShort","state","orgLong","role","viewBox","width","height","fill","x","y","style","backgroundColor","color","BUND_LOGO_TEXT_MAP","_a","text","index","dy"],"sources":["src/components/logo/style.css?tag=kol-logo&mode=default&encapsulation=shadow","src/components/logo/component.tsx"],"sourcesContent":["@import url(../style.css);\n:host {\n\tdisplay: inline-block;\n}\ntext {\n\tfont-size: 16px;\n\tletter-spacing: normal;\n\tword-spacing: normal;\n}\nsvg {\n\tmax-height: 100%;\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { BUND_LOGO_TEXT_MAP, Bundesamt, Bundesanstalt, Bundesministerium } from '../../enums/bund';\nimport { translate } from '../../i18n';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { setState } from '../../utils/prop.validators';\nimport { API, States } from './types';\n\nfunction enumToArray(enumeration: Record<string, string>, enumAsMap: Map<string, string> = new Map()): Map<string, string> {\n\tObject.entries(enumeration).map(([key, value]) => {\n\t\tenumAsMap.set(value, key);\n\t});\n\treturn enumAsMap;\n}\n\nconst ENUM_AS_MAP = enumToArray(Bundesamt, enumToArray(Bundesanstalt, enumToArray(Bundesministerium)));\n\nfunction getAriaLabel(organ: string): string {\n\tif (ENUM_AS_MAP.has(organ)) {\n\t\treturn ENUM_AS_MAP.get(organ) as string;\n\t} else {\n\t\treturn '';\n\t}\n}\n\nconst Adler = (): JSX.Element => (\n\t<path\n\t\td=\"M21.72,12.77c0.04-0.33,0.06-0.67,0.06-1c0-0.2,0-0.43,0-0.69c3.06,0,5.74-2.25,5.74-4.78\nc-0.09-1.07-0.56-2.08-1.32-2.84l0.32-0.07c1,0.89,1.61,2.14,1.7,3.48c0,3-3,5.85-6.5,5.92 M18.64,2.21\nc-0.05-0.33-0.19-0.64-0.39-0.91c0-0.31,0.14-0.61,0.64-0.36c-0.27,0.27-0.06,0.76-0.06,0.76s0.55-0.26,0.44-0.62\nC20.09,1.28,19.5,2.38,18.64,2.21 M17.93,3.77c-0.12-0.47-0.34-0.9-0.64-1.27c-0.3-0.42-0.77-0.69-1.29-0.73\nc-0.34,0.03-0.68,0.12-1,0.25c-0.16-0.28-0.27-0.58-0.32-0.9c0-0.22,0.38-0.44,1.1-0.44c1.58,0,2.52,0.71,2.52,1.91\nC18.26,3.01,18.14,3.41,17.93,3.77 M22,24.16c0.13,0,0.26,0.02,0.38,0.07c0.64,1.3,1.4,2.53,2.29,3.68l0,0l0,0\nc0.81-0.14,1.63-0.22,2.45-0.24l0,0c0.1-0.01,0.2,0.01,0.28,0.07c0.07,0.09,0.1,0.2,0.09,0.31c-0.01,0.28-0.08,0.55-0.21,0.79\nc-0.46-0.4-1.07-0.59-1.68-0.51c-0.24,0.01-0.48,0.05-0.71,0.12h-0.07h-0.07l0.48,0.49c0.77,0.83,1.44,1.43,1.44,1.83\nc-0.04,0.31-0.22,0.58-0.48,0.74c-0.22-0.98-0.8-1.84-1.62-2.42h-0.06v0.27c0,0.19,0,0.47,0,0.77c0,1.49-0.15,1.72-0.67,1.72\nc-0.09,0.01-0.19,0.01-0.28,0c0.33-0.49,0.48-1.08,0.41-1.67v-0.7c0-0.27,0.03-0.53,0.06-0.8v-0.11h-0.08\nc-0.33-0.05-0.67-0.09-1-0.1c-0.57-0.07-1.14,0.07-1.6,0.41c-0.24-0.18-0.41-0.44-0.48-0.73c0-0.32,0.19-0.34,0.45-0.34\nc0.14-0.01,0.27-0.01,0.41,0c0.59,0.09,1.18,0.13,1.78,0.12h0.06v-0.06c-0.5-1.13-1.18-2.17-2-3.09c0.1-0.35,0.2-0.59,0.54-0.59\nM12.64,27.87v0.06h0.06c0.55-0.01,1.1-0.06,1.64-0.16c0.14-0.01,0.27-0.01,0.41,0c0.26,0,0.45,0,0.45,0.34\nc-0.07,0.29-0.24,0.55-0.48,0.73c-0.46-0.34-1.03-0.49-1.6-0.41c-0.33,0.01-0.67,0.05-1,0.1H12v0.11\nc0.03,0.27,0.06,0.53,0.06,0.8v0.7c-0.05,0.58,0.1,1.15,0.42,1.63c-0.09,0.01-0.19,0.01-0.28,0c-0.52,0-0.67-0.23-0.67-1.72\nc0-0.3,0-0.58,0-0.77V29l-0.06,0.05c-0.82,0.58-1.39,1.44-1.61,2.42c-0.28-0.14-0.47-0.4-0.53-0.7c0-0.43,0.65-1.07,1.39-1.81\nl0.43-0.43v-0.06h-0.14c-0.23-0.07-0.47-0.11-0.71-0.12c-0.61-0.08-1.22,0.11-1.68,0.51c-0.13-0.24-0.2-0.51-0.21-0.79\nc0.01-0.11,0.06-0.22,0.14-0.3c0.08-0.06,0.18-0.08,0.28-0.07l0,0c0.82,0.02,1.64,0.1,2.45,0.24l0,0l0,0\nc0.88-1.15,1.64-2.38,2.28-3.68c0.12-0.05,0.25-0.07,0.38-0.07c0.35,0,0.44,0.24,0.54,0.59c-0.82,0.92-1.5,1.96-2,3.09\nM7.78,6.87c0.08-1.36,0.7-2.62,1.72-3.52l0.32,0.07C9.06,4.19,8.6,5.19,8.51,6.26c0,2.56,2.73,4.78,5.82,4.78\nc0,0.22,0,0.45,0,0.69c-0.01,0.35,0,0.69,0.03,1.04c-3.5,0-6.58-2.86-6.58-5.92 M31.25,12.23c1.57,2.49,2.8,2.45,4.66,2.45\nc-1.19-0.97-2.21-2.14-3-3.46L30,6.65c-0.29-1.44-1.03-2.75-2.12-3.73c0.31-0.1,0.6-0.24,0.87-0.42c-1.88,0-3.73-1-4.75-1\nc-0.55-0.05-1.03,0.36-1.08,0.91c0,0.58,0.63,1.16,1.73,1.16c0.31,0,0.62-0.04,0.92-0.09c0.65,0.74,1.03,1.67,1.08,2.65\nc0,2-2.41,3.58-4.83,3.58h-0.41c-0.5-0.67-0.84-1.45-1-2.28c0-1.6,1.05-2.9,1.05-4.48c0-0.68-0.24-1.33-0.67-1.85\nc0.29-0.23,0.53-0.52,0.7-0.85c-0.22,0.08-0.45,0.11-0.68,0.09c-1.16,0-2.11-0.3-3-0.3c-0.53,0-0.67,0.16-0.67,0.31\nc-0.01,0.05-0.01,0.1,0,0.15c-0.19-0.08-0.39-0.13-0.59-0.17c-0.29-0.05-0.58-0.08-0.88-0.08c-1.13,0-1.52,0.47-1.52,0.87\nc0.07,0.52,0.27,1.01,0.57,1.44c0.4-0.2,0.84-0.31,1.28-0.34c0.6,0,1.13,0.57,1.41,1.24c-0.29,0.05-0.59,0.07-0.88,0.07\nc-0.68-0.03-1.36-0.16-2-0.39l0,0c0,0,0.31,0.56,0.92,0.78c0.72,0.22,1.46,0.37,2.21,0.45c-0.08,0.21-0.23,0.38-0.43,0.49\nc-0.05,0.02-0.09,0.02-0.14,0c-0.74-0.14-1.45-0.35-2.14-0.65H14.9c0,0.42,1.09,1.35,2.07,1.71c-1.06,1.1-1.87,2.41-2.39,3.85\nh-0.41c-2.42,0-4.82-1.57-4.82-3.58c0.05-0.98,0.43-1.91,1.07-2.65c0.3,0.05,0.61,0.09,0.92,0.09c1.1,0,1.69-0.58,1.74-1.16\nc-0.04-0.55-0.52-0.96-1.07-0.92c0,0,0,0-0.01,0c-1,0-2.88,1-4.76,1C7.51,2.73,7.8,2.87,8.11,2.97C7.03,3.94,6.29,5.23,6,6.65\nl-2.87,4.59c-0.79,1.32-1.81,2.49-3,3.46c1.86,0,3.09,0,4.66-2.45L6.26,9.9c0.11,0.31,0.24,0.61,0.4,0.9l-2.97,4.67\nc-0.79,1.32-1.8,2.49-3,3.46c1.85,0,3.08,0,4.65-2.44l2.52-4c0.19,0.2,0.39,0.4,0.6,0.58l-3.59,5.7c-0.79,1.32-1.8,2.49-3,3.45\nc1.85,0,3.08,0.05,4.65-2.44L10,14.2c0.22,0.14,0.46,0.28,0.7,0.41l-4.27,6.77c-0.79,1.31-1.81,2.48-3,3.45\nc1.85,0,3.08,0,4.65-2.44l4.36-7c0.25,0.1,0.51,0.2,0.78,0.28l-4.95,7.9c-0.79,1.31-1.81,2.48-3,3.45c1.85,0,3.08,0.05,4.65-2.43\nl5.24-8.39h0.16c0.14,0.42,0.22,0.86,0.24,1.3c0,2.64-1.73,5-3.8,6.76c0.19,0.06,0.38,0.09,0.58,0.08c0.3,0.01,0.6-0.01,0.9-0.05\nc-0.57,1.13-1.24,2.21-2,3.23c-0.77-0.13-1.54-0.2-2.32-0.22c-0.67,0-0.75,0.4-0.75,0.75c-0.01,0.53,0.22,1.03,0.62,1.38\nc0.13-0.31,0.38-0.73,1.63-0.73h0.13C10.11,29.13,9,30.06,9,30.77c0.06,0.66,0.59,1.18,1.25,1.24c-0.02-0.14-0.02-0.28,0-0.42\nc0.13-0.69,0.48-1.33,1-1.8c-0.01,0.1-0.01,0.2,0,0.3c0,1.43,0.13,2.08,1,2.08c0.31-0.01,0.61-0.12,0.86-0.31\nc-0.5-0.44-0.73-1.11-0.62-1.77c0-0.21,0-0.41,0-0.69c0.02-0.2,0.02-0.41,0-0.61c0.24-0.02,0.47-0.02,0.71,0\nc0,0,1.29-0.1,1.6,0.57c0.35-0.32,0.86-0.78,0.86-1.27c0-0.33-0.16-0.71-0.83-0.71c-0.25,0-1,0.16-1.7,0.16\nc0.48-0.84,1.04-1.64,1.66-2.39c0.1,0.39,0.31,0.74,0.62,1c0.12-1.17,0.54-2.28,1.21-3.24c0.16,0.93,0.24,1.87,0.23,2.82\nc0,3.55-0.85,6.17-2.66,6.67c0.26,0.46,0.73,0.75,1.25,0.78c0.66,0,1-0.75,1.39-1.46c0.19,0.53,0.72,1.8,1.25,1.8\ns1.06-1.27,1.25-1.8c0.37,0.71,0.73,1.46,1.39,1.46c0.52-0.03,1-0.33,1.26-0.78c-1.82-0.5-2.67-3.12-2.67-6.67\nc-0.01-0.95,0.07-1.89,0.23-2.82c0.68,0.96,1.1,2.07,1.21,3.24c0.31-0.26,0.53-0.61,0.63-1c0.61,0.75,1.15,1.54,1.62,2.38\nc-0.66,0-1.45-0.16-1.7-0.16c-0.67,0-0.82,0.38-0.82,0.71c0,0.49,0.51,1,0.86,1.27c0.3-0.67,1.59-0.57,1.59-0.57\nc0.24-0.02,0.47-0.02,0.71,0c-0.02,0.2-0.02,0.41,0,0.61v0.69c0.11,0.66-0.12,1.33-0.62,1.77c0.25,0.19,0.55,0.3,0.86,0.31\nc0.91,0,1-0.65,1-2.08c0.01-0.1,0.01-0.2,0-0.3c0.52,0.47,0.87,1.11,1,1.8c0.02,0.14,0.02,0.28,0,0.42\nc0.61-0.11,1.06-0.62,1.12-1.23c0-0.74-1.15-1.67-1.52-2.08h0.13c1.25,0,1.5,0.42,1.63,0.73c0.4-0.35,0.63-0.85,0.62-1.38\nc0-0.35-0.07-0.75-0.75-0.75c-0.78,0.02-1.55,0.09-2.32,0.22c-0.76-1.02-1.43-2.1-2-3.23c0.3,0.04,0.6,0.06,0.9,0.05\nc0.19,0.01,0.39-0.02,0.57-0.08c-2.07-1.79-3.8-4.12-3.8-6.76c0.02-0.44,0.1-0.88,0.24-1.3h0.16l5.24,8.39\nc1.57,2.48,2.8,2.43,4.65,2.43c-1.19-0.97-2.21-2.14-3-3.45l-4.92-7.87c0.27-0.08,0.53-0.18,0.79-0.28l4.35,7\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.14-3-3.45l-4.23-6.77c0.24-0.13,0.48-0.27,0.7-0.41l3.42,5.55\nc1.57,2.49,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.13-3-3.45l-3.55-5.69c0.2-0.18,0.4-0.38,0.59-0.58l2.52,4\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.2-0.97-2.21-2.14-3-3.46l-2.99-4.7c0.16-0.29,0.29-0.59,0.4-0.9L31.25,12.23z\"\n\t></path>\n);\n\n@Component({\n\ttag: 'kol-logo',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLogo implements API {\n\t/**\n\t * Gibt die Abkürzung eines Ministeriums, eines Amts oder einer Bundesanstalt an.\n\t */\n\t@Prop() public _org!: Bundesministerium | Bundesamt | Bundesanstalt;\n\n\t@State() public state: States = {\n\t\t_org: Bundesanstalt['Informationstechnikzentrum Bund'],\n\t};\n\n\t@Watch('_org')\n\tpublic validateOrg(value?: Bundesministerium | Bundesamt | Bundesanstalt): void {\n\t\tif (typeof value === 'string' && ENUM_AS_MAP.has(value)) {\n\t\t\tsetState(this, '_org', value);\n\t\t} else {\n\t\t\tdevHint(`Die verwendete Abkürzung (${value as string}) ist nicht definiert!`);\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOrg(this._org);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<svg\n\t\t\t\taria-label={translate('kol-logo-description', { placeholders: { orgShort: this.state._org, orgLong: getAriaLabel(this.state._org) } })}\n\t\t\t\trole=\"img\"\n\t\t\t\tviewBox=\"0 0 225 100\"\n\t\t\t>\n\t\t\t\t<rect width=\"100%\" height=\"100%\" fill=\"white\"></rect>\n\t\t\t\t<svg x=\"0\" y=\"4\" height=\"75\">\n\t\t\t\t\t<Adler />\n\t\t\t\t</svg>\n\t\t\t\t<svg x=\"40.5\" y=\"3.5\" height=\"100\">\n\t\t\t\t\t<rect width=\"5\" height=\"30\"></rect>\n\t\t\t\t\t<rect y=\"30\" width=\"5\" height=\"30\" fill=\"red\"></rect>\n\t\t\t\t\t<rect y=\"60\" width=\"5\" height=\"30\" fill=\"#fc0\"></rect>\n\t\t\t\t</svg>\n\t\t\t\t<svg x=\"50\" y=\"0\">\n\t\t\t\t\t<text x=\"0\" y=\"-0.05em\" font-family=\"BundesSans Web\" style={{ backgroundColor: 'white', color: 'black' }}>\n\t\t\t\t\t\t{BUND_LOGO_TEXT_MAP.has(this.state._org) ? (\n\t\t\t\t\t\t\t<tspan>\n\t\t\t\t\t\t\t\t{BUND_LOGO_TEXT_MAP.get(this.state._org)?.map((text: string, index: number) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\" key={`kol-logo-text-${index}`}>\n\t\t\t\t\t\t\t\t\t\t\t{text}\n\t\t\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<tspan fill=\"red\">\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\tDer Schlüsselwert\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\" font-weight=\"bold\">\n\t\t\t\t\t\t\t\t\t'{this.state._org}'\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\tist nicht definiert.\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\toder freigegeben.\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</text>\n\t\t\t\t</svg>\n\t\t\t</svg>\n\t\t);\n\t}\n}\n"],"mappings":";;;yUAAA,MAAMA,EAAkB,wzBCQxB,SAASC,EAAYC,EAAqCC,EAAiC,IAAIC,KAC9FC,OAAOC,QAAQJ,GAAaK,KAAI,EAAEC,EAAKC,MACtCN,EAAUO,IAAID,EAAOD,EAAI,IAE1B,OAAOL,CACR,CAEA,MAAMQ,EAAcV,EAAYW,EAAWX,EAAYY,EAAeZ,EAAYa,KAElF,SAASC,EAAaC,GACrB,GAAIL,EAAYM,IAAID,GAAQ,CAC3B,OAAOL,EAAYO,IAAIF,E,KACjB,CACN,MAAO,E,CAET,CAEA,MAAMG,EAAQ,IACbC,EAAA,QACCC,EAAE,slM,MAiESC,EAAO,M,wDAMa,CAC/BC,KAAMV,EAAc,mC,CAId,WAAAW,CAAYf,GAClB,UAAWA,IAAU,UAAYE,EAAYM,IAAIR,GAAQ,CACxDgB,EAASC,KAAM,OAAQjB,E,KACjB,CACNkB,EAAQ,6BAA6BlB,0B,EAIhC,iBAAAmB,GACNF,KAAKF,YAAYE,KAAKH,K,CAGhB,MAAAM,G,MACN,OACCT,EAAA,oBACaU,EAAU,uBAAwB,CAAEC,aAAc,CAAEC,SAAUN,KAAKO,MAAMV,KAAMW,QAASnB,EAAaW,KAAKO,MAAMV,SAC5HY,KAAK,MACLC,QAAQ,eAERhB,EAAA,QAAMiB,MAAM,OAAOC,OAAO,OAAOC,KAAK,UACtCnB,EAAA,OAAKoB,EAAE,IAAIC,EAAE,IAAIH,OAAO,MACvBlB,EAACD,EAAK,OAEPC,EAAA,OAAKoB,EAAE,OAAOC,EAAE,MAAMH,OAAO,OAC5BlB,EAAA,QAAMiB,MAAM,IAAIC,OAAO,OACvBlB,EAAA,QAAMqB,EAAE,KAAKJ,MAAM,IAAIC,OAAO,KAAKC,KAAK,QACxCnB,EAAA,QAAMqB,EAAE,KAAKJ,MAAM,IAAIC,OAAO,KAAKC,KAAK,UAEzCnB,EAAA,OAAKoB,EAAE,KAAKC,EAAE,KACbrB,EAAA,QAAMoB,EAAE,IAAIC,EAAE,UAAS,cAAa,iBAAiBC,MAAO,CAAEC,gBAAiB,QAASC,MAAO,UAC7FC,EAAmB5B,IAAIS,KAAKO,MAAMV,MAClCH,EAAA,cACE0B,EAAAD,EAAmB3B,IAAIQ,KAAKO,MAAMV,SAAK,MAAAuB,SAAA,SAAAA,EAAEvC,KAAI,CAACwC,EAAcC,IAE3D5B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,QAAQzC,IAAK,iBAAiBwC,KAC5CD,MAML3B,EAAA,SAAOmB,KAAK,OACXnB,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,qBAGvB7B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,QAAO,cAAa,QAAM,IACvCvB,KAAKO,MAAMV,KAAI,KAElBH,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,wBAGvB7B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,wB"}
1
+ {"version":3,"names":["defaultStyleCss","enumToArray","enumeration","enumAsMap","Map","Object","entries","map","key","value","set","ENUM_AS_MAP","Bundesamt","Bundesanstalt","Bundesministerium","getAriaLabel","organ","has","get","Adler","h","d","KolLogo","_org","validateOrg","setState","this","devHint","componentWillLoad","render","translate","placeholders","orgShort","state","orgLong","role","viewBox","width","height","fill","x","y","style","backgroundColor","color","BUND_LOGO_TEXT_MAP","_a","text","index","dy"],"sources":["src/components/logo/style.css?tag=kol-logo&mode=default&encapsulation=shadow","src/components/logo/component.tsx"],"sourcesContent":["@import url(../style.css);\n@layer kol-component {\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\ttext {\n\t\tfont-size: 16px;\n\t\tletter-spacing: normal;\n\t\tword-spacing: normal;\n\t}\n\n\tsvg {\n\t\tmax-height: 100%;\n\t}\n}\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { BUND_LOGO_TEXT_MAP, Bundesamt, Bundesanstalt, Bundesministerium } from '../../enums/bund';\nimport { translate } from '../../i18n';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { setState } from '../../utils/prop.validators';\nimport { API, States } from './types';\n\nfunction enumToArray(enumeration: Record<string, string>, enumAsMap: Map<string, string> = new Map()): Map<string, string> {\n\tObject.entries(enumeration).map(([key, value]) => {\n\t\tenumAsMap.set(value, key);\n\t});\n\treturn enumAsMap;\n}\n\nconst ENUM_AS_MAP = enumToArray(Bundesamt, enumToArray(Bundesanstalt, enumToArray(Bundesministerium)));\n\nfunction getAriaLabel(organ: string): string {\n\tif (ENUM_AS_MAP.has(organ)) {\n\t\treturn ENUM_AS_MAP.get(organ) as string;\n\t} else {\n\t\treturn '';\n\t}\n}\n\nconst Adler = (): JSX.Element => (\n\t<path\n\t\td=\"M21.72,12.77c0.04-0.33,0.06-0.67,0.06-1c0-0.2,0-0.43,0-0.69c3.06,0,5.74-2.25,5.74-4.78\nc-0.09-1.07-0.56-2.08-1.32-2.84l0.32-0.07c1,0.89,1.61,2.14,1.7,3.48c0,3-3,5.85-6.5,5.92 M18.64,2.21\nc-0.05-0.33-0.19-0.64-0.39-0.91c0-0.31,0.14-0.61,0.64-0.36c-0.27,0.27-0.06,0.76-0.06,0.76s0.55-0.26,0.44-0.62\nC20.09,1.28,19.5,2.38,18.64,2.21 M17.93,3.77c-0.12-0.47-0.34-0.9-0.64-1.27c-0.3-0.42-0.77-0.69-1.29-0.73\nc-0.34,0.03-0.68,0.12-1,0.25c-0.16-0.28-0.27-0.58-0.32-0.9c0-0.22,0.38-0.44,1.1-0.44c1.58,0,2.52,0.71,2.52,1.91\nC18.26,3.01,18.14,3.41,17.93,3.77 M22,24.16c0.13,0,0.26,0.02,0.38,0.07c0.64,1.3,1.4,2.53,2.29,3.68l0,0l0,0\nc0.81-0.14,1.63-0.22,2.45-0.24l0,0c0.1-0.01,0.2,0.01,0.28,0.07c0.07,0.09,0.1,0.2,0.09,0.31c-0.01,0.28-0.08,0.55-0.21,0.79\nc-0.46-0.4-1.07-0.59-1.68-0.51c-0.24,0.01-0.48,0.05-0.71,0.12h-0.07h-0.07l0.48,0.49c0.77,0.83,1.44,1.43,1.44,1.83\nc-0.04,0.31-0.22,0.58-0.48,0.74c-0.22-0.98-0.8-1.84-1.62-2.42h-0.06v0.27c0,0.19,0,0.47,0,0.77c0,1.49-0.15,1.72-0.67,1.72\nc-0.09,0.01-0.19,0.01-0.28,0c0.33-0.49,0.48-1.08,0.41-1.67v-0.7c0-0.27,0.03-0.53,0.06-0.8v-0.11h-0.08\nc-0.33-0.05-0.67-0.09-1-0.1c-0.57-0.07-1.14,0.07-1.6,0.41c-0.24-0.18-0.41-0.44-0.48-0.73c0-0.32,0.19-0.34,0.45-0.34\nc0.14-0.01,0.27-0.01,0.41,0c0.59,0.09,1.18,0.13,1.78,0.12h0.06v-0.06c-0.5-1.13-1.18-2.17-2-3.09c0.1-0.35,0.2-0.59,0.54-0.59\nM12.64,27.87v0.06h0.06c0.55-0.01,1.1-0.06,1.64-0.16c0.14-0.01,0.27-0.01,0.41,0c0.26,0,0.45,0,0.45,0.34\nc-0.07,0.29-0.24,0.55-0.48,0.73c-0.46-0.34-1.03-0.49-1.6-0.41c-0.33,0.01-0.67,0.05-1,0.1H12v0.11\nc0.03,0.27,0.06,0.53,0.06,0.8v0.7c-0.05,0.58,0.1,1.15,0.42,1.63c-0.09,0.01-0.19,0.01-0.28,0c-0.52,0-0.67-0.23-0.67-1.72\nc0-0.3,0-0.58,0-0.77V29l-0.06,0.05c-0.82,0.58-1.39,1.44-1.61,2.42c-0.28-0.14-0.47-0.4-0.53-0.7c0-0.43,0.65-1.07,1.39-1.81\nl0.43-0.43v-0.06h-0.14c-0.23-0.07-0.47-0.11-0.71-0.12c-0.61-0.08-1.22,0.11-1.68,0.51c-0.13-0.24-0.2-0.51-0.21-0.79\nc0.01-0.11,0.06-0.22,0.14-0.3c0.08-0.06,0.18-0.08,0.28-0.07l0,0c0.82,0.02,1.64,0.1,2.45,0.24l0,0l0,0\nc0.88-1.15,1.64-2.38,2.28-3.68c0.12-0.05,0.25-0.07,0.38-0.07c0.35,0,0.44,0.24,0.54,0.59c-0.82,0.92-1.5,1.96-2,3.09\nM7.78,6.87c0.08-1.36,0.7-2.62,1.72-3.52l0.32,0.07C9.06,4.19,8.6,5.19,8.51,6.26c0,2.56,2.73,4.78,5.82,4.78\nc0,0.22,0,0.45,0,0.69c-0.01,0.35,0,0.69,0.03,1.04c-3.5,0-6.58-2.86-6.58-5.92 M31.25,12.23c1.57,2.49,2.8,2.45,4.66,2.45\nc-1.19-0.97-2.21-2.14-3-3.46L30,6.65c-0.29-1.44-1.03-2.75-2.12-3.73c0.31-0.1,0.6-0.24,0.87-0.42c-1.88,0-3.73-1-4.75-1\nc-0.55-0.05-1.03,0.36-1.08,0.91c0,0.58,0.63,1.16,1.73,1.16c0.31,0,0.62-0.04,0.92-0.09c0.65,0.74,1.03,1.67,1.08,2.65\nc0,2-2.41,3.58-4.83,3.58h-0.41c-0.5-0.67-0.84-1.45-1-2.28c0-1.6,1.05-2.9,1.05-4.48c0-0.68-0.24-1.33-0.67-1.85\nc0.29-0.23,0.53-0.52,0.7-0.85c-0.22,0.08-0.45,0.11-0.68,0.09c-1.16,0-2.11-0.3-3-0.3c-0.53,0-0.67,0.16-0.67,0.31\nc-0.01,0.05-0.01,0.1,0,0.15c-0.19-0.08-0.39-0.13-0.59-0.17c-0.29-0.05-0.58-0.08-0.88-0.08c-1.13,0-1.52,0.47-1.52,0.87\nc0.07,0.52,0.27,1.01,0.57,1.44c0.4-0.2,0.84-0.31,1.28-0.34c0.6,0,1.13,0.57,1.41,1.24c-0.29,0.05-0.59,0.07-0.88,0.07\nc-0.68-0.03-1.36-0.16-2-0.39l0,0c0,0,0.31,0.56,0.92,0.78c0.72,0.22,1.46,0.37,2.21,0.45c-0.08,0.21-0.23,0.38-0.43,0.49\nc-0.05,0.02-0.09,0.02-0.14,0c-0.74-0.14-1.45-0.35-2.14-0.65H14.9c0,0.42,1.09,1.35,2.07,1.71c-1.06,1.1-1.87,2.41-2.39,3.85\nh-0.41c-2.42,0-4.82-1.57-4.82-3.58c0.05-0.98,0.43-1.91,1.07-2.65c0.3,0.05,0.61,0.09,0.92,0.09c1.1,0,1.69-0.58,1.74-1.16\nc-0.04-0.55-0.52-0.96-1.07-0.92c0,0,0,0-0.01,0c-1,0-2.88,1-4.76,1C7.51,2.73,7.8,2.87,8.11,2.97C7.03,3.94,6.29,5.23,6,6.65\nl-2.87,4.59c-0.79,1.32-1.81,2.49-3,3.46c1.86,0,3.09,0,4.66-2.45L6.26,9.9c0.11,0.31,0.24,0.61,0.4,0.9l-2.97,4.67\nc-0.79,1.32-1.8,2.49-3,3.46c1.85,0,3.08,0,4.65-2.44l2.52-4c0.19,0.2,0.39,0.4,0.6,0.58l-3.59,5.7c-0.79,1.32-1.8,2.49-3,3.45\nc1.85,0,3.08,0.05,4.65-2.44L10,14.2c0.22,0.14,0.46,0.28,0.7,0.41l-4.27,6.77c-0.79,1.31-1.81,2.48-3,3.45\nc1.85,0,3.08,0,4.65-2.44l4.36-7c0.25,0.1,0.51,0.2,0.78,0.28l-4.95,7.9c-0.79,1.31-1.81,2.48-3,3.45c1.85,0,3.08,0.05,4.65-2.43\nl5.24-8.39h0.16c0.14,0.42,0.22,0.86,0.24,1.3c0,2.64-1.73,5-3.8,6.76c0.19,0.06,0.38,0.09,0.58,0.08c0.3,0.01,0.6-0.01,0.9-0.05\nc-0.57,1.13-1.24,2.21-2,3.23c-0.77-0.13-1.54-0.2-2.32-0.22c-0.67,0-0.75,0.4-0.75,0.75c-0.01,0.53,0.22,1.03,0.62,1.38\nc0.13-0.31,0.38-0.73,1.63-0.73h0.13C10.11,29.13,9,30.06,9,30.77c0.06,0.66,0.59,1.18,1.25,1.24c-0.02-0.14-0.02-0.28,0-0.42\nc0.13-0.69,0.48-1.33,1-1.8c-0.01,0.1-0.01,0.2,0,0.3c0,1.43,0.13,2.08,1,2.08c0.31-0.01,0.61-0.12,0.86-0.31\nc-0.5-0.44-0.73-1.11-0.62-1.77c0-0.21,0-0.41,0-0.69c0.02-0.2,0.02-0.41,0-0.61c0.24-0.02,0.47-0.02,0.71,0\nc0,0,1.29-0.1,1.6,0.57c0.35-0.32,0.86-0.78,0.86-1.27c0-0.33-0.16-0.71-0.83-0.71c-0.25,0-1,0.16-1.7,0.16\nc0.48-0.84,1.04-1.64,1.66-2.39c0.1,0.39,0.31,0.74,0.62,1c0.12-1.17,0.54-2.28,1.21-3.24c0.16,0.93,0.24,1.87,0.23,2.82\nc0,3.55-0.85,6.17-2.66,6.67c0.26,0.46,0.73,0.75,1.25,0.78c0.66,0,1-0.75,1.39-1.46c0.19,0.53,0.72,1.8,1.25,1.8\ns1.06-1.27,1.25-1.8c0.37,0.71,0.73,1.46,1.39,1.46c0.52-0.03,1-0.33,1.26-0.78c-1.82-0.5-2.67-3.12-2.67-6.67\nc-0.01-0.95,0.07-1.89,0.23-2.82c0.68,0.96,1.1,2.07,1.21,3.24c0.31-0.26,0.53-0.61,0.63-1c0.61,0.75,1.15,1.54,1.62,2.38\nc-0.66,0-1.45-0.16-1.7-0.16c-0.67,0-0.82,0.38-0.82,0.71c0,0.49,0.51,1,0.86,1.27c0.3-0.67,1.59-0.57,1.59-0.57\nc0.24-0.02,0.47-0.02,0.71,0c-0.02,0.2-0.02,0.41,0,0.61v0.69c0.11,0.66-0.12,1.33-0.62,1.77c0.25,0.19,0.55,0.3,0.86,0.31\nc0.91,0,1-0.65,1-2.08c0.01-0.1,0.01-0.2,0-0.3c0.52,0.47,0.87,1.11,1,1.8c0.02,0.14,0.02,0.28,0,0.42\nc0.61-0.11,1.06-0.62,1.12-1.23c0-0.74-1.15-1.67-1.52-2.08h0.13c1.25,0,1.5,0.42,1.63,0.73c0.4-0.35,0.63-0.85,0.62-1.38\nc0-0.35-0.07-0.75-0.75-0.75c-0.78,0.02-1.55,0.09-2.32,0.22c-0.76-1.02-1.43-2.1-2-3.23c0.3,0.04,0.6,0.06,0.9,0.05\nc0.19,0.01,0.39-0.02,0.57-0.08c-2.07-1.79-3.8-4.12-3.8-6.76c0.02-0.44,0.1-0.88,0.24-1.3h0.16l5.24,8.39\nc1.57,2.48,2.8,2.43,4.65,2.43c-1.19-0.97-2.21-2.14-3-3.45l-4.92-7.87c0.27-0.08,0.53-0.18,0.79-0.28l4.35,7\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.14-3-3.45l-4.23-6.77c0.24-0.13,0.48-0.27,0.7-0.41l3.42,5.55\nc1.57,2.49,2.8,2.44,4.65,2.44c-1.19-0.97-2.21-2.13-3-3.45l-3.55-5.69c0.2-0.18,0.4-0.38,0.59-0.58l2.52,4\nc1.57,2.48,2.8,2.44,4.65,2.44c-1.2-0.97-2.21-2.14-3-3.46l-2.99-4.7c0.16-0.29,0.29-0.59,0.4-0.9L31.25,12.23z\"\n\t></path>\n);\n\n@Component({\n\ttag: 'kol-logo',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolLogo implements API {\n\t/**\n\t * Gibt die Abkürzung eines Ministeriums, eines Amts oder einer Bundesanstalt an.\n\t */\n\t@Prop() public _org!: Bundesministerium | Bundesamt | Bundesanstalt;\n\n\t@State() public state: States = {\n\t\t_org: Bundesanstalt['Informationstechnikzentrum Bund'],\n\t};\n\n\t@Watch('_org')\n\tpublic validateOrg(value?: Bundesministerium | Bundesamt | Bundesanstalt): void {\n\t\tif (typeof value === 'string' && ENUM_AS_MAP.has(value)) {\n\t\t\tsetState(this, '_org', value);\n\t\t} else {\n\t\t\tdevHint(`Die verwendete Abkürzung (${value as string}) ist nicht definiert!`);\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOrg(this._org);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<svg\n\t\t\t\taria-label={translate('kol-logo-description', { placeholders: { orgShort: this.state._org, orgLong: getAriaLabel(this.state._org) } })}\n\t\t\t\trole=\"img\"\n\t\t\t\tviewBox=\"0 0 225 100\"\n\t\t\t>\n\t\t\t\t<rect width=\"100%\" height=\"100%\" fill=\"white\"></rect>\n\t\t\t\t<svg x=\"0\" y=\"4\" height=\"75\">\n\t\t\t\t\t<Adler />\n\t\t\t\t</svg>\n\t\t\t\t<svg x=\"40.5\" y=\"3.5\" height=\"100\">\n\t\t\t\t\t<rect width=\"5\" height=\"30\"></rect>\n\t\t\t\t\t<rect y=\"30\" width=\"5\" height=\"30\" fill=\"red\"></rect>\n\t\t\t\t\t<rect y=\"60\" width=\"5\" height=\"30\" fill=\"#fc0\"></rect>\n\t\t\t\t</svg>\n\t\t\t\t<svg x=\"50\" y=\"0\">\n\t\t\t\t\t<text x=\"0\" y=\"-0.05em\" font-family=\"BundesSans Web\" style={{ backgroundColor: 'white', color: 'black' }}>\n\t\t\t\t\t\t{BUND_LOGO_TEXT_MAP.has(this.state._org) ? (\n\t\t\t\t\t\t\t<tspan>\n\t\t\t\t\t\t\t\t{BUND_LOGO_TEXT_MAP.get(this.state._org)?.map((text: string, index: number) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\" key={`kol-logo-text-${index}`}>\n\t\t\t\t\t\t\t\t\t\t\t{text}\n\t\t\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<tspan fill=\"red\">\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\tDer Schlüsselwert\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\" font-weight=\"bold\">\n\t\t\t\t\t\t\t\t\t'{this.state._org}'\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\tist nicht definiert.\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t\t<tspan x=\"0\" dy=\"1.1em\">\n\t\t\t\t\t\t\t\t\toder freigegeben.\n\t\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t\t</tspan>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</text>\n\t\t\t\t</svg>\n\t\t\t</svg>\n\t\t);\n\t}\n}\n"],"mappings":";;;yUAAA,MAAMA,EAAkB,27FCQxB,SAASC,EAAYC,EAAqCC,EAAiC,IAAIC,KAC9FC,OAAOC,QAAQJ,GAAaK,KAAI,EAAEC,EAAKC,MACtCN,EAAUO,IAAID,EAAOD,EAAI,IAE1B,OAAOL,CACR,CAEA,MAAMQ,EAAcV,EAAYW,EAAWX,EAAYY,EAAeZ,EAAYa,KAElF,SAASC,EAAaC,GACrB,GAAIL,EAAYM,IAAID,GAAQ,CAC3B,OAAOL,EAAYO,IAAIF,E,KACjB,CACN,MAAO,E,CAET,CAEA,MAAMG,EAAQ,IACbC,EAAA,QACCC,EAAE,slM,MAiESC,EAAO,M,wDAMa,CAC/BC,KAAMV,EAAc,mC,CAId,WAAAW,CAAYf,GAClB,UAAWA,IAAU,UAAYE,EAAYM,IAAIR,GAAQ,CACxDgB,EAASC,KAAM,OAAQjB,E,KACjB,CACNkB,EAAQ,6BAA6BlB,0B,EAIhC,iBAAAmB,GACNF,KAAKF,YAAYE,KAAKH,K,CAGhB,MAAAM,G,MACN,OACCT,EAAA,oBACaU,EAAU,uBAAwB,CAAEC,aAAc,CAAEC,SAAUN,KAAKO,MAAMV,KAAMW,QAASnB,EAAaW,KAAKO,MAAMV,SAC5HY,KAAK,MACLC,QAAQ,eAERhB,EAAA,QAAMiB,MAAM,OAAOC,OAAO,OAAOC,KAAK,UACtCnB,EAAA,OAAKoB,EAAE,IAAIC,EAAE,IAAIH,OAAO,MACvBlB,EAACD,EAAK,OAEPC,EAAA,OAAKoB,EAAE,OAAOC,EAAE,MAAMH,OAAO,OAC5BlB,EAAA,QAAMiB,MAAM,IAAIC,OAAO,OACvBlB,EAAA,QAAMqB,EAAE,KAAKJ,MAAM,IAAIC,OAAO,KAAKC,KAAK,QACxCnB,EAAA,QAAMqB,EAAE,KAAKJ,MAAM,IAAIC,OAAO,KAAKC,KAAK,UAEzCnB,EAAA,OAAKoB,EAAE,KAAKC,EAAE,KACbrB,EAAA,QAAMoB,EAAE,IAAIC,EAAE,UAAS,cAAa,iBAAiBC,MAAO,CAAEC,gBAAiB,QAASC,MAAO,UAC7FC,EAAmB5B,IAAIS,KAAKO,MAAMV,MAClCH,EAAA,cACE0B,EAAAD,EAAmB3B,IAAIQ,KAAKO,MAAMV,SAAK,MAAAuB,SAAA,SAAAA,EAAEvC,KAAI,CAACwC,EAAcC,IAE3D5B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,QAAQzC,IAAK,iBAAiBwC,KAC5CD,MAML3B,EAAA,SAAOmB,KAAK,OACXnB,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,qBAGvB7B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,QAAO,cAAa,QAAM,IACvCvB,KAAKO,MAAMV,KAAI,KAElBH,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,wBAGvB7B,EAAA,SAAOoB,EAAE,IAAIS,GAAG,SAAO,wB"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as e}from"./index-d0c806ea.js";import{v as a}from"./label-0d258cd5.js";import{f as n}from"./a11y.tipps-583a2096.js";import{d as s}from"./dev.utils-2a853234.js";import{w as o,s as l,d as r}from"./prop.validators-125a3282.js";import"./reuse-b3566e4c.js";const h=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}.overlay{background-color:rgba(0, 0, 0, 0.33);display:flex;height:100%;inset:0;position:fixed;width:100%;z-index:100}.modal{margin:auto;max-height:100%;max-width:100%}",d=class{constructor(e){t(this,e),this.onKeyDown=t=>{t&&"Escape"===t.code&&(this._activeElement=null)},this._activeElement=void 0,this._label=void 0,this._on=void 0,this._width="100%",this.state={_activeElement:null,_label:"…",_width:"100%"}}componentDidRender(){this.hostElement&&(this.state._activeElement?s().Modal.openModal(this.hostElement,this.state._activeElement):s().Modal.closeModal(this.hostElement))}disconnectedCallback(){this.hostElement&&s().Modal.closeModal(this.hostElement)}render(){return i(e,{ref:t=>{this.hostElement=t}},this.state._activeElement&&i("div",{class:"overlay"},i("div",{class:"modal",style:{width:this.state._width},"aria-label":this.state._label,"aria-modal":"true",role:"dialog",onKeyDown:this.onKeyDown,ref:t=>{t&&(t.setAttribute("tabindex","0"),setTimeout((()=>t.focus()),250))}},i("slot",null))))}validateActiveElement(t){o(this,"_activeElement",(t=>"object"==typeof t||null===t),new Set(["HTMLElement","null"]),t,{defaultValue:null,hooks:{afterPatch:()=>{var t;null===this._activeElement&&(null===(t=this.state._on)||void 0===t?void 0:t.onClose)&&this.state._on.onClose()}}})}validateLabel(t){a(this,t)}validateOn(t){if("object"==typeof t&&null!==t){n("[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const e={};"function"!=typeof t.onClose&&!0!==t.onClose||(e.onClose=t.onClose),l(this,"_on",e)}}validateWidth(t){r(this,"_width",t,{defaultValue:"100%"})}componentWillLoad(){this.validateActiveElement(this._activeElement),this.validateLabel(this._label),this.validateOn(this._on),this.validateWidth(this._width)}static get watchers(){return{_activeElement:["validateActiveElement"],_label:["validateLabel"],_on:["validateOn"],_width:["validateWidth"]}}};d.style={default:h};export{d as kol_modal};
4
+ import{r as t,h as n,H as e}from"./index-0bc40dc4.js";import{v as i}from"./label-7afcc6a9.js";import{f as a}from"./a11y.tipps-68791110.js";import{e as l}from"./dev.utils-8202a1bc.js";import{w as o,s,d as r}from"./prop.validators-3fb6bedf.js";import"./reuse-b3566e4c.js";const h="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\t.overlay {\n\t\tbackground-color: rgba(0, 0, 0, 0.33);\n\t\tdisplay: flex;\n\t\theight: 100%;\n\t\tinset: 0;\n\t\tposition: fixed;\n\t\twidth: 100%;\n\t\tz-index: 100;\n\t}\n\n\t.modal {\n\t\tmargin: auto;\n\t\tmax-height: 100%;\n\t\tmax-width: 100%;\n\t}\n}\n",d=class{constructor(n){t(this,n),this.onKeyDown=t=>{t&&"Escape"===t.code&&(this._activeElement=null)},this._activeElement=void 0,this._label=void 0,this._on=void 0,this._width="100%",this.state={_activeElement:null,_label:"…",_width:"100%"}}componentDidRender(){this.hostElement&&(this.state._activeElement?l().Modal.openModal(this.hostElement,this.state._activeElement):l().Modal.closeModal(this.hostElement))}disconnectedCallback(){this.hostElement&&l().Modal.closeModal(this.hostElement)}render(){return n(e,{ref:t=>{this.hostElement=t}},this.state._activeElement&&n("div",{class:"overlay"},n("div",{class:"modal",style:{width:this.state._width},"aria-label":this.state._label,"aria-modal":"true",role:"dialog",onKeyDown:this.onKeyDown,ref:t=>{t&&(t.setAttribute("tabindex","0"),setTimeout((()=>t.focus()),250))}},n("slot",null))))}validateActiveElement(t){o(this,"_activeElement",(t=>"object"==typeof t||null===t),new Set(["HTMLElement","null"]),t,{defaultValue:null,hooks:{afterPatch:()=>{var t;null===this._activeElement&&(null===(t=this.state._on)||void 0===t?void 0:t.onClose)&&this.state._on.onClose()}}})}validateLabel(t){i(this,t)}validateOn(t){if("object"==typeof t&&null!==t){a("[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const n={};"function"!=typeof t.onClose&&!0!==t.onClose||(n.onClose=t.onClose),s(this,"_on",n)}}validateWidth(t){r(this,"_width",t,{defaultValue:"100%"})}componentWillLoad(){this.validateActiveElement(this._activeElement),this.validateLabel(this._label),this.validateOn(this._on),this.validateWidth(this._width)}static get watchers(){return{_activeElement:["validateActiveElement"],_label:["validateLabel"],_on:["validateOn"],_width:["validateWidth"]}}};d.style={default:h};export{d as kol_modal};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolModal","this","onKeyDown","event","code","_activeElement","_label","_width","componentDidRender","hostElement","state","getKoliBri","Modal","openModal","closeModal","disconnectedCallback","render","h","Host","ref","el","class","style","width","role","setAttribute","setTimeout","focus","validateActiveElement","value","watchValidator","Set","defaultValue","hooks","afterPatch","_a","_on","onClose","validateLabel","validateOn","featureHint","callbacks","setState","validateWidth","watchString","componentWillLoad"],"sources":["src/components/modal/style.css?tag=kol-modal&mode=default&encapsulation=shadow","src/components/modal/component.tsx"],"sourcesContent":["@import url(../style.css);\n.overlay {\n\tbackground-color: rgba(0, 0, 0, 0.33);\n\tdisplay: flex;\n\theight: 100%;\n\tinset: 0;\n\tposition: fixed;\n\twidth: 100%;\n\tz-index: 100;\n}\n.modal {\n\tmargin: auto;\n\tmax-height: 100%;\n\tmax-width: 100%;\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-element-interactions */\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { KoliBriModalEventCallbacks } from '../../types/modal';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { getKoliBri } from '../../utils/dev.utils';\nimport { setState, watchString, watchValidator } from '../../utils/prop.validators';\nimport { ModalService } from './service';\nimport { API, States } from './types';\n\n/**\n * https://en.wikipedia.org/wiki/Modal_window\n * @deprecated use the native <dialog> instead\n */\n\n/**\n * @slot - Der Inhalt des Modals.\n */\n@Component({\n\ttag: 'kol-modal',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolModal implements API {\n\tprivate hostElement?: HTMLElement;\n\n\tpublic componentDidRender(): void {\n\t\tif (this.hostElement /* SSR instanceof HTMLElement */) {\n\t\t\tif (this.state._activeElement /* SSR instanceof HTMLElement */) {\n\t\t\t\t(getKoliBri().Modal as ModalService).openModal(this.hostElement, this.state._activeElement);\n\t\t\t} else {\n\t\t\t\t(getKoliBri().Modal as ModalService).closeModal(this.hostElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tif (this.hostElement /* SSR instanceof HTMLElement */) {\n\t\t\t(getKoliBri().Modal as ModalService).closeModal(this.hostElement);\n\t\t}\n\t}\n\n\tprivate readonly onKeyDown = (event: KeyboardEvent) => {\n\t\tif (event && event.code === 'Escape') {\n\t\t\tthis._activeElement = null;\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tref={(el) => {\n\t\t\t\t\tthis.hostElement = el as HTMLElement;\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.state._activeElement /* SSR instanceof HTMLElement */ && (\n\t\t\t\t\t<div class=\"overlay\">\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"modal\"\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: this.state._width,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\taria-label={this.state._label}\n\t\t\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\t\t\tif (el /* SSR instanceof HTMLElement */) {\n\t\t\t\t\t\t\t\t\tel.setAttribute('tabindex', '0');\n\t\t\t\t\t\t\t\t\tsetTimeout(() => el.focus(), 250);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Referenz auf das auslösende HTML-Element an, wodurch das Modal geöffnet wurde.\n\t */\n\t@Prop({ mutable: true }) public _activeElement?: HTMLElement | null;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Modals an.\n\t */\n\t@Prop() public _on?: KoliBriModalEventCallbacks;\n\n\t/**\n\t * Defines the width of the modal. (max-width: 100%)\n\t */\n\t@Prop() public _width?: string = '100%';\n\n\t@State() public state: States = {\n\t\t_activeElement: null,\n\t\t_label: '…', // ⚠ required\n\t\t_width: '100%',\n\t};\n\n\t@Watch('_activeElement')\n\tpublic validateActiveElement(value?: HTMLElement | null): void {\n\t\twatchValidator(this, '_activeElement', (value): boolean => typeof value === 'object' || value === null, new Set(['HTMLElement', 'null']), value, {\n\t\t\tdefaultValue: null,\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\t/* Call onClose event in the _activeElement watcher because activeElement can be set internally and from the outside and closes the modal when set to null. */\n\t\t\t\t\tif (this._activeElement === null && this.state._on?.onClose) {\n\t\t\t\t\t\tthis.state._on.onClose();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriModalEventCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfeatureHint('[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.');\n\t\t\tconst callbacks: KoliBriModalEventCallbacks = {};\n\t\t\tif (typeof value.onClose === 'function' || value.onClose === true) {\n\t\t\t\tcallbacks.onClose = value.onClose;\n\t\t\t}\n\t\t\tsetState<KoliBriModalEventCallbacks>(this, '_on', callbacks);\n\t\t}\n\t}\n\n\t@Watch('_width')\n\tpublic validateWidth(value?: string): void {\n\t\twatchString(this, '_width', value, {\n\t\t\tdefaultValue: '100%',\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActiveElement(this._activeElement);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateWidth(this._width);\n\t}\n}\n"],"mappings":";;;mRAAA,MAAMA,EAAkB,k3B,MC0BXC,EAAQ,M,yBAmBHC,KAAAC,UAAaC,IAC7B,GAAIA,GAASA,EAAMC,OAAS,SAAU,CACrCH,KAAKI,eAAiB,I,sFAuDS,O,WAED,CAC/BA,eAAgB,KAChBC,OAAQ,IACRC,OAAQ,O,CA9EF,kBAAAC,GACN,GAAIP,KAAKQ,YAA8C,CACtD,GAAIR,KAAKS,MAAML,eAAiD,CAC9DM,IAAaC,MAAuBC,UAAUZ,KAAKQ,YAAaR,KAAKS,MAAML,e,KACtE,CACLM,IAAaC,MAAuBE,WAAWb,KAAKQ,Y,GAKjD,oBAAAM,GACN,GAAId,KAAKQ,YAA8C,CACrDE,IAAaC,MAAuBE,WAAWb,KAAKQ,Y,EAUhD,MAAAO,GACN,OACCC,EAACC,EAAI,CACJC,IAAMC,IACLnB,KAAKQ,YAAcW,CAAiB,GAGpCnB,KAAKS,MAAML,gBACXY,EAAA,OAAKI,MAAM,WACVJ,EAAA,OACCI,MAAM,QACNC,MAAO,CACNC,MAAOtB,KAAKS,MAAMH,QAClB,aACWN,KAAKS,MAAMJ,OAAM,aAClB,OACXkB,KAAK,SACLtB,UAAWD,KAAKC,UAChBiB,IAAMC,IACL,GAAIA,EAAqC,CACxCA,EAAGK,aAAa,WAAY,KAC5BC,YAAW,IAAMN,EAAGO,SAAS,I,IAI/BV,EAAA,e,CAmCC,qBAAAW,CAAsBC,GAC5BC,EAAe7B,KAAM,kBAAmB4B,UAA0BA,IAAU,UAAYA,IAAU,MAAM,IAAIE,IAAI,CAAC,cAAe,SAAUF,EAAO,CAChJG,aAAc,KACdC,MAAO,CACNC,WAAY,K,MAEX,GAAIjC,KAAKI,iBAAmB,QAAQ8B,EAAAlC,KAAKS,MAAM0B,OAAG,MAAAD,SAAA,SAAAA,EAAEE,SAAS,CAC5DpC,KAAKS,MAAM0B,IAAIC,S,MAQb,aAAAC,CAAcT,GACpBS,EAAcrC,KAAM4B,E,CAId,UAAAU,CAAWV,GACjB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChDW,EAAY,2EACZ,MAAMC,EAAwC,GAC9C,UAAWZ,EAAMQ,UAAY,YAAcR,EAAMQ,UAAY,KAAM,CAClEI,EAAUJ,QAAUR,EAAMQ,O,CAE3BK,EAAqCzC,KAAM,MAAOwC,E,EAK7C,aAAAE,CAAcd,GACpBe,EAAY3C,KAAM,SAAU4B,EAAO,CAClCG,aAAc,Q,CAIT,iBAAAa,GACN5C,KAAK2B,sBAAsB3B,KAAKI,gBAChCJ,KAAKqC,cAAcrC,KAAKK,QACxBL,KAAKsC,WAAWtC,KAAKmC,KACrBnC,KAAK0C,cAAc1C,KAAKM,O"}
1
+ {"version":3,"names":["defaultStyleCss","KolModal","this","onKeyDown","event","code","_activeElement","_label","_width","componentDidRender","hostElement","state","getKoliBri","Modal","openModal","closeModal","disconnectedCallback","render","h","Host","ref","el","class","style","width","role","setAttribute","setTimeout","focus","validateActiveElement","value","watchValidator","Set","defaultValue","hooks","afterPatch","_a","_on","onClose","validateLabel","validateOn","featureHint","callbacks","setState","validateWidth","watchString","componentWillLoad"],"sources":["src/components/modal/style.css?tag=kol-modal&mode=default&encapsulation=shadow","src/components/modal/component.tsx"],"sourcesContent":["@import url(../style.css);\n@layer kol-component {\n\t.overlay {\n\t\tbackground-color: rgba(0, 0, 0, 0.33);\n\t\tdisplay: flex;\n\t\theight: 100%;\n\t\tinset: 0;\n\t\tposition: fixed;\n\t\twidth: 100%;\n\t\tz-index: 100;\n\t}\n\n\t.modal {\n\t\tmargin: auto;\n\t\tmax-height: 100%;\n\t\tmax-width: 100%;\n\t}\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-element-interactions */\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { KoliBriModalEventCallbacks } from '../../types/modal';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { getKoliBri } from '../../utils/dev.utils';\nimport { setState, watchString, watchValidator } from '../../utils/prop.validators';\nimport { ModalService } from './service';\nimport { API, States } from './types';\n\n/**\n * https://en.wikipedia.org/wiki/Modal_window\n * @deprecated use the native <dialog> instead\n */\n\n/**\n * @slot - Der Inhalt des Modals.\n */\n@Component({\n\ttag: 'kol-modal',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolModal implements API {\n\tprivate hostElement?: HTMLElement;\n\n\tpublic componentDidRender(): void {\n\t\tif (this.hostElement /* SSR instanceof HTMLElement */) {\n\t\t\tif (this.state._activeElement /* SSR instanceof HTMLElement */) {\n\t\t\t\t(getKoliBri().Modal as ModalService).openModal(this.hostElement, this.state._activeElement);\n\t\t\t} else {\n\t\t\t\t(getKoliBri().Modal as ModalService).closeModal(this.hostElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tif (this.hostElement /* SSR instanceof HTMLElement */) {\n\t\t\t(getKoliBri().Modal as ModalService).closeModal(this.hostElement);\n\t\t}\n\t}\n\n\tprivate readonly onKeyDown = (event: KeyboardEvent) => {\n\t\tif (event && event.code === 'Escape') {\n\t\t\tthis._activeElement = null;\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tref={(el) => {\n\t\t\t\t\tthis.hostElement = el as HTMLElement;\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.state._activeElement /* SSR instanceof HTMLElement */ && (\n\t\t\t\t\t<div class=\"overlay\">\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"modal\"\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: this.state._width,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\taria-label={this.state._label}\n\t\t\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\t\t\tif (el /* SSR instanceof HTMLElement */) {\n\t\t\t\t\t\t\t\t\tel.setAttribute('tabindex', '0');\n\t\t\t\t\t\t\t\t\tsetTimeout(() => el.focus(), 250);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die Referenz auf das auslösende HTML-Element an, wodurch das Modal geöffnet wurde.\n\t */\n\t@Prop({ mutable: true }) public _activeElement?: HTMLElement | null;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Modals an.\n\t */\n\t@Prop() public _on?: KoliBriModalEventCallbacks;\n\n\t/**\n\t * Defines the width of the modal. (max-width: 100%)\n\t */\n\t@Prop() public _width?: string = '100%';\n\n\t@State() public state: States = {\n\t\t_activeElement: null,\n\t\t_label: '…', // ⚠ required\n\t\t_width: '100%',\n\t};\n\n\t@Watch('_activeElement')\n\tpublic validateActiveElement(value?: HTMLElement | null): void {\n\t\twatchValidator(this, '_activeElement', (value): boolean => typeof value === 'object' || value === null, new Set(['HTMLElement', 'null']), value, {\n\t\t\tdefaultValue: null,\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\t/* Call onClose event in the _activeElement watcher because activeElement can be set internally and from the outside and closes the modal when set to null. */\n\t\t\t\t\tif (this._activeElement === null && this.state._on?.onClose) {\n\t\t\t\t\t\tthis.state._on.onClose();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriModalEventCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfeatureHint('[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.');\n\t\t\tconst callbacks: KoliBriModalEventCallbacks = {};\n\t\t\tif (typeof value.onClose === 'function' || value.onClose === true) {\n\t\t\t\tcallbacks.onClose = value.onClose;\n\t\t\t}\n\t\t\tsetState<KoliBriModalEventCallbacks>(this, '_on', callbacks);\n\t\t}\n\t}\n\n\t@Watch('_width')\n\tpublic validateWidth(value?: string): void {\n\t\twatchString(this, '_width', value, {\n\t\t\tdefaultValue: '100%',\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActiveElement(this._activeElement);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateWidth(this._width);\n\t}\n}\n"],"mappings":";;;8QAAA,MAAMA,EAAkB,4gG,MC0BXC,EAAQ,M,yBAmBHC,KAAAC,UAAaC,IAC7B,GAAIA,GAASA,EAAMC,OAAS,SAAU,CACrCH,KAAKI,eAAiB,I,sFAuDS,O,WAED,CAC/BA,eAAgB,KAChBC,OAAQ,IACRC,OAAQ,O,CA9EF,kBAAAC,GACN,GAAIP,KAAKQ,YAA8C,CACtD,GAAIR,KAAKS,MAAML,eAAiD,CAC9DM,IAAaC,MAAuBC,UAAUZ,KAAKQ,YAAaR,KAAKS,MAAML,e,KACtE,CACLM,IAAaC,MAAuBE,WAAWb,KAAKQ,Y,GAKjD,oBAAAM,GACN,GAAId,KAAKQ,YAA8C,CACrDE,IAAaC,MAAuBE,WAAWb,KAAKQ,Y,EAUhD,MAAAO,GACN,OACCC,EAACC,EAAI,CACJC,IAAMC,IACLnB,KAAKQ,YAAcW,CAAiB,GAGpCnB,KAAKS,MAAML,gBACXY,EAAA,OAAKI,MAAM,WACVJ,EAAA,OACCI,MAAM,QACNC,MAAO,CACNC,MAAOtB,KAAKS,MAAMH,QAClB,aACWN,KAAKS,MAAMJ,OAAM,aAClB,OACXkB,KAAK,SACLtB,UAAWD,KAAKC,UAChBiB,IAAMC,IACL,GAAIA,EAAqC,CACxCA,EAAGK,aAAa,WAAY,KAC5BC,YAAW,IAAMN,EAAGO,SAAS,I,IAI/BV,EAAA,e,CAmCC,qBAAAW,CAAsBC,GAC5BC,EAAe7B,KAAM,kBAAmB4B,UAA0BA,IAAU,UAAYA,IAAU,MAAM,IAAIE,IAAI,CAAC,cAAe,SAAUF,EAAO,CAChJG,aAAc,KACdC,MAAO,CACNC,WAAY,K,MAEX,GAAIjC,KAAKI,iBAAmB,QAAQ8B,EAAAlC,KAAKS,MAAM0B,OAAG,MAAAD,SAAA,SAAAA,EAAEE,SAAS,CAC5DpC,KAAKS,MAAM0B,IAAIC,S,MAQb,aAAAC,CAAcT,GACpBS,EAAcrC,KAAM4B,E,CAId,UAAAU,CAAWV,GACjB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChDW,EAAY,2EACZ,MAAMC,EAAwC,GAC9C,UAAWZ,EAAMQ,UAAY,YAAcR,EAAMQ,UAAY,KAAM,CAClEI,EAAUJ,QAAUR,EAAMQ,O,CAE3BK,EAAqCzC,KAAM,MAAOwC,E,EAK7C,aAAAE,CAAcd,GACpBe,EAAY3C,KAAM,SAAU4B,EAAO,CAClCG,aAAc,Q,CAIT,iBAAAa,GACN5C,KAAK2B,sBAAsB3B,KAAKI,gBAChCJ,KAAKqC,cAAcrC,KAAKK,QACxBL,KAAKsC,WAAWtC,KAAKmC,KACrBnC,KAAK0C,cAAc1C,KAAKM,O"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as e}from"./index-d0c806ea.js";import{a,w as n}from"./prop.validators-125a3282.js";import{v as s}from"./hide-label-2c0bf25c.js";import{v as l}from"./label-0d258cd5.js";import{b as r,d as o}from"./a11y.tipps-583a2096.js";import{r as d,a as h}from"./unique-nav-labels-c6750f60.js";import{w as c}from"./validation-61e035d7.js";import"./dev.utils-2a853234.js";import"./reuse-b3566e4c.js";const p=(i,t)=>{a(i,"_collapsible",t)},u=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>div{display:grid;place-items:center}nav{width:100%}.list{display:flex;list-style:none;margin:0;padding:0}.list.vertical{flex-direction:column}.entry{display:flex}.entry kol-button-wc:first-child,.entry kol-link-wc,.entry kol-span-wc{flex-grow:1}.entry kol-span-wc{justify-items:start}",b=class{constructor(e){t(this,e),this.onClick=i=>{i._active=!i._active,this.state=Object.assign({},this.state)},this.hasActiveChild=i=>!!(Array.isArray(i._children)&&i._children.length>0)&&i._children.some(this.hasActiveChild),this.linkList=t=>i("ul",{class:"list "+(0===t.deep&&"horizontal"===t.orientation?" horizontal":" vertical"),"data-deep":t.deep},t.links.map(((i,e)=>this.li(t.collapsible,t.hideLabel,t.deep,e,i,t.orientation)))),this._ariaCurrentValue=!1,this._collapsible=!0,this._hideLabel=!1,this._label=void 0,this._links=void 0,this._orientation="vertical",this.state={_ariaCurrentValue:!1,_collapsible:!0,_hideLabel:!1,_label:"…",_links:[],_orientation:"vertical"}}entry(t,e,a,l,n){return i("div",{class:{entry:!0,"hide-label":e}},i("kol-button-link-text-switch",{_link:Object.assign(Object.assign({},l),{_hideLabel:e})}),a?this.expandButton(t,l,n):"")}expandButton(t,e,a){return i("kol-button-wc",{class:"expand-button",_ariaExpanded:a,_disabled:!t,_icons:"codicon codicon-"+(a?"remove":"add"),_hideLabel:!0,_label:`Untermenü zu ${e._label} ${a?"schließen":"öffnen"}`,_on:{onClick:()=>this.onClick(e)}})}li(t,e,a,l,n,s){const r=!!n._active,o=Array.isArray(n._children)&&n._children.length>0,d=o&&r;return i("li",{class:{active:r,expanded:d,"has-children":o},key:l},this.entry(t,e,o,n,r),d?i(this.linkList,{collapsible:t,hideLabel:e,deep:a+1,links:n._children||[],orientation:s}):"")}render(){const t=!0===this.state._collapsible,a=!0===this.state._hideLabel,l=this.state._orientation;return i(e,null,i("div",{class:{[l]:!0}},i("nav",{"aria-label":this.state._label,id:"nav"},i(this.linkList,{collapsible:t,hideLabel:a,deep:0,links:this.state._links,orientation:l}))))}validateAriaCurrentValue(i){n(this,"_ariaCurrentValue",(i=>!0===i||"date"===i||"location"===i||"page"===i||"step"===i||"time"===i),new Set(["boolean","String {data, location, page, step, time}"]),i)}validateCollapsible(i){p(this,i)}validateHideLabel(i){s(this,i)}validateLabel(i,t,e=!1){e||d(this.state._label),l(this,i),r(i),h(this.state._label)}validateLinks(i){c("KolNav",this,i),o("[KolNav] Die Navigationsstruktur wird noch nicht rekursiv validiert.")}validateOrientation(i){n(this,"_orientation",(i=>"horizontal"===i||"vertical"===i),new Set(["Orientation {horizontal, vertical}"]),i,{defaultValue:"vertical"})}componentWillLoad(){this.validateAriaCurrentValue(this._ariaCurrentValue),this.validateCollapsible(this._collapsible),this.validateHideLabel(this._hideLabel),this.validateLabel(this._label,void 0,!0),this.validateLinks(this._links),this.validateOrientation(this._orientation)}disconnectedCallback(){d(this.state._label)}static get watchers(){return{_ariaCurrentValue:["validateAriaCurrentValue"],_collapsible:["validateCollapsible"],_hideLabel:["validateHideLabel"],_label:["validateLabel"],_links:["validateLinks"],_orientation:["validateOrientation"]}}};b.style={default:u};export{b as kol_nav};
4
+ import{r as t,h as n,H as e}from"./index-0bc40dc4.js";import{a as i}from"./i18n-99b63f3a.js";import{a,w as s}from"./prop.validators-3fb6bedf.js";import{v as l}from"./hide-label-fbf92ea1.js";import{v as o}from"./label-7afcc6a9.js";import{g as r,b as h,d}from"./a11y.tipps-68791110.js";import{r as c,a as p}from"./unique-nav-labels-c6750f60.js";import{w as b}from"./validation-7b943391.js";import"./index-a4b1e92f.js";import"./dev.utils-8202a1bc.js";import"./reuse-b3566e4c.js";const u=(t,n)=>{a(t,"_collapsible",n)},m=(t,n)=>{a(t,"_hasCompactButton",n)},f="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * Minimum size of interactive elements.\n\t\t */\n\t\t--a11y-min-size: 44px;\n\t\t/*\n\t\t * Verdana is an accessible font that can be used without requiring additional loading time.\n\t\t */\n\t\tfont-family: Verdana;\n\t}\n\n\t* {\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\thyphens: auto;\n\t\t/*\n\t\t * Letter spacing is required for all texts.\n\t\t */\n\t\tletter-spacing: inherit;\n\t\t/*\n\t\t * This rule enables the word dividing for all texts. That is important for high zoom levels.\n\t\t */\n\t\tword-break: break-word;\n\t\t/*\n\t\t * Word spacing is required for all texts.\n\t\t */\n\t\tword-spacing: inherit;\n\t}\n\n\t/*\n\t * All interactive elements should have a minimum size of 44px.\n\t */\n\t/* input:not([type='checkbox'], [type='radio'], [type='range']), */\n\t/* option, */\n\t/* select, */\n\t/* textarea, */\n\t[role='button'],\n\tbutton:not([role='link']),\n\tkol-input .input {\n\t\tmin-height: var(--a11y-min-size);\n\t\tmin-width: var(--a11y-min-size);\n\t}\n\n\t/*\n\t * Some interactive elements should not inherit the font-family and font-size.\n\t */\n\ta,\n\tbutton,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6,\n\tinput,\n\toption,\n\tselect,\n\ttextarea {\n\t\t/*\n\t\t * All elements should inherit the font family from his parent element.\n\t\t */\n\t\tfont-family: inherit;\n\t\t/*\n\t\t * All elements should inherit the font size from his parent element.\n\t\t */\n\t\tfont-size: inherit;\n\t}\n}\n\n@layer kol-global {\n\t/*\n\t * Dieses CSS stellt sicher, dass der Standard-Style\n\t * von A und Button resettet werden.\n\t */\n\t:is(a, button) {\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\twidth: 100%; /* 100% needed for custom width from outside */\n\t}\n}\n\n@layer kol-global {\n\t:host {\n\t\t/*\n\t\t * The max-width is needed to prevent the table from overflowing the\n\t\t * parent node, if the table is wider than the parent node.\n\t\t */\n\t\tmax-width: 100%;\n\t}\n\n\t* {\n\t\t/*\n\t\t * We prefer to box-sizing: border-box for all elements.\n\t\t */\n\t\tbox-sizing: border-box;\n\t}\n\n\t/* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n\tkol-span-wc {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\t/* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n\tkol-span-wc > span {\n\t\tdisplay: flex;\n\t\tplace-items: center;\n\t}\n\n\ta,\n\tbutton {\n\t\tcursor: pointer;\n\t}\n\n\t/* This is the text label. */\n\t.icon-only > kol-span-wc > span > span {\n\t\tdisplay: none;\n\t}\n}\n\n@layer kol-component {\n\t:host > div {\n\t\tdisplay: grid;\n\t\tplace-items: center;\n\t}\n\n\tnav {\n\t\twidth: 100%;\n\t}\n\n\t.list {\n\t\tdisplay: flex;\n\t\tlist-style: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\t.list.vertical {\n\t\tflex-direction: column;\n\t}\n\n\t.entry {\n\t\tdisplay: flex;\n\t}\n\n\t.button-link-text-switch {\n\t\tflex-grow: 1;\n\t}\n\n\t.entry kol-span-wc {\n\t\tjustify-items: start;\n\t}\n}\n",v=class{constructor(e){t(this,e),this.onClick=t=>{t._active=!t._active,this.state=Object.assign({},this.state)},this.hasActiveChild=t=>!!(Array.isArray(t._children)&&t._children.length>0)&&t._children.some(this.hasActiveChild),this.linkList=t=>n("ul",{class:"list "+(0===t.deep&&"horizontal"===t.orientation?" horizontal":" vertical"),"data-deep":t.deep},t.links.map(((n,e)=>this.li(t.collapsible,t.hideLabel,t.deep,e,n,t.orientation)))),this._collapsible=!0,this._hasCompactButton=!1,this._hideLabel=!1,this._label=void 0,this._links=void 0,this._orientation="vertical",this.state={_collapsible:!0,_hasCompactButton:!1,_hideLabel:!1,_label:"…",_links:[],_orientation:"vertical"}}entry(t,e,i,a,l){return n("div",{class:{entry:!0,"hide-label":e}},n("kol-button-link-text-switch",{class:"button-link-text-switch",_link:Object.assign(Object.assign({},a),{_hideLabel:e})}),i?this.expandButton(t,a,l):"")}expandButton(t,e,i){return n("kol-button-wc",{class:"expand-button",_ariaExpanded:i,_disabled:!t,_icons:"codicon codicon-"+(i?"remove":"add"),_hideLabel:!0,_label:`Untermenü zu ${e._label} ${i?"schließen":"öffnen"}`,_on:{onClick:()=>this.onClick(e)}})}li(t,e,i,a,l,s){const o=!!l._active,r=Array.isArray(l._children)&&l._children.length>0,h=r&&o;return n("li",{class:{active:o,expanded:h,"has-children":r},key:a},this.entry(t,e,r,l,o),h?n(this.linkList,{collapsible:t,hideLabel:e,deep:i+1,links:l._children||[],orientation:s}):"")}render(){let t=this.state._hasCompactButton;"horizontal"===this.state._orientation&&!0===this.state._hasCompactButton&&(t=!1,r("[KolNav] Wenn eine horizontale Navigation verwendet wird, kann die Option _hasCompactButton nicht aktiviert werden."));const a=!0===this.state._collapsible,l=!0===this.state._hideLabel,s=this.state._orientation;return n(e,null,n("div",{class:{[s]:!0}},n("nav",{"aria-label":this.state._label,id:"nav"},n(this.linkList,{collapsible:a,hideLabel:l,deep:0,links:this.state._links,orientation:s})),t&&n("div",{class:"compact"},n("kol-button",{_ariaControls:"nav",_ariaExpanded:!l,_icons:l?"codicon codicon-chevron-right":"codicon codicon-chevron-left",_hideLabel:!0,_label:i(l?"kol-nav-maximize":"kol-nav-minimize"),_on:{onClick:()=>{this.state=Object.assign(Object.assign({},this.state),{_hideLabel:!1===this.state._hideLabel})}},_tooltipAlign:"right",_variant:"ghost"}))))}validateCollapsible(t){u(this,t)}validateHasCompactButton(t){m(this,t)}validateHideLabel(t){l(this,t)}validateLabel(t,n,e=!1){e||c(this.state._label),o(this,t),h(t),p(this.state._label)}validateLinks(t){b("KolNav",this,t),d("[KolNav] Die Navigationsstruktur wird noch nicht rekursiv validiert.")}validateOrientation(t){s(this,"_orientation",(t=>"horizontal"===t||"vertical"===t),new Set(["Orientation {horizontal, vertical}"]),t,{defaultValue:"vertical"})}componentWillLoad(){this.validateCollapsible(this._collapsible),this.validateHideLabel(this._hideLabel),this.validateHasCompactButton(this._hasCompactButton),this.validateLabel(this._label,void 0,!0),this.validateLinks(this._links),this.validateOrientation(this._orientation)}disconnectedCallback(){c(this.state._label)}static get watchers(){return{_collapsible:["validateCollapsible"],_hasCompactButton:["validateHasCompactButton"],_hideLabel:["validateHideLabel"],_label:["validateLabel"],_links:["validateLinks"],_orientation:["validateOrientation"]}}};v.style={default:f};export{v as kol_nav};