@public-ui/components 2.2.16 → 2.2.17-rc.5

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 (537) hide show
  1. package/custom-elements.json +1 -1
  2. package/dist/cjs/{Alert-5f3a4a55.js → Alert-48c33458.js} +1 -1
  3. package/dist/cjs/Alert-48c33458.js.map +1 -0
  4. package/dist/cjs/{Collapsible-ff192a6a.js → Collapsible-a2a45c6a.js} +1 -1
  5. package/dist/cjs/{Collapsible-ff192a6a.js.map → Collapsible-a2a45c6a.js.map} +1 -1
  6. package/dist/cjs/{FormFieldMsg-a163eada.js → FormFieldMsg-61ee6d08.js} +1 -1
  7. package/dist/cjs/{FormFieldMsg-a163eada.js.map → FormFieldMsg-61ee6d08.js.map} +1 -1
  8. package/dist/cjs/{InternalUnderlinedBadgeText-9cf480bf.js → InternalUnderlinedBadgeText-9ca8385f.js} +1 -1
  9. package/dist/cjs/{InternalUnderlinedBadgeText-9cf480bf.js.map → InternalUnderlinedBadgeText-9ca8385f.js.map} +1 -1
  10. package/dist/cjs/{app-globals-af5298b1.js → app-globals-bef12232.js} +1 -1
  11. package/dist/cjs/{app-globals-af5298b1.js.map → app-globals-bef12232.js.map} +1 -1
  12. package/dist/cjs/{dev.utils-eea8731c.js → dev.utils-d30fd7d8.js} +1 -1
  13. package/dist/cjs/{dev.utils-eea8731c.js.map → dev.utils-d30fd7d8.js.map} +1 -1
  14. package/dist/cjs/{devtools-c7d924a0.js → devtools-6562dcb6.js} +1 -1
  15. package/dist/cjs/{devtools-c7d924a0.js.map → devtools-6562dcb6.js.map} +1 -1
  16. package/dist/cjs/index-991af72d.js +4 -0
  17. package/dist/cjs/index-991af72d.js.map +1 -0
  18. package/dist/cjs/index.cjs.js +1 -1
  19. package/dist/cjs/index.cjs.js.map +1 -1
  20. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  21. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  22. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  23. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  24. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  25. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  26. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  27. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  28. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  29. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  30. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  31. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  32. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  33. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  34. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  35. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  36. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  37. package/dist/cjs/kol-button-wc.cjs.entry.js.map +1 -1
  38. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  40. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  42. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-combobox.cjs.entry.js.map +1 -1
  44. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  46. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-drawer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  50. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-indented-text-wc.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  75. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  86. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-popover-button.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-single-select.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-single-select.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-table-stateless.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-toolbar.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-tooltip-wc.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  130. package/dist/cjs/kolibri.cjs.js +1 -1
  131. package/dist/cjs/loader.cjs.js +1 -1
  132. package/dist/cjs/test-component.cjs.entry.js +1 -1
  133. package/dist/cjs/tooltip-open-tracking-5600113f.js +4 -0
  134. package/dist/cjs/tooltip-open-tracking-5600113f.js.map +1 -0
  135. package/dist/components/Alert.js +1 -1
  136. package/dist/components/Alert.js.map +1 -1
  137. package/dist/components/access-and-short-key.js +1 -1
  138. package/dist/components/associated.controller.js +1 -1
  139. package/dist/components/controller.js +1 -1
  140. package/dist/components/controller2.js +1 -1
  141. package/dist/components/controller5.js +1 -1
  142. package/dist/components/devtools.js +1 -1
  143. package/dist/components/index.js +1 -1
  144. package/dist/components/index.js.map +1 -1
  145. package/dist/components/index2.js +1 -1
  146. package/dist/components/kol-abbr.js +1 -1
  147. package/dist/components/kol-abbr.js.map +1 -1
  148. package/dist/components/kol-accordion.js +1 -1
  149. package/dist/components/kol-accordion.js.map +1 -1
  150. package/dist/components/kol-alert.js +1 -1
  151. package/dist/components/kol-alert.js.map +1 -1
  152. package/dist/components/kol-badge.js +1 -1
  153. package/dist/components/kol-badge.js.map +1 -1
  154. package/dist/components/kol-button-link.js +1 -1
  155. package/dist/components/kol-button-link.js.map +1 -1
  156. package/dist/components/kol-button-wc.js +1 -1
  157. package/dist/components/kol-button-wc.js.map +1 -1
  158. package/dist/components/kol-button.js +1 -1
  159. package/dist/components/kol-button.js.map +1 -1
  160. package/dist/components/kol-card.js +1 -1
  161. package/dist/components/kol-card.js.map +1 -1
  162. package/dist/components/kol-combobox.js +1 -1
  163. package/dist/components/kol-combobox.js.map +1 -1
  164. package/dist/components/kol-details.js +1 -1
  165. package/dist/components/kol-details.js.map +1 -1
  166. package/dist/components/kol-drawer.js +1 -1
  167. package/dist/components/kol-drawer.js.map +1 -1
  168. package/dist/components/kol-form.js +1 -1
  169. package/dist/components/kol-form.js.map +1 -1
  170. package/dist/components/kol-heading-wc.js +1 -1
  171. package/dist/components/kol-heading.js +1 -1
  172. package/dist/components/kol-icon.js +1 -1
  173. package/dist/components/kol-icon.js.map +1 -1
  174. package/dist/components/kol-image.js +1 -1
  175. package/dist/components/kol-indented-text-wc.js +1 -1
  176. package/dist/components/kol-indented-text.js +1 -1
  177. package/dist/components/kol-input-checkbox.js +1 -1
  178. package/dist/components/kol-input-checkbox.js.map +1 -1
  179. package/dist/components/kol-input-color.js +1 -1
  180. package/dist/components/kol-input-color.js.map +1 -1
  181. package/dist/components/kol-input-date.js +1 -1
  182. package/dist/components/kol-input-date.js.map +1 -1
  183. package/dist/components/kol-input-email.js +1 -1
  184. package/dist/components/kol-input-email.js.map +1 -1
  185. package/dist/components/kol-input-file.js +1 -1
  186. package/dist/components/kol-input-file.js.map +1 -1
  187. package/dist/components/kol-input-number.js +1 -1
  188. package/dist/components/kol-input-number.js.map +1 -1
  189. package/dist/components/kol-input-password.js +1 -1
  190. package/dist/components/kol-input-password.js.map +1 -1
  191. package/dist/components/kol-input-radio.js +1 -1
  192. package/dist/components/kol-input-radio.js.map +1 -1
  193. package/dist/components/kol-input-range.js +1 -1
  194. package/dist/components/kol-input-range.js.map +1 -1
  195. package/dist/components/kol-input-text.js +1 -1
  196. package/dist/components/kol-input-text.js.map +1 -1
  197. package/dist/components/kol-input.js +1 -1
  198. package/dist/components/kol-kolibri.js +1 -1
  199. package/dist/components/kol-link-button.js +1 -1
  200. package/dist/components/kol-link-button.js.map +1 -1
  201. package/dist/components/kol-link-group.js +1 -1
  202. package/dist/components/kol-link-wc.js +1 -1
  203. package/dist/components/kol-link-wc.js.map +1 -1
  204. package/dist/components/kol-link.js +1 -1
  205. package/dist/components/kol-link.js.map +1 -1
  206. package/dist/components/kol-logo.js +1 -1
  207. package/dist/components/kol-modal.js +1 -1
  208. package/dist/components/kol-modal.js.map +1 -1
  209. package/dist/components/kol-nav.js +1 -1
  210. package/dist/components/kol-nav.js.map +1 -1
  211. package/dist/components/kol-pagination.js +1 -1
  212. package/dist/components/kol-pagination.js.map +1 -1
  213. package/dist/components/kol-popover-button.js +1 -1
  214. package/dist/components/kol-popover-button.js.map +1 -1
  215. package/dist/components/kol-popover-wc.js +1 -1
  216. package/dist/components/kol-progress.js +1 -1
  217. package/dist/components/kol-quote.js +1 -1
  218. package/dist/components/kol-select.js +1 -1
  219. package/dist/components/kol-select.js.map +1 -1
  220. package/dist/components/kol-single-select.js +1 -1
  221. package/dist/components/kol-single-select.js.map +1 -1
  222. package/dist/components/kol-skip-nav.js +1 -1
  223. package/dist/components/kol-span-wc.js +1 -1
  224. package/dist/components/kol-spin.js +1 -1
  225. package/dist/components/kol-split-button.js +1 -1
  226. package/dist/components/kol-split-button.js.map +1 -1
  227. package/dist/components/kol-symbol.js +1 -1
  228. package/dist/components/kol-table-stateful.js +1 -1
  229. package/dist/components/kol-table-stateful.js.map +1 -1
  230. package/dist/components/kol-table-stateless-wc.js +1 -1
  231. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  232. package/dist/components/kol-table-stateless.js +1 -1
  233. package/dist/components/kol-table-stateless.js.map +1 -1
  234. package/dist/components/kol-table.js +1 -1
  235. package/dist/components/kol-tabs.js +1 -1
  236. package/dist/components/kol-tabs.js.map +1 -1
  237. package/dist/components/kol-textarea.js +1 -1
  238. package/dist/components/kol-textarea.js.map +1 -1
  239. package/dist/components/kol-toast-container.js +1 -1
  240. package/dist/components/kol-toast-container.js.map +1 -1
  241. package/dist/components/kol-toolbar.js +1 -1
  242. package/dist/components/kol-toolbar.js.map +1 -1
  243. package/dist/components/kol-tooltip-wc.js +1 -1
  244. package/dist/components/kol-tooltip-wc.js.map +1 -1
  245. package/dist/components/kol-tree-item-wc.js +1 -1
  246. package/dist/components/kol-tree-item.js +1 -1
  247. package/dist/components/kol-tree-wc.js +1 -1
  248. package/dist/components/kol-tree.js +1 -1
  249. package/dist/components/kol-version.js +1 -1
  250. package/dist/components/rows.js +1 -1
  251. package/dist/components/tooltip-open-tracking.js +4 -0
  252. package/dist/components/tooltip-open-tracking.js.map +1 -0
  253. package/dist/esm/{Alert-ba64e682.js → Alert-95f2c21b.js} +1 -1
  254. package/dist/esm/Alert-95f2c21b.js.map +1 -0
  255. package/dist/esm/{Collapsible-96785702.js → Collapsible-1363ae39.js} +1 -1
  256. package/dist/esm/{Collapsible-96785702.js.map → Collapsible-1363ae39.js.map} +1 -1
  257. package/dist/esm/{FormFieldMsg-f0879547.js → FormFieldMsg-cf2af2f6.js} +1 -1
  258. package/dist/esm/{FormFieldMsg-f0879547.js.map → FormFieldMsg-cf2af2f6.js.map} +1 -1
  259. package/dist/esm/{InternalUnderlinedBadgeText-669e7d65.js → InternalUnderlinedBadgeText-9806a3b1.js} +1 -1
  260. package/dist/esm/{InternalUnderlinedBadgeText-669e7d65.js.map → InternalUnderlinedBadgeText-9806a3b1.js.map} +1 -1
  261. package/dist/esm/{app-globals-b9beca2d.js → app-globals-5830a028.js} +1 -1
  262. package/dist/esm/{app-globals-b9beca2d.js.map → app-globals-5830a028.js.map} +1 -1
  263. package/dist/esm/{dev.utils-5bef3b78.js → dev.utils-202fb0ba.js} +1 -1
  264. package/dist/esm/{dev.utils-5bef3b78.js.map → dev.utils-202fb0ba.js.map} +1 -1
  265. package/dist/esm/{devtools-a4a870b9.js → devtools-0a9ee8bc.js} +1 -1
  266. package/dist/esm/{devtools-a4a870b9.js.map → devtools-0a9ee8bc.js.map} +1 -1
  267. package/dist/esm/index-56c9fca5.js +4 -0
  268. package/dist/esm/index-56c9fca5.js.map +1 -0
  269. package/dist/esm/index.js +1 -1
  270. package/dist/esm/index.js.map +1 -1
  271. package/dist/esm/kol-abbr.entry.js +1 -1
  272. package/dist/esm/kol-abbr.entry.js.map +1 -1
  273. package/dist/esm/kol-accordion.entry.js +1 -1
  274. package/dist/esm/kol-accordion.entry.js.map +1 -1
  275. package/dist/esm/kol-alert-wc.entry.js +1 -1
  276. package/dist/esm/kol-alert.entry.js +1 -1
  277. package/dist/esm/kol-alert.entry.js.map +1 -1
  278. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  279. package/dist/esm/kol-avatar.entry.js +1 -1
  280. package/dist/esm/kol-badge.entry.js +1 -1
  281. package/dist/esm/kol-badge.entry.js.map +1 -1
  282. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  283. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  284. package/dist/esm/kol-button-group.entry.js +1 -1
  285. package/dist/esm/kol-button-link.entry.js +1 -1
  286. package/dist/esm/kol-button-link.entry.js.map +1 -1
  287. package/dist/esm/kol-button-wc.entry.js +1 -1
  288. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  289. package/dist/esm/kol-button.entry.js +1 -1
  290. package/dist/esm/kol-button.entry.js.map +1 -1
  291. package/dist/esm/kol-card.entry.js +1 -1
  292. package/dist/esm/kol-card.entry.js.map +1 -1
  293. package/dist/esm/kol-combobox.entry.js +1 -1
  294. package/dist/esm/kol-combobox.entry.js.map +1 -1
  295. package/dist/esm/kol-details.entry.js +1 -1
  296. package/dist/esm/kol-details.entry.js.map +1 -1
  297. package/dist/esm/kol-drawer.entry.js +1 -1
  298. package/dist/esm/kol-drawer.entry.js.map +1 -1
  299. package/dist/esm/kol-form.entry.js +1 -1
  300. package/dist/esm/kol-form.entry.js.map +1 -1
  301. package/dist/esm/kol-heading-wc.entry.js +1 -1
  302. package/dist/esm/kol-heading.entry.js +1 -1
  303. package/dist/esm/kol-icon.entry.js +1 -1
  304. package/dist/esm/kol-icon.entry.js.map +1 -1
  305. package/dist/esm/kol-image.entry.js +1 -1
  306. package/dist/esm/kol-indented-text-wc.entry.js +1 -1
  307. package/dist/esm/kol-indented-text.entry.js +1 -1
  308. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  309. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  310. package/dist/esm/kol-input-color.entry.js +1 -1
  311. package/dist/esm/kol-input-color.entry.js.map +1 -1
  312. package/dist/esm/kol-input-date.entry.js +1 -1
  313. package/dist/esm/kol-input-date.entry.js.map +1 -1
  314. package/dist/esm/kol-input-email.entry.js +1 -1
  315. package/dist/esm/kol-input-email.entry.js.map +1 -1
  316. package/dist/esm/kol-input-file.entry.js +1 -1
  317. package/dist/esm/kol-input-file.entry.js.map +1 -1
  318. package/dist/esm/kol-input-number.entry.js +1 -1
  319. package/dist/esm/kol-input-number.entry.js.map +1 -1
  320. package/dist/esm/kol-input-password.entry.js +1 -1
  321. package/dist/esm/kol-input-password.entry.js.map +1 -1
  322. package/dist/esm/kol-input-radio.entry.js +1 -1
  323. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  324. package/dist/esm/kol-input-range.entry.js +1 -1
  325. package/dist/esm/kol-input-range.entry.js.map +1 -1
  326. package/dist/esm/kol-input-text.entry.js +1 -1
  327. package/dist/esm/kol-input-text.entry.js.map +1 -1
  328. package/dist/esm/kol-input.entry.js +1 -1
  329. package/dist/esm/kol-kolibri.entry.js +1 -1
  330. package/dist/esm/kol-link-button.entry.js +1 -1
  331. package/dist/esm/kol-link-button.entry.js.map +1 -1
  332. package/dist/esm/kol-link-group.entry.js +1 -1
  333. package/dist/esm/kol-link-wc.entry.js +1 -1
  334. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  335. package/dist/esm/kol-link.entry.js +1 -1
  336. package/dist/esm/kol-link.entry.js.map +1 -1
  337. package/dist/esm/kol-logo.entry.js +1 -1
  338. package/dist/esm/kol-modal.entry.js +1 -1
  339. package/dist/esm/kol-modal.entry.js.map +1 -1
  340. package/dist/esm/kol-nav.entry.js +1 -1
  341. package/dist/esm/kol-nav.entry.js.map +1 -1
  342. package/dist/esm/kol-pagination.entry.js +1 -1
  343. package/dist/esm/kol-pagination.entry.js.map +1 -1
  344. package/dist/esm/kol-popover-button.entry.js +1 -1
  345. package/dist/esm/kol-popover-button.entry.js.map +1 -1
  346. package/dist/esm/kol-popover-wc.entry.js +1 -1
  347. package/dist/esm/kol-progress.entry.js +1 -1
  348. package/dist/esm/kol-quote.entry.js +1 -1
  349. package/dist/esm/kol-select.entry.js +1 -1
  350. package/dist/esm/kol-select.entry.js.map +1 -1
  351. package/dist/esm/kol-single-select.entry.js +1 -1
  352. package/dist/esm/kol-single-select.entry.js.map +1 -1
  353. package/dist/esm/kol-skip-nav.entry.js +1 -1
  354. package/dist/esm/kol-span-wc.entry.js +1 -1
  355. package/dist/esm/kol-spin.entry.js +1 -1
  356. package/dist/esm/kol-split-button.entry.js +1 -1
  357. package/dist/esm/kol-split-button.entry.js.map +1 -1
  358. package/dist/esm/kol-symbol.entry.js +1 -1
  359. package/dist/esm/kol-table-stateful.entry.js +1 -1
  360. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  361. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  362. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  363. package/dist/esm/kol-table-stateless.entry.js +1 -1
  364. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  365. package/dist/esm/kol-table.entry.js +1 -1
  366. package/dist/esm/kol-tabs.entry.js +1 -1
  367. package/dist/esm/kol-tabs.entry.js.map +1 -1
  368. package/dist/esm/kol-textarea.entry.js +1 -1
  369. package/dist/esm/kol-textarea.entry.js.map +1 -1
  370. package/dist/esm/kol-toast-container.entry.js +1 -1
  371. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  372. package/dist/esm/kol-toolbar.entry.js +1 -1
  373. package/dist/esm/kol-toolbar.entry.js.map +1 -1
  374. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  375. package/dist/esm/kol-tooltip-wc.entry.js.map +1 -1
  376. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  377. package/dist/esm/kol-tree-item.entry.js +1 -1
  378. package/dist/esm/kol-tree-wc.entry.js +1 -1
  379. package/dist/esm/kol-tree.entry.js +1 -1
  380. package/dist/esm/kol-version.entry.js +1 -1
  381. package/dist/esm/kolibri.js +1 -1
  382. package/dist/esm/loader.js +1 -1
  383. package/dist/esm/test-component.entry.js +1 -1
  384. package/dist/esm/tooltip-open-tracking-23a84b19.js +4 -0
  385. package/dist/esm/tooltip-open-tracking-23a84b19.js.map +1 -0
  386. package/dist/kolibri/Alert-95f2c21b.js +4 -0
  387. package/dist/kolibri/Alert-95f2c21b.js.map +1 -0
  388. package/dist/kolibri/{Collapsible-96785702.js → Collapsible-1363ae39.js} +1 -1
  389. package/dist/kolibri/FormFieldMsg-cf2af2f6.js +4 -0
  390. package/dist/kolibri/{InternalUnderlinedBadgeText-669e7d65.js → InternalUnderlinedBadgeText-9806a3b1.js} +1 -1
  391. package/dist/kolibri/app-globals-5830a028.js +4 -0
  392. package/dist/kolibri/{app-globals-b9beca2d.js.map → app-globals-5830a028.js.map} +1 -1
  393. package/dist/kolibri/{dev.utils-5bef3b78.js → dev.utils-202fb0ba.js} +1 -1
  394. package/dist/kolibri/{devtools-a4a870b9.js → devtools-0a9ee8bc.js} +1 -1
  395. package/dist/kolibri/{index-a69c328d.js → index-56c9fca5.js} +2 -2
  396. package/dist/kolibri/index-56c9fca5.js.map +1 -0
  397. package/dist/kolibri/index.esm.js +1 -1
  398. package/dist/kolibri/index.esm.js.map +1 -1
  399. package/dist/kolibri/kol-abbr.entry.js +1 -1
  400. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  401. package/dist/kolibri/kol-accordion.entry.js +1 -1
  402. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  403. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  404. package/dist/kolibri/kol-alert.entry.js +1 -1
  405. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  406. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  407. package/dist/kolibri/kol-avatar.entry.js +1 -1
  408. package/dist/kolibri/kol-badge.entry.js +1 -1
  409. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  410. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  411. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  412. package/dist/kolibri/kol-button-group.entry.js +1 -1
  413. package/dist/kolibri/kol-button-link.entry.js +1 -1
  414. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  415. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  416. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  417. package/dist/kolibri/kol-button.entry.js +1 -1
  418. package/dist/kolibri/kol-button.entry.js.map +1 -1
  419. package/dist/kolibri/kol-card.entry.js +1 -1
  420. package/dist/kolibri/kol-card.entry.js.map +1 -1
  421. package/dist/kolibri/kol-combobox.entry.js +1 -1
  422. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  423. package/dist/kolibri/kol-details.entry.js +1 -1
  424. package/dist/kolibri/kol-details.entry.js.map +1 -1
  425. package/dist/kolibri/kol-drawer.entry.js +1 -1
  426. package/dist/kolibri/kol-drawer.entry.js.map +1 -1
  427. package/dist/kolibri/kol-form.entry.js +1 -1
  428. package/dist/kolibri/kol-form.entry.js.map +1 -1
  429. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  430. package/dist/kolibri/kol-heading.entry.js +1 -1
  431. package/dist/kolibri/kol-icon.entry.js +1 -1
  432. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  433. package/dist/kolibri/kol-image.entry.js +1 -1
  434. package/dist/kolibri/kol-indented-text-wc.entry.js +1 -1
  435. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  436. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  437. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  438. package/dist/kolibri/kol-input-color.entry.js +1 -1
  439. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  440. package/dist/kolibri/kol-input-date.entry.js +1 -1
  441. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  442. package/dist/kolibri/kol-input-email.entry.js +1 -1
  443. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  444. package/dist/kolibri/kol-input-file.entry.js +1 -1
  445. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  446. package/dist/kolibri/kol-input-number.entry.js +1 -1
  447. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  448. package/dist/kolibri/kol-input-password.entry.js +1 -1
  449. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  450. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  451. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  452. package/dist/kolibri/kol-input-range.entry.js +1 -1
  453. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  454. package/dist/kolibri/kol-input-text.entry.js +1 -1
  455. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  456. package/dist/kolibri/kol-input.entry.js +1 -1
  457. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  458. package/dist/kolibri/kol-link-button.entry.js +1 -1
  459. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  460. package/dist/kolibri/kol-link-group.entry.js +1 -1
  461. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  462. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  463. package/dist/kolibri/kol-link.entry.js +1 -1
  464. package/dist/kolibri/kol-link.entry.js.map +1 -1
  465. package/dist/kolibri/kol-logo.entry.js +1 -1
  466. package/dist/kolibri/kol-modal.entry.js +1 -1
  467. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  468. package/dist/kolibri/kol-nav.entry.js +1 -1
  469. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  470. package/dist/kolibri/kol-pagination.entry.js +1 -1
  471. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  472. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  473. package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
  474. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  475. package/dist/kolibri/kol-progress.entry.js +1 -1
  476. package/dist/kolibri/kol-quote.entry.js +1 -1
  477. package/dist/kolibri/kol-select.entry.js +1 -1
  478. package/dist/kolibri/kol-select.entry.js.map +1 -1
  479. package/dist/kolibri/kol-single-select.entry.js +1 -1
  480. package/dist/kolibri/kol-single-select.entry.js.map +1 -1
  481. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  482. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  483. package/dist/kolibri/kol-spin.entry.js +1 -1
  484. package/dist/kolibri/kol-split-button.entry.js +1 -1
  485. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  486. package/dist/kolibri/kol-symbol.entry.js +1 -1
  487. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  488. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  489. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  490. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  491. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  492. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  493. package/dist/kolibri/kol-table.entry.js +1 -1
  494. package/dist/kolibri/kol-tabs.entry.js +1 -1
  495. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  496. package/dist/kolibri/kol-textarea.entry.js +1 -1
  497. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  498. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  499. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  500. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  501. package/dist/kolibri/kol-toolbar.entry.js.map +1 -1
  502. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  503. package/dist/kolibri/kol-tooltip-wc.entry.js.map +1 -1
  504. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  505. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  506. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  507. package/dist/kolibri/kol-tree.entry.js +1 -1
  508. package/dist/kolibri/kol-version.entry.js +1 -1
  509. package/dist/kolibri/kolibri.esm.js +1 -1
  510. package/dist/kolibri/test-component.entry.js +1 -1
  511. package/dist/kolibri/tooltip-open-tracking-23a84b19.js +4 -0
  512. package/dist/kolibri/tooltip-open-tracking-23a84b19.js.map +1 -0
  513. package/dist/types/components/button/component.d.ts +1 -2
  514. package/dist/types/components/input-date/shadow.d.ts +1 -0
  515. package/dist/types/components/link/component.d.ts +1 -2
  516. package/dist/types/components/toolbar/shadow.d.ts +1 -0
  517. package/dist/types/index.d.ts +1 -0
  518. package/dist/types/utils/tooltip-open-tracking.d.ts +4 -0
  519. package/doc/button.md +4 -6
  520. package/doc/toaster.md +16 -8
  521. package/package.json +2 -2
  522. package/dist/cjs/Alert-5f3a4a55.js.map +0 -1
  523. package/dist/cjs/index-ab7cd6e6.js +0 -4
  524. package/dist/cjs/index-ab7cd6e6.js.map +0 -1
  525. package/dist/esm/Alert-ba64e682.js.map +0 -1
  526. package/dist/esm/index-a69c328d.js +0 -4
  527. package/dist/esm/index-a69c328d.js.map +0 -1
  528. package/dist/kolibri/Alert-ba64e682.js +0 -4
  529. package/dist/kolibri/Alert-ba64e682.js.map +0 -1
  530. package/dist/kolibri/FormFieldMsg-f0879547.js +0 -4
  531. package/dist/kolibri/app-globals-b9beca2d.js +0 -4
  532. package/dist/kolibri/index-a69c328d.js.map +0 -1
  533. /package/dist/kolibri/{Collapsible-96785702.js.map → Collapsible-1363ae39.js.map} +0 -0
  534. /package/dist/kolibri/{FormFieldMsg-f0879547.js.map → FormFieldMsg-cf2af2f6.js.map} +0 -0
  535. /package/dist/kolibri/{InternalUnderlinedBadgeText-669e7d65.js.map → InternalUnderlinedBadgeText-9806a3b1.js.map} +0 -0
  536. /package/dist/kolibri/{dev.utils-5bef3b78.js.map → dev.utils-202fb0ba.js.map} +0 -0
  537. /package/dist/kolibri/{devtools-a4a870b9.js.map → devtools-0a9ee8bc.js.map} +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},loglevel={exports:{}};!function(e){var t,o;t=commonjsGlobal,o=function(){var e=function(){},t="undefined",o=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"],r={},a=null;function i(e,t){var o=e[t];if("function"==typeof o.bind)return o.bind(e);try{return Function.prototype.bind.call(o,e)}catch(t){return function(){return Function.prototype.apply.apply(o,[e,arguments])}}}function s(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(){for(var o=this.getLevel(),r=0;r<n.length;r++){var a=n[r];this[a]=r<o?e:this.methodFactory(a,o,this.name)}if(this.log=this.debug,typeof console===t&&o<this.levels.SILENT)return"No console available for logging"}function c(e){return function(){typeof console!==t&&(l.call(this),this[e].apply(this,arguments))}}function u(n,r,a){return function(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&o?s:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}(n)||c.apply(this,arguments)}function d(e,o){var i,s,c,d=this,g="loglevel";function h(){var e;if(typeof window!==t&&g){try{e=window.localStorage[g]}catch(e){}if(typeof e===t)try{var o=window.document.cookie,n=encodeURIComponent(g),r=o.indexOf(n+"=");-1!==r&&(e=/^([^;]+)/.exec(o.slice(r+n.length+1))[1])}catch(e){}return void 0===d.levels[e]&&(e=void 0),e}}function f(e){var t=e;if("string"==typeof t&&void 0!==d.levels[t.toUpperCase()]&&(t=d.levels[t.toUpperCase()]),"number"==typeof t&&t>=0&&t<=d.levels.SILENT)return t;throw new TypeError("log.setLevel() called with invalid level: "+e)}"string"==typeof e?g+=":"+e:"symbol"==typeof e&&(g=void 0),d.name=e,d.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},d.methodFactory=o||u,d.getLevel=function(){return null!=c?c:null!=s?s:i},d.setLevel=function(e,o){return c=f(e),!1!==o&&function(e){var o=(n[e]||"silent").toUpperCase();if(typeof window!==t&&g){try{return void(window.localStorage[g]=o)}catch(e){}try{window.document.cookie=encodeURIComponent(g)+"="+o+";"}catch(e){}}}(c),l.call(d)},d.setDefaultLevel=function(e){s=f(e),h()||d.setLevel(e,!1)},d.resetLevel=function(){c=null,function(){if(typeof window!==t&&g){try{window.localStorage.removeItem(g)}catch(e){}try{window.document.cookie=encodeURIComponent(g)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(e){}}}(),l.call(d)},d.enableAll=function(e){d.setLevel(d.levels.TRACE,e)},d.disableAll=function(e){d.setLevel(d.levels.SILENT,e)},d.rebuild=function(){if(a!==d&&(i=f(a.getLevel())),l.call(d),a===d)for(var e in r)r[e].rebuild()},i=f(a?a.getLevel():"WARN");var p=h();null!=p&&(c=f(p)),l.call(d)}(a=new d).getLogger=function(e){if("symbol"!=typeof e&&"string"!=typeof e||""===e)throw new TypeError("You must supply a name when creating a logger.");var t=r[e];return t||(t=r[e]=new d(e,a.methodFactory)),t};var g=typeof window!==t?window.log:void 0;return a.noConflict=function(){return typeof window!==t&&window.log===a&&(window.log=g),a},a.getLoggers=function(){return r},a.default=a,a},e.exports?e.exports=o():t.log=o()}(loglevel);const h=loglevel.exports,I=(e,t)=>o=>o(e,t),P=(e,t)=>o=>o(e,t,{append:!1}),$=()=>{const e=typeof process<"u"&&process.env?process.env:{},t="test"===e.NODE_ENV,o="VITEST"in e,n="JEST_WORKER_ID"in e,r="PLAYWRIGHT_TEST_BASE_URL"in e,a="true"===e.CI,i="true"===e.TEST||"true"===e.IS_TEST,s=typeof navigator<"u"&&!0===navigator.webdriver,l=typeof navigator<"u"&&/playwright|puppeteer|webdriver|selenium|testcafe/i.test(navigator.userAgent);return t||o||n||r||a||i||s||l},n$1={A11yUi:{CSS_STYLE_CACHE:new Map,IS_TEST_ENVIRONMENT:$(),PERFORMANCE_MEASURES:new Map,STYLING_TASK_QUEUE:new Map,THEMES:new Map,showAverageTimes:()=>{const e={};for(const[t,o]of n$1.A11yUi.PERFORMANCE_MEASURES.entries())e[t]=[o.totalTime/o.count,o.count];const t=Object.entries(e).sort((e,t)=>t[1][0]-e[1][0]);return console.table(Object.fromEntries(t.map(([e,[t,o]])=>[e,{"avg (ms)":parseFloat(t.toFixed(2)),count:o}]))),e}}};let d=!0,f$1=!1;const j=/^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/,F=e=>"string"==typeof e&&j.test(e),E=e=>{if(!F(e))throw new Error(`[Theming] The theme identifier "${"string"==typeof e?e:""}" (Type: ${typeof e}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`)},g=e=>e.replace(/\/\*[\s\S]*?\*\//g,"").replace(/\s*([{},;])\s*/g,"$1").replace(/:\s+/g,":").replace(/\s+/g," ").replace(/;\}/g,"}").trim(),Y=(e,t,o,n)=>u$1(e,t,o,n),u$1=(e,t,o,n)=>{(n=n??{}).append=n.append??!1,E(e),d&&!f$1&&(f$1=!0,h.warn(`[Theming] The theme process is locked. This means that the theme "${e}" should not be patched.\n\n import { register } from 'adopted-style-sheets';\n import { defineCustomElements } from '...';\n import { THEME } from '...';\n\n register(THEME, defineCustomElements)\n .then(() => {\n // run your app or website\n })\n .catch(console.warn);`));let r=n$1.A11yUi.THEMES.get(e);if(r||(r=new Map,n$1.A11yUi.THEMES.set(e,r)),n.append&&r.has(t)){const e=r.get(t);r.set(t,g(`${e}${o}`))}else r.set(t,g(o))},k=(e,t,o,n)=>p(e,t,o,n),p=(e,t,o,n)=>(E(e),"object"==typeof t&&null!==t&&Object.getOwnPropertyNames(t).forEach(r=>{const a=t[r],i=r.toLowerCase(),s="function"!=typeof n?.transformTagName||["GLOBAL","PROPERTIES"].includes(r)?r:n.transformTagName(i);"string"==typeof a&&a.length>0&&u$1(e,s.toUpperCase(),a,o)}),e),S=e=>{if(e instanceof HTMLElement){if("string"==typeof e.dataset.theme)return e;{let t=e.parentNode;for(;t instanceof ShadowRoot;)t=t.host;return S(t)}}return null},A=(e={})=>"false"!==e.themeEncroachCss&&"true"!==e.themeReset&&{mode:"after"===e.themeEncroachCssMode||"before"===e.themeEncroachCssMode?e.themeEncroachCssMode:"before"},C=()=>"object"==typeof n$1.A11yUi.Theme&&null!==n$1.A11yUi.Theme&&"boolean"==typeof n$1.A11yUi.Theme.cache&&"object"==typeof n$1.A11yUi.Theme.encroachCss&&null!==n$1.A11yUi.Theme.encroachCss&&"string"==typeof n$1.A11yUi.Theme.encroachCss.mode&&"string"==typeof n$1.A11yUi.Theme.name,G=()=>!("object"==typeof n$1.A11yUi.Theme&&null!==n$1.A11yUi.Theme)||"default"!==n$1.A11yUi.Theme.name,b=e=>{if(C())return n$1.A11yUi.Theme;{const t={cache:!0,encroachCss:A(),loglevel:"silent",mode:"csr",name:null},o=S(e);return o instanceof HTMLElement&&(t.cache="false"!==o.dataset.themeCache,t.encroachCss=A(o.dataset),t.loglevel="debug"===o.dataset.themeLoglevel?o.dataset.themeLoglevel:"silent",t.mode="ssr"===o.dataset.themeMode?o.dataset.themeMode:"csr",t.name=o.dataset.theme||null),t}},B=(e,t)=>({cache:!1!==t.cache,detect:"auto"===t.detect?"auto":"fixed",encroachCss:!1!==t.encroachCss&&("object"!=typeof t.encroachCss||null==t.encroachCss||"after"!==t.encroachCss.mode&&"before"!==t.encroachCss.mode?{mode:"before"}:t.encroachCss),loglevel:"debug"===t.loglevel?t.loglevel:"silent",mode:"ssr"===t.mode?t.mode:"csr",name:"string"==typeof t.name?t.name:e}),K=(e,t)=>{!1===C()&&G()&&"object"==typeof t&&null!==t&&("fixed"===(t=B(e,t)).detect?(null===t.name&&"string"==typeof e&&(t.name=e),e===t.name&&(n$1.A11yUi.Theme=t,h.info(`[Theming] Theme "${e}" was set as default theme.`))):f$1||(f$1=!0,h.warn("[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.")))};let U=!1;const V=(e,t,o={})=>{U||(U=!0,d=!1,typeof window<"u"&&(window.A11yUi=n$1.A11yUi)),"function"==typeof e?e=new Set([e]):Array.isArray(e)&&(e=new Set(e)),e instanceof Set&&e.forEach(e=>{"function"==typeof e&&1===e.length?K(e((e,t,n)=>p(e,t,n,o)),{cache:o.theme?.cache,detect:o.theme?.detect,encroachCss:o.theme?.encroachCss,mode:o.theme?.mode,name:o.theme?.name}):h.error("[Theming] An attempt was made to load an incompatible theme.")}),d=!0,"function"==typeof t?t=new Set([t]):Array.isArray(t)&&(t=new Set(t));const n=[];return t.forEach(e=>{const t=e();t instanceof Promise&&n.push(t)}),Promise.all(n)},w=new Set,W=/--[^;]+/g,q=/:/,J=typeof MutationObserver<"u";let M=25,N=()=>{M=Math.min(25+20*Math.log2(n$1.A11yUi.STYLING_TASK_QUEUE.size+1),250)};const X=(e,t)=>{let o=t.match(W);if(Array.isArray(o)){o=o.filter(e=>q.test(e));const t=document.createElement("style");t.innerHTML=`.${e} {${o.join(";")}}`,document.querySelector("head")?.appendChild(t)}w.add(e)},y=(e,t)=>{const o=n$1.A11yUi.THEMES.get(e);return o instanceof Map&&o.has(t)?o.get(t):""},Z=e=>{for(const t of Array.from(e.childNodes)){if(!(t instanceof HTMLStyleElement&&"STYLE"===t.tagName&&void 0===t.dataset.themingFallback))break;e.removeChild(t)}},ee=(e,t)=>{try{if("ssr"===n$1.A11yUi.Theme?.mode)throw new Error("SSR");const o=[];t.forEach(e=>{const t=new CSSStyleSheet;t.replaceSync(e),o.push(t)}),e.adoptedStyleSheets=o}catch{[...t].reverse().forEach((t,o)=>{if("string"!=typeof t||0===t.length)return;const n=document.createElement("style");switch(n.dataset.themingFallback="",o){case 4:n.dataset.themingBaseA11y="";break;case 3:n.dataset.themingBaseGlobal="";break;case 2:n.dataset.themingBaseComponent="";break;case 1:n.dataset.themingCustomGlobal="";break;case 0:n.dataset.themingCustomComponent="";break;default:n.dataset.themingUnknown=""}n.innerHTML=t,e.insertBefore(n,e.firstChild)})}},te=(e,t,o)=>{if(!1!==o){const n=[...Array.from(e.childNodes).filter(e=>e instanceof HTMLStyleElement&&"STYLE"===e.tagName)];let r;try{r=[...Array.from(e.adoptedStyleSheets)]}catch{r=[]}"before"===o?.mode?(n.reverse().forEach(e=>t.unshift(e.innerHTML)),r.reverse().forEach(e=>t.unshift(Array.from(e.cssRules).map(e=>e.cssText).join("")))):"after"===o?.mode&&(n.forEach(e=>t.push(e.innerHTML)),r.forEach(e=>t.push(Array.from(e.cssRules).map(e=>e.cssText).join(""))))}},se=(e,t,o)=>{const n=t.name||"default";let r;try{if(null===e.shadowRoot)throw new Error("ShadowRoot is null");r=e.shadowRoot}catch{r=e}if(n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.has(e.tagName))v(e,r,n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.get(e.tagName),o);else{const a=y(n,"PROPERTIES"),i=y(n,"GLOBAL"),s=y(n,e.tagName);!1===w.has(n)&&X(n,i);const l=[a,i,s];te(r,l,t.encroachCss),!0===t.cache&&(!1===n$1.A11yUi.CSS_STYLE_CACHE.has(n)&&n$1.A11yUi.CSS_STYLE_CACHE.set(n,new Map),n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.set(e.tagName,l)),v(e,r,l,o)}},v=(e,t,o,n)=>{const r=performance.now();if(Z(t),ee(t,o),H(e),n(),n$1.A11yUi.PERFORMANCE_MEASURES.has(e.tagName)){const t=n$1.A11yUi.PERFORMANCE_MEASURES.get(e.tagName);t.count+=1,t.totalTime+=performance.now()-r}else n$1.A11yUi.PERFORMANCE_MEASURES.set(e.tagName,{count:1,totalTime:performance.now()-r})},L=e=>{const t=n$1.A11yUi.STYLING_TASK_QUEUE.get(e);if(t){const{resetCss:o,themeDetails:n}=t;se(e,n,o),H(e)}};let T=e=>{const t=setTimeout(()=>{clearTimeout(t),e.classList.contains("hydrated")?L(e):T(e)},M)};const ae={attributes:!0,attributeFilter:["class"],childList:!1,subtree:!1},oe={attributes:!0,attributeFilter:[],childList:!1,subtree:!1},R=J?new MutationObserver((e,t)=>{for(const o of e){const e=o.target;e.classList.contains("hydrated")&&(L(e),t.observe(e,oe))}}):null;R&&(T=e=>R.observe(e,ae),N=()=>{});let _=e=>{const t=getComputedStyle(e).getPropertyValue("--theme-visibility-delay").trim();if(t.endsWith("ms"))return parseFloat(t);if(t.endsWith("s"))return 1e3*parseFloat(t);{const e=parseFloat(t);return isNaN(e)?0:e}};n$1.A11yUi.IS_TEST_ENVIRONMENT&&(_=()=>0);const O=(e,t)=>{e.style.setProperty("visibility",t),e.dataset.themed=""},re=(e,t)=>{const o=e.style.visibility||null;n$1.A11yUi.STYLING_TASK_QUEUE.set(e,{resetCss:()=>{const t=_(e);t>0?setTimeout(()=>{O(e,o)},t):O(e,o)},themeDetails:t}),e.style.setProperty("visibility","hidden","important"),T(e)},H=e=>{n$1.A11yUi.STYLING_TASK_QUEUE.delete(e),N()},ne=(e,t)=>{re(e,{...n$1.A11yUi.Theme,...t})};class ie{Prefix;Key;Tag;createTheme=(e,t)=>P(e,t);createTranslation=(e,t)=>I(e,t);constructor(e,t,o){this.Prefix=e,this.Key=Object.getOwnPropertyNames(t),this.Tag=Object.getOwnPropertyNames(o)}}var KeyEnum,TagEnum;!function(e){e[e.error=0]="error",e[e.warning=1]="warning",e[e.info=2]="info",e[e.success=3]="success",e[e.message=4]="message",e[e.close=5]="close",e[e["form-description"]=6]="form-description",e[e.of=7]="of",e[e.characters=8]="characters",e[e.new=9]="new",e[e["no-entries"]=10]="no-entries",e[e["change-order"]=11]="change-order",e[e["action-running"]=12]="action-running",e[e["action-done"]=13]="action-done",e[e["page-first"]=14]="page-first",e[e["page-back"]=15]="page-back",e[e["page-next"]=16]="page-next",e[e["page-last"]=17]="page-last",e[e["entries-per-site"]=18]="entries-per-site",e[e["page-current"]=19]="page-current",e[e["page-selected"]=20]="page-selected",e[e["page-per-site"]=21]="page-per-site",e[e["logo-description"]=22]="logo-description",e[e["open-link-in-tab"]=23]="open-link-in-tab",e[e["kolibri-logo"]=24]="kolibri-logo"}(KeyEnum||(KeyEnum={})),function(e){e[e.abbr=0]="abbr",e[e.accordion=1]="accordion",e[e.alert=2]="alert",e[e.avatar=3]="avatar",e[e.badge=4]="badge",e[e.breadcrumb=5]="breadcrumb",e[e.button=6]="button",e[e["button-group"]=7]="button-group",e[e["button-link"]=8]="button-link",e[e.card=9]="card",e[e.combobox=10]="combobox",e[e.details=11]="details",e[e.drawer=12]="drawer",e[e.form=13]="form",e[e.heading=14]="heading",e[e.icon=15]="icon",e[e.image=16]="image",e[e["indented-text"]=17]="indented-text",e[e["input-checkbox"]=18]="input-checkbox",e[e["input-color"]=19]="input-color",e[e["input-date"]=20]="input-date",e[e["input-email"]=21]="input-email",e[e["input-file"]=22]="input-file",e[e["input-number"]=23]="input-number",e[e["input-password"]=24]="input-password",e[e["input-radio"]=25]="input-radio",e[e["input-range"]=26]="input-range",e[e["input-text"]=27]="input-text",e[e.kolibri=28]="kolibri",e[e.link=29]="link",e[e["link-button"]=30]="link-button",e[e["link-group"]=31]="link-group",e[e.logo=32]="logo",e[e.modal=33]="modal",e[e.nav=34]="nav",e[e.pagination=35]="pagination",e[e["popover-button"]=36]="popover-button",e[e.progress=37]="progress",e[e.quote=38]="quote",e[e.select=39]="select",e[e["single-select"]=40]="single-select",e[e["skip-nav"]=41]="skip-nav",e[e.spin=42]="spin",e[e["split-button"]=43]="split-button",e[e.symbol=44]="symbol",e[e.table=45]="table",e[e["table-stateful"]=46]="table-stateful",e[e["table-stateless"]=47]="table-stateless",e[e.tabs=48]="tabs",e[e.textarea=49]="textarea",e[e["toast-container"]=50]="toast-container",e[e.toolbar=51]="toolbar",e[e.tooltip=52]="tooltip",e[e.tree=53]="tree",e[e["tree-item"]=54]="tree-item"}(TagEnum||(TagEnum={}));const getWindow=()=>"undefined"==typeof window?null:window,getDocument=()=>void 0===getWindow().document?null:getWindow().document;let DEV_MODE=!1,EXPERIMENTAL_MODE=!1,COLOR_CONTRAST_ANALYSIS=!1;const getDevMode=()=>!0===DEV_MODE,setDevMode=e=>{DEV_MODE=!0===e},getExperimentalMode=()=>!0===EXPERIMENTAL_MODE,setExperimentalMode=e=>{EXPERIMENTAL_MODE=!0===e},getColorContrastAnalysis=()=>!0===COLOR_CONTRAST_ANALYSIS,setColorContrastAnalysis=e=>{COLOR_CONTRAST_ANALYSIS=!0===e},LOG_STYLE="color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000",mapToArray=e=>Array.isArray(e)?e:[e],getLogLabel=e=>`%c${e}`,handleClassifier=(e,t)=>"string"==typeof t&&t.length>0?`${getLogLabel(e)} | ${t}`:getLogLabel(e),getShield=(e,t)=>[handleClassifier(e,null==t?void 0:t.classifier),`${LOG_STYLE};${(null==t?void 0:t.overwriteStyle)||""}`],isDevModeOrForceLog=(e,t)=>e()||!0===t;class Logger{constructor(e,t){this.label=e,this.devMode=t}debug(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.debug(...getShield(this.label,t),...mapToArray(e))}info(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.info(...getShield(this.label,t),...mapToArray(e))}trace(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.trace(...getShield(this.label,t),...mapToArray(e))}warn(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.warn(...getShield(this.label,t),...mapToArray(e))}error(e,t){console.error(...getShield(this.label,t),...mapToArray(e))}throw(e,t){if(isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog))throw new Error(...getShield(this.label,t),...mapToArray(e))}}const Log=new Logger("KoliBri",getDevMode),a11yCache=new Set,a11yHint=(e,t)=>{(!1===a11yCache.has(e)||(null==t?void 0:t.force))&&(a11yCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"✋ a11y",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #09f"}))},deprecatedCache=new Set,deprecatedHint=(e,t)=>{(!1===deprecatedCache.has(e)||(null==t?void 0:t.force))&&(deprecatedCache.add(e),Log.warn([e].concat((null==t?void 0:t.details)||[]),{classifier:"🔥 deprecated",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f00"}))},devCache=new Set,devHint=(e,t)=>{(!1===devCache.has(e)||(null==t?void 0:t.force))&&(devCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"💻 dev",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f09"}))},devWarning=(e,t)=>{(!1===devCache.has(e)||(null==t?void 0:t.force))&&(devCache.add(e),Log.warn([e].concat((null==t?void 0:t.details)||[]),{classifier:"⚠️ dev",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f09"}))},featureCache=new Set,featureHint=(e,t=!1,o)=>{(!1===featureCache.has(e)||(null==o?void 0:o.force))&&(featureCache.add(e),e+=!0===t?" ✅":"",Log.debug([e].concat((null==o?void 0:o.details)||[]),{classifier:"🌟 feature",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #309"}))};devHint("We appreciate any feedback, comments, screenshots, or demo links of an application based on KoliBri (kolibri@itzbund.de). Thank you!");const uiUxCache=new Set,uiUxHint=(e,t)=>{(!1===uiUxCache.has(e)||(null==t?void 0:t.force))&&(uiUxCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"📑 ui/ux",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #060;"}))},a11yHintDisabled=()=>{a11yHint('"Disabled" limits accessibility and visibility. From an accessibility perspective, we recommend using the readonly attribute instead of disabled.\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae')},a11yHintLabelingLandmarks=e=>{"string"==typeof e&&""!==e||a11yHint("Some structural elements, such as the nav tag, can be used multiple times on a webpage. To distinguish between similarly named structural elements, it is necessary to set an ARIA label.\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns")},uiUxHintMillerscheZahl=(e,t=8)=>{t>7&&uiUxHint(`[${e}] Within navigation structures, it is recommended to use no more than 7 menu items.\n\nLink:\n- https://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two`)};var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(e){return Math.pow((e+.055)/1.055,2.4)}function a(o){var a=o[0]/255,i=o[1]/255,s=o[2]/255,l=a<=.03928?a*e:u(a),c=i<=.03928?i*e:u(i),d=s<=.03928?s*e:u(s);return l*n+c*r+d*t}function i(e){var t=255;8===(e=e.replace(/^#/,"")).length&&(t=parseInt(e.slice(6,8),16),e=e.substring(0,6)),4===e.length&&(t=parseInt(e.slice(3,4).repeat(2),16),e=e.substring(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var o=parseInt(e,16);return[o>>16,o>>8&255,255&o,t]}function c(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function o(e,t){return c(a(e),a(t))}function s(e,t){return o(i(e),i(t))}function f(e){return e>=7?"AAA":e>=4.5?"AA":e>=3?"AA Large":"Fail"}var rgbaConvert={exports:{}};function arr(e){var t=parse(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function obj(e){var t=parse(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function css(e){var t=parse(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function hex(e){3==(t=parse(e)).length&&t.push(255);var t,o=255==t[3],n=num2hex(t[0]),r=num2hex(t[1]),a=num2hex(t[2]),i=isshort(n,r,a,t=num2hex(Math.round(t[3])));return o?i?"#"+n.charAt(0)+r.charAt(0)+a.charAt(0):"#"+n+r+a:i?"#"+n.charAt(0)+r.charAt(0)+a.charAt(0)+t.charAt(0):"#"+n+r+a+t}function num(e){var t=parse(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function parse(e){return"string"==typeof e?name(e=e.toLowerCase())||hex3(e)||hex6(e)||rgb(e)||rgba(e)||[0,0,0,255]:object(e)||array(e)||number(e)||[0,0,0,255]}function num2hex(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function isshort(e,t,o,n){var r=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=r.indexOf(e)&&-1!=r.indexOf(t)&&-1!=r.indexOf(o)&&-1!=r.indexOf(n)}function name(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function hex2num(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function hex3(e){var t=e.replace(/^#/,""),o=t.length;if(3==o||4==o){var n=hex2num(t[0]),r=hex2num(t[1]),a=hex2num(t[2]),i=3==o?255:hex2num(t[3]);if(isNaN(n)||isNaN(r)||isNaN(a)||isNaN(i))return;return[n,r,a,i]}}function hex6(e){var t=e.replace(/^#/,""),o=t.length;if(6==o||8==o){var n=hex2num(t.slice(0,2)),r=hex2num(t.slice(2,4)),a=hex2num(t.slice(4,6)),i=6==o?255:hex2num(t.slice(6,8));if(isNaN(n)||isNaN(r)||isNaN(a)||isNaN(i))return;return[n,r,a,i]}}function getnum(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function object(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=getnum(null!=e.r?e.r:null!=e.red?e.red:0,!0),o=getnum(null!=e.g?e.g:null!=e.green?e.green:0,!0),n=getnum(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),r=getnum(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=o&&-1!=n&&-1!=r)return[t,o,n,r]}}function array(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=getnum(e[0],!0),o=getnum(e[1],!0),n=getnum(e[2],!0),r=getnum(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=o&&-1!=n&&-1!=r)return[t,o,n,r]}}function number(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function rgb(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=getnum(t[0],!0),n=getnum(t[1],!0),r=getnum(t[2],!0);if(-1!=o&&-1!=n&&-1!=r)return[o,n,r,255]}}function rgba(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=getnum(t[0],!0),n=getnum(t[1],!0),r=getnum(t[2],!0),a=getnum(255*t[3]);if(-1!=o&&-1!=n&&-1!=r&&-1!=a)return[o,n,r,a]}}rgbaConvert.exports=arr,rgbaConvert.exports.arr=arr,rgbaConvert.exports.obj=obj,rgbaConvert.exports.css=css,rgbaConvert.exports.hex=hex,rgbaConvert.exports.num=num;const rgba$1=rgbaConvert.exports,pushNodes=(e,t)=>{t.forEach(t=>{!1===e.has(t)&&e.add(t)})},querySelectorAll=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const o=new Set;pushNodes(o,t.querySelectorAll(e));const n=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<n.length;t++){const r=n[t].shadowRoot;pushNodes(o,querySelectorAll(e,"object"==typeof r&&null!==r?r:n[t]))}return Array.from(o)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},querySelector=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let o=t.querySelector(e);if(null===o){const n=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<n.length;t++){const r=n[t].shadowRoot;if(o=querySelector(e,"object"==typeof r&&null!==r?r:n[t]),null!==o)break}}return o}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")},OBJECT_OBJECT=/\[object Object\]/,objectObjectHandler=(e,t)=>{"string"==typeof e&&OBJECT_OBJECT.test(e)||t()},emptyStringByArrayHandler=(e,t)=>{"string"==typeof e&&""===e||t()},setEventTarget=(e,t)=>{getExperimentalMode()&&(Log.debug([e,t]),Log.debug("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},patchState=e=>{var t,o,n;null===(t=e.nextHooks)||void 0===t||t.forEach((t,o)=>{var n;const r=t.get("beforePatch");"function"==typeof r&&r(null===(n=e.nextState)||void 0===n?void 0:n.get(o),e.nextState,e,o)}),(null===(o=e.nextState)||void 0===o?void 0:o.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(n=e.nextHooks)||void 0===n||n.forEach((t,o)=>{const n=t.get("afterPatch");"function"==typeof n&&n(e.state[o],e.state,e,o)})),delete e.nextHooks},setState=(e,t,o,n={})=>{var r,a;void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map);e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof n.afterPatch&&(null===(r=e.nextHooks.get(t))||void 0===r||r.set("afterPatch",n.afterPatch)),"function"==typeof n.beforePatch&&(null===(a=e.nextHooks.get(t))||void 0===a||a.set("beforePatch",n.beforePatch)),e.nextState.set(t,o),patchState(e)},logWarn=(e,t,o,n)=>{devHint(`[${e.constructor.name}] The property value: (${o}) for '${t}' is not valid. Allowed values are: ${Array.from(n).join(", ")}`)};function watchValidator(e,t,o,n,r,a={}){o(r)?setState(e,t,r,a.hooks):void 0===r&&!0!==a.required&&o(a.defaultValue)?setState(e,t,a.defaultValue,a.hooks):(a.required||n.add(null),logWarn(e,t,r,n))}const watchBoolean=(e,t,o,n)=>{watchValidator(e,t,e=>"boolean"==typeof e,new Set(["Boolean {true, false}"]),o,n)},watchString=(e,t,o,n={})=>{const r="number"==typeof n.minLength?null==n?void 0:n.minLength:0;watchValidator(e,t,e=>"string"==typeof e&&e.length>=r&&(void 0===(null==n?void 0:n.maxLength)||e.length<=n.maxLength),new Set(["String"]),o,n)},watchNumber=(e,t,o,n)=>{watchValidator(e,t,e=>"number"==typeof e&&(void 0===(null==n?void 0:n.min)||"number"==typeof(null==n?void 0:n.min)&&e>=n.min)&&(void 0===(null==n?void 0:n.max)||"number"==typeof(null==n?void 0:n.max)&&e<=n.max),new Set(["Number"]),o,n)},watchJsonArrayString=(e,t,o,n,r=e=>e==e,a={})=>{emptyStringByArrayHandler(n,()=>{objectObjectHandler(n,()=>{void 0===n&&(n=[]);try{try{n=parseJson(n)}catch(e){}if(Array.isArray(n)){const i=n.find(e=>!o(e));void 0===i&&r(n)?setState(e,t,n,a.hooks):objectObjectHandler(i,()=>{throw Log.debug(i),new Error("↑ The schema for the property (_options) is not valid. The value will not be changed.")})}else objectObjectHandler(n,()=>{throw Log.debug(n),new Error("↑ The schema for the property (_options) is not valid. The value will not be changed.")})}catch(e){Log.debug(e)}})})},stringifyJson=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw Log.warn(["stringifyJson",e]),Log.error("↑ The JSON could not be converted to a string. A stringifiable JSON is expected."),new Error}},JSON_CHARS=/^[{[]/,parseJson=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(JSON_CHARS.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){Log.warn(["parseJson",e]),Log.error("↑ The JSON string could not be parsed. Make sure that single quotes in the text are escaped (&#8216;).")}}throw new Error},mapBoolean2String=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,mapStringOrBoolean2String=e=>"string"==typeof e?e:mapBoolean2String(e),koliBriQuerySelector=(e,t)=>querySelector(e,t||getDocument()),koliBriQuerySelectorAll=(e,t)=>querySelectorAll(e,t||getDocument());let DEFAULT_COLOR_CONTRAST=null;const getDefaultColorContrast=()=>(DEFAULT_COLOR_CONTRAST=DEFAULT_COLOR_CONTRAST||{backgroundColor:"#00000000",color:"#00000000",domNode:getDocument().body,level:"Fail",score:1},DEFAULT_COLOR_CONTRAST),TRANSPARENT_REGEXP=/(\d+, ){3}0\)/,koliBriA11yColorContrast=(e,t=getDefaultColorContrast())=>{const o=getComputedStyle(e),n=TRANSPARENT_REGEXP.test(o.backgroundColor)?t.backgroundColor:rgba$1.hex(o.backgroundColor),r=TRANSPARENT_REGEXP.test(o.color)?t.color:rgba$1.hex(o.color),a=s(n,r),i={backgroundColor:n,color:r,domNode:e,level:f(a),score:a};return a<4.5&&Log.error(["Color-Contrast-Error",{backgroundColor:i.backgroundColor,color:i.color,level:i.level,score:i.score},i.domNode]),i},koliBriQuerySelectorColors=(e,t=getDefaultColorContrast())=>{t.domNode instanceof HTMLElement&&(t=koliBriA11yColorContrast(t.domNode,t));const o=t.domNode.querySelector(e);if(null===o){const o=t.domNode.querySelectorAll('[class="hydrated"]');for(let n=0;n<o.length&&(t.domNode=o[n],null===(t=koliBriQuerySelectorColors(e,t)).domNode);n++);return t}return koliBriA11yColorContrast(o,t)};class KoliBriUtils{static queryHtmlElementColors(e,t,o=!1,n=!0){let r=null;if(!0===o||!1===KoliBriUtils.executionLock)if(!1===o&&(KoliBriUtils.cache.clear(),KoliBriUtils.cache.set(t.domNode,t),KoliBriUtils.executionLock=!0,!0===n&&Log.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)r=t;else{const o=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)o.add(e[t])}const n=t.domNode;if("function"==typeof n.assignedNodes){const e=n.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&o.add(e[t])}const a=t.domNode.children;for(let e=0;e<a.length;e++)o.add(a[e]);const i=Array.from(o);for(let o=0;o<i.length;o++){let n=KoliBriUtils.cache.get(i[o]);void 0===n&&(n=koliBriA11yColorContrast(i[o],t)),KoliBriUtils.cache.set(i[o],n);const a=KoliBriUtils.queryHtmlElementColors(e,n,!0,!1);if(null!==a){r=a;break}}}else Log.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===o&&(!0===n&&Log.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`),KoliBriUtils.executionLock=!1,KoliBriUtils.cache.clear()),r}}KoliBriUtils.executionLock=!1,KoliBriUtils.cache=new Map;class KoliBriDevHelper{}KoliBriDevHelper.getCssStyle=y,KoliBriDevHelper.patchTheme=k,KoliBriDevHelper.patchThemeTag=Y,KoliBriDevHelper.querySelector=koliBriQuerySelector,KoliBriDevHelper.querySelectorAll=koliBriQuerySelectorAll,KoliBriDevHelper.stringifyJson=stringifyJson;let processEnv="development";try{processEnv="production"}catch(e){processEnv="production"}const handleSlotContent=(e,t,o)=>{if(e&&t&&"string"==typeof o){const n=e.querySelector(`[slot="${o}"]`);n&&t.appendChild(n)}},showExpertSlot=e=>""===e,buildBadgeTextString=(e,t)=>e||t||"",isObject=e=>"object"==typeof e&&null!==e,isString=(e,t=0)=>"string"==typeof e&&e.length>=t,isStyle=e=>{if("object"!=typeof e||null===e)return isString(e,1);for(const t in e)if(!1===isString(t,1))return!1;return!0},STATE_CHANGE_EVENT=new Event("StateChange");var KoliBriProgressVariantEnum;!function(e){e.bar="bar",e.cycle="cycle"}(KoliBriProgressVariantEnum||(KoliBriProgressVariantEnum={}));const KoliBri=new ie("kol",KeyEnum,TagEnum);export{mapStringOrBoolean2String as A,setEventTarget as B,showExpertSlot as C,getExperimentalMode as D,devHint as E,devWarning as F,watchNumber as G,isString as H,isStyle as I,buildBadgeTextString as J,KoliBri as K,Log as L,handleSlotContent as M,deprecatedHint as N,KoliBriProgressVariantEnum as O,emptyStringByArrayHandler as P,koliBriQuerySelector as Q,getDevMode as R,STATE_CHANGE_EVENT as S,getColorContrastAnalysis as T,koliBriA11yColorContrast as U,V,koliBriQuerySelectorAll as W,koliBriQuerySelectorColors as X,KoliBriUtils as Y,stringifyJson as Z,KoliBriDevHelper as a,b,setExperimentalMode as c,setColorContrastAnalysis as d,getWindow as e,a11yHint as f,getDocument as g,featureHint as h,isObject as i,watchBoolean as j,a11yHintDisabled as k,setState as l,watchString as m,ne as n,objectObjectHandler as o,processEnv as p,parseJson as q,rgba$1 as r,setDevMode as s,s as t,uiUxHint as u,a11yHintLabelingLandmarks as v,watchValidator as w,watchJsonArrayString as x,uiUxHintMillerscheZahl as y,mapBoolean2String as z};
4
+ var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},loglevel={exports:{}};!function(e){var t,o;t=commonjsGlobal,o=function(){var e=function(){},t="undefined",o=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"],r={},a=null;function i(e,t){var o=e[t];if("function"==typeof o.bind)return o.bind(e);try{return Function.prototype.bind.call(o,e)}catch(t){return function(){return Function.prototype.apply.apply(o,[e,arguments])}}}function s(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(){for(var o=this.getLevel(),r=0;r<n.length;r++){var a=n[r];this[a]=r<o?e:this.methodFactory(a,o,this.name)}if(this.log=this.debug,typeof console===t&&o<this.levels.SILENT)return"No console available for logging"}function c(e){return function(){typeof console!==t&&(l.call(this),this[e].apply(this,arguments))}}function u(n,r,a){return function(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&o?s:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}(n)||c.apply(this,arguments)}function d(e,o){var i,s,c,d=this,g="loglevel";function h(){var e;if(typeof window!==t&&g){try{e=window.localStorage[g]}catch(e){}if(typeof e===t)try{var o=window.document.cookie,n=encodeURIComponent(g),r=o.indexOf(n+"=");-1!==r&&(e=/^([^;]+)/.exec(o.slice(r+n.length+1))[1])}catch(e){}return void 0===d.levels[e]&&(e=void 0),e}}function f(e){var t=e;if("string"==typeof t&&void 0!==d.levels[t.toUpperCase()]&&(t=d.levels[t.toUpperCase()]),"number"==typeof t&&t>=0&&t<=d.levels.SILENT)return t;throw new TypeError("log.setLevel() called with invalid level: "+e)}"string"==typeof e?g+=":"+e:"symbol"==typeof e&&(g=void 0),d.name=e,d.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},d.methodFactory=o||u,d.getLevel=function(){return null!=c?c:null!=s?s:i},d.setLevel=function(e,o){return c=f(e),!1!==o&&function(e){var o=(n[e]||"silent").toUpperCase();if(typeof window!==t&&g){try{return void(window.localStorage[g]=o)}catch(e){}try{window.document.cookie=encodeURIComponent(g)+"="+o+";"}catch(e){}}}(c),l.call(d)},d.setDefaultLevel=function(e){s=f(e),h()||d.setLevel(e,!1)},d.resetLevel=function(){c=null,function(){if(typeof window!==t&&g){try{window.localStorage.removeItem(g)}catch(e){}try{window.document.cookie=encodeURIComponent(g)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(e){}}}(),l.call(d)},d.enableAll=function(e){d.setLevel(d.levels.TRACE,e)},d.disableAll=function(e){d.setLevel(d.levels.SILENT,e)},d.rebuild=function(){if(a!==d&&(i=f(a.getLevel())),l.call(d),a===d)for(var e in r)r[e].rebuild()},i=f(a?a.getLevel():"WARN");var p=h();null!=p&&(c=f(p)),l.call(d)}(a=new d).getLogger=function(e){if("symbol"!=typeof e&&"string"!=typeof e||""===e)throw new TypeError("You must supply a name when creating a logger.");var t=r[e];return t||(t=r[e]=new d(e,a.methodFactory)),t};var g=typeof window!==t?window.log:void 0;return a.noConflict=function(){return typeof window!==t&&window.log===a&&(window.log=g),a},a.getLoggers=function(){return r},a.default=a,a},e.exports?e.exports=o():t.log=o()}(loglevel);const h=loglevel.exports,I=(e,t)=>o=>o(e,t),P=(e,t)=>o=>o(e,t,{append:!1}),$=()=>{const e=typeof process<"u"&&process.env?process.env:{},t="test"===e.NODE_ENV,o="VITEST"in e,n="JEST_WORKER_ID"in e,r="PLAYWRIGHT_TEST_BASE_URL"in e,a="true"===e.CI,i="true"===e.TEST||"true"===e.IS_TEST,s=typeof navigator<"u"&&!0===navigator.webdriver,l=typeof navigator<"u"&&/playwright|puppeteer|webdriver|selenium|testcafe/i.test(navigator.userAgent);return t||o||n||r||a||i||s||l},n$1={A11yUi:{CSS_STYLE_CACHE:new Map,IS_TEST_ENVIRONMENT:$(),PERFORMANCE_MEASURES:new Map,STYLING_TASK_QUEUE:new Map,THEMES:new Map,showAverageTimes:()=>{const e={};for(const[t,o]of n$1.A11yUi.PERFORMANCE_MEASURES.entries())e[t]=[o.totalTime/o.count,o.count];const t=Object.entries(e).sort((e,t)=>t[1][0]-e[1][0]);return console.table(Object.fromEntries(t.map(([e,[t,o]])=>[e,{"avg (ms)":parseFloat(t.toFixed(2)),count:o}]))),e}}};let d=!0,f$1=!1;const j=/^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/,F=e=>"string"==typeof e&&j.test(e),E=e=>{if(!F(e))throw new Error(`[Theming] The theme identifier "${"string"==typeof e?e:""}" (Type: ${typeof e}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`)},g=e=>e.replace(/\/\*[\s\S]*?\*\//g,"").replace(/\s*([{},;])\s*/g,"$1").replace(/:\s+/g,":").replace(/\s+/g," ").replace(/;\}/g,"}").trim(),Y=(e,t,o,n)=>u$1(e,t,o,n),u$1=(e,t,o,n)=>{(n=n??{}).append=n.append??!1,E(e),d&&!f$1&&(f$1=!0,h.warn(`[Theming] The theme process is locked. This means that the theme "${e}" should not be patched.\n\n import { register } from 'adopted-style-sheets';\n import { defineCustomElements } from '...';\n import { THEME } from '...';\n\n register(THEME, defineCustomElements)\n .then(() => {\n // run your app or website\n })\n .catch(console.warn);`));let r=n$1.A11yUi.THEMES.get(e);if(r||(r=new Map,n$1.A11yUi.THEMES.set(e,r)),n.append&&r.has(t)){const e=r.get(t);r.set(t,g(`${e}${o}`))}else r.set(t,g(o))},k=(e,t,o,n)=>p(e,t,o,n),p=(e,t,o,n)=>(E(e),"object"==typeof t&&null!==t&&Object.getOwnPropertyNames(t).forEach(r=>{const a=t[r],i=r.toLowerCase(),s="function"!=typeof n?.transformTagName||["GLOBAL","PROPERTIES"].includes(r)?r:n.transformTagName(i);"string"==typeof a&&a.length>0&&u$1(e,s.toUpperCase(),a,o)}),e),S=e=>{if(e instanceof HTMLElement){if("string"==typeof e.dataset.theme)return e;{let t=e.parentNode;for(;t instanceof ShadowRoot;)t=t.host;return S(t)}}return null},A=(e={})=>"false"!==e.themeEncroachCss&&"true"!==e.themeReset&&{mode:"after"===e.themeEncroachCssMode||"before"===e.themeEncroachCssMode?e.themeEncroachCssMode:"before"},C=()=>"object"==typeof n$1.A11yUi.Theme&&null!==n$1.A11yUi.Theme&&"boolean"==typeof n$1.A11yUi.Theme.cache&&"object"==typeof n$1.A11yUi.Theme.encroachCss&&null!==n$1.A11yUi.Theme.encroachCss&&"string"==typeof n$1.A11yUi.Theme.encroachCss.mode&&"string"==typeof n$1.A11yUi.Theme.name,G=()=>!("object"==typeof n$1.A11yUi.Theme&&null!==n$1.A11yUi.Theme)||"default"!==n$1.A11yUi.Theme.name,b=e=>{if(C())return n$1.A11yUi.Theme;{const t={cache:!0,encroachCss:A(),loglevel:"silent",mode:"csr",name:null},o=S(e);return o instanceof HTMLElement&&(t.cache="false"!==o.dataset.themeCache,t.encroachCss=A(o.dataset),t.loglevel="debug"===o.dataset.themeLoglevel?o.dataset.themeLoglevel:"silent",t.mode="ssr"===o.dataset.themeMode?o.dataset.themeMode:"csr",t.name=o.dataset.theme||null),t}},B=(e,t)=>({cache:!1!==t.cache,detect:"auto"===t.detect?"auto":"fixed",encroachCss:!1!==t.encroachCss&&("object"!=typeof t.encroachCss||null==t.encroachCss||"after"!==t.encroachCss.mode&&"before"!==t.encroachCss.mode?{mode:"before"}:t.encroachCss),loglevel:"debug"===t.loglevel?t.loglevel:"silent",mode:"ssr"===t.mode?t.mode:"csr",name:"string"==typeof t.name?t.name:e}),K=(e,t)=>{!1===C()&&G()&&"object"==typeof t&&null!==t&&("fixed"===(t=B(e,t)).detect?(null===t.name&&"string"==typeof e&&(t.name=e),e===t.name&&(n$1.A11yUi.Theme=t,h.info(`[Theming] Theme "${e}" was set as default theme.`))):f$1||(f$1=!0,h.warn("[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.")))};let U=!1;const V=(e,t,o={})=>{U||(U=!0,d=!1,typeof window<"u"&&(window.A11yUi=n$1.A11yUi)),"function"==typeof e?e=new Set([e]):Array.isArray(e)&&(e=new Set(e)),e instanceof Set&&e.forEach(e=>{"function"==typeof e&&1===e.length?K(e((e,t,n)=>p(e,t,n,o)),{cache:o.theme?.cache,detect:o.theme?.detect,encroachCss:o.theme?.encroachCss,mode:o.theme?.mode,name:o.theme?.name}):h.error("[Theming] An attempt was made to load an incompatible theme.")}),d=!0,"function"==typeof t?t=new Set([t]):Array.isArray(t)&&(t=new Set(t));const n=[];return t.forEach(e=>{const t=e();t instanceof Promise&&n.push(t)}),Promise.all(n)},w=new Set,W=/--[^;]+/g,q=/:/,J=typeof MutationObserver<"u";let M=25,N=()=>{M=Math.min(25+20*Math.log2(n$1.A11yUi.STYLING_TASK_QUEUE.size+1),250)};const X=(e,t)=>{let o=t.match(W);if(Array.isArray(o)){o=o.filter(e=>q.test(e));const t=document.createElement("style");t.innerHTML=`.${e} {${o.join(";")}}`,document.querySelector("head")?.appendChild(t)}w.add(e)},y=(e,t)=>{const o=n$1.A11yUi.THEMES.get(e);return o instanceof Map&&o.has(t)?o.get(t):""},Z=e=>{for(const t of Array.from(e.childNodes)){if(!(t instanceof HTMLStyleElement&&"STYLE"===t.tagName&&void 0===t.dataset.themingFallback))break;e.removeChild(t)}},ee=(e,t)=>{try{if("ssr"===n$1.A11yUi.Theme?.mode)throw new Error("SSR");const o=[];t.forEach(e=>{const t=new CSSStyleSheet;t.replaceSync(e),o.push(t)}),e.adoptedStyleSheets=o}catch{[...t].reverse().forEach((t,o)=>{if("string"!=typeof t||0===t.length)return;const n=document.createElement("style");switch(n.dataset.themingFallback="",o){case 4:n.dataset.themingBaseA11y="";break;case 3:n.dataset.themingBaseGlobal="";break;case 2:n.dataset.themingBaseComponent="";break;case 1:n.dataset.themingCustomGlobal="";break;case 0:n.dataset.themingCustomComponent="";break;default:n.dataset.themingUnknown=""}n.innerHTML=t,e.insertBefore(n,e.firstChild)})}},te=(e,t,o)=>{if(!1!==o){const n=[...Array.from(e.childNodes).filter(e=>e instanceof HTMLStyleElement&&"STYLE"===e.tagName)];let r;try{r=[...Array.from(e.adoptedStyleSheets)]}catch{r=[]}"before"===o?.mode?(n.reverse().forEach(e=>t.unshift(e.innerHTML)),r.reverse().forEach(e=>t.unshift(Array.from(e.cssRules).map(e=>e.cssText).join("")))):"after"===o?.mode&&(n.forEach(e=>t.push(e.innerHTML)),r.forEach(e=>t.push(Array.from(e.cssRules).map(e=>e.cssText).join(""))))}},se=(e,t,o)=>{const n=t.name||"default";let r;try{if(null===e.shadowRoot)throw new Error("ShadowRoot is null");r=e.shadowRoot}catch{r=e}if(n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.has(e.tagName))v(e,r,n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.get(e.tagName),o);else{const a=y(n,"PROPERTIES"),i=y(n,"GLOBAL"),s=y(n,e.tagName);!1===w.has(n)&&X(n,i);const l=[a,i,s];te(r,l,t.encroachCss),!0===t.cache&&(!1===n$1.A11yUi.CSS_STYLE_CACHE.has(n)&&n$1.A11yUi.CSS_STYLE_CACHE.set(n,new Map),n$1.A11yUi.CSS_STYLE_CACHE.get(n)?.set(e.tagName,l)),v(e,r,l,o)}},v=(e,t,o,n)=>{const r=performance.now();if(Z(t),ee(t,o),H(e),n(),n$1.A11yUi.PERFORMANCE_MEASURES.has(e.tagName)){const t=n$1.A11yUi.PERFORMANCE_MEASURES.get(e.tagName);t.count+=1,t.totalTime+=performance.now()-r}else n$1.A11yUi.PERFORMANCE_MEASURES.set(e.tagName,{count:1,totalTime:performance.now()-r})},L=e=>{const t=n$1.A11yUi.STYLING_TASK_QUEUE.get(e);if(t){const{resetCss:o,themeDetails:n}=t;se(e,n,o),H(e)}};let T=e=>{const t=setTimeout(()=>{clearTimeout(t),e.classList.contains("hydrated")?L(e):T(e)},M)};const ae={attributes:!0,attributeFilter:["class"],childList:!1,subtree:!1},oe={attributes:!0,attributeFilter:[],childList:!1,subtree:!1},R=J?new MutationObserver((e,t)=>{for(const o of e){const e=o.target;e.classList.contains("hydrated")&&(L(e),t.observe(e,oe))}}):null;R&&(T=e=>R.observe(e,ae),N=()=>{});let _=e=>{const t=getComputedStyle(e).getPropertyValue("--theme-visibility-delay").trim();if(t.endsWith("ms"))return parseFloat(t);if(t.endsWith("s"))return 1e3*parseFloat(t);{const e=parseFloat(t);return isNaN(e)?0:e}};n$1.A11yUi.IS_TEST_ENVIRONMENT&&(_=()=>0);const O=(e,t)=>{e.style.setProperty("visibility",t),e.dataset.themed=""},re=(e,t)=>{const o=e.style.visibility||null;n$1.A11yUi.STYLING_TASK_QUEUE.set(e,{resetCss:()=>{const t=_(e);t>0?setTimeout(()=>{O(e,o)},t):O(e,o)},themeDetails:t}),e.style.setProperty("visibility","hidden","important"),T(e)},H=e=>{n$1.A11yUi.STYLING_TASK_QUEUE.delete(e),N()},ne=(e,t)=>{re(e,{...n$1.A11yUi.Theme,...t})};class ie{Prefix;Key;Tag;createTheme=(e,t)=>P(e,t);createTranslation=(e,t)=>I(e,t);constructor(e,t,o){this.Prefix=e,this.Key=Object.getOwnPropertyNames(t),this.Tag=Object.getOwnPropertyNames(o)}}var KeyEnum,TagEnum;!function(e){e[e.error=0]="error",e[e.warning=1]="warning",e[e.info=2]="info",e[e.success=3]="success",e[e.message=4]="message",e[e.close=5]="close",e[e["form-description"]=6]="form-description",e[e.of=7]="of",e[e.characters=8]="characters",e[e.new=9]="new",e[e["no-entries"]=10]="no-entries",e[e["change-order"]=11]="change-order",e[e["action-running"]=12]="action-running",e[e["action-done"]=13]="action-done",e[e["page-first"]=14]="page-first",e[e["page-back"]=15]="page-back",e[e["page-next"]=16]="page-next",e[e["page-last"]=17]="page-last",e[e["entries-per-site"]=18]="entries-per-site",e[e["page-current"]=19]="page-current",e[e["page-selected"]=20]="page-selected",e[e["page-per-site"]=21]="page-per-site",e[e["logo-description"]=22]="logo-description",e[e["open-link-in-tab"]=23]="open-link-in-tab",e[e["kolibri-logo"]=24]="kolibri-logo"}(KeyEnum||(KeyEnum={})),function(e){e[e.abbr=0]="abbr",e[e.accordion=1]="accordion",e[e.alert=2]="alert",e[e.avatar=3]="avatar",e[e.badge=4]="badge",e[e.breadcrumb=5]="breadcrumb",e[e.button=6]="button",e[e["button-group"]=7]="button-group",e[e["button-link"]=8]="button-link",e[e.card=9]="card",e[e.combobox=10]="combobox",e[e.details=11]="details",e[e.drawer=12]="drawer",e[e.form=13]="form",e[e.heading=14]="heading",e[e.icon=15]="icon",e[e.image=16]="image",e[e["indented-text"]=17]="indented-text",e[e["input-checkbox"]=18]="input-checkbox",e[e["input-color"]=19]="input-color",e[e["input-date"]=20]="input-date",e[e["input-email"]=21]="input-email",e[e["input-file"]=22]="input-file",e[e["input-number"]=23]="input-number",e[e["input-password"]=24]="input-password",e[e["input-radio"]=25]="input-radio",e[e["input-range"]=26]="input-range",e[e["input-text"]=27]="input-text",e[e.kolibri=28]="kolibri",e[e.link=29]="link",e[e["link-button"]=30]="link-button",e[e["link-group"]=31]="link-group",e[e.logo=32]="logo",e[e.modal=33]="modal",e[e.nav=34]="nav",e[e.pagination=35]="pagination",e[e["popover-button"]=36]="popover-button",e[e.progress=37]="progress",e[e.quote=38]="quote",e[e.select=39]="select",e[e["single-select"]=40]="single-select",e[e["skip-nav"]=41]="skip-nav",e[e.spin=42]="spin",e[e["split-button"]=43]="split-button",e[e.symbol=44]="symbol",e[e.table=45]="table",e[e["table-stateful"]=46]="table-stateful",e[e["table-stateless"]=47]="table-stateless",e[e.tabs=48]="tabs",e[e.textarea=49]="textarea",e[e["toast-container"]=50]="toast-container",e[e.toolbar=51]="toolbar",e[e.tooltip=52]="tooltip",e[e.tree=53]="tree",e[e["tree-item"]=54]="tree-item"}(TagEnum||(TagEnum={}));const getWindow=()=>"undefined"==typeof window?null:window,getDocument=()=>void 0===getWindow().document?null:getWindow().document;let DEV_MODE=!1,EXPERIMENTAL_MODE=!1,COLOR_CONTRAST_ANALYSIS=!1;const getDevMode=()=>!0===DEV_MODE,setDevMode=e=>{DEV_MODE=!0===e},getExperimentalMode=()=>!0===EXPERIMENTAL_MODE,setExperimentalMode=e=>{EXPERIMENTAL_MODE=!0===e},getColorContrastAnalysis=()=>!0===COLOR_CONTRAST_ANALYSIS,setColorContrastAnalysis=e=>{COLOR_CONTRAST_ANALYSIS=!0===e},LOG_STYLE="color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000",mapToArray=e=>Array.isArray(e)?e:[e],getLogLabel=e=>`%c${e}`,handleClassifier=(e,t)=>"string"==typeof t&&t.length>0?`${getLogLabel(e)} | ${t}`:getLogLabel(e),getShield=(e,t)=>[handleClassifier(e,null==t?void 0:t.classifier),`${LOG_STYLE};${(null==t?void 0:t.overwriteStyle)||""}`],isDevModeOrForceLog=(e,t)=>e()||!0===t;class Logger{constructor(e,t){this.label=e,this.devMode=t}debug(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.debug(...getShield(this.label,t),...mapToArray(e))}info(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.info(...getShield(this.label,t),...mapToArray(e))}trace(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.trace(...getShield(this.label,t),...mapToArray(e))}warn(e,t){isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog)&&console.warn(...getShield(this.label,t),...mapToArray(e))}error(e,t){console.error(...getShield(this.label,t),...mapToArray(e))}throw(e,t){if(isDevModeOrForceLog(this.devMode,null==t?void 0:t.forceLog))throw new Error(...getShield(this.label,t),...mapToArray(e))}}const Log=new Logger("KoliBri",getDevMode),a11yCache=new Set,a11yHint=(e,t)=>{(!1===a11yCache.has(e)||(null==t?void 0:t.force))&&(a11yCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"✋ a11y",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #09f"}))},deprecatedCache=new Set,deprecatedHint=(e,t)=>{(!1===deprecatedCache.has(e)||(null==t?void 0:t.force))&&(deprecatedCache.add(e),Log.warn([e].concat((null==t?void 0:t.details)||[]),{classifier:"🔥 deprecated",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f00"}))},devCache=new Set,devHint=(e,t)=>{(!1===devCache.has(e)||(null==t?void 0:t.force))&&(devCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"💻 dev",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f09"}))},devWarning=(e,t)=>{(!1===devCache.has(e)||(null==t?void 0:t.force))&&(devCache.add(e),Log.warn([e].concat((null==t?void 0:t.details)||[]),{classifier:"⚠️ dev",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #f09"}))},featureCache=new Set,featureHint=(e,t=!1,o)=>{(!1===featureCache.has(e)||(null==o?void 0:o.force))&&(featureCache.add(e),e+=!0===t?" ✅":"",Log.debug([e].concat((null==o?void 0:o.details)||[]),{classifier:"🌟 feature",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #309"}))};devHint("We appreciate any feedback, comments, screenshots, or demo links of an application based on KoliBri (kolibri@itzbund.de). Thank you!");const uiUxCache=new Set,uiUxHint=(e,t)=>{(!1===uiUxCache.has(e)||(null==t?void 0:t.force))&&(uiUxCache.add(e),Log.debug([e].concat((null==t?void 0:t.details)||[]),{classifier:"📑 ui/ux",forceLog:!!(null==t?void 0:t.force),overwriteStyle:"; background-color: #060;"}))},a11yHintDisabled=()=>{a11yHint('"Disabled" limits accessibility and visibility. From an accessibility perspective, we recommend using the readonly attribute instead of disabled.\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae')},a11yHintLabelingLandmarks=e=>{"string"==typeof e&&""!==e||a11yHint("Some structural elements, such as the nav tag, can be used multiple times on a webpage. To distinguish between similarly named structural elements, it is necessary to set an ARIA label.\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns")},uiUxHintMillerscheZahl=(e,t=8)=>{t>7&&uiUxHint(`[${e}] Within navigation structures, it is recommended to use no more than 7 menu items.\n\nLink:\n- https://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two`)};var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(e){return Math.pow((e+.055)/1.055,2.4)}function a(o){var a=o[0]/255,i=o[1]/255,s=o[2]/255,l=a<=.03928?a*e:u(a),c=i<=.03928?i*e:u(i),d=s<=.03928?s*e:u(s);return l*n+c*r+d*t}function i(e){var t=255;8===(e=e.replace(/^#/,"")).length&&(t=parseInt(e.slice(6,8),16),e=e.substring(0,6)),4===e.length&&(t=parseInt(e.slice(3,4).repeat(2),16),e=e.substring(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var o=parseInt(e,16);return[o>>16,o>>8&255,255&o,t]}function c(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function o(e,t){return c(a(e),a(t))}function s(e,t){return o(i(e),i(t))}function f(e){return e>=7?"AAA":e>=4.5?"AA":e>=3?"AA Large":"Fail"}var rgbaConvert={exports:{}};function arr(e){var t=parse(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function obj(e){var t=parse(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function css(e){var t=parse(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function hex(e){3==(t=parse(e)).length&&t.push(255);var t,o=255==t[3],n=num2hex(t[0]),r=num2hex(t[1]),a=num2hex(t[2]),i=isshort(n,r,a,t=num2hex(Math.round(t[3])));return o?i?"#"+n.charAt(0)+r.charAt(0)+a.charAt(0):"#"+n+r+a:i?"#"+n.charAt(0)+r.charAt(0)+a.charAt(0)+t.charAt(0):"#"+n+r+a+t}function num(e){var t=parse(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function parse(e){return"string"==typeof e?name(e=e.toLowerCase())||hex3(e)||hex6(e)||rgb(e)||rgba(e)||[0,0,0,255]:object(e)||array(e)||number(e)||[0,0,0,255]}function num2hex(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function isshort(e,t,o,n){var r=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=r.indexOf(e)&&-1!=r.indexOf(t)&&-1!=r.indexOf(o)&&-1!=r.indexOf(n)}function name(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function hex2num(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function hex3(e){var t=e.replace(/^#/,""),o=t.length;if(3==o||4==o){var n=hex2num(t[0]),r=hex2num(t[1]),a=hex2num(t[2]),i=3==o?255:hex2num(t[3]);if(isNaN(n)||isNaN(r)||isNaN(a)||isNaN(i))return;return[n,r,a,i]}}function hex6(e){var t=e.replace(/^#/,""),o=t.length;if(6==o||8==o){var n=hex2num(t.slice(0,2)),r=hex2num(t.slice(2,4)),a=hex2num(t.slice(4,6)),i=6==o?255:hex2num(t.slice(6,8));if(isNaN(n)||isNaN(r)||isNaN(a)||isNaN(i))return;return[n,r,a,i]}}function getnum(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function object(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=getnum(null!=e.r?e.r:null!=e.red?e.red:0,!0),o=getnum(null!=e.g?e.g:null!=e.green?e.green:0,!0),n=getnum(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),r=getnum(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=o&&-1!=n&&-1!=r)return[t,o,n,r]}}function array(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=getnum(e[0],!0),o=getnum(e[1],!0),n=getnum(e[2],!0),r=getnum(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=o&&-1!=n&&-1!=r)return[t,o,n,r]}}function number(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function rgb(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=getnum(t[0],!0),n=getnum(t[1],!0),r=getnum(t[2],!0);if(-1!=o&&-1!=n&&-1!=r)return[o,n,r,255]}}function rgba(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),o=getnum(t[0],!0),n=getnum(t[1],!0),r=getnum(t[2],!0),a=getnum(255*t[3]);if(-1!=o&&-1!=n&&-1!=r&&-1!=a)return[o,n,r,a]}}rgbaConvert.exports=arr,rgbaConvert.exports.arr=arr,rgbaConvert.exports.obj=obj,rgbaConvert.exports.css=css,rgbaConvert.exports.hex=hex,rgbaConvert.exports.num=num;const rgba$1=rgbaConvert.exports,pushNodes=(e,t)=>{t.forEach(t=>{!1===e.has(t)&&e.add(t)})},querySelectorAll=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const o=new Set;pushNodes(o,t.querySelectorAll(e));const n=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<n.length;t++){const r=n[t].shadowRoot;pushNodes(o,querySelectorAll(e,"object"==typeof r&&null!==r?r:n[t]))}return Array.from(o)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},querySelector=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let o=t.querySelector(e);if(null===o){const n=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<n.length;t++){const r=n[t].shadowRoot;if(o=querySelector(e,"object"==typeof r&&null!==r?r:n[t]),null!==o)break}}return o}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")},OBJECT_OBJECT=/\[object Object\]/,objectObjectHandler=(e,t)=>{"string"==typeof e&&OBJECT_OBJECT.test(e)||t()},emptyStringByArrayHandler=(e,t)=>{"string"==typeof e&&""===e||t()},setEventTarget=(e,t)=>{getExperimentalMode()&&(Log.debug([e,t]),Log.debug("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},patchState=e=>{var t,o,n;null===(t=e.nextHooks)||void 0===t||t.forEach((t,o)=>{var n;const r=t.get("beforePatch");"function"==typeof r&&r(null===(n=e.nextState)||void 0===n?void 0:n.get(o),e.nextState,e,o)}),(null===(o=e.nextState)||void 0===o?void 0:o.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(n=e.nextHooks)||void 0===n||n.forEach((t,o)=>{const n=t.get("afterPatch");"function"==typeof n&&n(e.state[o],e.state,e,o)})),delete e.nextHooks},setState=(e,t,o,n={})=>{var r,a;void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map);e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof n.afterPatch&&(null===(r=e.nextHooks.get(t))||void 0===r||r.set("afterPatch",n.afterPatch)),"function"==typeof n.beforePatch&&(null===(a=e.nextHooks.get(t))||void 0===a||a.set("beforePatch",n.beforePatch)),e.nextState.set(t,o),patchState(e)},logWarn=(e,t,o,n)=>{devHint(`[${e.constructor.name}] The property value: (${o}) for '${t}' is not valid. Allowed values are: ${Array.from(n).join(", ")}`)};function watchValidator(e,t,o,n,r,a={}){o(r)?setState(e,t,r,a.hooks):void 0===r&&!0!==a.required&&o(a.defaultValue)?setState(e,t,a.defaultValue,a.hooks):(a.required||n.add(null),logWarn(e,t,r,n))}const watchBoolean=(e,t,o,n)=>{watchValidator(e,t,e=>"boolean"==typeof e,new Set(["Boolean {true, false}"]),o,n)},watchString=(e,t,o,n={})=>{const r="number"==typeof n.minLength?null==n?void 0:n.minLength:0;watchValidator(e,t,e=>"string"==typeof e&&e.length>=r&&(void 0===(null==n?void 0:n.maxLength)||e.length<=n.maxLength),new Set(["String"]),o,n)},watchNumber=(e,t,o,n)=>{watchValidator(e,t,e=>"number"==typeof e&&(void 0===(null==n?void 0:n.min)||"number"==typeof(null==n?void 0:n.min)&&e>=n.min)&&(void 0===(null==n?void 0:n.max)||"number"==typeof(null==n?void 0:n.max)&&e<=n.max),new Set(["Number"]),o,n)},watchJsonArrayString=(e,t,o,n,r=e=>e==e,a={})=>{emptyStringByArrayHandler(n,()=>{objectObjectHandler(n,()=>{void 0===n&&(n=[]);try{try{n=parseJson(n)}catch(e){}if(Array.isArray(n)){const i=n.find(e=>!o(e));void 0===i&&r(n)?setState(e,t,n,a.hooks):objectObjectHandler(i,()=>{throw Log.debug(i),new Error("↑ The schema for the property (_options) is not valid. The value will not be changed.")})}else objectObjectHandler(n,()=>{throw Log.debug(n),new Error("↑ The schema for the property (_options) is not valid. The value will not be changed.")})}catch(e){Log.debug(e)}})})},stringifyJson=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw Log.warn(["stringifyJson",e]),Log.error("↑ The JSON could not be converted to a string. A stringifiable JSON is expected."),new Error}},JSON_CHARS=/^[{[]/,parseJson=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(JSON_CHARS.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){Log.warn(["parseJson",e]),Log.error("↑ The JSON string could not be parsed. Make sure that single quotes in the text are escaped (&#8216;).")}}throw new Error},mapBoolean2String=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,mapStringOrBoolean2String=e=>"string"==typeof e?e:mapBoolean2String(e),koliBriQuerySelector=(e,t)=>querySelector(e,t||getDocument()),koliBriQuerySelectorAll=(e,t)=>querySelectorAll(e,t||getDocument());let DEFAULT_COLOR_CONTRAST=null;const getDefaultColorContrast=()=>(DEFAULT_COLOR_CONTRAST=DEFAULT_COLOR_CONTRAST||{backgroundColor:"#00000000",color:"#00000000",domNode:getDocument().body,level:"Fail",score:1},DEFAULT_COLOR_CONTRAST),TRANSPARENT_REGEXP=/(\d+, ){3}0\)/,koliBriA11yColorContrast=(e,t=getDefaultColorContrast())=>{const o=getComputedStyle(e),n=TRANSPARENT_REGEXP.test(o.backgroundColor)?t.backgroundColor:rgba$1.hex(o.backgroundColor),r=TRANSPARENT_REGEXP.test(o.color)?t.color:rgba$1.hex(o.color),a=s(n,r),i={backgroundColor:n,color:r,domNode:e,level:f(a),score:a};return a<4.5&&Log.error(["Color-Contrast-Error",{backgroundColor:i.backgroundColor,color:i.color,level:i.level,score:i.score},i.domNode]),i},koliBriQuerySelectorColors=(e,t=getDefaultColorContrast())=>{t.domNode instanceof HTMLElement&&(t=koliBriA11yColorContrast(t.domNode,t));const o=t.domNode.querySelector(e);if(null===o){const o=t.domNode.querySelectorAll('[class="hydrated"]');for(let n=0;n<o.length&&(t.domNode=o[n],null===(t=koliBriQuerySelectorColors(e,t)).domNode);n++);return t}return koliBriA11yColorContrast(o,t)};class KoliBriUtils{static queryHtmlElementColors(e,t,o=!1,n=!0){let r=null;if(!0===o||!1===KoliBriUtils.executionLock)if(!1===o&&(KoliBriUtils.cache.clear(),KoliBriUtils.cache.set(t.domNode,t),KoliBriUtils.executionLock=!0,!0===n&&Log.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)r=t;else{const o=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)o.add(e[t])}const n=t.domNode;if("function"==typeof n.assignedNodes){const e=n.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&o.add(e[t])}const a=t.domNode.children;for(let e=0;e<a.length;e++)o.add(a[e]);const i=Array.from(o);for(let o=0;o<i.length;o++){let n=KoliBriUtils.cache.get(i[o]);void 0===n&&(n=koliBriA11yColorContrast(i[o],t)),KoliBriUtils.cache.set(i[o],n);const a=KoliBriUtils.queryHtmlElementColors(e,n,!0,!1);if(null!==a){r=a;break}}}else Log.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===o&&(!0===n&&Log.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`),KoliBriUtils.executionLock=!1,KoliBriUtils.cache.clear()),r}}KoliBriUtils.executionLock=!1,KoliBriUtils.cache=new Map;class KoliBriDevHelper{}KoliBriDevHelper.getCssStyle=y,KoliBriDevHelper.patchTheme=k,KoliBriDevHelper.patchThemeTag=Y,KoliBriDevHelper.querySelector=koliBriQuerySelector,KoliBriDevHelper.querySelectorAll=koliBriQuerySelectorAll,KoliBriDevHelper.stringifyJson=stringifyJson;let processEnv="development";try{processEnv="production"}catch(e){processEnv="production"}const handleSlotContent=(e,t,o)=>{if(e&&t&&"string"==typeof o){const n=e.querySelector(`[slot="${o}"]`);n&&t.appendChild(n)}},showExpertSlot=e=>""===e,buildBadgeTextString=(e,t)=>e||t||"",isObject=e=>"object"==typeof e&&null!==e,isString=(e,t=0)=>"string"==typeof e&&e.length>=t,isStyle=e=>{if("object"!=typeof e||null===e)return isString(e,1);for(const t in e)if(!1===isString(t,1))return!1;return!0},STATE_CHANGE_EVENT=new Event("StateChange");var KoliBriProgressVariantEnum;!function(e){e.bar="bar",e.cycle="cycle"}(KoliBriProgressVariantEnum||(KoliBriProgressVariantEnum={}));const KoliBri=new ie("kol",KeyEnum,TagEnum);export{mapStringOrBoolean2String as A,setEventTarget as B,showExpertSlot as C,watchNumber as D,getExperimentalMode as E,devHint as F,devWarning as G,isString as H,isStyle as I,buildBadgeTextString as J,KoliBri as K,Log as L,handleSlotContent as M,deprecatedHint as N,KoliBriProgressVariantEnum as O,emptyStringByArrayHandler as P,koliBriQuerySelector as Q,getDevMode as R,STATE_CHANGE_EVENT as S,getColorContrastAnalysis as T,koliBriA11yColorContrast as U,V,koliBriQuerySelectorAll as W,koliBriQuerySelectorColors as X,KoliBriUtils as Y,stringifyJson as Z,KoliBriDevHelper as a,b,setExperimentalMode as c,setColorContrastAnalysis as d,getWindow as e,a11yHint as f,getDocument as g,featureHint as h,isObject as i,watchBoolean as j,a11yHintDisabled as k,setState as l,watchString as m,ne as n,objectObjectHandler as o,processEnv as p,parseJson as q,rgba$1 as r,setDevMode as s,s as t,uiUxHint as u,a11yHintLabelingLandmarks as v,watchValidator as w,watchJsonArrayString as x,uiUxHintMillerscheZahl as y,mapBoolean2String as z};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import"./index2.js";import{n as nonce}from"./dev.utils.js";import{a as KolTooltipWcTag}from"./component-names.js";import{v as validateLabel}from"./label.js";import{v as validateTooltipAlign}from"./tooltip-align.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n contain: layout;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > abbr {\n cursor: help;\n }\n}",KolAbbrDefaultStyle0=defaultStyleCss,KolAbbr$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.nonce=nonce(),this._label=void 0,this._tooltipAlign="top",this.state={_label:"",_tooltipAlign:"top"}}render(){return h(Host,{key:"598d706f074db11649d068894821a214d3373d11",class:"kol-abbr"},h("abbr",{key:"cea033577a07ea9cbc48cf32f2afa798b2f70c1b","aria-labelledby":this.nonce,role:"definition",tabindex:"0",title:this.state._label},h("span",{key:"f28a0dacfb9e1d5807f763e03401e1b71c0414c3",title:""},h("slot",{key:"c72ee140bfc1c43d781a5309c07f9a47689d6f4e"}))),h(KolTooltipWcTag,{key:"2743bb91c1b770375bda8e19668e7ad698b10baa",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._label}))}validateLabel(n){validateLabel(this,n,{required:!0})}validateTooltipAlign(n){validateTooltipAlign(this,n)}componentWillLoad(){this.validateLabel(this._label),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_label:["validateLabel"],_tooltipAlign:["validateTooltipAlign"]}}static get style(){return{default:KolAbbrDefaultStyle0}}},[33,"kol-abbr",{_label:[1],_tooltipAlign:[1,"_tooltip-align"],state:[32]},void 0,{_label:["validateLabel"],_tooltipAlign:["validateTooltipAlign"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-abbr"].forEach(n=>{if("kol-abbr"===n)customElements.get(n)||customElements.define(n,KolAbbr$1)})}const KolAbbr=KolAbbr$1,defineCustomElement=defineCustomElement$1;export{KolAbbr,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import"./index2.js";import{n as nonce}from"./dev.utils.js";import{a as KolTooltipWcTag}from"./component-names.js";import{v as validateLabel}from"./label.js";import{v as validateTooltipAlign}from"./tooltip-align.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > abbr {\n cursor: help;\n }\n}",KolAbbrDefaultStyle0=defaultStyleCss,KolAbbr$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.nonce=nonce(),this._label=void 0,this._tooltipAlign="top",this.state={_label:"",_tooltipAlign:"top"}}render(){return h(Host,{key:"598d706f074db11649d068894821a214d3373d11",class:"kol-abbr"},h("abbr",{key:"cea033577a07ea9cbc48cf32f2afa798b2f70c1b","aria-labelledby":this.nonce,role:"definition",tabindex:"0",title:this.state._label},h("span",{key:"f28a0dacfb9e1d5807f763e03401e1b71c0414c3",title:""},h("slot",{key:"c72ee140bfc1c43d781a5309c07f9a47689d6f4e"}))),h(KolTooltipWcTag,{key:"2743bb91c1b770375bda8e19668e7ad698b10baa",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._label}))}validateLabel(n){validateLabel(this,n,{required:!0})}validateTooltipAlign(n){validateTooltipAlign(this,n)}componentWillLoad(){this.validateLabel(this._label),this.validateTooltipAlign(this._tooltipAlign)}static get watchers(){return{_label:["validateLabel"],_tooltipAlign:["validateTooltipAlign"]}}static get style(){return{default:KolAbbrDefaultStyle0}}},[33,"kol-abbr",{_label:[1],_tooltipAlign:[1,"_tooltip-align"],state:[32]},void 0,{_label:["validateLabel"],_tooltipAlign:["validateTooltipAlign"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-abbr"].forEach(n=>{if("kol-abbr"===n)customElements.get(n)||customElements.define(n,KolAbbr$1)})}const KolAbbr=KolAbbr$1,defineCustomElement=defineCustomElement$1;export{KolAbbr,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-abbr.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,ukLAAukL,CAAC;AAChmL,6BAAe,eAAe;;MCkBjBA,SAAO;;;;;QACF,UAAK,GAAG,KAAK,EAAE,CAAC;;6BAwBqB,KAAK;qBAQvB;YACnC,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK;SACpB;;IAjCM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,UAAU,IAErB,gFAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IACzF,6DAAM,KAAK,EAAC,EAAE,IACb,8DAAQ,CACF,CACD,EACP,EAAC,eAAe,qDAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAoB,CAC3G,EACN;KACF;IAgCM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAClC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAbbr"],"sources":["src/components/abbr/style.scss?tag=kol-abbr&mode=default&encapsulation=shadow","src/components/abbr/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../tooltip/style.scss' as *;\n\n@layer kol-component {\n\t:host > abbr {\n\t\tcursor: help;\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { validateLabel, validateTooltipAlign } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { nonce } from '../../utils/dev.utils';\nimport { KolTooltipWcTag } from '../../core/component-names';\n\nimport type { AbbrAPI, AbbrStates, LabelPropType, TooltipAlignPropType } from '../../schema';\n\n/**\n * @slot - Der Begriff, der erläutert werden soll.\n */\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements AbbrAPI {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-abbr\">\n\t\t\t\t{/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" tabindex=\"0\" title={this.state._label}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<KolTooltipWcTag _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._label}></KolTooltipWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\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 where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t@State() public state: AbbrStates = {\n\t\t_label: '', // ⚠ required\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\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.validateLabel(this._label);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-abbr.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,ijLAAijL,CAAC;AAC1kL,6BAAe,eAAe;;MCkBjBA,SAAO;;;;;QACF,UAAK,GAAG,KAAK,EAAE,CAAC;;6BAwBqB,KAAK;qBAQvB;YACnC,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK;SACpB;;IAjCM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,UAAU,IAErB,gFAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IACzF,6DAAM,KAAK,EAAC,EAAE,IACb,8DAAQ,CACF,CACD,EACP,EAAC,eAAe,qDAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAoB,CAC3G,EACN;KACF;IAgCM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAClC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAbbr"],"sources":["src/components/abbr/style.scss?tag=kol-abbr&mode=default&encapsulation=shadow","src/components/abbr/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../tooltip/style.scss' as *;\n\n@layer kol-component {\n\t:host > abbr {\n\t\tcursor: help;\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { validateLabel, validateTooltipAlign } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { nonce } from '../../utils/dev.utils';\nimport { KolTooltipWcTag } from '../../core/component-names';\n\nimport type { AbbrAPI, AbbrStates, LabelPropType, TooltipAlignPropType } from '../../schema';\n\n/**\n * @slot - Der Begriff, der erläutert werden soll.\n */\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements AbbrAPI {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-abbr\">\n\t\t\t\t{/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" tabindex=\"0\" title={this.state._label}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<KolTooltipWcTag _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._label}></KolTooltipWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\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 where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t@State() public state: AbbrStates = {\n\t\t_label: '', // ⚠ required\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\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.validateLabel(this._label);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{w as watchValidator,i as isObject,h as featureHint}from"./index2.js";import{n as nonce}from"./dev.utils.js";import{w as watchHeadingLevel}from"./validation.js";import{K as KolCollapsibleFc}from"./Collapsible.js";import{v as validateDisabled}from"./disabled.js";import{v as validateOpen}from"./open.js";import{v as validateLabel}from"./label.js";const validateAccordionCallbacks=(n,e)=>{watchValidator(n,"_on",n=>isObject(n),new Set(["AccordionCallbacksPropType {Events.onClick}"]),e)},defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n@layer kol-component {\n .collapsible {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n /*\n * Inside a button, the caption text is always centered.\n * So we have to align the text to the left.\n */\n }\n .collapsible__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n /**\n * The `overflow: hidden` ensures that the content is not visible during the animated\n * opening and closing. This should also cut off overlays containing content, but it\n *does not.\n */\n overflow: hidden;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.3s;\n }\n .collapsible__wrapper-animation {\n min-height: 0;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: visibility 0.3s;\n }\n .open .collapsible__wrapper {\n grid-template-rows: 1fr;\n }\n .open .collapsible__wrapper-animation {\n visibility: visible;\n }\n @media (prefers-reduced-motion) {\n .collapsible__wrapper-animation, .collapsible__wrapper {\n transition-duration: 0s;\n }\n }\n @media print {\n :not(.open) .collapsible__wrapper-animation {\n display: none;\n }\n }\n .collapsible__heading-button button .kol-span-wc {\n justify-items: start;\n }\n}",KolAccordionDefaultStyle0=defaultStyleCss;featureHint("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),featureHint("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const KolAccordion$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.nonce=nonce(),this.catchRef=n=>{this.buttonWcRef=n},this.handleOnClick=n=>{this._open=!this._open,setTimeout(()=>{var e,t;null===(t=null===(e=this.state._on)||void 0===e?void 0:e.onClick)||void 0===t||t.call(e,n,!0===this._open)})},this._disabled=!1,this._label=void 0,this._level=0,this._on=void 0,this._open=!1,this.state={_label:"",_level:0,_on:{}}}async focus(){await this.kolFocus()}async kolFocus(){var n;await(null===(n=this.buttonWcRef)||void 0===n?void 0:n.kolFocus())}render(){const{_open:n,_label:e,_disabled:t,_level:i}=this.state,o="accordion",a={id:this.nonce,label:e,open:n,disabled:t,level:i,onClick:this.handleOnClick,class:o,HeadingProps:{class:`${o}__heading`},HeadingButtonProps:{ref:this.catchRef,class:`${o}__heading-button`},ContentProps:{class:`${o}__content`,wrapperClass:`${o}__wrapper`,animationClass:`${o}__wrapper-animation`}};return h(Host,{key:"7ddae7d5f74257c2b7c6210b99e2fe96664a92de",class:"kol-accordion"},h(KolCollapsibleFc,Object.assign({key:"95da6a5f290091ac0356ba4481f6fed24cfe832e"},a),h("slot",{key:"cc563067a38896c68041a3a40a3cc3b5c3bc2353"})))}validateDisabled(n){validateDisabled(this,n)}validateLabel(n){validateLabel(this,n,{required:!0})}validateLevel(n){watchHeadingLevel(this,n)}validateOn(n){validateAccordionCallbacks(this,n)}validateOpen(n){validateOpen(this,n)}componentWillLoad(){this.validateDisabled(this._disabled),this.validateLabel(this._label),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_disabled:["validateDisabled"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}static get style(){return{default:KolAccordionDefaultStyle0}}},[33,"kol-accordion",{_disabled:[4],_label:[1],_level:[2],_on:[16],_open:[1540],state:[32],focus:[64],kolFocus:[64]},void 0,{_disabled:["validateDisabled"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-accordion"].forEach(n=>{if("kol-accordion"===n)customElements.get(n)||customElements.define(n,KolAccordion$1)})}const KolAccordion=KolAccordion$1,defineCustomElement=defineCustomElement$1;export{KolAccordion,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{w as watchValidator,i as isObject,h as featureHint}from"./index2.js";import{n as nonce}from"./dev.utils.js";import{w as watchHeadingLevel}from"./validation.js";import{K as KolCollapsibleFc}from"./Collapsible.js";import{v as validateDisabled}from"./disabled.js";import{v as validateOpen}from"./open.js";import{v as validateLabel}from"./label.js";const validateAccordionCallbacks=(n,e)=>{watchValidator(n,"_on",n=>isObject(n),new Set(["AccordionCallbacksPropType {Events.onClick}"]),e)},defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n@layer kol-component {\n .collapsible {\n /* @see https://github.com/public-ui/kolibri/issues/5952 */\n /*\n * Inside a button, the caption text is always centered.\n * So we have to align the text to the left.\n */\n }\n .collapsible__wrapper {\n /* Forces the element into its own GPU compositing layer (via 3D transform). Helps prevent rendering/layout bugs (e.g. #7511) and may improve animation performance. */\n transform: translateZ(0);\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.3s;\n }\n .collapsible__wrapper-animation {\n min-height: 0;\n /**\n * The `overflow: hidden` ensures that the content is not visible during the animated\n * opening and closing. This should also cut off overlays containing content, but it\n *does not.\n */\n overflow: hidden;\n /* This property is important to keep in sync with the visual transition (template-rows). Without it interactive elements within the accordion would stay focusable. */\n visibility: hidden;\n transition: visibility 0.3s;\n }\n .open .collapsible__wrapper {\n grid-template-rows: 1fr;\n }\n .open .collapsible__wrapper-animation {\n visibility: visible;\n }\n @media (prefers-reduced-motion) {\n .collapsible__wrapper-animation, .collapsible__wrapper {\n transition-duration: 0s;\n }\n }\n @media print {\n :not(.open) .collapsible__wrapper-animation {\n display: none;\n }\n }\n .collapsible__heading-button button .kol-span-wc {\n justify-items: start;\n }\n}",KolAccordionDefaultStyle0=defaultStyleCss;featureHint("[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend"),featureHint("[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.");const KolAccordion$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.nonce=nonce(),this.catchRef=n=>{this.buttonWcRef=n},this.handleOnClick=n=>{this._open=!this._open,setTimeout(()=>{var e,t;null===(t=null===(e=this.state._on)||void 0===e?void 0:e.onClick)||void 0===t||t.call(e,n,!0===this._open)})},this._disabled=!1,this._label=void 0,this._level=0,this._on=void 0,this._open=!1,this.state={_label:"",_level:0,_on:{}}}async focus(){await this.kolFocus()}async kolFocus(){var n;await(null===(n=this.buttonWcRef)||void 0===n?void 0:n.kolFocus())}render(){const{_open:n,_label:e,_disabled:t,_level:i}=this.state,o="accordion",a={id:this.nonce,label:e,open:n,disabled:t,level:i,onClick:this.handleOnClick,class:o,HeadingProps:{class:`${o}__heading`},HeadingButtonProps:{ref:this.catchRef,class:`${o}__heading-button`},ContentProps:{class:`${o}__content`,wrapperClass:`${o}__wrapper`,animationClass:`${o}__wrapper-animation`}};return h(Host,{key:"7ddae7d5f74257c2b7c6210b99e2fe96664a92de",class:"kol-accordion"},h(KolCollapsibleFc,Object.assign({key:"95da6a5f290091ac0356ba4481f6fed24cfe832e"},a),h("slot",{key:"cc563067a38896c68041a3a40a3cc3b5c3bc2353"})))}validateDisabled(n){validateDisabled(this,n)}validateLabel(n){validateLabel(this,n,{required:!0})}validateLevel(n){watchHeadingLevel(this,n)}validateOn(n){validateAccordionCallbacks(this,n)}validateOpen(n){validateOpen(this,n)}componentWillLoad(){this.validateDisabled(this._disabled),this.validateLabel(this._label),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_disabled:["validateDisabled"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}static get style(){return{default:KolAccordionDefaultStyle0}}},[33,"kol-accordion",{_disabled:[4],_label:[1],_level:[2],_on:[16],_open:[1540],state:[32],focus:[64],kolFocus:[64]},void 0,{_disabled:["validateDisabled"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-accordion"].forEach(n=>{if("kol-accordion"===n)customElements.get(n)||customElements.define(n,KolAccordion$1)})}const KolAccordion=KolAccordion$1,defineCustomElement=defineCustomElement$1;export{KolAccordion,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-accordion.js","mappings":";;;;;;;;;;;;AAmBO,MAAM,0BAA0B,GAAG,CAAC,SAAoC,EAAE,KAA2C;IAC3H,cAAc,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,6CAA6C,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/H,CAAC;;ACrBD,MAAM,eAAe,GAAG,yiMAAyiM,CAAC;AAClkM,kCAAe,eAAe;;ACiB9B,WAAW,CAAC;;;;yCAI6B,CAAC,CAAC;AAC3C,WAAW,CAAC,iEAAiE,CAAC,CAAC;MAalEA,cAAY;;;;;QACP,UAAK,GAAG,KAAK,EAAE,CAAC;QAGhB,aAAQ,GAAG,CAAC,GAA4B;YACxD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;SACvB,CAAC;QAkBM,kBAAa,GAAG,CAAC,KAAiB;YACzC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAQzB,UAAU,CAAC;;gBACV,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,0CAAE,OAAO,mDAAG,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;aACtD,CAAC,CAAC;SACH,CAAC;yBAsCmC,KAAK;;sBAUH,CAAC;;qBAWyB,KAAK;qBAE7B;YACxC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,EAAE;SACP;;IAzFM,MAAM,KAAK;QACjB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;KACtB;IAMM,MAAM,QAAQ;;QACpB,OAAM,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAA,CAAC;KACnC;IAgBM,MAAM;QACZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACxD,MAAM,SAAS,GAAG,WAAW,CAAC;QAE9B,MAAM,KAAK,GAAqB;YAC/B,EAAE,EAAE,IAAI,CAAC,KAAK;YACd,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,IAAI,CAAC,aAAa;YAC3B,KAAK,EAAE,SAAS;YAChB,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,SAAS,WAAW,EAAE;YAChD,kBAAkB,EAAE;gBACnB,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,KAAK,EAAE,GAAG,SAAS,kBAAkB;aACrC;YACD,YAAY,EAAE;gBACb,KAAK,EAAE,GAAG,SAAS,WAAW;gBAC9B,YAAY,EAAE,GAAG,SAAS,WAAW;gBACrC,cAAc,EAAE,GAAG,SAAS,qBAAqB;aACjD;SACD,CAAC;QAEF,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,eAAe,IAC1B,EAAC,gBAAgB,qEAAK,KAAK,GAC1B,8DAAQ,CACU,CACb,EACN;KACF;IAmCM,gBAAgB,CAAC,KAAwB;QAC/C,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC9B;IAGM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,aAAa,CAAC,KAAoB;QACxC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC/B;IAGM,UAAU,CAAC,EAAwC;QACzD,0BAA0B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KACrC;IAGM,YAAY,CAAC,KAAoB;QACvC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC1B;IAEM,iBAAiB;QACvB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAccordion"],"sources":["src/schema/props/accordion-callbacks.ts","src/components/accordion/style.scss?tag=kol-accordion&mode=default&encapsulation=shadow","src/components/accordion/shadow.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport type { Events } from '../enums';\nimport type { EventValueOrEventCallback } from '../types/callbacks';\nimport { watchValidator } from '../utils';\nimport { isObject } from '../validators';\n\n/* types */\nexport type AccordionCallbacksPropType<T> = {\n\t[Events.onClick]?: EventValueOrEventCallback<MouseEvent, T>;\n};\n\n/**\n * Defines the callback functions for accordion events.\n */\nexport type PropAccordionCallbacks<T> = {\n\ton: AccordionCallbacksPropType<T>;\n};\n\n/* validator */\nexport const validateAccordionCallbacks = (component: Generic.Element.Component, value?: AccordionCallbacksPropType<boolean>): void => {\n\twatchValidator(component, `_on`, (value) => isObject(value), new Set(['AccordionCallbacksPropType {Events.onClick}']), value);\n};\n","@use '../style' as *;\n@use '../host-display-block' as *;\n@use '../../functional-components/Collapsible/collapsible' as *;\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\nimport { Component, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport type { JSX } from '@stencil/core';\nimport type {\n\tAccordionAPI,\n\tAccordionStates,\n\tAccordionCallbacksPropType,\n\tDisabledPropType,\n\tFocusableElement,\n\tHeadingLevel,\n\tLabelPropType,\n\tOpenPropType,\n} from '../../schema';\nimport { featureHint, validateAccordionCallbacks, validateDisabled, validateLabel, validateOpen } from '../../schema';\nimport { nonce } from '../../utils/dev.utils';\nimport { watchHeadingLevel } from '../heading/validation';\nimport KolCollapsibleFc, { type CollapsibleProps } from '../../functional-components/Collapsible';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements AccordionAPI, FocusableElement {\n\tprivate readonly nonce = nonce();\n\tprivate buttonWcRef?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.buttonWcRef = ref;\n\t};\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the accordion trigger button.\n\t */\n\t@Method()\n\tpublic async kolFocus() {\n\t\tawait this.buttonWcRef?.kolFocus();\n\t}\n\n\tprivate handleOnClick = (event: MouseEvent) => {\n\t\tthis._open = !this._open;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tthis.state._on?.onClick?.(event, this._open === true);\n\t\t});\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { _open, _label, _disabled, _level } = this.state;\n\t\tconst rootClass = 'accordion';\n\n\t\tconst props: CollapsibleProps = {\n\t\t\tid: this.nonce,\n\t\t\tlabel: _label,\n\t\t\topen: _open,\n\t\t\tdisabled: _disabled,\n\t\t\tlevel: _level,\n\t\t\tonClick: this.handleOnClick,\n\t\t\tclass: rootClass,\n\t\t\tHeadingProps: { class: `${rootClass}__heading` },\n\t\t\tHeadingButtonProps: {\n\t\t\t\tref: this.catchRef,\n\t\t\t\tclass: `${rootClass}__heading-button`,\n\t\t\t},\n\t\t\tContentProps: {\n\t\t\t\tclass: `${rootClass}__content`,\n\t\t\t\twrapperClass: `${rootClass}__wrapper`,\n\t\t\t\tanimationClass: `${rootClass}__wrapper-animation`,\n\t\t\t},\n\t\t};\n\n\t\treturn (\n\t\t\t<Host class=\"kol-accordion\">\n\t\t\t\t<KolCollapsibleFc {...props}>\n\t\t\t\t\t<slot />\n\t\t\t\t</KolCollapsibleFc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\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!: string;\n\n\t/**\n\t * Defines which H-level from 1-6 the heading has. 0 specifies no heading and is shown as bold text.\n\t */\n\t@Prop() public _level?: HeadingLevel = 0;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: AccordionCallbacksPropType<boolean>;\n\n\t/**\n\t * Opens/expands the element when truthy, closes/collapses when falsy.\n\t * @TODO: Change type back to `OpenPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t@State() public state: AccordionStates = {\n\t\t_label: '', // ⚠ required\n\t\t_level: 0,\n\t\t_on: {},\n\t};\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: DisabledPropType): void {\n\t\tvalidateDisabled(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(on?: AccordionCallbacksPropType<boolean>): void {\n\t\tvalidateAccordionCallbacks(this, on);\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateDisabled(this._disabled);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-accordion.js","mappings":";;;;;;;;;;;;AAmBO,MAAM,0BAA0B,GAAG,CAAC,SAAoC,EAAE,KAA2C;IAC3H,cAAc,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,6CAA6C,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/H,CAAC;;ACrBD,MAAM,eAAe,GAAG,wiMAAwiM,CAAC;AACjkM,kCAAe,eAAe;;ACiB9B,WAAW,CAAC;;;;yCAI6B,CAAC,CAAC;AAC3C,WAAW,CAAC,iEAAiE,CAAC,CAAC;MAalEA,cAAY;;;;;QACP,UAAK,GAAG,KAAK,EAAE,CAAC;QAGhB,aAAQ,GAAG,CAAC,GAA4B;YACxD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;SACvB,CAAC;QAkBM,kBAAa,GAAG,CAAC,KAAiB;YACzC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAQzB,UAAU,CAAC;;gBACV,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,0CAAE,OAAO,mDAAG,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;aACtD,CAAC,CAAC;SACH,CAAC;yBAsCmC,KAAK;;sBAUH,CAAC;;qBAWyB,KAAK;qBAE7B;YACxC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,EAAE;SACP;;IAzFM,MAAM,KAAK;QACjB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;KACtB;IAMM,MAAM,QAAQ;;QACpB,OAAM,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAA,CAAC;KACnC;IAgBM,MAAM;QACZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACxD,MAAM,SAAS,GAAG,WAAW,CAAC;QAE9B,MAAM,KAAK,GAAqB;YAC/B,EAAE,EAAE,IAAI,CAAC,KAAK;YACd,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,IAAI,CAAC,aAAa;YAC3B,KAAK,EAAE,SAAS;YAChB,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,SAAS,WAAW,EAAE;YAChD,kBAAkB,EAAE;gBACnB,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,KAAK,EAAE,GAAG,SAAS,kBAAkB;aACrC;YACD,YAAY,EAAE;gBACb,KAAK,EAAE,GAAG,SAAS,WAAW;gBAC9B,YAAY,EAAE,GAAG,SAAS,WAAW;gBACrC,cAAc,EAAE,GAAG,SAAS,qBAAqB;aACjD;SACD,CAAC;QAEF,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,eAAe,IAC1B,EAAC,gBAAgB,qEAAK,KAAK,GAC1B,8DAAQ,CACU,CACb,EACN;KACF;IAmCM,gBAAgB,CAAC,KAAwB;QAC/C,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC9B;IAGM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,aAAa,CAAC,KAAoB;QACxC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC/B;IAGM,UAAU,CAAC,EAAwC;QACzD,0BAA0B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KACrC;IAGM,YAAY,CAAC,KAAoB;QACvC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC1B;IAEM,iBAAiB;QACvB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAccordion"],"sources":["src/schema/props/accordion-callbacks.ts","src/components/accordion/style.scss?tag=kol-accordion&mode=default&encapsulation=shadow","src/components/accordion/shadow.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport type { Events } from '../enums';\nimport type { EventValueOrEventCallback } from '../types/callbacks';\nimport { watchValidator } from '../utils';\nimport { isObject } from '../validators';\n\n/* types */\nexport type AccordionCallbacksPropType<T> = {\n\t[Events.onClick]?: EventValueOrEventCallback<MouseEvent, T>;\n};\n\n/**\n * Defines the callback functions for accordion events.\n */\nexport type PropAccordionCallbacks<T> = {\n\ton: AccordionCallbacksPropType<T>;\n};\n\n/* validator */\nexport const validateAccordionCallbacks = (component: Generic.Element.Component, value?: AccordionCallbacksPropType<boolean>): void => {\n\twatchValidator(component, `_on`, (value) => isObject(value), new Set(['AccordionCallbacksPropType {Events.onClick}']), value);\n};\n","@use '../style' as *;\n@use '../host-display-block' as *;\n@use '../../functional-components/Collapsible/collapsible' as *;\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\nimport { Component, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport type { JSX } from '@stencil/core';\nimport type {\n\tAccordionAPI,\n\tAccordionStates,\n\tAccordionCallbacksPropType,\n\tDisabledPropType,\n\tFocusableElement,\n\tHeadingLevel,\n\tLabelPropType,\n\tOpenPropType,\n} from '../../schema';\nimport { featureHint, validateAccordionCallbacks, validateDisabled, validateLabel, validateOpen } from '../../schema';\nimport { nonce } from '../../utils/dev.utils';\nimport { watchHeadingLevel } from '../heading/validation';\nimport KolCollapsibleFc, { type CollapsibleProps } from '../../functional-components/Collapsible';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements AccordionAPI, FocusableElement {\n\tprivate readonly nonce = nonce();\n\tprivate buttonWcRef?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.buttonWcRef = ref;\n\t};\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the accordion trigger button.\n\t */\n\t@Method()\n\tpublic async kolFocus() {\n\t\tawait this.buttonWcRef?.kolFocus();\n\t}\n\n\tprivate handleOnClick = (event: MouseEvent) => {\n\t\tthis._open = !this._open;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tthis.state._on?.onClick?.(event, this._open === true);\n\t\t});\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { _open, _label, _disabled, _level } = this.state;\n\t\tconst rootClass = 'accordion';\n\n\t\tconst props: CollapsibleProps = {\n\t\t\tid: this.nonce,\n\t\t\tlabel: _label,\n\t\t\topen: _open,\n\t\t\tdisabled: _disabled,\n\t\t\tlevel: _level,\n\t\t\tonClick: this.handleOnClick,\n\t\t\tclass: rootClass,\n\t\t\tHeadingProps: { class: `${rootClass}__heading` },\n\t\t\tHeadingButtonProps: {\n\t\t\t\tref: this.catchRef,\n\t\t\t\tclass: `${rootClass}__heading-button`,\n\t\t\t},\n\t\t\tContentProps: {\n\t\t\t\tclass: `${rootClass}__content`,\n\t\t\t\twrapperClass: `${rootClass}__wrapper`,\n\t\t\t\tanimationClass: `${rootClass}__wrapper-animation`,\n\t\t\t},\n\t\t};\n\n\t\treturn (\n\t\t\t<Host class=\"kol-accordion\">\n\t\t\t\t<KolCollapsibleFc {...props}>\n\t\t\t\t\t<slot />\n\t\t\t\t</KolCollapsibleFc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t */\n\t@Prop() public _disabled?: boolean = false;\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!: string;\n\n\t/**\n\t * Defines which H-level from 1-6 the heading has. 0 specifies no heading and is shown as bold text.\n\t */\n\t@Prop() public _level?: HeadingLevel = 0;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: AccordionCallbacksPropType<boolean>;\n\n\t/**\n\t * Opens/expands the element when truthy, closes/collapses when falsy.\n\t * @TODO: Change type back to `OpenPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t@State() public state: AccordionStates = {\n\t\t_label: '', // ⚠ required\n\t\t_level: 0,\n\t\t_on: {},\n\t};\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: DisabledPropType): void {\n\t\tvalidateDisabled(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(on?: AccordionCallbacksPropType<boolean>): void {\n\t\tvalidateAccordionCallbacks(this, on);\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateDisabled(this._disabled);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{d as KolAlertWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n contain: layout;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}",KolAlertDefaultStyle0=defaultStyleCss,KolAlert$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._alert=!1,this._hasCloser=!1,this._label=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){return h(Host,{key:"a982a3bcc1c141e059ac207df60455adcec5d402",class:"kol-alert"},h(KolAlertWcTag,{key:"e0d95edabcfd5d1aff26d51f9dee5ccbf3c91951",_alert:this._alert,_hasCloser:this._hasCloser,_label:this._label,_level:this._level,_on:this._on,_type:this._type,_variant:this._variant},h("slot",{key:"149a58b2f2222989a7447cc6235b49f80b9f4fc1"})))}static get style(){return{default:KolAlertDefaultStyle0}}},[33,"kol-alert",{_alert:[4],_hasCloser:[4,"_has-closer"],_label:[1],_level:[2],_on:[16],_type:[1],_variant:[1],state:[32]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-alert"].forEach(n=>{if("kol-alert"===n)customElements.get(n)||customElements.define(n,KolAlert$1)})}const KolAlert=KolAlert$1,defineCustomElement=defineCustomElement$1;export{KolAlert,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{d as KolAlertWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}",KolAlertDefaultStyle0=defaultStyleCss,KolAlert$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._alert=!1,this._hasCloser=!1,this._label=void 0,this._level=1,this._on=void 0,this._type="default",this._variant="msg",this.state={_level:1}}render(){return h(Host,{key:"a982a3bcc1c141e059ac207df60455adcec5d402",class:"kol-alert"},h(KolAlertWcTag,{key:"e0d95edabcfd5d1aff26d51f9dee5ccbf3c91951",_alert:this._alert,_hasCloser:this._hasCloser,_label:this._label,_level:this._level,_on:this._on,_type:this._type,_variant:this._variant},h("slot",{key:"149a58b2f2222989a7447cc6235b49f80b9f4fc1"})))}static get style(){return{default:KolAlertDefaultStyle0}}},[33,"kol-alert",{_alert:[4],_hasCloser:[4,"_has-closer"],_label:[1],_level:[2],_on:[16],_type:[1],_variant:[1],state:[32]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-alert"].forEach(n=>{if("kol-alert"===n)customElements.get(n)||customElements.define(n,KolAlert$1)})}const KolAlert=KolAlert$1,defineCustomElement=defineCustomElement$1;export{KolAlert,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-alert.js","mappings":";;;;;;AAAA,MAAM,eAAe,GAAG,y5LAAy5L,CAAC;AACl7L,8BAAe,eAAe;;MCcjBA,UAAQ;;;;;sBAsBc,KAAK;0BAMD,KAAK;;sBAUJ,CAAC;;qBAUL,SAAS;wBAKH,KAAK;qBAET;YACpC,MAAM,EAAE,CAAC;SACT;;IAxDM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,EAAC,aAAa,qDACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,8DAAQ,CACO,CACV,EACN;KACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAlert"],"sources":["src/components/alert/style.scss?tag=kol-alert&mode=default&encapsulation=shadow","src/components/alert/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../@shared/kol-alert-mixin' as *;\n\n@include kol-alert-styles;\n","import type { AlertProps, AlertStates, AlertType, AlertVariant, HeadingLevel, KoliBriAlertEventCallbacks, LabelPropType } from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, h, Host, Prop, State } from '@stencil/core';\nimport { KolAlertWcTag } from '../../core/component-names';\n\n/**\n * @slot - Der Inhalt der Meldung.\n */\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements AlertProps {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-alert\">\n\t\t\t\t<KolAlertWcTag\n\t\t\t\t\t_alert={this._alert}\n\t\t\t\t\t_hasCloser={this._hasCloser}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_level={this._level}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_variant={this._variant}\n\t\t\t\t>\n\t\t\t\t\t<slot />\n\t\t\t\t</KolAlertWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t */\n\t@Prop() public _alert?: boolean = false;\n\n\t/**\n\t * Defines whether the element can be closed.\n\t * @TODO: Change type back to `HasCloserPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hasCloser?: boolean = false;\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 which H-level from 1-6 the heading has. 0 specifies no heading and is shown as bold text.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t@State() public state: AlertStates = {\n\t\t_level: 1,\n\t};\n}\n"],"version":3}
1
+ {"file":"kol-alert.js","mappings":";;;;;;AAAA,MAAM,eAAe,GAAG,m4LAAm4L,CAAC;AAC55L,8BAAe,eAAe;;MCcjBA,UAAQ;;;;;sBAsBc,KAAK;0BAMD,KAAK;;sBAUJ,CAAC;;qBAUL,SAAS;wBAKH,KAAK;qBAET;YACpC,MAAM,EAAE,CAAC;SACT;;IAxDM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,EAAC,aAAa,qDACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,8DAAQ,CACO,CACV,EACN;KACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAlert"],"sources":["src/components/alert/style.scss?tag=kol-alert&mode=default&encapsulation=shadow","src/components/alert/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../@shared/kol-alert-mixin' as *;\n\n@include kol-alert-styles;\n","import type { AlertProps, AlertStates, AlertType, AlertVariant, HeadingLevel, KoliBriAlertEventCallbacks, LabelPropType } from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, h, Host, Prop, State } from '@stencil/core';\nimport { KolAlertWcTag } from '../../core/component-names';\n\n/**\n * @slot - Der Inhalt der Meldung.\n */\n@Component({\n\ttag: 'kol-alert',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAlert implements AlertProps {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-alert\">\n\t\t\t\t<KolAlertWcTag\n\t\t\t\t\t_alert={this._alert}\n\t\t\t\t\t_hasCloser={this._hasCloser}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_level={this._level}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_variant={this._variant}\n\t\t\t\t>\n\t\t\t\t\t<slot />\n\t\t\t\t</KolAlertWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t */\n\t@Prop() public _alert?: boolean = false;\n\n\t/**\n\t * Defines whether the element can be closed.\n\t * @TODO: Change type back to `HasCloserPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hasCloser?: boolean = false;\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 which H-level from 1-6 the heading has. 0 specifies no heading and is shown as bold text.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Alerts an.\n\t */\n\t@Prop() public _on?: KoliBriAlertEventCallbacks;\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * Defines which variant should be used for presentation.\n\t */\n\t@Prop() public _variant?: AlertVariant = 'msg';\n\n\t@State() public state: AlertStates = {\n\t\t_level: 1,\n\t};\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{h as featureHint,o as objectObjectHandler,q as parseJson,l as setState}from"./index2.js";import{c as KolButtonWcTag,g as KolSpanWcTag}from"./component-names.js";import{n as nonce}from"./dev.utils.js";import{h as handleColorChange,v as validateColor}from"./color.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n contain: layout;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > span {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n }\n :host > span > .kol-button-wc button {\n color: inherit;\n }\n}",KolBadgeDefaultStyle0=defaultStyleCss;featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const KolBadge$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.bgColorStr="#000",this.colorStr="#fff",this.id=nonce(),this.handleColorChange=n=>{const t=handleColorChange(n);this.bgColorStr=t.backgroundColor,this.colorStr=t.foregroundColor},this._color="#000",this._icons=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"}}}renderSmartButton(n){return h(KolButtonWcTag,{_ariaControls:this.id,_customClass:n._customClass,_disabled:n._disabled,_hideLabel:!0,_icons:n._icons,_id:n._id,_label:n._label,_on:n._on,_tooltipAlign:n._tooltipAlign,_variant:n._variant})}render(){const n="object"==typeof this.state._smartButton&&null!==this.state._smartButton;return h(Host,{key:"e18cef57a5d00c73f9040d17f16e53a22bb21c2d",class:"kol-badge"},h("span",{key:"6375f9d2c8c8863165d6e0dce77ad89f708275b5",class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},h(KolSpanWcTag,{key:"a74d942a94c5bbeb002bbd42a5d45a9e75c704e8",id:n?this.id:void 0,_allowMarkdown:!0,_icons:this._icons,_label:this._label}),n&&this.renderSmartButton(this.state._smartButton)))}validateColor(n){validateColor(this,n,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(n){objectObjectHandler(n,()=>{try{n=parseJson(n)}catch(n){}setState(this,"_smartButton",n)})}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}static get style(){return{default:KolBadgeDefaultStyle0}}},[33,"kol-badge",{_color:[1],_icons:[1],_label:[1],_smartButton:[1,"_smart-button"],state:[32]},void 0,{_color:["validateColor"],_smartButton:["validateSmartButton"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-badge"].forEach(n=>{if("kol-badge"===n)customElements.get(n)||customElements.define(n,KolBadge$1)})}const KolBadge=KolBadge$1,defineCustomElement=defineCustomElement$1;export{KolBadge,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{h as featureHint,o as objectObjectHandler,q as parseJson,l as setState}from"./index2.js";import{c as KolButtonWcTag,g as KolSpanWcTag}from"./component-names.js";import{n as nonce}from"./dev.utils.js";import{h as handleColorChange,v as validateColor}from"./color.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > span {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n }\n :host > span > .kol-button-wc button {\n color: inherit;\n }\n}",KolBadgeDefaultStyle0=defaultStyleCss;featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const KolBadge$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.bgColorStr="#000",this.colorStr="#fff",this.id=nonce(),this.handleColorChange=n=>{const t=handleColorChange(n);this.bgColorStr=t.backgroundColor,this.colorStr=t.foregroundColor},this._color="#000",this._icons=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"}}}renderSmartButton(n){return h(KolButtonWcTag,{_ariaControls:this.id,_customClass:n._customClass,_disabled:n._disabled,_hideLabel:!0,_icons:n._icons,_id:n._id,_label:n._label,_on:n._on,_tooltipAlign:n._tooltipAlign,_variant:n._variant})}render(){const n="object"==typeof this.state._smartButton&&null!==this.state._smartButton;return h(Host,{key:"e18cef57a5d00c73f9040d17f16e53a22bb21c2d",class:"kol-badge"},h("span",{key:"6375f9d2c8c8863165d6e0dce77ad89f708275b5",class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},h(KolSpanWcTag,{key:"a74d942a94c5bbeb002bbd42a5d45a9e75c704e8",id:n?this.id:void 0,_allowMarkdown:!0,_icons:this._icons,_label:this._label}),n&&this.renderSmartButton(this.state._smartButton)))}validateColor(n){validateColor(this,n,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(n){objectObjectHandler(n,()=>{try{n=parseJson(n)}catch(n){}setState(this,"_smartButton",n)})}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}static get style(){return{default:KolBadgeDefaultStyle0}}},[33,"kol-badge",{_color:[1],_icons:[1],_label:[1],_smartButton:[1,"_smart-button"],state:[32]},void 0,{_color:["validateColor"],_smartButton:["validateSmartButton"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-badge"].forEach(n=>{if("kol-badge"===n)customElements.get(n)||customElements.define(n,KolBadge$1)})}const KolBadge=KolBadge$1,defineCustomElement=defineCustomElement$1;export{KolBadge,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-badge.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,oyLAAoyL,CAAC;AAC7zL,8BAAe,eAAe;;ACQ9B,WAAW,CAAC,qEAAqE,CAAC,CAAC;MAStEA,UAAQ;;;;;QACZ,eAAU,GAAG,MAAM,CAAC;QACpB,aAAQ,GAAG,MAAM,CAAC;QACT,OAAE,GAAG,KAAK,EAAE,CAAC;QAkEtB,sBAAiB,GAAG,CAAC,KAAc;YAC1C,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,eAAe,CAAC;YAC5C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,eAAyB,CAAC;SACpD,CAAC;sBA5B+C,MAAM;;;;qBAiBlB;YACpC,MAAM,EAAE;gBACP,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,MAAM;aACvB;SACD;;IA9DO,iBAAiB,CAAC,KAAkB;QAC3C,QACC,EAAC,cAAc,IACd,aAAa,EAAE,IAAI,CAAC,EAAE,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GACP,EACjB;KACF;IAEM,MAAM;QACZ,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACvG,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,6DACC,KAAK,EAAE;gBACN,cAAc,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;aAC/F,EACD,KAAK,EAAE;gBACN,eAAe,EAAE,IAAI,CAAC,UAAU;gBAChC,KAAK,EAAE,IAAI,CAAC,QAAQ;aACpB,IAED,EAAC,YAAY,qDAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,cAAc,QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAiB,EAC/H,cAAc,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,YAA2B,CAAC,CAC3E,CACD,EACN;KACF;IAoCM,aAAa,CAAC,KAA8B;QAClD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE;gBACN,WAAW,EAAE,IAAI,CAAC,iBAAiB;aACnC;SACD,CAAC,CAAC;KACH;IAGM,mBAAmB,CAAC,KAA4B;QACtD,mBAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI;gBACH,KAAK,GAAG,SAAS,CAAc,KAAe,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;SACtC,CAAC,CAAC;KACH;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolBadge"],"sources":["src/components/badge/style.scss?tag=kol-badge&mode=default&encapsulation=shadow","src/components/badge/shadow.tsx"],"sourcesContent":["@use '../@shared/mixins' as *;\n@use '../style' as *;\n@use '../tooltip/style.scss' as *;\n\n@layer kol-component {\n\t:host > span {\n\t\t/* Visible with forced colors */\n\t\toutline: transparent solid to-rem(1);\n\t\tdisplay: inline-flex;\n\t\tplace-items: center;\n\t}\n\n\t:host > span > .kol-button-wc button {\n\t\tcolor: inherit;\n\t}\n}\n","import type { BadgeAPI, BadgeStates, ButtonProps, KoliBriIconsProp, LabelPropType, PropColor, Stringified } from '../../schema';\nimport { featureHint, handleColorChange, objectObjectHandler, parseJson, setState, validateColor } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { KolSpanWcTag } from '../../core/component-names';\n\nimport { nonce } from '../../utils/dev.utils';\n\nimport type { JSX } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements BadgeAPI {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\tprivate readonly id = nonce();\n\n\tprivate renderSmartButton(props: ButtonProps): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\t_ariaControls={this.id}\n\t\t\t\t_customClass={props._customClass}\n\t\t\t\t_disabled={props._disabled}\n\t\t\t\t_hideLabel={true}\n\t\t\t\t_icons={props._icons}\n\t\t\t\t_id={props._id}\n\t\t\t\t_label={props._label}\n\t\t\t\t_on={props._on}\n\t\t\t\t_tooltipAlign={props._tooltipAlign}\n\t\t\t\t_variant={props._variant}\n\t\t\t></KolButtonWcTag>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasSmartButton = typeof this.state._smartButton === 'object' && this.state._smartButton !== null;\n\t\treturn (\n\t\t\t<Host class=\"kol-badge\">\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolSpanWcTag id={hasSmartButton ? this.id : undefined} _allowMarkdown _icons={this._icons} _label={this._label}></KolSpanWcTag>\n\t\t\t\t\t{hasSmartButton && this.renderSmartButton(this.state._smartButton as ButtonProps)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the backgroundColor and foregroundColor.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\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.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t@State() public state: BadgeStates = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-badge.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,8wLAA8wL,CAAC;AACvyL,8BAAe,eAAe;;ACQ9B,WAAW,CAAC,qEAAqE,CAAC,CAAC;MAStEA,UAAQ;;;;;QACZ,eAAU,GAAG,MAAM,CAAC;QACpB,aAAQ,GAAG,MAAM,CAAC;QACT,OAAE,GAAG,KAAK,EAAE,CAAC;QAkEtB,sBAAiB,GAAG,CAAC,KAAc;YAC1C,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,eAAe,CAAC;YAC5C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,eAAyB,CAAC;SACpD,CAAC;sBA5B+C,MAAM;;;;qBAiBlB;YACpC,MAAM,EAAE;gBACP,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,MAAM;aACvB;SACD;;IA9DO,iBAAiB,CAAC,KAAkB;QAC3C,QACC,EAAC,cAAc,IACd,aAAa,EAAE,IAAI,CAAC,EAAE,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GACP,EACjB;KACF;IAEM,MAAM;QACZ,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACvG,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,6DACC,KAAK,EAAE;gBACN,cAAc,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;aAC/F,EACD,KAAK,EAAE;gBACN,eAAe,EAAE,IAAI,CAAC,UAAU;gBAChC,KAAK,EAAE,IAAI,CAAC,QAAQ;aACpB,IAED,EAAC,YAAY,qDAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,cAAc,QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAiB,EAC/H,cAAc,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,YAA2B,CAAC,CAC3E,CACD,EACN;KACF;IAoCM,aAAa,CAAC,KAA8B;QAClD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE;gBACN,WAAW,EAAE,IAAI,CAAC,iBAAiB;aACnC;SACD,CAAC,CAAC;KACH;IAGM,mBAAmB,CAAC,KAA4B;QACtD,mBAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI;gBACH,KAAK,GAAG,SAAS,CAAc,KAAe,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;SACtC,CAAC,CAAC;KACH;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolBadge"],"sources":["src/components/badge/style.scss?tag=kol-badge&mode=default&encapsulation=shadow","src/components/badge/shadow.tsx"],"sourcesContent":["@use '../@shared/mixins' as *;\n@use '../style' as *;\n@use '../tooltip/style.scss' as *;\n\n@layer kol-component {\n\t:host > span {\n\t\t/* Visible with forced colors */\n\t\toutline: transparent solid to-rem(1);\n\t\tdisplay: inline-flex;\n\t\tplace-items: center;\n\t}\n\n\t:host > span > .kol-button-wc button {\n\t\tcolor: inherit;\n\t}\n}\n","import type { BadgeAPI, BadgeStates, ButtonProps, KoliBriIconsProp, LabelPropType, PropColor, Stringified } from '../../schema';\nimport { featureHint, handleColorChange, objectObjectHandler, parseJson, setState, validateColor } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { KolSpanWcTag } from '../../core/component-names';\n\nimport { nonce } from '../../utils/dev.utils';\n\nimport type { JSX } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements BadgeAPI {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\tprivate readonly id = nonce();\n\n\tprivate renderSmartButton(props: ButtonProps): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\t_ariaControls={this.id}\n\t\t\t\t_customClass={props._customClass}\n\t\t\t\t_disabled={props._disabled}\n\t\t\t\t_hideLabel={true}\n\t\t\t\t_icons={props._icons}\n\t\t\t\t_id={props._id}\n\t\t\t\t_label={props._label}\n\t\t\t\t_on={props._on}\n\t\t\t\t_tooltipAlign={props._tooltipAlign}\n\t\t\t\t_variant={props._variant}\n\t\t\t></KolButtonWcTag>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasSmartButton = typeof this.state._smartButton === 'object' && this.state._smartButton !== null;\n\t\treturn (\n\t\t\t<Host class=\"kol-badge\">\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolSpanWcTag id={hasSmartButton ? this.id : undefined} _allowMarkdown _icons={this._icons} _label={this._label}></KolSpanWcTag>\n\t\t\t\t\t{hasSmartButton && this.renderSmartButton(this.state._smartButton as ButtonProps)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the backgroundColor and foregroundColor.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\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.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t@State() public state: BadgeStates = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{c as KolButtonWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n contain: layout;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n :is(a, button) {\n display: inline-flex;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n :is(a, button) .kol-span-wc .span-label {\n text-decoration-line: underline;\n }\n a:is(:focus, :hover):not([aria-disabled]) .kol-span-wc .span-label,\n button:is(:focus, :hover):not([disabled]) .kol-span-wc .span-label {\n text-decoration-thickness: 0.2em;\n }\n .skip {\n position: absolute;\n left: calc(-99999rem / var(--kolibri-root-font-size, 16));\n z-index: 9999999;\n line-height: 1;\n }\n .skip:focus {\n background-color: #fff;\n position: unset;\n left: unset;\n padding: 1em;\n }\n .kol-icon.external-link-icon {\n display: inline-flex;\n margin-left: calc(8rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n button {\n min-height: unset;\n }\n}",KolButtonLinkDefaultStyle0=defaultStyleCss,KolButtonLink$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=n=>{this.buttonWcRef=n},this._accessKey=void 0,this._ariaControls=void 0,this._ariaDescription=void 0,this._ariaExpanded=void 0,this._ariaSelected=void 0,this._disabled=!1,this._hideLabel=!1,this._icons=void 0,this._id=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._role=void 0,this._shortKey=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}async getValue(){return this._value}async focus(){await this.kolFocus()}async kolFocus(){var n;await(null===(n=this.buttonWcRef)||void 0===n?void 0:n.kolFocus())}render(){return h(Host,{key:"74a1c493bcd94ecbdcf72abeca56d9cbbd6aaf93",class:"kol-button-link"},h(KolButtonWcTag,{key:"9bcabede025937492ce8082a3ceb14184352d5b0",ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaDescription:this._ariaDescription,_ariaExpanded:this._ariaExpanded,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icons:this._icons,_hideLabel:this._hideLabel,_id:this._id,_label:this._label,_name:this._name,_on:this._on,_shortKey:this._shortKey,_syncValueBySelector:this._syncValueBySelector,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},h("slot",{key:"091e5f56f9184bbee891e6e12430d3aafe3690de",name:"expert",slot:"expert"})))}static get delegatesFocus(){return!0}static get style(){return{default:KolButtonLinkDefaultStyle0}}},[49,"kol-button-link",{_accessKey:[1,"_access-key"],_ariaControls:[1,"_aria-controls"],_ariaDescription:[1,"_aria-description"],_ariaExpanded:[4,"_aria-expanded"],_ariaSelected:[4,"_aria-selected"],_disabled:[4],_hideLabel:[4,"_hide-label"],_icons:[1],_id:[1],_label:[1],_name:[1],_on:[16],_role:[1],_shortKey:[1,"_short-key"],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_type:[1],_value:[8],getValue:[64],focus:[64],kolFocus:[64]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-button-link"].forEach(n=>{if("kol-button-link"===n)customElements.get(n)||customElements.define(n,KolButtonLink$1)})}const KolButtonLink=KolButtonLink$1,defineCustomElement=defineCustomElement$1;export{KolButtonLink,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{c as KolButtonWcTag}from"./component-names.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n max-width: 90vw;\n max-height: 90vh;\n visibility: hidden;\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n :is(a, button) {\n display: inline-flex;\n max-width: fit-content;\n align-items: baseline;\n place-items: center;\n text-align: left;\n text-decoration-line: none;\n }\n :is(a, button) .kol-span-wc .span-label {\n text-decoration-line: underline;\n }\n a:is(:focus, :hover):not([aria-disabled]) .kol-span-wc .span-label,\n button:is(:focus, :hover):not([disabled]) .kol-span-wc .span-label {\n text-decoration-thickness: 0.2em;\n }\n .skip {\n position: absolute;\n left: calc(-99999rem / var(--kolibri-root-font-size, 16));\n z-index: 9999999;\n line-height: 1;\n }\n .skip:focus {\n background-color: #fff;\n position: unset;\n left: unset;\n padding: 1em;\n }\n .kol-icon.external-link-icon {\n display: inline-flex;\n margin-left: calc(8rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n button {\n min-height: unset;\n }\n}",KolButtonLinkDefaultStyle0=defaultStyleCss,KolButtonLink$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=n=>{this.buttonWcRef=n},this._accessKey=void 0,this._ariaControls=void 0,this._ariaDescription=void 0,this._ariaExpanded=void 0,this._ariaSelected=void 0,this._disabled=!1,this._hideLabel=!1,this._icons=void 0,this._id=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._role=void 0,this._shortKey=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}async getValue(){return this._value}async focus(){await this.kolFocus()}async kolFocus(){var n;await(null===(n=this.buttonWcRef)||void 0===n?void 0:n.kolFocus())}render(){return h(Host,{key:"74a1c493bcd94ecbdcf72abeca56d9cbbd6aaf93",class:"kol-button-link"},h(KolButtonWcTag,{key:"9bcabede025937492ce8082a3ceb14184352d5b0",ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaDescription:this._ariaDescription,_ariaExpanded:this._ariaExpanded,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icons:this._icons,_hideLabel:this._hideLabel,_id:this._id,_label:this._label,_name:this._name,_on:this._on,_shortKey:this._shortKey,_syncValueBySelector:this._syncValueBySelector,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},h("slot",{key:"091e5f56f9184bbee891e6e12430d3aafe3690de",name:"expert",slot:"expert"})))}static get delegatesFocus(){return!0}static get style(){return{default:KolButtonLinkDefaultStyle0}}},[49,"kol-button-link",{_accessKey:[1,"_access-key"],_ariaControls:[1,"_aria-controls"],_ariaDescription:[1,"_aria-description"],_ariaExpanded:[4,"_aria-expanded"],_ariaSelected:[4,"_aria-selected"],_disabled:[4],_hideLabel:[4,"_hide-label"],_icons:[1],_id:[1],_label:[1],_name:[1],_on:[16],_role:[1],_shortKey:[1,"_short-key"],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_type:[1],_value:[8],getValue:[64],focus:[64],kolFocus:[64]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-button-link"].forEach(n=>{if("kol-button-link"===n)customElements.get(n)||customElements.define(n,KolButtonLink$1)})}const KolButtonLink=KolButtonLink$1,defineCustomElement=defineCustomElement$1;export{KolButtonLink,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-button-link.js","mappings":";;;;;;AAAA,MAAM,eAAe,GAAG,y8MAAy8M,CAAC;AACl+M,mCAAe,eAAe;;MC8BjBA,eAAa;;;;;QAGR,aAAQ,GAAG,CAAC,GAA4B;YACxD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;SACvB,CAAC;;;;;;yBAwFmC,KAAK;0BAOJ,KAAK;;;;;;;;;;6BAqDW,KAAK;qBAKf,QAAQ;;;IAlJ7C,MAAM,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;KACnB;IAMM,MAAM,KAAK;QACjB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;KACtB;IAMM,MAAM,QAAQ;;QACpB,OAAM,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAA,CAAC;KACnC;IAEM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,iBAAiB,IAC5B,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAEnB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACX,EACN;KACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolButtonLink"],"sources":["src/components/button-link/style.scss?tag=kol-button-link&mode=default&encapsulation=shadow","src/components/button-link/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../link' as *;\n\n@layer kol-component {\n\tbutton {\n\t\tmin-height: unset; // Inline links may have the height of the flowing text and do not necessarily have to be 44px high.\n\t}\n}\n","import type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonLinkProps,\n\tButtonTypePropType,\n\tFocusableElement,\n\tIconsPropType,\n\tIdPropType,\n\tLabelWithExpertSlotPropType,\n\tNamePropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tStringified,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, h, Host, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: {\n\t\tdelegatesFocus: true,\n\t},\n})\nexport class KolButtonLink implements ButtonLinkProps, FocusableElement {\n\tprivate buttonWcRef?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.buttonWcRef = ref;\n\t};\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<Stringified<StencilUnknown> | undefined> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the button element.\n\t */\n\t@Method()\n\tpublic async kolFocus() {\n\t\tawait this.buttonWcRef?.kolFocus();\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-button-link\">\n\t\t\t\t<KolButtonWcTag\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this._value}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t</KolButtonWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component’s interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t * @TODO: Change type back to `AriaExpandedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t * @TODO: Change type back to `AriaSelectedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\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 * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\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 technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\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 show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value that the button emits on click.\n\t */\n\t@Prop() public _value?: Stringified<StencilUnknown>;\n}\n"],"version":3}
1
+ {"file":"kol-button-link.js","mappings":";;;;;;AAAA,MAAM,eAAe,GAAG,g9MAAg9M,CAAC;AACz+M,mCAAe,eAAe;;MC8BjBA,eAAa;;;;;QAGR,aAAQ,GAAG,CAAC,GAA4B;YACxD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;SACvB,CAAC;;;;;;yBAwFmC,KAAK;0BAOJ,KAAK;;;;;;;;;;6BAqDW,KAAK;qBAKf,QAAQ;;;IAlJ7C,MAAM,QAAQ;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC;KACnB;IAMM,MAAM,KAAK;QACjB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;KACtB;IAMM,MAAM,QAAQ;;QACpB,OAAM,MAAA,IAAI,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAA,CAAC;KACnC;IAEM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,iBAAiB,IAC5B,EAAC,cAAc,qDACd,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAEnB,6DAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CACzB,CACX,EACN;KACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolButtonLink"],"sources":["src/components/button-link/style.scss?tag=kol-button-link&mode=default&encapsulation=shadow","src/components/button-link/shadow.tsx"],"sourcesContent":["@use '../style' as *;\n@use '../link' as *;\n\n@layer kol-component {\n\tbutton {\n\t\tmin-height: unset; // Inline links may have the height of the flowing text and do not necessarily have to be 44px high.\n\t}\n}\n","import type {\n\tAccessKeyPropType,\n\tAlternativeButtonLinkRolePropType,\n\tAriaDescriptionPropType,\n\tButtonCallbacksPropType,\n\tButtonLinkProps,\n\tButtonTypePropType,\n\tFocusableElement,\n\tIconsPropType,\n\tIdPropType,\n\tLabelWithExpertSlotPropType,\n\tNamePropType,\n\tShortKeyPropType,\n\tStencilUnknown,\n\tStringified,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, h, Host, Method, Prop } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: {\n\t\tdelegatesFocus: true,\n\t},\n})\nexport class KolButtonLink implements ButtonLinkProps, FocusableElement {\n\tprivate buttonWcRef?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.buttonWcRef = ref;\n\t};\n\n\t/**\n\t * Returns the current value.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<Stringified<StencilUnknown> | undefined> {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the button element.\n\t */\n\t@Method()\n\tpublic async kolFocus() {\n\t\tawait this.buttonWcRef?.kolFocus();\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-button-link\">\n\t\t\t\t<KolButtonWcTag\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaDescription={this._ariaDescription}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icons={this._icons}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_shortKey={this._shortKey}\n\t\t\t\t\t_syncValueBySelector={this._syncValueBySelector}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this._value}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t</KolButtonWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component’s interactive element.\n\t */\n\t@Prop() public _accessKey?: AccessKeyPropType;\n\n\t/**\n\t * Defines which elements are controlled by this component. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Defines the value for the aria-description attribute.\n\t */\n\t@Prop() public _ariaDescription?: AriaDescriptionPropType;\n\n\t/**\n\t * Defines whether the interactive element of the component expanded something. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t * @TODO: Change type back to `AriaExpandedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaExpanded?: boolean;\n\n\t/**\n\t * Defines whether the interactive element of the component is selected (e.g. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t * @TODO: Change type back to `AriaSelectedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _ariaSelected?: boolean;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\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 * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsPropType;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\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 technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: ButtonCallbacksPropType<StencilUnknown>;\n\n\t/**\n\t * Defines the role of the components primary element.\n\t *\n\t * @deprecated We prefer the semantic role of the HTML element and do not allow for customization. We will remove this prop in the future.\n\t */\n\t@Prop() public _role?: AlternativeButtonLinkRolePropType;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\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 show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type?: ButtonTypePropType = 'button';\n\n\t/**\n\t * Defines the value that the button emits on click.\n\t */\n\t@Prop() public _value?: Stringified<StencilUnknown>;\n}\n"],"version":3}