@public-ui/components 1.5.0-rc.8 → 1.5.0

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 (1088) hide show
  1. package/assets/codicons/LICENSE +395 -0
  2. package/assets/codicons/LICENSE-CODE +21 -0
  3. package/assets/codicons/codicon.css +571 -0
  4. package/assets/codicons/codicon.csv +421 -0
  5. package/assets/codicons/codicon.html +3871 -0
  6. package/assets/codicons/codicon.svg +1 -0
  7. package/assets/codicons/codicon.ttf +0 -0
  8. package/assets/kolibri.ico +0 -0
  9. package/cheat-sheet.html +181 -173
  10. package/custom-elements.json +426 -271
  11. package/dist/cjs/{a11y.tipps-d37919af.js → a11y.tipps-6f0ad06e.js} +1 -1
  12. package/dist/cjs/{a11y.tipps-d37919af.js.map → a11y.tipps-6f0ad06e.js.map} +1 -1
  13. package/dist/cjs/{app-globals-6eda606a.js → app-globals-a5083cd8.js} +1 -1
  14. package/dist/cjs/{app-globals-6eda606a.js.map → app-globals-a5083cd8.js.map} +1 -1
  15. package/dist/cjs/aria-selected-3d69f172.js +4 -0
  16. package/dist/cjs/aria-selected-3d69f172.js.map +1 -0
  17. package/dist/cjs/button-link-78099d0b.js +4 -0
  18. package/dist/cjs/button-link-78099d0b.js.map +1 -0
  19. package/dist/cjs/color-dd2a83b7.js +4 -0
  20. package/dist/cjs/color-dd2a83b7.js.map +1 -0
  21. package/dist/cjs/controller-0dc3063e.js +4 -0
  22. package/dist/cjs/controller-0dc3063e.js.map +1 -0
  23. package/dist/cjs/{controller-5565d7af.js → controller-1a0e56e5.js} +1 -1
  24. package/dist/cjs/controller-1a0e56e5.js.map +1 -0
  25. package/dist/cjs/{controller-21a6eac9.js → controller-47ec1d99.js} +1 -1
  26. package/dist/cjs/{controller-21a6eac9.js.map → controller-47ec1d99.js.map} +1 -1
  27. package/dist/cjs/{controller-41024136.js → controller-4c51f1d0.js} +1 -1
  28. package/dist/cjs/controller-4c51f1d0.js.map +1 -0
  29. package/dist/cjs/controller-974e72cd.js +4 -0
  30. package/dist/cjs/{controller-830760de.js.map → controller-974e72cd.js.map} +1 -1
  31. package/dist/cjs/{controller-e17991a8.js → controller-f5d21db5.js} +1 -1
  32. package/dist/cjs/controller-f5d21db5.js.map +1 -0
  33. package/dist/cjs/{controller-icon-f69a8b14.js → controller-icon-8a67d498.js} +1 -1
  34. package/dist/cjs/controller-icon-8a67d498.js.map +1 -0
  35. package/dist/cjs/{dev.utils-4142fd37.js → dev.utils-d69c0a9f.js} +1 -1
  36. package/dist/cjs/{dev.utils-4142fd37.js.map → dev.utils-d69c0a9f.js.map} +1 -1
  37. package/dist/cjs/{devtools-78d46952.js → devtools-a1501143.js} +1 -1
  38. package/dist/cjs/{devtools-78d46952.js.map → devtools-a1501143.js.map} +1 -1
  39. package/dist/cjs/disabled-0893d275.js +4 -0
  40. package/dist/cjs/disabled-0893d275.js.map +1 -0
  41. package/dist/cjs/floating-ui.dom.esm-a89c1e0e.js +4 -0
  42. package/dist/cjs/floating-ui.dom.esm-a89c1e0e.js.map +1 -0
  43. package/dist/cjs/hide-label-142676e3.js +4 -0
  44. package/dist/cjs/hide-label-142676e3.js.map +1 -0
  45. package/dist/cjs/{i18n-f4e2ff1a.js → i18n-c5c6847b.js} +1 -1
  46. package/dist/cjs/{i18n-f4e2ff1a.js.map → i18n-c5c6847b.js.map} +1 -1
  47. package/dist/cjs/{icon-e4f3e165.js → icon-d0c5f305.js} +1 -1
  48. package/dist/cjs/icon-d0c5f305.js.map +1 -0
  49. package/dist/cjs/index-2f320bab.js +5 -0
  50. package/dist/cjs/index-2f320bab.js.map +1 -0
  51. package/dist/cjs/{index-eb52922f.js → index-7159f3d9.js} +1 -1
  52. package/dist/cjs/index-7159f3d9.js.map +1 -0
  53. package/dist/cjs/index-9c91e91b.js +4 -0
  54. package/dist/cjs/index-9c91e91b.js.map +1 -0
  55. package/dist/cjs/index.cjs.js +1 -1
  56. package/dist/cjs/index.cjs.js.map +1 -1
  57. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +4 -0
  62. package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -0
  63. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  75. package/dist/cjs/kol-button-wc_3.cjs.entry.js +4 -0
  76. package/dist/cjs/kol-button-wc_3.cjs.entry.js.map +1 -0
  77. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-popover.cjs.entry.js +4 -0
  139. package/dist/cjs/kol-popover.cjs.entry.js.map +1 -0
  140. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  141. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  142. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  144. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  145. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  146. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  151. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  152. package/dist/cjs/kol-split-button.cjs.entry.js +4 -0
  153. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -0
  154. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  155. package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
  156. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  157. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  158. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  159. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  160. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  161. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  162. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  163. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  164. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  165. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  166. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  167. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  168. package/dist/cjs/kolibri.cjs.js +1 -1
  169. package/dist/cjs/kolibri.cjs.js.map +1 -1
  170. package/dist/cjs/label-77683d7b.js +4 -0
  171. package/dist/cjs/label-77683d7b.js.map +1 -0
  172. package/dist/cjs/loader.cjs.js +1 -1
  173. package/dist/cjs/loader.cjs.js.map +1 -1
  174. package/dist/cjs/{prop.validators-6a254bcc.js → prop.validators-d6eed32b.js} +1 -1
  175. package/dist/cjs/{prop.validators-6a254bcc.js.map → prop.validators-d6eed32b.js.map} +1 -1
  176. package/dist/cjs/reuse-0fe7470f.js +4 -0
  177. package/dist/cjs/{reuse-bbd0b4e7.js.map → reuse-0fe7470f.js.map} +1 -1
  178. package/dist/cjs/show-6e36cda5.js +4 -0
  179. package/dist/cjs/show-6e36cda5.js.map +1 -0
  180. package/dist/cjs/{tab-index-f37e79c5.js → tab-index-9fcb9e3f.js} +1 -1
  181. package/dist/cjs/{tab-index-f37e79c5.js.map → tab-index-9fcb9e3f.js.map} +1 -1
  182. package/dist/cjs/validation-423d5cd3.js +4 -0
  183. package/dist/cjs/{validation-ce77567d.js.map → validation-423d5cd3.js.map} +1 -1
  184. package/dist/cjs/{validation-fa80f868.js → validation-5c91bbc8.js} +1 -1
  185. package/dist/cjs/{validation-fa80f868.js.map → validation-5c91bbc8.js.map} +1 -1
  186. package/dist/components/aria-selected.js +4 -0
  187. package/dist/components/aria-selected.js.map +1 -0
  188. package/dist/components/color.js +4 -0
  189. package/dist/components/color.js.map +1 -0
  190. package/dist/components/component.js +1 -1
  191. package/dist/components/component.js.map +1 -1
  192. package/dist/components/component10.js +1 -1
  193. package/dist/components/component10.js.map +1 -1
  194. package/dist/components/component11.js +1 -1
  195. package/dist/components/component11.js.map +1 -1
  196. package/dist/components/component12.js +1 -1
  197. package/dist/components/component12.js.map +1 -1
  198. package/dist/components/component13.js +1 -1
  199. package/dist/components/component13.js.map +1 -1
  200. package/dist/components/component14.js +4 -0
  201. package/dist/components/component14.js.map +1 -0
  202. package/dist/components/component15.js +4 -0
  203. package/dist/components/component15.js.map +1 -0
  204. package/dist/components/component2.js +1 -1
  205. package/dist/components/component2.js.map +1 -1
  206. package/dist/components/component3.js +1 -1
  207. package/dist/components/component3.js.map +1 -1
  208. package/dist/components/component4.js +1 -1
  209. package/dist/components/component4.js.map +1 -1
  210. package/dist/components/component5.js +1 -1
  211. package/dist/components/component5.js.map +1 -1
  212. package/dist/components/component6.js +1 -1
  213. package/dist/components/component6.js.map +1 -1
  214. package/dist/components/component7.js +1 -1
  215. package/dist/components/component7.js.map +1 -1
  216. package/dist/components/component8.js +1 -1
  217. package/dist/components/component8.js.map +1 -1
  218. package/dist/components/component9.js +1 -1
  219. package/dist/components/component9.js.map +1 -1
  220. package/dist/components/controller-icon.js +1 -1
  221. package/dist/components/controller-icon.js.map +1 -1
  222. package/dist/components/controller.js +1 -1
  223. package/dist/components/controller.js.map +1 -1
  224. package/dist/components/controller2.js +1 -1
  225. package/dist/components/controller2.js.map +1 -1
  226. package/dist/components/controller3.js +1 -1
  227. package/dist/components/controller3.js.map +1 -1
  228. package/dist/components/controller4.js +1 -1
  229. package/dist/components/controller4.js.map +1 -1
  230. package/dist/components/devtools.js +1 -1
  231. package/dist/components/floating-ui.dom.esm.js +4 -0
  232. package/dist/components/floating-ui.dom.esm.js.map +1 -0
  233. package/dist/components/hide-label.js +4 -0
  234. package/dist/components/hide-label.js.map +1 -0
  235. package/dist/components/i18n.js +1 -1
  236. package/dist/components/i18n.js.map +1 -1
  237. package/dist/components/index.js +1 -1
  238. package/dist/components/index.js.map +1 -1
  239. package/dist/components/kol-abbr.js +1 -1
  240. package/dist/components/kol-abbr.js.map +1 -1
  241. package/dist/components/kol-accordion.js +1 -1
  242. package/dist/components/kol-accordion.js.map +1 -1
  243. package/dist/components/kol-alert-wc.d.ts +11 -0
  244. package/dist/components/kol-alert-wc.js +4 -0
  245. package/dist/components/kol-alert-wc.js.map +1 -0
  246. package/dist/components/kol-alert.js +1 -1
  247. package/dist/components/kol-badge.js +1 -1
  248. package/dist/components/kol-breadcrumb.js +1 -1
  249. package/dist/components/kol-breadcrumb.js.map +1 -1
  250. package/dist/components/kol-button-group-wc.js +1 -1
  251. package/dist/components/kol-button-group.js +1 -1
  252. package/dist/components/kol-button-group.js.map +1 -1
  253. package/dist/components/kol-button-link.js +1 -1
  254. package/dist/components/kol-button-link.js.map +1 -1
  255. package/dist/components/kol-button-wc.js +1 -1
  256. package/dist/components/kol-button.js +1 -1
  257. package/dist/components/kol-card.js +1 -1
  258. package/dist/components/kol-card.js.map +1 -1
  259. package/dist/components/kol-details.js +1 -1
  260. package/dist/components/kol-details.js.map +1 -1
  261. package/dist/components/kol-form.js +1 -1
  262. package/dist/components/kol-form.js.map +1 -1
  263. package/dist/components/kol-heading.js +1 -1
  264. package/dist/components/kol-heading.js.map +1 -1
  265. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  266. package/dist/components/kol-icon-icofont.js.map +1 -1
  267. package/dist/components/kol-image.js +1 -1
  268. package/dist/components/kol-image.js.map +1 -1
  269. package/dist/components/kol-indented-text.js +1 -1
  270. package/dist/components/kol-input-adapter-leanup.js +1 -1
  271. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  272. package/dist/components/kol-input-checkbox.js +1 -1
  273. package/dist/components/kol-input-checkbox.js.map +1 -1
  274. package/dist/components/kol-input-color.js +1 -1
  275. package/dist/components/kol-input-color.js.map +1 -1
  276. package/dist/components/kol-input-date.js +1 -1
  277. package/dist/components/kol-input-date.js.map +1 -1
  278. package/dist/components/kol-input-email.js +1 -1
  279. package/dist/components/kol-input-email.js.map +1 -1
  280. package/dist/components/kol-input-file.js +1 -1
  281. package/dist/components/kol-input-file.js.map +1 -1
  282. package/dist/components/kol-input-number.js +1 -1
  283. package/dist/components/kol-input-password.js +1 -1
  284. package/dist/components/kol-input-password.js.map +1 -1
  285. package/dist/components/kol-input-radio-group.js +1 -1
  286. package/dist/components/kol-input-radio-group.js.map +1 -1
  287. package/dist/components/kol-input-radio.js +1 -1
  288. package/dist/components/kol-input-range.js +1 -1
  289. package/dist/components/kol-input-range.js.map +1 -1
  290. package/dist/components/kol-input-text.js +1 -1
  291. package/dist/components/kol-input-text.js.map +1 -1
  292. package/dist/components/kol-input.js +1 -1
  293. package/dist/components/kol-kolibri.js +1 -1
  294. package/dist/components/kol-kolibri.js.map +1 -1
  295. package/dist/components/kol-link-button.js +1 -1
  296. package/dist/components/kol-link-button.js.map +1 -1
  297. package/dist/components/kol-link-group.js +1 -1
  298. package/dist/components/kol-link-group.js.map +1 -1
  299. package/dist/components/kol-link-wc.js +1 -1
  300. package/dist/components/kol-link.js +1 -1
  301. package/dist/components/kol-logo.js +1 -1
  302. package/dist/components/kol-logo.js.map +1 -1
  303. package/dist/components/kol-modal.js +1 -1
  304. package/dist/components/kol-modal.js.map +1 -1
  305. package/dist/components/kol-nav.js +1 -1
  306. package/dist/components/kol-nav.js.map +1 -1
  307. package/dist/components/kol-pagination.js +1 -1
  308. package/dist/components/kol-popover.d.ts +11 -0
  309. package/dist/components/kol-popover.js +4 -0
  310. package/dist/components/kol-popover.js.map +1 -0
  311. package/dist/components/kol-progress.js +1 -1
  312. package/dist/components/kol-progress.js.map +1 -1
  313. package/dist/components/kol-quote.js +1 -1
  314. package/dist/components/kol-quote.js.map +1 -1
  315. package/dist/components/kol-select.js +1 -1
  316. package/dist/components/kol-skip-nav.js +1 -1
  317. package/dist/components/kol-skip-nav.js.map +1 -1
  318. package/dist/components/kol-span.js +1 -1
  319. package/dist/components/kol-span.js.map +1 -1
  320. package/dist/components/kol-spin.js +1 -1
  321. package/dist/components/kol-spin.js.map +1 -1
  322. package/dist/components/kol-split-button.d.ts +11 -0
  323. package/dist/components/kol-split-button.js +4 -0
  324. package/dist/components/kol-split-button.js.map +1 -0
  325. package/dist/components/kol-symbol.js.map +1 -1
  326. package/dist/components/kol-table.js +1 -1
  327. package/dist/components/kol-table.js.map +1 -1
  328. package/dist/components/kol-tabs.js +1 -1
  329. package/dist/components/kol-tabs.js.map +1 -1
  330. package/dist/components/kol-textarea.js +1 -1
  331. package/dist/components/kol-textarea.js.map +1 -1
  332. package/dist/components/kol-toast.js +1 -1
  333. package/dist/components/kol-toast.js.map +1 -1
  334. package/dist/components/kol-tooltip.js +1 -1
  335. package/dist/components/kol-version.js +1 -1
  336. package/dist/components/kol-version.js.map +1 -1
  337. package/dist/components/prop.validators.js +1 -1
  338. package/dist/components/prop.validators.js.map +1 -1
  339. package/dist/components/shadow.js +1 -1
  340. package/dist/components/shadow.js.map +1 -1
  341. package/dist/components/shadow2.js +1 -1
  342. package/dist/components/shadow2.js.map +1 -1
  343. package/dist/components/shadow3.js +4 -0
  344. package/dist/components/shadow3.js.map +1 -0
  345. package/dist/components/show.js +4 -0
  346. package/dist/components/show.js.map +1 -0
  347. package/dist/components/tab-index.js +4 -0
  348. package/dist/components/tab-index.js.map +1 -0
  349. package/dist/components/validation.js +1 -1
  350. package/dist/esm/{a11y.tipps-5ca36877.js → a11y.tipps-1cea9822.js} +1 -1
  351. package/dist/esm/{a11y.tipps-5ca36877.js.map → a11y.tipps-1cea9822.js.map} +1 -1
  352. package/dist/esm/app-globals-6ba5ef2f.js +4 -0
  353. package/dist/esm/{app-globals-08fd5e4e.js.map → app-globals-6ba5ef2f.js.map} +1 -1
  354. package/dist/esm/aria-selected-aaf31182.js +4 -0
  355. package/dist/esm/aria-selected-aaf31182.js.map +1 -0
  356. package/dist/esm/{button-link-249585bf.js → button-link-4a7e6a2e.js} +1 -1
  357. package/dist/esm/button-link-4a7e6a2e.js.map +1 -0
  358. package/dist/esm/color-0e8ca0ca.js +4 -0
  359. package/dist/esm/color-0e8ca0ca.js.map +1 -0
  360. package/dist/esm/controller-0cf6cd75.js +4 -0
  361. package/dist/esm/{controller-bf4a0bc1.js.map → controller-0cf6cd75.js.map} +1 -1
  362. package/dist/esm/{controller-ca954299.js → controller-1ec68c46.js} +1 -1
  363. package/dist/esm/controller-1ec68c46.js.map +1 -0
  364. package/dist/esm/{controller-08af836c.js → controller-3e94c3f2.js} +1 -1
  365. package/dist/esm/controller-3e94c3f2.js.map +1 -0
  366. package/dist/esm/controller-53ddde7c.js +4 -0
  367. package/dist/esm/controller-53ddde7c.js.map +1 -0
  368. package/dist/esm/{controller-03e00b6c.js → controller-830cac3b.js} +1 -1
  369. package/dist/esm/controller-830cac3b.js.map +1 -0
  370. package/dist/esm/{controller-ac44fc5f.js → controller-985aff52.js} +1 -1
  371. package/dist/esm/{controller-ac44fc5f.js.map → controller-985aff52.js.map} +1 -1
  372. package/dist/esm/{controller-icon-fb82236a.js → controller-icon-26c0e34a.js} +1 -1
  373. package/dist/esm/controller-icon-26c0e34a.js.map +1 -0
  374. package/dist/esm/{dev.utils-bedce29d.js → dev.utils-157f0499.js} +1 -1
  375. package/dist/esm/{dev.utils-bedce29d.js.map → dev.utils-157f0499.js.map} +1 -1
  376. package/dist/esm/{devtools-525ee939.js → devtools-33f1b614.js} +1 -1
  377. package/dist/esm/{devtools-525ee939.js.map → devtools-33f1b614.js.map} +1 -1
  378. package/dist/esm/disabled-9bd11a04.js +4 -0
  379. package/dist/esm/disabled-9bd11a04.js.map +1 -0
  380. package/dist/esm/floating-ui.dom.esm-735f9fad.js +4 -0
  381. package/dist/esm/floating-ui.dom.esm-735f9fad.js.map +1 -0
  382. package/dist/esm/hide-label-5d7003be.js +4 -0
  383. package/dist/esm/hide-label-5d7003be.js.map +1 -0
  384. package/dist/esm/{i18n-97355570.js → i18n-81ce19c0.js} +1 -1
  385. package/dist/esm/{i18n-97355570.js.map → i18n-81ce19c0.js.map} +1 -1
  386. package/dist/esm/{icon-970694a7.js → icon-dfcf642a.js} +1 -1
  387. package/dist/esm/icon-dfcf642a.js.map +1 -0
  388. package/dist/esm/index-0e29e47a.js +5 -0
  389. package/dist/esm/index-0e29e47a.js.map +1 -0
  390. package/dist/esm/index-133da8ac.js +4 -0
  391. package/dist/esm/index-133da8ac.js.map +1 -0
  392. package/dist/esm/{index-81bd9b41.js → index-f4596895.js} +1 -1
  393. package/dist/esm/index-f4596895.js.map +1 -0
  394. package/dist/esm/index.js +1 -1
  395. package/dist/esm/index.js.map +1 -1
  396. package/dist/esm/kol-abbr.entry.js +1 -1
  397. package/dist/esm/kol-abbr.entry.js.map +1 -1
  398. package/dist/esm/kol-accordion.entry.js +1 -1
  399. package/dist/esm/kol-accordion.entry.js.map +1 -1
  400. package/dist/esm/kol-alert-wc_2.entry.js +4 -0
  401. package/dist/esm/kol-alert-wc_2.entry.js.map +1 -0
  402. package/dist/esm/kol-alert.entry.js +1 -1
  403. package/dist/esm/kol-alert.entry.js.map +1 -1
  404. package/dist/esm/kol-badge.entry.js +1 -1
  405. package/dist/esm/kol-badge.entry.js.map +1 -1
  406. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  407. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  408. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  409. package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
  410. package/dist/esm/kol-button-group.entry.js +1 -1
  411. package/dist/esm/kol-button-group.entry.js.map +1 -1
  412. package/dist/esm/kol-button-link.entry.js +1 -1
  413. package/dist/esm/kol-button-link.entry.js.map +1 -1
  414. package/dist/esm/kol-button-wc_3.entry.js +4 -0
  415. package/dist/esm/kol-button-wc_3.entry.js.map +1 -0
  416. package/dist/esm/kol-button.entry.js +1 -1
  417. package/dist/esm/kol-button.entry.js.map +1 -1
  418. package/dist/esm/kol-card.entry.js +1 -1
  419. package/dist/esm/kol-card.entry.js.map +1 -1
  420. package/dist/esm/kol-details.entry.js +1 -1
  421. package/dist/esm/kol-details.entry.js.map +1 -1
  422. package/dist/esm/kol-form.entry.js +1 -1
  423. package/dist/esm/kol-form.entry.js.map +1 -1
  424. package/dist/esm/kol-heading.entry.js +1 -1
  425. package/dist/esm/kol-heading.entry.js.map +1 -1
  426. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  427. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  428. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  429. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  430. package/dist/esm/kol-icon.entry.js +1 -1
  431. package/dist/esm/kol-icon.entry.js.map +1 -1
  432. package/dist/esm/kol-image.entry.js +1 -1
  433. package/dist/esm/kol-image.entry.js.map +1 -1
  434. package/dist/esm/kol-indented-text.entry.js +1 -1
  435. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  436. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  437. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  438. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  439. package/dist/esm/kol-input-color.entry.js +1 -1
  440. package/dist/esm/kol-input-color.entry.js.map +1 -1
  441. package/dist/esm/kol-input-date.entry.js +1 -1
  442. package/dist/esm/kol-input-date.entry.js.map +1 -1
  443. package/dist/esm/kol-input-email.entry.js +1 -1
  444. package/dist/esm/kol-input-email.entry.js.map +1 -1
  445. package/dist/esm/kol-input-file.entry.js +1 -1
  446. package/dist/esm/kol-input-file.entry.js.map +1 -1
  447. package/dist/esm/kol-input-number.entry.js +1 -1
  448. package/dist/esm/kol-input-number.entry.js.map +1 -1
  449. package/dist/esm/kol-input-password.entry.js +1 -1
  450. package/dist/esm/kol-input-password.entry.js.map +1 -1
  451. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  452. package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
  453. package/dist/esm/kol-input-radio.entry.js +1 -1
  454. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  455. package/dist/esm/kol-input-range.entry.js +1 -1
  456. package/dist/esm/kol-input-range.entry.js.map +1 -1
  457. package/dist/esm/kol-input-text.entry.js +1 -1
  458. package/dist/esm/kol-input-text.entry.js.map +1 -1
  459. package/dist/esm/kol-kolibri.entry.js +1 -1
  460. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  461. package/dist/esm/kol-link-button.entry.js +1 -1
  462. package/dist/esm/kol-link-button.entry.js.map +1 -1
  463. package/dist/esm/kol-link-group.entry.js +1 -1
  464. package/dist/esm/kol-link-group.entry.js.map +1 -1
  465. package/dist/esm/kol-link-wc.entry.js +1 -1
  466. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  467. package/dist/esm/kol-link.entry.js +1 -1
  468. package/dist/esm/kol-link.entry.js.map +1 -1
  469. package/dist/esm/kol-logo.entry.js +1 -1
  470. package/dist/esm/kol-logo.entry.js.map +1 -1
  471. package/dist/esm/kol-modal.entry.js +1 -1
  472. package/dist/esm/kol-modal.entry.js.map +1 -1
  473. package/dist/esm/kol-nav.entry.js +1 -1
  474. package/dist/esm/kol-nav.entry.js.map +1 -1
  475. package/dist/esm/kol-pagination.entry.js +1 -1
  476. package/dist/esm/kol-pagination.entry.js.map +1 -1
  477. package/dist/esm/kol-popover.entry.js +4 -0
  478. package/dist/esm/kol-popover.entry.js.map +1 -0
  479. package/dist/esm/kol-progress.entry.js +1 -1
  480. package/dist/esm/kol-progress.entry.js.map +1 -1
  481. package/dist/esm/kol-quote.entry.js +1 -1
  482. package/dist/esm/kol-quote.entry.js.map +1 -1
  483. package/dist/esm/kol-select.entry.js +1 -1
  484. package/dist/esm/kol-select.entry.js.map +1 -1
  485. package/dist/esm/kol-skip-nav.entry.js +1 -1
  486. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  487. package/dist/esm/kol-span.entry.js +1 -1
  488. package/dist/esm/kol-span.entry.js.map +1 -1
  489. package/dist/esm/kol-spin.entry.js +1 -1
  490. package/dist/esm/kol-spin.entry.js.map +1 -1
  491. package/dist/esm/kol-split-button.entry.js +4 -0
  492. package/dist/esm/kol-split-button.entry.js.map +1 -0
  493. package/dist/esm/kol-symbol.entry.js +1 -1
  494. package/dist/esm/kol-symbol.entry.js.map +1 -1
  495. package/dist/esm/kol-table.entry.js +1 -1
  496. package/dist/esm/kol-table.entry.js.map +1 -1
  497. package/dist/esm/kol-tabs.entry.js +1 -1
  498. package/dist/esm/kol-tabs.entry.js.map +1 -1
  499. package/dist/esm/kol-textarea.entry.js +1 -1
  500. package/dist/esm/kol-textarea.entry.js.map +1 -1
  501. package/dist/esm/kol-toast.entry.js +1 -1
  502. package/dist/esm/kol-toast.entry.js.map +1 -1
  503. package/dist/esm/kol-tooltip.entry.js +1 -1
  504. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  505. package/dist/esm/kol-version.entry.js +1 -1
  506. package/dist/esm/kol-version.entry.js.map +1 -1
  507. package/dist/esm/kolibri.js +1 -1
  508. package/dist/esm/kolibri.js.map +1 -1
  509. package/dist/esm/label-4bfc9d30.js +4 -0
  510. package/dist/esm/label-4bfc9d30.js.map +1 -0
  511. package/dist/esm/loader.js +1 -1
  512. package/dist/esm/loader.js.map +1 -1
  513. package/dist/esm/{prop.validators-1f3db013.js → prop.validators-e15a584f.js} +1 -1
  514. package/dist/esm/{prop.validators-1f3db013.js.map → prop.validators-e15a584f.js.map} +1 -1
  515. package/dist/esm/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +1 -1
  516. package/dist/esm/{reuse-56bb5a4b.js.map → reuse-3a02afb9.js.map} +1 -1
  517. package/dist/esm/show-f85eb6d8.js +4 -0
  518. package/dist/esm/show-f85eb6d8.js.map +1 -0
  519. package/dist/esm/{tab-index-97fed287.js → tab-index-eff012a1.js} +1 -1
  520. package/dist/esm/{tab-index-97fed287.js.map → tab-index-eff012a1.js.map} +1 -1
  521. package/dist/esm/validation-d4aeea71.js +4 -0
  522. package/dist/esm/{validation-b0614edd.js.map → validation-d4aeea71.js.map} +1 -1
  523. package/dist/esm/validation-ec53a8be.js +4 -0
  524. package/dist/esm/{validation-2bb481bd.js.map → validation-ec53a8be.js.map} +1 -1
  525. package/dist/kolibri/{a11y.tipps-5ca36877.js → a11y.tipps-1cea9822.js} +1 -1
  526. package/dist/kolibri/app-globals-6ba5ef2f.js +4 -0
  527. package/dist/kolibri/aria-selected-aaf31182.js +4 -0
  528. package/dist/kolibri/aria-selected-aaf31182.js.map +1 -0
  529. package/dist/kolibri/assets/codicons/LICENSE +394 -394
  530. package/dist/kolibri/assets/codicons/LICENSE-CODE +21 -21
  531. package/dist/kolibri/assets/popover-simulation.js +1 -0
  532. package/dist/kolibri/assets/progress-simulation.js +1 -1
  533. package/dist/kolibri/{button-link-249585bf.js → button-link-4a7e6a2e.js} +1 -1
  534. package/dist/kolibri/button-link-4a7e6a2e.js.map +1 -0
  535. package/dist/kolibri/color-0e8ca0ca.js +4 -0
  536. package/dist/kolibri/color-0e8ca0ca.js.map +1 -0
  537. package/dist/kolibri/{controller-bf4a0bc1.js → controller-0cf6cd75.js} +1 -1
  538. package/dist/kolibri/controller-0cf6cd75.js.map +1 -0
  539. package/dist/kolibri/{controller-ca954299.js → controller-1ec68c46.js} +1 -1
  540. package/dist/kolibri/controller-1ec68c46.js.map +1 -0
  541. package/dist/kolibri/{controller-08af836c.js → controller-3e94c3f2.js} +1 -1
  542. package/dist/kolibri/controller-3e94c3f2.js.map +1 -0
  543. package/dist/kolibri/controller-53ddde7c.js +4 -0
  544. package/dist/kolibri/controller-53ddde7c.js.map +1 -0
  545. package/dist/kolibri/controller-830cac3b.js +4 -0
  546. package/dist/kolibri/controller-830cac3b.js.map +1 -0
  547. package/dist/kolibri/controller-985aff52.js +4 -0
  548. package/dist/kolibri/{controller-icon-fb82236a.js → controller-icon-26c0e34a.js} +1 -1
  549. package/dist/kolibri/controller-icon-26c0e34a.js.map +1 -0
  550. package/dist/kolibri/{dev.utils-bedce29d.js → dev.utils-157f0499.js} +1 -1
  551. package/dist/kolibri/dev.utils-157f0499.js.map +1 -0
  552. package/dist/kolibri/{devtools-525ee939.js → devtools-33f1b614.js} +1 -1
  553. package/dist/kolibri/disabled-9bd11a04.js +4 -0
  554. package/dist/kolibri/disabled-9bd11a04.js.map +1 -0
  555. package/dist/kolibri/floating-ui.dom.esm-735f9fad.js +4 -0
  556. package/dist/kolibri/floating-ui.dom.esm-735f9fad.js.map +1 -0
  557. package/dist/kolibri/hide-label-5d7003be.js +4 -0
  558. package/dist/kolibri/hide-label-5d7003be.js.map +1 -0
  559. package/dist/kolibri/{i18n-97355570.js → i18n-81ce19c0.js} +1 -1
  560. package/dist/kolibri/{icon-970694a7.js → icon-dfcf642a.js} +1 -1
  561. package/dist/kolibri/icon-dfcf642a.js.map +1 -0
  562. package/dist/kolibri/index-0e29e47a.js +5 -0
  563. package/dist/kolibri/index-0e29e47a.js.map +1 -0
  564. package/dist/kolibri/index-133da8ac.js +4 -0
  565. package/dist/kolibri/index-133da8ac.js.map +1 -0
  566. package/dist/kolibri/index-f4596895.js +4 -0
  567. package/dist/kolibri/index-f4596895.js.map +1 -0
  568. package/dist/kolibri/index.esm.js +1 -1
  569. package/dist/kolibri/index.esm.js.map +1 -1
  570. package/dist/kolibri/kol-abbr.entry.js +1 -1
  571. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  572. package/dist/kolibri/kol-accordion.entry.js +1 -1
  573. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  574. package/dist/kolibri/kol-alert-wc_2.entry.js +4 -0
  575. package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -0
  576. package/dist/kolibri/kol-alert.entry.js +1 -1
  577. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  578. package/dist/kolibri/kol-badge.entry.js +1 -1
  579. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  580. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  581. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  582. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  583. package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
  584. package/dist/kolibri/kol-button-group.entry.js +1 -1
  585. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  586. package/dist/kolibri/kol-button-link.entry.js +1 -1
  587. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  588. package/dist/kolibri/kol-button-wc_3.entry.js +4 -0
  589. package/dist/kolibri/kol-button-wc_3.entry.js.map +1 -0
  590. package/dist/kolibri/kol-button.entry.js +1 -1
  591. package/dist/kolibri/kol-button.entry.js.map +1 -1
  592. package/dist/kolibri/kol-card.entry.js +1 -1
  593. package/dist/kolibri/kol-card.entry.js.map +1 -1
  594. package/dist/kolibri/kol-details.entry.js +1 -1
  595. package/dist/kolibri/kol-details.entry.js.map +1 -1
  596. package/dist/kolibri/kol-form.entry.js +1 -1
  597. package/dist/kolibri/kol-form.entry.js.map +1 -1
  598. package/dist/kolibri/kol-heading.entry.js +1 -1
  599. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  600. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  601. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  602. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  603. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  604. package/dist/kolibri/kol-icon.entry.js +1 -1
  605. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  606. package/dist/kolibri/kol-image.entry.js +1 -1
  607. package/dist/kolibri/kol-image.entry.js.map +1 -1
  608. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  609. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  610. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  611. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  612. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  613. package/dist/kolibri/kol-input-color.entry.js +1 -1
  614. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  615. package/dist/kolibri/kol-input-date.entry.js +1 -1
  616. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  617. package/dist/kolibri/kol-input-email.entry.js +1 -1
  618. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  619. package/dist/kolibri/kol-input-file.entry.js +1 -1
  620. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  621. package/dist/kolibri/kol-input-number.entry.js +1 -1
  622. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  623. package/dist/kolibri/kol-input-password.entry.js +1 -1
  624. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  625. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  626. package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
  627. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  628. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  629. package/dist/kolibri/kol-input-range.entry.js +1 -1
  630. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  631. package/dist/kolibri/kol-input-text.entry.js +1 -1
  632. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  633. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  634. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  635. package/dist/kolibri/kol-link-button.entry.js +1 -1
  636. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  637. package/dist/kolibri/kol-link-group.entry.js +1 -1
  638. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  639. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  640. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  641. package/dist/kolibri/kol-link.entry.js +1 -1
  642. package/dist/kolibri/kol-link.entry.js.map +1 -1
  643. package/dist/kolibri/kol-logo.entry.js +1 -1
  644. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  645. package/dist/kolibri/kol-modal.entry.js +1 -1
  646. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  647. package/dist/kolibri/kol-nav.entry.js +1 -1
  648. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  649. package/dist/kolibri/kol-pagination.entry.js +1 -1
  650. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  651. package/dist/kolibri/kol-popover.entry.js +4 -0
  652. package/dist/kolibri/kol-popover.entry.js.map +1 -0
  653. package/dist/kolibri/kol-progress.entry.js +1 -1
  654. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  655. package/dist/kolibri/kol-quote.entry.js +1 -1
  656. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  657. package/dist/kolibri/kol-select.entry.js +1 -1
  658. package/dist/kolibri/kol-select.entry.js.map +1 -1
  659. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  660. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  661. package/dist/kolibri/kol-span.entry.js +1 -1
  662. package/dist/kolibri/kol-span.entry.js.map +1 -1
  663. package/dist/kolibri/kol-spin.entry.js +1 -1
  664. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  665. package/dist/kolibri/kol-split-button.entry.js +4 -0
  666. package/dist/kolibri/kol-split-button.entry.js.map +1 -0
  667. package/dist/kolibri/kol-symbol.entry.js +1 -1
  668. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  669. package/dist/kolibri/kol-table.entry.js +1 -1
  670. package/dist/kolibri/kol-table.entry.js.map +1 -1
  671. package/dist/kolibri/kol-tabs.entry.js +1 -1
  672. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  673. package/dist/kolibri/kol-textarea.entry.js +1 -1
  674. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  675. package/dist/kolibri/kol-toast.entry.js +1 -1
  676. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  677. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  678. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  679. package/dist/kolibri/kol-version.entry.js +1 -1
  680. package/dist/kolibri/kol-version.entry.js.map +1 -1
  681. package/dist/kolibri/kolibri.esm.js +1 -1
  682. package/dist/kolibri/kolibri.esm.js.map +1 -1
  683. package/dist/kolibri/label-4bfc9d30.js +4 -0
  684. package/dist/kolibri/label-4bfc9d30.js.map +1 -0
  685. package/dist/kolibri/{prop.validators-1f3db013.js → prop.validators-e15a584f.js} +1 -1
  686. package/dist/kolibri/prop.validators-e15a584f.js.map +1 -0
  687. package/dist/kolibri/reuse-3a02afb9.js.map +1 -0
  688. package/dist/kolibri/show-f85eb6d8.js +4 -0
  689. package/dist/kolibri/show-f85eb6d8.js.map +1 -0
  690. package/dist/kolibri/tab-index-eff012a1.js +4 -0
  691. package/dist/kolibri/{tab-index-97fed287.js.map → tab-index-eff012a1.js.map} +1 -1
  692. package/dist/kolibri/validation-d4aeea71.js +4 -0
  693. package/dist/kolibri/{validation-b0614edd.js.map → validation-d4aeea71.js.map} +1 -1
  694. package/dist/kolibri/validation-ec53a8be.js +4 -0
  695. package/dist/loader/index.d.ts +1 -1
  696. package/dist/types/components/@deprecated/input/controller.d.ts +4 -0
  697. package/dist/types/components/abbr/component.d.ts +3 -14
  698. package/dist/types/components/abbr/test/html.mock.d.ts +1 -1
  699. package/dist/types/components/abbr/types.d.ts +14 -0
  700. package/dist/types/components/accordion/component.d.ts +9 -20
  701. package/dist/types/components/accordion/test/html.mock.d.ts +1 -1
  702. package/dist/types/components/accordion/types.d.ts +21 -0
  703. package/dist/types/components/alert/component.d.ts +2 -18
  704. package/dist/types/components/alert/shadow.d.ts +14 -0
  705. package/dist/types/components/alert/test/html.mock.d.ts +1 -1
  706. package/dist/types/components/alert/types.d.ts +24 -0
  707. package/dist/types/components/badge/component.d.ts +5 -8
  708. package/dist/types/components/button/component.d.ts +2 -2
  709. package/dist/types/components/button/shadow.d.ts +2 -2
  710. package/dist/types/components/button-link/component.d.ts +2 -2
  711. package/dist/types/components/card/component.d.ts +2 -2
  712. package/dist/types/components/form/controller.d.ts +2 -2
  713. package/dist/types/components/heading/component.d.ts +4 -4
  714. package/dist/types/components/heading/shadow.d.ts +1 -1
  715. package/dist/types/components/input/controller.d.ts +1 -1
  716. package/dist/types/components/input/types.d.ts +5 -8
  717. package/dist/types/components/input-checkbox/component.d.ts +1 -1
  718. package/dist/types/components/input-checkbox/types.d.ts +4 -7
  719. package/dist/types/components/input-color/component.d.ts +1 -1
  720. package/dist/types/components/input-date/component.d.ts +1 -1
  721. package/dist/types/components/input-email/component.d.ts +1 -1
  722. package/dist/types/components/input-email/types.d.ts +3 -2
  723. package/dist/types/components/input-file/component.d.ts +1 -1
  724. package/dist/types/components/input-number/component.d.ts +1 -1
  725. package/dist/types/components/input-number/types.d.ts +1 -0
  726. package/dist/types/components/input-password/component.d.ts +1 -1
  727. package/dist/types/components/input-password/types.d.ts +1 -0
  728. package/dist/types/components/input-radio/component.d.ts +1 -1
  729. package/dist/types/components/input-radio-group/component.d.ts +1 -1
  730. package/dist/types/components/input-range/component.d.ts +1 -1
  731. package/dist/types/components/input-text/component.d.ts +1 -1
  732. package/dist/types/components/input-text/controller.d.ts +2 -3
  733. package/dist/types/components/input-text/types.d.ts +3 -3
  734. package/dist/types/components/kolibri/component.d.ts +5 -3
  735. package/dist/types/components/link/component.d.ts +4 -2
  736. package/dist/types/components/link/shadow.d.ts +3 -2
  737. package/dist/types/components/link-button/component.d.ts +5 -12
  738. package/dist/types/components/modal/component.d.ts +0 -4
  739. package/dist/types/components/nav/component.d.ts +4 -10
  740. package/dist/types/components/pagination/component.d.ts +1 -1
  741. package/dist/types/components/popover/shadow.d.ts +37 -0
  742. package/dist/types/components/popover/test/html.mock.d.ts +4 -0
  743. package/dist/types/components/progress/component.d.ts +4 -1
  744. package/dist/types/components/select/component.d.ts +1 -1
  745. package/dist/types/components/select/types.d.ts +1 -0
  746. package/dist/types/components/split-button/component.d.ts +52 -0
  747. package/dist/types/components/split-button/types.d.ts +19 -0
  748. package/dist/types/components/table/component.d.ts +0 -1
  749. package/dist/types/components/tabs/component.d.ts +1 -1
  750. package/dist/types/components/textarea/component.d.ts +1 -1
  751. package/dist/types/components/textarea/types.d.ts +5 -6
  752. package/dist/types/components/toast/component.d.ts +3 -4
  753. package/dist/types/components/toast/toaster.d.ts +1 -1
  754. package/dist/types/components/tooltip/component.d.ts +1 -1
  755. package/dist/types/components.d.ts +657 -352
  756. package/dist/types/i18n.d.ts +1 -1
  757. package/dist/types/index.d.ts +1 -1
  758. package/dist/types/stencil-public-runtime.d.ts +1 -0
  759. package/dist/types/types/button-link-text.d.ts +6 -8
  760. package/dist/types/types/button-link.d.ts +8 -27
  761. package/dist/types/types/icon.d.ts +9 -32
  762. package/dist/types/types/props/adjust-height.d.ts +5 -0
  763. package/dist/types/types/props/alert.d.ts +5 -0
  764. package/dist/types/types/props/alignment.d.ts +5 -0
  765. package/dist/types/types/props/aria-current.d.ts +6 -0
  766. package/dist/types/types/props/aria-expanded.d.ts +5 -0
  767. package/dist/types/types/props/aria-selected.d.ts +5 -0
  768. package/dist/types/types/props/checked.d.ts +5 -0
  769. package/dist/types/types/props/collapsible.d.ts +5 -0
  770. package/dist/types/types/props/color.d.ts +20 -0
  771. package/dist/types/types/props/compact.d.ts +5 -0
  772. package/dist/types/types/props/disabled.d.ts +5 -0
  773. package/dist/types/types/props/download.d.ts +5 -0
  774. package/dist/types/types/props/has-closer.d.ts +5 -0
  775. package/dist/types/types/props/has-compact-button.d.ts +5 -0
  776. package/dist/types/types/props/has-counter.d.ts +5 -0
  777. package/dist/types/types/props/has-footer.d.ts +5 -0
  778. package/dist/types/types/props/hide-label.d.ts +5 -0
  779. package/dist/types/{utils/validators → types/props}/icon.d.ts +6 -2
  780. package/dist/types/types/props/indeterminate.d.ts +5 -0
  781. package/dist/types/types/props/index.d.ts +1 -0
  782. package/dist/types/types/props/label.d.ts +8 -2
  783. package/dist/types/types/props/multiple.d.ts +5 -0
  784. package/dist/types/types/props/open.d.ts +5 -0
  785. package/dist/types/types/props/read-only.d.ts +5 -0
  786. package/dist/types/types/props/required.d.ts +5 -0
  787. package/dist/types/types/props/show.d.ts +6 -0
  788. package/dist/types/types/props/stealth.d.ts +5 -0
  789. package/dist/types/types/props/touched.d.ts +5 -0
  790. package/dist/types/utils/prop.validators.d.ts +2 -2
  791. package/dist/types/utils/reuse.d.ts +1 -1
  792. package/dist/types/utils/validators/alignment.d.ts +1 -1
  793. package/doc/abbr.md +9 -9
  794. package/doc/accordion.md +51 -39
  795. package/doc/alert.md +20 -26
  796. package/doc/badge.md +21 -30
  797. package/doc/breadcrumb.md +11 -21
  798. package/doc/button-link.md +20 -22
  799. package/doc/button.md +44 -84
  800. package/doc/card.md +18 -69
  801. package/doc/components.md +1 -1
  802. package/doc/details.md +13 -10
  803. package/doc/form.md +4 -4
  804. package/doc/heading.md +20 -13
  805. package/doc/icon-font-awesome.md +3 -3
  806. package/doc/icon-icofont.md +2 -2
  807. package/doc/icon.md +16 -20
  808. package/doc/image.md +29 -20
  809. package/doc/indented-text.md +1 -7
  810. package/doc/input-adapter-leanup.md +5 -6
  811. package/doc/input-checkbox.md +33 -30
  812. package/doc/input-color.md +28 -32
  813. package/doc/input-date.md +33 -37
  814. package/doc/input-email.md +34 -34
  815. package/doc/input-file.md +28 -27
  816. package/doc/input-number.md +34 -64
  817. package/doc/input-password.md +29 -30
  818. package/doc/input-radio-group.md +20 -21
  819. package/doc/input-radio.md +42 -25
  820. package/doc/input-range.md +28 -32
  821. package/doc/input-text.md +37 -40
  822. package/doc/kolibri.md +17 -12
  823. package/doc/link-button.md +23 -31
  824. package/doc/link-group.md +21 -23
  825. package/doc/link.md +38 -71
  826. package/doc/logo.md +6 -10
  827. package/doc/modal.md +38 -57
  828. package/doc/nav.md +50 -47
  829. package/doc/pagination.md +27 -33
  830. package/doc/popover.md +21 -0
  831. package/doc/progress.md +13 -10
  832. package/doc/quote.md +14 -13
  833. package/doc/select.md +47 -46
  834. package/doc/skip-nav.md +11 -17
  835. package/doc/span.md +5 -5
  836. package/doc/spin.md +5 -6
  837. package/doc/split-button.md +85 -0
  838. package/doc/table.md +21 -74
  839. package/doc/tabs.md +28 -42
  840. package/doc/textarea.md +33 -35
  841. package/doc/toast.md +27 -21
  842. package/doc/tooltip.md +10 -12
  843. package/doc/version.md +6 -9
  844. package/jest-test-results.json +1 -1
  845. package/package.json +3 -2
  846. package/vscode-custom-data.json +437 -180
  847. package/dist/cjs/button-link-d6aa5d38.js +0 -4
  848. package/dist/cjs/button-link-d6aa5d38.js.map +0 -1
  849. package/dist/cjs/controller-41024136.js.map +0 -1
  850. package/dist/cjs/controller-5565d7af.js.map +0 -1
  851. package/dist/cjs/controller-830760de.js +0 -4
  852. package/dist/cjs/controller-bab88e15.js +0 -4
  853. package/dist/cjs/controller-bab88e15.js.map +0 -1
  854. package/dist/cjs/controller-e17991a8.js.map +0 -1
  855. package/dist/cjs/controller-icon-f69a8b14.js.map +0 -1
  856. package/dist/cjs/icon-e4f3e165.js.map +0 -1
  857. package/dist/cjs/index-1266b30d.js +0 -4
  858. package/dist/cjs/index-1266b30d.js.map +0 -1
  859. package/dist/cjs/index-26858caf.js +0 -4
  860. package/dist/cjs/index-26858caf.js.map +0 -1
  861. package/dist/cjs/index-29c5d3c6.js +0 -5
  862. package/dist/cjs/index-29c5d3c6.js.map +0 -1
  863. package/dist/cjs/index-eb52922f.js.map +0 -1
  864. package/dist/cjs/kol-button-wc_2.cjs.entry.js +0 -4
  865. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +0 -1
  866. package/dist/cjs/kol-heading-wc_2.cjs.entry.js +0 -4
  867. package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +0 -1
  868. package/dist/cjs/label-412be5d5.js +0 -4
  869. package/dist/cjs/label-412be5d5.js.map +0 -1
  870. package/dist/cjs/reuse-bbd0b4e7.js +0 -4
  871. package/dist/cjs/validation-ce77567d.js +0 -4
  872. package/dist/components/index2.js +0 -4
  873. package/dist/components/index2.js.map +0 -1
  874. package/dist/esm/app-globals-08fd5e4e.js +0 -4
  875. package/dist/esm/button-link-249585bf.js.map +0 -1
  876. package/dist/esm/controller-03e00b6c.js.map +0 -1
  877. package/dist/esm/controller-08af836c.js.map +0 -1
  878. package/dist/esm/controller-4f4582b7.js +0 -4
  879. package/dist/esm/controller-4f4582b7.js.map +0 -1
  880. package/dist/esm/controller-bf4a0bc1.js +0 -4
  881. package/dist/esm/controller-ca954299.js.map +0 -1
  882. package/dist/esm/controller-icon-fb82236a.js.map +0 -1
  883. package/dist/esm/icon-970694a7.js.map +0 -1
  884. package/dist/esm/index-50adf9a0.js +0 -5
  885. package/dist/esm/index-50adf9a0.js.map +0 -1
  886. package/dist/esm/index-81bd9b41.js.map +0 -1
  887. package/dist/esm/index-d14da386.js +0 -4
  888. package/dist/esm/index-d14da386.js.map +0 -1
  889. package/dist/esm/index-f3c76945.js +0 -4
  890. package/dist/esm/index-f3c76945.js.map +0 -1
  891. package/dist/esm/kol-button-wc_2.entry.js +0 -4
  892. package/dist/esm/kol-button-wc_2.entry.js.map +0 -1
  893. package/dist/esm/kol-heading-wc_2.entry.js +0 -4
  894. package/dist/esm/kol-heading-wc_2.entry.js.map +0 -1
  895. package/dist/esm/label-966377c0.js +0 -4
  896. package/dist/esm/label-966377c0.js.map +0 -1
  897. package/dist/esm/validation-2bb481bd.js +0 -4
  898. package/dist/esm/validation-b0614edd.js +0 -4
  899. package/dist/kolibri/app-globals-08fd5e4e.js +0 -4
  900. package/dist/kolibri/assets/bpa-icons/bpa-icons.eot +0 -0
  901. package/dist/kolibri/assets/bpa-icons/bpa-icons.json +0 -1115
  902. package/dist/kolibri/assets/bpa-icons/bpa-icons.svg +0 -432
  903. package/dist/kolibri/assets/bpa-icons/bpa-icons.symbol.svg +0 -1449
  904. package/dist/kolibri/assets/bpa-icons/bpa-icons.ttf +0 -0
  905. package/dist/kolibri/assets/bpa-icons/bpa-icons.woff +0 -0
  906. package/dist/kolibri/assets/bpa-icons/bpa-icons.woff2 +0 -0
  907. package/dist/kolibri/assets/bpa-icons/style.css +0 -159
  908. package/dist/kolibri/assets/bpa-icons/style.less +0 -157
  909. package/dist/kolibri/assets/bpa-icons/style.module.less +0 -160
  910. package/dist/kolibri/assets/bpa-icons/style.scss +0 -299
  911. package/dist/kolibri/assets/bpa-icons/style.styl +0 -157
  912. package/dist/kolibri/assets/bundes/LICENSE.md +0 -1
  913. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.ttf +0 -0
  914. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.woff +0 -0
  915. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.woff2 +0 -0
  916. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.ttf +0 -0
  917. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.woff +0 -0
  918. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.woff2 +0 -0
  919. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.ttf +0 -0
  920. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.woff +0 -0
  921. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.woff2 +0 -0
  922. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.ttf +0 -0
  923. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.woff +0 -0
  924. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.woff2 +0 -0
  925. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.ttf +0 -0
  926. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.woff +0 -0
  927. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.woff2 +0 -0
  928. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.ttf +0 -0
  929. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.woff +0 -0
  930. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.woff2 +0 -0
  931. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.ttf +0 -0
  932. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.woff +0 -0
  933. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.woff2 +0 -0
  934. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.ttf +0 -0
  935. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.woff +0 -0
  936. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.woff2 +0 -0
  937. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.ttf +0 -0
  938. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.woff +0 -0
  939. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.woff2 +0 -0
  940. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.ttf +0 -0
  941. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.woff +0 -0
  942. package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.woff2 +0 -0
  943. package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.ttf +0 -0
  944. package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.woff +0 -0
  945. package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.woff2 +0 -0
  946. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.ttf +0 -0
  947. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.woff +0 -0
  948. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.woff2 +0 -0
  949. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.ttf +0 -0
  950. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.woff +0 -0
  951. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.woff2 +0 -0
  952. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.ttf +0 -0
  953. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.woff +0 -0
  954. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.woff2 +0 -0
  955. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.ttf +0 -0
  956. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.woff +0 -0
  957. package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.woff2 +0 -0
  958. package/dist/kolibri/assets/bundes/style.css +0 -84
  959. package/dist/kolibri/assets/fontawesome-free/LICENSE.txt +0 -165
  960. package/dist/kolibri/assets/fontawesome-free/css/all.css +0 -7831
  961. package/dist/kolibri/assets/fontawesome-free/css/all.min.css +0 -6
  962. package/dist/kolibri/assets/fontawesome-free/css/brands.css +0 -1432
  963. package/dist/kolibri/assets/fontawesome-free/css/brands.min.css +0 -6
  964. package/dist/kolibri/assets/fontawesome-free/css/fontawesome.css +0 -6338
  965. package/dist/kolibri/assets/fontawesome-free/css/fontawesome.min.css +0 -6
  966. package/dist/kolibri/assets/fontawesome-free/css/regular.css +0 -19
  967. package/dist/kolibri/assets/fontawesome-free/css/regular.min.css +0 -6
  968. package/dist/kolibri/assets/fontawesome-free/css/solid.css +0 -19
  969. package/dist/kolibri/assets/fontawesome-free/css/solid.min.css +0 -6
  970. package/dist/kolibri/assets/fontawesome-free/css/svg-with-js.css +0 -634
  971. package/dist/kolibri/assets/fontawesome-free/css/svg-with-js.min.css +0 -6
  972. package/dist/kolibri/assets/fontawesome-free/css/v4-font-face.css +0 -26
  973. package/dist/kolibri/assets/fontawesome-free/css/v4-font-face.min.css +0 -6
  974. package/dist/kolibri/assets/fontawesome-free/css/v4-shims.css +0 -2146
  975. package/dist/kolibri/assets/fontawesome-free/css/v4-shims.min.css +0 -6
  976. package/dist/kolibri/assets/fontawesome-free/css/v5-font-face.css +0 -22
  977. package/dist/kolibri/assets/fontawesome-free/css/v5-font-face.min.css +0 -6
  978. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-brands-400.ttf +0 -0
  979. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-brands-400.woff2 +0 -0
  980. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-regular-400.ttf +0 -0
  981. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-regular-400.woff2 +0 -0
  982. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-solid-900.ttf +0 -0
  983. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-solid-900.woff2 +0 -0
  984. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-v4compatibility.ttf +0 -0
  985. package/dist/kolibri/assets/fontawesome-free/webfonts/fa-v4compatibility.woff2 +0 -0
  986. package/dist/kolibri/assets/icofont/demo.html +0 -18939
  987. package/dist/kolibri/assets/icofont/fonts/icofont.eot +0 -0
  988. package/dist/kolibri/assets/icofont/fonts/icofont.svg +0 -2105
  989. package/dist/kolibri/assets/icofont/fonts/icofont.ttf +0 -0
  990. package/dist/kolibri/assets/icofont/fonts/icofont.woff +0 -0
  991. package/dist/kolibri/assets/icofont/fonts/icofont.woff2 +0 -0
  992. package/dist/kolibri/assets/icofont/icofont.css +0 -10757
  993. package/dist/kolibri/assets/icofont/icofont.min.css +0 -7
  994. package/dist/kolibri/assets/kreon/Kreon-VariableFont_wght.ttf +0 -0
  995. package/dist/kolibri/assets/kreon/OFL.txt +0 -93
  996. package/dist/kolibri/assets/kreon/README.txt +0 -67
  997. package/dist/kolibri/assets/kreon/static/Kreon-Bold.ttf +0 -0
  998. package/dist/kolibri/assets/kreon/static/Kreon-Light.ttf +0 -0
  999. package/dist/kolibri/assets/kreon/static/Kreon-Medium.ttf +0 -0
  1000. package/dist/kolibri/assets/kreon/static/Kreon-Regular.ttf +0 -0
  1001. package/dist/kolibri/assets/kreon/static/Kreon-SemiBold.ttf +0 -0
  1002. package/dist/kolibri/assets/kreon/style.css +0 -41
  1003. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Black.ttf +0 -0
  1004. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-BlackItalic.ttf +0 -0
  1005. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Bold.ttf +0 -0
  1006. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-BoldItalic.ttf +0 -0
  1007. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraBold.ttf +0 -0
  1008. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraBoldItalic.ttf +0 -0
  1009. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraLight.ttf +0 -0
  1010. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraLightItalic.ttf +0 -0
  1011. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Italic.ttf +0 -0
  1012. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Light.ttf +0 -0
  1013. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-LightItalic.ttf +0 -0
  1014. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Medium.ttf +0 -0
  1015. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-MediumItalic.ttf +0 -0
  1016. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Regular.ttf +0 -0
  1017. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-SemiBold.ttf +0 -0
  1018. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-SemiBoldItalic.ttf +0 -0
  1019. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Thin.ttf +0 -0
  1020. package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ThinItalic.ttf +0 -0
  1021. package/dist/kolibri/assets/noto-sans/fonts/OFL.txt +0 -93
  1022. package/dist/kolibri/assets/noto-sans/noto-sans.css +0 -11
  1023. package/dist/kolibri/assets/roboto/LICENSE.txt +0 -202
  1024. package/dist/kolibri/assets/roboto/Roboto-Black.ttf +0 -0
  1025. package/dist/kolibri/assets/roboto/Roboto-BlackItalic.ttf +0 -0
  1026. package/dist/kolibri/assets/roboto/Roboto-Bold.ttf +0 -0
  1027. package/dist/kolibri/assets/roboto/Roboto-BoldItalic.ttf +0 -0
  1028. package/dist/kolibri/assets/roboto/Roboto-Italic.ttf +0 -0
  1029. package/dist/kolibri/assets/roboto/Roboto-Light.ttf +0 -0
  1030. package/dist/kolibri/assets/roboto/Roboto-LightItalic.ttf +0 -0
  1031. package/dist/kolibri/assets/roboto/Roboto-Medium.ttf +0 -0
  1032. package/dist/kolibri/assets/roboto/Roboto-MediumItalic.ttf +0 -0
  1033. package/dist/kolibri/assets/roboto/Roboto-Regular.ttf +0 -0
  1034. package/dist/kolibri/assets/roboto/Roboto-Thin.ttf +0 -0
  1035. package/dist/kolibri/assets/roboto/Roboto-ThinItalic.ttf +0 -0
  1036. package/dist/kolibri/assets/roboto/roboto.css +0 -27
  1037. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.eot +0 -0
  1038. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.ttf +0 -0
  1039. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff +0 -0
  1040. package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff2 +0 -0
  1041. package/dist/kolibri/assets/tabler-icons/tabler-icons.css +0 -16057
  1042. package/dist/kolibri/assets/tabler-icons/tabler-icons.html +0 -36226
  1043. package/dist/kolibri/assets/tabler-icons/tabler-icons.min.css +0 -4
  1044. package/dist/kolibri/assets/tabler-icons/tabler-icons.png +0 -0
  1045. package/dist/kolibri/assets/tabler-icons/tabler-icons.scss +0 -8058
  1046. package/dist/kolibri/button-link-249585bf.js.map +0 -1
  1047. package/dist/kolibri/controller-03e00b6c.js +0 -4
  1048. package/dist/kolibri/controller-03e00b6c.js.map +0 -1
  1049. package/dist/kolibri/controller-08af836c.js.map +0 -1
  1050. package/dist/kolibri/controller-4f4582b7.js +0 -4
  1051. package/dist/kolibri/controller-4f4582b7.js.map +0 -1
  1052. package/dist/kolibri/controller-ac44fc5f.js +0 -4
  1053. package/dist/kolibri/controller-bf4a0bc1.js.map +0 -1
  1054. package/dist/kolibri/controller-ca954299.js.map +0 -1
  1055. package/dist/kolibri/controller-icon-fb82236a.js.map +0 -1
  1056. package/dist/kolibri/dev.utils-bedce29d.js.map +0 -1
  1057. package/dist/kolibri/icon-970694a7.js.map +0 -1
  1058. package/dist/kolibri/index-50adf9a0.js +0 -5
  1059. package/dist/kolibri/index-50adf9a0.js.map +0 -1
  1060. package/dist/kolibri/index-81bd9b41.js +0 -4
  1061. package/dist/kolibri/index-81bd9b41.js.map +0 -1
  1062. package/dist/kolibri/index-d14da386.js +0 -4
  1063. package/dist/kolibri/index-d14da386.js.map +0 -1
  1064. package/dist/kolibri/index-f3c76945.js +0 -4
  1065. package/dist/kolibri/index-f3c76945.js.map +0 -1
  1066. package/dist/kolibri/kol-button-wc_2.entry.js +0 -4
  1067. package/dist/kolibri/kol-button-wc_2.entry.js.map +0 -1
  1068. package/dist/kolibri/kol-heading-wc_2.entry.js +0 -4
  1069. package/dist/kolibri/kol-heading-wc_2.entry.js.map +0 -1
  1070. package/dist/kolibri/label-966377c0.js +0 -4
  1071. package/dist/kolibri/label-966377c0.js.map +0 -1
  1072. package/dist/kolibri/prop.validators-1f3db013.js.map +0 -1
  1073. package/dist/kolibri/reuse-56bb5a4b.js.map +0 -1
  1074. package/dist/kolibri/tab-index-97fed287.js +0 -4
  1075. package/dist/kolibri/validation-2bb481bd.js +0 -4
  1076. package/dist/kolibri/validation-b0614edd.js +0 -4
  1077. package/dist/types/schema/i18n-keys.d.ts +0 -29
  1078. package/dist/types/schema/index.d.ts +0 -2
  1079. package/dist/types/schema/tag-names.d.ts +0 -50
  1080. package/dist/types/types/alert.d.ts +0 -6
  1081. package/dist/types/utils/validators/label.d.ts +0 -7
  1082. /package/dist/kolibri/{a11y.tipps-5ca36877.js.map → a11y.tipps-1cea9822.js.map} +0 -0
  1083. /package/dist/kolibri/{app-globals-08fd5e4e.js.map → app-globals-6ba5ef2f.js.map} +0 -0
  1084. /package/dist/kolibri/{controller-ac44fc5f.js.map → controller-985aff52.js.map} +0 -0
  1085. /package/dist/kolibri/{devtools-525ee939.js.map → devtools-33f1b614.js.map} +0 -0
  1086. /package/dist/kolibri/{i18n-97355570.js.map → i18n-81ce19c0.js.map} +0 -0
  1087. /package/dist/kolibri/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +0 -0
  1088. /package/dist/kolibri/{validation-2bb481bd.js.map → validation-ec53a8be.js.map} +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as i,H as e}from"./index-50adf9a0.js";import{b as s,w as a,s as o,e as n,a as r}from"./prop.validators-1f3db013.js";import{w as h}from"./validation-b0614edd.js";import{f as l}from"./a11y.tipps-5ca36877.js";import"./dev.utils-bedce29d.js";import"./reuse-56bb5a4b.js";import"./index-81bd9b41.js";const p=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*[role='button'],button:not([role='link']),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'],option,select,textarea{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}: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,input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],option,select{cursor:pointer;font-family:inherit;font-size:inherit}.icon-only>kol-span-wc>span>span{display:none}:host{display:block}:host>div{background-color:white;height:0;left:0;position:fixed;top:0;width:100%;z-index:200}:host>div>kol-alert{display:block;margin:auto;max-width:750px}:host>div>kol-button-wc{display:block;margin:auto;position:relative;top:0;width:1em}",d=class{constructor(e){t(this,e),this.handleShowAndDuration=()=>{!0===this.state._show&&"number"==typeof this.state._showDuration&&this.state._showDuration>=0&&(clearTimeout(this.durationTimeout),this.durationTimeout=setTimeout((()=>{clearTimeout(this.durationTimeout),this.close()}),this.state._showDuration))},this.close=()=>{var t;this._show=!1,this.state=Object.assign(Object.assign({},this.state),{_show:!1}),void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClose:this.close},this._alert=!0,this._hasCloser=!1,this._heading="",this._level=1,this._on=void 0,this._show=!0,this._showDuration=1e4,this._type="default",this.state={_alert:!0,_level:1,_show:!0}}validateAlert(t){s(this,"_alert",t)}validateHasCloser(t){s(this,"_hasCloser",t)}validateHeading(t){a(this,"_heading",t)}validateLevel(t){h(this,t)}validateOn(t){if("object"==typeof t&&null!==t){l("[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const e={};"function"!=typeof t.onClose&&!0!==t.onClose||(e.onClose=t.onClose),o(this,"_on",e)}}validateShow(t){s(this,"_show",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateShowDuration(t){n(this,"_showDuration",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateType(t){r(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateShow(this._show),this.validateShowDuration(this._showDuration),this.validateType(this._type)}render(){return i(e,null,this.state._show&&i("div",null,i("kol-alert",{_alert:this.state._alert,_heading:this.state._heading,_level:this.state._level,_hasCloser:this.state._hasCloser,_type:this.state._type,_variant:"card",_on:this.on},i("slot",null))))}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_show:["validateShow"],_showDuration:["validateShowDuration"],_type:["validateType"]}}};d.style={default:p};export{d as kol_toast};
