@public-ui/components 1.4.0 → 1.4.1-rc.1

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 (330) hide show
  1. package/cheat-sheet.html +6 -6
  2. package/custom-elements.json +1 -1
  3. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  4. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  5. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  7. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  8. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  10. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  11. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  12. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  13. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  14. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  15. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  16. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  17. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  18. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  19. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  20. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  21. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  22. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  23. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  24. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  25. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  26. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  27. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  28. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  29. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  30. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  31. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  32. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  33. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  34. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  35. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  36. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  37. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  38. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  39. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  41. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  43. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  45. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  47. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  49. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  53. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  55. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  69. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  75. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  79. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  85. package/dist/components/component.js +1 -1
  86. package/dist/components/component.js.map +1 -1
  87. package/dist/components/component10.js +1 -1
  88. package/dist/components/component10.js.map +1 -1
  89. package/dist/components/component11.js +1 -1
  90. package/dist/components/component11.js.map +1 -1
  91. package/dist/components/component12.js +1 -1
  92. package/dist/components/component12.js.map +1 -1
  93. package/dist/components/component13.js +1 -1
  94. package/dist/components/component13.js.map +1 -1
  95. package/dist/components/component5.js +1 -1
  96. package/dist/components/component5.js.map +1 -1
  97. package/dist/components/component8.js +1 -1
  98. package/dist/components/component8.js.map +1 -1
  99. package/dist/components/kol-abbr.js +1 -1
  100. package/dist/components/kol-abbr.js.map +1 -1
  101. package/dist/components/kol-accordion.js +1 -1
  102. package/dist/components/kol-accordion.js.map +1 -1
  103. package/dist/components/kol-breadcrumb.js +1 -1
  104. package/dist/components/kol-breadcrumb.js.map +1 -1
  105. package/dist/components/kol-button-group.js +1 -1
  106. package/dist/components/kol-button-group.js.map +1 -1
  107. package/dist/components/kol-button-link.js +1 -1
  108. package/dist/components/kol-button-link.js.map +1 -1
  109. package/dist/components/kol-card.js +1 -1
  110. package/dist/components/kol-card.js.map +1 -1
  111. package/dist/components/kol-details.js +1 -1
  112. package/dist/components/kol-details.js.map +1 -1
  113. package/dist/components/kol-heading.js +1 -1
  114. package/dist/components/kol-heading.js.map +1 -1
  115. package/dist/components/kol-input-checkbox.js +1 -1
  116. package/dist/components/kol-input-checkbox.js.map +1 -1
  117. package/dist/components/kol-input-color.js +1 -1
  118. package/dist/components/kol-input-color.js.map +1 -1
  119. package/dist/components/kol-input-date.js +1 -1
  120. package/dist/components/kol-input-date.js.map +1 -1
  121. package/dist/components/kol-input-email.js +1 -1
  122. package/dist/components/kol-input-email.js.map +1 -1
  123. package/dist/components/kol-input-file.js +1 -1
  124. package/dist/components/kol-input-file.js.map +1 -1
  125. package/dist/components/kol-input-password.js +1 -1
  126. package/dist/components/kol-input-password.js.map +1 -1
  127. package/dist/components/kol-input-range.js +1 -1
  128. package/dist/components/kol-input-range.js.map +1 -1
  129. package/dist/components/kol-input-text.js +1 -1
  130. package/dist/components/kol-input-text.js.map +1 -1
  131. package/dist/components/kol-kolibri.js +1 -1
  132. package/dist/components/kol-kolibri.js.map +1 -1
  133. package/dist/components/kol-link-button.js +1 -1
  134. package/dist/components/kol-link-button.js.map +1 -1
  135. package/dist/components/kol-link-group.js +1 -1
  136. package/dist/components/kol-link-group.js.map +1 -1
  137. package/dist/components/kol-logo.js +1 -1
  138. package/dist/components/kol-logo.js.map +1 -1
  139. package/dist/components/kol-modal.js +1 -1
  140. package/dist/components/kol-modal.js.map +1 -1
  141. package/dist/components/kol-nav.js +1 -1
  142. package/dist/components/kol-nav.js.map +1 -1
  143. package/dist/components/kol-progress.js +1 -1
  144. package/dist/components/kol-progress.js.map +1 -1
  145. package/dist/components/kol-skip-nav.js +1 -1
  146. package/dist/components/kol-skip-nav.js.map +1 -1
  147. package/dist/components/kol-span.js +1 -1
  148. package/dist/components/kol-span.js.map +1 -1
  149. package/dist/components/kol-spin.js +1 -1
  150. package/dist/components/kol-spin.js.map +1 -1
  151. package/dist/components/kol-table.js +1 -1
  152. package/dist/components/kol-table.js.map +1 -1
  153. package/dist/components/kol-tabs.js +1 -1
  154. package/dist/components/kol-tabs.js.map +1 -1
  155. package/dist/components/kol-textarea.js +1 -1
  156. package/dist/components/kol-textarea.js.map +1 -1
  157. package/dist/components/kol-toast.js +1 -1
  158. package/dist/components/kol-toast.js.map +1 -1
  159. package/dist/components/kol-version.js +1 -1
  160. package/dist/components/kol-version.js.map +1 -1
  161. package/dist/components/shadow.js +1 -1
  162. package/dist/components/shadow.js.map +1 -1
  163. package/dist/components/shadow2.js +1 -1
  164. package/dist/components/shadow2.js.map +1 -1
  165. package/dist/esm/kol-abbr.entry.js +1 -1
  166. package/dist/esm/kol-abbr.entry.js.map +1 -1
  167. package/dist/esm/kol-accordion.entry.js +1 -1
  168. package/dist/esm/kol-accordion.entry.js.map +1 -1
  169. package/dist/esm/kol-alert.entry.js +1 -1
  170. package/dist/esm/kol-alert.entry.js.map +1 -1
  171. package/dist/esm/kol-badge.entry.js +1 -1
  172. package/dist/esm/kol-badge.entry.js.map +1 -1
  173. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  174. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  175. package/dist/esm/kol-button-group.entry.js +1 -1
  176. package/dist/esm/kol-button-group.entry.js.map +1 -1
  177. package/dist/esm/kol-button-link.entry.js +1 -1
  178. package/dist/esm/kol-button-link.entry.js.map +1 -1
  179. package/dist/esm/kol-button.entry.js +1 -1
  180. package/dist/esm/kol-button.entry.js.map +1 -1
  181. package/dist/esm/kol-card.entry.js +1 -1
  182. package/dist/esm/kol-card.entry.js.map +1 -1
  183. package/dist/esm/kol-details.entry.js +1 -1
  184. package/dist/esm/kol-details.entry.js.map +1 -1
  185. package/dist/esm/kol-heading.entry.js +1 -1
  186. package/dist/esm/kol-heading.entry.js.map +1 -1
  187. package/dist/esm/kol-indented-text.entry.js +1 -1
  188. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  189. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  190. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  191. package/dist/esm/kol-input-color.entry.js +1 -1
  192. package/dist/esm/kol-input-color.entry.js.map +1 -1
  193. package/dist/esm/kol-input-date.entry.js +1 -1
  194. package/dist/esm/kol-input-date.entry.js.map +1 -1
  195. package/dist/esm/kol-input-email.entry.js +1 -1
  196. package/dist/esm/kol-input-email.entry.js.map +1 -1
  197. package/dist/esm/kol-input-file.entry.js +1 -1
  198. package/dist/esm/kol-input-file.entry.js.map +1 -1
  199. package/dist/esm/kol-input-number.entry.js +1 -1
  200. package/dist/esm/kol-input-number.entry.js.map +1 -1
  201. package/dist/esm/kol-input-password.entry.js +1 -1
  202. package/dist/esm/kol-input-password.entry.js.map +1 -1
  203. package/dist/esm/kol-input-radio.entry.js +1 -1
  204. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  205. package/dist/esm/kol-input-range.entry.js +1 -1
  206. package/dist/esm/kol-input-range.entry.js.map +1 -1
  207. package/dist/esm/kol-input-text.entry.js +1 -1
  208. package/dist/esm/kol-input-text.entry.js.map +1 -1
  209. package/dist/esm/kol-kolibri.entry.js +1 -1
  210. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  211. package/dist/esm/kol-link-button.entry.js +1 -1
  212. package/dist/esm/kol-link-button.entry.js.map +1 -1
  213. package/dist/esm/kol-link-group.entry.js +1 -1
  214. package/dist/esm/kol-link-group.entry.js.map +1 -1
  215. package/dist/esm/kol-link.entry.js +1 -1
  216. package/dist/esm/kol-link.entry.js.map +1 -1
  217. package/dist/esm/kol-logo.entry.js +1 -1
  218. package/dist/esm/kol-logo.entry.js.map +1 -1
  219. package/dist/esm/kol-modal.entry.js +1 -1
  220. package/dist/esm/kol-modal.entry.js.map +1 -1
  221. package/dist/esm/kol-nav.entry.js +1 -1
  222. package/dist/esm/kol-nav.entry.js.map +1 -1
  223. package/dist/esm/kol-pagination.entry.js +1 -1
  224. package/dist/esm/kol-pagination.entry.js.map +1 -1
  225. package/dist/esm/kol-progress.entry.js +1 -1
  226. package/dist/esm/kol-progress.entry.js.map +1 -1
  227. package/dist/esm/kol-select.entry.js +1 -1
  228. package/dist/esm/kol-select.entry.js.map +1 -1
  229. package/dist/esm/kol-skip-nav.entry.js +1 -1
  230. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  231. package/dist/esm/kol-span.entry.js +1 -1
  232. package/dist/esm/kol-span.entry.js.map +1 -1
  233. package/dist/esm/kol-spin.entry.js +1 -1
  234. package/dist/esm/kol-spin.entry.js.map +1 -1
  235. package/dist/esm/kol-table.entry.js +1 -1
  236. package/dist/esm/kol-table.entry.js.map +1 -1
  237. package/dist/esm/kol-tabs.entry.js +1 -1
  238. package/dist/esm/kol-tabs.entry.js.map +1 -1
  239. package/dist/esm/kol-textarea.entry.js +1 -1
  240. package/dist/esm/kol-textarea.entry.js.map +1 -1
  241. package/dist/esm/kol-toast.entry.js +1 -1
  242. package/dist/esm/kol-toast.entry.js.map +1 -1
  243. package/dist/esm/kol-tooltip.entry.js +1 -1
  244. package/dist/esm/kol-tooltip.entry.js.map +1 -1
  245. package/dist/esm/kol-version.entry.js +1 -1
  246. package/dist/esm/kol-version.entry.js.map +1 -1
  247. package/dist/kolibri/kol-abbr.entry.js +1 -1
  248. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  249. package/dist/kolibri/kol-accordion.entry.js +1 -1
  250. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  251. package/dist/kolibri/kol-alert.entry.js +1 -1
  252. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  253. package/dist/kolibri/kol-badge.entry.js +1 -1
  254. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  255. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  256. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  257. package/dist/kolibri/kol-button-group.entry.js +1 -1
  258. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  259. package/dist/kolibri/kol-button-link.entry.js +1 -1
  260. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  261. package/dist/kolibri/kol-button.entry.js +1 -1
  262. package/dist/kolibri/kol-button.entry.js.map +1 -1
  263. package/dist/kolibri/kol-card.entry.js +1 -1
  264. package/dist/kolibri/kol-card.entry.js.map +1 -1
  265. package/dist/kolibri/kol-details.entry.js +1 -1
  266. package/dist/kolibri/kol-details.entry.js.map +1 -1
  267. package/dist/kolibri/kol-heading.entry.js +1 -1
  268. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  269. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  270. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  271. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  272. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  273. package/dist/kolibri/kol-input-color.entry.js +1 -1
  274. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  275. package/dist/kolibri/kol-input-date.entry.js +1 -1
  276. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  277. package/dist/kolibri/kol-input-email.entry.js +1 -1
  278. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  279. package/dist/kolibri/kol-input-file.entry.js +1 -1
  280. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  281. package/dist/kolibri/kol-input-number.entry.js +1 -1
  282. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  283. package/dist/kolibri/kol-input-password.entry.js +1 -1
  284. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  285. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  286. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  287. package/dist/kolibri/kol-input-range.entry.js +1 -1
  288. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  289. package/dist/kolibri/kol-input-text.entry.js +1 -1
  290. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  291. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  292. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  293. package/dist/kolibri/kol-link-button.entry.js +1 -1
  294. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  295. package/dist/kolibri/kol-link-group.entry.js +1 -1
  296. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  297. package/dist/kolibri/kol-link.entry.js +1 -1
  298. package/dist/kolibri/kol-link.entry.js.map +1 -1
  299. package/dist/kolibri/kol-logo.entry.js +1 -1
  300. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  301. package/dist/kolibri/kol-modal.entry.js +1 -1
  302. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  303. package/dist/kolibri/kol-nav.entry.js +1 -1
  304. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  305. package/dist/kolibri/kol-pagination.entry.js +1 -1
  306. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  307. package/dist/kolibri/kol-progress.entry.js +1 -1
  308. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  309. package/dist/kolibri/kol-select.entry.js +1 -1
  310. package/dist/kolibri/kol-select.entry.js.map +1 -1
  311. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  312. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  313. package/dist/kolibri/kol-span.entry.js +1 -1
  314. package/dist/kolibri/kol-span.entry.js.map +1 -1
  315. package/dist/kolibri/kol-spin.entry.js +1 -1
  316. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  317. package/dist/kolibri/kol-table.entry.js +1 -1
  318. package/dist/kolibri/kol-table.entry.js.map +1 -1
  319. package/dist/kolibri/kol-tabs.entry.js +1 -1
  320. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  321. package/dist/kolibri/kol-textarea.entry.js +1 -1
  322. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  323. package/dist/kolibri/kol-toast.entry.js +1 -1
  324. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  325. package/dist/kolibri/kol-tooltip.entry.js +1 -1
  326. package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
  327. package/dist/kolibri/kol-version.entry.js +1 -1
  328. package/dist/kolibri/kol-version.entry.js.map +1 -1
  329. package/jest-test-results.json +1 -1
  330. package/package.json +1 -1
