@public-ui/components 1.7.3 → 1.7.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 (505) hide show
  1. package/custom-elements.json +45 -9
  2. package/dist/cjs/{a11y.tipps-dd4d7aa2.js → a11y.tipps-c5387a76.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-dd4d7aa2.js.map → a11y.tipps-c5387a76.js.map} +1 -1
  4. package/dist/cjs/align-82c5c7e6.js +4 -0
  5. package/dist/cjs/{align-4833e7b8.js.map → align-82c5c7e6.js.map} +1 -1
  6. package/dist/cjs/{alignment-1cddb2bb.js → alignment-1a7ee008.js} +1 -1
  7. package/dist/cjs/{alignment-1cddb2bb.js.map → alignment-1a7ee008.js.map} +1 -1
  8. package/dist/cjs/{app-globals-07a61e76.js → app-globals-fb8b4444.js} +1 -1
  9. package/dist/cjs/{app-globals-07a61e76.js.map → app-globals-fb8b4444.js.map} +1 -1
  10. package/dist/cjs/aria-current-a6b40d0a.js +4 -0
  11. package/dist/cjs/{aria-current-3574d27e.js.map → aria-current-a6b40d0a.js.map} +1 -1
  12. package/dist/cjs/{associated.controller-25bdbc4c.js → associated.controller-3a3616f9.js} +1 -1
  13. package/dist/cjs/{associated.controller-25bdbc4c.js.map → associated.controller-3a3616f9.js.map} +1 -1
  14. package/dist/cjs/{color-1477dad9.js → color-15d2ce6c.js} +1 -1
  15. package/dist/cjs/{color-1477dad9.js.map → color-15d2ce6c.js.map} +1 -1
  16. package/dist/cjs/{controller-f84cb32e.js → controller-0e5697e2.js} +1 -1
  17. package/dist/cjs/{controller-f84cb32e.js.map → controller-0e5697e2.js.map} +1 -1
  18. package/dist/cjs/{controller-635f84bb.js → controller-2e53480f.js} +1 -1
  19. package/dist/cjs/{controller-635f84bb.js.map → controller-2e53480f.js.map} +1 -1
  20. package/dist/cjs/{controller-07933f8a.js → controller-462acf6c.js} +1 -1
  21. package/dist/cjs/{controller-07933f8a.js.map → controller-462acf6c.js.map} +1 -1
  22. package/dist/cjs/{controller-75aab3d6.js → controller-bc7d30fb.js} +1 -1
  23. package/dist/cjs/{controller-75aab3d6.js.map → controller-bc7d30fb.js.map} +1 -1
  24. package/dist/cjs/{controller-2e93aa0b.js → controller-c1375efb.js} +1 -1
  25. package/dist/cjs/{controller-2e93aa0b.js.map → controller-c1375efb.js.map} +1 -1
  26. package/dist/cjs/{controller-icon-c806e1ed.js → controller-icon-b12193a9.js} +1 -1
  27. package/dist/cjs/{controller-icon-c806e1ed.js.map → controller-icon-b12193a9.js.map} +1 -1
  28. package/dist/cjs/{custom-class-50a75474.js → custom-class-3ab4628f.js} +1 -1
  29. package/dist/cjs/{custom-class-50a75474.js.map → custom-class-3ab4628f.js.map} +1 -1
  30. package/dist/cjs/{dev.utils-da95732f.js → dev.utils-2073dc09.js} +1 -1
  31. package/dist/cjs/{dev.utils-da95732f.js.map → dev.utils-2073dc09.js.map} +1 -1
  32. package/dist/cjs/{devtools-5f4087de.js → devtools-b02532ad.js} +1 -1
  33. package/dist/cjs/{devtools-5f4087de.js.map → devtools-b02532ad.js.map} +1 -1
  34. package/dist/cjs/has-closer-5b5049c7.js +4 -0
  35. package/dist/cjs/{has-closer-ee730a2c.js.map → has-closer-5b5049c7.js.map} +1 -1
  36. package/dist/cjs/hide-label-661c1bad.js +4 -0
  37. package/dist/cjs/{hide-label-4f46ef6b.js.map → hide-label-661c1bad.js.map} +1 -1
  38. package/dist/cjs/{i18n-883db212.js → i18n-3dd524d2.js} +1 -1
  39. package/dist/cjs/{i18n-883db212.js.map → i18n-3dd524d2.js.map} +1 -1
  40. package/dist/cjs/{icons-d26ec242.js → icons-c987957e.js} +1 -1
  41. package/dist/cjs/{icons-d26ec242.js.map → icons-c987957e.js.map} +1 -1
  42. package/dist/cjs/image-source-b5a9c8f9.js +4 -0
  43. package/dist/cjs/{image-source-aad3340f.js.map → image-source-b5a9c8f9.js.map} +1 -1
  44. package/dist/cjs/{index-d94c6297.js → index-c3cd3623.js} +1 -1
  45. package/dist/cjs/{index-d94c6297.js.map → index-c3cd3623.js.map} +1 -1
  46. package/dist/cjs/index.cjs.js +1 -1
  47. package/dist/cjs/index.cjs.js.map +1 -1
  48. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  51. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  62. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-popover.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  109. package/dist/cjs/kolibri.cjs.js +1 -1
  110. package/dist/cjs/{label-467a936d.js → label-63f8275b.js} +1 -1
  111. package/dist/cjs/{label-467a936d.js.map → label-63f8275b.js.map} +1 -1
  112. package/dist/cjs/loader.cjs.js +1 -1
  113. package/dist/cjs/open-bde18e22.js +4 -0
  114. package/dist/cjs/{open-e9be21cc.js.map → open-bde18e22.js.map} +1 -1
  115. package/dist/cjs/{prop.validators-6f92dc96.js → prop.validators-aa13f60a.js} +1 -1
  116. package/dist/cjs/{prop.validators-6f92dc96.js.map → prop.validators-aa13f60a.js.map} +1 -1
  117. package/dist/cjs/rows-fc5f60d9.js +4 -0
  118. package/dist/cjs/{rows-bb440aec.js.map → rows-fc5f60d9.js.map} +1 -1
  119. package/dist/cjs/show-f026dc23.js +4 -0
  120. package/dist/cjs/{show-9b0c1d00.js.map → show-f026dc23.js.map} +1 -1
  121. package/dist/cjs/{suggestions-7985373a.js → suggestions-d04d1b81.js} +1 -1
  122. package/dist/cjs/{suggestions-7985373a.js.map → suggestions-d04d1b81.js.map} +1 -1
  123. package/dist/cjs/{tab-index-6b2fbb7c.js → tab-index-98bcc858.js} +1 -1
  124. package/dist/cjs/{tab-index-6b2fbb7c.js.map → tab-index-98bcc858.js.map} +1 -1
  125. package/dist/cjs/{toaster-82cf12c5.js → toaster-2958db57.js} +1 -1
  126. package/dist/cjs/{toaster-82cf12c5.js.map → toaster-2958db57.js.map} +1 -1
  127. package/dist/cjs/toaster-d55e9636.js +4 -0
  128. package/dist/cjs/toaster-d55e9636.js.map +1 -0
  129. package/dist/cjs/{tooltip-align-c1ab918f.js → tooltip-align-671c6a40.js} +1 -1
  130. package/dist/cjs/{tooltip-align-c1ab918f.js.map → tooltip-align-671c6a40.js.map} +1 -1
  131. package/dist/cjs/{validation-a79c30cf.js → validation-43b5bf59.js} +1 -1
  132. package/dist/cjs/{validation-a79c30cf.js.map → validation-43b5bf59.js.map} +1 -1
  133. package/dist/cjs/{validation-2a513f8b.js → validation-e91934ad.js} +1 -1
  134. package/dist/cjs/{validation-2a513f8b.js.map → validation-e91934ad.js.map} +1 -1
  135. package/dist/components/component14.js +1 -1
  136. package/dist/components/component14.js.map +1 -1
  137. package/dist/components/component16.js +1 -1
  138. package/dist/components/component5.js +1 -1
  139. package/dist/components/component6.js +1 -1
  140. package/dist/components/component8.js +1 -1
  141. package/dist/components/component9.js +1 -1
  142. package/dist/components/controller.js +1 -1
  143. package/dist/components/controller2.js +1 -1
  144. package/dist/components/devtools.js +1 -1
  145. package/dist/components/index.js +1 -1
  146. package/dist/components/index.js.map +1 -1
  147. package/dist/components/kol-accordion.js +1 -1
  148. package/dist/components/kol-accordion.js.map +1 -1
  149. package/dist/components/kol-button-link.js +1 -1
  150. package/dist/components/kol-button-link.js.map +1 -1
  151. package/dist/components/kol-card.js +1 -1
  152. package/dist/components/kol-details.js +1 -1
  153. package/dist/components/kol-details.js.map +1 -1
  154. package/dist/components/kol-image.js +1 -1
  155. package/dist/components/kol-image.js.map +1 -1
  156. package/dist/components/kol-input-checkbox.js +1 -1
  157. package/dist/components/kol-input-checkbox.js.map +1 -1
  158. package/dist/components/kol-input-color.js +1 -1
  159. package/dist/components/kol-input-date.js +1 -1
  160. package/dist/components/kol-input-email.js +1 -1
  161. package/dist/components/kol-input-file.js +1 -1
  162. package/dist/components/kol-input-number.js +1 -1
  163. package/dist/components/kol-input-password.js +1 -1
  164. package/dist/components/kol-input-range.js +1 -1
  165. package/dist/components/kol-input-text.js +1 -1
  166. package/dist/components/kol-link-button.js +1 -1
  167. package/dist/components/kol-link-button.js.map +1 -1
  168. package/dist/components/kol-logo.js +1 -1
  169. package/dist/components/kol-modal.js +1 -1
  170. package/dist/components/kol-nav.js +1 -1
  171. package/dist/components/kol-table.js +1 -1
  172. package/dist/components/kol-tabs.js +1 -1
  173. package/dist/components/kol-textarea.js +1 -1
  174. package/dist/components/kol-toast-container.js +1 -1
  175. package/dist/components/kol-toast-container.js.map +1 -1
  176. package/dist/components/kol-toast.js +1 -1
  177. package/dist/components/kol-toast.js.map +1 -1
  178. package/dist/components/prop.validators.js +1 -1
  179. package/dist/components/prop.validators.js.map +1 -1
  180. package/dist/components/shadow2.js +1 -1
  181. package/dist/components/shadow2.js.map +1 -1
  182. package/dist/components/shadow3.js +1 -1
  183. package/dist/components/shadow3.js.map +1 -1
  184. package/dist/components/toaster.js +1 -1
  185. package/dist/esm/{a11y.tipps-ba672890.js → a11y.tipps-54065212.js} +1 -1
  186. package/dist/esm/{a11y.tipps-ba672890.js.map → a11y.tipps-54065212.js.map} +1 -1
  187. package/dist/esm/{align-6791f42e.js → align-a2401a24.js} +1 -1
  188. package/dist/esm/{align-6791f42e.js.map → align-a2401a24.js.map} +1 -1
  189. package/dist/esm/{alignment-5e6dbd7f.js → alignment-2171a053.js} +1 -1
  190. package/dist/esm/{alignment-5e6dbd7f.js.map → alignment-2171a053.js.map} +1 -1
  191. package/dist/esm/{app-globals-25ce2ed6.js → app-globals-770cf469.js} +1 -1
  192. package/dist/esm/{app-globals-25ce2ed6.js.map → app-globals-770cf469.js.map} +1 -1
  193. package/dist/esm/{aria-current-b3fb717c.js → aria-current-87734eb8.js} +1 -1
  194. package/dist/esm/{aria-current-b3fb717c.js.map → aria-current-87734eb8.js.map} +1 -1
  195. package/dist/esm/{associated.controller-d519d4fd.js → associated.controller-a1ec4433.js} +1 -1
  196. package/dist/esm/{associated.controller-d519d4fd.js.map → associated.controller-a1ec4433.js.map} +1 -1
  197. package/dist/esm/{color-66412a88.js → color-9cbf6d52.js} +1 -1
  198. package/dist/esm/{color-66412a88.js.map → color-9cbf6d52.js.map} +1 -1
  199. package/dist/esm/{controller-0407a8fc.js → controller-23b9e0a2.js} +1 -1
  200. package/dist/esm/{controller-0407a8fc.js.map → controller-23b9e0a2.js.map} +1 -1
  201. package/dist/esm/{controller-4418a153.js → controller-8aaf4af5.js} +1 -1
  202. package/dist/esm/{controller-4418a153.js.map → controller-8aaf4af5.js.map} +1 -1
  203. package/dist/esm/{controller-4a327464.js → controller-b4428245.js} +1 -1
  204. package/dist/esm/{controller-4a327464.js.map → controller-b4428245.js.map} +1 -1
  205. package/dist/esm/{controller-04e4f9f3.js → controller-b84eace4.js} +1 -1
  206. package/dist/esm/{controller-04e4f9f3.js.map → controller-b84eace4.js.map} +1 -1
  207. package/dist/esm/{controller-a2e99cf4.js → controller-d80a67d0.js} +1 -1
  208. package/dist/esm/{controller-a2e99cf4.js.map → controller-d80a67d0.js.map} +1 -1
  209. package/dist/esm/{controller-icon-5552f237.js → controller-icon-ef27c916.js} +1 -1
  210. package/dist/esm/{controller-icon-5552f237.js.map → controller-icon-ef27c916.js.map} +1 -1
  211. package/dist/esm/{custom-class-503e41f2.js → custom-class-833c9c0b.js} +1 -1
  212. package/dist/esm/{custom-class-503e41f2.js.map → custom-class-833c9c0b.js.map} +1 -1
  213. package/dist/esm/{dev.utils-aea04f25.js → dev.utils-ad367f40.js} +1 -1
  214. package/dist/esm/{dev.utils-aea04f25.js.map → dev.utils-ad367f40.js.map} +1 -1
  215. package/dist/esm/{devtools-151a8a80.js → devtools-73dc1f39.js} +1 -1
  216. package/dist/esm/{devtools-151a8a80.js.map → devtools-73dc1f39.js.map} +1 -1
  217. package/dist/esm/{has-closer-fe2d4781.js → has-closer-3f2a115a.js} +1 -1
  218. package/dist/esm/{has-closer-fe2d4781.js.map → has-closer-3f2a115a.js.map} +1 -1
  219. package/dist/esm/{hide-label-2e0f24b2.js → hide-label-310fe1b8.js} +1 -1
  220. package/dist/esm/{hide-label-2e0f24b2.js.map → hide-label-310fe1b8.js.map} +1 -1
  221. package/dist/esm/{i18n-3c8ef0a3.js → i18n-ad401ed8.js} +1 -1
  222. package/dist/esm/{i18n-3c8ef0a3.js.map → i18n-ad401ed8.js.map} +1 -1
  223. package/dist/esm/{icons-a05b3daf.js → icons-c28cff87.js} +1 -1
  224. package/dist/esm/{icons-a05b3daf.js.map → icons-c28cff87.js.map} +1 -1
  225. package/dist/esm/{image-source-f838da2a.js → image-source-3f04add1.js} +1 -1
  226. package/dist/esm/{image-source-f838da2a.js.map → image-source-3f04add1.js.map} +1 -1
  227. package/dist/esm/{index-e51de689.js → index-fb9ac195.js} +1 -1
  228. package/dist/esm/{index-e51de689.js.map → index-fb9ac195.js.map} +1 -1
  229. package/dist/esm/index.js +1 -1
  230. package/dist/esm/index.js.map +1 -1
  231. package/dist/esm/kol-abbr.entry.js +1 -1
  232. package/dist/esm/kol-accordion.entry.js +1 -1
  233. package/dist/esm/kol-accordion.entry.js.map +1 -1
  234. package/dist/esm/kol-alert-wc_3.entry.js +1 -1
  235. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  236. package/dist/esm/kol-badge.entry.js +1 -1
  237. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  238. package/dist/esm/kol-button-link.entry.js +1 -1
  239. package/dist/esm/kol-button-link.entry.js.map +1 -1
  240. package/dist/esm/kol-button.entry.js +1 -1
  241. package/dist/esm/kol-button.entry.js.map +1 -1
  242. package/dist/esm/kol-card.entry.js +1 -1
  243. package/dist/esm/kol-details.entry.js +1 -1
  244. package/dist/esm/kol-details.entry.js.map +1 -1
  245. package/dist/esm/kol-form.entry.js +1 -1
  246. package/dist/esm/kol-icon.entry.js +1 -1
  247. package/dist/esm/kol-image.entry.js +1 -1
  248. package/dist/esm/kol-image.entry.js.map +1 -1
  249. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  250. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  251. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  252. package/dist/esm/kol-input-color.entry.js +1 -1
  253. package/dist/esm/kol-input-date.entry.js +1 -1
  254. package/dist/esm/kol-input-email.entry.js +1 -1
  255. package/dist/esm/kol-input-file.entry.js +1 -1
  256. package/dist/esm/kol-input-number.entry.js +1 -1
  257. package/dist/esm/kol-input-password.entry.js +1 -1
  258. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  259. package/dist/esm/kol-input-radio.entry.js +1 -1
  260. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  261. package/dist/esm/kol-input-range.entry.js +1 -1
  262. package/dist/esm/kol-input-text.entry.js +1 -1
  263. package/dist/esm/kol-input.entry.js +1 -1
  264. package/dist/esm/kol-kolibri.entry.js +1 -1
  265. package/dist/esm/kol-link-button.entry.js +1 -1
  266. package/dist/esm/kol-link-button.entry.js.map +1 -1
  267. package/dist/esm/kol-link-group.entry.js +1 -1
  268. package/dist/esm/kol-link-wc.entry.js +1 -1
  269. package/dist/esm/kol-link.entry.js +1 -1
  270. package/dist/esm/kol-link.entry.js.map +1 -1
  271. package/dist/esm/kol-logo.entry.js +1 -1
  272. package/dist/esm/kol-modal.entry.js +1 -1
  273. package/dist/esm/kol-nav.entry.js +1 -1
  274. package/dist/esm/kol-pagination.entry.js +1 -1
  275. package/dist/esm/kol-popover.entry.js +1 -1
  276. package/dist/esm/kol-progress.entry.js +1 -1
  277. package/dist/esm/kol-quote.entry.js +1 -1
  278. package/dist/esm/kol-select.entry.js +1 -1
  279. package/dist/esm/kol-skip-nav.entry.js +1 -1
  280. package/dist/esm/kol-span-wc_2.entry.js +1 -1
  281. package/dist/esm/kol-spin.entry.js +1 -1
  282. package/dist/esm/kol-split-button.entry.js +1 -1
  283. package/dist/esm/kol-symbol.entry.js +1 -1
  284. package/dist/esm/kol-table.entry.js +1 -1
  285. package/dist/esm/kol-tabs.entry.js +1 -1
  286. package/dist/esm/kol-textarea.entry.js +1 -1
  287. package/dist/esm/kol-toast-container.entry.js +1 -1
  288. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  289. package/dist/esm/kol-toast.entry.js +1 -1
  290. package/dist/esm/kol-toast.entry.js.map +1 -1
  291. package/dist/esm/kol-version.entry.js +1 -1
  292. package/dist/esm/kolibri.js +1 -1
  293. package/dist/esm/{label-2cb3f0a1.js → label-57859a5a.js} +1 -1
  294. package/dist/esm/{label-2cb3f0a1.js.map → label-57859a5a.js.map} +1 -1
  295. package/dist/esm/loader.js +1 -1
  296. package/dist/esm/{open-f70592c1.js → open-29222e31.js} +1 -1
  297. package/dist/esm/{open-f70592c1.js.map → open-29222e31.js.map} +1 -1
  298. package/dist/esm/{prop.validators-7087c1e6.js → prop.validators-251589c8.js} +1 -1
  299. package/dist/esm/{prop.validators-7087c1e6.js.map → prop.validators-251589c8.js.map} +1 -1
  300. package/dist/esm/{rows-9a9a2940.js → rows-c8fb93ae.js} +1 -1
  301. package/dist/esm/{rows-9a9a2940.js.map → rows-c8fb93ae.js.map} +1 -1
  302. package/dist/esm/{show-8c3c4865.js → show-6fddf77c.js} +1 -1
  303. package/dist/esm/{show-8c3c4865.js.map → show-6fddf77c.js.map} +1 -1
  304. package/dist/esm/{suggestions-689ff138.js → suggestions-1e0fe6e9.js} +1 -1
  305. package/dist/esm/{suggestions-689ff138.js.map → suggestions-1e0fe6e9.js.map} +1 -1
  306. package/dist/esm/{tab-index-4f18f869.js → tab-index-39708fff.js} +1 -1
  307. package/dist/esm/{tab-index-4f18f869.js.map → tab-index-39708fff.js.map} +1 -1
  308. package/dist/esm/toaster-210e0b2c.js +4 -0
  309. package/dist/esm/toaster-210e0b2c.js.map +1 -0
  310. package/dist/esm/{toaster-1ee75e55.js → toaster-5d1ee30b.js} +1 -1
  311. package/dist/esm/{toaster-1ee75e55.js.map → toaster-5d1ee30b.js.map} +1 -1
  312. package/dist/esm/{tooltip-align-b8d9da02.js → tooltip-align-d0d73d60.js} +1 -1
  313. package/dist/esm/{tooltip-align-b8d9da02.js.map → tooltip-align-d0d73d60.js.map} +1 -1
  314. package/dist/esm/{validation-5429f00c.js → validation-3e123430.js} +1 -1
  315. package/dist/esm/{validation-5429f00c.js.map → validation-3e123430.js.map} +1 -1
  316. package/dist/esm/validation-74fe1552.js +4 -0
  317. package/dist/esm/{validation-906faec2.js.map → validation-74fe1552.js.map} +1 -1
  318. package/dist/kolibri/{a11y.tipps-ba672890.js → a11y.tipps-54065212.js} +1 -1
  319. package/dist/kolibri/align-a2401a24.js +4 -0
  320. package/dist/kolibri/{alignment-5e6dbd7f.js → alignment-2171a053.js} +1 -1
  321. package/dist/kolibri/app-globals-770cf469.js +4 -0
  322. package/dist/kolibri/aria-current-87734eb8.js +4 -0
  323. package/dist/kolibri/{associated.controller-d519d4fd.js → associated.controller-a1ec4433.js} +1 -1
  324. package/dist/kolibri/{color-66412a88.js → color-9cbf6d52.js} +1 -1
  325. package/dist/kolibri/{controller-0407a8fc.js → controller-23b9e0a2.js} +1 -1
  326. package/dist/kolibri/controller-8aaf4af5.js +4 -0
  327. package/dist/kolibri/{controller-4418a153.js.map → controller-8aaf4af5.js.map} +1 -1
  328. package/dist/kolibri/{controller-4a327464.js → controller-b4428245.js} +1 -1
  329. package/dist/kolibri/{controller-04e4f9f3.js → controller-b84eace4.js} +1 -1
  330. package/dist/kolibri/{controller-a2e99cf4.js → controller-d80a67d0.js} +1 -1
  331. package/dist/kolibri/controller-icon-ef27c916.js +4 -0
  332. package/dist/kolibri/{custom-class-503e41f2.js → custom-class-833c9c0b.js} +1 -1
  333. package/dist/kolibri/{dev.utils-aea04f25.js → dev.utils-ad367f40.js} +1 -1
  334. package/dist/kolibri/{dev.utils-aea04f25.js.map → dev.utils-ad367f40.js.map} +1 -1
  335. package/dist/kolibri/{devtools-151a8a80.js → devtools-73dc1f39.js} +1 -1
  336. package/dist/kolibri/has-closer-3f2a115a.js +4 -0
  337. package/dist/kolibri/hide-label-310fe1b8.js +4 -0
  338. package/dist/kolibri/{i18n-3c8ef0a3.js → i18n-ad401ed8.js} +1 -1
  339. package/dist/kolibri/{icons-a05b3daf.js → icons-c28cff87.js} +1 -1
  340. package/dist/kolibri/image-source-3f04add1.js +4 -0
  341. package/dist/kolibri/{index-e51de689.js → index-fb9ac195.js} +1 -1
  342. package/dist/kolibri/index.esm.js +1 -1
  343. package/dist/kolibri/index.esm.js.map +1 -1
  344. package/dist/kolibri/kol-abbr.entry.js +1 -1
  345. package/dist/kolibri/kol-accordion.entry.js +1 -1
  346. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  347. package/dist/kolibri/kol-alert-wc_3.entry.js +1 -1
  348. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  349. package/dist/kolibri/kol-badge.entry.js +1 -1
  350. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  351. package/dist/kolibri/kol-button-link.entry.js +1 -1
  352. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  353. package/dist/kolibri/kol-button.entry.js +1 -1
  354. package/dist/kolibri/kol-button.entry.js.map +1 -1
  355. package/dist/kolibri/kol-card.entry.js +1 -1
  356. package/dist/kolibri/kol-details.entry.js +1 -1
  357. package/dist/kolibri/kol-details.entry.js.map +1 -1
  358. package/dist/kolibri/kol-form.entry.js +1 -1
  359. package/dist/kolibri/kol-icon.entry.js +1 -1
  360. package/dist/kolibri/kol-image.entry.js +1 -1
  361. package/dist/kolibri/kol-image.entry.js.map +1 -1
  362. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  363. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  364. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  365. package/dist/kolibri/kol-input-color.entry.js +1 -1
  366. package/dist/kolibri/kol-input-date.entry.js +1 -1
  367. package/dist/kolibri/kol-input-email.entry.js +1 -1
  368. package/dist/kolibri/kol-input-file.entry.js +1 -1
  369. package/dist/kolibri/kol-input-number.entry.js +1 -1
  370. package/dist/kolibri/kol-input-password.entry.js +1 -1
  371. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  372. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  373. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  374. package/dist/kolibri/kol-input-range.entry.js +1 -1
  375. package/dist/kolibri/kol-input-text.entry.js +1 -1
  376. package/dist/kolibri/kol-input.entry.js +1 -1
  377. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  378. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  379. package/dist/kolibri/kol-link-button.entry.js +1 -1
  380. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  381. package/dist/kolibri/kol-link-group.entry.js +1 -1
  382. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  383. package/dist/kolibri/kol-link.entry.js +1 -1
  384. package/dist/kolibri/kol-link.entry.js.map +1 -1
  385. package/dist/kolibri/kol-logo.entry.js +1 -1
  386. package/dist/kolibri/kol-modal.entry.js +1 -1
  387. package/dist/kolibri/kol-nav.entry.js +1 -1
  388. package/dist/kolibri/kol-pagination.entry.js +1 -1
  389. package/dist/kolibri/kol-popover.entry.js +1 -1
  390. package/dist/kolibri/kol-progress.entry.js +1 -1
  391. package/dist/kolibri/kol-quote.entry.js +1 -1
  392. package/dist/kolibri/kol-select.entry.js +1 -1
  393. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  394. package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
  395. package/dist/kolibri/kol-spin.entry.js +1 -1
  396. package/dist/kolibri/kol-split-button.entry.js +1 -1
  397. package/dist/kolibri/kol-symbol.entry.js +1 -1
  398. package/dist/kolibri/kol-table.entry.js +1 -1
  399. package/dist/kolibri/kol-tabs.entry.js +1 -1
  400. package/dist/kolibri/kol-textarea.entry.js +1 -1
  401. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  402. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  403. package/dist/kolibri/kol-toast.entry.js +1 -1
  404. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  405. package/dist/kolibri/kol-version.entry.js +1 -1
  406. package/dist/kolibri/kolibri.esm.js +1 -1
  407. package/dist/kolibri/kolibri.esm.js.map +1 -1
  408. package/dist/kolibri/{label-2cb3f0a1.js → label-57859a5a.js} +1 -1
  409. package/dist/kolibri/open-29222e31.js +4 -0
  410. package/dist/kolibri/{prop.validators-7087c1e6.js → prop.validators-251589c8.js} +1 -1
  411. package/dist/kolibri/rows-c8fb93ae.js +4 -0
  412. package/dist/kolibri/show-6fddf77c.js +4 -0
  413. package/dist/kolibri/{suggestions-689ff138.js → suggestions-1e0fe6e9.js} +1 -1
  414. package/dist/kolibri/{tab-index-4f18f869.js → tab-index-39708fff.js} +1 -1
  415. package/dist/kolibri/toaster-210e0b2c.js +4 -0
  416. package/dist/kolibri/toaster-210e0b2c.js.map +1 -0
  417. package/dist/kolibri/toaster-5d1ee30b.js +4 -0
  418. package/dist/kolibri/tooltip-align-d0d73d60.js +4 -0
  419. package/dist/kolibri/{validation-5429f00c.js → validation-3e123430.js} +1 -1
  420. package/dist/kolibri/validation-74fe1552.js +4 -0
  421. package/dist/types/components/accordion/component.d.ts +2 -0
  422. package/dist/types/components/button/shadow.d.ts +0 -1
  423. package/dist/types/components/button-link/component.d.ts +0 -1
  424. package/dist/types/components/details/component.d.ts +1 -0
  425. package/dist/types/components/input-checkbox/component.d.ts +0 -1
  426. package/dist/types/components/input-radio/component.d.ts +0 -1
  427. package/dist/types/components/link/shadow.d.ts +0 -1
  428. package/dist/types/components/link-button/component.d.ts +0 -1
  429. package/dist/types/components/toast/component.d.ts +18 -4
  430. package/dist/types/components/toast/toaster.d.ts +14 -3
  431. package/dist/types/components/toast/types.d.ts +9 -5
  432. package/dist/types/components/toaster/InternalToast.d.ts +8 -0
  433. package/dist/types/components/toaster/toaster.d.ts +10 -0
  434. package/dist/types/components/{toast-container → toaster}/types.d.ts +6 -3
  435. package/dist/types/components.d.ts +68 -10
  436. package/dist/types/index.d.ts +1 -1
  437. package/doc/button.md +1 -1
  438. package/doc/toast.md +41 -28
  439. package/doc/toaster.md +103 -0
  440. package/package.json +1 -1
  441. package/vscode-custom-data.json +24 -15
  442. package/dist/cjs/align-4833e7b8.js +0 -4
  443. package/dist/cjs/aria-current-3574d27e.js +0 -4
  444. package/dist/cjs/has-closer-ee730a2c.js +0 -4
  445. package/dist/cjs/hide-label-4f46ef6b.js +0 -4
  446. package/dist/cjs/image-source-aad3340f.js +0 -4
  447. package/dist/cjs/open-e9be21cc.js +0 -4
  448. package/dist/cjs/rows-bb440aec.js +0 -4
  449. package/dist/cjs/show-9b0c1d00.js +0 -4
  450. package/dist/cjs/toaster-d370fe6a.js +0 -4
  451. package/dist/cjs/toaster-d370fe6a.js.map +0 -1
  452. package/dist/components/component17.js +0 -4
  453. package/dist/components/component17.js.map +0 -1
  454. package/dist/esm/toaster-2dda6584.js +0 -4
  455. package/dist/esm/toaster-2dda6584.js.map +0 -1
  456. package/dist/esm/validation-906faec2.js +0 -4
  457. package/dist/kolibri/align-6791f42e.js +0 -4
  458. package/dist/kolibri/app-globals-25ce2ed6.js +0 -4
  459. package/dist/kolibri/aria-current-b3fb717c.js +0 -4
  460. package/dist/kolibri/controller-4418a153.js +0 -4
  461. package/dist/kolibri/controller-icon-5552f237.js +0 -4
  462. package/dist/kolibri/has-closer-fe2d4781.js +0 -4
  463. package/dist/kolibri/hide-label-2e0f24b2.js +0 -4
  464. package/dist/kolibri/image-source-f838da2a.js +0 -4
  465. package/dist/kolibri/open-f70592c1.js +0 -4
  466. package/dist/kolibri/rows-9a9a2940.js +0 -4
  467. package/dist/kolibri/show-8c3c4865.js +0 -4
  468. package/dist/kolibri/toaster-1ee75e55.js +0 -4
  469. package/dist/kolibri/toaster-2dda6584.js +0 -4
  470. package/dist/kolibri/toaster-2dda6584.js.map +0 -1
  471. package/dist/kolibri/tooltip-align-b8d9da02.js +0 -4
  472. package/dist/kolibri/validation-906faec2.js +0 -4
  473. package/doc/toast-container.md +0 -46
  474. /package/dist/kolibri/{a11y.tipps-ba672890.js.map → a11y.tipps-54065212.js.map} +0 -0
  475. /package/dist/kolibri/{align-6791f42e.js.map → align-a2401a24.js.map} +0 -0
  476. /package/dist/kolibri/{alignment-5e6dbd7f.js.map → alignment-2171a053.js.map} +0 -0
  477. /package/dist/kolibri/{app-globals-25ce2ed6.js.map → app-globals-770cf469.js.map} +0 -0
  478. /package/dist/kolibri/{aria-current-b3fb717c.js.map → aria-current-87734eb8.js.map} +0 -0
  479. /package/dist/kolibri/{associated.controller-d519d4fd.js.map → associated.controller-a1ec4433.js.map} +0 -0
  480. /package/dist/kolibri/{color-66412a88.js.map → color-9cbf6d52.js.map} +0 -0
  481. /package/dist/kolibri/{controller-0407a8fc.js.map → controller-23b9e0a2.js.map} +0 -0
  482. /package/dist/kolibri/{controller-4a327464.js.map → controller-b4428245.js.map} +0 -0
  483. /package/dist/kolibri/{controller-04e4f9f3.js.map → controller-b84eace4.js.map} +0 -0
  484. /package/dist/kolibri/{controller-a2e99cf4.js.map → controller-d80a67d0.js.map} +0 -0
  485. /package/dist/kolibri/{controller-icon-5552f237.js.map → controller-icon-ef27c916.js.map} +0 -0
  486. /package/dist/kolibri/{custom-class-503e41f2.js.map → custom-class-833c9c0b.js.map} +0 -0
  487. /package/dist/kolibri/{devtools-151a8a80.js.map → devtools-73dc1f39.js.map} +0 -0
  488. /package/dist/kolibri/{has-closer-fe2d4781.js.map → has-closer-3f2a115a.js.map} +0 -0
  489. /package/dist/kolibri/{hide-label-2e0f24b2.js.map → hide-label-310fe1b8.js.map} +0 -0
  490. /package/dist/kolibri/{i18n-3c8ef0a3.js.map → i18n-ad401ed8.js.map} +0 -0
  491. /package/dist/kolibri/{icons-a05b3daf.js.map → icons-c28cff87.js.map} +0 -0
  492. /package/dist/kolibri/{image-source-f838da2a.js.map → image-source-3f04add1.js.map} +0 -0
  493. /package/dist/kolibri/{index-e51de689.js.map → index-fb9ac195.js.map} +0 -0
  494. /package/dist/kolibri/{label-2cb3f0a1.js.map → label-57859a5a.js.map} +0 -0
  495. /package/dist/kolibri/{open-f70592c1.js.map → open-29222e31.js.map} +0 -0
  496. /package/dist/kolibri/{prop.validators-7087c1e6.js.map → prop.validators-251589c8.js.map} +0 -0
  497. /package/dist/kolibri/{rows-9a9a2940.js.map → rows-c8fb93ae.js.map} +0 -0
  498. /package/dist/kolibri/{show-8c3c4865.js.map → show-6fddf77c.js.map} +0 -0
  499. /package/dist/kolibri/{suggestions-689ff138.js.map → suggestions-1e0fe6e9.js.map} +0 -0
  500. /package/dist/kolibri/{tab-index-4f18f869.js.map → tab-index-39708fff.js.map} +0 -0
  501. /package/dist/kolibri/{toaster-1ee75e55.js.map → toaster-5d1ee30b.js.map} +0 -0
  502. /package/dist/kolibri/{tooltip-align-b8d9da02.js.map → tooltip-align-d0d73d60.js.map} +0 -0
  503. /package/dist/kolibri/{validation-5429f00c.js.map → validation-3e123430.js.map} +0 -0
  504. /package/dist/kolibri/{validation-906faec2.js.map → validation-74fe1552.js.map} +0 -0
  505. /package/dist/types/components/{toast-container → toaster}/component.d.ts +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{setMode}from"@stencil/core/internal/client";export{getAssetPath,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";import{r as register}from"./i18n.js";export{r as register,t as translations}from"./i18n.js";import{s as setThemeStyle,L as Log,p as processEnv,g as getThemeDetails}from"./prop.validators.js";export{K as KoliBriDevHelper,c as configKoliBri}from"./prop.validators.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund.js";const appGlobalScript=async()=>{setMode((e=>(e.shadowRoot instanceof ShadowRoot&&setThemeStyle(e,getThemeDetails(e)),"default"))),await register([],[]),import("./devtools.js").then((e=>{"object"==typeof e&&null!==e&&"function"==typeof e.initialize&&e.initialize()})).catch((e=>{Log.error(e)})),processEnv&&import("./index2.js")},globalScripts=appGlobalScript;class ToasterService{constructor(e){this.document=e,this.toastContainerElement=this.document.createElement("kol-toast-container"),this.document.body.prepend(this.toastContainerElement)}static getInstance(e){let t=this.instances.get(e);return t||(t=new ToasterService(e),this.instances.set(e,t)),t}dispose(){const e=this.toastContainerElement;e?(this.toastContainerElement=void 0,e.remove()):console.warn("Toaster service is already disposed.")}async enqueue(e){var t;await(null===(t=this.toastContainerElement)||void 0===t?void 0:t.enqueue(e))}}ToasterService.instances=new Map,globalScripts();export{ToasterService};
4
+ import{setMode}from"@stencil/core/internal/client";export{getAssetPath,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";import{r as register}from"./i18n.js";export{r as register,t as translations}from"./i18n.js";import{s as setThemeStyle,L as Log,p as processEnv,g as getThemeDetails}from"./prop.validators.js";export{K as KoliBriDevHelper,c as configKoliBri}from"./prop.validators.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund.js";const appGlobalScript=async()=>{setMode((t=>(t.shadowRoot instanceof ShadowRoot&&setThemeStyle(t,getThemeDetails(t)),"default"))),await register([],[]),import("./devtools.js").then((t=>{"object"==typeof t&&null!==t&&"function"==typeof t.initialize&&t.initialize()})).catch((t=>{Log.error(t)})),processEnv&&import("./index2.js")},globalScripts=appGlobalScript;class ToasterService$1{constructor(t){this.document=t,this.queue=new Set,this.isOpen=!1,this.toastElement=this.document.createElement("kol-toast"),this.toastElement.setAttribute("_level","0"),this.toastElement.setAttribute("_show","false"),this.toastElement.setAttribute("_show-duration","-1"),this.toastElement.setAttribute("_has-closer","true"),this.toastElement._on={onClose:()=>{const t=this.queue.values().next();t.value?(this.queue.delete(t.value),setTimeout((()=>{this.showToast(t.value)}),200)):this.isOpen=!1}},this.document.body.insertBefore(this.toastElement,this.document.body.firstChild)}static getInstance(t){let e=this.instances.get(t);return e||(e=new ToasterService$1(t),this.instances.set(t,e)),e}dispose(){const t=this.toastElement;if(t){this.toastElement=void 0,this.queue.clear(),t.remove();const e=t._on;e&&e.onClose&&e.onClose(new Event("dispose"))}else console.warn("Toaster service is already disposed.")}enqueue(t){this.isOpen?this.queue.add(t):this.showToast(t)}showToast(t){const e=t.label||t.heading;if(void 0===e)throw new Error("Toast requires a label.");this.toastElement?(this.toastElement.setAttribute("_label",e),this.toastElement.setAttribute("_show","true"),this.toastElement.setAttribute("_type",t.type),this.toastElement.innerText=t.description,this.isOpen=!0):console.warn("Tried to show a new toast at a disposed toaster service!")}}ToasterService$1.instances=new Map;class ToasterService{constructor(t){this.document=t,this.toastContainerElement=this.document.createElement("kol-toast-container"),this.document.body.prepend(this.toastContainerElement)}static getInstance(t){let e=this.instances.get(t);return e||(e=new ToasterService(t),this.instances.set(t,e)),e}dispose(){const t=this.toastContainerElement;t?(this.toastContainerElement=void 0,t.remove()):console.warn("Toaster service is already disposed.")}async enqueue(t){this.toastContainerElement&&"function"==typeof this.toastContainerElement.enqueue&&await this.toastContainerElement.enqueue(t)}}ToasterService.instances=new Map,globalScripts();export{ToasterService,ToasterService$1 as ToasterServiceLegacy};
@@ -1 +1 @@
1
- {"file":"index.js","mappings":";;;;;;;;;;;AAQA,wBAAe;EACd,OAAO,CAAC,CAAC,GAAG;IACX,IAAI,GAAG,CAAC,UAAU,YAAY,UAAU,EAAE;MACzC,aAAa,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;KACzC;IACD,OAAO,SAAS,CAAC;GACjB,CAAC,CAAC;EAEH,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EAEvB,OAAO,eAAY,CAAC;KAClB,IAAI,CAAC,CAAC,QAAQ;IACd,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;MACnG,QAAQ,CAAC,UAAU,EAAE,CAAC;KACtB;GACD,CAAC;KACD,KAAK,CAAC,CAAC,KAAK;IACZ,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;GACjB,CAAC,CAAC;EAGJ,IAAI,UAAU,EAAE;IACf,OAAO,aAAQ,CAAC,CAAC;GACjB;AACF,CAAC;;AC/BM,MAAM,aAAa,GAAG,eAAe;;MCC/B,cAAc;EAK1B,YAAqC,QAAkB;IAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAChF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;GACvD;EAKM,OAAO,WAAW,CAAC,QAAkB;IAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,QAAQ,EAAE;MACd,QAAQ,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;MACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;KACvC;IACD,OAAO,QAAQ,CAAC;GAChB;EAEM,OAAO;IACb,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC;IAC3C,IAAI,OAAO,EAAE;MACZ,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;MACvC,OAAO,CAAC,MAAM,EAAE,CAAC;KACjB;SAAM;MACN,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;KACrD;GACD;EAEM,MAAM,OAAO,CAAC,KAAY;;IAChC,OAAM,MAAA,IAAI,CAAC,qBAAqB,0CAAE,OAAO,CAAC,KAAK,CAAC,CAAA,CAAC;GACjD;;AAjCuB,wBAAS,GAAkC,IAAI,GAAG,EAA4B;;;;;;","names":[],"sources":["src/global/script.ts","@stencil/core/internal/app-globals","src/components/toast/toaster.tsx"],"sourcesContent":["import { getThemeDetails, setThemeStyle } from '@a11y-ui/core';\nimport { setMode } from '@stencil/core';\n\nimport { register } from '../core';\nimport { Log } from '../utils/dev.utils';\nimport { processEnv } from '../utils/reuse';\n\n// ts-prune-ignore-next\nexport default async (): Promise<void> => {\n\tsetMode((elm) => {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t\treturn 'default';\n\t});\n\n\tawait register([], []);\n\n\timport('./devtools')\n\t\t.then((devTools) => {\n\t\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\t\tdevTools.initialize();\n\t\t\t}\n\t\t})\n\t\t.catch((error) => {\n\t\t\tLog.error(error);\n\t\t});\n\n\t/* Import scripts necessary for the development server, i.e. the /dev/*.html files. Only include in development environment. */\n\tif (processEnv) {\n\t\timport('../dev');\n\t}\n};\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n","import { Toast } from '../toast-container/types';\n\nexport class ToasterService {\n\tprivate static readonly instances: Map<Document, ToasterService> = new Map<Document, ToasterService>();\n\n\tprivate toastContainerElement?: HTMLKolToastContainerElement;\n\n\tprivate constructor(private readonly document: Document) {\n\t\tthis.toastContainerElement = this.document.createElement('kol-toast-container');\n\t\tthis.document.body.prepend(this.toastContainerElement);\n\t}\n\n\t/**\n\t * Get a toaster for the specified document environment. Each environment has exactly one instance of the service.\n\t */\n\tpublic static getInstance(document: Document) {\n\t\tlet instance = this.instances.get(document);\n\t\tif (!instance) {\n\t\t\tinstance = new ToasterService(document);\n\t\t\tthis.instances.set(document, instance);\n\t\t}\n\t\treturn instance;\n\t}\n\n\tpublic dispose() {\n\t\tconst element = this.toastContainerElement;\n\t\tif (element) {\n\t\t\tthis.toastContainerElement = undefined;\n\t\t\telement.remove();\n\t\t} else {\n\t\t\tconsole.warn('Toaster service is already disposed.');\n\t\t}\n\t}\n\n\tpublic async enqueue(toast: Toast) {\n\t\tawait this.toastContainerElement?.enqueue(toast);\n\t}\n}\n"],"version":3}
1
+ {"file":"index.js","mappings":"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","names":["ToasterService"],"sources":["src/global/script.ts","@stencil/core/internal/app-globals","src/components/toast/toaster.tsx","src/components/toaster/toaster.tsx"],"sourcesContent":["import { getThemeDetails, setThemeStyle } from '@a11y-ui/core';\nimport { setMode } from '@stencil/core';\n\nimport { register } from '../core';\nimport { Log } from '../utils/dev.utils';\nimport { processEnv } from '../utils/reuse';\n\n// ts-prune-ignore-next\nexport default async (): Promise<void> => {\n\tsetMode((elm) => {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t\treturn 'default';\n\t});\n\n\tawait register([], []);\n\n\timport('./devtools')\n\t\t.then((devTools) => {\n\t\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\t\tdevTools.initialize();\n\t\t\t}\n\t\t})\n\t\t.catch((error) => {\n\t\t\tLog.error(error);\n\t\t});\n\n\t/* Import scripts necessary for the development server, i.e. the /dev/*.html files. Only include in development environment. */\n\tif (processEnv) {\n\t\timport('../dev');\n\t}\n};\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n","import { LabelPropType } from '../../types/props/label';\nimport { AlertType } from '../alert/types';\n\ntype Toast = {\n\tdescription: string;\n\t/**\n\t * @deprecated Use label.\n\t */\n\theading?: string;\n\tlabel?: LabelPropType;\n\ttype: AlertType;\n};\n\n/**\n * @deprecated Use toast/toaster.tsx\n */\nexport class ToasterService {\n\tprivate static readonly instances: Map<Document, ToasterService> = new Map<Document, ToasterService>();\n\n\tprivate toastElement?: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tprivate constructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '0');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1'); // @deprecated in v2\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Get a toaster for the specified document environment. Each environment has exactly one instance of the service.\n\t */\n\tpublic static getInstance(document: Document) {\n\t\tlet instance = this.instances.get(document);\n\t\tif (!instance) {\n\t\t\tinstance = new ToasterService(document);\n\t\t\tthis.instances.set(document, instance);\n\t\t}\n\t\treturn instance;\n\t}\n\n\tpublic dispose() {\n\t\tconst element = this.toastElement;\n\t\tif (element) {\n\t\t\tthis.toastElement = undefined;\n\t\t\tthis.queue.clear();\n\t\t\telement.remove();\n\n\t\t\tconst on = element._on;\n\t\t\tif (on && on.onClose) {\n\t\t\t\ton.onClose(new Event('dispose'));\n\t\t\t}\n\t\t} else {\n\t\t\tconsole.warn('Toaster service is already disposed.');\n\t\t}\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tconst label = data.label || data.heading;\n\n\t\tif (typeof label === 'undefined') {\n\t\t\t// TODO v2: Make label required, remove this check.\n\t\t\tthrow new Error('Toast requires a label.');\n\t\t}\n\n\t\tif (!this.toastElement) {\n\t\t\tconsole.warn('Tried to show a new toast at a disposed toaster service!');\n\t\t\treturn;\n\t\t}\n\t\tthis.toastElement.setAttribute('_label', label);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { Toast } from './types';\n\nexport class ToasterService {\n\tprivate static readonly instances: Map<Document, ToasterService> = new Map<Document, ToasterService>();\n\n\tprivate toastContainerElement?: HTMLKolToastContainerElement;\n\n\tprivate constructor(private readonly document: Document) {\n\t\tthis.toastContainerElement = this.document.createElement('kol-toast-container');\n\t\tthis.document.body.prepend(this.toastContainerElement);\n\t}\n\n\t/**\n\t * Get a toaster for the specified document environment. Each environment has exactly one instance of the service.\n\t */\n\tpublic static getInstance(document: Document) {\n\t\tlet instance = this.instances.get(document);\n\t\tif (!instance) {\n\t\t\tinstance = new ToasterService(document);\n\t\t\tthis.instances.set(document, instance);\n\t\t}\n\t\treturn instance;\n\t}\n\n\tpublic dispose() {\n\t\tconst element = this.toastContainerElement;\n\t\tif (element) {\n\t\t\tthis.toastContainerElement = undefined;\n\t\t\telement.remove();\n\t\t} else {\n\t\t\tconsole.warn('Toaster service is already disposed.');\n\t\t}\n\t}\n\n\tpublic async enqueue(toast: Toast) {\n\t\t/**\n\t\t * We need this condition for SSR. The toast container is not rendered on the server,\n\t\t * so we can't enqueue toasts.\n\t\t */\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.enqueue === 'function') {\n\t\t\tawait this.toastContainerElement.enqueue(toast);\n\t\t}\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{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{q as featureHint,n as nonce,t as setState}from"./prop.validators.js";import{w as watchHeadingLevel,d as defineCustomElement$5}from"./component4.js";import{d as defineCustomElement$6}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.wrapper{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows 0.3s}.accordion.open .wrapper{grid-template-rows:1fr}.animation-wrapper{min-height:0;transition:visibility 0.3s;visibility:hidden}.accordion.open .animation-wrapper{visibility:visible}@media (prefers-reduced-motion){.animation-wrapper,.wrapper{transition-duration:0s}}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}";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.onClick=e=>{this._open=!this._open,setTimeout((()=>{var t;"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)&&this.state._on.onClick(e,!0===this._open)}))},this._heading=void 0,this._label=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_label:"…",_level:1}}render(){return h(Host,null,h("div",{class:{accordion:!0,open:!0===this.state._open}},h("kol-heading-wc",{_label:"",_level:this.state._level},h("kol-button-wc",{_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icons:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._label,_on:{onClick:this.onClick}})),h("div",{class:"header"},h("slot",{name:"header"})),h("div",{class:"wrapper"},h("div",{class:"animation-wrapper"},h("div",{"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce},h("slot",{name:"content"})," ",h("slot",null))))))}validateHeading(e){this.validateLabel(e)}validateLabel(e){validateLabel(this,e)}validateLevel(e){watchHeadingLevel(this,e)}validateOn(e){"object"==typeof e&&null!==e&&"function"==typeof e.onClick&&setState(this,"_on",e)}validateOpen(e){validateOpen(this,e)}componentWillLoad(){this.validateLabel(this._label||this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}static get watchers(){return{_heading:["validateHeading"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-accordion",{_heading:[1],_label:[1],_level:[2],_on:[16],_open:[1540],state:[32]},void 0,{_heading:["validateHeading"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-accordion","kol-button-wc","kol-heading-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-accordion":customElements.get(e)||customElements.define(e,KolAccordion$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolAccordion=KolAccordion$1,defineCustomElement=defineCustomElement$1;export{KolAccordion,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{q as featureHint,n as nonce,t as propagateFocus,v as setState}from"./prop.validators.js";import{w as watchHeadingLevel,d as defineCustomElement$5}from"./component4.js";import{d as defineCustomElement$6}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}.wrapper{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows 0.3s}.accordion.open .wrapper{grid-template-rows:1fr}.animation-wrapper{min-height:0;transition:visibility 0.3s;visibility:hidden}.accordion.open .animation-wrapper{visibility:visible}@media (prefers-reduced-motion){.animation-wrapper,.wrapper{transition-duration:0s}}.accordion kol-heading-wc kol-button-wc button kol-span-wc{justify-items:start}";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=e=>{propagateFocus(this.host,e)},this.onClick=e=>{this._open=!this._open,setTimeout((()=>{var t;"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)&&this.state._on.onClick(e,!0===this._open)}))},this._heading=void 0,this._label=void 0,this._level=1,this._on=void 0,this._open=!1,this.state={_label:"…",_level:1}}render(){return h(Host,null,h("div",{class:{accordion:!0,open:!0===this.state._open}},h("kol-heading-wc",{_label:"",_level:this.state._level},h("kol-button-wc",{ref:this.catchRef,slot:"expert",_ariaControls:this.nonce,_ariaExpanded:this.state._open,_icons:this.state._open?"codicon codicon-remove":"codicon codicon-add",_label:this.state._label,_on:{onClick:this.onClick}})),h("div",{class:"header"},h("slot",{name:"header"})),h("div",{class:"wrapper"},h("div",{class:"animation-wrapper"},h("div",{"aria-hidden":!1===this.state._open?"true":void 0,class:"content",id:this.nonce},h("slot",{name:"content"})," ",h("slot",null))))))}validateHeading(e){this.validateLabel(e)}validateLabel(e){validateLabel(this,e)}validateLevel(e){watchHeadingLevel(this,e)}validateOn(e){"object"==typeof e&&null!==e&&"function"==typeof e.onClick&&setState(this,"_on",e)}validateOpen(e){validateOpen(this,e)}componentWillLoad(){this.validateLabel(this._label||this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateOpen(this._open)}get host(){return this}static get watchers(){return{_heading:["validateHeading"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-accordion",{_heading:[1],_label:[1],_level:[2],_on:[16],_open:[1540],state:[32]},void 0,{_heading:["validateHeading"],_label:["validateLabel"],_level:["validateLevel"],_on:["validateOn"],_open:["validateOpen"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-accordion","kol-button-wc","kol-heading-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-accordion":customElements.get(e)||customElements.define(e,KolAccordion$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolAccordion=KolAccordion$1,defineCustomElement=defineCustomElement$1;export{KolAccordion,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-accordion.js","mappings":"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","names":["KolAccordion"],"sources":["src/components/accordion/style.css?tag=kol-accordion&mode=default&encapsulation=shadow","src/components/accordion/component.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n.wrapper {\n\tdisplay: grid;\n\tgrid-template-rows: 0fr;\n\toverflow: hidden;\n\ttransition: grid-template-rows 0.3s;\n}\n.accordion.open .wrapper {\n\tgrid-template-rows: 1fr;\n}\n.animation-wrapper {\n\tmin-height: 0;\n\ttransition: visibility 0.3s;\n\t/* 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\tvisibility: hidden;\n}\n.accordion.open .animation-wrapper {\n\tvisibility: visible;\n}\n@media (prefers-reduced-motion) {\n\t.animation-wrapper,\n\t.wrapper {\n\t\ttransition-duration: 0s;\n\t}\n} /*\n * Inside a button, the caption text is always centered.\n * So we have to align the text to the left.\n */\n.accordion kol-heading-wc kol-button-wc button kol-span-wc {\n\tjustify-items: start;\n}\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { OpenPropType, validateOpen } from '../../types/props/open';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { setState } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { API, KoliBriAccordionCallbacks, States } from './types';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n * @slot header - Deprecated für Version 2: Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements API {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\taccordion: true,\n\t\t\t\t\t\topen: this.state._open === true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-heading-wc _label=\"\" _level={this.state._level}>\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t// slot=\"expert\"\n\t\t\t\t\t\t\t_ariaControls={this.nonce}\n\t\t\t\t\t\t\t_ariaExpanded={this.state._open}\n\t\t\t\t\t\t\t_icons={this.state._open ? 'codicon codicon-remove' : 'codicon codicon-add'}\n\t\t\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t\t\t_on={{ onClick: this.onClick }}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"wrapper\">\n\t\t\t\t\t\t<div class=\"animation-wrapper\">\n\t\t\t\t\t\t\t<div aria-hidden={this.state._open === false ? 'true' : undefined} class=\"content\" id={this.nonce}>\n\t\t\t\t\t\t\t\t<slot name=\"content\"></slot> {/* Deprecated for version 2 */}\n\t\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Deprecated: Gibt die Beschriftung der Komponente an.\n\t * @deprecated Use _label.\n\t */\n\t@Prop() public _heading?: string;\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 = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\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: States = {\n\t\t_label: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\tthis.validateLabel(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label || this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = !this._open;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"version":3}
1
+ {"file":"kol-accordion.js","mappings":"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","names":["KolAccordion"],"sources":["src/components/accordion/style.css?tag=kol-accordion&mode=default&encapsulation=shadow","src/components/accordion/component.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\n/* For animation technique see https://css-tricks.com/css-grid-can-do-auto-height-transitions/ */\n.wrapper {\n\tdisplay: grid;\n\tgrid-template-rows: 0fr;\n\toverflow: hidden;\n\ttransition: grid-template-rows 0.3s;\n}\n.accordion.open .wrapper {\n\tgrid-template-rows: 1fr;\n}\n.animation-wrapper {\n\tmin-height: 0;\n\ttransition: visibility 0.3s;\n\t/* 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\tvisibility: hidden;\n}\n.accordion.open .animation-wrapper {\n\tvisibility: visible;\n}\n@media (prefers-reduced-motion) {\n\t.animation-wrapper,\n\t.wrapper {\n\t\ttransition-duration: 0s;\n\t}\n} /*\n * Inside a button, the caption text is always centered.\n * So we have to align the text to the left.\n */\n.accordion kol-heading-wc kol-button-wc button kol-span-wc {\n\tjustify-items: start;\n}\n","// https://codepen.io/mbxtr/pen/OJPOYg?html-preprocessor=haml\n\nimport { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { OpenPropType, validateOpen } from '../../types/props/open';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { setState } from '../../utils/prop.validators';\nimport { propagateFocus } from '../../utils/reuse';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { API, KoliBriAccordionCallbacks, States } from './types';\n\nfeatureHint(`[KolAccordion] Anfrage nach einer KolAccordionGroup bei dem immer nur ein Accordion geöffnet ist.\n\n- onClick auf der KolAccordion anwenden\n- Click-Event prüft den _open-Status der Accordions\n- Logik Öffnet und Schließt entsprechend`);\nfeatureHint(`[KolAccordion] Tab-Sperre des Inhalts im geschlossenen Zustand.`);\n\n/**\n *\n * @slot - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich des Accordions.\n * @slot header - Deprecated für Version 2: Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich des Accordions.\n */\n@Component({\n\ttag: 'kol-accordion',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolAccordion implements API {\n\t@Element() private readonly host?: HTMLKolDetailsElement;\n\tprivate readonly nonce = nonce();\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tpropagateFocus(this.host, ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div\n\t\t\t\t\tclass={{\n\t\t\t\t\t\taccordion: true,\n\t\t\t\t\t\topen: this.state._open === true,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-heading-wc _label=\"\" _level={this.state._level}>\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\tslot=\"expert\"\n\t\t\t\t\t\t\t_ariaControls={this.nonce}\n\t\t\t\t\t\t\t_ariaExpanded={this.state._open}\n\t\t\t\t\t\t\t_icons={this.state._open ? 'codicon codicon-remove' : 'codicon codicon-add'}\n\t\t\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t\t\t_on={{ onClick: this.onClick }}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t</kol-heading-wc>\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"wrapper\">\n\t\t\t\t\t\t<div class=\"animation-wrapper\">\n\t\t\t\t\t\t\t<div aria-hidden={this.state._open === false ? 'true' : undefined} class=\"content\" id={this.nonce}>\n\t\t\t\t\t\t\t\t<slot name=\"content\"></slot> {/* Deprecated for version 2 */}\n\t\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Deprecated: Gibt die Beschriftung der Komponente an.\n\t * @deprecated Use _label.\n\t */\n\t@Prop() public _heading?: string;\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 = 1;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen an.\n\t */\n\t@Prop() public _on?: KoliBriAccordionCallbacks;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\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: States = {\n\t\t_label: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\tthis.validateLabel(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriAccordionCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null && typeof value.onClick === 'function') {\n\t\t\tsetState(this, '_on', value);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label || this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tprivate onClick = (event: Event) => {\n\t\tthis._open = !this._open;\n\n\t\t/**\n\t\t * Der Timeout wird benötigt, damit das Event\n\t\t * vom Button- auf das Accordion-Event wechselt.\n\t\t * So ist es dem Anwendenden möglich das _open-\n\t\t * Attribute abzufragen.\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tif (typeof this.state._on?.onClick === 'function') {\n\t\t\t\tthis.state._on.onClick(event, this._open === true);\n\t\t\t}\n\t\t});\n\t};\n}\n"],"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{B as propagateFocus}from"./prop.validators.js";import{d as defineCustomElement$5}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}:is(a,button){align-items:baseline;display:inline-flex;place-items:center;text-align:left;text-decoration-line:underline}:is(a,button):is(:focus,:hover){text-decoration-thickness:0.2em}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:#fff;left:unset;padding:1em;position:unset}kol-icon.external-link-icon{display:inline-flex}",KolButtonLink$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=e=>{this.ref=e,propagateFocus(this.host,this.ref)},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._disabled=!1,this._hideLabel=!1,this._icon=void 0,this._icons=void 0,this._iconOnly=void 0,this._id=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._role=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}render(){return h(Host,null,h("kol-button-wc",{ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icons:this._icons||this._icon,_hideLabel:this._hideLabel||this._iconOnly,_id:this._id,_label:this._label,_name:this._name,_on:this._on,_role:"link",_syncValueBySelector:this._syncValueBySelector,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},h("slot",{name:"expert",slot:"expert"})))}get host(){return this}static get style(){return{default:defaultStyleCss}}},[33,"kol-button-link",{_accessKey:[1,"_access-key"],_ariaControls:[1,"_aria-controls"],_ariaCurrent:[8,"_aria-current"],_ariaExpanded:[4,"_aria-expanded"],_ariaLabel:[1025,"_aria-label"],_ariaSelected:[4,"_aria-selected"],_disabled:[4],_hideLabel:[4,"_hide-label"],_icon:[1],_icons:[1],_iconOnly:[4,"_icon-only"],_id:[1],_label:[1],_name:[1],_on:[16],_role:[1],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_type:[1],_value:[8]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-button-link","kol-button-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-button-link":customElements.get(e)||customElements.define(e,KolButtonLink$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolButtonLink=KolButtonLink$1,defineCustomElement=defineCustomElement$1;export{KolButtonLink,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{t as propagateFocus}from"./prop.validators.js";import{d as defineCustomElement$5}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:inline-block}:is(a,button){align-items:baseline;display:inline-flex;place-items:center;text-align:left;text-decoration-line:underline}:is(a,button):is(:focus,:hover){text-decoration-thickness:0.2em}.hidden{display:none;visibility:hidden}.skip{left:-99999px;overflow:hidden;position:absolute;z-index:9999999;line-height:1em}.skip:focus{background-color:#fff;left:unset;padding:1em;position:unset}kol-icon.external-link-icon{display:inline-flex}",KolButtonLink$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=e=>{propagateFocus(this.host,e)},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._disabled=!1,this._hideLabel=!1,this._icon=void 0,this._icons=void 0,this._iconOnly=void 0,this._id=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._role=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0}render(){return h(Host,null,h("kol-button-wc",{ref:this.catchRef,_accessKey:this._accessKey,_ariaControls:this._ariaControls,_ariaCurrent:this._ariaCurrent,_ariaExpanded:this._ariaExpanded,_ariaLabel:this._ariaLabel,_ariaSelected:this._ariaSelected,_disabled:this._disabled,_icons:this._icons||this._icon,_hideLabel:this._hideLabel||this._iconOnly,_id:this._id,_label:this._label,_name:this._name,_on:this._on,_role:"link",_syncValueBySelector:this._syncValueBySelector,_tabIndex:this._tabIndex,_tooltipAlign:this._tooltipAlign,_type:this._type,_value:this._value},h("slot",{name:"expert",slot:"expert"})))}get host(){return this}static get style(){return{default:defaultStyleCss}}},[33,"kol-button-link",{_accessKey:[1,"_access-key"],_ariaControls:[1,"_aria-controls"],_ariaCurrent:[8,"_aria-current"],_ariaExpanded:[4,"_aria-expanded"],_ariaLabel:[1025,"_aria-label"],_ariaSelected:[4,"_aria-selected"],_disabled:[4],_hideLabel:[4,"_hide-label"],_icon:[1],_icons:[1],_iconOnly:[4,"_icon-only"],_id:[1],_label:[1],_name:[1],_on:[16],_role:[1],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_type:[1],_value:[8]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-button-link","kol-button-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-button-link":customElements.get(e)||customElements.define(e,KolButtonLink$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolButtonLink=KolButtonLink$1,defineCustomElement=defineCustomElement$1;export{KolButtonLink,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-button-link.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,mpCAAmpC;;MCwB9pCA,eAAa;;;;;IAIR,aAAQ,GAAG,CAAC,GAA4B;MACxD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;MACf,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;KACpC,CAAC;;;;;;;qBAyEmC,KAAK;sBAOJ,KAAK;;;;;;;;;;;yBAyDW,KAAK;iBAKf,QAAQ;;;EA5I7C,MAAM;IACZ,QACC,EAAC,IAAI,QACJ,qBACC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,EAC7C,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAC,MAAM,EACZ,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,YAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CAC1B,CACV,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolButtonLink"],"sources":["src/components/button-link/style.css?tag=kol-button-link&mode=default&encapsulation=shadow","src/components/button-link/component.tsx"],"sourcesContent":["@import url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { AlternativeButtonLinkRolePropType } from '../../types/props/alternative-button-link-role';\nimport { AriaCurrentPropType } from '../../types/props/aria-current';\nimport { ButtonCallbacksPropType } from '../../types/props/button-callbacks';\nimport { ButtonTypePropType } from '../../types/props/button-type';\nimport { IconsPropType } from '../../types/props/icons';\nimport { IdPropType } from '../../types/props/id';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { NamePropType } from '../../types/props/name';\nimport { SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { StencilUnknown } from '../../types/unknown';\nimport { propagateFocus } from '../../utils/reuse';\nimport { Props } from './types';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements Props {\n\t@Element() private readonly host?: HTMLKolButtonLinkElement;\n\tprivate ref?: HTMLKolButtonWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaCurrent={this._ariaCurrent}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaLabel={this._ariaLabel}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icons={this._icons || this._icon}\n\t\t\t\t\t_hideLabel={this._hideLabel || this._iconOnly}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role=\"link\"\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</kol-button-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines which key combination can be used to trigger or focus the interactive element of the component.\n\t */\n\t@Prop() public _accessKey?: string;\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 * Deprecated: Marks the element as the selected in a group of related elements. Can be one of the following: `date` | `location` | `page` | `step` | `time` | `true`. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t *\n\t * @deprecated aria-current is not necessary for buttons. will be removed in version 2.\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrentPropType;\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 * Deprecated: Setzt die semantische Beschriftung der Komponente.\n\t *\n\t * @deprecated use _label instead\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string;\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 * @deprecated Use _icons.\n\t */\n\t@Prop() public _icon?: IconsPropType;\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 * Deprecated: Hides the label and shows the description in a Tooltip instead.\n\t * @deprecated use _hide-label\n\t */\n\t@Prop() public _iconOnly?: boolean;\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@Prop() public _role?: AlternativeButtonLinkRolePropType;\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,mpCAAmpC;;MCwB9pCA,eAAa;;;;;IAGR,aAAQ,GAAG,CAAC,GAA4B;MACxD,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAC/B,CAAC;;;;;;;qBAyEmC,KAAK;sBAOJ,KAAK;;;;;;;;;;;yBAyDW,KAAK;iBAKf,QAAQ;;;EA5I7C,MAAM;IACZ,QACC,EAAC,IAAI,QACJ,qBACC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,EAC7C,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,KAAK,EAAC,MAAM,EACZ,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,YAAM,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,QAAQ,GAAQ,CAC1B,CACV,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolButtonLink"],"sources":["src/components/button-link/style.css?tag=kol-button-link&mode=default&encapsulation=shadow","src/components/button-link/component.tsx"],"sourcesContent":["@import url(../link.css);\n","import { Component, Element, h, Host, JSX, Prop } from '@stencil/core';\n\nimport { Stringified } from '../../types/common';\nimport { AlternativeButtonLinkRolePropType } from '../../types/props/alternative-button-link-role';\nimport { AriaCurrentPropType } from '../../types/props/aria-current';\nimport { ButtonCallbacksPropType } from '../../types/props/button-callbacks';\nimport { ButtonTypePropType } from '../../types/props/button-type';\nimport { IconsPropType } from '../../types/props/icons';\nimport { IdPropType } from '../../types/props/id';\nimport { LabelWithExpertSlotPropType } from '../../types/props/label';\nimport { NamePropType } from '../../types/props/name';\nimport { SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { TooltipAlignPropType } from '../../types/props/tooltip-align';\nimport { StencilUnknown } from '../../types/unknown';\nimport { propagateFocus } from '../../utils/reuse';\nimport { Props } from './types';\n\n@Component({\n\ttag: 'kol-button-link',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolButtonLink implements Props {\n\t@Element() private readonly host?: HTMLKolButtonLinkElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolButtonWcElement) => {\n\t\tpropagateFocus(this.host, ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-button-wc\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_ariaControls={this._ariaControls}\n\t\t\t\t\t_ariaCurrent={this._ariaCurrent}\n\t\t\t\t\t_ariaExpanded={this._ariaExpanded}\n\t\t\t\t\t_ariaLabel={this._ariaLabel}\n\t\t\t\t\t_ariaSelected={this._ariaSelected}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_icons={this._icons || this._icon}\n\t\t\t\t\t_hideLabel={this._hideLabel || this._iconOnly}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_label={this._label}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this._on}\n\t\t\t\t\t_role=\"link\"\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</kol-button-wc>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines which key combination can be used to trigger or focus the interactive element of the component.\n\t */\n\t@Prop() public _accessKey?: string;\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 * Deprecated: Marks the element as the selected in a group of related elements. Can be one of the following: `date` | `location` | `page` | `step` | `time` | `true`. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t *\n\t * @deprecated aria-current is not necessary for buttons. will be removed in version 2.\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrentPropType;\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 * Deprecated: Setzt die semantische Beschriftung der Komponente.\n\t *\n\t * @deprecated use _label instead\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string;\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 * @deprecated Use _icons.\n\t */\n\t@Prop() public _icon?: IconsPropType;\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 * Deprecated: Hides the label and shows the description in a Tooltip instead.\n\t * @deprecated use _hide-label\n\t */\n\t@Prop() public _iconOnly?: boolean;\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@Prop() public _role?: AlternativeButtonLinkRolePropType;\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,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{a as translate}from"./i18n.js";import{v as validateHasCloser}from"./has-closer.js";import{e as watchBoolean,t as setState}from"./prop.validators.js";import{v as validateLabel}from"./label.js";import{w as watchHeadingLevel,d as defineCustomElement$5}from"./component4.js";import{d as defineCustomElement$6}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const validateHasFooter=(e,t)=>{watchBoolean(e,"_hasFooter",t)},defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>div.card{height:100%;position:relative}.close{position:absolute;top:0;right:0}",KolCard$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.close=()=>{var e;void 0!==(null===(e=this._on)||void 0===e?void 0:e.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=e=>"object"==typeof e&&null!==e&&"function"==typeof e.onClose,this._on=void 0,this._hasCloser=!1,this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._label=void 0,this._level=1,this.state={_label:"…"}}render(){return h(Host,null,h("div",{class:"card"},h("div",{class:"header"},h("kol-heading-wc",{_label:this.state._label,_level:this.state._level}),h("slot",{name:"header"})),h("div",{class:"content"},h("slot",{name:"content"}),h("slot",null)),this.state._hasFooter&&h("div",{class:"footer"},h("slot",{name:"footer"})),this.state._hasCloser&&h("kol-button-wc",{class:"close",_hideLabel:!0,_icons:{left:{icon:"codicon codicon-close"}},_label:translate("kol-close"),_on:this.on,_tooltipAlign:"left"})))}validateOn(e){this.validateOnValue(e)&&setState(this,"_on",{onClose:e.onClose})}validateHasCloser(e){validateHasCloser(this,e)}validateHasFooter(e){validateHasFooter(this,e)}validateHeading(e){this.validateLabel(e)}validateHeadline(e){this.validateLabel(e)}validateLabel(e){validateLabel(this,e)}validateLevel(e){watchHeadingLevel(this,e)}componentWillLoad(){this.validateHasCloser(this._hasCloser),this.validateHasFooter(this._hasFooter),this.validateLabel(this._label||this._heading||this._headline),this.validateLevel(this._level),this.validateOn(this._on)}static get watchers(){return{_on:["validateOn"],_hasCloser:["validateHasCloser"],_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_label:["validateLabel"],_level:["validateLevel"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-card",{_on:[16],_hasCloser:[4,"_has-closer"],_hasFooter:[4,"_has-footer"],_heading:[1],_headline:[1],_label:[1],_level:[2],state:[32]},void 0,{_on:["validateOn"],_hasCloser:["validateHasCloser"],_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_label:["validateLabel"],_level:["validateLevel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-card","kol-button-wc","kol-heading-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-card":customElements.get(e)||customElements.define(e,KolCard$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolCard=KolCard$1,defineCustomElement=defineCustomElement$1;export{KolCard,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{a as translate}from"./i18n.js";import{v as validateHasCloser}from"./has-closer.js";import{e as watchBoolean,v as setState}from"./prop.validators.js";import{v as validateLabel}from"./label.js";import{w as watchHeadingLevel,d as defineCustomElement$5}from"./component4.js";import{d as defineCustomElement$6}from"./component5.js";import{d as defineCustomElement$4}from"./component.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const validateHasFooter=(e,t)=>{watchBoolean(e,"_hasFooter",t)},defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host>div.card{height:100%;position:relative}.close{position:absolute;top:0;right:0}",KolCard$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.close=()=>{var e;void 0!==(null===(e=this._on)||void 0===e?void 0:e.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClick:this.close},this.validateOnValue=e=>"object"==typeof e&&null!==e&&"function"==typeof e.onClose,this._on=void 0,this._hasCloser=!1,this._hasFooter=!1,this._heading=void 0,this._headline=void 0,this._label=void 0,this._level=1,this.state={_label:"…"}}render(){return h(Host,null,h("div",{class:"card"},h("div",{class:"header"},h("kol-heading-wc",{_label:this.state._label,_level:this.state._level}),h("slot",{name:"header"})),h("div",{class:"content"},h("slot",{name:"content"}),h("slot",null)),this.state._hasFooter&&h("div",{class:"footer"},h("slot",{name:"footer"})),this.state._hasCloser&&h("kol-button-wc",{class:"close",_hideLabel:!0,_icons:{left:{icon:"codicon codicon-close"}},_label:translate("kol-close"),_on:this.on,_tooltipAlign:"left"})))}validateOn(e){this.validateOnValue(e)&&setState(this,"_on",{onClose:e.onClose})}validateHasCloser(e){validateHasCloser(this,e)}validateHasFooter(e){validateHasFooter(this,e)}validateHeading(e){this.validateLabel(e)}validateHeadline(e){this.validateLabel(e)}validateLabel(e){validateLabel(this,e)}validateLevel(e){watchHeadingLevel(this,e)}componentWillLoad(){this.validateHasCloser(this._hasCloser),this.validateHasFooter(this._hasFooter),this.validateLabel(this._label||this._heading||this._headline),this.validateLevel(this._level),this.validateOn(this._on)}static get watchers(){return{_on:["validateOn"],_hasCloser:["validateHasCloser"],_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_label:["validateLabel"],_level:["validateLevel"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-card",{_on:[16],_hasCloser:[4,"_has-closer"],_hasFooter:[4,"_has-footer"],_heading:[1],_headline:[1],_label:[1],_level:[2],state:[32]},void 0,{_on:["validateOn"],_hasCloser:["validateHasCloser"],_hasFooter:["validateHasFooter"],_heading:["validateHeading"],_headline:["validateHeadline"],_label:["validateLabel"],_level:["validateLevel"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-card","kol-button-wc","kol-heading-wc","kol-icon","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-card":customElements.get(e)||customElements.define(e,KolCard$1);break;case"kol-button-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$5();break;case"kol-icon":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolCard=KolCard$1,defineCustomElement=defineCustomElement$1;export{KolCard,defineCustomElement};
@@ -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{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{t as tryToDispatchKoliBriEvent}from"./events.js";import{t as setState}from"./prop.validators.js";import{d as defineCustomElement$3}from"./component.js";import{d as defineCustomElement$2}from"./component12.js";class DetailsAnimationController{constructor(t,e,i){this.detailsElement=t,this.summaryElement=e,this.contentElement=i,this.isClosing=!1,this.isExpanding=!1,this.summaryElement.addEventListener("click",this.handleSummaryClick.bind(this))}handleSummaryClick(t){t.preventDefault(),this.detailsElement.style.overflow="hidden",this.isClosing||!this.detailsElement.open?this.open():(this.isExpanding||this.detailsElement.open)&&this.collapse()}open(){var t;this.detailsElement.style.height=`${null!==(t=this.detailsElement.offsetHeight)&&void 0!==t?t:0}px`,this.detailsElement.open=!0,window.requestAnimationFrame(this.expand.bind(this))}expand(){this.isExpanding=!0,this.animateDetailsHeight(this.summaryElement.offsetHeight+this.contentElement.offsetHeight,"expand")}collapse(){this.isClosing=!0,this.animateDetailsHeight(this.summaryElement.offsetHeight,"collapse")}animateDetailsHeight(t,e){const i=this.detailsElement.offsetHeight;this.animation&&this.animation.cancel(),this.animation=this.detailsElement.animate({height:[`${i}px`,`${t}px`]},{duration:matchMedia("(prefers-reduced-motion)").matches?0:250,easing:"ease-out"}),this.animation.addEventListener("finish",(()=>{this.onAnimationFinish()}),{once:!0}),this.animation.addEventListener("cancel",(()=>{"expand"===e?this.isExpanding=!1:this.isClosing=!1}),{once:!0})}onAnimationFinish(){this.detailsElement.open=this.isExpanding,this.animation=void 0,this.isClosing=!1,this.isExpanding=!1,this.detailsElement.style.removeProperty("height"),this.detailsElement.style.removeProperty("overview")}}const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}details{display:grid}details>summary{cursor:pointer;display:flex;place-items:center}details>summary>span{border-bottom-color:grey;border-bottom-style:solid}details>summary:focus>span,details>summary:hover>span,details[open]>summary>span{border-bottom-color:#000}details>kol-indented-text{margin:0.25em 0 0 0.5em}",KolDetails$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.handleToggle=t=>{clearTimeout(this.toggleTimeout),this.toggleTimeout=setTimeout((()=>{var e,i,n,s;Boolean(null===(e=this.detailsElement)||void 0===e?void 0:e.open)!==this.state._open&&(this._open=Boolean(null===(i=this.detailsElement)||void 0===i?void 0:i.open),tryToDispatchKoliBriEvent("toggle",this.host,this._open),"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n.onToggle)&&(null===(s=this.state._on)||void 0===s||s.onToggle(t,this._open)))}),25)},this._label=void 0,this._on=void 0,this._open=!1,this._summary=void 0,this.state={_label:"…",_on:{}}}render(){return h(Host,null,h("details",{ref:t=>{this.detailsElement=t},onToggle:this.handleToggle},h("summary",{ref:t=>this.summaryElement=t},this.state._open?h("kol-icon",{_label:"",_icons:"codicon codicon-chevron-down"}):h("kol-icon",{_label:"",_icons:"codicon codicon-chevron-right"}),h("span",null,this.state._label)),h("div",{class:"content",ref:t=>this.contentElement=t},h("kol-indented-text",null,h("slot",null)))))}validateLabel(t){validateLabel(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onToggle&&setState(this,"_on",t)}validateOpen(t){validateOpen(this,t)}validateSummary(t){this.validateLabel(t)}componentWillLoad(){this.validateLabel(this._label||this._summary),this.validateOn(this._on),this.validateOpen(this._open)}componentDidLoad(){if(this.detailsElement&&this.summaryElement&&this.contentElement){const t=new DetailsAnimationController(this.detailsElement,this.summaryElement,this.contentElement);this.state._open&&t.open()}}get host(){return this}static get watchers(){return{_label:["validateLabel"],_on:["validateOn"],_open:["validateOpen"],_summary:["validateSummary"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-details",{_label:[1],_on:[16],_open:[1540],_summary:[1],state:[32]},void 0,{_label:["validateLabel"],_on:["validateOn"],_open:["validateOpen"],_summary:["validateSummary"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-details","kol-icon","kol-indented-text"].forEach((t=>{switch(t){case"kol-details":customElements.get(t)||customElements.define(t,KolDetails$1);break;case"kol-icon":customElements.get(t)||defineCustomElement$3();break;case"kol-indented-text":customElements.get(t)||defineCustomElement$2()}}))}const KolDetails=KolDetails$1,defineCustomElement=defineCustomElement$1;export{KolDetails,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{v as validateLabel}from"./label.js";import{v as validateOpen}from"./open.js";import{t as tryToDispatchKoliBriEvent}from"./events.js";import{t as propagateFocus,v as setState}from"./prop.validators.js";import{d as defineCustomElement$3}from"./component.js";import{d as defineCustomElement$2}from"./component12.js";class DetailsAnimationController{constructor(t,e,i){this.detailsElement=t,this.summaryElement=e,this.contentElement=i,this.isClosing=!1,this.isExpanding=!1,this.summaryElement.addEventListener("click",this.handleSummaryClick.bind(this))}handleSummaryClick(t){t.preventDefault(),this.detailsElement.style.overflow="hidden",this.isClosing||!this.detailsElement.open?this.open():(this.isExpanding||this.detailsElement.open)&&this.collapse()}open(){var t;this.detailsElement.style.height=`${null!==(t=this.detailsElement.offsetHeight)&&void 0!==t?t:0}px`,this.detailsElement.open=!0,window.requestAnimationFrame(this.expand.bind(this))}expand(){this.isExpanding=!0,this.animateDetailsHeight(this.summaryElement.offsetHeight+this.contentElement.offsetHeight,"expand")}collapse(){this.isClosing=!0,this.animateDetailsHeight(this.summaryElement.offsetHeight,"collapse")}animateDetailsHeight(t,e){const i=this.detailsElement.offsetHeight;this.animation&&this.animation.cancel(),this.animation=this.detailsElement.animate({height:[`${i}px`,`${t}px`]},{duration:matchMedia("(prefers-reduced-motion)").matches?0:250,easing:"ease-out"}),this.animation.addEventListener("finish",(()=>{this.onAnimationFinish()}),{once:!0}),this.animation.addEventListener("cancel",(()=>{"expand"===e?this.isExpanding=!1:this.isClosing=!1}),{once:!0})}onAnimationFinish(){this.detailsElement.open=this.isExpanding,this.animation=void 0,this.isClosing=!1,this.isExpanding=!1,this.detailsElement.style.removeProperty("height"),this.detailsElement.style.removeProperty("overview")}}const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}details{display:grid}details>summary{cursor:pointer;display:flex;place-items:center}details>summary>span{border-bottom-color:grey;border-bottom-style:solid}details>summary:focus>span,details>summary:hover>span,details[open]>summary>span{border-bottom-color:#000}details>kol-indented-text{margin:0.25em 0 0 0.5em}",KolDetails$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=t=>{this.summaryElement=t,propagateFocus(this.host,this.summaryElement)},this.handleToggle=t=>{clearTimeout(this.toggleTimeout),this.toggleTimeout=setTimeout((()=>{var e,i,n,s;Boolean(null===(e=this.detailsElement)||void 0===e?void 0:e.open)!==this.state._open&&(this._open=Boolean(null===(i=this.detailsElement)||void 0===i?void 0:i.open),tryToDispatchKoliBriEvent("toggle",this.host,this._open),"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n.onToggle)&&(null===(s=this.state._on)||void 0===s||s.onToggle(t,this._open)))}),25)},this._label=void 0,this._on=void 0,this._open=!1,this._summary=void 0,this.state={_label:"…",_on:{}}}render(){return h(Host,null,h("details",{ref:t=>{this.detailsElement=t},onToggle:this.handleToggle},h("summary",{ref:this.catchRef},this.state._open?h("kol-icon",{_label:"",_icons:"codicon codicon-chevron-down"}):h("kol-icon",{_label:"",_icons:"codicon codicon-chevron-right"}),h("span",null,this.state._label)),h("div",{"aria-hidden":!1===this.state._open?"true":void 0,class:"content",ref:t=>this.contentElement=t},h("kol-indented-text",null,h("slot",null)))))}validateLabel(t){validateLabel(this,t)}validateOn(t){"object"==typeof t&&null!==t&&"function"==typeof t.onToggle&&setState(this,"_on",t)}validateOpen(t){validateOpen(this,t)}validateSummary(t){this.validateLabel(t)}componentWillLoad(){this.validateLabel(this._label||this._summary),this.validateOn(this._on),this.validateOpen(this._open)}componentDidLoad(){if(this.detailsElement&&this.summaryElement&&this.contentElement){const t=new DetailsAnimationController(this.detailsElement,this.summaryElement,this.contentElement);this.state._open&&t.open()}}get host(){return this}static get watchers(){return{_label:["validateLabel"],_on:["validateOn"],_open:["validateOpen"],_summary:["validateSummary"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-details",{_label:[1],_on:[16],_open:[1540],_summary:[1],state:[32]},void 0,{_label:["validateLabel"],_on:["validateOn"],_open:["validateOpen"],_summary:["validateSummary"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-details","kol-icon","kol-indented-text"].forEach((t=>{switch(t){case"kol-details":customElements.get(t)||customElements.define(t,KolDetails$1);break;case"kol-icon":customElements.get(t)||defineCustomElement$3();break;case"kol-indented-text":customElements.get(t)||defineCustomElement$2()}}))}const KolDetails=KolDetails$1,defineCustomElement=defineCustomElement$1;export{KolDetails,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-details.js","mappings":"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","names":["KolDetails"],"sources":["src/components/details/DetailsAnimationController.ts","src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","src/components/details/component.tsx"],"sourcesContent":["/* Heavily inspired by: https://codepen.io/Mamboleoo/pen/QWEpLqm */\n\nexport default class DetailsAnimationController {\n\tprivate animation?: Animation;\n\tprivate isClosing = false;\n\tprivate isExpanding = false;\n\n\tconstructor(private detailsElement: HTMLDetailsElement, private summaryElement: HTMLElement, private contentElement: HTMLElement) {\n\t\tthis.summaryElement.addEventListener('click', this.handleSummaryClick.bind(this));\n\t}\n\n\tprivate handleSummaryClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\n\t\tthis.detailsElement.style.overflow = 'hidden';\n\t\tif (this.isClosing || !this.detailsElement.open) {\n\t\t\tthis.open();\n\t\t} else if (this.isExpanding || this.detailsElement.open) {\n\t\t\tthis.collapse();\n\t\t}\n\t}\n\n\tpublic open() {\n\t\t/**\n\t\t * The Jest test framework does not support the `offsetHeight` property on the `details` element.\n\t\t * This is a workaround to make the tests pass (?? 0).\n\t\t */\n\t\tthis.detailsElement.style.height = `${this.detailsElement.offsetHeight ?? 0}px`;\n\t\tthis.detailsElement.open = true;\n\t\twindow.requestAnimationFrame(this.expand.bind(this));\n\t}\n\n\tprivate expand() {\n\t\tthis.isExpanding = true;\n\t\tthis.animateDetailsHeight(this.summaryElement.offsetHeight + this.contentElement.offsetHeight, 'expand');\n\t}\n\n\tprivate collapse() {\n\t\tthis.isClosing = true;\n\t\tthis.animateDetailsHeight(this.summaryElement.offsetHeight, 'collapse');\n\t}\n\n\tprivate animateDetailsHeight(endHeight: number, direction: 'expand' | 'collapse') {\n\t\tconst startHeight = this.detailsElement.offsetHeight;\n\n\t\tif (this.animation) {\n\t\t\tthis.animation.cancel();\n\t\t}\n\n\t\tthis.animation = this.detailsElement.animate(\n\t\t\t{\n\t\t\t\theight: [`${startHeight}px`, `${endHeight}px`],\n\t\t\t},\n\t\t\t{\n\t\t\t\tduration: matchMedia('(prefers-reduced-motion)').matches ? 0 : 250,\n\t\t\t\teasing: 'ease-out',\n\t\t\t}\n\t\t);\n\n\t\tthis.animation.addEventListener(\n\t\t\t'finish',\n\t\t\t() => {\n\t\t\t\tthis.onAnimationFinish();\n\t\t\t},\n\t\t\t{ once: true }\n\t\t);\n\t\tthis.animation.addEventListener(\n\t\t\t'cancel',\n\t\t\t() => {\n\t\t\t\tif (direction === 'expand') {\n\t\t\t\t\tthis.isExpanding = false;\n\t\t\t\t} else {\n\t\t\t\t\tthis.isClosing = false;\n\t\t\t\t}\n\t\t\t},\n\t\t\t{ once: true }\n\t\t);\n\t}\n\n\tprivate onAnimationFinish() {\n\t\tthis.detailsElement.open = this.isExpanding;\n\t\tthis.animation = undefined;\n\t\tthis.isClosing = false;\n\t\tthis.isExpanding = false;\n\t\tthis.detailsElement.style.removeProperty('height');\n\t\tthis.detailsElement.style.removeProperty('overview');\n\t}\n}\n","@import url(../style.css);\n@import url(../host-display-block.css);\ndetails {\n\tdisplay: grid;\n}\ndetails > summary {\n\tcursor: pointer;\n\tdisplay: flex;\n\tplace-items: center;\n}\ndetails > summary > span {\n\tborder-bottom-color: grey;\n\tborder-bottom-style: solid;\n}\ndetails > summary:focus > span,\ndetails > summary:hover > span,\ndetails[open] > summary > span {\n\tborder-bottom-color: #000;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.5em;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { validateOpen } from '../../types/props/open';\nimport { tryToDispatchKoliBriEvent } from '../../utils/events';\nimport { setState } from '../../utils/prop.validators';\nimport DetailsAnimationController from './DetailsAnimationController';\nimport { API, EventCallbacks, States } from './types';\n\n/**\n * @slot - Der Inhalt, der in der Detailbeschreibung angezeigt wird.\n */\n@Component({\n\ttag: 'kol-details',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolDetails implements API {\n\t@Element() private readonly host?: HTMLKolDetailsElement;\n\tprivate detailsElement?: HTMLDetailsElement;\n\tprivate summaryElement?: HTMLElement;\n\tprivate contentElement?: HTMLElement;\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<details\n\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\tthis.detailsElement = el as HTMLDetailsElement;\n\t\t\t\t\t}}\n\t\t\t\t\tonToggle={this.handleToggle}\n\t\t\t\t>\n\t\t\t\t\t<summary ref={(element) => (this.summaryElement = element)}>\n\t\t\t\t\t\t{this.state._open ? <kol-icon _label=\"\" _icons=\"codicon codicon-chevron-down\" /> : <kol-icon _label=\"\" _icons=\"codicon codicon-chevron-right\" />}\n\t\t\t\t\t\t<span>{this.state._label}</span>\n\t\t\t\t\t</summary>\n\t\t\t\t\t<div class=\"content\" ref={(element) => (this.contentElement = element)}>\n\t\t\t\t\t\t<kol-indented-text>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</kol-indented-text>\n\t\t\t\t\t</div>\n\t\t\t\t</details>\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 the callback functions for details.\n\t */\n\t@Prop() public _on?: EventCallbacks;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\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/**\n\t * Deprecated: Gibt die Zusammenfassung der Detailbeschreibung an.\n\t * @deprecated Use _label.\n\t */\n\t@Prop() public _summary?: string;\n\n\t@State() public state: States = {\n\t\t_label: '…', // '⚠'\n\t\t_on: {},\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(on?: EventCallbacks) {\n\t\tif (typeof on === 'object' && on !== null && typeof on.onToggle === 'function') {\n\t\t\tsetState<EventCallbacks>(this, '_on', on);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_summary')\n\tpublic validateSummary(value?: string): void {\n\t\tthis.validateLabel(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label || this._summary);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tpublic componentDidLoad() {\n\t\tif (this.detailsElement && this.summaryElement && this.contentElement) {\n\t\t\tconst animationController = new DetailsAnimationController(this.detailsElement, this.summaryElement, this.contentElement);\n\t\t\tif (this.state._open) {\n\t\t\t\tanimationController.open();\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate toggleTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate handleToggle = (event: Event) => {\n\t\tclearTimeout(this.toggleTimeout);\n\t\tthis.toggleTimeout = setTimeout(() => {\n\t\t\tconst open = Boolean(this.detailsElement?.open);\n\t\t\tif (open !== this.state._open) {\n\t\t\t\t// Update state\n\t\t\t\tthis._open = Boolean(this.detailsElement?.open);\n\n\t\t\t\t// Event handling\n\t\t\t\ttryToDispatchKoliBriEvent('toggle', this.host, this._open);\n\n\t\t\t\t// Callback\n\t\t\t\tif (typeof this.state._on?.onToggle === 'function') {\n\t\t\t\t\tthis.state._on?.onToggle(event, this._open);\n\t\t\t\t}\n\t\t\t}\n\t\t}, 25);\n\t};\n}\n"],"version":3}
1
+ {"file":"kol-details.js","mappings":"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","names":["KolDetails"],"sources":["src/components/details/DetailsAnimationController.ts","src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","src/components/details/component.tsx"],"sourcesContent":["/* Heavily inspired by: https://codepen.io/Mamboleoo/pen/QWEpLqm */\n\nexport default class DetailsAnimationController {\n\tprivate animation?: Animation;\n\tprivate isClosing = false;\n\tprivate isExpanding = false;\n\n\tconstructor(private detailsElement: HTMLDetailsElement, private summaryElement: HTMLElement, private contentElement: HTMLElement) {\n\t\tthis.summaryElement.addEventListener('click', this.handleSummaryClick.bind(this));\n\t}\n\n\tprivate handleSummaryClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\n\t\tthis.detailsElement.style.overflow = 'hidden';\n\t\tif (this.isClosing || !this.detailsElement.open) {\n\t\t\tthis.open();\n\t\t} else if (this.isExpanding || this.detailsElement.open) {\n\t\t\tthis.collapse();\n\t\t}\n\t}\n\n\tpublic open() {\n\t\t/**\n\t\t * The Jest test framework does not support the `offsetHeight` property on the `details` element.\n\t\t * This is a workaround to make the tests pass (?? 0).\n\t\t */\n\t\tthis.detailsElement.style.height = `${this.detailsElement.offsetHeight ?? 0}px`;\n\t\tthis.detailsElement.open = true;\n\t\twindow.requestAnimationFrame(this.expand.bind(this));\n\t}\n\n\tprivate expand() {\n\t\tthis.isExpanding = true;\n\t\tthis.animateDetailsHeight(this.summaryElement.offsetHeight + this.contentElement.offsetHeight, 'expand');\n\t}\n\n\tprivate collapse() {\n\t\tthis.isClosing = true;\n\t\tthis.animateDetailsHeight(this.summaryElement.offsetHeight, 'collapse');\n\t}\n\n\tprivate animateDetailsHeight(endHeight: number, direction: 'expand' | 'collapse') {\n\t\tconst startHeight = this.detailsElement.offsetHeight;\n\n\t\tif (this.animation) {\n\t\t\tthis.animation.cancel();\n\t\t}\n\n\t\tthis.animation = this.detailsElement.animate(\n\t\t\t{\n\t\t\t\theight: [`${startHeight}px`, `${endHeight}px`],\n\t\t\t},\n\t\t\t{\n\t\t\t\tduration: matchMedia('(prefers-reduced-motion)').matches ? 0 : 250,\n\t\t\t\teasing: 'ease-out',\n\t\t\t}\n\t\t);\n\n\t\tthis.animation.addEventListener(\n\t\t\t'finish',\n\t\t\t() => {\n\t\t\t\tthis.onAnimationFinish();\n\t\t\t},\n\t\t\t{ once: true }\n\t\t);\n\t\tthis.animation.addEventListener(\n\t\t\t'cancel',\n\t\t\t() => {\n\t\t\t\tif (direction === 'expand') {\n\t\t\t\t\tthis.isExpanding = false;\n\t\t\t\t} else {\n\t\t\t\t\tthis.isClosing = false;\n\t\t\t\t}\n\t\t\t},\n\t\t\t{ once: true }\n\t\t);\n\t}\n\n\tprivate onAnimationFinish() {\n\t\tthis.detailsElement.open = this.isExpanding;\n\t\tthis.animation = undefined;\n\t\tthis.isClosing = false;\n\t\tthis.isExpanding = false;\n\t\tthis.detailsElement.style.removeProperty('height');\n\t\tthis.detailsElement.style.removeProperty('overview');\n\t}\n}\n","@import url(../style.css);\n@import url(../host-display-block.css);\ndetails {\n\tdisplay: grid;\n}\ndetails > summary {\n\tcursor: pointer;\n\tdisplay: flex;\n\tplace-items: center;\n}\ndetails > summary > span {\n\tborder-bottom-color: grey;\n\tborder-bottom-style: solid;\n}\ndetails > summary:focus > span,\ndetails > summary:hover > span,\ndetails[open] > summary > span {\n\tborder-bottom-color: #000;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.5em;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { LabelPropType, validateLabel } from '../../types/props/label';\nimport { validateOpen } from '../../types/props/open';\nimport { tryToDispatchKoliBriEvent } from '../../utils/events';\nimport { setState } from '../../utils/prop.validators';\nimport DetailsAnimationController from './DetailsAnimationController';\nimport { API, EventCallbacks, States } from './types';\nimport { propagateFocus } from '../../utils/reuse';\n\n/**\n * @slot - Der Inhalt, der in der Detailbeschreibung angezeigt wird.\n */\n@Component({\n\ttag: 'kol-details',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolDetails implements API {\n\t@Element() private readonly host?: HTMLKolDetailsElement;\n\tprivate detailsElement?: HTMLDetailsElement;\n\tprivate summaryElement?: HTMLElement;\n\tprivate contentElement?: HTMLElement;\n\n\tprivate readonly catchRef = (ref?: HTMLElement) => {\n\t\tthis.summaryElement = ref;\n\t\tpropagateFocus(this.host, this.summaryElement);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<details\n\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\tthis.detailsElement = el as HTMLDetailsElement;\n\t\t\t\t\t}}\n\t\t\t\t\tonToggle={this.handleToggle}\n\t\t\t\t>\n\t\t\t\t\t<summary ref={this.catchRef}>\n\t\t\t\t\t\t{this.state._open ? <kol-icon _label=\"\" _icons=\"codicon codicon-chevron-down\" /> : <kol-icon _label=\"\" _icons=\"codicon codicon-chevron-right\" />}\n\t\t\t\t\t\t<span>{this.state._label}</span>\n\t\t\t\t\t</summary>\n\t\t\t\t\t<div aria-hidden={this.state._open === false ? 'true' : undefined} class=\"content\" ref={(element) => (this.contentElement = element)}>\n\t\t\t\t\t\t<kol-indented-text>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</kol-indented-text>\n\t\t\t\t\t</div>\n\t\t\t\t</details>\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 the callback functions for details.\n\t */\n\t@Prop() public _on?: EventCallbacks;\n\n\t/**\n\t * If set (to true) opens/expands the element, closes if not set (or set to false).\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/**\n\t * Deprecated: Gibt die Zusammenfassung der Detailbeschreibung an.\n\t * @deprecated Use _label.\n\t */\n\t@Prop() public _summary?: string;\n\n\t@State() public state: States = {\n\t\t_label: '…', // '⚠'\n\t\t_on: {},\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(on?: EventCallbacks) {\n\t\tif (typeof on === 'object' && on !== null && typeof on.onToggle === 'function') {\n\t\t\tsetState<EventCallbacks>(this, '_on', on);\n\t\t}\n\t}\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_summary')\n\tpublic validateSummary(value?: string): void {\n\t\tthis.validateLabel(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label || this._summary);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateOpen(this._open);\n\t}\n\n\tpublic componentDidLoad() {\n\t\tif (this.detailsElement && this.summaryElement && this.contentElement) {\n\t\t\tconst animationController = new DetailsAnimationController(this.detailsElement, this.summaryElement, this.contentElement);\n\t\t\tif (this.state._open) {\n\t\t\t\tanimationController.open();\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate toggleTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate handleToggle = (event: Event) => {\n\t\tclearTimeout(this.toggleTimeout);\n\t\tthis.toggleTimeout = setTimeout(() => {\n\t\t\tconst open = Boolean(this.detailsElement?.open);\n\t\t\tif (open !== this.state._open) {\n\t\t\t\t// Update state\n\t\t\t\tthis._open = Boolean(this.detailsElement?.open);\n\n\t\t\t\t// Event handling\n\t\t\t\ttryToDispatchKoliBriEvent('toggle', this.host, this._open);\n\n\t\t\t\t// Callback\n\t\t\t\tif (typeof this.state._on?.onToggle === 'function') {\n\t\t\t\t\tthis.state._on?.onToggle(event, this._open);\n\t\t\t\t}\n\t\t\t}\n\t\t}, 25);\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{v as validateImageSource}from"./image-source.js";import{w as watchValidator,b as watchString}from"./prop.validators.js";const AVAILABLE_LOADING_VALUES=new Set(['"eager", "lazy"']);function validateLoading(t,e){watchValidator(t,"_loading",(t=>"eager"===t||"lazy"===t),AVAILABLE_LOADING_VALUES,e)}const defaultStyleCss="img{max-height:100%;max-width:100%}",KolImage$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._alt=void 0,this._loading="lazy",this._sizes=void 0,this._src=void 0,this._srcset=void 0,this.state={_alt:"…",_loading:"lazy",_src:"…"}}validateAlt(t){watchString(this,"_alt",t,{required:!0})}validateLoading(t){validateLoading(this,t)}validateSizes(t){watchString(this,"_sizes",t)}validateSrc(t){validateImageSource(this,t,{required:!0})}validateSrcset(t){watchString(this,"_srcset",t)}componentWillLoad(){this.validateAlt(this._alt),this.validateLoading(this._loading),this.validateSizes(this._sizes),this.validateSrc(this._src),this.validateSrcset(this._srcset)}render(){return h(Host,null,h("img",{alt:this.state._alt,loading:this.state._loading,sizes:this.state._sizes,src:this.state._src,srcset:this.state._srcset}))}static get watchers(){return{_alt:["validateAlt"],_loading:["validateLoading"],_sizes:["validateSizes"],_src:["validateSrc"],_srcset:["validateSrcset"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-image",{_alt:[1],_loading:[1],_sizes:[1],_src:[1],_srcset:[1],state:[32]},void 0,{_alt:["validateAlt"],_loading:["validateLoading"],_sizes:["validateSizes"],_src:["validateSrc"],_srcset:["validateSrcset"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-image"].forEach((t=>{if("kol-image"===t)customElements.get(t)||customElements.define(t,KolImage$1)}))}const KolImage=KolImage$1,defineCustomElement=defineCustomElement$1;export{KolImage,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{v as validateImageSource}from"./image-source.js";import{w as watchValidator,b as watchString}from"./prop.validators.js";const AVAILABLE_LOADING_VALUES=new Set(['"eager", "lazy"']);function validateLoading(t,e){watchValidator(t,"_loading",(t=>"eager"===t||"lazy"===t),AVAILABLE_LOADING_VALUES,e)}const defaultStyleCss=":host{display:inline-block}img{max-height:100%;max-width:100%}",KolImage$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this._alt=void 0,this._loading="lazy",this._sizes=void 0,this._src=void 0,this._srcset=void 0,this.state={_alt:"…",_loading:"lazy",_src:"…"}}validateAlt(t){watchString(this,"_alt",t,{required:!0})}validateLoading(t){validateLoading(this,t)}validateSizes(t){watchString(this,"_sizes",t)}validateSrc(t){validateImageSource(this,t,{required:!0})}validateSrcset(t){watchString(this,"_srcset",t)}componentWillLoad(){this.validateAlt(this._alt),this.validateLoading(this._loading),this.validateSizes(this._sizes),this.validateSrc(this._src),this.validateSrcset(this._srcset)}render(){return h(Host,null,h("img",{alt:this.state._alt,loading:this.state._loading,sizes:this.state._sizes,src:this.state._src,srcset:this.state._srcset}))}static get watchers(){return{_alt:["validateAlt"],_loading:["validateLoading"],_sizes:["validateSizes"],_src:["validateSrc"],_srcset:["validateSrcset"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-image",{_alt:[1],_loading:[1],_sizes:[1],_src:[1],_srcset:[1],state:[32]},void 0,{_alt:["validateAlt"],_loading:["validateLoading"],_sizes:["validateSizes"],_src:["validateSrc"],_srcset:["validateSrcset"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-image"].forEach((t=>{if("kol-image"===t)customElements.get(t)||customElements.define(t,KolImage$1)}))}const KolImage=KolImage$1,defineCustomElement=defineCustomElement$1;export{KolImage,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-image.js","mappings":";;;;;;;AAMA,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;SAC9C,eAAe,CAAC,SAAoC,EAAE,KAAe;EACpF,cAAc,CAAU,SAAS,EAAE,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;AACnI;;ACTA,MAAM,eAAe,GAAG,qCAAqC;;MCchDA,UAAQ;;;;;;oBASgB,MAAM;;;;iBAiBV;MAC/B,IAAI,EAAE,GAAG;MACT,QAAQ,EAAE,MAAM;MAChB,IAAI,EAAE,GAAG;KACT;;EAGM,WAAW,CAAC,KAAc;IAChC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;MAChC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,eAAe,CAAC,KAAe;IACrC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC7B;EAGM,aAAa,CAAC,KAAc;IAClC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;GACnC;EAGM,WAAW,CAAC,KAA2B;IAC7C,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE;MAChC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,cAAc,CAAC,KAAc;IACnC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;GACpC;EAEM,iBAAiB;IACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;GAClC;EAEM,MAAM;IACZ,QACC,EAAC,IAAI,QACJ,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAQ,CACrI,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolImage"],"sources":["src/utils/validators/loading.ts","src/components/image/style.css?tag=kol-image&mode=default&encapsulation=shadow","src/components/image/shadow.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchValidator } from '../prop.validators';\n\nexport type Loading = 'eager' | 'lazy';\n\nconst AVAILABLE_LOADING_VALUES = new Set(['\"eager\", \"lazy\"']);\nexport function validateLoading(component: Generic.Element.Component, value?: Loading): void {\n\twatchValidator<Loading>(component, '_loading', (value) => value === 'eager' || value === 'lazy', AVAILABLE_LOADING_VALUES, value);\n}\n","img {\n\tmax-height: 100%;\n\tmax-width: 100%;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { ImageSourcePropType, validateImageSource } from '../../types/props/image-source';\nimport { watchString } from '../../utils/prop.validators';\nimport { Loading, validateLoading } from '../../utils/validators/loading';\nimport { API, States } from './types';\n\n@Component({\n\ttag: 'kol-image',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolImage implements API {\n\t/**\n\t * Setzt den alternativen Text.\n\t */\n\t@Prop() public _alt!: string;\n\n\t/**\n\t * Defines the loading mode for the image.\n\t */\n\t@Prop() public _loading?: Loading = 'lazy';\n\n\t/**\n\t * Defines the image sizes for different screen resolutions, supporting _srcset.\n\t */\n\t@Prop() public _sizes?: string;\n\n\t/**\n\t * Sets the image `src` attribute to the given string.\n\t */\n\t@Prop() public _src!: ImageSourcePropType;\n\n\t/**\n\t * Setzt eine Liste von Quell-URLs mit Breiten der Bilder.\n\t */\n\t@Prop() public _srcset?: string;\n\n\t@State() public state: States = {\n\t\t_alt: '…', // ⚠ required\n\t\t_loading: 'lazy',\n\t\t_src: '…', // ⚠ required\n\t};\n\n\t@Watch('_alt')\n\tpublic validateAlt(value?: string): void {\n\t\twatchString(this, '_alt', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_loading')\n\tpublic validateLoading(value?: Loading): void {\n\t\tvalidateLoading(this, value);\n\t}\n\n\t@Watch('_sizes')\n\tpublic validateSizes(value?: string): void {\n\t\twatchString(this, '_sizes', value);\n\t}\n\n\t@Watch('_src')\n\tpublic validateSrc(value?: ImageSourcePropType): void {\n\t\tvalidateImageSource(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_srcset')\n\tpublic validateSrcset(value?: string): void {\n\t\twatchString(this, '_srcset', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlt(this._alt);\n\t\tthis.validateLoading(this._loading);\n\t\tthis.validateSizes(this._sizes);\n\t\tthis.validateSrc(this._src);\n\t\tthis.validateSrcset(this._srcset);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<img alt={this.state._alt} loading={this.state._loading} sizes={this.state._sizes} src={this.state._src} srcset={this.state._srcset}></img>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-image.js","mappings":";;;;;;;AAMA,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;SAC9C,eAAe,CAAC,SAAoC,EAAE,KAAe;EACpF,cAAc,CAAU,SAAS,EAAE,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;AACnI;;ACTA,MAAM,eAAe,GAAG,gEAAgE;;MCc3EA,UAAQ;;;;;;oBASgB,MAAM;;;;iBAiBV;MAC/B,IAAI,EAAE,GAAG;MACT,QAAQ,EAAE,MAAM;MAChB,IAAI,EAAE,GAAG;KACT;;EAGM,WAAW,CAAC,KAAc;IAChC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;MAChC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,eAAe,CAAC,KAAe;IACrC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC7B;EAGM,aAAa,CAAC,KAAc;IAClC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;GACnC;EAGM,WAAW,CAAC,KAA2B;IAC7C,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE;MAChC,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;GACH;EAGM,cAAc,CAAC,KAAc;IACnC,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;GACpC;EAEM,iBAAiB;IACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;GAClC;EAEM,MAAM;IACZ,QACC,EAAC,IAAI,QACJ,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAQ,CACrI,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolImage"],"sources":["src/utils/validators/loading.ts","src/components/image/style.css?tag=kol-image&mode=default&encapsulation=shadow","src/components/image/shadow.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchValidator } from '../prop.validators';\n\nexport type Loading = 'eager' | 'lazy';\n\nconst AVAILABLE_LOADING_VALUES = new Set(['\"eager\", \"lazy\"']);\nexport function validateLoading(component: Generic.Element.Component, value?: Loading): void {\n\twatchValidator<Loading>(component, '_loading', (value) => value === 'eager' || value === 'lazy', AVAILABLE_LOADING_VALUES, value);\n}\n",":host {\n\tdisplay: inline-block;\n}\nimg {\n\tmax-height: 100%;\n\tmax-width: 100%;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { ImageSourcePropType, validateImageSource } from '../../types/props/image-source';\nimport { watchString } from '../../utils/prop.validators';\nimport { Loading, validateLoading } from '../../utils/validators/loading';\nimport { API, States } from './types';\n\n@Component({\n\ttag: 'kol-image',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolImage implements API {\n\t/**\n\t * Setzt den alternativen Text.\n\t */\n\t@Prop() public _alt!: string;\n\n\t/**\n\t * Defines the loading mode for the image.\n\t */\n\t@Prop() public _loading?: Loading = 'lazy';\n\n\t/**\n\t * Defines the image sizes for different screen resolutions, supporting _srcset.\n\t */\n\t@Prop() public _sizes?: string;\n\n\t/**\n\t * Sets the image `src` attribute to the given string.\n\t */\n\t@Prop() public _src!: ImageSourcePropType;\n\n\t/**\n\t * Setzt eine Liste von Quell-URLs mit Breiten der Bilder.\n\t */\n\t@Prop() public _srcset?: string;\n\n\t@State() public state: States = {\n\t\t_alt: '…', // ⚠ required\n\t\t_loading: 'lazy',\n\t\t_src: '…', // ⚠ required\n\t};\n\n\t@Watch('_alt')\n\tpublic validateAlt(value?: string): void {\n\t\twatchString(this, '_alt', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_loading')\n\tpublic validateLoading(value?: Loading): void {\n\t\tvalidateLoading(this, value);\n\t}\n\n\t@Watch('_sizes')\n\tpublic validateSizes(value?: string): void {\n\t\twatchString(this, '_sizes', value);\n\t}\n\n\t@Watch('_src')\n\tpublic validateSrc(value?: ImageSourcePropType): void {\n\t\tvalidateImageSource(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_srcset')\n\tpublic validateSrcset(value?: string): void {\n\t\twatchString(this, '_srcset', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlt(this._alt);\n\t\tthis.validateLoading(this._loading);\n\t\tthis.validateSizes(this._sizes);\n\t\tthis.validateSrc(this._src);\n\t\tthis.validateSrcset(this._srcset);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<img alt={this.state._alt} loading={this.state._loading} sizes={this.state._sizes} src={this.state._src} srcset={this.state._srcset}></img>\n\t\t\t</Host>\n\t\t);\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{e as watchBoolean,w as watchValidator,i as isString,d as devHint,t as setState,a as a11yHint,B as propagateFocus,n as nonce,l as showExpertSlot}from"./prop.validators.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{v as validateHideError,g as getRenderStates}from"./controller.js";import{I as InputCheckboxRadioController}from"./controller2.js";import{d as defineCustomElement$9}from"./shadow.js";import{d as defineCustomElement$8}from"./component6.js";import{d as defineCustomElement$7}from"./component5.js";import{d as defineCustomElement$6}from"./component4.js";import{d as defineCustomElement$5}from"./component.js";import{d as defineCustomElement$4}from"./component13.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const validateChecked=(e,t)=>{watchBoolean(e,"_checked",t)},validateIndeterminate=(e,t)=>{watchBoolean(e,"_indeterminate",t)};class InputCheckboxController extends InputCheckboxRadioController{constructor(e,t,i){super(e,t,i),this.setFormAssociatedCheckboxValue=e=>{this.component._checked?this.setFormAssociatedValue(e):this.setFormAssociatedValue(null)},this.component=e}validateChecked(e){validateChecked(this.component,e),this.setFormAssociatedCheckboxValue(this.component.state._value)}validateHideError(e){validateHideError(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateIcon(e){this.validateIcons(e)}validateIcons(e){watchValidator(this.component,"_icons",(e=>"object"==typeof e&&null!==e&&(isString(e.checked,1)||isString(e.indeterminate,1)||isString(e.unchecked,1))),new Set(["InputCheckboxIcons"]),e,{hooks:{beforePatch:(e,t,i)=>{t.set("_icons",Object.assign(Object.assign({},i.state._icons),e))}}})}validateIndeterminate(e){validateIndeterminate(this.component,e)}validateType(e){devHint('The "_type" prop is deprecated. Use "_variant" instead.'),this.validateVariant(e)}validateValue(e){setState(this.component,"_value",e),this.setFormAssociatedCheckboxValue(this.component.state._value)}validateVariant(e){"checkbox"===e&&(devHint("[KolCheckbox] The \"_variant\" value 'checkbox' is deprecated. Use the new value 'default' instead."),e="default"),watchValidator(this.component,"_variant",(e=>"string"==typeof e&&("button"===e||"default"===e||"switch"===e)),new Set(["String {button, default, switch}"]),e)}componentWillLoad(){super.componentWillLoad(),this.validateChecked(this.component._checked),this.validateHideError(this.component._hideError),this.validateIcons(this.component._icons||this.component._icon),this.validateIndeterminate(this.component._indeterminate),this.validateValue(this.component._value),this.validateVariant(this.component._variant||this.component._type)}}const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}.required label>span::after,.required legend>span::after{content:'*'}:host{display:block}input,textarea{cursor:text}input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],input[type='range'],label,option,select{cursor:pointer}input[type='color'],input[type='date'],input[type='datetime-local'],input[type='email'],input[type='file'],input[type='month'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='time'],input[type='url'],input[type='week'],select,select[multiple] option,textarea{font-size:1rem;width:100%}input[type='file']{padding:calc((var(--a11y-min-size) - 1rem) / 10) 0.5em}select[multiple] option{padding:calc((var(--a11y-min-size) - 1rem) / 2) 0.5em}kol-input.disabled :is(button,input,label,option,select,textarea){cursor:not-allowed;opacity:0.5}label{cursor:pointer}kol-input{align-items:center;display:grid;justify-items:left}kol-input.default,kol-input.switch{grid-template-columns:auto 1fr}kol-input .input{align-items:center;display:grid;order:1}kol-input .input div{display:inline-flex}kol-input .input input{margin:0}kol-input label{order:2}kol-input .hint,kol-input.error>kol-alert{grid-column:span 2}kol-input kol-alert.error{order:3}kol-input .hint{order:4}.error.hidden{display:none}input{border-style:solid;border-width:2px;line-height:24px}input[type='checkbox']{appearance:none;background-color:#fff;cursor:pointer;transition:0.5s}input[type='checkbox'].kol-disabled:before{cursor:not-allowed}input[type='checkbox']:before{content:'';cursor:pointer}.default kol-icon{display:none}kol-input.required .tooltip-content .span-label::after{content:'*'}.button{display:grid;grid-template-columns:var(--a11y-min-size) auto;grid-template-areas:'error error' 'input label' 'hint hint'}.button[tabindex]:focus{cursor:inherit}.button input{display:none}.button>.error{grid-area:error}.button>label{grid-area:label}.button>.input{grid-area:input}.button>.hint{grid-area:hint}.button .icon{display:flex;align-items:center;justify-content:center;width:var(--a11y-min-size);height:var(--a11y-min-size)}.default input[type='checkbox']{height:1.5em;width:1.5em}.default input[type='checkbox']:before{display:block;height:1.5em;position:relative;width:1.5em}.default input[type='checkbox']:checked:before{border-radius:1px;border-style:solid;border-width:0 3px 3px 0;height:0.75em;left:calc(0.375em - 2px);transform:rotate(40deg) translate(-50%, -50%);top:calc(0.7125em - 2px);width:0.375em}.default input[type='checkbox']:indeterminate:before{background-color:#000;height:0.2em;left:0.24em;top:0.575em;width:0.8em}.switch .input{position:relative}.switch input[type='checkbox']{display:inline-block;height:1.7em;min-width:3.2em;position:relative;width:3.2em}.switch input[type='checkbox']::before{background-color:#000;height:1.2em;left:calc(0.25em - 2px);top:calc(0.25em - 2px);position:absolute;transition:0.5s;width:1.2em}.switch input[type='checkbox']:checked::before{transform:translateX(1.5em)}.switch input[type='checkbox']:indeterminate::before{transform:translateX(0.75em)}.switch .icon{cursor:pointer;display:flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;position:absolute;z-index:1;top:50%;left:4px;transform:translate(0, -50%);transition:0.5s;color:#000}.switch:has(input:checked) .icon{transform:translate(1.5em, -50%)}.switch:has(input:indeterminate) .icon{transform:translate(0.75em, -50%)}",KolInputCheckbox$1=proxyCustomElement(class extends HTMLElement{render(){const{ariaDescribedBy:e}=getRenderStates(this.state),t=showExpertSlot(this.state._label);return h(Host,null,h("kol-input",{class:{checkbox:!0,[this.state._variant]:!0,"hide-label":!!this.state._hideLabel,checked:this.state._checked},"data-role":"button"===this.state._variant?"button":void 0,onKeyPress:"button"===this.state._variant?this.onChange:void 0,tabIndex:"button"===this.state._variant?0:void 0,_alert:this.state._alert,_disabled:this.state._disabled,_error:this.state._error,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_id:this.state._id,_label:this.state._label,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched},h("span",{slot:"label"},t?h("slot",null):this.state._label),h("div",{slot:"input"},h("kol-icon",{class:"icon",onClick:this.handleIconClick.bind(this),_icons:this.state._indeterminate?this.state._icons.indeterminate:this.state._checked?this.state._icons.checked:this.state._icons.unchecked,_label:""}),h("input",Object.assign({ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":e.length>0?e.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,checked:this.state._checked,disabled:this.state._disabled,id:this.state._id,indeterminate:this.state._indeterminate,name:this.state._name,required:this.state._required,tabIndex:this.state._tabIndex,type:"checkbox"},this.controller.onFacade,{onChange:this.onChange,onClick:void 0})))))}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=e=>{this.ref=e,propagateFocus(this.host,this.ref)},this.onChange=e=>{var t;this._checked=!this._checked,this._indeterminate=!1;const i=this._checked?this.state._value:null;stopPropagation(e),tryToDispatchKoliBriEvent("change",this.host,i),this.controller.setFormAssociatedValue(i),"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onChange)&&this.state._on.onChange(e,i)},this._accessKey=void 0,this._alert=!0,this._checked=!1,this._hideError=!1,this._disabled=!1,this._error=void 0,this._hideLabel=!1,this._hint="",this._icon=void 0,this._icons=void 0,this._id=void 0,this._indeterminate=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._required=!1,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._type=void 0,this._value=!0,this._variant=void 0,this.state={_checked:!1,_hideError:!1,_icons:{checked:"codicon codicon-check",indeterminate:"codicon codicon-remove",unchecked:"codicon codicon-add"},_id:`id-${nonce()}`,_indeterminate:!1,_label:"",_value:!0,_variant:"default"},this.controller=new InputCheckboxController(this,"input-checkbox",this.host)}validateAccessKey(e){this.controller.validateAccessKey(e)}validateAlert(e){this.controller.validateAlert(e)}validateChecked(e){this.controller.validateChecked(e)}validateDisabled(e){this.controller.validateDisabled(e)}validateError(e){this.controller.validateError(e)}validateHideError(e){this.controller.validateHideError(e)}validateHideLabel(e){this.controller.validateHideLabel(e)}validateHint(e){this.controller.validateHint(e)}validateIcon(e){this.validateIcons(e)}validateIcons(e){this.controller.validateIcons(e)}validateId(e){this.controller.validateId(e)}validateIndeterminate(e){this.controller.validateIndeterminate(e)}validateLabel(e){this.controller.validateLabel(e)}validateName(e){this.controller.validateName(e)}validateOn(e){this.controller.validateOn(e)}validateRequired(e){this.controller.validateRequired(e)}validateSyncValueBySelector(e){this.controller.validateSyncValueBySelector(e)}validateTabIndex(e){this.controller.validateTabIndex(e)}validateTouched(e){this.controller.validateTouched(e)}validateType(e){this.controller.validateType(e)}validateValue(e){this.controller.validateValue(e)}validateVariant(e){this.controller.validateVariant(e)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad()}handleIconClick(e){this.state._disabled||this.onChange(e)}get host(){return this}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_checked:["validateChecked"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_icons:["validateIcons"],_id:["validateId"],_indeterminate:["validateIndeterminate"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-input-checkbox",{_accessKey:[1,"_access-key"],_alert:[1540],_checked:[1540],_hideError:[1540,"_hide-error"],_disabled:[4],_error:[1],_hideLabel:[4,"_hide-label"],_hint:[1],_icon:[1],_icons:[1],_id:[1],_indeterminate:[1540],_label:[1],_name:[1],_on:[16],_required:[4],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_type:[1],_value:[8],_variant:[1],state:[32]},void 0,{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_checked:["validateChecked"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_icons:["validateIcons"],_id:["validateId"],_indeterminate:["validateIndeterminate"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-input-checkbox","kol-alert","kol-alert-wc","kol-button-wc","kol-heading-wc","kol-icon","kol-input","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-input-checkbox":customElements.get(e)||customElements.define(e,KolInputCheckbox$1);break;case"kol-alert":customElements.get(e)||defineCustomElement$9();break;case"kol-alert-wc":customElements.get(e)||defineCustomElement$8();break;case"kol-button-wc":customElements.get(e)||defineCustomElement$7();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-icon":customElements.get(e)||defineCustomElement$5();break;case"kol-input":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolInputCheckbox=KolInputCheckbox$1,defineCustomElement=defineCustomElement$1;export{KolInputCheckbox,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{e as watchBoolean,w as watchValidator,i as isString,d as devHint,v as setState,a as a11yHint,t as propagateFocus,n as nonce,l as showExpertSlot}from"./prop.validators.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{v as validateHideError,g as getRenderStates}from"./controller.js";import{I as InputCheckboxRadioController}from"./controller2.js";import{d as defineCustomElement$9}from"./shadow.js";import{d as defineCustomElement$8}from"./component6.js";import{d as defineCustomElement$7}from"./component5.js";import{d as defineCustomElement$6}from"./component4.js";import{d as defineCustomElement$5}from"./component.js";import{d as defineCustomElement$4}from"./component13.js";import{d as defineCustomElement$3}from"./component2.js";import{d as defineCustomElement$2}from"./component3.js";const validateChecked=(e,t)=>{watchBoolean(e,"_checked",t)},validateIndeterminate=(e,t)=>{watchBoolean(e,"_indeterminate",t)};class InputCheckboxController extends InputCheckboxRadioController{constructor(e,t,i){super(e,t,i),this.setFormAssociatedCheckboxValue=e=>{this.component._checked?this.setFormAssociatedValue(e):this.setFormAssociatedValue(null)},this.component=e}validateChecked(e){validateChecked(this.component,e),this.setFormAssociatedCheckboxValue(this.component.state._value)}validateHideError(e){validateHideError(this.component,e,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateIcon(e){this.validateIcons(e)}validateIcons(e){watchValidator(this.component,"_icons",(e=>"object"==typeof e&&null!==e&&(isString(e.checked,1)||isString(e.indeterminate,1)||isString(e.unchecked,1))),new Set(["InputCheckboxIcons"]),e,{hooks:{beforePatch:(e,t,i)=>{t.set("_icons",Object.assign(Object.assign({},i.state._icons),e))}}})}validateIndeterminate(e){validateIndeterminate(this.component,e)}validateType(e){devHint('The "_type" prop is deprecated. Use "_variant" instead.'),this.validateVariant(e)}validateValue(e){setState(this.component,"_value",e),this.setFormAssociatedCheckboxValue(this.component.state._value)}validateVariant(e){"checkbox"===e&&(devHint("[KolCheckbox] The \"_variant\" value 'checkbox' is deprecated. Use the new value 'default' instead."),e="default"),watchValidator(this.component,"_variant",(e=>"string"==typeof e&&("button"===e||"default"===e||"switch"===e)),new Set(["String {button, default, switch}"]),e)}componentWillLoad(){super.componentWillLoad(),this.validateChecked(this.component._checked),this.validateHideError(this.component._hideError),this.validateIcons(this.component._icons||this.component._icon),this.validateIndeterminate(this.component._indeterminate),this.validateValue(this.component._value),this.validateVariant(this.component._variant||this.component._type)}}const defaultStyleCss=":host{--a11y-min-size:44px;font-size:inherit}*{font-family:Verdana;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}.required label>span::after,.required legend>span::after{content:'*'}:host{display:block}input,textarea{cursor:text}input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],input[type='range'],label,option,select{cursor:pointer}input[type='color'],input[type='date'],input[type='datetime-local'],input[type='email'],input[type='file'],input[type='month'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='time'],input[type='url'],input[type='week'],select,select[multiple] option,textarea{font-size:1rem;width:100%}input[type='file']{padding:calc((var(--a11y-min-size) - 1rem) / 10) 0.5em}select[multiple] option{padding:calc((var(--a11y-min-size) - 1rem) / 2) 0.5em}kol-input.disabled :is(button,input,label,option,select,textarea){cursor:not-allowed;opacity:0.5}label{cursor:pointer}kol-input{align-items:center;display:grid;justify-items:left}kol-input.default,kol-input.switch{grid-template-columns:auto 1fr}kol-input .input{align-items:center;display:grid;order:1}kol-input .input div{display:inline-flex}kol-input .input input{margin:0}kol-input label{order:2}kol-input .hint,kol-input.error>kol-alert{grid-column:span 2}kol-input kol-alert.error{order:3}kol-input .hint{order:4}.error.hidden{display:none}input{border-style:solid;border-width:2px;line-height:24px}input[type='checkbox']{appearance:none;background-color:#fff;cursor:pointer;transition:0.5s}input[type='checkbox'].kol-disabled:before{cursor:not-allowed}input[type='checkbox']:before{content:'';cursor:pointer}.default kol-icon{display:none}kol-input.required .tooltip-content .span-label::after{content:'*'}.button{display:grid;grid-template-columns:var(--a11y-min-size) auto;grid-template-areas:'error error' 'input label' 'hint hint'}.button[tabindex]:focus{cursor:inherit}.button input{display:none}.button>.error{grid-area:error}.button>label{grid-area:label}.button>.input{grid-area:input}.button>.hint{grid-area:hint}.button .icon{display:flex;align-items:center;justify-content:center;width:var(--a11y-min-size);height:var(--a11y-min-size)}.default input[type='checkbox']{height:1.5em;width:1.5em}.default input[type='checkbox']:before{display:block;height:1.5em;position:relative;width:1.5em}.default input[type='checkbox']:checked:before{border-radius:1px;border-style:solid;border-width:0 3px 3px 0;height:0.75em;left:calc(0.375em - 2px);transform:rotate(40deg) translate(-50%, -50%);top:calc(0.7125em - 2px);width:0.375em}.default input[type='checkbox']:indeterminate:before{background-color:#000;height:0.2em;left:0.24em;top:0.575em;width:0.8em}.switch .input{position:relative}.switch input[type='checkbox']{display:inline-block;height:1.7em;min-width:3.2em;position:relative;width:3.2em}.switch input[type='checkbox']::before{background-color:#000;height:1.2em;left:calc(0.25em - 2px);top:calc(0.25em - 2px);position:absolute;transition:0.5s;width:1.2em}.switch input[type='checkbox']:checked::before{transform:translateX(1.5em)}.switch input[type='checkbox']:indeterminate::before{transform:translateX(0.75em)}.switch .icon{cursor:pointer;display:flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;position:absolute;z-index:1;top:50%;left:4px;transform:translate(0, -50%);transition:0.5s;color:#000}.switch:has(input:checked) .icon{transform:translate(1.5em, -50%)}.switch:has(input:indeterminate) .icon{transform:translate(0.75em, -50%)}",KolInputCheckbox$1=proxyCustomElement(class extends HTMLElement{render(){const{ariaDescribedBy:e}=getRenderStates(this.state),t=showExpertSlot(this.state._label);return h(Host,null,h("kol-input",{class:{checkbox:!0,[this.state._variant]:!0,"hide-label":!!this.state._hideLabel,checked:this.state._checked},"data-role":"button"===this.state._variant?"button":void 0,onKeyPress:"button"===this.state._variant?this.onChange:void 0,tabIndex:"button"!==this.state._variant||this.state._disabled?void 0:0,_alert:this.state._alert,_disabled:this.state._disabled,_error:this.state._error,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_id:this.state._id,_label:this.state._label,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched},h("span",{slot:"label"},t?h("slot",null):this.state._label),h("div",{slot:"input"},h("kol-icon",{class:"icon",onClick:this.handleIconClick.bind(this),_icons:this.state._indeterminate?this.state._icons.indeterminate:this.state._checked?this.state._icons.checked:this.state._icons.unchecked,_label:""}),h("input",Object.assign({ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":e.length>0?e.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,checked:this.state._checked,disabled:this.state._disabled,id:this.state._id,indeterminate:this.state._indeterminate,name:this.state._name,required:this.state._required,tabIndex:this.state._tabIndex,type:"checkbox"},this.controller.onFacade,{onChange:this.onChange,onClick:void 0})))))}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=e=>{propagateFocus(this.host,e)},this.onChange=e=>{var t;this._checked=!this._checked,this._indeterminate=!1;const i=this._checked?this.state._value:null;stopPropagation(e),tryToDispatchKoliBriEvent("change",this.host,i),this.controller.setFormAssociatedValue(i),"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onChange)&&this.state._on.onChange(e,i)},this._accessKey=void 0,this._alert=!0,this._checked=!1,this._hideError=!1,this._disabled=!1,this._error=void 0,this._hideLabel=!1,this._hint="",this._icon=void 0,this._icons=void 0,this._id=void 0,this._indeterminate=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._required=!1,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._type=void 0,this._value=!0,this._variant=void 0,this.state={_checked:!1,_hideError:!1,_icons:{checked:"codicon codicon-check",indeterminate:"codicon codicon-remove",unchecked:"codicon codicon-add"},_id:`id-${nonce()}`,_indeterminate:!1,_label:"",_value:!0,_variant:"default"},this.controller=new InputCheckboxController(this,"input-checkbox",this.host)}validateAccessKey(e){this.controller.validateAccessKey(e)}validateAlert(e){this.controller.validateAlert(e)}validateChecked(e){this.controller.validateChecked(e)}validateDisabled(e){this.controller.validateDisabled(e)}validateError(e){this.controller.validateError(e)}validateHideError(e){this.controller.validateHideError(e)}validateHideLabel(e){this.controller.validateHideLabel(e)}validateHint(e){this.controller.validateHint(e)}validateIcon(e){this.validateIcons(e)}validateIcons(e){this.controller.validateIcons(e)}validateId(e){this.controller.validateId(e)}validateIndeterminate(e){this.controller.validateIndeterminate(e)}validateLabel(e){this.controller.validateLabel(e)}validateName(e){this.controller.validateName(e)}validateOn(e){this.controller.validateOn(e)}validateRequired(e){this.controller.validateRequired(e)}validateSyncValueBySelector(e){this.controller.validateSyncValueBySelector(e)}validateTabIndex(e){this.controller.validateTabIndex(e)}validateTouched(e){this.controller.validateTouched(e)}validateType(e){this.controller.validateType(e)}validateValue(e){this.controller.validateValue(e)}validateVariant(e){this.controller.validateVariant(e)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad()}handleIconClick(e){this.state._disabled||this.onChange(e)}get host(){return this}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_checked:["validateChecked"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_icons:["validateIcons"],_id:["validateId"],_indeterminate:["validateIndeterminate"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}static get style(){return{default:defaultStyleCss}}},[33,"kol-input-checkbox",{_accessKey:[1,"_access-key"],_alert:[1540],_checked:[1540],_hideError:[1540,"_hide-error"],_disabled:[4],_error:[1],_hideLabel:[4,"_hide-label"],_hint:[1],_icon:[1],_icons:[1],_id:[1],_indeterminate:[1540],_label:[1],_name:[1],_on:[16],_required:[4],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_type:[1],_value:[8],_variant:[1],state:[32]},void 0,{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_checked:["validateChecked"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_icons:["validateIcons"],_id:["validateId"],_indeterminate:["validateIndeterminate"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-input-checkbox","kol-alert","kol-alert-wc","kol-button-wc","kol-heading-wc","kol-icon","kol-input","kol-span-wc","kol-tooltip-wc"].forEach((e=>{switch(e){case"kol-input-checkbox":customElements.get(e)||customElements.define(e,KolInputCheckbox$1);break;case"kol-alert":customElements.get(e)||defineCustomElement$9();break;case"kol-alert-wc":customElements.get(e)||defineCustomElement$8();break;case"kol-button-wc":customElements.get(e)||defineCustomElement$7();break;case"kol-heading-wc":customElements.get(e)||defineCustomElement$6();break;case"kol-icon":customElements.get(e)||defineCustomElement$5();break;case"kol-input":customElements.get(e)||defineCustomElement$4();break;case"kol-span-wc":customElements.get(e)||defineCustomElement$3();break;case"kol-tooltip-wc":customElements.get(e)||defineCustomElement$2()}}))}const KolInputCheckbox=KolInputCheckbox$1,defineCustomElement=defineCustomElement$1;export{KolInputCheckbox,defineCustomElement};