4
+ import{r as t,h as i,H as e}from"./index-0e29e47a.js";import{b as s,w as a,s as o,e as n,a as h}from"./prop.validators-e15a584f.js";import{w as r}from"./validation-d4aeea71.js";import{f as l}from"./a11y.tipps-1cea9822.js";import{v as d}from"./show-f85eb6d8.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-f4596895.js";const p=(t,i)=>{s(t,"_hasCloser",i)},u=":host{--a11y-min-size:44px}*{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}:host>div{background-color:#fff;height:0;left:0;position:fixed;top:0;width:100%;z-index:200}:host>div>kol-alert{display:block;margin:auto;max-width:750px}:host>div>kol-button-wc{display:block;margin:auto;position:relative;top:0;width:1em}",c=class{constructor(i){t(this,i),this.handleShowAndDuration=()=>{!0===this.state._show&&"number"==typeof this.state._showDuration&&this.state._showDuration>=0&&(clearTimeout(this.durationTimeout),this.durationTimeout=setTimeout((()=>{this.close()}),this.state._showDuration))},this.close=()=>{var t;this._show=!1,this.state=Object.assign(Object.assign({},this.state),{_show:!1}),void 0!==(null===(t=this._on)||void 0===t?void 0:t.onClose)&&this._on.onClose(new Event("Close"))},this.on={onClose:this.close},this._alert=!0,this._hasCloser=!1,this._heading="",this._level=1,this._on=void 0,this._show=!0,this._showDuration=1e4,this._type="default",this.state={_alert:!0,_level:1,_show:!0}}validateAlert(t){s(this,"_alert",t)}validateHasCloser(t){p(this,t)}validateHeading(t){a(this,"_heading",t)}validateLevel(t){r(this,t)}validateOn(t){if("object"==typeof t&&null!==t){l("[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const i={};"function"!=typeof t.onClose&&!0!==t.onClose||(i.onClose=t.onClose),o(this,"_on",i)}}validateShow(t){d(this,t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateShowDuration(t){n(this,"_showDuration",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateType(t){h(this,"_type",(t=>"string"==typeof t&&("default"===t||"error"===t||"info"===t||"success"===t||"warning"===t)),new Set("String {success, info, warning, error}"),t)}componentWillLoad(){this.validateAlert(this._alert),this.validateHasCloser(this._hasCloser),this.validateHeading(this._heading),this.validateLevel(this._level),this.validateOn(this._on),this.validateShow(this._show),this.validateShowDuration(this._showDuration),this.validateType(this._type)}render(){return i(e,null,this.state._show&&i("div",null,i("kol-alert",{_alert:this.state._alert,_heading:this.state._heading,_level:this.state._level,_hasCloser:this.state._hasCloser,_type:this.state._type,_variant:"card",_on:this.on},i("slot",null))))}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_show:["validateShow"],_showDuration:["validateShowDuration"],_type:["validateType"]}}};c.style={default:u};export{c as kol_toast};
@@ -1 +1 @@
1
- {"version":3,"names":["defaultStyleCss","KolToast","this","handleShowAndDuration","state","_show","_showDuration","clearTimeout","durationTimeout","setTimeout","close","Object","assign","_a","_on","onClose","undefined","Event","on","_alert","_level","validateAlert","value","watchBoolean","validateHasCloser","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","featureHint","callbacks","setState","validateShow","hooks","afterPatch","validateShowDuration","watchNumber","validateType","watchValidator","Set","componentWillLoad","_hasCloser","_heading","_type","render","h","Host","_variant"],"sources":["./src/components/toast/style.css?tag=kol-toast&mode=default&encapsulation=shadow","./src/components/toast/component.tsx"],"sourcesContent":["@import '../style.css';\n@import '../host-display-block.css';\n\n:host > div {\n\tbackground-color: white; /* needed for overlay situations */\n\theight: 0;\n\tleft: 0;\n\tposition: fixed;\n\ttop: 0;\n\twidth: 100%;\n\tz-index: 200;\n}\n\n:host > div > kol-alert {\n\tdisplay: block;\n\tmargin: auto;\n\tmax-width: 750px;\n}\n\n:host > div > kol-button-wc {\n\tdisplay: block;\n\tmargin: auto;\n\tposition: relative;\n\ttop: 0;\n\twidth: 1em;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlertType } from '../../types/alert';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { setState, watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { KoliBriToastEventCallbacks } from '../../types/toast';\nimport { featureHint } from '../../utils/a11y.tipps';\n\n/**\n * API\n */\ntype RequiredProps = unknown;\ntype OptionalProps = {\n\talert: boolean;\n\thasCloser: boolean;\n\theading: string;\n\tlevel: HeadingLevel;\n\ton: KoliBriToastEventCallbacks;\n\tshow: boolean;\n\tshowDuration: number;\n\ttype: AlertType;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-toast',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolToast implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob der Toast ein Schließen-Icon hat.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string = '';\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Toasts an.\n\t */\n\t@Prop() public _on?: KoliBriToastEventCallbacks;\n\n\t/**\n\t * Gibt an, ob der Toast eingeblendet wird.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _show?: boolean = true;\n\n\t/**\n\t * Gibt an, wie viele Millisekunden der Toast eingeblendet werden soll.\n\t */\n\t@Prop() public _showDuration?: number = 10000;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_alert: true,\n\t\t_level: 1,\n\t\t_show: true,\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\twatchBoolean(this, '_hasCloser', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriToastEventCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfeatureHint('[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.');\n\t\t\tconst callbacks: KoliBriToastEventCallbacks = {};\n\t\t\tif (typeof value.onClose === 'function' || value.onClose === true) {\n\t\t\t\tcallbacks.onClose = value.onClose;\n\t\t\t}\n\t\t\tsetState<KoliBriToastEventCallbacks>(this, '_on', callbacks);\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_show')\n\tpublic validateShow(value?: boolean): void {\n\t\twatchBoolean(this, '_show', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleShowAndDuration,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_showDuration')\n\tpublic validateShowDuration(value?: number): void {\n\t\twatchNumber(this, '_showDuration', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleShowAndDuration,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateShow(this._show);\n\t\tthis.validateShowDuration(this._showDuration);\n\t\tthis.validateType(this._type);\n\t}\n\n\tprivate durationTimeout?: NodeJS.Timer;\n\n\tprivate readonly handleShowAndDuration = () => {\n\t\tif (this.state._show === true && typeof this.state._showDuration === 'number' && this.state._showDuration >= 0) {\n\t\t\tclearTimeout(this.durationTimeout as NodeJS.Timer);\n\t\t\tthis.durationTimeout = setTimeout(() => {\n\t\t\t\tclearTimeout(this.durationTimeout as NodeJS.Timer);\n\t\t\t\tthis.close();\n\t\t\t}, this.state._showDuration);\n\t\t}\n\t};\n\n\tprivate readonly close = () => {\n\t\tthis._show = false;\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_show: false,\n\t\t};\n\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClose: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{this.state._show && (\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<kol-alert\n\t\t\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t\t\t_heading={this.state._heading}\n\t\t\t\t\t\t\t_level={this.state._level}\n\t\t\t\t\t\t\t_hasCloser={this.state._hasCloser}\n\t\t\t\t\t\t\t_type={this.state._type}\n\t\t\t\t\t\t\t_variant=\"card\"\n\t\t\t\t\t\t\t// tabindex=\"0\"\n\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</kol-alert>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":";;;sTAAA,MAAMA,EAAkB,4rC,MCqCXC,EAAQ,M,yBAuJHC,KAAAC,sBAAwB,KACxC,GAAID,KAAKE,MAAMC,QAAU,aAAeH,KAAKE,MAAME,gBAAkB,UAAYJ,KAAKE,MAAME,eAAiB,EAAG,CAC/GC,aAAaL,KAAKM,iBAClBN,KAAKM,gBAAkBC,YAAW,KACjCF,aAAaL,KAAKM,iBAClBN,KAAKQ,OAAO,GACVR,KAAKE,MAAME,c,GAICJ,KAAAQ,MAAQ,K,MACxBR,KAAKG,MAAQ,MACbH,KAAKE,MAAKO,OAAAC,OAAAD,OAAAC,OAAA,GACNV,KAAKE,OAAK,CACbC,MAAO,QAGR,KAAIQ,EAAAX,KAAKY,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAYC,UAAW,CACpCd,KAAKY,IAAIC,QAAQ,IAAIE,MAAM,S,GAIZf,KAAAgB,GAAK,CACrBH,QAASb,KAAKQ,O,YA1KoC,K,gBAKI,M,cAKpB,G,YAKI,E,8BAU0B,K,mBAKzB,I,WAKL,U,WAKH,CAC/BS,OAAQ,KACRC,OAAQ,EACRf,MAAO,K,CAODgB,cAAcC,GACpBC,EAAarB,KAAM,SAAUoB,E,CAOvBE,kBAAkBF,GACxBC,EAAarB,KAAM,aAAcoB,E,CAO3BG,gBAAgBH,GACtBI,EAAYxB,KAAM,WAAYoB,E,CAOxBK,cAAcL,GACpBM,EAAkB1B,KAAMoB,E,CAOlBO,WAAWP,GACjB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChDQ,EAAY,4EACZ,MAAMC,EAAwC,GAC9C,UAAWT,EAAMP,UAAY,YAAcO,EAAMP,UAAY,KAAM,CAClEgB,EAAUhB,QAAUO,EAAMP,O,CAE3BiB,EAAqC9B,KAAM,MAAO6B,E,EAQ7CE,aAAaX,GACnBC,EAAarB,KAAM,QAASoB,EAAO,CAClCY,MAAO,CACNC,WAAYjC,KAAKC,wB,CASbiC,qBAAqBd,GAC3Be,EAAYnC,KAAM,gBAAiBoB,EAAO,CACzCY,MAAO,CACNC,WAAYjC,KAAKC,wB,CASbmC,aAAahB,GACnBiB,EACCrC,KACA,SACCoB,UAAiBA,IAAU,WAAaA,IAAU,WAAaA,IAAU,SAAWA,IAAU,QAAUA,IAAU,WAAaA,IAAU,YAC1I,IAAIkB,IAAI,0CACRlB,E,CAOKmB,oBACNvC,KAAKmB,cAAcnB,KAAKiB,QACxBjB,KAAKsB,kBAAkBtB,KAAKwC,YAC5BxC,KAAKuB,gBAAgBvB,KAAKyC,UAC1BzC,KAAKyB,cAAczB,KAAKkB,QACxBlB,KAAK2B,WAAW3B,KAAKY,KACrBZ,KAAK+B,aAAa/B,KAAKG,OACvBH,KAAKkC,qBAAqBlC,KAAKI,eAC/BJ,KAAKoC,aAAapC,KAAK0C,M,CA+BjBC,SACN,OACCC,EAACC,EAAI,KACH7C,KAAKE,MAAMC,OACXyC,EAAA,WACCA,EAAA,aACC3B,OAAQjB,KAAKE,MAAMe,OACnBwB,SAAUzC,KAAKE,MAAMuC,SACrBvB,OAAQlB,KAAKE,MAAMgB,OACnBsB,WAAYxC,KAAKE,MAAMsC,WACvBE,MAAO1C,KAAKE,MAAMwC,MAClBI,SAAS,OAETlC,IAAKZ,KAAKgB,IAEV4B,EAAA,e"}
1
+ {"version":3,"names":["validateHasCloser","component","value","watchBoolean","defaultStyleCss","KolToast","this","handleShowAndDuration","state","_show","_showDuration","clearTimeout","durationTimeout","setTimeout","close","Object","assign","_a","_on","onClose","undefined","Event","on","_alert","_level","validateAlert","validateHeading","watchString","validateLevel","watchHeadingLevel","validateOn","featureHint","callbacks","setState","validateShow","hooks","afterPatch","validateShowDuration","watchNumber","validateType","watchValidator","Set","componentWillLoad","_hasCloser","_heading","_type","render","h","Host","_variant"],"sources":["./src/types/props/has-closer.ts","./src/components/toast/style.css?tag=kol-toast&mode=default&encapsulation=shadow","./src/components/toast/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Markiert dieses Element als geöffnet, oder dass das verknüpfte Element (aria-controls/aria-owns) geöffnet ist.\n */\n/** en\n * Marks this element as open/expanded, or that the connected element (aria-controls/aria-owns) is open/expanded.\n */\nexport type PropHasCloser = {\n\thasCloser: boolean;\n};\n\n/* validator */\nexport const validateHasCloser = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_hasCloser', value);\n};\n","@import url(../style.css);\n@import url(../host-display-block.css);\n:host > div {\n\tbackground-color: #fff;\n\t/* needed for overlay situations */\n\theight: 0;\n\tleft: 0;\n\tposition: fixed;\n\ttop: 0;\n\twidth: 100%;\n\tz-index: 200;\n}\n:host > div > kol-alert {\n\tdisplay: block;\n\tmargin: auto;\n\tmax-width: 750px;\n}\n:host > div > kol-button-wc {\n\tdisplay: block;\n\tmargin: auto;\n\tposition: relative;\n\ttop: 0;\n\twidth: 1em;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { AlertType } from '../alert/types';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { setState, watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { KoliBriToastEventCallbacks } from '../../types/toast';\nimport { featureHint } from '../../utils/a11y.tipps';\nimport { PropHasCloser, PropShow, validateHasCloser, validateShow } from '../../types/props';\n\ntype RequiredProps = unknown;\ntype OptionalProps = {\n\talert: boolean;\n\theading: string;\n\tlevel: HeadingLevel;\n\ton: KoliBriToastEventCallbacks;\n\tshowDuration: number;\n\ttype: AlertType;\n} & PropHasCloser &\n\tPropShow;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-toast',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolToast implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung vorlesen soll.\n\t */\n\t@Prop({ reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Aktiviert das Schließen-Icon.\n\t */\n\t@Prop({ reflect: true }) public _hasCloser?: boolean = false;\n\n\t/**\n\t * Gibt den Titel der Meldung an.\n\t */\n\t@Prop() public _heading?: string = '';\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Gibt die EventCallback-Function für das Schließen des Toasts an.\n\t */\n\t@Prop() public _on?: KoliBriToastEventCallbacks;\n\n\t/**\n\t * Gibt an, ob der Toast eingeblendet wird.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _show?: boolean = true;\n\n\t/**\n\t * Gibt an, wie viele Millisekunden der Toast eingeblendet werden soll.\n\t */\n\t@Prop() public _showDuration?: number = 10000;\n\n\t/**\n\t * Gibt an, ob es sich um eine Erfolgs-, Info-, Warnung- oder Fehlermeldung handelt.\n\t */\n\t@Prop() public _type?: AlertType = 'default';\n\n\t@State() public state: States = {\n\t\t_alert: true,\n\t\t_level: 1,\n\t\t_show: true,\n\t};\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this, '_alert', value);\n\t}\n\n\t@Watch('_hasCloser')\n\tpublic validateHasCloser(value?: boolean): void {\n\t\tvalidateHasCloser(this, value);\n\t}\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', 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?: KoliBriToastEventCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfeatureHint('[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.');\n\t\t\tconst callbacks: KoliBriToastEventCallbacks = {};\n\t\t\tif (typeof value.onClose === 'function' || value.onClose === true) {\n\t\t\t\tcallbacks.onClose = value.onClose;\n\t\t\t}\n\t\t\tsetState<KoliBriToastEventCallbacks>(this, '_on', callbacks);\n\t\t}\n\t}\n\n\t@Watch('_show')\n\tpublic validateShow(value?: boolean): void {\n\t\tvalidateShow(this, value, { hooks: { afterPatch: this.handleShowAndDuration } });\n\t}\n\n\t@Watch('_showDuration')\n\tpublic validateShowDuration(value?: number): void {\n\t\twatchNumber(this, '_showDuration', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleShowAndDuration,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: AlertType): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_type',\n\t\t\t(value) => typeof value === 'string' && (value === 'default' || value === 'error' || value === 'info' || value === 'success' || value === 'warning'),\n\t\t\tnew Set('String {success, info, warning, error}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this._alert);\n\t\tthis.validateHasCloser(this._hasCloser);\n\t\tthis.validateHeading(this._heading);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateShow(this._show);\n\t\tthis.validateShowDuration(this._showDuration);\n\t\tthis.validateType(this._type);\n\t}\n\n\tprivate durationTimeout?: NodeJS.Timer;\n\n\tprivate readonly handleShowAndDuration = () => {\n\t\tif (this.state._show === true && typeof this.state._showDuration === 'number' && this.state._showDuration >= 0) {\n\t\t\tclearTimeout(this.durationTimeout as NodeJS.Timer);\n\t\t\tthis.durationTimeout = setTimeout(() => {\n\t\t\t\tthis.close();\n\t\t\t}, this.state._showDuration);\n\t\t}\n\t};\n\n\tprivate readonly close = () => {\n\t\tthis._show = false;\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_show: false,\n\t\t};\n\n\t\tif (this._on?.onClose !== undefined) {\n\t\t\tthis._on.onClose(new Event('Close'));\n\t\t}\n\t};\n\n\tprivate readonly on = {\n\t\tonClose: this.close,\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{this.state._show && (\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<kol-alert\n\t\t\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t\t\t_heading={this.state._heading}\n\t\t\t\t\t\t\t_level={this.state._level}\n\t\t\t\t\t\t\t_hasCloser={this.state._hasCloser}\n\t\t\t\t\t\t\t_type={this.state._type}\n\t\t\t\t\t\t\t_variant=\"card\"\n\t\t\t\t\t\t\t// tabindex=\"0\"\n\t\t\t\t\t\t\t_on={this.on}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</kol-alert>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":";;;6VAeO,MAAMA,EAAoB,CAACC,EAAsCC,KACvEC,EAAaF,EAAW,aAAcC,EAAM,EChB7C,MAAME,EAAkB,u6B,MCkCXC,EAAQ,M,yBAqHHC,KAAAC,sBAAwB,KACxC,GAAID,KAAKE,MAAMC,QAAU,aAAeH,KAAKE,MAAME,gBAAkB,UAAYJ,KAAKE,MAAME,eAAiB,EAAG,CAC/GC,aAAaL,KAAKM,iBAClBN,KAAKM,gBAAkBC,YAAW,KACjCP,KAAKQ,OAAO,GACVR,KAAKE,MAAME,c,GAICJ,KAAAQ,MAAQ,K,MACxBR,KAAKG,MAAQ,MACbH,KAAKE,MAAKO,OAAAC,OAAAD,OAAAC,OAAA,GACNV,KAAKE,OAAK,CACbC,MAAO,QAGR,KAAIQ,EAAAX,KAAKY,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAYC,UAAW,CACpCd,KAAKY,IAAIC,QAAQ,IAAIE,MAAM,S,GAIZf,KAAAgB,GAAK,CACrBH,QAASb,KAAKQ,O,YAvIoC,K,gBAKI,M,cAKpB,G,YAKI,E,8BAU0B,K,mBAKzB,I,WAKL,U,WAEH,CAC/BS,OAAQ,KACRC,OAAQ,EACRf,MAAO,K,CAIDgB,cAAcvB,GACpBC,EAAaG,KAAM,SAAUJ,E,CAIvBF,kBAAkBE,GACxBF,EAAkBM,KAAMJ,E,CAIlBwB,gBAAgBxB,GACtByB,EAAYrB,KAAM,WAAYJ,E,CAIxB0B,cAAc1B,GACpB2B,EAAkBvB,KAAMJ,E,CAIlB4B,WAAW5B,GACjB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChD6B,EAAY,4EACZ,MAAMC,EAAwC,GAC9C,UAAW9B,EAAMiB,UAAY,YAAcjB,EAAMiB,UAAY,KAAM,CAClEa,EAAUb,QAAUjB,EAAMiB,O,CAE3Bc,EAAqC3B,KAAM,MAAO0B,E,EAK7CE,aAAahC,GACnBgC,EAAa5B,KAAMJ,EAAO,CAAEiC,MAAO,CAAEC,WAAY9B,KAAKC,wB,CAIhD8B,qBAAqBnC,GAC3BoC,EAAYhC,KAAM,gBAAiBJ,EAAO,CACzCiC,MAAO,CACNC,WAAY9B,KAAKC,wB,CAMbgC,aAAarC,GACnBsC,EACClC,KACA,SACCJ,UAAiBA,IAAU,WAAaA,IAAU,WAAaA,IAAU,SAAWA,IAAU,QAAUA,IAAU,WAAaA,IAAU,YAC1I,IAAIuC,IAAI,0CACRvC,E,CAIKwC,oBACNpC,KAAKmB,cAAcnB,KAAKiB,QACxBjB,KAAKN,kBAAkBM,KAAKqC,YAC5BrC,KAAKoB,gBAAgBpB,KAAKsC,UAC1BtC,KAAKsB,cAActB,KAAKkB,QACxBlB,KAAKwB,WAAWxB,KAAKY,KACrBZ,KAAK4B,aAAa5B,KAAKG,OACvBH,KAAK+B,qBAAqB/B,KAAKI,eAC/BJ,KAAKiC,aAAajC,KAAKuC,M,CA8BjBC,SACN,OACCC,EAACC,EAAI,KACH1C,KAAKE,MAAMC,OACXsC,EAAA,WACCA,EAAA,aACCxB,OAAQjB,KAAKE,MAAMe,OACnBqB,SAAUtC,KAAKE,MAAMoC,SACrBpB,OAAQlB,KAAKE,MAAMgB,OACnBmB,WAAYrC,KAAKE,MAAMmC,WACvBE,MAAOvC,KAAKE,MAAMqC,MAClBI,SAAS,OAET/B,IAAKZ,KAAKgB,IAEVyB,EAAA,e"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as n,H as e}from"./index-50adf9a0.js";import{w as i}from"./button-link-249585bf.js";import{g as o,n as s}from"./dev.utils-bedce29d.js";import{w as r}from"./prop.validators-1f3db013.js";import{p as c}from"./reuse-56bb5a4b.js";import"./a11y.tipps-5ca36877.js";import"./index-81bd9b41.js";function l(t){return t.split("-")[1]}function a(t){return"y"===t?"height":"width"}function f(t){return t.split("-")[0]}function u(t){return["top","bottom"].includes(f(t))?"x":"y"}function d(t,e,i){let{reference:n,floating:o}=t;const r=n.x+n.width/2-o.width/2,s=n.y+n.height/2-o.height/2,c=u(e),p=a(c),d=n[p]/2-o[p]/2,h="x"===c;let m;switch(f(e)){case"top":m={x:r,y:n.y-o.height};break;case"bottom":m={x:r,y:n.y+n.height};break;case"right":m={x:n.x+n.width,y:s};break;case"left":m={x:n.x-o.width,y:s};break;default:m={x:n.x,y:n.y}}switch(l(e)){case"start":m[c]-=d*(i&&h?-1:1);break;case"end":m[c]+=d*(i&&h?-1:1)}return m}const h=async(t,e,i)=>{const{placement:n="bottom",strategy:o="absolute",middleware:r=[],platform:s}=i,l=r.filter(Boolean),a=await(null==s.isRTL?void 0:s.isRTL(e));let c=await s.getElementRects({reference:t,floating:e,strategy:o}),{x:f,y:u}=d(c,n,a),p=n,h={},m=0;for(let i=0;i<l.length;i++){const{name:r,fn:y}=l[i],{x:g,y:v,data:x,reset:b}=await y({x:f,y:u,initialPlacement:n,placement:p,strategy:o,middlewareData:h,rects:c,platform:s,elements:{reference:t,floating:e}});f=null!=g?g:f,u=null!=v?v:u,h={...h,[r]:{...h[r],...x}},b&&m<=50&&(m++,"object"==typeof b&&(b.placement&&(p=b.placement),b.rects&&(c=!0===b.rects?await s.getElementRects({reference:t,floating:e,strategy:o}):b.rects),({x:f,y:u}=d(c,p,a))),i=-1)}return{x:f,y:u,placement:p,strategy:o,middlewareData:h}};function p(t){return{top:0,right:0,bottom:0,left:0,...t}}function m(t){return"number"!=typeof t?p(t):{top:t,right:t,bottom:t,left:t}}function y(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function b(t,e){var i;void 0===e&&(e={});const{x:n,y:o,platform:r,rects:s,elements:l,strategy:a}=t,{boundary:c="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:p=!1,padding:d=0}=e,h=m(d),g=l[p?"floating"===u?"reference":"floating":u],v=y(await r.getClippingRect({element:null==(i=await(null==r.isElement?void 0:r.isElement(g)))||i?g:g.contextElement||await(null==r.getDocumentElement?void 0:r.getDocumentElement(l.floating)),boundary:c,rootBoundary:f,strategy:a})),x="floating"===u?{...s.floating,x:n,y:o}:s.reference,b=await(null==r.getOffsetParent?void 0:r.getOffsetParent(l.floating)),w=await(null==r.isElement?void 0:r.isElement(b))&&await(null==r.getScale?void 0:r.getScale(b))||{x:1,y:1},E=y(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({rect:x,offsetParent:b,strategy:a}):x);return{top:(v.top-E.top+h.top)/w.y,bottom:(E.bottom-v.bottom+h.bottom)/w.y,left:(v.left-E.left+h.left)/w.x,right:(E.right-v.right+h.right)/w.x}}const x=Math.min,g=Math.max;function w(t,e,i){return g(t,x(e,i))}const v=t=>({name:"arrow",options:t,async fn(e){const{element:i,padding:n=0}=t||{},{x:o,y:r,placement:s,rects:c,platform:f,elements:p}=e;if(null==i)return{};const d=m(n),h={x:o,y:r},y=u(s),g=a(y),v=await f.getDimensions(i),x="y"===y,b=x?"top":"left",E=x?"bottom":"right",L=x?"clientHeight":"clientWidth",T=c.reference[g]+c.reference[y]-h[y]-c.floating[g],k=h[y]-c.reference[y],F=await(null==f.getOffsetParent?void 0:f.getOffsetParent(i));let R=F?F[L]:0;R&&await(null==f.isElement?void 0:f.isElement(F))||(R=p.floating[L]||c.floating[g]);const A=T/2-k/2,O=d[b],C=R-v[g]-d[E],H=R/2-v[g]/2+A,_=w(O,H,C),P=null!=l(s)&&H!=_&&c.reference[g]/2-(H<O?d[b]:d[E])-v[g]/2<0;return{[y]:h[y]-(P?H<O?O-H:C-H:0),data:{[y]:_,centerOffset:H-_}}}}),k={left:"right",right:"left",bottom:"top",top:"bottom"};function A(t){return t.replace(/left|right|bottom|top/g,(t=>k[t]))}function _(t,e,i){void 0===i&&(i=!1);const n=l(t),o=u(t),r=a(o);let s="x"===o?n===(i?"end":"start")?"right":"left":"start"===n?"bottom":"top";return e.reference[r]>e.floating[r]&&(s=A(s)),{main:s,cross:A(s)}}const j={start:"end",end:"start"};function R(t){return t.replace(/start|end/g,(t=>j[t]))}function T(t){const e=A(t);return[R(t),e,R(e)]}function z(t,e,i){const n=["left","right"],o=["right","left"],r=["top","bottom"],s=["bottom","top"];switch(t){case"top":case"bottom":return i?e?o:n:e?n:o;case"left":case"right":return e?r:s;default:return[]}}function L(t,e,i,n){const o=l(t);let r=z(f(t),"start"===i,n);return o&&(r=r.map((t=>t+"-"+o)),e&&(r=r.concat(r.map(R)))),r}const O=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var i;const{placement:n,middlewareData:o,rects:r,initialPlacement:s,platform:l,elements:a}=e,{mainAxis:c=!0,crossAxis:u=!0,fallbackPlacements:p,fallbackStrategy:d="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:m=!0,...y}=t,g=f(n),v=f(s)===s,x=await(null==l.isRTL?void 0:l.isRTL(a.floating)),w=p||(v||!m?[A(s)]:T(s));p||"none"===h||w.push(...L(s,m,h,x));const E=[s,...w],k=await b(e,y),F=[];let R=(null==(i=o.flip)?void 0:i.overflows)||[];if(c&&F.push(k[g]),u){const{main:t,cross:e}=_(n,r,x);F.push(k[t],k[e])}if(R=[...R,{placement:n,overflows:F}],!F.every((t=>t<=0))){var O,C;const t=((null==(O=o.flip)?void 0:O.index)||0)+1,e=E[t];if(e)return{data:{index:t,overflows:R},reset:{placement:e}};let i=null==(C=R.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:C.placement;if(!i)switch(d){case"bestFit":{var H;const t=null==(H=R.map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,e)=>t+e),0)])).sort(((t,e)=>t[1]-e[1]))[0])?void 0:H[0];t&&(i=t);break}case"initialPlacement":i=s}if(n!==i)return{reset:{placement:i}}}return{}}}};async function P(t,e){const{placement:i,platform:n,elements:o}=t,r=await(null==n.isRTL?void 0:n.isRTL(o.floating)),s=f(i),a=l(i),c="x"===u(i),p=["left","top"].includes(s)?-1:1,d=r&&c?-1:1,h="function"==typeof e?e(t):e;let{mainAxis:m,crossAxis:y,alignmentAxis:g}="number"==typeof h?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...h};return a&&"number"==typeof g&&(y="end"===a?-1*g:g),c?{x:y*d,y:m*p}:{x:m*p,y:y*d}}const $=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:i,y:n}=e,o=await P(e,t);return{x:i+o.x,y:n+o.y,data:o}}}};function D(t){return"x"===t?"y":"x"}const C=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:n,placement:o}=e,{mainAxis:r=!0,crossAxis:s=!1,limiter:l={fn:t=>{let{x:e,y:i}=t;return{x:e,y:i}}},...a}=t,c={x:i,y:n},p=await b(e,a),d=u(f(o)),h=D(d);let m=c[d],y=c[h];if(r){const t="y"===d?"bottom":"right";m=w(m+p["y"===d?"top":"left"],m,m-p[t])}if(s){const t="y"===h?"bottom":"right";y=w(y+p["y"===h?"top":"left"],y,y-p[t])}const g=l.fn({...e,[d]:m,[h]:y});return{...g,data:{x:g.x-i,y:g.y-n}}}}};function F(t){var e;return(null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function M(t){return F(t).getComputedStyle(t)}function S(t){return t instanceof F(t).Node}function B(t){return S(t)?(t.nodeName||"").toLowerCase():""}let E;function I(){if(E)return E;const t=navigator.userAgentData;return t&&Array.isArray(t.brands)?(E=t.brands.map((t=>t.brand+"/"+t.version)).join(" "),E):navigator.userAgent}function H(t){return t instanceof F(t).HTMLElement}function N(t){return t instanceof F(t).Element}function W(t){if("undefined"==typeof ShadowRoot)return!1;return t instanceof F(t).ShadowRoot||t instanceof ShadowRoot}function V(t){const{overflow:e,overflowX:i,overflowY:n,display:o}=M(t);return/auto|scroll|overlay|hidden|clip/.test(e+n+i)&&!["inline","contents"].includes(o)}function X(t){return["table","td","th"].includes(B(t))}function Y(t){const e=/firefox/i.test(I()),i=M(t),n=i.backdropFilter||i.WebkitBackdropFilter;return"none"!==i.transform||"none"!==i.perspective||!!n&&"none"!==n||e&&"filter"===i.willChange||e&&!!i.filter&&"none"!==i.filter||["transform","perspective"].some((t=>i.willChange.includes(t)))||["paint","layout","strict","content"].some((t=>{const e=i.contain;return null!=e&&e.includes(t)}))}function q(){return/^((?!chrome|android).)*safari/i.test(I())}function G(t){return["html","body","#document"].includes(B(t))}const J=Math.min,K=Math.max,Q=Math.round;function U(t){const e=M(t);let i=parseFloat(e.width),n=parseFloat(e.height);const o=H(t),r=o?t.offsetWidth:i,s=o?t.offsetHeight:n,l=Q(i)!==r||Q(n)!==s;return l&&(i=r,n=s),{width:i,height:n,fallback:l}}function Z(t){return N(t)?t:t.contextElement}const tt={x:1,y:1};function nt(t){const e=Z(t);if(!H(e))return tt;const i=e.getBoundingClientRect(),{width:n,height:o,fallback:r}=U(e);let s=(r?Q(i.width):i.width)/n,l=(r?Q(i.height):i.height)/o;return s&&Number.isFinite(s)||(s=1),l&&Number.isFinite(l)||(l=1),{x:s,y:l}}function et(t,e,i,n){var o,r;void 0===e&&(e=!1),void 0===i&&(i=!1);const s=t.getBoundingClientRect(),l=Z(t);let a=tt;e&&(n?N(n)&&(a=nt(n)):a=nt(t));const c=l?F(l):window,f=q()&&i;let u=(s.left+(f&&(null==(o=c.visualViewport)?void 0:o.offsetLeft)||0))/a.x,p=(s.top+(f&&(null==(r=c.visualViewport)?void 0:r.offsetTop)||0))/a.y,d=s.width/a.x,h=s.height/a.y;if(l){const t=F(l),e=n&&N(n)?F(n):n;let i=t.frameElement;for(;i&&n&&e!==t;){const t=nt(i),e=i.getBoundingClientRect(),n=getComputedStyle(i);e.x+=(i.clientLeft+parseFloat(n.paddingLeft))*t.x,e.y+=(i.clientTop+parseFloat(n.paddingTop))*t.y,u*=t.x,p*=t.y,d*=t.x,h*=t.y,u+=e.x,p+=e.y,i=F(i).frameElement}}return y({width:d,height:h,x:u,y:p})}function it(t){return((S(t)?t.ownerDocument:t.document)||window.document).documentElement}function ot(t){return N(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function st(t){let{rect:e,offsetParent:i,strategy:n}=t;const o=H(i),r=it(i);if(i===r)return e;let s={scrollLeft:0,scrollTop:0},l={x:1,y:1};const a={x:0,y:0};if((o||!o&&"fixed"!==n)&&(("body"!==B(i)||V(r))&&(s=ot(i)),H(i))){const t=et(i);l=nt(i),a.x=t.x+i.clientLeft,a.y=t.y+i.clientTop}return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-s.scrollLeft*l.x+a.x,y:e.y*l.y-s.scrollTop*l.y+a.y}}function rt(t){return et(it(t)).left+ot(t).scrollLeft}function ct(t){const e=it(t),i=ot(t),n=t.ownerDocument.body,o=K(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),r=K(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight);let s=-i.scrollLeft+rt(t);const l=-i.scrollTop;return"rtl"===M(n).direction&&(s+=K(e.clientWidth,n.clientWidth)-o),{width:o,height:r,x:s,y:l}}function lt(t){if("html"===B(t))return t;const e=t.assignedSlot||t.parentNode||W(t)&&t.host||it(t);return W(e)?e.host:e}function at(t){const e=lt(t);return G(e)?e.ownerDocument.body:H(e)&&V(e)?e:at(e)}function ft(t,e){var i;void 0===e&&(e=[]);const n=at(t),o=n===(null==(i=t.ownerDocument)?void 0:i.body),r=F(n);return o?e.concat(r,r.visualViewport||[],V(n)?n:[]):e.concat(n,ft(n))}function ut(t,e){const i=F(t),n=it(t),o=i.visualViewport;let r=n.clientWidth,s=n.clientHeight,l=0,a=0;if(o){r=o.width,s=o.height;const t=q();(!t||t&&"fixed"===e)&&(l=o.offsetLeft,a=o.offsetTop)}return{width:r,height:s,x:l,y:a}}function dt(t,e){const i=et(t,!0,"fixed"===e),n=i.top+t.clientTop,o=i.left+t.clientLeft,r=H(t)?nt(t):{x:1,y:1};return{width:t.clientWidth*r.x,height:t.clientHeight*r.y,x:o*r.x,y:n*r.y}}function ht(t,e,i){let n;if("viewport"===e)n=ut(t,i);else if("document"===e)n=ct(it(t));else if(N(e))n=dt(e,i);else{const i={...e};if(q()){var o,r;const e=F(t);i.x-=(null==(o=e.visualViewport)?void 0:o.offsetLeft)||0,i.y-=(null==(r=e.visualViewport)?void 0:r.offsetTop)||0}n=i}return y(n)}function pt(t,e){const i=e.get(t);if(i)return i;let n=ft(t).filter((t=>N(t)&&"body"!==B(t))),o=null;const r="fixed"===M(t).position;let s=r?lt(t):t;for(;N(s)&&!G(s);){const t=M(s),e=Y(s);if("fixed"===t.position)o=null;else{(r?!e&&!o:!e&&"static"===t.position&&!!o&&["absolute","fixed"].includes(o.position))?n=n.filter((t=>t!==s)):o=t}s=lt(s)}return e.set(t,n),n}function mt(t){let{element:e,boundary:i,rootBoundary:n,strategy:o}=t;const r=[..."clippingAncestors"===i?pt(e,this._c):[].concat(i),n],s=r[0],l=r.reduce(((t,i)=>{const n=ht(e,i,o);return t.top=K(n.top,t.top),t.right=J(n.right,t.right),t.bottom=J(n.bottom,t.bottom),t.left=K(n.left,t.left),t}),ht(e,s,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function yt(t){return U(t)}function bt(t,e){return H(t)&&"fixed"!==M(t).position?e?e(t):t.offsetParent:null}function xt(t){let e=lt(t);for(;H(e)&&!G(e);){if(Y(e))return e;e=lt(e)}return null}function gt(t,e){const i=F(t);if(!H(t))return i;let n=bt(t,e);for(;n&&X(n)&&"static"===M(n).position;)n=bt(n,e);return n&&("html"===B(n)||"body"===B(n)&&"static"===M(n).position&&!Y(n))?i:n||xt(t)||i}function wt(t,e,i){const n=H(e),o=it(e),r=et(t,!0,"fixed"===i,e);let s={scrollLeft:0,scrollTop:0};const l={x:0,y:0};if(n||!n&&"fixed"!==i)if(("body"!==B(e)||V(o))&&(s=ot(e)),H(e)){const t=et(e,!0);l.x=t.x+e.clientLeft,l.y=t.y+e.clientTop}else o&&(l.x=rt(o));return{x:r.left+s.scrollLeft-l.x,y:r.top+s.scrollTop-l.y,width:r.width,height:r.height}}const vt={getClippingRect:mt,convertOffsetParentRelativeRectToViewportRelativeRect:st,isElement:N,getDimensions:yt,getOffsetParent:gt,getDocumentElement:it,getScale:nt,async getElementRects(t){let{reference:e,floating:i,strategy:n}=t;const o=this.getOffsetParent||gt,r=this.getDimensions;return{reference:wt(e,await o(i),n),floating:{x:0,y:0,...await r(i)}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>"rtl"===M(t).direction},kt=(t,e,i)=>{const n=new Map,o={platform:vt,...i},r={...o.platform,_c:n};return h(t,e,{...o,platform:r})},At=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*[role='button'],button:not([role='link']),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'],option,select,textarea{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}: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,input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],option,select{cursor:pointer;font-family:inherit;font-size:inherit}.icon-only>kol-span-wc>span>span{display:none}kol-tooltip #floating{animation-name:fadeInOpacity;animation-iteration-count:1;animation-timing-function:ease-in;animation-duration:0.5s;box-sizing:border-box;display:none;position:absolute;visibility:hidden}kol-tooltip #arrow{background:#333;height:10px;position:absolute;transform:rotate(45deg);width:10px;z-index:999}kol-tooltip kol-badge{position:relative;z-index:1000}@keyframes fadeInOpacity{0%{opacity:0}100%{opacity:1}}",_t=class{constructor(e){t(this,e),this.alignTooltip=t=>{var e;if("test"!==c&&this.previousSibling){const i=this.previousSibling;if(this.tooltipElement){const n=this.tooltipElement,o=this.arrowElement,r=[$(null!==(e=null==o?void 0:o.offsetHeight)&&void 0!==e?e:10),O(),C()];o&&r.push(v({element:o})),kt(i,n,{placement:this.state._align,middleware:r}).then((({x:e,y:i,middlewareData:r,placement:s})=>{var l,a;const c=n.style.left,f=n.style.top;Object.assign(n.style,{left:`${e}px`,top:`${i}px`}),o&&((null===(l=r.arrow)||void 0===l?void 0:l.x)?Object.assign(o.style,{left:`${r.arrow.x}px`,top:"bottom"===s?-o.offsetHeight/2+"px":"",bottom:"top"===s?-o.offsetHeight/2+"px":""}):(null===(a=r.arrow)||void 0===a?void 0:a.y)&&Object.assign(o.style,{left:"right"===s?-o.offsetWidth/2+"px":"",right:"left"===s?-o.offsetWidth/2+"px":"",top:`${r.arrow.y}px`})),c!==n.style.left||f!==n.style.top?this.alignTooltip(t):"function"==typeof t&&t()}))}}},this.showTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","block"),o().body.addEventListener("keyup",this.hideTooltipByEscape),this.alignTooltip((()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("visibility","visible"),document.addEventListener("scroll",this.showTooltip))})))},this.hideTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","none"),this.tooltipElement.style.setProperty("visibility","hidden"),document.removeEventListener("scroll",this.showTooltip))},this.hideTooltipByEscape=t=>{"Escape"===t.key&&(o().body.removeEventListener("keyup",this.hideTooltipByEscape),this.hideTooltip())},this.addListeners=t=>{t.addEventListener("mouseover",this.incrementOverFocusCount),t.addEventListener("focus",this.incrementOverFocusCount),t.addEventListener("mouseout",this.decrementOverFocusCount),t.addEventListener("blur",this.decrementOverFocusCount)},this.removeListeners=t=>{t.removeEventListener("mouseover",this.incrementOverFocusCount),t.removeEventListener("focus",this.incrementOverFocusCount),t.removeEventListener("mouseout",this.decrementOverFocusCount),t.removeEventListener("blur",this.decrementOverFocusCount)},this.resyncListeners=t=>{this.removeListeners(t),this.addListeners(t)},this.catchHostElement=t=>{t&&(this.previousSibling=t.previousElementSibling,this.previousSibling&&this.resyncListeners(this.previousSibling))},this.catchTooltipElement=t=>{this.tooltipElement=t,this.tooltipElement&&this.resyncListeners(this.tooltipElement)},this.catchArrowElement=t=>{this.arrowElement=t},this.overFocusCount=0,this.incrementOverFocusCount=()=>{this.overFocusCount++,this.showOrHideTooltip()},this.decrementOverFocusCount=()=>{this.overFocusCount--,this.showOrHideTooltip()},this.showOrHideTooltip=()=>{clearTimeout(this.overFocusTimeout),this.overFocusTimeout=setTimeout((()=>{clearTimeout(this.overFocusTimeout),this.overFocusCount>0?this.showTooltip():this.hideTooltip()}),250)},this._align="top",this._id=void 0,this._label=void 0,this.state={_align:"top",_id:s(),_label:"…"}}render(){return n(e,{ref:this.catchHostElement},""!==this.state._label&&n("div",{id:"floating",ref:this.catchTooltipElement},n("div",{id:"arrow",ref:this.catchArrowElement}),n("kol-badge",{id:this.state._id,_color:{backgroundColor:"#333",color:"#ddd"},_label:this.state._label})))}validateAlign(t){i(this,"_align",t)}validateId(t){r(this,"_id",t)}validateLabel(t){r(this,"_label",t)}componentWillLoad(){this.validateAlign(this._align),this.validateId(this._id),this.validateLabel(this._label)}disconnectedCallback(){this.previousSibling&&this.removeListeners(this.previousSibling),this.tooltipElement&&this.removeListeners(this.tooltipElement)}static get watchers(){return{_align:["validateAlign"],_id:["validateId"],_label:["validateLabel"]}}};_t.style={default:At};export{_t as kol_tooltip};
4
+ import{r as i,h as t,H as s}from"./index-0e29e47a.js";import{c as o,o as e,f as a,s as n,a as h}from"./floating-ui.dom.esm-735f9fad.js";import{w as l}from"./button-link-4a7e6a2e.js";import{g as r,n as p}from"./dev.utils-157f0499.js";import{w as d}from"./prop.validators-e15a584f.js";import{p as c}from"./reuse-3a02afb9.js";import"./a11y.tipps-1cea9822.js";import"./index-f4596895.js";const f=":host{--a11y-min-size:44px}*{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}kol-tooltip #floating{animation-duration:0.5s;animation-iteration-count:1;animation-name:fadeInOpacity;animation-timing-function:ease-in;box-sizing:border-box;display:none;position:absolute;visibility:hidden}kol-tooltip #arrow{height:10px;position:absolute;transform:rotate(45deg);width:10px;z-index:999}kol-tooltip .area{background-color:#fff;color:#000}kol-tooltip kol-span-wc{position:relative;z-index:1000}@keyframes fadeInOpacity{0%{opacity:0}100%{opacity:1}}",m=class{constructor(t){i(this,t),this.alignTooltip=t=>{var i;if("test"!==c&&this.previousSibling&&this.tooltipElement){const s=this.previousSibling,l=this.tooltipElement,r=this.arrowElement,p=[e(null!==(i=null==r?void 0:r.offsetHeight)&&void 0!==i?i:10),a(),n()];r&&p.push(h({element:r})),o(s,l,{placement:this.state._align,middleware:p}).then((({x:e,y:i,middlewareData:o,placement:s})=>{var n,a;const h=l.style.left,p=l.style.top;Object.assign(l.style,{left:`${e}px`,top:`${i}px`}),r&&((null===(n=o.arrow)||void 0===n?void 0:n.x)?Object.assign(r.style,{left:`${o.arrow.x}px`,top:"bottom"===s?-r.offsetHeight/2+"px":"",bottom:"top"===s?-r.offsetHeight/2+"px":""}):(null===(a=o.arrow)||void 0===a?void 0:a.y)&&Object.assign(r.style,{left:"right"===s?-r.offsetWidth/2+"px":"",right:"left"===s?-r.offsetWidth/2+"px":"",top:`${o.arrow.y}px`})),h!==l.style.left||p!==l.style.top?this.alignTooltip(t):"function"==typeof t&&t()}))}},this.showTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","block"),r().body.addEventListener("keyup",this.hideTooltipByEscape),this.alignTooltip((()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("visibility","visible"),document.addEventListener("scroll",this.showTooltip))})))},this.hideTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","none"),this.tooltipElement.style.setProperty("visibility","hidden"),document.removeEventListener("scroll",this.showTooltip))},this.hideTooltipByEscape=t=>{"Escape"===t.key&&(r().body.removeEventListener("keyup",this.hideTooltipByEscape),this.hideTooltip())},this.addListeners=t=>{t.addEventListener("mouseover",this.incrementOverFocusCount),t.addEventListener("focus",this.incrementOverFocusCount),t.addEventListener("mouseout",this.decrementOverFocusCount),t.addEventListener("blur",this.decrementOverFocusCount)},this.removeListeners=t=>{t.removeEventListener("mouseover",this.incrementOverFocusCount),t.removeEventListener("focus",this.incrementOverFocusCount),t.removeEventListener("mouseout",this.decrementOverFocusCount),t.removeEventListener("blur",this.decrementOverFocusCount)},this.resyncListeners=t=>{this.removeListeners(t),this.addListeners(t)},this.catchHostElement=t=>{t&&(this.previousSibling=t.previousElementSibling,this.previousSibling&&this.resyncListeners(this.previousSibling))},this.catchTooltipElement=t=>{this.tooltipElement=t,this.tooltipElement&&this.resyncListeners(this.tooltipElement)},this.catchArrowElement=t=>{this.arrowElement=t},this.overFocusCount=0,this.incrementOverFocusCount=()=>{this.overFocusCount++,this.showOrHideTooltip()},this.decrementOverFocusCount=()=>{this.overFocusCount--,this.showOrHideTooltip()},this.showOrHideTooltip=()=>{clearTimeout(this.overFocusTimeout),this.overFocusTimeout=setTimeout((()=>{clearTimeout(this.overFocusTimeout),this.overFocusCount>0?this.showTooltip():this.hideTooltip()}),250)},this._align="top",this._id=void 0,this._label=void 0,this.state={_align:"top",_id:p(),_label:"…"}}render(){return t(s,{ref:this.catchHostElement},""!==this.state._label&&t("div",{id:"floating",ref:this.catchTooltipElement},t("div",{class:"area",id:"arrow",ref:this.catchArrowElement}),t("kol-span-wc",{class:"area",id:this.state._id,_label:this.state._label})))}validateAlign(t){l(this,"_align",t)}validateId(t){d(this,"_id",t)}validateLabel(t){d(this,"_label",t)}componentWillLoad(){this.validateAlign(this._align),this.validateId(this._id),this.validateLabel(this._label)}disconnectedCallback(){this.previousSibling&&this.removeListeners(this.previousSibling),this.tooltipElement&&this.removeListeners(this.tooltipElement)}static get watchers(){return{_align:["validateAlign"],_id:["validateId"],_label:["validateLabel"]}}};m.style={default:f};export{m as kol_tooltip};
@@ -1 +1 @@
1
- {"version":3,"names":["getAlignment","placement","split","getLengthFromAxis","axis","getSide","getMainAxisFromPlacement","includes","computeCoordsFromPlacement","_ref","rtl","reference","floating","commonX","x","width","commonY","y","height","mainAxis","length","commonAlign","side","isVertical","coords","computePosition","async","config","strategy","middleware","platform","validMiddleware","filter","Boolean","isRTL","rects","getElementRects","statefulPlacement","middlewareData","resetCount","i","name","fn","nextX","nextY","data","reset","initialPlacement","elements","expandPaddingObject","padding","top","right","bottom","left","getSideObjectFromPadding","rectToClientRect","rect","detectOverflow","state","options","_await$platform$isEle","boundary","rootBoundary","elementContext","altBoundary","paddingObject","altContext","element","clippingClientRect","getClippingRect","isElement","contextElement","getDocumentElement","offsetParent","getOffsetParent","offsetScale","getScale","elementClientRect","convertOffsetParentRelativeRectToViewportRelativeRect","min","Math","max","within","min$1","value","max$1","arrow","arrowDimensions","getDimensions","isYAxis","minProp","maxProp","clientProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","center","offset","shouldAddOffset","alignmentOffset","centerOffset","oppositeSideMap","getOppositePlacement","replace","getAlignmentSides","alignment","mainAlignmentSide","main","cross","oppositeAlignmentMap","start","end","getOppositeAlignmentPlacement","getExpandedPlacements","oppositePlacement","getSideList","isStart","lr","rl","tb","bt","getOppositeAxisPlacements","flipAlignment","direction","list","map","concat","flip","_middlewareData$flip","checkMainAxis","crossAxis","checkCrossAxis","fallbackPlacements","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","detectOverflowOptions","isBasePlacement","push","placements","overflow","overflows","overflowsData","every","_middlewareData$flip2","_overflowsData$filter","nextIndex","index","nextPlacement","resetPlacement","d","sort","a","b","_overflowsData$map$so","reduce","acc","convertValueToCoords","mainAxisMulti","crossAxisMulti","rawValue","alignmentAxis","diffCoords","getCrossAxis","shift","limiter","mainAxisCoord","crossAxisCoord","minSide","maxSide","limitedCoords","getWindow","node","_node$ownerDocument","ownerDocument","defaultView","window","getComputedStyle$1","getComputedStyle","isNode","Node","getNodeName","nodeName","toLowerCase","uaString","getUAString","uaData","navigator","userAgentData","Array","isArray","brands","item","brand","version","join","userAgent","isHTMLElement","HTMLElement","Element","isShadowRoot","ShadowRoot","OwnElement","isOverflowElement","overflowX","overflowY","display","test","isTableElement","isContainingBlock","isFirefox","css","backdropFilter","WebkitBackdropFilter","transform","perspective","willChange","some","contain","isClientRectVisualViewportBased","isLastTraversableNode","round","getCssDimensions","parseFloat","hasOffset","offsetWidth","offsetHeight","shouldFallback","fallback","unwrapElement","FALLBACK_SCALE","domElement","getBoundingClientRect","Number","isFinite","includeScale","isFixedStrategy","_win$visualViewport","_win$visualViewport2","clientRect","scale","win","addVisualOffsets","visualViewport","offsetLeft","offsetTop","offsetWin","currentIFrame","frameElement","iframeScale","iframeRect","clientLeft","paddingLeft","clientTop","paddingTop","document","documentElement","getNodeScroll","scrollLeft","scrollTop","pageXOffset","pageYOffset","isOffsetParentAnElement","scroll","offsets","offsetRect","getWindowScrollBarX","getDocumentRect","html","body","scrollWidth","clientWidth","scrollHeight","clientHeight","getParentNode","result","assignedSlot","parentNode","host","getNearestOverflowAncestor","getOverflowAncestors","scrollableAncestor","isBody","getViewportRect","visualViewportBased","getInnerBoundingClientRect","getClientRectFromClippingAncestor","clippingAncestor","mutableRect","getClippingElementAncestors","cache","cachedResult","get","el","currentContainingBlockComputedStyle","elementIsFixed","position","currentNode","computedStyle","containingBlock","shouldIgnoreCurrentNode","shouldDropCurrentNode","ancestor","set","elementClippingAncestors","this","_c","clippingAncestors","firstClippingAncestor","clippingRect","accRect","getTrueOffsetParent","polyfill","getContainingBlock","getRectRelativeToOffsetParent","getOffsetParentFn","getDimensionsFn","getClientRects","from","Map","mergedOptions","platformWithCache","computePosition$1","defaultStyleCss","KolTooltip","alignTooltip","cb","processEnv","previousSibling","target","tooltipElement","tooltipEl","arrowEl","arrowElement","_a","_align","then","oldPos","style","Object","assign","_b","showTooltip","setProperty","getDocument","addEventListener","hideTooltipByEscape","hideTooltip","removeEventListener","event","key","addListeners","incrementOverFocusCount","decrementOverFocusCount","removeListeners","resyncListeners","catchHostElement","previousElementSibling","catchTooltipElement","catchArrowElement","overFocusCount","showOrHideTooltip","clearTimeout","overFocusTimeout","setTimeout","_id","nonce","_label","render","h","Host","ref","id","_color","backgroundColor","color","validateAlign","watchTooltipAlignment","validateId","watchString","validateLabel","componentWillLoad","disconnectedCallback"],"sources":["./node_modules/@floating-ui/core/dist/floating-ui.core.esm.js","./node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js","./src/components/tooltip/style.css?tag=kol-tooltip&mode=default","./src/components/tooltip/component.tsx"],"sourcesContent":["function getAlignment(placement) {\n return placement.split('-')[1];\n}\n\nfunction getLengthFromAxis(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\n\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\n\nfunction getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';\n}\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const mainAxis = getMainAxisFromPlacement(placement);\n const length = getLengthFromAxis(mainAxis);\n const commonAlign = reference[length] / 2 - floating[length] / 2;\n const side = getSide(placement);\n const isVertical = mainAxis === 'x';\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[mainAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[mainAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain positioning strategy.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n continue;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\n\nfunction getSideObjectFromPadding(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\n\nfunction rectToClientRect(rect) {\n return {\n ...rect,\n top: rect.y,\n left: rect.x,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n };\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = options;\n const paddingObject = getSideObjectFromPadding(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n ...rects.floating,\n x,\n y\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\nconst min = Math.min;\nconst max = Math.max;\n\nfunction within(min$1, value, max$1) {\n return max(min$1, min(value, max$1));\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = options || {};\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements\n } = state;\n if (element == null) {\n return {};\n }\n const paddingObject = getSideObjectFromPadding(padding);\n const coords = {\n x,\n y\n };\n const axis = getMainAxisFromPlacement(placement);\n const length = getLengthFromAxis(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min = paddingObject[minProp];\n const max = clientSize - arrowDimensions[length] - paddingObject[maxProp];\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = within(min, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. This stops `shift()` from taking action, but can\n // be worked around by calling it again after the `arrow()` if desired.\n const shouldAddOffset = getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min ? paddingObject[minProp] : paddingObject[maxProp]) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min ? min - center : max - center : 0;\n return {\n [axis]: coords[axis] - alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset\n }\n };\n }\n});\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-start\", side + \"-end\"), []);\n\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\n\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const mainAxis = getMainAxisFromPlacement(placement);\n const length = getLengthFromAxis(mainAxis);\n let mainAlignmentSide = mainAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return {\n main: mainAlignmentSide,\n cross: getOppositePlacement(mainAlignmentSide)\n };\n}\n\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = allPlacements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = options;\n const placements = alignment !== undefined || allowedPlacements === allPlacements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const {\n main,\n cross\n } = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[main], overflow[cross]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\n\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = options;\n const side = getSide(placement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const {\n main,\n cross\n } = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[main], overflow[cross]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$map$so;\n const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = options;\n const {\n rects\n } = state;\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = options;\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getSideObjectFromPadding(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getMainAxisFromPlacement(placement) === 'x') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\nasync function convertValueToCoords(state, value) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getMainAxisFromPlacement(placement) === 'x';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = typeof value === 'function' ? value(state) : value;\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: 0,\n crossAxis: 0,\n alignmentAxis: null,\n ...rawValue\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (value) {\n if (value === void 0) {\n value = 0;\n }\n return {\n name: 'offset',\n options: value,\n async fn(state) {\n const {\n x,\n y\n } = state;\n const diffCoords = await convertValueToCoords(state, value);\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: diffCoords\n };\n }\n };\n};\n\nfunction getCrossAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = options;\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const mainAxis = getMainAxisFromPlacement(getSide(placement));\n const crossAxis = getCrossAxis(mainAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = within(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = within(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = options;\n const coords = {\n x,\n y\n };\n const mainAxis = getMainAxisFromPlacement(placement);\n const crossAxis = getCrossAxis(mainAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = typeof offset === 'function' ? offset(state) : offset;\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = options;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const axis = getMainAxisFromPlacement(placement);\n const isXAxis = axis === 'x';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const overflowAvailableHeight = height - overflow[heightSide];\n const overflowAvailableWidth = width - overflow[widthSide];\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if (isXAxis) {\n availableWidth = min(\n // Maximum clipping viewport width\n width - overflow.right - overflow.left, overflowAvailableWidth);\n } else {\n availableHeight = min(\n // Maximum clipping viewport height\n height - overflow.bottom - overflow.top, overflowAvailableHeight);\n }\n if (!state.middlewareData.shift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isXAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, rectToClientRect, shift, size };\n","import { rectToClientRect, computePosition as computePosition$1 } from '@floating-ui/core';\nexport { arrow, autoPlacement, detectOverflow, flip, hide, inline, limitShift, offset, shift, size } from '@floating-ui/core';\n\nfunction getWindow(node) {\n var _node$ownerDocument;\n return ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\n\nfunction getComputedStyle$1(element) {\n return getWindow(element).getComputedStyle(element);\n}\n\nfunction isNode(value) {\n return value instanceof getWindow(value).Node;\n}\nfunction getNodeName(node) {\n return isNode(node) ? (node.nodeName || '').toLowerCase() : '';\n}\n\nlet uaString;\nfunction getUAString() {\n if (uaString) {\n return uaString;\n }\n const uaData = navigator.userAgentData;\n if (uaData && Array.isArray(uaData.brands)) {\n uaString = uaData.brands.map(item => item.brand + \"/\" + item.version).join(' ');\n return uaString;\n }\n return navigator.userAgent;\n}\n\nfunction isHTMLElement(value) {\n return value instanceof getWindow(value).HTMLElement;\n}\nfunction isElement(value) {\n return value instanceof getWindow(value).Element;\n}\nfunction isShadowRoot(node) {\n // Browsers without `ShadowRoot` support.\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n const OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle$1(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isContainingBlock(element) {\n // TODO: Try to use feature detection here instead.\n const isFirefox = /firefox/i.test(getUAString());\n const css = getComputedStyle$1(element);\n const backdropFilter = css.backdropFilter || css.WebkitBackdropFilter;\n\n // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (backdropFilter ? backdropFilter !== 'none' : false) || isFirefox && css.willChange === 'filter' || isFirefox && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective'].some(value => css.willChange.includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => {\n // Add type check for old browsers.\n const contain = css.contain;\n return contain != null ? contain.includes(value) : false;\n });\n}\n\n/**\n * Determines whether or not `.getBoundingClientRect()` is affected by visual\n * viewport offsets. In Safari, the `x`/`y` offsets are values relative to the\n * visual viewport, while in other engines, they are values relative to the\n * layout viewport.\n */\nfunction isClientRectVisualViewportBased() {\n // TODO: Try to use feature detection here instead. Feature detection for\n // this can fail in various ways, making the userAgent check the most\n // reliable:\n // • Always-visible scrollbar or not\n // • Width of <html>\n\n // Is Safari.\n return /^((?!chrome|android).)*safari/i.test(getUAString());\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\n\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle$1(element);\n let width = parseFloat(css.width);\n let height = parseFloat(css.height);\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n fallback: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nconst FALLBACK_SCALE = {\n x: 1,\n y: 1\n};\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return FALLBACK_SCALE;\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n fallback\n } = getCssDimensions(domElement);\n let x = (fallback ? round(rect.width) : rect.width) / width;\n let y = (fallback ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n var _win$visualViewport, _win$visualViewport2;\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = FALLBACK_SCALE;\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const win = domElement ? getWindow(domElement) : window;\n const addVisualOffsets = isClientRectVisualViewportBased() && isFixedStrategy;\n let x = (clientRect.left + (addVisualOffsets ? ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0 : 0)) / scale.x;\n let y = (clientRect.top + (addVisualOffsets ? ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0 : 0)) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentIFrame = win.frameElement;\n while (currentIFrame && offsetParent && offsetWin !== win) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle(currentIFrame);\n iframeRect.x += (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n iframeRect.y += (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += iframeRect.x;\n y += iframeRect.y;\n currentIFrame = getWindow(currentIFrame).frameElement;\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\nfunction getDocumentElement(node) {\n return ((isNode(node) ? node.ownerDocument : node.document) || window.document).documentElement;\n}\n\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.pageXOffset,\n scrollTop: element.pageYOffset\n };\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n if (offsetParent === documentElement) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = {\n x: 1,\n y: 1\n };\n const offsets = {\n x: 0,\n y: 0\n };\n if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle$1(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\n\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n // `getParentNode` will never return a `Document` due to the fallback\n // check, so it's either the <html> or <body> element.\n return parentNode.ownerDocument.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\n\nfunction getOverflowAncestors(node, list) {\n var _node$ownerDocument;\n if (list === void 0) {\n list = [];\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));\n}\n\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isClientRectVisualViewportBased();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : {\n x: 1,\n y: 1\n };\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const mutableRect = {\n ...clippingAncestor\n };\n if (isClientRectVisualViewportBased()) {\n var _win$visualViewport, _win$visualViewport2;\n const win = getWindow(element);\n mutableRect.x -= ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0;\n mutableRect.y -= ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0;\n }\n rect = mutableRect;\n }\n return rectToClientRect(rect);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle$1(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle$1(currentNode);\n const containingBlock = isContainingBlock(currentNode);\n const shouldIgnoreCurrentNode = computedStyle.position === 'fixed';\n if (shouldIgnoreCurrentNode) {\n currentContainingBlockComputedStyle = null;\n } else {\n const shouldDropCurrentNode = elementIsFixed ? !containingBlock && !currentContainingBlockComputedStyle : !containingBlock && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n return getCssDimensions(element);\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n return element.offsetParent;\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else {\n currentNode = getParentNode(currentNode);\n }\n }\n return null;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const window = getWindow(element);\n if (!isHTMLElement(element)) {\n return window;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {\n return window;\n }\n return offsetParent || getContainingBlock(element) || window;\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = {\n x: 0,\n y: 0\n };\n if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent, true);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}\n\nconst platform = {\n getClippingRect,\n convertOffsetParentRelativeRectToViewportRelativeRect,\n isElement,\n getDimensions,\n getOffsetParent,\n getDocumentElement,\n getScale,\n async getElementRects(_ref) {\n let {\n reference,\n floating,\n strategy\n } = _ref;\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n return {\n reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),\n floating: {\n x: 0,\n y: 0,\n ...(await getDimensionsFn(floating))\n }\n };\n },\n getClientRects: element => Array.from(element.getClientRects()),\n isRTL: element => getComputedStyle$1(element).direction === 'rtl'\n};\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n ancestorScroll: _ancestorScroll = true,\n ancestorResize = true,\n elementResize = true,\n animationFrame = false\n } = options;\n const ancestorScroll = _ancestorScroll && !animationFrame;\n const ancestors = ancestorScroll || ancestorResize ? [...(isElement(reference) ? getOverflowAncestors(reference) : reference.contextElement ? getOverflowAncestors(reference.contextElement) : []), ...getOverflowAncestors(floating)] : [];\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.addEventListener('scroll', update, {\n passive: true\n });\n ancestorResize && ancestor.addEventListener('resize', update);\n });\n let observer = null;\n if (elementResize) {\n observer = new ResizeObserver(() => {\n update();\n });\n isElement(reference) && !animationFrame && observer.observe(reference);\n if (!isElement(reference) && reference.contextElement && !animationFrame) {\n observer.observe(reference.contextElement);\n }\n observer.observe(floating);\n }\n let frameId;\n let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n if (animationFrame) {\n frameLoop();\n }\n function frameLoop() {\n const nextRefRect = getBoundingClientRect(reference);\n if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n var _observer;\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n (_observer = observer) == null ? void 0 : _observer.disconnect();\n observer = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\n };\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain CSS positioning\n * strategy.\n */\nconst computePosition = (reference, floating, options) => {\n // This caches the expensive `getClippingElementAncestors` function so that\n // multiple lifecycle resets re-use the same result. It only lives for a\n // single call. If other functions become expensive, we can add them as well.\n const cache = new Map();\n const mergedOptions = {\n platform,\n ...options\n };\n const platformWithCache = {\n ...mergedOptions.platform,\n _c: cache\n };\n return computePosition$1(reference, floating, {\n ...mergedOptions,\n platform: platformWithCache\n });\n};\n\nexport { autoUpdate, computePosition, getOverflowAncestors, platform };\n","@import '../style.css';\n\nkol-tooltip #floating {\n\tanimation-name: fadeInOpacity;\n\tanimation-iteration-count: 1;\n\tanimation-timing-function: ease-in;\n\tanimation-duration: 0.5s;\n\tbox-sizing: border-box;\n\tdisplay: none;\n\tposition: absolute;\n\tvisibility: hidden;\n}\n\nkol-tooltip #arrow {\n\tbackground: #333;\n\theight: 10px;\n\tposition: absolute;\n\ttransform: rotate(45deg);\n\twidth: 10px;\n\tz-index: 999;\n}\n\nkol-tooltip kol-badge {\n\tposition: relative;\n\tz-index: 1000;\n}\n\n@keyframes fadeInOpacity {\n\t0% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n","import { arrow, computePosition, flip, offset, shift } from '@floating-ui/dom';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchTooltipAlignment } from '../../types/button-link';\nimport { Alignment } from '../../types/props/alignment';\nimport { getDocument, nonce } from '../../utils/dev.utils';\nimport { watchString } from '../../utils/prop.validators';\nimport { processEnv } from '../../utils/reuse';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tid: string;\n\tlabel: string;\n};\ntype OptionalProps = {\n\talign: Alignment;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps & OptionalProps;\ntype OptionalStates = unknown;\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-tooltip',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: false,\n})\nexport class KolTooltip implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate previousSibling?: HTMLElement | null;\n\tprivate tooltipElement?: HTMLDivElement;\n\tprivate arrowElement?: HTMLDivElement;\n\n\tprivate alignTooltip = (cb?: () => void): void => {\n\t\tif (processEnv !== 'test') {\n\t\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\t\tconst target = this.previousSibling;\n\t\t\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\t\t\tconst tooltipEl = this.tooltipElement;\n\t\t\t\t\tconst arrowEl = this.arrowElement;\n\n\t\t\t\t\tconst middleware = [offset(arrowEl?.offsetHeight ?? 10), flip(), shift()];\n\t\t\t\t\tif (arrowEl) {\n\t\t\t\t\t\tmiddleware.push(arrow({ element: arrowEl }));\n\t\t\t\t\t}\n\n\t\t\t\t\tvoid computePosition(target, tooltipEl, {\n\t\t\t\t\t\tplacement: this.state._align,\n\t\t\t\t\t\tmiddleware: middleware,\n\t\t\t\t\t}).then(({ x, y, middlewareData, placement }) => {\n\t\t\t\t\t\tconst oldPos = {\n\t\t\t\t\t\t\tleft: tooltipEl.style.left,\n\t\t\t\t\t\t\ttop: tooltipEl.style.top,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tObject.assign(tooltipEl.style, {\n\t\t\t\t\t\t\tleft: `${x}px`,\n\t\t\t\t\t\t\ttop: `${y}px`,\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tif (arrowEl) {\n\t\t\t\t\t\t\tif (middlewareData.arrow?.x) {\n\t\t\t\t\t\t\t\tObject.assign(arrowEl.style, {\n\t\t\t\t\t\t\t\t\tleft: `${middlewareData.arrow.x}px`,\n\t\t\t\t\t\t\t\t\ttop: placement === 'bottom' ? `${-arrowEl.offsetHeight / 2}px` : '',\n\t\t\t\t\t\t\t\t\tbottom: placement === 'top' ? `${-arrowEl.offsetHeight / 2}px` : '',\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t} else if (middlewareData.arrow?.y) {\n\t\t\t\t\t\t\t\tObject.assign(arrowEl.style, {\n\t\t\t\t\t\t\t\t\tleft: placement === 'right' ? `${-arrowEl.offsetWidth / 2}px` : '',\n\t\t\t\t\t\t\t\t\tright: placement === 'left' ? `${-arrowEl.offsetWidth / 2}px` : '',\n\t\t\t\t\t\t\t\t\ttop: `${middlewareData.arrow.y}px`,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (oldPos.left !== tooltipEl.style.left || oldPos.top !== tooltipEl.style.top) {\n\t\t\t\t\t\t\tthis.alignTooltip(cb);\n\t\t\t\t\t\t} else if (typeof cb === 'function') {\n\t\t\t\t\t\t\tcb();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\tprivate showTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.tooltipElement.style.setProperty('display', 'block');\n\t\t\tgetDocument().body.addEventListener('keyup', this.hideTooltipByEscape);\n\t\t\tthis.alignTooltip(() => {\n\t\t\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\t\t\tthis.tooltipElement.style.setProperty('visibility', 'visible');\n\t\t\t\t\tdocument.addEventListener('scroll', this.showTooltip);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\tprivate hideTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.tooltipElement.style.setProperty('display', 'none');\n\t\t\tthis.tooltipElement.style.setProperty('visibility', 'hidden');\n\t\t\tdocument.removeEventListener('scroll', this.showTooltip);\n\t\t}\n\t};\n\n\tprivate hideTooltipByEscape = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\tgetDocument().body.removeEventListener('keyup', this.hideTooltipByEscape);\n\t\t\tthis.hideTooltip();\n\t\t}\n\t};\n\n\tprivate addListeners = (el: Element): void => {\n\t\tel.addEventListener('mouseover', this.incrementOverFocusCount);\n\t\tel.addEventListener('focus', this.incrementOverFocusCount);\n\t\tel.addEventListener('mouseout', this.decrementOverFocusCount);\n\t\tel.addEventListener('blur', this.decrementOverFocusCount);\n\t};\n\n\tprivate removeListeners = (el: Element): void => {\n\t\tel.removeEventListener('mouseover', this.incrementOverFocusCount);\n\t\tel.removeEventListener('focus', this.incrementOverFocusCount);\n\t\tel.removeEventListener('mouseout', this.decrementOverFocusCount);\n\t\tel.removeEventListener('blur', this.decrementOverFocusCount);\n\t};\n\n\tprivate resyncListeners = (el: Element): void => {\n\t\tthis.removeListeners(el);\n\t\tthis.addListeners(el);\n\t};\n\n\tprivate catchHostElement = (el: HTMLElement | null): void => {\n\t\tif (el /* SSR instanceof HTMLElement */) {\n\t\t\tthis.previousSibling = el.previousElementSibling as HTMLElement | null;\n\t\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\t\tthis.resyncListeners(this.previousSibling);\n\t\t\t}\n\t\t}\n\t};\n\n\tprivate catchTooltipElement = (el?: HTMLDivElement): void => {\n\t\tthis.tooltipElement = el;\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.resyncListeners(this.tooltipElement);\n\t\t}\n\t};\n\tprivate catchArrowElement = (element?: HTMLDivElement): void => {\n\t\tthis.arrowElement = element;\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host ref={this.catchHostElement}>\n\t\t\t\t{this.state._label !== '' && (\n\t\t\t\t\t<div id=\"floating\" ref={this.catchTooltipElement}>\n\t\t\t\t\t\t<div id=\"arrow\" ref={this.catchArrowElement} />\n\t\t\t\t\t\t<kol-badge\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\t_color={{\n\t\t\t\t\t\t\t\tbackgroundColor: '#333',\n\t\t\t\t\t\t\t\tcolor: '#ddd',\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t\t></kol-badge>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob der Tooltip oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _align?: Alignment = 'top';\n\n\t/**\n\t * Gibt die ID an, wenn z.B. Aria-Labelledby (Link) verwendet wird.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Das Label gibt an, welcher Text in dem Tooltip beim Fokussieren oder Maus-drüberfahren angezeigt wird.\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_align: 'top',\n\t\t_id: nonce(),\n\t\t_label: '…', // ⚠ required\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_align')\n\tpublic validateAlign(value?: Alignment): void {\n\t\twatchTooltipAlignment(this, '_align', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\twatchString(this, '_id', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', value);\n\t}\n\n\tprivate overFocusCount = 0;\n\tprivate overFocusTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate incrementOverFocusCount = (): void => {\n\t\tthis.overFocusCount++;\n\t\tthis.showOrHideTooltip();\n\t};\n\n\tprivate decrementOverFocusCount = (): void => {\n\t\tthis.overFocusCount--;\n\t\tthis.showOrHideTooltip();\n\t};\n\n\tprivate showOrHideTooltip = (): void => {\n\t\tclearTimeout(this.overFocusTimeout);\n\t\tthis.overFocusTimeout = setTimeout(() => {\n\t\t\tclearTimeout(this.overFocusTimeout);\n\t\t\tif (this.overFocusCount > 0) {\n\t\t\t\tthis.showTooltip();\n\t\t\t} else {\n\t\t\t\tthis.hideTooltip();\n\t\t\t}\n\t\t}, 250);\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlign(this._align);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentDidLoad)\n\t */\n\tpublic disconnectedCallback(): void {\n\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.previousSibling);\n\t\t}\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.tooltipElement);\n\t\t}\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["defaultStyleCss","KolTooltip","this","alignTooltip","cb","processEnv","previousSibling","tooltipElement","target","tooltipEl","arrowEl","arrowElement","middleware","offset","_a","offsetHeight","flip","shift","push","arrow","element","computePosition","placement","state","_align","then","x","y","middlewareData","oldPos","left","style","top","Object","assign","bottom","_b","offsetWidth","right","showTooltip","setProperty","getDocument","body","addEventListener","hideTooltipByEscape","document","hideTooltip","removeEventListener","event","key","addListeners","el","incrementOverFocusCount","decrementOverFocusCount","removeListeners","resyncListeners","catchHostElement","previousElementSibling","catchTooltipElement","catchArrowElement","overFocusCount","showOrHideTooltip","clearTimeout","overFocusTimeout","setTimeout","_id","nonce","_label","render","h","Host","ref","id","class","validateAlign","value","watchTooltipAlignment","validateId","watchString","validateLabel","componentWillLoad","disconnectedCallback"],"sources":["./src/components/tooltip/style.css?tag=kol-tooltip&mode=default","./src/components/tooltip/component.tsx"],"sourcesContent":["@import url(../style.css);\nkol-tooltip #floating {\n\tanimation-duration: 0.5s;\n\tanimation-iteration-count: 1;\n\tanimation-name: fadeInOpacity;\n\tanimation-timing-function: ease-in;\n\tbox-sizing: border-box;\n\tdisplay: none;\n\tposition: absolute;\n\tvisibility: hidden;\n}\nkol-tooltip #arrow {\n\theight: 10px;\n\tposition: absolute;\n\ttransform: rotate(45deg);\n\twidth: 10px;\n\tz-index: 999;\n}\nkol-tooltip .area {\n\tbackground-color: #fff;\n\tcolor: #000;\n}\nkol-tooltip kol-span-wc {\n\tposition: relative;\n\tz-index: 1000;\n}\n@keyframes fadeInOpacity {\n\t0% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n","import { arrow, computePosition, flip, offset, shift } from '@floating-ui/dom';\nimport { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchTooltipAlignment } from '../../types/button-link';\nimport { Alignment } from '../../types/props';\nimport { getDocument, nonce } from '../../utils/dev.utils';\nimport { watchString } from '../../utils/prop.validators';\nimport { processEnv } from '../../utils/reuse';\n\ntype RequiredProps = {\n\tid: string;\n\tlabel: string;\n};\ntype OptionalProps = {\n\talign: Alignment;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps & OptionalProps;\ntype OptionalStates = unknown;\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-tooltip',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: false,\n})\nexport class KolTooltip implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tprivate previousSibling?: HTMLElement | null;\n\tprivate tooltipElement?: HTMLDivElement;\n\tprivate arrowElement?: HTMLDivElement;\n\n\tprivate alignTooltip = (cb?: () => void): void => {\n\t\tif (processEnv !== 'test' && this.previousSibling /* SSR instanceof HTMLElement */ && this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tconst target = this.previousSibling;\n\t\t\tconst tooltipEl = this.tooltipElement;\n\t\t\tconst arrowEl = this.arrowElement;\n\n\t\t\tconst middleware = [offset(arrowEl?.offsetHeight ?? 10), flip(), shift()];\n\t\t\tif (arrowEl) {\n\t\t\t\tmiddleware.push(arrow({ element: arrowEl }));\n\t\t\t}\n\n\t\t\tvoid computePosition(target, tooltipEl, {\n\t\t\t\tplacement: this.state._align,\n\t\t\t\tmiddleware: middleware,\n\t\t\t}).then(({ x, y, middlewareData, placement }) => {\n\t\t\t\tconst oldPos = {\n\t\t\t\t\tleft: tooltipEl.style.left,\n\t\t\t\t\ttop: tooltipEl.style.top,\n\t\t\t\t};\n\t\t\t\tObject.assign(tooltipEl.style, {\n\t\t\t\t\tleft: `${x}px`,\n\t\t\t\t\ttop: `${y}px`,\n\t\t\t\t});\n\n\t\t\t\tif (arrowEl) {\n\t\t\t\t\tif (middlewareData.arrow?.x) {\n\t\t\t\t\t\tObject.assign(arrowEl.style, {\n\t\t\t\t\t\t\tleft: `${middlewareData.arrow.x}px`,\n\t\t\t\t\t\t\ttop: placement === 'bottom' ? `${-arrowEl.offsetHeight / 2}px` : '',\n\t\t\t\t\t\t\tbottom: placement === 'top' ? `${-arrowEl.offsetHeight / 2}px` : '',\n\t\t\t\t\t\t});\n\t\t\t\t\t} else if (middlewareData.arrow?.y) {\n\t\t\t\t\t\tObject.assign(arrowEl.style, {\n\t\t\t\t\t\t\tleft: placement === 'right' ? `${-arrowEl.offsetWidth / 2}px` : '',\n\t\t\t\t\t\t\tright: placement === 'left' ? `${-arrowEl.offsetWidth / 2}px` : '',\n\t\t\t\t\t\t\ttop: `${middlewareData.arrow.y}px`,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (oldPos.left !== tooltipEl.style.left || oldPos.top !== tooltipEl.style.top) {\n\t\t\t\t\tthis.alignTooltip(cb);\n\t\t\t\t} else if (typeof cb === 'function') {\n\t\t\t\t\tcb();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\tprivate showTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.tooltipElement.style.setProperty('display', 'block');\n\t\t\tgetDocument().body.addEventListener('keyup', this.hideTooltipByEscape);\n\t\t\tthis.alignTooltip(() => {\n\t\t\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\t\t\tthis.tooltipElement.style.setProperty('visibility', 'visible');\n\t\t\t\t\tdocument.addEventListener('scroll', this.showTooltip);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\tprivate hideTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.tooltipElement.style.setProperty('display', 'none');\n\t\t\tthis.tooltipElement.style.setProperty('visibility', 'hidden');\n\t\t\tdocument.removeEventListener('scroll', this.showTooltip);\n\t\t}\n\t};\n\n\tprivate hideTooltipByEscape = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\tgetDocument().body.removeEventListener('keyup', this.hideTooltipByEscape);\n\t\t\tthis.hideTooltip();\n\t\t}\n\t};\n\n\tprivate addListeners = (el: Element): void => {\n\t\tel.addEventListener('mouseover', this.incrementOverFocusCount);\n\t\tel.addEventListener('focus', this.incrementOverFocusCount);\n\t\tel.addEventListener('mouseout', this.decrementOverFocusCount);\n\t\tel.addEventListener('blur', this.decrementOverFocusCount);\n\t};\n\n\tprivate removeListeners = (el: Element): void => {\n\t\tel.removeEventListener('mouseover', this.incrementOverFocusCount);\n\t\tel.removeEventListener('focus', this.incrementOverFocusCount);\n\t\tel.removeEventListener('mouseout', this.decrementOverFocusCount);\n\t\tel.removeEventListener('blur', this.decrementOverFocusCount);\n\t};\n\n\tprivate resyncListeners = (el: Element): void => {\n\t\tthis.removeListeners(el);\n\t\tthis.addListeners(el);\n\t};\n\n\tprivate catchHostElement = (el: HTMLElement | null): void => {\n\t\tif (el /* SSR instanceof HTMLElement */) {\n\t\t\tthis.previousSibling = el.previousElementSibling as HTMLElement | null;\n\t\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\t\tthis.resyncListeners(this.previousSibling);\n\t\t\t}\n\t\t}\n\t};\n\n\tprivate catchTooltipElement = (el?: HTMLDivElement): void => {\n\t\tthis.tooltipElement = el;\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.resyncListeners(this.tooltipElement);\n\t\t}\n\t};\n\tprivate catchArrowElement = (element?: HTMLDivElement): void => {\n\t\tthis.arrowElement = element;\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host ref={this.catchHostElement}>\n\t\t\t\t{this.state._label !== '' && (\n\t\t\t\t\t<div id=\"floating\" ref={this.catchTooltipElement}>\n\t\t\t\t\t\t<div class=\"area\" id=\"arrow\" ref={this.catchArrowElement} />\n\t\t\t\t\t\t<kol-span-wc class=\"area\" id={this.state._id} _label={this.state._label}></kol-span-wc>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Setzt die Ausrichtung des Tooltips in Relation zum Elternelement.\n\t */\n\t@Prop() public _align?: Alignment = 'top';\n\n\t/**\n\t * Gibt die ID an, wenn z.B. Aria-Labelledby (Link) verwendet wird.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Setzt den Text in dem Tooltip beim Fokussieren oder Maus-drüberfahren angezeigt wird.\n\t */\n\t@Prop() public _label!: string;\n\n\t@State() public state: States = {\n\t\t_align: 'top',\n\t\t_id: nonce(),\n\t\t_label: '…', // ⚠ required\n\t};\n\n\t@Watch('_align')\n\tpublic validateAlign(value?: Alignment): void {\n\t\twatchTooltipAlignment(this, '_align', value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\twatchString(this, '_id', value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', value);\n\t}\n\n\tprivate overFocusCount = 0;\n\tprivate overFocusTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate incrementOverFocusCount = (): void => {\n\t\tthis.overFocusCount++;\n\t\tthis.showOrHideTooltip();\n\t};\n\n\tprivate decrementOverFocusCount = (): void => {\n\t\tthis.overFocusCount--;\n\t\tthis.showOrHideTooltip();\n\t};\n\n\tprivate showOrHideTooltip = (): void => {\n\t\tclearTimeout(this.overFocusTimeout);\n\t\tthis.overFocusTimeout = setTimeout(() => {\n\t\t\tclearTimeout(this.overFocusTimeout);\n\t\t\tif (this.overFocusCount > 0) {\n\t\t\t\tthis.showTooltip();\n\t\t\t} else {\n\t\t\t\tthis.hideTooltip();\n\t\t\t}\n\t\t}, 250);\n\t};\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlign(this._align);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentDidLoad)\n\t */\n\tpublic disconnectedCallback(): void {\n\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.previousSibling);\n\t\t}\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.tooltipElement);\n\t\t}\n\t}\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as e}from"./index-50adf9a0.js";import{w as i}from"./prop.validators-1f3db013.js";import"./a11y.tipps-5ca36877.js";import"./dev.utils-bedce29d.js";import"./reuse-56bb5a4b.js";import"./index-81bd9b41.js";var n;!function(e){e.Violett="#5f316e",e.Dunkelrot="#780f2d",e.Rot="#c0003c",e.Orange="#cd5038",e.Hellorange="#f7bb3d",e.Gelb="#f9e03a",e["Hellgrün"]="#c1ca31",e.Oliv="#597c39",e["Dunkelgrün"]="#005c45",e["Grün"]="#00854a",e["Türkis"]="#00818b",e.Hellblau="#80cdec",e.Blau="#0077b6",e.Petrol="#007194",e.Dunkelblau="#004b76",e.Dunkelgrau="#576164",e.Hellgrau="#bec5c9"}(n||(n={}));const o=":host{--a11y-min-size:44px}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}*[role='button'],button:not([role='link']),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'],option,select,textarea{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}: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,input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],option,select{cursor:pointer;font-family:inherit;font-size:inherit}.icon-only>kol-span-wc>span>span{display:none}",r=class{constructor(e){t(this,e),this._version=void 0,this.state={_version:"0.0.0-alpha.0"}}render(){return e("kol-badge",{_color:n.Hellgrau,_icon:"codicon codicon-versions",_label:`v${this.state._version}`})}validateVersion(e){i(this,"_version",e,{required:!0})}componentWillLoad(){this.validateVersion(this._version)}static get watchers(){return{_version:["validateVersion"]}}};r.style={default:o};export{r as kol_version};
4
+ import{r as i,h as t}from"./index-0e29e47a.js";import{w as e}from"./prop.validators-e15a584f.js";import"./a11y.tipps-1cea9822.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-f4596895.js";var n;!function(e){e.Violett="#5f316e",e.Dunkelrot="#780f2d",e.Rot="#c0003c",e.Orange="#cd5038",e.Hellorange="#f7bb3d",e.Gelb="#f9e03a",e["Hellgrün"]="#c1ca31",e.Oliv="#597c39",e["Dunkelgrün"]="#005c45",e["Grün"]="#00854a",e["Türkis"]="#00818b",e.Hellblau="#80cdec",e.Blau="#0077b6",e.Petrol="#007194",e.Dunkelblau="#004b76",e.Dunkelgrau="#576164",e.Hellgrau="#bec5c9"}(n||(n={}));const o=":host{--a11y-min-size:44px}*{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}",r=class{constructor(e){i(this,e),this._version=void 0,this.state={_version:"0.0.0-alpha.0"}}render(){return t("kol-badge",{_color:n.Hellgrau,_icon:"codicon codicon-versions",_label:`v${this.state._version}`})}validateVersion(t){e(this,"_version",t,{required:!0})}componentWillLoad(){this.validateVersion(this._version)}static get watchers(){return{_version:["validateVersion"]}}};r.style={default:o};export{r as kol_version};
@@ -1 +1 @@
1
- {"version":3,"names":["Farbspektrum","defaultStyleCss","KolVersion","_version","render","h","_color","Hellgrau","_icon","_label","this","state","validateVersion","value","watchString","required","componentWillLoad"],"sources":["./src/enums/color.ts","./src/components/version/style.css?tag=kol-version&mode=default&encapsulation=shadow","./src/components/version/component.tsx"],"sourcesContent":["/**\n * @deprecated We will remove this enum in the next major release.\n */\nexport type FarbspektrumNames =\n\t| 'Violett'\n\t| 'Dunkelrot'\n\t| 'Rot'\n\t| 'Orange'\n\t| 'Hellorange'\n\t| 'Gelb'\n\t| 'Hellgrün'\n\t| 'Oliv'\n\t| 'Dunkelgrün'\n\t| 'Grün'\n\t| 'Türkis'\n\t| 'Hellblau'\n\t| 'Blau'\n\t| 'Petrol'\n\t| 'Dunkelblau'\n\t| 'Dunkelgrau'\n\t| 'Hellgrau';\n\n/**\n * @deprecated We will remove this enum in the next major release.\n */\nexport enum Farbspektrum {\n\t'Violett' = '#5f316e',\n\t'Dunkelrot' = '#780f2d',\n\t'Rot' = '#c0003c',\n\t'Orange' = '#cd5038',\n\t'Hellorange' = '#f7bb3d',\n\t'Gelb' = '#f9e03a',\n\t'Hellgrün' = '#c1ca31',\n\t'Oliv' = '#597c39',\n\t'Dunkelgrün' = '#005c45',\n\t'Grün' = '#00854a',\n\t'Türkis' = '#00818b',\n\t'Hellblau' = '#80cdec',\n\t'Blau' = '#0077b6',\n\t'Petrol' = '#007194',\n\t'Dunkelblau' = '#004b76',\n\t'Dunkelgrau' = '#576164',\n\t'Hellgrau' = '#bec5c9',\n}\n","@import '../style.css';\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Farbspektrum } from '../../enums/color';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchString } from '../../utils/prop.validators';\n\n/**\n * API\n */\ntype RequiredProps = {\n\tversion: string;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-version',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolVersion implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\treturn <kol-badge _color={Farbspektrum.Hellgrau} _icon=\"codicon codicon-versions\" _label={`v${this.state._version}`} />;\n\t}\n\n\t/**\n\t * Gibt die Versionsnummer als Text an.\n\t */\n\t@Prop() public _version!: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_version: '0.0.0-alpha.0',\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_version')\n\tpublic validateVersion(value?: string): void {\n\t\twatchString(this, '_version', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateVersion(this._version);\n\t}\n}\n"],"mappings":";;;0NAyBA,IAAYA,GAAZ,SAAYA,GACXA,EAAA,qBACAA,EAAA,uBACAA,EAAA,iBACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,sBACAA,EAAA,kBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,wBACAA,EAAA,qBACA,EAlBD,CAAYA,MAAY,KCzBxB,MAAMC,EAAkB,y7B,MC0BXC,EAAU,M,4DAaU,CAC/BC,SAAU,gB,CAbJC,SACN,OAAOC,EAAA,aAAWC,OAAQN,EAAaO,SAAUC,MAAM,2BAA2BC,OAAQ,IAAIC,KAAKC,MAAMR,Y,CAmBnGS,gBAAgBC,GACtBC,EAAYJ,KAAM,WAAYG,EAAO,CACpCE,SAAU,M,CAOLC,oBACNN,KAAKE,gBAAgBF,KAAKP,S"}
1
+ {"version":3,"names":["Farbspektrum","defaultStyleCss","KolVersion","_version","render","h","_color","Hellgrau","_icon","_label","this","state","validateVersion","value","watchString","required","componentWillLoad"],"sources":["./src/enums/color.ts","./src/components/version/style.css?tag=kol-version&mode=default&encapsulation=shadow","./src/components/version/component.tsx"],"sourcesContent":["/**\n * @deprecated We will remove this enum in the next major release.\n */\nexport type FarbspektrumNames =\n\t| 'Violett'\n\t| 'Dunkelrot'\n\t| 'Rot'\n\t| 'Orange'\n\t| 'Hellorange'\n\t| 'Gelb'\n\t| 'Hellgrün'\n\t| 'Oliv'\n\t| 'Dunkelgrün'\n\t| 'Grün'\n\t| 'Türkis'\n\t| 'Hellblau'\n\t| 'Blau'\n\t| 'Petrol'\n\t| 'Dunkelblau'\n\t| 'Dunkelgrau'\n\t| 'Hellgrau';\n\n/**\n * @deprecated We will remove this enum in the next major release.\n */\nexport enum Farbspektrum {\n\t'Violett' = '#5f316e',\n\t'Dunkelrot' = '#780f2d',\n\t'Rot' = '#c0003c',\n\t'Orange' = '#cd5038',\n\t'Hellorange' = '#f7bb3d',\n\t'Gelb' = '#f9e03a',\n\t'Hellgrün' = '#c1ca31',\n\t'Oliv' = '#597c39',\n\t'Dunkelgrün' = '#005c45',\n\t'Grün' = '#00854a',\n\t'Türkis' = '#00818b',\n\t'Hellblau' = '#80cdec',\n\t'Blau' = '#0077b6',\n\t'Petrol' = '#007194',\n\t'Dunkelblau' = '#004b76',\n\t'Dunkelgrau' = '#576164',\n\t'Hellgrau' = '#bec5c9',\n}\n","@import url(../style.css);\n","import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Farbspektrum } from '../../enums/color';\n\nimport { Generic } from '@a11y-ui/core';\nimport { watchString } from '../../utils/prop.validators';\n\ntype RequiredProps = {\n\tversion: string;\n};\ntype OptionalProps = unknown;\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = RequiredProps;\ntype OptionalStates = OptionalProps;\ntype States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n@Component({\n\ttag: 'kol-version',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolVersion implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\tpublic render(): JSX.Element {\n\t\treturn <kol-badge _color={Farbspektrum.Hellgrau} _icon=\"codicon codicon-versions\" _label={`v${this.state._version}`} />;\n\t}\n\n\t/**\n\t * Gibt die Versionsnummer als Text an.\n\t */\n\t@Prop() public _version!: string;\n\n\t@State() public state: States = {\n\t\t_version: '0.0.0-alpha.0',\n\t};\n\n\t@Watch('_version')\n\tpublic validateVersion(value?: string): void {\n\t\twatchString(this, '_version', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateVersion(this._version);\n\t}\n}\n"],"mappings":";;;0NAyBA,IAAYA,GAAZ,SAAYA,GACXA,EAAA,qBACAA,EAAA,uBACAA,EAAA,iBACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,sBACAA,EAAA,kBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,wBACAA,EAAA,qBACA,EAlBD,CAAYA,MAAY,KCzBxB,MAAMC,EAAkB,qqB,MCuBXC,EAAU,M,4DAUU,CAC/BC,SAAU,gB,CAVJC,SACN,OAAOC,EAAA,aAAWC,OAAQN,EAAaO,SAAUC,MAAM,2BAA2BC,OAAQ,IAAIC,KAAKC,MAAMR,Y,CAanGS,gBAAgBC,GACtBC,EAAYJ,KAAM,WAAYG,EAAO,CACpCE,SAAU,M,CAILC,oBACNN,KAAKE,gBAAgBF,KAAKP,S"}