@@ -1 +1 @@
1
- {"file":"kol-textarea.entry.js","mappings":"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","names":[],"sources":["./src/components/textarea/controller.ts","./src/components/textarea/style.css?tag=kol-textarea&mode=default&encapsulation=shadow","./src/components/textarea/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputController } from '../@deprecated/input/controller';\nimport { CSSResize, Props, Watches } from './types';\n\nexport class TextareaController extends InputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprivate afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string' && this.component._value.length > 0) {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t}\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateHasCounter(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hasCounter', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateResize(value?: CSSResize): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_resize',\n\t\t\t(value) => typeof value === 'string' && (value === 'both' || value === 'horizontal' || value === 'none' || value === 'vertical'),\n\t\t\tnew Set('String {both, horizontal, vertical, none}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRows(value?: number): void {\n\t\twatchNumber(this.component, '_rows', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateResize(this.component._resize);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateRows(this.component._rows);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import '../input-line.css';\n","import { Component, Element, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { translate } from '../../i18n';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { setState } from '../../utils/prop.validators';\nimport { propergateFocus } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { TextareaController } from './controller';\nimport { ComponentApi, CSSResize, States } from './types';\n\n/**\n * https://stackoverflow.com/questions/17772260/textarea-auto-height\n */\nconst increaseTextareaHeight = (el: HTMLTextAreaElement): number => {\n\tel.style.overflow = 'hidden'; // verhindert, dass ein Scrollbalken kurz angezeigt wird\n\tconst currentRows = el.rows;\n\tconst rowHeight = el.clientHeight / currentRows;\n\tel.rows = 1;\n\tconst nextRows = Math.round(el.scrollHeight / rowHeight);\n\tel.rows = currentRows;\n\treturn nextRows;\n};\n\n@Component({\n\ttag: 'kol-textarea',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolTextarea implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolTextareaElement;\n\tprivate ref?: HTMLTextAreaElement;\n\n\tprivate readonly catchRef = (ref?: HTMLTextAreaElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDiscribedBy } = getRenderStates(this.state);\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\n\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<textarea\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\tpart=\"textarea\"\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-describedby={ariaDiscribedBy.length > 0 ? ariaDiscribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\t// aria-hidden=\"true\" // Wieso ist das hier?\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tmaxlength={this.state._maxLength}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\trows={this.state._rows}\n\t\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonKeyUp={this.onChange}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tresize: this.state._resize,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tvalue={this.state._value}\n\t\t\t\t\t\t></textarea>\n\t\t\t\t\t\t{/**\n\t\t\t\t\t\t * https://webstandardssherpa.com/reviews/improving-the-tweet-box/\n\t\t\t\t\t\t * https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-live\n\t\t\t\t\t\t */}\n\t\t\t\t\t\t{this.state._hasCounter && (\n\t\t\t\t\t\t\t<span aria-atomic=\"true\" aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{this.state._currentLength}\n\t\t\t\t\t\t\t\t{this.state._maxLength && (\n\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t<span aria-label={translate('kol-of')} role=\"img\">\n\t\t\t\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t{this.state._maxLength}\n\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t)}{' '}\n\t\t\t\t\t\t\t\t<span>{translate('kol-characters')}</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: TextareaController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Passt die Höhe des Eingabefeldes automatisch an den Füllstand an.\n\t */\n\t@Prop({ reflect: true }) public _adjustHeight?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob am unteren Rand des Eingabefeldes die Anzahl der Zeichen angezeigt werden soll.\n\t */\n\t@Prop({ reflect: true }) public _hasCounter?: boolean;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt an, wie viele Zeichen man maximal eingeben kann.\n\t */\n\t@Prop() public _maxLength?: number;\n\n\t/**\n\t * Gibt den technischen Namen des Eingabefeldes an.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\n\n\t/**\n\t * Gibt an, ob die Größe des Eingabefeldes geändert werden kann. (https://developer.mozilla.org/de/docs/Web/CSS/resize)\n\t */\n\t@Prop() public _resize?: CSSResize = 'vertical';\n\n\t/**\n\t * Gibt an, ob das Eingabefeld ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\n\n\t/**\n\t * Gibt die Anzahl der anzuzeigenden Zeilen des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _rows?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_adjustHeight: false,\n\t\t_currentLength: 0,\n\t\t_id: '⚠',\n\n\t\t_resize: 'vertical',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new TextareaController(this, 'textarea', this.host);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_adjustHeight')\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\tthis.controller.validateAdjustHeight(value);\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\tthis.controller.validateAlert(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasCounter')\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tthis.controller.validateHasCounter(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(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\tthis.controller.validateId(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_maxLength')\n\tpublic validateMaxLength(value?: number): void {\n\t\tthis.controller.validateMaxLength(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_resize')\n\tpublic validateResize(value?: CSSResize): void {\n\t\tthis.controller.validateResize(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_rows')\n\tpublic validateRows(value?: number): void {\n\t\tthis.controller.validateRows(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t\tthis.validateAdjustHeight(this._adjustHeight);\n\t}\n\n\tprivate readonly onChange = (event: Event) => {\n\t\tif (this.ref instanceof HTMLTextAreaElement) {\n\t\t\tsetState(this, '_currentLength', this.ref.value.length);\n\t\t\tif (this.state._adjustHeight) {\n\t\t\t\tthis._rows = increaseTextareaHeight(this.ref);\n\t\t\t}\n\t\t}\n\t\tif (typeof this.controller.onFacade.onChange === 'function') {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n}\n"],"version":3}
1
+ {"file":"kol-textarea.entry.js","mappings":"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","names":[],"sources":["./src/components/textarea/controller.ts","./src/components/textarea/style.css?tag=kol-textarea&mode=default&encapsulation=shadow","./src/components/textarea/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputController } from '../@deprecated/input/controller';\nimport { CSSResize, Props, Watches } from './types';\n\nexport class TextareaController extends InputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprivate afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string' && this.component._value.length > 0) {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t}\n\t};\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateHasCounter(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hasCounter', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateResize(value?: CSSResize): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_resize',\n\t\t\t(value) => typeof value === 'string' && (value === 'both' || value === 'horizontal' || value === 'none' || value === 'vertical'),\n\t\t\tnew Set('String {both, horizontal, vertical, none}'),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRows(value?: number): void {\n\t\twatchNumber(this.component, '_rows', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateResize(this.component._resize);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateRows(this.component._rows);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import '../input-line.css';\n","import { Component, Element, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { translate } from '../../i18n';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { setState } from '../../utils/prop.validators';\nimport { propergateFocus } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { TextareaController } from './controller';\nimport { ComponentApi, CSSResize, States } from './types';\n\n/**\n * https://stackoverflow.com/questions/17772260/textarea-auto-height\n */\nconst increaseTextareaHeight = (el: HTMLTextAreaElement): number => {\n\tel.style.overflow = 'hidden'; // verhindert, dass ein Scrollbalken kurz angezeigt wird\n\tconst currentRows = el.rows;\n\tconst rowHeight = el.clientHeight / currentRows;\n\tel.rows = 1;\n\tconst nextRows = Math.round(el.scrollHeight / rowHeight);\n\tel.rows = currentRows;\n\treturn nextRows;\n};\n\n@Component({\n\ttag: 'kol-textarea',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolTextarea implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolTextareaElement;\n\tprivate ref?: HTMLTextAreaElement;\n\n\tprivate readonly catchRef = (ref?: HTMLTextAreaElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDiscribedBy } = getRenderStates(this.state);\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\n\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<textarea\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\tpart=\"textarea\"\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-describedby={ariaDiscribedBy.length > 0 ? ariaDiscribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\t// aria-hidden=\"true\" // Wieso ist das hier?\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tmaxlength={this.state._maxLength}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\trows={this.state._rows}\n\t\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonKeyUp={this.onChange}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tresize: this.state._resize,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tvalue={this.state._value}\n\t\t\t\t\t\t></textarea>\n\t\t\t\t\t\t{/**\n\t\t\t\t\t\t * https://webstandardssherpa.com/reviews/improving-the-tweet-box/\n\t\t\t\t\t\t * https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-live\n\t\t\t\t\t\t */}\n\t\t\t\t\t\t{this.state._hasCounter && (\n\t\t\t\t\t\t\t<span aria-atomic=\"true\" aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{this.state._currentLength}\n\t\t\t\t\t\t\t\t{this.state._maxLength && (\n\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t<span aria-label={translate('kol-of')} role=\"img\">\n\t\t\t\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t{this.state._maxLength}\n\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t)}{' '}\n\t\t\t\t\t\t\t\t<span>{translate('kol-characters')}</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: TextareaController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Passt die Höhe des Eingabefeldes automatisch an den Füllstand an.\n\t */\n\t@Prop({ reflect: true }) public _adjustHeight?: boolean = false;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob am unteren Rand des Eingabefeldes die Anzahl der Zeichen angezeigt werden soll.\n\t */\n\t@Prop({ reflect: true }) public _hasCounter?: boolean;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt an, wie viele Zeichen man maximal eingeben kann.\n\t */\n\t@Prop() public _maxLength?: number;\n\n\t/**\n\t * Gibt den technischen Namen des Eingabefeldes an.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\n\n\t/**\n\t * Gibt an, ob die Größe des Eingabefeldes geändert werden kann. (https://developer.mozilla.org/de/docs/Web/CSS/resize)\n\t */\n\t@Prop() public _resize?: CSSResize = 'vertical';\n\n\t/**\n\t * Gibt an, ob das Eingabefeld ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\n\n\t/**\n\t * Gibt die Anzahl der anzuzeigenden Zeilen des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _rows?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_adjustHeight: false,\n\t\t_currentLength: 0,\n\t\t_id: '⚠',\n\n\t\t_resize: 'vertical',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new TextareaController(this, 'textarea', this.host);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_adjustHeight')\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\tthis.controller.validateAdjustHeight(value);\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\tthis.controller.validateAlert(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hasCounter')\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tthis.controller.validateHasCounter(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(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\tthis.controller.validateId(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_maxLength')\n\tpublic validateMaxLength(value?: number): void {\n\t\tthis.controller.validateMaxLength(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_resize')\n\tpublic validateResize(value?: CSSResize): void {\n\t\tthis.controller.validateResize(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_rows')\n\tpublic validateRows(value?: number): void {\n\t\tthis.controller.validateRows(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t\tthis.validateAdjustHeight(this._adjustHeight);\n\t}\n\n\tprivate readonly onChange = (event: Event) => {\n\t\tif (this.ref instanceof HTMLTextAreaElement) {\n\t\t\tsetState(this, '_currentLength', this.ref.value.length);\n\t\t\tif (this.state._adjustHeight) {\n\t\t\t\tthis._rows = increaseTextareaHeight(this.ref);\n\t\t\t}\n\t\t}\n\t\tif (typeof this.controller.onFacade.onChange === 'function') {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as registerInstance,h,H as Host}from"./index-50adf9a0.js";import{b as watchBoolean,w as watchString,s as setState,e as watchNumber,a as watchValidator}from"./prop.validators-dd337216.js";import{w as watchHeadingLevel}from"./validation-1165b64b.js";import{f as featureHint}from"./a11y.tipps-a876ebb7.js";import"./index-599f5430.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const defaultStyleCss=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host *{font-family:inherit;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}:host *{box-sizing:border-box}:host kol-icon{color:inherit}:host kol-span-wc{display:grid;place-items:center;width:100%}:host kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}:host button{margin:0;min-height:44px;min-width:44px;padding:0}:host a,:host button,:host input,:host select,:host textarea{cursor:pointer}:host a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}:host a{display:inline-flex;place-items:baseline}:host button{background-color:transparent;border-width:0}:host>div{position:fixed;top:0;left:0;width:100%;height:0;z-index:200}:host>div>kol-alert{display:block;margin:auto;padding:calc(4 * var(--kolibri-spacing));max-width:750px}:host>div>kol-button-wc{top:0;position:relative;display:block;margin:auto;width:1em}",KolToast=class{constructor(t){registerInstance(this,t),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){watchBoolean(this,"_alert",t)}validateHasCloser(t){watchBoolean(this,"_hasCloser",t)}validateHeading(t){watchString(this,"_heading",t)}validateLevel(t){watchHeadingLevel(this,t)}validateOn(t){if("object"==typeof t&&null!==t){featureHint("[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const i={};"function"!=typeof t.onClose&&!0!==t.onClose||(i.onClose=t.onClose),setState(this,"_on",i)}}validateShow(t){watchBoolean(this,"_show",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateShowDuration(t){watchNumber(this,"_showDuration",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateType(t){watchValidator(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 h(Host,null,this.state._show&&h("div",null,h("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},h("slot",null))))}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_show:["validateShow"],_showDuration:["validateShowDuration"],_type:["validateType"]}}};KolToast.style={default:defaultStyleCss};export{KolToast as kol_toast};
4
+ import{r as registerInstance,h,H as Host}from"./index-50adf9a0.js";import{b as watchBoolean,w as watchString,s as setState,e as watchNumber,a as watchValidator}from"./prop.validators-dd337216.js";import{w as watchHeadingLevel}from"./validation-1165b64b.js";import{f as featureHint}from"./a11y.tipps-a876ebb7.js";import"./index-599f5430.js";import"./dev.utils-ec1c1b88.js";import"./reuse-9dd1192b.js";const defaultStyleCss=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host *{font-family:inherit;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}:host>div{position:fixed;top:0;left:0;width:100%;height:0;z-index:200}:host>div>kol-alert{display:block;margin:auto;padding:calc(4 * var(--kolibri-spacing));max-width:750px}:host>div>kol-button-wc{top:0;position:relative;display:block;margin:auto;width:1em}",KolToast=class{constructor(t){registerInstance(this,t),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){watchBoolean(this,"_alert",t)}validateHasCloser(t){watchBoolean(this,"_hasCloser",t)}validateHeading(t){watchString(this,"_heading",t)}validateLevel(t){watchHeadingLevel(this,t)}validateOn(t){if("object"==typeof t&&null!==t){featureHint("[KolToast] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const i={};"function"!=typeof t.onClose&&!0!==t.onClose||(i.onClose=t.onClose),setState(this,"_on",i)}}validateShow(t){watchBoolean(this,"_show",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateShowDuration(t){watchNumber(this,"_showDuration",t,{hooks:{afterPatch:this.handleShowAndDuration}})}validateType(t){watchValidator(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 h(Host,null,this.state._show&&h("div",null,h("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},h("slot",null))))}static get watchers(){return{_alert:["validateAlert"],_hasCloser:["validateHasCloser"],_heading:["validateHeading"],_level:["validateLevel"],_on:["validateOn"],_show:["validateShow"],_showDuration:["validateShowDuration"],_type:["validateType"]}}};KolToast.style={default:defaultStyleCss};export{KolToast as kol_toast};
@@ -1 +1 @@
1
- {"file":"kol-toast.entry.js","mappings":"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","names":[],"sources":["./src/components/toast/style.css?tag=kol-toast&mode=default&encapsulation=shadow","./src/components/toast/component.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > div {\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 0;\n\tz-index: 200;\n}\n:host > div > kol-alert {\n\tdisplay: block;\n\tmargin: auto;\n\tpadding: calc(4 * var(--kolibri-spacing));\n\tmax-width: 750px;\n}\n:host > div > kol-button-wc {\n\ttop: 0;\n\tposition: relative;\n\tdisplay: block;\n\tmargin: auto;\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"],"version":3}
1
+ {"file":"kol-toast.entry.js","mappings":";;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,u9CAAu9C;;MCqCl+C,QAAQ;;;IAuJH,0BAAqB,GAAG;MACxC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE;QAC/G,YAAY,CAAC,IAAI,CAAC,eAA+B,CAAC,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;UACjC,YAAY,CAAC,IAAI,CAAC,eAA+B,CAAC,CAAC;UACnD,IAAI,CAAC,KAAK,EAAE,CAAC;SACb,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;OAC7B;KACD,CAAC;IAEe,UAAK,GAAG;;MACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;MACnB,IAAI,CAAC,KAAK,mCACN,IAAI,CAAC,KAAK,KACb,KAAK,EAAE,KAAK,GACZ,CAAC;MAEF,IAAI,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,OAAO,MAAK,SAAS,EAAE;QACpC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;OACrC;KACD,CAAC;IAEe,OAAE,GAAG;MACrB,OAAO,EAAE,IAAI,CAAC,KAAK;KACnB,CAAC;kBA3KiD,IAAI;sBAKA,KAAK;oBAKzB,EAAE;kBAKE,CAAC;;iBAUyB,IAAI;yBAK7B,KAAK;iBAKV,SAAS;iBAKZ;MAC/B,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,CAAC;MACT,KAAK,EAAE,IAAI;KACX;;EAMM,aAAa,CAAC,KAAe;IACnC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;GACpC;EAMM,iBAAiB,CAAC,KAAe;IACvC,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;GACxC;EAMM,eAAe,CAAC,KAAc;IACpC,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;GACrC;EAMM,aAAa,CAAC,KAAoB;IACxC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;GAC/B;EAMM,UAAU,CAAC,KAAkC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;MAChD,WAAW,CAAC,0EAA0E,CAAC,CAAC;MACxF,MAAM,SAAS,GAA+B,EAAE,CAAC;MACjD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE;QAClE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;OAClC;MACD,QAAQ,CAA6B,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;KAC7D;GACD;EAMM,YAAY,CAAC,KAAe;IAClC,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;MAClC,KAAK,EAAE;QACN,UAAU,EAAE,IAAI,CAAC,qBAAqB;OACtC;KACD,CAAC,CAAC;GACH;EAMM,oBAAoB,CAAC,KAAc;IACzC,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;MACzC,KAAK,EAAE;QACN,UAAU,EAAE,IAAI,CAAC,qBAAqB;OACtC;KACD,CAAC,CAAC;GACH;EAMM,YAAY,CAAC,KAAiB;IACpC,cAAc,CACb,IAAI,EACJ,OAAO,EACP,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ,KAAK,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,EACpJ,IAAI,GAAG,CAAC,wCAAwC,CAAC,EACjD,KAAK,CACL,CAAC;GACF;EAKM,iBAAiB;IACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;GAC9B;EA8BM,MAAM;IACZ,QACC,EAAC,IAAI,QACH,IAAI,CAAC,KAAK,CAAC,KAAK,KAChB,eACC,iBACC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACzB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACzB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,QAAQ,EAAC,MAAM,EAEf,GAAG,EAAE,IAAI,CAAC,EAAE,IAEZ,eAAQ,CACG,CACP,CACN,CACK,EACN;GACF;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/toast/style.css?tag=kol-toast&mode=default&encapsulation=shadow","./src/components/toast/component.tsx"],"sourcesContent":["@import '../style.css';\n\n:host > div {\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 0;\n\tz-index: 200;\n}\n:host > div > kol-alert {\n\tdisplay: block;\n\tmargin: auto;\n\tpadding: calc(4 * var(--kolibri-spacing));\n\tmax-width: 750px;\n}\n:host > div > kol-button-wc {\n\ttop: 0;\n\tposition: relative;\n\tdisplay: block;\n\tmargin: auto;\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"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as registerInstance,h,H as Host}from"./index-50adf9a0.js";import{w as watchTooltipAlignment}from"./button-link-c6783bbf.js";import{g as getDocument,n as nonce}from"./dev.utils-ec1c1b88.js";import{w as watchString}from"./prop.validators-dd337216.js";import{s as smartSetTimeout,p as processEnv}from"./reuse-9dd1192b.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";function getAlignment(t){return t.split("-")[1]}function getLengthFromAxis(t){return"y"===t?"height":"width"}function getSide(t){return t.split("-")[0]}function getMainAxisFromPlacement(t){return["top","bottom"].includes(getSide(t))?"x":"y"}function computeCoordsFromPlacement(t,e,i){let{reference:o,floating:n}=t;const l=o.x+o.width/2-n.width/2,r=o.y+o.height/2-n.height/2,s=getMainAxisFromPlacement(e),a=getLengthFromAxis(s),c=o[a]/2-n[a]/2,d="x"===s;let m;switch(getSide(e)){case"top":m={x:l,y:o.y-n.height};break;case"bottom":m={x:l,y:o.y+o.height};break;case"right":m={x:o.x+o.width,y:r};break;case"left":m={x:o.x-n.width,y:r};break;default:m={x:o.x,y:o.y}}switch(getAlignment(e)){case"start":m[s]-=c*(i&&d?-1:1);break;case"end":m[s]+=c*(i&&d?-1:1)}return m}const computePosition$1=async(t,e,i)=>{const{placement:o="bottom",strategy:n="absolute",middleware:l=[],platform:r}=i,s=l.filter(Boolean),a=await(null==r.isRTL?void 0:r.isRTL(e));let c=await r.getElementRects({reference:t,floating:e,strategy:n}),{x:d,y:m}=computeCoordsFromPlacement(c,o,a),f=o,g={},u=0;for(let i=0;i<s.length;i++){const{name:l,fn:p}=s[i],{x:h,y:v,data:y,reset:w}=await p({x:d,y:m,initialPlacement:o,placement:f,strategy:n,middlewareData:g,rects:c,platform:r,elements:{reference:t,floating:e}});d=null!=h?h:d,m=null!=v?v:m,g={...g,[l]:{...g[l],...y}},w&&u<=50&&(u++,"object"==typeof w&&(w.placement&&(f=w.placement),w.rects&&(c=!0===w.rects?await r.getElementRects({reference:t,floating:e,strategy:n}):w.rects),({x:d,y:m}=computeCoordsFromPlacement(c,f,a))),i=-1)}return{x:d,y:m,placement:f,strategy:n,middlewareData:g}};function expandPaddingObject(t){return{top:0,right:0,bottom:0,left:0,...t}}function getSideObjectFromPadding(t){return"number"!=typeof t?expandPaddingObject(t):{top:t,right:t,bottom:t,left:t}}function rectToClientRect(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function detectOverflow(t,e){var i;void 0===e&&(e={});const{x:o,y:n,platform:l,rects:r,elements:s,strategy:a}=t,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:m="floating",altBoundary:f=!1,padding:g=0}=e,u=getSideObjectFromPadding(g),p=s[f?"floating"===m?"reference":"floating":m],h=rectToClientRect(await l.getClippingRect({element:null==(i=await(null==l.isElement?void 0:l.isElement(p)))||i?p:p.contextElement||await(null==l.getDocumentElement?void 0:l.getDocumentElement(s.floating)),boundary:c,rootBoundary:d,strategy:a})),v="floating"===m?{...r.floating,x:o,y:n}:r.reference,y=await(null==l.getOffsetParent?void 0:l.getOffsetParent(s.floating)),w=await(null==l.isElement?void 0:l.isElement(y))&&await(null==l.getScale?void 0:l.getScale(y))||{x:1,y:1},b=rectToClientRect(l.convertOffsetParentRelativeRectToViewportRelativeRect?await l.convertOffsetParentRelativeRectToViewportRelativeRect({rect:v,offsetParent:y,strategy:a}):v);return{top:(h.top-b.top+u.top)/w.y,bottom:(b.bottom-h.bottom+u.bottom)/w.y,left:(h.left-b.left+u.left)/w.x,right:(b.right-h.right+u.right)/w.x}}const min$1=Math.min,max$1=Math.max;function within(t,e,i){return max$1(t,min$1(e,i))}const arrow=t=>({name:"arrow",options:t,async fn(e){const{element:i,padding:o=0}=t||{},{x:n,y:l,placement:r,rects:s,platform:a}=e;if(null==i)return{};const c=getSideObjectFromPadding(o),d={x:n,y:l},m=getMainAxisFromPlacement(r),f=getLengthFromAxis(m),g=await a.getDimensions(i),u="y"===m?"top":"left",p="y"===m?"bottom":"right",h=s.reference[f]+s.reference[m]-d[m]-s.floating[f],v=d[m]-s.reference[m],y=await(null==a.getOffsetParent?void 0:a.getOffsetParent(i));let w=y?"y"===m?y.clientHeight||0:y.clientWidth||0:0;0===w&&(w=s.floating[f]);const b=h/2-v/2,x=c[u],E=w-g[f]-c[p],T=w/2-g[f]/2+b,C=within(x,T,E),S=null!=getAlignment(r)&&T!=C&&s.reference[f]/2-(T<x?c[u]:c[p])-g[f]/2<0;return{[m]:d[m]-(S?T<x?x-T:E-T:0),data:{[m]:C,centerOffset:T-C}}}}),oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"};function getOppositePlacement(t){return t.replace(/left|right|bottom|top/g,(t=>oppositeSideMap[t]))}function getAlignmentSides(t,e,i){void 0===i&&(i=!1);const o=getAlignment(t),n=getMainAxisFromPlacement(t),l=getLengthFromAxis(n);let r="x"===n?o===(i?"end":"start")?"right":"left":"start"===o?"bottom":"top";return e.reference[l]>e.floating[l]&&(r=getOppositePlacement(r)),{main:r,cross:getOppositePlacement(r)}}const oppositeAlignmentMap={start:"end",end:"start"};function getOppositeAlignmentPlacement(t){return t.replace(/start|end/g,(t=>oppositeAlignmentMap[t]))}function getExpandedPlacements(t){const e=getOppositePlacement(t);return[getOppositeAlignmentPlacement(t),e,getOppositeAlignmentPlacement(e)]}function getSideList(t,e,i){const o=["left","right"],n=["right","left"],l=["top","bottom"],r=["bottom","top"];switch(t){case"top":case"bottom":return i?e?n:o:e?o:n;case"left":case"right":return e?l:r;default:return[]}}function getOppositeAxisPlacements(t,e,i,o){const n=getAlignment(t);let l=getSideList(getSide(t),"start"===i,o);return n&&(l=l.map((t=>t+"-"+n)),e&&(l=l.concat(l.map(getOppositeAlignmentPlacement)))),l}const flip=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var i;const{placement:o,middlewareData:n,rects:l,initialPlacement:r,platform:s,elements:a}=e,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:m,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:u=!0,...p}=t,h=getSide(o),v=getSide(r)===r,y=await(null==s.isRTL?void 0:s.isRTL(a.floating)),w=m||(v||!u?[getOppositePlacement(r)]:getExpandedPlacements(r));m||"none"===g||w.push(...getOppositeAxisPlacements(r,u,g,y));const b=[r,...w],x=await detectOverflow(e,p),E=[];let T=(null==(i=n.flip)?void 0:i.overflows)||[];if(c&&E.push(x[h]),d){const{main:t,cross:e}=getAlignmentSides(o,l,y);E.push(x[t],x[e])}if(T=[...T,{placement:o,overflows:E}],!E.every((t=>t<=0))){var C,S;const t=((null==(C=n.flip)?void 0:C.index)||0)+1,e=b[t];if(e)return{data:{index:t,overflows:T},reset:{placement:e}};let i=null==(S=T.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:S.placement;if(!i)switch(f){case"bestFit":{var A;const t=null==(A=T.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:A[0];t&&(i=t);break}case"initialPlacement":i=r}if(o!==i)return{reset:{placement:i}}}return{}}}};async function convertValueToCoords(t,e){const{placement:i,platform:o,elements:n}=t,l=await(null==o.isRTL?void 0:o.isRTL(n.floating)),r=getSide(i),s=getAlignment(i),a="x"===getMainAxisFromPlacement(i),c=["left","top"].includes(r)?-1:1,d=l&&a?-1:1,m="function"==typeof e?e(t):e;let{mainAxis:f,crossAxis:g,alignmentAxis:u}="number"==typeof m?{mainAxis:m,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...m};return s&&"number"==typeof u&&(g="end"===s?-1*u:u),a?{x:g*d,y:f*c}:{x:f*c,y:g*d}}const offset=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:i,y:o}=e,n=await convertValueToCoords(e,t);return{x:i+n.x,y:o+n.y,data:n}}}};function getCrossAxis(t){return"x"===t?"y":"x"}const shift=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:o,placement:n}=e,{mainAxis:l=!0,crossAxis:r=!1,limiter:s={fn:t=>{let{x:e,y:i}=t;return{x:e,y:i}}},...a}=t,c={x:i,y:o},d=await detectOverflow(e,a),m=getMainAxisFromPlacement(getSide(n)),f=getCrossAxis(m);let g=c[m],u=c[f];if(l){const t="y"===m?"bottom":"right";g=within(g+d["y"===m?"top":"left"],g,g-d[t])}if(r){const t="y"===f?"bottom":"right";u=within(u+d["y"===f?"top":"left"],u,u-d[t])}const p=s.fn({...e,[m]:g,[f]:u});return{...p,data:{x:p.x-i,y:p.y-o}}}}};function getWindow(t){var e;return(null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function getComputedStyle$1(t){return getWindow(t).getComputedStyle(t)}const min=Math.min,max=Math.max,round=Math.round;function getCssDimensions(t){const e=getComputedStyle$1(t);let i=parseFloat(e.width),o=parseFloat(e.height);const n=t.offsetWidth,l=t.offsetHeight,r=round(i)!==n||round(o)!==l;return r&&(i=n,o=l),{width:i,height:o,fallback:r}}function getNodeName(t){return isNode(t)?(t.nodeName||"").toLowerCase():""}let uaString;function getUAString(){if(uaString)return uaString;const t=navigator.userAgentData;return t&&Array.isArray(t.brands)?(uaString=t.brands.map((t=>t.brand+"/"+t.version)).join(" "),uaString):navigator.userAgent}function isHTMLElement(t){return t instanceof getWindow(t).HTMLElement}function isElement(t){return t instanceof getWindow(t).Element}function isNode(t){return t instanceof getWindow(t).Node}function isShadowRoot(t){if("undefined"==typeof ShadowRoot)return!1;return t instanceof getWindow(t).ShadowRoot||t instanceof ShadowRoot}function isOverflowElement(t){const{overflow:e,overflowX:i,overflowY:o,display:n}=getComputedStyle$1(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+i)&&!["inline","contents"].includes(n)}function isTableElement(t){return["table","td","th"].includes(getNodeName(t))}function isContainingBlock(t){const e=/firefox/i.test(getUAString()),i=getComputedStyle$1(t),o=i.backdropFilter||i.WebkitBackdropFilter;return"none"!==i.transform||"none"!==i.perspective||!!o&&"none"!==o||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 isClientRectVisualViewportBased(){return/^((?!chrome|android).)*safari/i.test(getUAString())}function isLastTraversableNode(t){return["html","body","#document"].includes(getNodeName(t))}function unwrapElement(t){return isElement(t)?t:t.contextElement}const FALLBACK_SCALE={x:1,y:1};function getScale(t){const e=unwrapElement(t);if(!isHTMLElement(e))return FALLBACK_SCALE;const i=e.getBoundingClientRect(),{width:o,height:n,fallback:l}=getCssDimensions(e);let r=(l?round(i.width):i.width)/o,s=(l?round(i.height):i.height)/n;return r&&Number.isFinite(r)||(r=1),s&&Number.isFinite(s)||(s=1),{x:r,y:s}}function getBoundingClientRect(t,e,i,o){var n,l;void 0===e&&(e=!1),void 0===i&&(i=!1);const r=t.getBoundingClientRect(),s=unwrapElement(t);let a=FALLBACK_SCALE;e&&(o?isElement(o)&&(a=getScale(o)):a=getScale(t));const c=s?getWindow(s):window,d=isClientRectVisualViewportBased()&&i;let m=(r.left+(d&&(null==(n=c.visualViewport)?void 0:n.offsetLeft)||0))/a.x,f=(r.top+(d&&(null==(l=c.visualViewport)?void 0:l.offsetTop)||0))/a.y,g=r.width/a.x,u=r.height/a.y;if(s){const t=getWindow(s),e=o&&isElement(o)?getWindow(o):o;let i=t.frameElement;for(;i&&o&&e!==t;){const t=getScale(i),e=i.getBoundingClientRect(),o=getComputedStyle(i);e.x+=(i.clientLeft+parseFloat(o.paddingLeft))*t.x,e.y+=(i.clientTop+parseFloat(o.paddingTop))*t.y,m*=t.x,f*=t.y,g*=t.x,u*=t.y,m+=e.x,f+=e.y,i=getWindow(i).frameElement}}return{width:g,height:u,top:f,right:m+g,bottom:f+u,left:m,x:m,y:f}}function getDocumentElement(t){return((isNode(t)?t.ownerDocument:t.document)||window.document).documentElement}function getNodeScroll(t){return isElement(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function convertOffsetParentRelativeRectToViewportRelativeRect(t){let{rect:e,offsetParent:i,strategy:o}=t;const n=isHTMLElement(i),l=getDocumentElement(i);if(i===l)return e;let r={scrollLeft:0,scrollTop:0},s={x:1,y:1};const a={x:0,y:0};if((n||!n&&"fixed"!==o)&&(("body"!==getNodeName(i)||isOverflowElement(l))&&(r=getNodeScroll(i)),isHTMLElement(i))){const t=getBoundingClientRect(i);s=getScale(i),a.x=t.x+i.clientLeft,a.y=t.y+i.clientTop}return{width:e.width*s.x,height:e.height*s.y,x:e.x*s.x-r.scrollLeft*s.x+a.x,y:e.y*s.y-r.scrollTop*s.y+a.y}}function getWindowScrollBarX(t){return getBoundingClientRect(getDocumentElement(t)).left+getNodeScroll(t).scrollLeft}function getDocumentRect(t){const e=getDocumentElement(t),i=getNodeScroll(t),o=t.ownerDocument.body,n=max(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),l=max(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight);let r=-i.scrollLeft+getWindowScrollBarX(t);const s=-i.scrollTop;return"rtl"===getComputedStyle$1(o).direction&&(r+=max(e.clientWidth,o.clientWidth)-n),{width:n,height:l,x:r,y:s}}function getParentNode(t){if("html"===getNodeName(t))return t;const e=t.assignedSlot||t.parentNode||isShadowRoot(t)&&t.host||getDocumentElement(t);return isShadowRoot(e)?e.host:e}function getNearestOverflowAncestor(t){const e=getParentNode(t);return isLastTraversableNode(e)?e.ownerDocument.body:isHTMLElement(e)&&isOverflowElement(e)?e:getNearestOverflowAncestor(e)}function getOverflowAncestors(t,e){var i;void 0===e&&(e=[]);const o=getNearestOverflowAncestor(t),n=o===(null==(i=t.ownerDocument)?void 0:i.body),l=getWindow(o);return n?e.concat(l,l.visualViewport||[],isOverflowElement(o)?o:[]):e.concat(o,getOverflowAncestors(o))}function getViewportRect(t,e){const i=getWindow(t),o=getDocumentElement(t),n=i.visualViewport;let l=o.clientWidth,r=o.clientHeight,s=0,a=0;if(n){l=n.width,r=n.height;const t=isClientRectVisualViewportBased();(!t||t&&"fixed"===e)&&(s=n.offsetLeft,a=n.offsetTop)}return{width:l,height:r,x:s,y:a}}function getInnerBoundingClientRect(t,e){const i=getBoundingClientRect(t,!0,"fixed"===e),o=i.top+t.clientTop,n=i.left+t.clientLeft,l=isHTMLElement(t)?getScale(t):{x:1,y:1};return{width:t.clientWidth*l.x,height:t.clientHeight*l.y,x:n*l.x,y:o*l.y}}function getClientRectFromClippingAncestor(t,e,i){let o;if("viewport"===e)o=getViewportRect(t,i);else if("document"===e)o=getDocumentRect(getDocumentElement(t));else if(isElement(e))o=getInnerBoundingClientRect(e,i);else{const i={...e};if(isClientRectVisualViewportBased()){var n,l;const e=getWindow(t);i.x-=(null==(n=e.visualViewport)?void 0:n.offsetLeft)||0,i.y-=(null==(l=e.visualViewport)?void 0:l.offsetTop)||0}o=i}return rectToClientRect(o)}function getClippingElementAncestors(t,e){const i=e.get(t);if(i)return i;let o=getOverflowAncestors(t).filter((t=>isElement(t)&&"body"!==getNodeName(t))),n=null;const l="fixed"===getComputedStyle$1(t).position;let r=l?getParentNode(t):t;for(;isElement(r)&&!isLastTraversableNode(r);){const t=getComputedStyle$1(r),e=isContainingBlock(r);if("fixed"===t.position)n=null;else{(l?!e&&!n:!e&&"static"===t.position&&!!n&&["absolute","fixed"].includes(n.position))?o=o.filter((t=>t!==r)):n=t}r=getParentNode(r)}return e.set(t,o),o}function getClippingRect(t){let{element:e,boundary:i,rootBoundary:o,strategy:n}=t;const l=[..."clippingAncestors"===i?getClippingElementAncestors(e,this._c):[].concat(i),o],r=l[0],s=l.reduce(((t,i)=>{const o=getClientRectFromClippingAncestor(e,i,n);return t.top=max(o.top,t.top),t.right=min(o.right,t.right),t.bottom=min(o.bottom,t.bottom),t.left=max(o.left,t.left),t}),getClientRectFromClippingAncestor(e,r,n));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function getDimensions(t){return isHTMLElement(t)?getCssDimensions(t):t.getBoundingClientRect()}function getTrueOffsetParent(t,e){return isHTMLElement(t)&&"fixed"!==getComputedStyle$1(t).position?e?e(t):t.offsetParent:null}function getContainingBlock(t){let e=getParentNode(t);for(;isHTMLElement(e)&&!isLastTraversableNode(e);){if(isContainingBlock(e))return e;e=getParentNode(e)}return null}function getOffsetParent(t,e){const i=getWindow(t);let o=getTrueOffsetParent(t,e);for(;o&&isTableElement(o)&&"static"===getComputedStyle$1(o).position;)o=getTrueOffsetParent(o,e);return o&&("html"===getNodeName(o)||"body"===getNodeName(o)&&"static"===getComputedStyle$1(o).position&&!isContainingBlock(o))?i:o||getContainingBlock(t)||i}function getRectRelativeToOffsetParent(t,e,i){const o=isHTMLElement(e),n=getDocumentElement(e),l=getBoundingClientRect(t,!0,"fixed"===i,e);let r={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(o||!o&&"fixed"!==i)if(("body"!==getNodeName(e)||isOverflowElement(n))&&(r=getNodeScroll(e)),isHTMLElement(e)){const t=getBoundingClientRect(e,!0);s.x=t.x+e.clientLeft,s.y=t.y+e.clientTop}else n&&(s.x=getWindowScrollBarX(n));return{x:l.left+r.scrollLeft-s.x,y:l.top+r.scrollTop-s.y,width:l.width,height:l.height}}const platform={getClippingRect:getClippingRect,convertOffsetParentRelativeRectToViewportRelativeRect:convertOffsetParentRelativeRectToViewportRelativeRect,isElement:isElement,getDimensions:getDimensions,getOffsetParent:getOffsetParent,getDocumentElement:getDocumentElement,getScale:getScale,async getElementRects(t){let{reference:e,floating:i,strategy:o}=t;const n=this.getOffsetParent||getOffsetParent,l=this.getDimensions;return{reference:getRectRelativeToOffsetParent(e,await n(i),o),floating:{x:0,y:0,...await l(i)}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>"rtl"===getComputedStyle$1(t).direction},computePosition=(t,e,i)=>{const o=new Map,n={platform:platform,...i},l={...n.platform,_c:o};return computePosition$1(t,e,{...n,platform:l})},defaultStyleCss=":host{--kolibri-border-color:#e0e0e0;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host *{font-family:inherit;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}:host *{box-sizing:border-box}:host kol-icon{color:inherit}:host kol-span-wc{display:grid;place-items:center;width:100%}:host kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}:host button{margin:0;min-height:44px;min-width:44px;padding:0}:host a,:host button,:host input,:host select,:host textarea{cursor:pointer}:host a.icon-only>kol-span-wc>span>span,:host button.icon-only>kol-span-wc>span>span{display:none}:host a{display:inline-flex;place-items:baseline}:host button{background-color:transparent;border-width:0}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}kol-tooltip #arrow{background:#333;height:10px;position:absolute;transform:rotate(45deg);width:10px;z-index:999}kol-tooltip kol-badge{border-radius:var(--kolibri-border-radius);font-size:calc(4 * var(--kolibri-spacing));max-width:300px;position:relative;z-index:1000}@keyframes fadeInOpacity{0%{opacity:0}100%{opacity:1}}",KolTooltip=class{constructor(t){registerInstance(this,t),this.alignTooltip=()=>{var t,e,i;if("test"!==processEnv&&this.previousSibling){const o=this.previousSibling;if(this.tooltipElement){const n=this.tooltipElement,l=this.arrowElement,r=[(i=null!==(t=null==l?void 0:l.offsetHeight)&&void 0!==t?t:10,void 0===i&&(i=0),{name:"offset",options:i,async fn(t){const{x:e,y:o}=t,n=await convertValueToCoords(t,i);return{x:e+n.x,y:o+n.y,data:n}}}),(void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var i;const{placement:o,middlewareData:n,rects:l,initialPlacement:r,platform:s,elements:a}=t,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:m,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:u=!0,...p}=e,h=getSide(o),v=getSide(r)===r,y=await(null==s.isRTL?void 0:s.isRTL(a.floating)),w=m||(v||!u?[getOppositePlacement(r)]:getExpandedPlacements(r));m||"none"===g||w.push(...getOppositeAxisPlacements(r,u,g,y));const b=[r,...w],x=await detectOverflow(t,p),E=[];let T=(null==(i=n.flip)?void 0:i.overflows)||[];if(c&&E.push(x[h]),d){const{main:t,cross:e}=getAlignmentSides(o,l,y);E.push(x[t],x[e])}if(T=[...T,{placement:o,overflows:E}],!E.every((t=>t<=0))){var C,S;const t=((null==(C=n.flip)?void 0:C.index)||0)+1,e=b[t];if(e)return{data:{index:t,overflows:T},reset:{placement:e}};let i=null==(S=T.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:S.placement;if(!i)switch(f){case"bestFit":{var A;const t=null==(A=T.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:A[0];t&&(i=t);break}case"initialPlacement":i=r}if(o!==i)return{reset:{placement:i}}}return{}}}),shift()];l&&r.push(arrow({element:l})),computePosition(o,n,{placement:this.state._align,middleware:r}).then((({x:t,y:e,middlewareData:i,placement:o})=>{var r,s;Object.assign(n.style,{left:`${t}px`,top:`${e}px`}),l&&((null===(r=i.arrow)||void 0===r?void 0:r.x)?Object.assign(l.style,{left:`${i.arrow.x}px`,top:"bottom"===o?-l.offsetHeight/2+"px":"",bottom:"top"===o?-l.offsetHeight/2+"px":""}):(null===(s=i.arrow)||void 0===s?void 0:s.y)&&Object.assign(l.style,{left:"right"===o?-l.offsetWidth/2+"px":"",right:"left"===o?-l.offsetWidth/2+"px":"",top:`${i.arrow.y}px`}))}))}}},this.showTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","block"),getDocument().body.addEventListener("keyup",this.hideTooltipByEscape),this.alignTooltip(),this.tooltipElement.style.setProperty("visibility","visible"),document.addEventListener("scroll",this.alignTooltip))},this.hideTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","none"),this.tooltipElement.style.setProperty("visibility","hidden"),document.removeEventListener("scroll",this.alignTooltip))},this.hideTooltipByEscape=t=>{"Escape"===t.key&&(getDocument().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:nonce(),_label:""}}render(){return smartSetTimeout((()=>{this.alignTooltip(),smartSetTimeout(this.alignTooltip,750)}),250),h(Host,{ref:this.catchHostElement},""!==this.state._label&&h("div",{id:"floating",ref:this.catchTooltipElement},h("div",{id:"arrow",ref:this.catchArrowElement}),h("kol-badge",{id:this.state._id,_color:{backgroundColor:"#333",color:"#ddd"},_label:this.state._label})))}validateAlign(t){watchTooltipAlignment(this,"_align",t)}validateId(t){watchString(this,"_id",t)}validateLabel(t){watchString(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"]}}};KolTooltip.style={default:defaultStyleCss};export{KolTooltip as kol_tooltip};
4
+ import{r as registerInstance,h,H as Host}from"./index-50adf9a0.js";import{w as watchTooltipAlignment}from"./button-link-c6783bbf.js";import{g as getDocument,n as nonce}from"./dev.utils-ec1c1b88.js";import{w as watchString}from"./prop.validators-dd337216.js";import{s as smartSetTimeout,p as processEnv}from"./reuse-9dd1192b.js";import"./index-599f5430.js";import"./a11y.tipps-a876ebb7.js";function getAlignment(t){return t.split("-")[1]}function getLengthFromAxis(t){return"y"===t?"height":"width"}function getSide(t){return t.split("-")[0]}function getMainAxisFromPlacement(t){return["top","bottom"].includes(getSide(t))?"x":"y"}function computeCoordsFromPlacement(t,e,i){let{reference:n,floating:o}=t;const l=n.x+n.width/2-o.width/2,r=n.y+n.height/2-o.height/2,s=getMainAxisFromPlacement(e),a=getLengthFromAxis(s),c=n[a]/2-o[a]/2,d="x"===s;let m;switch(getSide(e)){case"top":m={x:l,y:n.y-o.height};break;case"bottom":m={x:l,y:n.y+n.height};break;case"right":m={x:n.x+n.width,y:r};break;case"left":m={x:n.x-o.width,y:r};break;default:m={x:n.x,y:n.y}}switch(getAlignment(e)){case"start":m[s]-=c*(i&&d?-1:1);break;case"end":m[s]+=c*(i&&d?-1:1)}return m}const computePosition$1=async(t,e,i)=>{const{placement:n="bottom",strategy:o="absolute",middleware:l=[],platform:r}=i,s=l.filter(Boolean),a=await(null==r.isRTL?void 0:r.isRTL(e));let c=await r.getElementRects({reference:t,floating:e,strategy:o}),{x:d,y:m}=computeCoordsFromPlacement(c,n,a),f=n,g={},u=0;for(let i=0;i<s.length;i++){const{name:l,fn:p}=s[i],{x:h,y:v,data:y,reset:w}=await p({x:d,y:m,initialPlacement:n,placement:f,strategy:o,middlewareData:g,rects:c,platform:r,elements:{reference:t,floating:e}});d=null!=h?h:d,m=null!=v?v:m,g={...g,[l]:{...g[l],...y}},w&&u<=50&&(u++,"object"==typeof w&&(w.placement&&(f=w.placement),w.rects&&(c=!0===w.rects?await r.getElementRects({reference:t,floating:e,strategy:o}):w.rects),({x:d,y:m}=computeCoordsFromPlacement(c,f,a))),i=-1)}return{x:d,y:m,placement:f,strategy:o,middlewareData:g}};function expandPaddingObject(t){return{top:0,right:0,bottom:0,left:0,...t}}function getSideObjectFromPadding(t){return"number"!=typeof t?expandPaddingObject(t):{top:t,right:t,bottom:t,left:t}}function rectToClientRect(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function detectOverflow(t,e){var i;void 0===e&&(e={});const{x:n,y:o,platform:l,rects:r,elements:s,strategy:a}=t,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:m="floating",altBoundary:f=!1,padding:g=0}=e,u=getSideObjectFromPadding(g),p=s[f?"floating"===m?"reference":"floating":m],h=rectToClientRect(await l.getClippingRect({element:null==(i=await(null==l.isElement?void 0:l.isElement(p)))||i?p:p.contextElement||await(null==l.getDocumentElement?void 0:l.getDocumentElement(s.floating)),boundary:c,rootBoundary:d,strategy:a})),v="floating"===m?{...r.floating,x:n,y:o}:r.reference,y=await(null==l.getOffsetParent?void 0:l.getOffsetParent(s.floating)),w=await(null==l.isElement?void 0:l.isElement(y))&&await(null==l.getScale?void 0:l.getScale(y))||{x:1,y:1},x=rectToClientRect(l.convertOffsetParentRelativeRectToViewportRelativeRect?await l.convertOffsetParentRelativeRectToViewportRelativeRect({rect:v,offsetParent:y,strategy:a}):v);return{top:(h.top-x.top+u.top)/w.y,bottom:(x.bottom-h.bottom+u.bottom)/w.y,left:(h.left-x.left+u.left)/w.x,right:(x.right-h.right+u.right)/w.x}}const min$1=Math.min,max$1=Math.max;function within(t,e,i){return max$1(t,min$1(e,i))}const arrow=t=>({name:"arrow",options:t,async fn(e){const{element:i,padding:n=0}=t||{},{x:o,y:l,placement:r,rects:s,platform:a}=e;if(null==i)return{};const c=getSideObjectFromPadding(n),d={x:o,y:l},m=getMainAxisFromPlacement(r),f=getLengthFromAxis(m),g=await a.getDimensions(i),u="y"===m?"top":"left",p="y"===m?"bottom":"right",h=s.reference[f]+s.reference[m]-d[m]-s.floating[f],v=d[m]-s.reference[m],y=await(null==a.getOffsetParent?void 0:a.getOffsetParent(i));let w=y?"y"===m?y.clientHeight||0:y.clientWidth||0:0;0===w&&(w=s.floating[f]);const x=h/2-v/2,b=c[u],E=w-g[f]-c[p],T=w/2-g[f]/2+x,C=within(b,T,E),S=null!=getAlignment(r)&&T!=C&&s.reference[f]/2-(T<b?c[u]:c[p])-g[f]/2<0;return{[m]:d[m]-(S?T<b?b-T:E-T:0),data:{[m]:C,centerOffset:T-C}}}}),oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"};function getOppositePlacement(t){return t.replace(/left|right|bottom|top/g,(t=>oppositeSideMap[t]))}function getAlignmentSides(t,e,i){void 0===i&&(i=!1);const n=getAlignment(t),o=getMainAxisFromPlacement(t),l=getLengthFromAxis(o);let r="x"===o?n===(i?"end":"start")?"right":"left":"start"===n?"bottom":"top";return e.reference[l]>e.floating[l]&&(r=getOppositePlacement(r)),{main:r,cross:getOppositePlacement(r)}}const oppositeAlignmentMap={start:"end",end:"start"};function getOppositeAlignmentPlacement(t){return t.replace(/start|end/g,(t=>oppositeAlignmentMap[t]))}function getExpandedPlacements(t){const e=getOppositePlacement(t);return[getOppositeAlignmentPlacement(t),e,getOppositeAlignmentPlacement(e)]}function getSideList(t,e,i){const n=["left","right"],o=["right","left"],l=["top","bottom"],r=["bottom","top"];switch(t){case"top":case"bottom":return i?e?o:n:e?n:o;case"left":case"right":return e?l:r;default:return[]}}function getOppositeAxisPlacements(t,e,i,n){const o=getAlignment(t);let l=getSideList(getSide(t),"start"===i,n);return o&&(l=l.map((t=>t+"-"+o)),e&&(l=l.concat(l.map(getOppositeAlignmentPlacement)))),l}const flip=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var i;const{placement:n,middlewareData:o,rects:l,initialPlacement:r,platform:s,elements:a}=e,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:m,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:u=!0,...p}=t,h=getSide(n),v=getSide(r)===r,y=await(null==s.isRTL?void 0:s.isRTL(a.floating)),w=m||(v||!u?[getOppositePlacement(r)]:getExpandedPlacements(r));m||"none"===g||w.push(...getOppositeAxisPlacements(r,u,g,y));const x=[r,...w],b=await detectOverflow(e,p),E=[];let T=(null==(i=o.flip)?void 0:i.overflows)||[];if(c&&E.push(b[h]),d){const{main:t,cross:e}=getAlignmentSides(n,l,y);E.push(b[t],b[e])}if(T=[...T,{placement:n,overflows:E}],!E.every((t=>t<=0))){var C,S;const t=((null==(C=o.flip)?void 0:C.index)||0)+1,e=x[t];if(e)return{data:{index:t,overflows:T},reset:{placement:e}};let i=null==(S=T.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:S.placement;if(!i)switch(f){case"bestFit":{var A;const t=null==(A=T.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:A[0];t&&(i=t);break}case"initialPlacement":i=r}if(n!==i)return{reset:{placement:i}}}return{}}}};async function convertValueToCoords(t,e){const{placement:i,platform:n,elements:o}=t,l=await(null==n.isRTL?void 0:n.isRTL(o.floating)),r=getSide(i),s=getAlignment(i),a="x"===getMainAxisFromPlacement(i),c=["left","top"].includes(r)?-1:1,d=l&&a?-1:1,m="function"==typeof e?e(t):e;let{mainAxis:f,crossAxis:g,alignmentAxis:u}="number"==typeof m?{mainAxis:m,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...m};return s&&"number"==typeof u&&(g="end"===s?-1*u:u),a?{x:g*d,y:f*c}:{x:f*c,y:g*d}}const offset=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:i,y:n}=e,o=await convertValueToCoords(e,t);return{x:i+o.x,y:n+o.y,data:o}}}};function getCrossAxis(t){return"x"===t?"y":"x"}const shift=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:n,placement:o}=e,{mainAxis:l=!0,crossAxis:r=!1,limiter:s={fn:t=>{let{x:e,y:i}=t;return{x:e,y:i}}},...a}=t,c={x:i,y:n},d=await detectOverflow(e,a),m=getMainAxisFromPlacement(getSide(o)),f=getCrossAxis(m);let g=c[m],u=c[f];if(l){const t="y"===m?"bottom":"right";g=within(g+d["y"===m?"top":"left"],g,g-d[t])}if(r){const t="y"===f?"bottom":"right";u=within(u+d["y"===f?"top":"left"],u,u-d[t])}const p=s.fn({...e,[m]:g,[f]:u});return{...p,data:{x:p.x-i,y:p.y-n}}}}};function getWindow(t){var e;return(null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function getComputedStyle$1(t){return getWindow(t).getComputedStyle(t)}const min=Math.min,max=Math.max,round=Math.round;function getCssDimensions(t){const e=getComputedStyle$1(t);let i=parseFloat(e.width),n=parseFloat(e.height);const o=t.offsetWidth,l=t.offsetHeight,r=round(i)!==o||round(n)!==l;return r&&(i=o,n=l),{width:i,height:n,fallback:r}}function getNodeName(t){return isNode(t)?(t.nodeName||"").toLowerCase():""}let uaString;function getUAString(){if(uaString)return uaString;const t=navigator.userAgentData;return t&&Array.isArray(t.brands)?(uaString=t.brands.map((t=>t.brand+"/"+t.version)).join(" "),uaString):navigator.userAgent}function isHTMLElement(t){return t instanceof getWindow(t).HTMLElement}function isElement(t){return t instanceof getWindow(t).Element}function isNode(t){return t instanceof getWindow(t).Node}function isShadowRoot(t){if("undefined"==typeof ShadowRoot)return!1;return t instanceof getWindow(t).ShadowRoot||t instanceof ShadowRoot}function isOverflowElement(t){const{overflow:e,overflowX:i,overflowY:n,display:o}=getComputedStyle$1(t);return/auto|scroll|overlay|hidden|clip/.test(e+n+i)&&!["inline","contents"].includes(o)}function isTableElement(t){return["table","td","th"].includes(getNodeName(t))}function isContainingBlock(t){const e=/firefox/i.test(getUAString()),i=getComputedStyle$1(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 isClientRectVisualViewportBased(){return/^((?!chrome|android).)*safari/i.test(getUAString())}function isLastTraversableNode(t){return["html","body","#document"].includes(getNodeName(t))}function unwrapElement(t){return isElement(t)?t:t.contextElement}const FALLBACK_SCALE={x:1,y:1};function getScale(t){const e=unwrapElement(t);if(!isHTMLElement(e))return FALLBACK_SCALE;const i=e.getBoundingClientRect(),{width:n,height:o,fallback:l}=getCssDimensions(e);let r=(l?round(i.width):i.width)/n,s=(l?round(i.height):i.height)/o;return r&&Number.isFinite(r)||(r=1),s&&Number.isFinite(s)||(s=1),{x:r,y:s}}function getBoundingClientRect(t,e,i,n){var o,l;void 0===e&&(e=!1),void 0===i&&(i=!1);const r=t.getBoundingClientRect(),s=unwrapElement(t);let a=FALLBACK_SCALE;e&&(n?isElement(n)&&(a=getScale(n)):a=getScale(t));const c=s?getWindow(s):window,d=isClientRectVisualViewportBased()&&i;let m=(r.left+(d&&(null==(o=c.visualViewport)?void 0:o.offsetLeft)||0))/a.x,f=(r.top+(d&&(null==(l=c.visualViewport)?void 0:l.offsetTop)||0))/a.y,g=r.width/a.x,u=r.height/a.y;if(s){const t=getWindow(s),e=n&&isElement(n)?getWindow(n):n;let i=t.frameElement;for(;i&&n&&e!==t;){const t=getScale(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,m*=t.x,f*=t.y,g*=t.x,u*=t.y,m+=e.x,f+=e.y,i=getWindow(i).frameElement}}return{width:g,height:u,top:f,right:m+g,bottom:f+u,left:m,x:m,y:f}}function getDocumentElement(t){return((isNode(t)?t.ownerDocument:t.document)||window.document).documentElement}function getNodeScroll(t){return isElement(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function convertOffsetParentRelativeRectToViewportRelativeRect(t){let{rect:e,offsetParent:i,strategy:n}=t;const o=isHTMLElement(i),l=getDocumentElement(i);if(i===l)return e;let r={scrollLeft:0,scrollTop:0},s={x:1,y:1};const a={x:0,y:0};if((o||!o&&"fixed"!==n)&&(("body"!==getNodeName(i)||isOverflowElement(l))&&(r=getNodeScroll(i)),isHTMLElement(i))){const t=getBoundingClientRect(i);s=getScale(i),a.x=t.x+i.clientLeft,a.y=t.y+i.clientTop}return{width:e.width*s.x,height:e.height*s.y,x:e.x*s.x-r.scrollLeft*s.x+a.x,y:e.y*s.y-r.scrollTop*s.y+a.y}}function getWindowScrollBarX(t){return getBoundingClientRect(getDocumentElement(t)).left+getNodeScroll(t).scrollLeft}function getDocumentRect(t){const e=getDocumentElement(t),i=getNodeScroll(t),n=t.ownerDocument.body,o=max(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),l=max(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight);let r=-i.scrollLeft+getWindowScrollBarX(t);const s=-i.scrollTop;return"rtl"===getComputedStyle$1(n).direction&&(r+=max(e.clientWidth,n.clientWidth)-o),{width:o,height:l,x:r,y:s}}function getParentNode(t){if("html"===getNodeName(t))return t;const e=t.assignedSlot||t.parentNode||isShadowRoot(t)&&t.host||getDocumentElement(t);return isShadowRoot(e)?e.host:e}function getNearestOverflowAncestor(t){const e=getParentNode(t);return isLastTraversableNode(e)?e.ownerDocument.body:isHTMLElement(e)&&isOverflowElement(e)?e:getNearestOverflowAncestor(e)}function getOverflowAncestors(t,e){var i;void 0===e&&(e=[]);const n=getNearestOverflowAncestor(t),o=n===(null==(i=t.ownerDocument)?void 0:i.body),l=getWindow(n);return o?e.concat(l,l.visualViewport||[],isOverflowElement(n)?n:[]):e.concat(n,getOverflowAncestors(n))}function getViewportRect(t,e){const i=getWindow(t),n=getDocumentElement(t),o=i.visualViewport;let l=n.clientWidth,r=n.clientHeight,s=0,a=0;if(o){l=o.width,r=o.height;const t=isClientRectVisualViewportBased();(!t||t&&"fixed"===e)&&(s=o.offsetLeft,a=o.offsetTop)}return{width:l,height:r,x:s,y:a}}function getInnerBoundingClientRect(t,e){const i=getBoundingClientRect(t,!0,"fixed"===e),n=i.top+t.clientTop,o=i.left+t.clientLeft,l=isHTMLElement(t)?getScale(t):{x:1,y:1};return{width:t.clientWidth*l.x,height:t.clientHeight*l.y,x:o*l.x,y:n*l.y}}function getClientRectFromClippingAncestor(t,e,i){let n;if("viewport"===e)n=getViewportRect(t,i);else if("document"===e)n=getDocumentRect(getDocumentElement(t));else if(isElement(e))n=getInnerBoundingClientRect(e,i);else{const i={...e};if(isClientRectVisualViewportBased()){var o,l;const e=getWindow(t);i.x-=(null==(o=e.visualViewport)?void 0:o.offsetLeft)||0,i.y-=(null==(l=e.visualViewport)?void 0:l.offsetTop)||0}n=i}return rectToClientRect(n)}function getClippingElementAncestors(t,e){const i=e.get(t);if(i)return i;let n=getOverflowAncestors(t).filter((t=>isElement(t)&&"body"!==getNodeName(t))),o=null;const l="fixed"===getComputedStyle$1(t).position;let r=l?getParentNode(t):t;for(;isElement(r)&&!isLastTraversableNode(r);){const t=getComputedStyle$1(r),e=isContainingBlock(r);if("fixed"===t.position)o=null;else{(l?!e&&!o:!e&&"static"===t.position&&!!o&&["absolute","fixed"].includes(o.position))?n=n.filter((t=>t!==r)):o=t}r=getParentNode(r)}return e.set(t,n),n}function getClippingRect(t){let{element:e,boundary:i,rootBoundary:n,strategy:o}=t;const l=[..."clippingAncestors"===i?getClippingElementAncestors(e,this._c):[].concat(i),n],r=l[0],s=l.reduce(((t,i)=>{const n=getClientRectFromClippingAncestor(e,i,o);return t.top=max(n.top,t.top),t.right=min(n.right,t.right),t.bottom=min(n.bottom,t.bottom),t.left=max(n.left,t.left),t}),getClientRectFromClippingAncestor(e,r,o));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function getDimensions(t){return isHTMLElement(t)?getCssDimensions(t):t.getBoundingClientRect()}function getTrueOffsetParent(t,e){return isHTMLElement(t)&&"fixed"!==getComputedStyle$1(t).position?e?e(t):t.offsetParent:null}function getContainingBlock(t){let e=getParentNode(t);for(;isHTMLElement(e)&&!isLastTraversableNode(e);){if(isContainingBlock(e))return e;e=getParentNode(e)}return null}function getOffsetParent(t,e){const i=getWindow(t);let n=getTrueOffsetParent(t,e);for(;n&&isTableElement(n)&&"static"===getComputedStyle$1(n).position;)n=getTrueOffsetParent(n,e);return n&&("html"===getNodeName(n)||"body"===getNodeName(n)&&"static"===getComputedStyle$1(n).position&&!isContainingBlock(n))?i:n||getContainingBlock(t)||i}function getRectRelativeToOffsetParent(t,e,i){const n=isHTMLElement(e),o=getDocumentElement(e),l=getBoundingClientRect(t,!0,"fixed"===i,e);let r={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(n||!n&&"fixed"!==i)if(("body"!==getNodeName(e)||isOverflowElement(o))&&(r=getNodeScroll(e)),isHTMLElement(e)){const t=getBoundingClientRect(e,!0);s.x=t.x+e.clientLeft,s.y=t.y+e.clientTop}else o&&(s.x=getWindowScrollBarX(o));return{x:l.left+r.scrollLeft-s.x,y:l.top+r.scrollTop-s.y,width:l.width,height:l.height}}const platform={getClippingRect:getClippingRect,convertOffsetParentRelativeRectToViewportRelativeRect:convertOffsetParentRelativeRectToViewportRelativeRect,isElement:isElement,getDimensions:getDimensions,getOffsetParent:getOffsetParent,getDocumentElement:getDocumentElement,getScale:getScale,async getElementRects(t){let{reference:e,floating:i,strategy:n}=t;const o=this.getOffsetParent||getOffsetParent,l=this.getDimensions;return{reference:getRectRelativeToOffsetParent(e,await o(i),n),floating:{x:0,y:0,...await l(i)}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>"rtl"===getComputedStyle$1(t).direction},computePosition=(t,e,i)=>{const n=new Map,o={platform:platform,...i},l={...o.platform,_c:n};return computePosition$1(t,e,{...o,platform:l})},defaultStyleCss=":host{--kolibri-border-color:#666;--kolibri-border-radius:0.125rem;--kolibri-border-width:1px;--kolibri-color-error:#f44336;--kolibri-color-info:#2196f3;--kolibri-color-success:#4caf50;--kolibri-color-warning:#ff9800;--kolibri-color-primary:#3f51b5;--kolibri-color-secondary:#ff4081;--kolibri-color-normal:#9e9e9e;--kolibri-color-danger:#f44336;--kolibri-color-ghost:#f5f5f5;--kolibri-color-disabled:#bdbdbd;--kolibri-color-text:#222222;--kolibri-color-visited:#9c27b0;--kolibri-font-family:Verdana, Arial, Tahoma, Helvetica, sans-serif;--kolibri-font-size:16px;--kolibri-spacing:0.25rem}:host *{font-family:inherit;font-size:inherit;hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}:host{font-family:var(--kolibri-font-family);font-size:inherit}*{box-sizing:border-box}kol-icon{color:inherit}kol-span-wc{display:grid;place-items:center;width:100%}kol-span-wc>span{display:flex;gap:var(--kolibri-spacing);place-items:center}a{display:inline-flex;place-items:baseline}button{background-color:transparent;border-width:0;margin:0;min-height:44px;min-width:44px;padding:0}a,button,input,select,textarea{cursor:pointer}a.icon-only>kol-span-wc>span>span,:host button.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}kol-tooltip #arrow{background:#333;height:10px;position:absolute;transform:rotate(45deg);width:10px;z-index:999}kol-tooltip kol-badge{border-radius:var(--kolibri-border-radius);font-size:calc(4 * var(--kolibri-spacing));max-width:300px;position:relative;z-index:1000}@keyframes fadeInOpacity{0%{opacity:0}100%{opacity:1}}",KolTooltip=class{constructor(t){registerInstance(this,t),this.alignTooltip=()=>{var t,e,i;if("test"!==processEnv&&this.previousSibling){const n=this.previousSibling;if(this.tooltipElement){const o=this.tooltipElement,l=this.arrowElement,r=[(i=null!==(t=null==l?void 0:l.offsetHeight)&&void 0!==t?t:10,void 0===i&&(i=0),{name:"offset",options:i,async fn(t){const{x:e,y:n}=t,o=await convertValueToCoords(t,i);return{x:e+o.x,y:n+o.y,data:o}}}),(void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var i;const{placement:n,middlewareData:o,rects:l,initialPlacement:r,platform:s,elements:a}=t,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:m,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:u=!0,...p}=e,h=getSide(n),v=getSide(r)===r,y=await(null==s.isRTL?void 0:s.isRTL(a.floating)),w=m||(v||!u?[getOppositePlacement(r)]:getExpandedPlacements(r));m||"none"===g||w.push(...getOppositeAxisPlacements(r,u,g,y));const x=[r,...w],b=await detectOverflow(t,p),E=[];let T=(null==(i=o.flip)?void 0:i.overflows)||[];if(c&&E.push(b[h]),d){const{main:t,cross:e}=getAlignmentSides(n,l,y);E.push(b[t],b[e])}if(T=[...T,{placement:n,overflows:E}],!E.every((t=>t<=0))){var C,S;const t=((null==(C=o.flip)?void 0:C.index)||0)+1,e=x[t];if(e)return{data:{index:t,overflows:T},reset:{placement:e}};let i=null==(S=T.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:S.placement;if(!i)switch(f){case"bestFit":{var A;const t=null==(A=T.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:A[0];t&&(i=t);break}case"initialPlacement":i=r}if(n!==i)return{reset:{placement:i}}}return{}}}),shift()];l&&r.push(arrow({element:l})),computePosition(n,o,{placement:this.state._align,middleware:r}).then((({x:t,y:e,middlewareData:i,placement:n})=>{var r,s;Object.assign(o.style,{left:`${t}px`,top:`${e}px`}),l&&((null===(r=i.arrow)||void 0===r?void 0:r.x)?Object.assign(l.style,{left:`${i.arrow.x}px`,top:"bottom"===n?-l.offsetHeight/2+"px":"",bottom:"top"===n?-l.offsetHeight/2+"px":""}):(null===(s=i.arrow)||void 0===s?void 0:s.y)&&Object.assign(l.style,{left:"right"===n?-l.offsetWidth/2+"px":"",right:"left"===n?-l.offsetWidth/2+"px":"",top:`${i.arrow.y}px`}))}))}}},this.showTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","block"),getDocument().body.addEventListener("keyup",this.hideTooltipByEscape),this.alignTooltip(),this.tooltipElement.style.setProperty("visibility","visible"),document.addEventListener("scroll",this.alignTooltip))},this.hideTooltip=()=>{this.tooltipElement&&(this.tooltipElement.style.setProperty("display","none"),this.tooltipElement.style.setProperty("visibility","hidden"),document.removeEventListener("scroll",this.alignTooltip))},this.hideTooltipByEscape=t=>{"Escape"===t.key&&(getDocument().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:nonce(),_label:""}}render(){return smartSetTimeout((()=>{this.alignTooltip(),smartSetTimeout(this.alignTooltip,750)}),250),h(Host,{ref:this.catchHostElement},""!==this.state._label&&h("div",{id:"floating",ref:this.catchTooltipElement},h("div",{id:"arrow",ref:this.catchArrowElement}),h("kol-badge",{id:this.state._id,_color:{backgroundColor:"#333",color:"#ddd"},_label:this.state._label})))}validateAlign(t){watchTooltipAlignment(this,"_align",t)}validateId(t){watchString(this,"_id",t)}validateLabel(t){watchString(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"]}}};KolTooltip.style={default:defaultStyleCss};export{KolTooltip as kol_tooltip};